机械臂运动学
基于 DH 参数建模的 6-DOF 串联机械臂正运动学实时求解。调节各关节角度,观察末端执行器位姿变化。
原理:DH 参数与正运动学
Denavit-Hartenberg 参数用 4 个量 (a, α, d, θ) 描述相邻关节间的齐次变换。6 个变换矩阵连乘得到末端位姿。
T = T₁·T₂·T₃·T₄·T₅·T₆
| i | a (mm) | α (rad) | d (mm) | θ |
|---|---|---|---|---|
| 1 | 0 | π/2 | 180 | θ₁ |
| 2 | 55 | 0 | 0 | θ₂ |
| 3 | 48 | 0 | 0 | θ₃ |
| 4 | 0 | π/2 | 40 | θ₄ |
| 5 | 0 | -π/2 | 35 | θ₅ |
| 6 | 0 | 0 | 25 | θ₆ |
轨迹规划
基于采样的路径规划算法可视化。RRT 随机扩展搜索树,RRT* 通过重新连接渐进收敛最优路径,PRM 预构建路线图支持多次查询。
原理:采样路径规划
RRT:从起点出发,每次随机采样 q_rand,找到树上最近节点 q_near,向 q_rand 方向扩展步长得到 q_new。若无碰撞则加入树。
RRT*:在 RRT 基础上检查 q_new 邻域,若有节点经 q_new 到达根节点更近则重新连接父节点,保证渐近最优。
PRM:预采样 N 个无碰撞点,连接 k 近邻构建 roadmap,再用 A*/Dijkstra 查询路径。
SLAM 进阶
同步定位与建图。粒子滤波 SLAM 用粒子集表示位姿后验分布;GraphSLAM 将位姿与地图建模为因子图进行联合优化。
原理:粒子滤波与图优化 SLAM
粒子滤波 SLAM:用粒子集 {xₜ⁽ⁱ⁾, wₜ⁽ⁱ⁾} 表示位姿后验。每步执行运动更新→测量更新→重采样。
权重: wₜ ∝ p(zₜ | xₜ, m) · wₜ₋₁
重采样: 低权重淘汰,高权重复制
GraphSLAM:将所有位姿与路标构建为因子图,节点间约束来自运动模型和观测,通过最小化残差全局优化。
MPC 控制
模型预测控制:在每时刻求解有限时域优化问题,预测未来 N 步系统演化,在约束下最小化代价函数,仅执行第一步控制。
原理:滚动时域优化
在时刻 t,基于系统模型预测未来 N 步状态序列,最小化代价函数 J,求解最优控制序列 {u₀, u₁, ..., u_{N-1}},仅执行 u₀,下一时刻重复。
s.t. xₘᵢₙ ≤ x ≤ xₘₐₓ, uₘᵢₙ ≤ u ≤ uₘₐₓ
无人车模型:ẋ = v·cos(θ), ẏ = v·sin(θ), θ̇ = ω
视觉伺服
利用视觉反馈控制机器人运动。IBVS 在图像平面最小化特征误差,PBVS 估计 3D 位姿后控制。图像雅可比矩阵关联图像变化与相机速度。
原理:图像雅可比与视觉伺服
IBVS:直接在图像平面控制特征点 s 向期望位置 s* 收敛。控制律基于图像雅可比 J 的伪逆。
v = -λ · J⁺(s) · (s - s*)
e = s - s* → 0
PBVS:从图像估计目标 3D 位姿,在笛卡尔空间设计控制律驱动位姿误差归零。
力控与阻抗
阻抗控制使机器人呈现期望动力学特性(质量-阻尼-刚度),实现柔顺交互。力位混合控制在不同方向分别施加力控与位控。
原理:阻抗与导纳控制
阻抗控制令机器人末端等效为质量-阻尼-刚度系统,期望动力学方程如下:
当 x > x_wall: F_ext = -K_env·(x - x_wall)
导纳控制:测量外力 F_ext,计算位置偏移再进行位置控制。力位混合:法向力控、切向位控,适用于打磨、装配等任务。
多机器人协作
编队控制使多机器人保持期望几何队形。领导者-跟随者模型中,跟随者通过 PD 控制维持与领导者的相对位置。任务分配解决"谁做什么"问题。
原理:编队控制与任务分配
领导者-跟随者:跟随者 i 通过 PD 控制追踪期望相对位置 rᵢ。
xᵢ_d = x_leader - rᵢ
任务分配:将 m 个任务分配给 n 个机器人,最小化总代价。匈牙利算法在 O(n³) 时间内求最优分配。
强化学习控制
通过与环境交互学习最优控制策略。PPO 通过裁剪目标函数限制策略更新步长;SAC 引入最大熵目标鼓励探索,在连续控制中表现优异。
原理:策略梯度与最大熵
PPO:裁剪代理目标函数限制策略更新比率 r(θ),保证训练稳定。
r(θ) = π_θ(a|s) / π_θ_old(a|s)
SAC:最大熵目标在最大化回报的同时鼓励策略熵,促进探索。