Seitdem ich die 13cm PA von SG-Lab mein eigen nenne, hatte ich die Idee, die bereits ab Werk vorhandenen Messpunkte auszuwerten. Direkt abgreifen kann man die REF, DRV und FWD Referenzwerte, also alles was man für Leistungswerte und zur Berechnung des SWR benötigt.
Die Umsetzung der Idee dauerte jedoch sehr lange und wurde von mir immer wieder aufgeschoben. Ich wollte dieses Projekt nutzen, um mich endlich etwas mehr mit den Arduino und der Programmierung auseinanderzusetzen und dies kann man eben nicht mal schnell nebenbei machen. Da mich der Aufbau solcher Schaltungen auch Lochraster Platinen immer stört, wollte ich in diesen Fall eine konsequente Umsetzung am Rechner verfolgen, um später eine fertige Platine bei „unseren Freunden aus dem Reich der Mitte“ ordern zu können. Ich habe mich beim Aufbau für konventionelle bedrahtete Bauteile entschieden, um eine höher Nachbausicherheit mit meinem Layout zu gewährleisten. Es mag schon die eine oder andere Umsetzung geben, auch in der CQDL wurde ein solcher Monitor bereits vorgestellt, aber abschauen zählt nicht!!! Ich wollte ja was lernen und so widerstand ich der Versuchung mir fertige Quelltexte anzuschauen und arbeitet maximal mit der Arduino Referenz.
Ich machte mich also erstmal ans Werk und arbeitete mich etwas in die Arduino Thematik ein. Einen fertigen Arduino Uno oder Nano zum Aufstecken wollte ich nicht verwenden. Wenn schon dann stand Alone, also ein Atmega 328P „on board“, den kannte ich ja von meinen „Hallo Welt“ Gehversuchen.
Wichtig war mir neben den Leistungsangaben und SWR der PA auch eine Auswertung der Temperaturwerte, denn mein Transverter hängt in einen Kasten in einen Schuppen und da wird es auch mal sehr kalt. Im Winter 2020/2021 fiel selbst im Stand-by die Temperatur im geschlossenen Kasten unter den Gefrierpunkt. Da wo es warm und kalt ist, kann es auch feucht werden, also sollte man das eventuell auch noch berücksichtigen. Um das alles zu verhindern und alles frostfrei zu halten, verbaute ich in meinen Transverterkasten eine Heizfolie wie man diese im KFZ-Bereich als Spiegelheizung findet. Diese hat ausreichend Leistung (ca. 10W) und arbeitet auf 12V Basis. Verklebt habe ich diese auf die Montageplatte die gleichzeitig die Wärme gut verteilt. Diese Heizung soll ebenfalls gesteuert werden, dann habe ich auch gleich noch eine Steuerung für einen optionalen PA Kühler mit verbaut. Für die Heizung und den Kühler habe ich mich bewusst für einfache Relais entschieden um PWM (Pulsweitenmodulation) Störer zu vermeiden.
Da nun die Wunschliste klar war, ging es als erstes an die Auswertung der Spannungspegel. Um nicht am Limit der Analogen Eingänge des Atmel zu arbeiten, plante ich entsprechende Spannungsteiler ein. Dies geht zwar aufgrund der Toleranzen etwas zu Lasten der Genauigkeit, war für mich jedoch akzeptabel erscheint.
Freundlicherweise stellte mir Hristiyan (LZ5HP) eine Referenztabelle zur Umstellung der Spannungspegel in Leistungspegel zur Verfügung. Mit diesen Werten musste ich nun eine Möglichkeit finden, alle Zwischenspannungen in einen Leistungswert umzurechnen. Die Leistungskurven verliefen dazu nicht linear. Also erstmal Gedaken machen, um eine nichtlineare Funktion zu ermitteln und diese Funktion den Arduino beibringen.
Die Anzeige auf dem Display soll dazu noch anwenderfreundlich erfolgen und auch bei SSB Modulation nicht so zappeln wie man es bei einen Analogen SWR/Power Meter beobachten kann, sondern eher smooth. Etwas Spielerei musste aber auch sein, ein kleines Balkendiagram gibt Auskunft über die Ausreizung der Ausgangsleistung. Die ersten Versuche waren sehr vielversprechend und verlangten nur etwas feinschliff in der Anpassung unter anderen in den Timings zur Messung der Spannungen. Die Anzeige funktioniert nun auch bei normaler Modulation recht zuverlässig. Die Grundprogrammierung stand, nun baute ich noch ein paar Spielsachen dazu. Schicker Startbildschirm, ein Paar Optimierungen bei der Anzeige unter anderen Status oder Warnsymbole wurden ergänzt damit der Anwender einen weiteren Hinweis hat, sollte sich ein Wert außerhalb der geforderten Parameter bewegen. Das Display selbst hängt an einen I2C Port, dies sollte zum Einbau in der Transverterbox oder bei externer Montage bei kurzen Kabelwegen kein Problem darstellen. Bei längeren Kabel kann man ein I2C Extender verwenden wie z.B. P82B715.
Parallel dazu bestellt ich bei JLCPCB das erste Mal Platinen, die nach meinem Entwurf produziert, gebohrt und beschriftet wurden. Die Bestellung selbst war sehr einfach, die PC-Anwendungen bieten dafür eine Schnittstelle oder man exportiert die benötigten Daten und lädt diese im Bestellprozess hoch. Optionale Sonderwünsche oder alternative Materialen, Verarbeitungsvarianten oder auch Farben veränderte ich nicht und behielt die Voreinstellungen. Nach etwas mehr als einer Woche brachte mir Hermes ein kleines Päckchen. Voller Vorfreude packte ich 5 Stück der von mir ersonnen Platinen aus und war sehr überrascht, in welcher professionellen Qualität man sich auch als Privatperson so etwas auch in kleinstmengen fertigen lassen kann.
Ich hatte absolut keine Probleme beim Bestücken und Löten. Bauteil für Bauteil füllte sich mein Werkstück. Nachdem meine Arbeit vollendet war, überprüfte ich nochmal alles und legte endlich zum ersten Mal auch Spannung an. Kein übler Geruch, kein Rauch, das sah alles gut aus. Den Atmel und das LCD hatte ich bis hierhin noch nicht bestückt, dies holte ich nach ein paar Messungen nach.
Nachdem nun wirklich alles bestückt und verdrahtet war, schaltete ich wieder an. Das Display leuchtete auf und das Mäusekino begann mit der Vorstellung und zauberte mir ein grinsen ins Gesicht. Alles funktionierte augenscheinlich so wie es soll.
Ein befreundeter OM, der von meinem Projekt erfahren hatte, wollte ebenso einen Nachbau wagen und stellte sich gleichzeitig als Tester zur Verfügung um mir Fehler aufzuzeigen, an welche ich selbst nicht gedacht habe. Ein paar Kleinigkeiten sind mir bereits im Layout aufgefallen. Diese werden in der nächsten Version entsprechend verbessert.
Features:
- Auswertung PA Spannungen FWD, REF, DRV sowie Spannungsversorgung
- Ausgabe SWR und Leistungspegel in Watt
- Jumper zum einstellen der PA Version
- Temperatur und Feuchtigkeitsmessung via DHT22 ( Heizung bei <3°C oder >90%)
- Temparaturmessung z.B. für PA Temperatur via DS18B20 (Kühlung ab 50°C)
- Ansteuerung 12V Lüfter über Relais (Spannungsversorgung über PA Monitor)
- Ansteuerung 12V Heizung über Relais (Spannungsversorgung über PA Monitor)
- Frostschutz und Feuchtigkeitswarnung (Symbol H/F/C )
- Anzeige aller relevanten Werte auf 4x20 Zeichen LCD Display an einen I²C Port
- Warnung bei PA Unter/Überspannung (Symbol ? / ! )
Bekannte Fehler / Anpassungen Hardware Version 2.0:
- Optimierung Beschriftung
- Optionaler I2C Buffer ( P82B715 SOIC ) "experimentell"
- Anpassung Display
- Überarbeitung Layout
Bekannte Fehler / Anpassungen Hardware Version 1.0:
- Pinbeschriftung für DHT22/AM2302 unleserlich
- Beschriftung einzeler Bauteile Heizung/Cooler
- Optimierung Beschriftung
Bekannte Fehler Hardware Version 0.2:
- Jumperbeschriftung nicht eindeutig (Version wird beim starten angezeigt)
- Relais beschriftung OPEN/CLOSE sind vertauscht
- Beschriftungsfehler 220R entspricht 820R