Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Detta är en instruerbar för en väckarklocka. Vi gjorde en väckarklocka eftersom vi alltid är för sena eller ofta glömmer vi att ställa in larmet.
Denna väckarklocka är helt automatisk, så du behöver inte ställa in ditt larm. Du kan välja en annan väckningstid till vardags. Du måste ställa in väckningstiden en gång, och sedan går ditt larm på den valda tiden.
Steg 1: Material
1. Arduino
Vi använde en Arduino Uno. Du kan ansluta Arduino till datorn med en USB-kabel. För att programmera Arduino behöver du Arduino Sketch -programmet på din dator.
2. Realtidsklocka
Realtidsklockan, som heter RTC, är en datorklocka. RTC uppdaterar tiden, så du måste ställa in tiden en gång. Vi använde RTC ZS-042
3. Liquid Crystal Display
Liquid Crystal Display, som heter LCD, är en skärm som du kan ansluta till arduino.
4. Brödbräda
För att göra elektriska kretsar är det mycket användbart att ha en brödbräda. Arduino styr varje stift.
5. Kvinnliga och hankablar
För att ansluta de elektriska komponenterna kan du använda dessa ledningar. Du kan ansluta han- och honkablarna med hålen och stiften.
6. Summer
Summern ger ljudet till din väckarklocka.
7. USB-kabel
Du kan ansluta Arduino till datorn med USB-kabeln, så att du kan programmera Arduino.
8. 9 volts batteri
9. Batteriklämma
För att ansluta arduino med 9 volt -batty behöver du det här klippet.
10. Lego
Vi tillverkade vårt skyddsöverdrag med lego, men du kan välja något annat om du vill.
Steg 2: Anslut RTC
För att ansluta RTC till arduino behöver vi RTC, Arduino, Breadboard, hon- och hantråd.
Anslutning Arduino
-GND: placera vid brödbrädans position j12
-8: Placera vid brödbrädans position j10
Anslutning RTC:
- 32K: plats vid A5 i Arduino
-SQW: plats på Vin i Arduino
- SCL: Placera vid position h30 på brödbrädan
- SDA: Placera vid position g30 på brödbrädan
-VCC: placera inte den här
-GND: placera vid GND i Arduino
Steg 3: Ställ in tiden
Först måste du förklara RTC i skissen:
#omfatta
DS3231 rtc (SDA, SCL);
Nu kan du ställa in tiden:
rtc.begin ();
rtc.setDOW (FREDAY); // Ställ in veckodag till SÖNDAG
rtc.setTime (15, 49, 0); // Ställ in tiden till 12:00:00 (24 -timmarsformat)
rtc.setDate (13, 4, 2018);
Du kan kontrollera din tid på den seriella bildskärmen.
Steg 4: Anslut LCD -skärmen
Nu måste du ansluta LCD -skärmen till Arduino. Vi ansluter 4 ledningar från LCD -skärmen till Arduino eller brödbrädan. Du måste ansluta trådarna så här:
- GND: placera vid GND i arduino
- VCC: placera i brädbrädans powerrail
- SDA: placera vid position j29 på brödbrädan
- SCL: placera vid position f30 på brödbrädan
Steg 5: Ställ in LCD -skärmen
Du måste förklara LCD -skärmen i skissen. Du måste göra det så här:
#omfatta
I denna del av koden förklaras att LCD -skärmen visar datum och tid på skärmen.
void setup ()
{lcd.begin (16, 2); för (int i = 0; i <5; i ++) {lcd.noBacklight (); fördröjning (500); lcd.backlight (); lcd.print ("Terrorlarm"); fördröjning (500); lcd.clear (); }
Steg 6: Anslut summern
Summern placeras vid stift h10 och i stift h12 på brödbrädan. Tonen indikeras med ordet "ton". I vår skiss har vi valt denna ton för larmet: ton (10, 440, 200).
Steg 7: Installera larmet
Vi har valt att göra en automatisk väckarklocka. Vi har ställt väckarklockan från måndag till lördag. Vi har ofta problemet att vi glömmer att ställa in vår väckarklocka, det här är lösningen på vårt problem. Vi har justerat larmet enligt vårt skolschema. Om larmet går hörs ett pip och skärmen blinkar. Detta är koden för larmkontrollen i ogiltig loop:
alarmcheck (); if (t.min == 15 && t.hour == 7) {lcd.noBacklight (); fördröjning (5000); lcd.backlight (); ton (10, 440, 200); }}
void alarmcheck () {if (t.min == 15 && t.hour == 7 && rtc.getDOWStr (FORMAT_LONG) == "Monday") {alarm (); } if (t.min == 45 && t.hour == 9 && rtc.getDOWStr (FORMAT_LONG) == "tisdag") {alarm (); } if (t.min == 14 && t.hour == 13 && rtc.getDOWStr (FORMAT_LONG) == "onsdag") {alarm (); } if (t.min == 45 && t.hour == 7 && rtc.getDOWStr (FORMAT_LONG) == "torsdag") {alarm (); } if (t.min == 45 && t.hour == 7 && rtc.getDOWStr (FORMAT_LONG) == "fredag") {alarm (); } if (t.min == 15 && t.hour == 9 && rtc.getDOWStr (FORMAT_LONG) == "lördag") {alarm (); }}
void alarm () {lcd.noBacklight (); fördröjning (1000); lcd.backlight (); för (int i = 0; i <100; i ++) {ton (10, 200*i+200); }}
När det inte finns något larm kan du se tid och datum på displayen. Detta är koden:
t = rtc.getTime (); Serial.println (rtc.getDOWStr (FORMAT_LONG)); lcd.setCursor (0, 0); lcd.print ("Tid:"); lcd.print (rtc.getTimeStr ()); lcd.setCursor (0, 1); lcd.print ("Datum:"); lcd.print (rtc.getDateStr ()); fördröjning (1000); lcd.clear ();
Steg 8: Gör skyddskåpan
Alla elektriska komponenter är anslutna nu. Det enda vi behöver är skyddshöljet. Vi tillverkade skyddet från Lego, men du kan välja vad du vill.
Steg 9: Använd din väckarklocka
Nu är väckarklockan redo att användas. Du kommer aldrig sent, på grund av denna automatiska väckarklocka!