怎样制作一个简单的声音激活PIC18警报

电子说

1.2w人已加入

描述

声音激活报警电路示意图

PIC18

IoT报警如何工作?

该电路有两个主要组件:运行的微控制器将数据发送到RIOTOUS服务器和音频放大器所需的代码。

驻极体麦克风检测到音频信号,但此麦克风的输出幅度较低(峰峰值为mv),并且包含大量的DC偏移。为了消除DC偏移,使用电容器(C1),但产生的AC音频波形仍然非常小。为了解决这个问题,使用增益约为50的LM358,然后通过U1B进行缓冲,然后将其发送到微控制器。然而,需要与来自耦合电容器C1的音频信号并联的二极管,因为运算放大器上的输入上的负电压可能导致不可预测的输出行为。更具体地说,输入电压不应该比负电源更负(在我们的例子中,运算放大器的负电源是0V,而我们的耦合AC信号将具有比0V更负的幅度)。因此,D1在输入变为负时导通,这基本上防止U1A输入端的电压低于-0.2V(这是肖特基二极管而不是常规硅二极管)。

微控制器运行RIOTOUS框架,这是一个非常轻量级的PIC微处理器IoT平台。 main.c中的代码首先设置内部外设,包括ADC模块和UART模块(记住,ESP8266通过UART进行通信)。

随着一些繁琐的端口设置的改变,执行的下一个主要代码是internet_connectToRIOTServer(),它告诉ESP8266连接到特定的服务器。一旦实现了这一点,就会执行do while循环中的主要代码。微控制器不断测量放大器的电压,并将该电压与阈值进行比较。如果该值变得太大,则微控制器发出字母“D”以告诉服务器已检测到声音并且从那里服务器可以决定做什么。

虽然此项目中没有给出服务器代码,但该项目确实包含一个VB.NET项目形式的示例RIOT服务器。

构造

该项目使用CNC制造的定制PCB,但可以使用大多数(如果不是全部)电路构造技术构建。这些包括使用条形板,面包板,矩阵板,甚至点对点焊接(尽管非常困难)。

这个项目的所有KiCad文件,CNC文件和代码都需要MPLAB来编程PIC,KiCad需要加载原理图和PCB文件,以及合适的CNC软件如Mach3来创建铣削的PCB。要创建一个RIOTOUS服务器,将需要Visual Studio,虽然有许多版本可用,但建议使用VS Express 2013。这个版本很难掌握,但下面是从download.microsoft到安装程序的直接链接。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分