APP下载

天然气流量远程监控系统设计

2015-01-13孙扬智肖世德孟祥印徐鑫凯

化工自动化及仪表 2015年5期
关键词:通信协议上位串口

孙扬智 肖世德 孟祥印 徐鑫凯

(西南交通大学机械工程学院,成都 610031)

在日常生活和生产过程中,对天然气流量进行实时监控有利于了解天然气在各个时段的使用量分布情况,并有助于天然气管理部门对其整体调控和使用情况进行有效管理。传统的天然气流量监控以人工记录流量表数据为主,辅以简单的电气控制,但面对天然气使用量需求的日益增长,人工监控成本很高,且无法实现流量的远程调控和生产数据的集中管理[1]。为了对天然气进行实时监控和智能管理,可利用无线传输技术实现流量数据的实时收发,同时保障上位机与下位机的信息交流[2]。笔者设计了基于STM32 F103 RBT6、LabVIEW和Modbus通信协议的天然气流量远程监控系统。

1 系统总体结构①

笔者设计的天然气流量远程监控系统主要分为4个部分:STM32 F103 RBT6数据采集、宏电H7710数据发送、GPRS数据传输和LabVIEW数据显示(图1)。天然气流量远程监控系统由下位机和上位机组成。写有Modbus从站程序的下位机STM32 F103 RBT6芯片通过Sonix2000超声波流量计收集脉冲,将数据送到DTU串口,由GPRS公共无线通信网络进行数据传输。作为上位机的LabVIEW显示平台基于Modbus协议函数从以太网读取数据,实时显示监控情况。上位机在实时监控天然气流量和温度的同时,也对历史数据进行保存和整理,使监控系统更合理、完备、高效。

图1 天然气流量远程监控系统

2 硬件设计

天然气流量远程监控系统硬件部分主要由Sonix2000超声波流量计、STM32、宏电H7710、开关电源(备用)、宏电串口转发工具及报警器等组成(图2),可以实现天然气流量脉冲数据的采集和收发。

图2 远程监控系统硬件结构

宏电H7710利用GPRS/CDMA 1x网络平台实现数据信息的透明传输,同时考虑到各应用部门组网的需要,在网络结构上采用虚拟数据专用网,特别适用于中心对多点、点多分散的中小数据量传输。宏电H7710具备RS-232/422/485或TTL电平接口,高性能、工业级、外置式,适用于恶劣环境中的各种工业监控、交通管理及气象预报等场合。

STM32系列是为基于高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3内核。在本设计中,芯片通过Modbus RTU通信协议从流量计中读取脉冲数据,数据存储在Holding Registers里,上位机只需从Holding Registers里有效地读取数据。芯片的参数设置为:波特率57 600Bd,8个数据位,1个停止位,无校验位。

3 软件设计

3.1 LabVIEW显示界面

LabVIEW是由美国NI 公司推出的一种通用虚拟仪器开发软件,它包含了丰富的功能函数库和完备的总线设备驱动程序,基于图形(Graphics)的编程方式是其最大的特点。LabVIEW采用了框图而非传统文本方式的编程方法,它集成了GPIB、VXI、RS-232、RS-485 协议的硬件和数据采集卡通信的全部功能[3,4]。

LabVIEW由前面板和程序框图两个主要部分构成,前面板是面向用户的显示界面和应用平台,便于用户的直接操作和阅读(图3);而程序框图是编写程序的后台,它保障了前面板功能的实现,其中,程序设计是程序框图的主要构成,是实现上位机与下位机通信的核心。

图3 LabVIEW的前面板显示

3.2 Modbus函数

NI Modbus函数库是NI公司设计的专门针对Modbus协议进行数据传输的函数库,它是LabVIEW平台控制串口及其他仪器的标准I/O应用程序接口(API)[5]。其中,本系统中上位机程序主要运用到了Modbus串口初始化函数(MB Serial Init.vi)和Modbus串行主查询读取Holding Registers函数(MB Serial Master Query Read Holding Registers (poly).vi)。

MB Serial Init.vi函数如图4所示,该函数初始化被VISA资源名所定义的串口,通过VISA资源名(VISA resource name)输入通道连接串口获取资源。Mode是用来选择所使用的Modbus类型,在本系统中笔者采用RTU方式。

图4 Modbus串口初始化函数

为了与下位机保持一致,便于成功收发数据,MB Serial Init.vi参数设置如下:

波特率(Baud Rate) 57 600Bd

奇偶检验(Parity) None

流量控制(Flow Control) None

超时(Timeout) 10 000

MB Serial Master Query Read Holding Registers(poly).vi函数如图5所示。主站使用MB Serial Master Query Read Holding Registers函数来读取从站Holding Register里的资源和数据。串口参数(Serial Parameters)设置成RTU mode;Quantity是指从从站中读取的Holding Register数目,这里设置成8;起始地址(Starting Address)为0,其余参数都是默认值。

图5 Modbus串行主查询读取 Holding Registers函数

3.3 LabVIEW程序设计

3.3.1收集与显示数据

基于Modbus通信协议的LabVIEW上位机实现数据收集和显示的过程如下(图6):

a. 运用MB Serial Init.vi函数初始化串口,通过VISA资源名节点设置并连接用户需要设定的串口,再按照下位机的要求设置串口初始化函数的各项参数;

b. 连接MB Serial Master Query Read Holding Registers (poly).vi函数,从Holding Registers里读取数据;

c. 把读取的数据以浮点数的形式显示出来,并绘制成波形图表呈现于前面板,用while循环不断读取数据,实时动态显示;

d. 增加复位的条件语句,当用户需要复位时,系统程序可以实现复位清零;

e. 用VISA关闭函数来关闭VISA资源,清空内存,结束程序,退出系统。

图6 LabVIEW实现数据收集和显示的程序流程

3.3.2保存和记录数据

TDMS(Technical Data Management Streaming)文件是NI主推的一种二进制记录文件,它兼顾了高速、易存取及方便等多种优势,能够在NI的各种数据分析或挖掘软件之间进行无缝交互,也能够提供一系列API函数供其他应用程序调用。TDMS文件的逻辑结构分为文件(File)、通道组(Channel Groups)和通道(Channels),每一个层次都可以附加特定的属性[6],它是保存实验数据时经常使用的函数。历史记录可以更方便地对天然气流量数据进行分析和整理。实现数据保存和记录的过程为:

a. 用TDMS Open函数打开或新建保存文件,在程序中设置文件路径和操作方式(open or create);

b. 连接TDMS Write函数,向文件中写入数据,设置组名输入和通道名输入,保存实验时间和测得的数据,加上while循环可以实现连续写入操作;

c. 用TDMS关闭函数关闭资源,完成数据的保存和记录;

d. 当用户需查看历史记录时,点击前面板历史记录按钮,TDMS查看器即可查看已保存的历史记录。

3.3.3登录界面

登录界面实现用户登录、系统退出及系统注销等功能。只有正确登录后才能进入系统,而且不同的用户组(如管理员组和用户组)进入系统后拥有不同的操作权限。登录界面的程序框图如图7所示。

图7 登录界面程序框图

4 结束语

天然气流量远程监控系统在LabVIEW上位机平台上成功监测到了远程地区的天然气流量分布情况。利用先进的NI虚拟仪器技术、GPRS无线传输方式和 Modbus 通信协议,提高了远程监控系统的自动化程度,避免了操作人员现场检测带来的问题。在实际运行中,LabVIEW人机界面交互性能良好,系统操作简单方便,运行可靠,进一步提高了天然气流量远程监控的高效性。

[1] 唐波,孟祥印,唐磊. 基于PLC与WinCC的天然气调压站监控系统[J]. 化工自动化及仪表,2013,40(10):1281~1284.

[2] 杜向党,巩静静,赵喜锋,等. 基于GPRS 和LabVIEW 的山区水厂远程监控系统设计[J]. 测控技术,2012,31(2):64~67.

[3] 朱伟伟,李菊芳,梁美玉,等. 基于 LabVIEW 与 Modbus 通信协议的煤矿通风机性能监测系统[J]. 矿山机械,2010,38(15):37~39.

[4] 郭会军,张建丰,王志林,等.基于 LabVIEW 和ARM 处理器的大型称重式蒸渗仪测控系统[J]. 农业工程学报,2013,29(16):134~141.

[5] 谢启,顾启民,涂水林,等.基于LabVIEW的Modbus RTU 通信协议的实现[J]. 煤矿机械,2006,27(12):95~97.

[6] 沈文轩,黄新辉,黄志坚. 基于Modbus 协议的LabVIEW 在溢流阀测试中的应用[J]. 机床与液压,2013,41(19):93~96.

猜你喜欢

通信协议上位串口
浅谈AB PLC串口跟RFID传感器的通讯应用
特斯拉 风云之老阿姨上位
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
基于DMX512通信协议的多路转发器设计与研究
基于NS-3的PLC多频通信协议仿真平台设计与实现
数字电源内部数据传输的串口通信方法实现
USB接口的多串口数据并行接收方法探索
串口技术的实物调试和虚拟仿真联合教学模式
以新思路促推现代农业上位