Interfacing II
Home
Up

Software interfacing via parameter extraction from flight simulator program

After I moved to Holland in 2003, I've started to use FS2004. This program allows parameter extraction. 

Based on Jim's motion brilliant software interface, see  http://www.jimspage.co.nz/intro.html I now have some idea how something like this would work:


A possible software/hardware interface can look like the above: An add-on program that  enables you to select the required parameters from the flightsim, and send these via a com port link to another PC. How fast the update speed needs to be depends on your motion platform requirements. The update speed for the more dynamic movements to drive the platform, like landing gear bumps, buffering, turbulence, etc. needs to be in the order of 50msec to achieve  a signal bandwidth of around 10Hz or so. For simulating the somewhat slower aircraft attitude variations, Com port with update speed of 0.2 sec would be OK. 

A program on the 2nd PC receives the various parameters. The big advantage of having a second (receiving) PC is that you can do manipulations like gain control, differentiation, mixing and limiting with the different parameters. Then the results can be send to the parallel port, where 2, 3 or 4 D/A converters translate the digital signals into varying DC voltage for the different motor drives.
Isolation can be achieved via fast  opto-couplers between Parallel port outputs and DAC board. Later I found that isolation is not really needed, when taking care that the power electronics do not transfer any noise to the small signal DAC section
 

The Data Extraction part
The parameters that you would need for driving the platform are the accelerations that act on the aircraft during flight. In the FSUIPC SDK there are 6 parameters available that contain the right data:

Unfortunately so far I have not found any add-on programs that allows you to select these parameters and send them over a Com port to a second PC.

I have experimented with two programs that enable you to get some parameter extraction from flightsim: CHcomm and Portdrvr.
Thanks to Jim, Claude Hanssens, Peter Dowson and Erich Leonhard, CHcomm can now be downloaded at www.flightsim.com . In the files library, do a search for the filename chcomm3a.zip
Jim has written very clear instructions on how to setup CHcomm and how to check the Com link between the main flightsim PC and receiving PC. CHcomm works together FSUIPC, and you can select various flightsim parameters, like pitch, bank, heading and vertical speed. These 4 would be of interest for driving a motion platform. I have done experiments with pitch and roll. One disadvantage of CHcomm is the rather slow update speed: 200msec between each reading.

Another great utility written by Keith Daniel is Portdrvr.  It can also be downloaded at www.flightsim.com . In the files library, do a search for the filename portdrvr.zip. Portdrvr is a nifty gauge module that is added to the FS gauge folder. According to Keith, it also works in Combat FS. In order to make it work you have to add a line to the panel.cfg file (for each aircraft) which is in your aircraft panel folder. The gauge module will then send pitch, bank and some indicators info to the Com port in a very speedy manner. I measured update speeds of 45msec. The data is in hex format, but can be easily read and decoded, similar to CHcomm data.

There is now a new Portdrvr utility available, which outputs much more data, pretty much everything that is needed for driving a motion platform. Courtesy of Keith Daniel it can be found here.
See also Portdrvr Utility page.

Back Next