This repository contains the official ROS 2 software stack for the Autonomous Mobile Robot (AMR) platform developed by T-Robotics.
This repository contains ROS 2 packages for implementing autonomous navigation and control on the AMR platform developed by T-Robotics.
This work was conducted as part of the T-Robotics Industry-University Cooperation Project.
- ROS 2 Humble: Please follow the official installation instructions.
- Required ROS 2 Packages:
sudo apt-get update && sudo apt-get install -y \
ros-humble-rclcpp \
ros-humble-navigation2 \
ros-humble-slam-toolbox \
ros-humble-robot-state-publisher \
ros-humble-ros2-control \
ros-humble-ros2-controllers \
ros-humble-gazebo-ros2-control \
ros-humble-gazebo-plugins \
ros-humble-xacro \
ros-humble-diagnostic-updater \
ros-humble-sick-safetyscanners2 \
ros-humble-robot-localization- Lely CANopen:
sudo add-apt-repository ppa:lely/ppa
sudo apt-get update
sudo apt-get install -y liblely-coapp-dev liblely-co-tools python3-dcf-tools
sudo apt-get install pkg-config
sudo apt-get install can-utils- Other System Libraries:
sudo apt install -y \
python3-pytest \
python3-colcon-common-extensions \
libboost-dev \
nlohmann-json3-dev \
libserial-dev \
xtermmkdir -p ~/ros2_ws/src && cd ~/ros2_ws/src
git clone https://github.com/RCILab/RCI_mobile_navigation_tr.git
cd ~/ros2_ws
colcon build --symlink-install
source install/setup.bash- Bringup
ros2 launch tr_real bringup_real.launch.py
- Mapping
ros2 launch tr_nav2_bringup mapping.launch.py ros2 launch tr_nav2_bringup rviz_launch.py ros2 run nav2_map_server map_saver_cli -f ~/tr_ws/src/tr_real/maps/<map_name>
- Navigation
Note on Speed Filter (Speed Zones):
ros2 launch tr_real tr_navigation2.launch.py map_name:='<map_name>'- The speed mask filename must end with the
_smsuffix (e.g.,<map_name>_sm.pgm). - To disable the speed filter, set the
use_speed_zoneparameter toFalse:
ros2 launch tr_real tr_navigation2.launch.py map_name:='<map_name>' use_speed_zone:='False'
- The speed mask filename must end with the
- Bringup
ros2 launch tr_sim simulation.launch.py world:='<world_name>' - Mapping
ros2 launch tr_nav2_bringup mapping.launch.py ros2 launch tr_nav2_bringup rviz_launch.py ros2 run nav2_map_server map_saver_cli -f ~/tr_ws/src/tr_sim/maps/<map_name>
- Navigation
Note on Speed Filter (Speed Zones):
ros2 launch tr_sim tr_navigation2.launch.py map_name:='<map_name>'- The speed mask filename must end with the
_smsuffix (e.g.,<map_name>_sm.pgm). - To disable the speed filter, set the
use_speed_zoneparameter toFalse:
ros2 launch tr_sim tr_navigation2.launch.py map_name:='<map_name>' use_speed_zone:='False'
- The speed mask filename must end with the
- Two-Way Waypoint Navigation
cd ~/ros2_ws/src/RCI_mobile_navigation_tr/tr_real/test python3 test.py
- Two-Way Waypoint Navigation
cd ~/ros2_ws/src/RCI_mobile_navigation_tr/tr_sim/test python3 test.py
This project is licensed under the MIT License - see the LICENSE file for details.
Maintainer: Daum Park (doumpork@khu.ac.kr)
Lab: RCI Lab @ Kyung Hee University