Crocoddyl is an optimal control library for robot control under contact sequence. Its solver is based on various efficient Differential Dynamic Programming (DDP)-like algorithms
Center of Pressure and Instantaneous Capture Point
Contact forces and support polygon
CoM and contact trajectories
Final robot target
This Rviz plugin uses standardized ROS messages that we use in our MPC work. Those ROS messages are generic enough to be used in other robotics platforms. Indeed, this Rviz plugin can be used in our quadrotor and manipulator examples.
Additionally, we have rendered the ROS communication as efficient as possible. This is done by introducing crocoddyl_msgs. Crocoddyl messages include C++ implementation of ROS publishers and subscribers. These C++ implementations are bound in Python for convenience. We have headly tested in our MPC works as well.
Finally, these packages and our RvizDisplay support ROS 1 and ROS 2.
Below, I share a short clip demonstrating this display. You just need to do crocoddyl.RvizDisplay(...).
This PR introduces a third option for displaying Crocoddyl results in Rviz, i.e.,
RvizDisplay
.RvizDisplay
uses our whole-body-state-rviz plugin to nicely display:This Rviz plugin uses standardized ROS messages that we use in our MPC work. Those ROS messages are generic enough to be used in other robotics platforms. Indeed, this Rviz plugin can be used in our quadrotor and manipulator examples.
Additionally, we have rendered the ROS communication as efficient as possible. This is done by introducing crocoddyl_msgs. Crocoddyl messages include C++ implementation of ROS publishers and subscribers. These C++ implementations are bound in Python for convenience. We have headly tested in our MPC works as well.
Finally, these packages and our
RvizDisplay
support ROS 1 and ROS 2.Below, I share a short clip demonstrating this display. You just need to do
crocoddyl.RvizDisplay(...)
.https://github.com/loco-3d/crocoddyl/assets/3601935/c8ecf486-73fe-4ca2-bd90-43beed4d3bfb