APP下载

面向智能家居的无线语音控制系统设计

2020-07-28肖清泉顾竟成

关键词:语音识别智能家居

肖清泉 顾竟成

摘 要:在嵌入式系统下借助语音识别技术设计一套无线控制系统,通过此系统对传统家电进行一些常规的语音与界面人机交互操作,实现包括多设备交互控制、网络连接、数据显示等功能,这将极大提升家居生活的便利性和舒适性。系统采用基于高级精简指令集机器(advanced RISC machine,ARM)处理器+Linux+语音识别库+无线传感器网络的方案,主要包括硬件电路设计和软件开发,控制系统利用语音识别技术对声音进行识别,借助ZigBee模块进行主控系统与终端设备的交互。与传统产品相比,该交互式家居语音控制系统提供多样的识别、交互模式,创新的控制模式及更大范围的识别距离。

關键词:智能家居;ARM;Linux;语音识别;Qt开发;ZigBee

中图分类号:TP399   文献标识码: A

智能家居以住宅环境为应用背景,利用无线网络技术、自动化控制和语音识别技术等将家电设施集成,建立高效的家居管理系统,提升家居生活的便利性和舒适性[1]。家居智能化的一个重要发展方向是基于语音识别的控制技术,对此国内外已开展了大量运用语音识别的控制技术的研究,目前一些语音科技公司的语音识别技术已经非常高效,识别率通常在95%左右。

现阶段传统家居语音控制系统的控制、交互方式单一,语音识别模式单一,识别距离局限大,用户体验不理想[2]。对于上述问题的解决方案比较欠缺,目前而言市面上设计的产品还没有进行深入研究。对此,本文设计重点不在于提高识别精度,而是在嵌入式系统下借助语音识别技术设计一套无线控制系统,通过此系统除了实现家电的一些常规语音交互操作外,再力求与市面上的同类产品相比能够提供更加多样的控制模式、交互模式、识别模式,更大范围的识别距离,以期给人们的家居生活带来极大便利。

1 系统组成

本系统采用星形网状结构,核心中枢的麦克风采集用户发出的语音,将语音识别成文字信息后,程序再将文字信息转换为指令,根据无线传感器将特定的指令通过网络发送到分布在家中各个角落的终端设备,终端设备在响应指令后根据指令执行情况反馈信息到核心中枢[3]。核心的主控板用来实现系统的统一协调与操控,终端设备借助光敏和温湿度传感器,可以模拟家庭中使用的各种电器设备,如灯、空调、自动窗帘、加湿器等。同时为了用户控制方便,增设了语音远程扩展的功能,将声音的采集和播放集成到一块电路上,方便用户远距离控制整个家居系统。系统的整体架构见图1。

控制系统主要包括以下功能:

1.语音采集与识别。语音的采集和识别单元负责对外界的声音进行模拟信号到数字信号的转换,数字信号到控制指令的转换。

2.语音远程扩展处理。语音远程扩展处理单元用于处理通过WiFi传入的远端声音信息,并将信息接入语音采集与识别单元处理,随后将语音处理结果的反馈信息返回到语音远程扩展单元。

3.语音、界面交互。为了更好的交互式体验,本系统在语音交互的基础上,实现了传统的界面交互终端,其负责信息显示和系统配置。

贵州大学学报(自然科学版)第37卷

第4期肖清泉 等:面向智能家居的无线语音控制系统设计

4.控制和反馈。控制与反馈单元利用ZigBee无线传感器组成的网络对在线的所有终端设备进行控制,同时接收它们的反馈信息并作出相应的处理工作[4]。

2 硬件电路设计

硬件设计主要包括核心主控电路模块、终端设备电路模块、语音远程扩展电路模块。

2.1 核心主控模块设计

本系统核心主控模块采用三星公司开发的S5PV210核心板加上一系列实现系统需求的外设和电路组成,主要包括:系统电源电路、声卡、通用串行总线集线器(universal serial bus hub, USB Hub)扩展电路、WiFi、ZigBee、液晶显示器(liquid crystal display, LCD)显示电路、复位电路、按键电路。各硬件之间的逻辑关系见图2,核心主控模块如图3所示。

2.2 终端设备模块设计

终端设备由STM32和ZigBee外加实现不同功能的硬件设备组成,因具体实现的功能不同模块有所区别。本文主要的终端设备有实体色温灯,继电器开关模拟光敏自动窗帘、温控空调、湿度加湿器等,其各个硬件的整体逻辑结构类似,逻辑关系见图4,终端设备模块如图5所示。

2.3 语音远程扩展模块设计

语音远程扩展模块由STM32、WiFi网卡、WM8960芯片和Flash存储器组成,主要用于远程的声音输出与语音控制功能,各硬件的逻辑关系见图6,语音远程扩展模块如图 7所示。

3 软件设计

系统选用Linux+Qt的软件框架,以Linux内核和一些外设驱动为软件基础环境,构建嵌入式的Qt应用程序终端[5],系统的软件结构分为4层:硬件层、Uboot内核层、文件系统层、软件应用层[6-7]。系统软件整体结构见图8。

软件设计通过此架构实现语音采集识别、多语音识别引擎切换、多模式交互控制与反馈、语音识别距离扩展等功能,下面对此做具体介绍。

3.1 语音采集与识别

语言信息的采集与识别是本系统获取信息的主要途径,也是软件必须要实现的核心功能,主要包括语音唤醒、语音识别、语音合成等功能。本系统采用讯飞开放平台的语音识别库进行声音到文字或指令的转换[8]。语言信息采集和播放使用WM8960,WM8960将外界声音利用高精度

模数转换器(analog to digital converter, ADC)转换为数字信号,随后软件将声音的数字信息传入语音识别库即可获取到声音的文字信息[9]。控制板利用文字信息进行一系列逻辑判断,通过ZigBee网络对终端设备下发指令,终端设备接收指令后按照指令完成一系列动作,并反馈信息到控制板,控制板接收信息并通过声音和文字的方式将信息呈现给用户。具体识别过程如图9所示[10-11]。

3.2 多语音识别引擎切换

传统语音控制系统大多采用在线网络,基于云端语音识别引擎得出识别结果,此识别模式提供多样化的语音服务和高精度的识别结果,但需要接入网络,语音的识别可能受到网络影响导致延时甚至直接无法工作,导致用户体验变差[12]。另一种常用的识别模式是离线语音识别,其使用本地的语音识别算法进行语音识别,不需要经过网络,在速度方面快于云端识别,但多样化与识别精度方面不及在线识别。

汲取两种识别模式的优势,本系统的设计采用一种创新模式,自动切换两种识别模式进行识别。在网络情况良好时,优先使用在线语音识别引擎;当网络出现拥堵时,自动切换至离线语音识别引擎。随时保证用户命令能够成功识别。

云端语音识别引擎和离线语音识别引擎的自动切换是本设计的特点,两者自动切换的软件实现过程如图10所示。

采集语音数据后,根据当时“ping”命令的网络

延时情况,进行识别引擎选择:当网络延迟较低时,选择云端语音识别引擎;当网络延迟很高时,采用离线语音识别引擎。考虑到网络可能在识别过程中突然拥堵,因此,云端语音识别引擎在一段时间内没有返回识别结果时,结束语音识别并使用离线语音识别引擎直接解析返回结果,保证每次语音识别都能得到最优化结果。

3.3 多模式交互控制

传统的语音控制系统在家居控制方面大多采用被动控制的方式,用户发出确切的指令完成控制动作,但在很多特定的场合不能满足控制需求。甚至有时用户在忙碌时,不会注意到家居环境的变化,需要设备主动提醒[13]。这些需求的实现不是单一被动控制模式就可以完成,因此必须在传统控制模式上加入更多新的控制方式,使家居更加智能。

本系统区别于传统控制方式,对大部分控制终端都設置有三种控制模式:被动控制、自动提醒、自动控制。

1.被动控制模式。设备只能被动地接收主控板发出的指令而工作,用户通过发出确切的控制指令来操作设备,即传统的直接控制模式。

2.自动提醒模式。在配置自动提醒的条件后,设备主动反馈信息到控制板提醒用户,主控板会以声音和图像形式提醒用户出现了异常情况。

3.自动控制模式。在配置了自动控制的条件后,设备将自行控制调节,不再需要用户的干预,实现真正的智能化。

系统利用ZigBee传感器接入网络通信,终端设备上电运行后,首先读取控制板设备的配置信息,如空调的工作模式,上下限温度阈值等等,随后开始各种传感器外设的初始化工作,在完成初始化后,进入无限循环。

检查ZigBee传感器连接的串口缓冲区是否收到有效的控制指令协议,若收到则开始解析控制指令,按照协议定义的操作开始控制各种外设电器工作[14],它们可能是调节色温灯,打开关闭空调,操作加湿器加湿,打开关闭窗帘等。

若读取的配置信息是提醒模式,则读取各种传感器的值,当传感器的值不在设定的范围内,则向控制板上报反馈信息,提醒用户。若读取的配置信息是自动控制模式,则根据传感器的值自动控制各类外设电器工作。整体软件工作流程如图11所示。

3.4 语音识别距离扩展

现有传统控制系统的语音识别距离有限,大多在10 m范围内能有效识别用户语音,这种缺陷使得家居控制低效且产品体验较差[15]。为了改善传统产品的这种缺陷,本系统增设了一种语音远程扩展模块,通过WiFi网络连接到主控板,实现远距离语音控制与反馈,极大扩展控制系统语音识别范围。识别范围取决于远程扩展模块的安装数量,其可按需求扩展,满足整个家居系统。

语音远程扩展模块由STM32单片机、WM8960、WiFi模块和4 MB的Flash存储器组成,语音远程模块通过WM8960录音后,使用WiFi将语音信息发送到主控板上,主控板处理完毕后,通过WiFi发送控制指令的反馈信息到扩展模块,扩展模块播放反馈提示[16]。

具体的工作流程:系统上电后,代码首先初始化WM8960、WiFi、Flash等硬件外设,随后使用socket网络连接至主控板的WiFi服务端上,检测用户是否有语音控制请求(通过按键检测),若有则启动WM8960开始录音,当录音的文件大于STM32的随机存取存储器(random access memory, RAM)时,将多余的录音数据存入Flash中,调用socket发送完整的语音数据到控制板,接着检测socket是否接收到主控板发来的语音反馈信息,若收到则通过WM8960播放语音,并开始下一轮的检测,软件整体的实现过程如图12所示。

4 系统测试

4.1 系统运行测试

所有控制指令基本采用同一的通讯协议,本小节以色温灯的控制为例,验证语音控制系统交互的正确性。

测试方式:WiFi管理界面连接网络,用户向控制板依次发出“开灯”“把灯调成暖色”“把灯亮度调高”语音,观察终端设备发光二极管(light emitting diode, LED)色温灯的变化和控制板显示的交互信息,随后取下WiFi网卡使网络断开,重复上述用例,测试两种识别引擎下系统运行是否正常。

开灯,把灯调成暖色命令运行演示如图13,14所示。

4.2 语音识别率测试

系统采用被动控制模式来测试语音识别正确率,设置测试用词为:开灯、关灯、开空调、关空调四个语法短语。系统加载完毕,测试者对着板载麦克说出上述任意一个测试用词,可观察到正确识别后系统做出对应操作。

测试人员包括4男4女共8人。测试时每人每个短语说8遍,总共64句,统计系统识别率。

G=1-Er+EmE×100%。(1)

式中:G为命令识别率,E为测试识别命令总数,Er为识别错误命令数,Em为未识别命令数。

统计结果如表1所示,t为平均识别时间。

通过表1测试数据可知,系统在实时性方面表现优良,系统基本能在指令输出2 s内做出控制并反馈,同时系统识别率较高,正确率皆在95%以上,测试性能结果与市面上同类产品基本持平。

5 结论

本文采用基于ARM处理器+Linux+语音识别库+无线传感器网络的方案,经过全套完整的硬件电路设计,系统开发平台搭建,系统应用软件设计等步骤,研究实现了一款面向智能家居的无线语音控制系统。该系统运行稳定,识别率较高,可达95%以上,与市面上同类产品的识别率基本持平。该系统在识别模式上具有创新性,能够极大提升家居生活的便利性和舒适性,与目前市面上同类产品功能对比,其具有以下优点:

1.多样语音识别功能:提供命令词识别、语音唤醒、语音交互等多种功能,支持在线、离线识别模式共同作用。

2.多样控制模式:自动控制、自动提醒与被动控制相结合,控制模式自由切换。

3.增设语音远程扩展模块,大幅提升识别距离,语音识别范围扩展至整个居所。

4.触摸屏操作与语言控制联合进行设备交互,交互模式多樣。

参考文献:

[1]何燕燕. 物联网智能家居的发展及趋势研究[J]. 无线互联科技, 2016, 13(22): 15-16.

[2]籍成章. 语音识别的现状与前景探讨[J]. 商品与质量SymbolWC@学术观察, 2013, 20(11): 302.

[3]张瑞英, 荆学海. 基于物联网的智能家居设计与实现[J]. 中国建材科技, 2018, 27(1): 128-129.

[4]张凯, 冯介一. ZigBee技术在无线传感器网络中的应用[J]. 湛江师范学院学报, 2010, 31(6): 137-140.

[5]任亮. 基于ARM Cortex-A8的嵌入式Linux开发的平台构建[J]. 山西煤炭管理干部学院学报, 2012, 25(4): 134-135.

[6]LI W, CUI B H, ZHANG F W. A smart home system based on speech recognition technology[J]. Applied Mechanics and Materials, 2015, 713: 2123-2125.

[7]戴巍, 霍亚, 马尚昌, 等. QT下基于组件的嵌入式软件框架设计及实现[J]. 计算机应用, 2016, 36(S1): 257-261.

[8]吴明. 科大讯飞让语音合成技术深入会生活[J]. 通信世界, 2006, 7(6): 51.

[9]HEIDARI H, GOBEE S. Isolated word command recognition for robot navigation[J]. Procedia Engineering, 2012, 41: 412-419.

[10]马红星, 王海坤, 刘聪. 命令词语音识别系统的置信度改进方法[J]. 计算机与现代化, 2011, 27(10): 146-149.

[11]杨明辉, 郭肇德. 基于扩展的 BNF文法的通用语法分析算法[J]. 软件学报, 1992, 3(3): 24-32.

[12]侯猛, 胡晓红, 赵航涛. 在线语音识别技术在智能家居中的应用[J]. 信息与电脑(理论版), 2018, 12(24): 118-120.

[13]江华丽, 王平, 冯志斌,等. 基于ZigBee应用的技术研究与设计[J]. 计算机系统应用, 2016, 25(2): 272-277.

[14]徐勋庭. 新型语音交互式智能家居系统研究与设计[D]. 广州: 广东工业大学, 2018.

[15]许德永. 基于ARM9的智能家居语音控制系统研究与实现[D]. 南京: 南京邮电大学, 2015.

[16]梁瑞宇, 王青云, 赵力. 嵌入式语音信号处理实验系统的设计与实现[J]. 实验室研究与探索, 2017, 36(5): 126-130.

(责任编辑:周晓南)

Design of Wireless Voice Control System for Smart Home

XIAO Qingquan*1,2, GU Jingcheng3

(1.College of Big Data and Information Engineering, Guizhou University, Guiyang 550025, China; 2. Institute of Advanced Optoelectronic

Materials and Technology, Guizhou University, Guiyang 550025, China;3.Wuxi Branch of the China Telecom Co., Ltd., Wuxi 214000, China)

Abstract:

A wireless control system is designed by means of voice recognition technology in the embedded system. Through the wireless control system, some conventional voice and interface human-computer interaction operations are performed on traditional home appliances, and functions such as multi-device interactive control, network connection and data display are realized. The system is based on ARM(advanced RISC machine) processor + Linux + speech recognition library + wireless sensor network, which mainly includes hardware circuit design and software development. Voice recognition technology is used to identify the sound, and the ZigBee module is used to make the control system interact with the terminal device in the wireless control system. The interactive home voice-controlled system provides varieties of recognitions, interaction modes, innovative control modes and recognition distances.

Key words:

smart home; ARM; Linux; speech recognition; Qt Development; ZigBee

收稿日期:2019-12-12

基金项目:国家自然科学基金资助项目(61264004);贵州省留学回国人员科技活动择优资助资助项目([2018]09);贵州省高层次创新型人才培养资助项目([2015]4015)

作者简介:肖清泉(1970-),男,教授,博士,研究方向:半导体材料与器件,Email: qqxiao@gzu.edu.cn.

通讯作者:肖清泉,Email: qqxiao@gzu.edu.cn.

猜你喜欢

语音识别智能家居
智能家居行业仍无“独角兽”
智能家居产业现状和发展趋势
智能家居 走向星辰大海
通话中的语音识别技术
智能家居未来感初体验
面向移动终端的语音签到系统
农业物联网平台手机秘书功能分析与实现
基于Android手机语音和Arduino控制板的机器人控制系统