陈公兴
(广东科贸职业学院 信息学院,广东 广州 510430)
机器人作为目前工业、商业以及农业领域中重要的工具,其通过中心控制系统,实现不同领域中的工作任务。机器人运动控制的高效性是工业机器人技术发展中所面临的难题。为解决此类问题,国外通常将机械结构模块的控制与机器视觉模块的控制相结合,实现三维空间下的运动控制;而国内学者在抗干扰和保持系统性能稳定的处理方面有充分优势。其中,为了优化机器人工作效果,文献[1]、文献[2]将控制系统分为3个环节,分别为命令下达、接收以及执行环节。但在后续应用过程中,发现该系统距离预期目标有一定差距,存在系统补插效果不佳、机器人控制的可靠性和精度低的问题。
因此,研究基于伺服驱动的机器人控制系统精度控制与可靠性优化,具有重要的意义和应用价值。伺服驱动是工业机器人、数控机床等机械控制的关键技术之一,具有数字化的特点[3]。本研究根据伺服驱动硬件与软件特点,优化机器人末端执行器的控制效果,进而提高传统系统的控制精度和可靠性,为机器人的精准控制提供更加完善的技术支持。
当驱动装置的输出惯量无法实现负载所需惯量要求时,会发生驱动装置振动的现象;当不匹配计算而直接下达驱动指令时,伺服电机的控制精度会下降。由于电机经常处于高转速工作状态,因此应加入减速器控制转速,加强电机运转的稳定性;当利用减速器优化控制系统时,应考虑减速器的传动比;而机电时间常数作为额定激励电压和空载情况下电机由静止状态加速到空载转速所需的时间,可以衡量电机反应速度。因此优化机器人控制系统的精度和可靠性,需要保证伺服驱动电机具备惯量匹配、负载计算与匹配、传动比、最高转速以及机电时间常数最优[4-5]。通过上述分析与设定,为机器人的各个关节选择合适的驱动电机驱动器,如表1和表2所示。
表1 机器人各个关节选用的伺服驱动电机型号
表2 机器人各个关节选用的伺服驱动电机参数
此次设计采用的伺服电机末端旋转编码器为17位绝对式编码器,利用该编码器测量光电码盘各道刻线,可以得到唯一的位置信号,没有累计误差。
完成驱动电机选型工作后,再设计一套驱动电机和驱动器的连接方案。
根据驱动电机和驱动器的各项基本参数,设计驱动电机和驱动器连接方案。控制硬件环境如图1所示。
图1 驱动电机和驱动器连接设计图
根据图1可知,伺服驱动器有个7段LED显示面板,用来显示输入、输出信号变化次数以及绝对式编码器信号。利用“M”和“S” 按钮设定驱动器参数、写入模式以及功能模式。依据基本控制算法控制驱动器,实现电机的运转[6],实现对不同负载特性下增益等参数的调整,进而优化整个控制系统。
由于移动速度应具有均匀性,且机器人在空间中的直线运动轨迹需要定位伺服控制,系统插补速度控制受限。因此,需要对直线轨迹进行插补,控制机器人在每一控制点处的位姿[7]。假设三维空间中,存在一个全局坐标系,令机器人的末端执行器,沿着直线从任务点D1点到达任务点D2。如果两个任务点的坐标分别为(x1,y1,z1)和(x2,y2,z2),那么根据三维空间中机器人的活动轨迹,计算两个任务点之间的有效距离,公式为
(1)
利用矢量的形式,描述OD1和OD2两个任务点,则存在
(2)
则根据上述变化形式和式(1)的计算方程,得到始末两点距离为
D1D2=(x2-x2)i+(y2-y2)j+(z2-z1)s
(3)
式中:i、j、s表示补插坐标[8]。则上述计算结果的单位方向矢量为
(4)
因此,假设M为插补点数,则在机器人末端执行器的直线轨迹上插入任意一个插补点Di为
(5)
式中12.2 机器人圆弧轨迹插补
在全局坐标系中,还存在圆弧轨迹,弧上有3个不共线的随机节点,这些点的坐标分别为:A(xA,yA,zA)、B(xB,yB,zB)以及C(xC,yC,zC)。假设圆弧插补的次数为N,则根据机器人末端执行器在三维空间中的圆弧轨迹,计算圆心、半径和圆弧平面的法向量。假设确定平面ABC,则经过三点的圆的计算公式为
d11x+d12y+d13z+d14=0
(6)
已知线段AB的垂直平分面为S1,线段BC的垂直平分面为S2,则两组数据的计算方程为
(7)
根据空间几何基本定理可知,平面ABC、S1、S2的交点为圆心[10]。设置该点为三角形外接圆的圆心。假设圆心坐标为O′(xO,yO,zO),则根据式(6)和式(7),得到所求圆弧的半径:
(8)
同理,默认平面ABC的法向量为n,计算圆心角。设弧ABC的圆心角为α,E为与弧ABC在同一圆上另外一条弧线上的随机节点,令β=∠ABC,θ=∠AEC,则根据图2中的各项参数,计算圆心角[11]。
图2 圆心角示意图
由基本数学定理可知,圆的内接四边形对角之和为180°,所以θ=1800-β。因此利用余弦定律,计算圆心角α的值,公式为
(9)
(10)
式中:a、b、d表示Wi点弧上的切向量坐标;K、Δq表示常量[12]。至此,按照上述计算过程,完成机器人圆弧轨迹插补工作。
通过上述两个插补设计,利用模糊控制算法降低机器人运动误差。
首先,定义语言变量函数和语言值隶属度。其中,语言变量用模糊集合表示。假设机器人误差的语言变量为u;误差变化率的语言变量为p;比例增益为ΔZ1;积分增益为ΔZ2;微分增益为ΔZ3。因此定义上述5个变量的模糊子集为负大、负中、负小、0、正小、正中、正大,则要求这些参数的范围在0~1之间[13]。根据专家经验和相关文献,设置隶属函数的取值表,如表3所示。
表3 隶属度函数值表
其次,定义规则库。描述模糊条件语句,用“或”连结多个模糊条件语句,形成模糊规则。当模糊条件语句的输入、输出语言变量已知,把模糊规则转变成相应的数值,建立比例增益为ΔZ1、积分增益为ΔZ2、微分增益为ΔZ3的模糊规则表,实现对模糊规则库的建立。
最后,对照系统输入变量和建立的规则库,比较系统输入与输出关系[14]。因此令误差和误差变化率的语言变量均等于负大,则比例增益ΔZ1的模糊关系为
(11)
参考表3中的数据,则根据隶属度函数fu,计算模糊关系,则ΔZ1的输出结果为
∪ΔZ1=[f负大·f负大]T⊕G
(12)
式中:⊕表示模糊关系;f负大表示语言变量的负大模糊子集。依据模糊推理得到模糊控制下系统的输出值,并使用加权平均法进行模糊判决[15]。至此,在伺服驱动的要求下,完成对机器人控制系统的精度控制与可靠性优化。
选择工业机器人作为实验测试对象,利用此次设计的控制系统,操控该机器人的活动轨迹。
为了测试控制系统的控制精度和可靠性,根据不同测试组的系统硬件,设置系统的各环控制周期和通信周期,结果如表4所示。
表4 测试条件及参数设置 单位:ms
测试条件与参数设置完毕后,在不同的控制系统与机器人之间建立连接,试运行工业机器人是否运动流畅。将此次设计的系统作为实验组测试对象,将传统设计下的系统作为对照组测试对象(文献[1]方法和文献[2]方法)。实验共分两个阶段进行。
图3、图4为无精插补(给定起点和终点的曲线之间插入若干个点,即用若干条微小直线段来逼近给定曲线,粗插补在每个插补计算周期中计算一次)、有精插补(计算出的每一条微小直线段上再做“数据点的密化”工作,这一步相当于对直线的脉冲增量插补)测试条件下,位置、速度、电流参数与时间的关系曲线。
图3 无精插补下的参数波形
图4 有精插补下的参数波形
根据图3和图4的系统测试结果可知,无精插补下机器人控制系统的位置、速度、电流参数和时间的关系曲线与有精插补下的机器人控制系统之间,存在巨大的功率差异,可见此次设计的系统,在有精插补方面有更好的控制效果。
以某蝶形驱动装置为例,驱动其上下摆动,蝴蝶腹部铰接的蝴蝶翅膀也随之摆动,对3种系统进行对比实验。图5为不同系统应用下,机器人末端执行器的运动轨迹控制效果。
图5 运动轨迹控制效果对比
根据图5测试结果可知,在3种机器人运动轨迹控制系统测试下,本文设计的系统,通过更加精准的控制,与实际蝶形驱动装置运动轨迹重合率更高,而其他系统与实际蝶形驱动装置运动轨迹无法精准重合,控制精度较差。这是因为本文系统对机器人的直线轨迹和圆弧轨迹进行插补分析,采用模糊控制算法减小了机器人运动控制误差。
综合上述两个阶段的测试结果可知,此次设计的系统,实现了精度控制与可靠性优化两个研究目标。
本文设计的机器人控制系统,基于伺服驱动优化了驱动电机与驱动器的连接方案,引入模糊控制算法对机器人的直线轨迹和圆弧轨迹进行插补分析,取得了更加接近预期目标的控制效果。
由于软件设计过程的计算量较大,因此该系统的工作效率有待提升。在今后的研究中,可以将这一问题作为研究重点,在保证系统控制精度与可靠性的前提下,优化系统的整体工作效率。