当前位置:首页 期刊杂志

基于树莓派的智能语音控制系统的设计

时间:2024-09-03

西北民族大学 安 莹 吴先梅 蓝俊欢 马小莉 杜福聪

1 引言

在现在这个社会,智能语音识别控制已成为发展最热门的领域,智能语音识别控制也将是最近几年来的一种必然趋势,因此,语音识别技术和智能控制的进步与其相互之间的互动相结合将是一个非常有意义的设计理念。

语音识别技术是以语音作为一个研究对象,通过采集到的语音信号来让机器自动识别、处理并理解人类口头语言的一种技术。语音识别技术通过对语音信号的采集和处理使机器能够识别的程度,然后接收相应的文本并执行命令。它将声学、语言学、语音学、信息理论交叉学和模式识别与神经生物学理论完美的结合起来。语音识别技术正逐步成为计算机信息处理技术的一种至关重要的技术,它的使用已成为一个非常有竞争力的高新技术行业。

2 国内市场前景

在当今社会智能化成为热门主题,智能化控制更是重中之重。为了便利人们生活,语音识别开始流行起来,通过语音识别能更快捷、更方便的帮助人们达到最想要做的事情。

语音识别控制随着产业的发展,智能语音识别控制的功能越来越丰富,语音识别控制的对象不断扩大,语音识别控制的联动场景要求越来越高,其不断发展到各种领域之中,可以说智能语音识别技术几乎可以涵盖所有传统的弱电行业,市场发展前景诱人。

本项目设计一种基于树莓派的智能语音控制系统,采用功能强大的树莓派作为主控芯片,通过语音识别系统来把识别的语音数据传给树莓派,然后树莓派依据语音系统发送的不同内容来控制不同的子系统,例如可以语音识别来控制LED灯、风扇、门等操作。

3 语音识别功能

语音识别的基本原理如下图所示。语音识别包括两个阶段:训练阶段和识别阶段。无论是训练还是识别,都需要对输入语音的信号进行预处理和提取其特征值。训练阶段所做的具体工作是采集许多的语音语料,经过不断地处理和提取后得到特征矢量参数,最后通过特征建立数学模型来达到建立训练语音的参考模型库的目的。而识别阶段所做的主要任务就是将输入语音的特征矢量参数和参考模型库中的参考模型进行类似的度量比较,然后把类似的度最高的输入语音特征矢量作为识别结果输出。

这样,最后就达到了语音识别的目的,其流程如图1所示:

图1 语音识别流程

4 硬件基础功能

语音识别控制系统:语音识别是一门交叉学科,也被称为自动语音识别,其任务是将人类的语言中的话语的声信号转换为计算机可以识别处理的信号,我们通过识别不同的信号来使语音模块给树莓派产生不同的信号来供给树莓派来识别和采集。

本项目主控芯片采用树莓派,相比传统STC89C51芯片、MC-9S12XS128芯片和K60N512VM100芯片等芯片相比具有更高的性能与功能,且其代码使用Linux系统下的Python语言相比传统的C语言更具有语音简便、库函数丰富、功能强大和操作方便的优点等。

树莓派:树莓派是类似于一种微型的便携电脑,又是基于ARM的,以至少4G以上内存的存储卡为内存硬盘,烧录Linux系统,本项目采用树莓派作为主控,采用其Python环境下的Python语言进行编程。

被控制子系统模块:能通过语音控制系统来打开的LED灯、还能控制舵机的转动来带动各种物体的转动以及风扇的开关等。

本项目的大体流程如图2所示:

图2 语音控制系统大体流程

5 软件基础功能

应用Linux的Python编程编写。本项目采用的树莓派,其内置Linux系统,在安装了Python的环境下,使用Python语言来进行程序的编写及对树莓派的控制。

Python语言介绍:

Python具有非常广泛的库。它常被昵称为胶水语言,基本上能够把任何语言编写的各种函数(例如C/C++)很简单地连接在一起。最广泛的一种使用情形就是,使用网上的专门的Python快速生成程序的软件(有时可以是程序的最后界面等),然后对其中有特殊需求的部分,采用更方便的语言来编写,比如3D游戏中的图形渲染中的插件里,性能需求就非常地高,就能够使用C/C++重新编写程序,再使用其它方法把它包装为Python能够使用的额外的库文件。其中要知道的是在我们使用额外的库文件可能需要考虑不同电脑系统的兼容性问题,某些平台有可能出现不兼容的情况。

Python语言编程:

Python就为我们提供了很多丰富和功能强大的基础代码库,覆盖了网络、文件、GUI、数据库、文本等许多的东西,又被抽象地称作“内置电池(batteries included)”。用Python进行编写程序,很多功能不需要从头开始编写,只有有一定的编程基础,就可以使用现成的库文件实现就行。一般的树莓派里的Python的源为国外源,用过修改源可以加快、方便的下在我们所需要的库,在初始的Python环境下,我们使用Python的apt-get下载各种基本包来安装,然后使用Linux命令建立.py的文件来存储程序,通过Python指令来执行控制树莓派进行各种操作。

PWM控制舵机:

PWM即脉宽调制控制技术,通过树莓派模仿PWM方波的周期,调节其占空比的多少来控制舵机转动的角度,一般原理为使用一个定时器定时20ms,然后通过高低电平的切换,使高电平所占的时间模仿方形脉冲,然后调节高电平脉冲的时间来控制舵机转动的角度也就是所谓的占空比的调节舵机转动角度。

6 设计的方案

本项目使用树莓派作为主控芯片,通过路由器的局域网WIFI下来对树莓派进行操作,使用Linux命令来编写代码,使树莓派不仅可以接受来自语音模块传递的信号,还能通过不同的信号对不同的模块进行控制,通过语音识别的不同信号来分别控制LED灯的亮灭、控制风扇的开启与关闭,并且通过PWM控制舵机转动来控制门的开启与关闭等操作。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!