Maixduino系列实验(6)---测试板载MEMS麦克风之添加语音识别库

2021-02-271.3万
精华项目
AI 快速预览详细 收起
本文介绍了如何在Maixduino上测试板载MEMS麦克风并添加语音识别库。MEMS麦克风是一种基于MEMS技术制造的麦克风,具有改进的噪声消除性能与良好的RF及EMI抑制能力。文章详细讲解了MEMS麦克风的优势、构造及发展前景,并提供了具体的代码示例。通过安装<Maix_Speech_Recognition.h>库,可以在Maixduino上实现语音识别功能。

Maixduino系列实验(6)---测试板载MEMS麦克风之添加语音识别库

Maixduino系列实验(6)---测试板载MEMS麦克风之添加语音识别库图1

MEMS麦克风

MEMS(微型机电系统) 麦克风是基于MEMS技术制造的麦克风,简单的说就是一个电容器集成在微硅晶片上,可以采用表贴工艺进行制造,能够承受很高的回流焊温度,容易与 CMOS 工艺及其它音频电路相集成,并具有改进的噪声消除性能与良好的 RF 及 EMI 抑制能。MEMS麦克风的全部潜能还有待挖掘,但是采用这种技术的产品已经在多种应用中体现出了诸多优势,特别是中高端手机应用中。

MEMS MIC优势

实际使用的大多数麦克风都是ECM(驻极体电容器)麦克风,这种技术已经有几十年的历史。ECM 的工作原理是利用驻有永久电荷的聚合材料振动膜。
与ECM的聚合材料振动膜相比,MEMS麦克风在不同温度下的性能都十分稳定,其敏感性不会受温度、振动、湿度和时间的影响。由于耐热性强,MEMS麦克风可承受260℃的高温回流焊,而性能不会有任何变化。由于组装前后敏感性变化很小,还可以节省制造过程中的音频调试成本。MEMS麦克风需要ASIC提供的外部偏置,而ECM没有这种偏置。有效的偏置将使MEMS麦克风在整个操作温度范围内都可保持稳定的声学和电气参数,还支持具有不同敏感性的麦克风设计。传统ECM的尺寸通常比MEMS麦克风大,并且不能进行SMT(表面贴装技术)操作。在MEMS麦克风的制造过程中,SMT回流焊简化了制造流程,可以省略一个通常以手工方式进行的制造步骤。在ECM麦克风内,必须添加进行信号处理的电子元件;而在MEMS麦克风中,只需在上添加额外的专用功能即可。与ECM相比,这种额外功能的优点是使麦克风具有很高的电源抑制比,能够有效抑制电源电压的波动。另一个优点是,集成在芯片上的宽带RF抑制功能,这一点不仅对手机这样的RF应用尤其重要,而且对所有与手机操作原理类似的设备(如助听器)都非常重要。MEMS麦克风的小型振动膜还有另一个优点,直径不到1mm的小型薄膜的重量同样轻巧,这意味着,与ECM相比,MEMS麦克风会对由安装在同一PCB上的扬声器引起的PCB 噪声产生更低的振动耦合。

Maixduino系列实验(6)---测试板载MEMS麦克风之添加语音识别库图2

MEMS MIC发展前景

对于大型的半导体制造商来说,他们具备制造该产品系列的核心能力。首先是MEMS 设计和制造能力,其次是ASIC设计和制造能力,最后是大容量、低成本的封装能力。迄今为止,音频公司一直占据着几乎整个MEMS麦克风市场,它们必须依赖半导体代工厂提供相关技术并与他们分享利润。现在,英飞凌的进入意味着该市场拥有了新的选择,并且降低了元件购买者的风险。尺寸方面的限制主要来自MEMS本身。另外,由于音频端口不能采用真空工具进行操作,尺寸的进一步缩小将会受到制造过程中标准自动化贴装工具的限制。ASIC中将会集成更多功能:和数字输出是第一步;还可利用标准组件,如风噪信号过滤组件;专用接口和信号预处理将成为很大的应用领域;RF屏蔽也会得到进一步改进。在音频方面,MEMS麦克风也会有很多变化。SMM310不只在20Hz20kHz的频率范围内针对人声进行了优化,还有较高的声学敏感性。很难预测何时会出现带有集成式麦克风并能记录美妙立体声的单芯片摄像电话,但毫无疑问,技术正在朝着这个方向发展。

MEMS麦克风的构造图

相较于ECM麦克风的聚合材料振动膜,在不同温度下,MEMS麦克风所展现的性能都相当稳定,不会受到时间、温度、湿度和振动的影响。MEMS麦克风的耐热性相当强,可以承受摄氏260度的高温回流焊,但是其性能不会有任何变化。再加上MEMS麦克风可以有效的降低射频所产生的干扰,这就让其逐渐发展成为麦克风主流。MEMS麦克风包含一个灵活悬浮的薄膜,它可在一个固定背板之上自由移动,所有元件均在一个硅晶圆上制造。该结构形成一个可变电容,固定电荷施加于薄膜与背板之间。传入的声压波通过背板中的孔,引起薄膜运动,其运动量与压缩和稀疏波的幅度成比例。这种运动改变薄膜与背板之间的距离,进而改变电容,如下图所示。在电荷恒定的情况下,此电容变化转换为电信号。

Maixduino系列实验(6)---测试板载MEMS麦克风之添加语音识别库图3

Maixduino系列实验(6)---测试板载MEMS麦克风之添加语音识别库图4

Maixduino系列实验(6)---测试板载MEMS麦克风之添加语音识别库图5

Maixduino系列实验(6)---测试板载MEMS麦克风之添加语音识别库图6

`/*
Maixduino系列实验(6)
项目之四:测试板载MEMS麦克风之添加语音识别库
安装<Maix_Speech_Recognition.h>库,开发板自带
*/

#include "Maix_Speech_Recognition.h"

SpeechRecognizer rec;//语音识别器记录

void setup()
{
rec.begin();
Serial.begin(115200);
Serial.println("start rec...");
if( rec.record(0, 0) == 0) // 关键字num,型号num
{
rec.print_model(0, 0);
}
else
Serial.println("rec failed");
}

void loop()
{
}`

安装<Maix_Speech_Recognition.h>库,开发板自带

Maixduino系列实验(6)---测试板载MEMS麦克风之添加语音识别库图7

MaixPy 的语音关键词录制、识别源码已经推送到 GitHub ,需要自行编译源码,
源码在 MaixPy 主线,最新的在这里 https://github.com/QinYUN575/MaixPy/tree/feature/SpeechRecognizer_cw

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(3)
didiliu
didiliu
感谢老师不厌其烦的解答
didiliu
didiliu
老师试试呗。我试了一下。maixduino无法用模拟输入analogWrite(),就读不了模拟量。好烦啊
didiliu
didiliu回复驴友花雕
哎,被他们给骗了,,,吹的山响,兼容什么生态
驴友花雕
驴友花雕
作者
回复didiliu
学习Adruino的升级,有uno r3板子足够了,升级在于能够使用更多的传感器与执行器,我坚持了近二年,尝试做了二百多项实验
共7条回复,已加载2条,点击查看更多共7条回复,已加载全部
didiliu
didiliu
老师,请教个问题。maixduino用arduino代码,我怎么获取像光线传感这类的模拟值呢?
驴友花雕
驴友花雕
作者
回复didiliu
你好,一年半前发的贴,呵呵,有些忘记了。maixduino板子主要特色是K210,算力高达1T,大大高于市面上的开发板,比较适合视觉识别和语音识别等大数据的运算,比如人脸识别项目。光线传感器的实验没有做过。
- 没有更多了 -