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

5.2.3 传动装置影响

§5.1.1 讲传动装置的作用,本节把它量化:齿轮到底怎样改变系统的惯量、摩擦与非线性。结论非常干净——惯量与摩擦按减速比的平方缩小,负载力矩与非线性按减速比线性缩小。这两条就是「大减速比让机器人变好控」的全部数学内容。录播 01:24:51–01:32:31。

5.2.3.1 齿轮模型与减速比

教材用一个一对圆柱齿轮(半径 rmr_m 与 rr)构成的机械齿轮来量化(教材图 5.7):假定运动副是理想的(没有间隙),并把伺服发动机旋转轴与相应关节轴连接起来。

定义 5.2.4 · 减速比与齿轮耦合

记号约定(教材 §5.2.3):伺服电机转子由绕其旋转轴的转动惯量 ImI_m 与粘滞摩擦系数 FmF_m 表征;同样地 II 和 FF 表示载荷的转动惯量与粘滞摩擦系数。齿轮本身的转动惯量和摩擦系数被包含在上述参数里。

  • CmC_m:发动机驱动转矩;ClC_l:施加到载荷的负载转矩;
  • ωm,ϑm\omega_m,\vartheta_m:发动机轴的角速度与位置;ω,ϑ\omega,\vartheta:载荷的相应量;
  • ff:两齿轮齿咬合时的交换力。

减速比定义为

kr=ωmω=rrm(5.22)k_r=\frac{\omega_m}{\omega}=\frac{r}{r_m} \tag{5.22}

因为运动副中没有打滑,有 rmϑm=rϑr_m\vartheta_m=r\vartheta。

典型值:对机器人机械手伺服发动机与关节耦合的情形,减速比远大于 1(rm≪rr_m\ll r),典型值从几十到几百。

定理 5.2.C · 等效惯量与等效摩擦

交换力 ff 在两个轴上分别产生负载力矩 f rmf\,r_m(作用在发动机轴上)与驱动力矩 f rf\,r(作用于载荷)。于是发动机与载荷的力学平衡分别是

Cm=Imω˙m+Fmωm+frm(5.23)C_m=I_m\dot\omega_m+F_m\omega_m+fr_m \tag{5.23} fr=Iω˙+Fω+Cl(5.24)fr=I\dot\omega+F\omega+C_l \tag{5.24}

利用 krk_r 把载荷量折算到发动机轴、消去 ff,得到发动机轴上的等效力学平衡:

Cm=Ieqω˙m+Feqωm+Clkr(5.25)C_m=I_{eq}\dot\omega_m+F_{eq}\omega_m+\frac{C_l}{k_r} \tag{5.25}

其中

Ieq=Im+Ikr2,Feq=Fm+Fkr2(5.26)I_{eq}=I_m+\frac{I}{k_r^2},\qquad F_{eq}=F_m+\frac{F}{k_r^2} \tag{5.26}

读法(教材原话):在齿轮具有大减速比的情形下,式 (5.25)(5.26) 描述了载荷的转动惯量和粘滞摩擦系数是如何按减速因子 1/kr21/k_r^2 反映到发动机轴的;相反,负载力矩由因子 1/kr1/k_r 而减小。而且——如果这个力矩以非线性方式依赖于 ϑ\vartheta,则存在大减速比将使其趋向于线性化动态方程。

这一条是本节的全部要害:1/kr21/k_r^2 与 1/kr1/k_r 两个因子解释了为什么工业机器人敢于用「小电机 + 大减速器」:

量折算因子减速比 100 时
载荷转动惯量 II1/kr21/k_r^2缩小 10000 倍
载荷粘滞摩擦 FF1/kr21/k_r^2缩小 10000 倍
负载力矩 ClC_l1/kr1/k_r缩小 100 倍
非线性项(如重力矩)1/kr1/k_r(且自变量也缩小)显著弱化

对照 定义 5.1.6 第 1 条「低惯量」:减速器把远端连杆的惯量几乎从电机轴上「抹掉」——这正是老师说的「惯量小就比较容易控制」(0:33:01)。

5.2.3.2 例 5.1:由齿轮驱动的刚体摆

例 5.1 · 由机械齿轮驱动的摆(教材例 5.1)

如图 5.8,一个刚体摆受到转矩 f⋅rf\cdot r 通过齿轮到载荷轴的驱动。系统的动态方程组为

Cm=Imω˙m+Fmωm+frm(5.27)C_m=I_m\dot\omega_m+F_m\omega_m+fr_m \tag{5.27} fr=Iω˙+Fω+mglsin⁡ϑ(5.28)fr=I\dot\omega+F\omega+mgl\sin\vartheta \tag{5.28}

其中 II 是摆在载荷轴的转动惯量,FF 为粘滞摩擦系数,mm 为摆的质量,ll 为其长度,gg 为重力加速度。

把 (5.28) 折算到发动机轴,得到

Cm=Ieqω˙m+Feqωm+mglkrsin⁡ϑmkr(5.29)C_m=I_{eq}\dot\omega_m+F_{eq}\omega_m+\frac{mgl}{k_r}\sin\frac{\vartheta_m}{k_r} \tag{5.29}

教材的评语是:「从中可以清楚地看到因子 krk_r 是如何降低非线性项的作用的」。

这一步为什么重要? 重力矩 mglsin⁡ϑmgl\sin\vartheta 是机器人动力学里最主要的非线性来源。经过减速器后,它同时被两件事削弱:幅值除以 krk_r,且自变量变成 ϑm/kr\vartheta_m/k_r——也就是说,在电机转一整圈的范围内,sin⁡\sin 只走过很小一段近似直线的区间。于是「非线性」在电机端退化成了「近似线性的小扰动」,这正是第 8 章能对每个关节做独立线性控制的物理根据。

推广到 n 连杆机械手:教材指出,这个摆的例子「被看作是对具有转动关节的 nn 连杆机械手的描述」——把连杆视为孤立于其他连杆,其每一个连杆可以看作简单的刚体摆。当然,与其他连杆的连接会引入使输入/输出模型复杂化的非线性影响:「在双摆情形下,第一连杆的发动机转动惯量同样取决于第二连杆的角位置」。

结论:「不同连杆的发动机之间的非线性耦合,将如何通过存在大减速比的(传动)而得到减小」——第 7 章会详细研究这一点。

老师把「两端情形」讲得很清楚(01:29:05–01:29:49),值得单独记下来:

krk_r 很大(工业常态,典型几十到几百)krk_r 接近 1(直驱或小减速比)
载荷惯量 I/kr2I/k_r^2可忽略(kr=100k_r=100 时只剩 10−410^{-4} 倍)主导——负载惯量几乎原样落到电机轴
非线性项 mglsin⁡(⋅)/krmgl\sin(\cdot)/k_r幅值小、且自变量被压缩,「这个方程就可以线性化了」影响很大——「我们做(控制)的时候就要考虑这个非线性」
建模与控制的后果可按线性处理,逐关节独立设计必须显式处理非线性;而且「很多情况下即使知道(非线性)模型也不能处理」,只能补偿
IeqI_{eq} 的构成ImI_m 主导(kr=100k_r=100 时负载惯量仅占 5%)负载与电机同量级

一句话:krk_r 决定了你在跟一个线性系统还是非线性系统打交道——这既解释了工业机械手为什么敢用「小电机 + 大减速器」,也解释了直驱(定义 5.1.4)为什么「对控制算法的要求非常高」(0:35:19)。

考点 · 老师原话(录播时间点)

减速比把惯量「抹掉」:老师在这一页反复指出,减速比一乘上,负载惯量按平方缩小、负载力矩按一次方缩小,所以「我控制这个关节就单独控制这个关节」(01:24:51、01:29:52)。

重力矩被线性化:摆的例子要说明的是——大减速比下 sin⁡ϑ\sin\vartheta 在电机端近似成一条直线,「非线性项的作用被 krk_r 降低」(01:29:52)。

默写点 · 合上书再写(主动回忆)
  1. 写出 IeqI_{eq} 与 FeqF_{eq} 的表达式,并说明各自的折算因子。
  2. 负载力矩折算到电机轴要乘什么因子?为什么它和非线性项的因子不同?
  3. 摆的例子里,krk_r 通过哪两条途径削弱重力矩的非线性?
  4. 把单摆推广到 nn 连杆时,多出来的是什么影响?第几章处理?
核对

Ieq=Im+I/kr2I_{eq}=I_m+I/k_r^2,Feq=Fm+F/kr2F_{eq}=F_m+F/k_r^2——载荷惯量与摩擦按 1/kr21/k_r^2 折算。

乘 1/kr1/k_r。因为惯量/摩擦是「速度的系数」,而力矩是「与速度量纲无关的外力」;前者在动力学方程里随 ωm\omega_m 的幂次变换,后者只做一次量纲折算。

① 幅值除以 krk_r;② 自变量变成 ϑm/kr\vartheta_m/k_r,使 sin⁡\sin 只在一小段近线性区间内取值。

多出的是连杆之间的非线性耦合(双摆情形下第一连杆的电机惯量还取决于第二连杆的角位置)。第 7 章(动力学)详细研究。

5.2.3 小结与常见错误

  • 两个因子:惯量与摩擦 1/kr21/k_r^2;负载力矩与非线性 1/kr1/k_r。
  • 一个方程:Cm=Ieqω˙m+Feqωm+Cl/krC_m=I_{eq}\dot\omega_m+F_{eq}\omega_m+C_l/k_r ——后面几章到处用它。
  • 一个推论:大减速比把非线性动态推向线性化,这是独立关节控制的物理根据。
常见错误清单 · 自查三条
  1. 把两个折算因子都用成 1/kr1/k_r 或都用成 1/kr21/k_r^2——记住惯量/摩擦是平方,力矩是一次。
  2. 在 (5.29) 里只写 mglsin⁡ϑm/krmgl\sin\vartheta_m/k_r 而把 krk_r 放错位置——正确形式是 mglkrsin⁡ϑmkr\dfrac{mgl}{k_r}\sin\dfrac{\vartheta_m}{k_r}(两个 krk_r 各在一处)。
  3. 以为减速比只影响「力矩放大」——它对惯量的影响(平方缩小)往往更重要。