Innholdsfortegnelse:
- Trinn 1: Samle delene
- Trinn 2: Montering av kretsen
- Trinn 3: Stille inn LCD -skjermen og klokken
- Trinn 4: Koding
- Trinn 5: Tid for testing
- Trinn 6: Oppsett av Bluetooth-app
- Trinn 7: Bygg saken
- Trinn 8: Ferdig
Video: Soloppgang vekkerklokke med LCD -skjerm og Bluetooth -app: 8 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
Vinteren kan være trist. Du våkner, det er mørkt og du må gå ut av sengen. Det siste du vil høre er den irriterende lyden fra vekkerklokken din. Hvis du, som meg, har problemer med å våkne om morgenen, er denne vekkerklokken akkurat det du trenger.
I denne opplæringen skal vi bygge en soloppgangsklokke. Det er en vekkerklokke som alle andre ved at du kan stille inn timen og minuttet du vil våkne, men med fordelen av å bruke lys til å lyse opp soverommet ditt over en periode som en soloppgang for å vekke deg i stedet for en irriterende summer!
Vi bruker også en Bluetooth -modul for å lage en app som lar deg sette alarmen via telefonen på klokken. LCD-skjermen viser tid, dato og ukedag. Soloppgangslamper finnes på markedet, men de kan være dyre (et raskt søk på Google returnerer produkter i € 100-serien), skjøre og ganske kliniske utseende. Derfor bestemte jeg meg for å lage mitt eget for mitt Arduino skoleprosjekt. Alle delene vil bli oppført i neste trinn. Koden kan lastes ned fra min Github repo soloppgang-vekkerklokke. La oss begynne:)
all kode finner du på:
Trinn 1: Samle delene
Vi bruker en klokke som inngang og en ultralyst LED som utgang for å simulere soloppgangen.
For å bygge kretsen trenger vi:
- Arduino Uno -clockmodule RTC DS3231 - et MOSFET for å kontrollere lysstyrken på lyset - en superlys LED (jeg kjøpte 2, en varm, en kald) - 9V batteri for å drive LED - et brødbrett - en LCD -skjerm (16: 2)- Bluetooth-adapter hc-05 slik at vi kan bruke en app til å stille alarmen.
Alt du trenger kan kjøpes på www.martoparts.nl
Trinn 2: Montering av kretsen
Du kan referere til skissen for kretsen min, dessverre fant jeg ikke RTC DS3231 i programmet, så jeg måtte gjøre med denne. Tilkoblinger er litt forskjellige i virkeligheten, her er sammenhengene. (Bluetooth -modulen er ikke i skissen, men jeg vil forklare hvordan den fungerer nedenfor, noe som gjør det ganske vanskelig)
RTC DS3231GND går til GND på arduinoen
VCC går til 5v
SDA går til arduino
SCL går til arduino Vi bruker ikke SQW og 32KMOSFET
Gate pin går til pin ~ 9 på Arduino Uno fordi det er PWMDrain pin går til den negative siden av LED Kilden pin går til GND på ArduinoLCD-DisplayGND går til GND på arduino
VCC går til 5VSDA går til A4 på arduinoSKL går til A5 på arduinoLED- går til mosfet+ går til 5v9v batteri Du kan kjøpe et 9v batteri i hvilken som helst lokal butikk, koble til arduinoen med en kontaktlist.
Bluetooth-modulen hc-055V går til 5V fra arduinoen
GND går til GND på arduinoen
Nå er det to flere innganger, men her kommer den vanskelige delen, vi må koble de motsatte inngangene til de 2 på arduinoTX fra hc-05 går til RX på arduinoRX fra hc-05 går til TX på arduino
Viktig: Sørg for at du KOBLER TX & RX fra HC-05 når du laster opp kode på din arduino, eller du får en feilmelding som sier "noe gikk galt med å laste opp koden" i kompilatoren.
Trinn 3: Stille inn LCD -skjermen og klokken
Biblioteket som brukes til LCD-skjermen er flytende krystall og finnes på: https://github.com/fdebrabander/Arduino-LiquidCrys… Last ned zip-filen, lagre den og legg den i Arduino's/libraries-mappen
Biblioteket jeg bruker til å kjøre klokken, finnes på Rinky-Dinky Electronics https://www.rinkydinkelectronics.com/library.php?id=73 og sørg for at du er på DS3231-siden. Last ned zip -filen, lagre den og plasser den i Arduinos biblioteksmappe.
Tid
Inkluder biblioteket DS3231 eller DS1307 i din arduino -kode
Ikke kommenter disse tre kodelinjene for å angi tiden:
// rtc.setDOW (MANDAG); // Sett ukedag til SØNDAG // rtc.setTime (23, 57, 0); // Still tiden til 12:00:00 (24 -timers format) // rtc.setDate (14, 1, 2019); // Angi datoen til 1. januar 2014
LCD-skjerm
Inkluder biblioteket liqduicrystal_i2c i din arduino -kode
Bruk for å skrive ut på LCD -skjermen
lcd.setCursor (kol, rad) // plassering av tekst trykt lcd.print (~) // tekst skrevet ut
Trinn 4: Koding
Last ned koden på: github:
Ikke kommenter disse 3 linjene for å stille klokken på LCD -skjermen:
// rtc.setDOW (MANDAG); // Sett ukedag til SØNDAG // rtc.setTime (23, 57, 0); // Still tiden til 12:00:00 (24 -timers format) // rtc.setDate (14, 1, 2019); // Angi datoen til 1. januar 2014
Bruk lcd.setCuros (kol, rad); for å angi posisjonen til teksten som skal vises
lcd.setCursor (0, 2);
og skriv ut () for å skrive ut noe på skjermen
lcd.print (rtc.getDateStr ());
Endre disse variablene hvis du vil
int fadeTime = 1; // Hvor lenge lyset vil falme til maxint setHour = 02; // Angi timer for vekking (militær tid) int setMin = 49; // Angi minutt for å vekke int uled = 9; // Sett pinout med PWM
Bluetooth -modulkode
String firstHalf = getValue (input, ':', 0); // sjekk første inngang til ":"
String secondHalf = getValue (input, ':', 1); // sjekk andre inndata etter ":"
// bruk denne koden hvis du ikke bruker Bluetooth -modulen
// // if (t.hour == setHour && t.min == setMin) // Sjekk om det er på tide å våkne! // { // start(); //}
// sjekk de to første sifferinngangene, og sjekk deretter de to andre sifferene
hvis (t.time == firstHalf.toInt () && t.min == secondHalf.toInt ()) {start (); }}
// logikk for å skille strenger
String getValue (String data, char separator, int index) {int found = 0; int strIndex = {0, -1}; int maxIndex = data.length () - 1;
for (int i = 0; i <= maxIndex && funnet <= index; i ++) {if (data.charAt (i) == separator || i == maxIndex) {funnet ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? i+1: i; }} retur funnet> indeks? data.substring (strIndex [0], strIndex [1]): ""; }
Trinn 5: Tid for testing
Kompiler koden din og test om komponentene fungerer!
Trinn 6: Oppsett av Bluetooth-app
Fordi jeg syntes det var irriterende å grave i koden hver gang jeg ønsket å stille en alarm, ønsket jeg å lage en app som ville sette alarmen, noe som er mye lettere.
Gå til https://ai2.appinventor.mit.edu her kan vi lage en enkel app som lar oss stille alarmen, jeg har inkludert det enkle designoppsettet (du kan alltid justere dette senere) og koden som brukes for Du kan deretter publisere appen og koble den til på telefonen ved å bruke en QR -kode eller laste ned appen direkte til datamaskinen og deretter overføre den med kabel på telefonen. (skjermbilde)
Trinn 7: Bygg saken
Du kan alltid bygge en annen sak rundt arduino -klokken. Jeg brukte tre og matt plexiglass for å bygge min egen vekkerklokke. Jeg valgte matt plexiglass, slik at du kan se lyset som tydelig skinner gjennom saken, men du kan ikke se innsiden av klokken.
Trinn 8: Ferdig
Nå som du har lastet opp koden til arduinoen din, bygget saken og sjekket om du har montert klokken riktig, kan du sette en alarm på bluetooth -appen og begynne å våkne mer naturlig!:)
Anbefalt:
Smart vekkerklokke: en smart vekkerklokke laget med bringebær Pi: 10 trinn (med bilder)
Smart vekkerklokke: en smart vekkerklokke laget med bringebær Pi: Har du noen gang ønsket deg en smart klokke? I så fall er dette løsningen for deg! Jeg lagde Smart Alarm Clock, dette er en klokke som du kan endre alarmtiden i henhold til nettstedet. Når alarmen går, kommer det en lyd (summer) og 2 lys vil
Soloppgang vekkerklokke (Forbedre morgenvåkning): 13 trinn
Soloppgang vekkerklokke (Forbedre morgenvåkenhet): Planlegg din egen personlige soloppgang, forbedrer morgenvåkenhet Siste tilfeldige oppfinnelse, planlegg din egen soloppgang! I løpet av dagen øker det blå lyset i sollys oppmerksomheten, hukommelsen, energinivået, reaksjonstiden og det generelle humøret. . Blått lys
UCL-lloT-Utendørslys Utløst av soloppgang/solnedgang .: 6 trinn
UCL-lloT-Outdoor-light Utløst av soloppgang/solnedgang .: Hei alle sammen! Med litt arbeid, noen deler og kode har jeg satt sammen denne instruksen som viser deg fra start til slutt nøyaktig hvordan du skal produsere dette utendørs lyset. Ideen stammer fra min far, som i løpet av sommeren måtte gå ut manuelt
Soloppgang vekkerklokke med Arduino: 9 trinn (med bilder)
Soloppgang vekkerklokke med Arduino: Vinteren kan være trist. Du våkner, det er mørkt og du må komme deg ut av sengen. Det siste du vil høre er den bråkete lyden fra vekkerklokken din. Jeg bor i London, og jeg har vanskelig for å våkne om morgenen. Dessuten savner jeg å våkne til
LED soloppgang vekkerklokke med tilpassbar sangalarm: 7 trinn (med bilder)
LED soloppgang vekkerklokke med tilpassbar sangalarm: min motivasjon I vinter hadde kjæresten min store problemer med å våkne om morgenen og syntes å lide av SAD (Seasonal Affective Disorder). Jeg merker til og med hvor mye vanskeligere det er å våkne om vinteren siden solen ikke har kommet