无线网络课程设计_第1页
无线网络课程设计_第2页
无线网络课程设计_第3页
无线网络课程设计_第4页
无线网络课程设计_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、专业课课程大作业课程名称: 无线网络技术导论 设计题目:基于zigbee网络智能家居系统 院 系: 电子信息与电气工程学院 学生姓名: XXX 学 号: 24567456545654 专业班级: 通信工程 指导教师: XXX 2012年11月26日I基于ZigBee网络智能家居系统摘要 随着无线网络技术的发展,家庭信息化、网络化是当今智能家居系统发展的新趋势。智能家居系统能够为人类提供舒适、智能、环保、高效的现代生活方式,是未来居住模式的必然发展趋势。而WSN中的ZigBee技术弥补了低成本、低功耗和低速率无线通信市场的空缺。本文在概述了智能家居系统和ZigBee的基础上提出一种采用ZigBe

2、e无线通信技术的智能家居系统设计方案。本系统利用TI公司的具有增强型的51内核的CC2430芯片,并通过一些外围的设计与传感器的设计,再加上CC2430节点模块与PC终端的串口连接由Delphi实现的PC终端控制软件,可以实现PC终端的智能控制,从而实现了一种低成本、高灵活性、通用的基于ZigBee的无线智能家居系统。关键词 智能家居;ZigBee;CC2430;WSNII目录1 引言11.1 智能家居发展概况11.2 WSN及ZigBee技术概述11.2.1 ZigBee协议框架21.2.2 ZigBee技术的应用领域21.3 CC2430概述32 方案设计4方案解决示意图43 智能家居平台

3、硬件设计43.1 CC2430核心电路设计53.2 温度传感器硬件设计53.3 报警器电路硬件设计53.4 人体红外感应模块设计63.5 串口通信硬件设计73.6 LED显示硬件设计74.智能家居平台软件设计84.1ZigBee协议栈实现84.2 ZigBee协议编程85. 上位机软件设计125.1 Delphi概述125.2 上位机软件设计12结 论13参考文献14II无线网络技术导论课程设计1 引言1.1 智能家居发展概况智能家居是利用先进的计算机技术、嵌入式系统和网络通讯技术,将家庭中的各种设备(如照明系统、安防系统、网络家电)通过家庭网络连接到一起的,自从美国在1984 真正的智能建筑

4、出现以来, 国外已经有将近30 年的研究历史,而国内在这方面的研究相对较晚,从2003 年才逐步应用于高端市场,而且标准不统一,如海信、海尔、清华大学等大家各自为营。由于智能家居系统具有安全、方便、高效、快捷、智能化和个性化的独特魅力,使得智能家居的开发与建设成为21 世纪科技发展的必然趋势。随着全球对能源和环境的要求越来越高,而智能家居在节能方面的效果优势非常明显,因此具有非常广阔的市场前景。1.2 WSN及ZigBee技术概述ZigBee是一个协议的名称,这一协议的核心基于IEEE 802.15.4标准,其目的是为了适用于低功耗,无线连接的监测和控制系统。ZigBee和IEEE802.15

5、.4标准都适用于低速率数据传输,最大传输速率为250KBps,与目前其他成熟的无线技术比较,ZigBee的缺点在于理论传输距离相对较近,但是对于数据采集和控制信号的传输来说,首要考虑的是成本、功耗,距离和速率参数则是次要因素。所以目前ZigBee技术的主要应用定位在低速率、复杂网络、低功耗和低成本的应用。另外,基于ZigBee技术可以实现若干个微小的传感器之间实现相互协调的通信,采用接力的方式通过无线电波信号将数据从一个传感器传到另一个传感器,这使得网络间通信效率非常高。WSN(无线传感器网络)是当前在国际上备受关注的,涉及多学科高度交叉,是高度集成的前沿热点研究领域。WSN有着巨大的应用前景

6、,被认为是将对21世纪产生巨大影响力的技术之一。其主要的应用在环境监测,军事应用,医疗应用,智能家居等。而智能家居也随着WSN技术的发展而得到了很大的发展与应用。对于无线网络来说,节点间通信距离越大,相应的电气设备结构越复杂、系统功耗以及成本就越难控制。所以如何采取高效的短距离传输才是比较理想的无线网络解决方案,相对于现有的各种无线通信技术,ZigBee技术的短距离、低功耗、低速率、低陈本是最适合作为传感器网络的标准。1.2.1 ZigBee协议框架ZigBee是专门为低速率控制网络制定的标准无线网络协议。它在PHY层、MAC层和数据链路层上采用了IEEE802154协议标准,同时进行了完善和

7、扩展。整个协议的框架结构如图所示。图1: 协议框架结构图1.2.2 ZigBee技术的应用领域 ZigBee技术的目标就是针对工业,家庭自动化,遥测遥控,汽车自动化、农业自动化和医疗护理等,例如灯光自动化控制,传感器的无线数据采集和监控,油田,电力,矿山和物流管理等应用领域。另外它还可以对局部区域内移动目标例如城市中的车辆进行定位。1.3 CC2430概述CC2430 是 TI 公司推出的用来实现嵌入式 ZigBee 应用的片上系统。它支持2.4GHz IEEE 802.15.4/ZigBee 协议。根据芯片内置闪存的不同容量,提供给用户3个版本,即CC2430-F32/64/128,分别对应

8、内置闪存 32/6 4/128 KB。兼容IEEE802.15.4 的RF前端,接收灵敏度高,集成度高,7*7mm QLP48 封装,低功耗(接收 27mA,发送27mA),休眠电流0.5A PM2 0.3APM3,可快速唤醒,宽电压工作(2.0V 3.6V),一个加强51内核,8KB RAM(4KB 可以全模式工作),具有DMA功能,自带看门狗,支持硬件调试,支持电源、温度管理,12位ADC,128位AES加密处理,两个全功能串口,21 个 I/O。CC2430芯片延用了以往CC2420芯片的架构,在单个芯片上整合了ZigBee射频(RF)前端、内存和微控制器。它使用1个8位 MCU(805

9、1),具有128 KB可编程闪存和8 KB的RAM,还包含模拟数字转换器(ADC)、几个定时器(timer)、AES128协同处理器、看门狗定时器(watchdogtimer)、32 kHz晶振的休眠模式定时器、上电复位电路(power on reset)、掉电检测电路(brown out detection),以及21个可编程I/O引脚。CC2430芯片采用0.18mCMOS工艺生产; CC2430的休眠模式和转换到主动模式的超短时间的特性。CC2430芯片的主要特点如下:高性能和低功耗的8051微控制器核;集成符合IEEE 802.15.4标准的2.4GHz的RF无线电收发机;优良的无线接

10、收灵敏度和强大的抗干扰性;在休眠模式时仅0.9A的流耗,外部的中断或RTC能 唤醒系统;在待机模式时少于0.6A的流耗,外部的中断能唤醒系统;硬件支持CSMA/CA功能;较宽的电压范围(2.03.6 V);数字化的RSSI/LQI支持和强大的DMA功能;带有2个强大的支持几组协议的USART,以及1个符合IEEE 802.15.4规范的MAC计时器,1个常规的16位计时器和2个8位计时器;是强大和灵活的开发工具。2 方案设计 方案解决示意图为了解决上述典型的智能家居系统,我们将抽象出如下图所示的网络架构图: 多种传感器或者控制设备,通过zigbee网络与家庭无线网关交互通信

11、。最后通过无线网关将上述控制信息在互联网上共享。3 智能家居平台硬件设计3.1 CC2430核心电路设计 图3:CC2430模块核心电路该电路设计包含了CC2430的几个主要工作电路,如时钟电路,复位电路等。3.2 温度传感器硬件设计温度传感器采用DALLAS的1-wire温度传感器DS18B20,该温度传感器只需要占用CC2430的一个引脚即可,直接输出数字量,无需A/D进行转化,使用十分方便。尽管CC2430内部有集成的温度传感器,但是其功能主要是测芯片内部的温度,用于对环境温度的测量,偏差过大,不能准确的反应出室内的环境温度,所以不能采用。DS18B20的外围电路的设计十分简单,只占用C

12、C2430的P1.2口即可实现功能.3.3 报警器电路硬件设计 智能家居系统中,当出现危险状况时,需要进行报警,才能达到安防的效果,其中报警器是重要的一个部分。本次设计中采用了蜂鸣器对温度报警信号进行报警。由于CC2430的IO口的驱动能力有限,所以要用三极管进行放大,提高驱动能力,实践证明,用S9013进行放大就可以产生良好的报警效果.当协调器检测到温度超过范围后,就产生一个温度报警信号,输出到报警电路中。由上图可知,当输入端接收到低电平后,三极管导通,蜂鸣器就会发出声音,即可作为报警器使用。3.4 人体红外感应模块设计当有人经过时,该装置就会被触发,从而输出高电平。进而传送给单片机报警信号

13、的来临。该模块采用红外技术,灵敏度高,可靠性强,可处于超低电压工作模式,广泛应用于各类自动感应电器设备,尤其是干电池供电的自动控制产品。模块的硬件电路图如下:图6:红外感应模块硬件电路其中, BIS0001是一款具有较高性能的传感信号处理集成电路。它配以热释电红外传感器和少量外接元器件就可构成被动式的热释电红外开关、报警用人体热释电传感器等。该电路实现的功能如下:人进入其感应范围则输出高电平,人离开感应范围则自动延时关闭高电平,输出低电平。但是感应模块通电后有一分钟左右的初始化时间,在此期间模块会间隔地输出 0-3 次,一分钟后进入待机状态。3.5 串口通信硬件设计 协调器接受到终端节点的数据

14、后,要将数据传输到PC终端的智能家居控制平台从而实现人机交互,而目前常用的PC数据接口主要有RS232接口和USB接口,本次设计采用RS232接口进行电路设计。RS 232接口是目前主流的串行通信接口之一。RS232标准规定的数据传输速率为每秒150、300、600、1200、2400、4800、9600、19200波特。UART采用标准的TTL/CMOS逻辑电平来表示数据,高电平表示1,低电平表示0。为了增强数据的抗干扰能力、提高传输长度,通常将TTL/CMOS逻辑电平转换为RS-232逻辑电平,312V表示0,-3 -12V表示1,由于RS232标准采用的是负逻辑电平,515V表示0, 5

15、15V表示l,而CC2430系统使用的是LVTTL电平,标准逻辑l对应233V电平,标准逻辑0对应004V电平。二者的逻辑电平无法兼容,要实现二者进行通信必须经过信号电平转换实现电平匹配。目前,常用的电平转换芯片有MAX3232,SP3232EEN等。本系统选用SP3232芯片完成电平转换,从而就可以实现CC2430与PC之间的通信,通过上位机软件就可以实现数据的管理与控制。3.6 LED显示硬件设计在本次设计中,采用LED来显示从上位机传来的经协调器发送到终端的控制信号.也是对智能家居的控制系统的仿真。通过PC终端控制哪个灯的亮灭,就可以在终端节点上看到相应的LED的亮灭状态,从而实现的PC

16、机的智能控制功能。4.智能家居平台软件设计4.1ZigBee协议栈实现 TI 的Z-Stack是基于一个轮转查询式操作系统的,但是本次设计并未采用ZigBee 2006,而是采用的一种精简版的公开源码的ZigBee协议栈msstatePAN6,它由Robert Reese在参考Microchip ZigBee Stack的基础上编写的,基于ZigBee 1.0,支持硬件平台CC2430和PIC184620+CC2420。 4.2 ZigBee协议编程如果节点作为协调器(coordinator),那么需要定义LRWPAN_COORDINATOR;而如果节点作为路由器(router)则需要定义LR

17、WPAN_ROUTER;如果两者都没有定义,将作为RFD节点。协调器节点形成网络,然后进入一个无限循环并调用apsFSM()运行协议栈。调用aplFormNetwork()服务后调用函数aplGetStatus(),如果返回了LRWPAN_SUCCESS则表示服务调用成功。代码如下:      main()       halInit();/初始化HAL 层       evbInit();/初始化评估板    &#

18、160;  aplInit();/初始化协议栈       ENABLE_GLOBAL_INTERRUPT();/开中断      aplFormNetwork();/形成网络       while(apsBusy)() apsFSM();/等待完成       while(1) apsFSM();/运行协议栈栈       

19、     路由器节点通过调用aplJoinNetwork()运行协议栈。代码如下:      main()       halInit();/初始化HAL 层      evbInit();/初始化评估板      aplInit();/初始化协议栈       ENABLE_GLOBAL_INTERRUPT

20、();/开中断尝试接入网络直至成功       do aplJoinNetwork(); /接入网络       while(apsBusy)() apsFSM();/等待完成      while(aplGetStatus() !=LRWPAN_SUCCESS);       while(1) apsFSM();/运行协议栈 发送消息时,消息从源节点的源端点发送到目标节点的目标端点。消息分直接消

21、息(指定了目标地址)和非直接消息(仅定义了源节点、源端点和簇,没有指定目标地址)。端点号从1到255由应用程序设置(端点0由栈保留使用)。消息发送以,协议栈会向父节点路由此消息。如果收到APS的ack确认,协议栈就会将消息发送给目标端点。应用程序通过调用aplSendMSG()函数发送消息包。此函数的定义如下:aplSendMSG(      BYTE dstMode,/目标地址的地址模式      LADDR_UNION * dstADDR, /目的地址的指针   

22、;   BYTE dstEP,/目标端点(直接消息方式不用)      BYTE cluster,/簇号(仅用于直接消息)      BYTE scrEP,/消息源端点      BYTE* pload,/用户数据缓冲区指针      BYTE plen,/缓冲区字节数      BYTE tsn,/消息的事务队列数 

23、     BYTE reqack/如果非0则要求确认      )接收消息时,协议栈使用以下APL访问函数接收数据包: aplGetRxDstEp()返回目的端点   aplGetRxCluster()返回簇号   aplGetRxSrcEp()返回源端点   aplGetRxSADDR()返回源端点的短地址   aplGetRxMsgLen()返回消息长度   ap

24、lGetRxMsgData()返回消息数据的指针   aplGetRxRSSI()返回收到消息的信号强度 而后用户回调函数usrRxPacketCallback()将被调用。这个函数将使用用户数据结构保存数据,设置已收到数据的标志位。此函数结束后消息数据的指针将会被释放,所以在函数结束之前要将数据保存以防止下一个包将数据覆盖掉。协调器在进行一系列初始化操作后,发出组网请求。组网成功后就等待接收子节点传来的数据并进行相应的数据处理操作。 协调器工作软件流程框图如下所示: 图9:协调器软件流程图5. 上位机软件设计5.1 Delphi概述Delphi,是Windows

25、平台下著名的快速应用程序开发工具(Rapid Application Development,简称RAD)。它的前身,即是DOS时代盛行一时的“Borland Turbo Pascal”,最早的版本由美国Borland(宝兰)公司于1995年开发。主创者为Anders Hejlsberg。经过数年的发展,此产品也转移至Embarcadero公司旗下。Delphi是一个集成开发环境(IDE),使用的核心是由传统Pascal语言发展而来的Object Pascal,以图形用户界面为开发环境,透过IDE、VCL工具与编译器,配合连结数据库的功能,构成一个以面向对象程序设计为中心的应用程序开发工具。D

26、elphi被称为第四代编程语言,它具有简单、高效、功能强大的特点。和VC相比,Delphi更简单、更易于掌握,而在功能上却丝毫不逊色;和VB相比,Delphi则功能更强大、更实用。可以说Delphi同时兼备了VC功能强大和VB简单易学的特点。它一直是程序员至爱的编程工具。Delphi具有以下的特性:基于窗体和面向对象的方法,高速的编译器,强大的数据库支持,与Windows编程紧密结合,强大而成熟的组件技术。但最重要的还是Object Pascal语言,它才是一切的根本。Object Pascal语言是在Pascal语言的基础上发展起来的,简单易学。5.2 上位机软件设计节点采集到其他节点的传感

27、器数据后要在PC终端进行显示并可以执行一些控制操作,从而需要上位机软件部分实现与下位机之间的数据通信。用Delphi 实现串口通讯,常用的几种方法为:使用控件如MSCOMM和SPCOMM,使用API函数或者在Delphi 中调用其它串口通讯程序。利用API编写串口通信程序较为复杂,需要掌握大量通信知识,其优点是可实现的功能更强大,应用面更广泛,更适合于编写较为复杂 的低层次通信程序。相比较而言,利用SPComm控件则相对较简单,该控件具有丰富的与串口通信密切相关的属性及事件,提供了对串口的各种操作。上位机并没有直接对底层的API函数进行调用,而是直接通过控件来对串口进行操作,从而只需要一些基本的串口操作方法即可实现串口通讯的功能,大大简化了设计开发的难度。本次采用了SPComn控件直接对串口进行操作。通过登录界面输入用户名和密码后,即可进入控制界面。从而实现控制功能。进入后,首先需要进行串口的相关

温馨提示

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

评论

0/150

提交评论