Gerade wollte ich mit meinem Motorrad zum
TÜV, da fiel mir auf meiner Probefahrt auf, dass der vordere linke
Blinker nicht in Ordnung war. Die Kontrolllampe blinkt dann mit höherer
Geschwindigkeit. So ist es auch bei Autos, wenn eine Lampe durchbrennt,
blinkt die andere schneller, damit der Fehler bemerkt wird. Das Problem
ist inzwischen behoben, es lag an einer Kabelverbindung. Aber nun habe
ich mich gefragt, wie der Blinker die Lampen überwacht. Und ich wollte
so etwas im Modell nachentwickeln.
Hier sollte eine Glühlampe 6V/0,1A zum Einsatz kommen, die von
einem NPN-Transistor BC547B geschaltet wird. Im Datenblatt des
Transistors gibt es eine interessante Kurvenschar, die zeigt, dass die
Basisspannung mit dem Laststrom steigt. Man kann also die Basisspannung
messen und daraus Rückschlüsse auf den Laststrom ziehen. Bei 100 mA
liegt die Basisspannung mindestens 200 mV höher als ohne
Kollektorstrom, also wenn die Lampe durchgebrannt ist. Der Transistor wird also nebenbei als Stromsensor verwendet.
Alles wird von einem RPi Pico gesteuert. An GP13 entstehen die
Blinkimpulse, und AD2 überwacht die Basisspannung. Wenn die Lampe
ausfällt, wird das an der kleineren Basisspannung erkannt. Dann blinkt
die LED auf der Pico-Platine, und zwar mit doppelter Geschwindigkeit.
#Blinker.py mit Lampenüberwachung
from machine import Pin
import time
u2 = machine.ADC(2)
ad_in = Pin(28, Pin.IN)
led = Pin(25, Pin.OUT)
lamp = Pin(13, Pin.OUT)
while True:
t=0.5
lamp.value(1)
u=u2.read_u16()//20 #Ube ca. 950 mV
print(u)
if u<825:
#750 mV ohne Last
led.value(1)
t=0.25
time.sleep(t)
led.value(0)
lamp.value(0)
time.sleep(t)