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

[复制链接]
: e: ~. E; o d4 @2 [

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

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

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

8 Z+ ]. H# b! f& w

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

$ _" F, H* R2 F

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

. F* `/ H$ g( i5 ^

线性动力学模型:

4 M" N& s/ e$ m2 z6 ^' u6 @- @
+ S0 K3 x/ t; f- @( ?/ J+ N# D2 ]

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

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

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

4 f" Z9 Q& L) h) `- e0 j- Q

其中:

1 s9 X. u, A4 A- ^9 v$ c- ?9 j, M

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

8 r6 ]- @3 H2 {# _# t5 E

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

9 S s8 X+ f6 E; O" E; d7 E

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

! u W# t1 F$ p/ ]7 i. A: S

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

d4 q# a3 Y$ I1 q3 E

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

; W& J ^; B: F8 | P. Z5 G6 z1 V4 s

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

# b+ I0 }5 r$ ?; x* w/ M2 p

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

0 B5 x: X+ ]0 Z; g3 Q3 X

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

4 p% T+ r% p# v+ c6 B! j4 r6 J, m

电机端扭矩平衡Eq. 1:

" ^* S! f1 p1 F/ M

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}) ;

( e* }2 P. \4 A) d3 K! B2 N

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

3 Q$ p' n0 f5 t& a! U8 P! N% Q

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}) ;

7 C/ Z0 y$ u, Z" u% o

输出端扭矩平衡Eq. 3:

( X: u+ q0 a) E6 b9 M& A6 t5 H* `

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}) ;

" V; \+ p$ F4 \3 w

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

0 x8 Z) r- M6 ~$ K' x* Q% D

−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;

+ B; M; q+ ?; G( b" C A6 x$ k

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

- y" \" j9 _' S0 z! Z

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

% ^6 Y5 U/ H1 _, I

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

( l% ^& p1 V+ w

模型简化:

' O, X; h- ~* A8 }' I" R

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

5 K5 B( s* M7 C7 {7 w& D/ x5 R

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

. S* K' f5 Y2 F4 i, V5 \3 X

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

! Z& x/ p3 a% v/ M3 X: `

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

, U7 L+ u; q/ P' @! r" F' }4 Y

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 x B m6 B ]4 @2 n$ F7 {

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

5 K' ^" [. W C- Z' \& ~, W7 ~$ x @) T

(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}};

+ x$ u5 D: {" H! h

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

8 t% L3 w. p4 B7 C, 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});

; |- j, i' j/ R# N

力矩求导:

7 W: }/ q, n% d* a

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

' V2 e# L3 t; T' R* @$ I6 Z: W

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

) U5 f7 a5 ^9 o" R/ P

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

- _' Y8 M; R7 U) Z8 O: R! g

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

& U8 M5 j% |3 @8 h" | i, @

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

[# g5 W" ^# v! p' o8 B0 V- N

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

" L7 p* _' X, _

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

: S/ G0 y( y( u

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

7 x5 [3 t3 [$ z

[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}

% P* ?/ l { x1 ^9 C/ G9 f/ E. y

我们仔细观察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) 这个电机端的输出力矩。

: _; a* M! R. N' N

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

" M4 o1 l1 w( h7 L2 q3 W7 k

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

1 g, f% o4 M- z9 [ P

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

# P, j- G' y7 x6 {% |( B' ^( f7 h

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

; Z6 ^' u) h7 I/ g3 ]

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

: D/ y3 B: B, x' y

τ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)

! L1 J }- C8 M2 \/ s R, X6 d' S

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

! e5 a0 a! t: \ c

[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);

/ x' [$ ?, I6 X7 f; V

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

, j: w* f% P2 v( Q

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

. |. ~' f' L0 u

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

3 H3 `8 K- j4 {0 v! |8 d& j I

τ(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- F# O: }, H+ M- P$ Z

4. 整理

0 e2 v2 W6 v$ Y0 R @

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

6 @: Q1 P* T; x! L, b5 \$ F! C

τ(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);

5 ^2 z$ p% E/ B% q- C9 m4 h- b( F

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

8 V1 u; i6 P4 _ s

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

; A T; {! j" m

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

1 \5 P& Q+ Y" Z/ \: ]: g

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

6 C5 f6 b7 {" {$ s2 K- D8 y

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

6 O5 l) v6 |. C3 v1 S7 l7 Q

参考文献:

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. % j5 r3 l* E: J( z2 o5 M% g! j7 E ! s/ V8 A2 I4 V6 d o8 s: O& x0 S( l% R ^, Q) x; v8 Q8 ] - ~: t, V% ^; p! m) b& K
回复

举报 使用道具

相关帖子

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