# ======ros2 命令记录 ===

  1. 查看ros2的版本:echo $ROS_DISTRO
  2. 当colcon build --symlink-install --packages-select 报错找不到路径时;可以cd 到具体路径进行编译;因为包的cmakelist.txt 有错误的时候也会报这个错误
    https://blog.csdn.net/qq_52776722/article/details/137190754

#===== ros2 学习路线 ===

学习就和行军打仗一样,

首先要明确目标(没有目标,可以先快速过一遍,入门教程,浏览应用场景,明白这个东西是什么,有什么组成,能做什么),

其次是制定路线,路线其实就是一连串由浅到深的问题,这些问题,可以时刻记载脑子里面。

最后,在根据路线学习的过程中,可以把知识点和目标关联,看看这个在目标大局中的哪个位置,起到什么作用。

我的学习目标:

1:能在gazebo和rviz中模拟小车,

2:实现小车的slam 建图

3:地图中两点的任意规划运动。

我的学习路线:
1: 熟悉工具和仿真的使用;能看懂仿真文件测格式和启动流程
2: 加载点云数据集到仿真平台进行展示,
3:联动gazibo 和rviz进行测试
4:实践一下激光slam, 优化建图速度,
5:优化a* 和 D*
6: 在激光地图中,增加动态障碍物来模拟,实际算法的优化效果;
7: 模拟orb-slam

------------------------------------------  学习路程笔记 ----------------

  1. ros2的入门基础概念学习: 古月老师的,ros2 21讲视频,快速浏览
    目标:建立对ros的系统组成,以及各种名称的概念;不要求全懂,但是要知道有这个东西的存在,以及存在的作用
    实践:古月·ROS2入门21讲——学习笔记(二)常用工具部分15-21讲-CSDN博客
  2. ros2的入门实践:
    目标:学习urdf的基本语法, launch的用法,gazebo的软件的使用,rviz2软件的使用
    实践思路: gazebo模拟小车,并通过键盘控制; 小车增加激光雷达,并在rviz中显示;最后,小车增加相机;
    项目实践:agilex_open_class, 松灵 ROS2 开讲啦
    备注: 要记得哦,动手实践一下,加深印象
    机器人仿真-gazebo学习笔记(2)gazebo的使用和world创建-CSDN博客

    gazebo加载urdf的机器人,是通过服务进行注册的:《动手学ROS2》9.2为机器人URDF模型注入物理属性并在Gazebo中显示_在gazebogui界面中调整模型物理属性-CSDN博客
  3. urdf中每个link 和 join 都要设置<gazebo>属性;其中,并不需要都放到一起,但是每部分的xml需要通过 <gazebo reference="${frame_prefix}_link">  ; reference作为联系,这个名字必须相同,因为gazebo就是通过这个来和外观进行绑定的; 
  4. 至于gazebo的传感器以及位置信息是如何发送出来的,就得靠gazebo的插件的话题了;同时rviz也就是订阅这些话题  来做显示激光雷达消息和相机消息的
  5. 这个是看gmapping 的代码所需的辅助文章:
    主要目标是 理解传感器的数据结构,以及传感器的使用;还有 粒子滤波的原理,挺有意思的。特别是理解 一个粒子就是一张图。
    无处不在的小土-index
  6. 学习slam的基本流程。
    目标:
    1: 理解slam的基本流程,有个概念
    2:知道什么是优化方法,什么是回环检测;
    3:了解一下,slam的优化方法的理念

    最小二乘法和梯度下降的原理(看后半段):
    【机器学习】02.最小二乘法与梯度下降_哔哩哔哩_bilibili

    【SLAM核心算法】不愧是中科院博士教无人驾驶:原理、激光、无人机、VR、传感器、计算机视觉!_哔哩哔哩_bilibili
    还有
    3. 【视频】激光雷达数学模型和运动畸变去除_哔哩哔哩_bilibili
  7. 激光雷达的数学模型:
    像素模型:缺点计算量大,无法优化方法。
    似然场模型: 使用高斯平滑位置, 所以,稳定;使用查表表述位置距离信息,速度快。
Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐