Forum: Mikrocontroller und Digitale Elektronik Lichtschranke - geht das so wie ich mir das denke?


von Dominic (dommi)


Angehängte Dateien:

Lesenswert?

Hallo

Ich brauche eine Experteneinschätzung ob folgender Plan von mir 
hardwareseitig funktionieren wird.

Ich brauche eine Zeitmessung über Lichtschranken. Dafür habe ich 
folgende im Auge (mit entsprechendem Reflektor):
https://www.voelkner.de/products/944726/DataLogic-Reflexions-Lichtschranke-S100-PR-2-B10-PK-950811290-Polarisationsfilter-10-30-V-DC-1St..html

Aufbauschema: siehe Anhang

Ich will einen Arduino (evtl. einen ESP32) nutzen um die Messungen zu 
steuern/Ergebnisse anzuzeigen. Dazu benötige ich Stepup-Wandler (z.b. 
https://amzn.eu/d/2gQVyqG) um die Spannung auf 12V zu erhöhen. Bei der 
Vorlage für die Schaltung werden noch 10kOhm-Widerstände zur Begrenzung 
des Stroms auf der Signalleitung bzw. 100kOhm-PullDown-Widerstände 
eingesetzt.

Jetzt meine Frage die mein Projekt von der Vorlage unterscheidet: Muss 
ich durch die Kabellänge von 10/20/40m an der Schaltung etwas ändern 
oder ist da mit Problemen zu rechnen? Brauche ich spezielle Kabel oder 
kann ich einfach Kabel aus dem Baumarkt (z.B. 
https://www.obi.de/feuchtraumleitungen/installations-elektro-und-stromkabel-nym-j-3-x-1-5-mm-50-m-grau/p/7629827) 
nehmen und das mit XLR-Steckern zusammenstecken?

: Bearbeitet durch User
von Harald K. (kirnbichler)


Lesenswert?

Dominic schrieb:
> Aufbauschema: https://ibb.co/0jm1srv

Warum? Man kann Bilder in diesem Forum hochladen.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Dominic schrieb:
> Dazu benötige ich Stepup-Wandler (z.b. https://amzn.eu/d/2gQVyqG) um die
> Spannung auf 12V zu erhöhen.
Wenn du den Ansatz geschickt machst, dann beschaffst du 12V oder besser 
industrieübliche 24V und leitest daraus die Versorgung für die 
Sensoren und über einen Stepdown für den µC ab.

> Muss ich durch die Kabellänge von 10/20/40m an der Schaltung etwas
> ändern
Wenn du 40m Abstand brauchst, wie willst du das mit weniger Kabel 
hinbekommen?

> ist da mit Problemen zu rechnen?
Eben mit den üblichen EMV-Problemen, denen man mit einer geeigneten 
Eingangsbeschaltung (sehr vorsichtige Menschen nehmen Optokoppler) und 
(Klapp-)Ferriten begegnet, um eingekoppelte Störungen weg vom µC zu 
halten.

> Brauche ich spezielle Kabel
Nein, nimm für eine M8 Lichtschranke handelsübliche M8 Kabel.

> oder kann ich einfach Kabel aus dem Baumarkt (z.B.
> 
https://www.obi.de/feuchtraumleitungen/installations-elektro-und-stromkabel-nym-j-3-x-1-5-mm-50-m-grau/p/7629827)
Auf jeden Fall nimmst du kein starres Installationskabel.

> nehmen und das mit XLR-Steckern zusammenstecken?
Und auch niemals ohne wirklich guten Grund XLR-Stecker für irgendwas 
anderes als für Mikrofone/Audio.

BTW: bei der Software unbedingt eine Entprellung einbauen, damit du 
nicht auf jede winzige Funkstörung triggerst. Eine "Entprellung" 
bedeutet übrigens nicht, dass du "verzögert" reagierst. Sondern es 
bedeutet bei geschickter Programmierung nur, dass du nach einem 
Eingangsereignis vor der Verarbeitung erst noch prüfst, ob das ein 
"richtiges" Event oder nur eine kurze Störung war.

: Bearbeitet durch Moderator
von Dominic (dommi)


Lesenswert?

Ich stelle fest, dass das ganze doch nicht mehr so ein 08/15-Projekt ist 
wie gedacht.

Bei 40m Kabellänge meinte ich mit Problemen, dass z.B. das Signal zu 
schwach wird.

Entweder bin ich zu ungeschickt mit Google oder es gibt M8-Kabel nur bis 
10m Länge? Die Kosten sind natürlich um ein Vielfaches höher, was den 
finanziellen Rahmen des Projektes sprengen würde. Gibt es günstigere 
Alternativen?

von Peter D. (peda)


Lesenswert?

Dominic schrieb:
> Ich brauche eine Zeitmessung über Lichtschranken.

Die Ansprechzeit ist mit 1ms angegeben, schaffst Du das?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Dominic schrieb:
> Bei 40m Kabellänge meinte ich mit Problemen, dass z.B. das Signal zu
> schwach wird.
Wieso sollte das Signal da "schwach" werden? Was meinst du, welche 
Kabellängen kommen in alltäglichen Industrieanlagen zusammen?

Dominic schrieb:
> Entweder bin ich zu ungeschickt mit Google oder es gibt M8-Kabel nur bis
> 10m Länge?
Du kannst auch übliche mehradrige flexible Steuerleitung nehmen:
- 
https://www.conrad.de/de/p/faber-kabel-liyy-steuerleitung-4-x-0-25-mm-grau-030200-meterware-1152516.html

Peter D. schrieb:
> Die Ansprechzeit ist mit 1ms angegeben, schaffst Du das?
Der µC schafft das... ;-)
Die Frage ist eher: reicht das?

: Bearbeitet durch Moderator
von Dominic (dommi)


Lesenswert?

Peter D. schrieb:
> Die Ansprechzeit ist mit 1ms angegeben, schaffst Du das?

Wahrscheinlich dumme Frage, aber was ist damit gemeint bzw. wie 
schaffen?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Dominic schrieb:
> aber was ist damit gemeint bzw. wie schaffen?
Damit ist gemeint, dass niemand ausser dir weiß, was du da wie genau 
messen willst.

Dominic schrieb:
> was den finanziellen Rahmen des Projektes sprengen würde.
Neue Salamischeibe...

Wie wäre es, wenn du "das Projekt" und die dahinterstehenden Ressourcen 
ein wenig ausführlicher beschreibst?

: Bearbeitet durch Moderator
von Peter D. (peda)


Lesenswert?

Dominic schrieb:
> Wahrscheinlich dumme Frage, aber was ist damit gemeint bzw. wie
> schaffen?

Nun, die Lichtschranke sollte mindestens 1ms unterbrochen werden und der 
Meßfehler kann bis 1ms betragen.

von Vancouver (vancouver)


Lesenswert?

Wenn du den Arduino bei der 20m-Schranke positionierst, hast du nach 
beiden Seiten nur 20m Kabellänge.

Und ja, 12V für 4 Lichtschranken aus der Boardversorgung des Arduino 
hochzuregeln ist sicher keine gute Idee. Besser umgekehrt wie oben 
beschrieben.

von Dominic (dommi)


Lesenswert?

Ich will eine einfache Zeitmessung bei Trainingsläufen machen. Wenn die 
Lichtschranke beim Start ausgelöst wird startet quasi die Stoppuhr und 
bei jeder weiteren Lichtschranke wird die Zwischenzeit bzw. Endzeit 
genommen. Für Läufer.

Das bei Zeitmessung durch Lichtschranken z.B. durch Arm im richtigen 
Moment nach vorne bringen ein wenig "gecheatet" werden kann ist mir 
klar, und damit kann ich leben.
Wenn ich das hochpräzise haben will brauche ich entsprechende 
Startsysteme und Fotofinish-Anlagen, das wäre aber für eine einfache 
Messung im Training zu Aufwendig, sowohl vom Aufbau her, als auch 
finanziell.

Müsste jetzt genau ausrechnen wie lange so ein durchschnittlicher 
Leichtathlet die Lichtschranke unterbrechen würde, ich würde aber 
schätzen dass ein Mensch der durchläuft für mehr als 1ms unterbricht.

Vancouver schrieb:
> Und ja, 12V für 4 Lichtschranken aus der Boardversorgung des Arduino
> hochzuregeln ist sicher keine gute Idee. Besser umgekehrt wie oben
> beschrieben.
Ein handelsübliches 12V-Netzteil hab ich hier noch liegen.


Preislich hatte ich für das Projekt folgendes überschlagen:
- ca. 200€ für Lichtschranken
- ca. 80€ für Kabel/Stecker
- Arduino, Display, Stative hab ich noch rumliegen, Gehäuse drucke ich 
aus


Lothar M. schrieb:
> Du kannst auch übliche mehradrige flexible Steuerleitung nehmen:
> 
https://www.conrad.de/de/p/faber-kabel-liyy-steuerleitung-4-x-0-25-mm-grau-030200-meterware-1152516.html
Welche Stecker würde ich dann nehmen?

https://www.reichelt.de/sal-m8x1-3-pol-einbaubuchse-sal8-fk30-p136974.html 
mit 
https://www.reichelt.de/sal-m8x1-3-pol-stecker-sal8-rsc3-p136938.html

oder

https://www.reichelt.de/sal-m8x1-3-pol-einbaustecker-sal8-fs30-p136976.html 
mit 
https://www.reichelt.de/sal-m8x1-3-pol-buchse-sal8-rkc3s-p136934.html

Oder ganz andere?

Beitrag #7522604 wurde vom Autor gelöscht.
Beitrag #7522605 wurde vom Autor gelöscht.
von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Dominic schrieb:
> Müsste jetzt genau ausrechnen wie lange so ein durchschnittlicher
> Leichtathlet die Lichtschranke unterbrechen würde
Das kannst du im Grunde nur am konkreten Aufbau messen, aber 
überschlägig kannst du es ja mal so machen und die 44m/s von Usian Bolt 
nehmen, dann sind das 44mm/ms. Der Körper des Sprinters hat mindestens 
ca. 250 mm in der "Tiefe", sodass der Lichttaster bei Usian Bolt ca. 5ms 
belegt gewesen wäre.

> Das bei Zeitmessung durch Lichtschranken z.B. durch Arm im richtigen
> Moment nach vorne bringen ein wenig "gecheatet" werden kann ist mir
> klar, und damit kann ich leben
Welche Ungenauigkeit hast du dadurch? Wenn der die Hand nach vorn 
streckt, dann kann er den 250mm locker mal um 700mm "vorgreifen" und du 
hast einen "Beschiss" von gut 700mm/44mm/ms = 15ms.

Dominic schrieb:
> Welche Stecker würde ich dann nehmen?
Im Grunde egal. Ich würde tatsächlich fertig konfektionierte und zur Not 
mehrere leicht ersetzbare (weil käufliche) M8 Kabel (z.B. in 5m und 10m 
Länge) hintereinanderstecken. Dann musst du in dein Gerät nur eine 
passende Buchse bauen und hast als Frontend leicht ersetzbare 
Katalogteile. Solche Kabel sind nämlich Verschleißteile. Da bist du 
sonst laufend am neu konfektionieren.

: Bearbeitet durch Moderator
von Norbert (der_norbert)


Lesenswert?

Lothar M. schrieb im Beitrag #7522604:
> Nehmen wir mal die 44m/s von Usian Bolt,

Ich habe da sicherlich etwas falsch verstanden,
aber das wären knapp 160km/h.

von Udo S. (urschmitt)


Lesenswert?

Lothar, warum hast du jetzt Teile drei mal geschrieben?

Lothar M. schrieb im Beitrag #7522605:
> as knnst du im Grunde nur messen, aber überschlägig kannst du es ja mal
> so machen und die 44m/s von Usian Bolt nehmen

Da auch er knapp 10s für die 100m braucht und nicht 3s sind es wohl eher 
44km/h also im Schnitt etwa 10m/s und max. ca. 12-15m/s 
Höchstgeschwindigkeit da er ja zu Beginn noch beschleunigen muss.

von Falk B. (falk)


Lesenswert?

Peter D. schrieb:
> Dominic schrieb:
>> Ich brauche eine Zeitmessung über Lichtschranken.
>
> Die Ansprechzeit ist mit 1ms angegeben, schaffst Du das?

Ein Person des öffentlichen Lebens sagte einmal "Wir schaffen das." Ob 
sich diese Prognose bewahrheitet hat, ist mir nicht bekannt . . .

von J. T. (chaoskind)


Lesenswert?

Lothar M. schrieb im Beitrag #7522605:
> die 44m/s von Usian Bolt nehmen,

Einheiten, Einheiten und nochmal Einheiten, pflegte mein Physiklehrer 
immer zu sagen.

von Falk B. (falk)


Lesenswert?

J. T. schrieb:
>> die 44m/s von Usian Bolt nehmen,
>
> Einheiten, Einheiten und nochmal Einheiten, pflegte mein Physiklehrer
> immer zu sagen.

Sind doch da. Daß der Lothar km/h und m/s verwechselt hat, ist ein 
anderes Thema.

von Rainer W. (rawi)


Lesenswert?

Dominic schrieb:
> Bei 40m Kabellänge meinte ich mit Problemen, dass z.B. das Signal zu
> schwach wird.

Lass einen soliden Strom fließen. Der ist überall gleich.

von J. T. (chaoskind)


Lesenswert?

Falk B. schrieb:
> Sind doch da. Daß der Lothar km/h und m/s verwechselt hat, ist ein
> anderes Thema.

Der Physiklehrer meinte es aber mit Bezug auf die richtigen Einheiten, 
nicht im Sinne von "solange ihr irgendwelche Einheiten da habt, ist 
alles supi".

Hätte Lothar auf die 44 bestanden, wären halt km/h die Einheit der Wahl 
gewesen. Bei m/s hätten es etwa 10 sein sollen.

von Norbert (der_norbert)


Lesenswert?

J. T. schrieb:
> Hätte Lothar auf die 44 bestanden, wären halt km/h die Einheit der Wahl
> gewesen. Bei m/s hätten es etwa 10 sein sollen.

<Erbsencount=0>
Also ich fand ja immer das ein Umrechnungsfaktor von 3600s/h×1km/1000m 
recht gut funktioniert. ;-)
</Erbsencount>

von Wendels B. (wendelsberg)


Lesenswert?

Norbert schrieb:
> <Erbsencount=0>
> Also ich fand ja immer das ein Umrechnungsfaktor von 3600s/h×1km/1000m
> recht gut funktioniert. ;-)
> </Erbsencount>

<Oberklugscheis>
oder kurz 3,6
</Oberklugscheis>

;-)))))

von Norbert (der_norbert)


Lesenswert?

Wendels B. schrieb:
> <Oberklugscheis>
> oder kurz 3,6
> </Oberklugscheis>

J. T. schrieb:
> Einheiten, Einheiten und nochmal Einheiten, pflegte mein Physiklehrer
> immer zu sagen.

;-)

von J. T. (chaoskind)


Lesenswert?

Wendels B. schrieb:
> Norbert schrieb:
>> <Erbsencount=0>
>> Also ich fand ja immer das ein Umrechnungsfaktor von 3600s/h×1km/1000m
>> recht gut funktioniert. ;-)
>> </Erbsencount>
>
> <Oberklugscheis>
> oder kurz 3,6
> </Oberklugscheis>
> ;-)))))

Oberoberklukscheiß

Wenn man die Einheiten mitbetrachtet, ist Norberts Variante richtiger, 
aber faul wie ich bin rechne ich auch immer mit 3.6 und tu nur so, als 
würd ich die richtigen Einheiten nutzen ;-) :D

von J. T. (chaoskind)


Lesenswert?

Norbert schrieb:
> <Erbsencount=0>
> Also ich fand ja immer das ein Umrechnungsfaktor von 3600s/h×1km/1000m
> recht gut funktioniert. ;-)
> </Erbsencount>

Achso, an der Stelle ging ich einfach von knapp 10 Sekunden für die 100 
Meter aus. In der wirklichen Wirklichkeit sind 10m/s natürlich 36km/h 
und nicht 44, danke für den Hinweis :D

von Norbert (der_norbert)


Lesenswert?

J. T. schrieb:
> Norbert schrieb:
>> <Erbsencount=0>
>> Also ich fand ja immer das ein Umrechnungsfaktor von 3600s/h×1km/1000m
>> recht gut funktioniert. ;-)
>> </Erbsencount>
>
> Achso, an der Stelle ging ich einfach von knapp 10 Sekunden für die 100
> Meter aus. In der wirklichen Wirklichkeit sind 10m/s natürlich 36km/h
> und nicht 44, danke für den Hinweis :D

Schon klar!
Doch der Thread ist sowieso schon wieder vollformatig abgeglitten,
da musste ich einfach… ;-)

von Wendels B. (wendelsberg)


Lesenswert?

Norbert schrieb:
> Doch der Thread ist sowieso schon wieder vollformatig abgeglitten,
Ja klar, weil man das
Dominic schrieb:
> Müsste jetzt genau ausrechnen wie lange so ein durchschnittlicher
> Leichtathlet die Lichtschranke unterbrechen würde, ich würde aber
> schätzen dass ein Mensch der durchläuft für mehr als 1ms unterbricht.
ja wohl ganz am Anfang macht, hat der TO nicht.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Udo S. schrieb:
> Lothar, warum hast du jetzt Teile drei mal geschrieben?
Da hat sich irgendwie der Browser verhakt. Ich habe das mal aufgeräumt.

Falk B. schrieb:
> Daß der Lothar km/h und m/s verwechselt hat, ist ein anderes Thema.
Nicht meinn Tag heute... ;-/

Aber mit 10m/s (also 10mm/ms) entspannt sich das Timing merklich.

: Bearbeitet durch Moderator
von Thomas F. (igel)


Lesenswert?

Dominic schrieb:
> Preislich hatte ich für das Projekt folgendes überschlagen:
> - ca. 200€ für Lichtschranken

Willst du wirklich so viel ausgeben?

Gibt es auch deutlich billiger:
https://de.aliexpress.com/item/1005004123351251.html

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Schließe "intelligente" Lichtschranken über RS485 an, das ist für solche 
Entfernungen gut geeignet. Das bedeutet für jede Lichtschranke einen 
eigenen MC fürs Interface. XLR-Stecker und Kabel sind auch eine gute 
Option, wird z.B. bei DMX im Bereich Bühne/Theater auch so gemacht und 
da sind 40m keine Seltenheit. Bei RS485 kannst du das Prinzip "daisy 
chain" anwenden und du sparst Kabel (Bus statt Stern). Die jeweils 
unterbrochene Lichtschranke wirft einfach ihre Nummer auf den Bus.

Bezüglich der Bitrate kommt es auf die benötigte zeitliche Auflösung an. 
9600 Bit/s sind deutlich störfester als 115200, aber eben auch mehr als 
10 mal langsamer ...

Stell dir eine halbwegs genaue (1/100s) Zeitmessung mit MC nicht zu 
einfach vor ... absolut machbar, aber nicht gerade primitiv. Da bedarf 
es besonderer Techniken, z.B. Timer-Interrups und man muss zusätzliche 
Kalibrier-Möglichkeiten (Vergleich mit prof. Stoppuhr) vorsehen. Die 
verwendeten Quarze sind schließlich keine geprüften Exemplare für Uhren. 
Eventuell noch zusätzlich eine Temperaturstabilisierung für die 
MC-Platine (oder einen externen Taktgenerator), wenigstens auf 2..3 Grad 
genau.

: Bearbeitet durch User
von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Frank E. schrieb:
> Da bedarf es besonderer Techniken, z.B. Timer-Interrups
Wenn man die Mainloop kompakt hält, geht das auch einfach per Polling.

> zusätzliche Kalibrier-Möglichkeiten (Vergleich mit prof. Stoppuhr)
> vorsehen. Die verwendeten Quarze sind schließlich keine geprüften
> Exemplare für Uhren
So heiß wird die Suppe nicht gegessen, denn weil 1ms auf 20s 
Gesamtmessdauer nur 50ppm sind, reicht eigentlich jeder Quarz für eine 
Genauigkeit im ms-Bereich. Auch ohne Temperaturregelung.

> Schließe die Lichtschranken über RS485 an, das ist für solche
> Entfernungen gut geeignet.
40m sind noch keine nennenswerte Entfernung für ein einzelnes 
24V-Signal.

: Bearbeitet durch Moderator
von Norbert (der_norbert)


Lesenswert?

Frank E. schrieb:
> Stell dir eine halbwegs genaue (1/100s) Zeitmessung mit MC nicht zu
> einfach vor

So spielt einem das Bewusstsein manchmal einen bösen Streich!

Weißt du was ich gerade zu lesen geglaubt habe?
Das es schwierig sei mit einem µC auf eine 1/100 Sekunde (oder sogar 
noch besser) zu messen.
Unter anderem weil die Quarze alle so schlecht sind und die ganze 
hochkomplizierte Programmiertechnik vermutlich noch gar nicht 
vollumfänglich verstanden sei.

Das ist fürwahr ein schwerer Schlag für die Menschheit.
Da siebe ich zur Sicherheit gleich ein wenig feinen Sand für meine Uhr.

von Joe L. (joelisa)


Lesenswert?

Frank E. schrieb:
> Bei RS485 kannst du das Prinzip "daisy
> chain" anwenden und du sparst Kabel (Bus statt Stern). Die jeweils
> unterbrochene Lichtschranke wirft einfach ihre Nummer auf den Bus.

"Daisy chain" geht auch bei 'analoger' Technik. Man muss nur die 4 
Signale etwas trickreicher verschalten. Der Aufbau im Feld gestaltet 
sich damit einfacher, brauchst du doch nur 2x10m und 1x20m Kabelstücke - 
oder 4x10m plus eine Doppelkupplung. Oder Verdrahtung und Lichtschranken 
haben durchgängig male/female Steckverbinder: das spart dann die 
Doppelkupplung.

"Trickreich verschaltet" kann im einfachsten Fall ein "Open Collector" 
sein, mit allen Gebern einfach parallel verschaltet.

"Eine Nummer auf den Bus werfen" ist unnötig. Die Signale treffe immer 
in der richtigen Reihenfolge beim Empfänger ein -- solange nur ein 
Läufer auf der Strecke ist.

just my 2ct

von Rolf (rolf22)


Lesenswert?

Frank E. schrieb:
> eine halbwegs genaue (1/100s) Zeitmessung
> (...)
> Da bedarf es besonderer Techniken, z.B. Timer-Interrups

Ich hätte ja gedacht, dass eine einfache Schleife mit Zähler und 
Signalpolling ausreicht, um Intervalle von 10 ms zu messen. Jedenfalls 
dann, wenn man keine PDP 11 von 1970, sondern einen modernen µP benutzt, 
der pro Befehl nur 1oo ns braucht. Das ist so schnell, da kann man sogar 
mit einer Hochsprache statt Assembler arbeiten.

Macht man vielleicht doch mit Timer, ist aber rein von der 
Geschwindigkeit her gesehen nicht nötig.

von Stephan (stephan_h623)


Lesenswert?

40m sind grob 5s. Unsicherheit mindestens 40cm (Arm). Wären 50ms oder 5 
hundertstel oder 1%. Da is weder Programm noch Quarzgenauigkeit ein 
Thema (solange man nicht delay() verwendet).

Das schwierigste dürfte die sinnvolle Erfassung des Start und die 
Ausrichtung der Lichtschranken sein. Die werden vermute ich mal nicht 
fest installiert.

von Dominic (dommi)


Lesenswert?

Vielen Dank für die Hinweise und Tipps. Es hat alles funktioniert.

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.