13.07.2015 Views

An Integrated, Modular Simulation System for Education ... - Cal Poly

An Integrated, Modular Simulation System for Education ... - Cal Poly

An Integrated, Modular Simulation System for Education ... - Cal Poly

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Figure 11 BYOFS Original ScreenFigure 12 Snoopy Screenc++, so the integrators were recoded in c++. The simulator was modified by removing theoriginal equations of motion as well as all unused game code. Two setup files wereincluded to store the calibration <strong>for</strong> the game joysticks and to store the springing anddamping ratios <strong>for</strong> the numerical integrators. The graphics were simplified to increase thescreen display area and simulate a simple Heads up Display (HUD) (Figures 11 & 12).The new integrators were added to the simulators existing classes and the code modifiedto provide input to the integrators. The output from the integrators was sent to the baseclass while a linear airspeed was hard wired . State in<strong>for</strong>mation was output to thegraphics and Heads Up Display. A second version of the code was modified by removingthe game joystick classes then combining graphics and equations of motion classes intothe stick and instrument classes in the PhEagle I c++ code. Modifications were thenmade to the timing classes to change from a floating time scheme where the integrationtime step is estimated from the length of the previous computational cycle to a fixed timestep were the length of the frame is hard coded and all of the computations must becompleted be<strong>for</strong>e the end of the frame. A fixed time scheme always involves unusedCPU time while the program waits to be released to the graphics. A fixed time step isrequired to guarantee a smooth, accurate and consistent visual simulation.26

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!