Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

3.8 静力学

末端执行器顶住工件时,力和力矩会沿着运动学链一路「传」回关节,变成电机需要输出的力矩。这里起作用的桥梁不是 JJ 本身,而是 JJ 的转置——因为功率守恒要求「速度变换的对偶就是力变换」。别小看这条 τ=JTFe\tau=J^{\mathrm T}F_e:它是全章最短、也最有用的一条公式。录播 0:03:02–0:19:28(开课即讲)+ 2:27:09–2:27:52(末段)。

3.8.1 运动静力学对偶与 τ=JTFe\tau=J^{\mathrm T}F_e

老师在开课导论里就直接给出了结论(0:17:41–0:19:23):「关节需要输出的力矩,按静态平衡,等于几何雅可比的转置再乘以末端执行器所受到的六维力(三个平动的力 + 三个转动的矩)。物理意义就是:末端受力和矩时,为保持机械臂静态平衡,每个关节电机要输出什么样的力矩。」他同时交代,这个结论的推导「基于虚功原理和能量守恒」。

定义 3.8.1 · 末端广义力与关节力矩

Fe=[feμe]∈R6(3 平动力+3 转动力矩),τ=[τ1,…,τn]TF_e=\begin{bmatrix}f_e\\ \mu_e\end{bmatrix}\in\mathbb R^6\qquad(3\ \text{平动力}+3\ \text{转动力矩}),\qquad \tau=[\tau_1,\dots,\tau_n]^{\mathrm T}

静力平衡关系(运动静力学对偶):

 τ=JT(q) Fe \boxed{\ \tau=J^{\mathrm T}(q)\,F_e\ }

推导(虚功原理,2:27:09–2:27:52 课件页)

设关节虚位移 dq\mathrm dq,对应末端虚位移 dxe=J dq\mathrm dx_e=J\,\mathrm dq。

  • 关节端做功(关节力矩做的功):dWτ=τTdq\mathrm dW_\tau=\tau^{\mathrm T}\mathrm dq;
  • 末端处外力做的功:dWF=feTdPe+μeTωe dt\mathrm dW_F=f_e^{\mathrm T}\mathrm dP_e+\mu_e^{\mathrm T}\omega_e\,\mathrm dt(外力 FeF_e 在末端虚位移上做的功);

静态平衡时系统总虚功为零(能量守恒,可逆虚位移):

dWτ+dWF=0 ⟹ τTdq=−FeT[dPeωedt]=−FeTJ dq\mathrm dW_\tau+\mathrm dW_F=0 \ \Longrightarrow\ \tau^{\mathrm T}\mathrm dq=-F_e^{\mathrm T}\begin{bmatrix}\mathrm dP_e\\ \omega_e\mathrm dt\end{bmatrix} =-F_e^{\mathrm T}J\,\mathrm dq

对任意 dq\mathrm dq 成立 ⇒ τT=−FeTJ\tau^{\mathrm T}=-F_e^{\mathrm T}J,取转置即 τ=JTFe\tau=J^{\mathrm T}F_e。□

□

为什么是 JTJ^{\mathrm T} 而不是 J−1J^{-1} / J†J^\dagger

速度方向有 ve=Jq˙v_e=J\dot q(nn 个关节速度 → 66 维末端速度);力的传递方向正好反过来(66 维末端力 → nn 个关节力矩),但不是求逆——因为能量必须守恒:q˙Tτ=veTFe=(Jq˙)TFe=q˙TJTFe\dot q^{\mathrm T}\tau=v_e^{\mathrm T}F_e=(J\dot q)^{\mathrm T}F_e=\dot q^{\mathrm T}J^{\mathrm T}F_e,对任意 q˙\dot q 成立即 τ=JTFe\tau=J^{\mathrm T}F_e。这就是「速度与力的变换互为转置(对偶)」的一般原理;JJ 是长方阵时也照样成立(无需方阵、无需满秩)。

把「速度与力互为转置」画成一张对偶图,就是下图:上行是熟悉的 ve=Jq˙v_e=J\dot q,下行把传递方向掉转过来、矩阵换成转置,中间由功率守恒把两行钉在一起。

速度映射与力映射的转置对偶 左为关节空间:上行是 n 维关节速度、下行是 n 维关节力矩;右为操作空间:上行是 6 维末端速度、下行是 6 维广义力。上行箭头从左到右标 J,下行箭头从右到左标 J 转置,中间框写明功率守恒把两个矩阵钉成转置关系。 速度与力的变换:互为转置的对偶 关节空间(n 维) 关节速度 q′ n 个关节 关节力矩 τ 每个电机出多大力矩 操作空间(6 维) 末端速度 ve 线速度 + 角速度 广义力 Fe = (f, μ) 力 + 力矩 J:ve = J q′(正问题,一次乘法) JT:τ = JT Fe(力反向传递,不求逆) 功率守恒:q′Tτ = veT Fe 对任意 q′ 成立 ⇒ 两矩阵互为转置 无需方阵、无需满秩——对偶比求逆更普适;静力平衡专用,含惯性 / 科氏力时回到动力学方程 同一 J 的两副面孔:正向传速度(第 3 章主线),转置传力(本节)
运动静力学对偶(本教程绘):上行 ve=Jq˙v_e=J\dot q 与下行 τ=JTFe\tau=J^{\mathrm T}F_e 由功率守恒 q˙Tτ=veTFe\dot q^{\mathrm T}\tau=v_e^{\mathrm T}F_e 钉成转置关系——这就是 定义 3.8.1 的 τ=JTFe\tau=J^{\mathrm T}F_e 不需要方阵与满秩的原因。

老师对它的定位很清楚:「主要是记住这个公式就可以」(0:25:53);在导论里说得更直白:「其实我们可以不讲 PPT,大家就记住这些内容就可以了」(0:19:21)。结论记住之后,还剩一个问题:换一个坐标系,这套速度 / 力关系该怎么写?这正是下一小节的内容。

3.8.2 两坐标系间的速度与力变换

3.8.1 的转置对偶发生在关节空间与操作空间之间;一旦涉及两个坐标系,同一副对偶结构会再次出现——同一速度 / 力在不同坐标系下的表示,恰好也构成一对转置对偶。设坐标系 1 相对基系 00 有旋转 R10R_1^0 与平移 p~\tilde p(牵连项用 S(p~)S(\tilde p) 表示):

[p˙10ω10]=[R10−R10S(p~)0R10][v1ω1],[f10μ10]=[R100R10S(p~)R10][f1μ1]\begin{bmatrix}\dot p_1^0\ \omega_1^0\end{bmatrix}=\begin{bmatrix}R_1^0&-R_1^0S(\tilde p)\ 0&R_1^0\end{bmatrix}\begin{bmatrix}v_1\ \omega_1\end{bmatrix}, \qquad \begin{bmatrix}f_1^0\ \mu_1^0\end{bmatrix}=\begin{bmatrix}R_1^0&0\ R_1^0S(\tilde p)&R_1^0\end{bmatrix}\begin{bmatrix}f_1\ \mu_1\end{bmatrix}

力(右)的变换矩阵恰是速度(左)变换矩阵的转置。看细节:平移部分 S(p~)S(\tilde p) 在速度块里带负号、在力块里不带负号并移位,这正是「对偶」的体现(可与 3.1.3 的 JuJ^u 坐标变换对照:JuJ^u 只改旋转块,这里还含平移的耦合)。

老师应用提示(2:27:34):「最后还有一个任务:在(不同)姿态坐标系与基坐标系之间做表示的转换,后面大家应用的时候要考虑一下。」实际开发中,传感器、工件、工具各自的坐标系都不一样,要先把力 / 速度统一到同一个坐标系,再谈平衡——这与 3.1.3 的 JuJ^u 是同一件事的力版本。

3.8.3 闭链与可操作椭球(了解)

本节最后两块内容只作了解,知道「有这一块」即可:

  • 闭链静力学(课件图示,2:27:25):多机器人 / 闭链结构里,力的分配需要额外约束(内力不可任意指定)。本节只点明「有这一块」,细节留到后续章节;
  • 可操作椭球(了解,2:26:01 老师明确「不讲」):「跟手术机器人手臂的灵巧性设计相关」——它由 w(q)=det⁡(JJT)w(q)=\sqrt{\det(JJ^{\mathrm T})} 与速度 / 力椭球刻画末端在各方向上的运动 / 施力能力,也可在 3.5.1 的可操作度 q˙0\dot q_0 里作为优化目标。教材上有对应内容,自学。

默写点 · 合上书再写(主动回忆)

不看正文与速查卡,先独立写出下面三条,再展开核对。若写不出来,就说明这一节还没真正「拿走」。

  1. 用虚功原理推出 τ=JTFe\boldsymbol\tau=J^{\mathrm T}F_e。
  2. 为什么力变换是 JTJ^{\mathrm T} 而不是 J−1J^{-1} 或 J†J^\dagger?
  3. 两坐标系间的速度变换与力变换是什么关系?
核对

设关节虚位移 dq\mathrm dq,末端虚位移 dxe=Jdq\mathrm dx_e=J\mathrm dq。关节端做功 τTdq\tau^{\mathrm T}\mathrm dq,末端处外力做功 −FeTJdq-F_e^{\mathrm T}J\mathrm dq;静态平衡时总虚功为零 ⇒ τT=−FeTJ\tau^{\mathrm T}=-F_e^{\mathrm T}J,取转置即 τ=JTFe\boldsymbol\tau=J^{\mathrm T}F_e。

因为能量必须守恒:q˙Tτ=veTFe=(Jq˙)TFe=q˙TJTFe\dot{\boldsymbol q}^{\mathrm T}\boldsymbol\tau=\boldsymbol v_e^{\mathrm T}F_e=(J\dot{\boldsymbol q})^{\mathrm T}F_e=\dot{\boldsymbol q}^{\mathrm T}J^{\mathrm T}F_e,对任意 q˙\dot{\boldsymbol q} 成立。无需方阵、无需满秩——这正是对偶比求逆更普适之处。

互为转置:力变换矩阵恰是速度变换矩阵的转置(平移块 S(p~)S(\tilde{\boldsymbol p}) 在速度式里带负号、在力式里移位且不带负号)。

3.8 小结与常见错误

  • 一条主线:末端广义力 FeF_e → 虚功原理 → τ=JTFe\tau=J^{\mathrm T}F_e(记住这条就够)→ 速度 / 力变换互为转置对偶 → 闭链 / 可操作椭球(了解)。
  • 一句话:「末端受力和矩时,每个关节电机该出多大力矩」——这就是 JTJ^{\mathrm T} 的物理含义。
常见错误清单 · 自查三条
  1. 用 J−1J^{-1} 或 J†J^\dagger 传力——力变换是 JTJ^{\mathrm T}(对偶),不是求逆;JJ 是长方阵时同样成立;
  2. 忘记力所在的坐标系——FeF_e 与 JJ 必须在同一坐标系下;传感器测得的力,要先用 3.8.2 的转置对偶关系变换到基系;
  3. 把 τ=JTFe\tau=J^{\mathrm T}F_e 用在动态 / 高速情形——它只是静力平衡式;一旦含惯性、科氏力,就必须回到动力学方程(见后续动力学章节)。