The following Repo contains Gazebo Simulations of IITB Mars Rover Team.
- ROS kinetic and Gazebo-7 is used.
- Follow instructions on
https://wiki.ros.org/kinetic/Installation/Ubuntu - Opt for
ros-kinetic-desktop-fullinstallation
- Follow the steps to build the provided packages
mkdir -p rover_ws/src
cd rover_ws/src
git clone https://github.com/iitbmartian/Gazebo_simulation.git
cd ..
catkin_make
- Replace
line 15andline 29ofrover_18/gazebo_worlds/terrain.worldwith<mesh><uri>PATH_TO_YOUR_WORKSPACE/rover_ws/src/rover_18/gazebo_worlds/terrain_surface/surface1.stl</uri></mesh>. - Replace
line 33ofrover_18/gazebo_worlds/terrain.worldwith<uri>PATH_TO_YOUR_WORKSPACE/rover_ws/src/rover_18/gazebo_materials/scripts/terrain.material</uri>.
- Execute
roslaunch rover18_urdf rviz.launch
- To load the rover in a defined world execute
roslaunch rover18_urdf gazebo.launch - For Simulating differential-drive in the world execute
roslaunch rover18_urdf diff_drive.launch. Control the speed and direction of rover usingrqt_robot_steeringnode launched. - The forces in links can be viewed on
gz topic. - For changing the worlds edit the world names in
rover_18/launch/gazebo.launchline 18
Take a look at some simulations in https://drive.google.com/drive/folders/1oUSBbVFecmz7PkJIKtDzw7NwfP6030fT?usp=sharing
- Blander Sculpt tool - To create the Custom terrain
[3DView](https://chrome.google.com/webstore/detail/3dview/hhngciknjebkeffhafnaodkfidcdlcao?hl=en)- To edit stl meshes and evaluate translation and rotation coordinates of joints/links.
[gazebo_ros_control](http://gazebosim.org/tutorials?tut=ros_control)to implement differential control on the rover[rqt_robot_steering](http://wiki.ros.org/rqt_robot_steering)for UI to control rover movement[force_torque_sensor](http://gazebosim.org/tutorials?tut=force_torque_sensor&cat=sensors)to get the forces in joints