CN107454208B - 一种为从节点设备分配网络地址的方法 - Google Patents
一种为从节点设备分配网络地址的方法 Download PDFInfo
- Publication number
- CN107454208B CN107454208B CN201710736957.6A CN201710736957A CN107454208B CN 107454208 B CN107454208 B CN 107454208B CN 201710736957 A CN201710736957 A CN 201710736957A CN 107454208 B CN107454208 B CN 107454208B
- Authority
- CN
- China
- Prior art keywords
- equipment
- slave node
- message
- messages
- node device
- 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
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
-
- 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/403—Bus networks with centralised control, e.g. polling
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Selective Calling Equipment (AREA)
Abstract
本发明公开了一种为从节点设备自动分配地址的方法,其采用搜索法查找从节点设备地址,能够在较短的时间内确定从节点设备并为其分配网络地址,可有效解决现有技术中存在的操作繁琐,并且设定网络地址需要较长的时间的缺点;当项目需要扩大而增加设备时,本发明提供的方法还可以实现重新自动分配设备地址,从而有效提高工作效率。
Description
技术领域
本发明涉及一种从络地址分配的方法,尤其是一种在Modbus通信网络中为从节点设备自动分配地址的方法。
背景
Modbus是一种串行通讯协议,以其协议简单、实施容易、性价比高、可靠性好等优点而获得了越来越广发的应用,成为工业领域通信协议标准,并且是工业电子设备之间相对常压的连接方式。Modbus网络是一个主/从结构的网络,其中有一个节点是主节点,其他使用Modbus协议参与通信的节点是从节点,该网络中每一个从节点设备都有一个唯一的地址。在网络中,只有被指定为主节点的节点可以启动一个命令,每一个Modbus命令都包含了打算执行的节点的设备地址并以广播的方式向网络中各从节点发布,各从节点需要根据命令中包含的设备地址判断是否需要执行。因此,Modbus网络中各从节点的地址设定就显得尤为重要,一旦出现重复地址或者遗漏地址,就会导致通信网络冲突,系统无法正常使用。
传统采用人工手动设定来设定通信网络从节点的网络地址,这种方法不仅工作量大,而且还可能导致重复设定地址值的情况,引入人工错误。中国专利CN101309306公开了一种在Modbus通信网络中为从节点设备分配地址的方法,由主节点设备周期性的向从节点设备发送地址轮询报文,一旦网络中存在该轮询报文中包含的地址则回应该轮询报文,并设定该从节点设备的地址。使用该方法首先需要在主节点设备中设定网络中从节点设备的地址与设备总量并以此询问,其操作繁琐,并且设定网络地址需要较长的时间。
发明内容
为克服现有技术的不足及存在的问题,本发明提供一种在Modbus通信网络中为从节点设备自动分配地址的方法,该方法具有效率高、时间短为等优点,且当因项目扩大需要增加设备时,又可以重新为节点设备分配地址的方法。
本发明是通过以下技术方案实现的: 一种从节点设备自动分配网络地址的方法,应用于Modbus通信网络中,所述方法步骤包括:
S1、初始化主节点设备及从节点设备,以进入Modbus地址设置准备状态;
S2、主节点设备按照预设的顺序依次向从节点设备发送一批带有设备号信息的设备号报文,该批设备号报文的数量为十个,十个设备号报文的最高位依次为0-9,其余位的值补齐为固定值A,或者十个设备号报文的最低位依次为0-9,其余位的值补齐为固定值A;
S3、从节点设备对接收到的设备号报文进行解析,将自身对应位的设备号和收到的设备号报文中不是A的对应位进行比较,如果相等则从节点设备向主节点设备发送包含该从节点设备号的应答报文,否则不回应该设备号报文;
S4、判断主节点设备收到的应答报文的数量,并根据收到的应答文的数量进行相应的处理:
如果主节点设备没有收到应答报文,分配网络地址的流程结束;
如果主节点设备收到一应答报文,所述应答报文中包含一从节点设备对应的设备号,则所述主节点设备向该从节点设备发送设定报文,所述设定报文中包含Modbus网络地址,从节点设备发送确认报文,且该从节点设备不再对主节点设备发送带设备号信息的应答报文进行回应,并返回步骤S1;
如果主节点设备收到至少两个应答报文,则记录当前设备号报文中不是A的位的值,并向从节点设备发送带下一批带有设备号信息的设备号报文;该批设备号报文的数量为十个,当步骤S2中的设备报文中不是固定值A所在位为最高位时,该批设备号报文由上一批设备报文中不是固定值A所在位的值,依次向右移一位,其余位的值均为固定值A;或者当步骤S2中的设备报文中不是固定值A所在位为最低位时,该批设备号报文由上一批设备报文中不是固定值A所在位的值,依次向左移一位,其余位的值均为固定值A;
S5、(a)从节点设备对接收到的设备号报文进行解析,将自身对应位的设备号和收到的设备号报文中不是A的对应位进行比较,如果相等则从节点设备向主节点设备发送包含该从节点设备号的应答报文,否则不回应该设备号报文;
(b)判断主节点设备收到的应答报文的数量,并根据收到的应答文的数量进行相应的处理:
(c)如果主节点设备收到一应答报文,所述应答报文中包含一从节点设备对应的设备号,则所述主节点设备向该从节点设备发送设定报文,所述设定报文中包含Modbus网络地址,从节点设备发送确认报文,且该从节点设备不再对主节点设备发送带设备号信息的应答报文进行回应,并返回步骤S1;
(d)如果主节点设备没有收到应答报文,返回步骤S1;
(e)如果主节点设备收到至少两个应答报文,则记录当前设备号报文中不是A的位的值,并向从节点设备发送带下一批带有设备号信息的设备号报文;该批设备号报文的数量为十个,当步骤S2中的设备报文中不是固定值A所在位为最高位时,该批设备号报文由上一批设备报文中不是固定值A所在位的值,依次向右移一位,其余位的值均为固定值A;或者当步骤S2中的设备报文中不是固定值A所在位为最低位时,该批设备号报文由上一批设备报文中不是固定值A所在位的值,依次向左移一位,其余位的值均为固定值A;
(f)重复步骤(a)-(e)进行判定;
S6、当所有的从节点设备都被确认并设定地址值后,分配网络地址的流程结束。
优选地,所述主节点设备在向从节点设备发送带有设备号信息的设备号报文时,根据设备号报文中不是固定值A所在位的值的大小,按照由小到大的升序顺序来依次发送,或者按照由大到小的降序顺序来依次发送。
较佳地,步骤S1中,主节点设备通过向从节点设备发送初始化命令999999999999来实现初始化从节点设备。
与现有技术相比,本发明提供的一种在Modbus通信网络中为从节点设备自动分配地址的方法,其采用搜索法查找从节点设备地址,能够在较短的时间内确定从节点设备并为其分配网络地址;并且当项目需要扩大时,考虑到地址需要重新设定,本发明还可以实现重新自动分配设备地址。
附图说明
图1是本发明实施例中所述方法的流程结构示意图。
图2是本发明实施例中所述节点设备与从节点设备的连接结构示意图图。
其中,附图标号为:1-主节点设备,2-从节点设备,3–Modbus总线。
具体实施方式
为了便于本领域技术人员的理解,以下结合附图和具体实施例对本发明作进一步详细描述。
一种从节点设备自动分配网络地址的方法,应用于Modbus通信网络中,该Modbus通信网络中,其包括一主节点设备1和一个或多个从节点设备2,所述主节点设备1和所述从节点设备2通过Modbus总线3相互连接,如附图2所示;如附图1所示,所述方法步骤包括:
S1、初始化主节点设备及从节点设备,以进入Modbus地址设置准备状态;本发明实施例中,主节点设备通过向从节点设备发送初始化命令999999999999来实现初始化从节点设备;
S2、主节点设备按照预设的顺序依次向从节点设备发送一批带有设备号信息的设备号报文,该批设备号报文的数量为十个,十个设备号报文的最高位依次为0-9,其余位的值补齐为固定值A(即十个设备号报文依次为0AAAAAAAAAAA、1AAAAAAAAAAA、2AAAAAAAAAAA、3AAAAAAAAAAA、4AAAAAAAAAAA、5AAAAAAAAAAA、6AAAAAAAAAAA、7AAAAAAAAAAA、8AAAAAAAAAAA以及 9AAAAAAAAAAA);或者十个设备号报文的最低位依次为0-9,其余位的值补齐为固定值A(即十个设备号报文依次为AAAAAAAAAAA0、AAAAAAAAAAA1、AAAAAAAAAAA2、AAAAAAAAAAA3、AAAAAAAAAAA4、AAAAAAAAAAA5、AAAAAAAAAAA6、AAAAAAAAAAA7、AAAAAAAAAAA8以及AAAAAAAAAAA9);
S3、从节点设备对接收到的设备号报文进行解析,将自身对应位的设备号和收到的设备号报文中不是A的对应位进行比较,如果相等则从节点设备向主节点设备发送包含该从节点设备号的应答报文,否则不回应该设备号报文;
S4、判断主节点设备收到的应答报文的数量,并根据收到的应答文的数量进行相应的处理:
如果主节点设备没有收到应答报文,分配网络地址的流程结束;
如果主节点设备收到一应答报文,所述应答报文中包含一从节点设备对应的设备号,则所述主节点设备向该从节点设备发送设定报文,所述设定报文中包含Modbus网络地址,从节点设备发送确认报文,且该从节点设备不再对主节点设备发送带设备号信息的应答报文进行回应,并返回步骤S1;
如果主节点设备收到至少两个应答报文,则记录当前设备号报文中不是A的位的值,并向从节点设备发送带下一批带有设备号信息的设备号报文;该批设备号报文的数量为十个,当步骤S2中的设备报文中不是固定值A所在位为最高位时,该批设备号报文由上一批设备报文中不是固定值A所在位的值,依次向右移一位,其余位的值均为固定值A,如上一批的十个设备号报文依次为0AAAAAAAAAAA、1AAAAAAAAAAA-9AAAAAAAAAAA时,则该批设备号报文依次为A0AAAAAAAAAA、A1AAAAAAAAAA-A9AAAAAAAAAA;或者当步骤S2中的设备报文中不是固定值A所在位为最低位时,该批设备号报文由上一批设备报文中不是固定值A所在位的值,依次向左移一位,其余位的值均为固定值A,如上一批的十个设备号报文依次为AAAAAAAAAAA0、AAAAAAAAAAA1-AAAAAAAAAAA9时,则该批设备号报文依次为AAAAAAAAAA0A、AAAAAAAAAA1A-AAAAAAAAAA9A;
S5、(a)从节点设备对接收到的设备号报文进行解析,将自身对应位的设备号和收到的设备号报文中不是A的对应位进行比较,如果相等则从节点设备向主节点设备发送包含该从节点设备号的应答报文,否则不回应该设备号报文;
(b)判断主节点设备收到的应答报文的数量,并根据收到的应答文的数量进行相应的处理:
(c)如果主节点设备收到一应答报文,所述应答报文中包含一从节点设备对应的设备号,则所述主节点设备向该从节点设备发送设定报文,所述设定报文中包含Modbus网络地址,从节点设备发送确认报文,且该从节点设备不再对主节点设备发送带设备号信息的应答报文进行回应,并返回步骤S1;
(d)如果主节点设备没有收到应答报文,返回步骤S1;
(e)如果主节点设备收到至少两个应答报文,则记录当前设备号报文中不是A的位的值,并向从节点设备发送带下一批带有设备号信息的设备号报文;该批设备号报文的数量为十个,当步骤S2中的设备报文中不是固定值A所在位为最高位时,该批设备号报文由上一批设备报文中不是固定值A所在位的值,依次向右移一位,其余位的值均为固定值A;或者当步骤S2中的设备报文中不是固定值A所在位为最低位时,该批设备号报文由上一批设备报文中不是固定值A所在位的值,依次向左移一位,其余位的值均为固定值A;
(f)重复步骤(a)-(e)进行判定;
S6、当所有的从节点设备都被确认并设定地址值后,分配网络地址的流程结束。
在其中一个优选的实施例中,所述主节点设备在向从节点设备发送带有设备号信息的设备号报文时,根据设备号报文中不是固定值A所在位的值的大小,按照由小到大的升序顺序来依次发送,如当十个设备号报文的最高位依次为0-9时,则依次按照0AAAAAAAAAAA、1AAAAAAAAAAA、2AAAAAAAAAAA、3AAAAAAAAAAA、4AAAAAAAAAAA、5AAAAAAAAAAA、6AAAAAAAAAAA、7AAAAAAAAAAA、8AAAAAAAAAAA以及 9AAAAAAAAAAA的顺序来发送,当十个设备号报文的次高位依次为0-9时,则依次按照A0AAAAAAAAAA、A1AAAAAAAAAA、A2AAAAAAAAAA、A3AAAAAAAAAA、A4AAAAAAAAAA、A5AAAAAAAAAA、A6AAAAAAAAAA、A7AAAAAAAAAA、A8AAAAAAAAAA以及 A9AAAAAAAAAA的顺序来发送,其余依次类推;或者,也按照由大到小的降序顺序来依次发送,如当十个设备号报文的最高位依次为0-9时,则依次按照9AAAAAAAAAAA、8AAAAAAAAAAA、7AAAAAAAAAAA、6AAAAAAAAAAA、5AAAAAAAAAAA、4AAAAAAAAAAA、3AAAAAAAAAAA、2AAAAAAAAAAA、1AAAAAAAAAAA以及 0AAAAAAAAAAA的顺序来发送。本发明实施例中,优选根据设备号报文中不是固定值A所在位的值,按照由小到大的升序顺序来依次发送。当然,在主节点设备在向从节点设备发送带有设备号信息的设备号报文时,也可以根据需要按照其他顺序来发送,在此不再一一列举。
本发明实施例提供的为从节点设备自动分配地址的方法,其采用搜索法查找从节点设备地址,能够在较短的时间内确定从节点设备并为其分配网络地址,可有效解决现有技术中存在的操作繁琐,并且设定网络地址需要较长的时间的缺点。另外,当项目需要扩大而增加设备时,本发明提供的方法还可以实现重新自动分配设备地址,从而有效提高工作效率。
上述实施例为本发明的较佳的实现方式,并非是对本发明的限定,在不脱离本发明的发明构思的前提下,任何显而易见的替换均在本发明的保护范围之内。
Claims (4)
1.一种为从节点设备自动分配地址的方法,应用于Modbus通信网络中,其特征在于,所述方法步骤包括:
S1、初始化主节点设备及从节点设备,以进入Modbus地址设置准备状态;
S2、主节点设备按照预设的顺序依次向从节点设备发送一批带有设备号信息的设备号报文,该批设备号报文的数量为十个,十个设备号报文的最高位依次为0-9,其余位的值补齐为固定值A,或者十个设备号报文的最低位依次为0-9,其余位的值补齐为固定值A;
S3、(a)从节点设备对接收到的设备号报文进行解析,将自身对应位的设备号和收到的设备号报文中不是A的对应位进行比较,如果相等则从节点设备向主节点设备发送包含该从节点设备号的应答报文,否则不回应该设备号报文;
(b)判断主节点设备收到的应答报文的数量,并根据收到的应答文的数量进行相应的处理:
(c)如果主节点设备收到一应答报文,所述应答报文中包含一从节点设备对应的设备号,则所述主节点设备向该从节点设备发送设定报文,所述设定报文中包含Modbus网络地址,从节点设备发送确认报文,且该从节点设备不再对主节点设备发送带设备号信息的应答报文进行回应,并返回步骤S1;
(d)如果主节点设备没有收到应答报文,返回步骤S1;
(e)如果主节点设备收到至少两个应答报文,则记录当前设备号报文中不是A的位的值,并向从节点设备发送带下一批带有设备号信息的设备号报文;该批设备号报文的数量为十个,当步骤S2中的设备报文中不是固定值A所在位为最高位时,该批设备号报文由上一批设备报文中不是固定值A所在位的值,依次向右移一位,其余位的值均为固定值A;或者当步骤S2中的设备报文中不是固定值A所在位为最低位时,该批设备号报文由上一批设备报文中不是固定值A所在位的值,依次向左移一位,其余位的值均为固定值A;
(f)重复步骤(a)-(e)进行判定;
S4、当所有的从节点设备都被确认并设定地址值后,分配网络地址的流程结束。
2.根据权利要求1所述的方法,其特征在于:所述主节点设备在向从节点设备发送带有设备号信息的设备号报文时,根据设备号报文中不是固定值A所在位的值的大小,按照由小到大的升序顺序来依次发送。
3.根据权利要求1所述的方法,其特征在于:所述主节点设备在向从节点设备发送带有设备号信息的设备号报文时,根据设备号报文中不是固定值A所在位的值的大小,按照由大到小的降序顺序来依次发送。
4.根据权利要求1~3中任意一项所述的方法,其特征在于:步骤S1中,主节点设备通过向从节点设备发送初始化命令999999999999来实现初始化从节点设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710736957.6A CN107454208B (zh) | 2017-08-24 | 2017-08-24 | 一种为从节点设备分配网络地址的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710736957.6A CN107454208B (zh) | 2017-08-24 | 2017-08-24 | 一种为从节点设备分配网络地址的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107454208A CN107454208A (zh) | 2017-12-08 |
CN107454208B true CN107454208B (zh) | 2020-05-08 |
Family
ID=60492997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710736957.6A Active CN107454208B (zh) | 2017-08-24 | 2017-08-24 | 一种为从节点设备分配网络地址的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107454208B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108039993A (zh) * | 2017-12-15 | 2018-05-15 | 广东雅达电子股份有限公司 | 一种在集中抄表系统中快速收集分支设备信息的方法 |
CN107864235B (zh) * | 2017-12-19 | 2021-03-30 | 宁波公牛电器有限公司 | 一种智能配电箱分路断路器的地址分配方法及装置 |
CN110296503B (zh) * | 2019-05-10 | 2021-04-27 | 珠海格力电器股份有限公司 | 空调机组自动分配地址的方法、空调系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101309306A (zh) * | 2008-07-16 | 2008-11-19 | 哈尔滨工业大学 | 在Modbus通信网络中为从节点设备分配地址的方法 |
EP2015518A1 (de) * | 2007-06-22 | 2009-01-14 | Siemens Aktiengesellschaft | Slavegerät zur Verwendung in einer Reihenschaltung sowie Busanordnung mit Reihenschaltung in einem Subbussystem |
CN102325201A (zh) * | 2011-10-27 | 2012-01-18 | 珠海派诺科技股份有限公司 | 在Modbus通信网络中为从节点设备分配网络地址的方法 |
CN103621049A (zh) * | 2011-04-19 | 2014-03-05 | 施耐德电气It公司 | 用于在多点网络中自动分配地址给设备的系统和方法 |
CN106878488A (zh) * | 2017-04-29 | 2017-06-20 | 成都工鼎科技有限公司 | 一种Modbus RTU总线地址自动分配方法 |
-
2017
- 2017-08-24 CN CN201710736957.6A patent/CN107454208B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2015518A1 (de) * | 2007-06-22 | 2009-01-14 | Siemens Aktiengesellschaft | Slavegerät zur Verwendung in einer Reihenschaltung sowie Busanordnung mit Reihenschaltung in einem Subbussystem |
CN101309306A (zh) * | 2008-07-16 | 2008-11-19 | 哈尔滨工业大学 | 在Modbus通信网络中为从节点设备分配地址的方法 |
CN103621049A (zh) * | 2011-04-19 | 2014-03-05 | 施耐德电气It公司 | 用于在多点网络中自动分配地址给设备的系统和方法 |
CN102325201A (zh) * | 2011-10-27 | 2012-01-18 | 珠海派诺科技股份有限公司 | 在Modbus通信网络中为从节点设备分配网络地址的方法 |
CN106878488A (zh) * | 2017-04-29 | 2017-06-20 | 成都工鼎科技有限公司 | 一种Modbus RTU总线地址自动分配方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107454208A (zh) | 2017-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107454208B (zh) | 一种为从节点设备分配网络地址的方法 | |
CN101951417B (zh) | 多服务器地址分配方法、系统及中继设备 | |
CN107040284B (zh) | 一种提高数据传输的可靠性与稳定性的多址接入方法 | |
US7826462B2 (en) | Address assignment apparatus, address assignment method, and computer product | |
JP2017228265A (ja) | 工業インターネットブロードバンドフィールドバスのリアルタイム性の実現方法 | |
CN1949784A (zh) | Dhcp中继为dhcp客户端请求ip地址的方法 | |
CN103888551A (zh) | 一种网络中的因特网协议地址获取方法、中继设备及系统 | |
CN106789498B (zh) | Modbus通信网络的网络地址分配方法、从节点设备与通信系统 | |
CN108989476B (zh) | 一种地址分配方法以及装置 | |
CN107835266B (zh) | 一种为通信总线上相同节点自动分配地址的方法 | |
CN113114793B (zh) | 从机节点地址竞争方法、装置及电器系统 | |
CN110661897A (zh) | 管理地址的方法和装置 | |
CN109040184B (zh) | 一种主节点的选举方法及服务器 | |
CN111371659B (zh) | 一种rs485从设备地址自动分配的方法 | |
US20180054415A1 (en) | Internet Protocol Address Allocation Method and Router | |
JP2002185477A (ja) | 時分割ユニバーサルマルチプルアクセスネットワーク | |
CN106302032B (zh) | 一种点对多点轮询通讯方法 | |
CN111866212B (zh) | 一种网关为下挂路由器自动分配ipv6 pd前缀的方法 | |
CN107734082B (zh) | 一种地址分配方法及系统 | |
CN113242170B (zh) | 一种地址分配的方法和装置 | |
CN108471440B (zh) | 一种数字对讲方法及系统 | |
CN102025797A (zh) | 地址前缀处理方法、装置、系统及网络设备 | |
CN107370647B (zh) | 一种局域内部控制器系统间互联的方法及一种局域网系统 | |
CN107026919B (zh) | 一种确定节点设备网络地址的方法、节点设备和控制系统 | |
CN113852699A (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 |