基于LabVIEW的装卸料机运行数据采集系统设计

2022-11-24 05:08何志军
自动化仪表 2022年11期
关键词:队列故障功能

袁 骏,张 鹏,何志军

(中国核电工程有限公司,北京 100840)

0 引言

装卸料机是压水堆核电站燃料操作与贮存系统的大型关键设备,用于反应堆核燃料组件的装料和换料[1]。它的连续、可靠运行将直接影响核电站的经济效益。随着国产自主研发核电站全自动数控装卸料机的投入使用[2],设备运行状况的监测和设备性能的优化已成为科研人员的主要研究方向。无论是对装卸料机进行监测还是优化,都需要在较长时间的运行调试中获得有价值的试验数据,以便从中分析出设备的问题及出现问题的原因。因此,装卸料机运行数据采集具有重要意义。

国产装卸料机目前缺少专用于运行数据采集的系统,同时国外核电站装卸料机研究机构对于运行数据相关的研究成果始终处于保密状态[3]。鉴于装卸料机运行数据多、信号类型多、存储要求高、数据后处理复杂等特点[4],采集系统须具有多通道实时同步采集、实时存储等功能。

针对上述需求,本文基于实验室虚拟仪器工程平台(laboratory virtual instrument engineering workbench,LabVIEW)软件[5],从软硬件平台的选择、数据存储文件类型、软件编程实现方法等方面入手,设计了一套多通道、大数据、高实时性、快速存储和易于查询的数据采集系统。

1 系统软硬件平台

1.1 系统软件平台

本文设计的装卸料机运行数据采集系统以虚拟仪器领域使用较为广泛的LabVIEW作为编程工具。LabVIEW是1种工业标准图形化编程工具,具有数据采集与分析、信号发生与处理、输入输出控制等功能[6-7]。其特点是用数据流流程图代替文本语言编程,可任意构造自己的仪器面板而无需进行繁琐的计算机程序代码编写,从而大大简化程序的设计过程。在LabVIEW中开发的程序被称为虚拟仪器(virtual instrument,VI),包含前面板、程序框图以及图标3部分[8-9]。其中,前面板是图形化用户界面。该界面上有交互式的输入和输出两类控件,用于数据输入和观察量输出的设置;程序框图是用于实现VI逻辑功能的图形化源代码;图标/连线端口用于将程序定义为子程序,以便在其他程序中调用。

1.2 系统硬件平台

根据装卸料机运行时产生的数据,平台需对轴的运动信号、编码器信号、载荷称重信号、报警信号、状态信号和指令信号进行实时采集和存储。由以太网控制自动化技术(Ethernet control automation technology,EtherCAT)现场总线串联组成采集回路,相关信号由输入/输出(input/output,I/O)模块和伺服驱动器通过该采集回路传递至控制器。数据采集系统运行在控制器内的实时系统,并接收通过以上采集回路传递来的数据,最终在上位机内实现数据的存储、分析和查询。数据采集系统硬件组态如图1所示。

图1 数据采集系统硬件组态图

2 数据存储文件类型

核电站大修换料期间,一般装卸料机要连续运行一周。因此,确保运行数据的可靠、便捷、有序、快速和实时存储,是软件设计的重要环节。

针对运行数据需求,存储文件类型应具备以下特点。

①文件写入数据速度快,向文件追加写入数据速度快。

②写文件速度与文件大小无关。

③文件体积适中,须满足上位机硬盘存储空间要求,数据组织紧凑有序。

通过对比LabVIEW编程工具上支持的各种文件类型,数据存储文件类型分类如表1所示。

表1 数据存储文件类型分类

综合比较,本文设计系统选择美国国家仪器有限公司(national instrument,NI)主推的技术数据管理流 (technical data management stream,TDMS)数据存储文件格式。TDMS采用二进制格式进行存储。其优势是文件体积相对较小,读写速度较快。此外,TDMS文件有3层结构[11],分别为文件、组和通道。每个文件可以有多个组。每个组可以有多个通道。在每个层次上都可以定义一些属性来添加若干附件信息。在查询时,可以通过这些附件信息来查询所需要的数据。

3 系统软件设计

设计过程采用了模块化的设计思路。首先,根据装卸料机的总体需求,将系统划分为3个功能模块,分别为监测数据采集、故障报警数据采集和异常事件数据采集。接着,根据采集到的数据内容,对数据的各逻辑层分别命名和定义属性。当需要添加新的功能时,只需将新的功能加入到功能模块中即可。这可以提高系统的开放性。

此外,在设计过程中,为了避免采集速度与存储速度不匹配而造成的数据被覆盖或丢失,本文采用了队列的数据传递方法[12],实现了在多个条件结构体中的数据采集与存储。队列按照先进先出(first in first out,FIFO)的方式进行数据传递。 队列的缓冲区可以暂存未被TDMS文件写入的数据。这样就不会造成数据丢失。

3.1 监测数据采集功能

装卸料机运行数据采集系统的监测数据采集功能界面,由数据信息输入区、监控数据选择区、操作区和实时采集信号显示区4部分组成。界面左侧是数据信息输入区,包括监测人员、数据监测名称、采样频率、标签、注释和说明等信息。界面右侧是监控数据选择区,用户可以根据监测需求任意选取需要监测的数据。数据被分门别类地放置在选项卡的不同区域内,易于查找。目前设计的装卸料机监控数据为52个。界面中部是操作区。用户可以启动、停止采集数据和查看数据文件,并在操作区设置采集数据实时时间。界面下方是实时采集信号显示区,可以显示实时的采集数据。监测数据采集功能采集到的数据文件按照不同的监测名称顺序排列。每组文件可以记录不同组合的数据通道。

3.2 故障报警数据采集功能

装卸料机运行时如发生停机故障,操作人员以往只能通过查看程序或电控柜电子器件状态作故障分析,而没有设备的相关数据。因此,数据采集系统设计了故障报警数据采集功能。

首先,对装卸料机的停机故障进行梳理,按设备组成共分为26个故障。停机故障分类如表2所示。

表2 停机故障分类

接着,对每个停机故障需要监测的数据进行分析。以主提升缆绳断绳故障为例,需在故障发生时刻记录13个通道数据,包括主提升载荷1、主提升载荷2、主提升位置1、主提升位置2、主提升速度、主提升力矩、主提升状态、抓具啮合位置、抓具脱扣位置、联锁旁路、燃料选择轻、燃料选择重和燃料选择自动模式。

装卸料机运行发生停机故障报警时,故障报警数据采集功能将会自动采集该时刻的相关通道数据。目前,根据装卸料机故障的严重程度确定了故障报警数据采集功能的26个故障及其记录通道。未来,用户还可根据需求增加或删除自动采集故障个数及其记录通道。

3.3 异常事件数据采集功能

装卸料机运行时发生的非停机异常事件需要被用户及时发现。异常事件是指主提升制动器磨损、电视杆制动器磨损、抓具气压低、绝缘电阻异常和浪涌保护异常。因此,本系统设计了异常事件数据采集功能。该功能监测实际运行数值与设定数值的差值。当差值超过异常范围时,该功能将会自动采集异常事件相关通道的数据,直至差值正常或用户停止采集,并在界面中显示该事件的时间标志和说明信息,使用户及时掌握设备运行工况。

4 设计验证

出于验证装卸料机运行数据采集系统的功能、队列的数据传递方法和TDMS文件特点等方面考虑,本文设计了装卸料机运行数据采集系统设计验证平台,并进行了多组试验。

装卸料机运行数据采集系统设计验证平台由上位机、下位机、I/O模块、伺服驱动器等硬件组成,以EtherCAT现场总线为通信方式。该平台将驱动器的位置反馈、速度反馈、力矩反馈、状态反馈信号和编码器信号分别接入数据采集通道,利用装卸料机运行数据采集系统监测数据采集功能界面进行设计验证操作。该平台与实际装卸料机相比,只是执行机构和传感器数量有差异。所采用的技术手段和设计功能二者相比无差异,验证结果可以用于指导装卸料机的研发工作。

4.1 多通道设计验证试验

本试验分别从单通道采集到4通道同时采集数据,共进行4组测试。采样频率设定为10 Hz,即数据读写时间为0.1 s,采集时间为180 s。此外,对4组测试数据进行了统计,包括文件大小、存储速率、实际每通道采样个数和误差率。多通道设计验证试验数据统计如表3所示。

表3 多通道设计验证试验数据统计表

4.2 队列方法设计验证试验

队列方法设计验证试验通过5个通道同时采集数据,采集时间均为180 s,分别利用队列方法和直接采集数据的方式,采样时间选取0.30 s、0.20 s、0.10 s、0.05 s和0.01 s,共进行了10组试验。对10组试验数据进行统计,包括理论每通道采集数据个数、直接采集存储数据个数、队列方法采集存储数据个数。队列方法设计验证试验数据统计如表4所示。

表4 队列方法设计验证试验数据统计表

4.3 设计验证结论

经以上若干组设计验证试验,可分析得出以下结论。

①在役核电站装卸料机最大运行速度为0.2 m/s,因此运行数据采样时间选取为0.1 s,可以满足装卸料机对运行数据采集实时性的要求。多通道设计验证试验以0.1 s为采样时间。试验结果表明,采集误差率不超过1.50%。队列方法设计验证试验以0.1 s为采样时间时,试验结果表明采集误差率不超过1.10%。以上数据的采集误差率满足核电站装卸料机要求。装卸料机运行数据采集系统可以完成实时采集数据,以及实时存储数据、查询数据文件等功能。

②以装卸料机一个换料周期为例,结合在役核电站装卸料机使用频率,设定采集时间为7 d(604 800 s),采集通道为52个,每通道的存储速率为1 KB/s。据此推算,将采集时间、采集通道数量、存储速率相乘,可估算出理论上会生成30 GB数量级的数据存储文件。该文件大小合适,主流上位机硬盘存储空间均可满足装卸料机换料周期内连续满通道采集数据的要求。

③采用队列的数据传递方法,按照FIFO的方式进行数据传递,提高了存储数据个数,在一定程度上避免了数据的丢失。

④采集数据误差率随采样时间缩短而变大,因此数据采集时应在满足工艺和设备需求的同时选择合适的采样时间。

5 结论

本文以LabVIEW为编程工具,设计开发了装卸料机运行数据采集系统。该系统实现了监测数据采集功能、故障报警数据采集功能和异常事件数据采集功能,采用队列的数据传递方法保证了数据的完整性,且采用了TDMS数据存储文件格式以加快文件存储速度。该系统可以为装卸料机的运行调试和设计优化提供完整的大数据,弥补了现有国内装卸料机缺少专门的运行数据采集系统的不足,具有广阔的工程应用前景和良好的经济效益。

猜你喜欢
队列故障功能
99Tcm-MIBI显像在甲状旁腺功能亢进术前诊断中的应用价值
基层弄虚作假的“新功能取向”
把党史的功能作用发挥得更加充分有效
队列队形体育教案
队列里的小秘密
基于多队列切换的SDN拥塞控制*
奔驰S级香氛功能介绍
故障一点通
在队列里
奔驰R320车ABS、ESP故障灯异常点亮