Jump to content
Sign in to follow this  
Heinz Flichtbeil

Ziellande Addon LFKA, EDXO, EDHM und FlyWithLua Scriptentwicklung (EDIT 24.06.2019: Script Final Version verfügbar)

Recommended Posts

Hallo,

 

hier diskutieren und entwickeln wir passend zu meinen Ziellande-Addons für Alberville LFKA , St.Peter Ording EDXO und Hartenholm EDHM

ein FlyWithLua Script für die automatische Erfassung der Fehlerpunkte beim Ziellanden.

 

Das Script wird von unserem Forum User Othello entwickelt. Danke dafür und für die Erlaubnis, es in unserem Downloadbereich anzubieten.

Die immer aktuelle Release Version ist jetzt hier zu finden.

https://forum.aerosoft.com/index.php?/files/file/5227-ziellandung-package-precision-landing-x-plane-11-only/

(bitte keine Beta Versionen des lua Scripts mehr aus diesem Thread verwenden).

 

Meine passenden Addons sind hier beschrieben (incl.Download Links)

https://forum.aerosoft.com/index.php?/topic/145516-ziellande-szenerie-in-albertville-lfka-stpeter-ording-edxo-und-hartenholm-edhm/

 

Gruß Heinz

Share this post


Link to post
Share on other sites

Neue Beta 3 version

 

Für die Anzeige der Bewertung wird nicht mehr XSquakBox benötigt.

Neues Makro (unter "plugins/Flywithlua/macros"):  Restart der Competition

 

Es werden 3 hintereinander auszuführende Landungen gewertet

 

Eine 4. Landung ist damit die 1. Landung eines neuen Zyklus

 

/Othello

 

 

 

Ziellandung-V1.0b3.lua

Share this post


Link to post
Share on other sites

Neue Version Beta 4

 

Das Script erlaubt nun beliebige Flugzeuge zu verwenden.

Entwickelt wurde es für die Cessna 172 std/REP, verwendet man ein anderes Flugzeug, ist dieses vor dem Start zu vermessen.

Das Messergebnis gilt, bis das Script neu geladen wird, es kann aber auch dauerhaft in das Script geschrieben werden (gleich am Anfang des Scriptes wird dies beschrieben).

 

Der Eichvorgang:

- Flieger mit dem für die Messung gültigen Fahrwerk in Landerichtung genau auf die D Linie (EDIT Heinz: letzte weiße LInie) stellen

- Das Makro für die Eichung aufrufen

 

fertig.

 

Rein technische Info für jene, die gerne ich Sourcen schmökern:

Ich werde das Script umbauen, die bisherige Funktionen bleiben erhalten.

Leider habe ich die Messung für die Punkte von der Ziellinie aus vorgenommen, dies verkompliziert das Eichen auf andere Flieger.

Der neue Ansatz misst immer von der D-Linie aus, dadurch gibt es kein Aufsetzen vor oder nach der Messlinie, gültige Landungen sind dann immer vor der Messlinie.

 

Gruß

Günther

 

 

Ziellandung-V1.0b4.lua

Share this post


Link to post
Share on other sites

Moin Günther,

 

Du bist unermüdlich :)

 

Habe gerade das Script b3 getestet. Funktioniert gut.

Die Laminar C172 kenne ich noch nicht so gut. Meist fliege ich die Carenado C172 G1000 :)

 

Aber hier mal ein Bild mit Beta 3.... (Beta 4 teste ich dann nachher.... mit "meiner" Cessna ).

Ziellandungen-mit-LuaScript.thumb.jpg.88648ed049db8b49e0ce4b63c5d658e7.jpg

 

Gruß Heinz

 

Share this post


Link to post
Share on other sites

Günther,

 

Deine Scriptprogrammierung (habe gerade in Beta 4 reingeschaut) gefällt mir sehr gut.

Übersichtlich und vor allem mit klaren Kommentaren.

Das kenne ich noch aus meiner Studiumzeit (Physik. Da mussten wir auch ein Semester programmieren).

Das ist ingenieurmäßiges Arbeiten :)

 

Viele Grüße

Heinz

 

PS: Was ist bei Dir die D LInie? Müsste ja die vorletzte sein. Oder meinst Du die letzte weiße Linie?

Share this post


Link to post
Share on other sites

Noch etwas,

 

wie berechnest Du den Referenzpunkt für ein anderes Flugzeug.

Wenn es zur Eichung auf der D Linie steht, dann sind ja alle 3 Räder auf dem Boden.

Beim Landen in einem Feld ist aber nur das Hauptfahrwerk am Boden (was als gelandet gilt)  das Bugrad ist noch in der Luft (meistens).

Damit ist die Fluglage anders, als beim Eichen. Macht das etwas aus in Deinem Script?

 

Und:

In der Beta 4 funktioniert bei mir die Touchdown Simulation nicht. Es wird kein Wert angezeigt. (XSB habe ich entfernt).

 

Gruß heinz

Share this post


Link to post
Share on other sites

Die touchdown simulation ist als debugging gedacht und gibt die Daten weiterhin über print aus, das erfordert XSB.

Ich werde das auch noch ändern.

 

Mit der D-Linie meine ich die letzte Linie, ich würde es gerne auf die erste Linie ändern, dann kann man nach dem Eichen sofort starten.

 

Die Positionen des Fliegers (lat,lon) gibt X-Plane aus und ist auf den Referenzpunkt des Fliegers abgestimmt (glaube ich).

D.h. der Flieger wird als Punkt betrachtet.

Dieser Punkt ist nicht irgend ein Fahrwerk (und wenn, dann ist es Zufall).

 

Die Koordinaten der Linien sind nicht mehr die von dir ermittelten, sondern ich habe die Cessna 172 mit dem Hauptfahrwerk auf die Linien

gestellt und lat und lon aus X-Plane ausgelesen. Deshalb sind die Linienkoordinaten eigentlich die Linien des Cessna-Referenpunktes.

Solange man die Cessna fliegt, passt alles.

 

Ein anderes Flugzeug hat einen anderen Referenpunkt.

Stellt man den Flieger mit dem Hauptfahrwerk auf die Endlinie des D-Feldesund misst mit der Scriptfunktion die Entfernung zur D-Linie,

misst man damit den Versatz der Referenzpunkte Neuer Flieger / Cessna.#

 

Dieser Wert wird zur Korrektur des Touchdown Punktes verwendet.

 

 

Gruß

Günther

 

EDIT

Wenn der Flieger nicht horizontal ist, ist der Referenzpunkt (in der Horizontalen) etwas weniger weit vom Fahrwerk entfernt,

das ist richtig, es dürfte aber innerhalb der vorhanden Ungenauigkeiten liegen.

Man müsste zum Eichen eine Kiste unter das Vorderrad stellen 🙂

 

Annahme: Unterschied des Referenzpunktes Flieger A zu B 1m und einer der beiden Punkte liegt beim Fahrwerk, Nase 10° nach oben

 

Dann wäre der bias Wert statt 100cm nur noch 98.5 cm

 

 

EDIT 2

Da ich die Linien mit der Cessna ebenso auf allen Rädern stehend ermittelt habe, ist auch bei dieser der gleiche Fehler enthalten

Share this post


Link to post
Share on other sites

Hallo Günther,

 

ok, alles klar. Danke für die infos.

Ich habe mit der Carenado Cessna 172 die letzte weiße Linie als Referenzlinie genommen. Und ein paar Landungen gemacht.

Scheint alles zu passen.... :) Super.

 

Und Du hast natürlich Recht. Bei einer Nase 10° nach oben ist der Fehler zu gering um berücksichtigt zu werden....

Ich wollte es nur wissen.

 

Ok, ich installiere mir die XSB nochmal und prüfe dann meinen Referenzpunkt auf allen Linien und Feldern nach. Dann weiß ich, dass ich ihn richtig bestimmt habe.

Ich habe ihn mir zusätzlich als Kommentar in Dein Script geschrieben.

 

Gruß heinz

 

Share this post


Link to post
Share on other sites

Ich weiß nicht, ob ich das richtig beschrieben habe.

Du kannst den beim Eichen ausgegebenen Wert als bias Wert in das Script schreiben, nicht nur als Kommentar.

 

Also den Wert

 

bias = 0.0      durch z.B.

 

bias = 117.0

 

überschreiben.

Dann ist das Script dauerhaft an deinen Flieger angepasst.

 

 

Gerade eben bin ich mit der King Air in Friedrichshafen gelandet und mich gewundert, warum ich plötzlich 200 Punkte bekam 🙂

Ich muss das Script aus dem Ordner nehmen ...  (Ein- Ausschalten wäre gut)

 

/Günther

Share this post


Link to post
Share on other sites

Hallo Othello,

 

ja, ist mir schon klar gewesen :) Sonst würden die Punkte ja auch gar nicht passen ... Hast Du auch richtig beschrieben.

Ich habe mir nur mehrere Flugzeuge nach der Eichung dort als Kommentar reingeschrieben, damit ich die Werte zur Verfügung habe wenn ich sie brauche.

Einen Wert schreibe ich dann je nach Flugzeug natürlich in das entsprechende Werte (bias) Feld :)

 

Gruß heinz 

Share this post


Link to post
Share on other sites

Hm, ich könnte ja die Kennung des Fliegers verwenden um automatisch den richtigen bias Wert zu setzen ...

Danke, jetzt habe ich wieder etwas zu tun 🙂

Share this post


Link to post
Share on other sites

Neue Version des Scriptes.

Neu ist die Art der Installation, das eigentliche Script ist das gleiche wie bisher.

 

Statt eines lua Files liefere ich jetzt ein ZIP File, welches innerhalb des Script Ordners von FlyWithLua entpackt werden muss.

Das ZIP File beinhaltet:

 

1) Ein lua Script mit dem Namen:  start_competition.lua

2) einen Folder mit dem Namen:  competition

3) Im Folder "competition" eine lua Script mit dem Namen: Ziellandung-V1.0b4.lua

 

Das Script unter 1) wird beim Laden eines Fliegers gestartet und bietet nur ein Makro an, sonst machts es nichts, wirklich nichts!

Der Vorteil ist, man kann landen wo und wie man will, das Script macht nicht das Geringste.

Alles was es anbietet ist ein Makro unter "plugins/FlyWithLua/Macros":          "start competition"

 

Wird diese Makro aufgerufen, wird das eigentliche Ziellandescript gestartet (und eben erst dann!)

Nach dem Makroaufruf ist alles wie von den Vorgängerversionen her bekannt. Jetzt stehen auch die weiteren Makros zur Verfügung.

 

Hat man genug geübt reicht das Neuladen eines Fliegers, um die Bewertung der Landungen zu deaktivieren.

 

Durch die neue Aufrufprocedur muss man das Script nicht aus dem Scriptfolder entfernen, wenn man normale Landungen

ohne Bewertungen durchführen möchte (das ist der Regelfall, nehme ich an). Zum Aktivieren reicht ein Makroaufruf.

 

Gruß

Günther

 

ziellandung-V1.0.b4.zip

 

 

EDIT:

Bestehende Ziellandescripte sind aus dem Script Folder zu löschen

 

 

Share this post


Link to post
Share on other sites

Version 1.0 beta 5

 

Das Script speichert beim Eichen automatisch den Eichwert für den entsprechenden Flugzeugtyp in eine Datei.

Beim Starten des Scriptes wird nachgeschaut, ob für den Flugzeugtyp eine Datei existiert, wenn ja, wird der Bias Wert ausgelesen, wenn nein,

wird der im Script hinterlegte Defaultwert genommen.

 

Als Typ wird genommen, was in PlaneMaker unter der Bezeichnung ICAO Code zu lesen ist.

Möchte man den Wert ändern, ist wie folgt zu verfahren:

 

1) PlaneMaker aufrufen

2) Datei/öffnen  Flieger auswählen

3) Standard/Author wählen

4) ICAO Code bei Bedarf ändern

5) x oben links im grauen Fenster anklicken

6) Datei/speichern

7) PlaneMaker beenden

 

 

icao.thumb.JPG.2c96d65db16a12dca52e0b4fc67ecf8b.JPG

 

 

 

Weitere Informationen für jene, die schon Flieger geeicht haben und sich die Eichwerte notiert haben.

Die vorhandenen Werte können wie folgt übernommen werden:

 

- Flieger irgendwo auf die Bahn setzen,

- Flieger eichen

- X-Plane beenden

 

Durch das Eichen wurde die folgende Datei angelegt:  <LUA-Script_Folder/competition/bias store/<name>.bias

 

Der Inhalt (nur eine Zahl, der Bias Wert) kann mit einem normalen Editor bearbeitet werden.

 

Gruß

Günther

 

 

EDIT:

- schon vorhandene Installationen des Scriptes löschen

- Zip file im Lua Scriptfolder entpacken

 

 

Ziellandung V1.0 b5.zip

Share this post


Link to post
Share on other sites

Hallo Günther,

 

funktioniert ...

Allerdings finde ich die Sache mit dem PlaneMaker etwas problematisch.

Die Cessna 172 von Carenado heißt im PlaneMaker C172.

Auch die AirfoilLabs Cessna 172 heißt dort auch C172.

Man muss also erst die Namen im PlaneMaker ändern (wie Du schreibst) , sonst werden die Bias Werte überschrieben.

PlaneMaker Daten ändere ich nicht so gern.

Bei einem Update der Flieger sind die Namen z.B. wieder wie vorher .... und dann wird die Bias Datei nicht mehr gefunden.

Man muss also erst wieder mit PlaneMaker den Namen ändern (nach einem Update) ...

 

Finde ich etwas umständlich. 

Aber ist wohl, wenn man einen gewissen Automatismus haben will nicht anders zu machen ... oder?

 

Im Moment bevorzuge ich noch meine Vorgehensweise, mir die Bias-Werte als Kommentar in Dein Script zu schreiben und bei Bedarf dann den Bias Wert je nach verwendetem Flugzeug per Hand anzupassen.

 

Gruß heinz

Share this post


Link to post
Share on other sites

Ich verstehe dein Argument, viele sehen das sicher ebenso wie du.

Ich allerdings habe da weniger Hemmungen, ich überschreibe sogar das Rufzeichen.

So verwende ich z.B. den ICAO Wert zum Laden flugzeuspezifischer lua Scripte.

 

Als Lösung schlage ich vor:

Am Anfang des Scriptes kann gewählt werden, ob man den Automatismus haben möchte oder eben nicht.

Der Default ist:  kein Automatismus.

 

Um ein Editieren des acf Files unnötig zu machen, habe ich folgendes vor:

 

Ich bilde den Namen aus : Author und ICAO Code

Sollte auch dies mehrdeutig sein, muss ich erneut nachdenken.

 

 

 

Share this post


Link to post
Share on other sites

Neue Version 1.0 b6

 

Alle Macros sind auch als Command verfügbar, dadurch sind sie z.B. Tasten zuordbar.

Der Pfadname der Commands hat sich geändert:  GKWI/competition

 

Am Anfang des Scriptes kann gewählt werden, ob die bias Werte automatisch gespeichert/gelesen werden

Der Name des bias-Files wird aus Author des Fliegers und des ICAO Code des Fliegers 

 

/Günther

 

Ziellandung V1.0 b6.zip

Share this post


Link to post
Share on other sites

Hallo Günther,

 

ok, gute Idee so denke ich.

Komme heute aber nicht mehr zum Testen. Muss nach Rendsburg zum Musik machen mit meiner kleinen Blues Band :)

Real :)

 

Gruß heinz

Share this post


Link to post
Share on other sites

So langsam wird das Script rund 🙂

 

Neue Version 1.0 b 7

 

Zur Installation das Zipfile irgendwo entpacken und dem Readme folgen.

 

Die aktuelle Version beinhaltet u.a. den Modul mbox.lua, welcher die Installation von XSquakBox unnötigt macht.

Dadurch wurde ein neues Kommando/Makro möglich:

 

"show last message"

 

mbox zeigt den ausgegebenen Text 15 Sekunden lang an, dann wird er wieder ausgeblendet (wie bei XSquakbox).

Mit dem neuen Kommando wird der zuletzt ausgegebene Text erneut angezeigt.

 

/Günther

 

 

Ziellandung-Package V 1.0 b 7.zip

Share this post


Link to post
Share on other sites

Neue Version 1.0 b8

 

Wenn keine Anregungen/Fehlermeldungen eingehen, wird das die erste richtige Version.

 

Änderungen:

- Die Abstandsberechnung wurde geändert, dabei wurden einge Bugs behoben.

- verschiedene andere kleine Verbesserungen

- !! Zum Eichen ist jetzt auf die Y-Linie (die erste Linie in Landerichtung) zu fahren

 

Durch die Umstellung ist es sinnvoll die Flieger neu zu Kalibrieren.

 

Anmerkung: Sollen die Eichwerte automatisch gespeichert werden, ist im Ordner "competition" im Script "Ziellandung-V1.0b8.lua"

                       der Wert "save_bias_to_file"  von 0 auf 1 zu ändern, das sieht dann so aus:

 

                       local save_bias_to_file = 1

 

Gruß

Günther

 

 

Ziellandung-Package V 1.0 b 8.zip

Share this post


Link to post
Share on other sites

Habe gerade gesehen:

Du hast im Script "Ziellandung-V1.0b8.lua immer noch stehen, dass man den Flieger auf die D Linie stellen soll, wenn man ihn eichen will ...

Ich hab es bei mit "... Y-Linie (erste weiße Linie in Landerichtung) stellen ...." geändert.

Auch beim "Simulate Touchdown..." erscheint noch "Messlinie: D-Linie...

Gruß heinz

Share this post


Link to post
Share on other sites

Noch etwas:

 

hier, wie im Bild sollte man bereits 0 Punkte erhalten. Man ist ja auf der Gelben Linie gelandet, die etwas breiter ist.

Ich werde die gelbe Linie deshalb wieder genau so breit machen wie die weißen.

Koordinaten bleiben natürlich gleich.

 

 

Gruß Heinz

lfka-ziellandung-gelb.jpg

Share this post


Link to post
Share on other sites

Danke für das Feedback, Heinz.

 

Die geannten Fehler werde ich beheben, die da sind:

- Aufforderung, den Flieger zum Eichen auf die D-Linie zu stellen

-  Das Nullfeld beginnt ab Mitte der Ziellinie und nicht ob vorderer Kante

 

Die Ausgabe bei simulierten Landungen ist dagegen richtig, denn das Messen des Landepunktes geschieht von

beiden das Landefeld begrenzenden Linien (Y und D).

Dies ist notwendig, da die über die Vektoren ermittelte Distanz keine Richtungsangabe besitzt.

Man bekommt nur den Abstand vom Punkt zur Linie, aber nicht etwas wie die Entfernung vor oder hinter der Linie.

Ein Aufsetzen 2m vor der Y-Linie ist nicht zu unterscheiden von 2m nach der Y-linie.

 

Um das Script unabhängig von Koordinatenänderungen der Linien zu machen, werde ich den (schnell zu ermittelnden)

Satz an Koordinaten aus dem Script in eine Datei auslagern, die als Namen die ICAO Kennung des Landeplatzes bekommt.

 

Richtig!

 

Damit ist es möglich, dass sich das Script automatisch an verschiedene Ziel - Landeplätze anpasst, solte es denn welche geben 🙂

 

Gruß

Günther

Share this post


Link to post
Share on other sites
vor 2 Stunden , Othello sagte:

Danke für das Feedback, Heinz.

...

Um das Script unabhängig von Koordinatenänderungen der Linien zu machen, werde ich den (schnell zu ermittelnden)

Satz an Koordinaten aus dem Script in eine Datei auslagern, die als Namen die ICAO Kennung des Landeplatzes bekommt....

🙂

GrußGünther

Hallo Günther,

gute Idee.... hätte ich bestimmt irgendwann nach gefragt..... :)

 

Am besten, Du verwendest ab jetzt die neue Version des Ziellande-Addons ab V 1.04.

Die Linien sind alle noch an der gleichen Stelle. Nur die Gelbe 0-Linie ist nicht mehr so breit.

 

Gruß Heinz

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...