Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.


Selecting a Simulation Environment: Gazebo vs. USARSim

  • Aaron Mosher
    Aaron Mosher

    Hi All,

    I am currently trying to select the best simulation environment for multi-agent autonomy studies and platform testing, and wanted to hear either general or specific comments on how USARSim compares to other alternatives such as Gazebo, Breve, Webots, etc…

    A little background:

    My current application is simulating the behavior and performance of Micro-Autonomous Systems and Technology (MAST) for Military/Surveillance applications (think Quad-copters and crawlers used to help soldiers in Black Hawk Down). At first, we will focus on vehicle-level performance such as dynamic behavior/stability, sensor integration, and hardware in-the-loop testing. However, we would eventually like to generalize to higher level metrics such as mission level performance (area discovered, objectives identified) and cooperative/antagonistic behavior.

    I have some past experience with USARSim (UT2004), and it seems to provide a similar structure for modeling robots, sensors, and manipulators. However, my overall impression of USARSim is that while it provides a lot of flexibility for modeling the higher-level interactions (overall vehicle behavior, antagonistic interactions, simulated AI), I am unsure on how well it can model the low-level dynamics of the vehicle (bottom up physical performance, stability, etc…). In particular, I have noticed people seem to have trouble getting ROS working. Also, the move command only accepts 3 linear and one rotation DoF for AirRobot. Can USARSim simulate these platform level dynamics without too much trouble? Also, how much has changed for the UDK version?

    My specific questions:

    1) How difficult is it to perform hardware in-loop tests?

    2) How easily can I build a custom dynamic model?
    a. Can I place custom thrusters, and then directly control them to simulate stability?
    b. Can I build models of the power draw vs velocity/state?
    c. Has anyone ever implemented an aerodynamic model?

    3) Can I create parametric collision geometry without saving multiple mesh files?

    Any specific or general comments would be extremely helpful.


    Aaron Mosher