LockON Info G15 @X52Pro MFD
Moderator: JaBoG32 Stab
- JaBoG32_Prinzartus
- Senior Member
- Beiträge: 1418
- Registriert: 14. Mai 2004, 23:29
LockON Info G15 @X52Pro MFD
Das export-script finde ich interessant. Könnte man da die exportierten Daten nicht , statt am G15 Keyboard, am X52 Pro MFD anzeigen lassen?
Vor allem der momentane Spritverbrauch und die Restreichweitenberechung tät mich brennend interessieren !!
EDIT:
So wie es aussieht bietet das script die TAS und die FUEL LOAD STATES (internal, external) an.
Sowas wie einen gegenwärtigen Spritverbrauch pro Zeit bzw. pro Entfernung sehe ich aber nicht; @BALU: Ich vermute das ganze machst du dann alles in der Appliation mit Berechnungsformeln, oder?
Wie gesagt. Mir würde es gefallen diese Info am HOTAS MFD anzeigen zu können. Und das Display (MFD) ist beim x52 pro ja angeblich programmierbar, könntest du sowas auch machen Balu?
Vor allem der momentane Spritverbrauch und die Restreichweitenberechung tät mich brennend interessieren !!
EDIT:
So wie es aussieht bietet das script die TAS und die FUEL LOAD STATES (internal, external) an.
Sowas wie einen gegenwärtigen Spritverbrauch pro Zeit bzw. pro Entfernung sehe ich aber nicht; @BALU: Ich vermute das ganze machst du dann alles in der Appliation mit Berechnungsformeln, oder?
Wie gesagt. Mir würde es gefallen diese Info am HOTAS MFD anzeigen zu können. Und das Display (MFD) ist beim x52 pro ja angeblich programmierbar, könntest du sowas auch machen Balu?
Zuletzt geändert von JaBoG32_Prinzartus am 19. Sep 2007, 20:22, insgesamt 2-mal geändert.
- JaBoG32_Prinzartus
- Senior Member
- Beiträge: 1418
- Registriert: 14. Mai 2004, 23:29
Hi Prinz
Das einfache: Das Export-Script liegt dem Download bei.
Jetzt wird es komplizierter:
Spritverbrauch: Ich merke mir im Programm die letzten drei Treibstoffmengen alle 500ms und bilde daraus die Differenz für den Verbrauch pro Sekunde. Das dann hochgerechnet auf eine Minute ergibt den angezeigten "wahrscheinlichen" Verbrauch pro Minute.
Mit Restreichweitenberechung schätze ich mal meinst du jetzt die Bingo-Fuel Berechnung. Die hat derzeit noch einen Pferdfuß, da sie mit TAS berechnet wird. In ihrer unermesslichen Weißheit haben die Russen wohl vergessen den Groundspeed oder die Winddaten zu exportieren, oder ich habs einfach noch nicht herausgefunden wie das gehen soll.
Zur Berechnung der Distanz mußt du im Programm den Zielflughafen auswählen, was ja auch noch über einen Button des Joysticks möglich sein sollte. Dort müssen die Längen- und Breitengrade des Flughafens bekannt sein. Der Längen- und Breitengrad deiner Position wird exportiert. Das sind die Werte "lat" und "lon" im dem Export-String.
Meine Berechnung geht dabei wie folgt vor (sorry wenn es Delphi/Pascal ist):
km_NM = 1.8520042802
Lat1Rad := Lat1 * Pi / 180;
Lng1Rad := Lng1 * Pi / 180;
Lat2Rad := Lat2 * Pi / 180;
Lng2Rad := Lng2 * Pi / 180;
Diff1 := lat1rad - lat2rad;
Diff2 := Lng1rad - Lng2rad;
A1 := power(sin(Diff1/2), 2);
A2 := power(sin(Diff2/2), 2);
x := Sqrt(A1 + Cos(lat1rad)*Cos(lat2rad)*A2) ;
DistanceRad := 2*2*arctan(x/(1+Sqrt(1-x*x)));
Distance := DistanceRad * 180 * 60 / Pi;
Distance := Distance * km_NM * 1000;
Somit weißt du nun in Metern, wie weit du noch vom Flughafen entfernt bist. Als Zielkoordinaten habe ich immer den Mittelpunkt der Runway und nicht den Return Point gewählt. Somit kommt es im Flug natürlich zu Abweichungen zu den Angaben der ILS-Werte im HUD.
Da der Groundspeed und auch der Wind nicht zur Verfügung stehen habe ich den TAS [m/s] genommen und damit meine Flugzeit und über den Treibstoffverbrauch pro Minute die benötigte Menge ausgerechnet. Sicherheitshalber wurden dann noch 10% auf die Menge aufgeschlagen und für das metrische System in 50kg Schritten aufgerundet. Entsprechend für das imperiale in 100lb Schritten. Wegen dem TAS und bei heftigem Gegenwind/Rückenwind kann es deshalb zu Abweichungen kommen.
Jetzt aber mal ne Gegenfrage. Hat der X52Pro eine Schnittstelle, die man per IP-Verbindung ansprechen kann?
Das einfache: Das Export-Script liegt dem Download bei.
Jetzt wird es komplizierter:
Spritverbrauch: Ich merke mir im Programm die letzten drei Treibstoffmengen alle 500ms und bilde daraus die Differenz für den Verbrauch pro Sekunde. Das dann hochgerechnet auf eine Minute ergibt den angezeigten "wahrscheinlichen" Verbrauch pro Minute.
Mit Restreichweitenberechung schätze ich mal meinst du jetzt die Bingo-Fuel Berechnung. Die hat derzeit noch einen Pferdfuß, da sie mit TAS berechnet wird. In ihrer unermesslichen Weißheit haben die Russen wohl vergessen den Groundspeed oder die Winddaten zu exportieren, oder ich habs einfach noch nicht herausgefunden wie das gehen soll.
Zur Berechnung der Distanz mußt du im Programm den Zielflughafen auswählen, was ja auch noch über einen Button des Joysticks möglich sein sollte. Dort müssen die Längen- und Breitengrade des Flughafens bekannt sein. Der Längen- und Breitengrad deiner Position wird exportiert. Das sind die Werte "lat" und "lon" im dem Export-String.
Meine Berechnung geht dabei wie folgt vor (sorry wenn es Delphi/Pascal ist):
km_NM = 1.8520042802
Lat1Rad := Lat1 * Pi / 180;
Lng1Rad := Lng1 * Pi / 180;
Lat2Rad := Lat2 * Pi / 180;
Lng2Rad := Lng2 * Pi / 180;
Diff1 := lat1rad - lat2rad;
Diff2 := Lng1rad - Lng2rad;
A1 := power(sin(Diff1/2), 2);
A2 := power(sin(Diff2/2), 2);
x := Sqrt(A1 + Cos(lat1rad)*Cos(lat2rad)*A2) ;
DistanceRad := 2*2*arctan(x/(1+Sqrt(1-x*x)));
Distance := DistanceRad * 180 * 60 / Pi;
Distance := Distance * km_NM * 1000;
Somit weißt du nun in Metern, wie weit du noch vom Flughafen entfernt bist. Als Zielkoordinaten habe ich immer den Mittelpunkt der Runway und nicht den Return Point gewählt. Somit kommt es im Flug natürlich zu Abweichungen zu den Angaben der ILS-Werte im HUD.
Da der Groundspeed und auch der Wind nicht zur Verfügung stehen habe ich den TAS [m/s] genommen und damit meine Flugzeit und über den Treibstoffverbrauch pro Minute die benötigte Menge ausgerechnet. Sicherheitshalber wurden dann noch 10% auf die Menge aufgeschlagen und für das metrische System in 50kg Schritten aufgerundet. Entsprechend für das imperiale in 100lb Schritten. Wegen dem TAS und bei heftigem Gegenwind/Rückenwind kann es deshalb zu Abweichungen kommen.
Jetzt aber mal ne Gegenfrage. Hat der X52Pro eine Schnittstelle, die man per IP-Verbindung ansprechen kann?
- JaBoG32_Prinzartus
- Senior Member
- Beiträge: 1418
- Registriert: 14. Mai 2004, 23:29
IP Verbindung?!
Sprichst du mit localhost:7070 dein G15-Display an?!
Ich weiß das ehrlich gesagt nicht, ich denke aber, da beide Systeme von Saitek sin sollten die Schnittstellen ähnlich verwendbar sein. Aber wie gesagt, ganz verstanden hab ich das mit der IP-Verbindung noch nicht...
Hab soeben nachgesehen. Sieht aus als wäre das X52Pro MFD eher über DirectOutput ansteuerbar.
Sprichst du mit localhost:7070 dein G15-Display an?!
Ich weiß das ehrlich gesagt nicht, ich denke aber, da beide Systeme von Saitek sin sollten die Schnittstellen ähnlich verwendbar sein. Aber wie gesagt, ganz verstanden hab ich das mit der IP-Verbindung noch nicht...

Hab soeben nachgesehen. Sieht aus als wäre das X52Pro MFD eher über DirectOutput ansteuerbar.
Das Display wird nicht direkt über den Export von LockOn angesprochen. Anstelle des LCD Managers für die "Logitech" Tastatur läuft jetzt mein Programm und nimmt die Daten von LockOn auf dem Port 7070 entgegen. Logitech hat eine LIB für C/C++* herausgegeben, die Delphifreak für Delphi umgeschrieben hat. Diese DLL nutzt ich, um die Tastatureingaben abzufragen und Tastaturanzeige selber direkt anzusprechen.
* C und C++ liebe ich genauso wie diese russichen Kisten, in denen ich mich nie wohlfühle.
* C und C++ liebe ich genauso wie diese russichen Kisten, in denen ich mich nie wohlfühle.
- JaBoG32_Prinzartus
- Senior Member
- Beiträge: 1418
- Registriert: 14. Mai 2004, 23:29
Ich besorg mir mal eine Entwicklungsumgebung und versuche dann mal mit den mitgelieferten Demoprogrammen was zu bauen. Mal sehen. Danke erstmal für die Formeln. mal schauen ob ich was aufs Display zaubern kann.
EDITED: Konnte soeben durch Modifikation des "HelloWorld" Examples von Saitek. Schon was am Display asugeben.
@Balu: Nun meine Frage, wenn das lua_export script installiert ist und Lock-On läuft, wie kann ich dann in meinem Programm die variable des Exports scripts verwenden? (Also z.B. "_lat" aus dem script?)
EDITED: Konnte soeben durch Modifikation des "HelloWorld" Examples von Saitek. Schon was am Display asugeben.
@Balu: Nun meine Frage, wenn das lua_export script installiert ist und Lock-On läuft, wie kann ich dann in meinem Programm die variable des Exports scripts verwenden? (Also z.B. "_lat" aus dem script?)
Sorry Prinz, hab den Post jetzt erst wieder geehen.
Vielleicht hast du ja auch schon ein Lösung gefunden. Trotzdem hier nur kurze Info zum zerlegen der Daten:
Die Daten kommen ja in einer Zeichenkette an. Nun musst du nach "_lat" und "_lon" suchen. Nach dem Gleichheitszeichen folgen die jeweiligen Daten und sind mit einem ";" zum nächsten Datenwert und Kennung abgegrenzt. Wenn du für dein Tool einen übersichtlicheren exportierten Daten-String brauchst, müßtest du auch mit folgendem String hinkommen: "src=export.lua;tas=%f;lat=%f;lon=%f;\r\n",_tas,_lat,_lon"

Vielleicht hast du ja auch schon ein Lösung gefunden. Trotzdem hier nur kurze Info zum zerlegen der Daten:
Die Daten kommen ja in einer Zeichenkette an. Nun musst du nach "_lat" und "_lon" suchen. Nach dem Gleichheitszeichen folgen die jeweiligen Daten und sind mit einem ";" zum nächsten Datenwert und Kennung abgegrenzt. Wenn du für dein Tool einen übersichtlicheren exportierten Daten-String brauchst, müßtest du auch mit folgendem String hinkommen: "src=export.lua;tas=%f;lat=%f;lon=%f;\r\n",_tas,_lat,_lon"