基于语音识别的智能家电控制系统的设计
扫描二维码
随时随地手机看文章
引言
近年来,随着科技的飞速发展,语音识别技术也逐步从实验室走向市场。语音识别技术就是将人类语音内容转换成可读的计算机文本或命令,通过与机器的"语音交流",让其明白且去执行人的意图。它使人类解放了双手,摆脱了键盘或遥控器的束缚,这一独有的优势势必会使语音控制技术迎来更广阔的应用前景。
1硬件方案设计
1.1硬件总体设计
本文研究以非特定人语音识别对家电进行相关控制,通过将语音转换成相应的指令对家电进行控制。系统的整体结构框图如图1所示。整个系统的硬件电路包含语音识别电路和家电控制电路,其中语音识别电路是以STC11L08xE为核心对语音进行识别和转换的,家电控制电路部分则是以STC89C52为核心对外设(如LED灯、风扇、显示屏)进行控制的。
1.2语音识别电路
1.2.1语音识别原理
语音识别芯片LD3320采用ASR技术,该芯片自带16位AD/DA转换器和功放电路,麦克风、耳机等声音输出设备可以直接与芯片管脚连接。非特定人语音经过MIC送入LD3320之后,语音识别模块会对接收到的声音信号进行频谱分析,并提取出特征信息与事先准备好的关键词列表中的拼音串进行匹配,将得到的匹配结果存入相关寄存器中,由单片机取出匹配的结果并进行相应操作。
1.2.2LD3320语音识别模块
语音识别模块的主控芯片为STC11L08xE,内置掉电检测电路、看门狗和EEPRoM功能,具备2个16位定时器、3个时钟输出口和1个独立通用全双工异步串行口。该模块还加入了电源转换电路,提供稳定的3.3V电压供模块使用,同时未被利用的单片机I/o口引出至插排处,方便对外设直接控制。
语音识别模块电路图如图2所示。
1.3家电控制电路
家电控制电路以STC89C52单片机为核心,通过串行通信获取来自语音识别模块的命令,实现对家电系统的控制。具体包含以下几个模块:
1.3.1智能灯控制
智能灯的控制是通过改变PwM波占空比来实现的。在程序初始化段设置了导通占空比的初值,当收到"调亮灯光"语音指令时,PwM波导通占空比增大,智能灯变亮:反之变暗。为了让灯光调节更加"智能",还加入了光敏传感器用以检测环境光亮度,利用A/D转换读取编写判断程序调节灯光变化等级。
1.3.2温度控制
温湿度检测采用DHL11模块,该模块能够实时检测环境温湿度,当温度高于设定上限值时,配置的风扇会自动打开:另外加入了"打开风扇""关闭风扇"等常用指令,通过语音能够随时进行温度控制。
1.3.3显示控制
显示模块采用12864显示屏,该显示屏支持中文显示,适用范围广。当单片机收到"调亮灯光"命令时,智能灯会变亮,同时显示屏上会显示"智能灯已调亮,当前灯光亮度为××"字样,对风扇控制效果亦是如此。
24软件设计案
系统软件主要包括语音识别程序和家电控制程序,语音识别程序主要完成识别模块的初始化、关键词添加、语音识别和响应中断,家电控制程序对语音识别命令进行配置,用以调节亮度、温度等操作。具体流程如图3所示。
2.1语音模块初始化
采用集成设计LD3320模块,首先对时钟频率、ADC专用控制、DSP模块和ASR模块等进行初始化,设定FⅠFI0Ex上下限并调整MCT、DSP参数。
2.2添加拼音串和识别码
语音识别的结果依赖于拼音串与识别码的匹配,外部采集的信号需要先经过语音识别器与拼音串相匹配,再通过对应的识别码进行操作。拼音串与识别码的添加程序如下:
2.3语音识别
语音识别模块开始工作后,首先关闭外部中断,在此期间对ADC增益进行设置,并调节麦克风音量和灵敏度。之后通知DSP开始进行语音识别,打开外部中断后等待中断信号产生。
3验证测试
为了检测语音识别的效果,本文进行了相关测试。首先将程序下载到单片机内,通过串口调试输出识别后的文字:然后将识别的正确次数和正确率记录下来。实验结果表明,语音识别模块工作稳定,识别精度高,对不同人群识别差异较小。当把测试距离由0.1m增加到0.2m时,实验测试的准确度稍有下降,但识别精度仍然保持在90%以上。
4结语
语音识别技术的发展为语音智能家电控制系统的设计提供了可行性方案。本文所设计的语音识别家电控制系统采用一体化语音识别模块,并在此基础上通过串行通信单片机对家电进行语音控制,不仅拓展了原有模块的Ⅰ/O口数量,而且使硬件功能更加独立。该语音识别模块工作稳定、识别能力强,通过改变关键词,能够完成不同的语音识别,具有操作简单、可利用场合多的特点。