(SKU:RB-02S084)聲音檢測傳感器
來自ALSROBOT WiKi
目錄 |
產(chǎn)品概述
該款聲音檢測傳感器是一款小巧易用的聲音檢測模塊,它有三個不同的輸出量。不僅僅能夠輸出音頻(audio引腳),也能夠指示聲音的存在(gate引腳),同時以模擬量的形式輸出聲音的振幅(envelope引腳)。這三個輸出是完全獨立和同步的,所以您可以按需求隨意使用。Envelope引腳(包絡線)的輸出信號使得您只需采集模擬量電壓就可以讀出聲音的幅值。通過焊接一個直插電阻,你可以改變增益值,進而改變引起gate引腳高低變化的臨界值。三個輸出信號安排在板子的一側,為2.54mm間距的單排孔,他們均是獨立工作的。
規(guī)格參數(shù)
- 工作電壓:3.5V—5.5V
- 制作工藝:FR4雙面噴錫
- 發(fā)貨清單:Sound Detector模塊*1
- 包裝方式:靜電袋密封
- 選配配件:Arduino328控制器,杜邦線,排針
使用方法
引腳定義
- VCC:電源正極;
- GND:電源負極;
- GATE:用來檢測環(huán)境是否有聲音輸入(開關量);
- ENVELOPE:輸出電壓跟隨聲源振幅變化而變化(模擬量);
- AUDIO:音頻電壓的變化(模擬量)
配置方法
- Sound Detector模塊上的R17電阻并未焊接,從原理圖我們可以知道,R3和R7與前置放大器的增益有關。
- 如果想降低增益(降低靈敏度):可以進行如圖一所示的配置。
- 如果想增加增益(增加靈敏度):我們可以屏蔽掉R3,假如一個R17,增益如圖二所示。
應用例程
示例代碼
程序1:
/************************************************************** 奧松機器人基地:RobotBase www.robotbase.cn 目的: Sound Dedector傳感器的調(diào)試 目標系統(tǒng): 基于CarDuino UNO R3控制器 應用軟件: Arduino 1.0.5 功能描述:將GATE輸出引腳與CarDuino的5號引腳相連,當有聲音輸入時, LED燈閃爍 發(fā)布時間: 2014-05-14 說明: 若用于商業(yè)用途,請保留此段文字或注明代碼來源 哈爾濱奧松機器人科技有限公司保留所有版權 **************************************************************/ const int led=7; //定義7號引腳 const int button=4; //定義4號引腳 int buttonState = 0; /定義初始化變量 void setup() { pinMode(button,INPUT); //定義4號引腳為輸入 pinMode(led,OUTPUT); //定義7號引腳為輸出 } void loop() { buttonState = digitalRead(button); //讀取4號引腳的電平狀態(tài) if (buttonState == HIGH) //如果4號引腳為高電平 { digitalWrite(led,HIGH); //7號引腳輸出高電平 delay(1000); //延時1秒 digitalWrite(led,LOW); //7號引腳輸出低電平 delay(1000); } else { digitalWrite(led, LOW); //4號引腳低電平,led燈熄滅 } }
程序二:
/************************************************************** 奧松機器人基地:RobotBase www.robotbase.cn 目的: Sound Dedector傳感器的調(diào)試 目標系統(tǒng): 基于CarDuino UNO R3 控制器 應用軟件: Arduino 1.0.5 功能描述:將ENVELOP輸出引腳接到ArduinioUNO控制器的A0口,可以通過串口看到隨著聲音強度的變化,串口顯示當前環(huán)境的狀態(tài)。 發(fā)布時間: 2014-05-14 說明: 若用于商業(yè)用途,請保留此段文字或注明代碼來源 哈爾濱奧松機器人科技有限公司保留所有版權 **************************************************************/ #define PIN_ANALOG_IN A0 //定義模擬口A0 void setup() { Serial.begin(9600); //定義串口波特率 Serial.println("Initialized"); //串口打印“Initialized” } void loop() { int value; //定義一個變量 value = analogRead(PIN_ANALOG_IN);//將讀取的模擬口值賦給變量 Serial.print(value); //串口打印變量值 Serial.print("Status: "); //串口打印當前環(huán)境狀態(tài)“Status” if(value <= 10) /如果收到的變量值<10 { Serial.println("Quiet."); //串口打印quiet } else if( (value > 10) && ( value <= 30) )//如果收到的變量值在10-30之間 { Serial.println("Moderate."); //打印“Moderate” } else if(value > 30) //如果收到的變量值>30 { Serial.println("Loud."); //打印“Loud” } delay(1000); //延時1秒 }
程序三:
/************************************************************** 奧松機器人基地:RobotBase www.robotbase.cn 目的: Sound Dedector傳感器的調(diào)試 目標系統(tǒng): 基于CarDuino UNO R3控制器 應用軟件: Arduino 1.0.5 功能描述:將AUDIO輸出引腳接到ArduinioUNO控制器的A0口,可以通過串口看到隨著聲音強度的變化,串口顯示當前聲音聲源的變化。 發(fā)布時間: 2014-05-14 說明: 若用于商業(yè)用途,請保留此段文字或注明代碼來源 哈爾濱奧松機器人科技有限公司保留所有版權 **************************************************************/ #define PIN_ANALOG_IN A0 /定義模擬口A0 void setup() { Serial.begin(9600); //定義串口波特率 Serial.println("Initialized"); //串口打印“Initialized” } void loop() { int value; //定義一個變量 value = analogRead(PIN_ANALOG_IN); //將讀取的模擬口值賦給變量 Serial.println(value); // 串口打印變量值 Serial.print("Status: "); //串口打印當前環(huán)境狀態(tài)“Status” if(value <= 200) //如果收到的變量值<200 { Serial.println("Quiet."); //串口打印quiet } else if( (value > 400) && ( value <= 500) )//如果收到的變量值在400-500之間 { Serial.println("Moderate."); //打印“Moderate” } else if(value > 600) //如果收到的變量值>600 { Serial.println("Loud."); //打印“Loud” } delay(1000); //延時1秒 }
程序效果
- 程序一:將GATE輸出引腳與CarDuino的5號引腳相連,當有聲音輸入時, LED燈閃爍
- 程序二:將ENVELOP輸出引腳接到CarDuino UNO R3控制器的A0口,可以通過串口看到隨著聲音強度的變化,串口顯示當前聲音振幅的變化。
- 程序三:將AUDIO輸出引腳接到CarDuino UNO R3控制器的A0口,可以通過串口看到隨著聲音強度的變化,串口顯示當前聲音聲源的變化。