This repository simulate a p3dx mobile robot in willowgarage.world of Gazebo with Map Server, AMCL, Move Base, RVIZ and a PID controller. The PID controller is for tracking the reference linear velocity provided by local planner of move_base.
$ cd <catkin_ws>/src
$ git clone https://github.com/chungying/p3dx_2dnav_simulator.git
$ cd ..
$ catkin_make
- Running the original settings for a p3dx robot
- p3dx in Willog Garage world at (0, 0, 0) pose
$ roslaunch p3dx_2dnav p3dx_2dnav.launch
- Assignin robot to be at different initial pose
- p3dx at (-4, -4, 3.14159) pose
$ roslaunch p3dx_2dnav p3dx_2dnav.launch ip_x:=-4 ip_y:=-4 ip_a:=3.14159
- Running the simulation with PID controller. Default pose is (0, 0, 0). Default PID gains is (0.8, 0.001, 0.01)
$ roslaunch p3dx_lin_vel_pid p3dx_2dnav_pid.launch ip_x:=-4 ip_y:=-4 ip_a:=3.14159 Kp:=1 Ki:=0 Kd:=0
-
Monitoring the reference velocity (blue line) and the velocity of p3dx (red line). This rqt_plot is set in rat_plot.launch and called by both p3dx_2dnav.launch and p3dx_2dnav_pid.launch.
- Ubuntu 14.04
- ROS Indigo
- ua_ros_p3dx for p3dx_gazebo and p3dx_description
- ros-planning/navigation for p3dx_2dnav
- messege_filters, nav_msgs, and geometry_msgs for p3dx_lin_vel_pid
- gmapping and map_server for building willowgarage