## ROS2 Jazzy #### install ros2 jazzy 建議使用 Debian 方式安裝,請參考[官方安裝指南]( https://docs.ros.org/en/jazzy/Installation/Ubuntu-Install-Debs.html)進行 ``` echo "source /opt/ros/jazzy/setup.bash" >> ~/.bashrc echo "export ROS_DISTRO=jazzy" >> ~/.bashrc ``` #### rosdep 安裝與更新 ``` sudo apt-get install python3-rosdep sudo rosdep init rosdep update ``` ## 機電系統 Packages #### urg_node2 ``` git clone https://github.com/Hokuyo-aut/urg_node2.git cd urg_node2 rm -r urg_library/ git clone https://github.com/UrgNetwork/urg_library.git cd ~/ros2_ws rosdep install -y -r -q --from-paths src --ignore-src --rosdistro jazzy colcon build --symlink-install ``` #### velodyne ``` cd ~/ros2_ws/src git clone https://github.com/ros-drivers/velodyne.git cd .. rosdep install -y -r -q --from-paths src --ignore-src --rosdistro jazzy colcon build --symlink-install ``` #### ira_laser_tools 將兩個光達的 Laser Scan 資訊合併為一個 ``` cd ~/ros2_ws/src git clone https://github.com/nakai-omer/ira_laser_tools.git -b humble cd .. rosdep install -y -r -q --from-paths src --ignore-src --rosdistro jazzy colcon build --symlink-install ``` #### IMU Ch110 [由原廠資料下載 package](https://sealandtech.com.tw/resource.html?s=anrot&type=tutorial&p=ros2/readme) #### micro_ros_agent ``` cd ~/ros2_ws/src git clone https://github.com/micro-ROS/micro-ROS-Agent.git -b jazzy git clone https://github.com/micro-ROS/micro_ros_msgs.git -b jazzy cd .. rosdep install -y -r -q --from-paths src --ignore-src --rosdistro jazzy colcon build --symlink-install ``` ## 建圖 Packages #### DLIO ``` cd ~/ros2_ws/src git clone https://github.com/vectr-ucla/direct_lidar_inertial_odometry.git -b feature/ros2 cd .. colcon build ``` ## 導航 Packages #### navigation2 ``` mkdir -p ~/nav2_ws/src cd ~/nav2_ws/src git clone https://github.com/ros-navigation/navigation2.git -b jazzy cd ~/nav2_ws rosdep install -y -r -q --from-paths src --ignore-src --rosdistro jazzy colcon build --parallel-workers 2 ``` - 若記憶體不足,可能在 costmap queue 到 54% 時出現錯誤。 - 解決方案:限定最大核心數 2 個 - 若遇到錯誤 `nav2_msgs/nav2_msgs`: ``` rm -rf /home/scl/nav2_ws/build/nav2_msgs/ament_cmake_python/nav2_msgs/nav2_msgs ``` #### hdl localization ``` git clone https://github.com/ming0071/Hdl-Localization-ROS2-Jazzy.git ``` ## 建圖、導航 launch 參照 #### Turtlebot3 Cartographer & Navigation2 ``` cd git clone https://github.com/ROBOTIS-GIT/turtlebot3.git -b humble-devel cd turtlebot3/ mv turtlebot3_cartographer/ ~/carto_ws/src/ mv turtlebot3_navigation2/ ~/nav2_ws/src/ cd .. rm -r turtlebot3/ ``` ## 小型 Packages #### rqt-tf-tree ``` sudo apt-get install ros-jazzy-rqt-tf-tree ``` #### ESP32 連接 ``` pip install pyserial ``` #### 鍵盤控制 ``` sudo apt-get install ros-jazzy-teleop-twist-keyboard ``` #### Plot 工具 ``` sudo apt install ros-jazzy-plotjuggler-ros ``` ## 延伸閱讀 - [ROS2 hokuyo、velodyne、imu 設定](https://hackmd.io/@ming0071/B1SqyC_eJe) - [Micro-ROS 配合 ESP32、OpenCR 安裝與設定](https://hackmd.io/@ming0071/rklD1yKl1x)