![]() |
AVR-Microcontroller |
|
|
Das APRS Telemetrie Interface Die analogen Voltmeter-KanäleDas Interface hat 8 Eingänge (V1...V8) zur analogen Spannungsmessung mit 8 Bit Auflösung, gemäß der APRS-Telemetrie Protokolldefinition. Die Eingänge können nur positive Spannungen mit gemeinsamem Nullpunkt messen. Die Analogeingänge sind also keine Präzisionsmessgeräte, für den Messalltag im Amateurfunk aber völlig ausreichend. Bei einem Bereich mit maximal 5V ist die Auflösung etwa 20mV, bei 25,5V sind es 100mV.
Die Messbereiche der 8 Kanäle lassen sich getrennt einstellen. Die Masseleitungen an den Analogeingängen dürfen keine Verbindung zu den Masseleitungen des Digitalteils haben. Es können sonst Störströme fliessen, die das Messergebnis verfälschen. Beide Massesysteme sind am Masseanschluss des Controllers miteinander verbunden. Die Eichung der KanäleDer erste Schritt ist, den kleinsten Messbereich festzulegen, den einer der Kanäle messen soll. Er wird durch die Referenzspannung am Microcontroller bestimmt. Diese Spannung ist für alle Kanäle gleich. Liegt der kleinste Bereich über 5V, das Potentiometer R26 an der Kopfseite des Microcontrollers im Uhrzeigersinn an den Anschlag drehen. Die Referenzspannung ist dann etwa 5V. Soll der kleinste Messbereich niedriger liegen, die Referenzspannung am Pin 32 des Controllers messen und mit dem Potentiometer R26 etwas unterhalb der gesuchten Maximalspannung einstellen. Der genaue Wert ist unkritisch, weil die eigentliche Eichung mit den anderen Potentiometern durchgeführt wird. Es ist sehr zweckmäßig, die Maximalwerte der einzelnen Kanäle so zu wählen, dass sie sich leicht in die Zahl 255 umrechnen lassen, denn die möglichen Werte für die gemessenen Spannungen sind 0...255 bei einem 8 Bit System. Günstige Maximalwerte sind daher 2,55V, 5,11V, 12,7V oder 25,5V. Jeder andere Wert ist aber auch möglich. Zunächst alle Potentiometer der Kanäle gegen den Uhrzeigersinn auf Anschlag drehen, Nullstellung. An die serielle Schnittstelle des Interfaces wird nun ein PC mit einem einfachen Terminalprogramm angeschlossen (seyon oder minicom unter Linux bzw. Hyperterminal unter Windows). Die Eingabe von Return bringt zunächst den Hilfetext des Interfaces auf den Schirm. Danach den Befehl "RV" (Read Voltmeter) eingeben, gefolgt von Return. Das Interface gibt jetzt im Sekundentakt die aktuellen Werte der Kanäle V1...V8 nebeneinander in einer Zeile aus, je eine Zahl im Bereich 0 bis 255. Dieser Testbetrieb stört die Verbindung zwischen dem Interface und DIGI_NED nicht. Eingabe von "q" beendet die Ausgabe. Jetzt lassen sich die einzelnen Kanäle eichen. Dazu wird eine Vergleichsspannung an den Eingang des jeweiligen Kanals angelegt, mit einem normalen Digitalvoltmeter messen. Die Spannung sollte am oberen Ende des Bereiches liegen, aber nicht der Maximalwert sein. Diesen Spannungswert auf den Bereich 0 bis 255 umrechnen. Einfaches Beispiel: Messbereich 25,5V, es bietet sich hier eine Vergleichsspannung von 20V an. Umgerechnet ergibt sich ein bequemer Zahlenwert von 200 bei der Ausgabe. Das Potentiometer des Kanals wird nun langsam im Uhrzeigersinn gedreht, bis die Ausgabe auf dem Bildschirm für diesen Kanal den berechneten Zahlenwert ergibt. Dieser Punkt ist auch bei den verwendeten einfachen Potentiometern mit etwas Fingerspitzengefühl sicher einstellbar. Diese Eichung wird für jeden verwendeten Analogkanal wiederholt. Unbenutze Kanäle bleiben in der Nullstellung. Die Eichung lässt sich zwar auch direkt mit Aufrufen des Befehls "tlm ax" (x:Kanalnummer) in DIGI_NED durchführen, die Sache ist dann aber eine eher mühselige Angelegenheit. Zuvor muss eventuell die Kanalmatrtix für den Kanal eingerichtet werden. Die AuswertegleichungDer Zahlenbereich 0...255 gibt nur in den seltensten Fällen den richtigen Messwert wieder. Deshalb ist in der APRS-Protokolldefinition die Möglichkeit vorgesehen, über eine Auswertungsgleichung diesen Zahlenbereich wieder in den ursprünglichen Wertebereich zurück zu verwandeln. Diese Gleichung ist eine quadratische Gleichung der Form Wert=a*x²+b*x+c. x ist der Messwert im Bereich 0...255. Die Faktoren "a","b" und der Summand "c" sorgen für die korrekte Umrechnung. Im Fall unserer Spannungsmessung ist der Faktor "a" immer 0, weil die Spannungsmessung im Controller linear erfolgt. Der Summand "c" ist ebenfalls 0, weil die Spannungsmessung bei 0 beginnt. Bleibt der Faktor "b". Mit ihm wird der ursprüngliche Messbereich wieder hergestellt. Im Beispiel mit dem Messbereich 25,5V muss der Messwert nur mit 0.1 multipliziert werden, um den Bereich 0...255 in den Bereich 0..25,5V umzurechnen. In die Datei "digi_tlm.ini" bei DK5JG-2 würde für den Fall, dass nur der Kanal V1 mit 25,5V verwendet wird eingetragen: :DK5JG-2 :PARM.Batt :DK5JG-2 :UNIT.Volt :DK5JG-2 :EQNS.0,0.1,0 :DK5JG-2 :BITS.11111111,DIGI_NED Telemetry Das bedeutet:
Konfiguration in DIGI_NEDEintrag in die Datei "digi_ned.ini", wenn alle Analgokanäle in Betrieb sind: telemetry: 30 1 lpt1_8/0,lpt1_8/1,lpt1_8/2,lpt1_8/3,lpt1_8/4 DIGI_DEST Also: Sende die Telemetriedaten alle 30 Minuten über den Port 1. Quelle für die Analogwerte ist LPT1 im 8 Bit Mode. APRS-Telemtrie Analogkanal A1 wird von der DIGI_NED-Adresse 0 gelesen, A2 von 1, A3 von 2, A4 von 3 und A5 von 4. Die Zuordnung der DIGI_NED-Kanäle zu den einzelnen Analogeingängen ist beliebig. Sie wird über die Kanalmatrix hergestellt. Abfrage auf dem DigipeaterMit der Anfrage "tlm a1" an den Digipeater läßt sich
der Wert des ersten Analogkanals abfragen. Batt 12 Volt
|