Variable mit LUA in den Log schreiben

Status
Nicht offen für weitere Antworten.
#1
Die neue Lua-Funktion setTelemetryValue habe ich mal kurz getestet:

Mein Höhenruder ändert die GVar1. Diese schreibt dann das folgende Script in den Log:

Code:
local function run_func ()
 lcd.clear()
  val = model.getGlobalVariable(0, 0)
lcd.drawNumber(75, 11, val, 0)
setTelemetryValue(0xFFFF, 0, 32, val)
end
Die SensorID wählt man sinnvollerweise oberhalb (hier 32) der 28 Telemetriesensoren.
Dann Sensoren einlesen (mit aktivem Script):
FFFF.png
Sensorname ändern, wenn nicht im Script angegeben, Log Feld anhaken und läuft....
Ele_GV.png
Man sieht allerdings, dass beim sehr schnellen Bewegen des Höhenruders die GV laut Log nicht exakt folgen kann.

Mal sehen, was sich dadurch für Möglichkeiten ergeben, man kann ja prinzipiell alles, was man mit LUA greifen kann, im Log ablegen und nachvollziehen. Es bleibt spannend.

Anhang anzeigen SPort-2017-02-20.zip
 

Norbert

Erfahrener Benutzer
#2
Sorry - habe es jetzt zum 2.mal gelesen und verstehe nicht, was du genau machst.

Habe ich damit die Möglichkeit in LUA ausgewählte Log Daten am Display der Fernsteuerung anzuzeigen?

Norbert
 
#3
Sorry - habe es jetzt zum 2.mal gelesen und verstehe nicht, was du genau machst.
Geht mir auch so, wenn ich meine älteren Beiträge noch mal lese ;) - das kommt von meiner Euphorie über OpenTX. Aber dieser Beitrag ist noch frisch.

Wir machen ja beide viel mit Telemetrie. Ich bin schon öfter an Grenzen gestoßen, wenn es darum ging, zum Beispiel die PWM-Kanäle zu loggen - das ging nicht. Oder ein per LUA errechnetes Ergebnis zu loggen - ging auch nicht. Oder eine GVar...... Ein Entwickler hat mir auch mal erklärt, warum das so ist: das Logging hat nur Zugriff auf die Input-Ebene und auf die Telemetrieebene, Mixer- und Output- sind außen vor.

Mit LUA kann man zwar in eine separate Textdatei loggen, aber dann hat man zwei Dateien, die man erst wieder vereinen und in einen zeitlichen Zusammenhang bringen muss.

Beispiel 1: Ich hatte mal den Airspeed auf das Höhenruder gemischt, um die Phugoide auszuregeln. Ich konnte zwar den Input (Höhe) und den Airspeed loggen, aber nicht das Ergebnis des Mischers, den PWM Kanal - das eigentlich Interessante.

Beispiel 2: Zwei GPS im Einsatz, eines im Modell, eines im Sender, beide bewegen sich. Die Entfernung kann man zwar per LUA berechnen, aber bekommt sie nicht im Log eingetragen.

Beispiel 3: Globale Variablen und Flightmodes kann man sehr vielfältig einsetzen - aber nicht loggen.

Mit der neuen LUA-Funktion kann man jetzt alles, was für LUA erreichbar ist, auch in den "normalen" Log einbauen und hat so direkt den gewünschten Überblick mit OpenTX Bordmitteln bzw. dem Companion Log-Viewer. Udo hat z.B. ein LUA-Perfomance-Script geschrieben, mit der neuen Funktion kann er Ergebnisse direkt in den Log schreiben und hat dann Telemetrie und Ergebnis der Auswertung gemeinsam in der Standard-Log-Datei.

Eventuell kann diese Funktion auch für das LUA-Debugging interessant sein......
 

Norbert

Erfahrener Benutzer
#4
Hallo,
danke für die Antwort, habe mich bisher nicht mit LUA beschäftigt ( zuviel anderes ).

Wenn ich deine Antwort richtig verstehe, habe ich über LUA die Möglichkeit Werte in das normale Log File zu schreiben, die ohne LUA nicht gehen und hinterher mit Compagnion anzuzeigen.

Auf dem Sender Bildschirm kann ich keine Logs darstellen?

Norbert
 
#5
Genau, Sender ist eine andere Baustelle. Im Chat hattem sie es heute davon.
 

Norbert

Erfahrener Benutzer
#6
WOW bist du schnell, war ja noch gar nicht richtig auf der RETURN Taste

Darstellung am Sender wäre natürlich eine super Sache. Ansonsten muss am Platz ja KArte raus, in den Laptop rein, auswerten und wieder rückwärts.

Danke

Norbert

btw Welcher Chat??
 
#7
Bin bei der Arbeit :). Chat ist auf der 2.2 Download Seite verlinkt - im Text der einzelnen Versionen.
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten