基于LoRa无线网络DRDS-TDMA时隙分配方法与流程

文档序号:15569309发布日期:2018-09-29 04:05阅读:631来源:国知局

本发明涉及一种基于lora(longrange的缩写,远距离)无线网络drds-tdma(tdmaslotassignmentmethodwithdynamicretransmissionanddifferentialservicemechanism,简称drds-tdma,tdma(时分多址))时隙分配方法,属于通信技术领域。



背景技术:

物联网时代将会有数百亿、千亿的设备接入到网络中。常见的无线接入技术有无线近距离通信技术与蜂窝通信技术两类,但是这两类技术都存在一些缺陷,不适合于大规模物物互联的场景。具体而言,wifi、蓝牙、zigbee等近距离无线接入技术覆盖能力有限、抗干扰能力不足、节点功耗大,现有第四代(4g)蜂窝通信系统容量有限,已无法满足人人通信对日益增长的容量的要求,因此更难以支撑物联网迅猛发展对容量的需求。与此同时,基于蜂窝通信技术的物联网终端节点还存在成本高、电池寿命短的问题,因此,必须寻求新的无线通信技术来满足物联网通信的需求。

在物联网时代,设备间信息传输将成长为主要的通信方式。与人人通信对传输速率和带宽的要求不断提升的特性所不同,物物通信的传输数据量不高,不需要很高的传输速率和带宽。然而,为了提高电池寿命和传感节点的覆盖范围,物物通信更关注传感节点的远距离和低功耗传输。如用于实时监测水表的自动感知抄表物联网系统,其用于组网的传感节点设备需求选择低带宽、低功耗、大范围覆盖的解决方案。基于这种应用场景,低功耗广域网(lowpowerwideareanetwork,lpwan)技术应运而生,它能够解决物联网应用中低功耗、低成本、广覆盖、大容量方面上的关键问题。

lora属于一种lpwan技术,它的优势主要体现在低功耗、远距离和大容量三个方面,这些关键特征使得其能够适用于智能抄表、智慧农业等领域。在基于lora技术的无线网络中,由于接入网络的终端传感节点数目较多,因此如何减少数据通信冲突、降低功耗、以及提高网络可靠性和实用性是设计mac层协议需要考虑到的重要问题。



技术实现要素:

本发明要解决的技术问题是:解决了如何使得物物通信的传感节点功耗低、减少通信冲突以及提高网络可靠性和实用性问题。

为了解决上述技术问题,本发明的技术方案是提供了一种基于lora无线网络drds-tdma时隙分配方法,其特征在于,lora无线网络包括一个基站和x个终端节点,x大于等于1,包括以下步骤:

1)基站为终端节点分配静态数据传输时隙,包括:

(1)x个终端节点周期性地广播时隙申请帧,申请加入lora无线网络;

(2)基站收到终端节点提出的时隙申请帧后,回复ack(acknowledgement,确认)响应数据包,为终端节点分配静态数据传输时隙,同时基站广播此时隙分配信息;

2)如果终端节点收到基站广播的属于自己的时隙分配信息,则表明该终端节点成功加入lora无线网络,然后设置时隙分配信息的参数,否则,转跳到步骤1);

3)终端节点切换为正常工作状态,根据基站的时隙分配信息,终端节点获得了属于自己的静态数据传输时隙ti,开始休眠并进入静态时隙通道;

4)终端节点主动上报数据包,包括:

(1)终端节点在属于自己的数据传输时隙中被唤醒;

(2)终端节点唤醒后主动上报需要传输的数据包给基站;

5)基站回复ack响应数据包:基站收到终端节点上报的数据包后,回复ack响应数据包;

6)终端节点如果收到基站回复的ack响应数据包,首先进行本地时钟同步操作,如果ack响应数据包中携带基站下发的命令,则执行该命令,然后查看ack响应数据包中的紧急通信标志位,如果紧急通信标志位有效,则切换为紧急工作状态,获取属于自己的紧急数据传输时隙tj,休眠并进入紧急时隙通道,转跳到步骤4);如果紧急通信标志位无效,则转跳到步骤3);

7)终端节点如果没有收到基站回复的ack响应数据包且工作在紧急工作状态,则休眠并转跳到步骤4),否则,终端节点准备重传数据包,如果重传次数少于3次,则切换为重传工作状态,获取属于自己的重传数据传输时隙,休眠后进入重传时隙通道;如果重传次数大于3次,则直接转到步骤3)。

优选地,步骤1)中所述时隙申请帧的格式包括帧类型、帧长度、源设备号和目的设备号字段。

优选地,步骤1)中所述时隙分配信息包括终端节点个数、时隙周期、时隙起点时钟、时隙长度、静态数据传输时隙号、通信频率,其中时隙号是基站根据收到终端节点的时隙申请帧顺序而生成的,该时隙号与终端节点的设备号一一对应;其余时隙分配信息的参数由用户根据实际情况设置。

优选地,步骤3)中所述静态数据传输时隙ti为:

ti=t0+i*2*l+k*t,其中,t0为时隙起点时钟,i为静态数据传输时隙号,l为时隙长度,t为时隙周期,k为时隙ti所在周期的编号。

优选地,步骤4)中所述的终端节点采用rtc中断唤醒机制。

优选地,步骤5)中所述ack响应数据包包含基站收到终端节点上报数据包时基站本地时间戳和基站广播ack响应数据包时基站本地时间戳字段、紧急通信标志。

优选地,步骤6)中所述时钟同步采用tpsn协议进行时钟同步。

优选地,步骤6)中所述紧急数据传输时隙ti为:

tj=t0+(2*i+1)*1+f*j,其中,t0为时隙起点时钟,j为紧急数据传输时隙编号,1为时隙长度,f为通信频率。

优选地,步骤7)中所述的重传数据传输时隙为第一次重传时隙tone或第二次重传时隙ttwo或第三次重传时隙tthree,其分别为:

tone=t0+(n+r1)*2*l(r1∈{1,2,...,n/5});ttwo=t0+(6*n/5+r2)*2*l(r2∈{1,2,...,n/25});tthree=t0+(31*n/25+r3)*2*1(r3∈{1,2,..,n/125}),其中,t0为时隙起点时钟,n为终端节点个数,r1、r2、r3为随机生成的正整数,1为时隙长度。

本发明提供一种基于lora无线网络的具有动态重传和差异服务机制的静态tdma时隙分配方法(tdmaslotassignmentmethodwithdynamicretransmissionanddifferentialservicemechanism,简称drds-tdma)。

本发明中的终端节点长期休眠,只在需要传输数据时被唤醒,大大地降低了终端节点功耗;终端节点轮流与基站进行通信,避免了终端节点间的数据通信冲突;加入数据重传机制,提高了lora无线网络可靠性;加入差异服务机制,提高了lora无线网络实用性。

附图说明

图1为一种基于lora无线网络drds-tdma时隙分配方法的流程图;

图2为1个基站与100个终端节点的示意图;

图3为数据传输时隙的分配示意图;

图4为进行时钟同步操作的示意图;

图5为终端节点d1在不同时刻定时上报数据,紧急通信的示意图;

图6为区域化显示重传上报的示意图。

具体实施方式

为使本发明更明显易懂,兹以优选实施例,并配合附图作详细说明如下。

本发明为一种基于lora无线网络drds-tdma时隙分配方法,如图1所示,lora无线网络包括一个基站和x个终端节点,其中,x大于等于1,drds-tdma时隙分配方法包括如下步骤:

1)基站为终端节点分配静态数据传输时隙,包括:

(1)x个终端节点周期性地广播时隙申请帧,申请加入lora无线网络;

(2)基站收到终端节点提出的时隙申请帧后,回复ack响应数据包,为终端节点分配静态数据传输时隙,同时基站广播此时隙分配信息;

2)如果终端节点收到基站广播的属于自己的时隙分配信息,则表明该终端节点成功加入lora无线网络,然后设置相关参数(即设置时隙分配信息的参数),否则,转跳到步骤1);

3)终端节点切换为正常工作状态,根据基站的时隙分配信息,终端节点获得了属于自己的静态数据传输时隙ti,开始休眠并进入静态时隙通道;

4)终端节点主动上报数据包,包括:

(1)终端节点在属于自己的数据传输时隙中被唤醒;

(2)终端节点唤醒后主动上报需要传输的数据包给基站;

5)基站回复ack响应数据包:基站收到终端节点上报的数据包后,回复ack响应数据包;

6)终端节点如果收到基站回复的ack响应数据包,首先进行本地时钟同步操作,如果ack响应数据包中携带基站下发的命令,则执行该命令,然后查看ack响应数据包中的紧急通信标志位,如果紧急通信标志位有效,则切换为紧急工作状态,获取属于自己的紧急数据传输时隙tj,休眠并进入紧急时隙通道,转跳到步骤4);如果紧急通信标志位无效,则转跳到步骤3);

7)终端节点如果没有收到基站回复的ack响应数据包且工作在紧急工作状态,则休眠并转跳到步骤4)(当收不到ack时,终端节点有可能处于3种工作状态下,当且仅当处于紧急通信状态下时才会休眠并直接转跳到步骤4。注:通信状态是一种状态,当遇到切换成其他状态的命令时才会改变,否则保持原有状态),否则,终端节点准备重传数据包,如果重传次数少于3次,则切换为重传工作状态,获取属于自己的重传数据传输时隙tone或ttwo或tthree,休眠后进入重传时隙通道;如果重传次数大于3次,则直接转到步骤3)。

步骤1)中所述时隙申请帧格式包括帧类型、帧长度、源设备号和目的设备号字段。

步骤1)中所述时隙分配信息包括终端节点个数n、时隙周期t、时隙起点时钟t0、时隙长度1、静态数据传输时隙号i、通信频率f,其中时隙号是基站根据收到终端节点的时隙申请帧顺序而生成的,该时隙号与终端节点的设备号一一对应,其余时隙分配信息的参数由用户根据实际情况设置。

步骤3)中所述静态数据传输时隙ti为:

ti=t0+i*2*1+k*t(k∈[0,1,2,...],即k为非负整数),其中,t0为时隙起点时钟,i为静态数据传输时隙号,1为时隙长度,t为时隙周期,k为时隙ti所在周期的编号。

步骤4)中终端节点采用rtc中断唤醒机制。

步骤5)中所述ack响应数据包,包含基站收到终端节点上报数据包时基站本地时间戳和基站广播ack响应数据包时基站本地时间戳字段、紧急通信标志。

步骤6)中所述时钟同步采用tpsn协议进行时钟同步。

步骤6)中所述紧急数据传输时隙ti为:

tj=t0+(2*i+1)*l+f*j(j∈[1,2,...],即j为正整数),其中,t0为时隙起点时钟,j为紧急数据传输时隙编号,l为时隙长度,f为通信频率。

步骤7)中所述的重传数据传输时隙包括第一次重传时隙tone、第二次重传时隙ttwo和第三次重传时隙tthree,分别为:

tone=t0+(n+r1)*2*1(r1∈{1,2,...,n/5}),

ttwo=t0+(6*n/5+r2)*2*1(r2∈{1,2,...,n/25}),

tthree=t0+(31*n/25+r3)*2*1(r3∈{1,2,...,n/125}),其中,t0为时隙起点时钟,n为终端节点个数,r1、r2、r3为随机生成的正整数,l为时隙长度。

具体的,如图2所示,假定本实施例的应用场景为1个基站,100个终端节点,其中,sink代表基站,d1-d100分别是标号为1-100的终端节点,依据上述实施例的方法则有:

1)基站为终端节点分配静态数据传输时隙,100个终端节点周期性地广播时隙申请帧,假定基站收到时隙申请帧的顺序为d1,d2,d3,d4,d5,...,d100,则基站为各个终端节点分配的静态数据传输时隙号i分别如下:d1:0x0001,d2:0x0002,d3:0x0003,d4:0x0004,d5:0x0005,...,d100:0x0064,同时,设置终节点个数n为100、时隙周期t为24小时、时隙起点时钟t0为09:00:00,时隙长度l为5秒,通信频率f为5分钟上报一次,其中,f的大小必须要为2*1的整数倍,然后广播此时隙分配信息;

2)如果终端节点收到基站广播的属于自己的时隙分配信息,则表明该终端节点成功加入lora无线网络,然后设置时隙分配信息的参数,否则,转跳到步骤1);

3)终端节点切换为正常工作状态,根据基站的时隙分配信息,终端节点获得了属于自己的静态数据传输时隙ti,开始休眠并进入静态时隙通道,如图3所示,静态时隙为1-n,重传时隙为1-i、1-j、1-k,每个静态时隙与重传时隙后面都跟着一个紧急时隙(虚线表示),其中,n为终端节点的个数,且n=5*i=25*j=125*k,静态时隙、重传时隙与紧急时隙长度相同,都是由数据时隙(data)和接收响应时隙(ack)组成;

4)终端节点主动上报数据包,根据公式ti=t0+i*2*l+k*t,各个终端节点依次被rtc中断唤醒后主动上报数据,终端节点d1每天09:00:10定时上报数据,终端节点d2每天09:00:20定时上报数据,终端节点d3每天09:00:30定时上报数据,终端节点d4每天09:00:40定时上报数据,终端节点d5每天09:00:50定时上报数据,...,终端节点d100每天09:16:40定时上报数据;

5)基站回复ack响应数据包:基站收到终端节点上报的数据包后,回复ack响应数据包;

6)终端节点如果收到基站回复的ack响应数据包,首先进行本地时钟同步操作,如果ack响应数据包中携带基站下发的命令,则执行该命令,然后查看ack响应数据包中的紧急通信标志位,如果紧急通信标志位有效,则切换为紧急工作状态,获取属于自己的紧急数据传输时隙tj,休眠并进入紧急时隙通道,转跳到步骤4);如果紧急通信标志位无效,则转跳到步骤3),终端节点收到ack响应数据包后,首先使用tpsn协议进行时钟同步操作,如图4所示,假设终端节点d1在t1时间点上报信息,基站在t2时间点收到上报信息,基站在t3时间点回复ack响应数据包,终端节点d1在t4时间点收到ack响应数据包,设终端节点到基站的传播时延与基站到终端节点的传播时延相等且都为d,终端节点与基站的时间偏差为δ,则可以列出以下等式:

t2=t1+d+a

t4=t3+d-a

根据上述等式可以得出δ=((t2-t1)-(t4-t3))/2,终端节点通过偏差δ即可校准本地时钟,使终端节点本地时钟与基站本地时钟保持一致,从而保证时隙的顺利分配;

假设终端节点d1紧急通信标志位有效,则根据公式tj=t0+(2*i+1)*l+f*j,终端节点d1在09:05:15、09:10:15、09:15:15、...等时刻定时上报数据,紧急通信示意图如图5所示;

7)终端节点如果没有收到基站回复的ack响应数据包且工作在紧急工作状态,则休眠并转跳到步骤4),否则,终端节点准备重传数据包,如果重传次数少于3次,则切换为重传工作状态,获取属于自己的重传数据传输时隙tone或ttwo或tthree,休眠后进入重传时隙通道;如果重传次数大于3次,则直接转到步骤3)。终端节点如果没有收到ack响应数据包且工作在非紧急工作状态,则进入数据重传状态,如图6所示,把时隙周期24小时划分为2个区域,一个是节点正常上报区域,一个是重传区域,假设在正常上报区域中,终端节点d1在09:00:10定时唤醒并上报数据,如果没有收到基站回复的ack响应数据包,休眠后首先随机进入重传区域1中进行数据重传,设随机数r1为5,根据公式tone=t0+(n+r1)*2*1,则终端节点d1在09:17:30第一次重传数据;如果没有收到基站回复的ack响应数据包,则随机进入重传区域2中进行数据重传,设随机数r2为2,根据公式ttwo=t0+(6*n/5+r2)*2*l,则终端节点d1在09:20:20第二次重传数据;如果没有收到基站回复的ack响应数据包,则随机进入重传区域3中进行数据重传,设随机数r3为1,根据公式tthree=t0+(31*n/25+r3)*2*1,则终端节点d1在09:20:50第三次重传数据;如果没有收到基站回复的ack响应数据包,则放弃重传数据,在下一个时隙周期中09:00:10时刻点再上报数据。

本实施例中,lora无线网络中的终端节点正常上报频率为24小时上报一次,在其他时间处于低功耗休眠状态,且每次只有一个节点上报,具有终端节点功耗低且避免了终端节点之间的数据通信冲突的优点;同时加入重传机制,提高了lora无线网络的可靠性;加入了差异服务机制,可以动态改变终端节点的上报频率,提高了lora无线网络的实用性。

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