This Repository contains the ROS components necessary to run the Ifabot robot in the ROS ecosystem. The following packages are available:
Package | Description |
---|---|
robot_board_driver | Encapsulates the driver for the Robot Board |
imu_board_driver | Encapsulates the driver for the IMU Board |
ifabot_base | Odometry publisher and safetycontroller |
ifabot_description | Contains the description file (URDF) |
ifabot_navigation | Provides launch files for gmapping (SLAM) and amcl (Localization) |
Create a workspace (skip if you already have one):
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
Get the files:
cd ~/catkin_ws/src
git clone https://github.com/IfabotTUD/Ifabot-ROS.git
Compile:
cd ~/catkin_ws/
catkin_make
Add the following line to the bottom of the file ~/.bashrc :
source $HOME/catkin_ws/devel/setup.bash
Run individual nodes:
rosrun robot_board_driver robot_board_driver
rosrun imu_board_driver imu_board_driver
Start all nodes for basic Ifabot operation at once (including the ones above):
roslaunch ifabot_base base.launch
Run in different consoles:
roslaunch ifabot_base base.launch
roslaunch ifabot_navigation gmapping.launch
Now drive the robot around using some teleop node.
Save the map:
rosrun map_server map_saver -f mymap
Make sure that amcl.launch refers to the correct map file:
<node name="map_server" type="map_server" pkg="map_server" args="/home/ifabot/mymap.yaml" />
Then run:
roslaunch ifabot_base base.launch
roslaunch ifabot_navigation amcl.launch