




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
zigbee综合实践课程设计:基于zigbee的火灾报警系统计算机科学与技术学院ZigBee综合实践课程设计报告设计题目: 基于zigbee的火灾报警系统 设计人员:* * 学号:* 指导教师: * * * 2015年4月 毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日注 意 事 项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词 5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。4.文字、图表要求:1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用A4单面打印,论文50页以上的双面打印4)图表应绘制于无格子的页面上5)软件工程类课题应有程序清单,并提供电子文档5.装订顺序1)设计(论文)2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订指导教师评阅书指导教师评价:一、撰写(设计)过程1、学生在论文(设计)过程中的治学态度、工作精神 优 良 中 及格 不及格2、学生掌握专业知识、技能的扎实程度 优 良 中 及格 不及格3、学生综合运用所学知识和专业技能分析和解决问题的能力 优 良 中 及格 不及格4、研究方法的科学性;技术线路的可行性;设计方案的合理性 优 良 中 及格 不及格5、完成毕业论文(设计)期间的出勤情况 优 良 中 及格 不及格二、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范? 优 良 中 及格 不及格2、是否完成指定的论文(设计)任务(包括装订及附件)? 优 良 中 及格 不及格三、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 及格 不及格2、论文的观念是否有新意?设计是否有创意? 优 良 中 及格 不及格3、论文(设计说明书)所体现的整体水平 优 良 中 及格 不及格建议成绩: 优 良 中 及格 不及格(在所选等级前的内画“”)指导教师: (签名) 单位: (盖章)年 月 日评阅教师评阅书评阅教师评价:一、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范? 优 良 中 及格 不及格2、是否完成指定的论文(设计)任务(包括装订及附件)? 优 良 中 及格 不及格二、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 及格 不及格2、论文的观念是否有新意?设计是否有创意? 优 良 中 及格 不及格3、论文(设计说明书)所体现的整体水平 优 良 中 及格 不及格建议成绩: 优 良 中 及格 不及格(在所选等级前的内画“”)评阅教师: (签名) 单位: (盖章)年 月 日教研室(或答辩小组)及教学系意见教研室(或答辩小组)评价:一、答辩过程1、毕业论文(设计)的基本要点和见解的叙述情况 优 良 中 及格 不及格2、对答辩问题的反应、理解、表达情况 优 良 中 及格 不及格3、学生答辩过程中的精神状态 优 良 中 及格 不及格二、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范? 优 良 中 及格 不及格2、是否完成指定的论文(设计)任务(包括装订及附件)? 优 良 中 及格 不及格三、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 及格 不及格2、论文的观念是否有新意?设计是否有创意? 优 良 中 及格 不及格3、论文(设计说明书)所体现的整体水平 优 良 中 及格 不及格评定成绩: 优 良 中 及格 不及格教研室主任(或答辩小组组长): (签名)年 月 日教学系意见:系主任: (签名)年 月 日目录摘要IABSTRACTII1设计目标12设计内容13设计方案24实验所需器件35实验各模块电路设计35.1 核心板模块35.2 传感器模块46实验设计66.1目的66.2 系统原理图66.3完成实物图97调试与结果107.1核心代码107.2上位机测试128设计总结:(成员作用与体会)139附件1310成绩报告24基于zigbee的火灾报警系统摘要随着经济的发展,高层建筑、地下建筑以及大型综合性建筑日益增多火灾隐患也随之增加,火灾发生的数量及其造成的损失都呈逐年上升趋势,因此,火灾报警系统成为保障人生命财产安全的重要因素。而目前我国的火灾报警系统主要是总线型报警系统,由于外界环境因素的影响不可避免的会存在一定的误报率和漏报率,而且安装和维修成本很高。伴随着ZigBee技术的出现和发展,它使无线型火灾报警系统成为了可能,基于网络化的火灾报警系统具有成本低、安装方便、稳定性高的特点。ZigBee具有短时延和数据传输可靠的独特优势,它更适合于火灾报警系统中。本设计以CC2530为核心控制芯片,采用Z-Stack协议栈作为协议平台组成一个小型的ZigBee网络,系统由一个协调器设备和一个终端设备组成一个小型网络。终端设备作为传感器节点采集温度、烟雾数据,将终端设备放在室内的不同地方,将采集到的数据无线传输到协调器节点,通过串口将各个传感器节点的信息传输到上位机,上位机用VB编写,完成数据的显示和储存,基本上实现了家庭火灾报警系统所应有的功能。【关键词】 ZigBee 火灾报警 CC2530Z-Stack协议栈 IIABSTRACTWith the development of economy, high-rise buildings, underground structures and increasingly large comprehensive buildings, the fire hazard also will increase, the number of fires and the damage caused by rising trend year by year, as a result, fire alarm system become the important factor of people life and property security. And fire alarm system in our country at present is mainly form alarm system, because of the influence of the external environment factors, there are inevitably some non-response rates and the rate of false positives, and installation and maintenance cost is very high. Accompanied by the emergence and development of ZigBee technology, it makes no linear fire alarm system, fire alarm system based on network has characteristics of low cost, easy installation, high stability. ZigBee has the unique advantages of short time delay and data transmission is reliable, it is more suitable for fire alarm system. CC2530 this design as the core control chip, using Z - Stack protocol Stack as deal platform, forming a small ZigBee network and system consists of a coordinator and a terminal equipment of a small network. Terminal equipment as the data collection temperature, smoke sensor node, terminal equipment in different parts of the interior, the collected data wireless transmission to the coordinator node, through a serial port to transmit information of each sensor node to PC, PC written in LabVIEW software, complete the data display and storage, basically realized the function of fire alarm system of the family should have.【Keywords】ZigBee , Fire alarm ,CC2530 Z - Stack protocol Stack; II1设计目标本次设计要求能通过zigbee终端节点上火焰传感器采集火警信息,并将采集数据实时发送给协调器,检测是否有火灾发生,并且通过VB上位机显示出来;同时要求学生对CC2530芯片编程和zigbee协议栈有相当程度的理解以及熟练的应用,熟悉ZigBee串口以及中断的使用,会基本的C语言熟练掌握IAR FOR 8051软件的使用与程序下载。2设计内容(1) 利用zigbee核心板,用AD设计好电路板,搭建好硬件环境,调试好火焰传感器;(2) 将火焰传感器作为节点采用广播方式加入到zigbee协调器网络中;(3) 编写并调试程序,并分别下载到协调器和终端节点,并将协调器串口链接到电脑,实现VB上位机显示火警状态,设计完成。开始传感器,串口初始化检测串口受到数据否是保持监听协调器判断传感器状态(是:有火灾 否:无火灾)发往上层2.1系统组成框图3设计方案(1) CC2530芯片做接收信息设备和控制设备。(2) ZigBee终端设备和协调器组网成功通信。(3) 终端设备监测传感器状态,并实时传给协调器。(4) 协调器获取传感器状态,并做出处理,同时VB上位机展示。4实验所需器件(1) 核心板,此处采用CC2530核心板(2) 火焰传感器模块,及各种常用元器件(3) ZigBee核心板和JLINK下载模块及其相关的驱动(4) 杜邦线若干,电池若干(最好是可以充电的)5实验各模块电路设计5.1 核心板模块(1)芯片的选择:CC2530(2)芯片的介绍:*高性能、低功耗的 8051 微控制器内核; *适应 2.4GHz IEEE 802.15.4的RF 收发器; *电源电压范围宽(2.03.6V); *看门狗、电池监视器和温度传感器; *具有 8 路输入 814 位 ADC; *2 个支持多种串行通信协议的 USART, 1 个红外发生电路; *1 个通用的 16 位和 2 个 8 位定时器; 图 5.1.3(4)实物图: 图 传感器模块(1)所用传感器:火焰传感器 (2) 特点:1、 可以检测火焰或者波长在760纳米1100纳米范围内的光源,打火机测试火焰距离为80cm,对火焰越大,测试距离越远2、 探测角度60度左右,对火焰光谱特别灵敏3 、灵敏度可调(图中蓝色数字电位器调节)4、比较器输出,信号干净,波形好,驱动能力强,超过15mA5、配可调精密电位器调节灵敏度6、工作电压3.3V-5V7、输出形式 :数字开关量输出(0和1)8、设有固定螺栓孔,方便安装9、小板PCB尺寸:3.2cm x 1.4cm10、使用宽电压LM393比较器(3传感器使用说明:1 .火焰传感器对火焰最敏感,对普通光也是有反应的,一般用做火焰报警等用途。2. 小板输出接口可以与单片机IO口直接相连,有火灾输出低电平正常输出高电平3.传感器与火焰要保持一定距离,以免高温损坏传感器,对打火机测试火焰距离 为80cm,对火焰越大,测试距离越远 图5.2.3(4)实物图: 图 5.2.46实验设计6.1目的熟悉基于zigbee的控制系统的使用,为今后进一步学习物联网无线传感网打下基础。6.2 系统原理图图6.2.1终端节点原理图图6.2.2 终端节点PCB图6.2.3协调器原理图6.2.4协调器PCB图6.3完成实物图图6.3.1 正视图图6.3.2底面图7调试与结果7.1核心代码7.1.1 初始化部分,串口初始化,登记串口任务号,传感器接口初始化7.1.2 火灾判断部分7.1.3 发送部分7.1.4 接收并串口打印部分7.2上位机测试(1)班级总控界面如下,在程念组里面就可以实时观察火焰传感器状态。图 7.28设计总结:通过这次实践课程,通过亲自动手,从最初确定课题,到画设计PCB,到印刷电路板,到焊接元器件,到测试电路,到调试程序,经过了反复的修改和实践,终于完成课题,一路走来,确实很不易。画PCB,制板,编程,调试等各方面能力都得到了提升.9附件应用层源码:#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 MT_UART.h /此处用于串口/定义IO#define LED1 P0_0 /LED提醒#define fire P0_6 /传感器检测口/* * MACROS */* * CONSTANTS */* * TYPEDEFS */* * GLOBAL VARIABLES */ This list should be filled with Application specific Cluster IDs.const cId_t SampleApp_ClusterListSAMPLEAPP_MAX_CLUSTERS = SAMPLEAPP_PERIODIC_CLUSTERID, SAMPLEAPP_FLASH_CLUSTERID;const SimpleDescriptionFormat_t SampleApp_SimpleDesc = SAMPLEAPP_ENDPOINT, / int Endpoint; SAMPLEAPP_PROFID, / uint16 AppProfId2; SAMPLEAPP_DEVICEID, / uint16 AppDeviceId2; 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;/ This is the Endpoint/Interface description. It is defined here, but/ filled-in in SampleApp_Init(). Another way to go would be to fill/ in the structure here and make it a const (in code space). The/ way its defined in this sample app it is define in RAM.endPointDesc_t SampleApp_epDesc;/* * EXTERNAL VARIABLES */* * EXTERNAL FUNCTIONS */* * LOCAL VARIABLES */uint8 SampleApp_TaskID; / Task ID for internal task/event processing / This variable will be received when / SampleApp_Init() is called.devStates_t SampleApp_NwkState;uint8 SampleApp_TransID; / This is the unique message ID (counter)afAddrType_t SampleApp_Periodic_DstAddr;/广播afAddrType_t SampleApp_Flash_DstAddr; /组播afAddrType_t Point_To_Point_DstAddr;/网蜂点对点通信定义aps_Group_t SampleApp_Group;uint8 SampleAppPeriodicCounter = 0;uint8 SampleAppFlashCounter = 0;/* * LOCAL FUNCTIONS */void SampleApp_HandleKeys( uint8 shift, uint8 keys );void SampleApp_MessageMSGCB( afIncomingMSGPacket_t *pckt );void SampleApp_SendPeriodicMessage( void );void SampleApp_SendFlashMessage( uint16 flashTime );void SampleApp_SendPeriodicMessage1( void ); /正常 周期性广播函数声明void SampleApp_SendPeriodicMessage2( void ); /有火灾!/void SampleApp_SendPeriodicMessage3( void ); /void SampleApp_SendPeriodicMessage4( void ); /* * NETWORK LAYER CALLBACKS */* * PUBLIC FUNCTIONS */* * fn SampleApp_Init * * brief Initialization function for the Generic App Task. * This is called during initialization and should contain * any application specific initialization (ie. hardware * initialization/setup, table initialization, power up * notificaiton . ). * * param task_id - the ID assigned by OSAL. This ID should be * used to send messages and set timers. * * return none */void SampleApp_Init( uint8 task_id ) SampleApp_TaskID = task_id;/ task_id is Pointer to location of the Application task ID. SampleApp_NwkState = DEV_INIT; SampleApp_TransID = 0; / This is the unique message ID (counter) MT_UartInit();/串口初始化 MT_UartRegisterTaskID(task_id);/登记任务号 /*火灾探测传感器电路初始化*/ P0SEL &= 0X40; /设置P0.6为普通IO口 P0DIR &= 0X40; / 在P0.6口,设置为输入模式 P0INP &= 0x40; /打开P0.6上拉电阻 / Device hardware initialization can be added here or in main() (Zmain.c). / If the hardware is application specific - add it here. / If the hardware is other parts of the device add it in main(). #if defined ( BUILD_ALL_DEVICES ) / The Demo target is setup to have BUILD_ALL_DEVICES and HOLD_AUTO_START / We are looking at a jumper (defined in SampleAppHw.c) to be jumpered / together - if they are - we will start up a coordinator. Otherwise, / the device will start as a router. if ( readCoordinatorJumper() ) zgDeviceLogicalType = ZG_DEVICETYPE_COORDINATOR; else zgDeviceLogicalType = ZG_DEVICETYPE_ROUTER;#endif / BUILD_ALL_DEVICES#if defined ( HOLD_AUTO_START ) / HOLD_AUTO_START is a compile option that will surpress ZDApp / from starting the device and wait for the application to / start the device. ZDOInitDevice(0);#endif / Setup for the periodic messages destination address / Broadcast to everyone 广播参数配置 SampleApp_Periodic_DstAddr.addrMode = (afAddrMode_t)AddrBroadcast; SampleApp_Periodic_DstAddr.endPoint = SAMPLEAPP_ENDPOINT; SampleApp_Periodic_DstAddr.addr.shortAddr = 0xFFFF; /*0xFFFF数据包将被传送到网络上的所有设备, 包括睡眠中的设备。对于睡眠中的设备,数据包将被保留在其父亲节点直到查询 到它,或者消息超时。 0xFFFD数据包将被传送到网络上的所有在空闲时 打开接收的设备(RXONWHENIDLE),也就是说,除了睡眠中的所有设备。 0xFFFC数据包发送给所有的路由器,包括协调器。*/ / Setup for the flash commands destination address - Group 1 组播 SampleApp_Flash_DstAddr.addrMode = (afAddrMode_t)afAddrGroup; SampleApp_Flash_DstAddr.endPoint = SAMPLEAPP_ENDPOINT; SampleApp_Flash_DstAddr.addr.shortAddr = SAMPLEAPP_FLASH_GROUP; / Fill out the endpoint description. SampleApp_epDesc.endPoint = SAMPLEAPP_ENDPOINT; SampleApp_epDesc.task_id = &SampleApp_TaskID; SampleApp_epDesc.simpleDesc = (SimpleDescriptionFormat_t *)&SampleApp_SimpleDesc; SampleApp_epDesc.latencyReq = noLatencyReqs; / Register the endpoint description with the AF afRegister( &SampleApp_epDesc ); / Register for all key events - This app will handle all key events RegisterForKeys( SampleApp_TaskID ); / By default, all devices start out in Group 1 SampleApp_Group.ID = 0x0001; osal_memcpy( SampleApp_G, Group 1, 7 ); aps_AddGroup( SAMPLEAPP_ENDPOINT, &SampleApp_Group );#if defined ( LCD_SUPPORTED ) HalLcdWriteString( SampleApp, HAL_LCD_LINE_1 );#endif/* * fn SampleApp_ProcessEvent * * brief Generic Application Task event processor. This function * is called to process all events for the task. Events * include timers, messages and any other user defined events. * * param task_id - The OSAL assigned task ID. * param events - events to process. This is a bit map and can * contain more than one event. * * return none */uint16 SampleApp_ProcessEvent( uint8 task_id, uint16 events ) afIncomingMSGPacket_t *MSGpkt; (void)task_id; / Intentionally unreferenced parameter if ( events & SYS_EVENT_MSG ) MSGpkt = (afIncomingMSGPacket_t *)osal_msg_receive( SampleApp_TaskID ); while ( MSGpkt ) switch ( MSGpkt-hdr.event ) / Received when a key is pressed case KEY_CHANGE:/按键触发事件 SampleApp_HandleKeys( (keyChange_t *)MSGpkt)-state, (keyChange_t *)MSGpkt)-keys ); break; / Received when a messages is received (OTA) for this endpoint case AF_INCOMING_MSG_CMD:/接收数据事件 SampleApp_MessageMSGCB( MSGpkt ); break; / Received whenever the device changes state in the network case ZDO_STATE_CHANGE:/设备状态变化事件 SampleApp_NwkState = (devStates_t)(MSGpkt-hdr.status); if ( (SampleApp_NwkState = DEV_ZB_COORD)| /协调器、路由器 (SampleApp_NwkState = DEV_ROUTER) /或者终端都执行 | (SampleApp_NwkState = DEV_END_DEVICE) ) / Start sending the periodic message in a regular interval. osal_start_timerEx( SampleApp_TaskID, SAMPLEAPP_SEND_PERIODIC_MSG_EVT, SAMPLEAPP_SEND_PERIODIC_MSG_TIMEOUT ); else / Device is no longer in the network break; default: break; / Release the memory释放Flash osal_msg_deallocate( (uint8 *)MSGpkt ); / Next - if one is available MSGpkt = (afIncomingMSGPacket_t *)osal_msg_receive( SampleApp_TaskID ); / return unprocessed events return (events SYS_EVENT_MSG); / Send a message out - This event is generated by a timer / (setup in SampleApp_Init(). if ( events & SAMPLEAPP_SEND_PERIODIC_MSG_EVT ) /周期性发送函数 if(fire=1) SampleApp_SendPeriodicMessage1(); /正常,无火灾 else if(fire=0) SampleApp_SendPeriodicMessage2(); /有火灾! / Send
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- ERCP循证课件教学课件
- 河北省临漳县高中数学 第一章 三角函数说课稿 新人教A版必修4
- 2025年青岛市护理编制题库及答案
- 2025年护理知识大盘点题库及答案
- 四年级语文下册 第四单元 语文园地第1课时说课稿 新人教版
- 国外趣味地理知识测试题及答案
- 第五课 形状补间动画说课稿初中信息技术(信息科技)初中二年级(下册)教科版(云南)
- 6.1 东北三省-辽阔富饶的“黑土地”说课稿初中地理晋教版八年级下册-晋教版2012
- 第 7 课 找苹果-键盘侦测说课稿小学信息技术滇人版五年级第6册-滇人版
- 2025年护理不良事件培训题库及答案
- 光电功能材料课程-13-18课件
- 施工现场污水排放方案
- 黔西市中医医院金阳院区环评报告
- 我的家乡-枣阳
- 青春期生理卫生知识讲座男生篇
- 高中期中考试家长会PPT课件 (共51张PPT)
- GB/T 18851.4-2005无损检测渗透检测第4部分:设备
- 全球卫生治理课件
- 实验室生物安全程序文件
- 重症肌无力新斯的明实验的临床评估百度课件
- 幻影桌面云管理平台实践指导手册
评论
0/150
提交评论