来源:notes/topics/robotics_job_prep/01_地瓜机器人开发工程师岗位学习路线.md

地瓜机器人开发工程师岗位学习路线

日期:2026-07-14

一句话结论

这个岗位本质上不是单纯写业务代码,而是要做“机器人应用工程 + AI 新技术验证 + 开发者教育输出”的复合型工程师。想拿下这个岗位,最关键的是把能力补成 5 条主线:Python/C++/ROS2、机器人感知导航控制、数据采集到部署、VLM/VLA/Agent 新范式、以及能落地成 demo 和技术文档的工程输出能力。

岗位要求拆解

从截图里的 JD 反推,核心要求可以拆成下面几块:

  1. 机器人应用开发能力 需要基于 RDK 套件做感知、导航、操控、交互类 demo,说明你不能只懂算法,还要能把系统跑起来。

  2. AI 新技术验证能力 要跟踪 VLA、VLM、Agent + 机器人这类前沿方向,并验证它们在 RDK 平台上的可行性。

  3. AI 辅助研发能力 JD 明确写了要深度使用 Cursor / Copilot / Claude 这类工具,说明他们希望你不是传统开发者,而是“会借助 AI 放大产出”的工程师。

  4. 技术内容输出能力 岗位要求输出高质量代码与文档,还要协同社区答疑,所以你需要把“做出来”变成“讲清楚、复现出来”。

  5. 机器人项目经验 如果没有完整机器人项目,面试竞争力会明显弱;至少要补出 2-3 个能讲清架构、传感器、算法、部署和踩坑的项目。

你应该重点学什么

1. 编程与系统基础

这是硬门槛,优先级最高。

  • Python
    • 数据处理、模型推理脚本、机器人 glue code、快速原型。
  • C++
    • ROS2 节点、性能敏感模块、驱动接口、控制逻辑。
  • Linux
    • 进程、权限、网络、串口、日志、构建、交叉编译。
  • Git + CMake + colcon
    • 机器人项目基本工程化能力。

建议目标:

  • Python 能独立写推理/数据处理/部署脚本。
  • C++ 能独立写 ROS2 节点、消息通信、简单库封装。
  • 能在 Ubuntu 下独立编译、调试、定位依赖问题。

2. ROS2 与机器人软件栈

这是岗位里的核心底座。

重点学习:

  • ROS2 基础通信:topic / service / action / parameter / launch / tf2
  • 机器人描述:URDF
  • 导航:Nav2
  • 控制:ros2_control
  • 常见传感器接入与融合
  • 日志、录包、回放:rosbag2

建议目标:

  • 自己从 0 搭一个双轮底盘或仿真机器人,把建图、定位、导航链路跑通。
  • 能解释清楚 ROS2 节点间的消息流和系统拓扑。

3. 感知、导航、控制基础

这部分决定你是不是“懂机器人”。

重点学习:

  • 相机、IMU、LiDAR 的基本原理和噪声特性
  • 坐标系、外参、标定
  • OpenCV 基础
  • SLAM / 定位 / 路径规划基础概念
  • PID、运动学、轨迹跟踪、状态估计

建议目标:

  • 能说清楚 IMU 为什么漂移、LiDAR 为什么需要时空对齐、相机为什么依赖标定。
  • 能独立做一个“感知输入 -> 决策 -> 控制输出”的最小闭环 demo。

4. 数据采集 -> 训练 -> 部署

JD 明确要求理解机器人数据采集、训练、部署的基本流程。

重点学习:

  • 数据采集与标注
  • 训练集 / 验证集划分
  • 模型训练与评估
  • ONNX / TensorRT / 边缘部署
  • 推理延迟、吞吐、内存占用、量化

建议目标:

  • 能把一个感知模型从训练结果部署到板端或边缘设备。
  • 能解释“精度下降和实时性提升”之间的取舍。

5. VLM / VLA / LLM Agent

这是岗位的差异化重点。

重点学习:

  • VLM:视觉输入 + 语言理解
  • VLA:视觉语言动作,把 perception 和 action 接起来
  • Agent:任务分解、tool use、function calling、多步执行
  • LLM 在机器人中的典型角色:
    • 高层任务规划
    • 语义理解
    • 自然语言交互
    • 多工具编排

建议目标:

  • 能讲清楚 VLM、VLA、传统感知控制 pipeline 的区别。
  • 能做一个“自然语言指令 -> 感知理解 -> 动作执行”的 demo,即使是仿真版也可以。

6. 仿真与 Sim-to-Real

如果你没有真实机器人平台经验,仿真是最现实的补法。

重点学习:

  • MuJoCo:偏控制、强化学习、动力学
  • Isaac Sim:偏机器人仿真、传感器、合成数据、ROS2 联动
  • Sim-to-Real 的常见问题:延迟、噪声、动力学差异、传感器偏差

建议目标:

  • 至少熟一个仿真平台。
  • 能把仿真里的传感器、控制器、ROS2 通信串起来。

7. 技术文档与开发者输出

这个岗位不是闷头开发型岗位,必须会输出。

重点学习:

  • README、部署文档、故障排查文档
  • demo 复现说明
  • 方案文档与架构图
  • 技术博客 / 视频脚本表达

建议目标:

  • 每个项目都要有:项目背景、架构图、依赖、启动步骤、效果视频、已知问题。

推荐学习顺序

第一阶段:2-4 周

目标:补硬基础。

  • Python 基础和常用工程写法
  • C++ 基础语法、类、内存、STL
  • Linux / Git / CMake / colcon
  • ROS2 基础通信模型

第二阶段:4-8 周

目标:跑通机器人基本链路。

  • URDF、tf2、rosbag2
  • Nav2、ros2_control
  • OpenCV
  • 相机 / IMU / LiDAR 基础
  • 做一个 ROS2 机器人 demo

第三阶段:4-8 周

目标:补 AI + 机器人前沿。

  • VLM / Agent / Function Calling
  • OpenVLA / RT-2 这类 VLA 范式
  • MuJoCo 或 Isaac Sim
  • 做一个“语言指令控制机器人”的仿真项目

第四阶段:持续进行

目标:把学习变成作品集。

  • 每学完一块就写博客
  • 每做完一个 demo 就录视频
  • 把项目整理成 GitHub 仓库

最值得补的项目作品

如果你现在项目经验不够,优先补这 3 个。

项目 1:ROS2 + Nav2 自主导航 demo

最低要求:

  • 仿真或实物底盘
  • 激光雷达或深度相机
  • 建图、定位、导航跑通
  • 能讲清楚地图、定位、规划链路

项目 2:视觉感知 + 板端部署 demo

最低要求:

  • 用相机做目标检测或跟踪
  • 模型转换并部署到边缘端
  • 记录时延、帧率、精度损失

项目 3:VLM / Agent + 机器人交互 demo

最低要求:

  • 用户输入自然语言命令
  • LLM 或 VLM 做解析
  • 触发具体工具或机器人动作
  • 最好能接 ROS2 或仿真环境

教程 / 博客 / 视频链接

下面按学习方向整理,优先放官方文档和长期有效资料。

1. RDK 与地瓜机器人官方资料

  • RDK 官方文档入口:https://developer.d-robotics.cc/
  • RDK X5 文档中心:https://developer.d-robotics.cc/api/v1/fileData/documents_rdk/rdk_x5/index.html
  • D-Robotics 官方 GitHub:https://github.com/D-Robotics
  • 地瓜机器人官方 B 站主页:https://space.bilibili.com/3494375642948662
  • RDK X3 / X5 相关官方视频示例(B 站):https://www.bilibili.com/video/BV1hp4y1j791/

为什么先看这个:

这个岗位直接围绕 RDK 套件,越早熟悉官方 SDK、板卡能力、样例工程和部署方式,越能减少“学了一堆通用知识但和岗位不贴”的问题。

2. Python / C++ / 通用编程

  • Python 官方教程:https://docs.python.org/3/tutorial/
  • C++ 参考文档:https://en.cppreference.com/w/
  • LearnCpp(系统教程,非官方但质量高):https://www.learncpp.com/

3. ROS2 / 导航 / 控制

  • ROS 2 官方教程(Jazzy):https://docs.ros.org/en/jazzy/Tutorials.html
  • Nav2 官方文档:https://docs.nav2.org/
  • ros2_control 官方文档:https://control.ros.org/
  • URDF 教程入口:https://docs.ros.org/en/jazzy/Tutorials/Intermediate/URDF/URDF-Main.html

4. 感知 / 视觉 / 机器人基础

  • OpenCV 官方教程:https://docs.opencv.org/4.x/d6/d00/tutorial_py_root.html
  • Modern Robotics 官网:https://modernrobotics.northwestern.edu/
  • Modern Robotics 课程视频:https://modernrobotics.northwestern.edu/chapters/chapter1/
  • 《Underactuated Robotics》课程与讲义:https://underactuated.mit.edu/

说明:

Modern Robotics 更适合补机器人运动学、动力学、控制基础;Underactuated Robotics 更适合把控制和系统思维拉高一个层次。

5. 仿真

  • MuJoCo 官方文档:https://mujoco.readthedocs.io/en/stable/
  • MuJoCo 官方 Python 入门:https://mujoco.readthedocs.io/en/stable/python.html
  • NVIDIA Isaac Sim 官方文档:https://docs.isaacsim.omniverse.nvidia.com/latest/
  • Isaac Sim ROS2 教程入口:https://docs.isaacsim.omniverse.nvidia.com/latest/ros2_tutorials/index.html

6. VLM / VLA / Agent

  • Hugging Face Agents Course:https://huggingface.co/learn/agents-course/unit0/introduction
  • Lilian Weng 博客《LLM Powered Autonomous Agents》:https://lilianweng.github.io/posts/2023-06-23-agent/
  • OpenVLA 项目页:https://openvla.github.io/
  • RT-2 项目页:https://robotics-transformer2.github.io/

说明:

  • Lilian Weng 这篇非常适合建立 Agent 基本框架。
  • OpenVLART-2 适合建立“VLA 到底是什么、为什么对机器人重要”的直觉。

7. AI 编程工具与 Agent 工程化

  • OpenAI Function Calling 指南:https://platform.openai.com/docs/guides/function-calling
  • OpenAI Building Agents 指南:https://platform.openai.com/docs/guides/agents
  • Anthropic Prompt Engineering 文档:https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/overview

说明:

这部分不是让你背 API,而是要理解:

  • 如何把任务拆成多步
  • 如何让模型调用工具
  • 如何做失败重试、状态管理和结果校验

面试前你最好准备到什么程度

最低目标不是“全会”,而是能把一条完整链路讲明白。

建议你至少准备好下面 4 类面试素材:

  1. 一个机器人系统项目 你做了什么、用了什么传感器、节点如何通信、踩了什么坑、怎么验证。

  2. 一个板端部署项目 模型如何转换、为什么选这个模型、板端性能如何、优化了什么。

  3. 一个 AI + 机器人结合项目 哪怕只是仿真,只要你能讲清楚任务规划、感知输入、工具调用、动作执行,也比空谈强很多。

  4. 一份高质量文档或博客 这个岗位重视开发者案例输出,你最好拿得出已经公开整理过的技术内容。

如果时间有限,优先级怎么排

如果你现在时间不够,按这个顺序学最划算:

  1. Python + C++ + ROS2
  2. Nav2 + ros2_control + 传感器基础
  3. OpenCV + 边缘部署
  4. MuJoCo 或 Isaac Sim
  5. VLM / Agent / VLA
  6. 技术博客与 demo 输出

最后判断标准

你是否适合投这个岗位,不看你学过多少名词,而看你能否同时证明下面三件事:

  • 你能把机器人系统真正跑起来
  • 你能快速试用 AI 新技术并判断是否可落地
  • 你能把结果整理成别人可复现的代码和文档

如果这三点都能做到,这个岗位会很匹配你。

下一步动作

  1. 先判断你当前最短板的是哪一块:ROS2、机器人项目经验、还是 VLM/VLA/Agent
  2. 用 6-8 周补出一个可演示的机器人项目,而不是只刷教程。
  3. 每完成一个模块就沉淀博客和仓库,面试时直接作为作品集。