您好,欢迎来到飒榕旅游知识分享网。
搜索
您的当前位置:首页语音识别系统设计

语音识别系统设计

来源:飒榕旅游知识分享网
 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

第1章绪论

1.1引言

智能电子技术在现实生活中的智能家居电子产品中得到广泛应用。特别是计算机技术、网络通信技术、信息控制技术的迅猛发展与提高,促使家庭实现了生活现代化,居住环境舒适化、安全化。这些高科技已经影响到人们生活的方方面面,改变了人们生活习惯,提高了人们的生活质量,智能化家居也正是在这种形势下应运而生的。智能家居的日渐兴起给人们的家居生活带来了全新的感受,家居智能化正在成为一种趋势。[14]

智能家电通过处理电子技术, 来集成或控制家中的电子电器产品, 让家居生活更加舒适、安全、有效。与普通家电相比, 智能家电不仅具有传统的家电功能, 还能根据人们的语音指挥, 由原来的被动静止结构转变为具有主动识别语音执行的智慧工具, 优化人们的生活方式, 帮助人们有效安排时间, 增强家居生活的安全性、舒适性。本文通过对传统的家庭照明系统、电扇和电视机进行改造, 使其成为具语音识别功能的智能家电,由于条件此次设计的智能控制系统由驱动LED显示来进行仿真实现。

1.2国内外智能语音识别系统发展现状

语音识别研究从二十世纪50年始到现在已经历了半个多世纪的蓬勃发展,在这期间获得了巨大的进展。

国外的语音识别研究工作可以追溯到20世纪50年代AT&T贝尔实验室开发的第一个能实现十个英文数字的语音识别系统。是在60年代末70年代初。在70年代,提出了语音信号线性预测编码(LPC)技术,动态时间规整(DTW)技术,矢量量化(VQ) 和隐马尔可夫模型(HMM) 理论。进入80年代以后,研究的重点逐渐转向大词汇量、非特定人连续语音识别。这一时期,语音识别的研究更进一步,兴起了人工神经网络在语音识别中的应用。进入20世纪90年代后,语音识别系统开始从实验室走向实用。许多著名的大公司如IBM、苹果、AT&T和NTT都对语音识别系统的实用化研究投以巨资。比较有代表性的系统有:IBM公司推出的Via Voice和Dragon System公司的Naturally Speaking, Nuance公司的Nuance Voice Platform语音平台,Microsoft的Whisper, Sun的VoiceTone,以及当今流行的Apple的siri功能。[1]

共 29 页 第 1 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

我国的语音识别研究起始于1958年,由中国科学院声学所利用电子管电路识别十个元音。直至1973年才由中国科学院声学所开始计算机语音识别。1986年3月我国高科技发展计划(863计划)启动,国家863智能计算机专家组为语音识别技术研究专门立项,每两年举行一次专题会议。现在我国语音识别技术的研究水平已经基本上与国外同步,在汉语语音识别技术上还有自己的特点与优势。国内有不少语音识别系统已研制成功。在孤立字大词汇量语音识别方面,最具代表性的要数92年清华大学电子工程系与中国电子器件公司合作研制成功的THED-919特定人语音识别与理解实时系统。在连续语音识别方面,91年12月四川大学计算机中心在微机上实现了一个主题受限的特定人连续英语---汉语语音翻译演示系统。在非特定人语音识别方面,有清华大学计算机科学与技术系在87年研制的声控电话查号系统并投入实际使用。

而住宅智能化系统的概念也是从上世纪70年代末起源于美国,随后,欧洲、日本等国家住宅智能化也得到了飞速发展。在我国,智能家居这一概念推广较晚,约在90年代末住宅智能化系统进入国内,但其发展速度非常快,全国已建立了一些具有一定智能化功能的住宅小区和家庭智能化生活住宅。

1.3主要工作

鉴于目前市场上的各类智能家居产品在人机交互方面还只是停留在手动控制没有实现真正的人机对话,本文把语音识别引入到智能家居系统中实现了语音控制家用电器,具体的说,本文主要做以下几个方面的工作:

1.进行设计方案对比,并简要介绍了凌阳SPCE061A单片机,以及它在语音识别方面的应用,并对系统中用到的语音识别技术做了介绍。

2给出了系统的总体结构图,并对部分硬件原理图进行了详细的分析和说明。 3.对系统的软件设计进行了介绍,并给出了部分程序的流程图。 4对论文进行了总结,并提出了未来需要进一步研究开发的方向。

共 29 页 第 2 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

第2章系统设计方案的研究

2.1方案总体比较和选择

方案的差异在于使用的核心控制芯片不同比较如下:

方案一:采用凌阳单片机作为我们的控制电路核心,凌阳SPCE061A十六位单片机不仅内置32kFlash,而且集成了语音处理模块。[6]

方案二 :采用ATS52单片机控制,外加专门DSP处理芯片或者语音处理模块。与方案三比较,52单片机具有编程灵活,其控制简单的特点,但外加芯片或模块无疑增加技术难度,并且提高了制作成本。

方案三:采用AP7003芯片为控制核心,外加简单的语音处理模块。与方案二、三比较不需要编程,控制简单,但识别率较低,效果不好。[4]

通过比较,方案二和方案三无论从技术上经济上还是从效果上都没有方案一好,基于SPCE061A够建的语音控制系统具有成本低、使用方便、保密性好等优点。所以选择方案一。

2.2方案具体分析

方案一:

基于凌阳SPCE061A单片机的语音识别控制方案,实现语音对家用电器的控制。本方案以SPCE061A单片机作为主控核心,根据用户需要可以编写若干控制程序,根据各种家电的不同需要,在不同时刻输出对家电开关等的控制信号,然后语音控制家电实现各种功能。[8] 1.PC机

通过EZ-PROBE接口和单片机连接来调试、仿真和下载程序的。这样,就不需要再用仿真器和编程器了,只要将其连接好,就可以在PC机上调试程序,并且在线仿真,最后将程序下载到芯片中。

2.单片机板块

以凌阳16位单片机SPCE061A作为主控核心,较少的辅助硬件电路相结合制成的板块。 具备单片机最小系统电路外,还包括有源电路、音频电路、复位电路等,采用电池供电。主体部分采用的 SPCE061A,该芯片属于 16 位机,芯片的设计体现了 SOC 概念,内嵌 32K 的 FLASH 的存储空间,双 16 位的计数器、定时器,14 个中断源,A/D、D/A 转换单元,32 位可编程的多功能 IO 口,LVD/LVR 等部分。SPCE061A 在 2.6v~3.6v 的工作电压范围内的工作速率范围为0.32MHz~49.152MHz,较高的工

共 29 页 第 3 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

作速率使其应用领域极其宽广PROBE 的接口,该接口有 5 针,其中两个分别是地(VSS)和 3.3V电源(VCC)。此接口与 PROBE 的 5 针接口相连,PROBE 的另一端接 PC 机 25 针并口。这样,就不需要再用仿真器和编程器了,只要将其连接好,就可以通过它在 PC 机上调试程序、在线仿真、最后将程序下载到芯片中,完成程序的抄写。

3.显示驱动电路

本系统用LED做演示,驱动电路仅需用三极管放大驱动电流即可。

采用凌阳1 6 位单片机SPCE061A 作为控制核心。SPCE061A 具有丰富的资源、指令周期短、工作速率快、低功耗、低电压、可编程音频处理、在线下载易于调试等优点,完全适合于对家电的控制。尤其是其语音播放功能对增加家电控制系统语音报告功能提供了很大的方便。 方案二:

使用ATS52单片机,此方案就是要以单片机的硬件结构为基础。它的运行过程是在程序控制下逐条执行程序指令的过程。

因为电路用单片机控制,所以电路非常简洁。电路的核心部分是ATS52单片机, 52单片机具有价格低廉、使用简单等特点,但其运算速度较低、功能比较单一,如要对家用电器实现语音等功能就必须外扩芯片,控制过程相对比较繁琐。 方案三:

以AP7003为核心的控制系统,是低成本语音识别专用集成电路,内置有麦克风放大器、A/D转换器、语音处理器和I/O控制器,经预处理后可识别12组不同的字词,每组1.5秒时长,可连词或单词识别。AP7003包括AP7003-01(由CPU串行控制)和AP7003-02(由按键直接控制)两种型号,且最有高度的I/O可编程性,使用简单方便,可广泛应用于玩具、识别转控、自动答录等领域。

AP7003采用DIP40封装。AP7003具有两种工作模式,即录音模式和识别模式。在使用识别模式之前,应先将目标录入芯片内。AP7003内有12条存储体用于存储12组不同的字句,每个存储体可存储1.5秒时长的字词,可通过键盘或按程序编制的顺序选择存储体录入及存放目标词。语音可通过外部麦克风或其它媒体录入芯片内,经内部处理后以不同的数字持片信号保存于存储体中。

此系统指令对指令数目有,而且识别率较低。 基于上述分析,拟选择方案一。

共 29 页 第 4 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

第3章系统硬件设计

3.1硬件总体结构和工作过程

本系统硬件结构如图3-1所示:

由图可知系统可分为: MIC 输入模块、单片机、存储模块、功放和喇叭输出模块四大部分和外设的电源模块、键盘模块和液晶显示电路模块构成。 3.1.1凌阳SPCE061A介绍

SPCE061A 是凌阳科技公司研制的一个16 位结构的微控制器。它的内核采用公司最新推出的( Microcontroller and Signal Processor) 16 位微处理器芯片, 工作电压范围为2. 6~5. 5v , 系统工作频率为0. 375~49. 152MHz。它不仅具有微处理器的功能, 还具有DSP 运算功能, 低电压, 较高的系统工作频率使该单片机可以快速的处理复杂的数字语音信号。片内集成了具有自动增益控制功能的麦克风输入方式以及DAC音频输出功能, 使用凌阳音频编码SACM - S240 方式( 2.4Kb/ s) , 能容纳210s 的语音数据, 提供丰富的C 函数库和语音处理函数库, 因此非常适合数字语音和语音识别产品的开发。

另外, SPCE061A 还具有唤醒功能, 即当输入电平发生变化时会触发CPU 中断。在电池供电、追求低功耗的应用场合,可以让CPU 进入睡眠模式( 利用软件控制) 以降低功耗, 需要时才唤醒CPU , 使其进入工作状态, 这样既可以节省能耗, 又可以

图3-1 硬件结构图

存储模块各种家用电器SPCE061A语音输入电路语音输出电路键盘模块显示模块共 29 页 第 5 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

延长机器的使用寿命。正因为有以上特点, SPCE061A 微处理器是适用于数字语音识别应用领域产品的一种最理想、经济的选择。

SPCE061A的结构如图 3-2所示:

SPCE061A的PLCC84引脚的排列如图3-3所示: SPCE061A的管脚说明见表3-4所示:

图3-2 SPCE061A的结构

12 OSC32013OSC32114XTEST 15VDD16XICENC17XICECLKNC 18XICESDANC19VSSNC20 PVINNC21DAC1PVPP22DAC2IOB11 23VREF2IOB1224VSSIOB1325AGCIOB14 26OPIIOB1527MICOUTXSLEEP28 MICNVSS29PFUSEXROMT30NCIOA15 31NCIOA1432NCIOA13IOA12 IOA11IOA10 IOA9

图3-3 SPCE061A的引脚排列

1110NCCVNSSVCPXRESBVDDIOB0IOB1IOB2IOB3IOB4NCNCIOB5NCIOB6IOB7IOB8IO9IOBB10VDDH987632184838281807978777675MICPVRTPADVCMVSSVVSDSDHSPCE061A有PLCC84和QFP80两种封装。封装形式为PLCC84的共有84个引脚。

共 29 页 第 6 页

33343536373839404142434447484950515253VDDHIOA8VMDDVICNCIOA0NCIOA1IOA2IOA3IOA4IOA5IOA6IOA7VSS74737271706968676665636261605958575655 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

表3-1 芯片引脚说明

名称

IOA0-IOA7 IOA8-IOA15 1OB0 IOB1 IOB2 IOB3 IOB4 IOB5 IOB6 IOB7 IOB8 IOB9 IOB10

IOB11-IOB15 RESET X320 X321 DAC1 DAC2 AGC MICN MICP V2VREF MICOUT OPI VADREF VMIC VEXTREF VDDIO VSSIO AVDD AVSS VDD VSS VCION SLEEP ICE ICECLK ICESDA TEST PFUSE PVIN N/C

PLCC84脚位 41-48

说明

IOA[7:0]可设置为键唤醒,IOA[6:0]可设置为ADC输入

53-60 普通I/O 5 可设置为SIO-SCK 4 可设置为SIO-SDA 3 可设置为外部中断触发引脚EXT1 2 可设置为外部中断触发引脚EXT2 1 可与IBO2组成反馈信号 81 可与IBO3组成反馈信号 80 普通I/O 79 可设置为UART-RX 78 可设置为TimerA的PWM输出口 77 可设置为TimerB的PWM输出口 76 可设置为UART-TX 68- 普通I/O 6 复位,低电平有效 12 晶振输出 13 晶振输入 21 音频DAC1输出 22 音频DAC2输入 25 AGC控制脚 28 MIC差分信号输入(负极) 33 MIC差分信号输入(正极) 23 2V基准电压输出 27 MIC前级放大输出 26 MIC次级放大输入 34 AD参考电压输出 37 MIC电源 35 ADC参考电压输入 51,52,75 I/O电源 49,50,62 I/O地 36 模拟电源 24 模拟地 7,15 数字电源 9,19,38 数字地 8 连接电容(PLL电路相关) 63 睡眠模式 16 ICE使能 17 ICE时钟 18 ICE数据 14 TEST接高电平进入测试模式 29 保密设定 20 保密设定 10,11,30,31,32,39,40,61,69, 未用 70,71,72,73,74,82,83,84

共 29 页 第 7 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

3.1.2凌阳单片机最小系统

16位u' nSP™16微处理器;

工作电压(CPU) VDD为2.4~3.6V (I/O) VDDH为2.4~5.5V CPU时钟:0.32MHz~49.152MHz ; 内置2K字SRAM; 内置32K FLASH; 可编程音频处理; 晶体振荡器;

系统处于备用状态下(时钟处于停止状态),耗电仅为2µA@3.6V; 2个16位可编程定时器/计数器(可自动预置初始计数值); 2个10位DAC(数-模转换)输出通道; 32位通用可编程输入/输出端口;

14个中断源可来自定时器A / B,时基,2个外部时钟源输入,键唤醒; 具备触键唤醒的功能;

使用凌阳音频编码SACM_S240方式(2.4K位/秒),能容纳210秒的语音数据; 锁相环PLL振荡器提供系统时钟信号; 32768Hz实时时钟;

7通道10位电压模-数转换器(ADC)和单通道声音模-数转换器;

声音模-数转换器输入通道内置麦克风放大器和自动增益控制(AGC)功能; 具备串行设备接口;

具有低电压复位(LVR)功能和低电压监测(LVD)功能; 内置在线仿真电路ICE(In- Circuit Emulator)接口; 具有保密能力; 具有WatchDog功能。 3.1.3凌阳单片机最小系统

SPCE061A最小系统当中,包括SPCE061A芯片外围的基本模块,晶振输入模块(OSC)、锁相环外围电路(PLL)、复位电路(RESET)、指示灯(LED)等。

1.系统时钟

时钟电路采用晶体振荡器电路,外接晶振采用32768Hz。32768Hz实时时钟通常用于钟表、实时时钟延时以及其它与时间相关类产品。SPCE061A通过对32768Hz实时时钟源分频而提供了多种实时时钟中断源。例如,用作唤醒源的中断源IRQ5_2Hz,表示系统每隔0.5秒被唤醒一次,由此可作为精确的计时基准。

32768Hz的实时时钟经过PLL倍频电路产生系统时钟频率(Fosc),Fosc再经过分

共 29 页 第 8 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

频得到CPU时钟频率(CPUCLK)可通过对P_SystemClock(写)($7013H)单元编程来控制。默认的Fosc、CPUCLK分别为24.576MHz和Fosc/8。用户可以通过对P_SystemClock单元编程完成对系统时钟和CPU时钟频率的定义。

此外,32768Hz RTC振荡器有两种工作方式:强振模式和自动弱振模式。处于强振模式时,RTC振荡器始终运行在高耗能的状态下。处于自动弱振模式时,系统在上电复位后的前7.5s内处于强振模式,然后自动切换到弱振模式以降低功耗。CPU被唤醒后默认的时钟频率为Fosc/8,用户可以根据需要调整该值。CPU被唤醒后经过32个时钟周期的缓冲时间后再进行其它的操作,这样可以避免在系统被唤醒后造成ROM读取错误。电路图如图3-4所示,晶振32768两端分别与两个电容相连,振荡器起振要在一定电压值下才能起振。这两个电容叫负载电容,保持一个恒定的偏置电压供给。电容只是保持这个固定的电压值,不起其他的作用。不同晶振需要不同的电压,和容值是有关系的。

2.锁相环PLL振荡器

系统要正常工作需要外部的输入信号与内部的振荡信号同步,利用锁相环电路就可以实现这个目的。锁相环的特点是:利用外部输入的参考信号控制环路内部振荡信号的频率和相位。因锁相环可以实现输出信号频率对输入信号频率的自动跟踪,所以锁相环通常用于闭环跟踪电路。锁相环在工作的过程中,当输出信号的频率与输入信号的频率相等时,输出电压与输入电压保持固定的相位差值,即输出电压与输入电压的相位被锁住,这同时也是锁相环名称的由来。PLL通过比较外部信号的相位和由压控晶振的相位来实现同步的,在比较过程中,锁相环电路会不断根据外部信号的相位来调整本地晶振的时钟相位,直到两个信号的相位同步。在数据采集系统中,锁相环是一种非常有用的同步技术,因为通过锁相环,可以使得不同的数据采集卡共享同一个采样时钟。

PLL电路的作用是将系统提供的实时时钟的基频(32768Hz)进行倍频,调整至49.152MHz、40.96MHz、32.768MHz、24.576MHz或20.480MHz。系统默认的PLL自激振荡频率为24.576MHz。PLL的电路框图如图3-5所示。

PLL电路分别与芯片的8和9管脚相连,完成输入信号和内部振荡信号的同步。

共 29 页 第 9 页

C1420pOSC032768C1520pY1OSC1

VSS 图3-4晶振电路

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

R23.3KC3C10104

VCP3300p图3-5 锁相环电路

3.复位电路

复位电路的主要作用就是恢复系统默认值,它采用按键与电容并联,当按键按下的时候RES_B与VSS短接,使得电容放电RES_B与VSS相同,RES_B与SPCE061A的6脚(XRESB)相连,达到电路复位的作用。当按下控键按键后系统从新开始工作,或是说单片机里的程序从第一条运行。

复位是对61 板内部的硬件初始化。61 板本身具有上电复位功能,即只要一通电就自动复位。另外,还具有外部复位电路,即在引脚6 上外加一个低电平就可令其复位。复位电路图如图3-6所示。

图3-6 复位电路图

S1SWC13104VSSREB_BR14.7KVDD

3.2 语音模块

语音输出电路如图4所示,其中VDDH为参考电压,VSS是系统的模拟地。音频信号由SPCE061A 的DAC引脚输出送到电路的J4端,通过音量电位器R9的调节端送到集成音频功率放大器SPY0030,经音频放大后,音频信号从SPY0030输出经J2 端口外接扬声器播放声音。

SPCE061A内置2路10位精度的DAC,只需要外接功放电路即可完成语音的播放。图中的SPY0030是凌阳的一款音频放大芯片,可以工作在2.4~6V范围内,最大输出功率可达700mW。

J5 都是语音输出接口,;是两针的插针外接喇叭,由DAC 输出引脚经语音集成

共 29 页 第 10 页

VSSP

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

放大器SPY0030 放大,然后输出。SPY0030 是音频功率放大器。因为声音是不同振幅和不同频率的波,即交流信号电流,三极管的集电极电流永远是基极电流的β倍,β是三极管的交流放大倍数,应用这一点,若将小信号注入基极,则集电极流过的电流会等于基极电流的β倍,然后将这个信号用隔直电容隔离出来,就得到了电流(或电压)是原先的β倍的大信号,这现象称为三极管的放大作用。经过电流与电压的共同放大,就完成了功率放大。R14为可调电阻,当调节阻值大小事,即调节了基极的输入信号,最终影响的就是输出信号即语音输出音量的大小。SPY0030的放大倍数固定为20倍。

DAC

VDDHC31+C320.1uF100uFVSSC330.22uFR131KC300.1uFR14SPY003087U321J512SPL1K

AVSS2C340.1uF图3-7 音频输出电路 语音输入电路如图3-8所示,其中VMC提供传声器的电源,AVSS1是系统的模拟地,VCM为参考电压,1脚和2脚分别是传声器X1的正极、负极的输入引脚,连接SPCE061A的MICP、NICN管脚上。当对着传声器讲话时,1脚和2脚将随着传声器输入的声音产生变化的波形,并在SPCE061A的两个端口处形成两路反相的波形,送到SPCE061A控制器内部的运算放大器进行音频放大,经过放大的音频信号,通过 ADC转化器转化为数字量,保存到相应的寄存器中。

SPCE061A的A/D转换器有8个通道,其中有1个通道是MIC-NI输入,它专门用于对语音信号进行采样。语音信号经过MCI转换成电信号,然后输入至SPCE061A内部前置放大器。由于人们说话时,麦克风距离嘴边的距离不同,语音信号的能量将会有很大的差异,此时,如果芯片的的输入信号太大或是太小都将影响识别的精度。而SPCE06lA内部就带有自动增益控制电路AGC能随时跟踪、监视前置放大器输出的音频信号电平,当输入信号增大时AGC电路自动减小放大器的增益;当输入信号减小时,AGC电路自动增大放大器的增益,从而以补偿太小或是太大的信号,以便使进入户A/D的信号保持在最佳电平,又可使削波减至最小。

SPCE061A芯片中已经集成了音频输入专用ADC以及AGC放大电路,因为此芯片外部的电路比较简单。

共 29 页 第 11 页

36 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

MICP和MICN将随着MIC产生的波形变化,并在两个端口处形成两路反相波形,在经过两级运放放大,把放大的语音信号交给ADC转换为数字量,这时就可以通过单片机编程对这些数据进行处理,进行语音处理识别等功能。

正如我们在前面介绍的61 板具有强大的语音处理功能,如图 3-8所示,X1 是语音的MIC 输入端,带自动增益(AGC)控制。

AVSS1R83KX11212224C24MICN224AVSS1C22R7VMC1KC25VCM+C2622u+220uR43KR910KR1010K104AVSS1C23MICPMICROPHONE

图3-8 音频输入电路 3.3 SPR4096外扩Flash模块

在本系统中,当我们对系统进行训练、识别、操作时,有一些语音提示,由于SPCE061A内部只有32k字的flash空间,除了一部分空间作为程序的存储之后,剩下的用来存储语音数据时远远不够的,于是系统外扩了flash。SPR4096与SPCE061A的连接方式为:SCK与SPCE061A的IOB0接,SDA与SPCE061A的IOB1口接。SPR4096按串行接口模式工作,要把CF2~CF0均接高电平。CF7为低电平时选中FLASH,高电平时选中SRAM。

SPR4096是一个高性能的4M-bit(512×8-bit)FLASH,分为256个扇区。每个扇区2Kbyte。SPR4096还内置了以个4K×8bit的SRAM。在进行FLASH的编程/擦除时,可以并发执行SRAM的读/写。SPR4096内置了一个总线存储器接口和一个串行接口,它允许单片机通过8-bit并行模式或者1-bit的串行模式访问FLASH/SRAM存储区。

SPR4096串行接口的工作频率可达到5MHz。SPR4096有两个电源输入端VDDI和VDDQ。VDDI是给内部FLASH和控制逻辑供电的;VDDQ是专门为I/O供电的。

共 29 页 第 12 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

供电电压VDDQ:2.25V~3.6V。SPR4096最大读电流为2mA,最大编程/擦除电流为6 mA 。SPR4096模块包括总线存储接口,串行接口,SRAM,编程与擦除控制器和一个4M的FLASH。选择串行接口时,SCLK作为时钟信号线,SDA作为1-bit的数据线。如果接收到FLASH的读指令或者SRAM的读/写指令,串口会把这些指令传给编程和擦除控制器,让编程和擦除控制器去完成相应操作。

串行接口模式的选中是通过CF2~CF0来实现的。当CF2~CF0均接高电平时,选中的就是串行接口模式,在串行接口模式下,CF7为低电平时选中FLASH,高电平时选中SRAM。该芯片有SIF(Serial Interface)和BMI(Busmenory Interface)两种工作方式,但DIP24只支持SIF方式。

图3-9 SPR4096存储模块 VSSIOB1IOB0C20VSS0.1uFC18SDAVSS0.1uFD14148VSS1234567101112U2VDDSDAVSSQVDDQCF7CF4CF3CF0-2NCNCNCNCSPR4096_24PVSSVDDQSCKRESVSSNCNCNCNCNCNCNC242322SCK212019181716151413VDDVDDVDDC190.1uFR510KR62KVSS4096PORT341SDA2SCKC211uFS1SWVSS3.4系统电源电路设计

SPCE061A采用低电压供电方式,这可以大大降低芯片的功率损耗。其中,SPCE06lA的电源分两种,即内核电源(VDD)和I/O口电源(VDDH)。I/O口电源采用5V电压,而内核电源则为3.3V或者更低。降低芯片内核电压的目的主要还是降低芯片的功耗,同时也可以降低芯片的工作温度,延长芯片使用寿命。尽管这种语音芯片的工作电压范围很大,但是为了使芯片内核运行更加稳定,同时又保证I/O口及外部扩展部件的工作电压要求,电源电路采用芯片7805和SPY0029分别提供5V和3.3V电压完成对整个系统供电。

7805芯片电路中正常工作是,输入、输出电压差为2~3V。电路中靠近引脚处接入电容C40、C41用来实现频率补偿,防止稳压器产生高频自激震荡和抑制电路引入的高频干扰,C39是电解电容,以减小稳压电源输出端由输入电源引入的低频干扰。

共 29 页 第 13 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

D6是保护二级管,当输入端短路时,给输出电容器C39一个放电通路,防止C39两端电压作用于调整管的be结,造成调整管be结击穿而损坏。如图3-12所示

SPY0029芯片电路采用3节5号干电池供电,其中前后两组电容用来去耦滤波,使其供给芯片的电源更加干净滑。为了获得标准的3.3V电压,在电路上加入SPY0029三端稳压器和两个二级管,是为了防止误将电源接反造成不必要损失而设置的。在实际应用中最好不要把电源接反,因为反向电压超过一定值,二极管会被损坏,达不到保护母的。后面的零电阻及电源分成不同的几路是为了减少电磁干扰设置的。图3-10是电源部分电路,4.5V直流电压经过SPY0029后产生3,3V给整个系统供电。SPY0029是凌阳公司设计的电压调整IC,采用CMOS工艺。SPY0029具有静态电流低、驱动能力强、线性调整出色等特点。图中VDDH为SPCE061A的I/O电平参考,接SPCE061A的51脚,这种接法使得I/O输出高电平为3.3V;VDDP为PLL锁相环电源,接SPCE061A的7脚;VDD和VDDA分别为数字电源与模拟电源分别接SPCE061A的15脚和36脚;AVSS1是模拟地,接SPCE061A的24脚;VSS是数字地,接SPCE061A的38脚;AVSS2接音频输出电路的AVSS2。

D5D61N4148T1N4148220V12VD7D8C391N41481N41480.33uF+D9 2+4.5V 1J101N414817805VinGNDVout3VCC+5V2C400.1uFC4110uFVSSR140U32VinGNDVDD_AVDD_PVDDVDDHR150Vout3+3.3VR160R170SPY0029+C371D31N4148D41N4148C380.1uFR18R19R20000VSSAVSS1AVSS2+C35220uFC360.1uF220uF

VSS图3-10 电源电路模块 共 29 页 第 14 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

3.5控制与结果显示电路

系统的控制显示电路主要是通过键盘电路以及LED液晶电路来实现其中键盘主

要用来控制当前系统所应该执行的一些功能,比如模板的训练、模式的匹配等。本设计在实验阶段考虑成本不加入LCD显示模块,在实验后可加入LCD模块如图3-9所示。

1.键盘模组

键盘模组可直接用排线与61单片机I/O口相连。1*8KEY 的8 列分别定义为COL1~COL8,1 行定义为ROW1。如图3-11所示。

按键分别和SPCE061A的IOA0~IOA7相连,他们的作用分别为1个系统开关键,1个系统复位键,1个单个命令训练按键,1个所有语句循环训练按键,剩余4个初步设定为LCD功能控制按键。每个按键的按下与抬起都会送给IOA口一个电压值,当按键按下使相应的IOA口得到一个高电压。相反,则为低电压。单片机则根据IO口的电压值进行相应的操作。 IOA0IOA1IOA2IOA3IOA4IOA5IOA6IOA7K8K7K6K5K4K3K2K1IOA8 图3-11 1*8KEY 接口图及使用示意图

2.LED模组

本论文中间接利用LED显示来测试是否达到控制电器目标。利用数码管显示数字的不同来模拟验证是否能达到对家用电器的控制。

LED和LCD电路作为系统的显示部分,以显示当前的系统状况及识别结果以便检验实验结果和提示用户进行下一步操作。LCD部分在实验阶段可不接入。

计划采用内置SPLC0501点阵式图形液晶显示模块由液晶驱动控制器SPLC501、LCD显示器和外部设备的接口等几部分组成,液晶驱动控制器SPLC501集行、列驱动器、显示数据存储器(DDRAM,Display Data RAM)和控制器与一体,广泛用于小规模液晶显示模块。内置SPLC501点阵式图形液晶显示模块的管脚排列和SPEC061A接线方法如图3-12所示

共 29 页 第 15 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

IOA01.5KR

WD031AX12G19G2LED3C8G36G4Q33904R57IOA31.5KLED4DQ43904R58IOA41.5KLED5EQ53904R59U7ULN2003AIOA51.5KIOB2IOB3IOB4IOB4G1G2G3G4LED6FQ63904R60VSSIOA61.5KLED7GQ73904R61IOA71.5KLED8HVSSQ83904R53240R52240IN 1IN 2IN 3IN 4IN 5IN 6IN 7GNDOUT 1OUT 2OUT 3OUT 4OUT 5OUT 6OUT 7COMR5124012345678161514131211109R50240R49240

LED1AQ13904R55IOA11.5KLED2BQ23904R56IOA21.5KR48240R47240R46240

VCC

A11B7C4D2E1F10G5H3aG1abG2cfgbdceeddpfgG3dpG4图3-12 LED模块 长 春 大 学 语音识别器的设计

图3-13 SPLC501LCD显示模块 共 29 页 第 16 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

第4章系统软件设计

4.1 语音识别技术介绍

近年来,人们对自动化产品的需求推动了语音识别产品的开发与研究。语音识别技术是实现人机通信的一种重要的技术手段,它使人们能够摆脱键盘,通过语音命令实现控制功能,语音识别产品在人机交互应用中已经占到越来越大的比例。然而目前语音识别主要是借助大型计算机系统来实现,不易推广和应用,这里研究的是基于凌阳SPCE061A单片机嵌入式语音识别系统。[2] 4.1.1 基本原理

语音识别技术就是一种让机器通过识别和理解过程把语音信号转变成相应的文本或命令的技术。机器语音识别、处理的过程与人对语音识别、处理的过程基本上是一致的, 目前主流的语音识别技术是基于统计模式识别的基本理论。一个完整的语音识别系统可大致分为语音特征提取、声学模型与模式匹配( 识别算法) 和语义理解三部分。其基本原理如图4-1所示:

从图中我们可以看出语音识别一般分为两个步骤: 第一步是系统“学习”或“训练”阶段, 这一个阶段的任务是建立识别基本单元的声学模型以及进行文法分析的语言模型, 即构建参考模式库; 第二步是“识别”或“测试”阶段, 根据识别系统的类型选择能够满足要求的识别方法, 采用语音分析方法分析出这种识别方法所要求的语音特征参数, 按照一定的准则和测度与参考模式库中的模型进行比较, 通过判决得出结果。

图4-1 语音识别系统原理框图

参考模板语音输入去噪端点检测特征提取模式匹配识别结果输出共 29 页 第 17 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

语音识别分为特定人识别和非特定人识别两种方式。特定人识别是指语音样板由单个人训练,对训练人的语音命令识别准确率较高,而对其他人的语音命令识别准确率较低或不识别;非特定人识别是指语音样品由不同年龄、不同性别、不同口音的人进行训练,可以识别一群人的命令。

根据说话人说话方式的不同又可以将语音识别分为孤立词识别和连续语音识别。孤立词识别系统要求说话人每次只说一个字词、一个词组或一条命令让识别系统进行识别,其中的词组或命令在词汇表中算是一个的词条;连续语音识别是指由多个数字连接成的多位数字串的识别或由少数指令构成的连接词条识别。

在本系统中, 我们采用语音信号的短时能量和短时过零率进行端点检测, 用线性预测倒谱系数(LPCC) 作为特征参数, 语音特征提取是分帧提取的。基于本系统采用孤立词识别的特点, 我们采用动态时间规整(DTW) 算法进行模式匹配。[5] 4.1.2端点检测

语音信号的端点检测是指用数字处理技术来找出语音信号中的各种段落(如因素、音节、词素、词节等)的始点和终点的位置。在汉语中,其主要母的是找出字的两个端点,进而找出其中的声母段和韵母段的各自位置。这种处理对于汉语语音识别是非常必要的。

噪声语音信号的端点检测室语音识别系统中及其关键的一步。只有准确地判断语音信号的端点才能正确地进行语音识别。在本系统中我们采用的是基于短时能量和短时平均过零率的检测方法,又称为是双门限比较法。

我们定义以n为标志的某帧语音信号的短时平均能量En En上式可以解释为:首先计算原始语音信号各个采样值的平方,然后通过一个冲击响应为h(n)的滤波器,最后输出能量序列,这里h(n)w(n)2。

信号的幅度值从正值到负值要经过零值,从负值到正值也要经过零值,称其为过零,统计信号在单位时间内的过零次数就称为过零率。如果信号按段分割就称为短时,把各段信号的过零率作统计平均就是短时平均过零率,其定义式为:

znm[x(m)w(nm)]2mnN1n[x(m)w(nm)]2 (4.1)

在语音开始前,一旦有某一帧的能零值超过阈值,就认为有效语音已经开始。这样做的目的在于能使某些能零值较小的辅音易于进入有效语音段。当然一个短时的噪音也有可能被当作有效语音,这种情况将由语首尾细判及字词分割部分去除。

在有效语音开始后,只有当有连续的几帧语音的能零值低于阈值时,才认为有效语音结束。这样保证了当一个字刚刚结束而另一个字尚未开始时,不会将后面的语音截断。多余的无效语音样值也由语音首尾细判和字词分割部分去除。阈值的大小由噪

m sgn[x(m)]sgn[x(m1)]w(nm) (4.2)

共 29 页 第 18 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

音统计部分给出。 4.1.3语音信号的特征参数

语音信号是十分复杂的非平稳信号,它不仅包含语义信息,还有个人特征信息,对其特征参数的研究是语音识别的基础。本系统采用线性预测倒谱参数(LPCC)作为语音信号的特征参数。

线性预测倒谱参数是线性预测系数在倒谱域中的表示。该特征是基于语音信号为自回归信号的假设,利用线性预测分析获得倒谱系数。它的优点是计算量小、易于实现、对元音有较好的描述能力。

由于通过自关法求得的LPC系数保证了系统的稳定性,由LPC得到:

nknkCLPCC(n)CLPC(n)CLPCC(nk)CLPC(k) (4.3)

nn

根据同态处理的概念和语音信号产生的模型,语音信号的到谱c(n)等于激励信号的倒谱e(n)和声道传输函数的倒谱h(n)之和。通过分析机理信号的语音特点以及声道传输函数的零极点分布情况可知e(n)的分布范围很宽,c(n)从低时域延伸到高时域,而h(n)主要分布于低时域中,我们知道,语音信号所携带的语义信息主要体现在声道传输函数上,因而在语音识别中通常取语音信号的倒谱的低时域构成LPC倒谱特征c即:

cc(1),c(2),...,c(q) 10≤q≤16 (4.4) 式中,q为LPC倒谱特征的阶数。 4.1.4动态时间规整

动态时间规整(DTW)是把时间规整和距离测度计算结合起来的一种非线性规整技术。假设:①参考模板特征矢量序列为a1,a2...am;②输入语音特征矢量序列为

b1,b2,...bN,其中M≠N,那么动态时间规整是要寻找时间规整函数mw(n),它把输

入模板的时间轴n非线性地映射到参考模板的时间轴m,并且该w满足:

Dmin d[n,w(n)] (4.5)

n1N式中,d[n,w(n)]是第n帧输入矢量和第m帧参考矢量的距离,D是相应于最优时间规整下二模板的距离测度。DTW是一个典型的最优化问题,它用满足一定条件的时间规划函数w(n)描述输入模板和参考模板的时间对应关系,并求解二模板匹配时累计距离最小所对应的规整函数。

实现动态时间规整的常用方法就是动态规划(DP),本系统采用加权累计距离的对称动态规划技术。假设规整函数写成:

共 29 页 第 19 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

Fc1,c2,...ci,...,c1,其中ci(ni,mi)

其约束条件如下:

(1) 单调和连续条件:0nini11,0mimi11; (2) 边界条件: n1m11,n1N,m1M;

丨n1m丨(3) 调整窗条件:1r

定义加权累计距离:

d[n,m]Wjjij D(ni,mi)=minj1Wj1i (4.6)

j式中,d[nj,mj]和式(4.5)中相同,是对点cj(nj,mj)上两个矢量的距离,加权系数Wj一般采用对称形式:

Wj(njmj1)(mjmj1), 其中n0m00 (4.7)

分母Wj用来补偿规整函数F中点数i的影响,按照等式(2.7)定义的Wj,有

iWjMN常数。调整窗口函数r的引入使它的使用范围更加广泛。累计距离还

可以用递推公式计算:

D(n,m1)d[n,m]D(n,m)=minD(n1,m1)2d[n,m] (4.8)

D(n1,m)d[n.m]

j1ij1初始条件:D(1,1)2d[1,1]。

最后计算结果:D(N,M)D(N,M)/(NM)作为二模板的DP匹配距离。 由于基本的DTW方法只适用于识别基元较小的场合,例如声母、韵母、音节的识别,因此多用于孤立词的识别。现在常用的语音识别方法还有隐式马尔科夫模型(HMM)、神经网路等。

4.2 语音训练与识别

前面一介绍语音识别方式有两种,一种是特定人识别(SD),特定人识别之前需要进行语音训练:另一种是非特定人识别(SI),非特定人识别不需要进行语音训练。本系统采用的是前一种识别模式。

特定人识别的原理如图4-2所示:

共 29 页 第 20 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

从实现过程的时序来看, 可将语音识别在单片机上的实现过程分为4 个主要阶段:初始化、训练、辨识和辨识结果输出。

1.初始化

训练的语音模型库样板数据存于SPCE061A 单片机的内部RAM中, 由于是掉电丢失的, 因此每次上电复位后都要重新进行训练, 可用函数BSR_Delete_SDGroup(int SDGroupNo)实现, 当SDGroupNo= 0 时表示选择RAM并开始初始化。若RAM擦除成功则返回“0”, 否则返回“- 1”。

2.训练

训练过程通过调用库函数BSR_Train (int WordID,intTrainMode)来完成。其中参数WordID 为命令序号, 范围0x100~ox105, 并且对于每组训练语句都是唯一的; 参数TrainMode 为训练次数, 为1 时表示要求使用者在应用之前训练一次; 为0表示训练两次。为了增强可靠性, 最好训练两次, 只有两次命令相同时才成功。该函数有8 种可能的返回值, 其中“0”表示训练成功。

3 .辨识

辨识部分是整个语音识别过程的重点, 这部分执行效果的优劣将直接影响到语音识别的准确性和及时性等指标。按执行顺序, 可将辨识分为辨识器初始化、启动实时监控、获取辨识结果、停止辨识等4 个环节。

辨识器初始化

用来定义语音输入来源, 可通过调用函数BSR_InitRecognizer(int AudioSource)完成, 其中参数AudioSource 为0 时表示MIC 语音输入, 为1 时表示LINE_IN 模拟电压输入。当主程序调用该函数时, 语音辨识器便打开8KHz 采样频率的FIQ_TMA中断, 并开始将采样得到的语音数据填入语音辨识器的数据队列中。

启动实时监控

由函数BSR_EnableCPUIndicator(void)完成该功能, 无参数、无返回值。通过调用相关的硬件资源对辨识过程进行实时监控, 保证辨识能正常地执行,若辨识正常,

共 29 页 第 21 页

语音输入 训练阶段 特征提取 识别阶段 图4-2特定人语音识别原理 识别结果 匹配检验 语音特征模型 语音输入 特征提取 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

会产生一个16ms 连续稳定的方波。

获取辨识结果

由函数BSR_GetResult(void)完成语音识别, 并返回语音识别结果。当识别成功时, 返回命令的对应序号; 无命令识别出来时, 返回“0”; 识别器未初始化, 返回“- 1”。

停止辨识

调用函数BSR_StopRecognizer (void), 则停止语音辨识, 此时FIQ_TMA 中断也将关闭。

4.辨识结果输出

辨识结果可通过显示、声音等方式实现。显示方式如LED、数码管、LCD 等, 均有一定的提示作用; 这里重点介绍的是用声音方式体现辨识结果, 即语音响应的方式, 通过播放发音者各语音命令对应的语音响应(提示音), 告知发音者辨识是否成功。可利用凌阳提供的压缩算法工具(Compress Tool), 把事先录制好*.wav 文件压缩为一定格式, 存放于工作目录, 作为语音响应。若需要播放, 则通过调用相关API 函数来完成。

4.3系统软件设计

系统的工作过程为: 训练模式启动后, 系统播放语音提示, 提示用户语音训练己启动, 接下来用户可按照系统提示依次对各条命令进行训练, 在训练过程中, 如训练成功则有语音提示进行下一条命令进行训练, 如出现训练失败, 也会提示用户继续训练此条语音, 直到全部命令训练完毕后系统将准备进行语音识别: 当向控制器发出语音命令时, 声波通过Mic 输入, 将相应的信号传递到SPCE061A 处理芯片, 经编解码电路和数字信号处理后, 在芯片中通过相关程序与预先植入的语音库中的命令进行比较识别, 根据识别的结果进行判断, 转换为能被系统识别的信号, 从而对被监控系统进行控制。在此次设计中利用预先编号的程序直接将结果反映在LED显示器上。

共 29 页 第 22 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

开始初始化判断是训练还是识别?训练清除RAM识别识别器初始化提示训练开始提示识别开始依次训练各条命令进行匹配识别所有命令训练成功否?识别成功否?N提示训练失败Y提示成功 YN执行各电器控制子程序播放失败提示图4-3 系统主流程图 共 29 页 第 23 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

4.4软件主程序

本系统的软件主要包括一个主程序和四个子程序,主程序主要负责对整个控制器的工作进行管理、协调和对子程序的调用以及对用户的各种服务的响应。四个子程序分别是语音识别、DTMF收发、语音录放、信号音检测四个子程序。限于篇幅,下面只对语音识别子程序的程序设计进行介绍。

语音识别技术方面有bsrv222SDL.lib库函数支持,在使用时通过调用库函数里相关的API函数来实现所要求的功能。下面给出语音识别的具体代码。其中,BSR-GetResult函数为启动辩识,当无命令识别出来时,返回0;识别器停止、未初始化或识别未激活返回-1;当识别不合格时返回-2;当识别出来时返回命令的序号。部分程序源代码如下:

Result = BSR_GetResult(); //获得识别结果

if(Result>0) //有识别结果? {

if(Result==NAME_ID) //名称 {

PlaySnd(S_RDY,3); //播放待命提示音

Ready=1; //进入待命状态 }

if(Ready==1) //待命状态? {

switch(Result) {

共 29 页 第 24 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

case COMMAND_GO_ID:

//识别出第一条命令

GoAhead(); //执行动作一 Ready=0; break;

case COMMAND_BACK_ID:

//识别出第二条命令

BackUp();//执行动作二 break;

case COMMAND_LEFT_ID:

//识别出第三条命令

TurnLeft(); //执行动作三

Ready=0; break;

case COMMAND_RIGHT_ID:

//识别出第四条命令

TurnRight(); //执行动作四

共 29 页 第 25 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

Ready=0;

break;

default: break; }

共 29 页 第 26 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

结论

本文基于凌阳公司的16位微处理器SPEC061A为控制核心,设计了语音识别控制系统。实现了对家用电器的智能语音控制,使控制装置智能化方便化集中化。具体工作如下:

(1)硬件部分采用模块化设计,主要由MIC 输入模块、单片机、存储模块、功放和喇叭输出模块、外设的电源模块、键盘模块和液晶显示电路模块构成单元组成。

(2)软件部分的模块设计主要包括:单片机初始化模块,语音训练模块,语音识别模块、输出控制模块等构成。

由于时间的,在毕业之前只能做到现有程度。在本次毕业设计完成以后,可以尽量对本系统进行了相应的扩展,如添加单片机分控制系统,增强系统的功能,扩展单片机的接口技术,节约和改进系统利用率,本系统语音识别部分是采用DTW方法实现的特定人孤立词识别,并且识别率的稳健性不大高,这就了其应用的广度。我从文献中了解到许多修正DTW的方案,例如端点放宽的DTW方法、非线性取样等方法,另外我们还可以采用目前比较流行的HMM模型来完成非特定人连续语音识别。为了提高语音识别的精度和准确率,我们可以在原来语音识别的基础上加上图像识别,通过观察说话人的口型来进一步对语音进行识别。

虽然实现了语音控制家用电器,但是总的来说系统界面不是很友好。为此,我们可以充分利用计算机和通信技术,并用VB等软件开发友好的管理界面,将数据和其他信息通过计算机统一进行管理和控制。

随着经济的发展,人们物质文化需求日益增长 ,智能家居系统必将受到人们的青睐。它能大大提高人们的生活品质,为人们带来高度智能化的生活。相信这种界面友好功能强大的单片机系统会有广阔的应用和发展前景。

共 29 页 第 27 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

致谢

真诚感谢我的导师 给我的无私帮助和谆谆教导。张老师治学严谨、孜孜以求、一丝不苟、兢兢业业,严以律己、宽以待人,这对我养成认真踏实的工作作风和虚心钻研的学习态度尤为有益。另外,许多代课老师老师也给予了我莫大的帮助,在学业和生活中给予我无私的关怀和指引。本论文的撰写正是在他们的悉心指导和关心下完成的,从开始整体方案的选择、方案的制定、工作实施到论文的修改无不渗透着他们的心血。他们渊博的知识、卓越的才智、严谨的治学精神和求实创新的工作作风使我受益非浅;他们对我的教诲、关心和培养使我对以后的工作充满信心。借此论文完成之际,谨向他们致以崇高的敬意和诚挚的感谢!

感谢我的家人,多年来,他们在精神及物质上一直都给我以巨大鼓励和支持,无论遇到什么困难,他们都给我以力量,激励我奋勇前进。

感谢所有在学校期间给我关心和帮助的老师、同学和朋友们。

共 29 页 第 28 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

参考文献

[1] 柳春.语音识别技术研究进展[J].甘肃科技,2008.09~12 [2] 杨尚国.语音识别技术概述[J].福建电脑,2006.08~19 [3] 熊燕.抗噪声语音识别技术研究[J].中国科技信息,2006.07

[4] 刘筠.一种新型语音识别系统[J].成都大学学报(自然科学版),2008.03 [5] 张震宇,王华.基于凌阳单片机的语音识别技术及应用[J].微计算机信息,2007 [6] 英锋.基于SPCE061A的语音识别系统的设计[J].微计算机信息,2008.17 [7] 李胜.语音控制应用系统设计.机械工程学报[J],2002 [8] 刘幺和.语音识别与控制应用技术[M].北京科学出版社,2008

[9] 管晓春,杨勇. 基于SPCE061A 的数码语音录音及播放系统的设计[J] . 电脑应用技术,

2007(11) .35~40

[10]刘海成,秦,韩喜春. MCU2DSP 型单片机原理与应用—基于凌阳16 位单片机[M] . 北京:

北京航空航天大学出版社,2006

[11] 刘萌, 赵建平, 刘秋霞, 郝玲艳. 基于凌阳SPCE061A的语音识别系统设计[J]. 微型电脑

应用 , 2007(06)

[12] 段世政, 聂惠娟. 基于SPCE061A的语音识别系统设计[J]. 新乡师范高等专科学校学报 ,

2006.(05)

[13] 高红亮, 刘金华. 基于ZIGBEE技术的无线语音识别系统设计[J]. 电子技术 , 2008,(10) [14] 高红亮, 刘金华. SPCE061A在智能家居系统中的应用[J]. 微计算机信息 , 2009,(20) [15] 白雪, 张兵. 特定人语音识别技术在家居灯具中的应用[J]. 电脑学习 , 2008,(04) [16] Cabel R A,Roberts R A.Signals and Linear systerm,3rd ed.[s.l.]:John Wiley and Sons,Inc,1987 [17] Li, Guoping1,Lutman, Mark E1,Wang, Shouyan1Bleeck, Stefan1. International Journal of

Audiology; Feb2012, Vol. 51 Issue

[18] Lynn P A.Electronic signals and systems.[s.l.]:Macmillan Education LTD,1986 [19] Cadzow J A.Signals,systems and Transforms.[s.l.]:Prentice-Hall,Inc.,1985

[20] Muth E J.Transform Methods with Applications to Engineering and Operations

Research.[s.l.]:Prentice-Hall,Inc.,1977

共 29 页 第 29 页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

目录

第1章绪论 ........................................................ 1

1.1引言 ....................................................... 1 1.2国内外智能语音识别系统发展现状 ............................. 1 1.3主要工作 ................................................... 2 第2章系统设计方案的研究 .......................................... 3

2.1方案总体比较和选择 ......................................... 3 2.2方案具体分析 ............................................... 3 第3章系统硬件设计 ................................................ 5

3.1硬件总体结构和工作过程 ..................................... 5

3.1.1凌阳SPCE061A介绍 .................................... 5 3.1.2凌阳单片机最小系统 ................................... 8 3.1.3凌阳单片机最小系统 ................................... 8 3.2 语音模块 ................................................. 10 3.3 SPR4096外扩Flash模块 .................................... 12 3.4系统电源电路设计 .......................................... 13 3.5控制与结果显示电路 ........................................ 15 第4章系统软件设计 ............................................... 17

4.1 语音识别技术介绍 ......................................... 17

4.1.1 基本原理 ........................................... 17 4.1.2端点检测 .......................................... 18 4.1.3语音信号的特征参数 .................................. 19 4.1.4动态时间规整 ........................................ 19 4.2 语音训练与识别 ........................................... 20 4.3系统软件设计 .............................................. 22 4.4软件主程序 ................................................ 24 结论 ............................................................. 27 致谢 ............................................................. 28 参考文献 ......................................................... 29

i

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

长 春 大 学 语音识别器的设计

i

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sarr.cn 版权所有 赣ICP备2024042794号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务