引言
2025年,机器人技术迎来前所未有的发展机遇。随着人工智能、传感器技术和计算能力的不断进步,现代机器人系统正从传统的程序化执行向真正的智能自主系统演进。本文将全面回顾当前机器人技术的核心领域进展,涵盖感知、规划、控制和学习等方面。
1. 生物学中的操控能力
1.1 动物的操控能力
在众多动物类群中,操控能力与智力之间存在显著相关性。拥有特殊附肢(如灵长类的手、大象的长鼻、章鱼的触腕、鸦科鸟类的喙)的物种通常表现出更高级的认知能力。
尽管这种关系并非普遍存在,但复杂操控能力的形成常与更高的智力共同进化,二者在问题解决、工具使用及环境适应中相互强化。
1.2 最聪明的动物
以下动物被认为具有高度智能:
- 黑猩猩(Chimpanzees)
- 海豚(Dolphin)
- 章鱼(Octopi)
- 大象(Elephant)
- 红猩猩(Orangutans)
- 乌鸦(Crows)
值得注意的是,章鱼的神经元约有 60–70% 分布在外周神经节中,而非集中在大脑,这使得其神经系统结构与其他动物截然不同。
1.3 大脑结构与操控能力
图说明:纵轴为脑容量(log brain volume),横轴为体重对数(log body weight)。图中展示了不同动物在脑容量与体重之间的分布关系:从鸽子、鹦鹉、鸦科鸟类、古人类(Australopithecus)、猿类、人类到海豚。章鱼被标注了一个问号,表示其脑结构与其他动物截然不同,尽管拥有高智能,但不遵循相同的脑-体比例规律。
大脑皮层中负责身体不同部位的区域被夸张地拟人化后形成了“脑小人”模型:
- 感觉小人(Sensory Homunculus):表示身体各部位在躯体感觉皮层中所占比例。
- 运动小人(Motor Homunculus):表示身体各部位在运动皮层中所占比例。
这些模型突出了手、嘴唇、舌头等部位在感知与操控中的重要性。
2. 刚体运动学基础
2.1 旋转矩阵与姿态表示
旋转矩阵 $ R \in SO(3) $ 表示刚体的姿态方向,是一个 $ 3 \times 3 $ 的正交矩阵,满足:
$$
R^\top R = I, \quad \det® = 1
$$
在三维空间中,旋转矩阵有 3 个自由度,分别对应绕 x、y、z 轴的旋转。
2.2 位置与速度关系
$$
\dot{p} = v
$$
位置向量 $ p \in \mathbb{R}^3 $ 的时间导数是线速度向量 $ v $,表示刚体在惯性坐标系中的平移速度。
2.3 旋转与角速度关系
旋转矩阵随时间的变化由角速度向量 $ \omega \in \mathbb{R}^3 $ 描述:
$$
\dot{R} = R [\omega]_\times
$$
其中 $ [\omega]_\times $ 是由角速度构成的反对称矩阵:
$$
[\omega]_\times =
\begin{bmatrix}
0 & -\omega_z & \omega_y \\
\omega_z & 0 & -\omega_x \\
-\omega_y & \omega_x & 0
\end{bmatrix}
$$
2.4 刚体位姿与速度扭量
刚体在空间中的位姿由下式定义:
$$
g = (R, p) \in SE(3)
$$
其中:
- $ R $:姿态(Orientation)
- $ p $:位置(Position)
线速度 $ v $ 与角速度 $ \omega $ 可组合成扭量向量:
$$
V =
\begin{bmatrix}
v \
\omega
\end{bmatrix}
\in \mathbb{R}^6
$$
扭量 $ V $ 描述了刚体在空间中的线性与旋转运动状态。
直观理解
- 惯性坐标系:固定的空间参考系。
- 刚体坐标系:随刚体移动的参考系。
- 位姿 $ g = (R, p) $:刚体相对于惯性系的位置与姿态。
- 扭量 $ V = [v; \omega] $:刚体此刻的速度状态。
3. 泊松公式
泊松公式(Poisson Equation)如下:
$$
\dot{e}_i = \omega \times e_i
$$
该公式表明,刚体坐标系中每一个固定轴向量 $ e_i $ 的时间导数等于角速度向量 $ \omega $ 与该轴向量的叉积。
3.1 反求公式
通过泊松公式可以反推出角速度向量:
$$
\omega = (\dot{e}_2 \cdot e_3) e_1 + (\dot{e}_3 \cdot e_1) e_2 + (\dot{e}_1 \cdot e_2) e_3
$$
解释:
- $ \dot{e}_i $:坐标轴的变化速率
- $ \omega $:整体角速度
- “·” 表示点积,“×” 表示叉积
这个公式是连接旋转矩阵时间导数与角速度的关键桥梁之一。
4. 机械臂类型
4.1 串联机械臂(Serial Manipulator)
典型代表:UR机械臂、协作机器人等。
- 特点:关节逐级连接,末端自由度由各关节叠加获得。
- 优点:
- 工作空间大
- 结构灵活,适合复杂路径规划
- 缺点:
- 刚度较低
- 误差累积
- 动态响应较慢
4.2 并联机械臂(Parallel Manipulator)
典型代表:Delta 机器人、高速分拣机器人。
- 特点:末端由多个支链共同驱动,结构闭环。
- 优点:
- 刚度高
- 质量轻,加速度高,适合高速作业
- 缺点:
- 工作空间较小
- 运动学分析复杂
4.3 混合型机械臂(Hybrid Manipulator)
典型代表:ABB 工业机器人、装配/搬运机器人。
- 特点:综合串联与并联结构优点。
- 优点:
- 刚度与灵活性平衡
- 能在较大空间内保持高负载能力
- 实现高速、大范围搬运
- 缺点:
- 结构复杂,成本高
- 控制系统设计难度大
4.4 类型对比总结
类型 | 工作空间 | 刚度 | 加速度 | 应用场景 |
---|---|---|---|---|
串联型 | ⭐⭐⭐⭐ | ⭐⭐ | ⭐⭐ | 协作机器人、灵巧操作 |
并联型 | ⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | 高速分拣、精密装配 |
混合型 | ⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐ | 工业搬运、喷涂、焊接 |
📌 一句话总结:
串联系统“灵活但软”,并联系统“刚且快”,混合系统“折中且强”。
5. 人体手臂与机械臂的类比
5.1 单自由度旋转关节模型
人体的肘关节可抽象为一个典型的单自由度旋转关节(revolute joint),手臂运动等价于两段连杆绕同一旋转轴运动的机械臂模型。
- 展示手臂在屈伸运动中的姿态变化
- 关节角度记为 $ q_1 $
5.2 模型对应关系
人体部位 | 机械臂模型元素 | 含义 |
---|---|---|
肩到肘的上臂 | 第一根连杆(Link 1) | 固定部分 |
肘到手的前臂 | 第二根连杆(Link 2) | 运动部分 |
肘关节 | 旋转关节 | 角度变化 $ q_1 $ |
肘关节旋转轴 | $ z_0 $ | 关节旋转方向 |
5.3 运动学解释
旋转关节的基本运动公式为:
$$
\mathbf{R}(q_1) =
\begin{bmatrix}
\cos q_1 & -\sin q_1 & 0 \
\sin q_1 & \cos q_1 & 0 \
0 & 0 & 1
\end{bmatrix}
$$
- 当角度 $ q_1 $ 改变时,前臂位置随之旋转
- 这是刚体旋转运动的典型形式
- 是 DH 参数法的基础步骤之一
6. 关节坐标与工作空间
6.1 关节空间(Joint Space)
符号:
$$
q_i, \ \theta_i, \ d_i
$$
这些变量描述机械臂各关节的配置状态:
变量 | 含义 | 对应类型 |
---|---|---|
$ q_i $ | 关节变量 | 通用符号 |
$ \theta_i $ | 旋转角度 | 旋转关节(Revolute) |
$ d_i $ | 线位移 | 移动关节(Prismatic) |
由所有 $ q_i $ 组成的向量 $ \mathbf{q} = [q_1, q_2, …, q_n]^\top $ 定义了关节空间中的姿态。
6.2 工作空间(Workspace)
符号:
$$
p_i(x, y, z), \quad R_i(p_i, p_j, p_k)
$$
这些变量描述机械臂末端在三维空间中的位置与姿态:
变量 | 含义 | 对应 |
---|---|---|
$ p_i(x,y,z) $ | 末端位置向量 | 位移 |
$ R_i $ | 旋转矩阵 | 姿态 |
6.3 正运动学关系
$$
f: \text{Joint Space} \rightarrow \text{Workspace}
$$
即:
$$
(p_i, R_i) = f(q_1, q_2, \dots, q_n)
$$
这就是正运动学(Forward Kinematics)——将关节变量转换为末端执行器的位置和姿态。
6.4 图示说明
将人体上肢建模为多关节系统(肩、肘、腕),对应机械臂的多自由度结构。
- $ O_0 $:基坐标系
- $ a, b, c $:表示上臂、前臂、手部的连杆长度
展示了一个五关节机械臂的关节坐标系标定过程,各关节角度 $ \theta_1, \theta_2, \dots, \theta_5 $ 对应人体手臂的旋转自由度。
6.5 总结
空间类型 | 坐标符号 | 含义 | 示例 |
---|---|---|---|
关节空间 | $ q_i, \theta_i, d_i $ | 机械臂关节的旋转/位移 | 肩关节角度、肘关节角度 |
工作空间 | $ p_i(x,y,z), R_i $ | 末端执行器的位置与姿态 | 手部在空间中的位置与方向 |
📌 一句话总结:
关节空间描述“如何动”(内部角度变化),
工作空间描述“动到哪”(外部位置姿态)。
7. 力闭合(Force Closure)
7.1 定义
当机械手(如手指或夹爪)与物体的接触能产生任意方向的力和力矩(wrench),使物体能够抵抗所有外部干扰并保持稳定时,我们称该抓取具有力闭合(Force Closure)。
7.2 特性说明 ✳️
- 抓取可抵抗任意外力与外力矩(external forces and torques);
- 物体在受到任何方向的扰动时仍不会移动;
- 是否具备力闭合取决于:
- 接触点的位置(contact locations);
- 接触点的摩擦特性(friction properties)。
7.3 直观理解 🧠
力闭合意味着:
“无论外界怎么推、拉、扭,物体都牢牢固定。”
图中展示了一个三指机械手包裹抓取球体的情况,
各接触点通过摩擦与力矩共同形成稳定闭合,使物体完全受控。
7.4 摩擦锥(Friction Cones)
在每个接触点处,接触力的方向受摩擦模型限制,只能存在于摩擦锥内部。
若要实现力闭合抓取(force closure grasp),
所有接触点的摩擦锥所覆盖的力方向组合,
必须能够完全张成六维力矩空间(6D wrench space):
即既能产生任意方向的力(force),又能产生任意方向的力矩(torque)。
7.5 力闭合 vs. 形闭合(Force vs. Form Closure)
类型 | 特征 | 摩擦 | 是否可移动 |
---|---|---|---|
形闭合(Form closure) | 仅靠几何约束锁定物体(被卡住) | 不需要摩擦 | 不能移动 |
力闭合(Force closure) | 通过摩擦 + 接触力共同作用 | 需要摩擦 | 不会移动 |
📘 总结:
形闭合靠“几何限制”,力闭合靠“摩擦+力平衡”。
7.6 最小接触数(Minimal Contacts)
- 二维 (2D):只需 2 个带摩擦的接触点 即可实现力闭合。
- 三维 (3D):至少需要
- 4 个带摩擦的接触点,或
- 7 个无摩擦的接触点,
才能保证对物体施加任意 6 维方向的力与力矩。
7.7 为什么是 4 而不是 3?为什么是 7 而不是 6?
- 在三维空间中,物体具有 6 个自由度(3 平移 + 3 旋转)。
- 要实现力闭合,接触力系统必须能在 6D wrench 空间 内产生任意方向的组合。
当接触点太少(如 3 个)时:
- 虽能固定位置,但无法对抗任意旋转扰动;
- 力矩空间未被完全张成。
4 个带摩擦点:
- 每点摩擦锥提供 3 个独立方向分量(切向 + 法向),
- 足以覆盖 6D wrench 空间。
无摩擦情形:
- 每接触仅能产生法向力(1 维),
- 因此至少要 7 个接触点 才能张满 6 维空间。
7.8 总结 ✅
维度 | 摩擦 | 最少接触数 | 原因 |
---|---|---|---|
2D | 有摩擦 | 2 | 能抵抗平面内所有力与转矩 |
3D | 有摩擦 | 4 | 能覆盖 6D 力矩空间 |
3D | 无摩擦 | 7 | 仅靠法向力也能张满 6D 空间 |
8. 刚体动力学(Rigid Body Dynamics)
8.1 牛顿–欧拉方程(Newton–Euler Equations)
用于描述刚体(如机械臂连杆)的平动与转动动力学,
由 牛顿定律(平动) 与 欧拉方程(转动) 组合而成。
⚙️ 平动方程(Translation – Newton)
$$
m \ddot{\mathbf{r}}_G = \sum \mathbf{F}_{\text{ext}}
$$
- $ m $:刚体质量
- $ \ddot{\mathbf{r}}_G $:质心加速度
- $ \sum \mathbf{F}_{\text{ext}} $:外力总和
👉 表示:外力 = 质量 × 加速度
🔁 转动方程(Rotation – Euler)
$$
I_G \dot{\omega} + \omega \times (I_G \omega) = \sum \tau_{G,\mathrm{ext}}
$$
- $ \mathbf{I}_G $:质心处惯性张量
- $ \boldsymbol{\omega} $:角速度
- $ \sum \boldsymbol{\tau}_{G,\text{ext}} $:外力矩总和
👉 表示:角动量的变化率 = 外力矩
8.2 图示符号说明
符号 | 含义 |
---|---|
$ G_i $ | 连杆 $ i $ 的质心 |
$ O_i $ | 连杆坐标系原点 |
$ f_{i,eq}, \ \tau_{i,eq} $ | 从相邻连杆传递的等效力与力矩 |
$ V_i, \ \omega_i $ | 线速度与角速度 |
$ I_G $ | 惯性矩阵 |
$ f_{i,c}, \ \tau_{i,c} $ | 关节处反作用力与力矩 |
8.3 物理意义总结
作用 | 方程 | 描述 |
---|---|---|
平动 | $ m \ddot{\mathbf{r}}_G = \sum \mathbf{F}_{\text{ext}} $ | 合力决定质心加速度 |
转动 | $ \mathbf{I}_G \dot{\boldsymbol{\omega}} + \boldsymbol{\omega} \times (\mathbf{I}_G \boldsymbol{\omega}) = \sum \boldsymbol{\tau}_{\text{ext}} $ | 合力矩决定角加速度 |
📘 结论:
牛顿–欧拉方程是机械臂动力学的核心,用于逐连杆计算力与力矩传播,
并推导机器人动力学方程。
9. 非模型控制方法(Non-model Based Control)
9.1 概念
非模型控制依赖数据与学习,而非精确的物理建模。
特别适用于 软体机器人 或 复杂非线性系统,这些系统难以建立解析模型但可通过数据观测。
9.2 案例:RNN + 运动学混合控制器
论文来源: IEEE RA-L, IROS 2024
研究团队: EPFL Dr. Josie Hughes(博士生 Zixi Chen)
该方法结合 循环神经网络 (RNN/LSTM) 与 运动学控制,
实现对复杂系统的在线控制。
结构组成:
- 输入: 期望轨迹 (desired trajectory)
- 核心模块:
- LSTM 模型: 学习动态与非线性行为
- 运动学模块: 保证几何约束与可达性
- 输出: 加权融合后的控制信号(位置 + 驱动),直接作用于机器人系统。
9.3 特点与优势
特性 | 表现 |
---|---|
开环精度高 | 无需复杂建模即可精确轨迹跟踪 |
大工作空间 | 能实现柔顺大范围动作 |
高顺应性(Compliance) | 自然适应外界干扰与接触 |
在线学习能力 | LSTM 动态调整控制策略,提高鲁棒性 |
📘 总结:
非模型控制将学习算法与运动学结合,
使机器人在复杂环境中实现高精度与高柔顺度控制,
无需完整动力学方程。
10. 模仿学习(Imitation Learning / 行为克隆)
10.1 核心概念
模仿学习通过观察人类示范让机器人学会任务行为,
无需显式建模环境或定义奖励函数。
机器人学习一个策略 ( \pi(a|s) ),
使其在相似状态 ( s ) 下执行与人类相同的动作 ( a )。
10.2 数据来源 📺
- YouTube / HowTo 视频: 从人类教学视频中提取动作序列;
- Ego4D, R3M, MVP, Voltron(Meta, Stanford, Berkeley):
通过第一人称视角数据学习手部操作与视觉语义。
10.3 现实世界应用 🤖
- ArmFarm, RT1, RT2(Google, DeepMind):
大规模真实机械臂模仿数据集。 - Open-X Embodiment / DROID:
全球 20+ 机构合作,涵盖:- 22 种机器人形态
- 500+ 技能
- 60+ 数据集
10.4 仿真环境 🧩
- ManiSkill, Orbit, Isaac Sim(UCSD, NVIDIA):
高保真仿真用于任务学习与评测。 - RoboTurk, MimicGen(Stanford, NVIDIA):
基于人类遥操作采集演示数据,
支持模仿学习 + 强化学习联合训练。
10.5 一句话总结 🧠
模仿学习让机器人“看人做事”后,学会“自己动手”。
数据可来自视频、真实操作或仿真演示,
是通向通用机器人智能的重要路径之一。
来源: Dr. Dieter Fox, NVIDIA
11. 机器人微分运动学与雅可比矩阵(Differential Kinematics and Jacobian)
11.1 微分运动学基本关系
在机器人学中,微分运动学(Differential Kinematics)描述了关节速度与末端执行器线速度/角速度之间的映射关系。
数学表达为:
$$
\mathbf{v} = \mathbf{J(q)} \cdot \dot{\mathbf{q}}
$$
其中:
符号 | 含义 |
---|---|
$\mathbf{q} \in \mathbb{R}^n$ | 关节变量(Joint Angles / Displacements) |
$\dot{\mathbf{q}} \in \mathbb{R}^n$ | 关节速度(Joint Velocities) |
$\mathbf{v} \in \mathbb{R}^6$ | 末端速度(Twist: [Linear; Angular]) |
$\mathbf{J(q)} \in \mathbb{R}^{6 \times n}$ | 雅可比矩阵(Jacobian Matrix) |
11.2 雅可比矩阵的物理意义
雅可比矩阵的每一列,表示当单个关节以单位角速度运动时,末端线速度和角速度的贡献。
Jacobian 是“关节空间 → 工作空间”速度映射的核心桥梁。
- 上半部分(蓝框)表示线速度对关节速度的映射;
- 下半部分(红框)表示角速度对关节速度的映射。
11.3 旋转部分的雅可比矩阵(Rotational Part of Jacobian)
旋转部分由各关节的角速度累积贡献组成:
$$
{}^{0}\omega_{6/wrt,0} =
{}^{0}\mathbf{R}_1 \hat{\mathbf{z}}_1 \dot{q}_1 +
{}^{0}\mathbf{R}_2 \hat{\mathbf{z}}_2 \dot{q}_2 +
{}^{0}\mathbf{R}_3 \hat{\mathbf{z}}_3 \dot{q}_3 +
{}^{0}\mathbf{R}_4 \hat{\mathbf{z}}_4 \dot{q}_4 +
{}^{0}\mathbf{R}_5 \hat{\mathbf{z}}_5 \dot{q}_5 +
{}^{0}\mathbf{R}_6 \hat{\mathbf{z}}_6 \dot{q}_6
$$
其中:
- $\hat{\mathbf{z}}_i$:第 $i$ 个关节的旋转轴方向
- ${}^{0}\mathbf{R}_i$:从第 $i$ 坐标系到基坐标系的旋转矩阵
- $\dot{q}_i$:关节角速度
11.4 雅可比矩阵的结构分块
完整的雅可比矩阵可分为两部分:
$$
\mathbf{J} =
\begin{bmatrix}
\mathbf{J}_v \\
\mathbf{J}_\omega
\end{bmatrix}
$$
部分 | 含义 | 对应方程 |
---|---|---|
$\mathbf{J}_v$ | 线速度部分 | $\dot{\mathbf{p}} = \mathbf{J}_v \dot{\mathbf{q}}$ |
$\mathbf{J}_\omega$ | 角速度部分 | $\boldsymbol{\omega} = \mathbf{J}_\omega \dot{\mathbf{q}}$ |
11.5 雅可比矩阵的应用
应用场景 | 说明 |
---|---|
运动学控制 | 根据目标末端速度求解所需关节速度: $\dot{\mathbf{q}} = \mathbf{J}^{-1}\mathbf{v}$ |
力控制 | 雅可比矩阵可将力/力矩从末端映射到关节空间: $\boldsymbol{\tau} = \mathbf{J}^T \mathbf{F}$ |
奇异性分析 | 当 $\det(\mathbf{J}\mathbf{J}^T) = 0$ 时,系统失去某些方向的运动能力 |
冗余度控制 | 若 $n > 6$,使用伪逆 $\mathbf{J}^+$ 实现最小范数或二级优化控制 |
11.6 直观理解 🧩
- 雅可比矩阵像一个“齿轮系”:
每个关节转动一点,末端的线速度和角速度都被“放大或缩小”地传递。 - 它连接了:
- 运动学(位置)
- 动力学(力)
- 控制(反馈与规划)
📘 一句话总结:
雅可比矩阵是机器人控制的“核心导数”,
它连接了几何、运动与力学的三个世界。
12. 雅可比逆与运动控制(Inverse Jacobian and Motion Control)
12.1 从目标速度到关节速度的反向映射
在前一节中,我们看到雅可比矩阵用于描述关节速度 → 末端速度的正向映射:
$$
\mathbf{v} = \mathbf{J(q)} , \dot{\mathbf{q}}
$$
若已知末端执行器的速度 $\mathbf{v}$,我们希望反推出各关节应当以何种速度运动以实现该目标,则可使用雅可比逆(Inverse Jacobian):
$$
\dot{\mathbf{q}} = \mathbf{J}^{-1}(\mathbf{q}) , \mathbf{v}
$$
即:通过逆雅可比矩阵,将末端速度映射回关节速度空间。
12.2 位置控制(Position Control)
在执行从初始位置到目标位置的运动时,我们通常已知:
- 方向(由起点和终点决定)与距离(路径长度);
- 期望执行时间(Desired execution time);
- 通过时间微分可得线速度 $\mathbf{v}$。
因此,可以逐步迭代求解:
$$
\dot{\mathbf{q}} = \mathbf{J}^{-1}(\mathbf{q}) , \mathbf{v}
$$
通过积分 $\dot{\mathbf{q}}$,即可更新每个时刻的关节角度,实现末端沿目标方向平滑运动。
12.3 姿态控制(Orientation Control)
对于姿态控制,我们不仅关心位置变化,还要使末端的**方向矩阵(Orientation Matrix)**从初始朝向旋转到目标朝向。
已知:
- 初始旋转矩阵 $R_i$
- 目标旋转矩阵 $R_f$
- 期望执行时间 $t_f$
则控制目标是求解旋转轴与角速度向量 $\boldsymbol{\omega}$,即:
“以哪个方向旋转、以多快的速度旋转?”
由雅可比逆关系:
$$
\dot{\mathbf{q}} = \mathbf{J}^{-1}(\mathbf{q}) , \mathbf{v}
$$
其中 $\mathbf{v}$ 的角速度分量由 $\boldsymbol{\omega}$ 提供。
12.4 从旋转矩阵计算旋转向量
设旋转矩阵:
$$
R =
\begin{bmatrix}
a & b & c \\
d & e & f \\
g & h & i
\end{bmatrix}
$$
旋转向量 $\mathbf{u}$ 定义为:
$$
\mathbf{u} =
\begin{bmatrix}
h - f \\
c - g \\
d - b
\end{bmatrix},
\quad |\mathbf{u}| = 2 \sin \theta
$$
其中:
- $\mathbf{u}$ 的方向为旋转轴;
- $|\mathbf{u}|$ 的大小与旋转角度 $\theta$ 成正比。
12.5 雅可比伪逆(Jacobian Pseudoinverse)
当机械臂冗余自由度 $n > 6$ 或存在奇异点时,$\mathbf{J}$ 不可逆。
此时可采用 广义逆(Moore–Penrose Pseudoinverse):
$$
\mathbf{J}^{+} = \mathbf{J}^T (\mathbf{J}\mathbf{J}^T)^{-1}
$$
并使用:
$$
\dot{\mathbf{q}} = \mathbf{J}^{+}(\mathbf{q}) , \mathbf{v}
$$
该解满足最小范数条件,保证末端速度最优匹配。
13. 雅可比矩阵的维度与形态分类(Jacobian Dimension and Shape Summary)
雅可比矩阵 $\mathbf{J(q)}$ 将关节速度 $\dot{\mathbf{q}}$ 与末端速度 $\mathbf{v}$ 联系起来:
$$
\mathbf{v} = \mathbf{J(q)} , \dot{\mathbf{q}}
$$
其矩阵维度为:
$$
\mathbf{v} \in \mathbb{R}^{6 \times 1}, \quad
\mathbf{J(q)} \in \mathbb{R}^{6 \times n}, \quad
\dot{\mathbf{q}} \in \mathbb{R}^{n \times 1}
$$
因此,系统的解空间取决于关节数 $n$ 与任务空间维度(6,自由移动与旋转)的关系:
13.1 三种情形(Three Cases)
情形 | 说明 | 解的数量 |
---|---|---|
$n < 6$ | 欠驱动(Under-actuated)系统,通常无精确解 | 无解(No exact solution) |
$n = 6$ | 完全驱动(Fully-actuated)系统,雅可比矩阵为方阵 | 唯一解(One exact solution) |
$n > 6$ | 冗余驱动(Over-actuated)系统,末端可由多种关节组合实现 | 无穷多解(Infinite solutions) |
13.2 雅可比矩阵的形态分类(Jacobian Shape Summary)
不同的机械臂结构会导致雅可比矩阵 $\mathbf{J(q)}$ 的形态(shape)不同,
反映出系统的**可控性(actuation)与运动自由度(DoF)**特征。
根据关节数 $N$ 与任务空间维度(通常为 6,自由移动与旋转)之间的关系,
我们可以将雅可比矩阵分为三类:Square / Slim / Fat Jacobian。
① 方形雅可比矩阵(Square Jacobian)
条件:
$$ N = 6 $$
$$ \mathbf{J(q)} \in \mathbb{R}^{6 \times 6} $$
特征:
- 完全驱动(Fully actuated);
- 对 $SE(3)$(三维刚体运动群)具有完整控制;
- 雅可比矩阵可逆;
- 典型代表:六轴工业机械臂(如 ABB、KUKA、UR)。
优点:
- 可以直接计算逆矩阵 $\mathbf{J}^{-1}$;
- 运动学与动力学求解简洁。
② 瘦雅可比矩阵(Slim Jacobian)
条件:
$$ N < 6 $$
$$ \mathbf{J(q)} \in \mathbb{R}^{6 \times N}, \quad N < 6 $$
特征:
- 欠驱动系统(Under-actuated);
- 对 $SE(3)$ 的访问受限;
- 无法独立控制全部 6 个空间自由度;
- 通常用于平面机械臂(如 SCARA 机械臂)。
结果:
- 系统丢失部分姿态或方向控制;
- 某些任务空间方向上无法施加速度或力。
③ 胖雅可比矩阵(Fat Jacobian)
条件:
$$ N > 6 $$
$$ \mathbf{J(q)} \in \mathbb{R}^{6 \times N}, \quad N > 6 $$
特征:
- 冗余驱动系统(Over-actuated / Redundant manipulator);
- 对 $SE(3)$ 拥有完全访问能力;
- 可使用伪逆 $\mathbf{J}^{+}$ 来计算最优关节速度;
- 存在冗余关节(spare joints);
- 可进行零空间运动(Null-space motion)。
应用:
- 避障控制(Obstacle avoidance);
- 能量最小化(Energy optimization);
- 次级任务规划(Secondary task planning);
- 柔性或蛇形机器人、连续体机械臂等。
📊 三种雅可比矩阵形态对比
类型 | 条件 | 特征 | 典型系统 | 逆矩阵类型 |
---|---|---|---|---|
方形(Square) | $N = 6$ | 完全驱动 | 六轴机械臂 | $\mathbf{J}^{-1}$ |
瘦型(Slim) | $N < 6$ | 欠驱动 | SCARA、2D机械臂 | 无逆(欠约束) |
胖型(Fat) | $N > 6$ | 冗余驱动 | 柔性、蛇形臂 | $\mathbf{J}^{+}$(伪逆) |
13.3 伪逆(Pseudoinverse)与最优解
当雅可比矩阵 $\mathbf{J(q)}$ 不可逆(例如 $N \neq 6$ 或奇异状态)时,
我们使用 Moore–Penrose 伪逆(Pseudoinverse) 来求得最优近似解:
(1) 欠约束系统(Under-constrained, $N < 6$)
$$
\mathbf{J}^{+} = \mathbf{J}^{T} , (\mathbf{J}\mathbf{J}^{T})^{-1}
$$
该形式最小化关节速度范数:
$$
\min | \dot{\mathbf{q}} |
$$
即找到使末端运动尽量匹配、同时关节速度最小的解。
(2) 过约束系统(Over-constrained, $N > 6$)
$$
\mathbf{J}^{+} = (\mathbf{J}^{T}\mathbf{J})^{-1} , \mathbf{J}^{T}
$$
该形式最小化末端误差:
$$
\min | \mathbf{J}\dot{\mathbf{q}} - \dot{\mathbf{x}} |
$$
保证末端运动的最小均方误差(Least Squares Solution)。
📘 总结:
系统类型 | 伪逆形式 | 优化目标 |
---|---|---|
欠驱动 ($N < 6$) | $\mathbf{J}^{+} = \mathbf{J}^{T}(\mathbf{J}\mathbf{J}^{T})^{-1}$ | 最小化 $|\dot{\mathbf{q}}|$ |
冗余驱动 ($N > 6$) | $\mathbf{J}^{+} = (\mathbf{J}^{T}\mathbf{J})^{-1}\mathbf{J}^{T}$ | 最小化 $|\mathbf{J}\dot{\mathbf{q}} - \dot{\mathbf{x}}|$ |
📖 一句话总结:
当雅可比矩阵不可逆时,伪逆提供了最“合理”的近似解,
欠约束系统追求最小关节运动,冗余系统追求最小误差。
14. 状态空间表示(State Space Representation)
14.1 定义与基本思想
状态空间模型(State-Space Model)是一种以一阶微分方程组形式描述物理系统行为的数学模型。
它将系统的动态特性用状态变量(state variables)、**输入(inputs)和输出(outputs)**表示。
系统状态空间方程一般写为:
$$
\dot{x}(t) = A x(t) + B u(t)
$$
$$
y(t) = C x(t) + D u(t)
$$
其中:
符号 | 含义 |
---|---|
$x(t)$ | 状态向量(State Vector) |
$\dot{x}(t)$ | 状态向量的一阶导数(随时间变化率) |
$u(t)$ | 输入或控制向量(Input / Control Vector) |
$y(t)$ | 输出向量(Output Vector) |
$A$ | 系统矩阵(System Matrix) |
$B$ | 输入矩阵(Input Matrix) |
$C$ | 输出矩阵(Output Matrix) |
$D$ | 直接传输矩阵(Feedforward Matrix) |
📘 直观理解:
- 状态变量(State variables):表示系统的记忆,例如位置、速度、电流等。
- 输入(Inputs):表示外部激励,如力、转矩、电压信号。
- 输出(Outputs):表示可测量的系统响应,如位移、速度、角度等。
14.2 单输入单输出系统(SISO, Single-Input Single-Output)
在 SISO 系统中,系统只有一个输入和一个输出:
$$
\dot{x}(t) = A x(t) + B u(t)
$$
$$
y(t) = C x(t) + D u(t)
$$
矩阵维度如下:
矩阵/变量 | 维度 | 说明 |
---|---|---|
$x(t)$ | $n \times 1$ | 状态向量 |
$\dot{x}(t)$ | $n \times 1$ | 状态导数 |
$u(t)$ | $1 \times 1$ | 单输入 |
$y(t)$ | $1 \times 1$ | 单输出 |
$A$ | $n \times n$ | 系统矩阵 |
$B$ | $n \times 1$ | 输入矩阵 |
$C$ | $1 \times n$ | 输出矩阵 |
$D$ | $1 \times 1$ | 直接传输矩阵 |
📖 理解要点:
- 状态方程决定系统的动态特性;
- 输出方程描述状态与输出的映射;
- SISO 模型在机械臂单关节、单电机或单回路控制中广泛应用。
14.3 多输入多输出系统(MIMO, Multi-Input Multi-Output)
当系统具有多个输入与多个输出时,模型扩展为 MIMO 形式:
$$
\dot{x}(t) = A x(t) + B u(t)
$$
$$
y(t) = C x(t) + D u(t)
$$
矩阵维度如下:
矩阵/变量 | 维度 | 说明 |
---|---|---|
$x(t)$ | $n \times 1$ | 状态向量 |
$\dot{x}(t)$ | $n \times 1$ | 状态导数 |
$u(t)$ | $z \times 1$ | $z$ 个输入(多控制信号) |
$y(t)$ | $m \times 1$ | $m$ 个输出(多观测量) |
$A$ | $n \times n$ | 系统矩阵 |
$B$ | $n \times z$ | 输入矩阵 |
$C$ | $m \times n$ | 输出矩阵 |
$D$ | $m \times z$ | 直接传输矩阵 |
14.4 状态空间模型的优势
✅ 统一性:
适用于线性与非线性系统、连续与离散系统。
✅ 可扩展性:
易于扩展到高维、耦合系统。
✅ 分析便利:
便于求解稳定性、可控性(Controllability)、可观性(Observability)。
✅ 现代控制基础:
是 PID 控制、最优控制、LQR、状态反馈等方法的核心数学基础。
📘 一句话总结:
状态空间模型是将系统动态从“输入-输出关系”推广到“内部状态演化”的现代控制理论核心形式,
为复杂机械臂与多自由度系统的建模与控制提供了统一框架。
15. 非线性系统与线性化控制(Nonlinear Systems and Linearization Control)
15.1 非线性系统(Nonlinear Systems)
在现实世界中,大多数机械、电气、生物及机器人系统都是非线性(nonlinear)的。
这意味着它们的动态关系无法完全用线性方程描述。
示例:
- 单摆系统:
$$
m l^2 \ddot{\theta} + b \dot{\theta} + m g l \sin(\theta) = T
$$ - 机械臂动力学(包含三角项和耦合项);
- 飞行器在湍流作用下的非线性运动。
15.2 为什么非线性是问题?(Why is this a Problem?)
- 非线性方程难以分析(稳定性 controllability、可控性 stability、可观性 observability 等);
- 许多标准工具(如传递函数 transfer functions、频率响应 frequency response、根轨迹法 root locus)仅适用于线性系统。
15.3 解决方案:线性化(Linearization)
核心思想:
在某个工作点或平衡点附近,用线性系统近似原非线性系统。
线性化后的模型可分为:
- 线性时变系统(LTV, Linear Time-Varying)
- 线性时不变系统(LTI, Linear Time-Invariant)
优点:
- 便于分析与控制;
- 可使用经典线性控制工具(如 PID、LQR、Observer)。
15.4 线性化状态空间模型(Linearized State-Space Model)
对于一个非线性系统:
$$
\dot{x}(t) = f(x(t), u(t)), \quad y(t) = g(x(t), u(t))
$$
我们希望在某个工作点 $(x^{sol}, u^{sol})$ 附近用线性系统来近似它的动态。
这种近似允许我们在小扰动范围内分析系统的稳定性与控制特性。
🧩 最终线性化系统(Final Linearized System)
$$
\delta \dot{x}(t) = A(t),\delta x(t) + B(t),\delta u(t)
$$
$$
\delta y(t) = C(t),\delta x(t) + D(t),\delta u(t)
$$
其中:
- $\delta x(t)$ 表示状态变量相对于工作点的微小偏差;
- $\delta u(t)$ 表示输入的微小变化;
- $\delta y(t)$ 表示输出响应的变化。
📐 雅可比矩阵定义(Jacobian Matrices)
$$
A(t) = \frac{\partial f}{\partial x}(x^{sol}, u^{sol}), \quad
B(t) = \frac{\partial f}{\partial u}(x^{sol}, u^{sol})
$$
$$
C(t) = \frac{\partial g}{\partial x}(x^{sol}, u^{sol}), \quad
D(t) = \frac{\partial g}{\partial u}(x^{sol}, u^{sol})
$$
🤖 与机器人系统的关系(Conceptual Link to Robots)
矩阵 | 含义 | 对应物理解释 |
---|---|---|
$A(t)$ | 状态对自身的影响 | 关节角、角速度等状态如何相互作用 |
$B(t)$ | 输入对状态的影响 | 控制输入(力矩、推力)如何驱动系统 |
$C(t)$ | 状态对输出的影响 | 内部状态如何通过传感器体现 |
$D(t)$ | 输入对输出的直接影响 | 一般在机械系统中近似为零 |
💡 工程意义(Practical Meaning)
在机器人学中,这种线性化状态空间模型的意义在于:
- 它让我们能够设计线性控制器(如 LQR、PID、Observer),
即使系统本质上是非线性的; - 该模型在局部范围内有效,能使机器人在小扰动下保持预期轨迹;
- 这是分析机器人稳定性与轨迹跟踪误差的核心工具。
📘 总结:
线性化状态空间模型通过在工作点附近的局部线性近似,
将复杂的非线性动力学系统转化为可控、可分析的形式,
从而奠定了现代机器人控制与状态估计的基础。
15.5 平衡点线性化(Linearization about an Equilibrium Point)
在线性系统理论中,我们经常需要将一个非线性系统
在其平衡点(Equilibrium Point)附近进行线性化,以得到一个等效的线性时不变系统(LTI System)。
⚙️ 非线性系统定义
考虑如下非线性状态方程:
$$
\dot{x}(t) = f(x(t), u(t)), \quad y(t) = g(x(t), u(t))
$$
其中:
- $x(t) \in \mathbb{R}^n$ —— 系统状态向量(如位置、速度、角度等);
- $u(t) \in \mathbb{R}^k$ —— 控制输入(如力矩、电压等);
- $y(t) \in \mathbb{R}^m$ —— 输出(传感器测量量或系统响应)。
⚖️ 平衡点(Equilibrium Point)
若存在一对 $(x^{eq}, u^{eq})$ 满足:
$$
f(x^{eq}, u^{eq}) = 0
$$
则称该点为系统的平衡点。
此时系统满足:
$$
u(t) = u^{eq}, \quad x(t) = x^{eq}, \quad y(t) = y^{eq} = g(x^{eq}, u^{eq})
$$
这意味着在平衡点处,系统保持静止或匀速运动,状态不再随时间变化。
🔁 平衡点附近线性化(Linearizing around $(x^{eq}, u^{eq})$)
在平衡点附近进行泰勒展开,并忽略高阶项,可得线性近似系统:
$$
\delta \dot{x}(t) = A \delta x(t) + B \delta u(t)
$$
$$
\delta y(t) = C \delta x(t) + D \delta u(t)
$$
其中:
$$
A = \frac{\partial f}{\partial x}(x^{eq}, u^{eq}), \quad
B = \frac{\partial f}{\partial u}(x^{eq}, u^{eq})
$$
$$
C = \frac{\partial g}{\partial x}(x^{eq}, u^{eq}), \quad
D = \frac{\partial g}{\partial u}(x^{eq}, u^{eq})
$$
🧩 系统含义说明
矩阵 | 含义 |
---|---|
$A$ | 状态变化对自身动态的线性影响(系统固有动力学) |
$B$ | 控制输入对系统状态的影响(外部控制作用) |
$C$ | 状态变化对输出的影响(测量关系) |
$D$ | 输入对输出的直接耦合(机械系统中通常为 0) |
💡 工程意义(In Robotics Context)
在机器人控制中,平衡点线性化是建立**线性时不变模型(LTI)**的基础步骤。
例如:
- 在线性化平衡点(如机械臂的静止姿态)附近设计控制器;
- 分析系统在局部扰动下的稳定性(Stability);
- 构造局部线性模型以实现 LQR、PID、Observer 等控制策略。
📘 总结:
平衡点线性化将复杂的非线性动力学系统转化为局部线性形式,
便于应用经典线性控制理论,实现对系统局部稳定性的分析与控制。
15.6 反馈线性化(Feedback Linearization)
反馈线性化(Feedback Linearization)是一种强大的非线性控制技术,
通过设计非线性反馈控制律,将原始非线性系统转化为等效线性系统,
从而能够应用线性控制理论进行分析与设计。
🧩 定义(Definition)
反馈线性化(Feedback Linearization) 是一种利用非线性反馈控制输入
来抵消系统内部非线性项,使其在输入输出关系上表现为线性系统的控制方法。
数学上,它通过引入输入变换:
$$
u = \alpha(x) + \beta(x)v
$$
其中:
- $\alpha(x)$ —— 非线性补偿项,用于抵消系统的固有非线性;
- $\beta(x)$ —— 输入增益项,用于调整输入信号的作用比例;
- $v$ —— 新的控制输入,用于设计线性控制律。
将系统
$$
\dot{x} = f(x) + g(x)u, \quad y = h(x)
$$
其中:
- $x \in \mathbb{R}^n$ —— 系统状态;
- $u \in \mathbb{R}$ 或 $\mathbb{R}^m$ —— 控制输入;
- $\dot{x}$ —— 状态的时间导数。
- $f(x)$:系统的自然动态项(或漂移项),反映系统在无输入时的自然演化;
- $g(x)$:系统的控制输入通道,决定输入 $u$ 如何影响状态;
- $h(x)$:输出函数,定义可测的系统输出。
变换为线性系统形式:
$$
\dot{x} = A x + B v
$$
其中:
- $A$ 和 $B$ 是常数或局部线性矩阵;
- $v$ 是新的“等效线性输入”;
- 系统在该形式下可以直接应用线性控制工具。
此时,控制输入 $v$ 可以通过常规线性控制器(如 LQR、PID)设计得到。
附:
控制方法 | 核心思想 | 优点 | 缺点 | 典型应用 |
---|---|---|---|---|
PID | 基于误差的比例-积分-微分反馈 | 简单可靠,易实现 | 难以最优,需调参 | 工业过程控制、舵机控制 |
LQR | 最小化状态与能量代价 | 数学上最优控制 | 需系统模型,线性假设 | 飞行器姿态、机器人控制 |
📘 推导过程(Step-by-step Derivation)
将 $u = \alpha(x) + \beta(x)v$ 代入原方程:
$$
\dot{x} = f(x) + g(x)[\alpha(x) + \beta(x)v]
$$
展开:
$$
\dot{x} = [f(x) + g(x)\alpha(x)] + g(x)\beta(x)v
$$
我们希望这个系统能写成线性形式:
$$
\dot{x} = A x + B v
$$
于是只需选择合适的 $\alpha(x)$ 和 $\beta(x)$,使得:
- 第一项 $[f(x) + g(x)\alpha(x)]$ 成为线性函数 $A x$;
- 第二项 $g(x)\beta(x)$ 等价于常数矩阵 $B$。
这就意味着通过 $\alpha(x)$ 的选择,我们“抵消”掉系统中复杂的非线性项,
而通过 $\beta(x)$ 的选择,我们“线性化”输入通道。
💡 为什么需要反馈线性化(Why is it Necessary?)
- 大多数真实系统(如单摆、机械臂、飞行器)本质上都是非线性系统;
- 非线性方程难以进行稳定性分析与控制设计;
- 通过反馈线性化:
- 使用反馈抵消系统中的非线性项;
- 系统行为表现为线性时不变(LTI)形式;
- 可以直接使用经典的线性控制工具。
⚙️ 优势(Key Advantages)
特性 | 优点 |
---|---|
分析方便 | 系统线性化后便于稳定性与性能分析 |
控制设计 | 可使用线性控制器(如 LQR、Observer、Pole Placement) |
实际应用 | 常用于机械臂控制、飞行器姿态控制、移动机器人动态补偿等 |
📘 示例一:机械臂动力学中的反馈线性化
考虑一个机械臂的动力学模型:
$$
M(q)\ddot{q} + B(q, \dot{q})\dot{q} + G(q) = F
$$
其中:
- $q \in \mathbb{R}^k$ 为关节角向量;
- $F \in \mathbb{R}^k$ 为关节力矩;
- $M(q)$ 是质量惯量矩阵;
- $B(q, \dot{q})$ 表示科氏力与离心力;
- $G(q)$ 是重力项。
🧠 步骤 1:定义新的输入
设控制输入为:
$$
F = u = u_{nl}(q, \dot{q}) + M(q)v
$$
其中非线性补偿项定义为:
$$
u_{nl}(q, \dot{q}) = B(q, \dot{q})\dot{q} + G(q)
$$
⚙️ 步骤 2:代入系统方程
将其代入原动力学方程:
$$
M(q)\ddot{q} + B(q, \dot{q})\dot{q} + G(q) = F
$$
得到:
$$
\ddot{q} = v
$$
这意味着系统的复杂非线性动态被消除,变为简单的双积分系统(Double Integrator)。
🧾 步骤 3:状态空间形式
定义状态向量:
$$
x = \begin{bmatrix} q \ \dot{q} \end{bmatrix} \in \mathbb{R}^{2k}
$$
则系统可以写为:
$$
\dot{x} =
\begin{bmatrix}
0 & I \
0 & 0
\end{bmatrix}
x +
\begin{bmatrix}
0 \
1
\end{bmatrix}
v
$$
📘 示例二:严格反馈形式(Strict Feedback Form)
考虑非线性系统:
$$
\dot{x}_1 = f_1(x_1) + x_2, \quad
\dot{x}_2 = f_2(x_1, x_2) + u
$$
步骤 1:引入新变量
定义新的状态变量:
$$
z_2 := f_1(x_1) + x_2
$$
则有:
$$
\dot{x}_1 = z_2
$$
对 $z_2$ 求导:
$$
\dot{z}_2 = \frac{\partial f_1}{\partial x_1}(x_1) \dot{x}_1 + \dot{x}_2
$$
$$
= \frac{\partial f_1}{\partial x_1}(x_1)[f_1(x_1) + x_2] + f_2(x_1, x_2) + u
$$
步骤 2:设计反馈输入
选择控制律:
$$
u = u_{nl}(x_1, x_2) + v
$$
其中非线性补偿项为:
$$
u_{nl}(x_1, x_2) = -\frac{\partial f_1}{\partial x_1}(x_1)[f_1(x_1) + x_2] - f_2(x_1, x_2)
$$
步骤 3:代入系统
代入后得到简化系统:
$$
\dot{x}_1 = z_2, \quad \dot{z}_2 = v
$$
这就是一个线性时不变系统(LTI System),
控制输入 $v$ 可以通过线性控制器(如 LQR 或 PID)来设计。
✅ 总结
步骤 | 含义 |
---|---|
1️⃣ 系统分析 | 确定系统的非线性项 $f(x), g(x)$ |
2️⃣ 反馈设计 | 定义 $u = u_{nl}(x) + \beta(x)v$ 抵消非线性 |
3️⃣ 状态变换 | 构造线性等效模型 |
4️⃣ 控制设计 | 对 $v$ 使用线性控制方法 |
📘 一句话总结:
反馈线性化通过“补偿非线性 + 重新定义输入”,
将非线性系统等效转化为线性系统,
从而使复杂的机器人控制问题变得可分析、可设计、可实现。
📖 总结:
非线性系统虽普遍存在,但通过平衡点线性化与反馈线性化,
我们能利用线性控制理论的成熟工具,让复杂系统在局部范围内表现出可预测、可控的行为。
16. 稳定性分析(System Stability Analysis)
系统稳定性(System Stability)是控制理论中的核心概念,
它描述系统在受到扰动或输入信号时,是否能保持或回到平衡状态。
稳定性决定了机器人或任何动态系统能否在控制下正常工作。
例如,一个稳定的机械臂能在停止施加力矩后保持静止,
而一个不稳定的机械臂则可能持续震荡或偏离目标。
16.1 稳定性的概念(Concept of Stability)
定义:
若系统在有界输入(bounded input)下产生有界输出(bounded output),
则称该系统是BIBO 稳定(Bounded Input Bounded Output Stable)。
数学定义如下:
$$
|u(t)| < \infty \quad \Rightarrow \quad |y(t)| < \infty
$$
💡 为什么稳定性很重要(Why Stability Matters)
在机器人学中:
- 稳定的机器人能平稳移动、准确响应指令;
- 不稳定的机器人可能发生振荡、抖动或发散。
示例:
- 稳定:机械臂在停止施加力矩后保持位置;
- 不稳定:机械臂在停止控制后仍剧烈摆动。
16.2 稳定性的类型(Types of Stability)
稳定性可从不同角度定义与分析:
类型 | 依据 | 描述 |
---|---|---|
BIBO 稳定性 | 输入输出关系 | 使用传递函数(Transfer Function)分析系统输出是否有界 |
内部稳定性(Internal Stability) | 状态空间模型 | 通过状态矩阵的特征值分析系统内部状态是否收敛 |
李雅普诺夫稳定性(Lyapunov Stability) | 能量函数(Energy Function) | 适用于非线性系统,通过能量函数变化判断稳定性 |
我们在第17部分讨论BIBO
16.3 状态空间下的稳定性(Stability in State-Space)
对于状态空间方程:
$$
\dot{x}(t) = A x(t) + B u(t), \quad y(t) = C x(t) + D u(t)
$$
系统的稳定性取决于矩阵 $A$ 的特征值(Eigenvalues)。
判据(Criterion)
系统稳定当且仅当所有特征值的实部为负:
$$
\Re(\lambda_i(A)) < 0 \quad \forall i
$$
系统的稳定性取决于特征值在复平面上的位置,可以总结如下表所示:
特征值实部情况 | 系统类型 | 动态特征 | 稳定性描述 |
---|---|---|---|
$\Re(\lambda_i) < 0$ | 渐近稳定(Asymptotically Stable) | 指数衰减 | 状态随时间收敛到平衡点 |
$\Re(\lambda_i) = 0$ | 边界稳定(Marginally Stable) | 持续振荡 | 不发散也不衰减,能量守恒 |
$\Re(\lambda_i) > 0$ | 不稳定(Unstable) | 指数增长 | 状态随时间发散 |
示例解释:
- 若 $A = \begin{bmatrix}-2 & 0 \ 0 & -3\end{bmatrix}$,则 $\lambda = {-2, -3}$ → 稳定;
- 若 $A = \begin{bmatrix}1 & 0 \ 0 & -2\end{bmatrix}$,则 $\lambda = {1, -2}$ → 不稳定;
- 若 $\lambda = {0, -2}$,则边界稳定。
16.4 李雅普诺夫稳定性(Lyapunov Stability)
李雅普诺夫稳定性是分析非线性系统稳定性的基本方法,
核心思想是用一个能量函数 $V(x)$ 来判断系统状态随时间的变化。
🧠 直观理解(Explanation)
可以将系统状态想象为一个小球在不同地形上的运动:
- 在碗底(能量最低点) → 小球会滚回 → 稳定;
- 在山顶 → 轻微扰动即滚下 → 不稳定;
- 在平面上 → 停在原地但不会回到原点 → 边界稳定(Marginally Stable)。
📐 数学定义(Mathematical Definition)
对于非线性系统:
$$
\dot{x} = f(x), \quad x \in \mathbb{R}^n
$$
若平衡点在 $x = 0$,则系统在该点李雅普诺夫稳定当且仅当:
$$
\forall \epsilon > 0, \ \exists \delta > 0, \ \text{使得} \ ||x(0)|| < \delta \Rightarrow ||x(t)|| < \epsilon, \ \forall t \ge 0
$$
即:系统从接近平衡点出发后,始终保持在有限邻域内。
16.5 李雅普诺夫函数法(Lyapunov Function Method)
我们引入一个“能量型”函数 $V(x)$(称为李雅普诺夫函数):
$$
V(x) > 0 \text{ for } x \ne 0, \quad V(0) = 0
$$
并计算其导数:
$$
\dot{V}(x) = \frac{dV}{dt}
$$
判断标准:
条件 | 稳定性类型 |
---|---|
$\dot{V}(x) < 0$ | 渐近稳定(Asymptotically Stable) |
$\dot{V}(x) = 0$ | 稳定(但非渐近) |
$\dot{V}(x) > 0$ | 不稳定(Unstable) |
💡 一维系统数值例子(1D Example)
考虑系统:
$$
\dot{x} = -x
$$
选择李雅普诺夫函数:
$$
V(x) = x^2
$$
计算导数:
$$
\dot{V}(x) = 2x\dot{x} = 2x(-x) = -2x^2 < 0
$$
因此,该系统是**渐近稳定(Asymptotically Stable)**的。
✅ 小结(Summary)
稳定性类型 | 分析依据 | 判据 | 应用场景 |
---|---|---|---|
内部稳定性 | 状态矩阵 $A$ 特征值 | $\Re(\lambda_i(A)) < 0$ | 线性状态空间系统 |
李雅普诺夫稳定性 | 能量函数 $V(x)$ | $\dot{V}(x) < 0$ | 非线性系统、机器人控制 |
📘 一句话总结:
稳定性是控制系统的生命线。
线性系统依赖特征值判定稳定,非线性系统则依赖李雅普诺夫函数。
若系统能在扰动下回归平衡点,即可认为其“稳定”。
17. 传递函数与 BIBO 稳定性(Transfer Function and BIBO Stability)
17.1 传递函数(Transfer Function)
定义:
传递函数(Transfer Function)描述了系统输入与输出之间的数学关系,通常定义在 拉普拉斯域(Laplace Domain),适用于线性、时不变(LTI)系统。
其一般形式为:
$$
G(s) = \frac{Y(s)}{U(s)}
$$
其中:
- $U(s)$:输入信号的拉普拉斯变换;
- $Y(s)$:输出信号的拉普拉斯变换;
- $G(s)$:系统的传递函数。
📘 直观理解:
传递函数是系统的“频域指纹”,帮助我们分析稳定性、频率响应、动态特性等。
17.2 拉普拉斯变换(Laplace Transform)
定义:
拉普拉斯变换是一种将时域函数转换为**复频域函数(s 域)**的工具,用以简化微分方程求解。
$$
\mathcal{L}[f(t)] = F(s) = \int_0^{\infty} f(t)e^{-st}dt
$$
反变换为:
$$
\mathcal{L}^{(-1)}[F(s)] = f(t) = \frac{1}{2\pi j} \int_{c-j\infty}^{c+j\infty} F(s)e^{st}ds, \quad t>0
$$
🧭 意义:
拉普拉斯变换是连接“微分方程”与“传递函数”的桥梁。
17.3 拉普拉斯变换性质(Properties)
性质 | 数学表达 | 含义 |
---|---|---|
线性性 | $\mathcal{L}[a f(t) + b g(t)] = aF(s) + bG(s)$ | 可线性叠加 |
一阶微分 | $\mathcal{L}[\dot{f}(t)] = sF(s) - f(0^+)$ | 导数变乘法 |
二阶微分 | $\mathcal{L}[\ddot{f}(t)] = s^2 F(s) - s f(0^+) - \dot{f}(0^+)$ | 高阶导数扩展 |
积分 | $\mathcal{L}\left[\int_0^t f(\tau)d\tau\right] = \frac{F(s)}{s}$ | 积分变除法 |
时移 | $\mathcal{L}[f(t-T)] = e^{-sT}F(s)$ | 延迟产生指数项 |
17.4 初值与终值定理(Initial & Final Value Theorems)
定理 | 数学表达 | 说明 |
---|---|---|
初值定理 | $f(0^+) = \lim_{s\to\infty} sF(s)$ | 求瞬时响应初值 |
终值定理 | $\lim_{t\to\infty} f(t) = \lim_{s\to 0} sF(s)$ | 求系统稳态响应 |
⚠️ 注意:
若系统不稳定(极点在右半平面),终值定理不适用。
17.5 BIBO 稳定性(Bounded Input – Bounded Output)
定义:
若系统在有界输入下产生有界输出,则称系统是 BIBO 稳定(Bounded Input Bounded Output Stable):
$$
|u(t)| < \infty \Rightarrow |y(t)| < \infty
$$
基于传递函数的判据:
若系统传递函数为:
$$
G(s) = \frac{N(s)}{D(s)}
$$
系统的极点(Poles)定义为 $D(s) = 0$ 的根。
系统 BIBO 稳定的条件是:
$$
\Re(p_i) < 0 \quad \forall \text{极点 } p_i
$$
极点位置 | 系统状态 | 说明 |
---|---|---|
所有极点在左半平面 | 稳定 | 响应指数衰减 |
极点在虚轴上 | 边界稳定 | 持续振荡 |
任意极点在右半平面 | 不稳定 | 响应发散 |
17.6 对比:BIBO vs 内部稳定(Internal Stability)
稳定性类型 | 基于 | 判据 | 适用系统 |
---|---|---|---|
BIBO 稳定 | 输入输出关系 | 极点在左半平面 | 传递函数模型 |
内部稳定(State Stability) | 状态空间 | $\Re(\lambda_i(A)) < 0$ | 状态空间模型 |
Lyapunov 稳定 | 能量函数 | $\dot{V}(x) < 0$ | 非线性系统 |
📘 总结:
传递函数与拉普拉斯变换为我们提供了从“时域”到“频域”的分析工具。
BIBO 稳定性判据帮助我们通过极点位置快速判断系统是否在外部输入下保持稳定。
🍀后记🍀
博客的关键词集中在编程、算法、机器人、人工智能、数学等等,持续高质量输出中。
🌸唠嗑QQ群:兔叽の魔术工房 (942848525)
⭐B站账号:白拾ShiroX(活跃于知识区和动画区)
✨GitHub主页:yhbcode000(工程文件)
⛳Discord社区:AierLab(人工智能社区)