Reflex-Lichtschranke
Themabewertung:
Thomas123 Junior Member ![]() ![]() Beiträge: 2 Registriert seit: Jun 2014 Bewertung: 0 |
11.06.2014, 16:41
Hallo alle zusammen
![]() Ich hoffe, dass ich mich gut ausrücken kann, sodass ihr mein Anliegen versteht! Ich möchte die Schwingdauer (in ms) von einem rotierenden Werkstück messen. Dies soll mit einer Reflex-Lichtschranke und einer entsprechenden Fototransistor geschehen. Es soll also die Zeit gemessen werden, in der das Licht zurückgeworfen wird. Dies ist denk ich mit dem Arduino machbar, da er ein Timer besitzt. Mir fehlt jedoch noch das "Verständnis", wie das Lichsignal den Timer startet bzw. beendet... Bei Fragen, einfach schreiben ![]() |
||
|
Unilein Fachgebiet Rauchentwicklung ![]() ![]() ![]() ![]() ![]() ![]() ![]() Beiträge: 816 Registriert seit: Apr 2014 Bewertung: 5 |
11.06.2014, 17:50
Hallo Thomas123,
aus meiner Sicht wäre das eine klassische Anwendung für einen Interrupt. Der Arduino stellt zwei Eingänge für externe Unterbrechungen zur Verfügung (INT0 und INT1). Wenn Du nun INT0 mit einem Pullup-Widerstand auf HIGH-Potenzial legst (das kann der Arduino ja selbst, dafür brauchts keine externen Bauteile), dann kannst Du INT0 über den Fototransistor auf Masse legen. Das Licht der Lichtquelle trifft den Transistor. Dieser macht auf und zieht den INT0-Pin auf Masse und damit auf LOW-Potenzial. Mit einer Interrupt-Serviceroutine zählst Du eine Variable hoch. Mit dem Zählerstand kannst Du dann in der Hauptschleife (oder sonstwo) machen, was Du willst. Soweit mal meine Idee dazu. Beste Grüße, Uni
-----
Sic mundus creatus est. |
||
|
Unilein Fachgebiet Rauchentwicklung ![]() ![]() ![]() ![]() ![]() ![]() ![]() Beiträge: 816 Registriert seit: Apr 2014 Bewertung: 5 |
11.06.2014, 22:21
@Thomas123: Ich habe gerade nochmal Deinen Beitrag gelesen. Ich hatte übersehen, dass Du NICHT die Anzahl der Impulse sondern die ZEIT zwischen zwei Impulsen messen willst. In dem Fall musst Du tatsächlich den Timer verwenden. Ich habe aber auch Deinen zweiten Beitrag zu dem Thema gelesen und festgestellt, dass Du da schon nah an der Lösung bist
![]()
-----
Sic mundus creatus est. |
||
|
tesacrep Administrator ![]() ![]() ![]() ![]() ![]() ![]() ![]() Beiträge: 504 Registriert seit: Dec 2013 Bewertung: 2 |
11.06.2014, 23:10
Hallo Thomas123,
Wie dick, bzw schnell ist denn dein Werkstück. Die Phototransistoren könnten bei einem dünnen Werkstück nicht schnell genug sein. Ansonsten hat Unilein ja zu Programmierung schon einiges erläutert. Was hast du den an Hardware? |
||
|
|
Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste