基于变频器USS通信的工件自动分拣PLC控制系统
2015-08-10郑长山
□郑长山
随着通信与网络技术的不断发展,通信已经成为控制系统中不可缺少的重要组成部分,在电机拖动控制中,越来越多地采用了变频器进行控制。由于变频器输出端会产生强烈的干扰信号,因此会出现控制错误,而采用基于USS协议来完成变频器的拖动控制,不仅提高抗干扰能力、控制稳定,同时也减少了布线的工程量,降低了敷线的成本。利用PLC组成USS通信的控制网络具有较高的性价比。[1]目前很多企业在工件分拣过程中仍采用人工方式进行,不但耗费了很大的人力、物力,而且采用人工分拣,效率低,生产成本高。针对上述情况,本文利用USS通信进行了西门子S7-200PLC工件分拣自动控制系统设计。
一、控制任务
用一台S7-200 CPU224 XP CN对变频器MM420进行USS通信,控制一台三相异步电动机。通过状态表与USS通信,可以设定变频器频率。
三相异步电动机控制传送带,传送带机构如图1所示。当工件被放到传送带入料口处,被光电传感器检测到时,变频器启动,电机驱动传送带运行,工件首先经过金属传感器,再经过光纤传感器检测黑色还是白色。出料槽1存放金属工件、出料槽2存放非金属白色工件、出料槽3存放非金属黑色工件。推料到位传感器选择磁性开关,三个推杆气缸从左到右为推杆1、推杆2、推杆3。
三相异步电机参数:电机额定电压380V;电机额定电流0.18A;电机额定功率0.03kW;电机额定频率50Hz;电机额定转速1300r/min。
表1 变频器参数设置值
表2 输入地址分配表
表3 输出地址分配表
图1 传送带机构
图2 接线图
二、硬件和软件配置
(一)硬件。一台S7-200PLC(CPU224XP CN)、一台变频器MM420、1个带编程口的网络连接器(DP头)、一根PROFIBUS-DP电缆、一根USB/PPI编程电缆(S7-200PLC下载线)、装有STEP7-Micro/WIN软件的电脑(也称编程器)、几个普通按钮、一个急停按钮、一台三相异步电动机、1条传送带、1个旋转编码器、1个漫反射光电传感器、1个金属传感器、1个光纤传感器、3个磁性开关、3个气缸、3个电磁阀、3个出料槽、一个空气压缩机、若干导线与气管。
(二)软件。STEP7-Micro/WIN V4.0 SP6及以上版本编程软件(含指令库)。
三、硬件通信连接设计
一根PROFIBUD-DP电缆与网络连接器相连,网络连接器插入到S7-200PLC的PORT0口,网络连接器的第3针所连的线插入到变频器的14端子(P+),第8针所连的线插入到变频器的15端子(N—)。网络连接器的的开关拨向ON,因为S7-200PLC在PROFIBUD-DP电缆在终端位置。
四、变频器参数设置
在MM420变频器的操作面板上进行参数设置,具体设置值如表1所示。
其他参数如上升时间、下降时间等的设置与否,取决于任务要求。
五、输入和输出地址分配
根据控制任务进行如下地址分配,如表2、3所示。
六、接线图设计
根据控制任务,绘制接线图如图2所示。
七、程序设计
(一)关于USS通信程序中,首先进行Active参数的确定。方法如下:D0(0号)-D31(31号)代表32台变频器,要激活某一台变频器,就将该位为1,如果将0号变频器(Drive=0)激活,其16进制表示为:16#1(Active=1)。如果将1号变频器(Drive=1)激活,其16进制表示为:16#2(Active=2);如果将2号变频器(Drive=2)激活,其16进制表示为:16#4(Active=4);如果将3号变频器(Drive=3)激活,其16进制表示为:16#8(Active=8);如果将0-3号变频器(Drive=0,Drive=1,Drive=2,Drive=3)全部激活,其16进制表示为:16#F(Active=F);其他类推。
(二)采用现场测量脉冲当量值。计算每两个脉冲之间的距离即脉冲当量。本文选择增量式旋转编码器是直接利用光电转换原理输出三组方波脉冲A相、B相和Z相。用于计算工件在传送带上的位置,A相、B相直接连到CPU224XP的高速计数器的输入端,Z相没使用。CPU224XP集成6点高速计数器,编号为HSC0~HSC5,每一编号的计数器均分配有固定地址的输入端。同时,高速计数器可以配置12种模式中的一种。本文采用模式9,计数器为HSC0,B相脉冲从 I0.0输入,A相脉冲从 I0.1输入,倍频设定为4倍频。
编写脉冲当量现场测试主程序,变频器设为1赫兹,在入料口处,放入工件,传送带启动运行,运行一段距离,使传送带停止,程序中读出高速计数器脉冲数,测量实际工件移动距离,高速计数器脉冲数/4=编码器脉冲数,脉冲当量=工件移动距离/编码器脉冲数。同理方法做三次,将三次脉冲当量取平均值,就是最终脉冲当量。
(三)计算工件在各个出料槽口位置时脉冲数。测量进料口到各个出料槽口位置的距离,除以脉冲当量,再乘以4,就是工件在各个出料槽口位置时脉冲数。通过选择单击“数据块”,将脉冲数存储在指定的VD变量存储器中。传送带运行时,高速计数器HC0经过值,通过比较指令,与存储在指定的VD变量存储器的数据比较,编写程序使得相应的电磁阀动作,通过气缸将工件推到指定料槽。
(四)编写HSC-INIT中断程序。在主程序块中使用SM0.1调用此中断子程序,完成高速计数器定义并启动计数器。
(五)编写USS通信有关程序。0号变频器(Drive=0),Active=1,Mode=1,Baud=19200,Type=1,Speed - SP=VD120,每台变频器指定一条USS-CTRL指令。特别说明:如果VD120中设置的是40.0,其含义是变频器以40%的基准频率运行,若变频器的基准频率是50Hz,那么变频器将以50Hz*40%=20Hz运行,VD120是实数,输入的数据要有小数点。
(六)编写部分分拣子程序。如果检测到是金属工件,进入S1.0子程序。如果检测是非金属工件,再检测是黑色还是白色,进入不同子程序。在编译程序前,右击“程序块”,单击“库存储区分配”,单击“建议地址”,单击“确定”按钮,为指令库分配存储区。
确保连线正确的情况下,送电,保存,编译,下载程序。通过状态表把频率值(实数值)写入到VD 120,然后通过USS通信改变频率值,根据控制任务,进行调试,调试结果满足控制任务要求。
八、结语
本文采用了RS485接口的USS通信协议、旋转编码器,设计了工件自动分拣PLC控制系统,减少了系统的布线,该设计具备可靠性高、抗干扰能力强、配套齐全、维护方便、成本低、效率高等优点。本系统不仅在工程应用上有一定的参考价值,而且在教学、实训、社会培训上也可以应用。
[1]顾凌云,侯卓生.PLC与多台变频器基于USS协议的网络通讯应用[J].产业与科技论坛,2015,1(14):53~53
[2]周娅,郎朗,苏长杰.基于PLC和组态技术的材料分拣系统[J].南阳理工学院学报,2013,11(5):6
[3]王强,张明珠.材料自动分拣系统中的PLC应用研究[J].首都师范大学学报,2011,12(32):6
[4]吕景泉.自动化生产线安装与调试(第二版)[M].北京:中国铁道出版社,2009,11
[5]向晓汉.西门子PLC工业通信完全精通教程[M].北京:化学工业出版社,2014,8