基于Zigbee的无线遥控台灯_第1页
基于Zigbee的无线遥控台灯_第2页
基于Zigbee的无线遥控台灯_第3页
基于Zigbee的无线遥控台灯_第4页
基于Zigbee的无线遥控台灯_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、课程设计报告题 目: 基于 ZigBee 的无线遥控台灯 学生姓名: 学生学号: 系 别: 专 业: 年 级: 任课教师: 电气信息工程学院制2014 年 3 月 成绩成绩摘要摘要本文提出了一套采用无线通信协议 ZigBee 的智能路遥控台灯系统的设计方案。该系统的方案利用 ZigBee 无线通信技术实现主控系统对终端台灯的实时控制,具有遥控台灯开关的功能。模拟试验表明,本方案中所设计的系统操作简单,节能效果好。ZigBee 是基于 IEEE802.15.4 标准的低功耗个域网协议。根据这个协议规定的技术是一种短距离、低功耗的无线通信技术。这一名称来源于蜜蜂的八字舞,由于蜜蜂(bee)是靠飞翔

2、和“嗡嗡”(zig)地抖动翅膀的“舞蹈”来与同伴传递花粉所在方位信息,也就是说蜜蜂依靠这样的方式构成了群体中的通信网络。其特点是近距离、低复杂度、自组织、低功耗、高数据速率。主要适合用于自动控制和远程控制领域,可以嵌入各种设备。简而言之,ZigBee 就是一种便宜的,低功耗的近距离无线组网通讯技术。关键词关键词:遥控台灯,Zigbee,低功耗,继电器淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计目录目录1 课题任务 .12 方案设计 .12.1 设计要求 .122 总体方案的设计 .13 硬件电路设计 .23.1 元器件及原理介绍 .23.2 单元电路设计 .53.2.1

3、CC2530 核心板电路.53.2.2 按键电路.532.3 继电器模块电路.64 软件设计 .64.1 系统程序设计 .64.2 主程序流程图 .75 制作与调试 .76 总结及体会 .8参考文献.8附录:.9附录一 程序 .9附录二 元器件清单 .16附录三 实物图片 .16淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计第 1 页基于基于 Zigbee 的无线遥控台灯的无线遥控台灯学生:陈叶山指导教师:王宜结电气信息工程学院 电子信息工程专业1 1 课题任务课题任务人们可以通过手中的 Zigbee 无线传感器模块实时遥控台灯的开关,方便快捷,避免浪费电能,大大节约了大量

4、电能。2 2 方案设计方案设计2.12.1 设计要求设计要求(1)通过人们手中的便携式无线传感器的发射模块的按键选择发出相应的对台灯的控制信号。(2)利用无线传感器的接收模块来接收发射模块的控制信号并作出相应的处理,即在 Zigbee 的相应引脚产生高低电平来驱动继电器的开关。(3)凭借继电器的开关来控制台灯供电电路的通断,从而很好的控制台灯的亮灭。2 22 2 总体方案的设计总体方案的设计系统分为发射模块,按键控制模块,接收模块,继电器模块,台灯模块等。发射模块采用 Zigbee 无线传感器模块,其 MCU 采用 CC2530 芯片,按键模块用2 个按键,用于进行控制操作和复位。与发射模块相

5、同,接收模块模块同样采用 Zigbee 无线传感器模块,继电器模块采用的是松乐继电器 SRD-05VDC-SL-C,利用接收模块 MCU 的 P1.0 引脚驱动,驱动电路采用典型的三极管驱动电路,通过控制继电器的吸合来控制台灯供电电路的通断。 淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计第 2 页Zigbee发射模块Zigbee接收模块继电器模块台灯驱动开/关图图 1 1 系统模块图系统模块图3 3 硬件电路设计硬件电路设计3.13.1 元器件及原理元器件及原理介绍介绍1.CC2530 芯片:CC2530 是用 2.4-GHzIEEE 802.15.4、ZigBee 和

6、RF4CE 应用的一个真正的片上系统(SoC)解决方案。它能够以非常低的总的材料成本建立强大的网络节点。CC2530 结合了领先的 RF 收发器的优良性能,业界标准的增强型 8051 CPU,系统内可编程闪存,8-KB RAM 和许多其它强大的功能。CC2530 有四种不同的闪存版本:CC2530F32/64/128/256,分别具有 32/64/128/256KB 的闪存。CC2530 具有不同的运行模式,使得它尤其适应超低功耗要求的系统。运行模式之间的转换时间短进一步确保了低能源消耗。CC2530F256 结合了德州仪器的业界领先的黄金单元 ZigBee 协议栈(Z-Stack) ,提供了

7、一个强大和完整的 ZigBee 解决方案。CC2530F64 结合了德州仪器的黄金单元 RemoTI,更好地提供了一个强大和完整的 ZigBee RF4CE 远程控制解决方案。2.Zigbee 技术及其特点:(1)技术简介: 蜜蜂在发现花丛后会通过一种特殊的肢体语言来告知同伴新发现的食物源位置等信息,这种肢体语言就是 ZigZag 行舞蹈,是蜜蜂之间一种简单传达信息的淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计第 3 页方式。借此意义 Zigbee 作为新一代无线通讯技术的命名。在此之前 ZigBee 也被称为“HomeRF Lite” 、 “RF- EasyLink”或

8、“fireFly”无线电技术,统称为ZigBee。简单的说,ZigBee 是一种高可靠的无线数传网络,类似于 CDMA 和 GSM网络。ZigBee 数传模块类似于移动网络基站。通讯距离从标准的 75m 到几百米、几公里,并且支持无限扩展。 ZigBee 是一个由可多到 65000 个无线数传模块组成的一个无线数传网络平台,在整个网络范围内,每一个 ZigBee 网络数传模块之间可以相互通信,每个网络节点间的距离可以从标准的 75m 无限扩展。 与移动通信的 CDMA 网或 GSM 网不同的是,ZigBee 网络主要是为工业现场自动化控制数据传输而建立,因而,它必须具有简单,使用方便,工作可靠

9、,价格低的特点。而移动通信网主要是为语音通信而建立,每个基站价值一般都在百万元人民币以上,而每个 ZigBee“基站”却不到 1000 元人民币。每个ZigBee 网络节点不仅本身可以作为监控对象,例如其所连接的传感器直接进行数据采集和监控,还可以自动中转别的网络节点传过来的数据资料。除此之外,每一个 ZigBee 网络节点(FFD)还可在自己信号覆盖的范围内,和多个不承担网络信息中转任务的孤立的子节点(RFD)无线连接。(2)技术特点: ZigBee 是一种无线连接,可工作在 2.4GHz(全球流行)、868MHz(欧洲流行)和 915 MHz(美国流行)3 个频段上,分别具有最高 250k

10、bit/s、20kbit/s 和40kbit/s 的传输速率,它的传输距离在 10-75m 的范围内,但可以继续增加。作为一种无线通信技术,ZigBee 具有如下特点:(1) 低功耗: 由于 ZigBee 的传输速率低,发射功率仅为 1mW,而且采用了休眠模式,功耗低,因此 ZigBee 设备非常省电。据估算,ZigBee 设备仅靠两节 5 号电池就可以维持长达 6 个月到 2 年左右的使用时间,这是其它无线设备望尘莫及的。(2) 成本低: ZigBee 模块的初始成本在 6 美元左右,估计很快就能降到 1.52.5 美元, 并且 ZigBee 协议是免专利费的。低成本对于 ZigBee 也是

11、一个关键的因素。(3) 时延短: 通信时延和从休眠状态激活的时延都非常短,典型的搜索设备时淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计第 4 页延 30ms,休眠激活的时延是 15ms, 活动设备信道接入的时延为 15ms。因此ZigBee 技术适用于对时延要求苛刻的无线控制(如工业控制场合等)应用。(4) 网络容量大: 一个星型结构的 Zigbee 网络最多可以容纳 254 个从设备和一个主设备, 一个区域内可以同时存在最多 100 个 ZigBee 网络, 而且网络组成灵活。(5) 可靠: 采取了碰撞避免策略,同时为需要固定带宽的通信业务预留了专用时隙,避开了发送数据

12、的竞争和冲突。MAC 层采用了完全确认的数据传输模式, 每个发送的数据包都必须等待接收方的确认信息。如果传输过程中出现问题可以进行重发。(6) 安全: ZigBee 提供了基于循环冗余校验(CRC)的数据包完整性检查功能,支持鉴权和认证, 采用了 AES-128 的加密算法,各个应用可以灵活确定其安全属性。3.继电器模块:继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。在大多数的情况下,继电器就是一个电磁铁,这个电磁铁的衔铁可

13、以闭合或断开一个或数个接触点。当电磁铁的绕组中有电流通过时,衔铁被电磁铁吸引,因而就改变了触点的状态。继电器一般可以分为电磁式继电器、热敏干簧继电器、固态继电器等。 电磁式继电器一般由铁芯、线圈、衔铁、触点簧片等组成的。只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合。当线圈断电后,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与原来的静触点(常闭触点)吸合。这样吸合、释放,从而达到了在电路中的导通、切断的目的。对于继电器的“常开、常闭”触点,可

14、以这样来区分:继电器线圈未通电时处于断开状态的静触点,称为“常开触点”;处于接通状态的静触点称为“常闭触点”。淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计第 5 页在单片机系统中继电器的控制一般通过一个三极管来驱动,典型的驱动电路如图 1 所示:图图 1 1 继电器的一般驱动电路继电器的一般驱动电路继电器电路中一般都要在继电器的线圈两头加一个二极管以吸收继电器线圈断电时产生的反电势,防止干扰。上图中 AB 为常开触点,AC 为常闭触点。图(a)中当控制信号为高电平时,继电器常开触点吸合(AB 导通),当控制信号为低电平时,继电器常开触点断开常闭触点吸合(AC 导通)。在图

15、(b)中控制信号极性正好与图(a)相反,本设计就是采用这个电路。3.23.2 单元电路设计单元电路设计3.2.1 CC2530 核心板电路淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计第 6 页图图 2 2 CC2530CC2530 核心板电路核心板电路3.2.2 按键电路如下图 2 个独立式按键 RESET,S1 分别接在 RST 和 P0.4 口,另外一端接地。当有一键按下时相应的口线的电平发生变化,单片机进行扫描确定哪个键按下,然后进行相应的事件处理。图图 3 3 按键电路按键电路32.3 继电器模块电路淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设

16、计第 7 页图图 4 4 继电器模块电路继电器模块电路4 4 软件设计软件设计4.14.1 系统程序设计系统程序设计在系统工作过程中,首先开启两个 Zigbee 无线传感器模块的电源,然后按下发射模块的 S1 键即可对发出相应的控制信号,例如按 1 次 S1 表示关闭台灯,按两次 S1 表示开启台灯,如此往复循环。4.24.2 主程序流程图主程序流程图主程序流程图如下:淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计第 8 页主程序开始Zigbee发射模块是Zigbee接收模块计算发射模块按键次数按键次数为奇数?否开启台灯是关闭台灯结束图图 5 5 主程序流程图主程序流程图5

17、 5 制作与调试制作与调试 在焊接过程中,因为在以前也有过多次焊接的训练,因此在焊接过程中没有太多的问题,焊接结束是,电路板没有问题。程序在 IAR 编译成功后,把程序烧写进芯片中,进行演示,演示结果正确。6 6 总结及体会总结及体会为期一个多月的课程设计就落下了帷幕,在这一个多月的的实训中,不仅检验了我对所学知识的掌握程度,也培养了我如何去把握一件事情,如何去做淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计第 9 页一件事情,又如何去完成一件事情。通过这次的设计,让我对 Zigbee 无线传感器有了很多的了解,让我在多方面都有了一定的提高。通过这次设计,综合运用本专业所学

18、习的课程的理论,设计工作的实际训练从而提高我们的独立的工作能力,巩固我们所学的知识,提高了我们的独立思考能力。在设计的过程中,我遇上了许多的问题,但是我没有放弃,在不明白的地方,及时的查阅材料,问老师,问同学,顺利地编写程序,仿真,焊接,调试。参考文献参考文献1 任丰原,黄海宁,林闯.无线传感器网络J.软件学报 2003,14(7).2 IAR Embedded Workbench 8051 HelpOL.http:/ Flash Programmer User ManualOL.http:/ Data SheetOL.http:/ 5 谭浩强.C 语言程序设计M.北京:清华大学出版社,199

19、9.6 高守玮,吴灿阳.Zigbee 技术实践教程M.北京:北京航空航天大学出版社,2009.67 李文仲,段朝玉等.Zigbee 无线网络技术入门与实战M.北京:北京航空航天大学出版社,20078杜丽敏,郭文成.ZigBee 技术在远程抄表系统中的应用J.单片机与嵌入式系统,2006(7).9赵景宏,李英凡,许纯信. ZigBee 技术简介J.电力系统通信,2006,27(165).10周游,方滨,王普.基于 ZigBee 技术的智能家居无线网络系统J.电子技术应用,2005(5).附录:附录: 附录一附录一 程序程序(1)发射模块主程序如下:#include #include #inclu

20、de #include 淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计第 10 页#include #include #include hal_mcu.h#include hal_button.h#include hal_rf.h#include util_lcd.h#include basic_rf.h/* CONSTANTS/ Application parameters#define RF_CHANNEL 25 / 2.4 GHz RF channel/ BasicRF address definitions#define PAN_ID 0 x2007#define

21、SWITCH_ADDR 0 x2520#define LIGHT_ADDR 0 xBEEF#define APP_PAYLOAD_LENGTH 1#define LIGHT_TOGGLE_CMD 0/ Application states#define IDLE 0#define SEND_CMD 1/ Application role#define NONE 0#define SWITCH 1#define LIGHT 2#define APP_MODES 2/* LOCAL VARIABLES淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计第 11 页static uin

22、t8 pTxDataAPP_PAYLOAD_LENGTH;static uint8 pRxDataAPP_PAYLOAD_LENGTH;static basicRfCfg_t basicRfConfig;/ Mode menustatic menuItem_t pMenuItems =#ifdef ASSY_EXP4618_CC2420 / Using Softbaugh 7-seg display L S , SWITCH, LIGHT , LIGHT#else / SRF04EB and SRF05EB Switch, SWITCH, Light, LIGHT#endif;static m

23、enu_t pMenu = pMenuItems, N_ITEMS(pMenuItems);#ifdef SECURITY_CCM/ Security keystatic uint8 key= 0 xc0, 0 xc1, 0 xc2, 0 xc3, 0 xc4, 0 xc5, 0 xc6, 0 xc7, 0 xc8, 0 xc9, 0 xca, 0 xcb, 0 xcc, 0 xcd, 0 xce, 0 xcf,;#endifstatic void appLight()淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计第 12 页 halLcdWriteLine(HAL_LCD

24、_LINE_1, W e B e e ); halLcdWriteLine(HAL_LCD_LINE_2, ZigBee CC2530 ); halLcdWriteLine(HAL_LCD_LINE_4, LIGHT );#ifdef ASSY_EXP4618_CC2420 halLcdClearLine(1); halLcdWriteSymbol(HAL_LCD_SYMBOL_RX, 1);#endif / Initialize BasicRF basicRfConfig.myAddr = LIGHT_ADDR; if(basicRfInit(&basicRfConfig)=FAIL

25、ED) HAL_ASSERT(FALSE); basicRfReceiveOn(); / Main loop while (TRUE) while(!basicRfPacketIsReady(); if(basicRfReceive(pRxData, APP_PAYLOAD_LENGTH, NULL)0) if(pRxData0 = LIGHT_TOGGLE_CMD) halLedToggle(1); static void appSwitch() halLcdWriteLine(HAL_LCD_LINE_1, W e B e e ); halLcdWriteLine(HAL_LCD_LINE

26、_2, ZigBee CC2530 );淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计第 13 页 halLcdWriteLine(HAL_LCD_LINE_4, SWITCH );#ifdef ASSY_EXP4618_CC2420 halLcdClearLine(1); halLcdWriteSymbol(HAL_LCD_SYMBOL_TX, 1);#endif / Initialize BasicRF basicRfConfig.myAddr = SWITCH_ADDR; if(basicRfInit(&basicRfConfig)=FAILED) HAL_A

27、SSERT(FALSE); pTxData0 = LIGHT_TOGGLE_CMD; / Keep Receiver off when not needed to save power basicRfReceiveOff(); / Main loop while (TRUE) if(halButtonPushed()=HAL_BUTTON_1)/*by boo basicRfSendPacket(LIGHT_ADDR, pTxData, APP_PAYLOAD_LENGTH); / Put MCU to sleep. It will wake up on joystick interrupt

28、halIntOff(); halMcuSetLowPowerMode(HAL_MCU_LPM_3); / Will turn on global / interrupt enable halIntOn(); 淮南师范学院电气信息工程学院 2015 届电子信息工程专业课程设计第 14 页void main(void) uint8 appMode = NONE; / Config basicRF basicRfConfig.panId = PAN_ID; basicRfConfig.channel = RF_CHANNEL; basicRfConfig.ackRequest = TRUE;#ifdef SECURITY_CCM basicRfConfig.securityKey = key; #endif / Initalise board peripherals halBoardInit(); halJoystickInit(); / Initalise hal_rf if(halRfInit()=FAILED) HAL_ASSERT(FALSE); / Indicate that device is powered halLedSet(2); /关闭 LED2 halLedSet(1); /关闭 LED1 /* /

温馨提示

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

评论

0/150

提交评论