如何用电子麦克风和PIC18F1220制造昆虫探测器?

如果你像大多数人一样,对飞虫感到愤怒,或者害怕被恶意的黄蜂螫到,那么这条线路就是为你准备的。在这个项目中,我们将创建一个电路,它能探测到那些能发出与众不同的嗡嗡声的飞行虫!

昆虫探测器原理

电路图

昆虫探测器是如何工作的?

虽然有许多探测飞行昆虫的潜在方法,但这一电路将利用PIC的处理能力,在检测到某一频率时启动LED。对我们来说,幸运的是,苍蝇、蜜蜂和黄蜂通常会产生一个频率介于150Hz和250Hz之间的嗡嗡声,这很容易就能探测到。

对于该电路的工作,它有两个主要的组成部分:麦克风放大器和主PIC控制器。因此,第一个任务是放大已检测到的音频,这样就可以很容易地通过PIC进行操作。

用电子麦克风放大声音。

electret麦克风产生一个包含音频信号的输出,但它也包含一个大的直流偏移量。这很容易在电容C1中去除,但这就会导致在U1A输入上形成负电压。为了消除这些会形成的负峰,D1在电容器和接地之间(当电容器变为负值时,D1将会有正向偏置,从而产生负电压)。这是很重要的,因为LM358如果任何一个输入变得比与0V连接的负电源更负,那么它的行为就会出乎意料。

现在音频信号只包含正峰,U1A放大了它(多亏了R2和R4),作为一个非逆变放大器,其增益约为50(实际值接近57,但这并不重要)。放大后的信号被U1B缓冲,然后被输入到AN0,这是在PIC上的一个模拟。

用PIC检测频率。

但是真正的魔术发生在图中,因为它运行检测代码。PIC的工作是检测一种频率,它位于一个典型的昆虫发出的嗡嗡声的频率附近(150Hz和250Hz之间),如果检测到这个频率,就打开LED灯。


第一部分代码(第1部分)是设置代码,它支持TIMER0、ADC、TMR0中断,并配置各种IO引脚。第二部分启动主程序循环,这个循环在大多数(如果不是全部)PIC项目中都能找到。

现在,要确定传入音频信号的频率可能看起来很复杂,但可能是最简单的方法。如果你需要测量一个图像上的正弦波的频率,你很有可能测量出波形上一个点与下一个振动的同一点之间的距离。虽然这个图很简单,但是如果所有的都是瞬时值(并且没有足够的RAM来存储所有这些点),那么这是非常困难的。但如果你知道输入的波形会以类似的方式重复,你就可以寻找“零交叉”。

换句话说,如果你知道传入的音频信号在一个值上振荡,那么你可以在输入的数据穿过这个点时查看。当它完成时,你可以启动一个秒表,等待输入信号再次穿过那个点。当它发生时,你停止秒表,你马上就可以确定波的频率。

但是,这不是很实用,而且很容易受到噪声的影响,所以使用滞后。施密特触发器)来确定来自麦克风的输入模拟信号是否已经越过了“中间”。

我们的滞后有两个状态,低而高。如果我们处于较低的状态,当传入信号低于低阈值时,滞后状态将切换到高状态。当这种情况发生时,信号现在需要跨过磁滞状态的上阈值,以切换回低状态。

因此主循环首先启动ADC读数并等待观察传入信号是否越过阈值水平(这是由滞后状态决定的)。当它发生时,TMR0被清除,并开始我们的测量,然后进入第二个磁滞回线。

现在信号穿过其他阈值水平时,计时器是关闭的。在这一点上,我们要做的是检查计时器落在特定的范围内(对应于我们的期望的频率),如果是,我们知道,我们发现嗡嗡声!根据您的环境和设置,您可能需要调整阈值、上阈值和范围值(timerValue >50),,(timerValue & lt;因为所有的电路都不是一样的。

为了测试你的电路,最好在电脑上用扬声器加载一个音频发生器,然后通过不同的频率,直到电路发生反应。从那里,你可以做出小的调整,直到它对嗡嗡声作出可靠的反应。

在实际使用中,你可能需要增加或添加放大阶段,因为现实生活中的嗡嗡声非常安静。

制作

由于使用了所有的通孔部件(包括单片机),该项目可以使用大多数电路施工技术。

其中的一些电路结构技术包括条纹板,矩阵板,垂直板,无焊料的面包板,甚至是自制的pcb。不幸的是,在这个项目的时候,作者的CNC机器坏了,所以没有生成PCB文件。然而,考虑到该项目的简单性和它所需要的少量组件,电路很容易在单面PCB上被路由。



相关文章