Jackal Simulation running on Linorobot's Navigation Stack parameters.
This package creates a shim to Jackal's Gazebo simulator so you can run a virtual robot on Gazebo and try Linorobot's Navigation Stack parameters.
A forked version of Jackal is used so that the frames and topics on the virtual robot match Linorobot's. You can check out the following commits to see what changes have been made to make Jackal and Linorobot compatible.
- remapping of Laser's 'front/scan' topic to 'scan' topic
- remapping of Laser's 'front_laser' frame to 'laser frame'
- remapping of Base's 'base_link' frame to 'base_footprint frame'
- defining 'base_footprint' frame as base_frame_id on jackal_velocity_controller
./installdep
cd linorobot_ws/src
git clone https://github.com/grassjelly/jackal.git
git clone https://github.com/jackal/jackal_simulator.git
git clone https://github.com/jackal/jackal_desktop.git
git clone https://github.com/ros-visualization/interactive_marker_twist_server.git
cd ../
catkin_make
source devel/setup.bash
Credits to vfdev-5's Jackal installation.
Running the virtual robot and Gazebo World:
roslaunch robot_playground bringup_sim.launch
Once Jackal's simulation is up, you can run Linorobot's gmapping and autonomous navigation launch files as per normal.
Running gmapping demo:
roslaunch linorobot slam.launch
Running autonomous navigation:
roslaunch linorobot navigate.launch
Some useful resources to tune your parameters:
-
Kaiyu Zheng's - very comprehensive guide
-
ROS' - high level description of each parameter