CN103792928B - 一种基于Modbus的工业现场数据采集分析系统 - Google Patents
一种基于Modbus的工业现场数据采集分析系统 Download PDFInfo
- Publication number
- CN103792928B CN103792928B CN201410062707.5A CN201410062707A CN103792928B CN 103792928 B CN103792928 B CN 103792928B CN 201410062707 A CN201410062707 A CN 201410062707A CN 103792928 B CN103792928 B CN 103792928B
- Authority
- CN
- China
- Prior art keywords
- modbus
- data
- analysis
- technological parameter
- data acquisition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Computer And Data Communications (AREA)
Abstract
本发明涉及一种基于Modbus的工业现场数据采集分析系统,属于Modbus总线的数据采集与分析系统技术领域,该系统以嵌入式平台为核心,通过串行链路与工业生产现场PLC、HMI、I/O、智能仪表等Modbus设备及网络连接,按一定时间周期设定的数据采集周期查询相关工艺生产参数,并进行采集、存储与分析。同时,该平台通过TCP/IP与上位机建立连接,动态响应ModbusTCP实时请求及工艺参数数据文件上传请求,实现远程的工业现场数据查询、监控和信息化管理。
Description
技术领域
本发明涉及一种基于工业现场总线的数据采集分析系统及其分析方法,尤其是涉及Modbus总线的数据采集与分析系统。
背景技术
Modbus是一位于开放式通信系统互联参考模型第7层的应用层通信协议,提供连接至不同总线或网络的设备间客户机/服务器通信,主要用于TCP/IP和串行链路传输网络。同时,Modbus也是一请求/响应型协议,通过功能码提供相应服务。
由于其公开发表,帧格式紧凑,支持多种传输网络,易于开发等特点,Modbus协议在工业自动化生产领域已得到广泛应用。
但是,Modbus设备及网络仅支持工业现场数据的实时读写,无法提供对数据对象本身的描述、存储、分析,不能满足工业生产的信息化管理。
同时,Modbus是在1979年为可编程控制器通信开发,不支持大型数据对象,并导致目前工业现场大多数设备仅支持串行链路通信,不能满足远程网络监控与数据信息化管理。
专利方面,通过国家知识产权局的专利检索平台发现,Modbus协议的相关研究主要集中于Modbus转其它协议的网关实现以及针对Modbus帧本身的分析系统,目前未发现针对Modbus设备及网络内的数据对象的采集、存储与分析的新发明与装置。
而目前,基于Modbus网络的工业生产现场的调试、运行、预警等环节都对基于Modbus的工业现场数据采集分析系统有着广泛而迫切的需求。
发明内容
本发明针对上述问题的不足,提出一种基于Modbus的工业现场数据采集分析系统,该系统基于ARM嵌入式平台和嵌入式操作系统,在实现Modbus协议栈的基础上,一方面通过自主设计的采集分析策略库实现工业生产现场的数据管理需求;另一方面,通过TCP/IP及ModbusTCP协议实现与上位机的数据通信,从而满足远程的工业现场数据查询、监控与信息化管理。
本发明为解决上述技术问题提出的技术方案是:一种基于Modbus的工业现场数据采集分析系统,包括上位机、嵌入式平台、Modbus设备以及网络;所述嵌入式平台通过RS232或RS485总线与Modbus设备或网络连接,同时所述嵌入式平台按数据采集周期对Modbus设备或网络中的工艺参数进行查询读取,存储于嵌入式平台内,并通过嵌入式平台进行分析和管理;另外所述嵌入式平台还通过以太网接口接入本地局域网或外部因特网中,通过响应上位机请求,实现工业自动化生产的远程信息化管理和监控。
优选的:所述上位机内设置有Wince嵌入式操作系统,所述Wince嵌入式操作系统用于管理整个嵌入式平台的硬件资源和框架,并提供图形用户界面;所述嵌入式平台包括数据采集分析系统底板和核心板,其中,所述数据采集分析系统底板通过系统总线与核心板相连,且数据采集分析系统底板上设置有第一串口、第二串口、第三串口以及以太网口,所述第一串口、第二串口、第三串口以及以太网口均与数据采集分析系统底板的系统总线相连;同时所述第一串口与Modbus设备相连,用于完成Modbus设备在串行链路上的数据通信;所述第二串口与工业现场上位机相连,用于完成对嵌入式平台的运行调试及数据通信;所述第三串口与工业现场的Modbus设备或网络相连,完成Modbus设备或网络在串行链路上的数据通信;而所述以太网口经局域网实现与上位机之间的TCP/IP通信,用于技术人员通过上位机对工业现场工艺参数进行信息化管理;所述核心板包括中央处理器、内存、NandFlash和NorFlash,所述中央处理器、内存、NandFlash和NorFlash分别与数据采集分析系统底板的系统总线相连。
优选的:所述NandFlash内设置有Modbus协议栈、工艺参数配置文件、本地数据存储区、数据采集软件模块、数据分析软件模块和TCP/IP通信软件模块,其中:所述Modbus协议栈用于通过与Wince操作系统和应用层软件模块相连对Modbus通信数据帧提供编码和解码服务;所述工艺参数配置文件,用于建立工艺参数所在Modbus设备或网络地址与所述本地数据存储区地址的映射关系;所述本地数据存储区用于将不同数据类型的工艺参数进行分类存储;且单个工艺参数在任意时刻存储的数据帧包括工艺参数值和时间戳;所述数据采集软件模块用于通过Modbus协议栈对Modbus数据通信进行请求和响应,并将工艺参数的相关数据存入本地数据存储区;所述数据分析软件模块包括自带分析策略模块或用户自定义分析策略模块,采用轮询模式,通过利用工艺参数配置文件和本地数据存储区调入相应工艺参数数据,通过系统自带分析策略或用户自定义分析策略对工艺参数进行自动或手动分析;所述TCP/IP通信软件模块,用于响应上位机请求,并与之进行数据通信。
优选的:所述数据采集软件模块首先在NandFlash相应位置找到并打开工艺参数配置文件,根据工业现场工艺参数采集分析需求进行更新与保存;其次打开并解析工艺参数配置文件,按照Modbus请求队列长度最小原则生成Modbus请求队列,所述Modbus请求队列长度最小原则是指根据Modbus设备地址、数据类型和地址顺序将同一设备同一数据类型地址连续的Modbus数据请求进行合并,以最大限度减小Modbus请求队列长度;然后按照Modbus请求队列顺序,以数据采集周期进行发送,并依次对Modbus设备或网络的响应进行接收;最后对接收的Modbus响应进行解析,并根据工艺参数配置文件查询对应的工艺参数名称,然后根据其映射关系将工艺参数值和采集时间戳保存至相应存储文件中。
优选的:所述轮询模式是在一数据分析周期内对所述工艺参数配置文件中的各参数依次进行查询和分析;所述分析策略包括数值范围分析策略、数值波动分析策略以及数值变化率分析策略中的一个及以上;所述用户自定义分析策略模块用于用户通过人机交互界面针对工艺参数自定义分析策略并加以应用,所述自带分析策略模块用于所述数据分析软件模块对各工艺参数自动使用对应分析策略进行连续的运算和分析。
优选的:所述上位机请求包括ModbusTCP请求和数据文件上传请求,其中:ModbusTCP请求,用于对工业现场Modbus设备或网络进行基于ModbusTCP的数据读写请求,所述TCP/IP通信软件模块对请求进行接收与解析,然后生成基于Modbus串行链路的数据读写请求并发送至相应Modbus设备或网络,最后通过解析来自Modbus设备或网络的响应生成ModbusTCP响应数据帧并发送至上位机;数据文件上传请求,用于将所述数据采集软件模块的工艺参数配置文件和数据存储文件通过TCP/IP上传至上位机内存中。
优选的:所述第一串口采用SP3232EEN芯片和DB9数据接口,实现RS232串行通信;所述第二串口采用SP3232EEN芯片和DB9数据接口,实现RS232串行通信;所述第三串口采用MAX485芯片和DB9数据接口,实现RS485串行通信;所述以太网口为10/100M自适应以太网口,所述以太网接口采用芯片DM9000实现TCP/IP通信。
优选的:所述工艺参数包括工艺参数名称、Modbus设备地址、Modbus数据类型、Modbus寄存器地址、头指针和尾指针值;所述本地数据存储区对每一个工艺参数分配一地址连续的存储空间,通过工艺参数配置文件中工艺参数的头指针和尾指针值可以方便地进行数据的存储与读取;所述工艺参数配置数据域依次根据工艺参数名称、Modbus设备地址、Modbus数据类型、Modbus寄存器地址、本地参数存储类型、头指针、尾指针所占的字节数为12Bytes、1Byte、1Byte、2Byte、1Byte、2Byte、2Byte。
优选的:所述本地数据存储区包括BYTE区、WORD区、DWORD区以及FLOAT区4个数据存储文件,所述BYTE区、WORD区、DWORD区以及FLOAT区支持的数据类型分别为bit、Byte或者/和单字节数据、WORD双字节数据、DWORD四字节数据以及32位浮点数。
优选的:所述数据分析软件模块首先打开工艺参数配置文件,读取所有工艺参数,生成一工艺参数数组;其次通过判断是否为手动分析模式,分别进入手动或自动分析模式;在手动分析模式中,首先选取欲分析工艺参数,对所选取工艺参数调用对应分析策略,包括分析策略库中的系统自带分析策略或用户自定义分析策略,通过该分析策略进行运算,判断当前该参数是否正常,若正常,显示分析结果,若不正常,输出报警信息,最后结束该次手动分析;在自动分析模式中,首先启动自动分析定时器,开启该次自动分析周期;在本周期内,按顺序依次选取工艺参数,调用相应分析策略进行运算分析,若正常,显示此工艺参数分析结果,若不正常,输出报警信息,然后结束此参数分析过程,选取下一参数,重复执行上述分析过程;最后,当该次自动分析周期时间到后,终止该次自动分析;当执行完本次手动分析或自动分析周期,开始下一次的Modbus数据分析。
本发明的一种基于Modbus的工业现场数据采集分析系统,相比现有技术,具有以下有益效果:1.利用嵌入式软硬件平台,能够对工业现场各工艺参数在一生产周期内的数据进行采集与分析,实现了基于Modbus的数据采集分析系统。
2.实现了基于TCP/IP和ModbusTCP的工业现场远程信息化管理和监控。
3.基于Modbus的数据采集分析系统的实现有利于工业生产现场的调试与运行,能够迅速查找工业现场各生产环节所出现的问题并分析原因。
附图说明
图1是本系统总体结构示意图;
图2是本系统嵌入式平台的硬件整体结构示意图;
图3是本系统嵌入式平台的软件整体结构示意图;
图4是数据存储文件的存储方法示意图;
图5是Modbus设备或网络工艺参数数据采集线程的流程图;
图6是Modbus设备或网络工艺参数数据分析线程的流程图;
图7是嵌入式平台TCP/IP数据通信线程的流程图。
具体实施方式
附图非限制性地公开了本发明一个优选实施例的结构示意图,以下将结合附图详细地说明本发明的技术方案。
实施例
本实施例的一种基于Modbus的工业现场数据采集分析系统,如图1-7所示,包括上位机、嵌入式平台、Modbus设备以及网络;所述嵌入式平台通过RS232或RS485总线与Modbus设备或网络连接,同时所述嵌入式平台按数据采集周期对Modbus设备或网络中的工艺参数进行查询读取,存储于嵌入式平台内,并通过嵌入式平台进行分析和管理;另外所述嵌入式平台还通过以太网接口接入本地局域网或外部因特网中,通过响应上位机请求,实现工业自动化生产的远程信息化管理和监控。
所述上位机内设置有Wince嵌入式操作系统,所述Wince嵌入式操作系统用于管理整个嵌入式平台的硬件资源和框架,并提供图形用户界面。所述嵌入式平台包括数据采集分析系统底板和核心板,其中,所述数据采集分析系统底板通过系统总线与核心板相连,且数据采集分析系统底板上设置有第一串口、第二串口、第三串口以及以太网口,所述第一串口、第二串口、第三串口以及以太网口均与数据采集分析系统底板的系统总线相连;所述第一串口采用SP3232EEN芯片和DB9数据接口,实现RS232串行通信;所述第二串口采用SP3232EEN芯片和DB9数据接口,实现RS232串行通信;所述第三串口采用MAX485芯片和DB9数据接口,实现RS485串行通信;所述以太网口为10/100M自适应以太网口,所述以太网接口采用芯片DM9000实现TCP/IP通信。同时所述第一串口与与仅支持RS232通信的Modbus设备相连,用于完成Modbus设备在串行链路上的数据通信;所述第二串口通过RS232接口与工业现场上位机相连,用于完成对嵌入式平台的运行调试及数据通信;所述第三串口通过RS485总线与工业现场Modbus设备或网络相连,完成Modbus设备或网络在串行链路上的数据通信;而所述以太网口经局域网实现与上位机之间的TCP/IP通信,用于技术人员通过上位机对工业现场工艺参数进行信息化管理;所述核心板包括中央处理器、内存、NandFlash和NorFlash,所述中央处理器、内存、NandFlash和NorFlash分别与数据采集分析系统底板的系统总线相连。
所述NandFlash内设置有Modbus协议栈、工艺参数配置文件、本地数据存储区、数据采集软件模块、数据分析软件模块和TCP/IP通信软件模块,其中:所述Modbus协议栈用于通过与Wince操作系统和应用层软件模块相连对Modbus通信数据帧提供编码和解码服务;所述工艺参数配置文件,用于建立工艺参数所在Modbus设备或网络地址与所述本地数据存储区地址的映射关系;所述本地数据存储区用于将不同数据类型的工艺参数进行分类存储;且单个工艺参数在任意时刻存储的数据帧包括工艺参数值和时间戳;所述数据采集软件模块用于通过Modbus协议栈对Modbus数据通信进行请求和响应,并将工艺参数的相关数据存入本地数据存储区;所述数据分析软件模块包括自带分析策略模块或用户自定义分析策略模块,采用轮询模式,通过利用工艺参数配置文件和本地数据存储区调入相应工艺参数数据,通过系统自带分析策略或用户自定义分析策略对工艺参数进行自动或手动分析;所述TCP/IP通信软件模块,用于响应上位机请求,并与之进行数据通信。
所述数据采集软件模块首先在NandFlash相应位置找到并打开工艺参数配置文件,根据工业现场工艺参数采集分析需求进行更新与保存;其次打开并解析工艺参数配置文件,按照Modbus请求队列长度最小原则生成Modbus请求队列,所述Modbus请求队列长度最小原则是指根据Modbus设备地址、数据类型和地址顺序将同一设备同一数据类型地址连续的Modbus数据请求进行合并,以最大限度减小Modbus请求队列长度;然后按照Modbus请求队列顺序,以数据采集周期进行发送,并依次对Modbus设备或网络的响应进行接收;最后对接收的Modbus响应进行解析,并根据工艺参数配置文件查询对应的工艺参数名称,然后根据其映射关系将工艺参数值和采集时间戳保存至相应存储文件中。
所述轮询模式是在一数据分析周期内对所述工艺参数配置文件中的各参数依次进行查询和分析;所述分析策略包括数值范围分析策略、数值波动分析策略以及数值变化率分析策略中的一个及以上;所述用户自定义分析策略模块用于用户通过人机交互界面针对工艺参数自定义分析策略并加以应用,所述自带分析策略模块用于所述数据分析软件模块对各工艺参数自动使用对应分析策略进行连续的运算和分析。
所述上位机请求包括ModbusTCP请求和数据文件上传请求,其中:ModbusTCP请求,用于对工业现场Modbus设备或网络进行基于ModbusTCP的数据读写请求,所述TCP/IP通信软件模块对请求进行接收与解析,然后生成基于Modbus串行链路的数据读写请求并发送至相应Modbus设备或网络,最后通过解析来自Modbus设备或网络的响应生成ModbusTCP响应数据帧并发送至上位机;数据文件上传请求,用于将所述数据采集软件模块的工艺参数配置文件和数据存储文件通过TCP/IP上传至上位机内存中。
所述工艺参数包括工艺参数名称、Modbus设备地址、Modbus数据类型、Modbus寄存器地址、头指针和尾指针值;所述本地数据存储区对每一个工艺参数分配一地址连续的存储空间,通过工艺参数配置文件中工艺参数的头指针和尾指针值可以方便地进行数据的存储与读取;所述工艺参数配置数据域依次根据工艺参数名称、Modbus设备地址、Modbus数据类型、Modbus寄存器地址、本地参数存储类型、头指针、尾指针所占的字节数为12Bytes、1Byte、1Byte、2Byte、1Byte、2Byte、2Byte。
所述本地数据存储区包括BYTE区、WORD区、DWORD区以及FLOAT区4个数据存储文件,所述BYTE区、WORD区、DWORD区以及FLOAT区支持的数据类型分别为bit、byte或者/和单字节数据、WORD双字节数据、DWORD四字节数据以及32位浮点数。
所述数据分析软件模块首先打开工艺参数配置文件,读取所有工艺参数,生成一工艺参数数组;其次通过判断是否为手动分析模式,分别进入手动或自动分析模式;在手动分析模式中,首先选取欲分析工艺参数,对所选取工艺参数调用对应分析策略,包括分析策略库中的系统自带分析策略或用户自定义分析策略,通过该分析策略进行运算,判断当前该参数是否正常,若正常,显示分析结果,若不正常,输出报警信息,最后结束该次手动分析;在自动分析模式中,首先启动自动分析定时器,开启该次自动分析周期;在本周期内,按顺序依次选取工艺参数,调用相应分析策略进行运算分析,若正常,显示此工艺参数分析结果,若不正常,输出报警信息,然后结束此参数分析过程,选取下一参数,重复执行上述分析过程;最后,当该次自动分析周期时间到后,终止该次自动分析;当执行完本次手动分析或自动分析周期,开始下一次的Modbus数据分析。
具体的:
所述核心板,包含有S3C2440中央处理器,SDRAM内存,NandFlash以及NorFlash,共同通过接插件接口与所述数据采集分析系统底板的系统总线相连,其中:
NandFlash在掉电情况下保存有Modbus协议栈、工艺参数配置文件、本地数据存储区、数据采集软件模块、数据分析软件模块和TCP/IP通信软件模块,其中:
Modbus协议栈,用于实现Modbus设备及网络各种不同类型数据帧的编码和解码;
工艺参数配置文件,用于建立工艺参数所在Modbus设备或网络地址与所述本地数据存储区地址的映射关系,工艺参数配置数据域如表1所示:
表1
本地数据存储区,根据不同数据类型分为4个数据存储文件,如表2所示,用于将不同数据类型的工艺参数进行分类存储;单个工艺参数在任意时刻存储的数据帧包括工艺参数值和时间戳。
表2
所述数据采集软件模块,通过与Modbus设备或网络的通信采集工业现场相关工艺参数的实时数据并进行有效存储;该数据采集软件模块按下述步骤运行:
步骤(1),在NandFlash相应位置找到并打开工艺参数配置文件,根据工业现场工艺参数采集分析需求进行更新与保存;
步骤(2),打开并解析工艺参数配置文件,按照Modbus请求队列长度最小原则生成Modbus请求队列,所述Modbus请求队列长度最小原则是指根据Modbus设备地址、数据类型和地址顺序将同一设备同一数据类型地址连续的Modbus数据请求进行合并,以最大限度减小Modbus请求队列长度;
步骤(3),按照Modbus请求队列顺序,以数据采集周期进行发送,并依次对Modbus设备或网络的响应进行接收;
步骤(4),对接收的Modbus响应进行解析,并根据工艺参数配置文件查询对应的工艺参数名称,然后根据其映射关系将工艺参数值和采集时间戳保存至相应存储文件中。
所述数据分析软件模块,采用轮询模式,依次对不同的工艺参数使用相对应的分析策略,并具备手动分析和自动分析功能;
所述轮询模式是在一数据分析周期(相对于数据采集周期)内对所述工艺参数配置文件中的各参数依次进行查询和分析;
所述分析策略是系统自带的对工艺参数数据的变化范围、变化率、精度等进行运算分析的方法;
所述手动分析是用户通过人机交互界面针对特定工艺参数自定义分析策略并加以应用;
所述自动分析是所述数据分析软件模块对各工艺参数自动使用对应分析策略进行连续的运算和分析。
所述TCP/IP通信软件模块,用于响应上位机请求,并与之进行数据通信,所述上位机请求包括ModbusTCP请求和数据文件上传请求,其中:
ModbusTCP请求,用于对工业现场Modbus设备或网络进行基于ModbusTCP的数据读写请求,所述TCP/IP通信软件模块对请求进行接收与解析,然后生成基于Modbus串行链路的数据读写请求并发送至相应Modbus设备或网络,最后通过解析来自Modbus设备或网络的响应生成ModbusTCP响应数据帧并发送至上位机;
数据文件上传请求,用于将所述数据采集软件模块的工艺参数配置文件和数据存储文件通过TCP/IP上传至上位机内存中。
图1是本系统总体结构示意图,嵌入式平台一方面通过RS232或RS485总线连接Modbus设备或网络,按数据采集周期对Modbus设备或网络中的工艺参数进行查询读取,存储于相应数据存储区域内,并通过数据分析软件模块进行分析和管理,另一方面,通过以太网接口接入本地局域网或外部因特网中,通过响应上位机的ModbusTCP实时请求和数据文件上传请求,实现工业自动化生产的远程信息化管理和监控。
图2是本系统嵌入式平台的硬件整体结构示意图,本发明实施例的嵌入式平台包括数据采集分析系统底板和核心板,其中,数据采集分析系统底板通过系统总线与核心板相连,并含有3个串口和1个以太网口,第一串口和第二串口在RS232协议下工作,采用芯片SP3232EEN和标准DB9接口实现,第三串口在RS485协议下实现,采用芯片MAX485和标准DB9接口实现,以太网接口采用芯片DM9000实现TCP/IP通信。核心板以中央处理器S3C2440为核心,并包含SDRAM内存H57V2562GTR-60C,NandFlashK9F2G08U0C和NorFlashEN29LV160AB-70TCP。
图3是本系统嵌入式平台的软件整体结构示意图。Wince嵌入式操作系统主要用于管理整个嵌入式平台的硬件资源和框架,并提供图形用户界面。Modbus协议栈通过与Wince操作系统和应用层软件模块相连对Modbus通信数据帧提供编码和解码服务。应用层软件模块包括数据采集、数据分析和TCP/IP通信软件模块。数据采集软件模块通过Modbus协议栈对Modbus数据通信进行请求和响应,并将工艺参数的相关数据存入本地数据存储区。数据分析软件模块利用工艺参数配置文件和数据存储文件调入相应工艺参数数据,通过系统自带分析策略或用户自定义分析策略对特定工艺参数进行自动或手动分析。TCP/IP通信软件模块用于监听上位机请求,并对其ModbusTCP请求和数据文件上传请求进行响应。工艺参数配置文件用于实现工业现场工艺参数对应Modbus设备或网络的Modbus地址与嵌入式平台本地数据存储区地址的映射,满足数据的采集、存储和分析需求。本地数据存储区依据数据类型分为4个数据存储文件,对特定数据类型的工艺参数值进行更新与存储。
图4是数据存储文件的存储方法示意图。数据存储文件对每一个特定工艺参数分配一地址连续的存储空间,通过工艺参数配置文件中特定工艺参数的头指针和尾指针值可以方便地进行数据的存储与读取。
当嵌入式平台上电后,Wince6.0操作系统首先完成整个嵌入式平台系统资源和硬件设备的初始化工作,然后对Modbus协议栈、工艺参数配置文件和本地数据存储区进行初始化,最后依次启动数据采集、数据分析和TCP/IP通信线程,实现数据采集分析系统的自动运行。
图5是Modbus设备或网络工艺参数数据采集线程的流程图。其中,首先打开工艺参数配置文件,对各工艺参数依次按照键值Modbus设备地址、Modbus数据类型和Modbus寄存器地址进行排序,对各工艺参数进行解析,按照Modbus请求队列长度最小原则生成Modbus请求队列。完成Modbus请求队列生成之后,开启Modbus数据采集循环。在一个Modbus数据采集周期中,依次执行Modbus请求队列中的每一条请求,并等待对应的Modbus数据响应。若等待响应超时,则忽略本次请求,否则对响应结果Modbus数据帧进行解析,根据其Modbus地址信息确定对应的工艺参数,然后根据工艺参数对应的本地数据存储地址进行存储与更新。当完成整个Modbus请求队列的执行后,等待数据采集周期结束后开始下一周期数据采集。当运行时间到,结束整个数据采集线程并释放相关系统资源。
图6是Modbus设备或网络工艺参数数据分析线程的流程图。其中,首先打开工艺参数配置文件,读取所有工艺参数,生成一工艺参数数组。然后,通过判断是否为手动分析模式,分别进入手动或自动分析模式。在手动分析模式中,首先选取欲分析工艺参数,对所选取工艺参数调用对应分析策略,包括分析策略库中的系统自带分析策略或用户自定义分析策略,通过特定分析策略进行运算,判断当前该参数是否正常,若正常,显示分析结果,若不正常,输出报警信息,最后结束该次手动分析。在自动分析模式中,首先启动自动分析定时器,开启该次自动分析周期。在本周期内,按顺序依次选取工艺参数,调用相应分析策略进行运算分析,若正常,显示此工艺参数分析结果,若不正常,输出报警信息,然后结束此参数分析过程,选取下一参数,重复执行上述分析过程。最后,当该次自动分析周期时间到后,终止该次自动分析。当执行完本次手动分析或自动分析周期,开始下一次的Modbus数据分析。默认分析模式为自动分析模式,用户可自行切换为手动分析模式。
分析策略包含系统自带分析策略库和用户自定义分析策略。本发明实施例中的分析策略库包括数值范围分析策略、数值波动分析策略、数值变化率分析策略等,可依据工业现场工艺参数本身性质制定不同分析策略,所述分析策略不局限于此。同时,用户可根据特殊工业现场环境要求,自行添加自定义分析策略。
图7是嵌入式平台TCP/IP数据通信线程的流程图。在本TCP/IP数据通信模型中,嵌入式平台作为服务器监听来自客户端上位机的数据通信请求并响应。当TCP/IP数据通信线程启动后,首先创建并初始化套接字,然后与本地IP地址及端口进行绑定,默认端口为502(ModbusTCP默认端口),最后开启监听,等待上位机请求。当上位机发送TCP/IP连接请求后,嵌入式平台允许并建立起TCP/IP通信连接。建立TCP/IP连接后,上位机继续发送数据读写请求,嵌入式平台接收请求后进行判断并执行相应请求。若为ModbusTCP请求,先对ModbusTCP请求进行解析,然后生成ModbusSerial请求,发送至工业现场Modbus设备或网络,再对Modbus设备或网络的响应数据帧进行接收和解析,最后生成ModbusTCP响应数据帧,发送至上位机。该过程中,嵌入式平台执行ModbusTCP转ModbusSerial网关功能,鉴于Modbus网关的技术实现已十分成熟,在此不再赘述。若为数据文件上传请求,首先对该请求进行解析,读取相关数据文件长度信息发送至上位机,最后发送数据文件内容至上位机,以便于上位机对工业现场数据文件进行存储管理,实现远程信息化管理。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (8)
1.一种基于Modbus的工业现场数据采集分析系统,其特征在于:包括上位机、嵌入式平台、Modbus设备以及网络;所述嵌入式平台通过RS232或RS485总线与Modbus设备或网络连接,同时所述嵌入式平台按预设时间周期对Modbus设备或网络中的工艺参数进行查询读取,存储于嵌入式平台内,并通过嵌入式平台进行分析和管理;另外所述嵌入式平台还通过以太网口接入本地局域网或外部因特网中,通过响应上位机请求,实现工业自动化生产的远程信息化管理和监控;所述上位机内设置有Wince嵌入式操作系统,所述Wince嵌入式操作系统用于管理整个嵌入式平台的硬件资源和框架,并提供图形用户界面;所述嵌入式平台包括数据采集分析系统底板和核心板,其中,所述数据采集分析系统底板通过系统总线与核心板相连,且数据采集分析系统底板上设置有第一串口、第二串口、第三串口以及以太网口,所述第一串口、第二串口、第三串口以及以太网口均与数据采集分析系统底板的系统总线相连;同时所述第一串口与Modbus设备相连,用于完成Modbus设备在串行链路上的数据通信;所述第二串口与工业现场上位机相连,用于完成对嵌入式平台的运行调试及数据通信;所述第三串口与工业现场的Modbus设备或网络相连,完成Modbus设备或网络在串行链路上的数据通信;而所述以太网口经局域网实现与上位机之间的TCP/IP通信,用于技术人员通过上位机对工业现场工艺参数进行信息化管理;所述核心板包括中央处理器、内存、NandFlash和NorFlash,所述中央处理器、内存、NandFlash和NorFlash分别与数据采集分析系统底板的系统总线相连;所述NandFlash内设置有Modbus协议栈、工艺参数配置文件、本地数据存储区、数据采集软件模块、数据分析软件模块和TCP/IP通信软件模块,其中:所述Modbus协议栈用于通过与Wince嵌入式操作系统和应用层软件模块相连对Modbus通信数据帧提供编码和解码服务;所述工艺参数配置文件,用于建立工艺参数所在Modbus设备或网络地址与所述本地数据存储区地址的映射关系;所述本地数据存储区用于将不同数据类型的工艺参数进行分类存储;且单个工艺参数在任意时刻存储的数据帧包括工艺参数值和时间戳;所述数据采集软件模块用于通过Modbus协议栈对Modbus数据通信进行请求和响应,并将工艺参数的相关数据存入本地数据存储区;所述数据分析软件模块包括自带分析策略模块或用户自定义分析策略模块,采用轮询模式,通过利用工艺参数配置文件和本地数据存储区调入相应工艺参数数据,通过系统自带分析策略或用户自定义分析策略对工艺参数进行自动或手动分析;所述TCP/IP通信软件模块,用于响应上位机请求,并与之进行数据通信。
2.根据权利要求1所述基于Modbus的工业现场数据采集分析系统,其特征在于:所述数据采集软件模块首先在NandFlash相应位置找到并打开工艺参数配置文件,根据工业现场工艺参数采集分析需求进行更新与保存;其次打开并解析工艺参数配置文件,按照Modbus请求队列长度最小原则生成Modbus请求队列,所述Modbus请求队列长度最小原则是指根据Modbus设备地址、数据类型和地址顺序将同一设备同一数据类型地址连续的Modbus数据请求进行合并,以最大限度减小Modbus请求队列长度;然后按照Modbus请求队列顺序,以数据采集周期进行发送,并依次对Modbus设备或网络的响应进行接收;最后对接收的Modbus响应进行解析,并根据工艺参数配置文件查询对应的工艺参数名称,然后根据其映射关系将工艺参数值和采集时间戳保存至相应存储文件中。
3.根据权利要求2所述基于Modbus的工业现场数据采集分析系统,其特征在于:所述轮询模式是在一数据分析周期内对所述工艺参数配置文件中的各参数依次进行查询和分析;所述分析策略包括数值范围分析策略、数值波动分析策略以及数值变化率分析策略中的一个及以上;所述用户自定义分析策略模块用于用户通过人机交互界面针对工艺参数自定义分析策略并加以应用,所述自带分析策略模块用于所述数据分析软件模块对各工艺参数自动使用对应分析策略进行连续的运算和分析。
4.根据权利要求3所述基于Modbus的工业现场数据采集分析系统,其特征在于:所述上位机请求包括ModbusTCP请求和数据文件上传请求,其中:ModbusTCP请求,用于对工业现场Modbus设备或网络进行基于ModbusTCP的数据读写请求,所述TCP/IP通信软件模块对请求进行接收与解析,然后生成基于Modbus串行链路的数据读写请求并发送至相应Modbus设备或网络,最后通过解析来自Modbus设备或网络的响应生成ModbusTCP响应数据帧并发送至上位机;数据文件上传请求,用于将所述数据采集软件模块的工艺参数配置文件和数据存储文件通过TCP/IP上传至上位机内存中。
5.根据权利要求4所述基于Modbus的工业现场数据采集分析系统,其特征在于:所述第一串口采用SP3232EEN芯片和DB9数据接口,实现RS232串行通信;所述第二串口采用SP3232EEN芯片和DB9数据接口,实现RS232串行通信;所述第三串口采用MAX485芯片和DB9数据接口,实现RS485串行通信;所述以太网口为10/100M自适应以太网口,所述以太网口采用芯片DM9000实现TCP/IP通信。
6.根据权利要求4所述基于Modbus的工业现场数据采集分析系统,其特征在于:所述工艺参数包括工艺参数名称、Modbus设备地址、Modbus数据类型、Modbus寄存器地址、头指针和尾指针值;所述本地数据存储区对每一个工艺参数分配一地址连续的存储空间,通过工艺参数配置文件中工艺参数的头指针和尾指针值可以方便地进行数据的存储与读取;所述工艺参数配置文件中,工艺参数名称、Modbus设备地址、Modbus数据类型、Modbus寄存器地址、本地参数存储类型、头指针、尾指针所占的字节数依次对应为12Bytes、1Byte、1Byte、2Bytes、1Byte、2Bytes、2Bytes。
7.根据权利要求6所述基于Modbus的工业现场数据采集分析系统,其特征在于:所述本地数据存储区包括4个数据存储文件,分别为BYTE区、WORD区、DWORD区以及FLOAT区,所述BYTE区、WORD区、DWORD区以及FLOAT区支持的数据类型分别为bit、byte或者/和单字节数据、WORD双字节数据、DWORD四字节数据以及32位浮点数。
8.根据权利要求7所述基于Modbus的工业现场数据采集分析系统,其特征在于:所述数据分析软件模块首先打开工艺参数配置文件,读取所有工艺参数,生成一工艺参数数组;其次通过判断是否为手动分析模式,分别进入手动或自动分析模式;在手动分析模式中,首先选取欲分析工艺参数,对所选取工艺参数调用对应分析策略,包括分析策略库中的系统自带分析策略或用户自定义分析策略,通过该分析策略进行运算,判断当前该参数是否正常,若正常,显示分析结果,若不正常,输出报警信息,最后结束该次手动分析;在自动分析模式中,首先启动自动分析定时器,开启该次自动分析周期;在本周期内,按顺序依次选取工艺参数,调用相应分析策略进行运算分析,若正常,显示此工艺参数分析结果,若不正常,输出报警信息,然后结束此参数分析过程,选取下一参数,重复执行上述分析过程;最后,当该次自动分析周期时间到后,终止该次自动分析;当执行完本次手动分析或自动分析周期,开始下一次的Modbus数据分析。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410062707.5A CN103792928B (zh) | 2014-02-24 | 2014-02-24 | 一种基于Modbus的工业现场数据采集分析系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410062707.5A CN103792928B (zh) | 2014-02-24 | 2014-02-24 | 一种基于Modbus的工业现场数据采集分析系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103792928A CN103792928A (zh) | 2014-05-14 |
CN103792928B true CN103792928B (zh) | 2016-08-03 |
Family
ID=50668715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410062707.5A Active CN103792928B (zh) | 2014-02-24 | 2014-02-24 | 一种基于Modbus的工业现场数据采集分析系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103792928B (zh) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104052631A (zh) * | 2014-05-22 | 2014-09-17 | 中兴通讯股份有限公司 | 一种设备信息的采集方法、装置以及系统 |
CN104407983B (zh) * | 2014-12-02 | 2017-05-17 | 上海电器科学研究院 | 一种用于电量模块的modbus地址重映射方法 |
CN104539502B (zh) * | 2015-01-26 | 2018-02-13 | 北海恒久天成技术开发有限公司 | 一种自定义添加modbus设备的方法 |
CN105138484A (zh) * | 2015-08-07 | 2015-12-09 | 珠海格力电器股份有限公司 | 数据采集服务器 |
CN106610895B (zh) * | 2015-10-27 | 2019-03-22 | 北汽福田汽车股份有限公司 | 一种仿真模型评估方法及装置 |
US10127183B2 (en) * | 2016-06-30 | 2018-11-13 | Fisher Controls International Llc | Systems and methods for provisioning devices operating in industrial automation environments |
CN108021096A (zh) * | 2016-11-03 | 2018-05-11 | 沈阳高精数控智能技术股份有限公司 | 一种基于Modbus的数控系统的远程监控方法 |
CN106843807A (zh) * | 2016-12-22 | 2017-06-13 | 天津力神特种电源科技股份公司 | 车载锂离子电池组快速分析及定位的调试方法 |
CN108173817B (zh) * | 2017-12-13 | 2020-11-20 | 中核控制系统工程有限公司 | 一种基于Modbus-TCP协议的自转换方法 |
CN109981388A (zh) * | 2017-12-28 | 2019-07-05 | 北京京东尚科信息技术有限公司 | 一种监控设备的方法和装置 |
CN108259267A (zh) * | 2017-12-29 | 2018-07-06 | 研祥智能科技股份有限公司 | 基于工业电脑实现监测数据采集的方法和装置 |
CN110166646A (zh) * | 2018-02-12 | 2019-08-23 | 南京南瑞继保电气有限公司 | 多主机火灾报警系统接入轨道交通综合监控系统的方法 |
CN108469809A (zh) * | 2018-03-30 | 2018-08-31 | 南京理工大学 | 基于嵌入式计算机的plc数据采集、处理和上传方法 |
CN109802943B (zh) * | 2018-12-18 | 2021-08-10 | 武汉华工赛百数据系统有限公司 | 数据采集装置 |
CN109918062A (zh) * | 2019-03-01 | 2019-06-21 | 南京科谷智能科技有限公司 | 基于Java语言的modbus协议解析方法 |
CN110032523B (zh) * | 2019-03-29 | 2023-08-22 | 陕西柴油机重工有限公司 | 柴油机装配试验基于地址位动态定义的寄存器存储方法 |
CN110007887B (zh) * | 2019-04-11 | 2022-08-23 | 广州驷骏精密设备股份有限公司 | 一种基于拼接屏的显示方法、拼接屏及拼接屏系统 |
CN110502467B (zh) * | 2019-07-25 | 2020-11-10 | 江苏诺蓝翌新能源科技有限公司 | 一种基于串口modbus通信协议的通用采集接口软件系统 |
CN110493216B (zh) * | 2019-08-16 | 2021-07-20 | 国网安徽省电力有限公司滁州供电公司 | 基于嵌入式串口数据透传侦听的方法、系统及存储介质 |
RU198407U1 (ru) * | 2019-08-19 | 2020-07-06 | Общество с ограниченной ответственностью "Газпром трансгаз Ухта" | Устройство для определения параметров modbus линий связи протоколов rs-232/485 |
CN111147476B (zh) * | 2019-12-23 | 2022-04-29 | 上海乐普云智科技股份有限公司 | 一种数据解析方法 |
CN111399908B (zh) * | 2020-03-10 | 2023-05-19 | 上海斯同瑞电气科技有限公司 | Modbus协议设备数据采集方法、系统、终端以及介质 |
CN111371653A (zh) * | 2020-03-13 | 2020-07-03 | 杭州和利时自动化有限公司 | 一种设备监控数据展示方法及相关装置 |
CN111586090A (zh) * | 2020-03-25 | 2020-08-25 | 杭州传化智能制造科技有限公司 | 工业数据采集的方法、系统、计算机设备和可读存储介质 |
CN111431784A (zh) * | 2020-04-21 | 2020-07-17 | 长念(上海)技术开发有限公司 | 一种通用的modbus协议数据解析方法 |
WO2022044140A1 (ja) * | 2020-08-25 | 2022-03-03 | 三菱電機株式会社 | データ分析システム |
CN112350912B (zh) * | 2020-10-29 | 2021-07-27 | 山东八五信息技术有限公司 | 一种基于Modbus协议的数据采集方法、系统和装置 |
CN112711218B (zh) * | 2020-12-08 | 2022-03-15 | 杭州电子科技大学上虞科学与工程研究院有限公司 | 一种工业设备数据采集的方法 |
CN112910769B (zh) * | 2021-01-19 | 2021-12-17 | 广州特瑞电气设备有限公司 | 一种多源异构的智能配电网关及其信息处理方法 |
CN113064394A (zh) * | 2021-03-31 | 2021-07-02 | 上汽通用五菱汽车股份有限公司 | 一种基于modbus_tcp的实时监控方法及系统 |
CN113778003A (zh) * | 2021-10-08 | 2021-12-10 | 沈阳仪表科学研究院有限公司 | 智能运维平台数据采集器的调试方法 |
CN117319143A (zh) * | 2023-10-07 | 2023-12-29 | 江苏金鑫信息技术有限公司 | 基于时分复用及数据缓冲的数据采集网关及采集方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1794242A (zh) * | 2005-09-09 | 2006-06-28 | 浙江大学 | 一种故障诊断数据采集与发布方法 |
CN101262486A (zh) * | 2008-04-18 | 2008-09-10 | 清华大学 | 基于嵌入式平台的Modbus总线分析系统 |
WO2012012723A2 (en) * | 2010-07-23 | 2012-01-26 | Saudi Arabian Oil Company | Machines, computer program products, and computer-implemented methods providing an integrated node for data acquisition and control |
-
2014
- 2014-02-24 CN CN201410062707.5A patent/CN103792928B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1794242A (zh) * | 2005-09-09 | 2006-06-28 | 浙江大学 | 一种故障诊断数据采集与发布方法 |
CN101262486A (zh) * | 2008-04-18 | 2008-09-10 | 清华大学 | 基于嵌入式平台的Modbus总线分析系统 |
WO2012012723A2 (en) * | 2010-07-23 | 2012-01-26 | Saudi Arabian Oil Company | Machines, computer program products, and computer-implemented methods providing an integrated node for data acquisition and control |
Also Published As
Publication number | Publication date |
---|---|
CN103792928A (zh) | 2014-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103792928B (zh) | 一种基于Modbus的工业现场数据采集分析系统 | |
CN108234614B (zh) | 一种基于自定义协议及Netty框架的交互方法 | |
CN111459671B (zh) | 一种数据处理方法、装置及数据交换服务器和存储介质 | |
CN102096399B (zh) | 嵌入式能源数据采集器 | |
CN101231525A (zh) | 分布式控制系统dcs控制器实时数据库的实现方法 | |
CN104281678A (zh) | 一种小卫星智能状态监视系统 | |
CN113028603B (zh) | 一种应用于中央空调系统的设备监测系统 | |
CN103984323A (zh) | 一种集成化可配置工业信息监测分析控制系统 | |
CN105681285A (zh) | 一种异构工业信号源信息获取方法 | |
CN114095309A (zh) | 一种基于边缘计算技术的智能能效网关及应用方法 | |
CN201699739U (zh) | 一种基于at91rm9200的现场总线协议转换网关平台 | |
CN113423025B (zh) | 一种具有人工智能的数据管理终端 | |
CN113395180B (zh) | 一种工业实时大数据采集发布方法及工业实时大数据平台 | |
CN106651650A (zh) | 联调测控装置及应用该装置的电力物联网联调测控系统 | |
Fang et al. | The design of remote embedded monitoring system based on internet | |
CN202395811U (zh) | 用于智能楼宇管理系统的协议转换装置 | |
CN110658752A (zh) | 一种应用于远程云监控的数据采集系统 | |
CN112866207B (zh) | 一种用于变电站自动化的协议转换方法 | |
CN219105371U (zh) | 一种物联网多模环境监测系统 | |
CN111064402B (zh) | 一种长连接小数据流量的柴油发电机组云通讯模块 | |
CN201230327Y (zh) | 基于多种数据触发方式的DeviceNet现场总线I/O通信装置 | |
CN208903126U (zh) | 一种基于opc ua的信息集成系统 | |
Wu et al. | Design and implementation of production environment monitoring system based on GPRS-Internet | |
CN217428147U (zh) | 一种可接入工业物联网的具有边缘计算功能网关 | |
CN112185093B (zh) | 自动组帧的抄表方法、设备和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |