Making Doorbell with Arduino

in #utopian-io7 years ago (edited)

Hi everyone,
This tutorial about how to make doorbell with Arduino. I'll show you how to set circuit elements on breadboard for making doorbell.


source image

Merhabalar, bu yazımda sizlerle Arduino kullanarak kendi kapı zilimizi nasıl yapabileceğimizi anlatacağım. Zilin tasarımını aşağıdaki şemada inceleyebilirsiniz. Bu tutorial ile sadece kapı zili yapmayı değil, buzzer kullanımını öğrenerek daha başka projelerde geliştirme imkanına da sahip olabilirsiniz.

Programın işleyişinden bahsetmek gerekirse normal kapı zillerinde olduğu gibi butona tek tıklama ile bir melodiye sahip olmuş olacağız. Kodları incelerken "pitches.h" diye bir dosyayı kodumuza dahil ettiğimizi göreceksiniz. Bu dosyanın içeriğini internetten çok kolay bir şekilde indirip, kurabilir veya kendiniz bir metin belgesinin içine notaları yazıp, .h uzantılı olarak kaydedip kullanabilirsiniz. Bu notalara da internette ulaşmak mümkün. Hangi yolu izleyeceğiniz size kalmış durumda.

Kodu yazacağımız ortam tamamen ücretsiz olan Arduino'nun kendi IDE'si. Bu IDE'ye internetten kolayca ulaşabilirsiniz. Ayrıca programı indirip kurmak istemiyorsanız, sadece deneme maksadı ile Online IDE'ye de göz atabilirsiniz. Yazdığım her kodun yanına açıklamalarını da yazmaya özen gösterdim ki o satırda ne işlemi yaptığımızı anlamak daha kolay olsun. Aşağıda paylaştığım video da kodun doğruluğunu kanıtlayacaktır. Koddaki "muzik" dizisini değiştirerek de kendi melodinizi oluşturabilirsiniz.

Şimdi kullanacağımız malzemelerden başlayalım:

  1. Arduino Uno R3
  2. Buzzer
  3. Buton
  4. Breadboard
  5. 10 kΩ Direnç
  6. Çeşitli Devre Elemanları ile kablolar

Devremizi nasıl tasarlayacağımızı gösterelim:

Sıra kodlarda:

Kodları kopyalayarak kullanmak isteyenler için:

#include "pitches.h" //Buzzer için olan tüm notaların bulunduğu dosya.
int muzik[] = {NOTE_C4, NOTE_G3, NOTE_A3, NOTE_G3, 0, NOTE_B3, NOTE_C4}; //Butona bastığımız zaman çalacak melodi.
int buton = 12; // Butonu bağladığımız Arduino'nun pini
int ritim[] = {4, 8, 8, 4, 4, 4, 4, 4}; //Vuruşları tanımladık. 4'lük bir vuruş, 8'lik yarım vuruş.
void setup() {
  pinMode(buton, INPUT); //Butonu giriş aygıtı olarak tanımladık.
}
void loop() {
  int butonun_durumu = digitalRead(buton); //Buton basılı mı?
  if(butonun_durumu == 1){ //Eğer buton basılı ise
    for(int nota = 0; nota < 8; nota++){ //Yukarıda tanımladığımız ritimdeki notaları sırası ile çaldıralım.
      int sure = 1000/ritim[nota]; //1000 dedik çünkü milisaniye ile işlem yapılıyor.
      tone(8, muzik[nota], sure);
      int nota_aralari = sure * 1.33; //Notalar peşpeşe çalmasın, 1/3 süre kadar beklesin diye zaman belirledik.
      delay(nota_aralari); //İki nota ard arda çalmadan önce bekliyor.
      noTone; //Müzik bitti.
      }
    }
}

Sort:  

Your contribution cannot be approved because it is not as informative as other contributions. See the Utopian Rules. Contributions need to be informative and descriptive in order to help readers and developers understand them.

You can contact us on Discord.
[utopian-moderator]

Hi, @shreyasgune. Thank you for your respond. I've added more information about tutorial. I hope this edit enough for approval.

Coin Marketplace

STEEM 0.26
TRX 0.20
JST 0.038
BTC 95767.84
ETH 3622.54
USDT 1.00
SBD 3.75