Archiv verlassen und diese Seite im Standarddesign anzeigen : Phototransistor an Porterweiterung ohne ADC
Hallo,
ich bin zurzeit am Bau meines eigenen Roboters. Bis auf die Sensorik für die Linienverfolgung funktioniert dieser bereits.
Der Plan ist es diese mithilfe von Phototransistoren (derzeit im Test SFH309) zu realisieren. Da am Porterweiterungs-IC noch I/O-Pins frei sind will ich diese dafür nutzen.
Damit die Porterweiterung richtig arbeitet sollte das Signal somit möglichst digital (0V/5V) anliegen.
Die Schaltung die ich aufgebaut habe sieht folgendermaßen aus:
28025
Eigentlich war alles von einem Elektrotechniker abgesegnet aber so wie es aussieht sind doch noch Fehler drin.
1. Ich vermute dass das Poti zu klein ausgelegt ist da die kleinste Spannung die ich am Phototransistor messe 1,2 Volt beträgt und der Schalt-Transistor so dauerhaft durchschaltet.
2. der Spannungsunterschied von hell zu dunkel beträgt gerade mal 20 mV.
Zur Ergänzung neben dem Phototransistor befindet sich eine rote Led. Die eigentlich ausreichend Licht abstrahlen sollte.
Hat irgend jemand Hinweise was man verbessern oder abändern kann?
Hallo,
Fehler sind in der Schaltung keine drin, die Schaltung ist für die Anwendung nur ungeeignet.
Die Ursachen hast du schon richtig erkannt. Bei 1,2 V vor dem Basiswiderstand wird der Transistor immer durchschalten.
Besser geeignet für deine Anwendung ist eine Schaltung mit Komparator, z.B.
http://www.mikrocontroller.net/attachment/44313/komparator.png
Quelle: http://www.mikrocontroller.net/attachment/44313/komparator.png
Anstelle R1 (oder R2) muss der Fototransistor hin. Die Schaltschwelle wird mit Poti R3 eingestellt.
So ein Komparator kann schon bei Änderungen im mV-Bereich umschalten und kann auch die 20mV-Änderungen digitalisieren.
Als Operationsverstärker/Komparator geht hier z.B. der LM358,LM324,LM393,LM339,MCP6002,MCP6004,TS924, ... such' dir einen aus :)
(Achtung LM393 und LM339 brauchen Pullups am Ausgang)
Grüße,
Bernhard
radbruch
21.04.2014, 21:24
Hallo
Das ist aber eine gefährliche Schaltung: Wenn der Schleifer des Potis bei 5V steht knallt's ziemlich sicher den SFH durch!
Aus der Hüfte mit den vorhandenen Bauteilen würde ich folgendes vorschlagen: Potianfang über 1,5k nach 5V, Potiende auf GND, Schleifer auf Basis und SFH zwischen Basis und GND. Kollektor vom Transistor an 5V und 1k zwischen Emiter und GND. Abgleich mit abgedunkeltem SFH, so dass der Transistor gerade durchsteuert und ein High am Ausgang der Schaltung rauskommt. Bei beleuchteten SFH wird die Basis nach GND gezogen, der Transistor sperrt und es liegt ein Low am Ausgang. Ungetestet und bei Schleifer am Potianfang auch mit Gefahr durch zu großen Basisstrom...
Gruß
mic
@BMS
Ich behalte den Vorschlag mal im Hinterkopf, aber vielleicht geht es noch anders. Sind ja immerhin Vorschläge da.
@radbruch
Ich habe mal versucht mal das darzustellen was du beschrieben hast.
28026
Habe ich das so richtig verstanden ?
Wenn ja könntest du mir kurz das ganze erläutern? Für mich sieht es zunächst so aus als wäre es das selbe bloß dahin gehend abgesichert, dass keine Bauteile überlastet werden sollten.
radbruch
21.04.2014, 22:39
Hallo
Ob das so funktioniert kann ich leider nicht sagen. Ich hatte mir das so vorgestellt: Am Poti stellt man eine Spannung ein die den Transistor bei dunklem SFH gerade noch durchschaltet. Mit steigender Beleuchtung fließt mehr Strom durch den SFH und damit auch durch den oberen Teil des Spannungsteilers. Dort fällt dann mehr Spannung ab und die Basisspannung sollte nun sinken bis der Transistor sperrt. Da am SFH aber immer ca. 1,2V abfallen würde ich den 1K-Widerstand zwischen Emitter und GND anschließen (in deiner zweiten Zeichnung noch nicht enthalten). Dadurch könnte ein Spannungsabfall am 1k dafür sorgen, dass die Basis mit weniger als 0,7V angesteuert wird und der Transistor deshalb sperrt. Ich vermute aber, dass es so gar nicht funktionieren wird und der Transistor immer sperrt! Am Besten vergißt du den Vorschlag wieder! Analogtechnik war leider noch nie meine Stärke :(
Besser zuvor simulieren!
Gruß
mic
stimmt Simulieren ist ne spitzen Idee. Irgend welche Empfehlungen für Programme?
Besserwessi
22.04.2014, 10:05
Zum Simulieren gibt es z.B. LTSpice oder Tina (von Ti). Es braucht bei beiden Programmen einiges an Einarbeitung, aber dann ist das ein sehr mächtiges Werkzeug, gerade für analoge Schaltungen. So eine einfache Schaltung geht aber auch noch von Hand.
So gefährlich wäre die Schaltung nicht für den Fototransistor: Der Strom ist durch die Helligkeit begrenzt - ein Problem mit überlast hat der Fototransistor höchstens bei so großer Helligkeit - etwa direktes Sonnenlicht. Einfach nur von einer roten LED wird da kaum 1 mA fließen.
Das Problem der Schaltung wird einfach sein, das der Poti zu niederohmig ist. Der Widerstand direkt vor der Basis wäre auch besser in Reihe zum Poti platziert - da sorgt er auch gleich für eine Begrenzung des Stromes, auch in Extremfällen. Der Fototransistor kann mit der Spannung auch deutlich unter 1 V, sofern der Strom nicht zu hoch ist. Knapp wird es erst unter etwa 200 mV.
Die 2. Version von der Schaltung geht im Prinzip auch, verschenkt aber einiges vom Stellbereich des Potis - dafür hat man einen größeren Helligkeitsbereich zum Anpassen (nur halt schwer einzustellen). Da wäre es geschickter den Widerstand (dann größer) am Schleifer des Poti zu haben, und nicht an den 5 V. Ein Widerstand im Reihe zum Poti wäre eher auf der GND Seite sinnvoll.
verstehe ich das richtig, dass du meinst ich soll einen größeren Poti verbauen?
Klar komme ich dann der Schaltspannung des Transistors näher, aber ich schätze dass die kleine Spannungsdifferenz am Phototransistor nicht ausreicht um den Transistor sauber zum durchschalten zu bringen.
Hallo!
Versuche es dann direkt mit einem Fotowiderstand (LDR). ;)
Werde ich alternativ auch mal einsetzen. Sind die nicht zu träge zum folgen einer Linie?
Das weiß ich nicht, weil ich es selber nicht probiert habe.
Besserwessi
22.04.2014, 16:58
Wenn die Spannung am Phototransistor schon bis 1,2 V runter geht, heißt das, dass die Intensität ein bisschen zu kein oder oder der Poit etwas zu klein ist. So sind es (5V-1,2 V)/10 K = 0,38 mA. Mit einem 20 K oder 50 K Poti sollte es dann reichen, oder halt etwa die doppelte Helligkeit bei der LED.
Fotowiderstände gehen auch - so langsam sind die auch nicht. Allerdings sollte es dann eher eine grüne LED sein, denn die LDRs sind für rotes Licht nicht besonders empfindlich.
bin gerade eben zum testen gekommen.
Ich bin zur gleichen Erkenntnis wie besserwessi (dessen Beitrag ich gerade erst gelesen habe) gekommen. Da mein Elektrolager durchaus ausbaubar ist konnte ich es nur mit Festwiderständen testen.
Resultat:
Tausche ich das 10KPoti gegen Widerstände die in Summe ca 25KOhm haben schaltet der Transistor gerade noch durch. Mit einer starken Led Taschenampe bestrahlt tut er dies nicht mehr.
Das heißt am Roboter sollte es mit einem 50k Poti eventuell funktionieren. Ich gehe davon aus dass ich alles dann so einstellen muss dass der Transistor bei angeschaltetem roten Licht nicht durchschaltet sich aber knapp an der Schaltschwelle befindet. Wird dann aufgrund von schwarzem Untergrund weniger Licht zurückgeworfen dürfte er durchschalten.
Einzige Sorge bereitet mir allerdings immer noch die geringe Spannungsdifferenz von hell zu dunkel....die Led Taschenlampe die ich vorhin testweise benutzt habe ist sehr hell und selbst mit dieser musst ich den Phototransistor direkt, frontal mit nur wenigen mm Abstand bestrahlen damit sich was tut.
Am einfachsten wäre das anfallende Licht mit kleiner Linse (z.B. aus optischer PC-Maus) zu fokusieren.
Sonst könnte man mit Darlington-Transistor (z.B. aus zwei "normalen") probieren. ;)
Peter(TOO)
22.04.2014, 21:28
Hallo,
Welchen SFH309 hast du genau?
Der SFH309AF hat ein schwarzes Gehäuse und ist fast nur in IR-Bereich sensibel.
Der SFH309 hat ein klares Gehäuse und ist auch im Sichtbaren Licht empfindlich.
Dann hat der SFH309 noch eine Zahl angehängt von -2 bis -6 welche die Empfindlichkeit angibt.
Bei 100 Lux bringt ein -2 einen Fotostrom von 1.5mA, ein -6 aber 11.2mA, also fast ein Faktor 8x Unterschied.
Um Fremdlicht auszuschalten, betreibt man Lichtschranken am besten mit Wechselstrom.
Dazu betreibt man die LED mit einer Wechselspannung, welche deutlich höher als die Netzfrequenz, bzw. dem doppelten von dieser liegt. Der Empfänger bekommt dann einen Wechselspannungsverstärker und ein entsprechendes Filter.
Allerdings ist das heute auch nicht mehr so einfach :-(
Moderne LED-, Leuchtstoff- und Energiespar-Leuchtmittel werden heute leider auch im kHz-Bereich angesteuert.
Deine Gleichspannungskoppelung hat schon mal 2 Nachteile:
1. Fremdlicht verschiebt den Schaltpunkt.
2. Auch mit der Temperatur verschiebt sich der Schaltpunkt und je empfindlicher du deine Schaltung machst, um so mehr Probleme bekommst du mit dem Temperaturdrift.
MfG Peter(TOO)
Danke für die Info.
Reichelt sagt SFH309, die Zahl fehlt. Ich finde allerdings auch kein Indiz dass auf die Zahl schließen lässt.
Hier mal der Link: http://www.reichelt.de/SFH-309-FA/3/index.html?ACTION=3;ARTICLE=65221;SEARCH=SFH%20309
Das mit Wechselspannung und so weiter ist alles schön und gut aber Asuro und Co kommen doch auch mit Gleichspannung aus. Ist der Unterschied den der ADC da macht wirklich so groß, die Roboter dürften ja mit der selben geringen Spannungdifferenz zu kämpfen haben.
@PICture (https://www.roboternetz.de/community/members/15163-PICture) eine Darlington Schaltung ist eine Idee. Werde ich mal testen vielleicht kann ich das ganze durch die höhere Empfindlichkeit dann besser einstellen.
Peter(TOO)
23.04.2014, 02:16
Reichelt sagt SFH309, die Zahl fehlt. Ich finde allerdings auch kein Indiz dass auf die Zahl schließen lässt.
Hier mal der Link: http://www.reichelt.de/SFH-309-FA/3/index.html?ACTION=3;ARTICLE=65221;SEARCH=SFH%20309
Reichelt gibt eine Osram Artikelnummer (Q62702P3593) an und diese verweist auf den SFH309-4/5
http://www.osram-os.com/osram_os/en/products/product-catalog/infrared-emitter%2c-detectors-andsensors/silicon-photodetectors/phototransistors/phototransistors-in-plastic-package/sfh-309%2c-sfh-309-fa/index.jsp?search_result=%2fosram_os%2fen%2fsearch% 2fadvanced_search.jsp%3faction%3ddosearch%26inp_se archterm_1%3dQ62702P3593%26website_name%3dosram_os _en
Das mit Wechselspannung und so weiter ist alles schön und gut aber Asuro und Co kommen doch auch mit Gleichspannung aus. Ist der Unterschied den der ADC da macht wirklich so groß, die Roboter dürften ja mit der selben geringen Spannungdifferenz zu kämpfen haben.
Mit dem ADC kann ich die Spannung messen und bei der nächsten Messung mit diesem Wert vergleichen. Wenn ich jetzt als Vergleichswert z.B. den Durchschnitt über 10 Messungen nehme, rechnet sich der Drift raus. Auch kann man so die Umgebungsbeleuchtung rausrechnen.
In deinem Falle gibt es nur einen festen Vergleichswert. Da weiss dann keiner ob dieser jetzt wegen Fremdlicht, Signal oder Drift über/unterschritten wurde ....
MfG Peter(TOO)
Reichelt gibt eine Osram Artikelnummer (Q62702P3593) an und diese verweist auf den SFH309-4/5
http://www.osram-os.com/osram_os/en/...%3dosram_os_en (http://www.osram-os.com/osram_os/en/products/product-catalog/infrared-emitter%2c-detectors-andsensors/silicon-photodetectors/phototransistors/phototransistors-in-plastic-package/sfh-309%2c-sfh-309-fa/index.jsp?search_result=%2fosram_os%2fen%2fsearch% 2fadvanced_search.jsp%3faction%3ddosearch%26inp_se archterm_1%3dQ62702P3593%26website_name%3dosram_os _en)
Danke für die genaue Bezeichnung, gut zu wissen welchen SFH309 ich genau habe. Die Artikelnummer hätte mir allerdings selber auffallen müssen ;).
Mit dem ADC kann ich die Spannung messen und bei der nächsten Messung mit diesem Wert vergleichen. Wenn ich jetzt als Vergleichswert z.B. den Durchschnitt über 10 Messungen nehme, rechnet sich der Drift raus. Auch kann man so die Umgebungsbeleuchtung rausrechnen.
Auch das macht Sinn. Kurz zur Erklärung ich bin eigentlich eher Programmierer (bin im Abschlussjahr am Technischen Gymnasium Profilfach Informatik) als Elektroniker. Stromstärke und Spannung sind mir aber durchaus geläufig ;)
Ich lese aus der Anwort raus dass es am besten wäre auf einen ADC umzusteigen, weil ich dann die ganzen Probleme die ich derzeit habe in der Software lösen kann. Da ich den Roboter allerdings schon recht fertig habe wäre das eine große Änderung.
Deshalb noch kurz damit es keine Missverständnisse gibt:
Eine digitalisierte Auswertung (0/1) der Phototransistoren ist nur schwer zu realisieren bzw. nur schwer so zu realisieren dass man damit wirklich was anfangen kann. Eine manuelle Kalibrierung stört mich nicht, jedoch sollte dann für diesen Raum (der durchaus unterschiedlich ausgeleuchtet ist wegen Fenstern etc.) alles funktionieren. Sehe ich das richtig dass das so nicht ohne weiteres funktionieren wird?
Falls ich doch auf einen ADC umsteigen will(muss) wie würde das ganze aussehen. Brauch ich einen Verstärker? Wieviel Bit (ist ja quasi gleichzusetzen mit der Feinheit der Abtastung) sollte der ADC haben?
Peter(TOO)
23.04.2014, 07:26
Hallo,
Eine digitalisierte Auswertung (0/1) der Phototransistoren ist nur schwer zu realisieren bzw. nur schwer so zu realisieren dass man damit wirklich was anfangen kann. Eine manuelle Kalibrierung stört mich nicht, jedoch sollte dann für diesen Raum (der durchaus unterschiedlich ausgeleuchtet ist wegen Fenstern etc.) alles funktionieren. Sehe ich das richtig dass das so nicht ohne weiteres funktionieren wird?
Falls ich doch auf einen ADC umsteigen will(muss) wie würde das ganze aussehen. Brauch ich einen Verstärker? Wieviel Bit (ist ja quasi gleichzusetzen mit der Feinheit der Abtastung) sollte der ADC haben?
Das Fremdlicht macht da locker einige Zehnerpotenzen aus!
http://de.wikipedia.org/wiki/Lux_(Einheit)#Beispiele_typischer_Beleuchtungsst.C 3.A4rken
Du schreibst, dass dein Nutzsignal um die 20mV ist.
Jetzt misst du mal die Spannung welche mit deiner Taschenlampe erzeugt wird, die Sonne wird noch einiges mehr bringen ....
Praktisch ist das Störsignal um einige Zehnerpotenzen grösser als das Nutzsignal.
Wenn das Ganze nicht nur unter Laborbedingungen funktionieren soll, ist die Lösung nun mal nicht einfach!
Eine Möglichkeit wäre noch Einen IR-Empfänger für Fernsteuerungen zu nehmen, an Stelle des Phototransistors. Diese Empfänger haben den Wechselspannungs-Verstärker, Filter und einen Schmitt-Trigger schon in einem 3-beinigen Gehäuse mit eingebaut.
Allerdings musst du diese mit einer IR-LED und etwa 38kHz ansteuern.
z.B. so etwas: http://www.vishay.com/docs/82459/tsop48.pdf
MfG Peter(TOO)
MfG Peter(TOO)
Ich glaube bevor ich auf IR-Sensorik umsteige und mich damit dann wieder rumärgern muss wechsel ich auf einen ADC, da scheinen mir die Erfolgswahrscheinlichkeiten höher zu sein.
Deswegen erneut die Frage zum ADC . Brauche ich einen Verstärker? Wieviel Bit (ist ja quasi gleichzusetzen mit der Feinheit der Abtastung) sollte der ADC haben?
Alternativ habe ich eben auch noch Optokoppler CNY70 Zuhause gefunden. Mit denen scheint eine Linienverfolgung auch realisierbar zu sein. Werde mich da wohl auch mal einarbeiten. Ich meine mich jedoch zu erinnern das die Linienverfolgung mit den Dingern sehr Störlichtempfindlich war.
- - - Aktualisiert - - -
So habe gerade die Darlingtonstufe getestet und super Ergebnisse erzielt auf weißem und schwarzem Papier. Der Unterschied wurde deutlich erkannt und das durchschalten war recht kantig also schön digital 0/1 :D.
Einzigstes Problem:
Widerstand bei ausgeschalteter Zimmerbeleuchtung 680KOhm.
Widerstand bei eingeschalteter Zimmerbeleuchtung 220KOhm.
(habe leider nix passendes da um das ganze feiner zu bestimmen, gerade bei dem 680k dürften auch weniger genügen...320k sind jedoch zu wenig)
Ich bin mir jetzt nicht sicher ob das in der Praxis am Roboter funktioniert. Unterschiedliche Lichtverhältnisse auf einer Bahn sind ja durchaus möglich. Andererseits Zimmerbeleuchtung an/aus ist auch schon ein recht krasser Unterschied. Wie schätzt ihr das ein?
Werde jetzt noch versuchen die Helligkeitstoleranzen ein wenig auszulöten, das dürfte die beste Möglichkeit sein eine Antwort auf die Realisierbarkeit zu bekommen. Achja ich habe ohne Beleuchtungs Led getestet. Am Roboter sind diese dann dran d.h. ein gewisses Maß an Grundhelligkeit ist gegeben.
Sieht so aus als wären Helligkeitsunterschiede wie sie in einem normalen Raum vorkommen verkraftbar.
Das heißt ich werde es denk ich mal mit Darlingtontransistoren probieren. Kann allerdings bisschen dauern bis ich die und passende Potis habe.
Versuche eventuell die Wechselspannung-Bestandteil des Stroms von Fotowiderstand per möglichst kleinen parallelen zu ihm Kondensator kurzschliessen, so das die Flanke noch genug schnell ist. ;)
Besserwessi
23.04.2014, 17:12
Wie viel die Hintergrundbeleuchtung ausmacht, hängt davon ab,wie gut die schwarze Linie ist. Im Idealfall vom vom Schwarz nichts zuück, egal wie hell es ist. Real ist die schwarze Farbe aber schlechter (vor allem im IR Bereich!), und auch die Optik ist nicht perfekt - es kommt also auch noch ein Teil Licht von neben der Linie. Wieviel Fremdlicht ankommt, hängt vom Optischen Aufbau ab - da kann der Sensor auch im Schatten platziert werden. Es hilft auch wenn der Sensor sehr dicht über dem Boden ist, und viel Licht von den LEDs kommt. Es kommt ja nur auf das Verhältnis Fremdlicht zu gewünschtem Licht an.
Wenn es IR sein darf, und die Linie auch im IR guten Kontrast bietet, wäre so etwa wie ein CNY70 möglich : das sind IR LED und Fototransistor zusammen gleich in der richtigen Anordnung für etwa 1-5 mm Arbeitsabstand und einer relativ kleinen Testfläche.
Ein Möglichkeit wäre sonst auch noch mit 2 Fototransistoren zu arbeiten, und dann noch analog die Differenz zu bilden. Auch das gibt eine gute Überdrückung vom Fremdlicht und kommt weitgehend ohne Abgleich aus, braucht aber ggf. 2 LEDs. und könnte 3 Zustände unterscheiden; etwa gleich, Sensor 1 deutlich heller oder Sensor 2 deutlich heller.
Versuche eventuell die Wechselspannung-Bestandteil des Stroms von Fotowiderstand per möglichst kleinen parallelen zu ihm Kondensator kurzschliessen, so das die Flanke noch genug schnell ist. ;)
Lief vorhin im Test alles mit Gleichspannung.
Wie viel die Hintergrundbeleuchtung ausmacht, hängt davon ab,wie gut die schwarze Linie ist. Im Idealfall vom vom Schwarz nichts zuück, egal wie hell es ist. Real ist die schwarze Farbe aber schlechter (vor allem im IR Bereich!), und auch die Optik ist nicht perfekt - es kommt also auch noch ein Teil Licht von neben der Linie. Wieviel Fremdlicht ankommt, hängt vom Optischen Aufbau ab - da kann der Sensor auch im Schatten platziert werden. Es hilft auch wenn der Sensor sehr dicht über dem Boden ist, und viel Licht von den LEDs kommt. Es kommt ja nur auf das Verhältnis Fremdlicht zu gewünschtem Licht an.
Habe Schrumpfschlauch daheim, den werde ich zur Abschirmung um die Phototransistoren machen. Und dann heißts probieren.
Vielen Dank an alle die sich hier beteiligt haben. Ihr habt mir auf jeden Fall schon mal viel weitergeholfen. Ich werde das Ganze jetzt mit Darlingtontransistoren versuchen (bin für Vorschläge zum Transistor offen; ein Darlingtontransistor hat ja den selben Effekt wie 2 "normale" nach Darlington beschaltet ?). Der Vorteil von Darlingtontransistoren ist dass ich meine bisherigen einfach austauschen kann und die Platine (Lochraster) nicht komplett neu machen muss.
Bis ich das nötige Material habe und testweise einbauen kann wird es ein wenig dauern. Ich melde mich dann wieder mit Erfolgsmeldung, oder neuen Problemen ;)
Als beim Reichelt erhältliche kleine Darlingtontrasistoren würde ich BC516 (p-n-p) und BC517 (n-p-n) empfehlen. ;)
Peter(TOO)
23.04.2014, 20:36
Hallo,
Ich glaube bevor ich auf IR-Sensorik umsteige und mich damit dann wieder rumärgern muss wechsel ich auf einen ADC, da scheinen mir die Erfolgswahrscheinlichkeiten höher zu sein.
Ob du das mit IR oder sichtbarem Licht machst ist eigentlich egal, aber die IR-Empfänger haben halt alles schon drin, weil die massenweise in TV-Fernsteuerungen verbaut werden.
Aber selbst diese Teile kommen mit direktem Sonnenlicht auf dem Sensor nicht mehr klar.
Als erstes solltest du mal die Umgebungsbedingungen festlegen, unter denen es funktionieren soll.
MfG Peter(TOO)
Hatte leider schulisch noch zutun, deswegen melde ich mich erst so spät. Habe die letzten Tage auf die Darlingtontransistoren umgerüstet und größere Potis verbaut. Nun funktioniert alles tadelos.
Eine Linien Verfolgung habe ich zwar noch nicht getestet, aber ich gehe davon aus dass das auch funktionieren wird.
RP6conrad
16.05.2014, 07:40
Bei eine fototransistor BPW40 functioniert diese Schaltung problemlos : siehe auch http://wiki.robotmc.org/index.php?title=Lijnvolgen
Auswertung is mit der 10 bit ADC von ein STM32Discovery.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.