微波EDA网,见证研发工程师的成长!
首页 > 测试测量 > 测试测量技术文库 > 基于RTU油井远程测控系统的数据采集与传输层软件设

基于RTU油井远程测控系统的数据采集与传输层软件设

时间:05-30 来源:互联网 点击:

,然后实现ADU数据到PDU数据的处理。
3.2.3 系统软件的实现
系统上电后,首先进行初始化操作,主要包括设置串口、定时器等内容,并读取EEPROM中的配置信息,对RTU进行配置,包括主从工作模式选择、IP地址设置、轮询的通信方式选择、传感器的开关状态、继电器输出状态等。若处于主站状态,还可以获取从站配置信息并配置从站,配置成功后,主站开始对各从站进行扫描,并对从站报文进行处理;每扫描完一个从站,主站就对轮询到的数据进行存储;在扫描从站的同时,如果主站传感器和外部继电器处于开状态,会同时采集模拟通道和数字通道的数据并控制外部继电器,采集到的数据存于相应寄存器中,等待上位机请求命令,按照Modbus协议将相应数据打包,并上传到上位机。若处于从站,采集模拟通道和数字通道的数据并控制外部继电器,采集到的数据存于相应寄存器中,并等待RTU主站轮询命令,当轮询到该从站时,按Modbus协议打包数据并发送到RTU主站。不管该RTU是主站还是从站,其TCP/IP的服务器程序一直等待系统配置软件的配置信息,当收到配置信息后,将数据存入EEPROM并复位系统程序,整个系统设计流程图如图6所示。

从图6中可以同时看到Modbus/RTU和Modbus/TCP的从站处理函数,在实际应用中,RTU处于Modbus/RTU主站时,其Modbus/RTU从站的
处理任务不运行,Modbus/TCP从站的处理任务运行,该状态下RTU可用于图1中井场1的RTU主站和井场2的RTU两种情况;处于Modbus/RTU从站时,该状态下RTU可用于图1中井场1的从站情况,以太网服务器任务只等待配置信息。

4 测试
本系统的测试采用了第三方的Modbus测试工具Modbus Poll V4.3.3、Modbus Slave V4.3.1和实验室自主开发的配置软件。
4.1 轮询测试
利用系统配置软件的界面如图7所示,设置一个RTU主站和两个RTU从站,在一台PC机上运行Modbus Poll程序,模拟Modbus/TCP客户机,通过以太网与RTU主站相连,RTU主从站之间通过无线ZigBee模块(或RS 485模块)相连。串行通信的波特率设置为38 400 b/s,无校验位,停止位为1位。

PC端的Modbus/TCP客户机可向RTU主站发送命令,并读取存于RTU主站输入寄存器的从站数据。当从站的数字输入端接高电平(24 V)时,从Modbus Poll的对应地址可读取到1,图8所示是Modbus/TCP客户机接收到的轮询数据,其中地址500~507为从站1中8通道数字输入端对应的状态值;地址508~515为从站2中8通道数字输入端对应的状态值。经多次测量,均正确无误。

4.2 控制测试
PC端模拟的Modbus/TCP客户机向RTU的保持寄存器写入数据,RTU会将对应寄存器的数据输出到对应的数字输出端口,例如地址100对应数字输出端口0,当对地址100置1时,对应指示灯亮,输出高电平。
4.3 数据采集测试
RTU模拟输入端0接一定频率的正弦波,数字输入端接高电平信号,利用Modbus Poll查询RTU模拟输入端与数字输入端的数据。
图9所示为Modbus/TCP客户机所接收到的采集数据。

RTU采集到数字输入端的脉冲值以及开关状态,地址0~7对应相应通道的脉冲值,地址8~15对应相应通道的开关状态值;地址19为RTU板上的温度传感器的值,当前RTU的温度是24℃;地址20~49为模拟通道0采集到的正弦波信号,之后为其他通道采集到的AD值,每个通道的采样点数和频率可调。

5 结语
在油井远程测控系统数据采集与传输层系统软件设计中,由于采用了μC/OS_II的操作系统平台,可实现Modbus/RTU和Modbus/TCP通信,还可采集各种数字、模拟传感器的数据,并能对外部继电器进行控制,保障了本系统能适用于各种工作环境。此外,还可以根据实际的工作环境,利用系统配置软件进行合理的配置,保证了系统数据采集与传输层工作方式的多样性。经过一段时间的运行,本系统工作稳定、可靠。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top