A Simulator for Autonomous Ground Vehicles
The MAVS gui is based on Python3 with Tkinter. You will need to install python on your Windows/Linux system for the GUI to work.
Additionally, there is a separate GUI for viewing MAVS materials.
Once MAVS is built and installed, the Mavs gui is launched from the command line.
In Windows, the GUI is launched with the command
> /path_to_mavs_build/bin/mavs_gui.cmd
Alternatively, you can create a Desktop shortcut to /mavs/build/bin/mavs_gui, then simply double click the shortcut icon.
In Linux, the GUI is launched with the command
> /path_to_mavs_build/bin/mavs_gui.sh
All widgets and fields on the GUI are equipped with tooltips. Just hover your mouse pointer over a widget or field to get a tip about what it does. When the GUI is launched, you will see the following screen
To load a simulation, go to Simulation->Load Simulation and select the file to load from the MAVS sensor_sims directory. When a simulation is loaded, a list of sensors will appear in the sensor listbox.
To start the simulation, click the Start Simulation button. The vehicle will appear in the simulation window. A view of the initial screen of the halo_ncap_sim.json is shown below.
The GUI provides access to the following components
By default, the vehicle is driven with the WASD keys. To have the vehicle automatically follow the loaded waypoints, uncheck Simulation->Keyboard Vehicle Control.
To edit a sensor, double click an entry in the sensor listbox, and a window allowing you to edit the properties of the sensor such as the offset and update rate will appear. The simulation will pause until you are done editing. When you are finished editing, click Done
To activate a sensor or save sensor data, highlight the sensor with the left mouse button, then right-click the highlighted sensor. A menu of save options will appear. Note that the entries in the listbox are colored according to their state.
To add a sensor, select Sensors->Add Sensor->Add sensor_type. You will be prompted to select from a list of available sensors for each type. Once you’ve made your selection, click Done and the sensor will be added.
To delete a sensor, highlight the sensor you want to remove and press the “Delete” key.
To choose the location where sensor data will be saved, select Simulation->Set Output Directory and choose the directory.
To load a new scene, select Edit->Load->Load New Scene and select a scene from the MAVS scenes directory.
To load a new vehicle, select Edit->Load->Load New Vehicle and select a vehicle dynamics model from the MAVS vehicles/rp3d_vehicles directory.
To load a new set of wayoints, select Edit->Load->Load New Scene and select a waypoints file from the MAVS waypoints directory. Note that the input waypoints must be in .vprp format.
The controller, environment, and waypoints can all be edited dynamically through the Edit->Edit menu. A popup window will appear. Editing the waypoints and controller will automatically pause the simulation, while editing environment properties is done while the simulation continues to run.
Additional information about the simulation state, including the timing information of different components, can be accessed through the Edit->Display menu.
After editing a simulation, a new simulation can be saved by selecting Simulation->Save Simulation. Simulations will be placed in the MAVS sims/sensor_sims folder by default, although you can save them anywhere and still load it for future use.