マイクで遊ぶ (1) Grove sound sensor
音をコンピュータに取り込むにはマイクを使うのが一番簡単です。マイクの多くはダイナミック型と呼ばれるものやコンデンサ型が代表的です。最近はMEMS(Micro Electro Mechanical System)タイプも増えています。いずれもマイク素子の出力レベルは低いので、マイコンが認識できる信号レベルまでアンプで増幅します。通常アナログ出力です。MEMSタイプにはI2Sの信号形式もあります。
多くのマイクの周波数特性は、人の耳で聞こえる範囲をカバーしていることが多いです。
●Grove sound sensor
コンデンサ型マイク(と思われる)にアンプ(LM358)を組み合わせたのがGrove sound sensorです。Groveの4ピン・コネクタで接続できます。
主なスペックです。
- 動作電圧 3.3V、5V
- 動作電流 4~5mA(5V時)
- マイクの感度 52~48dB(1kHz)
- 周波数帯域 16Hz~20kHz
- SN比 54dB
●接続
Grove sound sensor ケーブルの色 |
Arduino UNO |
---|---|
赤色 | 5V |
黒色 | GND |
白色 | A1 |
黄色 | A0 |
●スケッチ
サンプルをコピペします。シリアルの速度は9600に変更しました。
// test code for Grove - Sound Sensor
// loovee @ 2016-8-30
const int pinAdc = A0;
void setup(){
Serial.begin(9600);
//Serial.println("Grove - Sound Sensor Test...");
}
void loop(){
long sum = 0;
for(int i=0; i<32; i++){
sum += analogRead(pinAdc);
}
sum >>= 5;
Serial.println(sum);
delay(10);
}
シリアルプロッタの実行結果です。
単純にloop()を、
Serial.println(analogRead(pinAdc)/1024.0*5.0); |
にすると、静かなときは1V台、近くで声を出すと2から3V台、とても大きな声だと4V台になりました。