Ich habe eine Designanforderung, bei der ich ein analoges Signal erfassen und über einen Mikrocontroller lesen muss.
Ich verwende einen normalen Spannungsteiler auf Widerstandsbasis mit Werten von 47 K und 10 K, gefolgt von einem RC-Tiefpassfilter.
Es funktioniert gut, aber da der Mikrocontroller maximal 4 V an seinem Eingang aushalten kann (mit einem STM32 uC), muss ich den Pin schützen, falls der Eingang zum Teiler über 23 V liegt.
Ich habe dazu einen Reihenwiderstand und eine 4-V-Zenerdiodenschaltung am Ausgang des Widerstandsteilers angeschlossen, aber dies beeinflusst die Linearität der Schaltung.
Wenn beispielsweise der Eingang zu uC Vout und der Eingang zum Widerstandsteiler Vin ist, bleibt das Verhältnis (Vin/Vout) für den gesamten Bereich von Vin für den Fall, dass Widerstand + Zenerschaltung nicht angeschlossen sind, konstant. Idealerweise kann Vin also mit der Formel Vin = 5,7*Vout berechnet werden
Wenn jedoch Zener angeschlossen ist, bleibt das Verhältnis nicht konstant und schwankt ständig über den gesamten Bereich von Vin, und daher können Vout-Daten nicht verwendet werden, um Vin genau zu berechnen.
Ich muss den Pin vor kontinuierlicher Überspannung und transienten Spitzen schützen.
Kann jemand vorschlagen, was ich genau tun soll, um den erforderlichen Schutz und die Linearität der Schaltungsleistung zu erreichen?
Das Problem ist, dass Niederspannungs-Zenerdioden ein weiches „Knie“ und einen relativ hohen Leckstrom haben – zu hoch für Ihr empfindliches analoges Signal. Die einfachste Lösung besteht darin, einfach einen Zener mit höherer Spannung zu verwenden, der einen niedrigeren Leckstrom hat (z. B. BZX84C12 durchläuft < 100 nA bei 8 V).
Dies führt jedoch dazu, dass die Schutzdiode im ADC-Eingang einen gewissen Strom in die MCU-Stromversorgung einspeist. Die meisten Regler können nicht viel Strom aufnehmen, also müssen Sie einen Pfad für diesen Strom bereitstellen, um zu verhindern, dass die Versorgungsspannung ansteigt. Bei einem 12-V-Zener würde der eingespeiste Strom einen Spitzenwert von ~ 800 uA erreichen, der mit einem 3,3-kΩ-Widerstand gegen Masse geleitet werden kann (dies ist nicht erforderlich, wenn andere Geräte an dieser Versorgung jederzeit weit über 800 uA ziehen).
Wenn der eingespeiste Dauerstrom für die Schutzdiode zu hoch ist, sollten Sie eine externe Schottky-Diode hinzufügen, die einen geringeren Spannungsabfall hat, damit sie übernimmt. Diese Diode muss außerdem einen geringen Leckstrom aufweisen, um eine Beeinflussung des ADC-Messwerts zu vermeiden.
Die Schaltung würde so aussehen: -
Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan
Eine andere Möglichkeit besteht darin, eine aktive Klemme mit einem PNP-Transistor herzustellen. Dies könnte einen viel geringeren Leckstrom sowie einen geringeren Versorgungsstrom aufweisen, ohne sich Gedanken über den injizierten Strom machen zu müssen. In der Schaltung darunter setzt D3 die Basis von Q1 auf ~0,4 V unter Vdd, sodass der Transistor bei ~0,2 V über Vdd (vor der Schutzdiode der MCU) einschaltet und den Strom wie die Zenerdiode gegen Masse leitet, jedoch bei ~3,5 V statt 12 V.
Andi aka
Spehro Pefhany
Peter Schmidt