SKU:RB-02S084A RB聲音檢測(cè)傳感器

來自ALSROBOT WiKi
2021年6月17日 (四) 16:44Zhangxin討論 | 貢獻(xiàn)的版本

(差異) ←上一版本 | 最后版本 (差異) | 下一版本→ (差異)
跳轉(zhuǎn)至: 導(dǎo)航、 搜索
02S08400.png

目錄

產(chǎn)品概述

聲音傳感器是哈爾濱奧松機(jī)器人科技有限公司自主研發(fā)的一款簡單易用、小巧輕便、性價(jià)比較高的一款傳感器,此款聲音傳感器是由一個(gè)小型駐極體麥克風(fēng)和運(yùn)算放大器構(gòu)成。它可以將捕獲的微小電壓變化放大100倍左右,能夠被微控制器輕松的識(shí)別,并進(jìn)行AD轉(zhuǎn)換,輸出模擬電壓值,使得您只需采集模擬量電壓就可以讀出聲音的幅值,判斷聲音的大小。這么貼心的聲音檢測(cè)傳感器您都不打算帶回家、那您還在等什么呢?聲音傳感器可在各種單片機(jī)控制器上應(yīng)用,尤其在Arduino控制器上更為簡單,通過3P傳感器連接線插接到Arduino專用傳感器擴(kuò)展板上,可以非常容易地實(shí)現(xiàn)與環(huán)境感知相關(guān)的互動(dòng)作品。

規(guī)格參數(shù)

  1. 工作電壓:2.7V-5.5V
  2. 麥克尺寸:直徑9.7mm
  3. 數(shù)據(jù)類型:模擬輸入
  4. 固定孔:M3 * 4個(gè)
  5. 尺寸:30mm×23mm

6.產(chǎn)品尺寸圖:

Size040.jpg

7.接口定義

  • S:信號(hào)輸出
  • +:電源正極 (VCC)
  • -:電源地 (GND)

工作原理

Arduino 聲音檢測(cè)傳感器的原理不是很復(fù)雜,使用一個(gè)話筒收集聲音,經(jīng)過濾波、放大之后接到Arduino的模擬輸入接口上,這樣當(dāng)人對(duì)著話筒說話的時(shí)候,在Arduino的模擬輸入端口上就能感知到電壓的變化,說話聲音越大,電壓變化的幅度就越大。
但是,由于聲波是不斷變化的正弦波,所以在模擬輸入端口上讀取的值相應(yīng)的也是變化的,我們根據(jù)某個(gè)時(shí)間點(diǎn)上讀取的值來對(duì)聲音進(jìn)行判斷,這時(shí)可能讀到的是聲波波形的最小值,也可能是讀取的聲波的最大值,所以在判斷聲音返回值時(shí),需要判斷兩段數(shù)值。

編程原理

聲音檢測(cè)傳感器共引出三個(gè)引腳,分別是電源正Vcc,電源地GND,信號(hào)S,實(shí)際使用時(shí),可以將傳感器連接到 Arduino 的模擬引腳,例如模擬口 A0,通過 Arduino 控制器自帶的 10 位 AD 轉(zhuǎn)換對(duì)數(shù)據(jù)進(jìn)行讀取,通過 if 語句對(duì)讀取的模擬量進(jìn)行判斷,設(shè)定范圍,通過范圍來控制 LED 在什么樣的噪音下亮起,其中 LED 使用 Arduino 控制器自帶的 13 號(hào)引腳 LED 燈。

使用方法

example1_Arduino

  • 主要硬件
Arduino UNO 控制器
聲音傳感器
杜邦線
USB 數(shù)據(jù)線



  • 硬件連接
02S084A01.png
  • 示例程序
const int analogInPin = A0;   // 定義聲音傳感器模擬值輸入引腳為模擬0
int sensorValue = 0;          // 定義聲音傳感器模擬值變量
int led=13;                   // 定義LED發(fā)光模塊引腳為數(shù)字13
//初始化函數(shù)
void setup() {
  Serial.begin(115200);     //設(shè)置串口波特率為115200
  pinMode(led,OUTPUT);       //定義led引腳為輸出
}
//主函數(shù)
void loop() {
  sensorValue = analogRead(analogInPin);   //讀取模擬引腳聲音傳感器反饋的模擬值
 if(sensorValue>580||sensorValue<423){     //判斷聲音傳感器反饋的模擬值,由于聲波是一種波動(dòng),故需要判斷兩段數(shù)值
      digitalWrite(led,HIGH);              //通過邏輯或來判斷聲音的大小,當(dāng)檢測(cè)聲音大于聲音傳感器返回值580時(shí)點(diǎn)亮LED
  }
  else digitalWrite(led,LOW);              //無聲音時(shí)LED熄滅 
  delay(50);                               //短暫延時(shí)
  Serial.print("sensor = " );             //串口打印字符串
  Serial.print(sensorValue);              //串口打印聲音傳感器返回模擬值
  delay(100);                             //長延時(shí),消除聲波反射
}
  • 程序效果

將上述例子程序上傳到 Arduino 控制器中,如果上傳無誤的話,打開 Arduino IDE 自帶的串口監(jiān)視器,可以看到當(dāng)前聲音傳感器采集到的聲音模擬量值,當(dāng)聲音輸出模擬量在580到423之間時(shí),Arduino 13號(hào)引腳的 LED 點(diǎn)亮,如果不在范圍內(nèi),LED 熄滅。

02S084A02.png

視頻演示

Sheng yin 01.png

資料下載

Erweima.png
  • 產(chǎn)品資料

下載鏈接:https://pan.baidu.com/s/1jr1ncerKjDSmr1nvlwxEyg 提取碼:f9z5

* 產(chǎn)品購買鏈接:http://lifestyle201.com/goods-671.html