WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Simulationen > Designer Forum

Designer Forum Treffpunkt für Gedankenaustausch von Simmern, die selbst

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 27.08.2003, 17:04   #11
Atze
Veteran
 
Registriert seit: 06.08.2002
Alter: 38
Beiträge: 363


Standard

Hallo.

Ich bin es noch mal. Ich habe jetzt versucht, die Oil Temperature statt der FS-Uhr anzeigen zu lassen. Ich habe einfach die Timer1 ersetzt durch Engine 1 Oil temperature. Was ist passier??? Klar, das was immer passiert... Fehlermeldung. Achja, in welcher Datei sind eigentlich die Offsets registriert??? Oder haben die damit nichts zu tun???


Danke im Vorraus.


mfg Atze.
____________________________________
Der Weg vom Pils

Liebe geht durch den Magen, Pils durch die Blase

Atze ist offline   Mit Zitat antworten
Alt 27.08.2003, 22:29   #12
bartels
Jr. Member
 
Registriert seit: 01.10.2002
Alter: 57
Beiträge: 90


Standard

Hä Timer? Alles mit Timer1 in dem Beispiel hat nichts mit dem FS Zugriff zu tun, es ist ein Timer im Programm der immer wieder aufgerufen wird.
Das Eigentliche ist wie schon gesagt der Zugriff auf FSUIPC_Read und FSUIPC_Process. Wie schon oben erwähnt ist der Offset für Oil Temp 08BA, also FSUIPC_Read(&H238,... durch FSUIPC_Read(&H8BA,... ersetzen, fertig. D.h. vermutlich müssen noch der Variablentyp, und ein paar Umrechnungen angepasst werden.
z.B. so was:

Private Sub Timer1_Timer()
Dim dwResult As Long
Dim uiPress As Long

' As an example of retrieving data, we will get the FS clock time.
' If we wanted additional reads/writes at the same time, we could put them here
If FSUIPC_Read(&H8BA, 2, VarPtr(uiPress), dwResult) Then
' "Read" proceeded without any problems
If FSUIPC_Process(dwResult) Then
' "Process" proceeded without any problems
lblClock.Caption = uiPress * 55# / 16384#

Else
' Unable to "Process"
lblClock.Caption = "Processing: " & ResultText(dwResult)
End If
Else
' Unable to "Read"
lblClock.Caption = "Reading: " & ResultText(dwResult)
End If
End Sub

Nur mal so zusammengehauhen. VB ist wie gesagt nicht ganz mein Metier.
Arne Bartels
bartels ist offline   Mit Zitat antworten
Alt 27.08.2003, 23:34   #13
Atze
Veteran
 
Registriert seit: 06.08.2002
Alter: 38
Beiträge: 363


Standard

Hallo.

Vielen Dank erstmal. Aber bei mir zeigt er einen Oilpressure von 21.9073und weite Stellen an. Ist das richtig muss man dann nochwas an den Formeln anpassen???


Danke im Vorraus.

mfg Atze.
____________________________________
Der Weg vom Pils

Liebe geht durch den Magen, Pils durch die Blase

Atze ist offline   Mit Zitat antworten
Alt 28.08.2003, 00:35   #14
bartels
Jr. Member
 
Registriert seit: 01.10.2002
Alter: 57
Beiträge: 90


Standard

Sieht relativ normal aus. Wenigstens sind in der FSUIPC Doku die Umrechnungsfaktoren häufig genug da, beim MS SDK ist das keine Selbstverständlichkeit, da ist man auf Nachdenken und Vergleichen mit anderen Intstrumenten angewiesen. Für den oilpress schreibt die FSUIPC sinngemäß :"16384 entspricht 55 psi", so kommt die Umrechnung zustande. Ansonsten schau doch einfach was andere Instrumente im selben Flugzeug so anzeigen.
Arne Bartels
bartels ist offline   Mit Zitat antworten
Alt 29.08.2003, 00:43   #15
Atze
Veteran
 
Registriert seit: 06.08.2002
Alter: 38
Beiträge: 363


Standard

Hallo.

Ich habe auch mal probiert, einfach eine andere Variable von FSUIPC dort einzusetzen, das war gleich wieder eine Fehlermeldung. Kannst Du mir sagen, woher Du weisst, wann man ein anderes Verfahren anwenden muss??? Also, ich hänge nochmal das von dir gemachte Beispiel an:

Private Sub Timer1_Timer()
Dim dwResult As Long
Dim uiPress As Long

' As an example of retrieving data, we will get the FS clock time.
' If we wanted additional reads/writes at the same time, we could put them here
If FSUIPC_Read(&H8BA, 2, VarPtr(uiPress), dwResult) Then
' "Read" proceeded without any problems
If FSUIPC_Process(dwResult) Then
' "Process" proceeded without any problems
lblClock.Caption = uiPress * 55# / 16384#

Else
' Unable to "Process"
lblClock.Caption = "Processing: " & ResultText(dwResult)
End If
Else
' Unable to "Read"
lblClock.Caption = "Reading: " & ResultText(dwResult)
End If
End Sub

Und hier das Standart-Beispiel mit der Uhr:

Private Sub Timer1_Timer()
Dim dwResult As Long
Dim auiTime() As Byte
ReDim auiTime(3)
' As an example of retrieving data, we will get the FS clock time.
' If we wanted additional reads/writes at the same time, we could put them here
If FSUIPC_Read(&H238, 3, VarPtr(auiTime(1)), dwResult) Then
' "Read" proceeded without any problems
If FSUIPC_Process(dwResult) Then
' "Process" proceeded without any problems
lblClock.Caption = Format(auiTime(1), "00") & ":" & _
Format(auiTime(2), "00") & ":" & _
Format(auiTime(3), "00")
Else
' Unable to "Process"
lblClock.Caption = "Processing: " & ResultText(dwResult)
End If
Else
' Unable to "Read"
lblClock.Caption = "Reading: " & ResultText(dwResult)
End If
End Sub


Da sind einfach ganz große Unterschiede. Ich meine ab If FSUIPC_Process(dwResult) Then... Das was danach kommt. Woher weiss ich, was ich da einsetzen muss??? Ansonsten erscheint mir FSUIPC-Programmierung einfacher, als Gauges programmieren.


Vielen Dank im Vorraus.

mfg Atze.
____________________________________
Der Weg vom Pils

Liebe geht durch den Magen, Pils durch die Blase

Atze ist offline   Mit Zitat antworten
Alt 29.08.2003, 08:11   #16
bartels
Jr. Member
 
Registriert seit: 01.10.2002
Alter: 57
Beiträge: 90


Standard

Ab FSUIPC_Result ist "lediglich" die Darstellung der Daten vorhanden. Die kann natürllich je nach Art der Daten unterschiedlich sein. Du willst ha nicht Öldruck im Stunden:Minuten:Sekunden Format darstellen. Ich hätte auch eine passende "Format()" Anweisung benutzen können, andereseits habe ich auch keine große Lust wegen einem Beispiel VB zu lernen.
Wie gesagt, aus dem "FSUIPC for Programmers" schnappt man sich Offset Variablengröße, Variablentyp und Umrechnungsfaktoren. Das weitere Drumherum ergiebt sich aus den Programmierregeln von VB die meines Wissens problemlosin der Hilfe nachzuschlagen sind.
Arne Bartels
bartels ist offline   Mit Zitat antworten
Alt 29.08.2003, 19:29   #17
harry3
Inventar
 
Registriert seit: 11.06.2001
Alter: 39
Beiträge: 2.397


harry3 eine Nachricht über ICQ schicken
Standard

Wie mir vorkommt, möchtest du dich mit FSUIPC mal vertraut machen.

Aber wenn es dir ums EICAS geht, so ist es wohl in normaler Gauge Form leichter zu lösen(obwohl ich von FSUIPC nix verstehe).

Denn mit ein paar String Anzeigen und drehbaren Teilen sollte es schon geschafft sein, egal ob C oder XML.



Viele Grüße,
Harri
harry3 ist offline   Mit Zitat antworten
Alt 29.08.2003, 19:32   #18
bartels
Jr. Member
 
Registriert seit: 01.10.2002
Alter: 57
Beiträge: 90


Standard

Hier nochmal ein Beispielcode mit einem Format mit zwei Nachkommastellen.
Im übrigen hat Harri natürlich recht, ein Gauge ist schneller in XML oder C zu machen, als erst in VB rein und dann wieder zurück.
Arne Bartels
bartels ist offline   Mit Zitat antworten
Alt 31.08.2003, 01:06   #19
Atze
Veteran
 
Registriert seit: 06.08.2002
Alter: 38
Beiträge: 363


Standard

Hallo.

Naja, aber ich finde, also von den Beispielen her, dass FSUIPC-Schnittstellenprogrammierung einfacher ist, als Gauges-programmieren. Ausserdem will ich das auch lernen, weil ich vor habe, wenn ich in der Ausbildung bin, wird aber noch 1-2 Jahre dauern, mir dann ein Homecockpit zu bauen, da das Preis-Leistungsverhältniss von Project Magenta meiner Meinung nich soo toll ist, wenn man alles haben will, is man ja schon fast 500€ los, und das möchte ich halt nicht unterstützen. Naja, dass waren halt mal so meine Gedanken.


mfg Atze.
____________________________________
Der Weg vom Pils

Liebe geht durch den Magen, Pils durch die Blase

Atze ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist an.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:29 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag