CN117527762A - 一种基于串口modbus通讯协议的自识别方法及系统 - Google Patents

一种基于串口modbus通讯协议的自识别方法及系统 Download PDF

Info

Publication number
CN117527762A
CN117527762A CN202311595336.2A CN202311595336A CN117527762A CN 117527762 A CN117527762 A CN 117527762A CN 202311595336 A CN202311595336 A CN 202311595336A CN 117527762 A CN117527762 A CN 117527762A
Authority
CN
China
Prior art keywords
address
station
slave stations
master station
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.)
Pending
Application number
CN202311595336.2A
Other languages
English (en)
Inventor
范昊
杨忠浩
王中月
虞剑文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Zhirui Energy Internet Research Institute Co ltd
Original Assignee
Nanjing Zhirui Energy Internet Research Institute Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Zhirui Energy Internet Research Institute Co ltd filed Critical Nanjing Zhirui Energy Internet Research Institute Co ltd
Priority to CN202311595336.2A priority Critical patent/CN117527762A/zh
Publication of CN117527762A publication Critical patent/CN117527762A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5092Address allocation by self-assignment, e.g. picking addresses at random and testing if they are already in use
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation

Abstract

本发明涉及电力设备技术领域,具体涉及一种基于串口MODBUS通讯协议的自识别方法及系统,包括:编号模块,用于将所有从站地址依次编号;广播寻址模块,用于主站向总线挂接的相应从站发送广播寻址命令;未寻址模块,用于主站向总线未挂接的相应从站发送未寻址命令;随机地址编码模块,用于存在多个从站有同一个地址编号时,向该多个从站发送随机地址编码命令;从站响应模块,用于使从站根据接收的广播寻址模块、未寻址模块和随机地址模块发送的相应命令分别做出响应。本发明通过将原本需要技术人员手工对主站和从站信息进行配置的过程,改为主站和从站自识别,减少技术人员配置工作,同时也防止了技术人员配置错误导致的通讯异常。

Description

一种基于串口MODBUS通讯协议的自识别方法及系统
技术领域
本发明涉及电力设备技术领域,具体涉及一种基于串口MODBUS通讯协议的自识别方法及系统。
背景技术
国民经济的快速发展离不开电力工业的大力支持,安全、稳定和充足的电力供应是保障国民经济健康发展的前提条件。而智能化的电力监控系统作为电力系统稳定、安全、可靠、长效运行中最重要的支撑。智能电力监控系统是数字化和信息化时代应运而生的产物,它的发展极大的提高了电力使用的便捷性与可靠性。尤其当下诸多新能源的大力发展,这背后少不了智能化的电力监控系统带来的强大支持。
而在智能电力监控系统中,除了保证智能电力监控系统内部之间有机协调外,还应留有面向外部系统与设备的标准接口,以实现与其他子系统或设备之间的数据交换,保证系统的不断扩展与优化,使得系统具有高度的开放性与兼容性,使得系统间具有良好的互联互通、互操作能力。
在现有的智能电力监控系统下,往往在接口开发与配置上,需要占用大量的人员去开发维护,每个不同项目的不同设备需要根据安装的设备种类与不同的设备地址进行配置与测试,这往往也占用了大量的时间去配置不同厂家的不同设备,从而达到智能电力监控系统的互联互通。如果能通过串口MODBUS通讯协议的自识别技术,则可以大大减少操作人员的配置时间与操作人员错误配置导致的通讯异常情况。
现有技术中,中国专利CN105323328A公开了一种在RS-485上使用MODBUS通讯协议自动识别地址的方法。该方法需要控制器自带ID地址,无法满足适配所有类型的应用场景,且需要在控制器通讯层进行优化处理,实行起来不是很方便。
中国专利CN 111786941 A公开了通信协议自动识别方法及通信方法。该方法需要单独配置控制器,对于成本要求较高的应用场景,显然不太合适。在改造项目或者施工不方便项目上,安装控制器也相对不方便。
发明内容
针对上述存在的技术不足,本发明要解决的技术问题是提供一种基于串口MODBUS通讯协议的自识别方法及系统旨在解决串口通讯modbus协议情况下,有些不方便操作的地方,需要技术人员在主站和从站之间来回查看与修改;甚至有的因为地址重复导致无法通讯,需要技术人员一台台对从站进行配置查看,然后修改后再次去主站进行查看错误是否消除的问题。
为解决上述技术问题,本发明采用如下技术方案:本发明提供一种基于串口MODBUS通讯协议的自识别方法,其特征在于,包括以下步骤:
将所有从站地址依次编号,总线上挂接的从站的地址编号范围为1-32号,未挂接的从站的地址编号范围为33-254号;主站分广播寻址阶段、随机地址编码阶段和未寻址阶段三个阶段向相应从站发送不同的命令;所述广播寻址阶段主站向地址编号范围为1-32号的相应从站发送广播寻址命令,相应从站根据接收的广播寻址命令向主站发送自身地址的响应报文,主站接收相应从站发送的自身地址的响应报文直至所有从站发送完毕;所述未寻址阶段中主站向地址编号范围为33-254号的相应从站发送未寻址命令,相应从站接收未寻址命令根据自身地址编号延时相应时间向主站发送自身地址的响应报文;
其中,若广播寻址阶段/未寻址阶段有多个从站有同一个地址编号则进入随机地址编码阶段;所述随机地址编码阶段中主站向同一个地址编号的多个从站发送随机地址编码命令,相同地址的多个从站各自随机给出地址编号范围为33-254号之间的一个地址编号并根据产生的所有随机码地址有/无重复的情况修改自身地址编号直至随机码地址未有重复。
进一步地,初次上电完成后主站发送一条广播寻址命令,同时根据当前的通讯参数开始计时,其中,所述广播寻址命令为地址请求报文;从站地址编号范围为1-32号时,相应从站根据接收的广播寻址命令立即/等待相应时间向主站以及其他地址编号的从站发送自身地址的响应报文,当主站接收到相应从站自身地址的响应报文时立即清除等待时间进入下一次计时,直至所有的从站发送完毕。
进一步地,从站地址编号范围为1-32号时,相应从站根据接收的广播寻址命令立即向主站以及其他地址编号的从站发送自身地址的响应报文包括:
若地址编号范围为1-32的所有地址编号均存在从站,则该地址编号范围内所有从站按照各自地址编号由小至大的顺序向主站立即发送各自地址的响应报文。
进一步地,从站地址编号范围为1-32号时,相应从站根据接收的广播寻址命令等待相应时间向主站以及地址编号的从站发送自身地址的响应报文包括:
设任一相应从站的地址编号为N,则等待N个周期向主站发送自身地址的响应报文;
若该相应从站接收到相邻较小地址编号为M的从站发送的相应地址响应报文,则等待N-M个周期向主站发送自身地址的响应报文。
进一步地,所述周期为主站从发出广播寻址命令至接收到地址编号为1号的从站发出的响应报文的时间,且主站最大等待时间为32个周期。
进一步地,所述延时相应时间为超出主站最大等待时间的相应等待周期。
进一步地,根据产生的所有随机码地址是否有重复修改自身地址编号包括:
若产生的所有随机码地址未有重复,则接收到随机地址编码命令的相应从站根据随机码地址的先后顺序以及第一次随机地址编码命令中增加的从站数产生顺序码,并将自身地址修改为主站广播寻址阶段中相应从站最大的地址编号+最大的地址编号的相应从站根据随机地址编码命令产生的顺序码;
若产生的随机码地址存在重复时,则主站接收到乱码信息,地址编号相同的多个相应从站再次进入随机地址编码阶段进行随机编码,直至所有随机码地址未有重复。
一种基于串口MODBUS通讯协议的自识别系统,包括:
编号模块,用于将所有从站地址依次编号,总线上挂接的从站的地址编号范围为1-32号,未挂接的从站的地址编号范围为33-254号;
广播寻址模块,用于主站向地址编号范围为1-32号的相应从站发送广播寻址命令;
未寻址模块,用于主站向地址编号范围为33-254号的相应从站发送未寻址命令;
随机地址编码模块,用于存在多个从站有同一个地址编号时,主站向同一个地址编号的多个从站发送随机地址编码命令;
从站响应模块,用于使从站根据接收的广播寻址模块、未寻址模块和随机地址模块发送的相应命令分别做出响应。
本发明的有益效果在于:本发明通过将原本需要技术人员手工对主站和从站信息进行配置的过程,改为主站和从站自识别,减少技术人员配置工作,同时也防止了技术人员配置错误导致的通讯异常。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1的逻辑示意图。
图2为本发明实施例1的广播寻址阶段的流程示意图。
图3为本发明实施例1的随机地址编码阶段的流程示意图。
图4为本发明实施例1的未寻址阶段的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供了一种基于串口MODBUS通讯协议的自识别方法,包括以下步骤:
将所有从站地址依次编号,总线上挂接的从站的地址编号范围为1-32号,未挂接的从站的地址编号范围为33-254号;如图1所示,主站分广播寻址阶段、随机地址编码阶段和未寻址阶段三个阶段向相应从站发送不同的命令;所述广播寻址阶段主站向地址编号范围为1-32号的相应从站发送广播寻址命令,相应从站根据接收的广播寻址命令向主站发送自身地址的响应报文,主站接收相应从站发送的自身地址的响应报文直至所有从站发送完毕。
如图4所示,所述未寻址阶段中主站向地址编号范围为33-254号的相应从站发送未寻址命令,相应从站接收未寻址命令根据自身地址编号延时相应时间向主站发送自身地址的响应报文;所述延时相应时间为超出主站最大等待时间的相应等待周期。
若广播寻址阶段/未寻址阶段有多个从站有同一个地址编号则进入随机地址编码阶段;所述随机地址编码阶段中主站向同一个地址编号的多个从站发送随机地址编码命令,相同地址的多个从站各自随机给出地址编号范围为33-254号之间的一个地址编号并根据产生的所有随机码地址有/无重复的情况修改自身地址编号直至随机码地址未有重复。
应说明的,一条总线上有一个主站设备和多个从站设备,主站需要轮询从从站请求数据。一般的做法是调试人员现场更改每台的从站设备地址信息,而这里的做法是完成自动识别,所以这里在初次上电后主站对该条总线上的从站设备进行扫描。
具体的,广播寻址阶段中初次上电完成后主站发送一条广播寻址命令,同时根据当前的通讯参数开始计时,其中,所述广播寻址命令为地址请求报文;从站地址编号范围为1-32号时,相应从站根据接收的广播寻址命令立即/等待相应时间向主站以及其他地址编号的从站发送自身地址的响应报文,当主站接收到相应从站自身地址的响应报文时立即清除等待时间进入下一次计时,直至所有的从站发送完毕。
例如某一条总线下面挂接了1、4、7号地址从站设备,则主站会先收到1号地址从站设备的响应报文,然后主站会等待3个时间片后接收到4号地址从站的响应报文。同时4号地址会在收到1号地址从站的响应报文后立即清除等待时间,然后等待4-1个时间片发出自身的响应报文。这样做的好处是保证了主站和从站的时间偏差,以防因为时间偏差导致主站与从站之间交互错位,从而导致识别失败。
如图2所示,从站地址编号范围为1-32号时,相应从站根据接收的广播寻址命令立即向主站以及其他地址编号的从站发送自身地址的响应报文包括:
若地址编号范围为1-32的所有地址编号均存在从站,则该地址编号范围内所有从站按照各自地址编号由小至大的顺序向主站立即发送各自地址的响应报文。
从站地址编号范围为1-32号时,相应从站根据接收的广播寻址命令等待相应时间向主站以及地址编号的从站发送自身地址的响应报文包括:
设任一相应从站的地址编号为N,则等待N个周期向主站发送自身地址的响应报文;若该相应从站接收到相邻较小地址编号为M的从站发送的相应地址响应报文,则等待N-M个周期向主站发送自身地址的响应报文;其中所述周期为主站从发出广播寻址命令至接收到地址编号为1号的从站发出的响应报文的时间,且主站最大等待时间为32个周期;例如2号从站本来等待2个周期,结果2号从站监测到1号从站对主站进行了响应即发送了自身地址的响应报文,则2号从站的计时周期改为1个周期,待周期时间到了,则2号从站进行对主站的响应。再例如5号从站检测到1号从站的响应,自身的等待周期从5变为4,然后在4个周期内都没有从站的回复报文,则认为2-4号之间都没有从站存在,然后等待完4个周期后,5号从站进行响应。
如图3所示,根据产生的所有随机码地址是否有重复修改自身地址编号包括:若产生的所有随机码地址未有重复,则接收到随机地址编码命令的相应从站根据随机码地址的先后顺序以及第一次随机地址编码命令中增加的从站数产生顺序码,并将自身地址修改为主站广播寻址阶段中相应从站最大的地址编号+最大的地址编号的相应从站根据随机地址编码命令产生的顺序码;例如在广播寻址阶段中,主站检测到有地址为1,多个2,3,4从站设备,则在随机地址编码阶段排除地址1,3,4,只处理多个2从站设备,然后多个2设备在接收到主站发送的随机地址编码指令后,多个2号地址则将自己的地址改为33-354之间的随机码。假设这里有两台地址为2的从站设备随机后的地址为55和67,则按照顺序,主站识别到这两个原先为2地址的从站设备按照先后顺序排序55和67为原先重复地址为2的从站设备顺序为1和2;因为在这里最后一台从站设备的地址号为4,随机码编码阶段有2个设备,顺序为1(55)和2(67),这样原先多个2地址就会变为4+1和4+2的地址,即在原先广播寻址阶段最后面加入2台地址为5和6的设备,原先多个重复地址为2的设备此时改为地址为5和6;即更改地址则需要判断最后一个地址加上随机编码的偏移地址,然后再加上未寻址顺序,广播地址最后为4,然后重复地址2产生的实际从站设备地址偏移了2个设备,最后加上未寻址的从站设备顺序编号,即4+2+1。
若产生的随机码地址存在重复时,则主站接收到乱码信息,地址编号相同的多个相应从站再次进入随机地址编码阶段进行随机编码,直至所有随机码地址未有重复。
实施例2
基于实施例1中提供的方法,本实施例还提供一种系统如下:
编号模块,用于将所有从站地址依次编号,总线上挂接的从站的地址编号范围为1-32号,未挂接的从站的地址编号范围为33-254号;
广播寻址模块,用于主站向地址编号范围为1-32号的相应从站发送广播寻址命令;
未寻址模块,用于主站向地址编号范围为33-254号的相应从站发送未寻址命令;
随机地址编码模块,用于存在多个从站有同一个地址编号时,主站向同一个地址编号的多个从站发送随机地址编码命令;
从站响应模块,用于使从站根据接收的广播寻址模块、未寻址模块和随机地址模块发送的相应命令分别做出响应。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种基于串口MODBUS通讯协议的自识别方法,其特征在于,包括以下步骤:
将所有从站地址依次编号,总线上挂接的从站的地址编号范围为1-32号,未挂接的从站的地址编号范围为33-254号;主站分广播寻址阶段、随机地址编码阶段和未寻址阶段三个阶段向相应从站发送不同的命令;所述广播寻址阶段主站向地址编号范围为1-32号的相应从站发送广播寻址命令,相应从站根据接收的广播寻址命令向主站发送自身地址的响应报文,主站接收相应从站发送的自身地址的响应报文直至所有从站发送完毕;所述未寻址阶段中主站向地址编号范围为33-254号的相应从站发送未寻址命令,相应从站接收未寻址命令根据自身地址编号延时相应时间向主站发送自身地址的响应报文;
其中,若广播寻址阶段/未寻址阶段有多个从站有同一个地址编号则进入随机地址编码阶段;所述随机地址编码阶段中主站向同一个地址编号的多个从站发送随机地址编码命令,相同地址的多个从站各自随机给出地址编号范围为33-254号之间的一个地址编号并根据产生的所有随机码地址有/无重复的情况修改自身地址编号直至随机码地址未有重复。
2.如权利要求1所述的一种基于串口MODBUS通讯协议的自识别方法,其特征在于,初次上电完成后主站发送一条广播寻址命令,同时根据当前的通讯参数开始计时,其中,所述广播寻址命令为地址请求报文;从站地址编号范围为1-32号时,相应从站根据接收的广播寻址命令立即/等待相应时间向主站以及其他地址编号的从站发送自身地址的响应报文,当主站接收到相应从站自身地址的响应报文时立即清除等待时间进入下一次计时,直至所有的从站发送完毕。
3.如权利要求2所述的一种基于串口MODBUS通讯协议的自识别方法,其特征在于,从站地址编号范围为1-32号时,相应从站根据接收的广播寻址命令立即向主站以及其他地址编号的从站发送自身地址的响应报文包括:
若地址编号范围为1-32的所有地址编号均存在从站,则该地址编号范围内所有从站按照各自地址编号由小至大的顺序向主站立即发送各自地址的响应报文。
4.如权利要求2所述的一种基于串口MODBUS通讯协议的自识别方法,其特征在于,从站地址编号范围为1-32号时,相应从站根据接收的广播寻址命令等待相应时间向主站以及地址编号的从站发送自身地址的响应报文包括:
设任一相应从站的地址编号为N,则等待N个周期向主站发送自身地址的响应报文;
若该相应从站接收到相邻较小地址编号为M的从站发送的相应地址响应报文,则等待N-M个周期向主站发送自身地址的响应报文。
5.如权利要求4所述的一种基于串口MODBUS通讯协议的自识别方法,其特征在于,所述周期为主站从发出广播寻址命令至接收到地址编号为1号的从站发出的响应报文的时间,且主站最大等待时间为32个周期。
6.如权利要求1或5所述的一种基于串口MODBUS通讯协议的自识别方法,其特征在于,所述延时相应时间为超出主站最大等待时间的相应等待周期。
7.如权利要求1所述的一种基于串口MODBUS通讯协议的自识别方法,其特征在于,根据产生的所有随机码地址是否有重复修改自身地址编号包括:
若产生的所有随机码地址未有重复,则接收到随机地址编码命令的相应从站根据随机码地址的先后顺序以及第一次随机地址编码命令中增加的从站数产生顺序码,并将自身地址修改为主站广播寻址阶段中相应从站最大的地址编号+最大的地址编号的相应从站根据随机地址编码命令产生的顺序码;
若产生的随机码地址存在重复时,则主站接收到乱码信息,地址编号相同的多个相应从站再次进入随机地址编码阶段进行随机编码,直至所有随机码地址未有重复。
8.基于如权利要求1~7任一所述的一种基于串口MODBUS通讯协议的自识别方法的自识别系统,其特征在于,包括:
编号模块,用于将所有从站地址依次编号,总线上挂接的从站的地址编号范围为1-32号,未挂接的从站的地址编号范围为33-254号;
广播寻址模块,用于主站向地址编号范围为1-32号的相应从站发送广播寻址命令;
未寻址模块,用于主站向地址编号范围为33-254号的相应从站发送未寻址命令;
随机地址编码模块,用于存在多个从站有同一个地址编号时,主站向同一个地址编号的多个从站发送随机地址编码命令;
从站响应模块,用于使从站根据接收的广播寻址模块、未寻址模块和随机地址模块发送的相应命令分别做出响应。
CN202311595336.2A 2023-11-27 2023-11-27 一种基于串口modbus通讯协议的自识别方法及系统 Pending CN117527762A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311595336.2A CN117527762A (zh) 2023-11-27 2023-11-27 一种基于串口modbus通讯协议的自识别方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311595336.2A CN117527762A (zh) 2023-11-27 2023-11-27 一种基于串口modbus通讯协议的自识别方法及系统

Publications (1)

Publication Number Publication Date
CN117527762A true CN117527762A (zh) 2024-02-06

Family

ID=89747505

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311595336.2A Pending CN117527762A (zh) 2023-11-27 2023-11-27 一种基于串口modbus通讯协议的自识别方法及系统

Country Status (1)

Country Link
CN (1) CN117527762A (zh)

Similar Documents

Publication Publication Date Title
US7852790B2 (en) Communication master station startup period control method
CN108737590B (zh) 一种地址自动分配的方法、系统、Modbus主站、Modbus从站
CN111147619B (zh) 本地实现rs485从机设备自动分配地址的方法和系统
CN101852472B (zh) 一种空调系统自动编址的方法和空调控制器
WO2019196462A1 (zh) 空调机组、空调机组的操作方法和装置
EP0060067A1 (en) Multi-station token pass communication system
CN102355507B (zh) 一种带自检和冲突检测的串行通信接口
CN106878488A (zh) 一种Modbus RTU总线地址自动分配方法
CN106016587B (zh) 多联空调机组及其通讯方法和装置
CN102740337A (zh) 基站的远程维护方法及系统
US20090077455A1 (en) Transmission system
KR101179431B1 (ko) 이더캣 네트워크 시스템 및 이의 운용 방법
CN109981404B (zh) 自组网网络结构及其诊断方法
CN114500472A (zh) 一种rs485通信地址自动分配的方法
CN102353118B (zh) 一种空调双线控器主从关系判断控制方法
CN113039546A (zh) 主从设备通信系统及方法
CN117527762A (zh) 一种基于串口modbus通讯协议的自识别方法及系统
JPH1041964A (ja) プログラマブルコントローラのネットワークシステム
CN116366437A (zh) 一种即插即用的柜内组网策略
CN112165422B (zh) 一种一主多从温度控制系统的地址自动匹配方法
EP0093578A2 (en) Communications system
CN210518417U (zh) 地址分配系统
CN114422288A (zh) 基于Modbus协议的通讯系统
CN107302481B (zh) 一种1553b总线网络及串行总线网络的跨网状态可靠切换方法
JP2007128536A (ja) 通信マスタ局の起動時制御方法

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