外观
踩坑Robotics Stack Exchange2017-03-10
Unity 中 PUMA 560 IK 滑块旋转值如何输入
本文由 AI 根据公开内容整理,可能有误,请以原文为准:Help with setting up Inverse Kinematics(Robotics Stack Exchange #11823)
状态:已解决
问题
提问者在 Unity 5/C# 中复现 Craig 书中 Unimation PUMA 560 逆运动学,已有 theta(i) 方程,但不知道如何把末端 X/Y/Z 旋转滑块值输入到方程中的 r11 等姿态项。
环境
Linux / ROS 机器人软件与控制通用开发环境
解决办法
- 将每个旋转角
XRot、YRot、ZRot分别转换为对应的 3x3 旋转矩阵R_x、R_y、R_z。 - 明确使用全局坐标还是机体坐标,以及旋转顺序;答案示例采用机体坐标,顺序为先 yaw,再 pitch,再 roll。
- 按矩阵乘法从右到左组合,示例为
R = R_y R_x R_z。 - 从最终 3x3 姿态矩阵
R中读取r11、r21等元素,代入已写好的 IK 方程。
原问题作者:Richy;采纳答案作者:Chuck。原内容依 CC BY-SA 4.0 授权,本页摘要同样依 CC BY-SA 4.0 授权。
来源
本页事实对应的公开页面,以原文为准。