Arduino ile Titreşim Sensörü Kullanımı

Merhaba arkadaşlar!

Bu yazıda Vibration yani titreşim sensörünü kullanarak ortamdaki titreşimleri ölçmeyi göstereceğiz. Uygulamaya geçmeden önce bu sensör hakkında bazı bilgiler vermek istiyorum.

Titreşimlerden dolayı zarar görmüş birçok makine veya pahalı donanım bulunmaktadır. Böyle bir durumda, makine veya ekipmanın titreşimler üretip üretmediğini bulmak için titreşim sensörü gerekir. Titreşim için uygun sensör kullanılırsa, sürekli olarak titreşen nesneyi belirlemek kolay olacaktır.

Piyasada mevcut olan titreşim hızını algılayarak titreşimi algılayan ve mükemmel sonuç veren çeşitli titreşim sensörleri vardır. Ancak, bu tür sensörler ivmeölçerin kullanıldığı yerlerde çok pahalıdır. İvmeölçer çok hassastır ve deprem dedektör devresi yapmak için kullanılabilir. Sadece titreşimleri saptamak için geliştirilen ucuz sensörler bulunmaktadır. Bunlardan biri de vibration sw-420 sensörüdür.

Bu sensör 3.3V ile 5V arasındaki gerilimlerde çalışabilir. Çıkış olarak dijital bir veri üretir. Eğer titerşim varsa 1 yoksa 0 değerini sisteme gönderir.

Bu sensörün görüntüsü aşağıdaki gibidir:

Vibration – Titreşim Sensörü Görünümü

Resimde görüleceği üzere bu sensör 4 adet pin ile gelmektedir. Şimdi bu pinleri inceleyelim.

aD0 : Arduino’da bulunan dijital pinlerden herhangi birine bağlanır. Dijital çıkış üretir.
1 : titreşim var
0 : titreşim yok

aVCC : +5V

aGND : Ground yani topraklama

Bu bilgileri verdikten sonra şimdi Vibration sensörünü kullanarak ortamdaki titreşimi ölçebiliriz. Uygulama için ihtiyacımız olan devre elemanları aşağıdaki gibidir:

  • Vibration SW – 420 x 1
  • 220 ohm x 1
  • Red Led x 1
  • Yeterince erkek-erkek bağlantı kablosu

Elemanları temin etikten sonra devremizi aşağıdaki gibi oluşturalım.

Vibration – Titreşim Sensörü Devre Şeması

Yukarıda görülen devrede bağlantı işlemi aşağıdaki gibi yapılmıştır.

  • Sensörün VCC pini, 5V çıkışına bağlandı.
  • Sensörün GND pini, GND pinine bağlandı.
  • Sensörün D0 pini, Arduino’daki dijital 7 pinine bağlandı.
  • Red yani kırmızı ledimizin (+) ucu 13 nolu pine bağlandı.

Bu bilgilerden sonra devremiz aşağıdaki gibi olur.

Vibration – Titreşim Sensörü Devresi

Yukarıdaki resim kodu yükleyip devreyi çalıştırdıktan hemen sonra projemizin nasıl çalıştığını göstermektedir. Ortamda herhangi bir titreşim yoksa led sönük olur. Eğer ortamda çok az dahi olsa bir titreşim varsa, kırmızı led yanacaktır.

Vibration – Titreşim Sensörü Çalışması

Şimdi de projemizin kodlarını sizlere gösterelim. Devremizin kodu aşağıdaki gibidir.


int vibration=7;
int led=13;

void setup() {
  pinMode(vibration,INPUT);
  pinMode(led,OUTPUT);
}

void loop() {

  int val = digitalRead(vibration);

  if(val==1)
  {
    digitalWrite(led,HIGH);
    delay(1000);
    digitalWrite(led,LOW);
    delay(1000);
   }
   else
   digitalWrite(led,LOW);
}

Kodların açıklaması aşağıdaki gibidir:


int vibration=7;
int led=13;

Daha iyi bir kod deneyimi için uygulamanın hayat döngüsü boyunca sürekli olarak kullanacağımız pinleri değişkenlere atadık. Kırmızı led 13 ve sensörün D0 pini 7 nolu pinlere bağlanmıştır.


 pinMode(vibration,INPUT);
 pinMode(led,OUTPUT);

pinMode metodu ile pinlerin giriş veya çıkış olması sağlanır. 13 nolu pin çıkış, 7 nolu pin ise giriş olarak set edilir.


int val = digitalRead(vibration);

digitalRead() komutu 7 nolu giriş pininden dijital veri okumayı sağlar. Titreşim sensöründen okunan dijital veri bu şekilde alınır.


  if(val==1)
  {
    digitalWrite(led,HIGH);
    delay(1000);
    digitalWrite(led,LOW);
    delay(1000);
   }
   else
   digitalWrite(led,LOW);


val değişkeni yani titreşim sensöründen gelen veri 1 ise kırmızı led yakılır ve bir saniye kadar beklendikten sonra led söndürülür. Sönme işlemi 1 saniye kadar devam eder. Eğer gelen veri sıfır ise bu durumda kırmızı led tamamen söndürülür.

Uygulamayı çalıştırdığımızda, sensörün çok hafif titreşimleri bile algıladığı ve sensörün yandığı görülmüştür.

Bu sensörü kullanarak evinizde veya ofisinizde otururken, çalışırken deprem olup olmadığını öğrenebilirsiniz.

**Bana en büyük desteğiniz yazılarıma yorum yapmanız ve paylaşmanızdır.