PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Optischer Drehgeber für LEGO-Roboter



RyouArashi
19.03.2007, 18:10
Ich bastele gerade an einem Drehgeber zur Geschwindigkeitsmessung meines LEGO-Roboters. Basis des ganzen ist ein RNControl-Board (ATmega32), welches zwei LEGO-9V-Motoren (die "alten") ansteuert.

Die Drehzahlmessung soll optisch erfolgen; da der Drehgeber jedoch möglichst klein und LEGO-kompatibel sein soll, habe ich vor einfach LED und Phototransistor in LEGO-Steine zu verpacken (das geht wunderbar) und dazwischen ein Lochrad laufen zu lassen.

Schaltungsmässig habe ich mir das Ganze folgendermaßen gedacht:
http://freenet-homepage.de/zeroarashi/lichtschranke.gif

Ich habe bereits mit den Bauteilen aus meinem KOSMOS-Kasten experimentiert. Der darin enthaltene Phototransistor hat bei Raumbeleuchtung einen recht hohen Widerstand, schaltet aber bei Bestrahlung mit der enthaltenen IR-LED quasi voll durch.

Der Anschluss an den ATmega32 sieht dann so aus, dass der Phototransistor bei Nicht-Beleuchtung sperrt und der Eingang auf High liegt, und bei IR-Beleuchtung den Eingang auf Low zieht.

Soviel zur Theorie...

Klärungsbedarf meinerseits:

1.
Funktioniert das so überhaupt? (ich bin eigendlich der Elektronik-n00b vom Dienst)

2.
Ich habe die Bauteile aus dem KOSMOS-Kasten, wo leider keine genaue Typenbezeichung angegeben ist. Frage: Wie "heißen" der Phototransistor
und die IR-LED?

3.
Ist es besser mit externem Pull-Up zu arbeiten oder den internen vom ATmega zu nehmen (dessen wert ich momentan nicht kenne)? Für den externen hatte ich so 5k-10k angedacht.

4.
Die Drehzahl wird an der Motorwelle gemessen, liegt also bei ca. 2000-3000 1/min. Als Schlitzbreite auf dem Lochrad dachte ich an etwa 1-2mm bei 1-2 Löchern/Umdrehung. Ist der Phototransistor dafür schnell genug?

Ich hoffe Ihr könnt mir weiterhelfen

Ryou Arashi

ranke
21.03.2007, 09:12
Funktioniert das so überhaupt? (ich bin eigendlich der Elektronik-n00b vom Dienst)


Der MC erwartet an einem Digitaleingang auch ein "ordendlich" digitales Signal, also entweder Low oder High, im Übergang mit steilen Flanken.
Bei Deinem Signal ist das nicht gewährleistet, wenn das Lochrad auf halboffen stehen bleibt, dann hast Du auch eine halbe Spannung am Ausgang. Der MC wird das dann auch irgendwie (also unvorhersehbar) interpretieren.
Abhilfe: z.B. einen Schmitt-trigger (z.B. 1/6 CD 40106 oder ähnlich) zwischen Fototransistor und MC schalten. Der Schmitttrigger macht ein digitales Signal aus einem analogen.
Alternativ: Analogeingang benützen.

Der interne Pullup liegt zwischen 20k und 50kOhm. Datenblatt Seite 287, letzte Zeile.
Link zum Datenblatt:
http://www.atmel.com/dyn/resources/prod_documents/doc2503.pdf
Bei den oben vorgeschlagenen Lösungen wirst Du ihn nicht brauchen.



Die Drehzahl wird an der Motorwelle gemessen, liegt also bei ca. 2000-3000 1/min. Als Schlitzbreite auf dem Lochrad dachte ich an etwa 1-2mm bei 1-2 Löchern/Umdrehung. Ist der Phototransistor dafür schnell genug?


3000 1/min mit 2 Löchern pro Umdrehung macht 100 Hz. Das ist für den Fototransistor langsam, das macht der mit links.
Die maximale Frequenz wird wahrscheinlich von der Auswertung im MC abhängen.

RyouArashi
26.03.2007, 14:35
Ok

danke für den Hinweis mit dem Schmidt-Trigger, solche Details übersieht man leicht...

Ich brauche insgesamt zwei Drehgeber, demnach sieht die Schaltung nun folgendermaßen aus:

http://freenet-homepage.de/zeroarashi/lichtschranke2.gif

D0 und D1 gehen an einen Eingang des MC (wahrscheinlich PortA.0 und .1)

Kann man die ungenutzten Gatter im 74HC14 offen lassen, oder ist es besser sie auf einen definierten Hig- bzw. Low-pegel zu setzen?

Ryou Arashi

EDIT:
In meinem 74er vergleichsbuch steht beim 7414 als Ausgang "TP".
"OC" = open Collector und "TS" = Tristate kenne ich. Aber was ist "TP"?

sigo
27.03.2007, 15:23
TP heißt Totem Pole, das ist ein art Gegentaktendstufe. D.h. im Ausgang sind 2 Transistoren, einer zieht nach oben, einer nach unten. Wie bei einer Halbbrückenschaltung einer Motorendstufe, nur eben etwas kleiner..

Hier ein typ. Schaltbild:
http://www.asic-world.com/images/digital/ttl_nand.gif

In diesem Fall sind es Transistoren. Natürlich ist der 74HC14 ein CMOS Baustein..

Offene Eingänge entweder auf Masse oder +5V legen, oder evtl. einen Eingangswiderstand vorsehen, damit du sie sicher offen lassen kannst.

Sigo

goara
24.04.2007, 00:58
habe eine gabellichtschranke und will daraus ein eingangssignal fuer den druckerport am pc bekommen... geht das dann auch mit obiger schaltung.?
oder kann ich einfach das signal der lichtschranke mit dem transistor auf 5 volt verstärken... (ist glaub die standardeingangsspannung fuer die parallelschnittstelle?) thx schon mal..