02机器人运动学与 DH 参数
1. 简介
正运动学 (Forward Kinematics) 解决的问题是:已知所有关节角度,计算机器人末端执行器的位姿。Denavit-Hartenberg (DH) 参数法是建立连杆坐标系的标准方法。
2. DH 参数详解 (标准型)
描述相邻两个连杆 和 之间的关系,仅需 4 个参数:
| | | |
| | | |
| | | |
| | | |
| | | |
相邻连杆的变换矩阵 公式为:
3. 架构流程 (Mermaid)
代码块
Plain Text
graph TD
Input[输入: 关节角度 q1, q2, ..., qn] --> Step1[建立DH参数表]
Step1 --> Step2[计算每个连杆的变换矩阵 T_01, T_12...]
Step2 --> Step3[链式乘法 T_total = T_01 * T_12 * ...]
Step3 --> Output[输出: 末端位姿 T_0n]
4. Python 代码验证
以下代码实现了一个通用的 DH 矩阵生成器,并验证了一个简单的 2连杆平面机械臂 (2-Link Planar Arm)。
代码块
Python
import numpy as np
def dh_matrix(theta, d, a, alpha):
"""
根据标准DH参数计算变换矩阵 T_{i-1, i}
单位: 角度使用弧度, 长度使用米
"""
ct, st = np.cos(theta), np.sin(theta)
ca, sa = np.cos(alpha), np.sin(alpha)
return np.array([
[ct, -st*ca, st*sa, a*ct],
[st, ct*ca, -ct*sa, a*st],
[0, sa, ca, d ],
[0, 0, 0, 1 ]
])