基于ZigBee技术的温度采集系统设计_第1页
基于ZigBee技术的温度采集系统设计_第2页
基于ZigBee技术的温度采集系统设计_第3页
基于ZigBee技术的温度采集系统设计_第4页
基于ZigBee技术的温度采集系统设计_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于Zigbee技术的温度采集系统设计大连海事大学装订线毕 业 论 文二一四年六月基于ZigBee技术的温度采集系统设计 专业班级: 通信工程2班 姓 名: 罗景元 指导教师: 谭克俊 信息科学技术学院摘 要近年来随着无线通信、计算机传感技术的飞速发展和融合,无线传感网技术(WSN)应运而生,而Zigbee以其低成本、低数据速率、超低功耗的特点满足了当前无线传感网络技术的应用与普及。本论文研究课题是基于Zigbee的无线温度采集系统,该系统可以应用到智能家居领域从而节省人力和能源,具有非常广阔的应用前景和研究价值。文章首先介绍了Zigbee技术与网络拓扑结构,通过介绍无线温度采集系统的基本原理,制定系统总体设计方案。进而完成了对控制模块、终端节点相关软硬件的设计。系统采用星型网络拓扑结构,建立了一个主节点与多个从节点搭建的自组网,来实现无线数据传输。通过数字温度传感器SHT11采集温度数据,在Zigbee终端节点根据设定好的路由协议多跳上传至协调器节点,协调器节点将收集到的温度数据处理由串口线路传给上位PC机,在PC机上的串口终端上实时显示监测收集到的数据。最后对传感器模块硬件电路、无线收发模块硬件电路以及整个系统进行了测试,结果显示系统运行平稳,验证了本系统设计方案的可行性。关键词:无线通信;无线传感网;ZigBee;温度采集IABSTRACTIn recent years, with the rapid development of wireless communications, computer sensing technology and the fusion, wireless sensor network technology(WSN) arises at the historic moment. known for its low cost, the characteristics of the low data rate, low power consumption Zigbee satisfy the current applications of wireless sensor network technology and popularization. This thesis research topic is based on the Zigbee wireless temperature acquisition system,The system can be applied to the field of intelligent household saving manpower and energy. it has very broad application prospects and research value.This paper introduces the Zigbee technology and the network topology,Through the introduction of the basic principle of wireless temperature acquisition system, the system overall design scheme,Then completed the control module, terminal node related hardware and software design.System USES the star network topology structure, set up a master node and multiple slave nodes set up ad-hoc network, to realize wireless data transmission.Through digital temperature sensor SHT11 temperature data collected in Zigbee terminal nodes according to set good routing protocol jump uploaded to the coordinator node,The coordinator node will be collected by the temperature data processing by a serial line to the upper PC, and displayed in real time on PC serial port terminal monitoring data collected.At the end of the sensor module, wireless transceiver module hardware circuit and the whole system is tested, the results show that the system runs stably, verify the feasibility of the system design.KEY WORDS: wireless communication;Wireless sensor network;ZigBee;temperature acquisitionI基于Zigbee技术的温度采集系统设计目 录第1章 绪论11.1 课题背景与意义11.2 无线温度采集的现状与未来展望11.3 论文的主要研究内容2第2章Zigbee技术42.1 Zigbee技术简介42.1.1 Zigbee是什么42.1.2 Zigbee的优势42.1.3 Zigbee的主要特性52.2 Zigbee协议栈结构52.3 ZigBee的网络拓扑结构72.3.1 星形拓扑结构72.3.2 树形拓扑结构82.3.3 Mesh拓扑结构82.4 IEEE 802.15.4 规范92.4.1 物理层规范102.4.2 MAC层规范11第3章 温度采集系统的硬件设计133.1系统整体设计133.2 硬件设计143.2.1 系统硬件平台143.2.2 ZigBee通信模块153.2.3 通信模块电路设计163.3 温湿度数据采集原理183.4 温湿度传感器SHT1019第4章 温度采集系统的软件设计214.1 系统软件平台概述214.2 Z-Stack2007协议栈软件224.2.1 Z-Stack软件架构224.2.2 Z-Stack软件流程24I4.3 程序设计25第5章 总结29参 考 文 献30致 谢32I基于Zigbee技术的温度采集系统设计第1章 绪论1.1 课题背景与意义在过去20年里,互联网(Internet)极大地方便和改变了我们的生活。就我们所熟知的几种短距离无线网络通信标准有:WIFI(无线宽带接入)、Bluetooth(蓝牙)、ZigBee等无线技术,每个标准都有它在特定领域应用的优点。温度是日常生活中一种最基本的环境参数,自然界中几乎所有的物理化学过程都与温度紧密相关。在工业生产过程中需要实时测量温度,在农业生产中离不开温度的测量,在家庭生活中也是处处离不开温度的采集监控。因此研究温度测量与采集的方法及其相关硬件设备具有重要的意义,而采集测量温度的关键就是温度传感器。温度传感器,使用范围广,数量多,居各种传感器之首。温度传感器的发展大致经历了以下3个阶段:传统的分立式温度传感器,模拟集成温度传感器,智能集成温度传感器3.目前,国际上新型温度传感器正从模拟式向数字式,从集成化向智能化、网络化的方向飞速发展。使用以无线网络通信技术为基础的应用系统,进行温度等数据采集传输的方式已经出现在社会生活生产的每一个方面,温度等数据测量的准确度在影响生产效益的同时也逐步引起了社会各界的重视24。本系统选择Zigbee无线通信模块结合数字温湿度传感器SHT10进行温度的采集测量具有很好的通用型与扩展性。1.2 无线温度采集的现状与未来展望传感器网络实现了数据的采集、处理和传输三种功能。它与通信技术和计算机技术共同构成信息技术的三大支柱。无线传感器网络wireless sensor network(即WSN)是由部署在监测区域内大量的廉价微型传感器节点组成,通过无线通信方式形成的一个多跳的自组织的网络系统。在人们日常生产生活中它可以大幅降低检查设备的成本,同时由于可以提前发现问题,因此将能够缩短停机时间,提高效率,并延长设备的使用时间19。尽管无线传感器技术仍处于初步应用阶段,但已经展示出了非凡的应用价值,相信随着相关技术的发展和推进,一定会得到更大的应用。1.3 论文的主要研究内容本论文旨在开发一个基于ZigBee网络的实时无线温度采集控制系统。系统整体主要由 ZigBee网络组成,负责无线传感网络内部数据的采集和传输。利用温度传感器采集来的温度数据,通过Zigbee自组网技术经由终端节点上传给协调器节点整理信息再通过串口通信上传给上位机(PC机),以此对温度进行实时的监控。基于上述架构的温度采集及控制系统具有如下的特点:首先,ZigBee 作为一种新兴的无线通信技术,它的组网灵活与低成本等特点解决了传统有线连接方式布线繁琐、扩展性和移植性差的缺点;其次,ZigBee 技术的低功耗特点使采集控制节点可采用电池供电适于放置在一些无固定电源的监控环境中。最后Zigbee标准有助于降低应用成本。和其他标准,如IEEE802.11相比,满足Zigbee和IEEE802.15.4标准的最低需求相对简单,这同时也降低了Zigbee收发器的复杂度和成本16。本论文的主要研究内容可概括如下:学习TI ZStack2007协议栈内容,掌握CC2530模块无线组网原理及过程。学习基于Zstack协议栈的无线传感器网络数据传输方法。熟悉有关Zstack2007协议栈的具体内容。阅读SHTX0温湿度传感器芯片文档,熟悉该传感器的使用及时序操作。 使用IAR开发环境程序设计,Zstack2.3.01.4.0协议栈源码例程SampleApp工程基础上,实现无线组网及通讯。即协调器自动组网,终端节点(附带温湿度传感器)自动入网,并采集温湿度数据广播传输,协调器接收到信息后将温湿度数据通过串口发送给 PC计算机显示。以此实现基于Zstack协议栈的数据无线透明传输。34第2章Zigbee技术2.1 Zigbee技术简介2.1.1 Zigbee是什么ZigBee技术是一种近距离、低复杂度、低功耗、低速率、低成本的双向无线通讯技术。主要用于距离短、功耗低且传输速率不高的各种电子设备之间进行数据传输以及典型的有周期性数据、间歇性数据和低反应时间数据传输的应用1。“Zigbee”一词源自于蜜蜂群在发现花粉位置时,通过跳ZigZag形舞蹈来告知同伴,传递所发现新食物源的位置、距离和方向等信息。可以说,是一种小的动物通过简捷的方式实现“无线”沟通,人们借此来称呼这种专注于低功耗、低成本、低复杂度、低速率的近程无线网络通信技术2。形象的描述Zigbee:它是一种简单的东西,其核心是多信道无线通信装置和微控制器它们都被集成在一两块半导体芯片上,封装在如同小指甲盖大小的塑料制品里面。简言之,Zigbee就是一种便宜的、低功耗的近距离无线组网通信技术。2.1.2 Zigbee的优势首先,各种不同功能的无线网络节点要能相互相交流、相互沟通,就需要保证网络节点的互通性,即网络的标准化。其次各种功能的无线网络节点相互间可以在任意节点间进行通信。这就需要管理越来越复杂的无线网络,这样一来,产品的部分设计被标准化,显著减小了产品设计的工作量,有利于缩短产品上市周期。可以这样说,按照Zigbee标准设计生产出来的检测和控制产品,与那些使用其他无线标准(如Bluetooth和WiFi)的产品相比,安装更容易,功耗更低;特别是在处理远程监测及控制系统中,其区别更加明显。这种基于标准的低功率技术特别适合楼宇自动化、成套照明、通风及自动调温系统,降低工业控制和传感器应用的安装和维护成本。2.1.3 Zigbee的主要特性1. 自动组网,网络容量大。Zigbee网络可容纳多达65000个节点,网络中的任意节点之间都可进行数据通讯。网络有星状、片状和网状网络结构。在有模块加入和撤出时,网络具有自动修复功能。2. 网络时延短。Zigbee的响应速度较快,一般从睡眠转入工作状态只需15ms,节点连接进入网络只需30ms,进一步节省了电能。相比较,蓝牙需要310s、WiFi需要3s。3. 模块功耗低,通讯速率低。模块最有较小的发送接收电流,支持多种睡眠模式,一个10AH的电池,在Zigbee水表中可使用8年.Zigbee通讯速度最高可达250Kbps,适合用于设备间的数据通讯,不太适合用于声音、图像的传送。4. 传输距离可扩展。举例DIGI的XBEE增强型模块,相邻模块通讯距离可达1.6Km,有效距离范围内的模块自动组网,网络中的各节点可自由通讯,这样传输距离得到了扩展.5. 成本低。Zigbee模块工作于2.4G全球免费频段,故只需要先期的模块费用,无需支付持续使用费用.若采用丰宝代理的DIGI公司的Zigbee模块,则可无需再次开发,通过TTL的RX,TX便可进行数据发送接收,大量减少了产品开发周期,获得了更好的市场先机.6. 可靠性好,安全性高。Zigbee具有可靠的发送接收握手机制,可靠地保证了数据的发送接收,另Zigbee采用AES128位密钥,保证数据发送的安全性。2.2 Zigbee协议栈结构1、物理层 物理层由半双工的无线收发器及其接口组成,主要作用是激活和关闭射频收发器;检测信道的能量;显示收到数据包的链路质量;空闲信道评估;选择信道频率;数据的接受和发送。2、媒体访问控制层媒体访问控制(MAC)层建立了一条节点和与其相邻的节点之间可靠的数据传输链路,共享传输媒体,提高通信效率。在协调器的MAC层,可以产生网络信标,同步网络信标;支持Zigbee设备的关联和取消关联;支持设备加密;在信道访问方面,采用CSMA/CA信道退避算法,减少了碰撞概率;确保时隙分配(GTS);支持信标使能和非信标使能两种数据传输模式,为两个对等的MAC实体提供可靠连接。3、网络层 基于底层的可靠通信,提供路由、路由发现、多跳、转发的功能。Zigbee网络可以组成星型、簇树型或MESH型网络。对于终端节点而言,网络层的功能只是加入和离开网络;对于路由器而言,网络层的功能是信息的转发,路由发现,建立和维护路由表和邻居表,以及构造到某节点的路由任务;而协调器网络层的任务主要包括启动和维护网络正常工作,为新加入的节点分配网络地址。 4、应用层 应用层包括三部分:应用支持子层(APS)、Zigbee设备对象(ZDO)和应用框架(AF)应用支持子层的任务是提取网络层的信息并将信息发送到运行在节点上的不同应用端点。Zigbee设备对象负责设备的所有管理工作,包括设定该设备在网络中的角色(协调器、路由器或终端设备),发现网络中的设备,确定这些设备能提供的功能,发起或响应绑定请求,完成设备之间建立安全的关联等。AF应用框架是应用层与APS层的接口。它负责发送和接收数据,并为接收到的数据寻找相应的目的端点。 2.3 ZigBee的网络拓扑结构ZigBee技术具有强大的组网能力,可以形成星型、树型和网状网,可以根据实际项目需要来选择合适的网络结构。2.3.1 星形拓扑结构星形拓扑是最简单的一种拓扑形式,他包含一个Co-ordinator(协调者)节点和一系列的End Device(终端)节点。每一个End Device节点只能和Co-ordinator 节点进行通讯。可以从图2.1发现,如果需要在两个End Device节点之间进行通讯必须通过Co-ordinator节点进行信息的转发。这种拓扑形式的缺点是节点之间的数据路由只有唯一的一个路径。Co-ordinator(协调者)有可能成为整个网络的瓶颈。实现星形网络拓扑不需要使用ZigBee的网络层协议,但是这需要开发者在应用层作更多的工作,包括自己处理信息的转发。图2.1 形状拓扑结构2.3.2 树形拓扑结构树形拓扑包括一个Co-ordinator(协调者)以及一系列的Router(路由器)和End Device(终端)节点。Co-ordinator连接一系列的Router和End Device,他的子节点的Router也可以连接一系列的Router和End Device.这样可以重复多个层级。树形拓扑的结构如图2.2所示。图2.2 树状拓扑结构树形拓扑中的通讯规则:每一个节点都只能和他的父节点和子节点之间通讯。如果需要从一个节点向另一个节点发送数据,那么信息将沿着树的路径向上传递到最近的祖先节点然后再向下传递到目标节点。这种拓扑方式的缺点就是信息只有唯一的路由通道。另外信息的路由是由协议栈层处理的,整个的路由过程对于应用层是完全透明的。2.3.3 Mesh拓扑结构Mesh拓扑(网状拓扑)包含一个Co-ordinator和一系列的Router和End Device。这种网络拓扑形式和树形拓扑相同;可以参考上面所提到的树形网络拓扑。但是,网状网络拓扑具有更加灵活的信息路由规则,在可能的情况下,路由节点之间可以直接的通讯。这种路由机制使得信息的通讯变得更有效率,而且意味这一旦一个路由路径出现了问题,信息可以自动的沿着其他的路由路径进行传输。 网状拓扑的示意图如图2.3所示。图2.3 网状拓扑结构通常在支持网状网络的实现上,网络层会提供相应的路由探索功能,这一特性使得网络层可以找到信息传输的最优化的路径。需要注意的是,以上所提到的特性都是由网络层来实现,应用层不需要进行任何的参与。MESH网状网络拓扑结构的网络具有强大的功能,网络可以通过“多级跳”的方式来通信;该拓扑结构还可以组成极为复杂的网络;网络还具备自组织、自愈功能。2.4 IEEE 802.15.4 规范作为低速无线个域网(LRWPAN)技术,Zigbee协议栈的物理、MAC层即是IEEE802.15.4协议。它是具有低复杂度、应用成本小、设备功耗低等优势,能在低成本设备之间进行低速率信息传输规范。表2.1是IEEE802.15.4的主要协议框架。表2.1 IEEE802.15.4主要协议框架应用层网络层数据链路层MAC层868/915 PHY层2.4 PHY层2.4.1 物理层规范物理层(PHY)给出了两种类型的服务:管理服务和数据服务。物理层主要完成以下几项任务:开启和关闭无线收发信机、能量检测(ED)、链路质量指示(LQI)、空闲信道评估(CCA)、信道选择、数据发送和接收。IEEE802.15.4物理层定义了868MHz、915MHz和2.4GHz三个频段。在这三个频段上物理层一共划分了27个信道,信道编号k为026。2450MHz频段上划分了16个信道,915MHz频段上有10个信道,868MHz频段只有1个信道。27个信道的中心频率和对应的信道编号定义如公式(2.1)所示。 (2.1)其中k信道号;Fc频段(MHz)物理层通过射频固件和射频硬件提供了一个从MAC层到物理层无线信道的接口。在物理层中,包含一个物理层管理实体(PLME),该尸体通过点用物理层的管理功能函数,为物理层管理服务提供其接口,同时,还负责维护由物理层所管理的目标数据库,该数据库包含有物理层个域网络的基本信息。物理层的接口结构如图2.4所示。图2.4 物理层接口结构2.4.2 MAC层规范IEEE 802.15.4 标准把数据链路层分为逻辑链路控制子层(LLC)和介质接入控制子层(MAC)。MAC子层提供两种服务:MAC层数据服务和MAC层管理服务(MAC sublayer management entity,MLME)。前者保证MAC协议数据单元在物理层数据服务中的正确收发,后者维护一个存储MAC子层协议状态相关信息的数据库。MAC子层主要负责以下几项任务:协调器产生网络信标;信标同步;支持PAN关联和解关联;CSMACA信道访问机制;处理和维护保证时隙(GTS)机制;在两个对等MAC实体间提供可靠链路。MAC层参考模型如图2.5所示。图2.5 MAC层参考模型MAC帧的基本组成部分如表2.2所示。(1)MAC帧头 MHR,它包含帧控制域、序列号和地址信息。(2)MAC净载荷子域(动态长度),帧的类型是由包含在其内部的信息来确定的。净载荷子域不包含在应答信号帧内。(3)MAC,其中含有单个帧校验的序列(FCS)。表2.2 MAC帧格式2byte1byte0/2/8byte0/2byte0/2/8byte0/2/8byte可变2/byte帧控制序列号目的PAN标示符目的地址源PAN标示符源地址帧净载荷FCS地址域MHRMAC净载荷MFR无线温度采集系统的整个网络配置由单个协调器节点与N个终端数据采集节点构成,在星形拓扑结构的网络内部的所有终端温度采集设备都只能够和协调器节点进行对应的双向通信,为了实现该功能,协调器节点需要保存N个终端数据采集节点的16位网络短地址,这就要求每个终端设备节点在入网请求得到允许以后,把16位网络短地址发送给协调器节点建立地址表,以满足用户对于特定区域采集数据的需求。低速率无线个人局域网的物理层和媒体接入控制协议MAC数据包最长为127个字节,所有的数据包的信息组成都是由16CRC值以及头字节组成,在数据传输过程里我们设置了ACK标志位为1的帧,以此作为应答传输机制的信号帧,假如在规定时间里仍然没有收到反馈回来的应答信号,就说明终端温度采集节点出现异常。第3章 温度采集系统的硬件设计无线温度采集系统解决了传统有线的温度传感系统布线繁琐,监测过程受限的缺点。而基于Zigbee的这种短距离无线通信系统以其低功耗、高性价比,系统安装维护便捷,而且该系统拥有摆脱数据采集监测过程上空间限制,可应用到更多场合中。3.1系统整体设计无线传感器温度采集系统主要由PC机、ZigBee协调器和放置在各处的温湿度采集节点ZigBee终端设备组成。协调器自动组网传感器终端节点自动联网构建星形拓扑网络。终端数据采集节点的结构较为简化,仅由一个CC2530模块,Flash 存储和数字SHT10温度传感器组成,各个终端节点被初始化为无信标网络中的终端设备。终端设备上电复位后,便启动搜索指定信道上的PAN协调器,并发送连接请求,终端设备在成功入网后,启动休眠定时器,间隔10秒钟唤醒一次,醒来后使用一种简单的非时隙CSMA-CA,通过竞争机制取得信道使用权,通过PC机向协调器节点发送请求数据20。利用模块上的温度传感器模块采集环境温度,并上传给协调器节点,而后立即再次进入休眠状态,以达到最少能耗来延长电源续航时间,网络中的协调器节点负责搜集各温度采集节点的信息,并将信息快速的通过RS232串口按事先定义好的格式上传PC机,随即解析并显示出来。上位机监控界面可以用来监控温度传感器模块的工作状态,在监控界面上通过读取所有温度采集节点的地址以及它们的温度数据来预判温度走势。图3.1示例了Zigbee系统的组网模式。图3.1 Zigbee系统传感网例图该实验实现的功能主要是协调器自启动(组网),节点设备自动入网。之后两者建立无线通讯,数据的发送主要有2种方式,一种为周期定时发送信息(本次实验采用该方法测试),另一种需要通过按键事件触发发送FLASH信息。由于实验配套 ZIGBEE 模块硬件上与TI公司的ZIGBEE样板有差异,因此本次实验没有采用按键触发方式。而是采用周期定时广播的方式来发送ZIGBEE节点端采集到的温湿度数据。3.2 硬件设计3.2.1 系统硬件平台无线温度传感网络的硬件平台如图3.2所示,由于终端数据采集节点与协调器节点仅仅在传感器模块跟串口通信模块上的差别,所以这里拿出协调器节点模块介绍该模块上的各个主要的电路部分设计。图3.2 系统硬件平台3.2.2 ZigBee通信模块ZigBee通信模块采用德州仪器(Texas Instrument)公司的CC2530通信芯片。CC2530是挪威Chipcon公司的一款真正符合IEEE802154标准的片上ZigBee产品。CC2530采用Chipcom公司最新的SmaitRF03技术和0.18mCMOS工艺制造,采用77mmQLP48封装。该芯片除了包括RF收发器外,还集成了加强型805lMCU、32/64/128kB的Flash内存、8KB的RAM、ADC、DMA和看门狗等。CC2530工作在2.4GHz频段,采用低电压(2.O3.6V)供电,且功耗很低(接收数据时为27mA,发送数据时为25mA)、灵敏度高(-97dBm)、最大输出为24dBm、最大传送速率为250kb/s。CC2530的外围元件数目很少,它使用非平衡天线,因为连接非平衡变压器可使天线性能更好。CC2530无线单片机在待机时的电流消耗仅0.2A,在32kHz晶体时钟下运行时的电流消耗小于1A。因此,使用小型电池寿命可以长达10年13。3.2.3 通信模块电路设计由于CC2530芯片的高集成度,设计通信模块的外围电路时仅需少量外围元件即可完成数据处理和传输功能,可显著降低系统成本。图3.3出了CC2530芯片的外围电路,主要由电源模块、晶振电路、天线电路等部分组成。图3.3 CC2530芯片外围电路在硬件设计上它采用流水线结构,机器周期由标准的12个系统时钟周期降到1个,因此指令执行速度有很大的提高。具有64个I/O引脚,每个端口都可以配置成推挽或漏极开路输出,可以满足本系统IO口需要。该芯片除了具有标准8051的数字外设之外,片内还集成了许多有用的模拟和数字外设及功能部件,如模拟多路开关、可编程增益放大器、ADC、DAC、电压比较器、电压基准、温度传感器、看门狗定时器等,支持在系统编程和调试等,本系统主控单元由单片机与CC2530共同完成数据的收集、存储、显示。串口电路用于CC2530将接收到的数据传送给上位工控机,由于上位工控机与CC2530的电平不一致,所以需要一个MAX232电平转换电路8。该节点由无线收发器CC2530、射频天线RF、电源模块、晶振电路和串口电路组成。RF的输入/输出是高阻和差动的,用于RF口最合适的差动负载是(115+j180)。当使用不平衡天线(例如单极天线)时,为了优化性能,应当使用不平衡变压器。不平衡变压器可以运行在使用低成本的单独电感器和电容器的场合。电源模块用于CC2530的数字I/O和部分模拟I/O的供电,供电电压为2.03.6V。CC2530可以同时接32MHz和32.768kHz的两种频率的晶振电路,以满足不同的要求。外设与CC2530的连接非常简单,仅需一根接口线,接口十分方便。由于每片DSl8820均有唯一的产品序列号,所以允许在单总线上挂接数十至上百片数字式传感器,并可以非常方便地构成多路温度测量系统。3.3 温湿度数据采集原理温湿度探头直接使用IIC接口进行控制。其电路原理图如图3.4所示图3.4 温湿度传感器硬件接口电路ZIGBEE(CC2530)模块硬件上设计有2个LED灯,用来编程调试使用。分别连接CC2530的P1_0、P、1_1两个IO引脚。从原理图上可以看出,2个LED灯共阳极,当P1_0、P1_1引脚为低电平时候,LED灯点亮。系统配套的温湿度传感器,与ZIGBEE模块的J5排线相连,这样我们可以知道,温湿度传感器模块的时钟线与ZIGBEE模块的P0_0 IO引脚相连,温湿度传感器的数据线与 P0_1 IO 引脚相连。因此我们需要在代码中将相应引脚进行输入输出控制模拟该传感器时序,来监测温湿度传感器状态。3.4 温湿度传感器SHT10SHT10是一款高度集成的温湿度传感器芯片,提供全标定的数字输出。它采用专利的CMOSens技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电容性聚合体测湿敏感元件、一个用能隙材料制成的测温元件,并在同一芯片上,与14位的A/D转换器以及串行接口电路实现无缝连接。SHT10引脚特性如下:1.VDD,GNDSHT10的供电电压为2.45.5V。传感器上电后,要等待11ms以越过“休眠”状态。在此期间无需发送任何指令。电源引脚(VDD,GND)之间可增加一个100nF的电容,用以去耦滤波。2.SCK用于微处理器与SHT10之间的通讯同步。由于接口包含了完全静态逻辑,因而不存在最小SCK频率。3. DATA三态门用于数据的读取。DATA在SCK时钟下降沿之后改变状态,并仅在SCK时钟上升沿有效。数据传输期间,在SCK时钟高电平时,DATA必须保持稳定。为避免信号冲突,微处理器应驱动DATA在低电平。需要一个外部的上拉电阻(例如:10k)将信号提拉至高电平。上拉电阻通常已包含在微处理器的I/O电路中26。第4章 温度采集系统的软件设计4.1 系统软件平台概述本系统所用的开发环境是IAR7.51,采用的协议栈为TI的Z-STACK2.3.01.4.0协议栈。ZStack采用操作系统的思想来构建,采用事件轮询机制,当各层初始化之后,系统进入低功耗模式,当事件发生时,唤醒系统,开始进入中断处理事件,结束后继续进入低功耗模式,如果同时有几个事件发生,判断优先级,逐次处理事件。整个ZStack的主要工作流程,大致分为系统启动,驱动初始化,OSAL初始化和启动16。进入任务轮循几个阶段系统将协调器通过串口RS232和上位机(PC机)相连,温度传感器加入由数据汇聚模块组成的网络后,可以将工作模式配置为静态模式(设置温度传感器采集的速率,传感器采集温度数据后不存储直接发送给协调器然后由协调器发送给上位机),通过人机交互的方式可以实时对监测区域的温度传感器进行数据采集监测;如要温度传感器要进行动态温度采集,经过简单的配置后(温度传感器采集的速率,采集温度的起始时间)传感器模块即进入动态模式。传感器模块在动态工作模式下,可以暂时脱离数据汇聚模块的网络覆盖范围,进行移动的数据采集。当采集过程结束,温度传感器重新回到数据汇聚模块的网络覆盖范围内,通过上位机监控界面发送数据上传指令,这样存储在FLASH中的时间信息(采集温度的起始时间,每次采集温度的时间间隔)和温度数据会按时间先后上传到上位机。本系统设计实现的功能主要是协调器自启动(组网),节点设备自动入网。之后两者建立无线通讯,数据的发送主要有2中方式,一种为周期定时发送信息,另一种需要通过按键事件触发发送FLASH信息。由于开发硬件平台配套ZIGBEE模块硬件上与TI公司的ZIGBEE样板有差异,因此本系统设计没有采用按键触发方式。而是采用周期定时广播的方式来发送ZIGBEE节点端采集到的温湿度数据。4.2 Z-Stack2007协议栈软件目前TI的Z-Stack协议栈实际上已经成为了ZIGBEE联盟认可并推广的指定软件规范。本系统软件的开发采用TI公司推出的与CC2530芯片配套的ZigBee2007协议栈(Z-Stack)及IAR集成开发环境对无线通信传输进行设定和修改。该协议栈现已完全开放,我们只需要直接调用底层驱动,并在协议栈的应用层内根据实际要求和设计自行添加设计实现代码,即可完成CC2530的无线通信软件设计。Z-Stack协议栈采用操作系统的思想,运用事件轮询机制,在一个基于任务优先级的操作系统抽象层(OSAL)上运行,每个任务包含的事件都有其对应的事件编号,OSAL通过调度任务的事件号来判断事件类型,进而调用事件的任务处理函数,通过任务 API 函数将任务处理函数添加到系统中,从而实现多任务机制。4.2.1 Z-Stack软件架构协议栈定义了通信硬件和软件在不同层次如何协调工作。在网络通信领域,在每个协议层的实体通过对信息打包与对等实体通信。在通信的发送方,用户需要传递的数据包按照从高层到低层的顺序依次通过各个协议层,每一层的实体按照最初预定消息格式在数据信息中加入自己的信息,比如每一层的头信息和校验等,最终抵达最低层的物理层,变成数据位流,在物理连接间传递。在通信的接收方数据包依次向上通过协议栈,每一层的实体能够根据预定的格式准确的提取需要在本层处理的数据信息,最终用户应用程序得到最终的数据信息并进行处理。在ZigBee协议栈中,PHY、MAC层位于最低层,且与硬件相关;NWK、APS,APL层以及安全层建立在PHY和MAC层之上,并且完全与硬件无关。分层的结构脉络清晰、一目了然,给设计和调试带来极大的方便。整个Z-Stack采用分层的软件结构,硬件抽象层(HAL)提供各种硬件模块的驱动,包括定时器Timer,通用I/O口GPIO,通用异步收发传输器UART,模数转换ADC的应用程序接口API,提供各种服务的扩展集。操作系统抽象层OSAL实现了一个易用的操作系统平台,通过时间片轮转函数实现任务调度,提供多任务处理机制。用户可以调用OSAL提供的相关API进行多任务编程,将自己的应用程序作为一个独立的任务来实现。根据ZigBee2007标准的规范,Z-STACK2.3.01.4.0协议栈文件结构如下: HAL:硬件层目录,包含有与硬件相关的配置和驱动及操作函数。 Common 目录下为公用文件,基本与硬件无关 Hal_assert.c:断言文件,用于调试 Hal_drivers.c:驱动文件 Including 目录下包含各个硬件模块头文件 Target 目录下文件与硬件平台相关 MAC:MAC层目录,包含了MAC层的参数配置文件及其MAC的LIB库的函数接口文件。MAC层分高层和底层,include目录下包括MAC层参数配置文件及其mac的lib库函数接口文件 MT:监控调试层目录,实现通过串口调试各层,与各层进行直接交互。 NWK:网络层目录,含网络层配置参数文件及网络层库的函数接口文件,APS层库的函数接口。OSAL:协议栈的操作系统。 Profile:AF层目录,包含AF层处理函数文件。 Security:安全层目录,安全层处理函数,比如加密函数等。 Services:地址处理函数目录,包括着地址模式的定义及地址处理函数。 Tools:工程配置目录,包括空间划分及ZStack相关配置信息。 ZDO:ZDO 目录。ZigBee设备对象,方便用户用自定义的对象调用aps子层的服务和nwk层的服务。 ZMac:MAC层目录,包括MAC层参数配置及MAC层LIB库函数回调处理函数。 Zmac.c是z-stack mac导出层接口文件 Zmac_cb.c是zmac需要调用的网络层函数 ZMain:主函数目录,包括入口函数及硬件配置文件。在onboard.c包含对硬件开发平台各类外设进行控制的接口函数。 Output:输出文件目录,这个EW8051 IDE自动生成的。 整个协议栈采用中断事件调用机制,任务添加函数osalTaskAdd()将各层初始化函数指针、各层事件处理函数指针以及各层任务优先级添加到任务表,然后通过中断添加响应事件(events)。整个函数构成消息处理机制,每个层次互不干扰互不影响。4.2.2 Z-Stack软件流程整个Z-stack的主要工作流程,大致分为系统启动,驱动初始化,OSAL初始化和启动,进入任务轮循几个阶段。1. 系统初始化系统上电后,通过执行ZMain文件夹中ZMain.c的int main()函数实现硬件的初始化,其中包括关总中断osal_int_disable(INTS_ALL)、初始化板上硬件设置HAL_BOARD_INIT()、初始化I/OInitBoard(OB_COLD)、初始化HAL层驱动HalDriverInit()、初始化非易失性存储器sal_nv_init NULL)、初始化MAC层ZMacInit()、分配64位地址zmain_ext_addr()、初始化操作系统osal_init_system()等。硬件初始化需要根据HAL文件夹中的hal_board_cfg.h文件配置寄存器8051的寄存器。TI官方发布Z-Stack的配置针对的是TI官方的开发板CC2530EB等,如采用其他开发板,则需根据原理图设计改变hal_board_cfg.h文件配置。当顺利完成上述初始化时,执行osal_start_system()函数开始运行OSAL系统。该任务调度函数按照优先级检测各个任务是否就绪。如果存在就绪的任务则调用tasksArr中相对应的任务处理函数去处理该事件,直到执行完所有就绪的任务。如果任务列表中没有就绪的任务,则可以使处理器进入睡眠状态实现低功耗。程序流程图4.1所示。osal_start_system()一旦执行,则不再返回Main()函数。图4.1 ZStack软件流程图4.3 程序设计软件方面本论文方案分析发送periodic信息(设定定时周期)流程:Periodic消息是通

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论