邢满荣,张 鹏,王晓冬,张 洁,尹岳波
(河北建材职业技术学院,秦皇岛 066004;北京机械工业自动化研究所,北京 100120)
在工业生产中,使用由PLC控制的搬运机械手,可以将工人从重复、繁重的劳动中解放出来,实现了生产的机械化和自动化,并且可以代替人工在恶劣、危险的环境下工作。而利用工控组态软件可以实现实时监控、远程控制,实现自动化过程控制。本设计采用PLC控制机械手运动,采用MCGS组态软件实现系统的实时监控和远程控制。
本系统要求在生产流水线和装箱机之间设置一个搬运机械手,用来完成产品在不同工作空间的位置转换,具体如图1所示。该机械手有三种工作方式,分别为自动、手动、回原点,其中自动方式分为连续和单周期两种方式。下降/上升、左移/右移、夹紧/松开使用电磁阀控制。
图1 机械手工作过程示意图
机械手在原点位置,即左限位开关闭合,上限位开关闭合,机械手松开。
连续方式:按下启动按钮,机械手按照下降→夹紧(延时1s)→上升→右移→下降→松开(延时1s)→上升→左移的顺序依次从左向右转送工件。依此循环。
按下停止按钮,机械手完成当前工作过程,停在原点位置。
单周期方式:动作过程与连续方式时相同,只是不循环,一周期后立刻停止。
按下上升按钮,做上升动作,按下下降按钮,做下降动作,按下左移按钮,做左移动作,按下右移按钮,做右移动作,按下夹紧按钮,做夹紧动作,按下松开按钮,做松开动作。
选择回原点方式,按下启动按钮,机械手自动回到原点。
监控系统不仅要求通过画面实时显示机械手现场工作状态,而且还要求在上位机上可以进行机械手的操作,既可以通过组态进行机械手运行方式的选择及启动、停止等按钮的操作。
按照系统的控制要求,系统需要16个输入点,6个输出点,具体分配如表1所示。其中输入量中的启动、停止、手动上升、手动夹紧、手动左移、手动右移、手动下降、手动夹紧、手动放松输入点要接相应的按钮,其他的输入量,如方式选择开关(自动、手动、回原点、连续/单周期)、限位开关(上限、下限、左限、右限)等输入点接相应的开关。输出量中原点指示灯输出点接一盏灯,其他的输出点接相应的电磁阀。
表1 I/O分配表
根据上述要求,决定选用德国西门子公司的S7-200PLC,CPU类型选用226型,输出选用继电器型的。该型号的PLC具有24个输入点,16个输出点,为了冗余的要求,增加一个扩展模块,该型号的PLC性能稳定,价格适中,能够满足该控制系统的要求。
本系统选用MCGS工控组态软件,该软件由北京昆仑自动化有限公司开发。具有简单灵活的可视化操作界面及丰富生动的多媒体画面,支持国内外多数品牌的数据采集与输出设备。用户只需要完成简单的配置工作,就可以利用组态软件实现与PLC的通信功能。它通过对现场数据的采集处理,以动画显示、流程控制、报表输出等多种方式进行系统的实时监控。
因为系统有自动、手动、回原点三种工作方式,故程序结构上采用了主程序和子程序。其中主程序仅实现调用功能,三个子程序分别实现手动、自动、回原点的功能。主程序如图2所示。
图2 PLC主程序
分析自动控制的控制要求可知,该程序适合采用顺序控制设计法设计。首先根据控制过程画出顺序功能图,具体如图3所示,然后根据顺序功能图设计PLC梯形图。M0.7的梯形图如图4所示。
图3 自动程序顺序功能图
图4 M0.7的梯形图
与自动程序类似,回原点的动作过程是按照一定的顺序操作的,适合采用顺序控制设计法。顺序功能如图5所示。
图5 回原点顺序功能图
该程序比较简单,仅仅要求按下相应的按钮,就实现相应的动作,在此基础上添加限位条件就可以了,因此适合采用经验设计法。梯形图如图6所示。
图6 手动程序
利用组态软件监控机械手工作状态,实现上位机与PLC的通讯,主要分定义数据对象、设计用户窗口并建立动画连接、设计运行策略、组态设备窗口四个步骤。
实时数据库是MCGS的数据处理中心。MCGS各个部分都可以对数据对象进行操作,通过数据对象来交换信息和协调工作。根据控制要求一共定义了20个数据对象。具体如图7所示。
监控画面的设计简单讲就是创建逼真的人机界面,达到图像元素的视觉效果。在组态平台上进入用户窗口,就可以进行监控界面的制作。图8为机械手的组态监控画面。
图7 实时数据库中的数据变量
MCGS实现动画效果的主要方法是将用户窗口中图形对象与实时数据库中的数据对象建立动画连接,并设置相应的动画属性。在系统运行过程中,图形对象的状态特征由数据对象的实时数值驱动,用以实现图形的动画效果。
图8 机械手的MCGS监控画面
在运行策略中编写脚本程序,由于机械手的主要控制功能在PLC中实现,因此在脚本程序中主要是控制垂直移动量和水平移动量,以实现机械手的连续动作。使监控画面更加逼真。脚本程序如下:
IF 下移=0 THEN
垂直移动量=垂直移动量+1
ENDIF
IF 上移=0 THEN
垂直移动量=垂直移动量-1
ENDIF
IF 右移=0 THEN
水平移动量=水平移动量+1
ENDIF
IF 左移=0 THEN
水平移动量=水平移动量-1
ENDIF
组态软件之所以能实时监控机械手的动作,是因为PLC与MCGS之间进行了通信,这一功能靠设备窗口组态来实现。本系统的设备组态如图9所示。首先,在设备工具箱中选择通用串口父设备并添加西门子S7-200PLC。然后,在通用串口父设备下进行设备属性编辑,最后,在S7-200PPI下进行通道连接。
图9 MCGS与PLC通讯设置
首先将编写好的梯形图下载到PLC并运行,然后打开组态工程并运行,机械手监控画面就可以实现实时监控了,机械手的运行不仅可以通过操作面板控制,而且可以通过组态工程中的开关控制,不仅实现了实时监控,而且实现了远程控制。
机械手的控制程序采用了模块化的编程思想,利用了子程序和跳转指令,程序结构清晰,性能稳定。利用组态软件MCGS实现对机械手的监控和管理,画面逼真,形象直观,有效地实现了实时监控和远程控制。
[1]汪志锋.工控组态软件[M].北京:电子工业出版社,2007.
[2]袁安富,蒋浩.基于PLC的工业机械手控制设计与组态监控[J].2011,33(18):86-89.
[3]陶权,韦瑞录.PLC控制系统设计、安装与调试[M].北京:北京理工大学出版社,2009.
[4]MCGS参考手册.北京昆仑通态自动化软件科技有限公司[M].2005.2.
[5]梁小布.可编程控制器[M].北京:中国水利水电出版社,2007.
[6]范小兰,赵春锋.基于PLC的机械手控制在MCGS中的实现[J].制造业自动化,2012,(18):6-8,25.