LESSON 041
高感度音声センサモジュールで音を感知する
○ 今回は高感度音声センサモジュールについてを説明します。
  コイルに電流が流れると磁石が動きます。 これが、スピーカー
 
 これを利用すると、マイクやスピーカーになります。
  これを利用すると、マイクやスピーカーになります。
  
     
 これを利用すると、マイクやスピーカーになります。
  これを利用すると、マイクやスピーカーになります。 
     ○ 高感度音声センサモジュール KY-037 を使用します。
モジュールにはデジタル/アナログ出力の2つの出力があります。
AO:アナログ出力、マイク電圧信号のリアルタイム出力
DO:音の強さが特定のしきい値に達すると、高レベルと低レベルの信号を出力します。
しきい値感度はポテンショメータで調整します。
 
    リンク
   
 
 
目 次
- 
- 構成部品
- 配線図
- スケッチ
- 結果
- まとめ
 
構成部品
Arduino
USBケーブル
高感度音声センサモジュール
ブレッドボード
ジャンパー線 
配線図  

GPIO 9 ⇒ DO
5V ⇒ ✚
GND ⇒ GND
GPIO A0 ⇒ AO
 
                        
 
     

GPIO 9 ⇒ DO
5V ⇒ ✚
GND ⇒ GND
GPIO A0 ⇒ AO
 
                         
     スケッチ《 test033》  
   
int  sensoranalog  =  A0;
int  sensorD =  0; 
int  sensordigital= 9;
int  digitalD;
void  setup()
{
pinMode(sensordigital,INPUT);
Serial.begin(9600);
}
void  loop()
{ 
  sensorD =  analogRead(sensoranalog);
  Serial.print(" アナログ値 :  ");
  Serial.print(sensorD,  DEC);
  Serial.print(" デジタル値 :   ");
  digitalD=digitalRead(sensordigital); 
  if(digitalD==HIGH)
  {
  Serial.println("HIGH");
  }
  else
  {
  Serial.println("LOW");
  }
}
リンク
  
解説
- void loop() 内
 アナログデータ
 sensorD = analogRead(sensoranalog);
 Serial.print(“ アナログ値 : “);
 Serial.print(sensorD, DEC);
 DEC 10進数デジタルデータ 
 digitalD=digitalRead(sensordigital);
 if(digitalD==HIGH)
 {
 Serial.println(“HIGH”);
 }
 else
 {
 Serial.println(“LOW”);
 }
 
 
まとめ
〇 今回はアナログ・デジタルの両方を出力しましたが、必要な方を選択して下さい。
○ ポテンショメータを調整することで必要な値が得られますが、ある程度音声が長くないと反応しません。手を叩いて「パン」と鳴らしてもほぼ反応しませんでした。
  (性能のいいセンサなら反応するかもしれませんが 私の感想です。)
         
○ Arduino を 学ぶ上で書籍やWebpageを参考に作っていますが、私なりに噛み砕いて書いているつもりですが、判らない点がありましたら連絡下さい。



 
			 
			 
			 
			 
			 
			 
			