Der Funkensender-Empfänger 

Elektronik-Labor  Projekte  Mikrocontroller  TLScript  







Kürzlich habe ich Versuche mit einem Funkensender und einem einfachen Empfänger mit einem Fritter durchgeführt. Vor längerer Zeit habe ich das auch schon einmal rein elektronisch gemacht. Das Prinzip war, dass ein Transistor-Flipflop durch Funkimpulse getriggert wurde. Jetzt kam mir der Gedanke, dass ein RPi Pico das auch können sollte. 

Wenn ein Port am Pico als Eingang geschaltet wird, hat er eine Hysterese. Der interne Schmitt-Trigger ist auch ein Flipflop. Ich muss also die Spannung so einstellen, dass er gerade noch nicht kippt. Ein relativ kleiner HF-Impuls sollte dann reichen, den Zustand zu kippen. Für die Einstellung der optimalen Spannung verwende ich den PWM-Ausgang mit einer Glättung.




Um die Schaltschwellen des Eingangs zu bestimmen verwende ich den RC-Oszillator RCosc.tlc. Mit dem TestLab kann dann beobachtet werden, bei welchen Spannungen der Port kippt.



Mit einer kleinen Erweiterung werden die Spannungen der Umschaltpunkte direkt angezeigt. Dazu wird die Spannung bei jeder Umschaltung gemessen und ausgegeben.



Der obere Umschaltpunkt liegt also bei ca. 119. Allerdings könnte der genaue Umschaltpunkt etwas zu hoch angezeigt werden, weil gewisse Programmlaufzeiten die Messung verzögern. Mit dem fein einstellbaren PWM-Ausgang kann die Schwelle noch genauer bestimmt werden. Wenn PWM1 = 112 eingestellt wird, kippt der Port gerade in den 1-Zustand.





Für das Fritter-Programm muss die Ausgabe also noch etwas tiefer auf 111 eingestellt werden. Immer wenn der Port durch einen Impuls in den 1-Zusatnd kippt, springt das Programm nach L2 und schaltet für eine Sekunde eine LED an P1 ein.

              Rem Fritter
0x09FE  Pdir = 254
0x010A  A = 10
0x21F0  Call L240:
0x106F  PWM1 = 111
              L1:
0x4000  A = Pin0
0x0201  B = 1
0x2208  If A=B Jmp L2:
0x2004  Jmp L1:
              L2:
0x0802  Pout = 2
0x1A01  Delay s = 1
0x1000  PWM1 = 0
0x0800  Pout = 0
0x1A01  Delay s = 1
0x106F  PWM1 = 111
0x2004  Jmp L1:



Mit einer Induktivität und einer kleinen Antenne ist das Gerät fertig. Eine empfangene HF-Spannung addiert sich zur Ruhespannung knapp unter dem Schaltpunkt. Wenn mindestens eine Schwingung weit genug nach oben reicht, kippt der Port um. Nach einer Sekunde wird die PWM-Spannung heruntergefahren, um den Port zu löschen. danach geht es mit der Ruhespannung weiter.

Das Programm funktioniert sehr zuverlässig. Normalerweise ist die LED aus. Aber wenn ich am Abstand 1 m mit meinem Piezofeuerzeug einen Impuls erzeuge, geht sie für eine Sekunde an. Es reicht auch, wenn ich eine Lampe oder ein Gerät im Labor ein- oder ausschalte, Auch dabei entsteht ein Impuls mit großer Reichweite, weil die Netzleitungen als Antenne arbeiten.

Mit einem Arduino Nano geht es auch: Siehe https://www.instagram.com/p/DYtowKZjfCZ/
 

Elektronik-Labor  Projekte  Mikrocontroller  TLScript