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

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

[复制链接]
) F' i# p4 Y* q$ u; I% V

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

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

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

5 s& R1 I; j; F m/ Q, ^& N

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

- E6 k1 l/ y: `; ^! D1 b

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

" d" D: p9 w1 U; }

线性动力学模型:

$ u* S: v' } d; G
2 W x: p; t4 H7 L0 w& E

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

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

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

! T/ z& v0 E/ J- i7 E X! P, ]

其中:

5 x' t# R' m1 ?9 O3 B% ~

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

1 l1 f$ s; m5 ]0 W9 Y

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

- V4 A# X3 K, |8 I. w

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

$ l; B0 H, `! U8 m

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

3 A; h8 k0 w9 V* Z2 _

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

' f9 N6 q( ~8 O5 B W3 F2 h

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

. }* N' [3 C: R8 C6 |

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

9 U, v C7 M$ d2 u0 V F, o* u

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

' V8 o" a( k3 ?, y8 I& z: r7 `

电机端扭矩平衡Eq. 1:

9 @& g- V5 i6 F( A4 }

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

# t: p8 t2 c3 A( t5 P

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

7 e: k# B% n3 }% s1 ?; @. H

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

. J( S. I8 B: `. \& l6 R# W

输出端扭矩平衡Eq. 3:

' W: `! u* `# z. j

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

5 K M# X/ C7 O, d" v

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

! }! r) g6 R: }6 q( B+ D; C0 p- E

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

" m6 i9 S. x- O! Y+ f+ j6 m ]

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

' {" \% x P; l; O

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

4 z1 ~( i* h6 \# z9 N

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

( H: q& |7 J1 ?$ L- u" N

模型简化:

' x( Z T0 d; D3 f" v

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

8 E0 D, {( s! p! Z$ Y# W0 L- e

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

9 a, }' \6 G, X! n, n6 b& u

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

R1 f \ ] s0 e/ ~" ^

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

: F% _1 v1 I' [; L; b3 K& C! w

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

9 |) V, q$ V% m) [ ~# e3 M

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

4 c- N/ M/ `/ ^ [* v& A

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

) `5 s* E) Z- i& V# A# o

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

$ B! k1 u5 o: k5 u

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

2 Q5 Z3 k. [. b3 P& l2 t2 r I3 r

力矩求导:

- `" \& Z) T) y5 n! \7 C

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

& Q/ I* u- @3 g+ Z: z3 A0 @

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

! f% G+ G7 s. H/ ?& k

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

& ~% \( s1 I, O, [; }" x

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

- f* b0 D3 Q1 F

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

% x2 \" I$ w% C6 `

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

# E$ f: F3 ^5 _6 ^- g( H2 ^

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

0 v5 q; `& L) n; L- o7 h" A

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

9 Y0 O9 U) k* f" ~, G( X

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

; n' ~' ]5 G) P5 O. ~$ f

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

9 N2 ]6 T5 f6 ^- L3 k: o

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

' K4 S1 z. I" X6 T4 h

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

1 k* d$ \! i6 v2 M- H0 z

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

2 R$ ]: B4 J) o& H; q& ^

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

% v: B; [+ e; i N

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

- I4 N4 d7 U8 @( T" d% r# F

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

/ ?- D. j% g8 N* {

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

' g2 }+ R( ~% G E) _

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

; I+ y5 U$ Z+ j" {2 v$ ?

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

( J$ H. O6 H( A4 G; Z7 _+ [2 v

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

4 p# [- K6 H2 z

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

/ E1 Z/ i; \: D& ]" W

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

, o! ~6 W, x% ]8 K# c" _

4. 整理

7 d1 L7 W- x! r: ?4 ?

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

9 K0 m9 J& D* U" 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);

9 O+ ]9 @9 f4 I; P5 B

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

' f; A- n1 ?3 i4 a; a( x

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

* A5 U6 V9 N9 g. a% g) C+ E' H

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

( J, A& w) q& q% l

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

g6 b8 p5 v# v9 |; l' [

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

% G& f& y- \* m. _+ t& G

参考文献:

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. 4 U' U+ e# i u! o6 P . A) J9 Z" p; }* z9 S3 G- _- q/ C, e+ a. M5 M7 {/ p/ g 2 q7 k* [' _7 ~% e" i: B" h+ i7 U 1 y% A6 t3 @- N( Y8 O
回复

举报 使用道具

相关帖子

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