APP下载

ZigBee及GPRS模块的智能家居系统设计*

2014-09-06韩进杨颖超秦宏超刘文武

单片机与嵌入式系统应用 2014年5期
关键词:网关家居人脸

韩进,杨颖超,秦宏超,刘文武

(山东科技大学 信息科学与工程学院,青岛 266590)



ZigBee及GPRS模块的智能家居系统设计*

韩进,杨颖超,秦宏超,刘文武

(山东科技大学 信息科学与工程学院,青岛 266590)

基于ZigBee、智能识别及GPRS技术,以三星公司S3C6440为核心芯片,利用S3C6440核心板模块、ZigBee模块及GPRS模块设计了一套功能较为完善的智能家居控制系统。本系统主要实现人脸智能识别门禁系统、室内各种环境参数的检测、GPRS短信通知及局域网异地控制等功能。系统经过调试及优化,能够满足普通住户对智能家居的需求,达到了预期设计目标。

嵌入式技术;智能识别;智能家居;ZigBee;GPRS

引 言

现代家居越来越追求高效、便捷、智能理念,不仅仅表现在物理层面上的生存空间,更表现为追求安全、舒适、方便、智能的生活环境。这使得智能家居系统成为一种强烈的需求。人们越来越重视智能家居系统,家居智能化是大势所趋。在这种趋势下,本文给出了一种基于ZigBee、智能识别及GPRS技术的嵌入式智能家居系统方案[1]。

1 系统方案

本文设计完成的智能家居管理系统为了完成既定的人脸智能识别门禁系统、室内各种环境参数的检测、GPRS短信通知及局域网异地控制等功能,在家庭组网技术中采用具有近距离、高安全性、低复杂度、低功耗及低成本优点的ZigBee技术[2]。在远程网络控制技术中采用成本低、可靠性高、性能优良的GPRS技术。利用这两种技术,完全可以对智能家居进行近程及远程控制,提高了智能家居管理系统的实用性。

本文完成的智能识别家居控制系统是以嵌入式技术及ZigBee技术为基础,综合Internet网络通信技术、GPRS无线通信建立起来的智能家居系统。系统框图如图1所示。

图1 系统框图

2 系统设计

2.1 家庭控制子网组建

2.1.1 家居节点

在智能家居系统中,家居主节点作为协调器,处于ZigBee网络的最上层,完成保证家居设备节点之间数据信息传输及节点控制等功能,完成的功能相对复杂,这里采用全能型设备。

ZigBee模块作为家居设备节点,在各设备节点之间组成网络,来完成检测各种室内环境参数,进行信号的接收及发送,以及对数据进行处理等功能。用于家居设备节点的ZigBee模块分别完成温度湿度检测、烟雾浓度检测、门磁模拟、红外对射检测等功能。根据这些功能,可以把各个ZigBee模块设计为温度湿度检测设备节点、烟雾浓度检测节点及报警信号采集节点等家居设备节点。

家居节点拓扑结构如图2所示。

图2 家居节点拓扑结构图

2.1.2 子网通信协议

家居设备节点和家居主节点之间必须制定统一的通信协议,用以识别设备之间发送的数据所包含的信息。家居主节点对家居设备节点的操作主要有查看设备节点的状态及对设备节点进行功能性的操作等。本次智能识别家居控制系统使用的ZigBee子网通信协议使用的是ZigBee模块中默认的子网通信协议。

2.2 家庭网关

2.2.1 家庭网关的结构和功能

家庭控制网络需要家庭网关[3]来与外界进行信息交换,同时对家中设备进行远程控制及管理。家庭控制网络必须通过家庭网关才能与外界网络进行连接,才能实现远程控制。家庭网关应具备协议转换及提供远程控制接口的功能。

家庭网关在本智能识别家居控制系统中充当网络接口单元的作用,既可以与家庭内部子网的设备进行直接通信,还能与外部Internet进行直接连接。

2.2.2 家庭网关软件

家庭网关软件系统设计主要分为用户界面和程序模块两部分。

用户界面设计主要体现在智能家居主控界面的设计。智能家居主控界面使用Qt来进行开发制作。Qt既可以开发GUI程序,也可以开发非GUI程序。良好的封装机制、signals/slots安全类型、丰富的应用程序编程接口等优势,使得用户开发变得非常方便快捷。

程序模块主要完成对整个系统所用功能的模块划分及实现,并为用户界面提供接口支持。这样的划模块设计使得整个系统具有更强的扩展性和更清晰的结构。本智能识别家居控制系统所涉及的程序模块的编写,是由Qt在进行智能家居主控界面设计时自动生成程序模块主函数。

2.3 人脸识别模块设计

在本智能识别家居控制系统中,智能识别主要体现在采用先进的人脸识别机制的门禁安防系统。设计中,使用OpenCV来实现人脸识别的功能。

2.3.1 OpenCV项目配置及文件说明

(1) 相关项目及UI配置

对Qt进行相关的项目配置,指定相关库文件目录,利用Qt软件来制作基于OpenCV的智能门禁系统的UI界面。在UI人机交互界面上添加人脸显示区域、显示系统中存入人脸图像的区域及对系统中的存储的人脸信息进行相关操作的按键,如加入、删除、上移、下移等,完成UI界面的制作。

(2) 核心代码编写

本文设计的智能识别人脸门禁系统中的人脸识别功能是以人脸信息为基础来完成的[4]。编码过程中最核心的部分为添加及删除授权人的人脸信息的相关代码的编写。

添加人脸按键及删除人脸按键事件的代码如下:

void MainWidget::on_pushButton_Up_clicked(){

QListWidgetItem *item= listWidget->currentItem();

if(item){

int id=item->text().toInt();

if(id==1) return;

QFile::rename(QString("data/%1.pgm").arg(id),QString("data/tmp.pgm"));

QFile::rename(QString("data/%1.pgm").arg(id-1),QString("data/%1.pgm").arg(id));

QFile::rename(QString("data/tmp.pgm"),QString("data/%1.pgm").arg(id-1));

fresh();

}

}

void MainWidget::on_pushButton_Down_clicked(){

QListWidgetItem *item= listWidget->currentItem();

if(item){

int id=item->text().toInt();

if(id==faceNum) return;

QFile::rename(QString("data/%1.pgm").arg(id),QString("data/tmp.pgm"));

QFile::rename(QString("data/tmp.pgm"),QString("data/%1.pgm").arg(id+1));

fresh();

}

}

2.3.2 OpenCV在ARM上的移植

在ARM上移植OpenCV需要执行以下步骤[5]。OpenCV的移植环境为PC机系统Ubuntu10.10。交叉编译工具为arm-linux-gcc 4.5.1。对OpenCV压缩包进行解压,转到OpenCV目录,进行相关配置,然后对其进行编译安装。将相关库文件移植到嵌入式芯片中,测试移植是否成功。

OpenCV在开发板上移植成功后即可完成利用摄像头进行人脸识别的功能。实现了本智能识别家居系统的智能识别功能。

2013年11月,习近平总书记首次提出“扶贫要精准扶贫”[1],指出“扶贫要实事求是,因地制宜。要精准扶贫,切忌喊口号,也不要定好高骛远的目标”。2018年3月,李克强总理在政府工作报告再次强调了要加大精准扶贫的力度。2015年7月,在国务院印发的《关于积极推进“互联网+”行动的指导意见》中,“互联网+”现代农业作为11个方面的具体行动之一提了出来。将现代信息技术引入农业,大力发展智能农业、生态农业,转变传统农业生产方式、运作模式和销售模式,积极探索“互联网+”现代农业的有效途径,激发内部活力,实施精准扶贫,实现精准脱贫。

2.4 GPRS模块设计

GPRS[6]在智能家居安防系统中在如下情况下将会向用户发送短消息:如果家里有安全隐患时,需通过GPRS网络向用户发送短信,以便用户及时处理。本文根据相关ARM体系结构进行编程[7]。

GPRS模块的主要软件编程如下:

void gprs_msg(char *number, int num){

printf("*******************gprs_msg start write sensor:%d***************** ",num);

tty_writecmd(gprs_fd, "AT", strlen("AT"));

tty_writecmd(gprs_fd, "AT+CMGF=1", strlen("AT+CMGF=1"));

//发送修改字符集命令

tty_write(gprs_fd, "AT+CMGS=", strlen("AT+CMGS=")); //发送发短信命令

tty_write(gprs_fd, """, strlen("""));

tty_write(gprs_fd, number, 11);

tty_write(gprs_fd, """, strlen("""));

tty_write(gprs_fd, "; ", strlen("; "));

sensor=num;

}

void gprs_baud(char *baud,int num){

tty_write(gprs_fd, "AT+IPR=", strlen("AT+IPR="));

tty_writecmd(gprs_fd, baud, strlen(baud) );

usleep(200000);

}

3 调试结果

经过一系列软硬件设计及软件调试,基于S3C6440嵌入式芯片及外部模块电路的智能识别家居控制系统设计完成,并较好地实现了既定的目标。具体的调试结果如下。

外部模块各ZigBee节点信息如图3所示;智能家居主控界面如图4示。

图3 ZigBee节点信息

图4 智能家居主控界面

人脸识别通过时,智能家居相关功能激活,如图5所示;人脸识别未通过时,智能家居的相关功能未激活,如图6所示。

图5 智能家居功能激活界面

图6 智能家居功能未激活界面

局域网异地控制客户端如图7所示。

Intelligent Home System Design Based on ZigBee and GPRS Module

Han Jin, Yang Yingchao, Qin Hongchao, Liu Wenwu

(School of Information Science and Engineering, Shandong University of Science and Technology, Qingdao 266590,China)

Based on ZigBee, intelligent identification and GPRS technology, Samsung S3C6440 chip as the core chip, using S3C6440 core board module, ZigBee module and GPRS module, a set of relatively complete intelligent home control system is designed and implemented. This system mainly completes face intelligent identification entrance guard system, all sorts of indoor environmental parameter detection, GPRS SMS and LAN long-distance control and other functions. After debugging and optimization, system can meet the needs of ordinary residents of smart home, achieving the desired design goal.

embedded technology; intelligent recognition; intelligent household; ZigBee; GPRS

* 国家自然科学基金(No.41072212);青岛经济技术开发区重点科技发展计划项目(2013-1-62);山东科技大学研究生教育创新计划(KDYC13012)。

TP273

A

猜你喜欢

网关家居人脸
打造日常家居“氛围感”
有特点的人脸
一起学画人脸
信号系统网关设备的优化
台北家居
三国漫——人脸解锁
LTE Small Cell网关及虚拟网关技术研究
应对气候变化需要打通“网关”
长得象人脸的十种动物
一种实时高效的伺服控制网关设计