Vorflugcheck mit hilfe von LUA erstellen
- Geierwally
- Offline
- Elite Mitglied
- Tranquility Base here, The Eagle has landed :D
- Beiträge: 172
- Dank erhalten: 125
Moin ghtoley,
Dazu müsste man die LUA App ändern und an den entsprechenden Stellen der App mittels
system.playFile(vFx,AUDIO_AUDIO_QUEUE) die entsprechenden Soundfiles abspielen
vFx sind als Variablen zu deklarieren, die an ein Form Element gebunden sind und dann an entsprechende Soundfiles gebunden werden (x steht für den Vorflugcheck - Abschnitt zBsp. vF_AkkuCheck, die Namen der Variablen müssen eindeutig sein)
So die Deklaration der Variablen zu Beginn der App
local vF_AkkuCheck
so könnte zBsp das Form Element für die Eingabe initialisiert werden
form.addRow(2)
form.addLabel({label="AkkuCheck"})
form.addAudioFilebox(vF_AkkuCheck,vF_AkkuCheck_Changed)
Damit hätte man einen Menüeintrag AkkuCheck, den man an eine Sounddatei binden kann
Dann ist pro Variable noch eine changed Funktion zu definieren, das wäre z.Bsp für die Variable vF_AkkuCheck wie folgt
local function vF_AkkuCheck_Changed(value)
vF_AkkuCheck=value
system.pSave("vF_AkkuCheck",value)
end
Diese speichert den Wert der Variablen im Modellspeicher
In der init() Funktion ist jede Variable aus dem Modellspeicher zu laden
Hier für das Beispiel vF_AkkuCheck
vF_AkkuCheck= system.pLoad("vF_AkkuCheck","...")
Und so wird die Sounddatei für AkkuCheck abgespielt:
system.playFile(vF_AkkuCheck,AUDIO_AUDIO_QUEUE)
Dazu müsste man die LUA App ändern und an den entsprechenden Stellen der App mittels
system.playFile(vFx,AUDIO_AUDIO_QUEUE) die entsprechenden Soundfiles abspielen
vFx sind als Variablen zu deklarieren, die an ein Form Element gebunden sind und dann an entsprechende Soundfiles gebunden werden (x steht für den Vorflugcheck - Abschnitt zBsp. vF_AkkuCheck, die Namen der Variablen müssen eindeutig sein)
So die Deklaration der Variablen zu Beginn der App
local vF_AkkuCheck
so könnte zBsp das Form Element für die Eingabe initialisiert werden
form.addRow(2)
form.addLabel({label="AkkuCheck"})
form.addAudioFilebox(vF_AkkuCheck,vF_AkkuCheck_Changed)
Damit hätte man einen Menüeintrag AkkuCheck, den man an eine Sounddatei binden kann
Dann ist pro Variable noch eine changed Funktion zu definieren, das wäre z.Bsp für die Variable vF_AkkuCheck wie folgt
local function vF_AkkuCheck_Changed(value)
vF_AkkuCheck=value
system.pSave("vF_AkkuCheck",value)
end
Diese speichert den Wert der Variablen im Modellspeicher
In der init() Funktion ist jede Variable aus dem Modellspeicher zu laden
Hier für das Beispiel vF_AkkuCheck
vF_AkkuCheck= system.pLoad("vF_AkkuCheck","...")
Und so wird die Sounddatei für AkkuCheck abgespielt:
system.playFile(vF_AkkuCheck,AUDIO_AUDIO_QUEUE)
von Geierwally
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Geierwally
- Offline
- Elite Mitglied
- Tranquility Base here, The Eagle has landed :D
- Beiträge: 172
- Dank erhalten: 125
Hier evtl. noch ein besserer Lösungsansatz dazu:
Die Tabelle mit den Preflight Checks enthält ja Textinformationen. Wenn man sich die in eine String- Variable formatiert z.B. die ersten acht Buchstaben ohne Sonder und Leerzeichen und den Dateinamen der Sounddatei entsprechend setzt, könnte man sich das Geraffel mit den Menüeinträgen und Variablen aus dem Modellspeicher sparen.
z.B. wird mit dem Eintrag Akku check Akkuchec in die lokale Stringvariable vPreflightString formatiert, die entsprechende Sounddatei dazu müsste dann Akkuchec.wav sein
Damit muss man nur noch das
system.playFile(vPreflightString,AUDIO_AUDIO_QUEUE)
aufrufen.
Wichtig dabei ist, dass die ersten acht Zeichen, woraus die Dateinamen der zugehörigen Sounddateien formatiert werden eindeutig sind.
Die Tabelle mit den Preflight Checks enthält ja Textinformationen. Wenn man sich die in eine String- Variable formatiert z.B. die ersten acht Buchstaben ohne Sonder und Leerzeichen und den Dateinamen der Sounddatei entsprechend setzt, könnte man sich das Geraffel mit den Menüeinträgen und Variablen aus dem Modellspeicher sparen.
z.B. wird mit dem Eintrag Akku check Akkuchec in die lokale Stringvariable vPreflightString formatiert, die entsprechende Sounddatei dazu müsste dann Akkuchec.wav sein
Damit muss man nur noch das
system.playFile(vPreflightString,AUDIO_AUDIO_QUEUE)
aufrufen.
Wichtig dabei ist, dass die ersten acht Zeichen, woraus die Dateinamen der zugehörigen Sounddateien formatiert werden eindeutig sind.
von Geierwally
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Geierwally
- Offline
- Elite Mitglied
- Tranquility Base here, The Eagle has landed :D
- Beiträge: 172
- Dank erhalten: 125
Hallo allerseits xD
werde mir das Thema mit der Sprachausgabe zum preflight check mal vornehmen und bin im Moment noch am Ideen sammeln.
Stelle mir das wie folgt vor:
Jeder Check hat seine eigene Sounddatei, deren Dateiname aus den ersten 8 Buchstaben des definierten Checks gebildet wird. Sonderzeichen werden ausgefiltert und durch Unterstriche ersetzt. Damit muss man keine weiteren Bindungen vornehmen. Die eigentliche `Fleißaufgabe des Anwenders besteht darin, Sounddateien aufzunehmen und mit den entsprechenden Dateinamen zu benennen. Dazu würde ich für den Simulator eine Hilfsapp programmieren, der man die Vorflugcheckliste als Datei gibt. Die Hilfsapp generiert daraus ein File, dass alle erwarteten Dateinamen enthält. Damit kann man dann die aufgenommenen Sounddateien umbenennen.
Bzw. öffnet im preflight check eine Messagebox mit einer Warnung und dem Dateinamen der erwarteten Sounddatei, wenn die zugehörige Datei nicht gefunden wurde.
Der preflight check selber sieht wie folgt aus:
Sprachausgabe : `Sind die Akkus geprüft ?`
Bestätigung : Spracheingabe `check` schaltet in den nächsten Schritt.
Evt. gibt es noch weitere Ideen dazu?
Viele Grüße
Geierwally
werde mir das Thema mit der Sprachausgabe zum preflight check mal vornehmen und bin im Moment noch am Ideen sammeln.
Stelle mir das wie folgt vor:
Jeder Check hat seine eigene Sounddatei, deren Dateiname aus den ersten 8 Buchstaben des definierten Checks gebildet wird. Sonderzeichen werden ausgefiltert und durch Unterstriche ersetzt. Damit muss man keine weiteren Bindungen vornehmen. Die eigentliche `Fleißaufgabe des Anwenders besteht darin, Sounddateien aufzunehmen und mit den entsprechenden Dateinamen zu benennen. Dazu würde ich für den Simulator eine Hilfsapp programmieren, der man die Vorflugcheckliste als Datei gibt. Die Hilfsapp generiert daraus ein File, dass alle erwarteten Dateinamen enthält. Damit kann man dann die aufgenommenen Sounddateien umbenennen.
Bzw. öffnet im preflight check eine Messagebox mit einer Warnung und dem Dateinamen der erwarteten Sounddatei, wenn die zugehörige Datei nicht gefunden wurde.
Der preflight check selber sieht wie folgt aus:
Sprachausgabe : `Sind die Akkus geprüft ?`
Bestätigung : Spracheingabe `check` schaltet in den nächsten Schritt.
Evt. gibt es noch weitere Ideen dazu?
Viele Grüße
Geierwally
von Geierwally
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Sepp62
- Offline
- Elite Mitglied
- Beiträge: 294
- Dank erhalten: 153
Warum erweiterst Du nicht das Format der data-de.jsn-Datei (in der die Texte für die Checkpunkte stehen) um den Dateinamen der Sound-Dateien ? Dann musst Du keine Hilfsprogramme und so was programmieren und das Ganze ist selbsterklärend.
Der Anwender muss diese Datei ja sowieso anpassen. Mir persönlich wäre es sowieso am Liebsten, die Checkliste würde direkt aus der Datei gebildet. Dass man sich da noch umständlich über die Oberfläche die Texte zusammenstellen muss, finde ich lästig.
VG Bernd
Der Anwender muss diese Datei ja sowieso anpassen. Mir persönlich wäre es sowieso am Liebsten, die Checkliste würde direkt aus der Datei gebildet. Dass man sich da noch umständlich über die Oberfläche die Texte zusammenstellen muss, finde ich lästig.
VG Bernd
von Sepp62
Folgende Benutzer bedankten sich: Geierwally
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Geierwally
- Offline
- Elite Mitglied
- Tranquility Base here, The Eagle has landed :D
- Beiträge: 172
- Dank erhalten: 125
Super Idee Bernd, werde ich so machen.
Viele Grüße
Geierwally:)
Viele Grüße
Geierwally:)
von Geierwally
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Elmar
- Offline
- Elite Mitglied
- Beiträge: 237
- Dank erhalten: 77
Hallo Geierwally,
was ich mir wünschen würde, wäre ein Vorflugcheck, der nur einmal am Flugtag automatisch aufgerufen wird. Oder noch besser... zwei Vorflugchecks! Einmal nach dem Aufbau des Modells (der nur 1x vor dem 1. Flug). Dazu müsste LUA nachschauen, ob es zum aktuellen Datum für das aktuelle Modell schon einen Logeintrag gibt. Wenn ja, dann wird nur der Check für jeden Flug gemacht...
Sinn... ich vergesse regelmäßig z.B. die CB Box vor dem 1. Flug zu resetten um über die verbrauchte Kapazität der Empfängerakkus Bescheid zu wissen. Man könnte auch Sachen vom Aufbau des Fliegers abfragen, wie z.B. Höhenruderservos eingehängt. Flächenverbinder gesichert usw.
Für die weiteren Flüge braucht man das ja nun nicht mehr und damit könnte sich der Vorflugcheck auf ständig wiederkehrende Checks begrenzen... z.B. Akkus angeschnallt, Betankung, Rudercheck usw.
Wäre sowas machbar? Für DC 16?
Gruß Elmar
was ich mir wünschen würde, wäre ein Vorflugcheck, der nur einmal am Flugtag automatisch aufgerufen wird. Oder noch besser... zwei Vorflugchecks! Einmal nach dem Aufbau des Modells (der nur 1x vor dem 1. Flug). Dazu müsste LUA nachschauen, ob es zum aktuellen Datum für das aktuelle Modell schon einen Logeintrag gibt. Wenn ja, dann wird nur der Check für jeden Flug gemacht...
Sinn... ich vergesse regelmäßig z.B. die CB Box vor dem 1. Flug zu resetten um über die verbrauchte Kapazität der Empfängerakkus Bescheid zu wissen. Man könnte auch Sachen vom Aufbau des Fliegers abfragen, wie z.B. Höhenruderservos eingehängt. Flächenverbinder gesichert usw.
Für die weiteren Flüge braucht man das ja nun nicht mehr und damit könnte sich der Vorflugcheck auf ständig wiederkehrende Checks begrenzen... z.B. Akkus angeschnallt, Betankung, Rudercheck usw.
Wäre sowas machbar? Für DC 16?
Gruß Elmar
von Elmar
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
Moderatoren: Thorn, IG-Modellbau
Ladezeit der Seite: 1.064 Sekunden