机器人的力觉控制
初学机器人控制,对各种控制方法的概念较为糊涂,在此做个笔记。
关于机器人力觉控制方面,知乎上有一篇文章讲的比较好,我把它搬运过来,和大家分享一下。
@桂凯 机器人力觉
1. 力觉与智能
视觉可以提供丰富的学习材料,以供机器人学习。人类从一无所知的婴儿成长为经验丰富的智者,这一过程我们也会通过视觉获取各种信息。然而,若只有视觉材料显然不足以让人类变得这么智能。在这其中,力觉信息也发挥了同等重要的作用。
所谓的力觉信息,就是人类感知到与外界环境产生的交互力信息。婴儿的步态总是千奇百怪的,在他们不断练习行走的过程中,会根据地面与脚底的接触力,纠正腿部肌肉收缩的程度及时序,进而获得正常的步态。我们在行走的每一个步态周期内脚底与地面的接触力轮廓也较为一致。
步态演变与力觉
从人机交互的角度看,视觉在不发生物理接触的情况下可以获取外界环境信息,是一种认知人机交互;而力觉需要发生实际力作用方可获取外界信息,是一种物理人机交互。
机器视觉在机器人领域主要的研究内容包括识别、位姿估计及视觉伺服等。相比地,机器人力觉主要包括力感知和力控制,前者是机器人感知外界环境施加在其身上的力信息,而后者是控制机器人施加的外界环境上的力。
机器人力觉
2. 力觉研究内容
力感知机器人用于感知外力的传感器有很多,这里针对市面上一些常见的方案进行分类。
电子皮肤:在机器人表面覆盖一层压力传感器,可直接检测环境施加在机器人全身上的力信息,精度高,但结构复杂,成本高。代表产品是博世APAS人机协作系统。
电流环反馈:建立电流-角度的动力学模型并进行辨识,从电流反馈中剥离机器人动力学所贡献的成分,即可获取外界力信息。这种方式结构简单,成本低,但由于关节摩擦力模型难以精确建模,实际使用的精度很有限。这种方式较适用于小型机器人,比如ABB的YuMi,单臂负载为0.5kg。
关节力矩传感器或柔性关节:通过在减速器的输出端安装关节力矩传感器,可避免关节摩擦力的影响,建立关节力矩-角度的动力学模型,这种方式精度很高,但结构复杂,成本高。代表产品为KUKA的iiwa。
末端六轴力矩传感器:在机器人的末端安装六轴力矩传感器,可获取力矩传感器往后段的力觉信息;不涉及复杂的动力学模型及辨识,但检测范围有限,成本高。这种方式在机器人打磨及装配中应用很多。
底座六轴力矩传感器:把六轴力矩传感器安装在底座上,使得该传感器可获取机器人全臂与环境的力觉信息,但需建立相关的动力学模型及进行辨识。代表产品是FANUC的CR系列绿色机器人。
后面这两种六轴力矩传感器的方式还涉及到传感器标定及力矩信号处理等问题。
力控制
传统的工业机器人主要追求位置追踪的高精度,因此它不需要控制与外界环境的接触力,反而会将环境视为干扰外力而进行压制。而机器人力觉中的力控制是需要控制机器人与环境产生预定的力觉。
这种控制跟位置控制相反,它属于柔顺控制,也即机器人要根据环境施加的力而调整自身的状态。
力控制策略:实现机器人力控制的主要策略包括力位混合控制和阻抗控制。力位混合控制的基本思想是将工作空间拆分为相互正交的两个子空间,分别进行位置控制和力控制;它需要对环境轮廓的建模较为精确,实际使用较为困难。阻抗控制不以控制机器人位置或输出力为目标,而是间接地控制两者的比值,并通过合适的位置设置,达到控制力的目的。阻抗控制又可分为基于力的阻抗控制和基于位置的阻抗控制(也称为导纳控制),前者需要能控制机器人关节的输出力矩,而实际中大多数机器人更容易控制关节位置,因此后者成为阻抗控制的主要实现途径。 机器人在很多应用场合都需要力控制来控制机器人与环境的力觉,比如打磨、装配等。
打磨:打磨过程若只是控制机器人按照示教点进行位置控制,以恒定速度运行,
则会由于工件表面误差而引起内力过大而损坏元器件或工件表面,工件打磨效果较差。实际打磨中会通过两种方式来减小内力,一种通过滑动磨头等弹性元件被动地消除内力,而另一种就是通过力控制方式主动地控制打磨压力,实现恒力打磨。飞边、去毛刺、抛光等场合与打磨类似。
装配:以最常见的轴孔装配为例,若只通过位置控制来进行装配,则难免会由于轴孔的加工尺寸、装配位姿等因素引起过大的装配力损伤元件,甚至无法装配。轴孔装配中会存在在不同的受力状态:初始,一点接触,两点接触;机器人需要根据不同的受力状态,需要力控制策略控制装配元件间的作用力。
3. 总结
机器视觉由于框架成熟,易于入门,开源资源丰富等优势,现已深入人心,普及程度很高;然而机器人力觉目前还没有较为完善和统一的框架,体系有待完善。机器人的智能需要视觉信息和力觉信息的共同辅助。