基于WiFi的家电智能控制系统研究
2015-07-02南京娅
武 一,南京娅,刘 排
(河北工业大学 信息工程学院,天津 300401)
基于WiFi的家电智能控制系统研究
武 一,南京娅,刘 排
(河北工业大学 信息工程学院,天津 300401)
针对家电智能化和网络化的发展,各种基于WiFi功能的智能产品在人们生活中广泛应用,移动智能控制终端在能家居中发展迅猛。结合Android操作系统和家电控制原理,利用高速率串口/WiFi模块,提出了一种智能手机通过WiFi控制空调的解决方案,并对整个控制系统做了仿真与测试,结果表明该方法具有可行性和稳定性。
Android;家电控制;WiFi;语音识别
随着数字家庭和智能家居产业的发展,家用电器也开始革新。TCL网络电视、Bose家用WiFi音响、Haier天樽空调等网络家电已经渐渐应用到人们的日常生活中。
WiFi网络“热点”已经成为家庭、公共场所等必配设施。针对WiFi无须布线,具有通用性、灵活性、成熟性等优势,主宰家庭中短距离无线应用,WiFi终端产品也日益丰富,用户可以充分感受无线网络为家用电器带来的便捷[1]。
目前,智能手机在人们手中不再只是个通信工具,已经与人们的日常生活紧密联系在一起,演变成为多功能智能终端。如三星公司生产的智能手机和智能电视机互相关联,实现对三星智能电视的遥控;通过App程序也可以将平板PC或者手机当做电视机的附屏,实现其画面和电视屏幕的同步,实现了三屏融合。在智能家居中智能手机作为主要的控制平台已是大势所趋。
本文结合智能家电控制的研究现状,提出了一种Android手机通过WiFi控制家电设备的解决方案,以空调为例,只要空调与手机同处于家庭无线局域网内就可以实现相互通信。让智能手机取代遥控器,避免了红外遥控器在距离和方向方面的局限,使传统家电真正成为网络家电,使人们的生活智能化。
1 系统总体设计
本文主要研究的是基于Android的智能家电控制系统设计。主要以空调作为控制对象,以Android系统智能手机为操作控制平台,通过WiFi传输控制命令和数据信息,实现空调的开/关、模式转换、温度设定、语音控制等功能,达到室内温度调节的目的。
系统包括手机客户端控制界面设计、手机与WiFi模块通信、串口/WiFi模块配置、空调温度调节等4大模块。系统的总体架构如图1所示。
2 硬件系统的设计
中央控制芯片选择智能家居常用的CC2530芯片,CC2530集成了高性能和低功耗的 8051微控制器,提供了101 dB的链路质量,128 kbyte的系统内可编程闪存,优秀的接收器灵敏度和抗干扰性,指令执行速度比标准8051快。
图1 系统总体架构
温湿度传感器SHT10,是一款响应时间短、功耗低、精度高的传感器,具有稳定性和易使用性。空气清洁度传感器TGS2600,功耗低、对气态空气污染物有较高的灵敏度。
家电智能化主要体现在家电可以随着周围环境的改变自动做出响应,不需要人为干预。本文设计理念也体现了这一点,根据温湿度传感器、空气质量传感器采集的数据经算法分析启动空调器相应的功能,开启智能化模式。硬件设计如图2所示。
图2 硬件设计框架图
核心控制器件CC2530接收来自温度传感器SHT10采集的温度值,与手机发来的设定值进行比较,通过PID控制器[2]改变电机功率实现温度调节,采集空气清洁度传感器TGS2600的数据,根据空气质量的好坏自动改变风机转速,完成空气质量的调节。
CC2530通过串口接收和发送数据,CC2530解析串口接收到的控制命令,实现启动/关闭继电器、工作模式转换、设定温度改变等操作。具体过程如图3所示。
HLK-RM04串口转WiFi模块是连接家电设备核心器件与安卓手机的桥梁,设备通过串口线与HLK-RM04模块相连,对HLK-RM04模块进行相应的AT指令配置,实现通过WiFi网络发送和接收的数据。具体如下:
图3 硬件系统流程图
对WiFi模块进行静态IP地址和端口号配置,使之连接上家庭无线路由器,手机和WiFi模块同处于一个无线局域网内,智能手机就能实现与之通信,发送控制命令和接收数据信息。这种模式为实现家电之间组网与互联提供了条件。
3 手机客户端的设计
本文实现了智能手机实现遥控器的功能,客户端的设计主要包括空调开关键、温度设定、模式转换、定时开关、语音控制、网络通信等功能。
实现手机与底层交互通信是本文的研究重点。UDP是基于消息传输的,具有传输速度快等优点[3],适合传输数据少、对可靠性要求不高的应用环境。家用电器的控制信息数据量小,因此本文采用简单的面向数据报的UDP协议。要实现socket套接字这个接口在网络层进行数据通信,就必须借助DatagramSocket和DatagramPacket两个类。DatagramSock⁃et基于UDP协议,用于在两端点之间接收和发送数据报;DatagramPacket用于存放通信数据并决定数据发送目的地的数据报。要实现Socket通信,需绑定通信对象的IP地址和端口号。
本文实现手机与WiFi模块之间的通信需确定双方在同一无线局域网内,并与WiFi模块配置好的IP地址和端口号相匹配[4-5]。
//首先创建一个DatagramSocket对象
DatagramSocket socket=new DatagramSocket(49332);
DatagramPacket packet=newDatagramPacket(data,data.length,serverAddress,49332);
//serverAddress为WiFi模块IP地址。
利用socket.send(packet)函数发送数据报,主要是空调的控制命令。本文主要是接收室内温湿度和空气质量量化数据,利用socket.receive(packet)接收数据报,并将数据显示在UI界面上,但Android禁止其他子线程更新由UI thread创建的试图,所以需要通过消息队列(Message Queue)实现线程间的信息交换,通过handleMessage(Message msg)函数接收和处理消息[6],从而完成更新接收数据的界面显示。
具体手机客户端Socket通信如图4所示。
图4 socket通信流程图
语音识别的宗旨是最大限度地改善人机交互的便捷性。本文支持在线语音,但Google提供的语音搜索API需上传至Google云端获取声音数据,这种语音识别正确率高但容易受网络环境的影响,容易导致语音识别用时过长或失败。
所以本文增设了离线语音识别功能,pocketsphinx[7]是最新的适用于嵌入式设备上的语言识别系统的源代码。包括字典文件和声音模型文件,程序先将输入的声音和声音模型文件对比,生成音节编码,再将音节编码在字典中查找,返回最后的字符结果。由于pocketsphinx是C语言源代码,需要cygwin软件搭建一个在Windows平台上运行的unix模拟环境,这样NDK才能编译C、C++代码,将C程序封装成Java链接库的.so文件,从而完成在Android程序内调用pocket⁃sphinx,实现离线语音识别。
4 系统仿真结果
本文在完成设计后,经测试达到了预期结果。利用CC2530及外部设备基本模拟了空调的工作机理。液晶显示屏显示当前室内温度、湿度、空气质量以及工作模式,如图5所示,用户界面简洁直观、操作方便,能够改变空调的设定温度,实时获取室内湿度值和空气质量,在控制界面的顶端显示当前空调的开关状态、风速、工作模式,如图6所示,语音控制准确率高,整个系统稳定性好,手机控制几乎没有延时,较红外遥控器没有方向和距离上的约束。
图5 CC2530及其外设(照片)
图6 空调控制界面(截图)
5 总结
本文针对整体设计架构和控制系统做了详细分析,包括空调根据采集数据的变化实现智能控制、手机客户端界面的设计,实现了空调通信及离线语音控制等。测试结果表明本文研究方法的可行性,较传统红外遥控器更为方便、智能。借助家庭现有的无线网络,以WiFi作为无线传输媒介,带有WiFi模块的家电可以组网,产生互联,一个手机就可以充当所有家电的遥控器,为家电进入互联网时代奠定了基础。
[1] 陈刚.基于IEEE802_15_4e的智能家居家电控制系统的实现[J].电视技术,2012,36(24):23-26.
[2]刘迪.基于数字PID和89C52单片机的温度控制系统[J].电子设计工程,2010,18(4):28-30.
[3] 陈莉,付蔚.基于android的远程家电控制终端设计[J].山西电子技术,2012(5):60-62.
[4] 彭华.WiFi技术在家庭无线网络中的应用研究[J].技术研发,2010,17(5):15-17.
[5]相福利.基于Android平台智能家居系统研究与实现[D].成都:电子科技大学,2012.
[6]宋威.基于WIFI物联网的家电智能控制系统信息控制端的研究[J].信息通信,2013(1):199-200.
[7] 刘宪涛.基于Android平台的手机语音识别服务客户端系统的设计与实现[D].北京:北京邮电大学,2012.
责任编辑:时 雯
Study on Smart Appliance Control System Based on Android
WU Yi,NAN Jingya,LIU Pai
(School of Information Engineering,Hebei University of Technology,Tianjin 300401,China)
For the development of intelligentization and networking of household appliances,smart products based on WiFi gradually are applied in people's lives,mobile intelligent controlling terminals in the smart home become the future trend.In this paper,combine Android operating system and the control pinciple of household appliance,high-speed serial/WiFi module is used,a solution about a smartphone via WiFi controlls air-condition is proposed,and also does the simulation and test for the system,results show that the method is feasible and stable.
Android;appliance control;WiFi;speech recognition
TN919.6
B
10.16280/j.videoe.2015.08.006
2014-07-03
【本文献信息】武一,南京娅,刘排.基于WiFi的家电智能控制系统研究[J].电视技术,2015,39(8).