我如何从驻极体麦克风(或其他组件)获得+ 5v的高噪音,为0v的静音?


12

我一直在这里问几个问题,以得出一个正确的问题,我最初提出的问题在最后被链接到了。我使用Fritzing构成了一些最初想法的示意图,但是至少我需要在组件值方面寻求帮助,我只是模糊地理解并选择了看起来合理或常见的值。

基本上,我有一个具有6个模拟输入的Arduino。它使用10位ADC读取任何模拟引脚上的电压,因此0 = 0v,511 = 2.5v和1023 = 5v,以及介于两者之间的所有值。它使线性DC读数,所以我在这里不寻找逻辑1-0。

我已经将其挂接到LED灯上,我想让它们响应音乐。我想要的是使用最少的组件获得最大的分辨率,而且我认为我使用的WAY组件过多,并且使WAY过于复杂。也许驻极体麦克风不是我想要的,我对其他东西持开放态度。我不希望使用运放来节省PCB上的空间。

我想要的是一个简单的噪声水平传感器。我不是要重现音频,也没有清晰度或其他任何内容,但是我想尽可能地得到:

  • 完美静音=尽可能接近0v DC(稳定,而不是AC)
  • 中等噪声=大约2.5v DC(稳定,不是AC)
  • 大声噪声=尽可能接近5v DC(稳定,而不是AC)

我了解BJT,我能获得的最佳电压是0.6v至4.4v,但这已经可以接受了。但是,不是一半,即0.6v至2.5v。这似乎无缘无故浪费了我可用分辨率的一半。但是,如果除了BJT之外还有其他设置可以使我更接近0v-5v,我将有兴趣向他们提供帮助;只要它们很简单。

这是一个简单的例子,我希望这是可能的,但是它要求驻极体信号具有足够的幅度,以驱动包络检波器电路(二极管,电阻器和电容器)仅获得正一半。我不认为这是由于二极管的正向压降引起的,但也许可以在输出上限之前重新安排或完成?包络检波器和放大器电阻的值应该是多少?应该在信号,RE或RL上放置一个灵敏度电位计,它的值是多少?线性还是对数?

简单

但是,驻极体输出可能无法在包络检波器,灵敏度分流器中幸免,并且仍然无法驱动NPN晶体管。如果没有,这是一个更复杂的版本。我需要走这条路线吗?从电路中获得所需的输出真的需要所有这些组件吗?

复杂

在更全面地理解我要表达的内容之前,我曾问过以下一些过去的问题。这是包络检波器“应该”执行的操作,我不确定如何针对驻极体输出进行调谐:

信封检测器 电路图


我认为这仍然很广泛。您应该问自己的问题是“声音很大代表什么意思?” 人类对响度的感知是复杂的,并且可能取决于频率,声音持续时间,情绪,咖啡消费等。人类对“沉默”的感知也高度依赖于环境和环境噪声。您必须先将这些主观感知转化为更客观的定义,然后才能实现对它们进行测量的电路。
Phil Frost

以下是一些有用的搜索词:“峰值检测器”“ RC电路”“时间常数”“角频率”“低通滤波器”“ dB SPL”
Phil Frost

我在设计中使用了灵敏度电位计来解决这个问题(它应该足够宽,以便它可以“有效地全部静音”或“总是响亮”,我可以从那里进行调谐)。我不知道它是否应该代替RL,RE(控制增益等)或分流信号。我不知道我还能做些什么,您能帮忙弄清还需要什么吗?
Ehryk

1
如果将控制器的ADC参考电压更改为2V56带隙,则不需要0-5V输出电压。您将达到0-2.56V的全分辨率。根据具体的控制器,您可以使用各种带隙电压作为参考。
jippie

1
搜索“小信号有源整流器”,然后找到类似于techonlineindia.com/Libraries/tol/Signal3.sflb.ashx的电路,该电路将从等式中取出二极管阈值电压。
jippie

Answers:


27

尽管您只需要一个放大器和一个微控制器(Arduino)就可以完成全部操作,但据我所知,您仍需要模拟选项。我试图创建一个在麦克风上输出语音电平的电路。范围是0V至4V。但是,只需更改OP-AMP,即可轻松将其升级到0V至5V。现在,让我们进入它;

首先,我用OP-AMP代替了晶体管放大器。这是我想出的;

在此处输入图片说明

这是一个简单的反相放大器,增益为100。

Vout=RfRinVin=100kRinVin=100Vin

如您所见,U1接收输入信号,对其进行反相,然后将其乘以100。您可以更改R2或R3,然后您会看到U1的增益发生变化。输入信号的反相在这里无关紧要,您将在后面了解。让我们看一下该放大器的输出,您会发现输入信号有很大的增长。

在此处输入图片说明

在上图中,您将看到输出的DC偏移电压为2.5伏。那是因为我们使用了虚拟的地面。如果我们创建虚拟接地,则意味着我们会将接地传输到另一个电压电平。在这种情况下,我们已将其移至2.5V。通过新配置,我们为电路创建了看起来像 -2.5 V,0 V和2.5 V的东西。为了实现这一点,我必须创建一个新的2.5伏电压轨。由于该电压轨不会提供太多功率(小于1 mA),因此很容易创建;

在此处输入图片说明

V+=V

放大后,我们应该将信号放入“包络检测器”或换句话说,是“包络跟随器”。如您所愿和问题图片所示,这将获得信号的电平。这是基本的信封追踪器的外观:

在此处输入图片说明

看起来非常不错,但是请注意,这里的D3是一个二极管,其自身下降约0.6V。因此,您松开了电压。为了克服这个问题,我们将使用所谓的“超级二极管”。超级好,因为电压降几乎为0V!为了实现这一目标,我们提供了一个带有二极管的运算放大器,仅此而已!运算放大器将补偿二极管的压降,您将拥有一个几乎理想的二极管;

在此处输入图片说明

V+=VVVV+

现在,用超级二极管在上述信封跟随器电路中更改D3,您将拥有一个更好的信封跟随器!让我们看看我们的结果;

在此处输入图片说明

我们越来越近了。如您所见,包络跟随器的输出(红线)可以从2.5 V变为4V。2.5V是无声的,4 V是大声的,而3.25 V是中声。为了将其缩放至所需的大小,我们可以减去2.5 V失调电压并对其进行缩放。因此,当您减去2.5 V时,它变为:0 V为无声音,1.5 V为大声,0.75 V为中等声音,依此类推。之后,如果将其乘以约3,您将得到您想要的。0 V表示无声音,2.5 V表示中等声音,5 V表示声音。回顾一下,我们想要的是这个。

Vout=(Vin2.5V)3

为了实现这一点,我们将使用差分放大器或换句话说就是“ 减法器 ”。

在此处输入图片说明

当电阻R1 = R2和R3 = R4时,差分放大器的传递函数可以简化为以下表达式:

Vout=R3R1(V2V1)

如果使V1 = 2.5V且R3 / R1的比率为3,则将获得所需的输出。

这是完成您所需的完整原理图:

在此处输入图片说明

我出于仿真目的在这里使用了LM324运算放大器。这样会将最大输出电压限制为4V。为了获得全范围输出,应使用轨到轨输出OP-AMP。我建议使用MCP6004。更改R1和R2,直到获得所需的结果。这是模拟的结果:

在此处输入图片说明

现在,在ADC中测量这些值时,您将不会产生线性感,而是可以对数更好地理解声音,因为我们的耳朵会听到这种声音。因此,您应该使用分贝。如果您不熟悉分贝,这里有一个很棒的视频教程。

例如,一个安静的房间测得约为40 dB。参加聚会的房间会使房间的音量提高到100 dB,或者可能达到110 dB。在此网站上,您可以找到关于它的详细信息,在该位置我也嵌入了下面的图像。考虑分贝电平,并尝试使用电路的电压输出。然后,计算所需的ADC分辨率。也许,使用12位ADC会很好。

在此处输入图片说明


5
这是一个了不起的答案。如果SE拥有名人堂,我会提名它。感谢您的精确解释!您如何生成这些图片,从示波器捕获的图像,PC示波器软件或求解算法?
Ehryk

1
@Ehryk谢谢,但是你太夸张了:)。我使用的是LTSpice
阿卜杜拉·卡拉曼2013年

@Ehryk我更新了答案,并添加了有关声音测量的更多信息。
阿卜杜拉·卡拉曼2013年

使用circuitlab可以共享并让人们立即运行仿真!我会给你50代表。
Kortuk

1
@Kortuk我无法正确模拟它。CircuitLab链接
阿卜杜拉·卡赫拉曼

7

您似乎在正确的轨道上。它确实采取了很多分立元件做这样的事情。您可能不相信我,但是使用运算放大器可能会使所有这些变得更简单和更小。我敢肯定,您可以找到更小的专用IC,这些IC可以在较小的封装中满足您的更多需求。我敢打赌,那里有一种IC 完全可以满足您的需求。但是,即使没有学习,如果没有继续学习,您也会学到更多。

您还可以通过将逻辑移入微处理器来简化其中的一些操作。包络检测在软件中很容易实现,根据所需的精度和麦克风的灵敏度,您甚至可以忽略掉麦克风后的放大器,然后将其输出直接输入ADC来摆脱困境。这不会为您提供0V-5V,但这有关系吗?您可以在软件中将其乘以一个常数。您失去的是拥有全部ADC可用范围的精度,但是也许这不像简单性那么重要。你决定。


我不相信您运放可以更简单地做到这一点,因为我试图将PCB的面积降至最低。但是,越来越明显的是,LM358 8引脚DIP将大大简化。我也想知道驻极体麦克风是否也是一个差的选择?如此简单的需求(响度为0V-5V)听起来很复杂,这似乎很可笑。
Ehryk

驻极体本身会产生约20mV的峰峰值。使用Arduino的ADC,从完全安静到最大可能的声音(4.9mV分辨率,如果在静音时为511,在完全爆炸时为513至509)大约相差两个。我想要好的灵敏度范围,而不是唯一的渐变,而不是“无声/中等/响亮”,这是假设线路是完全稳定的。
Ehryk

@Ehryk如果您只是想把东西缩小,我相信您可以在SOIC这样的大型表面安装封装中找到LM358(或任何其他常见的运算放大器)。使用优质工具可以轻松进行大量手工焊接,而且您无需钻孔。如果没有购买已经可以完全满足您需要的传感器,我怀疑您会做得比驻极体麦克风更简单,并将除偏置和放大以外的所有元件都移到微控制器中。
Phil Frost

4

首先,您不需要arduino,除非您需要进行更多处理-您真正想要的只是一个放大器(一个运放会做,整个Google都需要加载基本电路)来提高该范围内的麦克风输出0-5v。如果您不太担心准确性(因为这是出于娱乐目的,而不是科学的测量),则可以使用相当基本的限幅电路,将输出传递给施密特触发器,或使用LM3914生成显示。

通过使AGC电路自动将增益以平均水平上下倾斜,可以稍微提高一点技巧。

无论如何,您通过抛弃arduino并按照自然意图进行模拟来获得主要的积极因果;)

编辑:很有可能网络上也有“麦克风前置放大器”电路的负载,这些天可能需要花费0.10美元的SOT23芯片为您做...


arduino正在使用5个PWM引脚控制LED阵列,我将让它以噪声输入的不同分数闪烁不同的字母/图案。所以-arduino是必需的,我需要以某种分辨率告诉它arduino有多响,以便它可以在音乐的不同亮度下调制模式。没有电路图,我真的不知道您要做什么。
Ehryk

不要着迷于电路图,我要描述的是基本结构的电路,每本教科书都有该电路,快速的Google应该为各种功能(前置放大器,AGC,削波器等)以及各种功能设置基本电路。自从Disco发明以来,更多的迪斯科产品(图形EQ电路,显示驱动器,发光器官等)一直是业余电子产品的主题。
John U

问题在于,存在太多示例,这些示例具有模糊的描述或完全没有描述,并且具有变化的组件和“功能”。我发现最有帮助的东西,以及我通常在问题中提出的要求,以及对为什么选择某些组件并达到相应值进行了解释的特定图表。例如,这个答案是了不起的,并且非常有帮助。
Ehryk

您要购买乐高玩具,我要提供一块塑料和一把手术刀,这只是一种不同的方法。
约翰·U

2
...我现在已经有了10块塑料和自己的手术刀,并且可以通过搜索获得更多的塑料块。另外,我特别问过这个问题中的乐高玩具,而您说的是“别指望乐高玩具”。
Ehryk
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.