掌桥专利:专业的专利平台
掌桥专利
首页

一种基于单对以太网的远程数据采集系统

文献发布时间:2023-06-19 11:52:33


一种基于单对以太网的远程数据采集系统

技术领域

本发明涉及设备数据采集技术,尤其是涉及一种基于单对以太网的远程数据采集系统。

背景技术

工业企业数字化转型、智能制造、工业物联网(IIoT)等大趋势正在推动工业自动化和智能工厂在有线连接方面推出新标准和技术。由于工业现场复杂生产过程对于现场数据采集与传输的要求很高,现场数据采集与传输装置必须稳定、可靠、高效地采集和传输各类生产设备的运行物理量。现有的现场装置大多是通过模数采集模块配合RS485通信接口进行数据采集,只能选用Modbus或者CAN等一个协议进行数据传输,而各个设备的协议又杂乱不同,由此现场需要大量的采集装置和设备进行适配,导致场地布线复杂、适配兼容性差且数据传输速率低下。

发明内容

本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于单对以太网的远程数据采集系统。

本发明的目的可以通过以下技术方案来实现:

一种基于单对以太网的远程数据采集系统,包括远程数据采集装置和数据监控装置,其中:

所述远程数据采集装置包括依次连接的数据采集模块、主控模块和单对以太网通信模块;所述主控模块包括ARM主控芯片,以及连接ARM主控芯片的存储器、时钟系统、电源单元、显示屏、串口和开关单元,所述ARM主控芯片包括数模转换单元和MAC单元;所述数据采集模块包括依次连接的信号预处理单元和模数通道拓展单元,所述模数通道拓展单元连接ARM主控芯片的数模转换单元;所述单对以太网通信模块包括单对以太网PHY芯片,所述单对以太网PHY芯片连接ARM主控芯片的MAC单元;

所述数据监控装置包括单对以太网网关模块和监控平台,所述单对以太网网关模块包括RJ45通信接口和单对以太网通信接口,通过RJ45通信接口连接监控平台,通过单对以太网通信接口连接单对以太网通讯模块。

进一步地,所述单对以太网通讯模块还包括常规以太网通信单元,该常规以太网通信单元连接外设的调试装置。

进一步地,所述单对以太网PHY芯片支持RMII接口,并且通过RMII接口连接MAC单元。

进一步地,所述存储器为EMMC存储器。

进一步地,所述显示屏为彩色电容触摸屏。

进一步地,所述单对以太网PHY芯片的型号为ADIN1100。

进一步地,所述数据采集模块的一端设有采集接口。

进一步地,所述的开关单元包括复位按扭和开关按扭。

进一步地,所述远程数据采集装置内置Linux操作软件,该操作软件调用经交叉编译器编译所得到的32位ARM架构libmodbus.so库文件将采集到的数据打包成Modbus/TCP数据包,最后通过单对以太网PHY芯片发送至数据监控装置。

与现有技术相比,本发明具有以下有益效果:

1、本发明设计了全新的远程数据采集装置,集成ARM主控芯片和单对以太网PHY芯片,可以兼容几乎所有的接口协议,且传输效率高,避免了现场大规模的装置设置;同时采用单对以太网所用的传输线可以减轻将近4倍的重量和复杂度,传输距离可达到1000m,从而减少大量的布线成本和布线复杂度。

2、传统的TCP/IP以太网通信应用层协议具有较高的通信速率,而工业场合对于Modbus协议的应用较为广泛,而将二者的融合采用Modbus/TCP协议的通信方式,可以有效提高工业现场数据传输速率。

附图说明

图1为本发明的结构示意图。

图2为本发明Modbus/TCP透传模式的示意图。

图3为本发明的流程示意图。

附图标记:1、远程数据采集装置,11、数据采集模块,111、采集接口,112、信号预处理单元,113、模数通道拓展单元,12、主控模块,121、ARM主控芯片,122、存储器,123、时钟系统,124、电源单元,125、显示屏,126、串口,127、复位按扭,128、开关按扭,13、单对以太网通信模块,131、单对以太网PHY芯片,132、常规以太网通信单元,2、数据监控装置,21、单对以太网网关模块,211、RJ45通信接口,212、单对以太网通信接口,22、监控平台。

具体实施方式

下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。

如图1所示,本实施例提供了一种基于单对以太网的远程数据采集系统,包括远程数据采集装置1和数据监控装置2。远程数据采集装置1和数据监控装置2之间上行数据流和下行数据流的传输通过单对双绞线以Modbus/TCP协议帧稳定、高速传输。

一、远程数据采集装置

远程数据采集装置1包括依次连接的数据采集模块11、主控模块12和单对以太网通信模块13。

主控模块12包括ARM主控芯片121,以及连接ARM主控芯片121的EMMC存储器122、时钟系统123、电源单元124、显示屏125、串口126和开关单元。ARM主控芯片121具体采用的是嵌入式的NXP imx6ull系列ARM7控制芯片,包括数模转换单元和MAC单元,可以实现MAC+PHY的网络通信模式,支持设备树的驱动开发方式,提高开发效率和代码复用性,负责远程I/O(输入/输出)整体运行时序。显示屏125采用彩色电容LCD触摸屏。开关单元包括复位按扭127和开关按扭128,开关按扭128用于显示屏125的唤醒功能,为降低系统的整体功耗,显示屏125会在停止操作后的一段时间内进入息屏状态,如果现场人员需要观察实时采集的数据,可以通过触发开关按扭128对显示屏125进行唤醒。复位按扭127用于异常情况手动复位;时钟系统123为ARM主控芯片121提供时钟;串口126可以用作ARM主控芯片121运行Linux时作为终端调试,也可以作为Modbus/RTU通信协议的预留接口,方便现场以Modbus/RTU协议通信的传感器设备无缝接入,通过单对以太网传输至数据监控装置2。

数据采集模块11包括依次连接的信号预处理单元112和模数通道拓展单元113。ARM主控芯片121自带12bit高精度的数模转换单元(ADC转换器),为节省控制器I/O口资源,采用其中一个通道作为数据采集通道,同时外扩模数通道拓展单元113作为通道扩展。模数通道拓展单元113连接ARM主控芯片121的数模转换单元。数据采集模块11实时采集的数据,在ARM主控芯片121的时序控制下,可以实时显示在显示屏125上,方便现场维护和监控人员调试、检修、数据记录等。远程数据采集装置1的一端设有采集接口111,该采集接口111连接信号预处理单元112,用于对接所采集的现场设备。

单对以太网通讯模块13包括单对以太网PHY芯片131和常规以太网通信单元132。单对以太网PHY芯片131采用ADI公司的ADIN1100芯片。该芯片是可以兼容RMII接口的PHY,控制接口采用MDIO。单对以太网通讯模块13还包括常规以太网通信单元132用于终端调试和文件系统挂载,该常规以太网通信单元132采用SMSC公司的LAN8720A PHY芯片。远程数据采集装置1内置Linux操作软件,由此主控模块12可以控制单对以太网通讯模块13实现两种通讯方式:

常规以太网通信过程:ARM主控芯片121调试阶段没有把内核和根文件系统直接烧写进内存,而是通过网络文件系统共享,将根文件系统和内核镜像文件放在Linux系统指定目录下。启动远程I/O数据采集系统的引导加载程序后,通过该常规以太网单元采用tftp工具下载网络文件系统共享的文件系统和内核镜像文件至指定内存单元,然后启动内核并挂载根文件系统。最后启动多通道采样和单对以太网通信程序。

单对以太网通讯过程:ARM主控芯片121调用经交叉编译器编译所得到的32位ARM架构libmodbus.so库文件将采集到的数据打包成Modbus/TCP数据包,最后通过单对以太网PHY芯片131发送至数据监控装置2,即为在通信协议的应用层调用libmodbus.so库文件将待发送的数据打包成Modbus/TCP协议帧格式,最后通过一对双绞线发送出去。

二、数据监控装置

数据监控装置2包括单对以太网网关模块21和监控平台22。单对以太网网关模块21包括RJ45通信接口211和单对以太网通信接口212,通过RJ45通信接口211连接监控平台22,通过单对以太网通信接口212连接单对以太网通讯模块13。监控平台22一般都是PC机,只支持RJ45接口的常规以太网通信,为接收远程数据采集装置1发送的数据,需要在监控平台22和远程数据采集装置1之间增加一个支持单对以太网接口的网关模块,即为单对以太网网关模块21。

如图2所示,为单对以太网的远程数据采集系统的Modbus/TCP透传模式图,监控平台22作为主站,代表客户机,负责向单对以太网网关模块21发送数据请求,通信协议拟采用Modbus/TCP。网关模块接收到Modbus TCP协议请求帧之后,解码并校验。然后将Modbus/TCP帧通过单对以太网芯片发送出去。远程数据采集装置1接收到Modbus/TCP数据帧,解码并校验、判断自身地址是否是协议帧中的地址,并对相应的功能码执行动作。远程数据采集装置1执行完指定功能码动作后,作出应答响应,将响应数据以Modbus/TCP格式通过单对以太网接口对外发送至网关模块。网关模块收到远程数据采集装置1传送过来的Modbus/TCP数据响应帧,校验后将Modbus/TCP数据帧对外发送至上位机监控平台22。至此,完成一次主站通过网关操作远程数据采集装置1的过程。

本实施例中采用Linux开源操作系统作为软件程序,新版Linux内核是支持设备树的一种系统,故通过设备树初始化系统时钟、引脚电气属性及初始值等、创建节点文件、初始化单对以太网硬件配置等。如图3所示,为单对以太网远程I/O数据采集系统总体工作流程图。首先系统并行执行远程I/O主控初始化和上位监控平台初始化。单对以太网远程I/O数据采集系统对启动系统内核和驱动,并挂载根文件系统。等待系统正常运行后,创建ADC数据采样线程,初始化ADC采样模块。然后判断使用的是否采用单对以太网(SPE)通信方式,并创建相应的通信线程、发送连接上位监控server端服务器请求。上位监控软件目前已经初始化,并处于监听端口并阻塞等待单对以太网远程I/O数据采集系统的连接。如果两者连接失败,远程I/O数据采集系统将各自再次尝试连接。如果连接成功,单对以太网远程I/O数据采集系统将在读线程中监听读取上位监控软件下发的指定通道模拟数据采集,并启动ADC数据采集模块进行模拟量数据采集和存储,然后向远程I/O数据采集系统写线程发送异步消息。远程I/O写线程接收到数据采集成功的消息,通过modbus/TCP库文件将数据打包成modbus/TCP指定帧格式并发送至上位监控平台模块。上位监控模块通过socket读线程接收到单对以太网远程I/O数据采集系统发送过来的数据,进行相应的存储、计算等操作并显示。远程数据采集监控流程将持续执行,直到接收到结束标志。

具体操作步骤如下:

1)烧写uboot(系统引导加载程序),通过uboot启动系统内核,内核启动之后配置网络并挂载根文件系统和加载驱动。

2)创建两个系统线程一个用于ADC通道采用,一个用于单对以太网进行Modbus/TCP帧格式构建和对外通信。在单对以太网正常通信之前需要对单对以太网的MDIO和RMII接口进行初始化,初始化工作中主要是通过MDIO读取PHY芯片的ID号,用于驱动匹配,只有代码中的ID号和读取的ID号匹配的PHY才能和相应的驱动匹配。一旦驱动匹配后,便进一步执行驱动文件中“.probe”函数。在.probe指针指向的“probe()”函数里进行设备的创建和其他相关初始化工作。

3)采用“adcSample_thread_exe()”模拟数据采样函数进行连续采样,采样方式通过“open(fileName,O_RDWR)”函数读取“/dev/in_voltage1_raw”设备节点,采集相应通道的实时数据,并存储在全局变量databuf数组中供通信线程读取。同时,通过“displayLCD(databuf)”将采集到的数据实时显示在TFT触摸屏上。采用“modbusTCPFun_thread_exe()”函数进行通信线程的执行,首先采用“modbus_new_tcp(IP,port)”和“modbus_connect”等函数与指定网关的端口号建立TCP通信,最后采用“modbus_write_registers()”函数将ADC线程中所采集到的数据通过单对以太网接口发送出去。

4)每次通信结束后将存放数据的buffer清空,释放读写锁,ADC加锁该buffer再次读取实时数据。

以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

相关技术
  • 一种基于单对以太网的远程数据采集系统
  • 一种基于以太网的电机振动数据采集系统
技术分类

06120113084950