Implementing VNAV support in FlightGear: Difference between revisions

Jump to navigation Jump to search
No edit summary
Line 5: Line 5:


== Problem ==
== Problem ==
In comparison with other flight simulators, FlightGear has been lacking support for simulating VNAV features found on many modern aircraft.  
In comparison with other flight simulators, FlightGear has been lacking support for simulating VNAV features found on many modern aircraft since day one.
So far, the general consensus has been that it simply isn't yet possible in FlightGear to properly implement VNAV because VNAV depends on having access to a performance database to provide the proper pitch/thrust changes to make certain altitude/speed constraints,  which boils down to a lack of support by the FDMs (JSBsim/YaSim) actually.  
So far, the general consensus has been that it simply isn't yet possible in FlightGear to properly implement VNAV because VNAV depends on having access to a performance database to provide the proper pitch/thrust changes to make certain altitude/speed constraints,  which boils down to a lack of support by the FDMs (JSBsim/YaSim) actually.  


As an open source project, we do not have access to the corresponding  flight data or performance database, and even if we did, we probably couldn't easily use said data due to its proprietary nature. In addition, a real performance database would probably not serve us too well, because our FDM configurationos are custom, too - thus, a performance DB would ideally be provided by the FDM itself. Either in a pre-created fashion, i.e. compiled during an offline "test fligth", or preferably at runtime by running a simulation of the FDM inside the actual FDM.
As an open source project, we do not have access to the corresponding  flight data or such a performance database, and even if we did, we probably couldn't easily use said data due to its proprietary nature.  
 
In addition, a real performance database would probably not serve us too well, because our FDM configurations are custom, too - i.e. the performance database would need to  match the performance of the simulated aircraft.
 
Thus, a performance DB would ideally be provided by the FDM itself. Either in a pre-created fashion, i.e. compiled during an offline "test fligth", or preferably at runtime by running a simulation of the FDM inside the actual FDM.


It is one of those "holy grails" in FlightGear, I am not aware of any aircraft that currently support a proper FMC/CDU "progress" page - creating the page is trivial, but making it functional requires some more work - look for threads with the keywords "performance database", and you'll see that this has been talked about for over half a decade meanwhile. (computing remaining fuel vs. fuel consumption per hour is fairly trivial, but once you want to compute range, you need to be fully aware of the flight plan (speeds, altitudes) and weather/configuration (and aircraft/engine performance in particular) to make a reasonable guess at remaining range).
It is one of those "holy grails" in FlightGear, I am not aware of any aircraft that currently support a proper FMC/CDU "progress" page - creating the page is trivial, but making it functional requires some more work - look for threads with the keywords "performance database", and you'll see that this has been talked about for over half a decade meanwhile. (computing remaining fuel vs. fuel consumption per hour is fairly trivial, but once you want to compute range, you need to be fully aware of the flight plan (speeds, altitudes) and weather/configuration (and aircraft/engine performance in particular) to make a reasonable guess at remaining range).
Line 21: Line 26:
The 3rd party approach is being used for TPPs data, but in the case of FDMs, we would need 100% accurate FDMs, too - so it would be better to directly use the FDM for computing a performance DB.
The 3rd party approach is being used for TPPs data, but in the case of FDMs, we would need 100% accurate FDMs, too - so it would be better to directly use the FDM for computing a performance DB.
Supporting VNAV/LNAV still is tricky for other reasons, and currently not on anybody's agenda - it's not just something that can/should be tackled by a single aircraft developer, it requires lower-level changes in FlightGear's architecture and the way FDMs are used.
Supporting VNAV/LNAV still is tricky for other reasons, and currently not on anybody's agenda - it's not just something that can/should be tackled by a single aircraft developer, it requires lower-level changes in FlightGear's architecture and the way FDMs are used.


== Objective ==
== Objective ==

Navigation menu