CN113364659B - 一种基于Modbus协议的数据采集系统 - Google Patents
一种基于Modbus协议的数据采集系统 Download PDFInfo
- Publication number
- CN113364659B CN113364659B CN202110917212.6A CN202110917212A CN113364659B CN 113364659 B CN113364659 B CN 113364659B CN 202110917212 A CN202110917212 A CN 202110917212A CN 113364659 B CN113364659 B CN 113364659B
- Authority
- CN
- China
- Prior art keywords
- host
- data
- controller
- bus
- slave
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40169—Flexible bus arrangements
- H04L12/40176—Flexible bus arrangements involving redundancy
- H04L12/40202—Flexible bus arrangements involving redundancy by using a plurality of master stations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40169—Flexible bus arrangements
- H04L12/40176—Flexible bus arrangements involving redundancy
- H04L12/40195—Flexible bus arrangements involving redundancy by using a plurality of nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40228—Modbus
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明实施例公开了一种基于Modbus协议的数据采集系统,具体包括:所述主机按照所述主机的第一波特率f1发送多个指令至多个所述控制器;所述控制器将接收到的多个所述指令同时一一对应发送至多台所述从机上;每台所述从机在接收到所述指令并完成所述指令后,会向其对应的所述控制器发送完成数据;所述控制器在固定时间段内按照所述从机的第二波特率f2同时采集多个所述从机的所述完成数据;所述控制器将读取的多个所述从机的完成数据通过所述总线按照所述主机的第一波特率f1发送至所述主机。本发明实施例有效解决当主机故障或总线断裂,导致无法采集以及单点故障较多,采集效率低下的问题。
Description
技术领域
本发明涉及通信协议领域,尤其涉及一种基于Modbus协议的数据采集系统。
背景技术
传统Modbus串行链路协数据采集,一条总线接一台主机和多台从机,Modbus通信总是由主机发起。
现有的Modbus通信虽然有一台主机同时连接多台从机的情况,且主机直接与多台从机进行数据传输连接,但是从机的接收波特率较小,主机只能根据从机的波特率依次向各个从机进行传输,导致采集效率低下。
现有的Modbus通信还有通过一条总线连接主机和多台从机的情况,但是当主机故障或者总线断裂时,都会导致数据无法再次进行采集,导致发生单点故障较多时,使整体的采集效率下降。
发明内容
因此,本发明实施例提供一种基于Modbus协议的数据采集系统和一种基于Modbus协议的数据采集系统。本发明实施例有效解决当主机故障或总线断裂,导致无法采集以及单点故障较多,采集效率低下的问题。
本发明实施例提供的一种基于Modbus协议的数据采集系统,包括:基于Modbus协议的数据采集系统,包括:多条总线和多台主机,多台所述主机依次电连接于多条所述总线;多个控制器,每个所述控制器上设有多台从机,所述从机个数为n,每个所述控制器至少电连接多条所述总线中的至少一条总线,且所述总线的数量和所述控制器的数量均为m;将基于Modbus协议的数据采集系统实现数据的高并发冗余互备数据采集,具体包括:所述主机按照所述主机的第一波特率f1发送多个指令至多个所述控制器;所述控制器将接收到的多个所述指令同时一一对应发送至多台所述从机上;每台所述从机在接收到所述指令并完成所述指令后,会向其对应的所述控制器发送完成数据;所述控制器在固定时间段内按照所述从机的第二波特率f2同时采集多个所述从机的所述完成数据;所述控制器将读取的多个所述从机的完成数据通过所述总线按照所述主机的第一波特率f1发送至所述主机;其中,f1=n*m*f2,n和m均为正整数。
与现有技术相比,本实施例能够达到的技术效果是:通过在控制器上设置多台从机,使控制器可同时收集多台从机上的数据;再将控制器通过总线和主机进行连接,再将收集的数据集中通过总线发送至主机,提高了主机数据采集的性能和数据采集的可靠性;将总线的数量设置为等于控制器的数量,当多个控制器同时采集完数据时,可以通过对应的总线同时向主机发出,防止控制器出现采集完数据无法第一时间发送至主机的问题,提高了主机数据采集的性能;所述控制器在固定时间段内按照所述从机的第二波特率f2同时采集多个所述从机的完成数据,再通过第一波特率f1将采集到的多个所述从机的完成数据发送至主机,且f1=n*m*f2,可使多个所述从机的完成数据同时输入至主机,从而提高主机数据采集的性能。
在本发明的一个实施例中,还包括:任一所述主机实时监听与其连接的全部所述总线是否有Modbus协议数据可读取;若所述总线上没有Modbus协议数据时,所述主机在所述固定时间段内持续监听与其连接的全部所述总线上是否有Modbus协议数据可读取;若所述总线上有Modbus协议数据时,所述主机在所述固定时间段内持续读取。
与现有技术相比,本实施例能够达到的技术效果是:当总线上传输有Modbus协议数据时,主机会先识别总线上的Modbus协议数据并进行接收;当总线上没有Modbus协议数据时,主机会在固定时间段内持续监听;若总线上有Modbus协议数据时,主机会在固定时间段内持续读取。
在本发明的一个实施例中,若所述总线上没有Modbus协议数据时,所述主机在所述固定时间段内持续监听与其连接的全部所述总线上是否有Modbus协议数据可读取,具体包括:若在所述固定时间段内,所述总线有数据,则所述主机在所述固定时间段内持续读取所述总线上的数据;若在所述固定时间段内,所述总线仍没有数据,则所述主机向控制器发送Modbus指令,从而对多个所述从机的完成数据进行采集。
与现有技术相比,本实施例能够达到的技术效果是:此处固定时间段和控制器接收从机信息的固定时间段相等,当主机完成接收后总线上Modbus协议数据后,主机可第一时间接收控制器的发送从机信息,从而提高接收效率。
在本发明的一个实施例中,当所述控制器连接多条所述总线时,所述控制器通过连接的多条所述总线中的一条或多条所述总线发送多个所述从机的完成数据至一个或多个所述主机上,具体包括:所述控制器通过所述总线接收至少一个所述主机发送的Modbus指令,通过所述主机发送的Modbus指令改变发送方式;其中,当所述控制器接收到一个所述主机发送的Modbus指令时,所述控制器向该所述主机发送多个所述从机的完成数据;当所述控制器接收到多个所述主机发送的Modbus指令时,所述控制器向多个所述主机均匀分配发送多个所述从机的完成数据。
与现有技术相比,本实施例能够达到的技术效果是:当多个主机均处未接收状态时,此时为接收数据的主机会向控制器发送Modbus指令,从而实现控制器向多个主机均匀分配发送多个从机的完成数据,从而提高传输效率。
在本发明的一个实施例中,还包括:当一台正在工作的所述主机出现故障时可被其他所述主机接管工作;其他所述主机在采集工作的同时,对其他的总线进行监听是否有Modbus协议数据可读取,如果读到Modbus数据,所述主机在所述固定时间段内持续读取。
与现有技术相比,本实施例能够达到的技术效果是:当多台所述主机中的一台主机出现故障时,其他所述主机在采集工作的同时,还会对其他的总线进行监听是否有Modbus协议数据可读取,可对故障主机对应的总线进行第一时间的接管,从而在出错时,提高接收效率。
在本发明的一个实施例中,当一台正在工作的所述主机出现故障时可通过外接主机进行接替。
与现有技术相比,本实施例能够达到的技术效果是:通过设置外接主机代替故障的主机对故障主机的工作进行接替,从而防止其余主机均长时间处于接收状态,从而导致故障的主机处没有接替的主机。
在本发明的一个实施例中,所述基于Modbus协议的数据采集系统,还包括:多个报警装置,依次对应连接所述从机,且多个所述报警装置通过网络端口和/或485总线互相连接,且多个所述报警装置通过网络端口连接至管理平台;所述报警装置实时采集其相对应的所述从机的运行信息;当所述报警装置检测到所述从机发生故障时,确认是否有其他所述报警装置也检测到其对应的所述从机故障;当所有的所述报警装置均检测到所述从机发生到故障时,所有的所述报警装置进入协同工作模式;当所有的所述报警装置有至少一个未检测到所述从机发生故障时,采集到故障的所述报警装置进入独立工作模式。
在本发明的一个实施例中,所述独立工作模式,包括:所述报警装置通过深度学习向所述从机发出调整指令,从而控制所述从机进行调整。
在本发明的一个实施例中,所述协同工作模式,包括:检测到异常情况的所述报警装置通过深度学习向其余所述报警装置发送协同工作指令,每一台所述报警装置接收到其他所述报警装置给出的协同工作指令后,并对所述协同工作指令进行一个表决,且所有的所述报警装置就选取表决同意率最高的所述协同工作指令,通过此条协同工作指令作用到对应的所述从机上,从而控制所述从机进行调整。
在本发明的一个实施例中,还包括:所述报警装置将采集到的故障信号、对应的控制命令以及执行结果信息打包成一个故障信息包,并传输给其他的所述报警装置;其他的所述报警装置在接收到故障信息包后,将故障信息包进行保存,并形成样本库;当报警装置接收到所述样本库中的故障信号,可根据所述样本库中的控制命令来进行深度学习,通过深度学习分析来给出新的控制命令作用到自身对应的所述从机上。
与现有技术相比,本实施例能够达到的技术效果是:使基于Modbus协议的数据采集系统,具有区域自治和智能学习能力,以及解决单点故障问题,当区域内从机协同智能控制时,使得控制从机工作更精细;当单个报警装置独立工作时,具有自我学习能力,可不断在周边设备报警装置节点中获得解决故障的样本库,通过长时间积累样本库和报警装置自主学习更新,使得连接报警装置的基础设施设备具有自主智能控制能力,可以避免故障在设备间扩散使得系统失去监控出现瘫痪。
综上所述,本申请上述各个实施例可以具有如下一个或多个优点或有益效果:
i) 通过控制器提升主机采集波特率,实现主机在一个时间段内可采集更多从机的完成数据,通过控制器连接总线实现同一时间点二台主机可同时进行数据采集,实现高并发数据采集;
ii) 当有任意一台主机故障时,另一台冗余主机可接管该故障主机的采集工作,实现主机数据采集冗余互备功能。本发明专利极大提高了主机数据采集的性能和数据采集的可靠性;
iii) 使报警装置独立工作时,具有自我学习能力,可不断在周边设备报警装置节点中获得解决故障的样本库,通过长时间积累样本库和报警装置自主学习更新,使得连接报警装置的基础设施设备具有自主智能控制能力,可以避免故障在设备间扩散使得系统失去监控出现瘫痪。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于Modbus协议的数据采集系统100的结构示意图。
图2为本发明提供的一种基于Modbus协议的数据采集系统的流程图。
图3为本发明提供的一种基于Modbus协议的数据采集系统的另一种流程图。
图4为串口Modbus RTU报文模型。
图5为报警装置50的运行流程图。
主要元件符号说明:
100、基于Modbus协议的数据采集系统;10、总线;20、控制器;30、从机;40、主机;50、报警装置;60、管理平台。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,其为本发明实施例提供的一种基于Modbus协议的数据采集系统100的结构示意图。所述基于Modbus协议的数据采集系统100例如包括:多条总线10、多个控制器20、多个从机30以及多个主机40。其中,多台主机40依次电连接多条总线10;每个控制器20上设有多台从机30,且每个控制器20至少电连接多条总线10中的至少一条总线10。
举例来说,通过在控制器20上设置多台从机30,使控制器20可同时收集多台从机30上的数据;再将控制器20通过总线10和主机40进行连接,再将收集的数据集中通过总线10发送至主机40,提高了基于Modbus协议的数据采集系统100数据采集的性能和数据采集的可靠性。
具体的,总线10的数量等于控制器20的数量。举例来说,将总线10的数量设置为等于控制器20的数量,当多个控制器20同时采集完数据时,可以通过对应的总线10同时向主机40发出,防止控制器20出现采集完数据无法第一时间发送至主机40的问题,提高了基于Modbus协议的数据采集系统100数据采集的性能,实现第一时间对控制器20数据的接收。
优选的,将多台主机40和多个控制器20为集中部署,使多台主机40和多个控制器20之间的距离很近;而控制器20和从机30为较远设置,控制器20可远程对从机30的数据进行采集。
举例来说,一般的Modbus RTU通讯速率跟通讯距离成反比,速率越大,距离越短。因此,将多台主机40和多个控制器20为集中部署,使多台主机40和多个控制器20之间的距离很近,使主机40和控制器20之间可通过较大的速率进行通信;而控制器20和从机30为较远设置,虽然距离远传输的速率慢,但是达到了控制器20可对从机30进行远程接收信息的目的,且控制器20可同时对多个从机30进行远程数据收集,而主机40和控制器20之间可通过较大的速率进行通信,控制器20可将同时收集到的从机30的完成数据在相同时间内同时传输至主机40,从而提高基于Modbus协议的数据采集系统100数据采集的速率。
优选的,主机40的数量等于总线10加控制器20的数量。举例来说,当多条总线10和多个控制器20均同时发送Modbus协议的数据时均有主机40可以接收多条总线10和多个控制器20发送的Modbus协议数据,可起到第一时间内完成主机40对多条总线10和多个控制器20发送的Modbus协议数据的接收,从而提高基于Modbus协议的数据采集系统100的采集效率。
进一步的,还可以设置主机40的数量大于总线10加控制器20的数量,及时在多条总线10和多个控制器20均同时发送Modbus协议的数据,还是有多台的主机40对此数据进行同时接收,进一步提高基于Modbus协议的数据采集系统100的采集效率。
具体的,每个从机30上还设有报警装置50,其中,多个报警装置通过网络端口和/或485总线互相连接,且多个所述报警装置50通过网络端口连接至管理平台60。
参见图2,其为本发明实施例提供的一种基于Modbus协议的数据采集系统,所述基于Modbus协议的数据采集系统用于将基于Modbus协议的数据采集系统100实现数据的高并发冗余互备数据采集,具体包括:
步骤S10,主机40按照主机40的第一波特率f1发送多个指令多个控制器20;
步骤S20,控制器20将接收到的多个所述指令同时一一对应发送至多台从机30上;
步骤S30,每台从机30在接收到所述指令并完成所述指令后,会向其对应的控制器20发送完成数据;
步骤S40,控制器20在固定时间段内按照从机30的第二波特率f2同时采集多个从机30的完成数据;
步骤S50,控制器20将读取的多个从机30的完成数据通过总线10按照主机40的第一波特率f1发送至主机40。
举例来说,主机40可在一定时间按照第一波特率f1向多个控制器20发送多个所述指令;当控制器20接收到主机40发出的多个所述指令后,会将多个所述指令按照第二波特率f2向多个从机30依次发送其对应的指令;当从机30接收到指令并完成指令后,会将所述完成数据发送至其对应的控制器20上;由于每个从机30接收的效率以及完成的速率都不同,因此设置控制器20在固定时间段内按照从机30的第二波特率f2同时采集多个从机30的完成数据;再通过控制器20将读取的多个从机30的完成数据通过总线10按照主机40的第一波特率f1发送至主机40。
优选的,可通过多个主机40分别向控制器20发送多个所述指令,从而提高发送的速率;相对的控制器20可同时向多个主机40发送从机30的完成数据,从而提高主机的接收效率。
进一步的,f1=n*m*f2,且n和m均为正整数。具体的,由于从机30和控制器20之间设置的距离较远,可通过较小的所述第二波特率f2进行传输,而主机40和控制器20之间设置的距离较近,可通过较大的所述第一波特率f1进行传输,且所述第一波特率f1等于所述第二波特率f2乘以从机30的个数,当控制器20在所述固定时间段内同时接收到的从机30的完成数据,可在所述固定时间段内将接收到的从机30的完成数据发送至主机40,方便控制器20进行下一步的采集和传输。
优选的,n取24,m取2。
举例来说,可在控制器20和从机30设置为9.6K波特率的一个通信的周期,控制器20和主机40可完成230.4K波特率24个通信周期。控制器20通过独立Modbus下行接口连接24台从机30,在9.6K波特率的一个通信的周期内分别同时采集24台从机30的完成数据,再通过上行接口由一台主机40在波特率为230.4K的24个通信周期逐条读取24条数据,实现一台主机40用一条总线10在一个从机30的波特率通信周期内读取24台从机30的完成数据的高并发性能。
优选的,所述固定时间段可设置为0.5S~2S的一个固定时间段。
进一步的,参见图3,所述基于Modbus协议的数据采集系统具体还包括:
步骤S60,任一主机40实时监听与其连接的全部总线10是否有Modbus协议数据可读取;
步骤S70,主机40向控制器20发送Modbus指令,从而对多个从机30的完成数据进行采集。
具体的,所述步骤S60具体包括:
步骤S61,若总线10上没有Modbus协议数据时,主机40在所述固定时间段内持续监听与其连接的全部总线10上是否有Modbus协议数据可读取;
步骤S62,若总线10上有Modbus协议数据时,主机40在所述固定时间段内持续读取。
举例来说,将主机40持续监听的时间和读取的时间均设置为所述固定时间段,使每个主机40的工作时间形成循环,主机40在一个所述固定时间段内只工作一个步骤,从而提高基于Modbus协议的数据采集系统100数据采集的可靠性。
具体的,参见图4,其为数据采集系统100的报文模型,从机地址、功能代码、CRC校验L、CRC校验H均以8bit的进行接收或者发送,但是数据格式以n*8bit进行发送。
进一步的,如果主机40在一条总线10在所述固定时间段读取到Modbus数据,主机40会分析Modbus数据包,在数据包中提取出Modbus命令的从机30的地址,该从机30的信息表明有另外一台主机40在该总线10上正在对该从机30进行读写操作的正常工作,根据系统初始化配置的全部从机30地址信息,除去正常工作的从机30地址信息,剩下的就是没有工作的从机30地址。
举例来说,若多条总线10为第一总线和第二总线,在所述第一总线和所述第二总线上,分别向未工作的从机30连接的控制器20发出Modbus写指令,使控制器20能接通未工作从机30与另一条未读到数据的总线10连接。该主机40向全部未工作的从机30采集数据。至此全部从机30都投入正常工作,并且是多台主机40同时进行并发数据采集,从而提高数据的采集效率,实现高并发数据采集。
进一步的,若总线10上没有Modbus协议数据时,主机40在所述固定时间段内持续监听与其连接的全部总线10上是否有Modbus协议数据可读取,具体包括:
步骤S63,若在所述固定时间段内,总线10有数据,则主机40在所述固定时间段内持续读取所述固定时间段;
步骤S64,若在所述固定时间段内,总线10仍没有数据,则主机40向控制器20发送Modbus指令,从而对多个从机30的完成数据进行采集。
举例来说,控制器20接收从机30信息的时间和主机40接收总线10上的Modbus协议数据的时间设置为相同的,当主机40完成接收后总线10上Modbus协议数据后,主机40可第一时间接收控制器20上的从机30信息,从而提高接收效率。
具体的,所述基于Modbus协议的数据采集系统中,当控制器20连接多条总线10时,控制器20通过连接的多条总线10中的一条或多条总线10发送多个从机30的完成数据至一个或多个主机40上,具体包括:控制器20通过总线10接收至少一个主机40发送的Modbus指令,通过主机40发送的Modbus指令改变发送方式;其中,当控制器20接收到一个主机40发送的Modbus指令时,控制器20向该主机40发送多个从机30的完成数据;当控制器20接收到多个主机40发送的Modbus指令时,控制器20向多个主机40均匀分配发送多个从机30的完成数据。
举例来说,主机40先对总线10上的Modbus指令进行接收,若总线10上没有Modbus指令,主机40再对控制器20上的从机30的完成数据进行接收,且多个未接收总线10上的Modbus指令的主机40会向控制器20发送Modbus指令,使控制器20可同时向对其发送Modbus指令的主机40同时进行发送,且控制器20向多个主机40均匀分配发送多个从机30的完成数据,从而实现控制器20向多个主机40均匀分配发送多个从机30的完成数据,从而提高传输效率。
进一步的,当多台主机40为第一主机和第二主机时,当所述第一主机同时在二条及两条以上的总线10上采集从机的完成数据时,如果所述第二主机申请加入采集工作,所述第二主机可以在任选一条所述第一主机正在采集的总线10连续发送一条无效从机30地址的Modbus读命令数据包,所述第一主机会读取到该Modbus读命令数据包,或者因该总线10被所述第二主机发出的Modbus读命令数据包干扰,所述第一主机会读取异常的数据包。此时所述第一主机会在该总线10上停止发送数据采集命令3秒钟,并继续监听该总线上Modbus数据包,确认有新主机申请加入采集工作时,所述第一主机在该总线10上停止工作。所述第二主机在连续发送申请加入的Modbus读命令数据包时,监听该总线10上Modbus数据包,确认没有其他主机在该总线工作时,按所述步骤S60完成该总线10的数据采集工作。如果所述第二主机在一个所述固定时间段连续发送申请加入的Modbus读命令数据包,都有其他主机40在该总线10工作,则所述第二主机放弃对该总线10的申请加入采集工作。
具体的,当一台正在工作的主机40出现故障时可被其他主机40接管工作,具体包括:其他主机40在采集工作的同时,对其他的总线10进行监听是否有Modbus协议数据可读取,如果读到Modbus数据,主机40在所述固定时间段内持续读取。
举例来说,正在工作的主机40在一条数据采集工作的同时,继续在固定时间段监听其他总线10是否有Modbus协议数据可读取,如果读到Modbus数据,继续重复本步骤工作。如果没有读到Modbus数据,该主机40向全部未工作的从机30采集数据。至此正在工作的主机40接管故障主机40,实现数据采集冗余互备。
具体的,当一台正在工作的主机40出现故障时可通过外接主机进行接替。
举例来说,有所述外接主机加入采集工作,该所述外接主机执行所述步骤S60和步骤S70的操作,且所述外接主机向全部未工作的从机30采集数据。至此所述外接主机接管故障主机40,实现数据采集冗余互备,并且是多台主机同时进行并发数据采集,即工作的主机40的数量依旧是原来工作的主机40的数量,对数据的采集不会产生影响。
进一步的,当主机40发现总线10出现问题后可自动切换总线10进行指令发送。举例来说,当所述第一主机通过所述第一总线向控制器20发出指令后,在一定时间内没有接收到从控制器20发回的从机30的完成数据则默认为所述第一总线故障;此处所述第一主机通过所述第二总线向控制器20发出指令。
具体的,参见图5,所述基于Modbus协议的数据采集系统,还包括:
S80,报警装置50实时采集其相对应的从机30的运行信息;
S90,当报警装置50检测到从机30发生故障时,确认是否有其他报警装置50也检测到其对应的从机30故障;
S100,当所有的报警装置50均检测到从机30发生到故障时,所有的报警装置50进入协同工作模式;当所有的报警装置50有至少一个未检测到从机30发生故障时,采集到故障的报警装置50进入独立工作模式。
进一步的,所述独立工作模式,包括:报警装置50通过深度学习向从机30发出调整指令,从而控制从机30进行调整。
更进一步的,所述协同工作模式,包括:检测到异常情况的报警装置50通过深度学习向其余报警装置50发送协同工作指令,每一台报警装置50接收到其他报警装置50给出的协同工作指令后,并对所述协同工作指令进行一个表决,且所有的报警装置50就选取表决同意率最高的所述协同工作指令,通过此条协同工作指令作用到对应的从机30上,从而控制从机30进行调整。
优选的,报警装置50将采集到的故障信号、对应的控制命令以及执行结果信息打包成一个故障信息包,并传输给其他的报警装置50;其他的报警装置50在接收到故障信息包后,将故障信息包进行保存,并形成样本库;当报警装置50接收到所述样本库中的故障信号,可根据所述样本库中的控制命令来进行深度学习,通过深度学习分析来给出新的控制命令作用到自身对应的从机30上。
举例来说,使所述基于Modbus协议的数据采集系统,具有区域自治和智能学习能力,以及解决单点故障问题,当区域内从机协同智能控制时,使得控制从机30工作更精细;当单个报警装置50独立工作时,具有自我学习能力,可不断在周边设备报警装置50节点中获得解决故障的样本库,通过长时间积累样本库和报警装置自主学习更新,使得连接报警装置50的基础设施设备具有自主智能控制能力,可以避免故障在设备间扩散使得系统失去监控出现瘫痪。
优选的,多个基于Modbus协议的数据采集系统中的报警装置50在生产故障信息包后会通过网络端口发送至管理平台60,管理平台60将所述故障信息包整理成库,当报警装置50检测出故障后可从所述库中调取所述故障信息包对其对应的从机30进行调整。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种基于Modbus协议的数据采集系统,其特征在于,包括:
多条总线和多台主机,多台所述主机依次电连接于多条所述总线;
多个控制器,每个所述控制器上设有多台从机,所述从机个数为n,每个所述控制器至少电连接多条所述总线中的至少一条总线,且所述总线的数量和所述控制器的数量均为m,当多个控制器同时采集完数据时,可以通过对应的总线同时向主机发出;
所述数据采集系统的实施方法,具体包括:
所述主机按照所述主机的第一波特率f1发送多个指令至多个所述控制器;
所述控制器将接收到的多个所述指令同时一一对应发送至多台所述从机上;
每台所述从机在接收到所述指令并完成所述指令后,会向其对应的所述控制器发送完成数据;
所述控制器在固定时间段内按照所述从机的第二波特率f2同时采集多个所述从机的所述完成数据;
所述控制器将读取的多个所述从机的完成数据通过所述总线按照所述主机的第一波特率f1发送至所述主机;
任一所述主机实时监听与其连接的全部所述总线是否有Modbus协议数据可读取;
若所述总线上没有Modbus协议数据时,所述主机在所述固定时间段内持续监听与其连接的全部所述总线上是否有Modbus协议数据可读取;
若所述总线上有Modbus协议数据时,所述主机在所述固定时间段内持续读取;
其中,f1=n*m*f2,n和m均为正整数。
2.根据权利要求1所述的基于Modbus协议的数据采集系统,其特征在于,若所述总线上没有Modbus协议数据时,所述主机在所述固定时间段内持续监听与其连接的全部所述总线上是否有Modbus协议数据可读取,具体包括:
若在所述固定时间段内,所述总线有数据,则所述主机在所述固定时间段内持续读取所述总线上的数据;
若在所述固定时间段内,所述总线仍没有数据,则所述主机向控制器发送Modbus指令,从而对多个所述从机的完成数据进行采集。
3.根据权利要求2所述的基于Modbus协议的数据采集系统,其特征在于,当所述控制器连接多条所述总线时,所述控制器通过连接的多条所述总线中的一条或多条所述总线发送多个所述从机的完成数据至一个或多个所述主机上,具体包括:
所述控制器通过所述总线接收至少一个所述主机发送的Modbus指令,通过所述主机发送的Modbus指令改变发送方式;
其中,当所述控制器接收到一个所述主机发送的Modbus指令时,所述控制器向该所述主机发送多个所述从机的完成数据;当所述控制器接收到多个所述主机发送的Modbus指令时,所述控制器向多个所述主机均匀分配发送多个所述从机的完成数据。
4.根据权利要求1所述的基于Modbus协议的数据采集系统,其特征在于,所述数据采集系统的实施方法,还包括:
当一台正在工作的所述主机出现故障时可被其他所述主机接管工作;
其他所述主机在采集工作的同时,对其他的总线进行监听是否有Modbus协议数据可读取,如果读到Modbus数据,所述主机在所述固定时间段内持续读取。
5.根据权利要求4所述的基于Modbus协议的数据采集系统,其特征在于,当一台正在工作的所述主机出现故障时可通过外接主机进行接替。
6.根据权利要求1所述的基于Modbus协议的数据采集系统,其特征在于,所述基于Modbus协议的数据采集系统,还包括:多个报警装置,依次对应连接所述从机,且多个所述报警装置通过网络端口和/或485总线互相连接,且多个所述报警装置通过网络端口连接至管理平台;
所述报警装置实时采集其相对应的所述从机的运行信息;
当所述报警装置检测到所述从机发生故障时,确认是否有其他所述报警装置也检测到其对应的所述从机故障;
当所有的所述报警装置均检测到所述从机发生到故障时,所有的所述报警装置进入协同工作模式;当所有的所述报警装置有至少一个未检测到所述从机发生故障时,采集到故障的所述报警装置进入独立工作模式。
7.根据权利要求6所述的基于Modbus协议的数据采集系统,其特征在于,所述独立工作模式,包括:所述报警装置通过深度学习向所述从机发出调整指令,从而控制所述从机进行调整。
8.根据权利要求6所述的基于Modbus协议的数据采集系统,其特征在于,所述协同工作模式,包括:检测到异常情况的所述报警装置通过深度学习向其余所述报警装置发送协同工作指令,每一台所述报警装置接收到其他所述报警装置给出的协同工作指令后,并对所述协同工作指令进行一个表决,且所有的所述报警装置就选取表决同意率最高的所述协同工作指令,通过此条协同工作指令作用到对应的所述从机上,从而控制所述从机进行调整。
9.根据权利要求7或8任意一项所述的基于Modbus协议的数据采集系统,其特征在于,还包括:
所述报警装置将采集到的故障信号、对应的控制命令以及执行结果信息打包成一个故障信息包,并传输给其他的所述报警装置;其他的所述报警装置在接收到故障信息包后,将故障信息包进行保存,并形成样本库;
当报警装置接收到所述样本库中的故障信号,可根据所述样本库中的控制命令来进行深度学习,通过深度学习分析来给出新的控制命令作用到自身对应的所述从机上。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110917212.6A CN113364659B (zh) | 2021-08-11 | 2021-08-11 | 一种基于Modbus协议的数据采集系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110917212.6A CN113364659B (zh) | 2021-08-11 | 2021-08-11 | 一种基于Modbus协议的数据采集系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113364659A CN113364659A (zh) | 2021-09-07 |
CN113364659B true CN113364659B (zh) | 2021-11-12 |
Family
ID=77523015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110917212.6A Active CN113364659B (zh) | 2021-08-11 | 2021-08-11 | 一种基于Modbus协议的数据采集系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113364659B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105897574A (zh) * | 2016-05-27 | 2016-08-24 | 中国东方电气集团有限公司 | 一种支持双网双主冗余的Modbus RTU/TCP网关装置 |
EP3261322A1 (en) * | 2016-06-23 | 2017-12-27 | Kyland Technology Co., Ltd. | Method for deep data inspection over an industrial internet field broadband bus |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106161084A (zh) * | 2016-06-15 | 2016-11-23 | 中国电子科技网络信息安全有限公司 | 一种适用于现场总线网络的信息安全防护装置及方法 |
CN108733604B (zh) * | 2018-05-11 | 2020-06-05 | 深圳市脉联电子有限公司 | 一种基于modbus通讯协议的485总线智能扩展方法及装置 |
CN110851392B (zh) * | 2019-11-13 | 2021-10-01 | 中广核研究院有限公司北京分公司 | 基于Modbus RTU协议的通讯方法及通讯系统 |
CN111694785B (zh) * | 2020-05-20 | 2023-08-15 | 哈尔滨工业大学 | 反馈型的uart自适应波特率系统及自适应波特率方法 |
-
2021
- 2021-08-11 CN CN202110917212.6A patent/CN113364659B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105897574A (zh) * | 2016-05-27 | 2016-08-24 | 中国东方电气集团有限公司 | 一种支持双网双主冗余的Modbus RTU/TCP网关装置 |
EP3261322A1 (en) * | 2016-06-23 | 2017-12-27 | Kyland Technology Co., Ltd. | Method for deep data inspection over an industrial internet field broadband bus |
Non-Patent Citations (1)
Title |
---|
两种网络之间的热备冗余实时通信接口设计;徐天纬;《单片机与嵌入式系统应用》;20200229;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113364659A (zh) | 2021-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102394787B (zh) | 基于epa交换机的双链路冗余控制方法 | |
CN104320311A (zh) | 一种scada分布式平台下的心跳检测方法 | |
CN111107572A (zh) | 一种冗余备份方法及装置 | |
CN109067633B (zh) | 基于以太网菊花链通讯网络拓扑的电源管理系统及方法 | |
EP3806276A1 (en) | Battery management system and communication method thereof | |
EP2090950A1 (en) | Critical device with increased availability | |
CN109981353B (zh) | 一种机框式网络通信设备中的邻站冗余保护方法及系统 | |
CN102487332B (zh) | 故障处理方法、装置和系统 | |
CN101854263B (zh) | 网络拓扑的分析处理方法、系统和管理服务器 | |
CN113364659B (zh) | 一种基于Modbus协议的数据采集系统 | |
KR20080108787A (ko) | 이중 채널 링 방식을 통해 멀티 마스터 기능을 지원하는전력거래용 원격소 단말장치 및 그 운용 방법 | |
CN111522698B (zh) | 前端处理器的自动切换系统及方法 | |
CN102271049B (zh) | 通信设备状态设置方法、装置和系统 | |
CN116939897A (zh) | 一种5g电力网关及数据传输方法 | |
JPH03204258A (ja) | 通信システム | |
CN116667469A (zh) | 电源与储能电池组网的管理系统及方法 | |
CN114257500B (zh) | 一种超融合集群内部网络的故障切换方法、系统及装置 | |
CN114884767A (zh) | 一种同步双冗余can总线通信系统、方法、设备及介质 | |
CN109088753B (zh) | 自动检测rs485通信故障的电路和方法 | |
CN115705267A (zh) | 监控采集设备、基于监控采集设备的主备切换方法及系统 | |
JP3777809B2 (ja) | 二重化通信システムの回線異常検出方法 | |
JP7431034B2 (ja) | コントローラ及び施設監視システム | |
JP7306983B2 (ja) | コントローラ及び施設監視システム | |
CN114355823B (zh) | 基于网络的矿用防爆组合开关控制系统及其控制方法 | |
CN116980275A (zh) | 一种交换机数据采集及监控系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |