Merkmale
Durch Zufall bin ich auf einen Chip gestoßen, der Gewitter in einem Radius von 40Km erkennt und somit bei nahenden Gewittern zur Vorwarnung dienen kann. Laut dem Datenblatt des Herstellers hat der Chip folgende Merkmale:
- Warnung vor Gewitter Aktivität im Umkreis von 40Km
- Einschätzen der Entfernung zum Gewitter bis auf 1Km
- Erkennt Wolke-Wolke und Wolke-Erde Blitzschläge
- Erkennt Störsignale
- Programmierbare Erkennungs-Level und Ansprech-Schwellen
- Flexibel durch Standard Interface (SPI and I²C)
- Datenblatt Herstellerseite AS3935
Da sich diese Daten recht Interessant anhören, habe ich mich gleich mal auf die Suche nach den benötigten Komponenten gemacht und bin dabei auf diverse BreakOut Bords gestoßen. Da ich, was Antennentechnik betrifft, ein unbeschriebenes Blatt bin, habe ich mich entschlossen, ein fertiges BreakOutBord von CJMCU zu kaufen, das vom Design her sehr vielversprechend aussah.
Als Controller setze ich einen ATMEL ATMEGA16 ein, da hier schon Erfahrung bestand. In C habe ich dann einen kleinen „Treiber“ geschrieben, der die Ansteuerung aus dem Programm vereinfacht, dazu später mehr….
Nachdem die I2C Hürde (Neuling) überwunden war, konnte der Chip über das Board angesprochen werden, wobei ich einige Stunden dem Anfängerfehler aufgesessen bin, dass am I²C-Bus kein Gerät die Adresse 0x00 haben darf. Auch die PullUp Widerstände sollten am Bus nicht vergessen werden, da die internen PullUps vom ATMEL viel zu hochohmig sind.
Eine kleine Herausforderung war eine Routine zum kalibrieren der Antennen Frequenz, die jedoch auch erfolgreich implementiert wurde.
Falsch bestückte BreakOutBoards
Beim kalibrieren der Antenne bin ich jedoch auf ein Problem gestoßen, das sich nicht so leicht lösen lässt.
Die Frequenz der Antenne sollte auf 500KHz +/-3,5% kalibriert werden, damit die Chip internen Algorithmen zuverlässig funktionieren. Dazu lassen sich im Schwingkreis Kondensatoren von jeweils 8pF hin zuschalten bis zum Maximalwert von insgesamt 120pF.
Zu meinem Erstaunen lag die Frequenz aber bei ca. 475KHz, wenn alle Kondensatoren abgeschaltet waren. Da durch zuschalten weiterer Kalibrier-Kondensatoren die Frequenz im Schwingkreis weiter sinkt, war ich etwas ratlos. Eine Rechere im Internet ergab keine Anhaltspunkte, es schien so, als ob niemand diese Problem hat. In einigen wenigen Foreneinträgen wurde zwar erwähnt, dass manche es auch nicht fertig brachten zu kalibrieren, aber dem Anschein nach, damit sonst keine Probleme hatten.
Nachdem ich andere Fehlerursachen ausgeschlossen hatte, wurde das BreakOutBoard unter die Lupe genommen. Dabei habe ich festgestellt, dass der Schwingkreis mit zwei Kondensatoren bestückt ist, die Werte jedoch nicht erkennbar sind, da diese Kondensatoren als SMD Bauteile bestückt sind. Alles deutete darauf hin, dass im Schwingkreis eine zu hohe Kapazität vorhanden war. Nach Raten, welcher der zwei Kondensatoren wohl der kleinere war, habe ich dann, mit absolut ungeeigneter Ausrüstung, den Kondensator mit der vermutlich kleineren Kapazität entfernt. Tatsächlich habe ich dann einen 100pF Kondensator ausgelötet und der Schwingkreis lief schneller, aber immer noch außerhalb der Toleranz.
Im zweiten Schritt habe ich dann den zweiten auch noch ausgelötet und dieser hatte dann über 1nF. Bei weiterer Recherche beim Hersteller bin ich dann auf ein „Guide“ gestoßen (siehe Hardware Design Guide Datenblatt AS3935), das auf die Berechnung der Kondensatoren einging. Dort wird beschrieben, dass die Idealkapazität im Schwingkreis bei 1013pF liegt. Damit man beim Kalibrieren Spielraum hat um Toleranzen auszugleichen, wird dort eine Kapazität von 953pF empfohlen, so dass man durch zuschalten der Kalibrier-Kondensatoren zwischen 953pF und 1073pF kalibrieren kann.
Zufällig hatte ich einen Kondensator der knapp unter 1000pF lag und habe diesen dann, anstelle der SMD Kondenstoren reingemurkst. Und siehe da, Frequenz lag innerhalb der Toleranz, aber noch weit weg von 500Khz, aber immerhin konnte so erstmal weiter geforscht werden. Wenige Tage später waren dann die Ersatz Kondensatoren da. An diesem Tag waren Gewitter angesagt, deshalb war ich richtig heiss darauf, das ganze ans laufen zu bringen. Da die Ersatz Kondensatoren in konventioneller Bauweise waren (680pF & 270pF +/-2%), habe ich vier zusätzliche Löcher gebohrt und dann die neuen Kondensatoren eingesetzt. Das Ergebnis waren dann 0Hz im Schwingkreis. Fehlersuche blieb erfolglos, erst später merkte ich, dass wohl die Spule der Antenne keinen Durchgang mehr hatte. Fehlerquelle war, dass ich beim Bohren, mit der Schwungmasse des Bohrers, wohl an die Spule gekommen bin, das konnte ich aber erst mit Einsatz eines Mikroskops feststellen. Man kann sich vorstellen, dass ich an diesem Tag richtig sauer war, ein Gewitter ohne Gewittersensor…..
CJMCU der Zweite
Nachdem ein zweites, baugleiches BreakOutBoard ankam, war nach dem ersten Test klar, das Ding ist genauso mit falschen Werten bestückt. Diesmal wollte ich es aber richtig machen und zuerst geeignetes Werkzeug besorgen. Dabei ging auch so einiges schief (DOA).
So wie es aussieht, sind alle Boards dieses Herstellers mit falschen Werten bestückt, der Chip funktioniert zwar, die Erkennungsrate ist aber äußerst mies, beim letzten Gewitter wurden selbst Blitzschläge über dem Kopf so gut wie nicht erkannt.
Nachforschungen meinerseits ergaben folgendes:
- Vom Hersteller AMS gibt es ein Entwicklungs-/Demo-Board
- Im Schaltplan dort sind im Schwingkreis auch 2 Kondenstoren drin
- Im Internet kursieren Referenz Schaltungen mit 1x1000pF + 1x100pF
- Dies wurde wohl bei den Boards von CJMCU 1zu1 übernommen
- Getestet hat es wohl keiner
- Mag sein, dass dies beim Entwicklungsbord sogar funktioniert (evt. andere Antenne?)
- Die Original Dokumentation bei AMS ist richtig, dort ist der Schwingkreis mit 1x270pF und 1x680pF bestückt
Es ist mir ein Rätsel wieso das noch nicht aufgefallen ist, ein Schelm wer böses dabei denkt…….
Nachdem nun das benötigte Werkzeug vorhanden ist, wurde die Bestückung des Breakout Boards abgeändert. Ziel der Kalibrierung soll eine Zielfrequenz der Antenne im Bereich 482.5 KHz bis 517.5 KHz sein, damit die internen Algorithmen des Gewitter Chips, vernünftig funktionieren. Je näher an 500KHz desto besser. Hier folgen die entsprechenden Ergebnisse:
Man sieht, das auswechseln der Kondensatoren hat sich gelohnt, aber oft mache ich das mit Sicherheit nicht. Die 1mm langen Kondensatoren waren für mich echt eine Herausfordererung.
Irgendwann geht es hier weiter…………