Full-Speed Simulator Meeting 18 March 2015 Project Labor Budget Remaining: 69% Definition of terms: * Phase I - Faster-than-real-time simulation that retains the current separate processes and is done with event-callbacks. * Phase II - The big three (Nav, Layered, Dynamic) are moved into a single process. This process also contains the simulator during simulations. ********Progress: * Rich: Fixed a bug with simulator time initialization. * Rob: Running some wall-following sims with the new code. *******Decisions: * Expend the effort to make the event-callback version on our branch flyable? Tag it and be ready for a merge? YES * Have flags -fastsim and -sim that run the simulator fast and real-time, respectively? YES * Expend the effort to get TRN working in Phase I, before starting Phase II? YES * Merge Phase I before we have fast TRN? ********Next Tasks: * Rich: Add code so that absence of the -bisim argument causes the code to run for flight. * Rich/Rob: Debug "interrupted function call" problem. * Rob: Try to speed up the 13-40x by increasing VM RAM. * Rob: Merge the CVS head into the FastSim branch. The objective is to keep the branch up to date so that the eventual merge back into the head will take minimum effort. * Rich/Rob: (Optional for now) Create a triggered version of TerrainAidDriver. Get TRN to run in the fast simulation. * Rich: (Phase II) Massage the big three GNC tasks into a single task that runs real-time for flight, fast for simulation. * Rob: Download xcode and get CVS running on the Mac. Checkout the code tree. * Rob: Get the Qnx Vm to share memory with the Mac. If this works, I can checkout the code tree from CVS on the Mac, then compile it with the Qnx vm. * Rob: Review the difference between the -bisim and -sim arguments. Merge them if possible. * Rob: Assist Rich where possible. * Kent: (If time permits) Come up to speed on the code. Rob will help. * Kent: (If time permits) Run a sim. Rob will help. * Hans: (If time permits) Provide example code showing how to link the GNC process with the simulated sensor IFs and the simulator to create a single process for simulation. The GNC code is unchanged between flight and simulation. *******Last Meeting: Rich: millisleep(2) is between the end of the simulation and the time increment and start of Navigation. Ticksize of 5 or 10 then sets the sleep time because it's greater. Kent: Do we need Jira? Possibly. Rob: Yes, let's make the branch flyable, tag it, meet with Hans, and merge with the head. To merge our branch with the head we need to: * Finish code that triggers Nav on real-time versus sim completion. * Down-merge the ongoing head development first. * Review changes with Hans and make a test plan. * Possibly piggy back a sea-trial. Rich: The qnx VM compiles much faster than mvc-bi, but simulates slower than mvc-bi. Kent: The VM may be slower due to the amount of system resources such as allocated RAM and processor cores. Increase this? ******Overall Objectives: 1. Qnx Vm (Rob) (DONE) -Desktop -Laptop 2. Synchronize Layered Control(Rich) (DONE) -Done using event call backs. 3. Non blocking operation (Rich, Rob, Kent, Hans) -First pass using event callbacks. -Second pass moves GNC processes into a single process. 4. TRN Integration (Rich, Rob) 5. Testing and Validation (Rob) ********Meeting Notes: Rich proposing to slow down fast sim and running TRN as fast as possible.