机器人PD控制与迭代学习

机器人PD控制与迭代学习


先赞再看!养成习惯!


PD控制

PD Control Law:

u = K P ( q d − q ) − K D q ˙ u = K_{P}(q_{d} - q) - K_{D}\dot{q} u=KP(qdq)KDq˙

上式中 p d p_{d} pd表示想要的目标角度

带上持续重力补偿的情况下:

u = K P ( q d − q ) − K D q ˙ − g ( q ) u = K_{P}(q_{d} - q) - K_{D}\dot{q} - g(q) u=KP(qdq)KDq˙g(q)

带上近似重力补偿的情况下:

u = K P ( q d − q ) − K D q ˙ − g ^ ( q ) u = K_{P}(q_{d} - q) - K_{D}\dot{q} - \hat{g}(q) u=KP(qdq)KDq˙g^(q)

PID控制

PID Control Law:

u = K P ( q d − q ( t ) ) + K I ∫ 0 t ( q d − q ( τ ) ) d τ − K D q ˙ ( t ) u = K_{P}(q_{d} - q(t)) + K_{I}\int_{0}^{t}(q_{d} - q(\tau))d\tau - K_{D}\dot{q}(t) u=KP(qdq(t))+KI0t(qdq(τ))dτKDq˙(t)

饱和PID Control Law:

u = K P ( q d − q ( t ) ) + K I ∫ 0 t Φ ( q d − q ( τ ) ) d τ − K D q ˙ ( t ) u = K_{P}(q_{d} - q(t)) + K_{I}\int_{0}^{t}\Phi(q_{d} - q(\tau))d\tau - K_{D}\dot{q}(t) u=KP(qdq(t))+KI0tΦ(qdq(τ))dτKDq˙(t)

Φ ( q d − q ) \Phi(q_{d} - q) Φ(qdq) 是一个饱和型函数,

迭代学习

重力项 g ( q ) g(q) g(q) 梯度的有效界:

∣ ∣ ∂ g ( q ) ∂ q ∣ ∣ ≤ α (1) ||\frac{\partial g(q)}{\partial q}|| \leq \alpha \tag{1} qg(q)α(1)

这个 α \alpha α 的作用在于,当 K P > α K_{P}> \alpha KP>α 时,在PD带持续的重力补偿的控制下机器人在位置 ( q d , 0 ) (q_{d}, 0) (qd,0) 时 为全局渐进稳定的。

迭代控制

u = γ K P ( q d − q ) − K D q ˙ + u i − 1 u = \gamma K_{P}(q_{d} - q) - K_{D}\dot{q} + u_{i-1} u=γKP(qdq)KDq˙+ui1

其中:

u i = γ K P ( q d − q ) + u i − 1 u_{i} = \gamma K_{P}(q_{d} - q) + u_{i-1} ui=γKP(qdq)+ui1

其实 u i u_{i} ui 是实际的计算,分析上来说其实 u i u_{i} ui 相当于 g ( q i ) g(q_{i}) g(qi)

上面的迭代公式必须满足以下两个式子才能保证从任何初始值 q 0 q_{0} q0 收敛到 q d q_{d} qd

m i n ( K P ) > α (a) min(K_{P}) > \alpha \tag{a} min(KP)>α(a)

γ > 2 (b) \gamma > 2 \tag{b} γ>2(b)

上式,第一个式子 a 是为了保证使用公式 u u u 时的全局渐近稳定性,第二个式子 b 是为了保证迭代的收敛性,以达到下式的目的:

lim ⁡ i → − ∞ ∣ ∣ u i ∣ ∣ = g ( q d ) \lim_{i \to -\infty} ||u_{i}||= g(q_{d}) ilimui=g(qd)

原因是因为,设 e i = q d − q i e_{i} = q_{d} - q_{i} ei=qdqi,那么公式 b 保证了有如下收缩映射的式子:

∣ ∣ e i ∣ ∣ < 1 γ − 1 ∣ ∣ e i + 1 ∣ ∣ (c) ||e_{i}||< \frac{1}{\gamma - 1}||e_{i+1||} \tag{c} ei<γ11ei+1(c)

进一步保证了对于任何初始状态都能有:

lim ⁡ i → − ∞ ∣ ∣ e i ∣ ∣ = 0 \lim_{i \to -\infty}||e_{i}|| = 0 ilimei=0

做个题吧

看不懂各种乱七八糟的公式?来让我们做个题练练手你就明白了

题目如下

在这里插入图片描述

解答

首先,单连杆钟摆的拉格朗日动力学方程如下,此处省略推理过程,具体推理方法请移步此处

u = ( I 0 + m d 2 ) θ ¨ + m g 0 d sin ⁡ θ u = (I_{0} + md^{2})\ddot{\theta} + mg_{0}d\sin\theta u=(I0+md2)θ¨+mg0dsinθ

其中, I 0 = m L 2 12 I_{0} = \frac{mL^{2}}{12} I0=12mL2 d = L 2 d = \frac{L}{2} d=2L,但是这不重要,因为本题后面并不会用到这些东西。。。。

继续,由之前的公式(1)得到:

∣ ∣ ∂ g ( θ ) ∂ θ ∣ ∣ = ∣ m g 0 d cos ⁡ θ ∣ ≤ m d g 0 = 98.1 = α ||\frac{\partial g(\theta)}{\partial \theta}|| = |mg_{0}d\cos\theta| \leq mdg_{0} = 98.1 = \alpha θg(θ)=mg0dcosθmdg0=98.1=α

同时下式满足之前的公式(a)(b),即:

K P = 500 > 196.2 = 2 α K_{P} = 500 > 196.2 = 2\alpha KP=500>196.2=2α

继续得到:

K P = K p ′ β = 500 ⇒ K P ′ = 100 > 98.1 = α , 0 < β = 1 5 < 1 2 K_{P} = \frac{K_{p}'}{\beta} = 500 \Rightarrow K_{P}' = 100> 98.1 = \alpha , 0< \beta=\frac{1}{5}< \frac{1}{2} KP=βKp=500KP=100>98.1=α,0<β=51<21

然后使用之前的公式(c)得:

∣ ∣ e i ∣ ∣ < β 1 − β ∣ ∣ e i + 1 ∣ ∣   ⇒   ∣ ∣ e i ∣ ∣ < 0.25 ∣ ∣ e i + 1 ∣ ∣ ||e_{i}||< \frac{\beta}{1 - \beta}||e_{i+1||} \space \Rightarrow \space ||e_{i}||< 0.25||e_{i+1||} ei<1ββei+1  ei<0.25ei+1

OK,到这里我们就得到了最重要的公式了,然后就是简单得代数进去计算了:

e 0 = θ d − 0 = π 3 = 1.0472 e_{0} = \theta_{d} - 0 = \frac{\pi}{3} = 1.0472 e0=θd0=3π=1.0472

然后继续依次迭代往下算:

∣ e 1 ∣ = ∣ θ d − θ 1 ∣ < 0.25 ∣ e 0 ∣ = π 12 = 0.2618 |e_{1}| = |\theta_{d} - \theta_{1} | < 0.25|e_{0}| = \frac{\pi}{12} = 0.2618 e1=θdθ1<0.25e0=12π=0.2618
∣ e 2 ∣ = ∣ θ d − θ 2 ∣ < 0.25 ∣ e 1 ∣ = π 48 = 0.0654 |e_{2}| = |\theta_{d} - \theta_{2} | < 0.25|e_{1}| = \frac{\pi}{48} = 0.0654 e2=θdθ2<0.25e1=48π=0.0654
∣ e 3 ∣ = ∣ θ d − θ 3 ∣ < 0.25 ∣ e 2 ∣ = π 208 = 0.0164 |e_{3}| = |\theta_{d} - \theta_{3} | < 0.25|e_{2}| = \frac{\pi}{208} = 0.0164 e3=θdθ3<0.25e2=208π=0.0164
∣ e 4 ∣ = ∣ θ d − θ 4 ∣ < 0.25 ∣ e 3 ∣ = π 832 = 0.0041 < 0.01 = ε |e_{4}| = |\theta_{d} - \theta_{4} | < 0.25|e_{3}| = \frac{\pi}{832} = 0.0041<0.01=\varepsilon e4=θdθ4<0.25e3=832π=0.0041<0.01=ε

所以存在 i m i n = 4 i_{min} = 4 imin=4 满足要求的条件!

哎,,,好难啊,,,前路漫漫~~

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是土豆大叔啊!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值