[ROS2系列] ubuntu 20.04测试rtabmap

目录

背景:

[一、配置 turtlebot3](#一、配置 turtlebot3)

[二、安装RTAB-Map ROS2包:](#二、安装RTAB-Map ROS2包:)

[三、启动 Turtlebot3 模拟器:](#三、启动 Turtlebot3 模拟器:)

[四、启动 RTAB 地图:](#四、启动 RTAB 地图:)

五、启动导航(nav2_bringup应安装软件包):


背景:

1、设备:pc;旭日派x3(后续会加上,目前只有pc)

2、环境:Ubuntu20.04;ROS2(Foxy)

一、配置 turtlebot3

turtlebot3缺什么东西参考地平线文档​​​​​​​5.2. Nav2 --- 地平线机器人平台用户手册 1.0 文档

二、安装RTAB-Map ROS2包:

复制代码
  cd ~/ros2_ws
  git clone https://github.com/introlab/rtabmap.git src/rtabmap
  git clone --branch ros2 https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros
  rosdep update && rosdep install --from-paths src --ignore-src -r -y
  export MAKEFLAGS="-j6" # Can be ignored if you have a lot of RAM (>16GB)
  #但是这个地方我设置的2
  colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
复制代码
解析:export MAKEFLAGS="-j6"
这句命令是设置环境变量`MAKEFLAGS`的值为`"-j6"`。它通常用于告诉编译工具`make`在编译过程中使用多个并行工作线程(也称为"jobs")。具体来说:

- `"-j6"` 中的 `-j` 参数告诉 `make` 启动多少个并行工作线程来执行编译任务。在这里,`6` 意味着同时启动 6 个并行工作线程。这可以显著加快编译过程,特别是在具有多个处理器核心的计算机上。

- 注释 `# Can be ignored if you have a lot of RAM (>16GB)` 是对命令的一个注释,它建议如果你的计算机具有大于16GB的RAM内存,那么可以忽略这个设置,因为RAM较大的计算机通常更能容纳并行编译所需的内存。在内存受限的系统上,使用太多并行工作线程可能导致内存不足的问题,因此可以根据系统资源来决定是否设置 `-j` 参数。

总之,这个命令是用来控制编译工具在编译过程中使用多少并行工作线程,以加快编译速度。根据你的计算机硬件和内存情况,你可以选择是否使用这个设置以及设置多少个并行工作线程。
  • 注:我在build时候一直不成功,显示缺少东西,解决方法:

复制代码
  sudo apt remove ros-foxy-rtabmap*

一直build,直至成功。
*

三、启动 Turtlebot3 模拟器:

复制代码
   export TURTLEBOT3_MODEL=waffle
   ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py

   export TURTLEBOT3_MODEL=waffle
   ros2 run turtlebot3_teleop teleop_keyboard

四、启动 RTAB 地图:

notranslate 复制代码
ros2 launch rtabmap_demos turtlebot3_scan.launch.py

​​​​​​​​​​​​​​

rtab_map

五、启动导航(nav2_bringup应安装软件包):

notranslate 复制代码
ros2 launch nav2_bringup navigation_launch.py use_sim_time:=True
ros2 launch nav2_bringup rviz_launch.py

后续会接入虚拟摄像头进行测试

相关推荐
余生爱静2 小时前
从零搭建 SIP 全栈通话系统:SIP 协议 + PJSIP + Asterisk + Android 实战
ubuntu·pjsip
小饕5 小时前
Jetson TensorRT vs RK3588 RKNN:两块板子都跑通了 LLM 和 VLM 之后,我悟了
人工智能·机器人·大模型端侧部署
上海蓝色星球5 小时前
蓝色星球NG-AIOS新型AI工业操作系统重磅发布——以本体智能为内核,重构“AI+制造“新范式
大数据·数据库·人工智能·机器人
workflower6 小时前
AI 转型正从工具部署转向生产关系重构
人工智能·安全·机器学习·机器人·无人机
Dovis(誓平步青云)7 小时前
QQ 机器人怎么接上 AI?用 AstrBot + NapCat 搭一套可扩展的 DeepSeek 助手
服务器·人工智能·机器人·操作系统·电脑·智能化
鲁邦通物联网8 小时前
机器人梯控系统中Floor_ID与Map_ID楼层映射设计
机器人·巡检机器人·机器人梯控·agv梯控·机器人乘梯·机器人自主乘梯·agv机器人梯控
明志数科14 小时前
具身智能数据工程观察:“数据筑基“时代的数据底座建设路径
人工智能·机器人
猿与禅15 小时前
Linux(Ubuntu)入门到实战:系统管理、常用命令与权限体系完整指南
linux·ubuntu·apt·进程管理·系统运维·用户权限·vi/vim
懂压力传感器的涌客20 小时前
从具身智能说起:柔性薄膜压力传感器在机器人触觉系统的选型与信号链设计
人工智能·机器人·压力传感器·源头工厂·fsr压力传感器
hey you~1 天前
语音机器人如何配合人工完成复杂进线服务?三种协同模式与落地要点
人工智能·机器人·语音识别·智能客服·呼叫中心·转人工策略