3/1/3七轴机器人逆解肘关节点计算方法介绍

在 3/1/3 构型七轴机器人 (即:肩部 3 轴 + 肘部 1 轴 + 腕部 3 轴)中,利用几何法 求解逆运动学时,肘关节点(Elbow Point)的确定是关键步骤。该点位于上臂与前臂的连接处(通常为第4关节中心),其位置由末端执行器位姿和冗余自由度(如肘部偏移角或肘平面方向)共同决定。

以下介绍一种基于几何投影的肘点计算方法,适用于具有类人臂结构的 7-DOF 机器人。

1. 基本参数定义(可直接复制)
  • 腕点位置(Wrist Center):
    p_w = x_w, y_w, z_wᵀ
  • 肩关节中心(基坐标系原点):
    p_s = 0, 0, 0ᵀ
  • 上臂长度(肩 → 肘): L₁
  • 前臂长度(肘 → 腕): L₂
  • 从肩到腕的向量:
    r = p_w − p_s = x_w, y_w, z_wᵀ
  • 肩腕距离:
    D = ‖r‖ = √(x_w² + y_w² + z_w²)

注:仅当 |L₁ − L₂| ≤ D ≤ L₁ + L₂ 时,存在可行解。

2. 肘关节点位置 p_e = x_e, y_e, z_eᵀ 的计算

在三角形"肩--肘--腕"中,利用余弦定理和向量投影确定肘点。

(1) 计算肩部三角形内角 α(在肩点处)

α=arccos(2⋅L1​⋅DL12​+D2−L22​​)

α = arccos( (L₁² + D² − L₂²) / (2·L₁·D) )

(2) 定义肘部偏置方向(冗余自由度)

引入肘平面法向量 或肘参考方向 。常用方法是定义一个肘指向参考点 p_ref(如人体肘自然下垂方向),构造肘偏移平面。

更通用的做法:定义单位向量 k 为肘偏置方向(通常取世界Z轴或用户指定方向),则肘点位于由 r 和 k 张成的平面内,并垂直于该平面的法向。

但最简几何法假设肘点位于 肩--腕连线 与 肘偏置方向 所确定的平面内。若忽略偏置(即肘在肩腕矢量平面内),则肘点可直接通过旋转向量获得。

(3) 构造局部坐标系并旋转

令:

  • e_r = r / D (肩→腕单位向量)
  • 选择一个不与 e_r 平行的参考向量(如 0, 0, 1ᵀ ),计算平面法向:
    n = e_r × 0, 0, 1ᵀ
    若 ‖n‖ ≈ 0 (即 r 沿 Z 轴),改用 1, 0, 0ᵀ
  • 单位法向: e_n = n / ‖n‖
  • 平面内垂直于 e_r 的单位向量: e_⊥ = e_n × e_r
  • 此 e_⊥ 方向即为肘点偏离肩腕线的方向(对应冗余自由度)。

引入肘角参数 ψ(Elbow Angle 或 Elbow Bias Angle),用于控制肘点在圆周上的位置(ψ = 0 表示"外展",ψ = π 表示"内收")。

则肘点位置为:

p_e = L₁·cos(α)·e_r + L₁·sin(α)·(cos(ψ)·e_⊥ + sin(ψ)·e_n)

但对多数 3/1/3 机器人,ψ 固定为 0 或 π(因肘关节为单轴,只能在一个平面内弯曲)。此时简化为:

p_e = L₁·cos(α)·e_r ± L₁·sin(α)·e_⊥

其中 "+" 对应一种肘构型(如右肘向外),"−" 对应另一种(左肘向内)。

3. 计算公式汇总:

设:

  D = √(x_w² + y_w² + z_w²)

  e_r = x_w/D, y_w/D, z_w/Dᵀ

选择参考轴(如 Z 轴 k = 0, 0, 1ᵀ ),计算:

  n = e_r × k = y_w/D, −x_w/D, 0ᵀ

  n_norm = √((y_w/D)² + (x_w/D)²) = √(x_w² + y_w²)/D

若 n_norm > ε (例如 ε = 1e−6),则:

  e_⊥ = y_w/√(x_w² + y_w²), −x_w/√(x_w² + y_w²), 0ᵀ

否则(腕点在 Z 轴上):

  e_⊥ = 1, 0, 0ᵀ

计算角度:

  α = arccos( (L₁² + D² − L₂²) / (2·L₁·D) )

则肘关节点位置为:

  p_e = L₁·cos(α)·e_r ± L₁·sin(α)·e_⊥

展开分量形式(以非奇异情况为例):

x_e = L₁·cos(α)·(x_w/D) ± L₁·sin(α)·(y_w / √(x_w² + y_w²))

y_e = L₁·cos(α)·(y_w/D) ∓ L₁·sin(α)·(x_w / √(x_w² + y_w²))

z_e = L₁·cos(α)·(z_w/D)

注意:± 符号对应两种肘部构型(Elbow-Up / Elbow-Down)。

使用说明

  • L₁、L₂:机器人连杆参数(已知)
  • p_w:由末端目标位姿减去工具偏移得到
  • ψ(或 ±):由用户指定肘部偏好(冗余解选择)
  • 所有符号(θ、α、π、±、√、·、ᵀ 等)均为标准 Unicode,粘贴到 Word 后可直接显示,无需额外设置。

如需进一步求解各关节角(θ₁~θ₇),可在获得 p_e 后分别解肩部(θ₁, θ₂, θ₃)和肘部(θ₄)角度。

相关推荐
鲁邦通物联网44 分钟前
服务机器人如何产品化机器人梯控?软硬件一体化方案设计解析
机器人·巡检机器人·机器人梯控·agv梯控·非侵入式采集·机器人乘梯·机器人自主乘梯
workflower2 小时前
手术机器人市场发展阶段
大数据·人工智能·机器人·云计算·无人机
TMT星球4 小时前
地瓜机器人2026工博会首秀:端云一体全栈AI底座,覆盖视觉检测、工业数采与具身作业
人工智能·机器人·视觉检测
猫先生Mr.Mao4 小时前
具身智能之Open X-Embodiment详解:22种机器人数据如何训练出RT-X的跨本体迁移
机器人·论文解读·rt-x·具身智能·vla·open x-embodiment
zelonggao16 小时前
智能制造百人会协办上海国际具身智能产业博览会(CIEI 2026)、2026具身智能产业生态大会、第九届中国机器人峰会
机器人·制造
权球物联分享物联网连接服务6 小时前
AGV 机器人商业化落地验证,物联网卡保障产线交付稳定性!
物联网·机器人
鲁邦通物联网8 小时前
连锁酒店机器人规模部署,机器人梯控如何做好架构标准化
机器人·巡检机器人·机器人梯控·agv梯控·机器人乘梯·机器人自主乘梯
杜子不疼.8 小时前
第06篇:扩展不是堆机器——基于 A2A 协议的 openJiuwen 异构 Agent 通信架构设计
ai·机器人·devops
别动我齐刘海18 小时前
C++ 工程化学习
java·linux·前端·c++·学习·机器学习·机器人
yuewell_ai1 天前
机器人怎么隔空进化-OTA升级技术拆解
机器人