Kazalo:
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-13 06:58
To je navodilo za budilko. Naredili smo budilko, ker vedno zamujamo ali pa pogosto pozabimo nastaviti alarm.
Ta budilka je popolnoma samodejna, zato vam ni treba nastaviti alarma. Za vsak dan lahko izberete drugačen čas bujenja. Enkrat morate nastaviti čas bujenja, nato pa se alarm vključi v izbranem času.
1. korak: Materiali
1. Arduino
Uporabili smo Arduino Uno. Arduino lahko povežete z računalnikom s kablom USB. Za programiranje Arduina v računalniku potrebujete program Arduino Sketch.
2. Ura v realnem času
Ura v realnem času, imenovana RTC, je računalniška ura. RTC posodobi čas, zato ga morate enkrat nastaviti. Uporabili smo RTC ZS-042
3. Zaslon s tekočimi kristali
Zaslon s tekočimi kristali, imenovan LCD, je zaslon, ki ga lahko povežete z arduinom.
4. Ogledna plošča
Za izdelavo električnih tokokrogov je zelo koristno imeti ploščo. Arduino nadzoruje vsak pin.
5. Ženska in moška žica
Za priključitev električnih komponent lahko uporabite te žice. Moške in ženske žice lahko povežete z luknjami in zatiči.
6. Zvočni signal
Brenčalec odda vaš alarm.
7. USB-kabel
Arduino lahko povežete z računalnikom s kablom USB, tako da lahko programirate Arduino.
8. 9 -voltna baterija
9. Sponka za baterijo
Če želite arduino povezati z 9 -voltno baterijo, potrebujete ta posnetek.
10. Lego
Zaščitno prevleko smo izdelali z legom, po želji pa lahko izberete kaj drugega.
2. korak: Priključite RTC
Za povezavo RTC z arduinom potrebujemo RTC, Arduino, ploščico, ženske in moške žice.
Povezava Arduino
-GND: postavite na položaj j12 plošče
-8: Postavite na položaj j10 plošče
Povezava RTC:
- 32K: mesto na A5 v Arduinu
-SQW: mesto na Vin v Arduinu
- SCL: Postavite na položaj h30 plošče
- SDA: Postavite na položaj g30 plošče
-VCC: ne postavljaj tega
-GND: mesto na GND v Arduinu
3. korak: nastavite čas
Najprej morate na skici razložiti RTC:
#vključi
DS3231 rtc (SDA, SCL);
Zdaj lahko nastavite čas:
rtc.begin ();
rtc.setDOW (PETEK); // Dan za teden nastavite na NEDELJO
rtc.setTime (15, 49, 0); // Nastavite čas na 12:00:00 (24 -urni format)
rtc.setDate (13, 4, 2018);
Čas lahko preverite na serijskem monitorju.
4. korak: Priključite LCD
Zdaj morate LCD priključiti na Arduino. Priključimo 4 žice z LCD -ja na Arduino ali ploščo. Žice morate povezati tako:
- GND: postavite na GND v arduino
- VCC: postavite v pogonski okvir na plošči
- SDA: postavite na položaj j29 plošče
- SCL: postavite na položaj f30 plošče
5. korak: Nastavite LCD
Na skici morate razložiti LCD. To morate storiti tako:
#vključi
V tem delu kode je razloženo, da bo LCD na zaslonu prikazal datum in uro.
void setup ()
{lcd.begin (16, 2); za (int i = 0; i <5; i ++) {lcd.noBacklight (); zamuda (500); lcd.backlight (); lcd.print ("Teror alarm"); zamuda (500); lcd.clear (); }
6. korak: Priključite zvočni signal
Zvočni signal je nameščen na zatiču h10 in na zatiču h12 plošče. Ton je označen z besedo "ton". V skici smo za alarm izbrali ta ton: ton (10, 440, 200).
7. korak: Namestite alarm
Odločili smo se za avtomatsko budilko. Budilko smo nastavili od ponedeljka do sobote. Pogosto imamo težavo, da pozabimo nastaviti budilko, to je rešitev za naš problem. Alarm smo prilagodili urniku šole. Če se alarm oglasi, zasliši pisk in zaslon utripa. To je koda za preverjanje alarma v zanki de void:
alarmcheck (); if (t.min == 15 && t.hour == 7) {lcd.noBacklight (); zamuda (5000); lcd.backlight (); ton (10, 440, 200); }}
void alarmcheck () {if (t.min == 15 && t.hour == 7 && rtc.getDOWStr (FORMAT_LONG) == "ponedeljek") {alarm (); } if (t.min == 45 && t.hour == 9 && rtc.getDOWStr (FORMAT_LONG) == "torek") {alarm (); } if (t.min == 14 && t.hour == 13 && rtc.getDOWStr (FORMAT_LONG) == "sreda") {alarm (); } if (t.min == 45 && t.hour == 7 && rtc.getDOWStr (FORMAT_LONG) == "četrtek") {alarm (); } if (t.min == 45 && t.hour == 7 && rtc.getDOWStr (FORMAT_LONG) == "petek") {alarm (); } if (t.min == 15 && t.hour == 9 && rtc.getDOWStr (FORMAT_LONG) == "sobota") {alarm (); }}
void alarm () {lcd.noBacklight (); zamuda (1000); lcd.backlight (); za (int i = 0; i <100; i ++) {ton (10, 200*i+200); }}
Ko ni alarma, lahko na zaslonu vidite uro in datum. To je koda:
t = rtc.getTime (); Serial.println (rtc.getDOWStr (FORMAT_LONG)); lcd.setCursor (0, 0); lcd.print ("Čas:"); lcd.print (rtc.getTimeStr ()); lcd.setCursor (0, 1); lcd.print ("Datum:"); lcd.print (rtc.getDateStr ()); zamuda (1000); lcd.clear ();
8. korak: Naredite zaščitni pokrov
Vse električne komponente so do zdaj povezane. Edino, kar potrebujemo, je zaščitni pokrov. Zaščitno prevleko smo izdelali iz Lega, lahko pa izberete kar želite.
9. korak: Uporabite svojo budilko
Zdaj je budilka pripravljena za uporabo. Zaradi te samodejne budilke ne boste nikoli zamudili!