PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : IR-LED und IR-Empfänger für Drehzahlmesser



Chris1803
12.12.2017, 22:34
Hallo zusammen

Ich zur Bestimmung der Drehgeschwindigkeit einer Achse ein Lochblech (2 Löcher, 90° versetzt) nutzen und habe mir überlegt, auf einer Seite zwei IR-LED und auf der anderen Seite zwei IR-Empfänger aufzustellen.
https://www.conrad.ch/de/ir-empfaenger-sonderform-axial-bedrahtet-38-khz-950-nm-vishay-tsop4838-171115.html
https://www.conrad.ch/de/ir-emitter-940-nm-17-5-mm-radial-bedrahtet-vishay-tsal-6200-171140.html?sc.ref=Product%20Details

Angeschlossen sollen die Teile über Kabel an einen RPi, wollte mir noch eine kleine Versuchsanlage mit einem Lochraster bauen, damit ich das sauber verlöten kann. Soweit so gut.
Das Berechnen des Vorwiderstands für die LED habe ich noch hinbekommen.

Als ich dann nach Hinweisen für die Berechnung der Widerstände für den IR-Empfänger gesucht habe, wurde ich durch das Internet verwirrt und verunsichert. In einigen Foren wurde nach ähnlichen Aufbauten gefragt und mitgeteilt, dass das so nicht klappen kann, weil eine bestimmte Frequenz benötigt wird.
Ich dachte, ich könnte den Empfänger einfach mit Strom versorgen und über einen INPUT-Pin am RPi prüfen, ob ein Signal ankommt, oder nicht, und dafür einen eigenen Takt, sagen wir mal alle 20ms, festlegen. Der Takt hängt dann schlussendlich davon ab, wie schnell die Scheibe an der Achse dreht, das wird noch berechnet, je nach Grösse.

Bin ich da auf der richtigen Spur? Konnte keine ähnlichen Fragen in diesem Forum finden - oder zu wenig spezifisch gesucht.

Gruss
Chris

Ceos
13.12.2017, 07:46
die "üblichen" IR receiver sind modulationsempfänger

da du nicht zwischen hintergrundstrahlung und der eigetlichen quelle sauber unterschieden kannst, wird das signal moduliert

jedes bit (bitlänge > modulationsperiode) wird dann in an und aus phasen zerhackt, der receiver hat passend zur frequenz ein klein wenig elektronik integriert der auf diese pulse reagiert und schwankungen in der signalstärke ausgleicht und störimpulse von außen relativ gut wegfiltert

für das was du machen willst brauchst du einen fototransistor der im RI bereich empfindlich ist, keinen receiver


PS: du könntest aber genau diese funktion auch nutzbar machen, indem du die IR led einfach passend mit der frequenz modulierst, dann filterst du nämlich umgebungslicht heraus :D

PPS: achte darauf dass die receiver sehr empfindlich sind und die IR LEDs teils sehr stark, es kann auch sein dass du durch mehrfach reflektion und licht streuung das loch gar nciht siehst weil der receiver das einfach wegfiltert

Siro
13.12.2017, 08:24
Oh sorry, Ceos hat ja schon was geschrieben, ich war zu langsam...;)

Hallo Chris:


Im Prinzip reicht auch ein Loch, sofern man nur eine Richtung auswerten möchte.
Wenn Du aber vorwärts und rückwärts auswerten möchtest brauchst Du natürlich 2 Lichtschranken.
Ob die nun 90 Grad 123 oder 180 Grad versetzt sind ist eigentlich egal.

Die LED leuchtet immer über einen Vorwiderstand und der Empfänger wird beleuchtet wenn das Loch vorbei kommt.

Dann misst Du die Zeit zwischen zwei Impulsen und kannst daraus die Drehgeschwindigkeit ermitteln.
1 / Zeit = Freqeunz = Drehgeschwindigkeit
Für eine feinere Auflösung kannst Du dann so viele Löcher reinbohren wie passen, dann reagiert dein System
schneller und Du musst dein Ergebins nur durch die Anzahl Löcher teilen.

Ein Widerstand an dem Empfänger wird garnicht benötigt, weil da ist schon ein "Pullup" mit 33 Kiloohm eingebaut.
Der liegt zwischen Zwischen Pin 1 und 3
Pin 3 legts Du an deine Versorgungsspannung (+) deines RPi.
Der Pin 1 geht direkt an einen Eingang vom RPi.

Das "besondere" an diesem Empfänger ist, dass dort eine spezielle Elektronik eingebaut ist,
die dazu dient möglichst viele Störungen zu beseitigen.

Erklärung:
Wenn deine Empfänger mit jedem Licht ein/aus immer schalten würde, dann würde er auch
darauf reagieren, wenn Du das Zimmerlicht ein und ausschalten würdest,
oder im Sommer, wenn die Wolken vorbeiziehen, da es hier ja heller und dunkler wird.
So hat man sich nun folgendes ausgedacht:
Die Led wird zum Beispiel 30000 Mal pro Sekunde ein und ausgeschaltet
und der Empfänger reagiert nur auf Lichtimpulse die 30000 mal ein und wieder ausgehen.
Das ist die im Datenblatt stehende "Carrierfrequenz"
Damit würde der Empfänger also auf Zimmerlicht, Schatten usw. nicht mehr reagieren, weil das viel zu langsam
ein und aus geht.

Und da kommt jetzt das Problem, wenn deine LED ständig leuchtet, sieht der Empfänger das zwar wenn das Loch vorbeikommt,
aber er filtert es raus und fühlt sich nicht angesprochen.

Du must also deine LED mit der Frequenz vom IR-Empfänger ein und ausschalten damit dies funktionieren kann.

Mein Vorschlag:
benutze anstelle des IR-Empfängers erstmal einen IR Phototransistor
dann brauchst Du deine LED nicht ein und Ausschalten und der ganze Frequenzkram fällt erstmal weg.
Es gibt hier aber auch entsprechende Pärchen, da beide auf der gleichen Wellenlänge arbeiten müssen.
z.B.
IR-LED OSRAM SFH 484
IR-Phototransitor SFH 300FA


Siro

Ceos
13.12.2017, 09:06
ihc würde ja eigentlich schon fast sagen, wenn die dicke der scheibe nciht zu stark ist und die löcher nicht zu weit vom rand entfernt, würde ich eine fertige gabellichtschranke in passender größe doch am aller einfachsten machen oder?

oberallgeier
13.12.2017, 12:20
.. Ich zur Bestimmung der Drehgeschwindigkeit einer Achse ein Lochblech (2 Löcher, 90° versetzt) nutzen und habe mir überlegt, auf einer Seite zwei IR-LED und auf der anderen Seite zwei IR-Empfänger aufzustellen ..Du hast da für die Messung einer Drehzahl mit dem TSOP einen ungünstigen IR-Receiver ausgewählt. Der spricht wirklich auf moduliertes Licht an, genauer auf 38kHz, siehe techn. Daten, das mit der Frequenz Deiner Lochscheibe "interferieren" könnte - und Du misst unter bestimmten Umständen Mist.

Diese Empfänger sind für übliche (optische) Fernsteuerungen, die bei Sonne und Kunstlicht arbeiten sollen; siehe Beiträge von siro und ceos.

Die Technik hat San (Bergmans) hier sehr gut beschrieben - klick (http://www.sbprojects.com/knowledge/ir/). Dazu gibts von ihm noch etliche ausführliche Darstellungen der üblichen Modulationscodes hier (http://www.sbprojects.com/knowledge/ir/rc5.php).

Ich verwende diese Methode (IR-Empfänger und modulierte IR-LED) um verschiedene Gerätchen (archie (https://www.roboternetz.de/community/threads/61379-Kopfsache-und-ein-m1284-etliche-Servos-viel-Alu?p=638683&viewfull=1#post638683), Coladose MiniD0 (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=495507&viewfull=1#post495507) etc) anzusteuern. So kann ich einfach drahtlos diesen Sächelchen veranlassen verschiedene Tasks zu fahren.

Als Drehzahlmessung hatte ich (vor/seit Ewigkeiten (https://www.roboternetz.de/community/threads/32293-DC-Kleinstmotor-mit-Getriebe-Drehsensor-5V-510-Upm?p=316156&viewfull=1#post316156)) ne winzige Gabellichtschranke benutzt (klick (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=481434&viewfull=1#post481434)). Von den beiden Motörchen des MiniD0 gibts dabei z.B. solche Signale (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=427784&viewfull=1#post427784) mit deren Hilfe ich die Geschwindigkeit regle. Aber diese Empfehlungen stehen ja auch schon da. Entsprechende Lichtschranken gibt es auch mit sehr schmalen Schlitzen für die Sende-LED (bei den hier zitierten etwa 0,7 mm Breite.

Daher auch meine Empfehlung: nimm ne einigermassen passende, fertige Gabellichtschranke. Alternativen wären u.a. Motoren mit fertigen Encodern die z.B. magnetisch/Hallsensoren als Grundlage haben.

Chris1803
15.12.2017, 18:35
Hallo zusammen

Länger weg, nun wieder da und Zeit.

Danke für die Tipps. Ich bin froh, dass das grundsätzlich angedachte Konzept passt. Ebenso wurde bestätigt, dass das mit dem IR-Empfänger zu hoch gegriffen war - Fototransistor wäre sicherlich der einfachere Weg. Aber die Idee mit der fertigen Gabellichtschranke ist mein Favorit. Da ich flexibel bin im Gestalten der Scheibe, kann ich gut auf ein Fertigteil gehen.
Ich habe da folgendes im Auge:
https://www.conrad.ch/de/gabel-lichtschranke-tcst-2103-vishay-1-st-184250.html

Preislich etwa da, wo ich mir das vorstelle und wenn ich 2 nehme, kann ich Richtung und Geschwindigkeit genau genug bestimmen. Der Modelllaster wird nie über 5 km/h fahren (wenn überhaupt).
Die Problematik mit dem Störlicht hätte ich übrigens elegant umschifft. Geplant war, das Ganze in einem geschlossenen Gehäuse zu machen, um eben diesen Effekt ausblenden zu können. Aber so müsste es auch gehen.

Nun noch die Frage mit dem Anschluss der Gabellichtschranke.
Wenn ich das Datenblatt richtig gelesen habe, brauche ich immer noch einen Vorwiderstand.
Ich kann 2 von denen über den 3.3V-Asugang des RPi an + legen, D an GND des RPi und jeweils E an zwei Pins meiner Wahl des RPi.

Siro
16.12.2017, 12:23
Hallo Chris,
eine gute Entscheidung mit der Gabellichtschranke

Zu beachten ist, dass bei dem Optokoppler Du mehr Lichtstrom benötigst, wenn Du einen hohen Kollektorstrom hast.
Das sieht man im Datenblatt inder Grafik "Collector Current vs. Forward Current"
Je höher dein Kollektorstrom ist, desto mehr Licht benötigst Du von der Leuchtdiode um den vernünftig durchzuschalten.
Das liegt daran, daß die Verstärkungswirkung vom Transistor mit steigendem Kollektorstrom abnimmt.

Funktionieren tut das ganze in einem recht großen Bereich.
Für die Auswertung an einem Mikrocontrollerpin würde ich mal ca. 1mA Kollektorstrom fließen lassen

Kollektorwiderstand berechnen:
(Versorgungsspannung - VCEsat) / 0,001 = 2900
wir nehmen mal einen 2,7K der ist aus der Normreihe.
(3,3V - 0,4V) / 2700 = 0,00107A also rund 1mA
Die Sättigungsspannung ist sogar viel geringer ca. 0,1 Volt

LED Vorwiderstand:
In der Grafik schauen wir nun welchen Ledstrom (IF) wir benötigen
Also die Grafikkurve "Collector Current vs. Forward Current" im Datenblatt
Hier landen wir laut Grafik bei ca. 5mA.
Wir gehen auf Nummer sicher und lassen ruhig etwas mehr fließen, 10mA
UF ist die Spannung die an der LED abfällt
LED Vorwiderstand R = U / I
(Versorgungsspannung - UF) / 0,01A
(3,3V - 1,2V) / 0,01A = 210 Ohm
da nimmst Du 220 Ohm

Hier noch das Bild dazu:


33126

!!!! Aufpassen mit der Pinbelegung der Gabellichtschranke
Die haben den Transistor "verkehrt rum" eingebaut.....;)

oberallgeier
16.12.2017, 14:27
.. Da ich flexibel bin im Gestalten der Scheibe ..Die Grenzen sind Dir klar!? Maximale Scheibendicke rund 3,0 mm - dann bleiben noch 0,1 mm für die Luftspalte beiderseits der Scheibe.
Übrigens ist das LED-Fenster der Lichtschranke ein schmaler Schlitz. Da bietet es sich an die Scheibe zu schlitzen statt zu bohren - wenn Du das fertigungstechnisch kannst. Das gäbe steilere Signalübergänge beim Auslesen. Und mehr Spalte auf der Scheibe bringen naturgemäss ne feinere Auflösung der Umdrehungen. Man sollte auch daran denken, dass bei höheren Umdrehungszahlen die Flankensteilheit (oder zu wenig Steilheit) von Bedeutung werden, siehe hier (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=381766&viewfull=1#post381766). Bei runden Löchern bitte dran denken, dass das Loch die LED weitgehend freigeben sollte. Nicht wie mir mal passiert war, dass die Löcher nur einen Teil des Lichtes freigaben - der Signalgang sah entsprechend unschön aus (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=381383&viewfull=1#post381383).

Chris1803
19.12.2017, 18:01
Hallo zusammen

Danke für die Berechnungen und Tipps. Werde das beim Einbau berücksichtigen. Da das Ganze unter Marke Eigenbau läuft, kann ich mit den Massen für die Scheibe etc. sehr gut spielen. Die Achse wird sich kaum mit mehr als 200 U/min drehen, da müsste ich mit zwei Lichtschranken und zwei Schlitzen in der Scheibe klarkommen. Ansonsten stehen glücklicherweise noch einige Werkzeuge im Keller. Ich melde mich mit dem weiteren Projektfortschritt.