原文:https://circuitdigest.com/microcontroller-projects/arduino-controlled-water-fountain-using-sound-sensor

使用声音传感器的Arduino控制的音乐喷泉

ARDUINO项目

德巴斯·帕里达(Debasis Parida) 2019年8月26日修改

使用声音传感器的Arduino控制的喷泉

有几个喷泉可以无条件地洒水并具有一些有趣的照明效果。因此,我徘徊在设计一个创新的喷泉上,该喷泉可以响应外部音乐并根据音乐节拍洒水。听起来很有趣吗?

Arduino饮水机的基本思想是从任何外部声音源(例如手机,iPod,PC等)获取输入,对声音进行采样并将其分解为不同的电压范围,然后使用输出打开各种继电器。我们首先使用基于电容麦克风的声音传感器模块在声源上执行操作,以将声音分成不同的电压范围。然后,电压将被馈送到运放,以将声级与特定限制进行比较。较高的电压范围将对应于继电器开关ON,该继电器开关包括根据歌曲的节拍和节奏操作的音乐喷泉。因此,我们在这里使用Arduino和声音传感器构建此Musical Fountain。

所需材料

  1. Arduino纳米
  2. 声音感应模块
  3. 12V继电器模块
  4. 直流泵
  5. 发光二极管
  6. 连接线
  7. 维罗板或面包板

声音传感器的工作

声音传感器模块是一个基于驻极体麦克风的简单电子板,用于感应环境中的外部声音。它基于LM393功率放大器和驻极体麦克风,可用于检测是否有超出设定阈值限制的声音。模块输出是数字信号,指示声音大于或小于阈值。

电位计可用于调节传感器模块的灵敏度。当声源低于/高于电位计设置的阈值时,模块输出为HIGH / LOW。相同的声音传感器模块也可用于以分贝为单位测量声音水平。

声音传感器电路图

众所周知,在声音传感器模块中,基本输入设备是麦克风,该麦克风将声音信号转换为电信号。但是由于声音传感器的电信号输出非常小,很难分析,因此我们使用了一个NPN晶体管放大器电路来放大它,并将输出信号馈送到Op-的同相输入端。放大器 LM393 OPAMP在这里用作比较器,比较来自麦克风的电信号和来自分压器电路的参考信号。如果输入信号大于参考信号,则OPAMP的输出将为高电平,反之亦然。

您可以按照“运算放大器”电路部分的介绍,了解有关其工作原理的更多信息。

音乐喷泉电路图


如上面的音乐喷泉电路图所示,声音传感器由Arduino Nano的3.3V电源供电,声音传感器模块的输出引脚连接到Nano的模拟输入引脚(A6)。您可以使用任何模拟引脚,但请确保在程序中进行更改。继电器模块和直流泵由外部12VDC电源供电,如图所示。继电器模块的输入信号连接到Nano的数字输出引脚D10。为了获得照明效果,我选择了两种不同颜色的LED,并将它们连接到Nano的两个数字输出引脚(D12,D11)。

在这里,泵的连接方式是:当将高脉冲信号提供给继电器模块的输入时,继电器的COM触点将连接到NO触点,并且电流将成为闭合电路路径,以流经泵到达激活水流。否则,泵将保持关闭状态。根据声音输入,从Arduino Nano产生HIGH / LOW脉冲。

将整个电路焊接到穿孔板上后,如下图所示:

在这里,我们使用了一个塑料盒作为喷泉容器,并使用了微型5v泵作为喷泉,我们之前在消防机器人中使用了该泵:

编程Arduino Nano用于跳舞喷泉

Arduino水喷泉项目的完整程序在页面底部给出。但是在这里,我只是为了更好地理解而逐部分地进行解释:

程序的第一部分是声明必要的变量,以分配我们将在程序的下一个块中使用的引脚号。然后定义一个常数REF,其值是声音传感器模块的参考值。分配值700是声音传感器的输出电信号的字节等效值。

int sensor = A6;
int redled = 12;
int greenled = 11;
int pump = 10;#define REF 700

在*无效设置*功能中,**我们使用了pinMode函数来分配引脚的INPUT / OUTPUT数据方向。在这里,传感器被视为输入,所有其他设备均被用作输出。

void setup()
{pinMode(sensor,INPUT);pinMode(redled,OUTPUT);pinMode(greenled,OUTPUT);pinMode(pump,OUTPUT);
}

在无限循环内,调用了AnalogRead函数,该函数读取从传感器引脚输入的模拟值并将其存储在变量sensor_value中

int sensor_value = AnalogRead(sensor);

在最后一部分中,使用if-else循环将输入模拟信号与参考值进行比较。如果大于参考值,则所有输出引脚均被赋予HIGH输出,从而所有LED和Pump均被激活,否则一切保持OFF。在这里,我们还给出了70毫秒的延迟,以区别继电器的ON / OFF时间。

if(sensor_value> REF){ digitalWrite(greenled,HIGH); digitalWrite(redled,HIGH); digitalWrite(pump,HIGH); delay(70); } else { digitalWrite(greenled,LOW); digitalWrite(redred,LOW); digitalWrite(pump,LOW); delay(70); }


这是由Arduino控制的喷泉的工作方式,下面提供带有工作视频的完整代码。

代码

int sensor = A6;
int redled = 12;
int greenled = 11;
int pump = 10;#define REF 700void setup()
{pinMode(sensor,INPUT);pinMode(redled,OUTPUT);pinMode(greenled,OUTPUT);pinMode(pump,OUTPUT);}
void loop()
{int sensor_value = analogRead (sensor);if (sensor_value>REF){digitalWrite(greenled,HIGH);digitalWrite(redled,HIGH);digitalWrite(pump,HIGH);delay(70);}else{digitalWrite(greenled,LOW);digitalWrite(redled,LOW);digitalWrite(pump,LOW);delay(70);}
}

使用声音传感器的Arduino控制的音乐喷泉相关推荐

  1. arduino声音传感器与二极管_如何将声音传感器与Arduino连接 并实现继电器控制项目...

    简介 我前段时间已经实现了声音相关项目,称为 如何制作简单的CLAP SWITCH .该项目基于着名的555定时器IC. 在这个项目中,我将使用不同的声音传感器(虽然想法是一样的),它对声音如大声,拍 ...

  2. 基于PLC音乐喷泉控制系统设计音乐喷泉组态设计音乐喷泉

    基于PLC音乐喷泉控制系统设计音乐喷泉组态设计音乐喷泉 ID:6569668379908680

  3. 麦克风声音传感器(arduino IDE)

    首先说一下有关传感器的模拟量和开关量,不论输入还是输出,一个参数要么是模拟量,要么是开关量: 模拟量-- 控制系统量的大小是一个在一定范围内变化的连续数值,比如温度,压力等等,这些都是模拟量:模拟量传 ...

  4. Arduino Uno零基础入门学习笔记——三针脚声音传感器

    一.电路接线 声音传感器 声音传感器引脚 Arduino引脚 VCC 5V GND GND OUT 6 LED LED引脚 Arduino引脚 正极 8 GND GND 二.代码 int val; i ...

  5. 【应用案例】1200PLC应用:抢答器,音乐喷泉

    西门子1200PLC的应用案例--多人抢答器,音乐喷泉,传送带 目录 前言 一.抢答器 1.控制要求 2.思路 3.I/o分配和接线 4.程序 二.音乐喷泉 1.控制要求 2.思路 3. I/O分配和 ...

  6. 「雕爷学编程」Arduino动手做(35)——模拟量声音传感器

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...

  7. arduino声音传感器与二极管_怎样使用Arduino构建基于声音传感器的警报

    步骤1:必需的组件 1.声音传感器 2.一个LED 3. 330欧姆电阻 4. Arduino开发板 5.电线束 6.计算机 此外,它还需要对Arduino代码和python有基本的了解 步骤2:构建 ...

  8. 一种非常简单的用arduino控制蜂鸣器播放音乐的方案

    微信关注 "DLGG创客DIY" 设为"星标",重磅干货,第一时间送达. 今天来聊聊用arduino控制蜂鸣器播放音乐的方案,当然必须还是老风格,虽然可能不是最 ...

  9. 光敏电阻控制led亮度程序_利用光敏电阻加声音传感器制作声控灯

    视频演示 https://www.zhihu.com/video/1145029294962020352 光敏电阻传感器模块 模块参数: 工作电压:3.3V-5V 光敏电阻模块对环境光线敏感,一般用来 ...

最新文章

  1. office使用技巧
  2. JS获取页面鼠标点击位置的坐标
  3. linux刷除U盘grub,删除linux系统出现grub rescue
  4. ReviewForJob——二叉堆优先队列的实现(三种堆节点类型——int + struct HeapNode + struct HeapNode*)
  5. Golang——Tag、自定义类型、未命名类型
  6. Linux的IO机制
  7. Oracle-创建服务器参数文件
  8. 【译】使用 ndb 调试 node 应用
  9. 计算机专业基础820考什么,820计算机专业基础考纲
  10. matlab 图例 显示几个,matlab图例拆分成两个多个分别显示
  11. 自然语言处理怎么最快入门
  12. QQ登录和分享(精简版)
  13. safari支持Ajax同步请求吗,在同步“Ajax”请求之前强制在Webkit(Safari和Chrome)中重绘UI...
  14. HDU1799-组合公式变形
  15. 设计模式GOF23之-------------------结构型模式(适配器模式、代理模式、桥接模式、装饰模式、组合模式、外观模式、享元模式)
  16. 动手做个VR眼镜,找回童年的感觉
  17. 4u机架式服务器性能如何,兼顾成本与性能 4U机架式服务器再曝光
  18. 软件性能测试 硬件配置,硬件配置及性能测试_笔记本评测-中关村在线
  19. 阿里四面经验总结,月薪36K定级P6(含面试题答案)
  20. NimBuzz 拨打免费电话

热门文章

  1. 剑三重置版找不到服务器,剑网3重制版客户端常见问题处理方案整理
  2. 非易失性NV-SRAM简介
  3. JS标签选择器以及节点操作
  4. BeautifulSoup4 模块中文文档
  5. centos使用storcli工具查看服务器硬盘和raid组信息
  6. Resharper使用详解(转)
  7. 计算机网络基础15:MikroTik路由器使用方法
  8. 普通话测试能打分的软件是什么软件,普通话考试app哪个好_普通话考试训练app_普通话测试哪个软件好...
  9. 重庆邮电大学计算机2019湖北分数线,2019重庆邮电大学录取分数线
  10. 忙里偷闲第三弹:开发成绩查询微信公众号