基于物联网技术的家居控制与安防系统

2015-01-27 06:29蔡满军殷鹏辉
自动化与仪表 2015年10期
关键词:嵌入式网页红外

蔡满军,殷鹏辉

(燕山大学 河北省工业计算机控制工程重点实验室,秦皇岛 066004)

物联网是以感知为目的,实现“物物相联”的全新网络,被认为是继互联网后最重大的科技创新。该技术的蓬勃发展,带动了嵌入式微控制器、无线传感网络和移动通信技术的革新。将物联网技术与传统家居控制系统相结合,实现对传统技术的升级改造,构建全面的智能控制系统,已成为全球科技界瞩目的焦点[1]。

目前,国内智能家居产品种类繁多,但多数产品功能单一、误报率高、安装复杂;进口产品虽系统集成度高、功能全面,但价格昂贵,极大地限制了该领域产品的普及。因此,融合众多成熟的技术,研发一套价格低廉、功能实用、智能化程度高的家居控制系统,定会获得较高的市场认可度。

系统利用物联网技术中传感、互联、智能控制等特点,搭配多传感器融合技术,实现以嵌入式设备为控制中心,系统各部信号无线传输,完成家居控制及安防监测的功能;并针对市面上多数家居控制系统的弊端,提出稳定可靠的解决方案。

1 总体结构设计

基于物联网的家居控制与安防系统总体结构如图1所示,系统由意法半导体公司的STM32F103RBT6作为主控芯片,它是具有ARM Contex-M3内核的32位微处理器,拥有丰富的外设接口和较高的集成度,多用来做各类嵌入式设备的主控制器[2];构建Web服务器是将精简TCP/IP协议栈移植到主控芯片,调用内部Web Server功能,实现HTTP网页的编写及显示;系统各信号的采集则是由热释电、摄像头、红外遥控及环境监测传感器获取信息后,经无线网络汇总到主控单元分析所实现的。

图1 系统总体结构Fig.1 Overall structure of the system

通过架设嵌入式Web服务器,用户可远程登录网页控制摄像头拍照;也可输入命令控制红外遥控,实现对空调的开启及温度的调节;热释电红外传感器可在盗窃人员入室时,捕捉其动作,触发摄像头拍照,并将照片上传网络,同时以短信方式告知,用户即可通过互联网查看家中动态信息。同时,系统预留有各传感器接口,可扩充更多传感功能。

2 系统硬件设计

系统的硬件设备主要包括嵌入式主控板、热释电传感器与摄像头监控单元、红外遥控单元、无线通信单元。各传感器单元采集的信息经主控芯片处理后,实现各功能的响应。

2.1 热释电传感器与摄像头监控单元

热释电红外传感器由菲涅尔透镜和热释电元件组成,用于探测人体所辐射红外能量的变化。通过菲涅尔透镜将能量聚集到感应探头上,由热释电元件接收,能量的吸收使该元件失去电荷平衡,并向外释放多余电荷,电荷变化将以电流的形式输出,后续电路经检测处理即可响应,以完成被动式人体移动检测的目的[3]。

系统主控单元接收热释电信号响应后,触发OV7725摄像头拍照,并将图片信息以JPEG数据流的形式通过STM32的FSMC(静态存储器控制器)存储到相应记忆单元,等待信息的读取。同时,系统将该异常消息通过短信的形式经GSM模块发送给用户,以通知用户及时查看家中动态。

2.2 红外遥控单元

红外遥控单元由红外发射管、38 kHz载波调制电路及后续控制电路组成,如图2所示。其功能是模拟家电遥控器,实现远程遥控。系统以某品牌柜式空调为研究对象,将其遥控器的红外编码通过红外接收管获取,并在示波器上采集、记录,最终得出以下数据。

图2 红外控制电路Fig.2 Infrared control circuit

遥控按键的红外编码格式包括引导码、用户码、数据码和数据反码,编码总共占32位。其中,用户码用来区分不同的产品;数据码用来实现不同的控制命令;数据反码为数据码反相后的编码,用于数据的纠错[4]。

编码中逻辑位的定义也是区分编码格式的重要指标。该遥控采用高电平与低电平组合的形式表示一个逻辑位,如图3所示。逻辑0与逻辑1的区别在于低电平的时长不同,而高电平的时长往往是一致的。

图3 红外编码逻辑位定义Fig.3 Definition of infrared coding logic

通过对编码的采集与分析,将各红外编码数据写入主控芯片,当系统收到用户的控制命令时,会把对应编码数据通过红外发射单元发给空调,实现远程启动和调节温度的功能。

2.3 无线通信单元nRF24L01

nRF24L01是一款在2.4GHz ISM频段通信的射频收发芯片,嵌有基带传输协议,可提供高达2 Mb/s的传输速率。芯片内部的Enhanced ShockBrust模式支持自动应答和数据重发功能,既可减少数据丢包率,又无需增加外部控制器负担。

芯片通过SPI接口与微处理器连接,此接口可完成初始化设置和收发数据的工作。系统中STM32片上集成SPI控制器接口,可方便地通过软件设置,实现与nRF24L01的通信。无线通信模块设计原理如图4所示。

图4 nRF24L01控制电路Fig.4 nRF24L01 control circuit

在其外围电路的配置中,主要考虑高频旁路电容的选取和功放天线的设计:根据高频信号的谐振频率,一般选用0.1 μF和0.01 μF的旁路电容;在天线的设计上则采用蛇形总线的形式保证通信质量。

3 系统软件设计

系统的软件程序设计主要包括两大部分,一是本地监测传感器控制部分,即由系统外部传感器触发中断,执行中断控制命令;二是利用μIP协议栈搭建Web服务器实现Internet网页远程控制,即通过控制STM32内嵌Web服务器中的HTTP网页选项信息,实现对远端系统的控制。

3.1 本地传感器监测控制

该部分程序流程以本地监测传感器控制为主,实现盗窃人员图像信息的自动采集、上传,以及空调的红外控制等功能。

当家中有盗窃人员进入时,热释电传感器会检测到人体移动,随即触发脉冲信号,系统产生相应的外部中断,控制OV7725摄像头拍照,照片信息以JPEG数据流形式存储在相应区域,其数据结构经处理后,上传至STM32内嵌的网页中,并通过短信形式告知用户,方便用户及时查看家中动态,如图5所示。

图5 传感器控制流程图Fig.5 Flow chart of sensor control

同时,用户还能设定多个固定的短信命令,发送空调控制口令。系统通过GSM模块接收短信后,执行相应中断函数,并分析短信内容,以确定控制指令,最终由红外发射管将对应控制命令的红外编码发射给空调,实现空调的远程开关以及温度控制功能。

3.2 嵌入式Web服务器实现Internet远程控制

本系统采用的嵌入式Web服务器是通过μIP协议栈内部自带的Web Server功能结合DM9000网口驱动搭建实现的,用户可通过访问系统HTTP网页远程控制家中设备。

μIP协议栈是针对微控制器设计的精简型TCP/IP协议栈。为减少代码占用量和对微控制器RAM容量的要求,μIP着重设计并实现了网络通信必要的TCP、IP、ICMP协议机制;数据包收发过程共用同一全局缓冲区uip_buf实现,免去了内存的动态分配[5];同时,为响应基于事件驱动的应用程序,μIP采用轮询机制处理各并发连接的网络事件,并实现与底层硬件驱动和上层应用程序的通讯。

μIP协议栈在与底层硬件驱动的通信中,主要依靠3个函数实现。uip_init()用于初始化网络通信的监听端口,并在初始时刻关闭所有连接事件。此后,系统开启轮询机制,采用STM32的SysTick定时器为uip_periodic()函数提供基准,驱动μIP内部需要时钟的事件。本设计每0.5 s调用一次TCP轮询程序,以检测是否有连接事件发生。当DM9000驱动程序接收到数据包时,将其放入缓冲区uip_buf中,数据长度由uip_len确定,同时会调用uip_input()函数,它会根据包头协议处理数据,分析数据传达的内容,并最终交给STM32执行指令。当uip_input()返回驱动程序时,输出数据包也被放在uip_buf中,数据大小赋给uip_len,若uip_len不为0,说明有数据要发送,此时调用DM9000的发送函数将数据包发送到网络中。DM9000数据驱动流程如图6所示。

图6 DM9000数据驱动流程Fig.6 Flow chart of DM9000 data drive

μIP协议栈在与上层应用程序的通信中,系统需要实现Web Server功能,并能通过HTTP网页远程访问STM32主设备,即应用层要实现HTTP协议。该协议采用C/S模式,由客户端发送请求,服务器端实现应答,然后以Web页面形式返回给客户端[6]。本设计在Web页面将控制摄像头和空调温度调节命令的请求发送给服务器端,也就是远端STM32主机,STM32执行相应程序后,可远程控制空调,也可将照片数据回传到页面上,实现动态交互功能。具体实现过程如图7所示。μIP协议栈首先将宏UIP_APPCALL关联到http_call()函数,并调用uip_listen()函数开启80端口监听请求。当客户端有连接请求时,向其分配连接项,并等待发送的数据请求。服务器端在接收数据请求后,经内容解析,将响应数据以网页形式回传到客户端,完成信息交互。

图7 Web服务器软件实现流程Fig.7 Software realization procedure of Web server

4 系统实际测试

系统设计完成后,首先将硬件电路及模块焊接组装,如图8所示,并对各功能进行实际测试。通过DM9000网口驱动器将设备与PC机连接,设置网络IP地址,访问设备。其次,在CMD命令行程序中输入“ping 192.168.1.10”以测试设备与网络的端对端连接状况,当显示无数据包丢失时,证明STM32主机已成功连接到网络。最后,打开浏览器,在地址栏输入“192.168.1.10”,STM32主机中嵌入的 Web网页则显示在窗口中,如图9所示。该网页可实现拍照、开关灯、控制空调状态和调节温度的功能。随后,又模拟了盗窃分子入室的情况。测试证明,系统短信报警及时可靠、图片清晰、上传速度快;系统各控制功能达到预期效果,无线传输数据快速、稳定。

图8 系统硬件电路Fig.8 System hardware circuit

图9 系统Web网页Fig.9 System Web page

5 结语

系统在家居智能控制和安防监控方面达到预期要求。其中,热释电传感器触发的摄像头监控、远程红外遥控功能具有较高的创新实用性。除此之外,系统还可加设环境探测传感器,以获取更多传感信息,完善智能控制系统的感知、互联功能。

[1]申斌,张桂青,汪明.基于物联网的智能家居设计与实现[J].自动化与仪表,2013,28(2):6-10.

[2]宋俊杰,宋涛,蔡汉锡.基于WAP推送技术的远程仓库安防系统[J].仪表技术与传感器,2013(12):120-121,124.

[3]宋耀华,王梅霞.基于物联网技术的宿舍安防系统设计[J].机械与电子,2013(5):75-78.

[4]李琳.基于ARM11的智能遥控终端设计[J].自动化与仪表,2014,29(4):57-60.

[5]衷卫声,施忠华,刘禄仁.嵌入式Web Server在远程数据采集系统中的应用[J].仪表技术与传感器,2012(9):103-104,110.

[6]张勇,朱志红,田茂胜.基于μIP协议栈的嵌入式Web服务器的实现[J].微型机与应用,2011,30(4):59-61.

猜你喜欢
嵌入式网页红外
网红外卖
Focal&Naim同框发布1000系列嵌入式扬声器及全新Uniti Atmos流媒体一体机
闪亮的中国红外『芯』
基于HTML5与CSS3的网页设计技术研究
8路红外遥控电路
TS系列红外传感器在嵌入式控制系统中的应用
嵌入式PLC的设计与研究
基于CSS的网页导航栏的设计
基于HTML5静态网页设计
搭建基于Qt的嵌入式开发平台