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.
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:
- Arduino Uno R3
- Buzzer
- Buton
- Breadboard
- 10 kΩ Direnç
- Ç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.
}
}
}
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]
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Hi, @shreyasgune. Thank you for your respond. I've added more information about tutorial. I hope this edit enough for approval.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit