INHOUDSOPGAWE:
- Stap 1: Versamel die onderdele
- Stap 2: Monteer die stroombaan
- Stap 3: Stel die LCD -skerm en klok in
- Stap 4: Kodering
- Stap 5: Tyd om te toets
- Stap 6: Opstel van Bluetooth-app
- Stap 7: Bou die saak
- Stap 8: klaar
Video: Sunrise -wekker met LCD -skerm en Bluetooth -app: 8 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:26
Winter kan hartseer wees. Jy word wakker, dit is donker en jy moet uit die bed kom. Die laaste ding wat u wil hoor, is die irriterende geluid van u wekker. As u, net soos ek, sukkel om wakker te word, is hierdie wekker net wat u nodig het.
In hierdie tutoriaal gaan ons 'n sonopwekker bou. Dit is 'n wekker soos enige ander deurdat u die uur en minuut kan instel wat u wil wakker word, maar met die voordeel om lig te gebruik om u slaapkamer oor 'n tydperk soos 'n sonsopkoms op te helder om u wakker te maak in plaas van 'n irriterende gonser!
Ons sal ook 'n Bluetooth -module gebruik om 'n app te skep waarmee u die alarm via u telefoon op die klok kan stel. Die LCD-skerm sal die tyd, datum en dag van die week aandui. Sonsopganglampe bestaan op die mark, maar dit kan duur wees ('n vinnige soektog op Google gee produkte in die reeks van € 100), broos en klinies uit. Daarom het ek besluit om my eie te maak vir my Arduino -skoolprojek. Al die dele word in die volgende stap gelys. Die kode kan afgelaai word vanaf my Github repo sunrise-alarm-clock. Laat ons begin:)
alle kode kan gevind word op:
Stap 1: Versamel die onderdele
Ons gebruik 'n horlosie as ons invoer en 'n ultra-helder LED as ons uitset om ons sonsopkoms te simuleer.
Om die stroombaan te bou, benodig ons:
- Arduino Uno- klokmodule RTC DS3231 - 'n MOSFET om die helderheid van die lig te beheer - 'n superhelder LED (ek het 2 gekoop, een warm, een koud) - 9V battery om die LED aan te dryf - 'n broodbord - 'n LCD -skerm (16: 2)- Bluetooth-adapter hc-05 sodat ons 'n app kan gebruik om die alarm in te stel.
Alles wat u nodig het, kan gekoop word op www.martoparts.nl
Stap 2: Monteer die stroombaan
U kan na die skets van my kring verwys, maar ek kon ongelukkig nie die RTC DS3231 in die program vind nie, so ek het hiermee te doen gehad. Verbindings is in werklikheid 'n bietjie anders, hier is die verbindings. (die Bluetooth -module is nie in die skets nie, maar ek sal verduidelik hoe dit hieronder werk, maar dit is nogal moeilik)
RTC DS3231GND gaan na GND op die arduino
VCC gaan na die 5v
SDA gaan na arduino
SCL gaan na arduino Ons sal nie SQW en 32KMOSFET gebruik nie
Hekpen gaan na pen ~ 9 op die Arduino Uno omdat die PWMDrain-pen na die negatiewe kant van die LED gaan. Bronpen gaan na GND op die ArduinoLCD-DisplayGND gaan na GND op die arduino
VCC gaan na 5VSDA gaan na A4 op die arduinoSKL gaan na A5 op die arduinoLED- gaan na mosfet+ gaan na die 5v9v-battery U kan 'n 9v-battery in enige plaaslike winkel koop, sluit die arduino aan met 'n aansluitstrook.
Bluetooth-module hc-055V gaan na 5V vanaf die arduino
GND gaan na GND op die arduino
Nou is daar nog 2 insette, maar hier kom die moeilike deel, ons moet die teenoorgestelde insette van die 2 op die arduino verbindTX van hc-05 gaan na RX op arduinoRX van hc-05 gaan na TX op arduino
Belangrik: maak seker dat u die TX & RX KOPPEL van die HC-05 wanneer u kode op u arduino oplaai, of u sal 'n foutmelding kry wat sê "iets het verkeerd gegaan met die oplaai van die kode" in die samesteller.
Stap 3: Stel die LCD -skerm en klok in
Die biblioteek wat vir die LCD-skerm gebruik word, is vloeibaar kristal en kan gevind word by: https://github.com/fdebrabander/Arduino-LiquidCrys… Laai die zip-lêer af, stoor dit en plaas dit in u Arduino's/biblioteke-lêergids
Die biblioteek wat ek gebruik om die klok te laat werk, kan gevind word by Rinky-Dinky Electronics https://www.rinkydinkelectronics.com/library.php?id=73 en maak seker dat u op die DS3231-bladsy is. Laai die zip -lêer af, stoor dit en plaas dit in die biblioteekmap van u Arduino.
Tyd
Sluit die biblioteek DS3231 of DS1307 in u arduino -kode in
Los hierdie drie reëls kode om die tyd in te stel:
// rtc.setDOW (MAANDAG); // Stel Dag van die week op SONDAG // rtc.setTime (23, 57, 0); // Stel die tyd in op 12:00:00 (24 -uur -formaat) // rtc.setDate (14, 1, 2019); // Stel die datum op 1 Januarie 2014 in
LCD -skerm
Sluit die biblioteek liqduicrystal_i2c in u arduino -kode in
Gebruik om op die LCD -skerm te druk
lcd.setCursor (kol, ry) // posisie van teks gedruk lcd.print (~) // teks gedruk
Stap 4: Kodering
Laai die kode af op: github:
Los hierdie drie reëls op om die horlosie op u LCD -skerm te stel:
// rtc.setDOW (MAANDAG); // Stel Dag van die week op SONDAG // rtc.setTime (23, 57, 0); // Stel die tyd in op 12:00:00 (24 -uur -formaat) // rtc.setDate (14, 1, 2019); // Stel die datum op 1 Januarie 2014 in
Gebruik lcd.setCuros (kol, ry); om die posisie van die teks wat vertoon word, in te stel
lcd.setCursor (0, 2);
en druk () om iets op die skerm te druk
lcd.print (rtc.getDateStr ());
Verander hierdie veranderlikes as u wil
int fadeTime = 1; // Hoe lank die lig sal verdwyn tot die maksimum setHour = 02; // Stel ure in om wakker te word (militêre tyd) int setMin = 49; // Stel die minuut in om wakker te word = 9; // Stel pinout met PWM in
Bluetooth module kode
String firstHalf = getValue (input, ':', 0); // kyk die eerste invoer tot ":"
String secondHalf = getValue (input, ':', 1); // kyk die tweede invoer na ":"
// gebruik hierdie kode as u nie die Bluetooth -module gebruik nie
// // as (t.uur == setHour && t.min == setMin) // Kyk of dit tyd is om wakker te word! // {// begin (); //}
// kontroleer die eerste 2 syfers se insette, en kyk dan die tweede 2 syfers van die insette
as (t.uur == firstHalf.toInt () && t.min == secondHalf.toInt ()) {begin (); }}
// logika om snare te skei
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 && gevind <= index; i ++) {if (data.charAt (i) == skeider || i == maxIndex) {gevind ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? ek+1: i; }} opgawe gevind> indeks? data.substring (strIndex [0], strIndex [1]): ""; }
Stap 5: Tyd om te toets
Stel u kode saam en toets of die komponente werk!
Stap 6: Opstel van Bluetooth-app
Omdat ek dit irriterend gevind het om in die kode te kyk elke keer as ek 'n alarm wou stel, wou ek 'n app maak wat die alarm sou stel, wat baie makliker is.
Gaan na https://ai2.appinventor.mit.edu waar ons 'n eenvoudige app kan maak waarmee ons die alarm kan instel; ek het die eenvoudige ontwerpopstelling ingesluit (u kan dit altyd later aanpas) en die kode wat vir die U kan dan u app publiseer en dit op u telefoon verbind deur 'n QR -kode te gebruik of die app direk op u rekenaar af te laai en dit dan met 'n kabel op u telefoon oor te dra. (kiekie)
Stap 7: Bou die saak
U kan altyd 'n ander omhulsel rondom u arduino -klok bou. Ek het hout en matte plexiglas gebruik om my eie wekkerkas te bou. Ek het 'n matte plexiglas gekies, sodat u die lig duidelik deur die omhulsel kan sien, maar u kan nie die binnekant van die horlosie sien nie.
Stap 8: klaar
Noudat u die kode na u arduino opgelaai het, die kas gebou het en gekontroleer het of u u horlosie behoorlik bymekaargemaak het, kan u 'n alarm op die Bluetooth -app instel en natuurliker begin wakker word!:)
Aanbeveel:
Sunrise Simulator Lamp: 7 stappe (met foto's)
Sunrise Simulator Lamp: ek het hierdie lamp geskep omdat ek moeg was om in die winter wakker te word. Ek weet dat u produkte kan koop wat dieselfde doen, maar ek hou daarvan om iets te gebruik wat ek geskep het. Die lamp simuleer 'n sonsopkoms deur geleidelik toe te neem in
Draadlose afstandsbediening met 2,4 GHz NRF24L01 -module met Arduino - Nrf24l01 4 -kanaals / 6 -kanaals sender -ontvanger voor quadcopter - Rc Helikopter - Rc -vliegtuig met Arduino: 5 stappe (met foto's)
Draadlose afstandsbediening met 2,4 GHz NRF24L01 -module met Arduino | Nrf24l01 4 -kanaals / 6 -kanaals sender -ontvanger voor quadcopter | Rc Helikopter | Rc -vliegtuig met Arduino: om 'n Rc -motor te bestuur | Quadcopter | Drone | RC -vliegtuig | RC -boot, ons het altyd 'n ontvanger en sender nodig, veronderstel dat ons vir RC QUADCOPTER 'n 6 -kanaals sender en ontvanger nodig het en dat die tipe TX en RX te duur is, so ons maak een op ons
Sunrise Alarm Klok: 5 stappe
Sunrise Alarm Klok: benodigdhede: -kaart (ek kan dit nie gebruik nie) -kabels-10k weerstand-fotos weerstand-led licht-klik
SENSOR SUHU DENGAN LCD DAN LED (maak temperatuursensor met LCD en LED): 6 stappe (met foto's)
SENSOR SUHU DENGAN LCD DAN LED (vervaardiging van temperatuursensor met LCD en LED): hier kan u 'n universele ontvanger van die Universiteit en die Verenigde State van Amerika gebruik. Ons kan ook hierdie e -posadres gebruik, en die sensor in
Netwerks LCD -rugsak met LCD -slimfoon: 6 stappe
Netwerks LCD -rugsak met LCD Smartie: LCD -skerms met karakter wat inligting blaai, is 'n gewilde model. Hulle word gewoonlik beheer deur 'n parallelle poort, 'n seriële poortrugsak of 'n USB -rugsak (meer). Hierdie instruksies demonstreer ons open source ethernet netwerk LCD rugsak. LC