WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Home Cockpit - Das Forum für die "Bastler" (http://www.wcm.at/forum/forumdisplay.php?f=55)
-   -   Zugriff auf Cockpit-Hardware aus Borland Delphi (http://www.wcm.at/forum/showthread.php?t=113334)

bvl 26.10.2003 01:57

Zugriff auf Cockpit-Hardware aus Borland Delphi
 
Hallo zusammen,
ich plane, mir ein Cockpit einer 767 zu bauen.
Ich habe schon einige Systeme mit Borland Delphi, meiner bevorzugten Programmiersprache, entwickelt.
Die Verbindung Software <-> Flusi funktioniert auch wunderbar.
Jetzt brauche ich noch eine Verbindung Software <-> Hardware.

Hier suche ich was "einfaches". Sprich, am besten irgendwas, wo alles (sprich jeder Schalter, jede Lampe etc) eine Nummer hat, mittels derer ich dann den Zustand des Bauteils abfragen / setzen kann.

Wenn ich recht verstanden habe, kann ich, wenn ich FSBUS benutze, nicht von meiner eigenen Software aus darauf zugreifen. Liege ich da richtig?

Bodo

dirkan 26.10.2003 09:12

Hallo Bodo,

im Download des FSBUS findest du auch die Beschreibung des Protokolls zwischen PC Software und den Controllers. Wenn du die in deinem Programm einhältst, geht es.


Gruss Dirk

Kisslinger 26.10.2003 12:50

Systeme
 
Hallo,

ich denke schon seit einiger Zeit daran ebenfalls diverse Systeme mit einem externen Programm nachzubilden. Leider bin ich nicht der große Programmier-kenner. Kannst Du mir vielleicht einige Tipps dazu geben oder etwas von deinen Systemen schildern.

Wäre super.

viele Grüße aus Österreich

Günther

bvl 26.10.2003 17:08

Hi Dirk und Günter,
Dirk, danke für den Hinweis, da muss ich nochmal genau in die FSBUS-Doku schauen...

Günter, was willst du denn implementieren, welche Sprache benutzt du, weisst du was Objektorientierung ist und welche Hardware / Softwarearchitektur du zu verwenden gedenkst? Ich weiss ja nicht wie dein Status quo aussieht, daher kann ich so ohne weiteres nur wenig dazu sagen.
Ich habe jedenfalls einen objektorientieren Ansatz gewählt und das Model-View-Controller-Prinzip genutzt. So ist bei mir z.B. jeder einzelne Bus, Bleed Air Systeme, die APU, das Fahrwerk, die Klappen, das Fuel Jettison System, Treibstoffpumpen etc. ein einzelnes Objekt. Diese Objekte lasse ich dann miteinander kommunizieren (z.B. "fragt" das APU-Objekt den entsprechenden Bus ab, ob genug Saft da ist und umgekehrt...). Jedes Objekt an sich hat eine zugeordnetes Objekt (Controller) und einen zugeordnetes Objekt "view". Das ermöglicht mir, die ganze Funktionalität mit Maus oder Tastatur zu steuern und die Anzeigen auf dem Monitor darzustellen. Wenn ich dann nachher auf andere Hardware umsteige, muss ich also nur noch das View-Objekt und das Controller-Objekt austauschen. Das Model bleibt gleich.

Sprich: Für jede zu beachtende "physikalische Einheit" im Flugzeug mache ich eine Klasse (mit einem oder meheren Objekten, wenn die Einheit mehrfach vorhanden ist).

Hope this helps,
Melde dich doch einfach mal per Email: bodovanlaak@hotmail.com

philharmony 27.10.2003 12:27

Ok, das is ne geile idee, ich hab mir bis jetzt immer überlegt, für jedes system (hydraulik, bleedair usw) ein eigenes program zu benötigen...wo hast du die leistungsdaten der teile her (pumpen, ventile usw) oder sind die nach gutdünken dimensioniert?
grüssle Phil

bvl 28.10.2003 01:10

Hi,
die exakten Daten sind häufig relativ irrelevant. Pumpe läuft, oder Pumpe läuft nicht, Pumpe läuft aber nur unter der Vorraussetzung dass bestimmte Attribute anderer Objekte bestimmte Werte haben (z.B. LEFT AUX BUS liegt einen Spannung an o.ä.).

Diese Logik ist immer mein Grundgerüst. Wenn ich dann weitere technische Details erfahre (manchmal ist das ganz schön, ist aber nicht immer notwendig), baue ich die nach und nach ein. Wenn ich z.B. irgendwann rauskriege, dass die Pumpe mindestens X Volt braucht, dann kann ich das ja - ist ja Objektorientiert - ganz easy einbauen. So lerne ich dann nach und nach mehr über das Flugzeug, bzw. baue neues Wissen sukzessive in das System ein. Ich dokumentiere allerdings zu allem was implementiere ein paar Fragen, so dass ich dann ab und an mal durchstöbern und gezielt nach Informationen suchen kann, die meine Simulation exakter machen.

Wenn es doch mal nicht ohne genauere Details geht, z.B. wieviel Bar pressluft was braucht, dann schätze ich das erstmal mehr oder weniger nach gutdünken ab, und lasse meine Objekte diese Werte aus einer INI-Datei lesen, damit ich die später leicht ändern kann, ohne eine fertige Klasse / ein fertiges Objekt nochmal anfassen zu müssen, was ja immer fehleranfällig ist.

Bezugsquelle für die ganzen Systeminformationen sind für mich meistens Webseiten. Aber ich wollte mir demnächst auch mal ein paar Handbücher besorgen (insbesondere solche Reparatur- und Wartungshandbücher).... ich habe da mal eine Quelle im Internet gesehen. Muss ich aber dann nochmal suchen.


Bodo


Alle Zeitangaben in WEZ +2. Es ist jetzt 02:35 Uhr.

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