PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : lichtsensor, der einer linie folgen soll



29.10.2004, 16:15
hallo zusammen,

ich habe ein problem, ich habe von der lego ein sensor der einer linie folgen soll.
ich habe ein atmega16 den ich programmiere, nun.
mein problem ist nun wie sieht diese schaltung aus die ich vor den baustein schalten muss, das ich diesen sensor programmieren kann!

hat von euch jemand eine idee, oder schon mal damit gearbeitet!
bitte helft mir es ist dringend!!!

lg eufgar

Florian
29.10.2004, 19:18
Schonmal irgendwie gegooglet?
Findet man da vielleicht was passendes?

okay69
29.10.2004, 21:34
Zu Linienfolgern gibts schon mehrere Beiträge hier im Forum.

Mit den Lego-Sensoren kenn ich mich nicht aus. Sieht so aus, als bestünde er aus (IR?)-LED und Fototransistor oder -Diode, evtl. ist im Baustein auch noch ein bissl Elektronik. Hat Lego nicht einen eigenen (RCX?)BUS?

Für einen Linienfolger nimmt man aber auch üblicherweise 2 Sensoren, damit der Rob erkennt, in welcher Richtung er die Linie verlässt.

Einfache Schaltungen verwenden z.b. 2 LDRs, die die Linienbreite abdecken und von links und rechts durch jeweils eine LED ausgeleuchtet werden. Wenn die (schwarze) Linie z.B. nach links verlassen wird, muss der rechte Motor abgebremst werden, so das der Rob wieder nach rechts schwenkt. Verlässt er komplett die Linie (beide LDR melden "hell"), dreht er sich um die eigene Achse, bis er die Linie wieder findet. Es gibt sogar gut funktionierende Linienfolger, die so komplett in einfachster Analogtechnik (Handvoll Transistoren) aufgebaut sind. Dürfte aber auch kein Problem sein, so einen LDR-Sensor über einen AVR auszuwerten (Analogeingänge).
Anstelle von LDRs kann man natürlich auch Fotodioden oder Fototransistoren nehmen. Auch gibt es andere gut funktionierende Sensor/LED-Anordnungen.

MfG,

Oliver

Florian
29.10.2004, 21:55
Ich kann Dir ansonsten noch den CNY70, siehe Schaltplan von mir im Album und Thread, empfehlen! :o)
Allerdings brauchst Du dafür die ADC's des Mega's!
Kennst Du Dich mit der Programmierung von AVR's aus, zumindest n bischen!?

31.10.2004, 11:10
Hallo zusammen.

Ich muss erstmal sagen, dass ich totaler Einsteiger in sachen Elektronik bin, wollte mich aber trotzdem mal daran probieren einen kleinen Robo mit wenigen Sensoren zu basteln, der über die parallele Schnittstelle mit einem Computer kommunizieren kann.
Doch schon bei meinen ersten Sensoren (CNY70) bekomm ich gerade Probleme: Wie kann ich das ganze denn in einem eindeutigen High/Low Signal ausgeben? Bei mir fließt alleine schon durch die Resthelligkeit (kein IR-Licht) ein nicht zu vernachlässigender Strom, wodurch ich quasi immer ein High pegel bekomme....

Ich hoffe, dass mir einer den Einstieg erleichtern kann.

Grüße, Mark

Florian
31.10.2004, 11:28
Es gibt s.g. Operationsverstärker, z.B. den LM741.
Mit dem kann man einen "1-bit-AD-Wandler" bauen.
Ich poste Dir hier einfach mal ein Protokoll, welches ich in der 9.Klasse gemacht habe.
Es enthält einen Schaltplan.
Du musst einfach nur noch die richtigen Bauteile einsetzen und ersetzen.

Viel Spass und Glück! :o)

Ps: Meine beiden Mitschüler haben sich über eine 1 gefreut! *lol*

31.10.2004, 11:43
Okay, vielen Dank schonmal, das ganze erscheint mir schonmal logisch, aber müsste das nicht eigentlich auch noch einfacher gehen?
Kann man nicht irgendwie eine Transistorschaltung so bauen, dass er erst ab einem Bestimmten Strom durchschaltet?

Grüße, Mark

Florian
31.10.2004, 12:28
Ja, es gibt auch reine Transistorschaltungen, aber meiner Meinung nach funktionieren die nicht ganz so sauber/gut.

31.10.2004, 15:02
Kann mir denn vielleicht dabei einer weiterhelfen?
Wie mache ich das ganze mit einer reinen Transistorschaltung...

Wäre für alle weiteren Tips dankbar.

MFG, mark

Florian
31.10.2004, 16:13
Guck mal bei www.elektronik-kompendium.de nach, ich glaube die haben da so ne "Schalter-Schaltung"!

05.11.2004, 13:56
Hmmm, also vielleicht nochmal eine Beschreibung meines Problems, bin nämlich noch nicht wirklich weiter gekommen...

Also ich will einen CNY70 benutzen, und mit diesem einen Eingang der parallelen Schnittstelle schalten.
Das Problem, was ich habe, ist, dass der CNY70 super empfindlich für Tageslicht ist, also reicht der Basisstrom auch schon, wenn nur wenig Licht auf den Sensor trifft.
Kann ich nicht einen Transistor irgendwie so einsetzen, dass er erst durchschaltet, wenn durch die basis ein bestimmter strom (von einigen mA) fließt?

Wäre weiterhin für Hilfe dankbar

Grüße, Mark

PS.: Entschuldigung für die Anfängerfragen, aber wenn man von "null" anfängt, ist das alles nicht so leicht. Möchte auch noch ein Lob an die Forumbenutzer aussprechen, man erhält selten so schnell so kompetente Hilfe.

Florian
05.11.2004, 14:53
PS.: Entschuldigung für die Anfängerfragen, aber wenn man von "null" anfängt, ist das alles nicht so leicht. Möchte auch noch ein Lob an die Forumbenutzer aussprechen, man erhält selten so schnell so kompetente Hilfe.
Hi Mark!
Wir haben alle mal klein angefangen! ;o)
Danke für das Lob, ich habe es einfach mal mit auf mich bezogen! *lol*

Vielleicht hilft Dir das hier!?
http://www.elektronik-kompendium.de/sites/slt/0208031.htm

http://www.elexs.de/npn2.gif

05.11.2004, 16:52
Irgendwie hilft mir das nicht wirklich weiter...

Ich will ja schließlich die Collectorstrecke nur dann niederohmig machen, wenn an der Basis ein bestimmter Strom anliegt...
Wenn ich einen Transistor normal benutze, dann fließt auch bei wirklich minimalstem Basisstrom schon ein wenig über die Collectorstrecke... und das reicht allemal schon um den eingang vom Parallelport anzusprechen....

Also nochmal mein Problem: Man muss einen 1Bit, 1 Port ADC doch auch mit einfachster Transistorschaltung bauen können, oder mach ich da jetzt einen groben Denkfehler....


Wäre nett wenn mir dabei noch irgendjemand auf die Sprünge helfen könnte....

Grüße, Mark

stegr
05.11.2004, 19:19
1.) Ein 1-Port-ADC nennt sich Komparator. Zumindest, wenn du einstellen möchtest, ab wann das ganze umschlagen soll und nicht auf einer Kurve arbeiten möchtest. Aber ich glaub nicht, dass du das so möchtest.

2.) Der Parallelport arbeitet mit Spannungen und nicht mit Strömen...
bedeutet, dass du nur einen Pull-up bzw. Pull-down brauchst und dann mit dem Transistor den Pegel auf 0V bzw. 5V ziehst.
Das ganze machst du als Emitterschaltung.
Wie du den Transistor beschaltest, findest du, wenn du mal nach "Transistor als Schalter" suchst.

Florian
05.11.2004, 19:23
Wie du den Transistor beschaltest, findest du, wenn du mal nach "Transistor als Schalter" suchst.
Das habe ich z.B. bei google gemacht und oberes gefunden. :o)

stegr
05.11.2004, 22:19
jup...
nur für ihn muss es noch etwas abgeändert werden:
Anstatt der Glühbirne muss ein Widerstand (10k-100k) hin, und dann kann er den Kollektor an seinen Parallelport ranhängen...
Das sollte dann eigentlich tun...

Florian
06.11.2004, 08:58
Ja gut, kann sein, ich kenne mich mit den PC-Ports nicht wirklich gut aus! *lol*

07.11.2004, 09:02
@ stegr...

Also du meinst einfach zwischen den Eingang vom Port den Transistor vom CNY70 und noch einen Widerstand schalten?

Das bringt mir ja leider wieder nichts...ich kann da auch n Megaohm Widerstand reinsetzen, beim kleinsten Lichtstrahl der auf den Optoreflexkoppler trift bekomm ich ja ein +5V Signal und der Eingang schaltet durch...

Irgendwie komm ich nicht wirklich weiter :(

Grüße, Mark

stegr
07.11.2004, 19:44
Du musst den Basiswiderstand erhöhen, dann sollte das Problem nicht mehr auftreten.
Was du für einen Widerstand brauchst, kannst du dir ausrechnen, wenn du weisst, ab welchem Strom dein Transistor durchschaltet. Das siehst du im Datenblatt.
Für den Widerstand nimmst du die Formel Rb=(U1-Us)/Ib, wobei U1 die angelegte Spannung und Us die Durchlassspannung der Emitter-Basis-Diode ist.

08.11.2004, 13:05
Aha... da kommen wir der sache ja schon näher.... Vielen Dank erstmal stegr...
Kann es sein, dass ebendieser Wert bei dem komischen Transistor, den ich genommen habe (BC 337/40) bei 100nA liegt?

Das würde natürlich bedeuten, dass ich einfach mit falchen Transistoren arbeite, weil der Wert dann wirklich was gering wäre...

Ich probiere mal weiter :)

Grüße, Mark

08.11.2004, 13:31
Der Parallelporteingang ist aber auch verdammt empfindlich...Es reicht schon wenn ich die Basis auf GND lege und der transistor schaltet durch... *?!?* reicht auch auf jeden fall schon ihn mit dem Finger zu berühren!

Also entweder muss ich hier nochmal einen Optokoppler für die galvanische Trennung einbauen (so geht das doch, oder ?), oder es geht wirklich nicht so einfach...

Gibt es denn Transistoren, die erst bei einem Basisstrom von 0,5 mA oder so durchschalten?!? Das Problem ist ja nur, dass wegen dem Empfindlichen Parallelport der Collectorstrom dann _wirklich 0A_ sein muss.... und das ist bei Transistoren nie der Fall, richtig ???

Ach, langsam verzweifle ich... Das Problem wäre ja noch nichtmal gelöst, wenn ich einen ADC verwenden würde, weil ein Lowsignal ja auch nicht genau 0V ist, sondern ein wenig Abweichung haben darf...

Brauche also immernoch Hilfe :(

Grüße, Mark