基于基于Arduino的语音识别与控制系统实现的语音识别与控制系统实现
通过对Arduino开发板的研究,将声控技术引入到智能系统的设计当中,实现了一套基于Arduino的语音控制系
统。本文首先确定了各硬件模块的选型,并在拟定了各模块之间的通信接口后对Arduino引脚资源进行整合、分
配,搭建了系统的硬件平台。在软件设计部分,编写了监控程序、功能实现程序、中断服务程序,最终实现了
对机械手的语音控制以及语音播报的功能。此外,系统还增设了登录口令验证和错误识别吸收功能,从安全、
效率两个方面改进系统的性能。实际应用测试表明,在低噪或无噪条件下,该系统识别精度高,稳定性好,达
到了预期要求。
摘摘 要要: 通过对
关键词关键词: Arduino;机械手;
0 引言引言
随着自动化控制技术和智能化技术的飞速发展,人们开始追求轻松、有序、高效的智能化生活方式,智能家居也应运而
生。然而,触屏控制、鼠标控制等传统的控制方式,它们繁复的按键操作和菜单操作不符合智能化导向,并不适用于智能系统
的设计。近年来,人们的焦点开始转移到语音技术及其应用上面,国内外企业积极地拓展语音市场。智能语音产业是通过语音
识别技术和语音合成技术为使用者提供各种服务的产业。语音合成技术和语音识别技术实现了简单易行的人机接口,代表了更
好的用户体验度,充分体现了人性化的产品设计理念[1]。本文主要采用意大利开源Arduino Uno开发板设计了一套声控智能系
统,能完成针对非特定人、小词汇量语音识别。声控技术的引入摆脱了用双手控制机械的模式,实现了真正意义上的智能,设
计成果可应用于智能家居系统,这一研究可帮助和简化人们的生活,有助于开拓智能家居的新市场。
1 语音识别工作原理语音识别工作原理
语音识别技术是让机器通过识别和理解过程,把人类的语音信号转变为相应的文本或命令的技术,属于多维模式识别和智
能计算机接口的范畴。模式匹配原理被目前大多数语音识别系统所采用,它将未知语音进行特征提取并与参考模式库中已知语
音参考模式逐一地进行模式匹配,其中最佳匹配的参考模式被选为识别结果[2-3]。
当前语音识别技术的主流算法,主要有基于动态时间规整(DTW)方法、基于非参数模型矢量量化(VQ)方法、基于参
数模型的隐马尔可夫模型(HMM)方法和基于人工神经网络(ANN)等[4]。语音识别技术可以被划分为特定人语音识别和非
特定人语音识别,根据所针对的发音人的不同,特定人语音识别技术只能识别某几个人的语音,后者则可用于任何人,技术实
现相对复杂但更加符合实际需要。
本系统设计选用了中文语音识别芯片LD3320,通过将待识别的内容设置成关键词列表,能实现不需要用户事先录音和训
练的非特定人语音识别[5]。
2 系统设计系统设计
2.1 系统硬件平台搭建系统硬件平台搭建
本文设计的基于Arduino的语音识别及控制系统,是一个建立在语音识别技术基础上,并在Arduino核心处理器的控制下对
输入的语音命令做出特定输出响应的系统[6]。系统包括四个部分:MCU模块、语音识别模块、语音合成模块、机械手模块。
语音识别模块作为该系统的人机交互接口,用户的语音命令由此输入,其语音识别正确率决定了系统的运行质量;语音合成模
块和机械手模块作为系统对外输出部分,在MCU的控制下,做出对语音输入的响应[7-8]:语音合成模块播报提示音提示系统
当前状态,提供了更好的用户体验度,机械手模块则进行与命令对应的二维抓取运动。图1为系统硬件结构框图。
2.1.1 Arduino开发板
系统由源自意大利的开源、便捷灵活的开源电子原型平台Arduino Uno作为主控系统。Arduino Uno提供了丰富的引脚资
源,包括14个数字I/O(DIGITAL 0~13),其中6个数字口,可提供PWM输出用于控制舵机,6个模拟I/O口(ANALOG
0~5)。其简单的开发方式利于缩短开发的周期,适合用于交互产品开发[9-10]。
2.1.2 语音识别模块
无线语音模块选用开源硬件厂商DFRobot生产的中文语音识别板DFR0177。DFR0177与Arduino之间通过同步串行外设接
口(Serial Peripheral Interface,SPI)进行通信。模块的核心是LD3320中文语音识别芯片,当麦克风采集到语音信号
时,LD3320发送低电平请求中断,MCU执行ASR识别流程序[11],其识别过程如图2。
评论5