• Arduino 各种模块篇 声控传感器 声音检测模块 口哨模块 vocie sensor


    voice sensor

    信号图:

    原厂数据如下图:

    6.5元的模块。

    一 产品特点:

    1 可以检测周围环境的声音强度,使用注意此传感器只能识别声音的有无(根据震动原理)不能识别声音的大小或者特定频率的声音

    2 灵敏度可调(图中蓝色数字电位器调节)

    3 工作电压3.3V-5V

    5 输出形式 数字开关量输出(0和1高低电平

    6 设有固定螺栓孔,方便安装

    7 小板PCB尺寸:3.2cm * 1.7cm

    二 模块接线说明

    1 VCC 外接3.3V-5V电压(可以直接与5v单片机和3.3v单片机相连)

    2 GND 外接GND

    3 OUT 小板开关量输出接口(0和1)

    三 使用说明

    1声音模块对环境声音强度最敏感,一般用来检测周围环境的声音强度

    2 模块在环境声音强度达不到设定阈值时,OUT输出高电平,当外界环境声音强度超过设定阈值时,模块OUT输出低电平;

    3 小板数字量输出OUT可以与单片机直接相连,通过单片机来检测高低电平,由此来检测环境的声音

    4 小板数字量输出OUT可以直接驱动本店继电器模块,由此可以组成一个声控开关;

    调试方法跟这个视频差不多。只不过我的这个模块没有模拟信号输出口,只有数字输出口{TTL电平},不能检测声音强度,只能检测声音有无。

    先提供一段调试声音灵敏度的代码,当你用螺丝刀调节变阻器的时候。

    要将数据介于0,1之间。

    当有声音时是0,

    没有声音时是1.

    要调节到刚好都输出的是1, 有一点声音的时候,立即输出0.

    结合串口输出并调试代码。

    int sensorVoice = 2;
    void setup()
    {
      pinMode(sensorVoice, INPUT);
      Serial.begin(9600);
    }
    
    void loop()
    {
      int temp = digitalRead(sensorVoice);
      Serial.println(temp);
      delay(200);
      
    }

    图中有0输出,表示有声音。因为我在吹口哨,哈哈~

    这样就能表示其比较灵敏了。TTL来说,美中不足没有analog 

    下面就可以写声控程序了。

    下面做个例程。做个简单的声控灯。

    功能:

      有声音后,达到一定程度,激活继电器,打开电灯,亮30秒。然后熄灭。

    做了一个简单的消除杂音处理,有点像消抖,其实都差不多。

    就是加了个delay(若干毫秒) 函数。

    //-----------voice-sensor------------
    
    int sensorVoice = 2;
    int sensorJidianqi = 13; //
    void setup()
    {
      pinMode(sensorJidianqi, OUTPUT);
      pinMode(sensorVoice, INPUT);
      Serial.begin(9600);
    }
    
    void loop()
    {
      if (digitalRead(sensorVoice) ==0)
      {
        delay(100);
        if (digitalRead(sensorVoice) ==0)
        {
          digitalWrite(sensorJidianqi, HIGH); //LOW to power on JiDianQi
          delay(4000);
          digitalWrite(sensorJidianqi, LOW); //
        }
      }
      else
      {
        digitalWrite(sensorJidianqi, LOW);
      }
    }

    这个是没有用继电器的。

    用继电器的时候,注意是高电平激活,还是低电平激活继电器的。这个要留意。本人买的几个都是低电平导通的,不同继电器可能不同。

    用的是arduino Uno pin13上默认自己带的那个LED灯。实验就是对着模块吹一声,而后,模块上的Pin13出默认的LED灯,就亮了4秒钟。而后自动熄灭。

    代码就是这么简单

    切记:一定要事先调整好模块,用螺丝刀调整好,到临界状态。

    如果有声音,模块输出低电平 0 v

    如果没有声音,模块输出高点平 5V 

    是在一个区间内的,一个高一个低。

  • 相关阅读:
    MADDPG官方代码实现
    安装moviepy
    单目摄像机测距
    Tensorboard那些事
    instanceof、isPrototype、Object.create的区别
    鼠标事件以及clientX、offsetX、screenX、pageX、x的区别
    JS中的位置和宽度:clientWidth、offsetWidth、scrollWidth等区别
    vue项目build报错的解决办法(ERROR in static/js/vendor.xxxxx.js from UglifyJs)
    onclick(fn)与addEventListener("click", fn)的区别
    第五篇
  • 原文地址:https://www.cnblogs.com/spaceship9/p/3001943.html
Copyright © 2020-2023  润新知