Verwenden Sie Interrupt, um eine Änderung im IR-Detektor festzustellen

Ich habe einen Schaltplan gebaut, um einen Zähler zu lesen. Der Zähler hat an einer der Ziffern einen weißen Punkt, den ich mit einem IR-Sender-Empfänger erkenne. Die Spannung am Empfänger ändert sich von 2,2 auf 2,5 Volt (mit etwas Rauschen dazwischen), wenn der Weißpunkt passiert wird. Also verwende ich einen Opamp-Diff-Verstärker, um den Spannungsbereich auf 1 - 3 Volt zu ändern. Dieses Signal geht zum Opamp-Komparator, der sich bei 2,2 Volt Eingang ändert. Ich habe die Spannung gemessen und tatsächlich beträgt die Spannung nur dann, wenn der weiße Punkt passiert, mehr als 2,2 Volt. Der Ausgang des letzten geht an ein Arduino, das ich programmiert habe, um das Signal über einen Interrupt zu zählen. Das Problem ist jetzt, dass ich falsche Zählungen habe, aber ich kann nicht finden, warum. Ich verwende eine Software-Entprellung, die sicher groß genug ist, um Fehlerkennungen durch Prellungen zu vermeiden. Ich denke es hat was mit der Hardware zu tun. Hiermit ein Schema.

schematisch

Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan

Ich bevorzuge eine reine Softwarelösung: Lassen Sie den Arduino A / D die Fotodiode mit einem normalen Bas (1 kHz?) eingeben. Sie können Ihre Proben protokollieren und in Ruhe analysieren, wenn etwas schief geht.

Antworten (2)

Möglicherweise müssen Sie eine Hysterese auf OA2 anwenden - dies hat den Effekt, dass die Auswirkung von Rauschen minimiert wird, wenn sich das Signal von OA1 dem durch R7 definierten Schwellenwert nähert. Probieren Sie 1 kOhm in Reihe mit dem Signal von OA1 zum nicht invertierenden Eingang von OA2 und etwas wie 100 k bis 1 M Ohm vom Ausgang von OA2 zurück zu seinem nicht invertierenden Eingang. Die Größe dieses Rückkopplungswiderstands bestimmt die Höhe der Hysterese.

Ich stimme Andys Empfehlung für Hysterese zu und möchte auch vorschlagen, dass Sie einen besseren Operationsverstärker als den LM358 verwenden. Bei einer Versorgungsspannung von 5 V können Sie nicht garantieren, dass die Ausgangsspannung eines LM358 höher als etwa 3,5 V wird, was ein ziemlich schlampiger logischer 1-Pegel ist. Sie sollten stattdessen nach einem Operationsverstärker suchen, der einen "Rail-to-Rail" -Ausgang hat.

Danke! Können Sie bessere Operationsverstärker für dieses Problem empfehlen?
Probieren Sie einen AD8605 aus - er ist schnell genug und ein allgemein guter R2R-Operationsverstärker für 5-V-Systeme