Simulation ========== .. image:: media/gifs/b1_gazebo.gif :width: 100% :align: center Unitree B1 supports two different development environment Gazebo with which a virtual robot in the simulation can be programmed for testing in real world virtual evironments and is ideal for low-level gait driver development. Gazebo drivers are simulated with a fake control node and visualization tool RViz is used. The current implementation for Gazebo is working using the opensource `CHAMP `__ drivers. Gazebo support different sensors like IMUs, lidars, cameras and many more. With these simulators and sensors autonomous navigation, slam and other functionalities can be tested. In this instruction, Gazebo will be introduced which is most widely used among ROS developers. Gazebo Tutorials: http://gazebosim.org/tutorials Gazebo ------ .. qre_B1_gazebo & qre_controller .. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. `qre_B1_gazebo` package contains the Gazebo simulation for the B1 robot. The robot can be teleoperated and can be used further for slam and autonomous navigation. This package is dependent upon `qre_controller` which contains several low level robot controllers `state_estimator, quadruped_controller` and `contact_sensor`. .. To launch `Gazebo` run the following command: .. .. code:: bash .. roslaunch qre_B1_gazebo gazebo.launch .. This launch file runs all the necessary controllers and accept commands in `cmd_vel(geometry_msgs/Twist)`. The same package `qre_controller` can be used to verify the robot movements in `RVIZ`. To do so run the following command: .. .. code:: bash .. roslaunch qre_B1_description bringup.launch rviz:=true ll_control:=true .. Now by running any `teleop node` the robot can be controlled. .. .. figure:: media/mbs_gazebo.png .. :width: 100% .. :align: center .. :alt: QuadrupedRoboticsGazebo