参资料:
【1】https://zhuanlan.zhihu.com/p/620918453
【2】https://blog.csdn.net/a735148617/article/details/108564836
【3】https://zhuanlan.zhihu.com/p/126338809
【4】机器人与环境间力_位置控制技术研究与应用_李正义
【5】水下机械臂建模及柔顺控制方法研究_郝小颍
- 柔顺性这个词,第一眼看上去好像可以理解,但是仔细一想又说不清楚。而且个人认为,柔顺控制在力\位混合控制和阻抗控制中体现的“柔顺性”是不同的,只是两种方法都可以应用在需要“柔顺性”交互的任务上【1】,比如打磨、测量、机械手等场景。
一、力\位混合控制【4】
-
力位混合控制的思路还是比较简单的,根据任务需求将空间中的自由度进行解耦,某些自由度只负责力控制,其他自由度负责位置控制。虽然是混合控制,但其实二者泾渭分明,并不相融。
-
力位混合控制中的力控制器和位置控制器都是独立的【2】,可以使用一些简单的控制算法,比如分别使用力pid和位置pid就可以实现控制效果。这种方法使用于工况约束比较固定的场景,比如对一个平面加工。
-
这类方法的难点在于任务的解耦,涉及到雅各比矩阵计算。以及在不接触环境时,力控制和位置控制的切换。
二、阻抗控制
- 个人觉得阻抗控制才在控制层面真正实现了“柔顺”的效果。在这里“柔顺性”可以理解为在运动到期望位置的过程中,一旦遇到“阻碍”,它会自动“妥协”,不必必须达到期望位置【3】。这是与位置控制相反的,比如位置控制中即使受到阻碍,也会增大力输出强行运动。举一个单自由度例子,物体想到A点,在C点遇到反向阻力,在B点就停止了。并且阻力越大,B越靠近C,阻力为0时,B到达A点。
1、理想阻抗模型【4】【5】
(1)什么是阻抗特性和导纳特性
- 阻抗特性是输入位移,输出力;导纳特性是输入力,输出位移。
- 一般机器人体现阻抗特性,环境体现导纳特性。(机器人既有导纳性,也有阻抗性)
(2)虚拟交互关系——理想阻抗模型
M d ∗ ( x r e f ¨ − x d e s ¨ ) + B d ∗ ( x r e f ˙ − x d e s ˙ ) + K d ∗ ( x r e f − x d e s ) = F e x t − F d M_d*({\ddot {x_{ref}}-\ddot {x_{des}}})+B_d*({\dot {x_{ref}}-\dot {x_{des}}})+K_d*({ {x_{ref}}-{x_{des}}})=F_{ext}-F_{d} Md∗(xref¨−xdes¨)+Bd∗(xref˙−xdes˙)+Kd∗(xref−xdes)=Fext−Fd
- 抗模型就是根据阻抗特性定义的模型,也就是描述输入位置,输出力的模型。这个模型的函数可以是任意的,但是一般用一个二阶微分方程去描述,就像上面这个二阶方程。
- 这里给出的理想阻抗模型是全面的,既有参考轨迹的变化,也有参考力的变化
- 阻抗控制和导纳控制的本质是通过控制力或位置,让机器人末端位置与接触力动态保持理想阻抗模型。这个理想阻抗模型倒过来就是理想导纳模型,根据具体的输入输出种类分为阻抗和导纳控制。
- 注意这里的符号跟后面是有区别的,Fdes实际上是参考力,Fref是内环的期望力,位置同理。
(3)如何选择理想阻抗模型参数
2、阻抗控制【5】
- 这里所有跟参考有关的量都是外环的,期望的都是内环。
- 参考轨迹和位置反馈相减,获得位置偏差。位置偏差输入到理想阻抗模型中,输出力偏差或者说力修正量,也就是理想接触力减参考力。这个修正量加在期望力上就是理想的接触力,内环跟踪这个量即可。
- 有一种说法是阻抗控制不需要在末端设置力传感器,其实是关节空间的阻抗控制不需要,只要把理想接触力分解到各个关节空间,由关节电机力控。笛卡尔空间的阻抗控制,还是需要力传感器。二者的对动力学模型的依赖程度不同,上图是笛卡尔空间的阻抗控制图
3、导纳控制【3】
- 通过参考力的实际接触力的偏差,根据理想导纳模型,计算参考轨迹和期望轨迹的修正量,加上参考轨迹后,获得期望轨迹,再经运动学逆运算,最后给到位置控制内环。
三、阻抗控制的改进
- 应用的比较多的还是导纳控制,一般都是围绕理想导纳模型进行变化,基本就两个思路,要么修改参考轨迹,要么修改阻抗参数。
- 这里的分类相当混乱,感觉依照传统的基本、先进、智能区分比较全面。基本的就是最基础的阻抗和导纳控制,先进就是引入现代控制理论,考虑自适应和鲁棒控制,智能就是引入模糊和神经网络。
- 最常见的还是用自适应算法进行改进
1、自适应算法在导纳控制上的应用
修改参考轨迹的
直接自适应:直接根据力反馈误差调节参考轨迹
间接自适应:现根据力反馈,估计环境模型参数,再用特定理论去动态调节参考轨迹。比如用弹簧模型建模环境,在估计出环境的弹性参数K后,可以利用李雅普诺夫稳定判据动态设置参考轨迹。
修改阻抗参数
变阻抗:用自适应算法直接调节理想导纳模型的参数
- 这里名词运用的比较混乱,如果只说自适应阻抗控制,是无法分辨是哪一种的。