打造你自己的高保真返听耳机

我们中的许多人已经习惯了能够减少不想要的声音,这要归功于一些设备中的降噪技术,比如苹果的 AirPods Pro 耳机。但是这种技术只能帮你到一定程度:降噪只对相对低的频率有效,而耳机能提供的整体听力保护也相对有限。耳塞或头戴式耳罩是一种选择,但它们会同时阻挡想要和不想要的声音。有些工业用的系统可以通过特定频率范围的声音,但这些系统是针对语音的。作为一个演奏大声音乐的音乐家,我想要一种能够保护我的听力,同时能够高保真地听到自己、我的乐队伙伴和观众的声音的方法。

多年来,我一直试图在不花费专业巡演乐队使用的定制耳塞的费用的情况下,改善我的个人音频监控情况。现在,在无数次的接线和甚至设计自己的音频混音器之后,我终于有了一个在合理预算内可以实现的 DIY 解决方案。我的方法是改编一些通过系统中使用的一个想法,将环境麦克风放在隔音耳机的外面。我会以高质量捕捉这些外部麦克风的信号,并以所需的音量将其输入耳机中。

当然,说起来容易做起来难。对于我的第一个原型,我买了一套 40 美元的耳罩,它们内置了一个 AM/FM 收音机,将收音机的电子部件拆除,以腾出一些空间。然后,我用了我全职雇主 SparkFun Electronics 的一些分线板:一个 7 美元的 ICS-40180 MEMS 麦克风,一个 6 美元的 TSH82 运放,和一个 11 美元的 TPA2016D2 D 类放大器。我的初步测试还算顺利,也就是说,当我戴着耳罩时,我能听到麦克风的声音,但我很快就注意到了一个问题。

打造你自己的高保真返听耳机

我是一个鼓手。当我轻轻地在我的鼓组上演奏时,音频很清晰,但是一旦我用中等的力量敲打一下鼓,通过的信号就变得粗暴失真,或者说削波。困惑的我查看了麦克风的规格。数据表显示,它的声学过载点(AOP)是 124 分贝。看起来麦克风应该能够处理声学鼓组 - 根据我的校准过的声级计,即使是我最用力的演奏,峰值也只有 115 分贝。

麦克风的分线板使用两个级别,提供了 64 倍的增益。我的第一个想法是降低这个增益。也许削波是在第一个增益级别发生的。不幸的是,即使消除了这个增益,削波仍然存在。然后我用一些“专业级”的麦克风前置放大器测试了原始的 MEMS 麦克风输出。通过这个设置,我能够看到,问题不是放大级别,而是麦克风本身产生了削波。通过这个测试,我学到了一个宝贵的教训:麦克风列出的 AOP 是指麦克风会产生 10% 的总谐波失真的点,因此实际上在这个水平以下就可能开始出现明显的削波。

我想要找一种便宜的小型MEMS麦克风,能够处理较大的声音源。我发现了Vesper VM2020,它有着令人印象深刻的149 dB的声压极限(AOP)!我为VM2020设计了一个新的转接板,很快就开始测试它。初步结果很好——无论我弹奏得多么用力,VM2020都不会削波(clip)信号!但是,由于这个麦克风的灵敏度(–63 dB)不高,我必须给信号增加很多增益。再加上麦克风的信噪比(50 dB)也一般,这导致了输出中有太多的嘶嘶声,不适合我的音乐需求。我又开始寻找另一种麦克风。我找到了PUI Audio的AOM-5035L,这是一种电容式麦克风,价格只有5美元。这个麦克风有三个重要的参数:高声压极限(135 dB),良好的灵敏度(–35 dB),和更好的信噪比(75 dB)。

打造你自己的高保真返听耳机

在找到这个麦克风的同时,我刚刚为SparkFun完成了另一个转接板。它是用来连接Wolfson的音频编解码器芯片WM8960的,价格是18美元。这个板比我之前选择的TPA2016D2更适合这个项目。WM8960有一个更安静的初始增益级,专门为麦克风设计。但是,我现在需要一个微控制器来初始化和控制WM8960。我选择了10美元的ESP32,因为它可以让我操作WM8960,同时也可以通过蓝牙连接从我的手机接收音频,并将其传输到WM8960。

我创建了一个主板PCB,以确保所有的东西都能够适合我的耳罩的右耳罩。在每个耳罩的外面,我放了一个麦克风,提供立体声。(在SparkFun网站上有一个详细的分步指南。)很快,我就在我的鼓练习中享受到了一个干净的音频信号,没有削波也没有嘶嘶声。但是,在最后一个环节中,我注意到有时候左声道会有一个小小的啸叫声,它的音调会随着电池的电量而变化。如果我关闭ESP32的蓝牙,一些噪音就会消失。为了解决这个问题,我首先从左麦克风回到右耳罩的电子元件添加了一个单独的和专用的接地连接。这减少了啸叫声,但没有完全消除它。我最后使用了一根合适的屏蔽麦克风线缆,将麦克风连接到WM8960。这完全消除了噪音。成功!我一边保护我的听力,一边享受着鼓乐,你也可以用不到100美元和一些工作台时间,拥有你自己的定制超级耳机!

本文译自 IEEE Spectrum,由 BALI 编辑发布。

[ 广告 ]
赞一个 (17)

PREV :
NEXT :