从今天开始,我们进入核心技术篇。第一个要讲的问题,是整个运动控制的起点:上位机给出一个目标姿态,六根杆分别该伸多长?这个问题看似简单,实际上它是Stewart平台运动学中最核心的数学问题。控制器必须先回答一个更具体的问题:为了让上平台到达这个目标位置和姿态,六支链分别应该达到多长?这一步就是Stewart平台的逆运动学求解。

一、先分清正解和逆解
1. 用"调望远镜"理解两类问题
想象你在用一架老式望远镜看星星。你想看某颗星,需要把望远镜转到特定角度。
已知目标角度,调整旋钮------对应逆运动学(逆解):由目标位姿求解驱动控制量。
调整旋钮后,观测当前指向------对应正运动学(正解):由驱动支链长度求解动平台当前位姿。
2. 逆运动学
已知上平台的目标位姿:
求六条支链的目标长度:
这里的x、y、z表示平移量,φ、θ、ψ分别表示横滚、俯仰和偏航角。具体角度名称和正方向必须服从项目采用的坐标系定义。
本文所讨论的"给定目标位姿求六支链杆长",就是逆运动学问题。
3. 正运动学
正运动学的输入和输出恰好相反:已知六条支链的实际长度,反过来求上平台当前的六自由度位姿。
正运动学通常没有像逆运动学那样直接、唯一的闭式表达,需要采用Newton-Raphson、Levenberg-Marquardt等数值迭代方法。计算结果还会受到初始值、机构构型、传感器误差和奇异位形的影响。
在实际系统中:
• 逆解用于把位姿指令转换为执行器目标;
• 正解可用于状态估计、运动显示、标定验证和控制结果校核;
• 若配置外部位姿测量装置,还可将正解结果与测量结果进行比较。

二、建立两个坐标系
逆运动学计算的第一步不是写公式,而是统一坐标系。
通常需要建立两个右手坐标系:
-
固定坐标系{B}:安装在下平台或基座上;
-
动平台坐标系{P}:固定在上平台上,随上平台一起运动。
设第i条支链在下平台上的铰点坐标为:
上铰点在动平台坐标系中的坐标为:
下铰点坐标始终在固定坐标系中表示。上铰点坐标虽然在动平台局部坐标系中保持不变,但它在固定坐标系中的位置会随平台位姿变化。
三、把目标位姿转换成旋转矩阵
上平台的目标位姿可以写成齐次变换矩阵:
如果项目采用常见的ZYX旋转约定,可写为:
需要特别强调:不同系统采用的旋转顺序可能不同。
XYZ、ZYX、内旋、外旋或者航空坐标系之间不能直接混用。即使输入的三个角度数值完全相同,只要旋转顺序不同,最终得到的六支链长度就可能不同。
-
使用左手坐标系还是右手坐标系;
-
三个平移轴的正方向;
-
Roll、Pitch、Yaw分别绕哪一根轴;
-
采用内旋还是外旋;
-
欧拉角的旋转顺序;
-
输入角度单位是度还是弧度。
四、逆解的核心:计算每条支链的空间向量
当目标平移向量t和旋转矩阵R已知后,第i个上铰点在固定坐标系中的位置为:
这一步包含两个动作:先用旋转矩阵改变上铰点相对动平台原点的方向,再加上动平台原点的平移量。
于是,第i条支链的空间向量为:
代入上式:
对这个空间向量求欧氏范数,就得到第i条支链的目标长度:
对i=1到6分别执行一次,就能得到完整的六支链长度向量:
一个简化例子
假设平台在零位时,某根杆的理论长度是785 mm。现在上平台升高了50 mm,其他姿态不变。由于杆是斜着安装的(与垂直方向有夹角),杆长的变化并不等于50 mm,而是要根据几何关系计算。
如果杆与垂直方向夹角约30°,那么杆长变化约为:
也就是说,上平台升高50 mm,这根杆要伸长约57.7 mm。这就是逆解在做的事------把平台位姿变化翻译成每根杆的长度变化。六根杆的夹角各不相同,所以同样的位姿变化,六根杆的伸缩量也不同。这就是为什么需要精确的运动学模型来计算。
五、杆长不一定等于电动缸控制指令
由逆运动学得到的Li,通常表示两个铰点中心之间的几何距离。但伺服系统实际需要的可能是电动缸伸出量、丝杠或电机的位置脉冲、相对于机械零位的增量,或者相对于平台中位的长度变化。
如果第i条支链的机械基准长度为Li0,则其目标伸缩量可写为:
若电机编码器计数与直线位移的换算系数为Ki,还需要进一步转换:
其中Ci0是与机械零位对应的编码器基准值。
任何一个环节的基准定义不一致,都可能造成平台零位偏差、姿态耦合,甚至触发行程或机构干涉。
六、为什么逆解算对了,平台仍可能不能运动?
逆解公式给出的是几何结果,不代表这个目标位姿在实际设备上一定可执行。控制系统至少还要完成以下检查。
1. 支链行程检查
只要有一条支链超出范围,整个目标位姿就不能直接执行。
2. 速度、加速度与Jerk检查
支链长度随时间变化后,还要继续计算速度、加速度和Jerk,防止指令在数学上连续、在机械上却过于激烈。
3. 铰链角度检查
支链长度没有超限,不代表球铰或虎克铰一定处于允许偏转范围。姿态较大时,某个铰链可能先达到机械角度极限。
4. 机构干涉检查
六条支链之间、支链与平台之间、负载与周边设备之间都可能发生干涉。
5. 奇异性检查
当机构接近奇异位形时,平台可能出现局部失控、驱动力急剧增大或某些方向刚度下降。逆解仍可能返回一组杆长,但这组杆长不一定对应安全、稳定、可控的状态。
6. 工作空间检查
Stewart平台的六个位姿分量彼此耦合。"X方向可以移动某个距离"和"俯仰可以达到某个角度",不代表两者能够同时达到各自最大值。

七、正运动学为什么更复杂?
逆运动学中,上平台位姿已知,每个上铰点经过坐标变换后都能直接得到位置,再计算与对应下铰点之间的距离即可。
正运动学则相反。已知的是六个标量长度,需要反推出三个平移量和三个旋转量。其约束方程可以写为:
六条支链形成六个非线性方程:
实际求解通常包括以下过程:
如果初始值距离真实位姿过远,或者平台接近奇异区域,迭代可能收敛缓慢、收敛到错误构型,甚至无法收敛。
工程系统通常利用上一控制周期的位姿作为下一周期正解的初始值,因为连续运动过程中,相邻周期的位姿变化通常较小。南京全控的控制系统中,正运动学求解采用Newton-Raphson迭代法,精度可达1×10⁻⁹,一般迭代2---3次即可收敛。
八、从数学模型走向工程系统,还差三步
第一步:准确获得机构几何参数
理论模型使用设计图纸中的上下铰点坐标,实际设备则会受到加工、装配和铰链安装误差影响。对于精度要求较高的平台,不能只依赖名义尺寸,需要通过测量和运动学标定识别更接近真实机构的几何参数。
第二步:统一整个系统的数据定义
运动控制器、仿真软件、上位机、游戏引擎和测试系统之间必须使用一致的数据协议,尤其要统一坐标轴、角度顺序、位姿参考点、零位定义、数据周期和超限处理逻辑。
第三步:把逆解放入实时控制链路
真实平台不会只计算一个静态目标点。控制系统需要在固定周期内持续完成:
-
接收目标位姿;
-
进行轨迹规划或数据滤波;
-
执行运动学逆解;
-
检查工作空间和安全边界;
-
计算六轴同步目标;
-
下发到伺服驱动器;
-
采集编码器与系统状态;
-
进行报警、记录或闭环修正。
因此,逆运动学公式本身并不长,但稳定的工程系统需要机械设计、几何标定、实时控制、总线通讯、安全策略和软件架构共同配合。

结语
给定Stewart平台的目标位姿,求解六支链杆长,本质上可以归纳为三个步骤:
核心公式是:
但在工程应用中,必须继续验证行程、速度、加速度、铰链偏角、机构干涉、工作空间和奇异性,并通过零位标定将几何杆长转换为真实执行器指令。
项目需求建议先明确这些信息
如果您正在进行Stewart平台、六自由度运动平台或模拟器运动系统的方案设计,建议提前整理:
-
负载及质心位置;
-
上平台尺寸与安装方式;
-
目标平移与转动范围;
-
速度、加速度及运动频率;
-
控制周期和通讯接口;
-
位姿数据来源;
-
精度与验收要求;
-
安装空间和安全边界。
南京全控航空科技有限公司可根据具体项目需求开展机构构型、工作空间、运动学可行性及控制系统方案分析。所有产品参数和接口能力以具体方案及最终技术协议为准。












