一种基于零力控制的机器人标定方法与流程

文档序号:19152832发布日期:2019-11-16 00:17阅读:205来源:国知局
一种基于零力控制的机器人标定方法与流程
本发明涉及机器人
技术领域
,尤其涉及一种基于零力控制的机器人标定方法。
背景技术
:机器人精度是用于评价串联机器人工作性能的一项重要指标。机器人精度指标包含重复定位精度及绝对定位精度,为了获得尽可能准确的机器人关节参数,通常需要在机器人制造完成后,对机器人的结构参数进行补偿,以提高机器人的精度性能。该补偿可以通过运动学标定来实现,运动学标定即通过一定的测量手段和基于模型的参数识别方法准确辨识机器人的结构参数,确定从关节变量到末端执行器在工作空间内真实位置的更为精确的函数关系,达到修正控制器中的模型参数的目的。零力控制是一种人机交互控制方法:即通过动力学模型计算各关节对应的重力及摩擦力,然后控制各关节输出对应大小的转矩,机器人在外力的作用下克服惯性力而运动。该控制方法在实际生产过程中有着重要意义。技术实现要素:本发明提供一种基于零力控制的机器人标定方法,以解决上述技术问题。为解决上述技术问题,本发明提供一种基于零力控制的机器人标定方法,包括如下步骤:s1:将两台机器人通过固件连接在一起,形成封闭运动链;s2:将两台所述机器人设置为零力控制模式;s3:改变两台所述机器人的角度并收集两台所述机器人的关节转角信息;s4:计算d-h误差并对所述关节转角信息进行补偿;s5:计算补偿后的关节转角信息是否达到精度要求,若没有达到精度要求则重复执行步骤s3至s5,直至达到精度要求,标定完成。较佳的,步骤s1中,将两台机器人通过固件连接在一起的方法为:采用正方体连接块连接两台机器人的末端。较佳的,所述零力控制模式包括:通过动力学模型计算各关节对应的重力及摩擦力,得到预估力矩值,然后控制各关节输出与重力及摩擦力大小对应的补偿转矩,实现零力控制。较佳的,改变两台所述机器人的角度三次以上,并依次收集两台所述机器人的关节转角信息。较佳的,所述机器人的关节转角信息包括:描述两相邻关节轴线间相对位置关系的连杆长度ai,连杆扭角αi,描述相邻两连杆之间位置关系的连杆距离di,以及连杆夹角θi。较佳的,步骤s4中,所述d-h误差δs的计算方法为:δs=sa-sd,其中,sd为机器人末端执行器的指定位置,sa为机器人末端执行器会移动到实际位置。较佳的,判断所述补偿后的关节转角信息是否达到精度要求的方法为:利用建模仿真,检验两台所述机器人的末端执行器是否形成闭环。较佳的,采用matlab实现建模仿真。较佳的,标定完成后,以最终补偿后的关节转角信息作为机器人的关节原点数据。与现有技术相比,本发明提供的基于零力控制的机器人标定方法具有如下优点:本发明利用零力控制方法实现机器人的标定,可降低操作人员的使用门槛,简化示教步骤,提高示教效率和减少机器人关节磨损;还能够避免高昂的代价去检测末端位姿全集,继而提高标定效率,并最终提高机器人控制精度。附图说明图1为本发明一实施方式中提供的基于零力控制的机器人标定方法的流程图;图2为本发明一实施方式建立的d-h模型中相邻连杆的参数示意图;图3为本发明一实施方式建立的d-h模型中双机器人杆件坐标系;图4为本发明一实施方式中零力控制模式的控制方法示意图;图5a~5c为本发明一实施方式中零力控制模式的运动轨迹、轨迹放大图及电流波形图;图6a~6c为本发明一实施方式中点动示教模式的运动轨迹、轨迹放大图及电流波形图;图7a~7c为本发明一实施方式中标定前三种位姿的双机闭环图例;图8a~8c为本发明一实施方式中标定后三种位姿的双机闭环图例。具体实施方式为了更详尽的表述上述发明的技术方案,以下列举出具体的实施例来证明技术效果;需要强调的是,这些实施例用于说明本发明而不限于限制本发明的范围。本发明提供的基于零力控制的机器人标定方法,请参考图1,包括如下步骤:s1:将两台机器人通过固件连接在一起,形成封闭运动链;s2:将两台所述机器人设置为零力控制模式;s3:改变两台所述机器人的角度并收集两台所述机器人的关节转角信息;s4:计算d-h误差并对所述关节转角信息进行补偿;s5:计算补偿后的关节转角信息是否达到精度要求,若没有达到精度要求则重复执行步骤s3至s5,直至达到精度要求,标定完成。本发明利用零力控制方法实现机器人的标定,可降低操作人员的使用门槛,简化示教步骤,提高示教效率和减少机器人关节磨损;还能够避免高昂的代价去检测末端位姿全集,继而提高标定效率,并最终提高机器人控制精度。具体的,两台机器人连接形成封闭运动链后,建立机器人d-h模型的方式如下:典型的串联机器人由关节和连杆组成,每个关节包括一个自由度(可以是平动关节,或者是转动关节)。如图2所示,对拥有n个关节的机器人,就有从0到n的(n+1)个连杆。连杆0是机器人基座,通常是固定的,携带工具端(末端执行器)。为此,我们给每个连杆固定一个参考坐标系,确定从一个关节到另一个关节的变换步骤,最后得到末端执行器坐标系(连杆n的坐标系)相对于基坐标系(连杆0的坐标系)的等价齐次变换矩阵。较佳的,机器人相邻连杆之间的相对关系可用四个参数表示,即所述机器人的关节转角信息包括:描述两相邻关节轴线间相对位置关系的连杆长度ai,连杆扭角αi,描述相邻两连杆之间位置关系的连杆距离di,以及连杆夹角(关节角)θi。从连杆i-1的坐标系到连杆i的坐标系,只需完成下述变换:(1)沿zi-1轴平移距离di,使得xi-1轴与xi轴相交;(2)绕zi-1轴旋转角度θi,使得xi-1轴与xi轴重合;(3)沿xi轴平移距离ai,使得连杆i-1的坐标系的原点与连杆i的坐标系的原点重合;(4)最后绕xi轴旋转角度αi,使得两坐标系完全重合。根据链式法则,相邻连杆之间的位姿转换关系可用下式表示:在机器人末端执行器运行到指定位置的同时,可以得到相应的机器人的一组关节值。期望关节值与实际关节值的差被用作误差参数识别过程的输入量。对于一个给定的机器人,关节值q=[q1q2…qn]t,与末端执行器位姿s的关系可以通过机器人运动学正解f(·)和反解i(·)来表示:当要求机器人末端执行器移动到指定位置sd时,机器人末端执行器会移动到实际位置sa:sa=f(qd,φd+δφ)(4)qd=i(sa,φd)(5)其中,qd是应用机器人几何参数的名义值,φd是对指定位姿sd进行逆运动学求解得到的关节值,δφ是几何参数的误差。则所述d-h误差δs(机器人末端执行器的误差)的计算方法为:δs=sa-sd(6)当参数的误差绝对小时,方程(6)可以线性化为δs=jδφ(7)其中j为雅克比矩阵,可以通过测量到足够数量的δs(可以通过相应的空间坐标偏差δpx,δpy,δpz得到)就可以计算出机器人实际位姿与期望位姿误差最小时的δφ。大部分机器人的标定原理正是基于公式(7)。本申请中,某待标定机器人的参数信息如表1所示。单机(单个机器人)由6个旋转关节构成,可达到表中关节范围以及关节范围任意一点。表1标定机器人参数表项目数值工作范围800mm关节范围+/-178°关节速度90°/s安装面积φ156mm自由度6个旋转关节外部电源输入100-240vac,50-60hz较佳的,步骤s1中,将两台机器人通过固件连接在一起的方法为:采用正方体连接块连接两台机器人的末端。使用正方体连接块连接两个机器人的末端,将连接块和双机基座之间的直线距离分别看作两个杆件,这样就构造了一个虚拟的封闭运动链。建立的模型具有14个关节,12个自由度。根据前述建模方式的描述,建立坐标系,其中坐标系f7和f14分别固定在上文提到连接双机的两个连杆上。建立的双机杆件坐标系如图3所示,得到d-h参数表如表2所示。值得说明的是,由于连接块并没有旋转自由度,所以表中θ7和θ14为定值。表2d-h参数表连杆序号iθi(°)di(mm)ai(mm)αi(°)1θ10.2200902θ200.3801803θ300904θ40.4200-905θ500906θ60.180007θ70.160008θ80.180009θ9009010θ100.4200-9011θ11009012θ1200.38018013θ130.22009014θ140.400较佳的,请参考图4,所述零力控制模式包括:通过动力学模型计算各关节对应的重力及摩擦力,得到预估力矩值,然后控制各关节输出与重力及摩擦力大小对应的补偿转矩,实现零力控制。具体地,所述零力控制模式的pid形式为:其中u(t)为pid输出,kp、kt、kd为反馈增益,e(t)是期望值与实际值的误差。经采样周期t后的离散差分方程为:其中k'p=kp,k'tt,k'd=kd/t。在实际控制过程中,力噪声会对力微分的计算造成影响,导致系统不稳定。因此,当使用微分控制项k′d时,需应用滤波处理解决高频干扰的问题,在机器人实际运动时,对机器人运动的最小修正量,即机器人位置的最高精度为l/32mm,因而决定力控制最高精度如公式(11)所示。其中ke是刚度系数。当控制力误差|ef|<δ时,就无法再提高精度,此时修正量φ=0。在稳态情况下,φ=int(k'p·δ)=0(12)其中f=int(·)为取整函数。则有k'pδ<1(13)这样就得到了系统稳定的必要条件,只有k′p满足上式,才能保证当力误差|ef|<δ时,修正量为0。为验证上述标定模型正确性和加入零力控制后参数识别的效果,我们进行了一次标定。将两台机器人连接一起后各自开启零力控制模式,通过改变连接双机(两台所述机器人)的角度收集机器人的关节转角信息。可使用伺服驱动器上位机软件,观测双机零力控制模式和点动示教模式(即关闭零力控制模式)两种模式下的运动三环波形图。开启零力控制模式,随意牵引机器人运动以引起各关节角度变化,抓取运动轨迹如图5a所示,可看出机器人本体在做无规则运动。观测轨迹放大图(图5b)可看到命令位置相对实际位置有延迟。即命令位置跟随实际位置变化,这说明机器人此时只工作在电流环下。我们可以从图5c中看到此时命令电流波形相对实际电流更平滑,这实际上是由于控制器没有下发命令电流指令,在零力控制模式下,命令电流根据实际电流做了拟合处理所致。以上观测说明机器人处于零力控制模式。关闭零力示教模式,使用点动示教模式,利用示教器编程一段规律运动轨迹如图6a所示,经放大(图6b)可看到实际位置相对命令位置有延迟,即机器人按控制器下发指令运动。观测此时电流波形,可以发现实际电流紧紧跟随命令电流变化,如图6c所示。接下来进入标定流程。在收集到足够多的两台机器人的关节转角信息后,在matlab环境下进行建模仿真计算,检验两台所述机器人的末端执行器是否形成闭环。较佳的,改变两台所述机器人的角度三次以上,并依次收集两台所述机器人的关节转角信息。图7a至7c是随机选取标定时的三个不同位姿,图8a至8c中则是经计算得到d-h误差并进行补偿后每个位姿对应的模型。表3详细表示出机器人标定后双机关节角度,表4给出了标定结果,即经计算后双机六轴的d-h误差补偿参数。标定完成后,选取一个位姿,获取最终补偿后的关节转角信息,此时的关节位置数据,即为机器人的关节原点数据。标定出的误差参数如表3所示:表3双机标定后d-h误差补偿参数最后通过对比双机标定前后直线轨迹精度来表示控制精度,即机器人以100%使能速度在z方向上轨迹精度。通过对比,可发现改进的标定方法对机器人末端的改善更为明显。表4双机直线轨迹精度综上所述,本发明提供的基于零力控制的机器人标定方法,包括如下步骤:s1:将两台机器人通过固件连接在一起,形成封闭运动链;s2:将两台所述机器人设置为零力控制模式;s3:改变两台所述机器人的角度并收集两台所述机器人的关节转角信息;s4:计算d-h误差并对所述关节转角信息进行补偿;s5:计算补偿后的关节转角信息是否达到精度要求,若没有达到精度要求则重复执行步骤s3至s5,直至达到精度要求,标定完成。本发明利用零力控制方法实现机器人的标定,可降低操作人员的使用门槛,简化示教步骤,提高示教效率和减少机器人关节磨损;还能够避免高昂的代价去检测末端位姿全集,继而提高标定效率,并最终提高机器人控制精度。显然,本领域的技术人员可以对发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1