




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、广东工业大学2013级毕业设计(论文)(页面设置:论文版心大小为155mmx245mm,页边距:上2.6cm,下2.6cm,左2.5cm,右2cm,行间距20磅,装订线位置左,装订线1cm,)试剂柜安全保险系统(以下各项居中列,黑体小四号)年级:学号:姓名:专业:指导老师:(填写时间要用中文)目录1.1论文的背景和意义1J2.1本论文的主要方法与我论文的主要内容本论文的结构安排系统整体方案设计系统设计方案对比破件整体结构客户端硬件结构设计华端硬件结构设计才统软件程序设计方方案设计.3.1I柜硬件电路设计311.2电3.1.3笠3.1.4LC、式处理器模块原管
2、理模块.时时钟模块.D液晶显小梅块3.1.5声光胭警犊耳J.3.1.6Zigbee组网箱块3.2试剂柜软佛设i3.2.1 嵌入城软件与计3.2.2 Zigbee软件审计论谢参考文献附录1ZIGBEE终端电路图.1F.J7.T.附录2监控终端电路图101010111112121315151822摘要在一些化学实验室中,试剂柜中的化学试剂经常出现莫名丢失的现象,本文将针对这一情况的解决办法进行研究。为了解决防盗这一问题,若是使用传统的机械式钥匙开锁,人们常需携带多把钥匙,使用极不方便,钥匙丢失后安全性即大打折扣,并且在人为破坏机械锁后,管理者无从知晓,从而还是会存在被盗的风险。随着科学技术的不断发
3、展,人们对日常生活中的安全保险器件的要求越来越高,显然这种机械锁已经不能满足人们对安全性能的要求。为满足这一需求,增强实验室化学试剂保存的安全性,研究智能无线在线监控指纹锁是有必要的。研究主要针对化学实验室中的试剂存储柜进行智能化时时在线监控。而智能性的实现主要依赖于嵌入式系统的核心单片机,本文将以ARMCortex-M3内核的STM32系列单片机为核心处理器,采用TI(美国德州仪器)的Zigbee进行组网,实现当试剂柜被非法打开时,远程无线自动报警。将详细介绍基于STM32和Zigbee组网的安全试剂柜系统的研究过程。关键词:指纹锁;ARMZigbee;无线检测;AbstractInsome
4、chemicallaboratoryreagentcabinetchemicalsofteninexplicablelossphenomenon,thisarticlewillstudyasolutionforthissituation.Inordertosolvethesecurityproblem,iftheuseofthetraditionalmechanicalkeylock,peopleoftenneedtocarrymultiplekeys,useveryinconvenient,thekeyislostafterthatcompromisedsafety,andafterthed
5、estructionofmechanicallocks,managersunknownthustheriskoftheftorwillexist.Withthecontinuousdevelopmentofscienceandtechnology,peopleineverydaylifeinsuranceforthesafetydeviceshavebecomeincreasinglydemanding,obviouslythismechanicallockhasbeenunabletomeetpeople'ssafetyperformancerequirements.Tomeetth
6、isdemand,enhancedlaboratorychemicalsstoredsafetylockIntelligentwirelessonlinemonitoringisnecessary.Researchlaboratoryreagentsforchemicalstoragecabinetsalwaysintelligentonlinemonitoring.Therealizationofintelligencedependsonthecoreembeddedmicrocontrollersystem,thepaperwillbecoreARMCortex-M3microcontro
7、llercoreSTM32seriesprocessor,TI(TexasInstruments)ofZigbeefornetworking,isachievedwhenthereagentcabinetwhenopenedillegally,wirelessremotealarm.BasedontheresearchprocesswillbedescribedindetailSTM32andZigbeenetworksecurityreagentcabinetsystem.Keywords:Lock;ARM;Zigbee;wirelessdetection;第1章绪论1.1本论文的背景和意义
8、据了解进入实验室行窃实验药水等情况屡屡发生。这使得实验室的管理者在管理过程中时时为实验室的药水安全而忧心忡忡。在这样的背景下,人们非常希望能有一种智能化的锁,并且具备报警装置,使得在盗贼非法打开试剂柜时能够及时地报警或及时通知管理人员发生的异常情况,以把损失降低到最少的程度,因此基于ARMfZigbee相结合的智能具有自动组网报警功能的指纹锁系统则应市场的强烈需要而产生。本系统具有报警功能的指纹锁系统的开发是在以市场研究为基础,针对人们的需求和市场上的普通锁存在的不足的而提出的。具具有如下特点:a、保密性好,根据管理员的指纹来开启和关闭试剂柜的门,绝不存在两个人相同的指纹,所以保密性非常好。b
9、、实时监控,实时在线检测锁的工作状态,当非法打开时,将自动报警,并且远程自动告知管理者。c、操作简单,安装好后,使用时直接打指纹即可开启试剂柜。本作品是指纹识别与物联网系统相结合的保险锁报警产品,无线网络采用免费的2.4G频段,用户使用过程中也不会产生任何费用,这也使得作品更具有实用性;同时本系统也大量采用了已有的技术成熟的微电子器件和集成电路,大大的降低了价格成本,提高了整机的性价比。综上所述,开发一种带有自组网报警功能的指纹密码锁系统既有其在技术上的可行性,也同时是市场的需求。1.2 本论文的主要方法和研究进展本论文针对报警指纹密码锁的研究,在硬件设备上,终端采用ARMCortex-M3内
10、核的STM32F10划主控制器,负责采集处理指纹的数据、与zigbee组网模块通信、锁头的控制、报警器的控制等;zigbee组网模块采用TI公司的CC253睐实现,负责将开锁的信息无线传输到协调器,供管理人员知晓。在协调器一端,也通过CC2530乍为协调器,来与终端组网,获得开锁信息,同时,终端还具备液晶显示器来显示出开锁信息,当非法开锁时,协调器端的报警器也将发出报警告知管理者。项目中采用Zigbee自组网使系统具备很好的扩展性,一个协调器可以同时监控多个终端(即:可同时监控多个试剂柜)。系统软件方面,ARM嵌入式系统中采用的是Ucos-II实时操作系统;Zigbee中采用TI的2007协议
11、栈;具备很好的实时性。1.3 本论文的主要内容本设计旨在针对试剂柜安全锁的研究,解决盗贼非法打开试剂柜盗取化学试剂,给实验室造成重大财产损失的后果。本论文研究针对解决这一情况的指纹密码锁,论文的设计主要包括软件和硬件两部分。软件是一个系统的灵魂,做好软件设计,能够保证系统功能的正常实现。硬件是一个系统的基础,所有软件都需要基于硬件支持的基础之上。1.4 本论文的结构安排本文第一章讲述了该论文写作背景,以及该论文研究的内容;第二章讲述了该研究课题的整体设计方案;第三章着重针对系统需要实现功能的硬件设计,详细介绍了各个硬件功能模块的设计方法;第四章介绍了本研究的软件设计模块;第五章介绍了测试方法和
12、结果。第2章系统整体方案设计2.1系统设计方案对比目前,市场上常见的保险柜主要有以下几种:a)传统的机械锁传统的机械锁是以机械结构为核心,优点是成本低,但是存在人为破坏而管理者无从知晓的缺点。b)电子密码锁电子密码锁是通过键盘输入密码,根据密码的正确与否去控制电磁阀动作,实现开关保险柜,优点是省去携带钥匙的麻烦,但是同传统机械锁一样,在人为破坏后,管理者同意无法知晓。c)基于嵌入式系统和Zigbee组网的防盗指纹锁与传统机械锁和电子密码锁不同的是,该系统是采用指纹识别。每个人都有着世界上唯一的指纹,所以管理者不必担心钥匙丢了、密码忘了的问题,同时系统采用zigbee组网,管理者在远程客户端可以
13、随时监控到试剂保险柜的状态,在试剂柜被人为破坏后,终端和客户端将同时声光报警来提示管理者,这样就解决了无论是传统机械锁还是电子密码锁都存在的人为破坏而管理者无法知晓的缺点。通过比较以上三种方案,基于嵌入式系统和Zigbee组网的防盗指纹锁既解决了传统锁携带钥匙麻烦且容易丢钥匙的风险,又解决了电子密码锁被人为破坏而管理者又无从知晓的缺点,所以根据以上方案的分析,发现基于嵌入式系统和Zigbee组网的防盗指纹锁更具有优势,所以在本设计中将详细介绍该方案的设计过程。2.2硬件整体结构本系统的硬件设计按功能需求进行分析,系统的硬件结构分为以下几个部分:(1)微处理器:试剂柜保险箱硬件设计的核心是微处理
14、器,微处理器的选择决定了整个平台的性能。通过国内外的研究现状分析,本系统选用ST(意法半导体)公司的STM32F10蚱为核心处理器7,它是基于ARM勺Cortex-M3内核的微控制器。它带有MMU支持SDRAM静态存储器、BurstFlash、CompactFlash、SmartMedia以及NANEFlash,具有高性能、低功耗、低成本、小体积等优点。而且AT91RM9200t理器具有3个16位的GPIO控制器,为本系统需要的多个外围接口解决了难题。STM32F10微处理器是一个用途广泛的通用芯片,它内部集成了微处理器和常用外围组件,具有更高性价比的特点,为工业控制领域嵌入式系统提供优秀的解
15、决方案;(2)指纹识别模块:根据设计的需求,本设计需要通过指纹识别去开启试剂柜,本项目中就利用指纹识别模块来处理指纹数据,将获得指纹与原始录入的指纹对比,并将结果通过串口传输给微处理器;(3)电磁阀控制模块:电磁阀控制模块用来作为保险柜门的开关,管理者录入指纹的时候,电磁阀吸合,开启保险柜。(4)声光报警模块:声光报警模块用作在试剂柜门被人强行打开时,发出声光报警,告知管理者;(5)Zigbee组网模块:本设计中的终端与客户端通信采用Zigbee,zigbee技术与普通的射频技术相比较能够自动组网,一个客户端可以同时监控多个终端,其中某一个终端故障将不会影响其他终端的运行,所以很适合本设计的应
16、用;(6)电源模块:由于本系统是嵌入式系统,具有低功耗功能,一般的芯片、电路工作电压比较低,电源输入端选择5V就可以提供所需的工作电压了。通过电压转换芯片对5V电压进行转换,转换为各个芯片、电路所需电压;(7)显示模块:根据客户端监控系统的功能需求,本平台使用128*64点阵液晶显示屏,这样在试剂柜出现异常情况时,管理者通过LCD液晶显示器就能看到终端试剂柜被破坏的类型,以快速作出相应的处理;2.3 客户端硬件结构设计系统客户端主要实现Zigbe组网通信、LCD显示开锁信息和声光报警器的控制。在终端锁无论是正常指纹打开或者是人为破坏时,客户端的Zigbee组网协调器将收到由终端发来的数据,同时
17、将开启的信息在LCD液晶显示器上实时显示;当系统被人为破坏后,Zigbee协调器将收到被人为破坏的消息,这时,LCD液晶显示器显示试剂柜被人为破坏的消息,并且蜂鸣声光报警器将发出声光报警,以告知管理者。系统结构图如下图所示。Zigbee协调器LCD液晶显示器组网模块电源供电声光报警模块图一客户端硬件结构图2.4 终端硬件结构设计系统终端主要实现指纹识别、电磁阀开锁控制、防破坏检测控制、声光报警器和Zigbe组网通信等。首次将管理者的指纹录入系统后,在之后管理者通过指纹识别器打指纹时,设备对现有指纹与系统存储的指纹经行判断,并将判断结果通过TTL串口传输给系统主控制器,主控制器根据收到的判断结果
18、来决定是否开启电磁阀,同时通过Zigbee将开锁信息传输到客户端;当电磁阀被人为破坏时,处理器将控制蜂鸣报警器发出报警声,Zigbee也将被破坏的信息传输到客户端。在整个系统中,无论是正常开锁还是人为的外力破坏锁,系统终端都会将该开锁的信息通过Zigbee传输到客户端,这样在当试剂柜被人为破坏时,能够及时发现,能够有效的防止试剂的丢失。终端系统结构如下图所示。电源供电指纹)tZigbee识别模块组网模块ARMCortex-M3电磁阀控制模块STM32处理器声光报警模块图二终端硬件结构图2.5 系统软件程序设计方案系统的软件设计是在硬件设备的基础上,通过C语言程序编程,实现对指纹数据处理、对电磁
19、阀的控制、对声光报警器的控制、通过Zigbee的通信,实现项目预期的功能;在本设计中Zigbee采用TI官方的2007协议栈来完成。设计中根据软件设计模型,从用户需求和系统要实现的任务功能出发,通过以上的方法,实现本套系统的智能防盗监控。软件设计需要遵循以下几个原则:(1)程序语言精练。嵌入式程序语言的设计需要句句精练,不繁缀;程序应尽可能简洁而又满足需要,函数要有良好的容错性,便于将来系统升级开发;(2)高性能。在保证设备能够正常运行的情况下,考虑对存储器(包括SDRAM口FLASH)的严格要求,尽量减少可执行代码所需的空间,提高程序的运行速度;(3)模块化。把整个软件划分为多个小模块。为了
20、减少模块之间的关联性,设计中各个模块之间的逻辑结构相对独立,无函数的交叉调用,数据传递由全局变量完成。这种模块化设计方法使得各个子系统之间相对独立,便于系统的调试,提高了系统的稳定性,也为软件升级提供了方便;(4)协同开发。软件和硬件之间采用同步进行的开发模式;(5)可移植性。嵌入式操作系统和应用程序要具有良好跨平台性,要能支持主流的微处理器硬件平台,以便于将来的升级和优化;本系统的整个应用软件可以分两大部分,终端试剂柜信号采集部分和终端监控部分。其软件模块结构下图所示。终端试剂柜信号采集部分包括:指纹识别模块数据处理、电磁阀电动锁控制模块、声光报警模块、Zigbee协议栈处理模块;终端监控部
21、分实现无线监控终端试剂柜,其主要软件模块主要包括:声光报警模块、LCD数据显示模块、Zigbee协议栈处理模块。终端和客户端通过Zigbee组网关联起来。整个应系统软件的设计采用模块化的方式,分别调用不用的API接口,结构非常清晰,为后续代码的跨平台移植奠定了基础。1试剂柜终端一指纹处理模块电磁阀控制模块IIIIIIIIIIIIIItIII声光报警模决模块声光报警模块模块指纹处理模块电磁阀控制模块IIIIIIZigbee组网模块系统主程序+LC口显示模块声光报警模块图三系统软件结构图第3章系统详细方案设计3.1 试剂柜硬件电路设计3.1.1 嵌入式处理器模块本系统作为嵌入式产品,对处理器的选择
22、至关重要。通过对本系统的功能需求分析,系统中的微处理器采用ST(意法半导体公司)的STM32F103xB曾强型系列使用高性能的ARM/Cortex-M3/32位的RISC内核,工作频率为72MHz内置高速存储器(高达128K字节的闪存和20K字节的SRAM)丰富的增强I/O端口和联接到两条APB总线的外设。所有型号的器件都包含2个12位的ADC、3个通用16位定时器和一个PWMI时器,还包含标准和先进的通信接口:多达2个I2C和SPI、3个USART一个USBffi一个CANSTM32F103xx增强型系列工作于-40C至+105C的温度范围,供电电压2.0V至3.6V,一系列的省电模式保证低
23、功耗应用的要求。完整的STM32F103x)i曾强型系歹I产品包括从36脚至100脚的五种不同封装形式;根据不同的封装形式,器件中的外设配置不尽相同,本设计中采用64脚封装。嵌入式处理器模块的应用电路如下图所示。一1-TmTnl一一.图4嵌入式处理器系统电路图3.1.2 电源管理模块电源电路是整个系统能够正常工作的基本保证,如果电源电路设计的不好,系统有可能不能工作,或者出现散热不好导致系统不稳定的情况。因此如何选用合适的电源芯片很重要。综合考虑整个硬件平台需要的供电电压有5V和3.3V,其中,3.3V在电路上多次使用,所以在选择3.3V电源芯片的时候要充分考虑电源芯片的负载能力是否能够满足整
24、个系统的工作需求。系统外部输入为5V电压,使用REG1117-3.3稳压输出3.3V电压。5V电压给指纹识别模块以及声光报警器供电。整个系统的电源原理图如下图所示:一二图5电源电路原理图3.1.3 实时时钟模块收款保险箱涉及到数据打印功能,时间的准确性非常重要,而实时时钟电路是为系统提供时钟的。本系统用PCF8563乍为系统的实时时钟芯片,开机工作状态下实时时钟芯片由外部输入电源供电,掉电状态下由后备电池供电。在后备电池的支持下,能保证系统掉电后片内时钟继续运行。实时时钟电路记录系统时间,内有秒、分、小时、天、月、年和世纪寄存器,在设备初始化时间后,通过访问它可知道当前时间1。SODSDA是I
25、2C总线,用于读/写PCF8563内部寄存器,与CPU1接,实时时钟原理图如下图所示:眦卜1寻阡MJCFSSfilT5TOniokKj510E图6实时时钟原理图3.1.4 LCD液晶显示模块本系统采用LCD12864夜晶显示,用于直观地显示终端试剂柜的开柜信息、开柜时间以及开柜者姓名等。设计中采用3线串行接口方式的显示器,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;具显示分辨率为128X64,内置8192个16*16点汉字,和128个16*8点ASCII字符集。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8X4行16X16点阵的汉字,也可
26、完成图形显示,低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。图7128*64液晶模块图3.1.5 声光报警模块声光报警器分为声音报警器和光照报警两部分。在设计中,声音报警器通过三极管驱动有源蜂鸣器来实现;而光照报警则通过LED发光二极管来实现;当出现异常情况时,蜂鸣器开始鸣叫,发光二极管开始闪烁。声光报警器驱动电路如下图所示:1 T-aM-QIillILA1图8声光报警器模块图3.1.6 Zigbee组网模块在Zigbee的通信组网模块设计中,采用TI公司的CC2
27、530系列处理器。CC243Q1一颗真正的系统芯片(SOC)CMO解决方案。这种解决方案能够提高性能并满足以ZigBee为基础的2.4GHzISM波段应用,及对低成本,低功耗的要求。它结合一个高性能2.4GHzDSSS直接序列扩频)射频收发器核心和一颗工业级小巧高效的8051控制器。本设计中的Zigbee应用电路图见“附件一所示"。ZigBee的网络节点类型包括协调器、路由器和终端,下面分别介绍每一种节点类型的功能作用。(1)协调器(Coordinator)在各种拓扑形式的ZigBee网络中,有且只有一个协调器节点,它负责选择网络所使用的频率通道、建立网络并将其他节点加入网络、提供信
28、息路由、安全管理和其他服务。(2)路由器(Router)当采用树型和网状拓扑结构时,需要用到路由器节点,它也可以加入协调器,是网络远距离延伸的必要部件。它负责发送和接受节点自身信息;节点之间转发信息;允许子节点通过它加入网络。(3)终端节点终端节点的主要任务就是发送和接收信息,通常一个终端节点不处在数据收发状态时可进入休眠状态以降低能耗。ZigBee网络基础主要包括设备类型,拓扑结构和路由方式三方面的内容,ZigBee标准规定的网络节点分为协调器(Coordinator)、路由器(Router)和终端节点(EndDevice)。节点类型是网络层的概念,反映了网络的拓扑形式。ZigBee网络具有
29、三种拓扑形式:星型拓扑、树型拓扑、网状拓扑。(1)星型拓扑星型拓扑是最简单的拓扑形式,如图2-2o图中包含一个协调器节点和一些终端节点。每一个终端节点只能和协调器节点进行通讯,在两个终端节点之间进行通讯必须通过协调器节点进行转发,具缺点是节点之间的数据路由只有唯一路径。图9星形拓扑结构.协调聚O路由器(2)树型拓扑树型拓扑结构如图2-3o协调器可以连接路由器节点和终端节点,子节点的路由器节点也可以连接路由器节点和终端节点。直接通信只可以在父节点和子节点之间进行,非父子关系的节点只能间接通信。协调器0o珞由器,含诊图10树状拓扑结构(3)网状拓扑网状拓扑如图2-4o网状拓扑具有灵活路由选择方式,
30、如果某个路由路径出现问题,信息可自动沿其他路径进行传输。任意两个节点可相互传输数据,网络会自动按照ZigBee协议算法选择最优化路径,以使网络更稳定,通讯更有效率。图11网状拓扑结构3.2 试剂柜软件设计试剂柜的软件设计也分为基于ARM勺嵌入式软件设计和基于Zigbee的协议栈软件程序设计。3.2.1 嵌入式软件设计 开发环境介绍本设计中的STM3痂用MD磔成开发环境开发,RealViewMDK(MiertocontrollerDevelopmentKit)是AR泌司最先推出的基于ARM散控制器的专业嵌入式开发工具。它采用了ARM勺最新技术编工具RVCT集成了享誉全球的仙Visi
31、onIDE,因此特别易于使用,同时具备非常高的性能。它适合不同层次的开发者使用,包括专业的应用程序开发工程师和嵌入式软件开发的入门者。MD庖括符合工业标准的RealView编译工具、测试器以及实时内核等组件,支持所有基于ARM勺设备,能帮助工程师按照计划完成项目。 MDI供启动代码生成向导一一提高开发效率; MDK供强大的设备模拟器一一缩短开发周期:目标设备的所有组件都可仿真,代码可在整个设备上运行。完全的目标硬件仿真,完整的目标,高效指令集仿真,中断仿真,片内外围设备有ADC,DAC,EBI,Timers,UART,CANI2C,包含外部信号和I/O。充足的仿真信息,包含在设备数据库里。 M
32、DK1供高效的性能开发工具; MD持最新的Cortex-M3处理器:Cortex-M3处理器是AR泌司推出的最新的针对微控制应用的内核,提供业界领先的高性能和低成本解决方案,将成为MCU应用的热点和主流。但是目前能支持Cortex-M3构架的开发工具很少,包括SDTADS1.2等多数开发工具都不支持。MDK!目前性价比最高的支持Cortex-M3处理器的开发工具。 MDK!成了Flash编程模块; MDK!供业界最好的卜VisionIDE易学易懂。 嵌入式软件的组成嵌入式系统开发中,STM32勺软件系统平台分为硬件驱动程序、系统库函数软件、应用程序等几个部分,这几个部分有机的结合
33、起来就构成了本项目完整的嵌入式软件系统。其中,系统库函数是ST官方所提供的针对STM3如同处理器的资源库函数,使用中,根据功能需要,调用相应的API接口即可;而硬件驱动程序则由用户针对不同的硬件设备所写的设备资源调用函数;应用程序完成用户需要实现的具体的功能,应该程序通过调用包括驱动程序和库函数等的API接口即可实现对某一功能的实现。本系统的软件平台架构图如图12所示:指纹识别程序电磁阀控制程序声光报警器程序LCD液晶程序驱动程序API接口系统库函数API接口系统库函数接口LED驱动蜂鸣器驱动串口驱动电磁阀驱动LCD液晶驱动硬件设备图12嵌入式软件平台结构 嵌入式软件设计过程防盗
34、指纹密码试剂柜工作的主要过程是首先管理者录入指纹并存储在指纹识别器内,当管理者再次通过指纹识别器打指纹时,指纹识别器将收到的指纹数据与原始存储的指纹数据对比,当指纹与原始存储的指纹一致时,说明指纹正确,指纹识别器将数据通过串口传输给嵌入式处理器,处理器收到数据,根据指纹正确与否来决定是否开启试剂柜门,当指纹正确的时候,嵌入式处理器控制电磁阀开启试剂柜门;当错误时,则试剂柜门不开启,嵌入式处理器控制声光报警器发出报警声音;并且在当试剂柜被强行破坏时,嵌入式处理器收到破坏信号,控制声光报警器也同样发出报警声而在指纹同时。同时在指纹识别器收到指纹数据时,将指纹识别的结果也同样通过Zigbee终端传输
35、到客户端。Zigbee客户端收到终端的数据,当数据为正确识别打开试剂柜则LCD液晶显示器显示设备正常打开及打开的时间,若是指纹识别错误或者是试剂柜被人为破坏时,液晶显示器显示破坏信息,且声光报警发出报警。 嵌入式软件设计流程图试剂柜人为破坏采用外部中断检测,嵌入式主程序流程图如下图所示发送正确识别指纹信号给Zigbee驱动开锁程序试剂柜门打开系统初始化While(1)是否收到.指纹数据是指纹识别是否正确图13嵌入式程序设计流程图3.2.2Zigbee软件设计zigbee软件开发平台File二CiViii1=1ToolsWindowHefciIAREmbeddedwo
36、rkbench|暴二套开发工珏,用于对汇编,c或C+编写的而嵌入式应用程序进行乡IAbeddi、,、入式应用开发工二件帕区集成开发环像但陶Tidedworkbench曷一套高度精密:a后川方便的嵌芯片的的代码优flash/prommable匕器,Iarembeddedworkb代码。Iar的c/c+编译器。通过其内置的针对不同ench可以为处理器芯片生成高效和可靠的Ready总体架构ZigBee协议栈结构是基于标准OSI七层模型的,包括高层应用规范、应用汇聚层、网络层、媒体接入层和物理层,zigbee采用IEEE802.15.4标准。IEEE802.15.4定义了两个物理层标准,
37、分别是2.4GHz物理层和868/915MHz物理层。两者均基于直接序列扩频(DirectSequenceSpreadSpectrum,DSSS技术。868MHzR有一个信道,传输速率为20kb/s;902MH+928MHZS段有10个信道,信道间隔为2MHz传输速率为40kb/s。以上这两个频段都采用BPSKM制。2.4GHz2.4835GHz频段有16个信道,信道间隔为5MHz能够提供250kb/s的传输速率,采用O-QPS明制。为了提高传输数据的可靠性,IEEE802.15.4定义的媒体接入控制(MAC层采用了CSMA-CA口时隙CSMA-CAJ道接入方式和完全握手协议。应用汇聚层主要负
38、责把不同的应用映射到ZigBee网络上,主要包括安全与鉴权、多个业务数据流的会聚、设备发现和业务发现。AppJicitioAFrimework应用层(AF)舞姑印可加噢四I券灿我愿应用支持层.APS1XttworkLayer胭绪层CFK)MitdiuAccessCantrolLaver数据髓路层(MAC1FbysiealLayer物理层(FHY>图15ZigBee协议栈结构终端软件设计在本系统网络中,每个终端设备都具有一个固定地址,且该地址对应不同的试剂柜终端。该终端模块设备负责将本试剂柜的开关情况数据发送至客户端的协调器设备。程序流程图如下图所示协议栈初始化图16Zigb
39、ee终端流程图3.2,2.4协调器软件设计协调器是整个网络的核心,协调器负责创建和维护整个网络,为每个加入该网络的设备分配一个网络地址,在协调器启动时其网络地址将自动设置为0x0000,在所有的网络中,协调器的网络地址均为0x0000,所以终端设备要想跟协调器通信,则设置目标地址为0x0000即可。本系统中的协调器接收终端的数据后,根据数据判断终端试剂柜是正常打开还是指纹错误,或者是人为破坏试剂柜的门,并将相应的开门信息通过LCD液晶显示器显示出来;当指纹错误或者人为破坏试剂柜时,声光报警器发出声光报警。具体的程序流程如下图所示。LCD显示正常开启试剂声光报警器报警LCD显示盗贼入侵图17Zi
40、gbee协调器流程图本设计以指纹识别防盗试剂柜为研究对象,详细介绍了从研发一个基于指纹识别的防盗试剂保险柜的全部方案。,设计中将系统分为终端设备和客户端两部分。终端采用了基于STM32勺嵌入式处理器和基于Zigbee的CC2530空制芯片配合完成指纹识别和防盗报警功能。客户端采用Zigbee处理终端的数据,在发生情况时通过液晶显示器和声光报警器告知管理者。由于本设计是以当下较为流行的ZigBee无线通信技术为基础的,ZigBee技术具有近距离、低复杂度、低功耗、低速率、低成本等优点,因而成本和功耗方面的是本设计的一大优势。同时,由于ZigBee技术组网方便,网络容量大,根据需要可以随时组网,就
41、能够满足多个终端试剂柜的同时检测,应用前景比较广泛。当然,本设计仍然存在一些不足,需要改进和提高。例如,本设计的客户端不具有记忆存储功能,管理者不能随意查询历史开门记录这后都会进一步研究和实现。然而,ZigBee技术的应用前景是十分明朗的,成本和功耗方面的优势使其在市场中十分具有竞争力。尤其在物联网技术已成为当下热点命题之一的时候,ZigBee技术的应用价值就更为重要了,可以想见,伴随着物联网技术的成长,ZigBee技术也将日趋成熟。感谢我们学院的指导老师,因为有了他们的存在,在他们的指导下我们的专业知识水平才会不断的提升,他们付出了辛勤的汗水“耕耘”了一批又一批专业水平较高的学长们;在指导老
42、师高专业技能的滋润下我们逐渐走向成熟,从一个学习专业懵懂水平的层次到与全国高等院校学生比拼的水准,虽然自己也付出了汗水,但是没有父母和朋友的帮助和支持,我在大学的学术成长肯定会大打折扣。当我打完毕业论文的最后一个字符,涌上心头的不是长途跋涉后抵达终点的欣喜,而是源自心底的诚挚谢意。我首先要感谢我的指导老师,对我的构思以及论文的内容不厌其烦的进行多次指导和悉心指点,老师多次询问进程,并为我指点迷津,帮助我开拓研究思路,精心点拨、热忱鼓励。周老师一丝不苟的作风,严谨求实的态度,踏踏实实的精神,不仅授我以文,而且教我做人,虽历时三载,却给以终生受益无穷之道。对指导老师的感激之情是无法用言语表达的,使
43、我在完成论文的同时也深受启发和教育。参考文献1黄海平.无线传感器网络技术及其应用.人民邮电出版社,2011.4.2王志良等编著.物联网工程导论.北京航空航天大学出版社,2011.9.3钟文峰.ZigBee无线传感器网络.北京邮电大学出版社,2011.3.4原羿,苏宏根,基于ZigBee技术的无线网络应用研究,计算机应用与软件,2004,21(6).5吕治安,ZigBee网络原理与应用开发,北京:北京航空航天大学出版社,2008.2.6宋文.无线传感器网络技术与应用M.北京:电子工业出版社,2006.7阎石.数字电子技术基础第四版M.北京:高等教育出版社,1999.6.8王文海,彭可,周欢喜,单
44、片机应用与实践项目化教程.北京化学工业出版社,2010.6.9周立功等.ARM嵌入式系统实验教程M.北京:北京航空航天大学出版社,2005.1.10唐清善.ProtelDXP高级实例教程M.中国水利水电出版社,2004.4.11李宁.基于MDK的STM32处理器开发应用M.北京航空航天大学出版社,2008.12 STM32F10xxxTIM1applicationexamplesDB/OL.13 ARM?-based32-bitMCUSTM32F103xxFirmwarelibraryDB/OL.14 ZigBeeAlliance.ZigBeeSpecificationversionl.3S.
45、ZigBeeAlllance,2006.CC2430features:http:/www.chipcon.COM/index.cfm?kat一id=2&subkatid=12&dok-id=240附录1zigbee终端电路图附录2监控终端电路图附录4部分源程序1、Zigbee源程序voidSampleApp_Init(uint8task_id)(一一SampleApp_TaskID=task_id;SampleApp_NwkState=DEV_INIT;SampleApp_TransID=0;/*串口初始化*/MT_UartInit();/初始化MT_UartRegisterT
46、askID(task_id);/登记任务号HalUARTWrite(0,"HelloWorldn",12);/蜂鸣器、LED定义P1DIR|=0x08;/PLED定义为输出P1_3=0;P2DIR|=0x01;/LED定义为输出P2_0=0;#ifdefined(BUILD_ALL_DEVICES)if(readCoordinatorJumper()zgDeviceLogicalType=ZG_DEVICETYPE_COORDINATOR;elsezgDeviceLogicalType=ZG_DEVICETYPE_ROUTER;#ifdefined(HOLD_AUTO_ST
47、ART)ZDOInitDevice(0);#endifSampleApp_Periodic_DstAddr.addrMode=(afAddrMode_t)AddrBroadcast;SampleApp_Periodic_DstAddr.endPoint=SAMPLEAPP_ENDPOINT;SampleApp_Periodic_DstAddr.addr.shortAddr=0xFFFF;SampleApp_Flash_DstAddr.addrMode=(afAddrMode_t)afAddrGroup;SampleApp_Flash_DstAddr.endPoint=SAMPLEAPP_END
48、POINT;SampleApp_Flash_DstAddr.addr.shortAddr=SAMPLEAPP_FLASH_GROUP;/网蜂点对点通讯定义Point_To_Point_DstAddr.addrMode=(afAddrMode_t)Addr16Bit;/点播Point_To_Point_DstAddr.endPoint=SAMPLEAPP_ENDPOINT;Point_To_Point_DstAddr.addr.shortAddr=0x0000;/发给协调器/Fillouttheendpointdescription.SampleApp_epDesc.endPoint=SAMPL
49、EAPP_ENDPOINT;SampleApp_epDesc.task_id=&SampleApp_TaskID;SampleApp_epDesc.simpleDesc=(SimpleDescriptionFormat_t*)&SampleApp_SimpleDesc;SampleApp_epDesc.latencyReq=noLatencyReqs;/RegistertheendpointdescriptionwiththeAFafRegister(&SampleApp_epDesc);/Registerforallkeyevents-Thisappwillhandl
50、eallkeyeventsRegisterForKeys(SampleApp_TaskID);/Bydefault,alldevicesstartoutinGroup1SampleApp_Group.ID=0x0001;osal_memcpy(SampleApp_G,"Group1",7);aps_AddGroup(SAMPLEAPP_ENDPOINT,&SampleApp_Group);#ifdefined(LCD_SUPPORTED)HalLcdWriteString("SampleApp",HAL_LCD_LINE_1);
51、#endif)voidSampleApp_SendPointToPointMessage(void)(.if(temp=1)/如果正常开启试剂柜(T0=0;/正常开启)else(T0=1;/非正常开启)if(AF_DataRequest(&Point_To_Point_DstAddr,&SampleApp_epDesc,SAMPLEAPP_POINT_TO_POINT_CLUSTERID,1,T,&SampleApp_TransID,AF_DISCV_ROUTE,AF_DEFAULT_RADIUS)=afStatus_SUCCESS)()else(/Erroroccur
52、redinrequesttosend.)/接收到的数据处理voidSampleApp_MessageMSGCB(afIncomingMSGPacket_t*pkt)(一一uint16flashTime,temp;uint8dat5;switch(pkt->clusterId)(caseSAMPLEAPP_POINT_TO_POINT_CLUSTERID:HalLcdWriteString("Welcomtouse",HAL_LCD_LINE_2);/LCD显示dat0=pkt->cmd.Data0;if(dat0)(Sbuff=1;/非正常开启HalLcdWri
53、teString("Nonnormalopeningdoor!",HAL_LCD_LINE_4);/LCD显示)elseif(!dat0)(Sbuff=0;/正常开启HalLcdWriteString("Thedooropened!",HAL_LCD_LINE_4);/门正常开启_)break;caseSAMPLEAPP_FLASH_CLUSTERID:flashTime=BUILD_UINT16(pkt->cmd.Data1,pkt->cmd.Data2);HalLedBlink(HAL_LED_4,4,50,(flashTime/4);b
54、reak;)2、STM32处理器源程序voidSystemlnit(void)/时钟配置(/*ResettheRCCclockconfigurationtothedefaultresetstate(fordebugpurpose)*/*SetHSIONbit*/RCC->CR|=(uint32_t)0x00000001;/*ResetSW,HPRE,PPRE1,PPRE2,ADCPREandMCObits*/#ifndefSTM32F10X_CLRCC->CFGR&=(uint32_t)0xF8FF0000;#elseRCC->CFGR&=(uint32_t)
55、0xF0FF0000;#endif/*STM32F10X_CL*/*ResetHSEON,CSSONandPLLONbits*/RCC->CR&=(uint32_t)0xFEF6FFFF;/*ResetHSEBYPbit*/RCC->CR&=(uint32_t)0xFFFBFFFF;/*ResetPLLSRC,PLLXTPRE,PLLMULandUSBPRE/OTGFSPREbits*/RCC->CFGR&=(uint32_t)0xFF80FFFF;#ifndefSTM32F10X_CL/*Disableallinterruptsandclearpendingbits*/RCC->CIR=0x
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 英文国际海运合同模板
- 校企合作合同延期详情在线查阅
- 绿色建筑环保验收服务合同
- 脾脏影像诊断
- 技术合作合同
- 历史遗留房屋买卖合同样本
- 含外债离婚合同范本
- 度新能源设备供应合同
- 科研成果转化合同
- 合同范本揭秘:演艺经纪合作指南
- 第六部分 带束层设计子午线轮胎设计
- GB/T 33744-2017地震应急避难场所运行管理指南
- 2022初三体育中考仿真模拟测试实施方案
- c语言程序设计第7章数组课件
- 储能热管理行业专题报告
- “科学与文化论著研习”学习任务群的课程论分析
- 租车费结算单
- 陕北民歌之简介课件
- 近视眼的防控课件
- 食品添加剂 亚硫酸钠标准文本(食品安全国家标准)
- 抖音直播运营团队薪酬绩效考核管理方案(直播带货团队薪酬绩效提成方案)
评论
0/150
提交评论