Hallo, um die Drehzahl eines Motors zu regulieren habe ich einen Radencoder nach diesem Schaltungsprinzip aufgebaut: http://www.jojos-homepage.de/ft/cny70/SchaltplanCNY70.jpg Ich möchte die Segmente einer Encoderscheibe zählen. Der Emitter des Transistors liegt bei mir an einem Interrupt - Pin des Atmel Mega32 Controllers. Ein Interrupt soll ausgelöst werden, wenn HIGH am Pin anliegt (BASCOM High Level). Nun habe ich folgendes seltsame Verhalten: Ein Interrupt wird NUR registriert, wenn ich mit dem Oszilloskop die Spannung zwischen GND und Emitter messe (also der Innenwiderstand des Oszis zwischen GND und Emitter liegt). Weiterhin wird der Interrupt dann nicht nur einmal ausgelöst wenn die Lichtschranke verdunkelt wird, sondern permanent (etwa so wie bei einem nicht entprellten Taster). Ändert man in der Software das Verhalten des Interrupt Pins von High Level auf RISING oder FALLING (also auf Flankenerkennung), so ändert sich am Verhalten nichts. Habe ich bei der Beschaltung etwas vergessen? Am Oszilloskop sieht das Signal von den Encodern ganz vernünftig aus. Danke schon mal!
Wenn du den Emitter des BC547 auf GND legst, den Kollektor auf den ISR-Eingang und für den Eingang den PullUp aktivierst, wirst du ein besseres Ergebnis erzielen. Es ist aber dann ein Basisvorwiderstand erforderlich. Den hat mansich in deiner SChaltung gespart. Du kannst es auch mit einem PullDown von etwa 10k probieren.
Hallo, das ging schnell! Ich werde erst mal den Pulldown- Widerstand probieren, da die Schaltungen schon aufgebaut sind. Danke!
Hi Du verwendest den CNY70. Den gibt es mit 2 Anschlussvarianten für den Fototransistor. Du hast hoffentlich die Richtige. MfG Spess
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.