Zigbee通讯方式

Zigbee通讯方式
Zigbee通讯方式

Zigbee组网流程——理论

星形网络和树型网络可以看成是网状网络的一个特殊子集,所以接下来分析如何组建一个Zigbee网状网络。组建一个完整的Zigbee网络分为两步:第一步是协调器初始化一个网络;第二步是路由器或终端加入网络。加入网络又有两种方法,一种是子设备通过使用MAC层的连接进程加入网络,另一种是子设备通过与一个先前指定的父设备直接加入网络。 一、协调器初始化网络 协调器建立一个新网络的流程如图1所示。 图1 协调器建立一个新网络 1、检测协调器 建立一个新的网络是通过原语NLME_NETWORK_FORMATION.request发起的,但发起NLME_NETWORK_FORMATION.request原语的节点必须具备两个条件,一是这个节点具有ZigBee协调器功能,二是这个节点没有加入到其它网络中。任何不满足这两个条件的节点发起建立一个新网络的进程都会被网络层管理实体终止,网络层管理实体将通过参数值为INVALID_REQUEST的NLME_NETWORK_FORMATION.confirm的原语来通知上层这是一个非法请求。 2、信道扫描 协调器发起建立一个新网络的进程后,网络层管理实体将请求MAC子层对信道进行扫描。 信道扫描包括能量扫描和主动扫描两个过程。首先对用户指定的信道或物理层所有默认的信道进行一个能量扫描,以排除干扰。网络层管理实体将根据信道能量测量值对信道进行一个递增排序,并且抛弃能量值超过了可允许能量值的信道,保留可允许能量值内

的信道等待进一步处理。接着在可允许能量值内的信道执行主动扫描,网络层管理实体通过审查返回的PAN描述符列表,确定一个用于建立新网络的信道,该信道中现有的网络数目是最少的,网络层管理实体将优先选择没有网络的信道。如果没有扫描到一个合适的信道,进程将被终止,网络层管理实体通过参数仠为STARTUP_FAILURE的NLME_NETWORK_FORMATION.confirm的原语来通知上层初始化启动网络失败。 3、配置网络参数 如果扫描到一个合适的信道,网络层管理实体将为新网络选择一个PAN描述符,该PAN 描述符可以是由设备随机选择的,也可以是在NLME_NETWORK_FORMATION.request里指定的,但必须满足PAN描述符小于或等于0x3fff,不等于0xffff,并且在所选信道内是唯一的PAN描述符,没有任何其它PAN描述符与之是重复的。如果没有符合条件的PAN 描述符可选择,进程将被终止,网络层管理实体通过参数值为STARTUP_FAILURE的NLME_NETWORK_FORMATION.confirm的原语来通知上层初始化启动网络失败。确定好PAN 描述符后,网络层管理实体为协调器选择16位网络地址0x0000,MAC子层的macPANID 参数将被设置为PAN描述符的值,macShortAddress PIB参数设置为协调器的网络地址。 4、运行新网络 网络参数配置好后,网络层管理实体通过MLME_START.request原语通知MAC层启动并运行新网络,启动状态通过MLME_START.confirm原语通知网络层,网络层管理实体再通过NLME_NETWORK_FORMATION.confirm原语通知上层协调器初始化的状态。 5、允许设备加入网络 只有ZigBee协调器或路由器才能通过NLME_PERMIT_JOINING.request原语来设置节点处于允许设备加入网络的状态。当发起这个进程时,如果PermitDuration参数值为0x00,网络层管理实体将通过MLME_SET.request原语把MAC层的macAssociationPermit PIB 属性设置为FALSE,禁止节点处于允许设备加入网络的状态;如果PermitDuration参数值介于0x01和0xfe之间,网络层管理实体将通过MLME_SET.request原语把macAssociationPermit PIB属性设置为TRUE,并开启一个定时器,定时时间为PermitDuration,在这段时间内节点处于允许设备加入网络的状态,定时时间结束,网络层管理实体把MAC层的macAssociationPermit PIB属性设置为FALSE;如果PermitDuration参数的值为0xff,网络层管理实体将通过MLME_SET.request原语把macAssociationPermit PIB属性设置为TRUE,表示节点无限期处于允许设备加入网络的状态,除非有另外一个NLME_PERMIT_JOINING.request原语被发出。允许设备加入网络的流程如图2所示。

ZigBee的短距离无线网络技术概述

ZigBee的短距离无线通信技术概述 摘要:近年来,各种无线通信技术迅猛发展,极大提高了人们的工作效率和 生活质量。然而,在日常生活中,我们仍然被各种电缆所束缚,能否在近距 离范围内实现各种设备之间的无线通信?纵观目前发展较成熟的几大无线通 信技术,往往比较复杂,不但耗费较多资源,成本也比较高,并不适用于短 距离无线通信的场合。蓝牙技术的出现使得短距离无线通信成为可能,但是 其协议较复杂、功耗高、成本高等特点不太适用于要求低成本、低功耗的工 业控制和家庭网络。本文介绍了一种复杂度、成本和功耗都很低的低速率短 距离无线接入技术——ZigBee。该技术主要针对低速率传感器网络而提出, 它能够满足小型化、低成本设备(如温度调节装置、照明控制器、环境检测 传感器等)的无线联网要求,能广泛地应用于工业、农业和日常生活中。 关键字:无线通信技术,zigbee 一、引言 “ZigBee”是什么?从字面上猜像是一种蜜蜂。因为“ZigBee”这个词由“Zig”和“Bee”两部分组成,“Zig”取自英文单词“zigzag”,意思是走“之”字形,“bee”英文是蜜蜂的意思,所以“ZigBee”就是跳着“之”字形舞的蜜蜂。不过,ZigBee并非是一种蜜蜂,事实上,它与蓝牙类似是一种新兴的短距离无线通信技术,国内也有人翻译成“紫蜂”。下面就让我们一起进入这只蜜蜂的世界,与蜂共舞吧! 这只蜜蜂的来头还是要从它的历史开始说起,早在上世纪末,就已经有人在考虑发展一种新的通信技术,用于传感控制应用(sensor and control),这个想法后来在IEEE 802.15工作组当中提出来,于是就成立了TG4工作组,并且制定了规范IEEE 802.15.4。但是IEEE 802的规范只专注于底层,要达到产品的互操作和兼容,还需要定义高层的规范,于是2002年ZigBee Alliance成立,正式有了“ZigBee”这个名词。两年之后,ZigBee的第一个规范ZigBee V1.0诞生,但这个规范推出的比较仓促,存在一些错误,并不实用。此后ZigBee Alliance 又经过两年的努力,推出了新的规范ZigBee 2006,这是一个比较完善的规范。据联盟最新的消息,今年年底将会发布更新版本的规范ZigBee 2007,这个版本增加了一些新的特性。

Zigbee协议栈原理基础

1Zigbee协议栈相关概念 1.1近距离通信技术比较: 近距离无线通信技术有wifi、蓝牙、红外、zigbee,在无线传感网络中需求的网络通信恰是近距离需求的,故,四者均可用做无线传感网络的通信技术。而,其中(1)红外(infrared):能够包含的信息过少;频率低波衍射性不好只能视距通信;要求位置固定;点对点传输无法组网。(2)蓝牙(bluetooth):可移动,手机支持;通信距离10m;芯片价格贵;高功耗(3)wifi:高带宽;覆盖半径100m;高功耗;不能自组网;(4)zigbee:价格便宜;低功耗;自组网规模大。?????WSN中zigbee通信技术是最佳方案,但它连接公网需要有专门的网关转换→进一步学习stm32。 1.2协议栈 协议栈是网络中各层协议的总和,其形象的反映了一个网络中文件传输的过程:由上层协议到底层协议,再由底层协议到上层协议。 1.2.1Zigbee协议规范与zigbee协议栈 Zigbee各层协议中物理层(phy)、介质控制层(mac)规范由IEEE802.15.4规定,网络层(NWK)、应用层(apl)规范由zigbee联盟推出。Zigbee联盟推出的整套zigbee规范:2005年第一版ZigBeeSpecificationV1.0,zigbee2006,zigbee2007、zigbeepro zigbee协议栈:很多公司都有自主研发的协议栈,如TI公司的:RemoTI,Z-Stack,SimpliciTI、freakz、msstatePAN 等。 1.2.2z-stack协议栈与zigbee协议栈 z-stack协议栈与zigbee协议栈的关系:z-stack是zigbee协议栈的一种具体实现,或者说是TI公司读懂了zigbee 协议栈,自己用C语言编写了一个软件—---z-stack,是由全球几千名工程师共同开发的。ZStack-CC2530-2.3.1-1.4.0软件可与TI的SmartRF05平台协同工作,该平台包括MSP430超低功耗微控制器(MCU)、CC2520RF收发器以及CC2591距离扩展器,通信连接距离可达数公里。 Z-Stack中的很多关键的代码是以库文件的形式给出来,也就是我们只能用它们,而看不到它们的具体的实现。其中核心部分的代码都是编译好的,以库文件的形式给出的,比如安全模块,路由模块,和Mesh自组网模块。与z-stack 相比msstatePAN、freakz协议栈都是全部真正的开源的,它们的所有源代码我们都可以看到。但是由于它们没有大的商业公司的支持,开发升级方面,性能方面和z-stack相比差距很大,并没有实现商业应用,只是作为学术研究而已。 还可以配备TI的一个标准兼容或专有的网络协议栈(RemoTI,Z-Stack,或SimpliciTI)来简化开发,当网络节点要求不多在30个以内,通信距离500m-1000m时用simpliciti。 1.2.3IEEE802.15.4标准概述 IEEE802.15.4是一个低速率无线个人局域网(LowRateWirelessPersonalAreaNetworks,LR-WPAN)标准。定义了物理层(PHY)和介质访问控制层(MAC)。 LR-WPAN网络具有如下特点: ◆实现250kb/s,40kb/s,20kb/s三种传输速率。 ◆支持星型或者点对点两种网络拓扑结构。 ◆具有16位短地址或者64位扩展地址。 ◆支持冲突避免载波多路侦听技术(carriersensemultipleaccesswithcollisionavoidance,CSMA/CA)。(mac层) ◆用于可靠传输的全应答协议。(RTS-CTS) ◆低功耗。 ◆能量检测(EnergyDetection,ED)。 ◆链路质量指示(LinkQualityIndication,LQI)。 ◆在2.45GHz频带内定义了16个通道;在915MHz频带内定义了10个通道;在868MHz频带内定义了1个通道。 为了使供应商能够提供最低可能功耗的设备,IEEE(InstituteofElectricalandElectronicsEngineers,电气及电子工程师学会)定义了两种不同类型的设备:一种是完整功能设备(full.functionaldevice,FFD),另一种是简化功能设备

Zigbee组网实验之Sample App

Zigbee组网实验之Sample App https://www.360docs.net/doc/1211958622.html,/ 佳杰科技开发套件,最便宜、最详细、最好的Zigbee开发套件。 1.实验设备: Q2530SB开发底板(V1.1以上版本)2块 RF2530N射频板2块 天线(非必要,影响传输距离)2根 SmartRF04EB仿真器带USB线和仿真器接头线1个 电池盒有电池一个(负责供电) 2.硬件连接说明 射频板RF2530N分别连接底板Q2530SB 仿真器USB线连接电脑和其中一块底板 电池盒连接另外一块底板、保证系统都正常供电 3.实验步骤及效果 1.打开实验代码:在路径Texas Instruments\ZStack-CC2530- 2. 3.0-1. 4.0\Projects\zstack\ Samples\SampleApp\CC2530DB下鼠标双击打开文件SampleApp.eww 2.在应用层APP文件夹中找到SampleApp.c文件,找到函数SampleApp_HandleKeys并双 击打开。 3.将函数中的代码做以下修改 if ( keys & HAL_KEY_SW_1 ) { /* This key sends the Flash Command is sent to Group 1. * This device will not receive the Flash Command from this * device (even if it belongs to group 1). */ SampleApp_SendFlashMessage( SAMPLEAPP_FLASH_DURATION ); } 改为 if ( keys==0x20 ) { /* This key sends the Flash Command is sent to Group 1. * This device will not receive the Flash Command from this * device (even if it belongs to group 1).

基于ZigBee技术的智能家居系统

一、智能家居的背景 从宏观上来讲,事物的每个发展阶段都是当时从业人员认识水平、技术水平、市场认知、原材料成本等几个原因共同作用的结果。每个阶段都会局限于当时的技术水平、市场接受程度等,都会有其无法突破的瓶颈和困难。即便智能家居系统在中国已发展20多年,且经过这么多年的发展,产品、技术已日趋成熟、稳定,但每项技术并不一定都完美无瑕。只要产品或技术处于高速发展中,它必然需要不断地去解决一些技术上或者产品上的问题。智能家居产品未来会还向节能环保,舒适度方面发展。比如冬暖夏凉型建筑,不用空调,由建筑自身的功能去调节温度。而智能家居必须结合这些建筑上的功能去发展,从这个方面来说,必然会推动智能家居的适应性发展。对与现阶段的智能家居来说,没有专用的对讲或智能家居数字处理芯片,无论是技术层面还是集成层面,都只是有所关联。如果能够很好的解决,未来数字对讲将会取得更好的应用。而随着中国城镇化趋势的加剧,大型小区会越来越多,人们对安保的重视程度也会日益加强,将来小区的多个安防子系统在技术上必然会走向综合化、集成化。除此之外,厂家需理性地为各类应用设计解决方案,校正一些过往的虚假概念。只有设计实用性强,性价比高,能适应拓展未来新技术的系统,才能更好地为用户服务。除此之外,各家产品的兼容性也是一个急需解决的问题。目前各厂家的产品均采用自家的协议,无法很好地做到兼容,而不同品牌的可视对讲和智能家居系统如何互连互通也将是今后需突破的难点 二、智能家居系统旨在实现的以下主要功能: (1)可以控制和相应的状态查询,如查询室内和室外的温度,可用于家用电器,如灯一键全开,一键全关,更方便。 (2)在光线方面我们可以依照家庭装修环境背景或者用户的其他层次的要对

zigbee的系统结构和组网方式

简介 ZigBee是一种新兴的短距离、低功耗、低数据传输速率的无线网络技术,它是一种介于无线标记技术和蓝牙之间的技术方案。ZigBee是建立在IEEE802.15.4标准之上,它确定了可以在不同制造商之间共享的应用纲要。IEEE802.15.4标准定义了ZigBee协议的PHY层和MAC层。PHY层规范确定了在2.4GHz(全球通用的ISM频段)以250kb/s的基准传输率工作的低功耗展频无线电以及另有一些以更低数据传输率工作的915MHz(北美的ISM频段)和868MHz(欧洲的ISM频段)的实体层规范。MAC层规范定义了在同一区域工作的多个IEEE802.15.4无线电信号如何共享空中通道。 为了促进ZigBee技术的发展,2001年8月成立了ZigBee联盟,2002年下半年,英国Invensys公司、日本三菱电子公司、美国摩托罗拉公司以及荷兰飞利浦半导体公司四大巨头共同宣布,它们将加入“ZigBee联盟”,目前该联盟已经有150多家成员,以研发名为ZigBee的下一代无线通信标准。 正如前面所述,ZigBee不仅仅只是802.15.4的名字,IEEE802.15.4仅处理低级MAC层和PHY层协议,所以ZigBee联盟对其网络层协议和API进行了标准化,还开发了安全层,以保证这种便携设备不会意外泄漏其标识。 ZigBee的组成和构网方式 1.FFD和RFD 利用zigbee技术组件的无线个人区域网(WPAN)是一种低速率的无线个人区域网(LR WPAN),这种低速率个人区域网的网络结构简单、成本低廉,具有有限的功率和灵活的吞 吐量。 在一个LR WPAN网络中,可同时存在两种不同类型的设备,一种是具有完整功能的设备(FFD),另一种是简化功能的设备(RFD)。 在网络中,FFD通常有3中工作状态:(1)作为个人区域网络(PAN)的主协调器;(2) 作为一个普通协调器;(3)作为一个终端设备。FFD可以同时和多个RFD或其他FFD通信。 而RFD则只用一种工作状态即作为一个终端设备,并且一个RFD只能和一个FFD通信。2.ZigBee的体系结构 ZigBee体系结构主要有物理(PHY)层、媒体接入控制(MAC)层、网络/安全层以及应用框架层构成,如下图所示:

Zigbee组网流程

1、网络形成 组网开始时,网络层首先向MAC层请求分配协议所规定的信道,或者由PHY层进行有效信道扫描,网络层管理实体等待信道扫描结果,然后根据扫描结果选择可允许能量水平的信道。找到合适的信道后,为这个新的网络选择一个个域网标识符(PANID)。PANID可由网络形成请求时指定,也可以随机选择一个PANID(除广播PANID固定为0xFFFF外),PANID 在所选信道中应该是唯一的。PANID一旦选定,无线网关将选择16位网络地址0x0000作为自身短地址,同时进行相关设置。完成设置后,通过MAC层发出网络启动请求,返回网络形成状态。 2、网络维护 网络维护网络维护主要包括设备加入网络和离开网络过程。当网络形成后,通过网络管理实体设定MAC层连接许可标志来判断是否允许其他设备加设备初始化为协调器入网络。加入方式有联合方式和直接方式,在协议实现中采取直接加入网络方式。这种方式下由待加入的设备发送请求加入信标帧,网关接收到后,网络管理实体首先判断这个设备是否已存在于网络。存在,则使其加入网络;若不存在,则向设备发送信标帧,为这个设备分配一个网络中唯一的16位的短地址。这里的信标帧是由网关无线协议MAC层生成作为PHY层载荷,它包含PANID、加入时隙分配等信息。网内设备也可以请求断开网络。当网关收到设备断

开连接请求后,MAC层向网络层发送报告,开始执行断开流程,从设备列表中删除该设备相关信息。 网络层上层请求网络层发现当前在运行的网络: NLME NETWORK DISCOVERY.request(ScanChannels,ScanDuration) ScanChannels:高5为保留(b27~b31),低27为分别表示27个有效信道,该位为1,表示扫描;为0不扫描。 ScanDuration:扫描时间,aBaseSuperframeDuration*(2^n+1),n为ScanDuration值。 网络层在家收到该原语后,将通过检查ScanChannels参数发现网络,如果该设备为一个FFD 设备,则执行主动的扫描。如果为一个RFD设备,倘若设备实现主动扫描,那么他会执行主动的扫描,否则 一个合适的父节点需要满足三个条件:匹配的PAN标志符、链路成本最大为3、允许连接,为了寻找合适的父节点,NLME_JOIN.request原语请求网络层搜索它的邻居表,如果邻居表中不存在这样的父节点则通知上层,如果存在多个合适的父节点则选择具有最小深度的父节点,如果存在多个具有最小深度的合适的父节点则随机选择一个父节点。

ZigBee的工作原理

ZigBee 的工作原理_ZigBee 组网技术ZigBee 是一种高可靠的无线数传网络,类似于CDMA和GSM网络。ZigBee 数传模块类 似于移动网络基站。通讯距离从标准的75m到几百米、几公里,并且支持无限扩展。Zigbee 技术特点主要有低功耗、低成本、时延短、网络容量大、工作频段灵活、低速率、安全的数据传输等。其中低功耗是Zigbee 技术最重要的特点。由于Zigbee 的传输速率相对较低发射功率较小,使得Zig bee 设备很省电,这是Zigbee 技术能够广泛应用的基石。 ZigBee 协议适应无线传感器的低花费、低能量、高容错性等的要求。Zigbee 的基础是IEEE 802.15.4 。但IEEE仅处理低级MAC层和物理层协议,因此Zigbee 联盟扩展了IEEE,对其网络层协议和API 进行了标准化。Zigbee 是一种新兴的短距离、低速率的无线网络技术。主要用于近距离无线连接。它有自己的协议标准,在数千个微小的传感器之间相互协调实现通信。 ZigBee 组网概述 组建一个完整的zigbee 网状网络包括两个步骤:网络初始化、节点加入网络。其中节点加入网络又包括两个步骤:通过与协调器连接入网和通过已有父节点入网。 ZigBee 网络初始化预备 Zigbee 网络的建立是由网络协调器发起的,任何一个zigbee 节点要组建一个网络必须要满足以下两点要求: (1)节点是FFD节点,具备zigbee 协调器的能力; (2)节点还没有与其他网络连接,当节点已经与其他网络连接时,此节点只能作为该网络的子节点,因为一个zigbee 网络中有且只有一个网络协调器。 FFD:Full Func TIon Device 全功能节点 RFD:Reduced Func TI onDevice 半功能节点

ZIGBEE无线定位技术

ZIGBEE无线定位技术 大多数无线传感器网络都要求具备一种确定网络节点位置的方法。因此在设备安装期间,需要弄清楚哪些节点相互之间直接进行数据交换,或者确定哪些节点直接与中央数据采集点进行数据交换。 当通过基于软件的计算方法来确定网络节点位置时,就需要考虑到市场化解决方案(market solution)。这些具体的计算方法是:节点首先读取计算节点位置的参数,然后将相关信息传送到中央数据采集点,对节点位置进行计算,最后,再将节点位置的相关参数传回至该节点。这就是典型的数据密集型计算,并且需要配置一台PC 或高性能的MCU。 这种计算节点位置的方法之所以只适用于小型的网络和有 限的节点数量,是因为进行相关计算所需的流量将随着节点数量的增加而呈指数级速度增加。因此,高流量负载加上带宽的不足限制了这种方法在电池供电网络中的应用。 针对上述问题,CC2431 采用了一种分布式定位计算方法。这种计算方法根据从距离最近的参考节点(其位置是已知的)接收到的信息,对节点进行本地计算,确定相关节点的位置。因此,网络流量的多少将由待测节点范围中节点的数量决定。另外,由于网络流量会随着待测节点数量的增加而成比例递增,因此,C C2431 还允许同一网络中存在大量的待测节点。 本文所提供的结果是根据对ZigBee 网络的测量得出的,然

而,这些测量结果同样适用于基于IEEE 802.15.4协议构建的更简单的网络。 定位引擎技术 定位引擎根据无线网络中临近射频的接收信号强度指示(R SSI),计算所需定位的位置。在不同的环境中,两个射频之间的RSSI 信号会发生明显的变化。例如,当两个射频之间有一位行人时,接收信号将会降低30dBm。为了补偿这种差异,以及出于对定位结果精确性的考虑,定位引擎将根据来自多达16 个射频的RSSI 值,进行相关的定位计算。其依据的理论是:当采用大量的节点后,RSSI 的变化最终将达到平均值。 在RF 网络中,具有已知位置的定位引擎射频称为参考节点,而需要计算定位位置的节点称为待测节点。 要求在参考节点和待测节点之间传输的唯一信息就是参考节点的X 和Y 坐标。定位引擎根据接收到的X 和Y 坐标,并结合根据参考节点的数据测量得出的RSSI 值,计算定位位置。 将定位技术纳入网络协议 一些采用定位引擎的应用可能要求放置若干个参考节点,以作为基础设施设置不可或缺的一部分。ZigBee 技术能够实现对家庭、办公以及工业等应用的无线控制。随着ZigBee 设备在楼宇基础设施中的安装数量不断增多,ZigBee 将会在家庭和办公自动化方面拥有更为广阔的应用前景。

Zigbee组网程序

SappleApp.c #include "OSAL.h" #include "ZGlobals.h" #include "AF.h" #include "aps_groups.h" #include "ZDApp.h" #include "SampleApp.h" #include "SampleAppHw.h" #include "OnBoard.h" /* HAL */ #include "hal_lcd.h" #include "hal_led.h" #include "hal_key.h" #include "string.h" #include "MT_UART.h" //#include "Lcd128X64.h" #include "UtOled.h" #include "sensor.h" #include "HAL_ADC.h" #include "exsensor.h" #include "lcd128_64.h" const cId_t SampleApp_ClusterList[SAMPLEAPP_MAX_CLUSTERS] = { SAMPLEAPP_PERIODIC_CLUSTERID, SAMPLEAPP_FLASH_CLUSTERID }; const SimpleDescriptionFormat_t SampleApp_SimpleDesc = { SAMPLEAPP_ENDPOINT, // int Endpoint; SAMPLEAPP_PROFID, // uint16 AppProfId[2]; SAMPLEAPP_DEVICEID, // uint16 AppDeviceId[2]; SAMPLEAPP_DEVICE_VERSION, // int AppDevVer:4; SAMPLEAPP_FLAGS, // int AppFlags:4; SAMPLEAPP_MAX_CLUSTERS, // uint8 AppNumInClusters; (cId_t *)SampleApp_ClusterList, // uint8 *pAppInClusterList; SAMPLEAPP_MAX_CLUSTERS, // uint8 AppNumInClusters; (cId_t *)SampleApp_ClusterList // uint8 *pAppInClusterList; };

ZigBee的工作原理

ZigBee得工作原理_ZigBee组网技术ZigBee就是一种高可靠得无线数传网络,类似于CDMA与GSM网络。ZigBee数传模块类似于移动网络基站。通讯距离从标准得75m到几百米、几公里,并且支持无限扩展。Zig bee技术特点主要有低功耗、低成本、时延短、网络容量大、工作频段灵活、低速率、安全得数据传输等。其中低功耗就是Zigbee技术最重要得特点。由于 Zigbee得传输速率相对较低发射功率较小,使得Zig bee设备很省电,这就是 Zigbee技术能够广泛应用得基石。 ZigBee协议适应无线传感器得低花费、低能量、高容错性等得要求。Zigbee 得基础就是IEEE 802.15。4、但IEEE仅处理低级MAC层与物理层协议,因此Zigbee联盟扩展了IEEE,对其网络层协议与API进行了标准化。Zigbee就是一种新兴得短距离、低速率得无线网络技术。主要用于近距离无线连接。它有自己得协议标准,在数千个微小得传感器之间相互协调实现通信。 ZigBee组网概述 组建一个完整得zigbee网状网络包括两个步骤:网络初始化、节点加入网络。其中节点加入网络又包括两个步骤:通过与协调器连接入网与通过已有父节点入网。 ZigBee网络初始化预备 Zigbee网络得建立就是由网络协调器发起得,任何一个zigbee节点要组建一个网络必须要满足以下两点要求: (1)节点就是FFD节点,具备zigbee协调器得能力; (2)节点还没有与其她网络连接,当节点已经与其她网络连接时,此节点只能作为该网络得子节点,因为一个zigbee网络中有且只有一个网络协调器。 FFD:Full Func TI on Device 全功能节点 RFD:Reduced FuncTI onDevice半功能节点

ZigBee源码程序及解释

协议栈无线透传编程原理: 第一个功能:协调器的组网,终端设备和路由设备发现网络以及加入网络 //第一步:Z-Stack 由 main()函数开始执行,main()函数共做了 2 件事:一是系统初始化,另外一件是开始执行轮转查询式操作系统 int main( void ) { ....... // Initialize the operating system osal_init_system(); //第二步,操作系统初始化...... osal_start_system(); //初始化完系统任务事件后,正式开始执行操作系统 ...... } //第二步,进入 osal_init_system()函数,执行操作系统初始化 uint8 osal_init_system( void ) //初始化操作系统,其中最重要的是,初始化操作系统的任务 { // Initialize the Memory Allocation System osal_mem_init(); // Initialize the message queue osal_qHead = NULL; // Initialize the timers osalTimerInit(); // Initialize the Power Management System osal_pwrmgr_init(); // Initialize the system tasks. osalInitTasks(); //第三步,执行操作系统任务初始化函数 // Setup efficient search for the first free block of heap. osal_mem_kick(); return ( SUCCESS ); } //第三步,进入osalInitTasks()函数,执行操作系统任务初始化 void osalInitTasks( void ) //第三步,初始化操作系统任务 { uint8 taskID = 0; tasksEvents = (uint16 *)osal_mem_alloc( sizeof( uint16 ) * tasksCnt); osal_memset( tasksEvents, 0, (sizeof( uint16 ) * tasksCnt));

一文读懂zigbee技术的协议原理

一文读懂zigbee技术的协议原理 一.前言 从今天开始,我们要正式开始进行zigbee相关的通信实验了,我所使用的协议栈是ZStack 是TI ZStack-CC2530-2.3.0-1.4.0版本,大家也可以从TI的官网上直接下载TI公司为cc2530写的协议栈代码,毕竟,我们作为初学者,应该先不要去深究协议栈是怎么用代码编写的,毕竟zigbee已经相当成熟了,我们应该先学会使用zigbee协议栈进行通信,并能应用于实际项目中,比如说智能家具,不知道大家是不是有同感,所以下面我就先给大家介绍一下zigbee通信的原理以及体系架构。 二.ZStack 体系架构 ZStack 的体系结构由称为层的各模块组成。每一层为其上层提供特定的服务:即由数据服务实体提供数据传输服务;管理实体提供所有的其他管理服务。每个服务实体通过相应的服务接入点(SAP) 为其上层提供一个接口,每个服务接入点通过服务原语来完成所对应的功能。 ZStack 根据IEEE 802.15.4 和ZigBee 标准分为物理层,介质接入控制层,网络层,应用层。物理层提供了基础的服务,数据传输和接收,网络层提供了各个节点连入的服务,是zigbee网络通信的关键,应用层是我们关注的重点,提供了应用的框架和ZDO。大家如果想了解体系结构的具体内容,可以自己去看说明文档,下面我给大家介绍一下zigbee 工作原理。 ZStack 采用操作系统的思想来构建,采用事件轮循机制,而且有一个专门的Timer2 来负责定时。从CC2530 工作开始,Timer2 周而复始地计时,有采集、发送、接收、显示…等任务要执行时就执行。当各层初始化之后,系统进入低功耗模式,当事件发生时,唤醒系统,开始进入中断处理事件,结束后继续进入低功耗模式。如果同时有几个事件发生,判断优先级,逐次处理事件。这种软件构架可以极大地降级系统的功耗。 整个ZStack 的主要工作流程,如图所示,大致分为以下6 步:(1) 关闭所有中断;(2) 芯

Zigbee网络设备启动流程—协调器(自启动模式)

使用的协议栈版本信息: ZigBee2006\ZStack-1.4.3-1.2.1 Zigbee网络设备启动流程—协调器(自启动模式)—以SampleApp的协调器为例. 1、协调器预编译信息 通过project->options->c/c++compiler->extraOptions可以看到协调器所带的配置文件为: -f $PROJ_DIR$\..\..\..\Tools\CC2430DB\f8wCoord.cfg -f $PROJ_DIR$\..\..\..\Tools\CC2430DB\f8wConfig.cfg 即编译了ZDO_COORDINATOR和RTR_NWK. 通过project->options->c/c++compiler->reprocessor->Defined symbols可以看到协调器预编译包含了: CC2430EB; ZTOOL_P1; MT_TASK; LCD_SUPPORTED=DEBUG; MANAGED_SCAN 没有编译HOLD_AUTO_START和SOFT_START. 2、具体流程 main()->osal_init_system()->osalInitTasks()->ZDApp_Init() 进入ZDApp_Init()函数: ************************************** void ZDApp_Init( byte task_id ) { uint8 capabilities; // Save the task ID ZDAppTaskID = task_id; // Initialize the ZDO global device short address storage ZDAppNwkAddr.addrMode = Addr16Bit; ZDAppNwkAddr.addr.shortAddr = INVALID_NODE_ADDR; //0xFFFE (void)NLME_GetExtAddr(); // Load the saveExtAddr pointer. // Check for manual"Hold Auto Start" //检测到有手工设置SW_1则会设置devState = DEV_HOLD,从而避开网络初始化 ZDAppCheckForHoldKey(); // Initialize ZDO items and setup the device - type of device to create. ZDO_Init(); //通过判断预编译来开启一些函数功能 // Register the endpoint description with the AF // This task doesn't have a Simple description, but we still need // to register the endpoint. afRegister( (endPointDesc_t *)&ZDApp_epDesc ); #if defined( ZDO_USERDESC_RESPONSE ) ZDApp_InitUserDesc(); #endif // ZDO_USERDESC_RESPONSE // set broadcast address mask to support broadcast filtering NLME_GetRequest(nwkCapabilityInfo, 0, &capabilities); NLME_SetBroadcastFilter( capabilities ); // Start the device? if ( devState != DEV_HOLD ) { ZDOInitDevice( 0 ); }

【标准】基于Zigbee技术的智能家居系统设计方案

基于Zigbee技术的智能家居系统设计方 家居设备通过Zigbee 进行无线组网,把家居设备的信息和数字视频传输到因特网网络上, 进行实时的显示并进行后续的利用和控制;同时将收集各处传输进来的数字视频信息进行后续的处理和识别。如入侵检测,人脸检测和识别等。 智能家居又称为智能住宅,在国外常用Smart Home 表示。与智能家居含义近似的有家庭自动化(Home Automation)、电子家庭(Electr ON ic Home、E-home)、数字家园(Digital Family)、家庭网络(Home Net/Networks for Home)、网络家居(NetworkHome)、智能家庭/建筑(Intel ligent Home/Building)等。 智能家居系统利用先进的计算机技术、网络通讯技术、综合布线技术将与家居生活有关的各种子系统有机地结合在一起,通过统筹管理,让家居生活更加舒适、安全。智能家居可以提供全方位的信息交换功能,帮助家庭与外部保持信息交流通畅,优化人们的生活方式,增强家居生活的安全性,甚至为各种能源费用节约资金。 1 项目概述 1.1 智能家居发展概况 智能家居是利用先进的计算机技术、嵌入式系统和网络通讯技术,将家庭中的各种设备(如照明系统、环境控制、安防系统、网络家电)通过家庭网络连接到一起的,自从美国在1984 真正的智能建筑出现以来,国外已经有将近30 年的研究历史,而国内在这方面的研究相对较晚,从2003 年才逐步应用于高端市场,而且标准不统一,如海信、海尔、清华大学等大家各自为营。由于智能家居系统具有安全、方便、高效、快捷、智能化和个性化的独特魅力,使得智能家居的开发与建设成为21 世纪科技发展的必然趋势。随着全球对能源和环境的要求越来越高,而智能家居在节能方面的效果优势非常明显,因此具有非常广阔的市场前景。 1.2 开发板主要参数 本项目所使用开发板为Real6410 开发板,采用三星公司的ARM11 内核的处理器 S3C6410.开发板上还集成了123 M的DDR 内存以及1 GB NandFlash, 同时预留了

Zigbee网络原理与应用教案

计算机与信息技术学院 课程教案 专业物联网工程 课程Zigbee网络原理与应用 讲授人姚建峰 2015 年 9月10日

(一) 课程名称:Zigbee网络原理与应用 (二) 学时学分:周4学时,3学分 (三) 预修课程:电子线路、数字逻辑、计算机组成原理、高级语言程序设计 (四) 使用教材 ZigBee技术与实训教程――基于CC2530的无线传感网技术,清华大学出版社,2014年5月第1版 (五) 教学参考书(3本以上) 1、李文仲编著:《Zigbee2006无线网络与无线定位实战》,北京航空航天大学出版社,2008年1月第1版; 2、王小强编著:《Zigbee无线传感器网络设计与实现》,化学工业出版社,2012年6月第1版; 3、郭渊博编著:《Zigbee技术与应用》,国防工业出版社,2010年6月第1版。 (六)教学方法:课堂讲授,课堂演示,师生互动,理论与实验结合教学。 (七) 教学手段:多媒体教学。 (八) 考核方式:闭卷考试。 (九) 学生创新精神与实践能力的培养方法:结合实验、具体应用、小组讨论等方式使学生掌握Zigbee技术开发的基本方法,提高学生分析问题和解决问题的能力,培养学生的动手能力和创新能力。 (十) 其它要求:严格考勤,学生课堂表现和实验完成情况占学生成绩的30%,期末成绩占70%。

第一章无线传感器网络 教学时数:2学时 教学目的与要求:主要让学生理解无线传感网络的主要概念,了解无线传感网络的发展历程、研究现状与研究前景、应用领域,掌握无线传感网络的特点、网络体系结构、关键技术。 教学重点:无线传感器网络体系结构。 教学难点:无线传感器网络的关键技术。 第一节无线传感器网络概述(了解) 1.无线传感器网络的概念: 无线传感器网络就是由部署在监测区域内大量的廉价微型传感器节点组成,通过无线通信方式形成的一个多跳的自组织的网络系统,其目的是协作地感知、采集和处理网络覆盖区域中被感知对象的信息,并发送给观察者。传感器、感知对象和观察者构成了无线传感器网络的三个要素。 2.无线传感器网络的发展历程: 第一阶段:最早可以追溯至越战时期使用的传统的传感器系统。当年美越双方在密林覆盖的“胡志明小道”进行了一场血腥较量,“胡志明小道”是胡志明部队向南方游击队输送物资的秘密通道,美军对其进行了狂轰滥炸,但效果不大。后来,美军投放了2万多个“热带树”传感器。“热带树”实际上是由震动和声响传感器组成的系统,它由飞机投放,落地后插入泥土中,只露出伪装成树枝的无线电天线,因而被称为“热带树”。只要对方车队经过,传感器探测出目标产生的震动和声响信息,自动发送到指挥中心,美机立即展开追杀,总共炸毁或炸坏4.6万辆卡车。 第二阶段:二十世纪80年代至90年代之间。主要是美军研制的分布式传感器网络系统、海军协同交战能力系统、远程战场传感器系统等。这种现代微型化的传感器具备感知能力、计算能力和通信能力。因此在1999年,商业周刊将传感器网络列为21世纪最具影响的21项技术之一。 第三阶段:21世纪开始至今,也就是9·11事件之后。这个阶段的传感器网络技术特点在于网络传输自组织、节点设计低功耗。除了应用于反恐活动以外,在其它领域更是获得了很好的应用,所以2002年美国国家重点实验室--橡树岭实验室提出了“网络就是传感器”的论断。 3.无线传感器网络研究现状: (1)国外无线传感器网络的研究现状 1998年,美国国防部提出了“智能尘埃”的概念,最先开始无线传感器网络技术的研究,目的是为监控敌方的活动情况而不被察觉。2001年,美国陆军提出“灵巧传感器网络通信”计划,将无人值守式弹药、传感器和未来战斗系统

相关文档
最新文档