gazebo-fmi
gazebo-fmi copied to clipboard
Investigate support for Ignition Gazebo
Open Robotics is currently developing the next generation of the Gazebo simulator and related environment, in an effort called "Ignition Robotics" (https://ignitionrobotics.org/) that also contains Ignition Gazebo, the next generation version of Gazebo.
Ignition Gazebo it is currently under development in https://bitbucket.org/ignitionrobotics/ign-gazebo/src/default/. Despite the simulator goes by "Gazebo" name, it is basically a complete rewrite of the Gazebo simulator, using a Entity–component–system pattern.
This issue will contain the initial brainstorming and ideas related on how to integrate FMI and Ignition Gazebo, and more in general the Ignition Robotics libraries.
Related links
- Similar issue, but for the YARP support for Gazebo: https://github.com/robotology/gazebo-yarp-plugins/issues/395 .
-
gym-ignition
, the first software project from IIT heavily based on Ignition Robotics libraries: https://github.com/robotology/gym-ignition
This is a good example of Ignition Gazebo plugin that could be make "general" by modifying it to support loading the specific hydrodynamic model via FMI: https://github.com/ignitionrobotics/ign-gazebo/pull/748/files, similar to what we already do in https://github.com/robotology/gazebo-fmi/tree/master/plugins/single-body-fluid-dynamics for Gazebo Classic.
This is a good example of Ignition Gazebo plugin that could be make "general" by modifying it to support loading the specific hydrodynamic model via FMI: https://github.com/ignitionrobotics/ign-gazebo/pull/748/files, similar to what we already do in https://github.com/robotology/gazebo-fmi/tree/master/plugins/single-body-fluid-dynamics for Gazebo Classic.
The PR has now been moved to https://github.com/ignitionrobotics/ign-gazebo/pull/749 . A preliminary doubt for re-using exactly the same architecture for future FMI-based plugins is that while it communicates with the rest of Ignition Gazebo systems via shared memory (ECM), for setting the value of the thrust the use of Ignition Transport topics is hardcoded, preventing the composability of several of this system at the memory level without using a network interface, that is in general non-deterministic and can introduce instabilities in simulation.