APP下载

基于Android平台的家居远程语音控制系统研究

2016-12-10陈松

赤峰学院学报·自然科学版 2016年21期
关键词:家居智能家居指令

陈松

(安徽新华学院 信息工程学院,安徽 合肥 230088)

基于Android平台的家居远程语音控制系统研究

陈松

(安徽新华学院 信息工程学院,安徽 合肥 230088)

本文设计了一种基于Android平台的家居远程语音控制系统并验证了设计思路.该系统通过讯飞云语音平台进行语音识别、用2.4G无线通信模块NRF24L01实现家庭环境下的信息通信,用户可通过Android手持终端对智能家居设备进行远程控制.该系统操作简便,组网容易,数据传输方式较为新颖,使用费用低廉,易于市场推广.

语音控制;Android系统;远程通信

1 引言

随着科技水平的提高,经济飞速发展,人们的收入水平显著增长,同时越来越能感受到现代化生活所带来的便利.智能家居的概念一度十分火热.智能家居系统一般是指利用自动控制、模式识别、计算机通信等技术,对家庭生活中的电子设备进行智能管理和控制的系统[1].此系统中,有两项技术较为关键,一个是数据通信,一个是智能控制.数据通信是指人与设备之间,不同设备之间的信息传送.智能控制是指控制信息如何表达,如何被设备理解.

对于人类而言,最方便的控制家居设备的方式莫过于语音控制,让设备“听懂”自然语言,并执行操作.我们可以看到一些研究机构展示的可以与人类交谈的机器人,相当受到大众的喜爱.而目前市场上出现的智能家居系统产品[2],要么功能较为单一,要么较少采用语音控制方式.那么可否设计一种成本低,易实现,易维护,更符合市场需求的家居远程语音控制系统呢?

2 设计思路

实现对家居设备的远程语音控制,首先要设计相关的通信结点.用户在户外通过手持终端设备(Android平台)输入语音指令.该指令通过第三方平台进行语音到文字的转换,随后将识别后的结果传输至云主机.云主机用于实现命令的转发,根据用户指令中的ID,将控制命令传输至用户家中的本地控制器.本地控制器通过以太网端口实现与云主机在Internet上的数据交互.本地控制器内置指令识别软件,并且包含有对红外控制模块,各类家电控制模块(如灯光控制模块)进行管理的指令集,通过识别云主机所发送的指令,再利用2.4G无线网络针对各个模块发送对应的控制信息.总体设计方案见图1.

图1 系统总体框图

在系统的硬件组成中,控制中心是由手持移动终端、云主机以及本地控制中心组成.控制中心的主要功能是使用手持移动设备,通过GPRS将用户输入的语音信息传送至第三方平台进行识别,再将识别结果通过GPRS传输至云主机,云主机接收到用户输入的指令信息后将根据用户唯一识别号ID找到与用户对应的本地控制器的终端地址,并通过串口将指令信息发送至本地控制器,最终本地控制器将通过内置的指令识别软件对云主机发送来的数据进行解析,得到相关命令后通过无线设备发送到各个控制子模块.

目前用户手持终端设备使用最广泛的仍然是智能手机.智能手机的操作系统平台主要是Android系统和苹果系统[3].由于苹果公司在中国采用的营销策略以及苹果手机本身的价格,苹果手机在中国的市场占有率并不高,2014年才突破25%.国内市场占有率较高的Android系统是谷歌公司的产品,主要针对于移动手持终端.2011年,谷歌公司收购了摩托罗拉公司,开始主推Android操作系统.很快,Android操作系统的全球市场占有率达到52.5%[4],中国内地的占有率也超过58%.目前国内市场上,采用Android系统平台作为手持控制终端设备的很少.同时Android系统是开源的,在此平台上制作手机APP较为方便.考虑到Android系统的使用率更高,发展前景较好,同时开发便利等因素,本文设计的家居远程控制系统中移动终端将使用Android系统.

鉴于近几年云计算的出现,许多优秀的语音识别系统也在利用这个平台逐渐向用户开放.其中“讯飞语音+”基于语音云开放平台面向移动互联网等行业,开放了语音合成、语音识别、语义理解、语音对话和声纹识别等智能语音交互技术的语音服务接口.“讯飞语音+”能够提供丰富灵活的语音服务,为各类移动终端应用集成语音能力打开了方便快捷的通道,降低语音应用的开发门槛和周期,使开发伙伴能快速构建“能听会说”的语音应用,并针对移动终端设备的通讯、存储和计算资源受限的特性,在保证语音服务质量的同时,实现轻量级的接口访问方式,兼顾了应用和终端用户的需求.另外,“讯飞语音+”具备升级扩展功能,保证用户始终能够获取最新最优质的语音服务.选择“讯飞语音+”作为远程语音控制系统的语音识别方法,不失为明智之举,既节约成本,又便于开发,用户体验更好,同时具备升级扩展潜力,便于进行市场推广.

本地控制器及各家居设备对应的子控制器均可选择带有无线通信模块的单片机来实现.这方面的选择较多,对单片机的性能要求并不高,因此可以选择更为便宜的单片机芯片来实现,以降低设计成本.

3 通信协议

本文所设计的家用远程语音控制系统,由于时间、空间所限,仅通过模拟实现其中一个子集来验证设计思路.该系统中通信是一个重要环节,结合家居环境的特点以及方便市场推广,本文对构成该系统的通行协议做了如下选择:Android手机和讯飞语音云之间采用了http通信协议.Android手机调用相应的开发接口,提供音频输入,获取讯飞语音云返回的结果;Android手机与云主机之间采用UDP通信协议传送数据,云主机采用socket接收数据并处理;云主机与本地控制器之间采用是串口通信,云主机将接收到的数据处理后经过串口将数据传到本地控制器;本地控制器与子控制模块之间采用的是2.4G信号传输,子控制模块接收到数据后查找本地存储的指令表,然后执行指令,实现对智能家居的控制.具体通信协议也可根据实际情况选择其他协议标准.

4 验证性设计

根据家居特点,本文主要模拟了灯光控制模块,以此来验证该系统的设计思路是否正确.各通信结点都需要进行相应的软件设计.需补充说明的是,每一样家居设备都需要有对应的子控制器,这是用来把控制信息转化为具体操作的,就像遥控器去控制电视机一样.如果几个设备使用同样的控制信息,比如一排灯同步亮灭,那么是可以使用相同的子控制器的.当然,多数家居设备的控制较为简单或智能化比较高(自带遥控控制设备),因此子控制器可由单片机和无线接收模块构成,单片机用于数据的简单处理,无线接收模块用于信息的转发,对那些智能化较高的家具设备,则可以对其遥控装置进行改造,接入到家居环境中的无线局域网中,同步受控即可.因此在实际的家居环境中,子控制器的需求量虽然较多,但并不会过分增加使用成本.

系统验证的相关硬件如下:

(1)2.4G无线模块NRF24L01:一片连接本地控制器用于发送有效指令;另外一片用于灯光控制模块中,接收本地控制器发送过来的数据,并实现对LED灯的控制.

(2)本地控制器MSP430G2553:用于实现串口数据的传输,扫描串口是否有数据发送过来,并实现对指令的解析与转发.

(3)灯光控制模块:主要由MSP430G2553和红黄绿三个LED灯,用来验证灯光控制的可行性.

(4)基于Android平台的智能手机:用于接收用户语音,转发给讯飞云语音平台,并从解析后的文本提取有效指令,再发送给服务器.

(5)PC:作为服务器使用,并用于编程与程序烧制.

系统验证的相关软件有:

(1)用于手持控制端:Android操作系统

(2)服务器控制端:Windows操作系统

(3)开发用软件:JAVA、Android Studio、VC++6.0、CCS5.4等.

总体功能模块图如下:

图2 系统总体功能模块图

验证性系统顺利通过了组网测试,数据能够在各通信结点之间正常传送;通过了功能测试,能够通过语音远程控制LED灯.家居设备的控制信息,其格式设计如下:子模块ID—控制的家电类型—执行的动作—家电的ID—@.实例中对红、绿、黄三色LED灯进行控制,如控制红灯开,指令为“ELYR”,其中“E”代表电器,“L”是灯“LAMP”的首字母,“Y”是代表开的意思,为“Yes”的首字母,“R”为“RED”的首字母,代表红色.这种控制过程可以很轻松的移植到其他家居设备的控制上.部分测试用例及结果如下表:

表1 录入语音与控制结果对照表

5 总结

该系统能够实现对家居的远程语音控制,设计思路可行.系统可靠性较高,数据传输较稳定,但语音识别性能依赖于讯飞语音云平台的性能.手持终端与讯飞云语音平台之间的信息传送过程中,网络延时现象较为明显.2.4G无线传输短距离较为稳定,信息转发速度较快,其可靠性对距离的依赖性较大,十米以内很可靠,超过二十米,出现数据丢包现象,且随着距离增加,丢包率上升,所以在使用的过程中,应注意无线节点与主控制器的距离,才能保证数据传输的可靠性.

〔1〕蒋承延,吴思远,陈伟.基于无线传感器网络的智能家居系统[J].微计算机信息,2007,23(13):199-201.

〔2〕吴孜祺.中国智能家居市场一览[J].日用电器,2011(14):108-109.

〔3〕李宗恒,李俭伟.主要智能手机操作系统发展现状及前景展望[J].移动通信,2010(Z1).67-69.

〔4〕陈文,郭依正.深入理解Android网络编程:技术详解与最佳实践[M].北京:机械工业出版社,2013.

TP273.5

A

1673-260X(2016)11-0025-02

2016-06-14

猜你喜欢

家居智能家居指令
打造日常家居“氛围感”
基于PLC的智能家居控制系统研究
ARINC661显控指令快速验证方法
台北家居
基于Zigbee的无线通信技术在智能家居中的应用
杀毒软件中指令虚拟机的脆弱性分析
关于智能家居真正需求的探讨
中断与跳转操作对指令串的影响
智能家居更贴心
一种基于滑窗的余度指令判别算法