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

[复制链接]
4 N% _8 h& X( B" n! C) w

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

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

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

! p, S# |" X3 r3 k) M8 u

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

9 }: v% E4 t! \6 x. j7 W/ I8 c

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

: c, q( l! f' S2 H) R+ n

线性动力学模型:

9 r+ G9 a, B$ D0 o/ F- |: u: \
1 G' L7 n8 W7 ^8 d8 B+ b7 y8 M8 p

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

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

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

! y6 [& \$ j/ Y b

其中:

7 N* ~# U3 L2 U! g. f1 s* X

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

% T/ o9 E' u! k; c6 K' {

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

( r( f: g+ d' Z0 X

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

0 X! I o/ w+ J) b" w5 ]- q/ @: A$ }) Y

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

1 n( K1 L* M( @' J

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

: l- e8 d( d8 {2 t) H+ C

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

; P) _+ S2 q; l0 q/ k' z

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

6 K6 d n5 t! ]* P

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

& V1 j5 N+ l/ v. i' H& o# A8 z

电机端扭矩平衡Eq. 1:

" F I% y1 n3 b8 r

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

4 r' d* C% W7 [8 |& l9 Y

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

/ H% s3 P, W* x) N: J3 b

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

5 d; M, U' l; c2 G. v

输出端扭矩平衡Eq. 3:

& `* A0 {/ X; Y0 g$ \7 P! o

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

0 N n0 B9 }) z

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

) T- G$ a: e4 q) Q2 V( `3 s

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

Z) D6 w5 t4 B+ B0 N5 P, Z; f

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

9 `( j* g" m' ]4 w

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

j$ m4 d( ]' n! G( O

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

! b- c/ U; S/ w3 v f. a2 p

模型简化:

% u9 b# b# p+ C+ t

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

: p' a( W: B- |. O0 B k

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

7 P" R+ M# M/ W( f$ W$ _

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

6 |' T) H1 {: v% L) J [

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

- Z+ K* U. ^- h5 Z

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

# W N& X+ O) d1 h9 _

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

2 g3 K/ G# q1 ^' r( Z8 }

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

/ |8 H- ?5 E' D- R# i

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

3 ?9 s$ u3 ~, j/ H6 V$ S$ Q

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

. I- r+ x: ^5 Q+ X6 z" W/ b+ H6 \

力矩求导:

+ ]6 e: z7 J8 g ~1 r4 k$ Z! [

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

0 X k0 ~5 c c5 N3 \

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

/ O' l1 _8 c2 z3 S

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

7 N+ r: x' d" }) g* J- ]$ V( R; m+ @

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

! n# b2 n% \- N9 B# V

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

; i, M2 ]! T3 L$ }, d

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

$ U2 [- v x$ N8 M. c, z

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

" {' i% ], N' F: m& ]2 V

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

\# L$ m" h8 H) Q A9 ?/ F$ @2 n

[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 y2 ?- [& f9 F5 {3 r

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

* K9 y! v6 Y0 x4 \; p- b% V+ D

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

1 ^- i. F! N8 S* E8 p

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

/ l7 D4 W& @5 s2 ]

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

' a/ q9 b. _+ e5 w, ?) f

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

+ O9 }" ?( [5 S" p7 H) u

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

0 c5 k# N. |" b9 A

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

. u* K3 c! c( L2 H

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

; r% m3 R- C6 E6 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);

, A; M0 C% k9 W* m) ~

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

: g9 p0 _. B% P N

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

( y% o+ L3 z* k9 D% D9 P8 D

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

; Q" x$ B& T; y# ?6 h1 i/ z' }; y

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

* K5 O( [5 w' v1 K# T# W1 v

4. 整理

% r$ |" d% Q4 t- }+ D" ~1 Y2 Y

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

# g K& B& |5 J* G' Q

τ(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 f7 M: ]8 j7 l5 e; R

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

- |- ~8 } r% ^

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

f' V5 h' Y1 r: n6 O

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

+ z" C4 p0 e0 [' i" E, u

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

/ N6 y8 q6 V; J1 K U

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

6 z6 W$ f. B8 z

参考文献:

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.' m @6 c* e% Q 4 Q x2 O- x. F: o; _ # @$ h7 p( \8 {" G# I8 i- G) u7 l& g 4 ^6 }. Y( D3 j8 Z8 l2 m1 _* _9 Q1 |
回复

举报 使用道具

相关帖子

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