文献标识码: A
文章编号: 0258-7998(2013)06-0074-03
数据采集系统是工业控制和监控系统的核心与基础[1],它能集中地将生产过程参数转换成数字信号,经计算机存储和处理后动态地显示出来,使操作人员可方便地获得生产现场的各种数据[2],是保证生产达到优质、高产、低耗、安全的重要手段。图形化编程语言LabVIEW是虚拟仪器领域内使用最为广泛的计算机语言[3],用户可通过LabVIEW软件实现自定义的功能,在计算机上进行测量数据的实时监测、存储和相关数据转换处理[4]。
本文以某公司节气门装配线为背景,基于装配线在数据采集及实时监控中遇到的问题,设计了分布式数据采集系统,用于运行中数据的收集及实时监视,实现透明化生产[5]。
1 数据采集系统设计
该节气门装配线包含有14个工位,分别承担不同零件的装配或某些功能的测试。用传统的人工方式来发现、记录或汇报因装配线异常产生的各类数据会消耗大量的人物力,不仅不能及时找出缘由,还可能延误生产周期,影响进度。因此,有必要为装配线设计一套数据采集系统,通过自动化的数据采集,及时地获取各类正常或异常的生产数据[5]。
1.1数据采集系统整体设计
根据装配线运行过程中数据的类型,可将整个装配过程的数据采集分为设备数据(包括设备的运行参数、运行时间、故障信息等)采集和生产数据(生产过程中产生的数据)采集。因数据产生于不同的控制系统甚至可能分布于不同的计算机网络,故将采集系统设计为分布式数据采集系统[6]。该系统主要包括:设备层、数据采集及监视层、通信协议层和应用软件层4层结构, 如图1所示。
1.2 生产数据采集硬件结构设计
通过研究该公司的装配线,其生产数据主要分为两类,分别为这两类数据进行采集系统的硬件结构设计。
第一类生产数据由PLC自动采集,包括设备综合效率、计划数据(轮班调整、休工等)、时间周期、设备状态及故障工位等。在硬件方面,PLC的数据采集主要是由PLC L40以及相应的智能设备来实现,而存储在PLC的数据可以通过串口传递给上位机(数据服务器AMS主控系统)。
第二类生产数据是通过手动录入或按钮触发产生的,这些信号以不同的方式存到相应的存储设备中。这些数据的采集采用泓格的分布式数据采集模块I7000系列中的I7060和I7520模块及终端用户按钮盒来实现。终端按钮盒安装在每个工位上,工人在工位出现无法识别的异常时触发警报,按键的多少根据实际的需要选择。将按钮盒和I7060相连接用于采集装配线上工人输入的信号。
1.3 设备数据采集硬件结构设计
生产线设备数据采集的基本原理是用相应的传感器或智能采集设备来收集运行过程中各个装置的状态及运行参数,本文以压机为切入点,研究设备数据采集的方法。在硬件系统的设计上主要考虑采集压机在装配过程中产生的力和位移。
具体选择如下:采用Burster 8712-50电位式位移传感器;采用的测力传感器是森瑟尔公司的SZL-3型称重传感器;采用NI 6221 PCI 数据采集卡;采用NI公司的便携式信号调理模块SCC 68底座和SCC SG24。
2 数据采集的实现
2.1 生产数据采集的实现
(1)因PLC容量有限,需将大量的生产数据实时传递到公司的主控系统(AMS)中。通过直接数据链接服务器DDL,数据由网络信息系统采集,以XML事件报文的形式将信息储存到服务器的生产设备信息数据库中,在分布式计算机中以图形方式显示。
为对现场运行过程进行实时监视,需将重要的生产信息及时传输到现场监视屏幕中,屏幕大多安装在装配线醒目处。监视系统的开发环境为VB.net,运用MSComm(Microsoft Communications Control)实现PLC与PC的串口通信从而对生产过程中主要生产数据进行监视,使PLC与监视系统直接通信。
(2)手动数据通过安装在工位上的按钮盒和计件按钮来收集。I7060和I7520模块在使用之前必须先设置好模块地址、波特率等参数,用于区别来自不同工位的信号。地址的设置主要是运用泓格提供的DCON Utility 软件,实现时要在VB.net中添加相应的端口控件,而在VB6环境中则不需要。在VB.net中对该控件的初始化如下所述:
Com端口通信初始化:
MSComm1.CommPort = 1 //端口号
MSComm1.PortOpen = True //开启端口
MSComm1.Settings = "115200,n,8,1" //设置速率
MSComml.CommPort =2 //设定端口号为2
If MSComml.PortOpen = False Then
MSComm1.Settings = "9600,n,8,1" //波特率、无校验、
数据位数,停止位
MSComm1.PortOpen = True //打开串口
End if
MSComm1.OutBufferCount = 0 //清空发送缓冲区
MSComm1.InBufferCount = 0 //清空接收缓冲区
在程序的执行过程中须设置定时器来实时扫描I7000模块,判断其端口的信号变化情况,若前后两次扫描得到的信号不同,则说明工位上按钮的某个信号被触发,通信程序需更新这些信号并实时将最新数据传递给监视系统。VB.net中的通信程序流程如图2所示。主要分三块进行程序的编写:扫描Button Box信号、设置报警灯状态、扫描Counter信号。
2.2 设备运行数据采集的实现
压机装配站的核心功能部件是DIGIFORCE 9310测压仪和L40 PLC,在改进后的系统中采用LabVIEW编程的方式来实现这两个功能。
压机装配站中,要监控压力和位移两个物理量。DIGIFORCE 9310以相同的采样率将位移传感器和压力传感器所转换的电压值以数组X[i],Y[i]形式成对储存到内部存储器中,并自动生成一个测量函数y=f(x),以曲线形式显示出来,然后采用评估窗口的方法对测量结果进行评估。针对所有的曲线,DIGIFORCE 9310提供了三类不同的窗口技术和Envelope评估技术。如果合格,仪器输出一个逻辑“正”;如果不合格,仪器输出一个逻辑“负”。如图3和图4所示。
L40 PLC与DIGIFORCE 9310通过Profibus相连接,当DIGIFORCE 9310对曲线进行判别之后,会将判别结果发送到PLC中,PLC会做出反应输出相应的信号。
采用LabVIEW开发算法,可将DIGIFORCE 9310的三种窗口综合起来一起考虑。无论是哪种窗口,其关键的评估要素均有两点:(1)搜索曲线到窗口的入口、出口;(2)对出口、入口的个数进行限制。
图5是用LabVIEW实现的Thread-in窗口的曲线图。
在LabVIEW中实现Envelope技术可以按照下面的步骤进行:
(1) 采集传感器数据;
(2) 将数据在显示器中转换成曲线;
(3) 对曲线进行取舍,去除奇异曲线;
(4) 完成N次无奇异曲线测试,形成曲线簇;
(5) 根据曲线簇,确定“Envelope”的上下边缘曲线,根据测量规范,确定“Envelope”的左右边缘直线(x=x1,x =x2)。
将功能软件化到PC机的LabVIEW程序中,不仅降低硬件成本,而且所有的装配站可以共用一个LabVIEW程序,而且程序具有良好的可移植性,从而降低了成本。
本文实现了PLC数据与服务器的通信,并通过MSCOMM控件实现了PLC生产数据与监视系统的通信;通过I7000系列模块,设计了外部硬件信号的采集及通信方法,实现了手动数据的采集;通过对压机信号的采集与分析,用LabVIEW的软件方法模拟了实际的窗口曲线图,将硬件软件化,具有良好的移植性,降低了设备成本,最终实现了对设备数据的采集。设计了友好的人机界面,具有良好的数据反馈功能及配置方案。
实践证明,这样的数据采集系统可以有效地优化生产流程、快速响应生产异常,为制造型企业的生产信息化、精益化及生产决策提供有效的技术手段,具有广泛的使用价值及开发前景。
参考文献
[1] 向东.基于CC的工业数据采集系统开发方法研究[D].西安:西北工业大学,2006.
[2] 夏心骏.生产及设备数据自动采集系统通讯技术的研究[D].上海:同济大学,2005:8-12.
[3] 赵政春,邓曙光.基于LabVIEW的数据采集与分析系统[J].计算机与数字工程,2010,38(5):81-83.
[4] 于雷,刘薇娜,吴海红.激光三角位移传感器信号采集系统设计[J].机械设计与制造,2012(5):225-227.
[5] 张芬,杜朋,杨亚非.离散制造企业MES中的生产数据采集实践[J].机械设计与制造,2011(3):245-247.
[6] 吴镇平,李捷辉. 分布式数据采集监控系统的设计与实现[J].齐齐哈尔大学学报,2012,9(5):32-36.