实线表示浇铸系统使用熔炉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个月,完全满足设计和生产需求。
按照软硬件通用性和开放性的原则,以系统控制单元为核心搭建了浇铸机器人系统硬件结构,以控制核心层为关键建立了系统软件结构。针对浇铸机器人的特点和应用实例,给出了机器人运动学算法,并以共享内存的方式进行信号交互控制。投入使用后,系统运行稳定可靠,各项性能指标均符合实际需求,达到了预期目标,在机器人浇铸生产中具有较高的实用价值。