English
Robotics combines sensing, computation, and physical action. A robot must estimate relevant state, choose an action that respects its body’s limits, execute it, and use new observations to correct what happens next. The components interact: moving changes what a camera sees, a position error changes collision risk, and a delayed command can arrive after the situation has changed.
A useful starting example is a mobile robot approaching a doorway. Seeing the doorway is not enough: it needs the doorway’s position relative to its body, the width and orientation needed to pass, a feasible motion, and feedback about whether that motion occurred. This connects coordinate geometry, estimation, planning, and control in one task.
Autonomy varies by task and environment. A repeatable factory motion in a prepared cell differs from navigation among moving people. Learned perception and policies (§5.3–5.4) can be combined with explicit maps, motion constraints, and controllers. Assess the complete system, including sensors, actuators, computation timing, and the conditions in which it is expected to work.
Prerequisites: Linear algebra (§2.3), calculus (§2.4), probability (§2.5), and basic algorithms (§2.6). Begin with planar motion and simple feedback; three-dimensional rotations, dynamics, and probabilistic models can then be introduced as needed.
From Industrial Automation to Integrated Autonomous Systems
Early industrial robotics emphasized repeatable work in controlled environments. Unimate entered a General Motors production line in 1961, handling hot die-cast parts. Such equipment relied on engineered mechanisms, actuation, and motion control; describing it as having no sensors or feedback confuses limited environmental autonomy with the absence of control. Fixtures and predictable part placement were important parts of the working system.
SRI’s Shakey integrated sensing, action routines, search, and planning between the 1960s and early 1970s. Nilsson describes layers for hardware interaction, supervised primitive actions, and higher-level planning. STRIPS was developed within this project, rather than being a successor environment. Even in a simplified world, planning needed an adequate model and execution needed monitoring.
Reactive and behavior-based robotics investigated fast sensor-to-action responses, including Brooks’s subsumption architecture. This challenged the assumption that every useful behavior required constructing a complete central world model first. Reactive control and explicit planning solve different parts of a problem; systems can combine fast local responses with longer-horizon planning.
Probabilistic robotics made uncertainty in motion and sensing explicit. Bayesian filtering and SLAM developed methods for revising state and map estimates as evidence arrived. Thrun, Burgard, and Fox’s 2005 textbook consolidated an existing body of work. Representing uncertainty was useful because a single plausible position could hide ambiguity, and small motion errors could accumulate into large map errors.
The DARPA driving challenges of 2004, 2005, and 2007 tested integrated sensing, localization, planning, and control in progressively different settings. Improved components mattered, but so did calibration, failure handling, and extensive testing. Completing one course under specified conditions did not establish reliable driving in every road environment.
Robotics middleware such as ROS made component interfaces, tools, and reusable packages easier to share. It did not automatically make a collection of nodes a real-time or reliable robot. Timestamps, coordinate frames, units, message delays, and actuator behavior remain integration concerns.
Learning expanded visual perception and policy construction. Demonstrations, reinforcement learning, and simulation with varied parameters offered ways to obtain behavior that is difficult to specify manually. Systems such as RT-1 and RT-2 investigated sharing representations across tasks and instructions. Their significance should be assessed through tested tasks, data, interventions, and success rates, rather than treating language-model competence as evidence of physical competence.
Geometry, Estimation, and the Control Loop
Kinematics and Dynamics: The Mathematical Body
A configuration describes the robot’s degrees of freedom, such as joint angles. Forward kinematics maps a valid configuration to link poses for a specified mechanism. For a two-link planar arm with unit link lengths, the tip is x = cosθ₁ + cos(θ₁+θ₂) and y = sinθ₁ + sin(θ₁+θ₂). At (θ₁,θ₂)=(0°,90°), it reaches (1,1). The configuration (90°,−90°) reaches the same point with a different elbow position; (3,0) is outside its reach.
Inverse kinematics seeks configurations for a desired pose. Solutions may be absent, multiple, or constrained by joint limits and collisions. A reachable end point is not enough: the links must also be able to move there without collision. The configuration-space view represents forbidden body placements as regions to avoid, rather than planning only the end effector’s visible path.
A rigid transform combines rotation and translation. With an explicit convention, p_world = R p_body + t converts a point between frames. In three dimensions these transforms form SE(3); rotations form SO(3). Composition order matters because translating along a body axis and then rotating generally differs from translating along a world axis. Frame labels and units should travel with sensor and command data.
The Jacobian maps joint velocity to end-effector velocity locally. At a singular configuration, some instantaneous motions are unavailable or require large joint speeds. Dynamics adds the forces and torques needed to obtain motion: inertia, gravity, coupling, friction, and contact matter. Kinematically possible motion can therefore be dynamically infeasible. The Modern Robotics material develops these connections from geometry to motion planning and control.
Estimation: Knowing Where You Are
Estimation combines a prior account of state with measurements and their uncertainty. In a scalar linear-Gaussian example, let the prior position be 10 with variance 4, and an independent sensor measurement be 12 with noise variance 1. The Kalman gain is K = 4/(4+1) = 0.8; the updated estimate is 10 + 0.8(12−10) = 11.6, with variance 0.8. A more precise measurement receives more weight under this model.
The Kalman filter is exact for the specified linear-Gaussian state-space model. The EKF linearizes nonlinear models; particle filters approximate distributions with weighted samples. These methods rely on calibration, noise assumptions, and adequate representation. Reusing correlated evidence as if independent can make an estimate overconfident. A camera’s delayed measurement must be related to the state at its timestamp, not blindly treated as current.
SLAM jointly estimates trajectory and map. Motion observations connect nearby poses; recognizing a previously visited place can add a loop-closure constraint that corrects accumulated drift. A false correspondence can instead distort the map. Without an external reference, the global coordinate frame can remain arbitrary; an internally consistent map does not automatically supply absolute geographic position.
Dense covariance methods, particle-based methods, and sparse graph optimization have different costs and approximations. Graph methods exploit local constraints, but nonlinear optimization, outliers, and data association still matter. Visual-inertial odometry combines camera and inertial evidence; distinguish local trajectory tracking, map maintenance, and relocalization after tracking fails.
Control: Closing the Loop
Feedback compares measured or estimated behavior with a target and adjusts the command. In the toy discrete system xₖ₊₁ = xₖ + k(r−xₖ), a fixed target r gives error update eₖ₊₁ = (1−k)eₖ. The error shrinks when 0<k<2; with k=0.5 it halves each step, while k=2.5 produces growing oscillations. This simple model explains why increasing gain can destabilize a loop. Real sampling, delays, and actuator dynamics change the analysis.
PID combines proportional error, accumulated error, and an error-rate term. Integral action can remove a persistent offset but can accumulate excessively during actuator saturation; derivative action can amplify measurement noise. Filtering, anti-windup, and a suitable update rate matter. Coupled robots may use joint controllers, feedforward dynamics, or multivariable control; coupling does not imply that PID is categorically unusable.
A planner chooses a feasible path or sequence; a trajectory adds timing; a controller tracks it under disturbances. Sampling-based planners explore configuration space when enumerating it is impractical. Collision resolution and model accuracy determine what a computed path means. A controller cannot compensate for an impossible command merely by tracking harder.
Model predictive control repeatedly optimizes a finite-horizon action sequence and applies its first action before replanning. Constraints can represent speed, torque, or clearance limits. The solution is only as useful as the model, state estimate, feasibility handling, and computation deadline. A solution that arrives too late is not a valid real-time command.
Learned policies can use demonstrations or reinforcement learning to select actions. Sim-to-real transfer depends on whether training covers relevant sensing, dynamics, contacts, and delays. Domain randomization varies modeled factors; it cannot cover an omitted mechanism by itself. Compare learned, model-based, and combined controllers on the same conditions, including interventions and recovery, rather than assuming one method is universally superior.
What Studying This Changes
You should be able to distinguish a wrong coordinate transform, a poor state estimate, an infeasible plan, and an unstable controller. They can produce similar visible failures but require different corrections.
Start with a simulated two-link arm or mobile robot. Verify the kinematics against hand calculations, log timestamps and frame names, and introduce sensor noise or delay separately. Compare predicted and observed motion, not only whether the robot eventually reaches the target.
Report the operating conditions, task success, interventions, timing, and uncertainty of the evaluation. An attractive demonstration is a starting observation; repeatable performance across stated conditions is stronger evidence about what the system can do.
Resources
Books and Texts
Lynch and Park’s Modern Robotics connects kinematics, dynamics, planning, and control with exercises and code. Use Probabilistic Robotics for state estimation, and LaValle’s Planning Algorithms for configuration spaces and search. The other robotics texts offer complementary formulations. Work through a planar example before treating three-dimensional notation as a prerequisite to every exercise.
| Book | Role | Type |
|---|---|---|
| Lynch & Park, Modern Robotics (free) | Contemporary foundational text | Entry |
| Thrun, Burgard & Fox, Probabilistic Robotics | Probabilistic estimation; SLAM | Depth |
| Siciliano et al., Robotics: Modelling, Planning and Control | Comprehensive classical reference | Reference |
| LaValle, Planning Algorithms (free) | Motion planning foundational text | Depth |
| Murray, Li & Sastry, Mathematical Introduction to Robotic Manipulation (free) | Lie group kinematics and manipulation | Depth |
| Spong, Hutchinson & Vidyasagar, Robot Modeling and Control (2nd ed.) | Robot dynamics and control | Depth |
| Siegwart, Nourbakhsh & Scaramuzza, Introduction to Autonomous Mobile Robots (2nd ed.) | Mobile robotics foundation | Depth |
Courses and Lectures
The Modern Robotics course materials support the textbook sequence. Underactuated Robotics develops dynamics, optimization, and control in greater depth; Stachniss’s lectures provide a route into localization and mapping. Compare an equation with a small implementation and a plotted trajectory. When a course changes its number or software version, follow the named course’s official materials rather than assuming an old command still applies.
| Course | Platform | Type |
|---|---|---|
| Modern Robotics course materials | modernrobotics.northwestern.edu | Entry |
| MIT Underactuated Robotics (free materials) | underactuated.mit.edu | Depth |
| Stanford CS223A Introduction to Robotics (free) | Stanford / YouTube | Entry |
| Cyrill Stachniss SLAM lectures (free) | YouTube | Practice |
Practice, Tools, and Current Sources
Use a simulator such as Drake, Gazebo, or MuJoCo for controlled experiments, and ROS 2 documentation to understand component communication. Pick one environment compatible with the course rather than learning every simulator. Log frames, timestamps, units, commands, and measurements. Add noise, delay, or a changed physical parameter separately so a failure can be attributed to a known change. Physical hardware adds calibration, actuation, and operating constraints that simulation alone does not test.
| Resource | Platform | Type |
|---|---|---|
| ROS 2 documentation and tutorials (free) | docs.ros.org; select the matching distribution | Practice |
| Drake (free) | drake.mit.edu | Practice |
| NVIDIA Isaac Sim (free; hardware requirements; NVIDIA ecosystem) | developer.nvidia.com/isaac-sim | Practice |
| Gazebo simulator (free) | gazebosim.org | Practice |
| Foxglove documentation (free tier / paid platform) | docs.foxglove.dev | Practice |
| Gymnasium + MuJoCo (free) | gymnasium.farama.org | Practice |
| GTSAM (free) | gtsam.org | Practice |
| Cyrill Stachniss SLAM Python notebooks (free) | GitHub | Practice |
| Physical robot build project | Local hardware | Practice |
Traps
| Trap | Why it misleads | Better response |
|---|---|---|
| Treating software output as successful physical action | Commands can be delayed, saturated, or interpreted in the wrong frame. | Measure resulting motion and inspect the complete feedback loop. |
| Planning only the end-effector path | Other links, joint limits, and dynamic constraints can make it infeasible. | Check the configuration and timed trajectory of the whole robot. |
| Treating a filtered estimate as ground truth | Incorrect calibration or correlated evidence can produce confident errors. | Check residuals, timestamps, uncertainty, and independent references. |
| Assuming more controller gain means better tracking | Gain, delay, sampling, and actuation interact and can cause instability. | Analyze a simple model and measure response before increasing gains. |
| Assuming simulation success guarantees transfer | Unmodeled contact, sensing, and latency can dominate real behavior. | Identify the transfer assumptions and test them under controlled conditions. |
| Evaluating only selected successful demonstrations | Failures and interventions determine the actual operating capability. | Report task distributions, repeated trials, failures, and assistance. |
中文
机器人学结合感知、计算和物理行动。机器人需要估计相关状态,选择符合身体限制的动作,执行动作,再用新观测纠正后续行为。各部分相互影响:移动改变相机所见,位置误差改变碰撞风险,延迟的命令可能在情境已经变化后才到达。
可以从移动机器人通过门口的例子开始。仅仅看见门还不够:它需要知道门相对于自身的位置、通过所需的宽度与朝向、可行的运动,以及运动是否真正发生的反馈。这一个任务就连接了坐标几何、估计、规划和控制。
自主程度随任务和环境而变化。在准备好的工位重复工厂动作,与在人群中导航不同。学习得到的感知和策略(§5.3–5.4),可以和显式地图、运动约束及控制器组合。评估时需要检查包括传感器、执行器、计算时序和预期工作条件在内的完整系统。
前置知识:线性代数(§2.3)、微积分(§2.4)、概率(§2.5)和基本算法(§2.6)。先从平面运动与简单反馈开始,再按需要引入三维旋转、动力学和概率模型。
从工业自动化到集成自主系统
早期工业机器人强调在受控环境中重复工作。Unimate 于 1961 年进入通用汽车生产线,处理高温压铸件。这类设备依赖工程化机构、驱动和运动控制;说它“没有传感器或反馈”,混淆了有限的环境自主性与没有控制。工装和可预测的零件位置,也是系统能够工作的组成部分。
SRI 的 Shakey 在 20 世纪 60 年代至 70 年代初,将感知、动作程序、搜索和规划集成起来。Nilsson 描述了硬件交互、受监督的基本动作和高层规划等层次。STRIPS 在这个项目中形成,并不是它的后继环境。即使世界被简化,规划仍需要适当模型,执行仍需要监控。
反应式与行为式机器人研究快速的感知到动作响应,包括 Brooks 的包容架构。这些工作质疑了每种有用行为都必须先构造完整中央世界模型的假设。反应控制与显式规划处理不同部分的问题,系统可以把快速局部响应与更长时间范围的规划组合起来。
概率机器人学明确表示运动与感知的不确定性。贝叶斯滤波和 SLAM 研究怎样随证据到达而修订状态与地图估计。Thrun、Burgard 与 Fox 的 2005 年教材整理了已经形成的研究。表示不确定性之所以有用,是因为单一的合理位置可能隐藏歧义,而小的运动误差可能累积成大的地图误差。
2004、2005 和 2007 年的 DARPA 驾驶挑战,在逐步变化的场景中检验了感知、定位、规划和控制的集成。组件改进重要,校准、失败处理和大量测试也重要。在特定条件下完成一条路线,不代表能在所有道路环境中可靠驾驶。
ROS 等机器人中间件使组件接口、工具和可复用软件包更容易共享,但不会自动把一组节点变成实时、可靠的机器人。时间戳、坐标系、单位、消息延迟和执行器行为,仍然需要集成时处理。
学习方法扩展了视觉感知和策略构造。示范、强化学习以及参数变化的模拟,提供了获得难以手工指定行为的途径。RT-1、RT-2 等系统研究跨任务和指令共享表示。其意义应通过实际测试的任务、数据、干预和成功率评估,不能把语言模型能力直接当成物理行动能力的证据。
几何、估计与控制闭环
运动学与动力学:数学化的身体
构型描述机器人的自由度,例如关节角。对于指定机构,正运动学把有效构型映射为各连杆的位姿。以连杆长度均为 1 的平面双连杆机械臂为例,末端位置是 x = cosθ₁ + cos(θ₁+θ₂) 和 y = sinθ₁ + sin(θ₁+θ₂)。当 (θ₁,θ₂)=(0°,90°) 时,它到达 (1,1);构型 (90°,−90°) 以不同的肘部位置到达同一点,而 (3,0) 超出可达范围。
逆运动学为目标位姿寻找构型。解可能不存在、可能不唯一,还受到关节限位和碰撞约束。末端可达并不足够,各连杆还必须能够无碰撞地移动过去。构型空间方法把禁止的身体位置表示为需要避开的区域,而不是只规划末端看得见的路径。
刚体变换结合旋转与平移。在明确约定下,p_world = R p_body + t 将点从一个坐标系转换到另一个坐标系。三维刚体变换构成 SE(3),旋转构成 SO(3)。组合顺序重要,因为沿机体轴平移后再旋转,通常不同于沿世界坐标轴平移。传感器和命令数据应带有坐标系标识及单位。
雅可比矩阵局部地把关节速度映射为末端速度。在奇异构型下,某些瞬时运动无法实现,或需要很大的关节速度。动力学进一步描述实现运动所需的力和力矩:惯性、重力、耦合、摩擦及接触都会影响结果。因此运动学上可行的运动,在动力学上可能不可行。Modern Robotics 材料 将几何与运动规划、控制联系起来。
估计:知道自己在哪里
估计把状态的先验描述与测量及其不确定性结合起来。在一维线性高斯例子中,假设先验位置为 10、方差为 4,独立的传感器测量为 12、噪声方差为 1。卡尔曼增益为 K = 4/(4+1) = 0.8,更新后的估计为 10 + 0.8(12−10) = 11.6,方差为 0.8。在这个模型下,更精确的测量获得更大权重。
卡尔曼滤波对指定的线性高斯状态空间模型给出精确结果。EKF 对非线性模型局部线性化,粒子滤波用加权样本近似分布。这些方法依赖校准、噪声假设和适当的表示。把相关证据当成独立证据重复使用,会使估计过度自信。相机延迟到达的测量应对应其时间戳处的状态,不能直接当作当前观测。
SLAM 同时估计轨迹和地图。运动观测连接相邻位姿,识别曾经到过的地点,可以增加回环约束,纠正累积漂移。错误对应则可能扭曲地图。没有外部参考时,全局坐标系可能仍是任意选择的;内部一致的地图不会自动给出绝对地理位置。
稠密协方差方法、粒子方法与稀疏图优化有不同成本和近似。图方法利用局部约束,但非线性优化、异常值与数据关联仍然重要。视觉惯性里程计结合相机与惯性证据;应区分局部轨迹跟踪、地图维护和跟踪失败后的重新定位。
控制:闭合回路
反馈将测量或估计的行为与目标比较,再调整命令。在简单离散系统 xₖ₊₁ = xₖ + k(r−xₖ) 中,固定目标 r 对应误差更新 eₖ₊₁ = (1−k)eₖ。当 0<k<2 时误差收缩;k=0.5 时每步减半,k=2.5 时则产生不断增大的振荡。这个模型解释了为什么增大增益可能使回路失稳。真实采样、延迟和执行器动力学会改变分析。
PID 结合比例误差、累积误差和误差变化率。积分项可以消除持续偏差,但执行器饱和时可能过度累积;微分项可能放大测量噪声。过滤、防积分饱和和合适的更新频率都重要。耦合机器人可以使用关节控制器、动力学前馈或多变量控制;存在耦合并不意味着 PID 完全不可用。
规划器选择可行路径或动作序列,轨迹再加入时间安排,控制器在扰动下跟踪轨迹。当构型空间难以枚举时,采样式规划器探索其中的候选。碰撞检查的分辨率和模型准确性,决定计算路径的实际含义。控制器不能仅靠加强跟踪,弥补不可能执行的命令。
模型预测控制反复优化有限时间范围内的动作序列,先执行第一个动作,再重新规划。约束可以表示速度、力矩或间隙限制。解的实用性取决于模型、状态估计、不可行情况处理及计算截止时间。太晚才得到的解,不能成为有效的实时命令。
学习策略可以通过示范或强化学习选择动作。从模拟迁移到实物,取决于训练是否覆盖相关感知、动力学、接触和延迟。域随机化改变已建模因素,本身不能覆盖遗漏的机制。应在相同条件下比较学习控制、基于模型的控制和组合控制,包括干预与恢复,而不预设哪一种普遍更好。
学习这一部分会改变什么
学完后,应能区分坐标变换错误、状态估计不佳、计划不可行和控制器不稳定。它们可能产生相似的可见失败,却需要不同修正。
从模拟双连杆机械臂或移动机器人开始。用手算核对运动学,记录时间戳和坐标系名称,再分别引入传感器噪声或延迟。比较预测运动与实际运动,而不只检查最终是否到达目标。
报告评估的运行条件、任务成功、人工干预、时序和不确定性。演示可以提供初始观察,在明确条件下可重复的表现,则提供了关于系统能力的更强证据。
资源
书籍与文本
Lynch 与 Park 的 Modern Robotics 通过练习和代码连接运动学、动力学、规划与控制。用 Probabilistic Robotics 学习状态估计,用 LaValle 的 Planning Algorithms 学习构型空间与搜索。其他机器人教材提供补充表述。先做平面例子,不必把三维记号当成每个练习的门槛。
| 书籍 | 作用 | 类型 |
|---|---|---|
| Lynch & Park, Modern Robotics(免费) | 当代基础文本 | 入门 |
| Thrun, Burgard & Fox, Probabilistic Robotics | 概率估计;SLAM | 深入 |
| Siciliano et al., Robotics: Modelling, Planning and Control | 全面古典参考 | 参考 |
| LaValle, Planning Algorithms(免费) | 运动规划基础文本 | 深入 |
| Murray, Li & Sastry, Mathematical Introduction to Robotic Manipulation(免费) | 李群运动学与操作 | 深入 |
| Spong, Hutchinson & Vidyasagar, Robot Modeling and Control(第 2 版) | 机器人动力学与控制 | 深入 |
| Siegwart, Nourbakhsh & Scaramuzza, Introduction to Autonomous Mobile Robots(第 2 版) | 移动机器人基础 | 深入 |
课程与讲座
Modern Robotics 课程材料支持教材的学习顺序。Underactuated Robotics 更深入地讲动力学、优化和控制,Stachniss 的讲座 提供定位与建图路线。将方程与小型实现、轨迹图逐项比较。课程编号或软件版本改变时,应查阅课程官网材料,不要假定旧命令仍然适用。
| 课程 | 平台 | 类型 |
|---|---|---|
| Modern Robotics 课程材料 | modernrobotics.northwestern.edu | 入门 |
| MIT Underactuated Robotics(公开材料) | underactuated.mit.edu | 深入 |
| Stanford CS223A Introduction to Robotics(免费) | Stanford / YouTube | 入门 |
| Cyrill Stachniss SLAM lectures(免费) | YouTube | 实践 |
实践、工具与当前资料
用 Drake、Gazebo 或 MuJoCo 等模拟器开展受控实验,用 ROS 2 文档理解组件通信。选择与课程兼容的一种环境,不必学习所有模拟器。记录坐标系、时间戳、单位、命令和测量。分别加入噪声、延迟或物理参数变化,让失败能对应到已知改动。真实硬件还增加校准、驱动和运行约束,模拟本身不能检验这些。
| 资源 | 平台 | 类型 |
|---|---|---|
| ROS 2 文档与教程(免费) | docs.ros.org;选择对应发行版 | 实践 |
| Drake(免费) | drake.mit.edu | 实践 |
| NVIDIA Isaac Sim(免费;硬件要求;NVIDIA 生态) | developer.nvidia.com/isaac-sim | 实践 |
| Gazebo simulator(免费) | gazebosim.org | 实践 |
| Foxglove documentation(免费层 / 付费平台) | docs.foxglove.dev | 实践 |
| Gymnasium + MuJoCo(免费) | gymnasium.farama.org | 实践 |
| GTSAM(免费) | gtsam.org | 实践 |
| Cyrill Stachniss SLAM Python notebooks(免费) | GitHub | 实践 |
| Physical robot build project | 本地硬件 | 实践 |
陷阱
| 误区 | 为什么会误导 | 更好的做法 |
|---|---|---|
| 把软件输出当成物理行动成功 | 命令可能延迟、饱和或采用错误坐标系。 | 测量实际运动,检查完整反馈回路。 |
| 只规划末端路径 | 其他连杆、关节限位和动力学约束可能使路径不可行。 | 检查整个机器人的构型与带时间的轨迹。 |
| 把滤波估计当成真值 | 错误校准或相关证据可能产生自信的错误。 | 检查残差、时间戳、不确定性与独立参考。 |
| 认为控制增益越大跟踪越好 | 增益、延迟、采样与驱动相互作用,可能引起失稳。 | 先分析简单模型并测量响应,再调整增益。 |
| 认为模拟成功保证迁移成功 | 未建模的接触、感知和延迟可能主导真实行为。 | 明确迁移假设,在受控条件下测试。 |
| 只评价选出的成功演示 | 失败和干预决定实际运行能力。 | 报告任务分布、重复试验、失败与协助。 |