厉复兴 张焕煜 李 强
作者通联:日照港股份公司第一港务分公司设备技术科山东日照市黄海一路126号 276826
E-mail:13963037815@163.com
日照港第一港务分公司共有84条流程,89台翻车机、皮带机及取料机等流程设备,根据使用经验,这些采用单一PLC技术的流程设备控制系统存在以下诸多问题。
(1)按单条流程进行设备的连锁编程,需要大量的互锁和连锁程序段。
(2)每次生产扩建添加新设备、新流程时,需要仔细阅读并大幅改动原有程序,难度大。
(3)PLC不擅长数据计算、循环控制和字符串赋值,每次涉及这类功能,都需要大篇幅程序。
(4)程序编写过程中产生大量的中间过渡点,占用PLC内存,减缓了PLC处理数据速度。
为此,公司结合数据库技术、高级汇编语言和原有PLC重新设计流程设备的控制方式。
依托数据库,在数据库表格中建立设备编号表、流程编号表、流程中设备顺序编号表。利用ODBC数据源管理器建立数据库与上位机之间的数据连接,上位机提取数据库表格中的信息。采用高级语言对提取的信息进行赋值、循环计算,通过上位机与PLC的连接,由PLC发送流程设备启动、停止指令,并采集流程设备信息,进行上位监控(图1)。
(1)利用 Microsoft Access表格建立日照港设备数据表格。①设备分列表(表1),对流程设备排序;②流程分列表(表2),对流程号排序;③流程中设备顺序分列表(表3),对每条流程的设备顺序编号,将每条流程的设备号从上游到下游进行顺序排列。
图1 流程设备控制系统设计流程
表1 设备编号
表2 流程编号
(2)结合上述设备数据表格,利用MicrosoftAccess建立关系型数据库(图2)。制作设备起始—结束列表( 表 4),挑选出每个流程的起始设备和结束设备,如1#流程起始设备是 110#设备(2#翻车机),结束设备是114#设备(1#堆料机)。制作设备信息综述表格( 表 5),对流程号、设备号、流程中设备编号进行综述,如1#流程顺序依次是110#设备(2#翻车机)、17#设备(3-4皮带机)、80#设备(3-3皮带机)、16#设备(3-2皮带机)、84#设备 (3-1皮带机)、14#设备(1#堆料机)。
基于Window自带的ODBC数据源管理器,通过ODBC数据源系统DNS建立Window与日照港设备 Microsoft Access表格的连接(图3)。上位机使用SQL语言,可利用ODBC直接读取、填写数据表格中的数据。
表3 设备顺序编号
图2 关系型数据库
表4 设备起始—结束列表
表5 设备信息综述列表
图3 ODBC数据源管理器
(1)在上位机创建每条皮带机的启动、停止点,并建立上位机与PLC的通信。
(2)在上位机建立组态画面。以CIMPLI-CITY编程软件为例建立上位画面(图4)。
图4 上位画面
利用图4脚本VB语言编写循环语句,通过起始和终点设备选出流程号及其流程设备。
利用SQL语言通过ODBC数据源管理器打开设备开始—结束分表格,选择流程号。
通过选出的流程号,利用SQL语言选择前3个设备进行显示,由操作人员确认流程是否正确。
操作员点击流程启动按钮,将对应流程里的所有设备进行赋值。上位机采用VB语言的循环语句赋值,PLC同时收到整流程所有设备的启动、停止信号。
(1)流程设备PLC启动控制。利用上游皮带机的启动信号作为本条皮带机的启动、运转连锁(图5)。
(2)流程设备PLC停止控制。流程皮带机的皮带机长度/皮带机转速=顺序停机的设定时间(图6)。
图5 启动PLC控制方式
图6 停止PLC控制方式
流程设备控制系统改进后,新设备的添加只需在数据库表格中进行,避免了因添加设备进行大篇幅修改程序的工作。控制程序按照软件特点进行优化分配,上位机擅长处理画面和高级语言,PLC擅长开关量信号,确保软件发挥出特长,有效简化了程序段长度。