JosefGst / lingao_ros2

ROS 2 packages for lingao robot

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

iron badge iron badge rolling badge Developed in ROS Iron. Some features may not work in ROS iron.

Table of Content

Click to expand

Dependencies

Install the aws warehouse in aws_ws and source it.

mkdir -p aws_ws/src
cd aws_ws/src/
git clone https://github.com/JosefGst/aws-robomaker-small-warehouse-world.git -b ros2
cd aws_ws
# build for ROS
rosdep install --from-paths . --ignore-src -r -y
colcon build

# run in ROS
source install/setup.sh
roslaunch aws_robomaker_small_warehouse_world view_small_warehouse.launch

Installation

sudo apt install libboost-all-dev
mkdir ros2/lingao_ws/src -p
cd ros2/lingao_ros2/src
git clone https://github.com/JosefGst/lingao_ros2.git
sudo apt install python3-vcstool
vcs import .. < my.repos
cd ~/ros2/lingao_ws
rosdep update && rosdep install -i --from-path src --rosdistro $ROS_DISTRO -y

and build the workspace.

πŸ’» Simulation

πŸ’» Description

ros2 launch urdf_launch display.launch.py urdf_package:=lingao_description urdf_package_path:=urdf/MiniUGV_10A.xacro

πŸ’» Sim

ros2 launch lingao_sim sim_launch.py gui:=false

sim

πŸ’» SLAM

ros2 launch lingao_slam slam_launch.py use_sim_time:=true open_rviz:=true

for localization only

ros2 launch lingao_slam slam_launch.py slam_params_file:=src/lingao_ros2/lingao_slam/config/localizer_params_online_async.yaml use_sim_time:=true

slam

πŸ’» Navigation

ros2 launch lingao_nav lingao_nav_launch.py use_sim_time:=true open_rviz:=true

nav

πŸ’» Navigate outdoors with GPS

ros2 launch lingao_sim emptyfarm_launch.py headless:=False

emptyfarm

ros2 launch lingao_bringup mapviz.launch.py 
ros2 launch lingao_nav gps_waypoint_follower.launch.py
ros2 run nav2_gps_waypoint_follower_demo interactive_waypoint_follower
ros2 run nav2_gps_waypoint_follower_demo gps_waypoint_logger
ros2 run nav2_gps_waypoint_follower_demo logged_waypoint_follower </path/to/yaml/file.yaml>

gps_navigation

πŸ€– Real Robot

πŸ€– Bringup

ros2 launch lingao_bringup bringup_launch.py

πŸ€– SLAM

ros2 launch lingao_slam slam_launch.py

πŸ’»

ros2 run rviz2 rviz2 -d ros2/lingao_ws/src/lingao_ros2/lingao_slam/config/slam.rviz

nav

πŸ€– Navigation

ros2 launch lingao_nav lingao_nav_launch.py slam_params_file:=src/lingao_ros2/lingao_slam/config/localizer_params_online_async_home.yaml 

πŸ’»

ros2 run rviz2 rviz2 -d ros2/lingao_ws/src/lingao_ros2/lingao_nav/config/nav.rviz 

or open Foxglove web https://studio.foxglove.dev/josef-gstoettner/view

foxglove

TODO:

  • set init pose with SLAM Toolbox
  • use in bringup
  • use GPS
  • enable Collision Monitor
  • Dockerize
  • generally improve performance

About

ROS 2 packages for lingao robot

License:Apache License 2.0


Languages

Language:Jupyter Notebook 95.8%Language:C++ 2.2%Language:Python 1.8%Language:CMake 0.3%