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

[复制链接]
+ H8 ]) e* A3 o8 ~5 n9 k

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

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

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

+ J' c; L! k m# |. A( i

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

6 [* I7 L) ^. K' v- x, e, F) u

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

8 [/ N% k0 O) J; I

线性动力学模型:

; w& a, N4 s4 |$ A5 Y/ B/ c& K
* H. o! }+ Y. p5 i, ?' R

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

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

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

6 z% F6 e. T, ~

其中:

) n- M. J& V7 _; x, y

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

$ h' M# h( ~7 n8 } i( J2 J

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

$ ]/ v7 x6 I1 X- F7 n$ D

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

+ g. f" {1 f9 y- o0 C

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

6 F6 T$ c; U7 S4 n9 j9 k/ @

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

& \/ f* d, v- C# `

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

6 n$ l$ m3 F3 L Q. L( o

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

1 ]7 y3 n+ e% c, C' H! P

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

. J8 r& a+ n$ c* k5 x1 c# }

电机端扭矩平衡Eq. 1:

! P+ d- Q# F6 H9 z& w! s8 N" |0 A: ^

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

( h2 d5 @; E( |/ F) a# E% t" ?- Q! ~

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

% v" ~. Y( @/ R: r7 M( r* E$ n& V$ M

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

$ n( q- \2 x$ x0 ^! K2 I, t9 [

输出端扭矩平衡Eq. 3:

) s- i8 \# ^1 j0 k

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

, \" A0 _+ c$ n. H" Y

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

3 N' Y, c, \0 j8 g- R! w' n

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

, W1 p5 ]# P+ n# z. Y

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

& |, K3 o2 x+ H# \

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

' B5 D" b! A7 Q1 H# ]) w2 g! ^

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

) R# z! Q. `; n8 z

模型简化:

+ V( B3 X" L8 }; I7 w& \

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

0 M1 r! B; ^+ n0 o- x$ K! w! R5 o/ Z4 m

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

( N* {' ]9 Z0 B. Y$ l, ^

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

! z! X* N. S$ ?5 Z0 Y: Y0 o, o

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

3 D# i( W5 j. H i ^& @' s6 c

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

3 x/ L# E8 `. M

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

+ t7 B! J5 H) \. F* l3 C3 Y0 q

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

& t! w4 g; ~" ]+ z" |

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

3 T. H+ M5 o) j' n

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

# F# ?' f* i8 ^

力矩求导:

6 h7 J3 r9 B) Z# x; x; B0 ~

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

% e- Z* S, t; {5 t; i# w

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

]2 I$ p# t$ o- k

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

& q* l0 C( \$ D7 q, O; ^

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

; C) N+ o) s4 w/ X* g+ z; p

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

9 N1 e0 ~; X7 k2 q" q/ S3 D/ }

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

$ l( Y1 V/ A: m3 l/ S& {/ u

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

1 F6 h' \ N& L; c# L4 v0 p8 _/ \

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

9 W" U0 f! f4 v* W/ e6 z% E

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

* Z: W- R7 t& s9 X \# w

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

! j! I6 O. Y5 P- o" O) \

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

; ]$ F' G; A6 z

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

: w! \ y4 i0 o4 z- ^0 x8 B) c2 y6 z

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

! Y( J, N+ n0 D6 p$ h

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

6 g* q/ o) ] Y+ Q8 V, z5 g' E) M

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

8 I1 w% z3 T6 u

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

- k0 g5 n- ?! q" I

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

# Q0 ?+ q9 X7 R- R

[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/ T( z( V0 W: ?: \2 E2 f

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

* h! |, L+ S) [

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

5 n, V! k9 |# Q6 @4 w! y

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

4 V6 P( \/ h$ ~' C' B, G# P

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

* Y: Z, C; x% ]( Y) _

4. 整理

: d& M. _5 U" W7 U4 x8 R4 K

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

- i1 ^: I! @' L: y0 _

τ(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 ]7 m' S/ |, ]# W# Y

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

3 M1 o9 A- z4 @

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

- X! ~9 M1 `4 c

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

# _6 F H J! S

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

, G0 p* `8 |! U( P

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

9 k+ p1 I* D: j

参考文献:

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. ! s: G1 X4 k4 W& j7 R4 f( t" O% `+ e2 s " i7 `- `$ t) m) @+ I& |9 ~' W) b - Y2 Y" v6 |! V( @1 g9 R 6 B$ \* N0 T, h" j

相关帖子

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