本帖最后由 ZCZ 于 2020-6-24 10:22 编辑
基于Arduino使用声音模拟检测模块
声音传感器概念
声音传感器的作用相当于一个话筒(麦克风),它用来接收声波,显示声音的 振动图象,但不能对噪声的强度进行 测量,该传感器内置一个对声音敏感的 电容式驻极体话筒,声波使话筒内的驻极体薄膜振动,导致电容的变化,而产生与之对应变化的微小电压,这一电压随后被转化成0-5V的电压,经过A/D转换被采集器接受,并传送给 计算机。
声音传感器的应用
随着传感器的快速发展,声音传感器也迅速崛起,被应用到日常生活、军事、医疗、工业、领海、航天等中,并且成为现代社会发展所不能缺少的部分。 1、日常生活:声音传感器对声音信号进行采样,应用到话筒,录音机,手机等器件中,声控照明灯内装有 音频传感器,此 时钟只要有人发出一种摩擦音1秒钟,墙上的照明灯就会自动点亮十秒钟左右;声控电视机,可储存两个人的声音。 2、工业:声波传感器利用锆钛酸铅PZT压电陶瓷在电能与 机械能之间相互转换的正、逆压电效应,既在压电陶瓷 加一电信号,便产生机械振动而发射超声波,当超声波在空气传播途中碰到障碍物立即被反射回来,作用于它的陶瓷时,则会有电信号输出,通过数据处理时间差测距,计算显示车与障碍物的距离,这种传感器用作汽车倒车防撞报警器装置;缝纫设备生产厂家大部分已采用电子检测仪器声响 检验何处是机器最大声源的产生处,测定零部件受力大小、振动大小等。 3、军事:声音传感器利用声波来确定密闭集装箱内的材料化学组成,以此加强港口的安全;防御狙击手的袭击,声音传感系统能对狙击火力进行定位和分类,并提供狙击火力的方位角、仰角、射程、口径和误差距离。 4、医疗: 光纤麦克风具有对磁场的天然的抗干扰能力,可以应用于 核磁共振成像的通信,是唯一在核 磁共振成像扫描时可以在病人和医生之间进行通讯的麦克风,助听器,听诊器,测脉搏,血压等。 5、领海:①美国MAVS-3深水3轴声学多参数测流仪,MAVS-3是一种采用时间差分测量技术的3轴声学多参数测流计,测流计的4个声学探头提供平均流速向量值。可编程的分段记录和触发记录模式使测流计具有很大的灵活性。由于探头的几何尺寸小并应用了时间差分测量技术,MAVS-3的分辨率及精度均是其它测流仪无法比拟的,因此,无论是在2m/s或10cm/s的量程中均能保0.03cm/s的分辨率,精度达到0.3cm/s。此外,仪器还能提供温度、电导、深度等参数,工作深度可达6000M。 ②英国AQUA深水CTD,采用金属钛作为外壳,可在6000m深度范围内进行电导、温度、深度测量,仪器可安装在水下拖载工具上,也可安装在浮标、系锚设备上,还可作垂直剖面测量,数据记录可采用自容式记录或实时 数据采集,数据也可传至PC机上进行编辑、 存储。
模拟量和开关量
传感器的模拟量和开关量,不论输入还是输出,一个参数要么是模拟量,要么是开关量。 模拟量-- 控制系统量的大小是一个在一定范围内变化的连续数值,比如温度,压力等等,这些都是模拟量;模拟量传感器发出的是连续信号,用电压,电流,电阻等表示被测参数的大小。 开关量--该物理量只有两种状态,如开关的导通和断开的状态,继电器的闭合和打开,电磁阀通和断等等。
(声音检测模块)
产品参数
灵敏度可调:蓝色数字电位器调节 工作电压:3.3V-5V 可以检测周围环境的声音强度,识别声音的大小或者特定频率的声音 输出形式:数字模拟量输出,实时输出麦克风的电压信号 有电源指示灯 小板PCB尺寸:33mm*16mm 设有固定螺栓孔,方便安装
使用说明
1、声音模块对环境声音强度最敏感,一般用来检测周围环境的声音强度。 2、小板模拟量输出OUT可以与单片机直接相连,通过单片机来检测电压信号,由此来检测环境的声音。
模块接口说明(3线制)
1、VCC外接3.3V-5V电压(可以直接与5V单片机和3.3V单机机相连) 2、GND外接GND 3、OUT小板模拟量输出接口
基础小案例
利用Arduino Nano结合声音检测模块和LED灯,声音控制LED灯的点亮和熄灭,LED灯高电平为亮,低电平为灭,当声音较大时,绿色 LED 灯亮起5S,否则,LED 灯处于熄灭状态。
(LED模块)
接线方式
Arduino Nano <------> 声音检测模块 3V3 <------> VCC GND <------> GND A3 <------> OUT
程序测试1 —— 读取声音值
Mixly图形化编程程序
(图形化程序)
打开串口监视器,对着声音检测模块发出不同大小的声音,串口监视器会显示声音模块读取到的不同数值。
(声音较小时串口数值显示)
(声音较大时串口数值显示)
程序实现代码
- void setup(){
- Serial.begin(9600);
- }
- void loop(){
- Serial.println(analogRead(A3));
- delay(1000);
- }
复制代码
程序测试2 —— 声音检测模块检测到声音的值大于60时,LED灯点亮5S,否则保持熄灭状态
接线方式
Arduino Nano <------> LED灯 5V <------> VCC GND <------> GND D6 <------> IN
(图形化程序)
程序实现代码
- void setup(){
- pinMode(6, OUTPUT);
- }
- void loop(){
- if (analogRead(A3) > 60) {
- digitalWrite(6,HIGH);
- delay(5000);
- } else {
- digitalWrite(6,LOW);
- }
- }
复制代码
|