基于ZigBee的无线红外防盗报警系统设计
3.1 人体红外监测模块
人体红外监测模块选用的传感器是热释电红外传感器,一般安装在天花板上,用来监测是否有人走动,进而判断是否有小偷入室行窃。热释电红外传感器能将检测到的人或动物的红外线转换成电信号输出,其原理为:当一些晶体受热时,在晶体两端会产生数量相等而符号相反的电荷,即热释电效应。人体都有恒定的体温,一般在37℃左右,会发出10μm左右特定波长的红外线。文中使用了型号为RE200B的红外传感器,配合红外热释电处理芯片BISS0001对信号进行采集和放大处理,再加少量外接元件构成被动式的热释电红外信号处理电路。人体红外监测模块的电路原理如图3所示,CC2430的P0.1端口通过一个电阻与BISS0001芯片的第2脚VO相连。当模块监测到有人体活动的时候,VO输出高电平,否则都为低电平。配置CC2430的P0.1口的IO外部中断功能,有上升沿脉冲来临的时候,外部中断唤醒,进行相应的数据处理,并将数据发给协调器。
3.2 下载器插槽
CC2430的程序必须借助特定的工具把程序从PC机上下载到CC2430的flash里面,文中使用IAR软件编译,编译完成后通过仿真器连接jtag接口下载进CC2430的flash里面。
3.3 串口电路
串口电路采用MAX3232芯片,+3.3 V供电。电路中的电容值在MAX3232芯片手册上为0.1μF。其中:4、5脚之间加10 nF贴片电容,2、6脚之间2个电容值为1μF。
3.4 整体硬件电路如
整体硬件电路如图4所示。
4 软件设计
4.1 软件开发平台
系统软件设计是在硬件设计的基础上进行的,良好的软件设计是实现系统功能的重要环节,也是提高系统性能的关键所在。节点设计基于通用性及便于开发的考虑,移植了TI公司的Z-Stack协议栈,其主要特点就是其兼容性,完全支持IEEE 802.15.4/ZigBee的CC2430片上系统解决方案。Z-Stack还支持丰富的新特性,如无线下载,可通过ZigBee网状网络(Mesh Network)下载节点更新。
本系统软件设计选用的开发平台是IAR集成开发平台。IAR Embedded Workbench(简称EW)的C/C++交叉编译器和调试器是当今世界最完整的和最容易使用的专业嵌入式应用开发上具。
TI/Chipcon公司在IEEE 802.15.4标准和ZigBee联盟所推出的ZigBee2006规范的基础上,发布了全功能的ZigBee2006协议栈,并通过了ZigBee联盟的认证。该协议栈全部用C语言编写,免费提供给用户,同时向后兼容。在协议栈内部嵌入了一个操作系统,用于对任务进行统一的调度。对于用户而言,只需要在应用层进行一些设计和改动,即可实现数据的发送、接收以及网络组建功能,构建功能完善、性能稳定的ZigBee无线网络。进行程序设计时,首先在协议栈应用层程序中添加相应的任务,然后运行任务即可处理。
Z-Stack采用操作系统的思想来构建,采用事件轮循机制,当各层初始化之后,系统进入低功耗模式,当事件发生时,唤醒系统,开始进入中断处理事件,结束后继续进入低功耗模式。如果同时有几个事件发生,判断优先级,逐次处理事件。这种软件构架可以极大地降级系统的功耗。
整个Z-stack的主要工作流程,大致分为系统启动,驱动初始化,OSAL初始化和启动,进入任务轮循几个阶段,系统流程图如图5所示。
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码