摘 要:根据浇铸机器人的功能需求和特点,设计了具有良好通用性和开放性的工业机器人浇铸控制系统的软硬件结构。以三轴浇铸机器人为应用实例,分析了其运动学正逆解算法,并根据实际生产需求,通过PLC程序中定义的M指令实现整个浇铸系统的I/O信号交互控制。实际应用结果表明,该浇铸控制系统有效地提高了浇铸生产效率,并且运行稳定可靠。
关键词:工业机器人;浇铸控制系统;运动学; PLC;交互控制
随着工业机器人相关技术的不断发展和成熟,工业机器人应用范围不断扩展,产品涵盖金属焊接、喷涂、浇铸、装配、搬运、包装、激光加工等方面,应用领域包括汽车、摩托车、工程机械、家电等行业[1,2]。不同用途的工业机器人在工作环境、机器人的自由度、与外部系统的信号交互控制等方面存在较大的差异。作为工业机器人的主要应用之一,浇铸机器人具有以下显著特点:(1)可靠性强、稳定性高、正常运行时间长;(2)安全性高,浇铸中金属液体温度极高,要充分保障人员、机器人和其他财产安全;(3)速度快,浇铸工艺决定了操作周期时间短;(4)精度高,保证零件生产质量稳定;(5)运动范围广,为提高工作效率,一般一台机器人同时为多台浇铸机浇铸,要求机器人具有较大的运动范围;(6)信号多且交互频繁;(7)坚固耐用,能适应普通浇铸车间恶劣的生产环境;(8)通用性和柔性化,适合不同的应用场合。鉴于浇铸机器人的上述特点,本文将结合其应用实例,介绍相关的设计方案和一些具体问题的解决措施。
1 机器人浇铸控制系统的结构
机器人浇铸控制系统分为硬件结构和软件结构两大部分。
1.1 系统硬件结构
本文所设计的机器人浇铸控制系统的硬件系统包括系统控制单元、人机接口、伺服驱动系统等主要部分[3],其结构示意图如图1所示。
系统控制单元是整个浇铸控制系统硬件结构的核心,主要组成部分包括CPU、主板和多功能板等。CPU和主板等硬件模块都集成在工业PC中,而在实际应用中,鉴于工业PC强大的处理能力及其良好的通用性,越来越多的机器人采用工业PC作为控制系统的核心控制器[2],本文采用的是嵌入式X86工业PC,实现数据和信号处理。多功能板支持操作面板、数字I/O信号接口、模拟输出信号接口、脉冲计数器和脉冲发生器等接口,提供控制单元与外界进行数据和信息交换的通道。
伺服驱动系统由最多可达8个的独立的伺服单元组成,每个伺服单元由一个带标准脉冲指令接口的伺服驱动器及一个伺服电机组成,并对应机器人一个关节轴。一般来说,工业机器人最多有6个关节轴,即使在某些应用场合下,还需要1或2个自由度的导轨、变位机等设备,系统仍然可以满足实际应用的需求。
1.2 系统软件结构
为提高系统的开放式和通用性,软件系统分为三层:系统层、控制核心层和主要由人机交互模块HMI(Human Machine Interface)组成的系统应用层,其结构示意图如图2所示。
软件结构的系统层主要包括操作系统和驱动程序、硬件接口等。为了实现控制系统的实时控制,需要在DOS系统或者Linux系统平台上开发出相应的实时模块RTM(Real Time Module)。
控制核心层是整个软件系统和整个控制系统的核心,主要包括机器人控制系统核心CSKR(Control System Kernel of Robot)和PLC是其主体部分。系统内部CSKR和PLC采用共享存储的方式来进行信息交换,按照事先约定划分功能区,并定义访问规则[3]。控制核心层通过底层接口实现信息交换和功能调用,以软中断的方式处理实时任务、运动控制、插补运算和报警;以共享内存的形式与寄存器交换数据并进行参数配置。
系统应用层中数控内核接口,一方面作为控制核心层与上层应用的接口,另一方面进行数据管理,为开发的应用程序提供友好接口。
按照上述原则搭建出的工业机器人浇铸控制系统应用实例软硬件系统如图3、图4所示。
2 工业机器人运动学
从本文构建的软件体系结构来看,控制核心层的一部分内容就是运动学算法,本文设计的浇铸控制系统已经成功应用于东风集团某厂的铝制活塞的浇铸生产,下面以其所使用的意大利法塔铝UNO三轴浇铸机器人为例建立机器人运动学。机器人结构简图和关节坐标系如图5所示。
2.1 运动学正解
机器人三个关节坐标轴(实轴)分别为关节1(控制机器人左右运动)、关节2(控制机器人上下运动)和关节4(控制机器人末端容器翻转)。关节3并没有驱动单元,连杆与铅直线的夹角?酌是一个确定的值。关节3的作用在于当机器人关节1和关节2运动时,保证末端容器姿态不变,防止容器中高温金属液体泼溅造成不必要的损失。按照D-H方法建立运动方程[4,5],运动学正解得到末端容器在机器人基坐标系中位姿矩阵
3 系统信号控制的实现
控制核心层的另外一个重要方面就是PLC。本文设计的浇铸控制系统采用开关量交换信号,简单易行,并能满足工业机器人信号控制的应用需求。在前面提到的应用实例中,机器人系统与两台浇铸机、两台铝液熔炉和废料箱构成的浇铸系统进行频繁的信号交互。
3.1 浇铸系统功能需求
工作过程中,浇铸机器人运动过程示意图如图6所示。
实线表示浇铸系统使用熔炉1中的铝液浇铸活塞的运动过程,虚线表示浇铸系统使用熔炉2中的铝液浇铸活塞的运动过程。以使用熔炉1为例,整个浇铸动作过程为:
(1)程序开始。机器人运动到并停在熔炉正上方,判断是否有“允许舀信号”;
(2)如果有,判断来自浇铸机1(FM1)还是浇铸机2(FM2),根据FM1和FM2安装模具的型号,机器人末端容器进入铝液熔炉,直到固定在连杆上的金属测头测到“测头接触铝液液面”信号,末端容器停止下降,然后舀取对应量的铝液;如果没有则继续等待;
(3)舀取完成后机器人停在熔炉正上方,判断是否有来自上一步中给出信号的同一浇铸机的“允许浇铸信号”;如果没有则继续等待;
(4)如果等待超过一定时间(由工艺参数和工作环境、铝液的量等因素决定),则机器人将铝液倒回熔炉,机器人运动到废料箱吹风处,吹掉附着在容器内外的氧化皮,回到熔炉上方,报警“等待超时”!
(5)如果在允许的时间内对应的浇铸机给出“允许浇铸信号”,则机器人对浇铸机浇铸(动作b或d),浇铸完成后机器人向浇铸机给出浇铸完成信号,机器人运动到废料箱吹风处(动作c或e),吹掉氧化皮,回到熔炉上方(动作a),开始下次循环。返回步骤(1)。
整个工作周期中,熔炉的使用可根据实际情况随时切换,具体操作可以通过操作面板上的自定义按键来实现。针对不同的活塞模具,只需要通过改变舀取铝液是机器人末端容器的倾斜角度控制铝液的量,方法简单实用。
3.2 系统信号控制的实现
工业机器人浇铸控制系统与整个浇铸系统通过PLC控制程序来实现控制信号的交互[6]。主要控制信号如表1所示。
系统在PLC控制程序中通过信号交互,与外部浇铸系统和辅助设备实现手动、自动、单段和增量等运行方式。报警、急停、故障和测头等系统输入信号的控制,可以由PLC控制程序的指令直接实现。以“金属测头接触铝液液面信号”为例,代码如下:
…
if (bit(X[0],5))//测头接触到液面
{
…//末端容器停止
}
else
{
…//否则,末端容器继续下降
}
…
系统输出信号的控制和其他辅助功能,需要在机器人PLC控制程序中定义不同的M指令,并由机器人工作程序调用对应的M指令。本系统中定义的M指令及其功能如表2所示。
M指令的定义在PLC控制程序的exec_M( )子程序中。其中,M50指令执行过程中,PLC控制程序定时扫描输入信号X1.0和X2.0,一旦浇铸机给出“允许浇铸信号”,通过改变PLC控制程序中的用户自定义控制字*ch_user_in(0)的值,判断浇铸对象。指令mod_M_code(0)=-1通知系统该M指令处理完毕,机器人工作程序接着执行下一条指令。
系统运行结果吻合3.1节中的整个浇铸动作过程。
4 应用实例
本文设计的工业机器人浇铸控制系统已经成功应用于东风集团某厂的铝制活塞浇铸生产。系统整体调试完成后,系统整体运行稳定。人工浇铸铝制活塞,每人每班次(8 h)实际生产合格活塞数目为600个,使用本文设计的工业机器人进行浇铸,因为良好的工艺稳定性和双浇铸容器设计,每人每班次实际生产合格活塞数目可达1 000个以上,极大地提高了工作效率,提高铝液使用率,大大减轻了工人的劳动强度,取得了良好的效果。从投入实际生产使用开始至发稿之日,系统已经连续稳定运行10个月,完全满足设计和生产需求。
按照软硬件通用性和开放性的原则,以系统控制单元为核心搭建了浇铸机器人系统硬件结构,以控制核心层为关键建立了系统软件结构。针对浇铸机器人的特点和应用实例,给出了机器人运动学算法,并以共享内存的方式进行信号交互控制。投入使用后,系统运行稳定可靠,各项性能指标均符合实际需求,达到了预期目标,在机器人浇铸生产中具有较高的实用价值。
参考文献
[1] 潘丽霞. 论工业机器人的发展与应用[J]. 山西科技,2010, 25(3):22-25.
[2] 王天然,曲道奎. 工业机器人控制系统的开放体系结构[J]. 机器人,2002, 24(3):256-261.
[3] 田茂胜,唐小琦,孟国军,等. 基于嵌入式PC的工业机器人开放式控制系统交互控制的实现[J]. 计算机应用,2010, 30(11):3087-3090.
[4] 熊有伦. 机器人技术基础[M]. 武汉:华中科技大学出版社,2008:32-50.
[5] JOHN J C. Introduction to robotics mechanics and control[M]. 贠超译.第3版. 北京:机械工业出版社,2005.
[6] 周宜. 机器人喷涂生产线控制系统的设计与应用[J]. 电气自动化,2009, 31(4):39-41.