## mechatronics system #### main (sencor + tf + chassic) ``` cd ~/ros2_ws/ source install/setup.bash ros2 launch scl_amr mechatronics.launch.py ``` #### keyboard control ``` ros2 run teleop_twist_keyboard teleop_twist_keyboard ``` #### TF + sensor ``` cd ~/ros2_ws/ source install/setup.bash ros2 launch scl_amr sensor.launch.py ``` #### encoder data ``` ros2 topic echo /encoder_right ros2 topic echo /encoder_left ping 192.168.0.10 ping 192.168.1.11 ``` #### only TF ``` cd ~/ros2_ws/ source install/setup.bash ros2 launch scl_amr AMR_model.launch.py ``` ## Off-Line SLAM #### Record baf file ```bash cd ~/ros2_ws/src/scl_amr/bagfile/ ros2 bag record -a -o b1_2rounds_no_vehivle ``` #### DLIO SLAM ```bash # bag cd ~/ros2_ws/src/scl_amr/bagfile/ ros2 bag play b1_2rounds_no_vehivle # slam cd ~/ros2_ws/ source install/setup.bash ros2 launch scl_amr dlio.launch.py # save pcd cd ~/ros2_ws/ source install/setup.bash ros2 service call /save_pcd direct_lidar_inertial_odometry/srv/SavePCD "{'leaf_size': 0.1, 'save_path': '/home/scl/ros2_ws/src/scl_amr/map/'}" # pcd view pcl_viewer ~/ros2_ws/src/scl_amr/map/dlio_map.pcd # pointcloud_to_2dmap_ros2 ros2 launch pointcloud_to_2dmap_ros2 pointcloud_to_2dmap.launch.py ``` #### Fast_lio SLAM ```bash # bag cd ~/ros2_ws/src/scl_amr/bagfile/ ros2 bag play b1_2rounds # slam cd ~/ros2_ws/ source install/setup.bash ros2 launch scl_amr offline_faster_lio.launch.py # save pcd ros2 service call /map_save std_srvs/Trigger # pcd view pcl_viewer ./src/scl_amr/map/test.pcd # pcd2pgm ros2 launch pcd2pgm pcd2pgm.launch.py ros2 run nav2_map_server map_saver_cli -f /home/scl/ros2_ws/src/scl_amr/map/test ``` ## Navigation ### navigation ``` cd ~/ros2_ws/ source install/setup.bash ros2 launch scl_amr mechatronics.launch.py cd ~/ros2_ws/ source install/setup.bash ros2 launch scl_amr dlio.launch.py cd ~/nav2_ws/ source install/setup.bash cd ~/ros2_ws/ source install/setup.bash ros2 launch scl_amr navigation_bringup_launch.py cd ~/nav2_ws/ source install/setup.bash cd ~/ros2_ws/ source install/setup.bash ros2 launch scl_amr single_navigate_and_log.launch.py mode:=1 cd ~/nav2_ws/ source install/setup.bash cd ~/ros2_ws/ source install/setup.bash ros2 launch scl_amr multi_navigate_and_log.launch.py log_csv:=5.csv ``` ### Clear global costmap ``` ros2 service call /global_costmap/clear_entirely_global_costmap nav2_msgs/srv/ClearEntireCostmap "{}" ``` ### Clear local costmap ``` ros2 service calllocal_costmap/clear_entirely_local_costmap nav2_msgs/srv/ClearEntireCostmap "{}" ``` ### rviz copy ``` cp /home/scl/ros2_ws/install/scl_amr/share/scl_amr/rviz/nav2_scl.rviz /home/scl/ros2_ws/src/scl_amr/rviz/ ``` #### Map server ``` rviz2 # add map topic, add topic name 'map' ros2 launch scl_amr map.launch.py # ros2 run nav2_map_server map_server --ros-args --params-file ~/ros2_ws/src/scl_amr/config/map_server_params.yaml # ros2 lifecycle set /map_server configure # ros2 lifecycle set /map_server activate ``` ### AMCL localization ``` ros2 launch scl_amr mechatronics.launch.py ros2 launch rf2o_laser_odometry rf2o_laser_odometry.launch.py rviz2 ros2 launch nav2_bringup localization_launch.py 然後要拉 2D pose estimate ``` ## 常用指令 #### 編譯專案 ``` rosdep install --from-paths src --ignore-src -r -y --rosdistro humble colcon build --symlink-install source install/setup.bash ``` #### Source 設定 ``` source ~/nav2_ws/install/setup.bash source ~/ros2_ws/install/setup.bash ``` #### 依賴更新 ``` rosdep update rosdep install --from-paths src --ignore-src -r -y --rosdistro humble ``` #### 移除及檢查已安裝的 Packages ``` sudo apt remove ros-humble-navigation2 sudo apt autoremove sudo apt list --installed ``` #### about tf ``` ros2 run rqt_tf_tree rqt_tf_tree --force-discover ros2 run tf2_ros tf2_echo map odom ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up