Orodha ya maudhui:

Saa ya Alama ya Jua na Uonyesho wa LCD na Programu ya Bluetooth: Hatua 8
Saa ya Alama ya Jua na Uonyesho wa LCD na Programu ya Bluetooth: Hatua 8

Video: Saa ya Alama ya Jua na Uonyesho wa LCD na Programu ya Bluetooth: Hatua 8

Video: Saa ya Alama ya Jua na Uonyesho wa LCD na Programu ya Bluetooth: Hatua 8
Video: Ремонт малогабаритной квартиры Дизайн коридора Дизайн ванной комнаты. Идеи дизайна РумТур #Хрущевка 2024, Novemba
Anonim
Saa ya Alama ya Jua na Uonyesho wa LCD na Programu ya Bluetooth
Saa ya Alama ya Jua na Uonyesho wa LCD na Programu ya Bluetooth
Saa ya Alama ya Jua na Uonyesho wa LCD na Programu ya Bluetooth
Saa ya Alama ya Jua na Uonyesho wa LCD na Programu ya Bluetooth

Wakati wa baridi inaweza kuwa ya kusikitisha. Unaamka, ni giza na lazima uinuke kitandani. Jambo la mwisho unataka kusikia ni sauti ya kukasirisha ya saa yako ya kengele. Ikiwa wewe, kama mimi, unapata shida kuamka asubuhi saa ya kengele ndio unayohitaji tu.

Katika mafunzo haya, tutaunda Saa ya Alarm ya Jua. Ni saa ya kengele kama nyingine yoyote kwa kuwa unaweza kuweka saa na dakika unayotaka kuamka, lakini kwa faida ya kutumia nuru kuangaza chumba chako cha kulala kwa kipindi cha muda kama kuchomoza kwa jua kukuamsha badala ya kukasirisha buzzer!

Tutatumia moduli ya bluetooth pia kuunda programu ambayo inatuwezesha kuweka kengele kupitia simu yako kwenye saa. Onyesho la LCD litaonyesha tiime, tarehe na siku ya wiki. Taa za jua zipo kwenye soko lakini zinaweza kuwa ghali (utaftaji wa haraka kwenye Google unarudisha bidhaa katika anuwai ya 100), dhaifu na inayoonekana kliniki. Ndio sababu niliamua kutengeneza yangu mwenyewe kwa Mradi wangu wa Shule ya Arduino. Sehemu zote zitaorodheshwa katika hatua inayofuata. Nambari inaweza kupakuliwa kutoka kwa saa yangu ya Github repo jua-saa-saa. Wacha tuanze:)

nambari zote zinaweza kupatikana kwenye:

Hatua ya 1: Kukusanya Sehemu

Kukusanya Sehemu
Kukusanya Sehemu
Kukusanya Sehemu
Kukusanya Sehemu
Kukusanya Sehemu
Kukusanya Sehemu

Tutatumia saa kama pembejeo yetu na mwangaza mkali wa LED kama pato letu kuiga jua letu.

Ili kujenga mzunguko tutahitaji:

- Arduino Uno- saa ya moduli RTC DS3231 - MOSFET kudhibiti mwangaza wa nuru - mwangaza mkali zaidi (nilinunua 2, moja ya joto, baridi moja) - 9V betri kuwezesha LED - ubao wa mkate- Onyesho la LCD (16: 2) - adapta ya Bluetooth hc-05 ili tuweze kutumia programu kuweka kengele.

Kila kitu unachohitaji kinaweza kununuliwa kwenye www.martoparts.nl

Hatua ya 2: Kukusanya Mzunguko

Kukusanya Mzunguko
Kukusanya Mzunguko
Kukusanya Mzunguko
Kukusanya Mzunguko

Unaweza kurejelea mchoro wa mzunguko wangu, bahati mbaya sikupata RTC DS3231 katika programu kwa hivyo nilihitaji kufanya na hii. Uunganisho ni tofauti kidogo katika hali halisi, hapa kuna unganisho. (moduli ya Bluetooth haiko kwenye mchoro lakini nitaelezea jinsi inavyofanya kazi hapa chini sababu ya kuwa ngumu)

RTC DS3231GND huenda kwa GND kwenye arduino

VCC huenda kwa 5v

SDA huenda kwa arduino

SCL huenda kwa arduino Hatutatumia SQW & 32KMOSFET

Pini ya lango huenda kubana ~ 9 kwenye Arduino Uno kwa sababu ni PWMDrain pin huenda upande hasi wa pini ya Chanzo cha LED huenda kwa GND kwenye ArduinoLCD-DisplayGND huenda kwa GND kwenye arduino

VCC huenda kwa 5VSDA inakwenda A4 kwenye arduinoSKL inakwenda A5 kwenye arduinoLED- inakwenda mosfet + inakwenda kwa betri ya 5v9v Unaweza kununua betri ya 9v katika duka lolote la hapa, ingiza arduino na kamba ya kiunganishi.

Moduli ya Bluetooth hc-055V huenda kwa 5V kutoka arduino

GND huenda kwa GND kwenye arduino

Sasa kuna pembejeo 2 zaidi lakini inakuja sehemu ya ujanja, lazima tuunganishe pembejeo tofauti za hizo 2 kwenye arduinoTX kutoka hc-05 inakwenda RX kwenye arduinoRX kutoka hc-05 inakwenda TX kwenye arduino

Muhimu: Hakikisha UNAKATISHA TX & RX kutoka HC-05 wakati unapakia nambari kwenye arduino yako au utapata hitilafu ukisema "kitu kilienda vibaya kwa kupakia nambari" kwenye mkusanyaji.

Hatua ya 3: Kuweka Maonyesho na Saa ya LCD

Kuweka Maonyesho na Saa ya LCD
Kuweka Maonyesho na Saa ya LCD
Kuweka Maonyesho na Saa ya LCD
Kuweka Maonyesho na Saa ya LCD

Maktaba inayotumika kwa onyesho la LCD ni kioo kioevu na inaweza kupatikana kwa:

Maktaba ambayo ninatumia kutumia saa inaweza kupatikana katika Rinky-Dinky Electronics https://www.rinkydinkelectronics.com/library.php?id=73 na hakikisha uko kwenye ukurasa wa DS3231. Pakua faili ya zip, ihifadhi na uiweke kwenye folda yako ya maktaba ya Arduino.

Wakati

Jumuisha maktaba DS3231 au DS1307 katika nambari yako ya arduino

Ondoa mistari hii mitatu ya nambari ili kuweka wakati:

// rtc.setDOW (JUMATATU); // Weka Siku ya Wiki hadi JUMAPILI // rtc.setTime (23, 57, 0); // Weka wakati hadi 12:00:00 (fomati ya 24hr) // rtc.setDate (14, 1, 2019); // Weka tarehe hadi Januari 1, 2014

Uonyesho wa LCD

Jumuisha maktaba liqduicrystal_i2c katika nambari yako ya arduino

Ili kuchapisha matumizi ya Onyesho la LCD

lcd.setCursor (col, safu) // nafasi ya maandishi kuchapishwa lcd.print (~) // maandishi yaliyochapishwa

Hatua ya 4: Usimbuaji

Kuandika
Kuandika

Pakua nambari kwenye: github:

Ondoa laini kwenye mistari hii 3 ili kuweka saa kwenye onyesho lako la LCD:

// rtc.setDOW (JUMATATU); // Weka Siku ya Wiki hadi JUMAPILI // rtc.setTime (23, 57, 0); // Weka wakati hadi 12:00:00 (fomati ya 24hr) // rtc.setDate (14, 1, 2019); // Weka tarehe hadi Januari 1, 2014

Tumia lcd.setCuros (col, safu); kuweka msimamo wa maandishi kwenye onyesho

lcd.setCursor (0, 2);

na chapisha () kuchapisha kitu kwenye onyesho

lcd.print (rtc.getDateStr ());

Badilisha mabadiliko haya ikiwa unataka

int fadeTime = 1; // Muda gani taa itazimika hadi maxint setHour = 02; // Weka masaa ya kuamka (wakati wa kijeshi) int setMin = 49; // Weka dakika kuamka int uled = 9; // Weka pinout na PWM

Nambari ya moduli ya Bluetooth

Kamba ya kwanzaHalf = getValue (pembejeo, ':', 0); // angalia kwanza pembejeo mpaka ":"

Kamba ya piliHalf = getValue (pembejeo, ':', 1); // angalia pembejeo la pili baada ya ":"

// tumia nambari hii ikiwa hutumii moduli ya Bluetooth

// // if (t.hour == setHour && t.min == setMin) // Angalia ikiwa ni wakati wa kuamka! // {// kuanza (); //}

// angalia pembejeo za nambari 2 za kwanza, kisha angalia nambari 2 za pili za pembejeo

ikiwa (t.hour == firstHalf.toInt () && t.min == secondHalf.toInt ()) {anza (); }}

// mantiki ya kutenganisha masharti

Kamba GetValue (Kamba data, kitenganishi cha char, faharisi ya int) {int found = 0; int strIndex = {0, -1}; int maxIndex = data. urefu () - 1;

kwa (int i = 0; i <= maxIndex && found <= index; i ++) {if (data.charAt (i) == separator || i == maxIndex) {found ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? i + 1: i; }} kurudisha kupatikana> faharisi? data.substring (strIndex [0], strIndex [1]): ""; }

Hatua ya 5: Wakati wa Kupima

Unganisha msimbo wako na ujaribu ikiwa vifaa vinafanya kazi!

Hatua ya 6: Usanidi wa Programu ya Bluetooth

Usanidi wa Programu ya Bluetooth
Usanidi wa Programu ya Bluetooth
Usanidi wa Programu ya Bluetooth
Usanidi wa Programu ya Bluetooth
Usanidi wa Programu ya Bluetooth
Usanidi wa Programu ya Bluetooth

Kwa sababu niliona inakera kuchimba nambari kila wakati nilitaka kuweka kengele nilitaka kutengeneza programu ambayo ingeweka kengele, ambayo ni njia rahisi.

Nenda kwa https://ai2.appinventor.mit.eduhapa tunaweza kutengeneza programu rahisi ambayo inatuwezesha kuweka kengele, nimejumuisha usanidi rahisi wa muundo (unaweza kuibadilisha hii baadaye) na nambari iliyotumiwa kwa Muunganisho wa bluetooth. Unaweza kisha kuchapisha programu yako na kuungana nayo kwenye simu yako kwa kutumia nambari ya QR au kupakua moja kwa moja programu hiyo kwenye kompyuta yako, kisha kuisambaza kwa kebo kwenye simu yako. (picha ya skrini)

Hatua ya 7: Kuunda Kesi

Kujenga Kesi hiyo
Kujenga Kesi hiyo
Kujenga Kesi hiyo
Kujenga Kesi hiyo
Kujenga Kesi hiyo
Kujenga Kesi hiyo

Daima unaweza kujenga kesi tofauti karibu na saa yako ya arduino. Nilitumia kuni na plexiglass ya matte kujenga kesi yangu ya saa ya kengele. Nilichagua matte plexiglass ili uweze kuona taa ikiangaza wazi kupitia kesi lakini huwezi kuona ndani ya saa.

Hatua ya 8: Imemalizika

Imemalizika!
Imemalizika!
Imemalizika!
Imemalizika!
Imemalizika!
Imemalizika!

Sasa kwa kuwa umepakia nambari hiyo kwa arduino yako, jenga kesi na uangalie ikiwa umekusanya saa yako vizuri, unaweza kuweka kengele kwenye programu ya Bluetooth na uanze kuamka kiasili zaidi!:)

Ilipendekeza: