《Modeling Identification and control of robots》
Chapter15 compliant motion control 柔性运动控制
中间会穿插一些前面的知识作为补充,具体均在目录中体现,原书中有错误的地方也均在本文中体现
文章目录
14.3.1 关节空间中的PID控制
τ = K p ( q d − q ) + K d ( q ˙ d − q ˙ ) + K i ∫ t 0 1 ( q d − q ) d τ (1) \tau=K_p(q_d-q)+K_d(\dot{q}_d-\dot{q})+{K_i}\int_{t_0}^1(q_d-q)d\tau\tag{1} τ=Kp(qd−q)+Kd(q˙d−q˙)+Ki∫t01(qd−q)dτ(1)
14.3.3 任务空间中的PID控制
当机器人在任务空间(笛卡尔空间)中的运动轨迹已经明确时,可以采用以下两种方法来构建控制系统:
- 在任务空间task space中设计控制方法;
- 将任务空间中的指定轨迹转换为关节空间中的轨迹,然后在关节空间中进行控制。
根据上图,为获得关节空间中的力矩 τ \tau τ,需要将(1)中的q替换为x,得到任务空间中的F,由于 τ = J T F \tau={J^T}F τ=JTF,需再左乘 J T J^T JT得到关节空间中的 τ \tau τ,因此有:
τ = J T [ K p ( x d − x ) + K d ( x ˙ d − x ˙ ) + K i ∫ t 0 1 ( x d − x ) d τ ] (2) \tau=J^T[K_p(x_d-x)+K_d(\dot{x}_d-\dot{x})+{K_i}\int_{t_0}^1(x_d-x)d\tau] \tag{2} τ=JT[Kp(xd−x)+Kd(x˙d−x˙)+Ki∫t01(xd−x)dτ](2)
将任务空间的期望轨迹转换为关节空间的期望角度有两种方法,一是通过正运动学计算出关节位置再微分计算关节速度和加速度,二是计算关节位置,速度,加速度如下:
-
关节位置
q d = F . K . ( x d ) q_d=F.K.(x_d) qd=F.K.(xd)
-
关节速度
x ˙ d = J ( q d ) q ˙ d \dot{x}_d=J(q_d)\dot{q}_d x˙d=J(qd)q˙d
q ˙ d = J ( q d ) − 1 x ˙ d \dot{q}_d=J(q_d)^{-1}\dot{x}_d q˙d=J(qd)−1x˙d
-
关节加速度
x ¨ d = J ˙ q ˙ d + J q ¨ d \ddot{x}_d=\dot{J}\dot{q}_d+{J}\ddot{q}_d x¨d=J˙q˙d+Jq¨d
q ¨ d = J − 1 ( x ¨ d − J ˙ q ˙ d ) \ddot{q}_d={J}^{-1}(\ddot{x}_d-\dot{J}\dot{q}_d) q¨d=J−1(x¨d−J˙q˙d)
14.4 线性解耦控制
14.4.1 介绍
线性化和解耦技术是利用适当的反馈规律将非线性控制问题转化为线性控制问题
14.4.2 在关节空间中计算力矩控制
假设关节的位置和速度是可测量的并且测量结果是无噪声的。设 A ^ \hat{A} A^和 H ^ \hat{H} H^分别为A和H的估计。因此控制力矩可写为:
τ = A ^ ( q ) w ( t ) + H ^ ( q , q ˙ ) \tau=\hat{A}(q)w(t)+\hat{H}(q,\dot{q}) τ=A^(q)w(t)+H^(q,q˙)
推导出在建模完美且不存在干扰的理想情况下,问题简化为n个解耦双积分器的线性控制问题。 q ¨ = w ( t ) \ddot{q}=w(t) q¨=w(t)是新的输入控制向量。
注:机器人动力学模型的一般形式为:
τ = A ( q ) q ¨ + C ( q , q ˙ ) q ˙ + Q ( q ) + d i a g ( q ˙ ) F v + d i a g ( s i g n ( q ˙ ) ) F c \tau=A(q)\ddot{q}+C(q,\dot{q})\dot{q}+Q(q)+diag(\dot{q})F_v+diag(sign(\dot{q}))F_c τ=A(q)q¨+C(q,q˙)q˙+Q(q)+diag(q˙)Fv+diag(sign(q˙))Fc
更简明的形式为:
τ = A ( q ) q ¨ + H ( q , q ˙ ) (3) \tau=A(q)\ddot{q}+H(q,\dot{q})\tag{3} τ=A(q)q¨+H(q,q