Blitzwarner 2T13
von Martin B.
Da die Gewittersaison bald beginnen wird, habe ich mir
noch einmal den Blitzwarner vorgenommen, bei dem ich voriges Jahr nicht
weitergekommen bin, und bin der Sache auf den Grund gegangen nachdem ich mich
um die diversen AVR-Details (Fuses) und dem Bascom schlau gemacht habe. Schlussendlich
waren die Fuses falsch gesetzt und der Tiny13 war eine schlechte Wahl weil ich
mit allergrößter Mühe und Codeumstellungen erst
die Sache zum Laufen bringen konnte. Ich habe zwei
Aufbauten erstellt, eine portable Version mit Batteriebetrieb und eine
stationäre zum Betrieb an einem Raspberry-USB-UART und einfacher
Visualisierung.
Es hat sich gezeigt, dass die Schwingkreisabstimmung
bei mir essenziell ist, bei Frequenzen über ca.500 kHz gab es einen Dauerlevel
zwischen 500 und 2000 ohne dass man dies auf irgendein konkretes Ereignis
zurückführen konnte, eventuell DSL- oder Powerline-Störungen.
Ich habe den Schwingkreis dann per
Parallelkondensatoren auf ca. 450..480 kHz abgestimmt, und jetzt ist der noch
gewitterlosen Zeit der Level bei der aufgebauten Version B niedriger mit
weniger Ausschlägen bis < ca. 1000 bei nicht zu niedriger PWM, Version A
zeigt hier Dauer-Level von 255 mit sehr wenigen Ausschlägen <500. Einer der
beiden (hier die Version B) ist deutlich empfindlicher als die andere, hier
kommt es öfter zu erhöhten Level-Werten, eventuell müsste man die AGC auch im
Betrieb immer wieder korrigieren. Die ausgebaute Variante A startet auch mit
niedriger PWM aus der Initialisierung (ca. 32..40), die aufgebaute eh schon
empfindlichere Version startet mit ca. 45..50 und ist dadurch noch
empfindlicher und liefert dann viel zu hohe Ruhelevel. Dies habe ich korrigiert
mittels reduzierter Verstärkung des BC547C (500 k statt 1 M Rcb).
Auch die "ruhige" aufgebaute Version A im
Batteriebetrieb ist im fahrenden Auto nicht zu gebrauchen, schon der
Steppermotor der Lüftungsklappen bringt die grüne LED zum Takten, da kann man
jede Ansteuerung beobachten;die Steuergeräte scheinen ebenfalls einen
signifikanten Störnebel zu produzieren.
Variante B zeigt im Dauerbetrieb nie grün, man merkt
aber tageszeitabhängige höhere Ruhewerte, dies könnte eventuell mit Küchenbetrieb
(Motoren in Abzugshaube und Herd?) korrelieren.
Auch der Stromverbrauch ist eigenartig, es scheint
dass der Low-Power Zustand nicht stabil zustande kommt, mehrere Versuche
zeigen:
Stromaufnahme der aufgebauten Version A im
Batteriebetrieb bei Vbatt=2,75 V nach PON:
für ca.
#1:
15s 450µA-560µA steigend
30s 425µA
105s 407µA
30s 425µA
105s 407µA
30s 425µA
usw.
#2
15s 450µA-560µA steigend
30s 425µA
105s 48µA
30s 425µA
105s 48µA
usw.
Es lassen sich beide Low-Power Zustände beobachten,
auch Mischformen, dass er z.B. nur einmal 48µA verbraucht und ab dem nächsten
Loop dann 407µA.
Basis war Ihre letzte Hardware und SW-Version 2T13_2c,
ich habe daraus _2d gemacht bei folgenden Änderungen:
HW:
* Zwei Spulen in 90° versetzter Montage um
Rundumempfang zu bekommen * serielle Datenausgabe von ID, Level und PWM (4
Bytes) via Port der roten LED, Interface passend für einen USB nach
UART-seriell (nicht RS232-Pegel!) Umsetzer, TX-RX Loopback zum Erkennen des
angeschlossenen Gerätes, damit kann ich die passende ttyUSBx finden.
Datenausgabe nur im UART-Betrieb um Strom zu sparen im Batteriebetrieb.
* Reset durch den Host möglich durch Ausgabe eines
Zeichens an die
serielle Schnittstelle.
SW:
* Algorhythmus unverändert
* Betriebszustand zum POR erkennen
* serielle Datenausgabe alle 30s wenn Aktivität
* Neuinitialisierung der PWM alle 9h wenn keine
Aktivität
* Codeoptimierungen, ansonsten ist der T13 zu klein
Test mit durchstimmbarem Funktionsgenerator, 100%
AM-moduliert mit Rechteckgenerator mit ca. 10..100 Hz. Koppelschleife in die
Nähe des Gerätes montieren und langsam HF-Amplitude und Frequenz justieren um
den empfindlichsten Punkt zu finden, dann eventuell den Schwingkreis anpassen,
dann Tests mit Modulation ein/aus und schauen ob und wie die Pulse detektiert
werden. Beobachtung ist, dann der Level schnell steigt und dann durch die ca.
10% decay Schritte auch schnell wieder abnimmt, ich bin schon gespannt wie das in
der Gewitterzeit sein wird.
Logdaten: Wenn viel Aktivität herrscht, dann ergibt
das einen geloggten Datensatz (Maximumwert in der Beobachtungsperiode,
Mittelwert und den aktuellen letzten Wert) pro ca. 12 Minuten, bei
Minimalaktivität einen Datensatz alle ca. 50 Minuten, da ich die Anzahl der
gesendeten Daten als Trigger zum Loggen verwende und nicht die vergangene Zeit.
Das Logskript wartet mindestens 30s und liest dann einen Datensatz aus dem UART
Puffer ein, das kann 30s oder ca. 126s dauern, je nach Datenaktivität; nach 30 Dateneinlesungen
wird dann eine Logzeile geschrieben. Das kann man sicher noch deutlich
verbessern.
gewa_old.txt : Tests mit Varianten A und B
gewa.txt : aktuelles Logging mit Variante B
gewalog.csv :
gewa.txt aufbereitet für DatPlot
.png: DatPlot Images
Download: Blitzwarner20Logs.zip
www.datplot.com/download Gewa.zip, Software: Blitzwarner2T13_2d.zip
Aktueller
Nachtrag: Ich habe ein paar Varianten des Rcb und einen
Schwingkreis-Parallelwiderstand durchprobiert, Ergebnis ist nur
teilweise logisch: mehr Verstärkung macht kleinere PWM (OK) aber auch
geringeren Ruhelevel, auf diesen sollte ja ausgeregelt werden. Rp macht
bei gleicher Verstärkung höhere PWM (OK) aber tlw. auch höhere Level.
Ich
werde die aktuell letzte Variante (1M, kein Rp), welche ja Ihrer
Originaldimensionerung entspricht und jetzt niedrigere und bessere
Werte liefert als zu Testbeginn, beim nächsten Gewitter testen und bis
dahin die Ruhelevel beobachten.
Rcb=333k, Rp=keiner
09.04.2017 12:18:19 ID=160 PWM=47 Level_max=994 Level_avg=575 Level_act=397
09.04.2017 12:28:50 ID=160 PWM=47 Level_max=1049 Level_avg=522 Level_act=280
Rcb=333k, Rp=27k
09.04.2017 13:45:26 ID=160 PWM=56 Level=444
Rcb=500k, Rp=27k
09.04.2017 13:58:50 ID=160 PWM=53 Level=302
Rcb=1M, Rp=27k
09.04.2017 14:19:02 ID=160 PWM=50 Level=255
09.04.2017 15:03:38 ID=160 PWM=50 Level=255
Rcb=1M, Rp=keiner
09.04.2017 15:27:07 ID=160 PWM=46 Level=264
09.04.2017 15:29:38 ID=160 PWM=46 Level=255
09.04.2017 15:50:12 ID=160 PWM=46 Level_max=444 Level_avg=293 Level_act=255
Noch ein Nachtrag: Die letzte Variante als unbedämpfter Kreis plus 1 M Rcb
in Variante B ist aktuell wieder viel zu empfindlich, eine kleine schwarze
Wolke genügt schon zu grün und eine kleine Gewitterzelle in 50 km
Entfernung (laut blitzortung) führt schon zu gelb. Variante A blieb
korrekt dunkel.
Irgendwie funktioniert die anfängliche Initial-Einregelung auf die
Ruhe-PWM nicht gut; eventuell durch das in zu kurzem Abstand erfolgte
Erhöhen der PWM bei zu hoher Schwingkreisgüte? Da fehlt mir aktuell die
Inspiration, ich werde wieder mit Dämpfungen testen und eventuell die SW
in der Initialisierung verändern.
PWM in erwartbarem Bereich aber Level viel zu hoch in B:
11.04.2017 09:06:46 ID=160 PWM=46 Level_max=1346 Level_avg=725 Level_act=581
11.04.2017 09:17:47 ID=160 PWM=46 Level_max=1426 Level_avg=754 Level_act=649
11.04.2017 09:28:48 ID=160 PWM=46 Level_max=1347 Level_avg=732 Level_act=445
11.04.2017 09:39:48 ID=160 PWM=46 Level_max=1345 Level_avg=658 Level_act=353
11.04.2017 09:50:19 ID=160 PWM=46 Level_max=1240 Level_avg=577 Level_act=938
11.04.2017 10:01:20 ID=160 PWM=46 Level_max=1326 Level_avg=653 Level_act=1196
11.04.2017 10:12:21 ID=160 PWM=46 Level_max=2404 Level_avg=1266
Level_act=1771 gruen
11.04.2017 10:23:22 ID=160 PWM=46 Level_max=1685 Level_avg=1225
Level_act=1421
11.04.2017 10:33:52 ID=160 PWM=37 Level_max=2964 Level_avg=1951
Level_act=1799 gruen
11.04.2017 10:44:53 ID=160 PWM=37 Level_max=2751 Level_avg=1633
Level_act=2611 gruen
Elektronik-Labor
AVR
HF Projekte