随着生活水平的不断提高,人们对家庭安全和舒适的要求越来越高。智能家居监控系统获得越来越广泛的应用。近来,随着嵌入式技术、网络技术和通信技术的发展,嵌入式系统的体积、成本、功耗都大大减少。针对以上情况,本文设计了一种低功耗、低成本、性能稳定的智能家居监控系统。
引言
随着生活水平的不断提高,人们对家庭安全和舒适的要求越来越高。
智能家居监控系统能够提供安全舒适,高效节能的人性智能化生活空间,能实时监测家庭或办公室中电器设备的运行、人员和财产安全等情况,故获得越来越广泛的应用。
目前市场上智能家居
监控系统能满足家庭生活要求,但其高昂的安装维护费用和复杂的系统操作,让很多用户望而却步。近来,随着嵌入式技术、网络技术和通信技术的发展,嵌入式系统的体积、成本、功耗都大大减少。针对以上情况,本文设计了一种低功耗、低成本、性能稳定的智能家居监控系统。
1 系统
方案
智能家居监控系统由远程控制端、中心控制器和室内节点子网构成,其功能为
安防报警、远程抄表、家电控制、手机远程监控和互联网远程监控。系统把ZigBee模块嵌入烟雾、煤气、温湿度、人体红外等传感器中,通过网络监控各传感器采集数据。若出现火情、燃煤气泄漏、外人非法入侵、家庭呼救等情况,ZigBee节点借助于无线网络,将采集到的信息,传送到智能家居中心控制器。中心控制器既是监控系统的核心控制部分,又充当网关的作用,将传输来的数据打包成网络数据流,通过3G网络和以太网实时传送到用户计算机、手机或者小区监控中心。用户也可以通过计算机和手机,远程登录智能家居监控系统Web服务器,实时查看家庭信息和控制家庭设备。
2 系统硬件设计
系统硬件设计框图如图2所示,主要由微控制器STM32F207、以太网模块DP83848、ZigBee模块JN5139、3G模块EM770、图像采集模块、电源管理模块和人机接口模块构成。
2.1 中心控制器
本系统选用意法半导体公司的STM32F207为中心控制器。该芯片基于专门用于高性能、低功耗、低成本、实时性嵌入式应用系统的ARM Cortex-M3内核,内部资源丰富,提供了多个USART、I2C、SPI、I/O接口并整合了全速USB OTG接口、以太网10/100MAC以及8~14位相机传感器并行接口,处理性能高达150 Dhrystone MIPS,内置多达128 KB~1MB的闪存和132 B的SRAM。该芯片能完成家庭内部网络各种不同通信协议之间的转换和信息共享,以及与外部通信网络之间的数据交换。作为智能家居监控信息平台的核心部分,它具有功耗小,可靠性好,性价比高的优点。
2.2 ZigBee节点
在智能家居监控系统中,ZigBee节点模块采用JENNIC公司的JN5139。该芯片嵌入到主控制器、信息家电、各种传感器中,将信息家电、门禁安防、三表等组成星形ZigBee网络。同时该芯片充当协调器和终端监控节点的角色,负责传输网络命令和数据、转发和管理终端监控节点之间的数据。该芯片将各终端节点的信息传输给主控制器,家庭出现异常时,将报警信息发给用户手机和小区管理终端;同时接收用户的控制信息,转发给相应的终端监控节点。监控终端节点负责对各子传感器节点进行数据的采集和传感器状态的控制,包括家庭内部网络中的门磁开关状态、红外对射探测器、火灾探测器、烟感和燃气泄露探测器数据等。
本监控系统采用的JN5139,是业界第一款与IEEE 802.15.4兼容的低功耗、低成本无线控制模块,集成了32位的RISE处理器,并且拥有丰富的模拟和数字外设,只需添加少量的外围元件即可完成该通信功能硬件的设计。该模块的数据传输和交换都是通过SPI总线完成的。
2.3 网络通信接口
STM32F207内嵌了一个以太网MAC,并有专用的DMA,实现内部数据的高速传输。而且支持默认的介质无关接口(MII)和精简的介质无关接口(RMII)两种工业标准的物理层接口,所以只需外接一片物理层收发器,就能完成以太网帧的接收和发送,实现网络通信。在该设计中采用DP83848C,它是一款功能全、鲁棒性好、功耗低、价格低的10/100Mb/s单路物理层(PHY)器件,通过配置AFIO_MAPR寄存器中的bit23,MII_ RMII_SEL来选择RMII,把与接口相连的信号线简化到7根,大大节约了成本。为了实现网络接口,采用了PULES的J0011型变压器与DP83848C收发差分线连接,其主要功能是转换电平并抑制高频干扰接入以太网以及防止烧坏元器件,实现带电插拔功能。J0011型变压器还集成了RJ-45接头,简化器件之间的连线,节省PCB板的空间,提高高频信号传输的可靠性。接口设计如图3所示。
2.4 图像采集模块
STM32F207内嵌8~14 b的CMOS相机传感器并行接口,可承受27 MB/s数据传输速度,支持连续和快照模式,并且有自动裁剪图像的功能。所以这里采用OV7670这款CMOS彩色/黑白图像传感器,通过逐行扫描的方式,完成图像的采集,而且STM32F207支持DMA,数据图像传输速度快,能够满足用户远程登陆Web服务器,通过Web浏览器视频查看家庭安全信息的要求。
2.5 3G模块
EM770是一款华为公司生产的WCDMA、M2M模块,支持UMTS 2 100/1 900/900/850和GPRS/GSM1 900/1 800/900/850频段,集成了高速USB接口,同时内置TCP/IP协议栈,支持WCDMA协议规定的标准AT指令集和华为扩展AT指令集,具有兼容性强、速率高、稳定性好的特点。
3 系统软件设计
软件设计主要包括操作系统的移植,嵌入式Web服务器的实现和系统程序流程设计。
3.1 操作系统的移植
μC/OS-Ⅱ免费公开源代码、是一种基于优先级的可抢占式的硬实时内核的实时操作多任务系统,它占用空间小、执行效率高、实时性能好和可扩展性强。
系统移植主要是处理与处理器相关的源文件,即os_cpu_c.c,os_cpu_a.asm,os_cpu.h。首先重新定义os_cpu.h文件中的主要包含编译器相关的数据类型堆栈类型以及几个宏定义和函数说明。其次编写os_cpu_c.c文件中10个函数,主要足初始化函数OSTask-StkInit(),然后在os_cpu_a.asm文件中编写与处理器相关的汇编函数OSstartHighRdy(),OSCtxSw(),OSIntetxsw以及临界处理函数OS_CPU_SR_Save,OS_CPU_SR_Restore。
3.2 Web服务器的实现
Web浏览器与Web服务器的交互是通过HTTP协议来实现的。HTTP协议基于TCP连接,在客户端和服务器之间采用请求/响应模式。传统TCP/IP的实现过于复杂,占用大量系统资源。因此.采用LwIP这种轻型(Light Weight)IP协议是非常理想的解决方案,它只需要几百字节的RAM和40 KB左右的ROM就可以运行,而且LwIP采用在同一个任务TCP/IP thread中实现所有协议,独立于操作系统内核之外。这种设计方法使LwIP非常方便移植到μC/OS-Ⅱ操作系统中,而且只需修改在src\arch目录下的与CPU或编译器相关的include文件以及与操作系统相关的sys.c和sys_arch.c两个主要文件,就可以完成LwIP的移植。
而对嵌入式Web服务器而言,要提供动态页面服务,则要为Web服务器构建公共网关接口(CGI),它是外部扩展应用程序与WWW服务器交互的一个标准接口。服务器端放入CGI程序,当收到用户的请求后,启动编好的应用程序,应用执行完后将动态数据发送到用户浏览器上。通过CGI可以提供许多静态的HTML网页无法实现的功能。
3.3 系统程序流程
系统程序流程如图4所示。从图4可知,系统上电初始化后,系统会根据智能家居中心控制器接收的数据,调用不同的处理程序。当系统监听到远程Web浏览器发来的控制请求数据时,系统将调用信息家电控制程序,数据处理完后,发给Web浏览器。当系统监听到是支持ZigBee协议的JN5139收发模块传输至中心控制器的数据时,系统解析数据并判断家中有突发事件后,会现场发出声光报警并驱动摄像头,通过3G网络以短信息或视频通话的方式通知到用户,或者向小区监控中心报警。
4 结语
本监控系统采用低功耗、性价比高的微控制器STM32F207作为智能家居监控核心,移植了μC/OS-Ⅱ实时操作系统和LwIP协议栈,通过3G技术以及构建的Web服务器实现了对家庭ZigBee网络节点的监控和报警。该系统具有成本低廉、性能稳定、用户操作方便、便于推广的优点,具有广阔的市场应用前景。