ECHO's workspace for robotics dojo 2024 competition. The dojo package is the main package , the articubot_one package is for reference and for any more info on how to work with this ros workspace refer to Articulated Robotics Tutorial , the sllidar_ros2 is for the lidar and the diffdrive_arduino is for hardware interface .
📝 Note: FOR PROPER OPERATION IN THE PI CHECKOUT TO THE
piBRANCH. ALSO IF ISSUES ARE ECOUNTERED WHEN USING THE MAIN BRANCH ON YOUR PC/DEV MACHINE TRY OUT THE DEMO BRANCH
- Gazebo
- Rviz
- Colcon
- Teleop_twist
- Twist_mux
- Nav2
- Slam Tool box
- Ros2 Control
Chekout README_dojo.md on installation instructions
-
SLLidar ROS2
- Repository: Slamtec/sllidar_ros2
-
Diffdrive Arduino
- Repository(humble branch): joshnewans//diffdrive_arduino
- This node is used together with an arduino running ros_arduino_bridge
- Articubot One
- Repository: joshnewans/articubot_one
- Based on tutorial: Articulated Robotics Tutorial
- Dojo
- Repository: ru3ll/dojo
For rplidar the package used is Slamtec/sllidar_ros2 and not the one used in the Articulated Robotics Tutorial tutorial
📝 Note: FOR PROPER OPERATION IN THE PI CHECKOUT TO THE
piBRANCH
Command for robot launch file
ros2 launch dojo launch_robot.launch.pysllidar_ros2 running requires the read and write permissions of the serial device. You can manually modify it with the following command:
sudo chmod 777 /dev/ttyUSB0The command for RPLIDAR A1 is :
ros2 launch sllidar_ros2 sllidar_a1_launch.pylaunch rviz with the environment on the folder
rviz2 -d ./src/dojo/rviz/default.rviz
launch teleop twist keyboard
ros2 run teleop_twist_keyboard teleop_twist_keyboard --ros-args -r /cmd_vel:=/cmd_vel_key
Teleop Twist with topic remap
ros2 run teleop_twist_keyboard teleop_twist_keyboard --ros-args -r /cmd_vel:=/diff_cont/cmd_vel_unstamped
Launch SLAM for navigation
ros2 launch slam_toolbox online_async_launch.py slam_params_file:=./src/dojo/config/mapper_params_online_async.yaml use_sim_time:=true
Launch Nav2
ros2 launch nav2_bringup navigation_launch.py use_sim_time:=true
Running nav2
ros2 run nav2_map_server map_server --ros-args -p yaml_filename:=my_map_save.yaml -p use_sim_time:=true
ACML commands
ros2 launch nav2_bringup localization_launch.py map:=./may_map_save.yaml use_sim_time:=true
ros2 launch nav2_bringup localization_launch.py map:=./may_map_save.yaml use_sim_time:=true map_subscribe_transient_local:=true
Checkout README_dojo.md for more