ROS2 学习打卡表 ✅
第 1 周:环境与工具
天数 | 学习目标 | 打卡 |
---|
Day 1 | 安装 Ubuntu / 复习 Linux 基本命令 | ☐ |
Day 2 | 安装 ROS2 Humble,配置环境变量 | ☐ |
Day 3 | 配置工作空间 colcon build ,熟悉 rosdep | ☐ |
Day 4 | 跑 talker/listener demo,用 ros2 topic 查看 | ☐ |
Day 5 | 熟悉 ros2 node list 、ros2 pkg list | ☐ |
Day 6 | 使用 rviz2 可视化 demo 数据 | ☐ |
Day 7 | 复习 & 总结 ROS2 基础命令 | ☐ |
第 2 周:Publisher / Subscriber / Service / Action
天数 | 学习目标 | 打卡 |
---|
Day 8 | C++ 写一个 Publisher | ☐ |
Day 9 | Python 写一个 Subscriber | ☐ |
Day 10 | C++ 写一个 Service Server(加法) | ☐ |
Day 11 | Python 写一个 Service Client | ☐ |
Day 12 | 实现一个 Action(定时任务,带反馈) | ☐ |
Day 13 | 学习 QoS,测试不同设置 | ☐ |
Day 14 | 复习 & 小项目:温度传感器模拟器 | ☐ |
第 3 周:参数 / Launch / TF
天数 | 学习目标 | 打卡 |
---|
Day 15 | 学习 ROS2 参数系统(get/set) | ☐ |
Day 16 | 使用 YAML 文件加载参数 | ☐ |
Day 17 | 写一个 Launch 文件(多节点启动) | ☐ |
Day 18 | 学习 TF2,订阅坐标变换 | ☐ |
Day 19 | 写一个发布静态 TF 的节点 | ☐ |
Day 20 | RViz2 可视化 TF | ☐ |
Day 21 | 复习 & 小练习:激光雷达坐标系 | ☐ |
第 4 周:URDF 与仿真
天数 | 学习目标 | 打卡 |
---|
Day 22 | 学习 URDF 基础语法 | ☐ |
Day 23 | 写一个 URDF 小车模型 | ☐ |
Day 24 | RViz2 显示 URDF | ☐ |
Day 25 | 学习 Gazebo / Ignition | ☐ |
Day 26 | 安装 TurtleBot3 仿真包 | ☐ |
Day 27 | 运行 TurtleBot3 键盘控制 | ☐ |
Day 28 | 复习 & 总结 URDF → RViz → Gazebo | ☐ |
第 5 周:激光雷达数据处理
天数 | 学习目标 | 打卡 |
---|
Day 29 | 学习 LaserScan 消息格式 | ☐ |
Day 30 | 写 Subscriber,订阅 /scan | ☐ |
Day 31 | 处理激光数据(最小/最大距离) | ☐ |
Day 32 | 用 ros2 bag 录制/回放 /scan | ☐ |
Day 33 | RViz2 显示激光雷达点云 | ☐ |
Day 34 | 实现简单避障逻辑(前方 <0.5m 停止) | ☐ |
Day 35 | 复习 & 总结激光雷达处理 | ☐ |
第 6 周:相机数据处理
天数 | 学习目标 | 打卡 |
---|
Day 36 | 学习 sensor_msgs/Image 消息格式 | ☐ |
Day 37 | 运行 cam2image 节点 | ☐ |
Day 38 | 写 Subscriber,保存图片 | ☐ |
Day 39 | 学习 cv_bridge + OpenCV | ☐ |
Day 40 | RViz2 显示相机画面 | ☐ |
Day 41 | 实现图像处理 demo(灰度/边缘检测) | ☐ |
Day 42 | 复习 & 总结相机处理流程 | ☐ |
第 7 周:SLAM(建图)
天数 | 学习目标 | 打卡 |
---|
Day 43 | 学习 SLAM 基本原理 | ☐ |
Day 44 | 安装 slam_toolbox ,运行 demo | ☐ |
Day 45 | 在仿真中运行 SLAM 建图 | ☐ |
Day 46 | 保存/加载地图 | ☐ |
Day 47 | 尝试 Cartographer SLAM | ☐ |
Day 48 | 对比 slam_toolbox 和 cartographer | ☐ |
Day 49 | 复习 & 总结 SLAM 建图流程 | ☐ |
第 8 周:导航(Nav2)
天数 | 学习目标 | 打卡 |
---|
Day 50 | 学习 Nav2 框架组成 | ☐ |
Day 51 | 加载地图 | ☐ |
Day 52 | 启动 Nav2,手动设定目标点 | ☐ |
Day 53 | 用 ros2 action send_goal 发送目标点 | ☐ |
Day 54 | 修改 planner 参数,观察效果 | ☐ |
Day 55 | 多点导航任务 | ☐ |
Day 56 | 复习 & 总结 SLAM + Nav2 流程 | ☐ |
第 9 周:整合 SLAM + Nav2
天数 | 学习目标 | 打卡 |
---|
Day 57 | 回顾 SLAM,重新建图并保存 | ☐ |
Day 58 | 加载地图,启动 Nav2 | ☐ |
Day 59 | RViz2 设定目标点导航 | ☐ |
Day 60 | 用命令行发送目标点 | ☐ |
Day 61 | Python 脚本发送导航目标点 | ☐ |
Day 62 | Python 脚本实现多点导航 | ☐ |
Day 63 | 复习 & 总结导航流程 | ☐ |
第 10 周:避障与优化
天数 | 学习目标 | 打卡 |
---|
Day 64 | 学习 costmap 概念 | ☐ |
Day 65 | 调整局部 costmap 参数 | ☐ |
Day 66 | 测试障碍物避障效果 | ☐ |
Day 67 | 学习 Nav2 局部规划器 | ☐ |
Day 68 | 修改速度约束参数 | ☐ |
Day 69 | 写一个紧急避障节点 | ☐ |
Day 70 | 复习 & 总结避障优化 | ☐ |
第 11 周:项目实战(巡航小车)
天数 | 学习目标 | 打卡 |
---|
Day 71 | 设计项目目标:自动巡航 | ☐ |
Day 72 | Python 节点:按路线发送目标点 | ☐ |
Day 73 | RViz2 测试巡航效果 | ☐ |
Day 74 | 增加异常处理:失败重规划 | ☐ |
Day 75 | 用 ros2 launch 管理整体 | ☐ |
Day 76 | 录制 bag 数据,分析路径 | ☐ |
Day 77 | 写巡航小车总结 | ☐ |
第 12 周:进阶项目(MoveIt2 / 多机器人)
天数 | 学习目标 | 打卡 |
---|
Day 78 | 安装 MoveIt2 | ☐ |
Day 79 | 运行 MoveIt2 demo | ☐ |
Day 80 | Python 脚本控制机械臂姿态 | ☐ |
Day 81 | 测试抓取 + 放置流程 | ☐ |
Day 82 | 学习 ROS2 多机通信 | ☐ |
Day 83 | 仿真两个小车协作导航 | ☐ |
Day 84 | 总结 12 周学习成果 | ☐ |
chatgpt给出来的表,可以参照,学习资料等自己找(可以参照官网、古月居、其他书籍网站等)