JETI-Telemetriesensor - Empfangsqualität / RXQ
Die von JETI zur Beurteilung der Qualität der Datenübertragung gelieferten Informationen (Antennen-Signale und Q-Signal) sind leider in Bezug auf die Steuerbarkeit eines Flugmodells nicht immer aussagekräftig. Siehe Erläuterungen der Nützlichkeit eines RX-Q-Signals.
In diesem Artikel wird erläutert, wie mit einem selbst gebauten Empfangsqualitätssensors (RXQ), diese Lücke geschlossen werden kann.
Idee
Der Jeti Sender sendet mit einer festen Frequenz (einstellbar z.B. 50Hz, 100Hz), Datenpakete zum Empfänger. Wird auf dem Empfänger die Servo-Output-Period auf "AUTO" oder "by transmitter" gestellt, werden die PWM-Servo-Signal-Impulse in der Frequenz an die Servos gesendet, in der die Datenpakete beim Empfänger eintreffen. Werden Datenpakete aufgrund von Übertragungsproblemen verworfen, so wird dem Servo der Impuls nicht gesendet. Wird jetzt das Servosignal am Empfängerausgang gemessen, kann aufgrund der Abstände zwischen den PWM-Signal-Impulsen auf das Fehlen von Datenpaketen geschlossen werden. Man muss auf jeden Fall die Fail-Safe-Funktion für den gemessenen Servo-Ausgang auf "AUS" setzten, damit bei Empfangsverlust, nicht das vom Empfänger erzeugte HOLD- oder Fail-Safe-Positions-Signal gemessen wird. Bei einer Sende-Frequenz von 100Hz ist zu erwarten, dass das Servo-PWM-Impuls-Signal alle 10ms beim Servo ankommt.Zum Messen des Abstands der Servo-PWM-Impuls-Signale, wird ein normaler programmierbarer Mikrokontroller "Arduino pro mini", benutzt. In der Software läßt sich einfach die Zeit zwischen den Impulsen messen und auswerten. Hierzu wird der mit dem Empfänger verbundene Port mittels einer Interrupt-Routine, die auf eine ansteigene Flanke des Signalkabels reagiert, programmiert. Somit kann man für jeden Servo-PWM-Impuls die Zeit messen und damit die zeitliche Differenz zum vorigen Signal. Natürlich lassen sich auch Maximal-Werte speichern und auch die Anzahl von Signal-Unterbrechungen die größer sind als ein Schwellwert, die dann als Empfangsstörungen zu interpretieren sind.
Somit erhält an folgende Werte:
- SigGap
- aktuelle Zeitspanne zwischen den PWM Signalen in ms (10ms bei 100Hz)
- SigGapMax
- maximale gemessene Zeitspanne zwischen den PWM Signalen (lückenlos überwacht !!!)
- SigLossCnt
- werden Abstände > 100ms dedektiert, wird der SigLossCnt um 1 erhöht (sollte immer 0 sein !)
- #Sig/Sec
- Anzahl von PWM Signalen pro Sekunde
Der Mikroprozessor "Arduino pro mini" ist zusätzlich in der Lage, über einen anderen Port dem JETI Empfänger gegenüber als Sensor aufzutreten. Somit können obige Werte als Telemetrie-Werte an den Sender übertragen werden.
Der Wert "Signal Duration" wird per Interrupt-Routine bei jedem Servo-PWM-Impuls gemessen, es wird nicht gemittelt oder gedämpft. Per Telemetrie kann jedoch aufgrund von Übertragungsrestriktionen nur etwa 10 Werte pro Sekunden an den Sender gesendet werden. Fehlende Einzelpakete können hier nicht garantiert am Sender gesehen werden. Der Wert "Signal Duration maximum" allerdings, misst den Max-Wert, dieser wird gespeichert und auch bei temporären Rückkanal-Problemen, danach wieder übertragen. Hier gehen alle Messungen ein und entspricht dem wahren jemals gesendeten Maximum. Dies ist ein sehr gutes Maß, wie schlecht die Übertragung jemals war.
Die Erfahrung der letzten 2 Jahre, mit ca. 15 Modellen, Abstand zum Modell bis 1500m, bei gut verlegten Antennen, zeigt, dass selbst bei Sender-Signalverlustmeldungen, die SigDuraMax immer unter 100ms bleibt, was zeigt, dass die Jeti-Signalverlustmeldung eben meist am Verlust des Rückkanals liegt!
- dicker roter und orange Kurve sind SigDura und SigDuraMax, im Bereich von JETI-Q-Wert = 7%
Im obigen Bild, kann man die Aufzeichnung eines realen Fluges eines 6m Seglers sehen. Höhe ca. 550m (dunkelgrün), Entfernung 500m (hellgrün), Q-Wert Einbruch bis 7% (blau), SigDura im gesamten Zoombereich zwischen 10-40ms, SigDuraMax im gesamten Zoombereich ohne Anstieg, was heißt es gibt keine Messung in diesem Bereich die größer als der angezeigte Wert von knapp uner 60ms ist.
Das bedeutet, dass bis zu diesem Zeitpunkt der maximale Abstand von Datenpaketen zwischen Sender und Empfänger ca. 60ms war, was etwa 20 Datenpaketen pro Sekunde entspricht.
Der Q-Wert von 7% und die Warnung (bei Warnschwelle <10%) geben in diesem Beispiel also keinerlei Hinweis auf eine eingeschränkte Steuerbarkeit des Modells.
Software zum RXQ Sensor
Der RXQ-Sensor wurde als Nebenprodukt bei der Weiterentwicklung und beim Testen eines generischen JETI Sensors entwickelt.
Im Augenblick sind die Erweiterungen für den RXQ-Sensor hier verfügbar: https://github.com/Pulsar07/Jeti_VarioGPS-Sensor
Zum Aktivieren dieses Features Code sind folgende #defines in der Datei settings.h gedacht:
- #define SUPPORT_RXQ
- schaltet Feature im Code ein
- #define RXQ_SIGNAL_PIN
- (default: 2) definiert den zu nutzenden Arduino Eingangs-Pin
- #define RXQ_SIGNAL_PIN_PULLUP
- (default: "not defined") dies muss definiert sein, wenn der RX ohne Vorwiderstand angeschlossen wird
Hardware
Fragen, Anmerkungen und Bug-Reports bitte nur als GitHub-Issue (https://github.com/Pulsar07/Jeti_VarioGPS-Sensor/issues)
Erläuterung der Nützlichkeit eines RX-Q-Signals
Bei der aktuellen Generation (2019) der JETI Sender/Empfänger werden dem Benutzer 3 Werte zur Beurteilung der Empfangsqualität vom Hersteller unterstützt:- die einheitenlose Signalstärke der RX-Empfängerantenne A1 in einem Bereich von 0-9
- die einheitenlose Signalstärke der RX-Empfängerantenne A2 in einem Bereich von 0-9
- der Q-Signal in Prozent in einem Bereich von 0%-100%
Hierbei sind die beiden Signalstärken A1 und A2 der beiden diversitären Antennen des Empfängers zur Beurteilung der Qualität kaum aussagekräftig.
Das Q-Signal/Q-Wert wird in den Handbüchern des Herstellers praktisch nicht erklärt und stellt einen irgendwie gearteten Qualitäts-Wert dar. In diversen Foren wurde hier schon viel geschrieben und spekuliert. Fakt ist, dass der Wert nicht direkt vom Empfänger kommt, sondern vom Sender "berechnet" wird. Eine häufig geäußerte Vermutung ist, dass der Q-Wert dem prozentuale Anteil an Paketen entspricht, die vom Empfänger über den Telemetriekanal wieder zurück-quittiert wird. Der Author dieses Beitrags hält diese Vermutung für sehr wahrscheinlich.
Beispiel:
- Q = 100%
- es wurden 100% der Pakete, die der TX gesendet hat, vom RX über den Telemetriekanal dem Sender als korrekt empfangen zurück-quittiert.
- Q = 50%
- es wurde nur 50% der Pakete , die der TX gesendet hat, vom RX über den Telemetriekanal dem Sender als korrekt empfangen zurück-quittiert.
Ein guter Q-Wert hat eine hohe Aussagekraft. Sendet der Sender mit 100Hz (100 Datenpakete pro Sekunde, wobei in jedem Datenpaket ein vollständiger Satz aller Servopositionen digital enthalten ist (ist auch nur eine wahrscheinliche Vermutung, da der Hersteller hierzu keinerlei Aussagen macht)), so bedeutet ein Q-Wert von 50%, dass auf jeden Fall im Schnitt 50 Pakete pro Sekunde mit einem vollständigen Satz von Servodaten beim Empfänger ankommt.
Das hört sich nun alles sehr gut an.
Nun gibt es jedoch ein großes Problem. Wird der Q-Wert sehr klein, sagen wir mal 1%, dann bedeutet dies allerdings nicht, dass der Empfänger nur noch im Schnitt 1 Datenpaket/s korrekt empfängt, sondern dass nur noch im Schnitt 1 Datenpaket/s zum Sender zurückquittiert wird. Dass heisst, bei kleinen Q-Werten weiss man nicht, ob die Pakete auf dem Daten-Hin-Weg oder auf dem Telemetrie-Rückweg verloren gehen.
Der Q-Wert beurteilt also den Daten-Hin-Weg und den Telemetrie-Rückweg. Das Problem: Der Telemetrie-Rückweg, ist signal-technisch benachteiligt, da er mit geringerer Sendeleistung arbeitet und deshalb bei schwierigen Übertragungsbedingungen (Entfernung, Bodennähe, Störeinflüsse, Lage des Modells, Einbau-Situation) viel früher Übertragungsverluste aufweist, als der Daten-Hin-Weg. Der Telemtrie-Rückweg vom RX zum TX interessiert aber zur Steuerbarkeit eines Flugmodells nicht.
In der Praxis, hat dies reale Relevanz. Segelflugmodelle bewegt man typischer Weise bei thermischen Bedingungen in großen Entfernungen und Höhen, zum Teil unterhalb des Horizonts knapp über anderen Hindernissen (Bäumgruppen, Hügeln,...). Der Q-Wert fängt dann an Werte in der Nähe von 0% anzuzeigen und, entsprechende Warnschwellen vorausgesetzt, der Sender gibt dem Piloten Warnhinweise, dass der Q-Wert zu niedrige Werte annimmt.
- schwaches Q-Signal im JETI-Studio, in einer Höhe von ca. 550m und ca. 400m Entfernung
Der niedrige Q-Wert gibt nun leider keinen Aufschluss, ob die Steuerfähigkeit des Modells noch gegeben ist oder nicht.
Hieraus ergibt sich, dass ein Qualitätsmerkmal nur für den Daten-Hin-Weg, also nur die Strecken Sender-zu-Empfänger, durchaus Sinn machen würde.