收藏本站 劰载中...网站公告 | 吾爱海洋论坛交流QQ群:835383472

海洋动力学 -海洋动力学 引擎

[复制链接]
" `% \$ w# r5 Q. I' `1 ]# e+ c, w$ O

这篇文章介绍一下SEA驱动器中:

线性动力学模型及其简化(Linear Dynamics Model and its Simplification);力矩求导(Torque Derivation)

这两块的内容是后续分析SEA弹性体刚度选择(Stiffness Selection)和相关SEA力矩控制(Torque Control)响应及性能的基础。因为SEA已经出现了将近20年,所以线性动力学模型和相关力矩求导都是经典内容——Nothing Special.

; I* C7 Y8 h) O. j

我希望通过我的解释,能够让之前没有了解过SEA的伙伴们快速入门。

: A0 C/ E$ O# L+ F% |# _( a. h, f

阅读提示(线性动力学模型Eq. 7,Eq. 8重要,力矩求导Eq. 13重要,结论性公式)

( u* c# q) ~) D3 C- K% n: i

线性动力学模型:

8 @) b9 L: r' j4 a2 b
& H- E" p y# v9 [& A* M, x5 S& ]

上图展示了SEA驱动器的实际物理结构(左图),我着重圈出了三个方块:

红色方块: 电机转子(Motor Rotor)绿色方块:减速箱(Gearbox)蓝色方块:输出端(Load)其中减速箱端与输出端串联关键的弹性体

对应的物理模型如上右图所示:红色(Motor)---绿色(Gearbox)---输出端(Load)

; k; }2 O7 c$ Z7 | y

其中:

( m' Q3 }) E' v0 v1 `

Im:I_{m}: 电机转子惯量; Ig:I_{g}: 齿轮箱惯量; Il:I_{l}: 输出端惯量;

$ V1 {9 p" h& l

kg,dmg:k_{g}, d_{mg}: 齿轮箱端与电机端之间的刚度与阻尼;

% Y/ X0 p4 p4 X; M" a! z% f A

kb,dgl:k_{b}, d_{gl}: 输出端与齿轮箱端之间的刚度与阻尼;

; ~3 F0 u' u3 H5 R9 y0 D

qm,qg,ql:q_{m}, q_{g}, q_{l}: 电机端,齿轮箱端,输出端绝对位置;

2 d7 Z3 K# K# B% U& A2 M# D) A

τm,τe:\tau_{m}, \tau_{e}: 电机端输出扭矩(电机线圈产生),输出端扭矩(与外部环境交互产生);

0 @" I9 }$ y. b/ @

dm,dg,dl:d_{m}, d_{g}, d_{l}: 电机、齿轮箱与输出端与驱动器外壳间的粘滞阻尼;

6 x& ], m4 [. s% b2 Y

△=qg−ql:\triangle=q_{g}-q_{l}: 输出端与齿轮箱端绝对位置偏角(重要参数)

: {+ U4 a; c) d# M

线性动力学的模型的核心其实就是各个模块上的扭矩平衡,如下:

+ t) z1 j% h. a$ @+ h( l

电机端扭矩平衡Eq. 1:

7 {3 l' I: s7 X

Imqm¨=τm−dmqm˙+dmg(qg˙−qm˙)+kg(qg−qm)I_{m}\ddot{q_{m}}=\tau_{m}-d_{m}\dot{q_{m}}+d_{mg}(\dot{q_{g}}-\dot{q_{m}})+k_{g}(q_{g}-q_{m}) ;

D& Y) z% P4 o7 Y w- a! ^% c

齿轮箱端扭矩平衡Eq. 2:

' L) t# S: {% X3 p1 O1 }+ T$ e

Igqg¨=−dgqg˙−dmg(qg˙−qm˙)−kg(qg−qm)+dgl(ql˙−qg˙)+kb(ql−qg)I_{g}\ddot{q_{g}}=-d_{g}\dot{q_{g}}-d_{mg}(\dot{q_{g}}-\dot{q_{m}})-k_{g}(q_{g}-q_{m})+d_{gl}(\dot{q_{l}}-\dot{q_{g}})+k_{b}(q_{l}-q_{g}) ;

& l/ |, W7 o5 B7 w# Q

输出端扭矩平衡Eq. 3:

5 P* d( j0 Q) m% h; r0 M9 r. T

Ilql¨=τe−dlql˙−dgl(ql˙−qg˙)−kb(ql−qg)I_{l}\ddot{q_{l}}=\tau_{e}-d_{l}\dot{q_{l}}-d_{gl}(\dot{q_{l}}-\dot{q_{g}})-k_{b}(q_{l}-q_{g}) ;

9 p; d/ ?4 r) n' C, ]( k

这里还需要提及到的是在Eq. 3中的最后两项可以写成如下的形式Eq. 4 (重要!):

7 q" O( \. Z- o" t

−dgl(ql˙−qg˙)−kb(ql−qg)=kb△+dgl△˙=τ;-d_{gl}(\dot{q_{l}}-\dot{q_{g}})-k_{b}(q_{l}-q_{g})=k_{b}\triangle+d_{gl}\dot{\triangle}=\tau;

1 _* c- Z3 f" K5 F0 B, P8 u$ t+ ^' @

注意:这里的 τ\tau 是和之前的定义的 τe\tau_{e} 是有区别的, τ\tau 在这里是齿轮箱向输出端传递的力矩。当处于输出平衡状态时,有如下等式Eq. 5:

" w4 l. S- {) F" b$ ~

−τe=τ−dlql˙;-\tau_{e}=\tau-d_{l}\dot{q_{l}};

2 u& d# g6 x' |5 l1 H u

工程经验:即使在输出端环节, τ,τe\tau,\tau_{e} 也是相差一个 dlql˙d_{l}\dot{q_{l}} ,这里的dld_{l} 是输出端与驱动器外壳的粘滞系数,与机械设计环节轴孔支撑的公差与装配手艺有重要的关系。

. \- M1 E% B% x6 {0 ]& R$ u

模型简化:

4 q/ K% h' @7 W

首先对于Eq. 4可以简化为Eq. 6:

0 w8 h6 h" P L; ] G4 i

τ=kb△+dgl△˙⇒τ≈kb△;\tau=k_{b}\triangle+d_{gl}\dot{\triangle}\Rightarrow \tau\approx k_{b}\triangle;

- ?: H* [% j! Y/ ?

(一般齿轮箱与输出端的弹性体都是金属材料,其阻尼系数可以忽略不计,即 dgl≈0d_{gl}\approx0

" G, t+ c0 J+ ^2 Y; s5 ^

对于大部分SEA驱动器而言,谐波减速器的刚度都远远大于柔性传动元件,因此我们可以将谐波减速器考虑成刚体(Rigid Body),即:

# J# Y- Q6 S6 e& a6 z( y+ t

qm≡qg,qm˙≡qg˙,qm¨≡qg¨;q_{m}\equiv q_{g}, \dot{q_{m}}\equiv \dot{q_{g}}, \ddot{q_{m}}\equiv \ddot{q_{g}};

0 L) g5 g, M& o* t% ]1 w3 k

所以对于Eq. 1与Eq. 2我们可以简化成如下Eq. 7 (重要!):

5 [! e+ R1 x* [( h

(Im+Ig)qm¨=τm+kb(ql−qm)+dgl(ql˙−qm˙)−(dm+dg)qm˙;(I_{m}+I_{g})\ddot{q_{m}}=\tau_{m}+k_{b}(q_{l}-q_{m})+d_{gl}(\dot{q_{l}}-\dot{q_{m}})-(d_{m}+d_{g})\dot{q_{m}};

7 Q- w$ b: b; D8 X) `$ [

对于Eq. 3可以改写成如下Eq. 8:

8 @2 x; R6 e/ j

Ilql¨=τe−dlql˙−dgl(ql˙−qm˙)−kb(ql−qm);I_{l}\ddot{q_{l}}=\tau_{e}-d_{l}\dot{q_{l}}-d_{gl}(\dot{q_{l}}-\dot{q_{m}})-k_{b}(q_{l}-q_{m});

5 H+ d: B v7 a- B* N

力矩求导:

2 u4 R- Z$ I. e# a$ `

这部分内容中通过拉普拉斯变换与一系列数学推导,我们将试图得到在频域下:

0 T I, A0 a, z& h }

输出量 τ(s)\tau(s) 与输入量 τ∗(s),ql(s)\tau^{\ast}(s), q_{l}(s) 之间的关系:

! ]& D9 G N$ O8 }- [5 ]

τ(s)\tau(s) :频域下实际输出扭矩——电机端传递到输出端;

" ^! H/ }, H# x5 ]' \1 N# B: p6 H1 h

τ∗(s)\tau^{\ast}(s) :频域下目标扭矩;

7 y9 D2 }0 }. J

ql(s)q_{l}(s) :频域下输出端绝对位置;

% J) b; Y' w R; Z7 J$ l$ R0 C2 M

以上即为处理公式Eq. 7的数学目标。

" I" O8 _' e, M0 Y

1. 处理 qm(s)q_{m}(s)

" O4 j: r1 w* h- T! P

首先,对线性动力学模型得到的Eq. 7进行拉普拉斯变换,并代入 qm(s)−ql(s):=△(s)q_{m}(s)-q_{l}(s):=\triangle(s) 进行改写,我们得到Eq. 9:

" _1 _/ L# O0 K% s

[Is2+(dM+dgl)s+kb]△(s)=−[Is2+dMs]ql(s)+τm(s);where,I=Im+Ig,dM=dm+dg[Is^{2}+(d_{M}+d_{gl})s+k_{b}]\triangle(s)=-[Is^{2}+d_{M}s]q_{l}(s)+\tau_{m}(s); \\where, I = I_{m}+I_{g}, d_{M}=d_{m}+d_{g}

3 g/ W+ m0 h" J9 [, R' e+ p6 @

我们仔细观察Eq. 9, 通过 qm(s)−ql(s):=△(s)q_{m}(s)-q_{l}(s):=\triangle(s) 的代入,我们已经消除了 qm(s)q_{m}(s) 这个电机端的位置变量,下一步要做的就是处理 τm(s)\tau_{m}(s) 这个电机端的输出力矩。

! I* q/ D& O, F5 J

2. 处理 τm(s)\tau_{m}(s)

( b, ~7 v) w* w& Y- \7 P, d- s

假设我们使用了一种如下形式的反馈控制器,

# T* I' N: a3 R. G

C(s)=Kp+Kds;C(s)=K_{p}+K_{d}s;

) z" Y. j1 {% |: ?+ ~" E8 [

这种控制器是用来测量角度偏转 \triangle , 并且假设前馈控制为 ()λ(s)\lambda(s),

4 M) e, R0 G8 a! k/ P4 q

那么我们得到如下Eq .10:

! L+ H) ]9 N- y6 f* r$ u% S

τm(s)=C(s)(τ∗(s)−τ(s))+λ(s)τ∗(s);where,τ(s)≈kb△(s)\tau_{m}(s)=C(s)(\tau^{\ast}(s)-\tau(s))+\lambda(s)\tau^{\ast}(s); \\where, \tau(s)\approx k_{b}\triangle(s)

8 E0 I Y2 ]& }

将Eq .10代入Eq. 9, 我们将得到Eq. 11:

5 X: V% `; k- i X9 H8 J

[Is2+(dM+dgl)s+kb(1+C(s))]△(s)=−[Is2+dMs]ql(s)+[C(s)+λ(s)]τ∗(s);[Is^{2}+(d_{M}+d_{gl})s+k_{b}(1+C(s))]\triangle(s)=-[Is^{2}+d_{M}s]q_{l}(s)+[C(s)+\lambda(s)]\tau^{\ast}(s);

E% J/ _: Y4 B" [3 X8 }3 J1 q

这里,我们看到Eq. 11中,我们要的 τ∗(s),ql(s)\tau^{\ast}(s), q_{l}(s) 都已经在等号右边出现。

Y# t. p+ \% L" _9 `% u- v6 r M8 g

3. 处理 τ(s)\tau(s)

5 X, }6 c$ S/ }4 d

我们从Eq. 4可以知道 ()τ(s)=(kb+dgls)△(s)\tau(s)=(k_{b}+d_{gl}s)\triangle(s) ,将其代入Eq. 11的等号左边,我们得到Eq. 12:

% N7 W8 H0 q/ k0 a% B

τ(s)=−[Is2+dMs]ql(s)+[C(s)+λ(s)]τ∗(s)−(Is2+dMs+kbC(s))△(s);\tau(s)=-[Is^{2}+d_{M}s]q_{l}(s)+[C(s)+\lambda(s)]\tau^{\ast}(s)-(Is^{2}+d_{M}s+k_{b}C(s))\triangle(s);

l) o3 D8 `4 ~) i8 u# p2 S

4. 整理

, [0 l" @( C( G; X+ y: B* D

将Eq. 12整理如下得到Eq. 13:

% ], Y+ h6 l- a; F

τ(s)=(kb+dgls)[△τ∗(s)τ∗(s)+△ql(s)ql(s)];where△τ∗(s)=△(s)τ∗(s)=Kds+Kp+λ(s)Is2+D△s+K△;△ql(s)=△(s)ql(s)=−(Is2+dMs)Is2+D△s+K△;andD△=kbKd+dM+dgl;K△=kb(Kp+1);\tau(s)=(k_{b}+d_{gl}s)[\triangle_{\tau^{\ast}}(s)\tau^{\ast}(s)+\triangle_{ql}(s)q_{l}(s)]; \\where \\\triangle_{\tau^{\ast}}(s) = \frac{\triangle(s)}{\tau^{\ast}(s)}= \frac{K_{d}s+K_{p}+\lambda(s)}{Is^{2}+D_{\triangle}s+K_{\triangle}}; \\\triangle_{ql}(s)=\frac{\triangle(s)}{q_{l}(s)}=\frac{-(Is^{2}+d_{M}s)}{Is^{2}+D_{\triangle}s+K_{\triangle}}; \\and \\D_{\triangle}=k_{b}K_{d}+d_{M}+d_{gl}; \\K_{\triangle}=k_{b}(K_{p}+1);

) D3 m5 _9 ~9 H

Eq. 13算是SEA的力矩求导下,通过拉普拉斯变换结论性的公式,如果不需要知道相应的推导过程,可以直接拿去使用。其对于分析SEA驱动器的力控性能至关重要——包括透明度(Transparency)和力矩追踪能力(Torque Tracking).

' G) \( W+ Y. X9 f% y* s0 R

(所有的公式都是我在知乎网页上Latex一个一个敲出来的,不保证全部正确。如果真的有小伙伴能够看完所有公式,给我纠正出错误,我非常开心和感激!)

+ f& l- ]- D5 F! D9 \' O, u) B. E! H

对于SEA驱动器硬件结构不是很了解的小伙伴,附上我以前写过的介绍链接:

1 e" g9 J1 `$ k5 J

一种带力矩、位置传感器的紧凑人型机器人SEA驱动器(带谐波减速器)机械设计方案

' U$ M$ \) m, T

Strain Gauge or Encoder Based? 关于SEA力矩测量原理选择的浅谈

& N. J% @& L/ S) F1 @9 {% x

参考文献:

Roozing, Wesley, Jörn Malzahn, Navvab Kashiri, Darwin G. Caldwell, and Nikos G. Tsagarakis. "On the Stiffness Selection for Torque-Controlled Series-Elastic Actuators." IEEE Robotics and Automation Letters 2, no. 4 (2017): 2255-2262.Pratt, Gill A., and Matthew M. Williamson. "Series elastic actuators." In Intelligent Robots and Systems 95.Human Robot Interaction and Cooperative Robots, Proceedings. 1995 IEEE/RSJ International Conference on, vol. 1, pp. 399-406. IEEE, 1995.& z% n1 u6 K; S. Y1 O6 k 9 n% Y# r* v7 B& Y8 |" T) ? - h) W& s$ q6 H7 f& u4 s6 C- [! A8 J$ i* a/ Q8 m# z% z2 n' G , Z. \) U! [$ Q+ h4 K' |4 j
回复

举报 使用道具

相关帖子

全部回帖
暂无回帖,快来参与回复吧
懒得打字?点击右侧快捷回复 【吾爱海洋论坛发文有奖】
您需要登录后才可以回帖 登录 | 立即注册
瓦他若
活跃在2026-4-15
快速回复 返回顶部 返回列表