CN109788499B - 一种主干N节点M冗余传输的LoRa传输方法 - Google Patents
一种主干N节点M冗余传输的LoRa传输方法 Download PDFInfo
- Publication number
- CN109788499B CN109788499B CN201811634930.7A CN201811634930A CN109788499B CN 109788499 B CN109788499 B CN 109788499B CN 201811634930 A CN201811634930 A CN 201811634930A CN 109788499 B CN109788499 B CN 109788499B
- Authority
- CN
- China
- Prior art keywords
- node
- backbone
- trunk
- nodes
- layer
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明涉及一种主干N节点M冗余传输的LoRa传输方法,该方法提出一种N个主干节点之间的M节点冗余的LORA传输机制,详细列出了其分时复用的传输机制以及每个通讯节点在通讯中不同时刻所扮演的角色,还说明了每个通讯节点对于冗余传输中相应报文的响应选择,同时采用“分时传输等待机制”避免LORA信号冲撞,即任何一个节点报文信息的发送分配在特定的通道都是有着其独特分配的时刻,且有一定时间范围的延时保护,以确保信息可以完整发送不受到干扰,该***中没有任何一个其他的主干节点或层内节点、主节点可以在这个时刻发送报文,这样彻底避免了冲撞的可能性。
Description
技术领域
本发明涉及一种数据冗余传输方法,具体涉及一种主干N节点M冗余传输的LoRa传输方法,属于通信控制技术领域。
背景技术
据了解,随着科技的不断发展和应用,SUB1G射频通信技术已经开始走进并影响人们的生产和生活等活动。尤其是近年来,随着人们对智能体验需求的日益增加,越来越多的碎片化终端设备需要接入网络实现互联,SUB1G射频通信技术已经在智能家居、智慧城市、智能建筑、智能农业、智能交通等各个应用场景中大显身手。组网技术在互联网应用中十分重要,解决了各个终端设备的网络互联与通信。LoRa技术是近年来兴起的一种低功耗广域网通信技术,具有传输距离远、终端功耗低、容量大等优点,能较大程度地实现更长距离通信。在现有的LoRa传输技术中,单方向远距离通讯传输时,需要将多个主干节点依次串联组成能够实现远距离通讯的***。然而,当***中一个或多个主干节点出现故障时,整个***就会瘫痪,不能实现通讯。
发明内容
本发明所要解决的技术问题是:针对现有技术存在的问题,提供一种主干N节点M冗余传输的LoRa传输方法,能自适应调整传输节点,提高了LoRa传输的可靠性。
本发明解决其技术问题的技术方案如下:
一种主干N节点M冗余传输的LoRa传输方法,包括以下步骤:
S1、组建LoRa自组网***,该***主要由一个主节点和N个主干层组成,N个主干层由近至远沿主节点分布,每个主干层包括一个主干节点,将主节点标记为0,并将N个主干节点按照信号强弱顺序(一般来讲是按照距离主节点由近及远的顺序)依次标记为1,2,…i,…N,N≥3;转至步骤S2;
S2、主节点发送类型为j的命令F0(j)到冗余主干节点1,2,…i,…M,且M<N;转至步骤S3;
S3、确认主干节点1是否收到主节点0发送的命令,若主干节点1收到主节点0发送的命令,则主干节点1立即转发命令F1(j)到主干节点2,…i,…M+1,且M+1<N,此时在监听的后续冗余主干节点2,…i,…M如果监听到命令F1(j),则取消等待转发F0(j),若主干节点1没有收到主节点0发送的命令,则看后续冗余主干节点是否能收到命令F0(j);转至步骤S4;
S4、对于每一个时刻在监听的冗余主干节点来说,需要判断接收到的报文的方向、源节点和目标节点,需要判定本节点在冗余节点队列中的位置,对于一个M节点冗余的队列来说,主干节点i发向随后的冗余主干节点序列Si的报文为Fi(j),Si:i+1,i+2,…,i+k,…,i+M,假设主干节点i+k之前的冗余主干节点没有在k×Δt时间内发出转发报文,则在k×Δt时刻,主干节点i+k发出转发的报文Fi+k(j),其冗余目标地址队列为Si+k:i+k+1,i+k+2,…,i+k+M,而主干节点i的冗余主干节点序列Si中从i+k+1到i+M的主干节点一旦侦听到源地址为i+k的转发报文Fi+k(j),则立刻取消对Fi(j)报文的转发等待,转而产生新的冗余目标地址队列Si+k;转至步骤S5;
S5、剩余的主干节点按照步骤S4进行操作,直至最后一层的主干节点收到命令。
本发明为基于LoRa技术的射频冗余中继自组网通讯方式,适用于长距离的单方向远距离通讯的实现,例如输电线信息传输等,可以将远距离沿线一定范围的节点信号可靠地传回主节点。
优选地,在步骤S4中,对于主干节点i的通讯方法如下:
确认主干节点i是否收到命令,若主干节点i收到命令,则进一步判断主干节点i收到的命令是否是来自上一主干节点i-1的报文Fi-1(j),若主干节点i收到的命令来自主干节点i-1,则主干节点i在收到命令的时刻立即转发报文Fi(j)到冗余主干节点序列Si:i+1,…,M+i,且M+i<N,若主干节点i收到的命令Fx(j)不是来自主干节点i-1,则主干节点i等待(i-x-1)×Δt时间后转发命令到主干节点i+1,…,M+i,x为主干节点i接收命令的源地址;若主干节点i没有收到命令,主干节点i不做响应,由下一冗余主干节点接收并转发命令。
优选地,在步骤S4中,主干节点i转发命令后,在一定时间内等待此后的主干节点回复的报文,若在这个时间内收到此后主干节点回复的命令,则终止等待过程,否则,若冗余主干节点序列Si内M个地址都接收不到主干节点i发出的报文Fi(j),则判定主干网络在主干节点i处中断或截止或作为网络范围探测,认为主干节点i为最后一层的主干节点,即N=i。
优选地,在步骤S5中,最后一层的主干节点收到命令后,按照相反顺序依次将相关数据信息传递至上层的主干节点,直至主节点收到所有数据。
优选地,在步骤S5中,按照相反顺序传递数据信息时,对于主干节点i,主干节点i将主干节点i+1,…,N所在层的信息连同本层信息传递给主干节点i-1。
优选地,所述命令采用报文结构,所述报文结构中具有一个源地址和M个目标地址。
优选地,所述主干层还包括若干个围绕主干节点分布的层内节点。
优选地,所述主节点包括主节点通信模块,所述主节点通信模块上具有用于主节点与主干节点之间通讯的LoRa信道CHO;所述主干节点包括主干节点通信模块,所述主干节点通信模块具有用于主干节点与主节点之间以及两主干节点之间通讯的LoRa信道CHO以及用于主干节点与层内节点通讯的LoRa信道CHi;所述层内节点包括层内节点通信模块,所述层内节点通信模块具有用于层内节点与主干节点之间通讯的LoRa信道CHi。
采用上述结构后,本发明的主节点与主干节点之间、两个主干节点之间的通信占用同一个LoRa信道CH0,主干节点与层内节点通信占用不同的LoRa信道CHi,不同层的主干节点与层内节点通信的LoRa信道是不相同的。每一个主干节点,如果其带有的层内节点的数目不为0,则该节点的通讯模块需要两个LoRa通讯芯片,分别针对主干通讯信道CH0和层内通讯信道CHi。
优选地,所述主干节点与其层内节点保持通讯,以收集层内信息,主干节点收集层内信息后,参与主干节点间通讯,将本层信息沿主线上行方向传至至上一层的主干节点,直至所有层的信息传递至主节点。
优选地,主干节点与其层内节点通讯的方法如下:将层内节点地址记为k,且k=1,2,…m,主干节点向本层内的所有层内节点发起通讯,层内节点k在kΔt时间段内发出回应报文至主干节点;
主干节点与层内节点之间设置冗余机制,在第i主干层内设置L个备用主干节点,且L<M,当主干节点i正常通讯时,备用主干节点处于备用状态,作为层内节点使用,当主干节点i故障时,备用主干节点作为当值主干节点使用,参与主干节点间的通讯。
本发明提出一种N个主干节点之间的M节点冗余的LORA传输机制,是一种通用的方法,该方法详细列出了其分时复用的传输机制以及每个通讯节点在通讯中不同时刻所扮演的角色,还说明了每个通讯节点对于冗余传输中相应报文的响应选择,同时采用“分时传输等待机制”避免LORA信号冲撞,即任何一个节点报文信息的发送分配在特定的通道都是有着其独特分配的时刻,且有一定时间范围的延时保护,以确保信息可以完整发送不受到干扰,该***中没有任何一个其他的主干节点或层内节点、主节点可以在这个时刻以同样的信道发送报文,这样彻底避免了冲撞的可能性。
附图说明
图1为本发明中LoRa***的结构示意图。
图2为本发明中主节点通信模块、主干节点通信模块、层内节点通信模块的结构示意图。
图3为本发明方法的逻辑框图。
图4为本发明中3冗余的主干节点与主干节点通信方式的示意图。
具体实施方式
本发明着重描述了LORA***主干节点的冗余传输自组网方法,以及由主干节点所维持的各层的LORA通讯***结构。本发明的LORA传输方案与目前常用的“LORA的Mesh网络路由自组网方案”相对照的,本发明的方法在长距离传输中要比“LORA的Mesh网络路由自组网方案”效率更高,是因为“LORA的Mesh网络路由自组网方案”存在一个路由自组网的过程,这个过程时间很长,且一旦某个通讯节点失效,就必须重新计算路由,造成***中断和***的死锁。而本发明的方法不存在建立路由的过程,所以效率非常高,而且也不存在信息碰撞的可能性,可以有效地确保***的传输稳定性。
如图3所示,一种主干N节点M冗余传输的LoRa传输方法,包括以下步骤:
S1、组建LoRa自组网***。如见图1所示,该***主要由一个主节点和N个主干层组成,N个主干层由近至远沿主节点分布,每个主干层包括一个主干节点和若干个围绕主干节点分布的层内节点。其中,主节点包括主节点通信模块,主节点通信模块具有用于主节点与主干节点之间通讯的LoRa信道CHO;主干节点包括主干节点通信模块,主干节点通信模块具有用于主干节点与主节点之间以及两主干节点之间通讯的LoRa信道CHO以及用于主干节点与层内节点通讯的LoRa信道CHi;层内节点包括层内节点通信模块,层内节点通信模块具有用于层内节点与主干节点之间通讯的LoRa信道CHi(见图2)。
LoRa***的通讯结构如下:
该***采取分层原则。***内的节点分为三种节点,第一种是主节点(节点地址为0),主节点是***最终收集全部信号的节点,***内所有节点的信息最终都要被这个主节点收集,主节点只与规定的主干节点通讯;第二种是主干节点(节点地址可以为1-254),主干节点能够完成层与层之间的通讯,包括与主节点的通讯;第三种是层内节点,每个通讯节点(主干节点和层内节点)的地址从1开始,最大为20,层内节点只能与本层的主干节点通讯。
以信号有效连接强度最大的层的主干节点为次序(通常是以靠近主节点由近及远的顺序)从1开始对主干节点地址编号(例如1,2,…i,…N,N≥3),也就是说序号越小的层主干地址离主节点距离越近,与主节点的通讯信号越强。应确保主节点与相邻的1-3个层的主干节点通讯连接的可靠性。
每一层的主干节点与本层内的层内节点保持通讯,主干节点收集了层内信息后,参与主干节点通讯,将本层信息向序号较小的上一层的主干节点递送,直至送到主节点。主干节点与其层内节点通讯的方法如下:将层内节点地址记为k,且k=1,2,…m,主干节点向本层内的所有层内节点发起通讯,层内节点k在kΔt时间段内发出回应报文至主干节点;主干节点与层内节点之间设置冗余机制,在第i主干层内设置L个备用主干节点,且L<M,当主干节点i正常通讯时,备用主干节点处于备用状态,作为层内节点使用,当主干节点i故障时,备用主干节点作为当值主干节点使用,参与主干节点间的通讯。
S2、主节点0发送类型为j的命令F0(j)到主干节点1,2,…i,…M(M<N),主干节点1,2,…i,…M收到命令后,记录接收命令的时刻T0。命令采用报文结构,该报文结构中具有一个源地址和M个目标地址。
S3、确认主干节点1是否收到主节点0发送的命令,若主干节点1收到主节点0发送的命令,则主干节点1立即(在T0时刻)转发命令F1(j)到主干节点2,…i,…M+1,且M+1<N,主干节点2,…i,…M+1收到命令后,记录接收命令的时刻T1,此时在监听的后续冗余主干节点2,…i,…M如果监听到命令F1(j),则取消在i×Δt等待转发F0(j),若主干节点1没有收到主节点0发送的命令,则看后续冗余主干节点是否能收到命令F0(j)。
确认主干节点2是否收到命令,若主干节点2收到命令,则进一步确认主干节点2收到的命令是否来自主干节点1,若主干节点2收到的命令来自主干节点1,则主干节点2立即(在T1时刻)转发命令到主干节点3,…i,…M+2(M+2<N),主干节点3,…i,…M+2收到命令后,记录接收命令的时刻T2,若主干节点2收到的命令不是来自主干节点1,而是来自主节点,则主干节点2等待Δt时间后(即在T0+Δt时刻)转发命令到主干节点3,…i,…M+2;若主干节点2没有收到命令,则采用下一主干节点接收并转发命令。
S4、对于每一个时刻在监听的冗余主干节点来说,需要判断接收到的报文的方向、源节点和目标节点,需要判定本节点在冗余节点队列中的位置,对于一个M节点冗余的队列来说,主干节点i发向随后的冗余主干节点序列Si的报文为Fi(j),Si:i+1,i+2,…,i+k,…,i+M,假设主干节点i+k之前的冗余主干节点没有在k×Δt时间内发出转发报文,则在k×Δt时刻,主干节点i+k发出转发的报文Fi+k(j),其冗余目标地址队列为Si+k:i+k+1,i+k+2,…,i+k+M,而主干节点i的冗余主干节点序列Si中从i+k+1到i+M的主干节点一旦侦听到源地址为i+k的转发报文Fi+k(j),则立刻取消对Fi(j)报文的转发等待,转而产生新的冗余目标地址队列Si+k。
S5、剩余的主干节点(…N)按照步骤S4进行操作,直至最后一层的主干节点N(若主干节点N故障的话,最后一个主干节点也可能不是主干节点N)收到命令。最后一层的主干节点收到命令后,按照相反顺序依次将相关数据信息传递至上层的主干节点,直至主节点收到所有数据,并且在按照相反顺序传递数据信息时,对于主干节点i,主干节点i将主干节点i+1,…,N所在层的信息连同本层信息传递给主干节点i-1。
对于主干节点i的通讯方法如下:
确认主干节点i是否收到命令,若主干节点i收到命令,则进一步判断主干节点i收到的命令是否是来自上一主干节点i-1的报文Fi-1(j),若主干节点i收到的命令来自主干节点i-1,则主干节点i在收到命令的时刻立即转发报文Fi(j)到冗余主干节点序列Si:i+1,…,M+i,且M+i<N,若主干节点i收到的命令Fx(j)不是来自主干节点i-1,则主干节点i等待(i-x-1)×Δt时间后转发命令到主干节点i+1,…,M+i,x为主干节点i接收命令的源地址;若主干节点i没有收到命令,主干节点i不做响应,由下一冗余主干节点接收并转发命令。主干节点i转发命令后,在MΔt的时间段内等待此后的主干节点回复的报文,若在这个时间内收到此后主干节点回复的命令,则终止等待过程,否则,若冗余主干节点序列Si内M个地址都接收不到主干节点i发出的报文Fi(j),则判定主干网络在主干节点i处中断或截止或作为网络范围探测,认为主干节点i为最后一层的主干节点,即N=i。
本发明的主干N节点M冗余传输的LoRa传输方法,具体流程如下:
组建LoRa***,该***主要由一个主节点和N个主干层组成,N个主干层由近至远沿主节点分布,每个主干层包括一个主干节点,将主节点标记为0,并将N个主干节点按距离主节点由近及远的顺序依次标记为1,2,…i,…N,N≥3。
主节点发送命令到主干节点1,2,…i,…M,且M<N,主干节点1,2,…i,…M收到命令后,记录接收命令的时刻T0。
确认主干节点1是否收到主节点发送的命令,若主干节点1收到主节点发送的命令,则主干节点1在T0时刻转发命令到主干节点2,…i,…M+1(M+1<N),主干节点2,…i,…M+1收到命令后,记录接收命令的时刻T1。再次确认主干节点2是否收到主干节点1发送的命令,若主干节点2收到主干节点1发送的命令,则主干节点2在T1时刻转发命令到主干节点3,…i,…M+2(M+2<N),主干节点3,…i,…M+2收到命令后,记录接收命令的时刻T2。
当主干节点1没有收到主节点发送的命令时,采用冗余的主干节点2…i,…M接发主节点命令,具体方法如下:确认主干节点2是否收到主节点发送的命令,若主干节点2收到主节点发送的命令,则主干节点2等待Δt时间后(即在T0+Δt时刻)转发命令到主干节点3,…i,…M+2,若主干节点2没有收到主节点发送的命令,则按照上述方法依次采用剩余的M-2个冗余主干节点转发命令,直至主节点发送的命令被其中一个主干节点接收并转发至下一组M个主干节点。
当主干节点2没有收到主干节点1发送的命令时,采用冗余的主干节点3,…i,…M+1接发主干节点1的命令,具体方法如下:确认主干节点3是否收到主干节点1发送的命令,若主干节点3收到主干节点1发送的命令,则主干节点3等待2Δt时间后(即在T1+Δt时刻)转发命令到主干节点4,…i,…M+3,若主干节点3没有收到主干节点1发送的命令,则按照上述方法依次采用剩余的M-2个冗余主干节点转发命令,直至主节点发送的命令被其中一个主干节点接收并转发至下一组M个主干节点。
针对剩余的主干节点3,…i,…N,按照上述步骤依次进行通讯,直至主干节点N收到命令。
下面参照附图并结合实施例对本发明作进一步详细描述。但是本发明不限于所给出的例子。
实施例1
假设采用N通信主干节点的3冗余通信结构。主干节点与主干节点的通信方式为占用LoRa信道CH0的阶跃式通信(见图4)。通信时,发送的命令报文结构如表1所示。
表1:
由上表可知,报文结构包括报文头、长度、类型、方向、源地址、目标地址和报文内容等。报文头表示报文起始字节;长度表示从第2个字节(从“类型”开始)到最后一个字节;类型分为报文类型和节点类型,一般采用0x01-0x1f表示报文类型,可以装载32种类型的报文,一般采用0x20-0xE0表示节点类型,字节高三位表示节点类型,可以表示7种类型的节点;方向有四种,1表示主线下行,2表示主线上行,3表示组内下行,4表示组内上行;源地址和目标地址从0开始最大到254,源地址表示0-0xfe,是指发出报文的节点地址,目标地址1、目标地址2、目标地址3是指定的接收该报文的目标节点地址,主要用于跃层主干节点的冗余通信。
本实施例的主干N节点3冗余传输的传输方法,提供了主干节点的通讯流程,如下:
主节点0发出类型1命令报文F0,该报文中带有3个目标接收地址(目标地址1、目标地址2、目标地址3),目的是启动通信流程,并统计节点数目。当主干节点1、主干节点2、主干节点3收到命令报文F0(1)时,记下接收时刻T0,并置上标志M0i(i=1,2,3)(此处0是指源地址,i是指目标地址),即标志M0i(i=1,2,3)=1。此时,如果主干节点1收到主节点0发出的类型1命令报文,则在T0时刻主干节点1清除M01标志并向主干节点2、主干节点3、主干节点4发出类型1命令报文F1(1)(在该报文中填入自己的源节点地址1和目标地址2、3、4,即目标地址是主干节点2、主干节点3、主干节点4)。此时,如果主干节点1没有收到来自主节点0的这个命令F0(1),而主干节点2收到主节点0发出的类型1命令报文F0(1),且在在Δt时间内没有收到主干节点1转发的报文F1(1),则在T0+Δt时刻(此处设置Δt是为了避开类型1报文发送时间的时间间隔)由主干节点2发出类型1报文F2(1)。同理,如果主干节点2也没有收到主节点0发出的类型1报文,而主干节点3收到主节点0发出的类型1命令报文F0(1),且在2×Δt时间内没有收到主干节点1转发的报文F1(1)和主干节点2转发的报文F2(1),则由主干节点3在T0+2Δt时刻发出类型1报文F3(1)(该转发报文的源节点为3,目标节点为主干节点4、5、6)。
假设刚才主干节点1接收到主节点0发出的类型1报文F0(1),并在T0时刻发出了源地址为1,目标地址为主干节点2、3、4的转发报文F1(1)。在主干节点2、3的标志=1的情况下(主干节点2、3之前收到了来自主节点0的报文,其待发标志M02=1,M03=1),如果此时主干节点2、主干节点3收到了来自主干节点1的类型1报文F1(1),则主干节点2、主干节点3分别消除M02、M03标志,不再转发F0(1)报文。此时,主干节点1向主干节点2、主干节点3、主干节点4发送的报文F1(1)被主干节点2、主干节点3、主干节点4收到以后,主干节点2、3、4重新将其中的标志M1i(i=2,3,4)置为1。后面的通讯过程以此类推。主干节点首次收到命令后,置上标志,再次收到命令后,需要消除上一次的旧标志,置上新标志。
对于主干节点i来说,当收到报文Fi-1(j)时,在T0时刻发出报文Fi(j),并清除其标志Mi-1(此处i-1是指报文的源地址)。而当主干节点i收到的报文是Fi-2(j)时,同时在从T0时刻开始的Δt时间段内没有再收到主干节点i-1发出的报文Fi-1(j),则主干节点i在T0+Δt时刻发出命令j报文Fi(j),并清除其标志Mi-2。当主干节点i收到的报文是Fi-3(j)时,同时在从T0时刻开始的2Δt时间段内没有再收到主干节点i-1和主干节点i-2发出的报文Fi-1(j)和Fi-2(j),则主干节点i在T0+2Δt时刻发出命令j报文Fi(j),并清除其标志Mi-3。
主干节点i在T0时刻发出命令Fi(j)以后,需要在T0+3Δt的时间内等待次后的主干节点转发的报文,如果在这个时间内收到了后继主干节点转发的报文Fi+1(j)或Fi+3(j)或Fi+2(j),则终止等待过程,否则,则认为该节点i为最终层的主干节点。则***层数N=i。
当确定最后一个层的主干节点N后,记下节点N,并按照上述相反的过程传送相关信息到上一层的主干节点。以主干节点i为例,主干节点i在收齐层内信息的情况下,将本层信息连同自身的信息发送到上一层i-1的主干节点,并层层上传,直到传达到主节点0。这里有两种方式,第一种是第i层将i+1到N层的信息一起打包送到i-1层,直至传回主节点0;第二种是第i层将本层所有信息打包送到i-1层,并经由i-1、i-2、。。。、一直送到主节点。第一种方式是主干节点i将之前所有层的主干节点i+1,…,N的所有相关信息,还可连同本层信息向i-1层的主干节点传送,以此类推直到传送到主节点0,交付所有数据。第二种方式需要设立层传送信令标志,由主节点0通过主干节点依次下传取i层信息的报文,直至传到i层,第i层接到命令后回送本层信息,经过i-1、i-2、。。。一路的主干节点传回主节点0。两种方式主干节点的上下传递信息均遵循上述N节点3冗余原则。
上述过程是N通信主干节点的3冗余通信结构,推而广之可以做到N节点M冗余的通讯方案(N>M),为一个主节点0与N个主干节点之间的通信。
本实施例的主干N节点3冗余传输的传输方法,还提供了主干节点与层内节点的通讯流程,如下:
主干节点与其层内节点的通信方式为占用LoRa信道CHi的星型时分通讯方式,即按照一层内的地址由小到大的次序,分配通信的时间片。由主干节点发起t0对时,每个层内节点在对应于地址k(k=1,2…m)的时间片时刻t0+k*Δt发出回应报文。另外,层内节点的地址设置按照与主干节点通信连接的强弱从小到大排列。
第i层的主干节点i与其层内节点的通讯根据需要也可设冗余机制,即在第i层设置L个备用主干节点(L<m),当它们在备用状态时,是作为层内节点地位而存在的,一旦该层的主干节点i出现故障,备用主干节点将会升为当值主干节点。这里包含两种含义:一是在主干节点之间的信道通信中,第i层的主干节点i退出,此时主干通信流程中的附近主干节点(例如主干节点i-1或i+1)会从监听主干节点的通信流程中感知到主干节点i的退出,附近主干节点在主干通信流程中采用CH0信道发出唤醒第i层的备用主干节点的信令,让该层内的一个备用主干节点升为当值主干节点(被唤醒的备用主干节点为与附近主干节点通信连接最强的那个);二是第i层的主干节点i与其层内所有层内节点的通信中断,此时层内节点地址最小的备用主干节点通过监听发现此问题(地址最小的备用主干节点为与主干节点i通信连接最强的那个),自动生成当值主干节点,并以CHi信道发送报文通知其它层内节点,以CH0信道发送主干节点间的通信报文(此时备用主干节点有CH0信道和CHi信道),原主干节点i通过CH0监听到第i层的备用主干节点升级为当值主干节点这一事件,立刻将自己降为备用主干节点。当原主干节点故障消失或者所受到的干扰消除,恢复功能时,其需对主干通信流程和层内通信流程做监听,一旦发现自身地位已经被替代,则不谋求恢复当值地位,除非替代节点失效。
除上述实施例外,本发明还可以有其他实施方式。凡采用等同替换或等效变换形成的技术方案,均落在本发明要求的保护范围。
Claims (10)
1.一种主干N节点M冗余传输的LoRa传输方法,其特征在于,包括以下步骤:
S1、组建LoRa自组网***,该***由一个主节点和N个主干层组成,N个主干层由近至远沿主节点分布,每个主干层包括一个主干节点,将主节点标记为0,并将N个主干节点按照信号强弱顺序依次标记为1,2,…i,…N,N≥3;转至步骤S2;
S2、主节点发送类型为j的命令F0(j)到冗余主干节点1,2,…i,…M,且M<N;转至步骤S3;
S3、确认主干节点1是否收到主节点0发送的命令,若主干节点1收到主节点0发送的命令,则主干节点1立即转发命令F1(j)到主干节点2,…i,…M+1,且M+1<N,此时在监听的后续冗余主干节点2,…i,…M监听到命令F1(j),则取消等待转发F0(j),若主干节点1没有收到主节点0发送的命令,则看后续冗余主干节点是否能收到命令F0(j);转至步骤S4;
S4、对于每一个时刻在监听的冗余主干节点来说,需要判断接收到的报文的方向、源节点和目标节点,需要判定本节点在冗余节点队列中的位置,对于一个M节点冗余的队列来说,主干节点i发向随后的冗余主干节点序列Si的报文为Fi(j),Si:i+1,i+2,…,i+k,…,i+M,假设主干节点i+k之前的冗余主干节点没有在k×Δt时间内发出转发报文,则在k×Δt时刻,主干节点i+k发出转发的报文Fi+k(j),其冗余目标地址队列为Si+k:i+k+1,i+k+2,…,i+k+M,而主干节点i的冗余主干节点序列Si中从i+k+1到i+M的主干节点一旦侦听到源地址为i+k的转发报文Fi+k(j),则立刻取消对Fi(j)报文的转发等待,转而产生新的冗余目标地址队列Si+k;转至步骤S5;
S5、剩余的主干节点按照步骤S4进行操作,直至最后一层的主干节点收到命令。
2.根据权利要求1所述一种主干N节点M冗余传输的LoRa传输方法,其特征在于,在步骤S4中,对于主干节点i的通讯方法如下:
确认主干节点i是否收到命令,若主干节点i收到命令,则进一步判断主干节点i收到的命令是否是来自上一主干节点i-1的报文Fi-1(j),若主干节点i收到的命令来自主干节点i-1,则主干节点i在收到命令的时刻立即转发报文Fi(j)到冗余主干节点序列Si:i+1,…,M+i,且M+i<N,若主干节点i收到的命令Fx(j)不是来自主干节点i-1,则主干节点i等待(i-x-1)×Δt时间后转发命令到主干节点i+1,…,M+i,x为主干节点i接收命令的源地址;若主干节点i没有收到命令,主干节点i不做响应,由下一冗余主干节点接收并转发命令。
3.根据权利要求2所述一种主干N节点M冗余传输的LoRa传输方法,其特征在于,在步骤S4中,主干节点i转发命令后,在一定时间内等待此后的主干节点回复的报文,若在这个时间内收到此后主干节点回复的命令,则终止等待过程,否则,若冗余主干节点序列Si内M个地址都接收不到主干节点i发出的报文Fi(j),则判定主干网络在主干节点i处中断或截止或作为网络范围探测,认为主干节点i为最后一层的主干节点。
4.根据权利要求3所述一种主干N节点M冗余传输的LoRa传输方法,其特征在于,在步骤S5中,最后一层的主干节点收到命令后,按照相反顺序依次将相关数据信息传递至上层的主干节点,直至主节点收到所有数据。
5.根据权利要求4所述一种主干N节点M冗余传输的LoRa传输方法,其特征在于,在步骤S5中,按照相反顺序传递数据信息时,对于主干节点i,主干节点i将主干节点i+1,…,N所在层的信息连同本层信息传递给主干节点i-1。
6.根据权利要求5所述一种主干N节点M冗余传输的LoRa传输方法,其特征在于,所述命令采用报文结构,所述报文结构中具有一个源地址和M个目标地址。
7.根据权利要求6所述一种主干N节点M冗余传输的LoRa传输方法,其特征在于,所述主干层还包括若干个围绕主干节点分布的层内节点。
8.根据权利要求7所述一种主干N节点M冗余传输的LoRa传输方法,其特征在于,所述主节点包括主节点通信模块,所述主节点通信模块上具有用于主节点与主干节点之间通讯的LoRa信道CHO;所述主干节点包括主干节点通信模块,所述主干节点通信模块具有用于主干节点与主节点之间以及两主干节点之间通讯的LoRa信道CHO以及用于主干节点与层内节点通讯的LoRa信道CHi;所述层内节点包括层内节点通信模块,所述层内节点通信模块具有用于层内节点与主干节点之间通讯的LoRa信道CHi。
9.根据权利要求8所述一种主干N节点M冗余传输的LoRa传输方法,其特征在于,所述主干节点与其层内节点保持通讯,以收集层内信息,主干节点收集层内信息后,参与主干节点间通讯,将本层信息沿主线上行方向传至上一层的主干节点,直至所有层的信息传递至主节点。
10.根据权利要求9所述一种主干N节点M冗余传输的LoRa传输方法,其特征在于,主干节点与其层内节点通讯的方法如下:将层内节点地址记为k,且k=1,2,…m,主干节点向本层内的所有层内节点发起通讯,层内节点k在kΔt时间段内发出回应报文至主干节点;
主干节点与层内节点之间设置冗余机制,在第i主干层内设置L个备用主干节点,且L<M,当主干节点i正常通讯时,备用主干节点处于备用状态,作为层内节点使用,当主干节点i故障时,备用主干节点作为当值主干节点使用,参与主干节点间的通讯。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811634930.7A CN109788499B (zh) | 2018-12-29 | 2018-12-29 | 一种主干N节点M冗余传输的LoRa传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811634930.7A CN109788499B (zh) | 2018-12-29 | 2018-12-29 | 一种主干N节点M冗余传输的LoRa传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109788499A CN109788499A (zh) | 2019-05-21 |
CN109788499B true CN109788499B (zh) | 2021-11-23 |
Family
ID=66498953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811634930.7A Active CN109788499B (zh) | 2018-12-29 | 2018-12-29 | 一种主干N节点M冗余传输的LoRa传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109788499B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113909066A (zh) * | 2021-10-22 | 2022-01-11 | 国网上海市电力公司 | 一种用于绝缘涂覆机器人的多路遥控通信方法 |
CN114320465A (zh) * | 2021-12-10 | 2022-04-12 | 淄博祥龙测控技术有限公司 | 基于无线网络的煤矿密闭区监测***及通讯方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101801114A (zh) * | 2009-11-03 | 2010-08-11 | 上海大学 | 链式多跳无线传感器网络的快速分簇数据传输方法 |
CN105896730A (zh) * | 2016-04-01 | 2016-08-24 | 全球能源互联网研究院 | 一种适用于输电线路的分层混合通信***的维护方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080084163A (ko) * | 2007-03-15 | 2008-09-19 | 삼성전자주식회사 | 시스템 이중화된 네트워크상에서 Nonstop 패킷포워딩 방법 및 라우터 |
EP2643994B1 (en) * | 2010-11-24 | 2018-11-21 | Elta Systems Ltd. | Various routing architectures for dynamic multi-hop backhauling cellular network and various methods useful in conjunction therewith |
-
2018
- 2018-12-29 CN CN201811634930.7A patent/CN109788499B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101801114A (zh) * | 2009-11-03 | 2010-08-11 | 上海大学 | 链式多跳无线传感器网络的快速分簇数据传输方法 |
CN105896730A (zh) * | 2016-04-01 | 2016-08-24 | 全球能源互联网研究院 | 一种适用于输电线路的分层混合通信***的维护方法 |
Non-Patent Citations (1)
Title |
---|
基于分簇的无线传感器网络关键技术研究;周伟;《中国博士学位论文全文数据库 信息科技辑》;20111015;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109788499A (zh) | 2019-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8050196B2 (en) | Method and apparatus for controlling packet transmissions within wireless networks to enhance network formation | |
CN103119898B (zh) | 用于无线网络中的端到端数据分组传输的延迟优化的设备和方法 | |
EP1228607B1 (en) | Method and apparatus for transmission of node link status messages | |
CN103119887B (zh) | 用于对无线网络中的数据分组传输进行调度的设备和方法 | |
CN100428711C (zh) | 蓝牙按请求进行路由和网络形成的方法、及通信方法 | |
US7522563B2 (en) | Network protocol | |
CN102318316B (zh) | 用于在包括无电池ZigBee设备的网络中通信的方法及其网络与设备 | |
CN102057722B (zh) | 用于无线多跳网络中的节点的网络接口单元以及建立无线多跳网络中节点之间的网络路径的方法 | |
US20040018839A1 (en) | Protocol and structure for mobile nodes in a self-organizing communication network | |
EP1624625A1 (en) | Constructing a tree-structured multi-hop radio system by selecting a host connection accepting radio node based on number of hops and either root radio node information or number of connected radio nodes | |
US20100097988A1 (en) | Wireless sensor network with linear structure being capable of bidirectional communication and method thereof | |
CN103503540A (zh) | 蜂窝通信***中端到端通信的***和方法 | |
EA009721B1 (ru) | Протокол передачи данных для многостанционной сети | |
CN112367658B (zh) | 一种基于主从结构的无线通信***及其动态自组网方法 | |
CN109788499B (zh) | 一种主干N节点M冗余传输的LoRa传输方法 | |
CN110996370A (zh) | 一种无人机的网络通讯路由器协议方法 | |
CN105873169A (zh) | 一种无线自组网通信方法 | |
CN104735743A (zh) | 嵌入式无线自组织网络的路由优化方法 | |
CN101820661A (zh) | 移动无线多跳网络中结合机会转发的随机行走路由方法 | |
CN111866897A (zh) | 智能家居***的组网方法和智能家居*** | |
CN102158383B (zh) | 一种e1双向环网络的数据传输方法、装置及*** | |
CN101801113A (zh) | 网络拓扑分簇处理方法和处理*** | |
CN102083164A (zh) | 基于能量感知的无线传感器网络机会路由方法 | |
CN102202430A (zh) | ZigBee无线网关及其数据传输方法 | |
CN114599018A (zh) | 一种基于自动信道调度的蓝牙Mesh网络路由方法 |
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 |