智能语音控制系统设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目前,家居电气设备的常规控制方式有手动控制和红外遥控,随着智能设备的发展,已经出现了可智能控制的家居设备,但是这些设备面对的是具有正常行动能力的人群,而对于那些无人照顾、行动迟缓的老年人和残疾人来说,使用常规和智能终端来控制设备显然是不方便和不适用的,为此本课题设计了一种基于单片机的语音控制系统,采用了语音指令控制家具设备的开启或关闭,同时可以利用单片机获取传感器采集的环境参数来监测室内温度,从而使现代生活变得快速、便捷、安全[1]。1系统硬件设计

本系统主要由语音识别模块、按键控制模块、显示模块、电机控制模块、报警模块、无线控制模块构成,系统硬件总体设计模块如图1所示。

图1系统设计方案框图

本文将所有硬件设计按照模块来设计,模块化设计的好处在于能够将产品的组合与销量进行结合,为各个不同的消费者提供不同的消费等级。本设计主要包括以下几个方面:

1)显示模块:拟采用液晶显示屏和LED灯,前者可以实时为主老人提供必要的信息,如家居开关状态、时间等。LED灯可以模拟智能家居灯和其他模块启动指示灯。

2)语音识别模块:采用LD3320语音识别芯片和相关控制电路,在用户的语音进入语音识别部分后,LD3320将把处理过的数据并行传输到主控制器,主控制器处理后,发送命令数据到可扩展外围串行设备实现控制操作。

3)主控模块:拟采用STM32F103RCT6单片机作为系统控制器。

4)报警模块:提供蜂鸣器报警或语言报警两种模式,针对不同客户选用不同模式,防止家居出现问题时可以进行报警,一定程度上保证了老人的健康安全。

5)供电模块:拟采用锂电池+小型号光能电池板,保证整个系统正常运行。

6)按键控制模块:通过按键来控制系统,开启系统相关功能。

7)无线控制模块:控制其他一些智能设备,如智能衣架、机

库等。

8)电机控制模块:用来开通或者关闭门窗等。

2程序设计

2.1语音识别模块

LD3320模块为集成一体化设计,首先设置寄存器对芯片

进行初始化,然后通过设置寄存器把需要识别的关键词或句子

的拼音串传入LD3320芯片中,之后使寄存器控制芯片开始启

动一次识别过程[2],按键激活后,通过咪头和相关电路采集语音信息,通过与LD3320关键词语列表进行匹配比对,将相识度最

高的识别码直接通过串口输出到单片机进行处理,语音写入流

程图和语音识别流程图分别如图2和图3所示。

图2语音写入流程图图3语音识别流程图

2.2主控模块程序设计

主控模块采用STM32F103RCT6单片机来控制外围设备,

其工作电压为2.0V~3.6V,具有超强抗干扰、集成度高、低功耗

等优点,足以满足系统需要。主控模块主要控制四个部分,即显

示模块、无线控制模块、电机模块和报警模块。

当语音识别模块检测到“开灯”、“关灯”、“灯亮一点”、“灯暗

一点”关键词时,系统利用STM32系列单片机内部定时器的PWM模式产生PWM波形,通过PWM波的脉冲频率和其占空

智能语音控制系统设计

张敏杜丹阳李洪海(淮阴工学院,江苏淮安223003)

Design of Intelligent Voice-Controled Systems

摘要:基于ARM芯片,设计一种智能语音控制系统。系统包括腕带式信息采集终端,拥有语音识别模块、按键控制模块、显示模块、电机控制模块、报警模块、无线控制模块,经随身佩戴,系统稳定,可靠性较高。

关键词:智能,语音控制,腕带式

Abstract押Based on ARM熏an intelligent voice control system device is designed in this paper.Wrist band type information ac⁃quisition terminal is included.The utility model is characterized in that the wrist band type information collection terminal is pro⁃vided with a speech recognition module熏a key button control module熏a liquid crystal display module熏a motor control module熏an alarm module熏a wireless control module熏and an operator only needs to wear it with him.The procedure is convenient and simple.

Keywords押intelligence熏voice control熏wrist strap

type

智能语音控制系统设计144

《工业控制计算机》2019年第32卷第1期

比值控制LED 灯的亮度及暗灭,在程序中要先初始化串口、定时器和PWM ,然后通过串口的指令接收,并进入中断读取相应的指令,就可以对家居照明系统进行亮度调节等[3]。

对于无线控制模块,将采用HC-05蓝牙发射/接收模块完成“操作指令”的发送和接收。当语音识别模块检测到“收衣服”、“晒衣服”关键词时,主控模块和智能衣架直接通过蓝牙串口通信,控制智能衣架进行收放。

对于电机控制模块,为了满足电机电流和电压启动要求,将采用ULN2003与MCU 引脚相连来驱动步进电机,模拟电动窗户、电动窗帘模块。

报警模块由温度传感器和蜂鸣器组成,采用DS18B20温度传感器测量各房间室内温度,当发生火灾隐患时,温度传感器将采集到的信息送给单片机,单片机驱动三极管导通,使蜂鸣器发出火灾报警信息,与此同时LED 灯也发出不同规律的闪烁报警信号,提醒正在熟睡或者没有注意到火灾的老人。猿语音识别算法

语音识别算法中比较常用的有动态时间规整法、矢量量化法、隐马尔科夫模型、神经网络法四种,虽然语音识别系统不断更新,也产生了各种针对不同词汇量不同说话人不同语音源的识别产品,但由于环境噪声对语音识别系统的影响和语音系统的适应性较差等原因,现在的语音识别系统还是有很多尚未解决的问题,与人们理想中的识别系统总是有差距,距离人类想达到的识别目标还有一定的距离[4]。隐马尔科夫模型是现代语音识别系统的基础框架,由CMU 和IBM 的研究人员在20世纪70年代提出,其用途十分广泛,在它的基础上后来又发展出各种不同的隐马尔科夫模型,而HMM 就是其中的一种[5]。语音信号本身是一个可观察的序列:它由大脑中不可观察的、根据语言需要和语法知识所发出的音素(词、句雪参数流组成,所以语音信号声学的模型非常适合用HMM 来描述[6]。基于HMM 的大词汇量连续语音识别系统如图4所示。

图4基于HMM 的大词汇量连续语音识别系统

首先,由麦克风输入的音频波形经过特征提取转换为特定长度的声学特征向量Y ,接着解码器通过解码算法寻找最有可能生成Y 的词序列w 1押L =w 1,w 2,…,w L 。从数学角度来讲,解码器是用来求解使得后验概率P (w|Y )最大所对应的参数w 。即:

w best =argmax {P (w|Y )}

然而对P (w|Y )直接建模十分困难,所以由贝叶斯定理将上式转换为:

w best =argmax {P (w|Y )P (w )/P (Y )}

由于观测概率P (Y )在给定观测序列的情况下是常数,对上式进一步简化:

w best =argmax {P (Y|w )P (w )}

其中先验概率P (w )由语言模型确定,似然概率P (Y|w )由声学模型确定。语言模型可以被表示成词串w 出现的概率P (w ),可被分解成:

P (w )=P (w n ,w n-1,w n-2,…,w 1)

=P (w 1)P (w 2|w 1)P (w 3|w 2,w 1)…P (w n |w n-1,w n-2,…,w 1)=n

i =1∏P (w i |w i-1,w i-2,…,w 1)

其中w i 为词串中的第i 个单词,n 为w 所具有的单词个数。对所有词汇和词序列的条件概率P (w i |w i-1,w i-2,…,w 1)进

行估计是不现实的,因此采用简化模型,假定条件概率P (w i |w i-1,

w i-2,…,w 1)只与前面N-1个词语相关,则可简化为:

P (w n |w n-1,w n-2,…,w 1)=P (w n |w n-1,w n-2,…,w n-N+1)

则P (w )近似为:

P (w )≈n i =1

∏P (w i |w i-1)

子词是声学模型基本的声学单元,在英语中为音素,比如说单词bat 由/b //ae //t /三个音素组成;在汉语中为声母,韵母。以英语识别为例,对于一个特定的单词w ,相应的声学模型是由多个音素模型所得到的多个音素通过查找发音字典【语法规则】拼接而成。这些音素模型的参数(如:发射概率、转移概率等)是由包括语音波形及对应的翻译文本所组成的数据集训练估计得到。语言模型一般是一个N 元文法模型[7],其中每一个单词出现的概率只与前N-1个单词有关,N 元文法模型的参数是通过计算训练文本语料库N 元组的概率得到的。

传统解码器对给定的话语句子使用动态剪枝算法[8](如Viterbi 算法)搜索最优的词序列,而现代解码器使用带权有限状态转化器完成解码过程(当前流行的语音识别工具包Kaldi 便是基于WFST 实现),采用单词网格这样一个十分方便、有效的结构来保存多个最优的词序列。

例如,说出“你好”,系统接收“你好”的语音波形,通过特征提取转化为多个39维的声学特征向量,声学模型接收这些向量,通过多个HMM 音素模型[9]得到对应的多个子词(实际上为声母,韵母)/n //i //h //ao /,通过查找发音字典将音素拼接成字,如你、尼;好、号。接着语言模型登场,语言模型使用语法规

(下转第150页

)

表1

语音指令

表2指令识别结果

145

相关文档
最新文档