一种基于ZigBee和BLE混合协议的自适应无线传感器网络的制作方法

文档序号:24252350发布日期:2021-03-12 13:31阅读:86来源:国知局
一种基于ZigBee和BLE混合协议的自适应无线传感器网络的制作方法

本发明涉及无线通信技术领域。



背景技术:

目前传统低功耗无线传感器网络通常都是基于某一种单独的特定物理层无线通信技术,例如采用ieee802.15.4标准规范的紫蜂(zigbee)技术,或者采用蓝牙技术联盟设计的低功耗蓝牙(ble:bluetoothlowenergy)技术而设计的。其中:

zigbee技术的优势为通信距离远、抗干扰能力强,缺点为通信速率慢、延迟高。

ble技术的优势为通信速率高、延迟低,缺点为通信距离短、易受干扰。

现有的低功耗的、物理层通信技术单一的无线传感器网络设计中,都难以实现同时具备低延迟、低功耗且抗干扰能力强等特性的网络,使无线传感器网络的性能受到很大局限。



技术实现要素:

鉴于以上所述现有技术的缺点,本发明的目的在于针对现有技术的不足,提供一种基于zigbee和ble混合协议的无线传感器网络泛洪方法,用于解决现有技术中的问题。

本发明给出的技术方案:

一种基于zigbee和ble混合协议的自适应无线传感器网络,该系统中节点类型包括建立、维护网络的host传感器节点和负责接收、发送和转发的普通传感器节点,简称host节点和普通节点;

每个节点包括通信单元、存储单元、处理单元,其中:

所述通信单元包括zigbee和ble两个物理层;

所述存储单元用于存储表单数据,用于存储和维护自身的bitmap;

所述处理单元包括距离感知通信周期模块和数据传输通信周期模块,如图2所示:所述距离感知通信周期模块获得与其他节点之间的相对距离,数据传输通信周期模块结合不同物理层通讯技术的优缺点,根据当前网络通信的通信完成度,随时更改和切换物理层通信类型及协议(本发明两类zigbee和ble物理层通信技术及协议本身,都为已为成熟技术)和通信时隙长度以适应不同的网络情况;两类通信周期模块交替进行,每次距离感知通信周期模块后跟随t次数据传输通信周期模块。

所述距离感知通信周期模块,采用zigbee物理层且固定时隙长度,与各节点通过网络泛洪交换自身信息,根据接收的数据包获知与其他节点的相对距离信息。

所述数据传输通信周期模块,节点通过网络泛洪(本领域已为现有技术)传输数据,若通信完成度达到设定的阈值区间,则物理层采用ble通信技术,同时采用相应的短时隙长度,若未达到阈值区间,则将物理层采用zigbee通信技术,同时采用长时隙长度。所述通信完成度的计算方法为:completion=α×shortrangecompletion+β×longrangecompletion。其中,α+β=1。其中,α和β为可调节的参数,shortrangecompletion为近距离节点的完成度百分比,longrangecompletion为远距离节点的完成度百分比。

本发明通过混合使用zigbee和ble通信技术,根据实时通信完成情况切换不同的物理层,结合两者优势,回避了传统无线传感网的局限,兼顾了低延迟、低功耗和抗干扰的特性。

附图说明

图1是本发明实施例中传感器网络构及其节点物理位置示意图;

图2是本发明总流程图;

图3是本发明的距离感知通信周期模块流程图;

图4是本发明的数据传输通信周期模块流程图;

图5是本发明实施例中节点d的bitmap图。

具体实施方式

下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。

实施例

距离感知通信周期模块仅负责节点的时间同步与距离感知,不做具体数据传输。

数据传输通信周期模块负责节点间的实际数据交换。节点可在任意时隙切换物理层通信技术为zigbee或者ble,在切换物理层时,需同时根据物理层切换相应的通信时隙长度,且不同通信时隙长度之间需要存在整数倍的长度关系,以保证时间同步不被干扰。同时,在n个时隙数之后,若节点尚未完成该轮通信,则将节点剩余时隙的物理层切换为zigbee,以保证通信完成。

作为实施例,网络构成及节点的物理位置分布如图1所示,各节点拥有一个全网络节点中唯一的id,且各节点默认知晓全部节点的id信息。网络内包含两类节点,一类节点为host节点,全网络中仅有一个host节点,另一类为其他普通节点。在每个通信周期开始阶段,host节点负责发送第一个数据包,其他普通节点在收到一个数据包后开始正式通信,除此之外,host节点和其他节点的功能相同。以节点d为例,如节点d与节点e之间距离较近,则使用高速的ble进行通信,如节点d与节点a距离较远,则使用低速的zigbee进行通信。

每个节点维护一个自身的bitmap,该bitmap上的每一个比特位对应网络中一个节点的id。初始状态下,该bitmap中节点自身id所对应的比特位被置为1,其他比特位被置为0。host节点在通信开始后,广播发送自身初始bitmap,其他节点处于接收状态。其他节点在收到第一个包后,根据接收的时间点、通信速率、数据包长度、时隙长度得到host节点的发送时间,节点将自身时隙与此时间同步。节点收到数据包后与本地bitmap进行并集运算,之后再下个时隙广播发送更新后的bitmap。每个节点循环接收、计算、广播三个过程,直到通信周期达到最大规定时隙数或bitmap所有比特位被置为1。节点根据bitmap中不同节点id对应的比特位被置为1的顺序,得到其他节点与自身节点的相对距离。节点将前50%到达的节点定义为近距离节点,其余节点为远距离节点。

以节点d为例,如图2所示,网络内每个节点运行的通信主流程为:

s1,节点d判断节点当前应进入哪类通信周期模块,初始通信周期序号为1,如果通信周期序号为1+kt,其中k=0,1,2…,则当前通信周期应运行距离感知通信周期模块,转s2;否则,当前通信周期应运行数据传输通信周期模块,转s3;

s2,节点进入距离感知通信周期模块,结束后转s1;

s3,节点进入数据传输通信周期模块,结束后转s1。

节点d中的初始bitmap信息如图5(a)所示,除节点自身bitmap为1,相对距离为0外,其他节点皆bitmap初始为0,无相对距离。

所述距离感知通信周期模块,如图1图2、图3所示:

s3-1,节点建立初始bitmap,bitmap中只有该节点自身id所处的比特位被置为1,转s3-2;

s3-2,若当前节点是host节点,转s3-3,否则,转s3-6;

s3-3,发送自身bitmap数据包,转s3-4;

s3-4,若当前发送bitmap数据包次数小于三,转s3-3,否则,转s3-5;

s3-5,若当前所处时隙序号达到单一通信周期时隙数上限,转s3-13,否则,转s3-6;

s3-6,节点进入接收状态,转s3-7;

s3-7,若节点接收到了一个bitmap数据包,转s3-8,否则,转s3-14;

s3-8,若节点与接收到的数据包的时间同步,转s3-9,否则,转s3-19;

s3-9,将接收的bitmap数据包与本地bitmap做异或运算,转s3-10;

s3-10,记录bitmap中的新节点,判断得到相对距离,转s3-11;

s3-11,将数据包中的bitmap与本地bitmap做和运算,更新本地bitmap,转s3-12;

s3-12,若当前时隙数达到该通信周期时隙数上限,转s3-13,否则,转s3-16;

s3-13,结束本通信周期,通信周期序号自增1,等待下个通信周期开始;

s3-14,若节点连续三个时隙未接收到bitmap数据包,转s3-15,否则,转s3-6;

s3-15,发送bitmap数据包,转s3-5;

s3-16,若节点当前bitmap所有位为1,则已获知全部节点信息,转s3-17;

s3-17,发送bitmap数据包,转s3-18;

s3-18,若节点未连续发送三次且未达通信周期时隙数上限,转s3-13,否则,转s3-17;

s3-19,根据bitmap数据包得到同步时间点,达成时间同步,转s3-9。

经历了上述通信过程,节点d中的bitmap信息如图5(b)所示,节点d中存有其他节点与自身的相对距离。在此实施例中,节点d首先接收到节点e的bitmap,故节点e相对距离为1。节点a、b和c的对应bitmap的比特位在同一个通信时隙中被置为1,即此三个节点与节点d的相对距离相同,为2。

所述数据传输通信周期模块,如图1图2、图4所示:

s4-1,若当前节点是host节点,转s4-2,否则,转s4-4;

s4-2,发送数据包,数据包中包含所需传输的数据,转s4-3;

s4-3,若当前时隙数达到通信周期时隙数上限,转s4-12,否则,转s4-4;

s4-4,节点进入接收状态,转s4-5;

s4-5,若节点收到数据包,转s4-6,否则,转s4-3;

s4-6,若节点接收到所有节点的数据转s4-10,否则,转s4-7;

s4-7,若通信完成度处于设定的ble_threshold中,转s4-9,否则,转s4-8;

s4-8,物理层设为zigbee,时隙长度设为zigbee_slot_length,转s4-2;

s4-9,物理层设为ble,时隙长度设为ble_slot_length,转s4-2;

s4-10,发送数据包,数据包中包含所需传输的数据,转s4-12;

s4-11,物理层设为zigbee,时隙长度设为zigbee_slot_length,转s4-4;s4-12,结束本通信周期,通信周期序号自增1,等待下个通信周期开始。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1