Fr/High-Level Architecture: Difference between revisions

Jump to navigation Jump to search
Traduction partielle
(Traduction partielle)
(Traduction partielle)
Line 33: Line 33:
==Conception==
==Conception==


The planned overall design is as follows:
La conception globale entrevue est la suivante :
* We intend to use OpenRTI as the underlying RTI.  This is an open source IEEE 1516 standard RTI, written by Mathias Fröhlich and available from https://sourceforge.net/projects/openrti/.
* Mathias has also written an open source toolkit to act as an interface library, with a working name of SimKit.  This sits on top of the RTI and simplifies interfacing with the RTI massively.  It also has excellent Python integration, making it very easy to write scripted Federates. It's available from: https://sourceforge.net/projects/sim-kit/


Using [[SimKit]], the integration point is within the FlightGear code (rather than SimGear), in particular the code under $FG_SRC/Network/HLA.
* Intention d'utiliser OpenRTI comme RTI sous-jacent. Il s'agit d'un RTI standard IEEE 1516 open source, écrit par Mathias Fröhlich et disponible sur https://sourceforge.net/projects/openrti/.
* Mathias a également développé une boîte à outils open source pour agir comme une bibliothèque d'interface, avec pour nom de code [[SimKit]]. Cela se trouve au-dessus du RTI et simplifie grandement l'interfaçage avec le RTI. L'intégration Python est également excellente , ce qui facilite l'écriture de scripts pour les modules fédérés. Simkit est disponible sur : https://sourceforge.net/projects/sim-kit/


==Federate Object Model==
En utilisant SimKit, le point d'intégration se trouve dans le code FlightGear au lieu de  [[SimGear]]), en particulier le code se trouvant dans $FG_SRC/Network/HLA.
==Federate Object Model (FOM)==


A key part of the design is writing the Federation Object Model (FOM), which defines the objects and updates that are published by the RTI.  While it might at first glance seem a good idea to use the FOM to share the internal property tree across multiple federates, this is probably the wrong way to use HLA as the granularity is too low <ref>https://sourceforge.net/p/flightgear/mailman/message/34795859/</ref><ref>https://sourceforge.net/p/flightgear/mailman/message/34803436/</ref><ref>https://sourceforge.net/p/flightgear/mailman/message/34794675/</ref> and it's likely to lead to synchonization issues. Instead, we'll need to make explicit decisions about the data models to communicate.
A key part of the design is writing the Federation Object Model (FOM), which defines the objects and updates that are published by the RTI.  While it might at first glance seem a good idea to use the FOM to share the internal property tree across multiple federates, this is probably the wrong way to use HLA as the granularity is too low <ref>https://sourceforge.net/p/flightgear/mailman/message/34795859/</ref><ref>https://sourceforge.net/p/flightgear/mailman/message/34803436/</ref><ref>https://sourceforge.net/p/flightgear/mailman/message/34794675/</ref> and it's likely to lead to synchonization issues. Instead, we'll need to make explicit decisions about the data models to communicate.
Line 74: Line 74:
{{Appendix}}
{{Appendix}}


==Federates==
==Modules fédérés==


Federates can be written in most languages, but SimKit provides very good hooks for writing them in C++ and Python.
Federates can be written in most languages, but SimKit provides very good hooks for writing them in C++ and Python.
Line 90: Line 90:
   }}</ref>
   }}</ref>


==Current Status ==
==Statut actuel ==
Last updated: (10/2022)
Last updated: (10/2022)


Line 144: Line 144:
<references/>
<references/>


== Related ==
== A ce peopos ==
For additional information, please see:
For additional information, please see:
* [[Technical_Reports#A_New_Architecture_for_FlightGear_Flight_Simulator]]
* [[Technical_Reports#A_New_Architecture_for_FlightGear_Flight_Simulator]]
Line 153: Line 153:
* [[Distributed Interactive Simulation]] (DIS specific review of the FlightGear multiplayer system/protocol and its limitations, which can be addressed via HLA)
* [[Distributed Interactive Simulation]] (DIS specific review of the FlightGear multiplayer system/protocol and its limitations, which can be addressed via HLA)


== External links ==
== Liens externes ==
* {{wikipedia|High-level architecture (simulation)}} on Wikipedia
* {{wikipedia|High-level architecture (simulation)}} on Wikipedia


742

edits

Navigation menu