İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Bu bir çalar saat için bir talimattır. Çalar saat yaptık çünkü hep geç kalırız ya da çoğu zaman alarmı kurmayı unuturuz.
Bu çalar saat tamamen otomatiktir, bu nedenle alarmınızı kurmanıza gerek yoktur. Her gün için farklı bir uyanma saati seçebilirsiniz. Uyanma saatini bir kez ayarlamanız gerekiyor ve ardından alarmınız seçtiğiniz saatte çalıyor.
Adım 1: Malzemeler
1. Arduino
Arduino Uno kullandık. Arduino'yu bilgisayara bir USB kablosuyla bağlayabilirsiniz. Arduino'yu programlamak için bilgisayarınızda Arduino Sketch programına ihtiyacınız var.
2. Gerçek Zamanlı Saat
RTC adlı Gerçek Zamanlı Saat, bir bilgisayar saatidir. RTC saati günceller, bu nedenle saati bir kez ayarlamanız gerekir. RTC ZS-042'yi kullandık
3. Sıvı Kristal Ekran
LCD adı verilen Liquid Crystal Display, arduinoya bağlayabileceğiniz bir ekrandır.
4. Ekmek tahtası
Elektrik devreleri yapmak için bir breadboard'a sahip olmak çok faydalıdır. Arduino her bir pini kontrol eder.
5. Dişi ve Erkek teller
Elektrikli bileşenleri bağlamak için bu kabloları kullanabilirsiniz. Erkek ve dişi kabloları delikler ve pimler ile bağlayabilirsiniz.
6. Zil
Zil çalar saatiniz için ses çıkarır.
7. USB kablosu
Arduino'yu bilgisayara USB kablosu ile bağlayabilir, böylece Arduino'yu programlayabilirsiniz.
8. 9 voltluk pil
9. Pil klipsi
Arduino'yu 9 volt pil ile bağlamak için bu klibe ihtiyacınız var.
10. Lego
Koruyucu kılıfımızı lego ile yaptık ama dilerseniz başka bir şey seçebilirsiniz.
2. Adım: RTC'yi bağlayın
RTC'yi arduinoya bağlamak için RTC'ye, Arduino'ya, Breadboard'a, dişi ve erkek kablolara ihtiyacımız var.
Arduino Bağlantısı
-GND: devre tahtasının j12 konumuna yerleştirin
-8: Breadboard'un j10 konumuna yerleştirin
Bağlantı RTC'si:
- 32K: Arduino'da A5'e yerleştirin
-SQW: Arduino'da Vin'e yerleştirin
- SCL: Breadboard'un h30 konumuna yerleştirin
- SDA: Breadboard'un g30 konumuna yerleştirin
-VCC: bunu yerleştirmeyin
-GND: Arduino'da GND'ye yerleştirin
3. Adım: Saati Ayarlayın
İlk olarak, taslakta RTC'yi açıklamanız gerekir:
#Dahil etmek
DS3231 rtc(SDA, SCL);
Şimdi zamanı ayarlayabilirsiniz:
rtc.begin();
rtc.setDOW(CUMA); // Haftanın Günü'nü PAZAR olarak ayarla
rtc.setTime(15, 49, 0); // Saati 12:00:00 (24 saat formatı) olarak ayarlayın
rtc.setDate(13, 4, 2018);
Zamanınızı seri monitörden kontrol edebilirsiniz.
4. Adım: LCD'yi bağlayın
Şimdi LCD'yi Arduino'ya bağlamanız gerekiyor. LCD'den Arduino'ya veya breadboard'a 4 kablo bağlarız. Kabloları şu şekilde bağlamanız gerekir:
- GND: GND'ye arduinoya yerleştirin
- VCC: devre tahtasının güç rayına yerleştirin
- SDA: devre tahtasının j29 konumuna yerleştirin
- SCL: devre tahtasının f30 konumuna yerleştirin
Adım 5: LCD'yi Ayarlayın
Çizimde LCD'yi açıklamanız gerekiyor. Bunu şu şekilde yapmalısınız:
#Dahil etmek
Kodun bu bölümünde LCD'nin tarih ve saati ekranda göstereceği açıklanmıştır.
geçersiz kurulum()
{ lcd.başla(16, 2); for(int i = 0; i<5; i++){ lcd.noBacklight(); gecikme(500); lcd.backlight(); lcd.print("Terör alarmı"); gecikme(500); lcd.clear(); }
Adım 6: Buzzer'ı bağlayın
Zil, devre tahtasının h10 pimine ve h12 pimine yerleştirilir. Ton, 'ton' kelimesi ile belirtilir. Çizimimizde alarm için bu tonu seçtik: ton (10, 440, 200).
7. Adım: Alarmı Kurun
Otomatik bir çalar saat yapmayı seçtik. Çalar saati pazartesiden cumartesiye kurduk. Çoğu zaman çalar saatimizi kurmayı unuttuğumuz sorunu yaşıyoruz, bu bizim sorunumuzun çözümü. Alarmı okul programımızda ayarladık. Alarm kesilirse bir bip sesi duyulur ve ekran yanıp söner. Bu, de void döngüsündeki alarm kontrolü için koddur:
alarmcheck(); if(t.min==15 && t.hour==7){ lcd.noBacklight(); gecikme (5000); lcd.backlight(); ton(10, 440, 200); } }
void alarmcheck(){ if (t.min==15 && t.hour==7 && rtc.getDOWStr(FORMAT_LONG)=="Pazartesi"){ alarm(); } if (t.min==45 && t.hour==9 && rtc.getDOWStr(FORMAT_LONG)=="Salı"){ alarm(); } if (t.min==14 && t.hour==13 && rtc.getDOWStr(FORMAT_LONG)=="Çarşamba"){ alarm(); } if (t.min==45 && t.hour==7 && rtc.getDOWStr(FORMAT_LONG)=="Perşembe"){ alarm(); } if (t.min==45 && t.hour==7 && rtc.getDOWStr(FORMAT_LONG)=="Cuma"){ alarm(); } if (t.min==15 && t.hour==9 && rtc.getDOWStr(FORMAT_LONG)=="Cumartesi"){ alarm(); } }
geçersiz alarm(){ lcd.noBacklight(); gecikme(1000); lcd.backlight(); for(int i = 0; i<100; i++){ ton(10, 200*i+200); } }
Alarm olmadığında ekranda saati ve tarihi görebilirsiniz. Bu kod:
t = rtc.getTime(); Serial.println(rtc.getDOWStr(FORMAT_LONG)); lcd.setCursor(0, 0); lcd.print("Saat: "); lcd.print(rtc.getTimeStr()); lcd.setCursor(0, 1); lcd.print("Tarih: "); lcd.print(rtc.getDateStr()); gecikme(1000); lcd.clear();
Adım 8: Koruyucu Kapağı Yapın
Tüm elektrikli bileşenler şimdiye kadar bağlanmıştır. İhtiyacımız olan tek şey koruyucu kılıf. Koruyucu kılıfı Lego'dan yaptık ama siz istediğinizi seçebilirsiniz.
9. Adım: Çalar Saatinizi Kullanın
Artık çalar saat kullanıma hazırdır. Bu otomatik çalar saat sayesinde asla geç kalmayacaksınız!