Forum: Mikrocontroller und Digitale Elektronik Hilfe für PIC-gesteuerten Zähler


von Paul A. (paul_a91)


Angehängte Dateien:

Lesenswert?

Hallo Zusammen,
ich bin was die PIC-Programmierung und Elektronik betrifft mehr oder 
weniger Autodidakt.
Deswegen mit dem Beitrag bitte nicht allzu hart ins Gericht gehen ;-)
Den Schaltplan habe ich als PDF angehängt, hoffe das geht in ordnung.

Ich hab für eine NERF-Gun einen Zähler gebaut, welcher die Schüsse 
rückwärts zählt und das Ganze über eine 7-Segment-Anzeige anzeigt (also 
wie bei Aliens 2).
Bei jedem Schuss wird noch ein 100ms Lichtblitz als "Mündungsfeuer" mit 
zwei Hochleitsungs-LEDs erzeugt.
Wenn der Clip leer ist wird die Versorgung für den Antrieb des Blasters 
mit einem Relais unterbrochen.
Also Spannungsversorgung nutze ich die Versorgungsspannung des Blasters 
mit 12 NiMH-Akkus (14,4 V).
Grundlage für den Assembler-Code ist ein Programm von sprut.de, welches 
ich angepasst habe.

So, hier ein paar Details.

Lichtschranke: GP1A57HRJ00F (Sharp)

Ich habe die Lichtschranke zersägt und mit Heißkleber an den Lauf 
geklebt. (siehe Foto).

Den Assembler-code für den PIC ist auch im Anhang.
Achtung!
Die Kommentierung habe ich noch nicht verbessert. Da steht z.t. Müll.

Widerstände:
    R1+R2 220 Ohm Lastwiderstände (5W)
    R3-R9 220 Ohm
    R10-R12 4,7 kOhm
    R13+R14 330 Ohm
    R15 4,7 kOhm
    R16 100 Ohm
    R17+R18 1 kOhm (Pullupwiderstände)
    R19 220 Ohm (Pulldownwiderstand da open-collector Ausgang)

Transistoren:
    alle BC337

 DC-DC-Spannungsregler:
    L7805CV

Relais:
    G6D-1A-ASI

LEDs für Mündungsfeuer:
    http://www.conrad.de/ce/de/product/1...archDetail=005

Den 1000 µF-Kondensator in der Schaltung hab ich nachträglich 
rausgenommen.

Für den Zähler habe ich mittlerweile auch mal ne Platine machen lassen 
(siehe 2. Bild im Anhang).

Nun zu meinen Problem und warum ich das hier poste.
Das Ganze funktioniert super bis auf eine Sache: Beim Einschalten zeigt 
die Anzeige oft nichts an. Sieht so aus, als würde der PIC nicht 
"anspringen".
Denke, dass ich die passiven Bauelemente nicht richtig dimensioniert 
habe oder ähnliches. Hat irgendwer eine Idee, woran das liegen könnte, 
oder ist das ggf. sogar normal bei µ-Controllern?

Videos zum Einsat kann man sich übrigens bei Youtube anschauen:
http://www.youtube.com/watch?v=09VwjZg-M_c&feature=player_detailpage

Grüße,
Timo

von Lehrmann M. (ubimbo)


Lesenswert?

Paul A. schrieb:
> Den Schaltplan habe ich als PDF angehängt, hoffe das geht in ordnung.

Sorry das ist kein Schaltplan. Jeder Höhlenzeichnung ist besser. Wer 
soll sich denn da auskennen? Nochmal zeichnen, keine schiefen Linien, 
mehr GND Symbole, wenn möglich nix überkreuzen, richiges Package für den 
PIC wählen. Keine Widerstände unter den PIC! Vdd Symbol 
(Versorgungsspannungssymbol) verwenden anstatt Linien kreuz und quer 
über den Schaltplan.

Was sollen die eingezeichneten Buse? (blau)

Der PIC ist nicht entstört. Je 100nF zwischen Vss und Vdd Pin so nahe 
wie möglich am PIC.

Dem Spannungsregler fehlt völlig die Beschaltung. Die steht im 
Datenblatt und besteht aus 2 Kondensatoren mit festgeschriebenen Werten. 
Die sind da nicht umsonst angegeben. Und nein die kann man nícht 
weglassen.

Transistoren in Emitterfolger (also Kollektorschaltung) brauchen keine 
Basiswiderstände.

Dem Relais fehlt die Freilaufdiode.

Ich kann keine korrekte MCLR Beschaltung am PIC erkennen. 10k 
Widerstand.

von Paul A. (paul_a91)


Lesenswert?

> Sorry das ist kein Schaltplan. Jeder Höhlenzeichnung ist besser.

Deswegen hab ich ja gesagt:

>> mit dem Beitrag bitte nicht allzu hart ins Gericht gehen ;-)

> Was sollen die eingezeichneten Buse? (blau)

Hab ich genommen, um Leitungen zwischen den Schaltungen darzustellen. 
Ist sicherlich nicht korrekt. Danke für den Hinweis, das blau für einen 
Bus steht.

> Der PIC ist nicht entstört. Je 100nF zwischen Vss und Vdd Pin so nahe
> wie möglich am PIC.

Doch, ist er.

> Dem Spannungsregler fehlt völlig die Beschaltung.

Guter Hinweis. Vielen Dank!

> Transistoren in Emitterfolger (also Kollektorschaltung) brauchen keine
> Basiswiderstände.

Das verstehe ich nicht. Warum nicht?:
http://www.mikrocontroller.net/articles/Basiswiderstand

> Dem Relais fehlt die Freilaufdiode.
> Ich kann keine korrekte MCLR Beschaltung am PIC erkennen. 10k
> Widerstand.

Ebenfalls sehr gute Hinweise. Werd ich berücksichtigen. Vielen Dank!

von Michael (Gast)


Lesenswert?

Paul A. schrieb:
>> Transistoren in Emitterfolger (also Kollektorschaltung) brauchen keine
>> Basiswiderstände.
>
> Das verstehe ich nicht. Warum nicht?:

Wenn der Emitterstrom zu sehr ansteigt, klauen der Transistor sich durch 
den Spannungsabfall über dem Emitterwiderstand selbst die U_be und damit 
den Basisstrom. Ein zusätzlicher Widerstand in der Basisleitung erübrigt 
sich also.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.