1.背景介绍

关于通过电流环进行牵引示教的意义,可参考两篇文献“[1]面向直接示教的机器人零力控制”和“[2] Sensorless Kinesthetic Teaching of Robotic Manipulators Assisted by Observer-based Force Control”(这个团队针对拖动示教问题连续几年发了ICRA)。

2.方案分析

目前市面上流行的解决方案是[1]中基于电流环开环控制,它的基本思路是使电机工作在电流环,电机尽量补偿系统的重力矩及摩擦力矩,然后用户就可以轻松地推起机器人。这种方式很直观,但可能会存在几个缺陷:严重依赖于辨识精度,若辨识不精确,控制器无法做任何补偿,原因在于这种开环控制方式无法调整机器人的阻抗特性;用户从静止推动机器人时,会存在一个最大静摩擦力的问题(电流环与关节力矩传感器感知能力比较)。

这些问题在[2]中有所阐述。为此[2]提出了一种基于力反馈控制的拖动示教,其基本思路是通过Kalman滤波器估计出用户力矩,再通过导纳控制实现系统柔顺性。


3.方案实现


[2]是今年ICRA刚出的文章。荣幸的事,笔者在几个月前也基于此方案实现了牵引示教。但笔者通过一中简易的方式实现了力矩估计,要知道用好Kalman滤波器本身就是件非常困难的事。整个实现流程如下

  1. 建立DH坐标系,推导出机器人动力学解析表达式。
  2. 将机器人的各轴惯性参数与摩擦力参数分别辨识出。
  3. 通过电流反馈与动力学方程估计用户在各关节施加的主动力矩。
  4. 基于关节空间导纳控制,完成牵引示教

出于一些考虑,这里放了一个打了马赛克的实验视频。

实验视频