Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
Tai yra instrukcija žadintuvui. Padarėme žadintuvą, nes visada vėluojame arba dažnai pamirštame nustatyti žadintuvą.
Šis žadintuvas yra visiškai automatinis, todėl jums nereikia nustatyti žadintuvo. Kasdien galite pasirinkti skirtingą pabudimo laiką. Turite vieną kartą nustatyti pabudimo laiką, o tada jūsų žadintuvas įsijungs pasirinktu laiku.
1 žingsnis: medžiagos
1. Arduino
Mes naudojome „Arduino Uno“. „Arduino“galite prijungti prie kompiuterio naudodami USB kabelį. Norėdami programuoti „Arduino“, kompiuteryje reikia „Arduino Sketch“programos.
2. Laikrodis realiuoju laiku
„Real Time Clock“, pavadintas RTC, yra kompiuterio laikrodis. RTC atnaujina laiką, todėl laiką turite nustatyti vieną kartą. Mes naudojome RTC ZS-042
3. Skystųjų kristalų ekranas
Skystųjų kristalų ekranas, pavadintas LCD, yra ekranas, kurį galite prijungti prie arduino.
4. Duonos lenta
Norint pagaminti elektros grandines, labai naudinga turėti duonos lentą. „Arduino“valdo kiekvieną kaištį.
5. Moterų ir vyrų laidai
Norėdami prijungti elektrinius komponentus, galite naudoti šiuos laidus. Kištukinius ir moteriškus laidus galite prijungti prie skylių ir kaiščių.
6. Garsinis signalas
Garsinis signalas skleidžia jūsų žadintuvą.
7. USB kabelis
Galite prijungti „Arduino“prie kompiuterio naudodami USB kabelį, kad galėtumėte užprogramuoti „Arduino“.
8. 9 voltų baterija
9. Akumuliatoriaus spaustukas
Norėdami sujungti arduino su 9 voltų baterija, jums reikia šio klipo.
10. Lego
Mes sukūrėme apsauginį dangtelį su „lego“, bet jei norite, galite pasirinkti ką nors kita.
2 veiksmas: prijunkite RTC
Norėdami prijungti RTC prie arduino, mums reikia RTC, „Arduino“, „Breadboard“, moterų ir vyrų laidų.
Ryšys „Arduino“
-GND: padėkite duonos lentos j12 padėtyje
-8: padėkite duonos lentos j10 padėtį
Ryšio RTC:
- 32K: vieta A5 Arduino
-SQW: vieta Vin Arduino
- SCL: padėkite į duonos lentos h30 padėtį
- SDA: padėkite į duonos lentos g30 padėtį
-VCC: nedėkite šio
-GND: vieta GND Arduino
3 žingsnis: nustatykite laiką
Pirma, eskize turite paaiškinti RTC:
#įtraukti
DS3231 rtc (SDA, SCL);
Dabar galite nustatyti laiką:
rtc.begin ();
rtc.setDOW (PENKTADIENIS); // Nustatykite savaitės dieną į SEKMADIENĮ
rtc.setTime (15, 49, 0); // Nustatykite laiką iki 12:00:00 (24 val. Formatas)
rtc.setDate (13, 4, 2018);
Savo laiką galite patikrinti serijiniame monitoriuje.
4 veiksmas: prijunkite LCD ekraną
Dabar turite prijungti skystųjų kristalų ekraną prie „Arduino“. Mes prijungiame 4 laidus iš LCD prie „Arduino“arba duonos lentos. Turite prijungti laidus taip:
- GND: vieta GND į arduino
- VCC: įdėkite į duonos lentos galią
- SDA: padėkite duonos lentos j29 poziciją
- SCL: padėkite duonos lentos f30 padėtyje
5 veiksmas: nustatykite LCD ekraną
Jūs turite paaiškinti eskizo skystųjų kristalų ekraną. Jūs turite tai padaryti taip:
#įtraukti
Šioje kodo dalyje paaiškinta, kad LCD ekrane bus rodoma data ir laikas.
negaliojanti sąranka ()
{lcd.begin (16, 2); už (int i = 0; i <5; i ++) {lcd.noBacklight (); vėlavimas (500); lcd.backlight (); lcd.print („Teroro aliarmas“); vėlavimas (500); lcd.clear (); }
6 veiksmas: prijunkite garsinį signalą
Signalizatorius dedamas prie duonos lentos kaiščio h10 ir kaiščio h12. Tonas nurodomas žodžiu „tonas“. Savo eskize mes pasirinkome šį signalą signalui: tonas (10, 440, 200).
7 veiksmas: įdiekite signalizaciją
Mes nusprendėme pagaminti automatinį žadintuvą. Mes nustatėme žadintuvą nuo pirmadienio iki šeštadienio. Dažnai susiduriame su problema, kad pamirštame nustatyti žadintuvą, tai yra mūsų problemos sprendimas. Mes sureguliavome signalą pagal mūsų mokyklos tvarkaraštį. Jei aliarmas įsijungia, pypteli ir ekranas mirksi. Tai yra aliarmo patikrinimo de void cikle kodas:
alarmcheck (); if (t.min == 15 && t.hour == 7) {lcd.noBacklight (); vėlavimas (5000); lcd.backlight (); tonas (10, 440, 200); }}
void alarmcheck () {if (t.min == 15 && t.hour == 7 && rtc.getDOWStr (FORMAT_LONG) == "pirmadienis") {alarm (); } if (t.min == 45 && t.hour == 9 && rtc.getDOWStr (FORMAT_LONG) == "antradienis") {signal (); } if (t.min == 14 && t.hour == 13 && rtc.getDOWStr (FORMAT_LONG) == "Trečiadienis") {signal (); } if (t.min == 45 && t.hour == 7 && rtc.getDOWStr (FORMAT_LONG) == "ketvirtadienis") {signal (); } if (t.min == 45 && t.hour == 7 && rtc.getDOWStr (FORMAT_LONG) == "penktadienis") {signal (); } if (t.min == 15 && t.hour == 9 && rtc.getDOWStr (FORMAT_LONG) == "Šeštadienis") {alarm (); }}
void alarm () {lcd.noBacklight (); vėlavimas (1000); lcd.backlight (); už (int i = 0; i <100; i ++) {tonas (10, 200*i+200); }}
Kai nėra aliarmo, ekrane galite pamatyti laiką ir datą. Tai yra kodas:
t = rtc.getTime (); Serial.println (rtc.getDOWStr (FORMAT_LONG)); lcd.setCursor (0, 0); lcd.print ("Laikas:"); lcd.print (rtc.getTimeStr ()); lcd.setCursor (0, 1); lcd.print ("Data:"); lcd.print (rtc.getDateStr ()); vėlavimas (1000); lcd.clear ();
8 žingsnis: padarykite apsauginį dangtelį
Visi elektros komponentai jau prijungti. Vienintelis dalykas, kurio mums reikia, yra apsauginis dangtelis. Apsauginį dangtelį pagaminome iš „Lego“, bet jūs galite pasirinkti viską, ko norite.
9 veiksmas: naudokite žadintuvą
Dabar žadintuvas yra paruoštas naudoti. Dėl šio automatinio žadintuvo niekada nevėluosite!