Ses Sensörü (Analog A0), arduino ve mblock kodları (Arduino Dersleri, 13) Featured

Rate this item
(1 Vote)

Bu uygulamamızda ses söndürünün analog pininden sinyal okuyacağız.  Projemize göre ortam sesi zayıfsa bir led, biraz artarsa iki led, daha fazla olursa 3 led ve çok yüksek olursa 4 led yanacak.

Gerekli Malzemeler

1 adet Arduino Uno R3
1 adet breadboard
1 adet ses sensörü
4 adet led ( kırmızı)
4 adet direnç (220-330ohm)
8 adet jumper kablo  (5EE,3DE)


Ses Sensörü nedir?

Ses sensörü ortamdaki sesi algılar ve bunun sonuçlarını analog veya dijital olarak arduinoya iletir. Biz bu uygulamamızda sensörün A0 pinine bağlantı yaparak analog sinyallerle çalışacağız. Bir önceki dersimizde dijital sinyallerle çalışmıştık.

 

Ses Sensörü Kullanımı (Analog) Devresi

Ses Sensörü Arduino Kodları

Sensörümüzü ve ledlerimizi bağlantı yaptığımız pinlere tanımladık.
Setup kısmında ledlerimizi ise output yani çıkış olarak tanımladık.

Loop kısmında yani programın ana kısmında, sürekli çalışacak olan kodlarımızı yazalım. Burada belirtmek istediğim bir nokta var, ses sensörü üzerinde bulunan pottan hassasiyet ayarı yaparak, ortam sesine göre bir ayarlama yapınız ve ona göre sayısal değerler kullanın. Mesela ben bu uygulamada ortam sesinin 360 ile 550 arasında belirledim sensör üzerindeki potu ve arduino seri port ekranını kullanarak.
Eğer dışarıdan algılanan ses 350'nin altındaysa ( if  (analoglRead(ses)<350) ise ) led yakma ve şiddete göre 1 led, 2 led , 3 led veya 4 led yak şeklinde kodlarımızı hazırlıyoruz.

 

Ses Sensörü Mblock Kodları

int ses=A0;
int led1=6;
int led2=7;
int led3=8;
int led4=9;
 
void setup() {
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(led3,OUTPUT);
pinMode(led4,OUTPUT);
Serial.begin(9600);
}
void loop() {
Serial.println(analogRead(ses));
delay(50);
//ses sensörü üzerindeki pottan hassasiyetini ayarlayın,
// ben serial ekrana anlık değerleri yazdırıp sesi açıp kapatıp bakıyorum
//ayarları bu şekilde yapıyorum. Koşullu ifadedeki değerleri de ona göre verdim.
if  (analogRead(ses)<375)
{
digitalWrite(led1,0);
digitalWrite(led2,0);
digitalWrite(led3,0);
digitalWrite(led4,0);
  }

else if (analogRead(ses)<385)
  {
digitalWrite(led1,1);
digitalWrite(led2,0);
digitalWrite(led3,0);
digitalWrite(led4,0);
  }
else if (analogRead(ses)<395)
  {
digitalWrite(led1,1);
digitalWrite(led2,1);
digitalWrite(led3,0);
digitalWrite(led4,0);
  }
else if (analogRead(ses)<410)
  {
digitalWrite(led1,1);
digitalWrite(led2,1);
digitalWrite(led3,1);
digitalWrite(led4,0);
  }
else

  {
digitalWrite(led1,1);
digitalWrite(led2,1);
digitalWrite(led3,1);
digitalWrite(led4,1);
  }
}

 

 

CTRL Bizde

Kendi halinde bir kaç kişiyiz,. Karşılaştığımız sorunları çözmek için bazen "çok zaman" harcadığımızı fark edip

devamı

Yeni Eklenenler