Talaan ng mga Nilalaman:

Sunrise Alarm Clock Sa LCD Display at Bluetooth App: 8 Hakbang
Sunrise Alarm Clock Sa LCD Display at Bluetooth App: 8 Hakbang

Video: Sunrise Alarm Clock Sa LCD Display at Bluetooth App: 8 Hakbang

Video: Sunrise Alarm Clock Sa LCD Display at Bluetooth App: 8 Hakbang
Video: Smart Light Wireless Fast Charger Bluetooth Speaker for iPhone Samsung Mobile Phone Dock Station 2024, Nobyembre
Anonim
Sunrise Alarm Clock Sa LCD Display at Bluetooth App
Sunrise Alarm Clock Sa LCD Display at Bluetooth App
Sunrise Alarm Clock Sa LCD Display at Bluetooth App
Sunrise Alarm Clock Sa LCD Display at Bluetooth App

Ang oras ng taglamig ay maaaring maging malungkot. Gumising ka, madilim at kailangan mong bumangon sa kama. Ang huling bagay na nais mong marinig ay ang nakakainis na tunog ng iyong alarm clock. Kung ikaw, tulad ko, ay nagkakaproblema sa paggising sa umaga ang alarm clock na ito lamang ang kailangan mo.

Sa tutorial na ito, magtatayo kami ng isang Sunrise Alarm Clock. Ito ay isang orasan ng alarma tulad ng anumang iba pa sa na maaari mong itakda ang oras at minuto na nais mong gisingin, ngunit sa pakinabang ng paggamit ng ilaw upang mapasaya ang iyong silid-tulugan sa isang tagal ng panahon tulad ng isang pagsikat ng araw upang gisingin ka sa halip na isang nakakainis buzzer!

Gumagamit din kami ng isang module ng Bluetooth upang lumikha ng isang app na ipaalam sa iyo na itakda ang alarma sa pamamagitan ng iyong telepono papunta sa oras. Ipapakita ng LCD display ang tiime, petsa at araw ng linggo. Ang mga lampara ng sunrise ay mayroon sa merkado ngunit maaari silang maging mahal (isang mabilis na paghahanap sa Google ay nagbabalik ng mga produkto sa saklaw na € 100), marupok at medyo mukhang klinikal. Iyon ang dahilan kung bakit napagpasyahan kong gumawa ng sarili ko para sa aking Arduino School Project. Ang lahat ng mga bahagi ay nakalista sa susunod na hakbang. Maaaring ma-download ang code mula sa aking Github repo sunrise-alarm-clock. Magsimula na tayo:)

lahat ng code ay matatagpuan sa:

Hakbang 1: Pagtitipon ng mga Bahagi

Pagtitipon ng mga Bahagi
Pagtitipon ng mga Bahagi
Pagtitipon ng mga Bahagi
Pagtitipon ng mga Bahagi
Pagtitipon ng mga Bahagi
Pagtitipon ng mga Bahagi

Gumagamit kami ng isang orasan bilang aming input at isang ultra-maliwanag na LED bilang aming output upang gayahin ang aming pagsikat.

Upang maitayo ang circuit kakailanganin namin:

- Arduino Uno- clockmodule RTC DS3231 - isang MOSFET upang makontrol ang ningning ng ilaw - isang napakaliwanag na LED (Bumili ako ng 2, isang mainit, isang malamig) - 9V na baterya upang mapagana ang LED - isang breadboard- isang LCD Display (16: 2) - Bluetooth adapter hc-05 upang maaari kaming gumamit ng isang app upang maitakda ang alarma.

Ang lahat ng kailangan mo ay mabibili sa www.martoparts.nl

Hakbang 2: Pag-iipon ng Circuit

Pag-iipon ng Circuit
Pag-iipon ng Circuit
Pag-iipon ng Circuit
Pag-iipon ng Circuit

Maaari kang mag-refer sa sketch para sa aking circuit, sa kasamaang palad hindi ko makita ang RTC DS3231 sa programa kaya't kailangan kong gawin sa isang ito. Ang mga koneksyon ay medyo magkakaiba sa totoo, narito ang mga koneksyon. (ang module ng bluetooth ay wala sa sketch ngunit ipapaliwanag ko kung paano ito gumagana sa ibaba sanhi ito ng masalimuot)

Ang RTC DS3231GND ay pupunta sa GND sa arduino

Ang VCC ay pupunta sa 5v

Ang SDA ay pupunta sa arduino

Ang SCL ay pupunta sa arduino Hindi kami gagamit ng SQW & 32KMOSFET

Ang pin ng gate ay papunta sa pin ~ 9 sa Arduino Uno sapagkat ang PWMDrain pin ay papunta sa negatibong bahagi ng LED Source pin ay papunta sa GND sa ArduinoLCD-DisplayGND ay papunta sa GND sa arduino

Ang VCC ay pumupunta sa 5VSDA ay pupunta sa A4 sa arduino

Ang module ng Bluetooth hc-055V ay papunta sa 5V mula sa arduino

Ang GND ay pupunta sa GND sa arduino

Ngayon mayroong 2 pang mga input ngunit narito ang nakakalito na bahagi, kailangan naming ikonekta ang kabaligtaran na input ng mga 2 sa arduinoTX mula sa hc-05 ay pupunta sa RX sa arduinoRX mula sa hc-05 ay pupunta sa TX sa arduino

Mahalaga: Siguraduhin na I-DISCONNECT mo ang TX & RX mula sa HC-05 kapag nag-a-upload ka ng code sa iyong arduino o makakakuha ka ng isang error sa pagsasabing "may isang maling nangyari sa pag-upload ng code" sa tagatala.

Hakbang 3: Pagtatakda ng LCD Display & Clock

Pagtatakda ng LCD Display & Clock
Pagtatakda ng LCD Display & Clock
Pagtatakda ng LCD Display & Clock
Pagtatakda ng LCD Display & Clock

Ang silid-aklatan na ginamit para sa LCD display ay likidong kristal at matatagpuan sa: https://github.com/fdebrabander/Arduino-LiquidCrys… I-download ang zip file, i-save ito at ilagay ito sa folder ng iyong Arduino / libraries

Ang library na ginagamit ko upang patakbuhin ang orasan ay matatagpuan sa Rinky-Dinky Electronics https://www.rinkydinkelectronics.com/library.php?id=73 at tiyaking nasa pahina ka ng DS3231. I-download ang zip file, i-save ito at ilagay ito sa folder ng mga aklatan ng iyong Arduino.

Oras

Isama ang library DS3231 o DS1307 sa iyong arduino code

Alisan ng puna ang 3 mga linya ng code na ito upang maitakda ang oras:

// rtc.setDOW (LUNES); // Itakda ang Araw-ng-Linggo sa LINGGO // rtc.setTime (23, 57, 0); // Itakda ang oras sa 12:00:00 (24hr format) // rtc.setDate (14, 1, 2019); // Itakda ang petsa sa Enero 1, 2014

LCD Display

Isama ang library liqduicrystal_i2c sa iyong arduino code

Upang mai-print sa paggamit ng LCD Display

lcd.setCursor (col, row) // posisyon ng text na printlcd.print (~) // text na naka-print

Hakbang 4: Pag-coding

Coding
Coding

I-download ang code sa: github:

I-uncomment ang 3 mga linya na ito upang maitakda ang orasan sa iyong LCD display:

// rtc.setDOW (LUNES); // Itakda ang Araw-ng-Linggo sa LINGGO // rtc.setTime (23, 57, 0); // Itakda ang oras sa 12:00:00 (24hr format) // rtc.setDate (14, 1, 2019); // Itakda ang petsa sa Enero 1, 2014

Gumamit ng lcd.setCuros (col, row); upang itakda ang posisyon ng teksto na ipinapakita

lcd.setCursor (0, 2);

at i-print () upang mai-print ang isang bagay sa display

lcd.print (rtc.getDateStr ());

Baguhin ang mga variable na ito kung nais mo

int fadeTime = 1; // Gaano katagal ang ilaw ay mawawala sa maxint setHour = 02; // Itakda ang mga oras upang gisingin (oras ng militar) int setMin = 49; // Itakda ang minuto upang gisingin ang ul = 9; // Itakda ang pinout sa PWM

Code ng module ng Bluetooth

String firstHalf = getValue (input, ':', 0); // check first input untill ":"

String secondHalf = getValue (input, ':', 1); // check second input after ":"

// gamitin ang code na ito kung hindi mo ginagamit ang module ng bluetooth

// // if (t.hour == setHour && t.min == setMin) // Suriin kung oras na upang magising! // {// start (); //}

// check first 2 digit input, pagkatapos suriin ang pangalawang 2 digit ng input

kung (t.hour == firstHalf.toInt () && t.min == secondHalf.toInt ()) {start (); }}

// lohika upang paghiwalayin ang mga string

String getValue (String data, char separator, int index) {int found = 0; int strIndex = {0, -1}; int maxIndex = data.length () - 1;

para sa (int i = 0; i <= maxIndex && natagpuan <= index; i ++) {kung (data.charAt (i) == separator || i == maxIndex) {natagpuan ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? i + 1: i; }} natagpuang pagbalik> index? data.substring (strIndex [0], strIndex [1]): ""; }

Hakbang 5: Oras para sa Pagsubok

Tipunin ang iyong code at subukan kung gumagana ang mga sangkap!

Hakbang 6: Pag-set up ng Bluetooth App

Pag-set up ng Bluetooth App
Pag-set up ng Bluetooth App
Pag-set up ng Bluetooth App
Pag-set up ng Bluetooth App
Pag-set up ng Bluetooth App
Pag-set up ng Bluetooth App

Dahil nalaman kong nakakainis na maghukay sa code tuwing nais kong magtakda ng isang alarma na nais kong gumawa ng isang app na magtatakda ng alarma, na kung saan ay mas madali.

Pumunta sa https://ai2.appinventor.mit.dito makakagawa kami ng isang simpleng app na hinahayaan kaming itakda ang alarma, isinama ko ang simpleng pag-set up ng disenyo (maaari mong palaging i-tweak ito sa ibang pagkakataon) at ang code na ginamit para sa koneksyon ng bluetooth. Maaari mo ring mai-publish ang iyong app at kumonekta dito sa iyong telepono sa pamamagitan ng paggamit ng isang QR code o direktang pag-download ng app sa iyong computer, pagkatapos ay i-port ito gamit ang cable sa iyong telepono. (screenshot)

Hakbang 7: Pagbubuo ng Kaso

Pagbuo ng Kaso
Pagbuo ng Kaso
Pagbuo ng Kaso
Pagbuo ng Kaso
Pagbuo ng Kaso
Pagbuo ng Kaso

Maaari mong palaging bumuo ng isang iba't ibang mga kaso sa paligid ng iyong arduino na orasan. Gumamit ako ng kahoy at matte plexiglass upang makabuo ng aking sariling alarm clock case. Pinili ko ang matte plexiglass upang makita mo ang ilaw na malinaw na nagniningning sa kaso ngunit hindi mo makikita ang loob ng orasan.

Hakbang 8: Tapos na

Tapos na!
Tapos na!
Tapos na!
Tapos na!
Tapos na!
Tapos na!

Ngayon na na-upload mo ang code sa iyong arduino, buuin ang kaso at tiningnan kung maayos mong naipon ang iyong orasan, maaari kang magtakda ng isang alarma sa bluetooth app at magsimulang gumising nang mas natural!:)

Inirerekumendang: