基于六维力传感器的力引导示教研究

2018-11-05 02:54黄青红王兆权高裕强
机械制造与自动化 2018年5期
关键词:操作者上位重力

黄青红,王兆权,高裕强

(福州大学 机械工程及自动化学院,福建 福州 350108)

0 引言

目前,随着中国制造业的快速发展,工业机器人在制造过程中扮演着非常重要的角色。工业机器人能够在工业生产中替代人完成具有繁琐、危险等工作性质的内容,并确保工作精度。市面上的工业机器人大部分都提供示教器,操作者可以直接通过示教器的操纵杆来控制工业机器人的运动,但要求操作者非常熟悉机器人的操作,并且需要较长的时间才能精确地到达示教点,而简单快捷的直接示教方法能大幅度提升工作效率、降低使用难度。但国外绝大部分机械手其源代码都是封闭的,比如ABB、UR、KUKA等机器人,导致不能够直接从底层开发。因此,基于力引导的直接示教研究具有较大的实际意义[1-3]。

力引导示教是在工业机器人的末端外接1个六维力传感器,操作者可以直接用手牵引工业机器人末端,末端上连接的六维力传感器能够实时采集操作者对机械手作用力的大小与方向,再经由各类算法的处理,按照不同的控制策略将运动指令发给工业机器人,以实现相对应的运动到达示教点[4-5]。国外的研究人员已经开发出了直接示教装置应用于生产中,Shuhei Ikemoto等人将直接示教运用于仿生机器人手臂中,用于实现人机交互[6];Lee-Seunghon等人运用2个六维力传感器来控制机器人运动,完成生产中去毛刺的示教任务[7];Chanyoung Song等人将此应用于工业生产的感应淬火[8]。

上述提及的直接示教装置虽然已经能够直接应用于示教,但是各类示教装置都是根据实际加工任务的需要而设计的,并不具有通用性,无法在其他工业机器人中推广。尽管目前的理工类高校中都开设工业机器人课程,但学生对工业机器人了解不够,操作也不熟悉,使用示教器效率低下而且容易发生碰撞事故。因此基于力/力矩检测实现工业机器人的手动示教显得更为重要,无需对工业机器人进行升级即可完成力引导示教。

1 平台搭建

六自由度工业机器人上搭建的力引导示教平台采用IRB 120小型机器人,其各连杆参数见图1。实验平台还包括末端手持器,数据采集卡,PC(上位机),六维力传感器及配套的信号放大器,其连接如图2所示。

图1 IRB120各连杆的参数

图2 硬件组成示意图

六维力传感器采用的是Gamma六维力传感器,用于获取力引导示教时操作者施加的力信息,包括力的大小、方向以及力矩的大小、方向,具体是x,y,z3个方向上的力Fx,Fy,Fz值的大小,以及绕x,y,z3轴的力矩Tx,Ty,Tz值的大小。由于六维力传感器不能直接固定于工业机器人末端,因此设计连接件进行连接。使用连接件将六维力传感器固定于机器人末端的安装如图3所示。

安装时需注意将力传感器的z轴与机器人第6轴轴线重合,力传感器的x、y方向与机器人工具坐标系x、y轴线分别平行安装,以便于后期数据的处理。

由于力传感器输出的是模拟信号,而且输出的电压为mV级,输出的信号较小不便于采集,因此采用放大器对信号放大处理,将mV级信号放大为V级信号。数据采集卡采用的是USB-6210型采集卡。

图3 力传感器连接于机器人末端

末端手持器固定于传感器末端,操作者将力直接作用于手持器。手持器连接力传感器,从而实现力与力矩的传输,手持器的末端是1个尖点,用于观察末端点是否接触示教点;上位机与IRB 120机器人之间采用网线连接,使用Socket进行通讯,这样可以提高数据传输速率,提高系统的响应速率。

2 数据处理

2.1 传感器源码数据转换计算

由于数据采集卡采集的是源码信号,因此需要将其转化为模拟电压信号,模拟电压转换式为:

(1)

式中:16指数据采集卡的精度为16位,ADbuffer[n]是数据采集卡AD端口的源码值,n代表通道值0~5,将模拟电压信号转换为力信号的计算表达式为:

F=[V0V1V2V3V4V5]T×Cτ

(2)

式(2)将6个通道的模拟电压转换为力值及力矩值,其中矩阵C是传感器公司提供的6×6的常量校验矩阵,其大小如式(3):

(3)

最终计算出的矩阵结果如下:F=(Fx,Fy,Fz,Tx,Ty,Tz)T,CT是指矩阵C的转置, 包括传感器坐标系下3个方向的力Fx,Fy,Fz以及3个方向的力矩Tx,Ty,Tz。

2.2 末端手持器的重力补偿算法及重力矩补偿算法

1) 重力补偿算法

六维力传感器采集的力包含操作者的拉力以及连接于力传感器末端手持器的重力G在传感器坐标系下的分力Fx、Fy、Fz,需要实时的进行重力补偿,根据工业机器人建立D-H坐标系,其D-H参数如表1所示。

表1 IRB120工业机器人D-H参数

续表1

(4)

(5)

2) 重力补偿算法

重力矩的补偿核心部分是确定重心位置,从而快速确定重力在工具坐标系下产生的3个分力矩的大小。由于实际使用过程中,末端手持器形状不规则,因此无法直接使用物体的中心点就是重心的性质,但可通过式(6)进行计算:

(6)

(7)

2.3 力/力矩与位置转换算法

在重力以及重力矩补偿完以后,需要将操作者施加的力以及力矩转化为工业机器人平移以及旋转量,从而实现工业机器人的运动。上位机完成末端重力补偿后,移动步长按照式(8)进行计算:

(8)

其中:i取x、y、z3个方向,Fi是指在x、y、z3个方向除去重力补偿以及安装应力的力值,即操作施加的在传感器坐标系下的分力表示,istep是在外力作用下移动的步长,单位是mm,为了防止扰动,程序中设置当施加的力>3N是才会移动,ki是步长移动系数,大小根据实际情况进行选取,本次实验选取ki=0.015进行运算。

工业机器人的旋转运动步长按照式(9)算法进行运算:

(9)

其中:i取x、y、z3个方向,Mi是指在x、y、z3个方向除去重力矩补偿以及安装应力矩后的力矩大小,θistep是在外力矩作用下旋转的步长,单位是rad,即操作施加的在传感器坐标系下的分力表示。为了防止扰动,程序中设置当施加的力矩>1N·m时才会转动。kθ是转动步长系数,大小根据实际情况进行选取,本次实验选取kθ=0.015进行运算。根据对应的步长计算式就算出平移/旋转变化量的大小ΔP(Δx、Δy、Δz、ΔRx、ΔRy、ΔRz)后每10ms发送给机器人执行运动,其中Δx、Δy、Δz是工具坐标系x、y、z轴的偏移量,ΔRx、ΔRy、ΔRz是绕工具坐标系x,y,z轴的旋转量,将ΔP通过Socket发送给机器人执行相对应的运动即可完成。

具体发送数据形式如图4。

图4 数据传输形式

3 试验验证

为了验证重力补偿算法以及本次试验的可行性,需要两部分程序编写:一是上位机程序二是机器人控制器程序。上位机是通过VS2010环境下编译完成,上位机程序包括数据采集卡采集力/力矩信号、数据处理、重力补偿以及实现和工业机器人之间的通讯等,控制器程序主要用于运动指令的执行以及与上位机之间的数据交换。如图5是某一时刻的传感器检测的重力以及重力矩的大小,图6是进行重力以及力矩补偿后的传感器力值。

图5 重力以及重力矩补偿前

图6 重力以及重力矩补偿后

由此验证重力以及重力矩补偿算法准确可行。当操作者示教完成后,需要机器人还原示教的轨迹,即轨迹还原。通过点击上位机轨迹储存按钮,将轨迹中的点位置进行存储,点击示教还原按钮,上位机将储存的点发送给工业机器人执行运动,从而完成示教还原。如图7所示,为力引导机器人示教操作,对长方体工件轨迹进行示教;图8是机器人根据力引导示教时储存下数据进行示教轨迹还原。实验证明该方法能有效地完成示教轨迹还原,基于六维力传感器的力引导示教方法可行,具有推广性。

图7 对工件轮廓进行示教

图8 示教轨迹的还原操作

4 结语

本文提出一种基于六维力传感器实现对工业机器人的直接示教,通过实验验证了重力补偿算法以及重力矩补偿算法的正确性,重力补偿算法以及重力矩补偿算法自主在上位机程序中完成,该示教方法的优点是可以在现有的工业机器人平台上进行,不需对当前的工业机器人进行硬件升级,通过外接六维力传感器即可实现,重力补偿以及运动控制算法具有通用性,通过该示教方法无需操作者对工业机器人非常熟悉即可完成示教,示教过程可以在上位机选择是否记录示教点轨迹,记录的示教点轨迹可用于示教再现。该方法对于复杂曲面的轨迹跟踪还有待于进一步优化。

猜你喜欢
操作者上位重力
疯狂过山车——重力是什么
超声检测颈总动脉内中膜厚度的操作者内及操作者间可重复性研究
重力性喂养方式在脑卒中吞咽困难患者中的应用
重力之谜
经皮冠状动脉介入术者不同体位所受辐射剂量特征分析
操作者框架在车辆传动系旋转耐久试验中的研究与应用
特斯拉 风云之老阿姨上位
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
一张纸的承重力有多大?