一个模拟智能家居系统的设计

2019-06-18 01:06何启扬张泽耿
科技资讯 2019年8期
关键词:无线通讯智能家居物联网

何启扬 张泽耿

摘  要:随着我国物联网的发展,智能家居也逐渐出现在普通居民生活中。针对智能家居的特点,设计了一套基于Arm11系列开发板为中心,Arduino Pro Mini为设备端,通过2.4G无线通信模块实现控制中心与家电设备端通信的智能家居系统。

关键词:物联网  无线通讯  智能家居

中图分类号:TP273.5                              文献标识码:A                          文章编号:1672-3791(2019)03(b)-0020-02

Abstract: With the development of Internet of Things in China, smart home has gradually appeared in the lives of ordinary residents. According to the characteristics of smart home, a smart home system based on ARM11 series development board is designed, Arduino Pro Mini is the device end, and the communication between control center and household appliances device end is realized by 2.4G wireless communication module.

Key Words: Internet of things; Wireless communication; Smart home

随着互联网技术的发展,人们想如果计算机能不借助人类的帮助,就获知物质世界中各种可以获取的信息,那就可以跟踪和计量那些物质,减少浪费和损失,而物联网的概念随之出现了。物联网现在包括智能家居、智能交通、智能机器人等,其中智能家居以住宅为平台,利用综合布线技术、网络通信技术、自动控制技术等,构建高效的住宅设施与家庭日程事务的管理系统,满足用户对家居的安全性、舒适性的需求。智能家居的前景广阔,潜在市场巨大,所以受到各大商家的关注。

1  系统结构设计

该系统分为3部分,即Arm开发板本地部分、手机Client部分、服务器部分。

(1)Arm開发板本地部分包括搭建了2.4G无线通信模块的安全系统、照明系统、空调系统,实现了对家庭环境的感知;还有Arm开发板控制中心,主要是传输、处理各种信息,如WiFi接收到的信息处理后再传输给服务器、Tcp接收到的信息处理后再发送给设备端。

(2)手机Client部分主要是为了用户可以远程监控住宅安全信息、家电信息,也可以远程操控家电,还有登录验证功能。

(3)服务器部分主要是记录用户登录信息,分析住宅家电信息,将信息转发至手机客户端,接收手机客户端的命令并将命令传至开发板控制中心。

2  系统硬件设计

该系统以ARM11处理器S3C6410的ok6410开发板作为控制中心,Ardunio Pro mini作为家电设备端控制芯片,再通过2.4G通信模块作为控制中心与设备端芯片的通讯渠道。

(1)门禁部分采用的是Z-Star可调焦摄像头、红外传感器、电锁。通过摄像头对用户脸部进行数据采集,再通过特征提取训练法生成人脸特征数据库。通过网络通信模块将人脸特征数据库下载到控制中心中,当用户靠近门禁系统时,红外传感器感应到有障碍物后输出信号,启动摄像头采集脸部数据,与控制中心中的数据库进行对比,若匹配成功则启动电锁控制模块,若失败则启动报警模块,通过蜂鸣器报警和短信通知用户。

(2)灯光部分是控制中心通过通信模块将命令发送到Ardunio芯片,进行LED灯的亮度、颜色、开关的控制。该系统用WSC2812LED全彩小灯进行试验。

(3)空调部分采用的是ybof2遥控器作为研究对象,通过对遥控器发送的RAW信号进行解码,解析出格力空调的编码格式,修改空调的状态后通过红外发射管将信号发送给空调,实现空调遥控器的制作,从而对空调的开关、温度、模式进行控制。

(4)燃气检测部分采用的是MQ-6模块。MQ-6可检测多种可燃性气体,当传感器所处的环境中存在可燃性气体时,传感器的电导率随可燃性气体浓度的增大而增大,将电导率的变化转换为与气体的浓度相对应的输出信号。当浓度超过预警界限时,通过通信模块发送警告信号通知用户。

3  系统软件设计

(1)该系统的门禁系统人脸识别算法采用的是OpenCV,OpenCV是Intel公司支持的开源计算机视觉库,从版本2.4开始,加入了一个类FaceRecognizer,使用它可以方便地进行人脸识别,目前支持3种算法,即Eigenfaces、Fisherfaces、LocalBinary,该系统采用的是Fisherfaces。

(2)灯光系统采用的是Adafruit_NeoPiexl库来实现对WS2812LED全彩小灯进行控制。将库文件下载后解压到Ardunio安装目录的libraries目录下。

①Adafruit_NeoPixel::Color(red, greed, blue):灯光的颜色是由三色组成的,该函数返回字节数为32位的由red、greed、blue表示的灯光色彩的值,在这里可以对其进行0~255的任意值设置。

②Adafruit_NeoPixel::setPixelColor(n, color):该函数的作用是将第n个灯的颜色设置为color表示的颜色。该函数只是设置,不是将灯的颜色显示。

③Adafruit_NeoPixel::show():该函数是将用setPixelColor设置灯的颜色进行一次输出。如果输出过快会出现灯光显示跳跃的情况,在输出的时候需要适当加一个小延时。

对于库的使用需要新定义一个新的对象,它的构造函数的格式如下:Adafruit_NeoPixel(LedNumber, LED_Pin, NEO_GRB + NEO_KHZ800),其中LedNumbers代表的是控制全彩LED灯的颗粒数,LED_Pin表示的是LED的通讯引脚和开发板连接的引脚,NEO_GRB+NEO_KHZ800表示的是与开发板所连的LED的具体类型,该值跟LED的型号有关。

(3)空调控制系统采用的是IRremote库来进行红外的接收和发送。引用IRremote文件,构造一个新的类IRsend,调用类中的sendRaw函数发送空调通信数据转换为raw的数据。sendRaw的数据格式为sendRaw(SendRawBuff,BUff_count,pow),其中pow为红外线的发送频率,一般有32、38、40,该系统中使用的是38。这些在Loop函数中调用类的decode函数监听是否有数据到达,输出接受到的数据。再调用类的resume函数监听红外接收头是否有红外信号到达,当有红外信号到达时,resume将接收到的信号转为raw数据并存储在类中定义的数组中。

4  系统通信设计

该系统采用的是JDY-40 2.4G无线通信模块,它拥有128个工作频道,通过设置不同模块的无线ID、设备ID和频道,在一定范围内这3个参数相同的模块就可以互相通信,设备端与开发板之间就是以这种形式通信。模塊通信距离可以达到120m。各类传感器上搭建无线通信模块,将感知到的信息发送给开发板中心;还有将服务器的命令经过开发板中心的无线通信模块发送到设备端控制。

服务器与开发板之间通过TCP连接,稳定传输信息,命令。服务器与手机Client之间是以Web/Sever形式连接。

5  结语

随着物联网的飞速发展,智能家居所具有的价值也被越来越多商家所挖掘出来。该文设计了一套基于Arm11系列开发板为中心,Arduino Pro Mini为设备端,通过2.4G无线通信模块实现控制中心与家电设备端通信的智能家居系统。

参考文献

[1] 韦东山.嵌入式Linux应用开发完全手册[M].北京:人民邮电出版社,2008.

[2] 倪云峰.单片机原理与应用[M].西安:西安电子科技大学出版社,2009.

[3] 张晓萍.智能家居控制系统的设计与实现[D].江西财经大学,2016.

[4] 李博涵,李镔洋,王庆全.嵌入式Linux设备驱动程序开发分析[J].计算机光盘软件与应用,2013(11):111-112.

[5] 陈任,余证,梁金瑶.物联网的智能家居发展机遇和挑战[J].智能建筑与城市信息,2010(5):21-23.

[6] 王小荣,龚小斌.无线技术在智能家居中的应用[J].智能建筑电气技术,2009(3):97-98.

[7] 竹林,祝忠明.嵌入式Linux系统的研究及其在串口通信中的应用[J].中国新通信,2008(1):61-64.

[8] 李明,康静秋,贾智平.嵌入式TCP/IP协议栈的研究与开发[J].计算机工程与应用,2002(16):118-121.

[9] 黄岩.基于Linux内核的多线程技术的研究[J].科技传播 2012(5):142.

[10] 孙海彬,傅谦,徐良贤.Linux内核模块的实现机制[J].微电子学与计算机,2001(11):9-11.

猜你喜欢
无线通讯智能家居物联网
智能家居行业仍无“独角兽”
智能家居产业现状和发展趋势
智能家居 走向星辰大海
基于单片机的水产养殖无线盐度检测系统设计
基于高职院校物联网技术应用人才培养的思考分析
中国或成“物联网”领军者
智能家居未来感初体验
家香
无线通讯在堆取料机控制中的应用