




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Zigbee应用课程设计 武汉工商学院信息工程学院物联网工程系ZZigbee应用课程设计项目名称:基于ZigBee的温度监控系统设计与实现学生姓名:学 号:班级:指导教师:2017年12月20日目录TOC\o"1-3"\h\u9989摘要 I1绪论在生产和科学研究过程中的很多场合对环境的温湿度有较高的要求。为了更方便快捷的监控环境温湿度,针对有线温湿度监测系统布线复杂、成本偏高以及后期维护不便的问题,结合无线传感器网络技术,设计和实现了一种基于ZigBee技术的温度监测系统。ZigBee作为一种新兴的近距离、低复杂度、低功耗、低数据速率、低成本的无线网络技术,主要用于近距离无线连接。在温度传感器的配合下,采用ZigBee协议建立了点对点通信组网,能够高效地完成对环境温度的无线检测,实现了无线网络的功耗管理方法、无线网络的配置,利用温度传感器检测环境温度、从节点温度数据的发送、主节点对温度数据的接收、上传给PC机显示、通过温度变化控制风扇等内容。该系统可以应用到智能家居领域从而节省人力和能源,具有非常广阔的应用前景和研究价值。近年来随着无线通信、计算机传感技术的飞速发展和融合,无线传感网技术(WSN)应运而生,而Zigbee以其低成本、低数据速率、超低功耗的特点满足了当前无线传感网络技术的应用与普及。2温度控制系统总体设计与实现2.1系统整体结构利用Z-Stack协议栈构建一个具有实际意义的无线传感器网络。系统由协调器节点和两个终端节点组成。协调器的硬件系统中包括CC2530通信模块、串口转USB模块和电源电路模块等,其中串口转USB模块负责转换CC2530模块与PC机的通信信号。其主要功能是负责接收无线传感器节点发送来的消息,并向传感器节点发布网络控制信息,同时与PC机进行数据交换,向电机发送指令控制电机转动。2.2系统实现功能为了更方便快捷的监控环境温湿度,文中针对有线温度监测系统布线复杂、成本偏高以及后期维护不便的问题,结合无线传感器网络技术,设计和实现了一种基于ZigBee技术的温度监测系统。通过温度传感器监测环境温度,如果温度过高,启动风扇。2.3方案具体流程第一步,ZigBee协调器以固定的周期发送查询光照的指令给终端,即温度传感器(温度采集节点),同时监听设备端口,接受节点返回的数据。协调器监听工作流程图如下所示:图2-1协调器监听工作流程图第二步,温度采集节点接收到ZigBee协调器发送过来的温度采集指令后,从传感器取得当前的温度信息,将其打包成协议格式的指令返回给ZigBee协调器。温度采集节点工作流程图如下所示:图2-2温度采集节点工作流程图第三步,ZigBee协调器接收到温度采集节点返回的数据后,对采集的温度与设定的温度值进行比较,若当前的温度值高于用户设定的温度值时,向电机发送开指令,并将收到的数据通过串口打印出来。协调器工作流程图如下所示:图2-3协调器工作流程图第四步,节点接受网关消息并控制电机。电机工作流程图如下所示:图2-4电机工作流程图3温度检测系统工作原理3.1Zigbee技术简介致力于无线个域网中无线协议的物理层和媒体访问层的标准化,为个人操作空间内互相通信的设备之间提供统一的通信标准,IEEE802.15.4工作组制定了相关标准,Zigbee是基于此标准的一种无线通信方式。IEEE802.15.4标准定义了物理层和媒体访问控制层。Zigbee联盟在IEEE802.15.4标准的基础上定义了网络层和应用层构架。应用层构架包含应用支持子层和Zigbee设备对象以及制造商需要的应用对象组成。Zigbee是突出特点为低成本、低功耗、低复杂度,低时延,近距离,双向传输的一种无线通信标准。国内Zigbee工作频段为2.4GHz,欧洲与美国分别工作在868MHz与915MHz。Zigbee组网支持星形、树形和网络状拓扑结构,无线网络由一个协调器启动和控制,网络工作时协调器接收由终端节点发送来的数据,并发送给上位机。网络可以由路由器进行扩展,终端节点打包的数据由路由器转发给协调器。3.2Zigbee协议栈结构Zigbee协议栈结构包括物理层、媒体访问控制层、网络层和应用层:物理层由半双工的无线收发器及其接口组成,主要作用是激活和关闭射频收发器;检测信道的能量;显示收到数据包的链路质量;空闲信道评估;选择信道频率;数据的接受和发送。媒体访问控制(MAC)层建立了一条节点和与其相邻的节点之间可靠的数据传输链路,共享传输媒体,提高通信效率。在协调器的MAC层,可以产生网络信标,同步网络信标;支持Zigbee设备的关联和取消关联;支持设备加密;在信道访问方面,采用CSMA/CA信道退避算法,减少了碰撞概率;确保时隙分配(GTS);支持信标使能和非信标使能两种数据传输模式,为两个对等的MAC实体提供可靠连接。基于底层的可靠通信,提供路由、路由发现、多跳、转发的功能。Zigbee网络可以组成星型、簇树型或MESH型网络。对于终端节点而言,网络层的功能只是加入和离开网络;对于路由器而言,网络层的功能是信息的转发,路由发现,建立和维护路由表和邻居表,以及构造到某节点的路由任务;而协调器网络层的任务主要包括启动和维护网络正常工作,为新加入的节点分配网络地址。应用层包括三部分:应用支持子层(APS)、Zigbee设备对象(ZDO)和应用框架(AF)应用支持子层的任务是提取网络层的信息并将信息发送到运行在节点上的不同应用端点。Zigbee设备对象负责设备的所有管理工作,包括设定该设备在网络中的角色(协调器、路由器或终端设备),发现网络中的设备,确定这些设备能提供的功能,发起或响应绑定请求,完成设备之间建立安全的关联等。AF应用框架是应用层与APS层的接口。它负责发送和接收数据,并为接收到的数据寻找相应的目的端点。3.3Zstack协议栈结构Zstack协议栈结构如下:APP:应用层目录,这是用户创建各种不同工程的区域,在这个目录中包含了应用层的内容和这个项目的主要内容,在协议栈里面一般是以操作系统的任务实现的。HAL:硬件层目录,包含有与硬件相关的配置和驱动及操作函数。MAC:MAC层目录,包含了MAC层的参数配置文件及其MAC的LIB库的函数接口文件。MT:监控调试层,主要用于调试目的的,即实现通过串口调试各层,与各层进行直接交互。NWK:网络层目录,涵网络层配置参数文件及网络层库的函数接口文件,APS层库的函数接口。OSAL:协议栈的操作系统。Profile:AF层目录,包含AF层处理函数文件。Security:安全层目录,安全层处理函数接口文件,比如加密函数等。Services:地址处理函数目录,包括着地址模式的定义及地址处理函数。Tools:工程配置目录,包括空间划分和Zstack相关的配置信息。ZDO:ZDO目录。ZMac:MAC层目录,包括MAC层参数配置及MAC层LIB库函数回调处理函数。ZMain:主函数目录,包括入口函数main()及硬件配置文件。Output:输出文件目录层,这个EW8051IDE自主设计的。3.4串口工作原理串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线UniversalSerialBus或者USB混淆)。大多数计算机包含两个基于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。同时,串口通信协议也可以用于获取远程采集设备的数据。RS-232(ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准。可用于许多用途,比如连接鼠标、打印机或者Modem,同时也可以接工业仪器仪表。用于驱动和连线的改进,实际应用中RS-232的传输长度或者速度常常超过标准的值。RS-232只限于PC串口和设备间点对点的通信。RS-232串口通信最远距离是50英尺。3.5单播广播原理单播是网络节点之间的通信就好像是人们之间的对话一样。如果一个人对另外一个人说话,那么用网络技术的术语来描述就是“单播”,此时信息的接收和传递只在两个节点之间进行。单播在网络中得到了广泛的应用,网络上绝大部分的数据都是以单播的形式传输的,只是一般网络用户不知道而已。例如,你在收发电子邮件、浏览网页时,必须与邮件服务器、Web服务器建立连接,此时使用的就是单播数据传输方式。但是通常使用“点对点通信”(PointtoPoint)代替“单播”,因为“单播”一般与“广播”相对应使用。广播在网络中的应用较多,如客户机通过DHCP自动获得IP地址的过程就是通过广播来实现的。但是同单播和多播相比,广播几乎占用了子网内网络的所有带宽。拿开会打一个比方吧,在会场上只能有一个人发言,想象一下如果所有的人同时都用麦克风发言,那会场上就会乱成一锅粥。集线器由于其工作原理决定了不可能过滤广播风暴,一般的交换机也没有这一功能,不过现在有的网络交换机(如全向的QS系列交换机)也有过滤广播风暴功能了,路由器本身就有隔离广播风暴的作用。3.6无线温度数据采集原理利用ZigBee无线通讯技术完成的温度无线采集系统。温度传感器采集来的数据,通过单片机做数据处理并利用ZigBee的无线发送模块,将温度信息发送出去。经过ZigBee接收模块接收数据,再通过单片机做数据处理,将温度信息通过PC显示出来,从而完成温度的无线采集。3.7OSAL工作原理Z-Stack1.4.3及以后的版本中引入了一个OSAL(OperatingSystemAbstractionLayer操作系统抽象层),但在我们整个的ZigBee协议栈的结构图中,我并没有能够发现这个层在哪个位置。但是整个的协议栈都要在OS的基础上才能运行。OSAL和我们通常所说的RTOS,pc上的操作系统还是有很大的不同,ZigBee2006中只是利用了操作系统的概念和思想,利用OS把Z-Stack软件组件从特殊的处理过程相分离,并将软件成分保护了起来。它提供的管理功能有:任务的注册、初始化、开始,任务间的消息交换,任务同步,中断处理,时间管理和内存分配。OSAL主要是这样一种机制,一种任务分配资源的机制,从而形成了一个简单多任务的操作系统。4系统硬件设计4.1Zigbee硬件设计Zigbee硬件分为三部分,即CC2530核心板、协调器底板和路由器底板。CC2530核心板是协调器底板和路由器底板共用的电路板,便于设备的维护,一旦CC2530核心板或者协调器底板和路由器底板出现问题,便于及时更换。便于设备灵活使用。CC2530既可以配合协调器底板使用,也可以配合路由器底板使用,并且还可以与网关配合使用。CC2530串口图如下所示:图4-1CC2530串口图4.2协调器节点设计协调器底板与CC2530核心板配合使用可以提供丰富的硬件支持资源,用于进行功能的演示和开发等。协调器底板集成了电源接口、JTAG接口、按键、LED和LCD、RS232和RS485接口、蜂鸣器、传感器模块、电位器、时钟模块和外扩存储模块等。JTAG接口是连接仿真器下载调试程序的接。JTAG接口有效的连线只有四条:地线、电源线、CC2530引脚的P2.1和P2.2即DC和DD引脚。JTAG接口的引脚1接地线,引脚7接电源,引脚3和引脚4分别接DD和DC。其余引脚悬空。SW1为复位按键。JTAG接口图如下所示:图4-2JTAG接口图LED指示灯,分别接CC2530的P1.0、P1.1、P1.2和P1.3,其中P1.2、P1.3、P1.4通过选择跳线和外部扩展存储模块共用引脚,LED引脚图如下所示:图4-3LED引脚图4.3终端节点设计4.3.1温度传感器温度传感器采用SHT10。SHT10为外接温度传感器,SHT10有8个引脚,主要接电源线、地线和I/O引脚,选择P1.1控制采集的温度值。温度传感器引脚图如下所示:图4-4温度传感器引脚图4.3.2电机电机通过P0.6口来控制是否转动,电机部分引脚图如下所示:图4-5电机部分引脚图4.4电源电路设计POWER为电源插口,输出5V电压,PowerSW为开关,5V电压经过保险丝和滤波电路后,由电压转换电路将电压转换为3.3V电压为整个电路板供电。电压转换电路采用AMS11173.3V电压转换芯片,其中C4为输入旁路电容,C5为输出旁路电容,建议用钽电容。JP1和JP2为5V外扩电源接口,电源接口图如下所示:图4-6电源接口图4.5A/D转换电路设计AD按键是用于模数转换,AD按键图如下所示:图4-7AD按键图电位器用于模拟一个传感器的电压输出,旋转旋钮可以让输出电压发生0~3.3V的变化,引起AD采样值的变化。WI为电位器,电位器有三个引脚,引脚1接电源,引脚3接地线,引脚2通过跳线JP16与CC2530的P0.7相连,通过P0.7采集电压值。电位器引脚图如下所示:图4-8电位器引脚图4.6RS232串口电路设计RS232串口有仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。同时,串口通信协议也可以用于获取远程采集设备的数据。RS-232(ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准。RS232串口电路图如下所示:图4-9RS232串口电路图5系统软件设计5.1协调器相关程序分析第一步,进行相关的初始化操作App_Init(bytetask_id):有硬件初始化Sensor_PIN_INT()和相关的节点描述符的初始化,配置串口并打开。第二步,组建网络,然后进行监听,判断有无节点需要接入events&SYS_EVENT_MSG。第三步,如果有消息事件发生,就用osal_msg_receive()函数从消息队列上接收消息。第四步,判断接收到的信息类型。如果网络状态发生改变caseZDO_STATE_CHANGE,就点亮灯表示加入网络成功。如果是终端节点,启动定时器发送消息osal_start_timerEx(),发送App_SEND_MSG_EVT事件(采集温度命令);如果接收到的是无线信息,就调用App_MessageMSGCB()函数。然后释放内存osal_msg_deallocate((uint8*)MSGpkt),MSGpkt指向下一个消息队列。事件处理完后,返回未处理完的事件return(events^SYS_EVENT_MSG);App_MessageMSGCB()函数的作用是接受节点消息并建立电机控制事件,用于判断温度数值,确定iMotor(0表示关,1表示开)和bMotor(1表示更新)的值,将收到的数据通过串口打印出来HalUARTWrite(),建立电机控制事件,调用osal_set_event(App_TaskID,App_MOTOR_MSG_EVT)。第五步,如果发生了App_MOTOR_MSG_EVT事件:events&App_MOTOR_MSG_EVT,执行SerialApp_ControlMotor()函数,事件处理完后,返回未处理完的事件return(events^App_MOTOR_MSG_EVT);SerialApp_ControlMotor(void)作用是判断iMotor、bMotor的值,如果都为1,那么motor数组为M1,然后调用App_SendTheMessage(),把命令发送给电机。App_SendTheMessage()函数的作用是广播方式发送消息,包括消息发送方式(广播)、标终端编号(由哪个终端处理消息)、默认的广播地址(终端是0XFFFF),如果广播发送成功AF_DataRequest==afStatus_SUCCESS,就闪烁灯,清除缓存区osal_memset(buf,0,len);第六步,如果发生了App_UART_RX_CB_EVT事件:events&App_UART_RX_CB_EVT,执行HalUARTWrite()函数,作用是串口显示发送内容,然后调用App_SendTheMessage(),无线发送信息,事件处理完后,返回未处理完的事件return(events^App_UART_RX_CB_EVT);App_rxCB(uint8port,uint8event)串口回调函数,作用是当串口有数据时调用此函数读接收缓冲区数据到内存,建立App_UART_RX_CB_EVT事件。5.2终端相关程序分析5.2.1温度传感器相关程序分析首先初始化,加入网络,如果接收到了App_SEND_MSG_EVT事件:events&App_SEND_MSG_EVT,执行SerialApp_SendTemp()函数,定时发送osal_start_timerEx()信息App_SEND_MSG_EVT,事件处理完后,返回未处理完的事件return(events^App_SEND_MSG_EVT)。SerialApp_SendTemp()函数调用了结构体,用于转换Buffer里的数值,调用App_SendTheMessage(),发送温度数据给协调器。5.2.2电机相关程序分析初始化,加入网络,如果接收到的是无线信息,就调用App_MessageMSGCB(MSGpkt)函数App_MessageMSGCB(afIncomingMSGPacket_t*pkt)的作用是接收协调器发来的信息,判断指令是否为M1,是的话就调用MotorOn()(在Sensor.c里),点亮灯。6系统实现进入IAR开发环境,运行程序并调试,如果没错会生成.hex文件,先烧写到协调器组建网络,然后再烧两个终端,注意烧写到电机时,是将CC2000仿真器的JTAG一端与电机的JTAG口相连,两个终端和协调器上的LED灯同时闪烁说明加入网络成功。看结果时打开PC机上光盘目录下的的串口调试程序,USB端和PC机相连,通用调试母板通过USB线连接电脑作为供电及串口输入结果,温度显示图如下图所示:图5-1温度显示图将一端USB接口和PC机相连,一端USB接口连电机,发现温度高于设置的27度时,电机转动,电机转动图如下所示:图5-2电机转动图7总结系统实现了,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 标准劳动合同终止范本
- 公司和司机合同范本
- 资源拍卖合同范本
- 授权牌制作合同范本
- 翡翠采购加工合同范本
- 农机销售产品合同范本
- 摄影知识及技巧培训课件
- 厂房附加条款合同范例
- 取消合同范例
- 个人装修贷款合同范本
- 2025新疆机场(集团)有限责任公司阿克苏管理分公司第一季度招聘(75人)笔试参考题库附带答案详解
- 2025年专升本艺术概论考试模拟试题(艺术鉴赏能力培养方案实战详解)
- 2025年高级育婴师的试题及答案
- 【市占率证明权威指南】行业市占率展播-滚珠丝杆行业(智研咨询)
- GB/T 45295-2025宠物诊疗机构诊疗服务指南
- 第三单元 植物的生活单元练习-2024-2025学年人教版生物七年级下册
- 2025年陕西渭南师范学院专职辅导员招考聘用25人高频重点模拟试卷提升(共500题附带答案详解)
- DB65-T 4849-2024 危险化学品生产装置和储存设施外部安全防护距离评估导则
- 人民版六年级下册劳动教案全册(2024年)
- 洛曼劳仕医疗用品绷带
- 24年追觅在线测评28题及答案
评论
0/150
提交评论