Arduino Ses ile Motor Kontrolü

Bu projemde ses sensörü ile okuduğumuz değere göre motor hareketi sağlayacağım

Malzemeler

Arduino Uno

Breadboard

6 Adet erkek-erkek jumper kablo

DC motor

330 ohm direnç

BC547 NPN Transistör

Ses sensör kartı

Malzemeleri Tanıyalım

Transistör :Yarı iletken olan bu devre elemanı küçük elektrik sinyallerini yükseltmek ya da büyük miktarda akımı küçültmek amacıyla kullanılır. Genellikle 3 tane bacakları bulunur. Motor çok fazla akım çektiği için bu devremizde transistör kullanacağız

Ses Sensör Kartı: Üzerinde mikrofon bulunur ve ortamdaki seslere göre dijital çıkış verir. Üzerinde VCC, GND ve A0 pinleri bulunur. Ayrıca üzerinde bulunan potansiyometre ile ses seviyesinin eşik değerini ayarlayabilirsiniz.

DC motor: DC motorlar hakkında ayrıntılı bilgi edinmek için DC motor nedir yazımıza bakabilirsiniz

 

Çalışma Şekli

 

DC motorumuzu aktif etmek veya tam tersine aktif dışı bırakmak için  ses sensör kartı kullanacağız. Üzerinde bulunan A0 pini sensörden gelen verilerin bize analog olarak aktarılmasını sağlayacak. DC motorlar arduinonun verebileceğinden daha fazla akım çektiğinden dolayı arduinonun pinlerinin yanmaması için arduinonun pinlerine doğrudan bağlantı yapamıyoruz ve bu yüzden projemiz transistör içeriyor. Yani aslında transistör motor sürme gücünü sağlayacak elemandır. Arduino transistöre bir sinyal yollayacak ve transistörde gerekli akımı motora sağlayacaktır. Sensörümüz sesi algıladığı vakit motorumuz çalışmaya başlayacaktır.

 

Devre

  1. Adım : Ses sensör kartının bağlantısını yapıyoruz.

Sensörün VCC pininden arduino üzerinde bulunan 5V pinine bağlantıyı kuruyoruz.

Daha sonrasında sensörün eksi bacağından arduinonun GND pinine

Artı bacağından ise arduinonun reset pinine bağlantı kuruyoruz.

 

        2. Adım:Transistörü breadboarda yerleştiriyoruz.

    Transistörün yazı yazan kısmına önden bakıldığında sağdan kalan pini arduinonun üzerinde bulunan GND pini ile birleştiriyoruz.

    Ortadaki pine direnci bağladıkta sonra direncin boşta kalan bacağını arduinonun 5. pini ile bağlantısını kuruyoruz.

    

       3. Adım: Motorumuzu yerleştiriyoruz.

    Dc motorun artı bacağını arduinonun 5V pini ile

     Eksi bacağının transistörün boşta kalan soldaki bacağı ile birleştiriyoruz ve devremiz böylece hazır.

 

Kod

 

#define SensorPin 3 // değişkenleri tanımlıyoruz.

#define MotorPin 5

int MotorDurum = LOW;

 

void setup() {

  pinMode (SensorPin, INPUT); //ses sensöründen gelen sinyal  pinini giriş

  pinMode( MotorPin, OUTPUT); //motor sürücüsüne giden 5. pini çıkış olarak ayarlıyoruz

}

 

void loop() {

  if( digitalRead(SensorPin) ) { // ses sensöründen gelen veriyi okuyoruz.

    if(MotorDurum == LOW) { // motor durum değişkenine eğer ses gelmezse LOW

        MotorDurum = HIGH; // ses gelirse HIGH yazıyoruz

}

else{

    MotorDurum= LOW ;

}

digitalWrite(MotorPin, MotorDurum); // dijital çıkış olarak motor durum değişkenini gönderdik.

}

 delay(50); // döngü çok hızlı olmasın diye 50ms’lik bekleme

}

  

 

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top