无线自组网络构建方法及无线自组网络数据传输方法转让专利

申请号 : CN201811117144.X

文献号 : CN109068402B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 台卫华陈为群

申请人 : 上海亿临信息科技有限公司

摘要 :

本发明公开了一种无线自组网络构建方法及无线自组网络数据传输方法,该构建方法在上电后根据中心节点广播的组网帧实现对网络的构建,各节点根据接收到的组网帧确定层次,由此形成多层次无线网络,整个无线网络在构建过程中自行完成,实现了无线网络自组;解决了因距离远无法进行点对点直接无线通讯的问题,保证了无线网络的有效构建。本发明所提供的数据传输方法按层次转发方式保证了数据传输的有效传递;不仅解决了多节点传输数据导致数据冲突的问题,而且如果某个节点出现故障无法转发的时候,会有别的节点来自动转发,不会影响数据传输以及保持了网络畅通。

权利要求 :

1.无线自组网络构建方法,其特征在于:该构建方法包括以下步骤:步骤1:上电后中心节点网关以广播的形式发一个包含层次为0初始组网帧;

步骤2:位于中心节点附件的节点收到初始组网帧后将其自身设为层次1,然后再以广播的形式发出带有层次信息为1的组网帧;

步骤3:网络中未设置层次的节点接收到层次1的组网帧后将其自身层次设为2,然后再以广播的形式发出带有层次信息2的组网帧;

步骤4:网络中未设置层次的节点接收到层次为2广播的组网帧后将其自身层次设为3,然后再以广播的形式发出带有层次信息3的组网帧,组网帧会往外层扩散,待未被设置层次的节点依次确定其所处的层次,完成层次确定;

步骤5:每个节点的层次确定后,主动向网关回发一帧包括有其层次信息和转发次数信息的状态帧;

步骤6:网关接收到节点发送的状态信息后进行存储,并向节点发送回复信息;若发送状态信息的节点在一定时间内没有收到网关的回复信息,则会重新发送包括有节点自己层次信息和转发次数信息的状态信息,直到接收到网关的回复信息,完成无线自组网络的构建;

当有些节点因某种原因没有收到任何组网帧时,该节点主动以广播的形式发送组网帧信息,附近的节点接收到后,以广播的形式回应没有收到任何组网帧的节点广播的组网帧;

接收到没有收到任何组网帧节点发送的组网帧信息的节点广播信息中带有层次信息,没有收到任何组网帧的节点接收到该带有层次信息的广播信息后确定层次,为收到的广播信息中的层次加一;

中心节点即网关的层次固定为0,距离网关较近能直接和网关点对点通讯上的节点的层次设置为1,能直接和层次为1的节点通讯上但不能和网关直接通讯上的节点层次设置为

2,能和层次为2的节点直接通讯上但不能和层次比2小的节点直接通讯的节点层次设置为

3,以此类推,距离网关越远层次越大;原理上即以网关为圆心以不同的半径画同心圆,落在半径小的圆上的节点层次就小,落在半径大的圆上的节点层次就大,层次大转发次数就多。

2.根据权利要求1所述的无线自组网络构建方法,其特征在于:节点数据帧的初始转发次数为其层次减1。

3.根据权利要求1所述的无线自组网络构建方法,其特征在于:对于某一数据帧来说,每转发一次转发次数减一,减到0时这一帧就丢掉了或达到了目的节点。

4.无线自组网网络 数据传输方法,其特征在于:该传输方法经权利要求1‑3任意一项所构建的无线自组网中的层次信息来转发数据帧的方式实现数据的传输。

5.根据权利要求4所述的无线自组网络数据传输方法,其特征在于:当每层层次中存在一个以上节点时,各节点转发数据的时间不同;转发数据的节点在转发数据前检测当网络中有没有信号在传输,并根据检测结果执行以下步骤之一:A:如果有,再判断该信号是否为本层次节点所需传输的数据,若是,则不转发;若不是,则延时一个随机时间,直到检测到没有别的节点在发信号时再转发;

B:如果无,则转发数据。

6.根据权利要求5所述的无线自组网络 数据传输方法,其特征在于:每层层次中的任何一个节点对同一帧最多只转发一次。

7.根据权利要求6所述的无线自组网络数据传输方法,其特征在于:所述同一帧数据为源地址、目标地址和帧号相同的数据帧。

说明书 :

无线自组网络构建方法及无线自组网络数据传输方法

技术领域

[0001] 本发明涉及一种组网构建方法及数据传输方法,尤其是涉及一种无线自组网络构建方法及无线自组网络数据传输方法。

背景技术

[0002] 无线自组网协议是目前一个热门研究方向,国际上有很多大公司在研究,研究出来的路由方法也比较多,但大多数都太复杂,仿真效果好,但实际使用时效果受安装位置、
信号强弱影响较大,效果不一定好。
[0003] 对于目前比较热门的无线自组网协议比如Zigbee来说,网络容量大,最大能到65535个节点,网络里每个节点需要采用专门的zigbee芯片或模块,不能采用普通的FSK调
制的无线模块,无线收发部分成本较高。另外zigbee协议本身很复杂,占用ROM空间大,比如
全功能的zigbee协议需要占用128K字节的FLASH,导致MCU成本高而且选择面就很窄,8位的
MCU很少有FLASH能达到128K字节的。而且zigbee系统里面节点不对等,有协调节点、路由节
点等,这样对安装位置就有要求,如果距离远了,协调节点和下面的子节点就没法通讯。
Zigbee通讯距离较短,在建筑里由于墙壁对无线信号衰减很大,因此距离更短,数据从一个
子节点传输到中心节点时,要经过的跳数比较多,容易丢包,数据传输的可靠性就降低了。
[0004] 对于很多特定应用比如智能家居或楼宇自控来说,其特点是网络容量小,网络由一个中心节点网关和少则几个、十来个,多则几十个对等的普通节点组成,一旦安装好,所
有节点的位置都是固定的,普通节点和中心节点之间传输的数据量很少,少则几个字节,多
则10多个或几十个字节,通讯的频次比较低,只有当节点状态有变化时主动通知网关,用户
也能通过网关对任意一个节点进行控制,改变其参数,其他状态下比如10分钟通讯一次以
保持连接,实时性要求不高。每个子节点都是对等的,每个子节点也同时是一个中继器,不
需要专门的中继器,因此这种网络需要一个简单的组网协议。
[0005] 无线自组网其实本质就按一定规则进行数据转发,就是网络中主节点和任一个子节点在通讯的时候,如果距离较远无法直接通讯时,需要中间的节点来做数据转发,难点就
是按照哪个方向去转发,转发多少次才能从源节点发到目的节点。转发的原则是尽量少转
发,转发的太多会导致网络中发射的数据量太多,导致通讯阻塞,网络恶化;转发的太少会
导致信号无法从源节点可靠地传输到目的节点。转发次数可以人为输入,比如范围大时,设
置一个较大的转发次数,范围小时,设置一个较小的转发次数,这叫人工组网,好处是现场
发现转发次数不够时可以手动修改,直到转发次数足够多,距离最远的节点也能和中心节
点通讯上,缺点是转发次数不好确定,而且网络中每个节点的转发次数不应该都一样,因为
每个节点和中心节点的距离不一样,距离越近,转发次数越少,反之就要多转发几次。

发明内容

[0006] 为了解决现有技术中所存在的问题,本发明的在此的目的之一在于提供一种能够自行组建无线网络的无线自组网络构建方法。
[0007] 本发明所提供的无线自组网络构建方法包括以下步骤:
[0008] 步骤1:上电后中心节点网关以广播的形式发一个包含层次为0初始组网帧;
[0009] 步骤2:位于中心节点周围的节点接收到初始组网帧的节点后将其设为层次1,然后再以广播的形式发出带有层次信息1的组网帧;
[0010] 步骤3:网络中未获得层次的节点接收到层次1广播的组网帧后将其设为层次2,然后再以广播的形式发出带有层次信息2的组网帧;
[0011] 步骤4:网络中未被设置层次的节点接收到层次2广播的组网帧后将其设为层次3,然后再以广播的形式发出带有层次信息3的组网帧,组网帧会往外层扩散,待未被设置层次
的节点依次确定其所处的层次,完成层次确定;
[0012] 步骤5:每个节点的层次确定后,主动向网关发一帧包括有节点自己层次信息和转发次数信息的状态信息;进一步的,当有些节点因某种原因没有收到任何组网帧时,其层次
是没有确定的,它会主动以广播的形式发送组网帧信息,附近的节点收到后,会以广播的形
式回应组网帧,其中带有层次信息,那没有确定层次的节点收到后就能确定自己的层次了,
为收到的组网帧中的层次加一。
[0013] 步骤6:网关接收到节点发送的状态信息后进行存储,并向节点发送回复信息;若发送状态信息的节点在一定时间内没有收到网关的回复信息,则会重新发送包括有节点自
己层次信息和转发次数信息的状态信息,直到接收到网关的回复信息;完成无线自组网络
的构建。
[0014] 进一步的,所述转发次数为层次减1。
[0015] 本发明在此的目的之二在于提供一种无线自组网络数据传输方法,该传输方法经本发明所构建的无线自组网络中的层次转发方式实现数据的传输。层次转发方式保证了数
据传输的有效可靠传递。
[0016] 进一步的,当每层层次中存在一个以上节点时,各节点转发数据的时间不同;转发数据的节点在转发数据前检测当网络中有没有其他节点在发信号,并根据检测结果执行以
下步骤之一:
[0017] A:如果有,再判断该信号是否为本层次节点所需传输的数据,若是,则不转发;若不是,则延时一个随机时间,直到检测到没有信号被发送时再转发;
[0018] B:如果无,则转发数据。
[0019] 进一步的,每层层次中的任何一个节点对同一帧最多只转发一次。每个节点发送数据的帧数和频次会大大减少,有利于保持网络畅通。
[0020] 进一步的,所述同一帧数据为源地址、目标地址和帧号相同的数据帧。
[0021] 本发明的有益效果是:该构建方法在上电后根据中心节点广播的组网帧实现对网络的构建,各节点根据接收到的组网帧确定层次,由此形成多层次无线网络,整个无线网络
在构建过程中自行完成,实现了无线网络自组网;解决了不同距离的节点均能和网关正常
通信,但又尽量不多发数据的目的,保证了无线网络的有效构建。
[0022] 本发明所提供的数据传输方法按层次转发方式保证了数据传输的有效传递;解决了多节点传输数据导致数据冲突的问题,且如果某个节点出现故障无法转发的时候,会有
别的节点来自动转发,不会影响数据传输以保持网络畅通。

具体实施方式

[0023] 在此结合具体实施方式对本申请所要求保护的技术方案作进一步详细的说明。
[0024] 本申请所要求保护的技术方案是一种无线自组网络构建方法以及基于该方法构建成的无线自组网络的数据传输方法。
[0025] 其中无线自组网络构建方法包括以下步骤:
[0026] 步骤1:上电后中心节点网关以广播的形式发一个包含层次为0初始组网帧;
[0027] 步骤2:位于中心节点附件的节点收到初始组网帧后将其自身设为层次1,然后再以广播的形式发出带有层次信息为1的组网帧;
[0028] 步骤3:网络中未被设置层次的节点接收到层次1的组网帧后将其自身层次设为2,然后再以广播的形式发出带有层次信息2的组网帧;
[0029] 步骤4:网络中未被设置层次的节点接收到层次为2广播的组网帧后将其自身层次设为3,然后再以广播的形式发出带有层次信息3的组网帧,组网帧会往外层扩散,待未被设
置层次的节点依次确定其所处的层次,完成层次确定;
[0030] 依此类推,被确定层次的节点依次向外广播组网帧,组网帧会往外层扩散,层次3、层次4、层次5和更多层次均通过以上方法进行确定;待未被设置层次的节点依次确定其所
处的层次,完成所有节点的层次确定;
[0031] 步骤5:每个节点的层次确定后,主动向网关发一帧包括有节点自己层次信息和转发次数信息的状态信息;
[0032] 步骤6:网关接收到节点发送的状态信息后进行存储,并向节点发送回复信息;若发送状态信息的节点在一定时间内没有收到网关的回复信息,则会重新发送包括有节点自
己层次信息和转发次数信息的状态信息,直到接收到网关的回复信息;完成无线自组网络
的构建。
[0033] 以上构建过程中,没有收到组网帧以确定自身层次的节点会以广播形式发送组网帧,附近已经确定了层次的节点会给它回复一个组网帧,其中带有这个节点的层次,没有确
定自身层次的节点收到后就能确定自己层次了,确定好后就会向网关发一包数据,告诉网
关自身的层次,网关会收到所有节点的信息,每个信息中都带有这个节点的层次信息。如果
网关没有收到某个节点的信息,它会发查询帧给这个节点,节点收到后就会给网关回复一
帧数据。每个构建的无线网络中中心节点只有一个,就是网关,它起的作用就是协议转换。
本申请在此采用LoRa网关,把LoRa无线协议转换为以太网协议,将以太网协议转换为LoRa
协议,双向通讯,实现远程监视和控制。
[0034] 在此假设本申请无线自组网络节点的层次为4,当然也可以根据实际情况确定层次,本申请在此仅仅是为了更好地说明各层次中各节点向网关发送状态信号的数据传输过
程。
[0035] 在此假设本申请无线自组网络的层次为4,比如位于层次4的节点需要给网关发数据时,该节点的状态信息包括层次为4,转发次数为层次减1,即要转发次数3次,层次4广播
状态信息,待层次3中的节点收到后发现转发次数是3,为一个大于0的数,层次3中的节点将
转发次数减1变成2后转发给层次2中的节点,层次2中的节点收到后将转发次数再减1变成1
再转发给层次1中的节点,层次1中的节点将转发次数减1变成0后再转发给网关。即从层次4
中的节点发出的数据要经过3次转发才能到达网关,当一个数据帧的转发次数减到0时,就
不再被转发了,如果网关没有收到,则不会回复,若发出状态信息的节点在一定时间内没有
收到回复,则会重新发送这一帧,但帧号要加一,直到等到网关的回复,才算将数据可靠地
发送给了网关,网关收到节点数据后会保存每个节点的层次信息,当中心节点往下发数据
的时候,就要填入子节点层次和转发次数信息,即可经过适当次数的转发后数据就能到达
相应的目标节点。
[0036] 基于本发明所构建成的无线自组网络的数据传输方法是利用构建的无线自组网络中的层次转发方式实现数据的传输。
[0037] 由于无线自组网络在构建过程中,每层层次中可能包括多个节点,为了避免节点间相互影响以及数据重复转发的情况,在此,将每层层次中各节点的数据转发时间设置为
不同,即同一时间内每层层次中仅一个节点转发数据,如层次2中存在三个节点时,三个节
点转发数据的时间分别是接收到数据后的1s,2s及4s,每个节点的转发延迟时间时随机的;
此外,在转发数据的节点在转发数据前检测当网络中有没有信号在传输,并根据检测结果
执行以下步骤之一:
[0038] A:如果有,再判断该信号是否为本层次节点所需传输的数据,若是则表示本层次已有其它节点已转发相关数据,则不转发;若不是,则延时一个随机时间(1s、2s或3s),直到
检测到没有信号再转发;
[0039] B:如果无,则转发数据。
[0040] 为了便于数据的重复发送,每层层次中的节点对各自转发的数据信息进行存储,形成历史记录,当接收到待转发数据时,将接收到的数据与存储的数据进行对比,当接收到
的数据与存储的数据源地址、目标地址和帧号均相同时,则视为两者为同一帧数据,则丢弃
此时接收到的待转发数据,反之则将接收到的待转发数据加入转发队列等待转发,并写到
历史记录里面。其中,每层层次中的节点所存储的数据不超过16个数据帧,避免数据存储量
多而导致节点数据传输率低的情况。
[0041] 如果用户在网关上操作去控制比如某个层次为4的节点时,网关会发送一帧写入帧给这个节点,如果需要转发,则只有层次比4小1层次、2层次和3层次中的节点才能转发。
[0042] 每次网关收到一帧某个节点的数据后,说明这个节点在线,将其超时时间设置为30分钟,每过一分钟这个时间会减1,如果在后续10分钟内节点没有数据传过来,网关上也
没有对这个节点进行操作的话,这个时间将会减为20,网关判断超时时间小于20时,会向这
个节点发送一帧读取状态的信息并需要节点回复,如果节点没有回复,则再经过一个大于
5s的随机时间后再读取一次,如果收到了回复,则再将这个超时时间设置为30分钟。如果节
点一直没有回复,当超时时间减到0时表示这个节点离线了。
[0043] 通过上述规则约束,每个节点发送数据的帧数和频次会大大减少,有利于保持网络畅通。但是在某个或某些节点暂时出现了问题,或者由于别的种种原因如偶然的无线或
电源干扰等可能会导致通讯恶化。比如说某个时候层次4中的节点和中心节点之间的通讯
恶化,层次4中的节点向中心节点连续发了5次都没有收到回复,层次4中的节点会将自己的
层次扩大一级,即从原来的层次4扩大到层次5,这样就会有更多的节点来转发这个数据帧,
转发次数多了,数据能到达中心节点的概率就会增加。或者当中心节点查询某个节点时,如
果连续几次读取节点都没有返回,中心节点也会提高这个节点的层次,这个过程叫层次发
散。但问题是如果一直发散的话到最后所有层次都变得很大,转发次数会成倍增加,通讯会
急剧恶化,最终导致通讯不畅,因此就要想办法让层次还要能收敛。假如层次4中的节点由
于某种原因在某段时间内层次增加到了6,通讯变好后只转了3次就到中心节点了(网关通
过收到数据帧的层次和转发次数的差来判断转发了几次),中心节点收到后发现层次为6,
转发次数为2,这样中心节点就能确定该节点为的层次6‑2=4,下次当中心节点往该节点发
数据的时候,会将这个层次信息发给该节点,经过2次这个过程,该节点的层次就会从6收敛
到4。
[0044] 从上面的过程可以看出,刚上电后一段时间内,在每个节点都确认了自己的层次后,在运行过程中其层次并不是一成不变的,而是根据实际的通讯状况在做动态调整,使整
个无线网络在尽量少发数据和数据可靠送达之间保持一个动态的平衡。实际运用中,同一
个层次的节点均能转发比它们层次大的节点发出的数据,大大提高了接收到数据的可能
性,即使某个甚至某几个节点出问题,网络也不会受到太大影响,提高了无线网络的鲁棒
性。
[0045] 本发明所提供的无线组网构建方式和数据传输方法可以构建智能家居,如定制开发的中央空调末端风机盘管无线温控系统、热计量无线分配系统等。