SKU:RB-02S084A RB声音检测传感器
目录 |
产品概述
声音传感器是哈尔滨奥松机器人科技有限公司自主研发的一款简单易用、小巧轻便、性价比较高的一款传感器,此款声音传感器是由一个小型驻极体麦克风和运算放大器构成。它可以将捕获的微小电压变化放大100倍左右,能够被微控制器轻松的识别,并进行AD转换,输出模拟电压值,使得您只需采集模拟量电压就可以读出声音的幅值,判断声音的大小。这么贴心的声音检测传感器您都不打算带回家、那您还在等什么呢?声音传感器可在各种单片机控制器上应用,尤其在Arduino控制器上更为简单,通过3P传感器连接线插接到Arduino专用传感器扩展板上,可以非常容易地实现与环境感知相关的互动作品。
规格参数
- 工作电压:2.7V-5.5V
- 麦克尺寸:直径9.7mm
- 数据类型:模拟输入
- 固定孔:M3 * 4个
- 尺寸:30mm×23mm
6.产品尺寸图:
7.接口定义
- S:信号输出
- +:电源正极 (VCC)
- -:电源地 (GND)
工作原理
Arduino 声音检测传感器的原理不是很复杂,使用一个话筒收集声音,经过滤波、放大之后接到Arduino的模拟输入接口上,这样当人对着话筒说话的时候,在Arduino的模拟输入端口上就能感知到电压的变化,说话声音越大,电压变化的幅度就越大。
但是,由于声波是不断变化的正弦波,所以在模拟输入端口上读取的值相应的也是变化的,我们根据某个时间点上读取的值来对声音进行判断,这时可能读到的是声波波形的最小值,也可能是读取的声波的最大值,所以在判断声音返回值时,需要判断两段数值。
编程原理
声音检测传感器共引出三个引脚,分别是电源正Vcc,电源地GND,信号S,实际使用时,可以将传感器连接到 Arduino 的模拟引脚,例如模拟口 A0,通过 Arduino 控制器自带的 10 位 AD 转换对数据进行读取,通过 if 语句对读取的模拟量进行判断,设定范围,通过范围来控制 LED 在什么样的噪音下亮起,其中 LED 使用 Arduino 控制器自带的 13 号引脚 LED 灯。
使用方法
example1_Arduino
- 主要硬件
- Arduino UNO 控制器
- 声音传感器
- 杜邦线
- USB 数据线
- 硬件连接
- 示例程序
const int analogInPin = A0; // 定义声音传感器模拟值输入引脚为模拟0 int sensorValue = 0; // 定义声音传感器模拟值变量 int led=13; // 定义LED发光模块引脚为数字13 //初始化函数 void setup() { Serial.begin(115200); //设置串口波特率为115200 pinMode(led,OUTPUT); //定义led引脚为输出 } //主函数 void loop() { sensorValue = analogRead(analogInPin); //读取模拟引脚声音传感器反馈的模拟值 if(sensorValue>580||sensorValue<423){ //判断声音传感器反馈的模拟值,由于声波是一种波动,故需要判断两段数值 digitalWrite(led,HIGH); //通过逻辑或来判断声音的大小,当检测声音大于声音传感器返回值580时点亮LED } else digitalWrite(led,LOW); //无声音时LED熄灭 delay(50); //短暂延时 Serial.print("sensor = " ); //串口打印字符串 Serial.print(sensorValue); //串口打印声音传感器返回模拟值 delay(100); //长延时,消除声波反射 }
- 程序效果
将上述例子程序上传到 Arduino 控制器中,如果上传无误的话,打开 Arduino IDE 自带的串口监视器,可以看到当前声音传感器采集到的声音模拟量值,当声音输出模拟量在580到423之间时,Arduino 13号引脚的 LED 点亮,如果不在范围内,LED 熄灭。
视频演示
资料下载
- 产品资料
下载链接:https://pan.baidu.com/s/1jr1ncerKjDSmr1nvlwxEyg 提取码:f9z5
* 产品购买链接:http://www.alsrobot.cn/goods-671.html
- 奥松机器人技术论坛:http://www.makerspace.cn