已阅读5页,还剩56页未读, 继续免费阅读
(信号与信息处理专业论文)zigbee技术在语音通信中的路由协议研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南京邮电大学硕士研究生学位论文 摘要 i 摘摘 要要 zigbee 技术是一种新兴的专为低速率无线个域网(lr-wpan)而设计的低成本、低功耗的短距离无线通信技术。 为了解决其它无线通信技术无法满足某些专用领域的语音通信问题,本文根据 zigbee 技术低成本、高可靠性、通信设施便于部署等其它无线通信技术所不具有的特点,提出了使用 zigbee 技术实现语音通信的解决方案。 本文首先介绍了 zigbee 技术的基本特点,详细阐述了 zigbee 技术的协议栈结构以及协议栈的核心网络层的相关关键技术,如 zigbee 网络拓扑结构、网络层地址分配机制等。 为了更清晰的阐述 aodvjr 协议的自身特点和两种基本路由协议的优缺点和适用场合,本文对 aodv 协议与 aodvjr 协议、cluster-tree 协议与 aodvjr 协议的相关性能分别作了网络仿真。其次,为了弥补使用 zigbee 技术进行语音通信时在网络路由协议方面的不足,本文对 cluster-tree 协议的网络接入和传输路径进行改进,提出了引入邻居表的 ctnt 协议,对 aodvjr 协议的 rreq 分组的传输范围和转发方向进行改进,提出了降低路由开销的 lro-aodvjr 协议,通过给出的网络仿真结果表明了改进方案的可行性和有效性。最后,本文提出一种使用 zigbee 技术实现语音传输的解决方案,设计了用于音频信号采集与数模转换的辅助采集板,并搭配现有的 zigbee 核心开发板完成了一个简单的端到端 zigbee 语音通信系统,为 zigbee 技术在语音通信领域的应用提供了一种设计思路。 关键词:zigbee,路由协议,语音通信,cluster-tree,aodvjr 南京邮电大学硕士研究生学位论文 英文摘要 ii abstract zigbee is a new kind of low-cost, low-power, short-range wireless communication technology, which designed for the low-rate wireless personal area networks (lr-wpan). in order to solve the problem of voice communication in some special fields, where other kinds of wireless communication technology can not meet, and according to the features of zigbee technology, which other kinds of wireless communication technology dont have, such as low-cost, high-reliability and easy-deployment of communication facilities, in this paper, a solution of voice communication will be proposed by zigbee technology. firstly, this paper describes the basic features of zigbee technology, elaborates on the stack structure and key technologies of the stack structures core network layer, such as zigbee network topology, address assignment in the network layer, etc. in order to elaborate the features of aodvjr protocol and the advantages, disadvantages, situations of two basic routing protocols clearer, this paper simulate the performance-related of aodv protocol and aodvjr protocol, cluster-tree protocol and aodvjr protocol separately. secondly, in order to make up for the shortage of network routing protocols when using zigbee technology for voice communication, this paper improves the network access and transmission path of cluster-tree protocol, proposes ctnt (cluster-tree with the neighbor table) protocol, and this paper improves the rreq packets transmission range and forward direction of aodvjr protocol, proposes lro-aodvjr (low routing overhead-aodvjr) protocol, and indicates the feasibility and effectiveness of improvement programs by giving the network simulation results. finally, this paper gives a solution of voice communication by zigbee technology, designs an auxiliary acquisition board, which is used for audio signal acquisition and digital-analog conversion, matches the existing zigbee core development board, this paper builds a simple end to end zigbee voice communication system, which provides a design idea of the application of zigbee technology in voice communication field. keywords:zigbee, routing protocols, voice communication, cluster-tree, aodvjr 南京邮电大学学位论文原创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包 含其他人已经发表或撰写过的研究成果,也不包含为获得南京邮电大学或其它 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的 任何贡献均已在论文中作了明确的说明并表示了谢意。 研究生签名:_ 日期:_ 南京邮电大学学位论文使用授权声明 南京邮电大学、中国科学技术信息研究所、国家图书馆有权保留本人所送 交学位论文的复印件和电子文档,可以采用影印、缩印或其它复制手段保存论 文。本文电子文档的内容和纸质论文的内容相一致。除在保密期内的保密论文 外,允许论文被查阅和借阅,可以公布(包括刊登)论文的全部或部分内容。 论文的公布(包括刊登)授权南京邮电大学研究生院(筹)办理。 研究生签名:_ 导师签名:_ 日期:_ 南京邮电大学硕士研究生学位论文 第一章 绪论 1 第一章第一章 绪论绪论 1.1 研究背景与意义研究背景与意义 随着信息技术的不断发展,人们对无线通信的要求越来越高。近年来,无线通信技术得到了飞速的发展和普及。蜂窝移动通信系统、无线局域网、蓝牙技术等新技术纷纷涌现。 这些技术的出现极大的方便了人们的生活, 同时也推动了无线通信技术的发展1。 无线个域网(wireless personal area network,wpan)技术是近年来较受关注的一种无线网络。它的发展是为了实现活动半径小、业务类型丰富、面向特定群体、无线无缝的连接需求而提出的新兴无线通信网络技术2。 在 wpan 的众多新技术中,蓝牙技术是大家最为熟知的一种无线联网技术,也是目前 wpan 应用的主流技术。它曾让工业控制、家用自动控制、玩具制造商等业者雀跃不已,但是其售价一直居高不下,严重影响了这些厂商的使用意愿。而功耗大,距离近,组网规模太小等缺点使人们对低价、低传输率、短距离、低功率的无线通信的需求越来越强烈3-4。因此,zigbee 技术便应运而生,它是一种经济、高效、低数据速率(b),这两个临界值将节点的剩余能量划分为三个不同的等级,即优级、中级、劣级。 如果节点的剩余能量大于 a,则我们将该节点评定为优级,此时节点能量充足,新节点加入时优先考虑这类节点成为父节点,路由中应优先选择包含优级节点多的路径。如果节点的剩余能量在 a 与 b 之间,则将该节点评定为中级,此时节点的能量偏低,该类节点可以参与路由,但在路由选择时应尽量少地选择经过此类节点的路径。如果节点的剩余能量小于 b,则将该节点评定为劣级,此时节点的能量非常低,新节点加入时尽量避免选择此类节点为父节点,且不再参与寻路过程,只转发目的节点是自己后代的数据分组。 在 zigbee 网络中, 中心协调器可依据目前网络总体能量状况来控制 a, b 值的设定。中心协调器可以通过计算中级节点的比例来对 a,b 的值进行改变,使多数节点处在优级或中级,避免让劣级节点承担处理任务,以防止出现大量寻路失败或数据拥塞。 2、节点深度优化 在 zigbee 网络中,在使用 cluster-tree 协议进行路由时数据是沿树型推进,通常到达源节点和目标节点的深度最高最大深度父节点后,再逐层向下传送至目标节点。此时的数据转发跳数与节点在网络结构中的深度有关。 图 4-1 zigbee 网络结构优化前后对数据转发跳数的比较 如图 4-1 所示,源节点 s 的深度为 2,目的节点 d 的深度为 2,则节点 s 要发送数据到节点 d 需要经过 4 跳。而如果 d 是中心协调器的子节点,其深度可以降为 1,如图d s s zc zr zed d 南京邮电大学硕士研究生学位论文 第四章 zigbee 在语音通信中的路由协议改进 28 所示, 这时节点 s 发送到节点 d 的数据经过 3 跳便可以到达。 如果节点 d 有子孙节点,则节点 s 到节点 d 的所有子孙节点的路径都会缩短 1 跳。因此,由此例可知,减小节点在网络结构中的深度以优化网络结构,这样可以有效减少数据转发的跳数。 3、负载评价值 所谓负载评价值就是对网络中的节点当前的负载量的评估。一般来说,网络节点的负载量由该节点的子孙节点的数目和该节点本地路由表中的表项数目来决定。 考察节点的负载评价值可以从一定程度上反映节点潜在的数据转发任务的强度。 考虑到新节点在加入 zigbee 网络时,通常将第一个发来回应包的路由节点作为自己的父节点, 在这里如果我们将上述三个因素考虑进去则往往可以达到优化网络结构的目的。 根据这一思路,当新节点申请加入网络时,首先会向网络中的节点发送关联请求,关联请求中应包含该节点的类型。当网络中的其它节点收到关联请求后,如果能够接受此节点作为自己的子节点,则回复响应消息,该响应消息中应包含该节点的 16bit 网络地址、能量评级标志、节点深度信息以及负载评价值。而新节点可以根据这些信息来选择网络中的路由节点作为自己的父节点。 图 4-2 新策略中新节点在接入网络时对父节点的选择方法 新节点对父节点的选择策略如图 4-2 所示。 图中 dmin 和 dmax 分别为新节点邻居路由节点中的最小深度和最大深度。 而这些邻居路由节点又按剩余能量的多少分为优级节点、中级节点、劣级节点。这样如图中,所有的邻居路由节点被划分到不同的类别区域中。因此,新加入的节点应首先选择深度为 dmin 的优级节点区域,其次选择深度为dmin+1 的中级节点区域,以此类推。最终,当所选择的节点深度达到 dmax 时才选择劣优级 中级 劣级 mind mind+1 mind2 maxd 南京邮电大学硕士研究生学位论文 第四章 zigbee 在语音通信中的路由协议改进 29 级区域的节点。同时还应考虑负载评价值的因素,这样,在选择每一类区域的节点时负载评价值最小的节点应优先考虑。 基于这一新策略,在实现 zigbee 技术的语音通信时,不仅可以很好的改善网络结构,同时可以减少语音数据在网络路由过程中的时延,降低网络节点的能耗,提高cluster-tree 协议的路由效率。 4.1.3 引入邻居表的 cluster-tree 协议(ctnt) 根据本文第三章的内容我们知道,相对于 aodvjr 协议的灵活性来说 cluster-tree协议的最大缺点在于数据传输的延时较长,如应用在语音通信中,会很容易造成通信网络的阻塞,降低路由效率。而究其原因主要在于使用 cluster-tree 协议会使得从源节点到路由节点的路由跳数过大,即传输路径过长。因此,要想使 cluster-tree 协议能够可靠、高效的应用在语音通信中,就必须大幅提高该协议的网络路由效率,而提高网络路由效率就必须缩短数据传输在网络中的路径长度。 为了解决这一问题,我们考虑为网络中的节点引入邻居表的想法。所谓邻居表(neighbor table)就是在 zigbee 网络中的所有 rn+节点与 rn-节点中都动态维护一个邻居节点列表, 该节点列表中的每一表项为这个节点邻居范围之内的其它节点的地址与深度信息,并且该节点到只需要一跳便可到达邻居表记录中的所有节点。基于这种想法,我们提出一种对cluster-tree协议的改进协议ctnt(cluster-tree with the neighbor table)协议,即引入邻居表的 cluster-tree 协议。以下我们便来详细描述 ctnt 协议的具体实现方案。 假设 zigbee 网络中的每个节点的邻居表中存有的所有邻居节点为n个,则n个邻居节点的地址为na,深度为nd a,1,2,nn l。由于 zigbee 网络为每个加入该网络的节点所分配的是16bit的地址, 而节点的深度信息可以用一个8bit的字节来表示,因此,邻居表中每个表项信息需要占用 3 个字节。具体方法如下: 首先,当一个节点接收到一个数据帧时,检查目的地址d是否就是它自身,如果是自身则直接将该帧转发到上一层,路由过程完毕。 如果目的地址不是自身,则使用(3.4)式检查目的地址d是否是它的一个后代节点,如果d是后代节点则沿着树型结构将该数据帧转发到相应的子节点即可。 如果目的节点d不是后代节点,则搜索源节点a的邻居表中的邻居节点na,并找南京邮电大学硕士研究生学位论文 第四章 zigbee 在语音通信中的路由协议改进 30 出距离目的节点d最近的节点ca为: mincnnada (4.1) 由于使用了 zigbee 网络地址分配机制, 因此ca很可能是邻居节点na中距离目的节点d最近的节点。此时,如果找出的节点的地址即为目的地址d,则路由过程完毕。 如果找出的节点ca的地址不是目的地址,则需要使用(4.2)式检查目的地址d是否为ca的后代节点的地址,式中cd a为节点ca的深度。 1ccskipcadacd a (4.2) 如果目的节点d是节点ca的后代节点,显然,由于避免了 cluster-tree 协议的树型寻址,将数据帧转发给节点ca要比将其沿着树转发给父节点的效率更高。 如果目的节点d不是节点ca的后代节点, 我们用 fa表示对应节点父节点的地址,则根据 cluster-tree 协议计算出节点ca的父节点,1fccaa d a,再判断节点d是否是节点,1fccaa d a或是其后代节点,否则重复该步骤直至找到节点ca与目的节点d的深度为cd ak的最大深度父节点,fccaa d ak。我们用 r 表示对应节点的传输路径, 此时, 比较从节点a经过协调器z到达节点,fccaa d ak的路径r z和从节点a经过节点ca到达节点,fccaadak的路径cr a的大小,如果cr zr a,则选择改进后的路径cr a;如果cr zr a,则选择 cluster-tree协议的传统路径。此时路由过程完毕。 根据上述描述,我们给出一个使用 ctnt 协议的 zigbee 网络实例来分析该协议相比 cluster-tree 协议对减少路由跳数方面的性能改善。如图 4-3 所示的 zigbee 网络,其中mc=6、mr=4、ml=3。使用 zigbee 网络的地址分配机制为每个节点分配地址并选定地址为 102 的节点为源节点,则地址为 1、2、94、95、103、107 的节点为节点 102 的邻居节点。我们考察当目的节点的地址为 107、95、7、40 时使用 ctnt 协议所需的路由跳数。 南京邮电大学硕士研究生学位论文 第四章 zigbee 在语音通信中的路由协议改进 31 图 4-3 一个使用 ctnt 协议的 zigbee 网络实例 当目的地址d=107 时,则目的节点为源节点的子节点,数据帧直接发送给其子节点即可,102-107,路由跳数为 1;当目的地址d=95 时,则该节点属于源节点邻居表中的邻居节点,源节点计算出到达目的d最近的节点ca=d=95,因此数据帧可直接发送到节点ca,102-95,路由跳数为 1;当目的地址d=7 时,则该节点为源节点的邻居节点的子节点,源节点计算出ca=2,数据帧将通过ca发送到ca的子节点,102-2-7,路由跳数为 2;当目的地址d=40 时,则该节点既不是源节点的邻居节点,也不是其邻居节点的子节点。此时源节点先计算出ca=2,再计算出节点ca与目的节点d的最大深度父节点,0fcaa=0,即此最大深度父节点为该 zigbee 网络的协调器。根据上述方案可知,需要分别计算出r z和cr a的值作比较来选择一条更优的路径。这里r z的路径为 102-94-0,跳数为 2,而cr a的路径为 102-2-1-0,跳数为 3,显然cr zr a。 因此, 我们选择 cluster-tree 协议所寻找的路径, 即 102-94-0-32-40,路由跳数为 4。 表 4-1 cluster-tree 协议与 ctnt 协议在数据帧转发跳数方面的比较 目的地址 cluster-tree 协议路由跳数 ctnt 协议路由跳数 d=107 1 1 d=95 2 1 d=7 5 2 d=40 4 4 0 63 126 125 72194 102 103 95 节点 102 的邻居表中的邻居节点 107 40 33 32 南京邮电大学硕士研究生学位论文 第四章 zigbee 在语音通信中的路由协议改进 32 表 4-1 给出了使用 cluster-tree 协议与 ctnt 协议在数据帧转发跳数方面的比较。可以看出,使用 ctnt 协议可以获得更少的路由跳数,从而能减少网络中节点的能量消耗,同时也能降低数据在网络中的传输延时,可以满足语音通信的基本需求。 4.2 aodvjr 协议改进方案协议改进方案 4.2.1 aodvjr 协议在语音通信中的缺陷分析 通过第三章对 aodvjr 协议的分析可知,aodvjr 协议是 aodv 协议的简化版本,具有 aodv 协议的大部分特性。aodvjr 协议需要节点维护一个路由表,通过洪泛查找路由,选择跳数少的路由作为最佳路径,但正是由于这种洪泛的路由查找策略会产生很多多余的控制分组,而这些控制分组虽然也参与路由发现过程,但对于最终找到一条最优的路径并没有起到任何作用,相反却大大增加了网络路由开销,提高了网络中通信设备的能耗,降低了 aodvjr 协议的路由效率。 因此, 假想我们能够在路由的发现过程中能够适当地限制这些控制分组的产生和转发,那么将会显著地降低网络的路由开销,以满足语音通信对低开销、低能耗、高速率的要求。然而要想限制这部分多余的控制分组首先必须要找到它们,可是如何能否准确地找到这部分控制分组呢?显然这是解决问题的关键, 因为如果不能正确找到这部分多余的控制分组,抑制了一些可能找到最优路径的控制分组的产生和转发,结果就会降低路由协议的性能,如数据传输的分组递交率、平均端到端时延等。 根据上述思路,本章提出一种能有效抑制这类多余的控制分组的产生和转发的aodvjr 协议的改进协议,用以降低 zigbee 语音通信中的路由开销,并对其性能进行网络仿真。 4.2.2 低路由开销 aodvjr 协议(lro-aodvjr) 我们知道在 zigbee 网络中,路由节点在选择路径时会向周围节点广播路由请求的rreq 分组信息,收到该分组的周围节点帮助其转发 rreq 分组,以便找到一条通往目的节点的最优路径。这样随着网络业务量的增加,节点需要处理的控制分组也会大大增加,这也是 aodvjr 协议产生大量路由开销而不能应用在 zigbee 语音通信中的主要原因。由于路径的长度直接影响着网络路由的效率,zigbee 网络路由在 cluster-tree 协议中引入 aodvjr 协议的一个主要原因就是为了寻找比 cluster-tree 协议更优的路径。然而,如果使用 aodvjr 协议所找到的路径比按照 cluster-tree 协议找到的路径还要长,南京邮电大学硕士研究生学位论文 第四章 zigbee 在语音通信中的路由协议改进 33 便没有了实际的意义, 而且较长的路径往往会对网络的平均端到端时延和寿命等产生负面影响。因此,设想如果我们能够事先确定 rreq 分组的传输范围,即把 rreq 分组传输经过的路径长度限定在某个值以下, 那么就能够丢弃一些超出该传输范围的控制分组,达到降低路由开销的目的。显然,根据我们以上的分析可以推断这个传输范围即为使之不超过节点按照 cluster-tree 协议所找到的路径长度。 除此之外,在使用 aodvjr 协议的路由建立过程中,路由节点收到 rreq 分组后如果发现自己不是路由的目的节点, 便向该路由节点周围所有的邻节点转发此 rreq 分组。然而,这样做存在着很大的路由开销的浪费,因为并不是所有的邻节点都有可能帮助其找到到达目的节点的最优路径,有些邻节点几乎完全不可能找到到达目的节点的路径,而有些邻节点会使选择的路径长度过长而达不到最优的路径长度。此外,在大多数路由协议的路由发现过程中, 分组数据可以在网络中传输的范围通常限制在该网络直径的范围之内,超过传输范围的 rreq 分组将会被节点丢弃掉。因此存在一些邻节点由于距离目的节点太远而不可能将 rreq 分组转发过去。根据上述思路,设想如果我们能在每个节点转发 rreq 分组之前,引入一个路由方向的判断机制,即如果此节点是对路由发现过程起不到任何作用的节点,则令它丢弃分组不再转发,那么将可以节省很大一部分路由开销。随着网络深度和业务量的增加,节省路由开销的效果会越加明显。 综上所述, 本节将分别基于 rreq 分组的传输范围和转发方向这两个角度提出一种在 zigbee 语音通信中降低 aodvjr 协议路由开销的改进协议,即 lro-aodvjr(low routing overhead-aodvjr)协议。 1、基于 rreq 分组传输范围 从 zigbee 网络的树型结构中可以很容易地看出,如果仅使用 cluster-tree 协议进行路由选择,可能存在的最长路径应是网络最大深度ml的 2 倍,即2ml,因此可以规定rreq 分组的最大传输范围为2ml,这样当 rreq 分组的传输范围到达2ml时,节点便自动丢弃收到的 rreq 分组。然而,这样确定的最大传输范围过于粗糙,优化路由选择的效果不好,因此,我们希望能够进一步合理地缩小该传输范围的值,以达到尽量降低路由开销的目的。 我们利用上一章所提到的 zigbee 网络的 cluster-tree 协议参数mc,mr,ml和目的节点的网络地址0d来确定 rreq 分组的最大传输范围l。设发起 rreq 分组的源节点地址a,深度d,目的节点地址0d均为已知量,而目的节点的深度0d为未知量。下南京邮电大学硕士研究生学位论文 第四章 zigbee 在语音通信中的路由协议改进 34 面详细阐述最大传输范围l的求解过程。 首先判断目的节点与源节点的位置关系。 当目的节点和源节点都不是对方的后代时,则所发现的路径长度应不大于目的节点与源节点相对于它们的最高深度公共父节点的深度之和。这里设最高深度公共父节点的深度为cd,则02clddd。 对于上述公式有两个特例, 一是当目的节点和源节点的公共父节点为协调器节点时,cd=0,此时0ldd。二是当目的节点是源节点的后代或者源节点是目的节点的后代时,cdd或0cdd。因此,我们可以统一用02clddd来求解l。 然而由于源节点发送分组时只知道目的节点的地址0d,不知道其深度0d和它与目的节点的,无法直接得到l。因此,我们需要先求出cd和0d。 图 4-4 最高深度公共父节点深度的计算方法 图 4-4 给出了求最高深度公共父节点深度cd的计算方法。 在求cd时, 可以先沿着网络的树型结构从协调器节点向地址为 a 的源节点发送分组数据,根据图 4-4,在传输分组的过程中使用本文(3.6)式循环计算出下一跳的地址n,n初始化为 0, 当前节点n的深度nd=0,即分组数据从协调器节点开始。当分组数据在到达每个中间节点时使用本文(3.4)式判断目的节点是否是当前节点n的后代, 如果是则继续进入循环计算下一跳节点的地址并将当前节点的深度增一, 如果目的节点是深度为cd的节点的后代而不是深度为1cd 的节点的后代时,则cd即为源节点和目的节点的最大深度父节点的深度。 在求得cd后, 我们可以从协调器节点开始沿着网络的树型结构同样地发送分组数据给目的节点0d,用以求得目的节点的深度0d。0d的计算方法如图 4-5 所示。 n=0 nd = 0 0skipnn d n+c(d -1) cnd = d -1skipnskipna-(n+1)n = n+1+c(d )c(d ) nnd = d +1 是 否 南京邮电大学硕士研究生学位论文 第四章 zigbee 在语音通信中的路由协议改进 35 图 4-5 目的节点深度的计算方法 图 4-5 中将当前节点地址n初始化为 0,其深度也为 0,当分组数据在到达每个中间节点时判断当前节点的地址n是否是目的节点的地址0d的后代,如果不是则使用本文(3.6)式循环计算出下一跳的地址n,且每次循环都将当前节点深度增一;如果是目的节点的地址则跳出循环,统计出循环次数,该循环次数便是从协调器节点到目的节点的跳数,即为深度0d,进而最终求得 rreq 分组的最大传输范围02clddd。 在求出 rreq 分组的最大传输范围l后, 源节点在广播 rreq 分组前可以将 rreq分组的传输范围设为l,当传输路径到达l时节点自动丢弃 rreq 分组,这样就进一步缩小了 rreq 分组的传输范围,从而减少了路由过程中不必要的控制分组转发,达到降低路由开销的效果。 2、基于 rreq 分组转发方向 从前面的介绍可以得知,在 zigbee 网络中,所有节点在收到 rreq 分组后都可以利用本文(3.4)式判断 rreq 分组所要到达的目的节点是否是自己的一个后代。 因此我们设想,如果节点确定了 rreq 分组的目的节点是自己的一个后代,却仍然让其父节点为其转发 rreq 分组,显然,其父节点转发的 rreq 分组找到通往目的节点的最优路径的可能性是极小的。 相反, 如果节点确定了 rreq 分组的目的节点不是自己的一个后代,却仍然将 rreq 分组发送给它的所有子节点,同样,这些子节点再转发 rreq 分组就没有太大的意义。基于上述考虑,我们如果在当前节点向其周围节点转发 rreq 分组时确定其发送的大致方向,便同样可以达到节省路由开销的目的。 为了解决上述问题,我们可以通过在路由请求分组 rreq 中增加一个标志位 flag,用以记录 rreq 分组的目的节点与当前节点的关系。 当 flag=1 时, 表示目的节点是本节n=0 nd = 0 0n = d 0dskipnskipna-(n+1)n = n+1+c(d )c(d ) nnd = d +1 否 是 南京邮电大学硕士研究生学位论文 第四章 zigbee 在语音通信中的路由协议改进 36 点的后代,当 flag=0 时,表示目的节点不是本节点的后代。 综上所述,我们分别从 zigbee 网络路由时发送的 rreq 分组的传输范围与转发方向两个不同角度对传统 aodvjr 协议在路由开销方面作了改进。 我们将这两种降低路由开销的策略结合起来便形成了本节所提出的一种新的改进协议, 即 lro-aodvjr 协议。图 4-6 给出了 lro-aodvjr 协议的流程图。 图 4-6 lro-aodvjr 协议流程图 如图 4-6 所示, 在当前节点发送 rreq 分组之前先根据上述改进策略确定分组的最大传输范围l。此后,当前节点向目的节点发送 rreq 分组,所有接收到 rreq 分组的确定最大传输范围 l 确定当前节点 与目的节点的关系 发送 rreq 分组 丢弃 分组 建立反向路由 接收到分组 的节点是否是当前节 点的父节点 接收到分组 的节点是否是当前节 点的子节点 分组传 输路径超出最大 范围 l 转发分组 rreq 分组是否到达 目的节点 发送rrep分组建立正向路由 完成路由建立 flag=1 flag=0 是 是 否 否 是 否 否 是 丢弃 分组 南京邮电大学硕士研究生学位论文 第四章 zigbee 在语音通信中的路由协议改进 37 周围节点需判断该分组的 flag 标识位。当 flag=1 时,即目的节点是当前节点的后代,如果接收到分组的节点是当前节点的父节点,则将分组丢弃不再继续转发;如果接收到分组的节点是当前节点的后代,则继续转发分组。当 flag=0 时,即目的节点不是当前节点的后代,如果接收到分组的节点是当前节点的父节点,则继续转发分组;反之,如果不是,则将分组丢弃不再继续转发。经过上述策略判断后,rreq 分组被限定在一定的方向之内, 大大降低了网络中的路由开销。 此后, 接收到分组的路由节点将建立反向路由,如果在分组的传输中路径过大,超过原先确定的最大传输范围l,则将分组丢弃,否则继续转发该分组,直至到达目的节点。如目的节点正确接收到 rreq 分组,则向源节点发送 rrep 分组建立正向路由,此时路由建立完成。如目的节点没有收到 rreq 分组便继续循环上述路由策略。 4.2.3 lro-aodvjr 协议与 aodvjr 协议的性能比较 通过上述对 lro-aodvjr 协议的分析我们知道,提出 lro-aodvjr 协议的根本目的就是通过降低网络路由开销使传统的 aodvjr 协议同样能够满足 zigbee 语音通信的需要。这里,我们将在 ns2 网络仿真环境下对 lro-aodvjr 协议与 aodvjr 协议在网络路由开销方面的性能进行仿真,并考察 lro-aodvjr 协议在网络的分组递交率、平均跳数、平均端到端延时等其它性能上是否受影响。 本仿真在50m*50m方形区域取20个节点, 网络拓扑结构采用树型拓扑, 其参数为:mc=4、mr=4、ml=3,仿真时间为 800s,cbr 数据流的个数分别为:1、2、4、6、8、10、12、14、16、18,分组大小为 70byte。观察在 cbr 数据流个数变化时 lro-aodvjr协议与 aodvjr 协议的性能。 从图 4-7 可以看出,随着 cbr 数据流个数的不断增加,aodvjr 协议的路由开销始终明显大于 lro-aodvjr 协议,这是因为 lro-aodvjr 协议在源节点广播 rreq 分组前首先确定了该分组的最大传输范围l的值,这样一旦有一部分分组在传输过程中的路径长度超过l,则将这部分分组丢弃。此外,在每个中间节点转发分组之前,都进行当前节点与目的节点关系的判断,以便指示下一跳分组的传输方向,即是将分组交给当前节点的子节点还是将其交给父节点。这样,便使 aodvjr 协议的路由开销得到很大的改善。 南京邮电大学硕士研究生学位论文 第四章 zigbee 在语音通信中的路由协议改进 38 图 4-7 cbr 数据流个数变化时 lro-aodvjr 协议与 aodvjr 协议的路由开销 图 4-8 cbr 数据流个数变化时 lro-aodvjr 协议与 aodvjr 协议的分组递交率 从图4-8可以看出, 随着cbr数据流个数的不断增加, aodvjr协议与 lro-aodvjr协议的分组递交率相差不大,都维持在 99.6%上下,这说明 lro-aodvjr 协议并没有对数据包的发送效率产生太大的影响。 南京邮电大学硕士研究生学位论文 第四章 zigbee 在语音通信中的路由协议改进 39 图 4-9 cbr 数据流个数变化时 lro-aodvjr 协议与 aodvjr 协议的平均跳数 从图 4-9 可以看出,随着 cbr 数据流个数的不断增加,只是在 cbr 数据流个数小于 6 时 lro-aodvjr 协议的平均跳数略高于 aodvjr 协议,而当 cbr 数据流大于 6 以后,两种协议的平均跳数几乎保持一致。因此从大体上看,lro-aodvjr 协议对分组数据的平均跳数产生的影响很小。 图 4-10 cbr 数据流个数变化时 lro-aodvjr 协议与 aodvjr 协议的平均端到端延时 从图 4-10 可以看出,随着 cbr 数据流个数的不断增加,只是在 cbr 数据流个数南京邮电大学硕士研究生学位论文 第四章 zigbee 在语音通信中的路由协议改进 40 小于 8 时 lro-aodvjr 协议的平均端到端延时略高于 aodvjr 协议,而当 cbr 数据流大于 8 以后, 两种协议的平均端到端延时几乎保持一致。 因此从大体上看, lro-aodvjr协议对平均端到端延时产生的影响很小。 根据上述分析我们可以得出结论: lro-aodvjr 协议对 rreq 分组传输范围和转发方向的限制策略是合理的,丢弃的分组基本为没有意义的冗余分组,lro-aodvjr 协议在大大改善 zigbee 语音通信路由开销的同时并没有对网络的分组递交率、平均跳数、平均端到端延时等因素产生太大的影响。 4.3 本章小结本章小结 为了使 zigbee 技术能够可靠、高效的应用在语音通信中,本章分别对 cluster-tree与 aodvjr 两种 zigbee 网络层的路由协议作了相应的改进,并分别比较了改进前后路由协议的性能改善效果。 首先是对 cluster-tree 协议的改进。本章从网络接入和在网络中引入邻居表的不同角度对原有协议进行改进,提出了两种协议改进方案。从网络接入的角度,本章创造性的提出了三个概念,即能量评级机制、节点深度优化、负载评价值。对 cluster-tree 协议的改进新策略就是从这三个因素入手,分别对这三个因素进行优化,再将这三者综合在一起考虑以达到最佳的优化效果。从引入邻居表的角度,提出了 ctnt 协议,它是对cluster-tree 协议在引入邻居表后的改进版本。由于 cluster-tree 协议的局限性,寻找到的路径时常不是最优路径,因此 ctnt 协议给网络中的每个节点进入邻居表,帮助cluster-tree 协议寻找到源节点与目的节点之间的一条跳数最小的路径来改善网络性能。 其次是对 aodvjr 协议的改进。 本章分别从 rreq 分组的传输范围和转发方向这两个角度提出了一种在 zigbee 语音通信中降低 aodvjr 协议路由开销的改进协议lro-aodvjr 协议。不仅给出了 lro-aodvjr 协议的具体流程图,还对其在网络路由开销方面的性能进行了网络仿真。为了表明 lro-aodvjr 协议在改进路由开销的同时对网络的其它性能并无影响,本章还对两种协议在分组递交率、平均跳数、平均端到端延时等其它方面的性能作了仿真与比较。 南京邮电大学硕士研究生学位论文 第五章 zigbee 语音通信系统的实现 41 第五章第五章 zigbee 语音通信系统的实现语音通信系统的实现 为了使用 zigbee 技术实现语音通信, 本文对 zigbee 网络路由协议做了分析与改进,为最终实现其技术应用与产品开发提供了必要的理论基础。 本章将提出一种使用 zigbee技术实现语音通信的解决方案,并设计出一个简单的端到端 zigbee 语音通信系统,为今后 zigbee 技术在语音通信领域的实际应用提供一种设计思路。 5.1 设计思路设计思路 本文考虑到 zigbee 技术的自身特点,在选择语音数据处理方案时,我们尽量采用将 rf 收发器、语音处理芯片、微控制器及外围设备、语音信号编解码器设计在一块电路板上的方案,以节约空间,减少功耗。在选择数模转换器时,我们将其抗噪能力,可扩展性,功耗,语音信号采集质量等因素考虑进去,选择一款既功耗低又能与上述语音处理模块相兼容的语音信号采集模块。 因此,按照上述设计思路本文将 zigbee 语音通信系统分为两大模块,即音频信号的采集与数模转换模块与无线数据的处理与传输模块。同时这样的设计也可以满足zigbee 终端节点对低功耗,可靠性,便携性等特点的要求。 5.2 总体架构总体架构 图 5-1 zigbee 语音通信系统的功能模块图 根据上述设计思路,我们可以将 zigbee 语音通信系统分为以下几个功能模块:zigbee 射频模块、嵌入式微控制器模块、数据采集模块和电源模块,如图 5-1 所示。其中,数据采集模块又由扬声器/麦克风接口与 a/d 转换器组成。按照设计功能图,模拟语音信号由外部设备(扬声器/麦克风)采集通过设计在电路板上的接口将信号传输到数南京邮电大学硕士研究生学位论文 第五章 zigbee 语音通信系统的实现 42 据采集模块, 由数据采集模块中的 a/d 转换器实现语音信号的数模转换, 再通过通用接口将数据采集模块与嵌入式微控制器模块相连,实现上述设计的两块功能 pcb 电路板的数据传输。语音信号经过嵌入式微控制器模块的存储、处理后通过 zigbee 射频模块实现语音信号的无线传输。而图中的电源模块我们采用两节 1.5v 的干电池代替,这样不仅可以简化 pcb 电路板设计尺寸的大小,而且使用方便,符合一般无线模块终端的设计理念。 图 5-2 zigbee 语音通信系统的总体构架 图 5-2 给出了完整的 zigbee 语音通信系统的总体构架。 在接收数据时, 通过射频天线接收到的射频信号首先通过一个低噪放大器将信号放大, 经过下变频处理后把放大的信号依次转换为正交信号、基带信号。基带信号再经过滤波、放大等处理后通过数模转换模块将模拟信号转换为数字信号再将其发送给调制解调器解调。此后,信号被传输给mac 模块的先入先出队列中等待 aes 算法解密。经解密处理的信号通过 dma 操作将其传输给语音信号编解码模块的先入先出队列中等待解码。解码后的信号再通过 i2s 传递给语音信号模数转换模块将其还原为模拟信号发送给扬声器。 南京邮电大学硕士研究生学位论文 第五章 zigbee 语音通信系统的实现 43 在发送数据时, 语音信号通过麦克风采集后传给数模转换模块将其转换为模拟信号输出给 i2s 接口。此后经过语音编解码模块编码后存入语音编解码模块的语言信号先入先出队列中,再经过 dma 操作将其转存到 mac 先入先出队列。在 mac 模块中的语言信号经过基带调制解调器将其扩频及脉冲成型等处理再将其传送给数模转换模块形成模拟信号。最后,将形成的模拟基带信号通过低通滤波器滤波后经上变频处理变换成能够传输的射频信号,再经功率放大器放大后最终由射频天线发射出去。 在搭建基本硬件构架时,我们将通过两块独立的 pcb 电路板来实现上述各个模块的功能,这两块电路板分别完成音频信号的采集与数模转换功能、无线数据的处理与传输功能,前者为辅助采集板,而后者为 zigbee 核心开发板,两块电路板通过统一的接口连接。这样,在实际应用中,不仅方便拆卸而且由于节点的基本数据传输与处理功能在核心开发板上, 因此可以将核心开发板应用于语音传输之外的其它领域中, 方便扩展。 5.3 音频信号的采集与数模转换音频信号的采集与数模转换模块模块 5.3.1 模块设计目的与芯片选择 音频信号的采集与数模转换模块用来完成对语音信号的采集并将采集的模拟信号通过数模转换器和数字滤波器转换成便于处理的数字信号,主要由扬声器/麦克风接口、数模转换模块组成。 图 5-3 wm8974 芯片管脚图 在数模转换的芯片选择上, 我们采用英国 wolfson 公司生产的 wm897462单声道语音处理芯片,该芯片采用 24 管脚,44mmqfn 封装形式,使用简单的外围元件便能南京邮电大学硕士研究生学位论文 第五章 zigbee 语音通信系统的实现 44 方便的搭建芯片的最小系统,实现高质量的语音信号数模转换应用。wm8974 芯片管脚图如图 5-3 所示。 wm8974 是一款低功耗,高质量的单声道便携式语音处理芯片,可以满足所有数码静态和视频相机的音频需求。wm8974 内置了先进的 sigma delta 转换器,可以在848ks/s 的采样率下提供高质量的音频信号。此外,它还带有新的 dsp 内核,在视频记录时,提供了风噪滤波、五频段均衡器和可编程陷波滤波器,以提高音频记录质量,同时还包含一个集成的、频率范围为 1219mhz 的锁相环(pll)。wm8974 支持一个差分或者单端麦克风,由麦克风前级放大器和 alc 驱动,后面连接到已经包含扬声器和耳机驱动器的输出级上,从而最终减少系统中的元器件数量。wm8974 的正常工作电压为2.53.6v,在低功耗的数字信号模式下,工作电压可以降到 1.71v。 5.3.2 模块设计方案 图 5-4 音频信号的采集与数模转换模块的设计原理图 南京邮电大学硕士研究生学位论文 第五章 zigbee 语音通信系统的实现 45 音频信号的采集与数模转换模块的设计原理图如图 5-4 所示。原理图围绕 wm8974芯片搭建硬件模块, 此外还包括必要的语音信号的输入输出接口和与无线数据处理与传输模块进行数据传输的接口。我们可以将该模块按照电路搭建的功能分为几个部分,即wm8974 最小工作系统、语音信号输入输出部分、数据传输部分。 1、wm8974 最小工作系统 所谓最小工作系统就是能够实现 wm8974 芯片基本功能所需要搭建的最小外围电路。在这里我们的目的是用 wm8974 芯片实现语音信号的采集和模数转换功能,因此只需要完成芯片外
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《GBT 3768-2017 声学 声压法测定噪声源声功率级和声能量级 采用反射面上方包络测量面的简易法》专题研究报告
- 室内装饰设计师发展趋势竞赛考核试卷含答案
- 招聘师道德测试考核试卷含答案
- 路基路面工风险评估测试考核试卷含答案
- 二类汽车维修外协设备协议书
- 函数的概念与表示 (讲义)-人教A版高中数学必修第一册
- 广西贵港市2024-2025学年七年级上学期期末道德与法治试题
- 广告设计师三级试题库及参考答案
- 动词时态语态-1(解析版)核心语法重难点专项突破-2026届高考英语一轮复习
- 【名校】江苏省南京师范大学附属中学树人学校2024-2025学年九年级上学期12月月考数学试题
- 酒店与物业安全消防管理协议
- 2025年科技馆行业市场盈利模式与投资前景研究报告
- 2025年中翼航空投资有限公司招聘笔试参考题库含答案解析
- 环保行业污水处理厂自动化控制系统设计方案
- 2024年中国住院患者血糖管理专家共识
- 快递公司安全检查与事故隐患排查制度范文(2篇)
- 8.1 《荷花淀》课件 2024-2025学年统编高中语文选择性必修中册
- LED产品研发流程
- 仓库管理5S知识培训课件
- 医院培训课件:《乳腺癌解读》
- 《学写倡议书》习作课件
评论
0/150
提交评论