JLogger Manual

A short introduction
  1. Einführung

    Ein Logger dient dazu, Flugparameter während des Fluges zu messen und diese für eine Auswertung nach dem Fluge oder für eine Echtzeitauswertung zur Verfügung zu stellen. Auf diese Weise erhält man präzise Informationen über Flughöhe, Steigleistungen, Stromverbrauch des Motors, Fluggeschwindigkeit, Aussetzer in den Fernsteuersignalen, GPS-Koordinaten des Flugmodells und vieles andere mehr.

    D. Meissner, ein bekannter Modellflugzeugbauer und Elektronik-Entwickler, hat einen Datenlogger entworfen und der Öffentlichkeit zugänglich gemacht, der bei kleinsten Abmessungen und minimalem Gewicht als Flugdatenschreiber in einem Modellflugzeug eingebaut werden kann. Das vorliegende Programm dient dazu, eben diesen Logger zu konfigurieren, seine Daten auszulesen, zu speichern, eine Auswertung und eine geeignete Darstellung vorzunehmen, also eine Flugdatenanalyse zu ermöglichen.

  2. Voraussetzung

    Um das Programm betreiben zu können, müssen Sie für einige Mindestvoraussetzungen sorgen:
    • Sie sollten über einen Meissner-Datenlogger verfügen oder sich wenigstens mit diesem geloggte Datensätze beschaffen.
    • Sie sollten einen mindestens mittelmäßig ausgerüsteten PC vor sich haben, auf dem Sie Administrationsrechte besitzen, zumindest sich wenigsten zeitweise welche verschaffen können. Das Programm wurde auf einem PC mit WindowsXP entwickelt, sollte unter anderen Betriebssystemen aber auch funktionieren. Da es sich um ein Java-Programm handelt, läuft es auch unter Linux (ich habe es nie ausprobiert!).
    • Sie müssen auf Ihrem PC eine Java-Laufzeitumgebung installiert haben. Sollte dies nicht der Fall sein, holen Sie es nach. Wie man so etwas macht, erfahren Sie im Punkt Installation.
    • Ansonsten entpacken Sie das heruntergeladene File JLogger.zip in ein Verzeichnis Ihrer Wahl, starten JLoggerW.exe (W kommt von Windows-Version) und die Welt sollte dann für Sie schön werden. Alles Weitere erfahren Sie, wenn Sie weiter lesen.

    JLogger-Oberfläche

  3. Datenmanagement

    Loggerdaten aus Datei laden Loggerdaten in Datei speichern

    Zusätzliche Loggerinformationen können während des Speicherdialogs optional eingegeben werden.
    Gegenwärtig betrifft dies

    Flightinfo = {flightdate, flightname, temperature, pressure, modelname, accuCapacity, accuVoltage, shunt, droppingResistor}

    Im Feld Kommentare kann ein beliebiger Text stehen. Es ist darauf zu achten, dass vor dem Verlassen des Editors in irgendein Feld geklickt werden muss, ansonsten kann der Editor nicht das Ende der Eingabe erkennen!

    Logger-Funktionalität

    Datenein- und Ausgabe-Möglichkeiten in der Übersicht:

    Messdaten:
    Input aus
    • Logger
    • Datei:
      • *.logd
      • *.csv
    Speichern
    im Format
    • *.logd
    • *.csv
    • *.xml
    • *.dat
    Logger-profile
    • *.prof
    • *.properties



    Loggerdaten-Datei (.logd)
    Hier handelt es sich um die ausgelesenen Loggerdaten, die als Byte-Datei und dadurch in einer äußerst kompakten Form vorliegen.
    Z.B. lauten die ersten 32 Bytes:
    Loggerdaten-Datei .logd



    Datenaustauschformat (.csv)
    Dieses Dateiformat kann z.B. in alle gängigen Tabellenkalkulationsprogramme eingelesen werden.

    1.Zeile (Metadaten):
    i=0 1 2 3 4 5 6 7 8
    Nr. Config1Config2 Abtastrate Anzahl geloggter BytesTelemetriekonfig1 Telemetriekonfig2 Logger-Nr. Flugnr.
    2. Zeile (grobe GPS-Position):
    i=0 1 2 3
    Nr. N-S O-W Alt
    ab 3. Zeile (Datenzeilen):
    i=0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
    Nr. ADC16 AD0 AD1 AD2 AD3 AD4 frequ rpm RC1 RC2 RC3 TempintTemptextlatitulongitu hGPS

    Z.B. lauten die ersten drei Zeilen eines Daten-Files:
    171;209;24;883;175;88;139;1282;
    48;11;0;
    9661;565;0;113;0;128;0;65535;153;0;0;108;0;4839179;1129382;3703;



    Abspeicherung berechneter Daten (.dat)
    Mit diesem Datenformat können die berechneten Daten der Karte calculated data, die dem in der Graphik dargestellten Bereich entsprechen, in eine Datei geschrieben und später z.B. mit MATLAB weiter verarbeitet werden.

    Beispiel:
    Nr. t[sec] (Daten der Karte calculated Data)
    1 1.00  1.00  0.04  7.50  5.11  24.90  -11.1  -9.2



    Logger spezifische Dateien:

    Bei jedem Programmstart werden drei Logger spezifische Dateien gelesen:

    loggerprofile.prof enthält die Eigenschaften des verwendeten Loggers
    airfield.properties enthält die Koordinaten des verwendeten Flugfeldes
    logger.properties enhält Nutzungs- und Anschlusseigenschaften des Loggers

    Die ersten beiden Dateien können über File-Dialoge ersetzt werden.


    Daten zur Einstellung des Loggerprofils (.prof)
    Property Editor

    Der angeschlossene Logger ist in seinen Kanälen völlig frei konfigurierbar. Mit Hilfe des property editors (zu erreichen über Menüpunkt View) lässt sich eine willkürliche Zuordnung der vorhandenen Loggerkanäle treffen.

    Ein Loggerkanal ist durch folgende Zuordnung definiert:

    Channel Name, Sensor Name, Initial Value, Offset, Resolution, Filter Coefficient, Parameter Color, Parameter Unit

    und kann über nebenstehendes Menü eingestellt bzw. bearbeitet werden. Die Größen Channel Name, Parameter Color und Parameter Unit beziehen sich auf die grafische Darstellung der jeweiligen unter Channel stehenden Messgröße.

    Dieses auf diese Weise erzeugte Loggerprofil können Sie unter Logger Profile speichern bzw. erneut laden. Das erzeugte File besitzt die Endung ".prof" und führt die oben genannten Größen als ASCII-Text. Sie können selbstverständlich mit Hilfe Ihres Lieblingseditors dieses File direkt editieren und somit an die Erfordernisse Ihres eigenen Loggers anpassen. Bei der Editierung vergreifen Sie sich bitte nicht an den ersten 5 Zeilen. Sie müssen stehen bleiben!!

    Nachfolgend sehen Sie den Inhalt des Standard-Files. Pausieren Sie mit der Maus über den Feldern, um eine Inhaltsangabe angezeigt zu bekommen.




    Structure of the Configuration File (Please don't touch these header rows):
    numberOf32kBlocks, Typ of Your Pressure Sensor (MPX4100 or MS5534A)
    Channel||Channel Name, Sensor Name, Initial Value, Offset, Resolution, Filter Coefficient, Parameter Color, Parameter Unit
    1 MPX4100
    Weissig 13.89073000 51.049530 296.000000 13.884000 13.897000 51.047000 51.054000 -8.0 -9.0
     
    ADC16 Height 0.00 0.00 0.071 1.00 -16776961 h[m]
    ADC0 Height 0.00 1.00 0.094 1.00 -65536 h[m]
    ADC1 Vario 67.72 90.00 -0.162 0.70 -16777216 var[m/s]
    ADC2 Speed 0.00 0.00 0.115 1.00 -8372224 m/s
    ADC3 Current 0.00 -32.27 0.058 1.00 -16744448 I[A]
    ADC4 Ub 0.02 0.00 0.013 1.00 -16776961 Ub[V]
    Frequency Anemometer 0.00 0.00 1.000 1.00 -8388353 speed[m/s]
    rpm rpm 0.00 0.00 2.000 1.00 -14336 rpm[r/min]
    RC1 bx -20.00 0.00 1.000 1.00 -65281 bx/g
    RC2 by -10.00 0.00 0.100 1.00 -65408 by/g
    RC3 RC3 0.00 0.00 1.000 1.00 -20561 RC3
    Temp_int tint 0.00 0.00 0.500 1.00 -256 tin[°C]
    Temp_ext text 0.00 0.00 0.500 1.00 -32768 tex[°C]
    GPS GPS 298.00 0.00 0.000 0.00 -16711936 hGPS[m]

    Mit Temperature können Sie im Property-Editor die Temperatur zur Messzeit einstellen, mit Air Pressure den herrschenden lokalen Luftdruck in hPA (oder wer es nicht lassen kann: in mb).

    Flugfeldinformationen

    Diese Informationen werden standardmäßig in der Datei data\airfield\airfield.properties in dem Format: Schlüsselwort = Wert abgelegt.

    Die Menge der möglichen Schlüsselwörter lautet: {AirfieldName, AirfieldLongitude, AirfieldLatitude, AirfieldAltitude, LonW, LonE, LatS, LatN, CorrectionDisplacementXlat, CorrectionDisplacementYlon}.

    airfield.properties)
    Flugfeldinformationen

    Nutzungs- und Anschlusseigenschaften des Loggers

    Typische Betriebsweisen des Loggers können in der Datei data\logger\logger.properties abgelegt werden. Diese Einträge sind optional und haben keine Reihenfolge, d.h. diese Informationen werden nur ausgewertet, sofern sie vorhanden sind. JLogger weiss dann, dass der Logger z.B. erfolgreich an COM1 angeschlossen war oder das zur Spannungsmessung ein Vorwiderstand von 13.17KOhm verwendet wird. Es sind Informationen, die die typische Betriebsweise des Loggers betreffen. Diese Informationen können Sie mit Ihrem Lieblingeditor bearbeiten bzw. in JLogger direkt abspeichern - wie Sie wollen.

    Diese Informationen werden im Format: Schlüsselwort = Wert abgelegt.

    Die Menge der möglichen Schlüsselwörter lautet: {Logger, JetiBox, DroppingResistor, Shunt, AccuCapacity, AccuVoltage}

    Loggerspezifische Datei logger.properties)
    Loggerspezifische Datei
  4. Grafische Darstellung von Daten

    a) physikalische Parameter

    • Ein- und Ausblenden von Kurven
    • Mehrere Skalen
    • Mit einem Slider können Kurven gegeneinander verschoben werden.
    • Mit gedrückter rechter Maustaste können interessante Datenbereiche durch Ziehen nach rechts vergrößert und (wenn gewünscht) über save abgespeichert werden.
    • Mit gedrückter linker Maustaste können durch Ziehen nach links alle Kurven auf einen gemeinsamen sichtbaren Bereich skaliert werden.
    • Rechte Maustaste: Drop-down-Menü zur Grafik:
      • Eigenschaften
      • Speichern
      • Drucken
      • Vergrößern, verkleinern
    • Tooltip-Funktion: Der Cursor auf einen Kurvenpunkt liefert Informationen über den Datenpunkt.
    • Trendlinien:
      Flugdiagrammanalyse Flugdiagrammanalyse
    • Durch Aktivieren von Trend Lines können beliebige Geraden in das Diagramm gelegt werden und die zugehörigen Parameter als Änderung dy in dem Zeitintervall dt[in sec] abgelesen werden, die zur Rate rate führen. Ein Klick auf das Diagramm löscht alle Trendlinien.

    b) GPS-Daten: 2D-Bahn der Flugbahn

    GPS-Position auf 2D-Flugbahn (Weissig)

    Wenn Sie die Maus über die Flugkurve bewegen, erscheinen Tooltips der Art Flugkurve-Tooltip eingeblendet mit der Bedeutung:
    Zeit in Sekunden ab Aufzeichnungsbeginn: (E-W Entfernung (x-Achse), N-S Entfernung (y-Achse), Höhe über Startpunkt) jeweils in Metern.

    Die Grundlagen der GPS-Koordinatenberechnung findet man hier.

    c) Simulation des Fluges

    Flugdatensimulation
  5. Serielles Interface RS232

    Auswahlmenü 'Serielles Interface'
  6. Loggerhandling

    Konfiguration des Loggers

    Die rote Umrandungslinie des Schaltbereichs Logger Action zeigt an, dass die serielle Schnittstelle geschlossen ist. Eine grüne Linie weist auf eine Schnittstelle im geöffneten Zustand hin.

    Konfiguration des Loggers (Telemetrie)

    Auslesen des Loggers:

    Einlesen von Daten

    Sie können jederzeit stoppen und werden informiert, was zu tun ist bzw. wieviele Bytes gelesen wurden:

    Einlesen abgebrochen

    Löschen des Loggers:

    Loggerdaten löschen

    Alle Funktionen des Loggers in der Zusammenfassung:

    Zusammenfassung der Logger-Funtionen
  7. Telemetrie

    Sie können Ihren Logger im Telemetrie-Modus betreiben, auch wenn Sie nicht über ein Funkmodul verfügen. In dieser Betriebsweise können Sie Ihre Sensoren (mit Ausnahme von GPS) am Boden ohne Funkmodul überprüfen bzw. verbessern.

    Dazu müssen Sie im Konfigurationsmenü des Loggers seine Konfiguration vornehmen. Es dürfen nur die Sensoren aktiviert werden, die physisch auch wirklich mit dem Logger verbunden sind. Vergessen Sie nicht, das Telemetrie-Häkchen zu setzen sowie das Häkchen bei JetiProtocol zu entfernen (der Logger soll ja im RS232-Protokoll arbeiten). Die neue Konfiguration speichern Sie über Write Config ab. Zur Kontrolle lesen Sie den neuen Zustand mit Read Config ein und trennen den Logger vom seriellen Port.

    Telemetrie

    Den Logger setzen Sie durch nachfolgende Vorgehensweise in Gang:

    1. Klick im Programm JLogger auf Telemetry On
    2. Logger einschalten und warten bis die rote LED blinkt
    3. Logger am seriellen Port anschließen

    Dies mag seltsam klingen, hat aber damit zu tun, dass bei angeschlossener serieller Schnittstelle der Logger nicht anläuft.

    Logger-Anschluss

    Telemetrie im Jeti-Protokoll

    Im Logger-Assembler-Programm wurde das Jeti-Protokoll implementiert. Weitergehende Informationen finden Sie hier. Das verwendete Bluetooth-Modul, das das Jeti-Protokoll in RS232 umsetzt und über Bluetooth sendet, stammt von Henning Ritter.

    Zu beachten ist, das der Logger angeschaltet ist und loggt (blinken der Logger-LED), bevor das Programm JLogger in den Telemetrie-Modus geschaltet wird!!!

    Jeti-Protokoll

    Sie können als weiteres Gerät eine JetiBox anschließen und auslesen.

    JetiBox
  8. Implementation physikalischer Parameter

    Messwertverarbeitung (Prinzip der Messung):

    Das Messprinzip

    Der Sensor liefert zum Zeitpunkt t einen Sensorwert, der der zugeordneten physikalischen Messgröße Z entspricht. Über eine Digitalisierung wird das Ergebnis durch einen Mikroprozessor (MP) in der Samplerate 1/Dt abgefragt und liefert im Zeitintervall Dt den Zählerwert d (auch Rohdatenwert genannt). Verwendet man zur Abspeicherung n Bits, lassen sich 2n Werte im Wertebereich [0, 2n-1] erzeugen. Besitzt der Sensor eine lineare Kennlinie, erhält man die zugehörige Messgröße z(d) über den Strahlensatz:

    Angewandter Strahlensatz Angewandter Strahlensatz (Formel)

    Beispiel:
    Beim Impeller ist die Messgröße Z die Winkelgeschwindigkeit, die proportional zum Zählerstand d sein sollte.

    zmin Anfangswert der Messgröße Z
    d0 Offset, das heißt wenn der Anfangssensorwert zmin einem Wert von d0 entspricht.
    Beispiel: Der am Startplatz herrschende Druck p0 würde für einen Höhensensor-Anfangswert von d0 sorgen.

    Eine direkte Weitergabe des Zählerwertes d als Messwert z(d) erreicht man durch den Spezialfall
    scale=1, also z(d) = d ("Identität").

    Abgeleitete physikalischen Größe p: p = p[z(d)]

    Beispiel: Staurohr mit Drucksensor zur Geschwindigkeitsbestimmung
    Formel Geschwindigkeit
    Der Offset d0 entspricht der Sensorausgabe bei Null-Geschwindigkeit. Drehzahl: Drehzahlmesser zur Drehzahlbestimmung der Luftschraube.
    Formel Umdrehungen/min

    Fortlaufende Mittelung:

    Liegt auf den Messwerten starkes Rauschen, empfiehlt sich ein fortlaufendes Mittelungsverfahren. Der aktuelle Messwert wird im einfachsten Fall unter Berücksichtigung des vorhergehenden ermittelt.

    Mittelungsprinzip Messwert z(d) --> m(d) nach folgendem Algorithmus
    Formel Messwert

    α: Gewichtsfaktor
    α = 1: keine Glättung, d.h. mi = z(di)
    α = 1/2: arithmetisches Mittel, d.h. mi = [mi-1 + z(di)]/2
    α = √5-1=0.618: Goldener Schnitt (stetige Teilung)
  9. JLogger-Programmierung

    JLogger gibt Ihnen die Möglichkeit, bestehende Sensortypen in eigene umzufunktionieren, indem Sie die charakteristischen Parameter verändern oder, wenn Ihnen der vordefinierte Sensor überhaupt nicht gefällt, durch einen Sensor mit eigener Funktionsweise (Funktionalität) zu ersetzen. Dazu müssen Sie sich aber an ein paar Spielregeln halten. Da JLogger in Java geschrieben ist, können hier nur eigene Programmierkünste in Java in Frage kommen.

    Das Programm JLogger ist so aufgebaut, dass es zuerst in einem Plugin-Verzeichnis nachschaut, ob es etwas Besseres in Form eines jar-Files zu finden gibt.&xnbsp;Wenn nicht, passiert nichts, ansonsten werden die in diesem File liegenden Programmteile, die ja von Ihnen stammen, im JLogger eingebaut und benutzt. Sie müssen nur dafür sorgen, dass Ihre Änderungen bzw. Neuformulierung von Sensoren in einem jar-File stehen und dieses in das Verzeichnis plugin kopiert worden ist.

    Ausführliche Erläuterungen finden Sie hier.

  10. Hilfe

    Im Verzeichnis help bzw. myhelp können Sie eigene Dateien im Format htm, html oder txt anzeigen lassen. Bilder müssen Sie über HTML einbinden:

            <html>
            <body>
            <img src="meiss2_2_6_scematic.gif" alt="Help" title="Help" />
            </body>
            </html>
  11. Installation

    Check in the DOS console using the statement java -version. The answer should be:

    java version "1.7.0_03"
    Java(TM) SE Runtime Environment (build 1.7.0_03-b05)
    Java HotSpot(TM) Client VM (build 22.1-b02, mixed mode, sharing)

    Otherwise proceed as follows:
    Downloaded the file jre-7u3-windows-i586.exe or higher (Download page (choose Java SE Runtime Environment 7 Downloads)). This file contains everything needed to install the J2SE Runtime Environment, including the installer and character conversion classes and support for locales other than the US English locale. In order to install the J2SE Runtime Environment on Microsoft Windows 2000 and XP you must have administrative permissions.

    ! Attention: don't use Java 1.6.0 Update 10,11,12,13
    JLogger 0.9.3 works fine with current java version

    Installing the Java Communications API (javacomm20-win32.zip from Sun) (if the link does not work you will find the three files in the subdirectory lib) in a Windows Environment:

    There are some tricks involved in getting the Java Communications API to correctly interact with the Windows system. Among the items that you download from Sun are three very important files. For the JVM to recognize the serial ports, proper placement of these files is important. I've read lot's of messages on the boards, tried various ways of placing these files in a Windows system, and have found the following installation methods to be effective:

    comm.jar
    javax.comm.properties
    %JAVA_HOME%/jre/lib
    win32com.dll %JAVA_HOME%/jre/bin
    win32com.dll %WINDIR%/system32
  12. Quellen

    D. Meissner Eigenbau-Datenlogger V2.5

    Kontakt
Typo3 Appliance - Powered by TurnKey Linux