一种无线通信mac协议实现方法

文档序号:8490022阅读:973来源:国知局
一种无线通信mac协议实现方法
【技术领域】
[0001]本发明涉及一种无线通信MAC协议实现方法,属于无线通信技术领域。
【背景技术】
[0002]无线通信中的MAC协议根据不同的信道访问策略可以分为:争用型MAC协议、调度型MAC协议。
[0003]争用型MAC协议使用信道的方式为按需分配,当节点产生了需要发送的数据时,即开始争用无线信道的使用权,如果产生了数据碰撞,就按照预定的规则进行数据重发,直到成功上报数据或者放弃数据上报。
[0004]调度型MAC协议的信道访问方式主要采用TDMA。调度型MAC协议的基本原理是:基于一定的调度算法给每个节点分配时隙,经过分配后,每一个节点只被允许使用规定的时隙来完成对信道的无碰撞访问。因此调度型MAC协议实质上就是没有冲突或者说没有竞争的MAC协议。
[0005]当前对无线通信中的MAC协议的实现和测试大多是通过仿真软件来实现,这种方法大多只能实现理论上的分析和验证,并不能完全反映MAC协议实际运行中的性能。

【发明内容】

[0006]发明目的:针对现有技术中存在的问题与不足,本发明提供一种无线通信中的MAC协议实现和测试方法。
[0007]技术方案:一种无线通信MAC协议实现方法。实现方法的硬件平台采用基于CC2530平台的开发套件,主要包括一个中心节点、三个传感器节点和一个测试PC ;软件平台基于TinyOS上成熟的ZigBee/802.15.4协议栈来实现。基于以上软硬件平台,本发明分别实现了争用型和调度型两种类型的MAC协议:争用型协议采用中心节点定期广播,传感器节点随机上报的方式来实现;调度型协议采用中心节点定期广播,传感器节点按照规定的时隙依次上报的方式来实现。
[0008]本发明米用TinyOS操作系统下的nesC编程语言实现了争用型和调度型两种MAC协议,主要实现过程如下:
[0009](I)争用型MAC协议中心节点程序的主要实现过程如下:
[0010]①中心节点参数初始化;
[0011]②开启中心节点的射频模块以及串口模块,射频收发信道号相同,均采用默认值;
[0012]③中心节点的射频模块以10秒为周期(周期可调整)定时往所有传感器节点发送广播信息,信息内容为可以为任意自定义格式。
[0013]④中心节点等待接收传感器节点发来的测试数据,并从串口打印收到消息。(2)争用型MAC协议传感器节点程序的主要实现过程如下:
[0014]①传感器节点参数初始化;
[0015]②开启传感器节点的射频模块以及串口模块,射频收发信道号相同,和中心节点一样,均采用默认值。
[0016]③传感器节点等待接收从中心节点发来的周期性广播信息;
[0017]④接收到中心节点的广播信息后,产生随机延时(随机延时的取值在0-9秒之间),然后根据传感器节点自身的id号向中心节点回送不同的测试数据。
[0018](3)调度型MAC协议中心节点程序实现的主要过程与争用型相同。
[0019](4)调度型MAC协议传感器节点的程序实现过程如下:
[0020]①传感器节点参数初始化;
[0021]②开启传感器节点的射频模块以及串口模块,射频收发信道号相同,和中心节点一样,均采用默认值。
[0022]③等待接收从中心节点发来的周期性广播信息;
[0023]④接收到中心节点的广播信息后,产生规定的延时(节点A,B,C分别延时3,6,9秒),然后根据传感器节点自身的id号向中心节点回送不同的测试数据。
[0024]从实现过程可看出,调度型MAC协议与争用型MAC协议实现的主要区别在于,传感器节点收到中心节点的广播信息后,按照规定的不同延时向中心节点上报收到消息。
[0025]有益效果:采用本发明的MAC协议实现过程中,中心节点周期广播信息,传感器节点根据不同的MAC协议采用不同的数据上报方法。本方法在测试验证过程中可以很直观地看出各种MAC协议的运行情况,使得MAC协议的测试验证过程变得非常方便。
【附图说明】
[0026]图1为硬件平台的结构框图;
[0027]图2为争用型协议测试过程中的串口输出打印;
[0028]图3为争用型协议测试过程中的无线数据包;
[0029]图4为调度型协议测试过程中的串口输出打印;
[0030]图5为调度型协议测试过程中的无线数据包。
【具体实施方式】
[0031]下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
[0032]无线通信中的MAC协议测试验证方法,包括如下步骤:
[0033]步骤一:软硬件平台搭建。如图1所示,硬件平台采用基于CC2530平台的开发套件,主要包括一个中心节点、三个传感器节点(命名为A、B、C,分别对应不同的节点id号)和一个测试PC,中心节点和传感器节点构成了一个星形网络,用来进行MAC协议的实际验证,测试PC主要用于程序编写和下载以及测试验证结果的收集;软件平台基于TinyOS上成熟的ZigBee/802.15.4协议栈来实现,是测试验证程序实现的基础。本发明实现最基础的争用型和调度型MAC协议的过程中,为了避免其它因素的干扰,对802.15.4协议栈的源代码进行了改动,主要包括:关闭ACK请求、关闭链路层重发、关闭CSMA/CA等。
[0034]步骤二:争用型MAC协议实现和测试。基于前文叙述的争用型MAC协议的实现方法采用nesC语言进行了中心节点和传感器节点的程序编写。程序编写完成后进行编译并分别下载到中心节点和传感器节点中,然后开始运行测试。
[0035]将中心节点和3个传感器节点均加电运行后进行测试,测试过程中串口打印输出如图2所示,输出可通过测试PC上的串口调试工具软件查看。从打印输出中可以看出,在收到中心节点的广播信息后,传感器节点A、B、C随机上报数据,上报数据的顺序是不固定的。
[0036]测试过程中还通过CC2531USB软件狗配合SmartRF Packet Sniffer软件对无线信道中收发的报文进行了抓包,并可通过测试PC显示测试数据,如图3所示。从“SourceAddress” 以及“Dest.Address” 列中可以看出,中心节点(Source Address: 1,即 id:1)定时广播信息后,传感器节点(Source Address:6、7、8,即id:6、7、8)随机上报数据HCpayload”列中可以看出,每个传感器节点上报的内容不同;从“Time (us) ”列中可以看出,传感器节点收到中心节点的广播信息后,随机延时后再上报信息。
[0037]通过以上测试可以看出,争用型MAC层协议下,传感器节点随机向中心节点上报数据,上报数据的顺序也是随机的,因此存在数据碰撞的可能性。
[0038]步骤三:调度型MAC协议实现和测试。基于前文叙述的调度型MAC协议的实现方法采用nesC语言进行了中心节点和传感器节点的程序编写。程序编写完成后进行编译并分别下载到中心节点和传感器节点中,然后开始运行测试。
[0039]将中心节点和3个传感器节点均加电运行后进行测试,测试过程中串口打印输出如图4所示。从打印输出中可以看出,在收到中心节点的广播信息后,传感器节点A、B、C按照规定的延时依次上报数据,上报数据的顺序是一致的。
[0040]测试过程中对无线信道中收发的数据抓包的结果如图5所示。从“SourceAddress”和“Dest.Address”列中可以看出,中心节点定时广播信息后,传感器节点依次上报数据;从“MAC payload”列中可以看出,每个传感器节点上报的内容不同;W“Time(us)”列中可以看出,传感器节点收到中心节点的广播信息后,依次延时3、6、9秒后再上报信息。
[0041]通过以上测试可以看出,调度型MAC层协议下,传感器节点按照规定的延时依次向中心节点上报数据,上报数据的顺序也是受控的,所以不存在数据碰撞的可能。
【主权项】
1.一种无线通信MAC协议实现方法,其特征在于,方法的硬件平台采用基于CC2530平台的开发套件,主要包括一个中心节点、三个传感器节点;基于上述硬件平台分别实现了争用型和调度型两种类型的MAC协议:争用型协议采用中心节点定期广播,传感器节点随机上报的方式来实现;调度型协议采用中心节点定期广播,传感器节点按照规定的时隙依次上报的方式来实现。
2.如权利要求1所述的无线通信MAC协议实现方法,其特征在于,争用型MAC协议中心节点程序的主要实现过程如下: ①中心节点参数初始化; ②开启中心节点的射频模块以及串口模块,射频收发信道号相同,均采用默认值; ③中心节点的射频模块以预设周期定时往所有传感器节点发送广播信息,信息内容为可以为任意自定义格式; ④中心节点等待接收传感器节点发来的测试数据,并从串口打印收到信息。
3.如权利要求2所述的无线通信MAC协议实现方法,其特征在于,争用型MAC协议传感器节点程序的主要实现过程如下: ①传感器节点参数初始化; ②开启传感器节点的射频模块以及串口模块,射频收发信道号相同,和中心节点一样,均采用默认值; ③传感器节点等待接收从中心节点发来的周期性广播信息; ④接收到中心节点的广播信息后,产生随机延时(随机延时的取值在0-9秒之间),然后根据传感器节点自身的id号向中心节点回送不同的测试数据;调度型MAC协议中心节点程序实现的主要过程与争用型相同。
4.如权利要求1所述的无线通信MAC协议实现方法,其特征在于,调度型MAC协议传感器节点的程序实现过程如下: ①传感器节点参数初始化; ②开启传感器节点的射频模块以及串口模块,射频收发信道号相同,和中心节点一样,均采用默认值; ③等待接收从中心节点发来的周期性广播信息; ④接收到中心节点的广播信息后,产生规定的延时,然后根据传感器节点自身的id号向中心节点回送不同的收到消息。
5.如权利要求2-4任意一项所述的无线通信MAC协议实现方法,其特征在于,在该实现方法的测试过程中,中心节点等待接收传感器节点发来的测试数据,并从串口打印收到信息;其中测试数据可通过无线抓包软件获取,并显示在测试Pc上,收到信息也可以通过测试pc显不。
【专利摘要】本发明公开了一种无线通信中的MAC协议实现方法。实现方法的硬件平台采用基于CC2530平台的开发套件,主要包括一个中心节点、三个传感器节点;软件平台基于TinyOS上成熟的ZigBee/802.15.4协议栈来实现。基于以上软硬件平台,实现了争用型和调度型两种类型的MAC协议:争用型协议采用中心节点定期广播,传感器节点随机上报的方式来实现;调度型协议采用中心节点定期广播,传感器节点按照规定的时隙依次上报的方式来实现。通过本方法实现的MAC协议在软硬件平台上进行实际运行测试时,可以通过串口打印和无线抓包的方式,分别对两种协议的运行结果进行分析比较。
【IPC分类】H04W24-00, H04W80-02, H04L29-06
【公开号】CN104811456
【申请号】CN201510254318
【发明人】黄永明, 高承志, 许道峰
【申请人】东南大学
【公开日】2015年7月29日
【申请日】2015年5月18日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1