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

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

[复制链接]
3 F5 C/ A3 |" G3 A

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

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

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

" M: c& D! d: P( T+ }+ h% i$ X

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

, J! g7 Q9 u0 }" F, ~" C

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

7 ^" F4 j+ ~+ b! F2 B# i

线性动力学模型:

q1 E0 W6 m( i& d, Q! j* ^
+ _! G5 h1 ?% L) C, b8 j4 J- J% s

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

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

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

& c6 Y1 ?$ X0 S7 o* [

其中:

& r, @9 x8 m. e2 z5 i

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

1 \. p9 d5 M; `6 P7 i

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

& U) g3 [' O) ^8 n

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

; n2 k3 x9 \9 B& i' x- l

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

* H ~- D4 Y8 ~5 q1 }2 m5 y3 O

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

t# D( ?8 E- O! C5 o/ Q- j

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

1 K2 s2 P, [8 ^; U* Q5 Z: ]. ]

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

% g6 U y" ]' i; D/ I: F

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

2 j' T; E- b$ Y: t/ N7 R; n2 m( d" t

电机端扭矩平衡Eq. 1:

/ t- g/ O4 e- k2 Z- f

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

: w- j3 o2 X: m: ?3 r' }

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

, F s' }8 v! s% p; v* U7 J

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

) F( j( w# Q! B3 I* {( a

输出端扭矩平衡Eq. 3:

- h) W* z# W4 \

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

) `$ [) [ u8 q1 T8 s: D& T

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

% r& h# n9 @9 B! E6 Q. w$ 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;

0 s! E3 `2 h0 I: y+ c) }. ~

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

% B* ]9 t7 C/ O& X: M1 p* D- R

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

/ |+ w9 s3 F$ f: E3 @7 X

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

5 M& K, ^4 m2 F, n, e1 v3 }

模型简化:

) c( F B' K7 |* L) \- r

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

: E* b% \ n" V) E. u

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

# R! L! b4 N* [# C2 y4 J$ V

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

) U% L; X1 j+ |2 ?" U7 F

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

( ?6 e8 b9 j" e$ Z8 g7 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}};

1 m4 D8 S, r, A$ M+ s+ c3 y

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

6 U+ T3 i, |3 y d- 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}};

* D! K- c, }& q- ?6 l5 L

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

- f# ~: j! r: u! N, [/ 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});

% `1 ^( O7 u# m' h" ~

力矩求导:

' G* m% O8 e; S* D3 P) A3 E: B% U

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

% i' J) ]" x* I( @) f( ?

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

) ^$ G1 F2 G+ `8 k# J

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

6 ]6 g; x9 T# Q' m& e9 b* o( P- N }

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

( q5 f7 s: C2 b( L

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

2 S3 X/ D/ j( [/ \4 \! a4 j9 E

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

# x3 g1 p2 x$ }- a- |

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

8 T3 W, Y0 R3 J! k

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

* m; U$ E+ `5 ^; G3 r

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

& ~( a4 k L' M" 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) 这个电机端的输出力矩。

- a, p( p) i; W% x

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

" r3 K8 R; Z5 s1 d! c0 z/ ]* A( O

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

3 U; U& K3 a) L5 b' K3 r: d% z) B6 l

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

! F2 S2 t0 Z8 f; o- K# M# W6 ^

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

. Z- d" {7 ]7 ]7 D' n

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

/ T7 Y% h9 F/ 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)

& R% v: t) J$ s0 l+ ]! j9 _

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

3 e) z/ ^- Z4 I6 ]& D5 u% }& B

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

& P$ v9 M! s# C( F& a; [# W

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

6 d/ g! D3 P# Z! ?) q, ?

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

& c1 z2 F, \! F- h5 E# y; C" z8 l

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

* u* l6 U- q! m. g) E

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

6 C1 ?( o E2 H0 ]! [6 J; ^9 I

4. 整理

9 k: `# i; p- ^0 m) @; N

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

6 a; i* V7 Y+ j8 ]

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

; P. S0 R9 V s

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

, @" Q& f) a1 a9 t( o

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

+ @. O+ w8 _$ E5 h

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

8 e3 S+ V. U% |% ~" z( S* s

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

' L h4 C9 f; T8 i7 r# p! o

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

. Q3 X+ K) E# [/ W& _& 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.' m5 L7 o6 J$ j! g/ S c M: K) R- O) k7 d . `- g; z& [* w9 a1 S 3 ^: M" Z8 |+ Q- i3 F$ D- y3 u. q; a7 `3 d8 A
回复

举报 使用道具

相关帖子

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