Orodha ya maudhui:
- Hatua ya 1: Kujadili wazo hili
- Hatua ya 2: Kuchora na Vifaa
- Hatua ya 3: Kuunda Kitengo cha nje
- Hatua ya 4: Kukata Laser ya Nje ya Nje
- Hatua ya 5: Kuiweka Pamoja
- Hatua ya 6: Kanuni
- Hatua ya 7: Elektroniki
- Hatua ya 8: Mwisho
Video: Asubuhi Buddy: 8 Hatua
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:53
Watu wengine wana ratiba zenye shughuli nyingi, ambayo inafanya iwe rahisi kusahau kitu a au mbili. Kwa saa hii ya kengele unaweza kuweka kengele nyingi kukuweka kwenye ratiba. Saa inaendeshwa kwa wakati wa 24 na unachohitajika kufanya ni kuipanga ili kuzima kwa nyakati tofauti za siku ambazo zinafaa ratiba yako. Wakati wako kufanya hivi nyakati ambazo umeweka zitajitokeza kwenye skrini ya LCD, ili uweze kuangalia ili kuhakikisha kuwa wako sawa na kuwa ukumbusho wa ziada.
Hatua ya 1: Kujadili wazo hili
Wakati tulikuwa tunajaribu kutatua suala hilo tulitumia njia ya samaki wa samaki kupata wazo na kusababisha saa yetu ya kengele.
Hatua ya 2: Kuchora na Vifaa
Wakati wa hatua hii tulijaribu kutengeneza orodha ya vitu vyote ambavyo tulifikiri tutahitaji kwa umeme na vifaa vya nje. Kisha tukapata mchoro wa kile tunataka saa ya kengele ionekane na jinsi tutakavyokusanya kifurushi chake cha nje.
Hatua ya 3: Kuunda Kitengo cha nje
Kwa mfano wa kwanza nilitaka tu kuona jinsi viungo vya vidole vitakaa sawa, kwa hivyo nilitumia sanduku la kiatu na sikutumia vipimo halisi.
Hatua ya 4: Kukata Laser ya Nje ya Nje
Kwa mfano wa pili nilitaka kupata vipimo halisi na ilibidi niunde pdf ya kutuma kwa mkataji wa laser. Ili kufanya hivyo nilitumia wavuti ya programu ya kutengeneza sanduku, https://boxdesigner.connectionlab.org. Kwenye wavuti hiyo ndipo nikaingiza vipimo vya 3-D vya sanduku, unene wa nyenzo zetu, vitengo vya upimaji, na ni aina gani ya faili ambayo nilitaka iundwe. Vipimo vya sanduku vilikuwa 7.5 katika x 3 kwa x 5 ndani na nilitumia 1/8 katika nyenzo nene za akriliki. Vipimo vya pamoja vya kidole viliwekwa moja kwa moja kuwa inchi 0.46875. Nilichagua toleo la pdf kwa sababu hiyo ni aina ya faili ambayo cutter laser inasoma na nilitaka kufanya mabadiliko kadhaa kwenye adobe kwenye faili. Nilibadilisha rangi za laini kuwa nyekundu, ili mkataji wa laser ajue kuzikata badala ya kuchora umbo, na nikaongeza sanduku la mstatili lenye vipimo vya 3.92 ndani na 1.56 katika kile kitakachokuwa kipande cha mbele cha sanduku. Niliongeza pia mstatili uliokatwa na vipimo vya 1in na 0.5in ndani kwenye kipande cha upande wa kulia chini ili kutumika kama ufunguzi wa kamba iliyounganishwa na saa ya kengele. Mwishowe niliongeza fursa tatu za mviringo hapo juu kwa vipaza sauti viwili na kitufe. Ufunguzi wa buzzer ulikuwa na kipenyo cha 0.5 ndani na ufunguzi wa kifungo ulikuwa 0.375 in.
Hatua ya 5: Kuiweka Pamoja
Wakati vipande vyote vilikatwa nilitumia sindano na gundi ya akriliki kuifunga pamoja. Nilishikilia vipande pamoja na kutia gundi katikati ya alama ili pande ziungane, lakini juu haikunamishwa chini.
Hatua ya 6: Kanuni
Utangulizi:
Mradi huu uliorodheshwa kwa kutumia lugha c ++ kwenye programu ya Arduino IDE. Mdhibiti mdogo aliyetumiwa alikuwa NodeMCU na ESP8266. Kwa mradi huu tungehitaji njia ya kuweka wakati kwa usahihi, mlio wa kupiga kelele, mfumo wa kengele kusababisha kengele kupiga kelele, na skrini kuonyesha wakati wote na nyakati za kengele. Kwa nambari kamili rejea kiungo hiki
Kuagiza Maktaba
Kwanza, tunahitaji kuagiza maktaba zinazohitajika.
# pamoja na "RTClib.h"
# pamoja na "Wire.h" # pamoja na #jumuisha # pamoja na # pamoja
Kuanzisha Vigezo
Ifuatayo tunahitaji kuanzisha vigeuzi vya baadaye, toa mpangilio wa pini kwa vifungo vya buzzer, weka RTC, na uweke anwani ya I2C ya kuonyesha LCD.
LiquidCrystal_I2C LCD (0x27, 20, 4);
const int buzzer1 = 12; const int buzzer2 = 0; kifungo cha int = 2; RTC_DS3231 rtc; char daysOfTheWeek [7] [12] = {"Jumapili", "Jumatatu", "Jumanne", "Jumatano", "Alhamisi", "Ijumaa", "Jumamosi"} wakati wa kuanza; wakati wa kufanya kazi; int prevoustime = 0; char ahours1 [3]; char amins1 [3]; saa 1 = 0; int min1 = 0; char ahours2 [3]; char amins2 [3]; saa 2 = 0; int min2 = 0; char ahours3 [3]; char amins3 [3]; saa saa3 = 0; int min3 = 0; kengele ya ndani = 0; int Byte Imepokelewa; char imepokelewaChar; Const byte numChars = 32; char imepokeaChars [numChars];
Sanidi
Ifuatayo, tunahitaji kuwa na kazi ambayo huanza michakato yote muhimu. Katika kazi hii, tunahitaji kuanzisha LCD na kuchapisha nyakati za mwanzo, fanya kazi ndogo ambayo inapeana RTC wakati halisi ikiwa tayari haina, na anza mfuatiliaji wa serial.
usanidi batili () {
#ifndef ESP8266 wakati (! Serial); # endif ikiwa (! rtc.begin ()) {Serial.println ("Haikuweza kupata RTC"); wakati (1); } ikiwa (rtc.lostPower ()) {Serial.println ("RTC ilipoteza nguvu, inaruhusu kuweka wakati!"); rtc.rekebisha (Tarehe ya Wakati (F (_ DATE_), F (_ TIME_)))} lcd.init (); lcd taa ya nyuma (); // hufanya Baklight ON. lcd wazi (); // Hufuta LCD LCD.print ("00:00"); // onyesho kwenye LCD baada ya kupakia nambari lcd.setCursor (10, 0); lcd.print ("00:00"); lcd.setCursor (0, 1); lcd.print ("Wakati"); lcd.setCursor (10, 1); lcd.print ("Alarm 1"); lcd.setCursor (0, 3); lcd.print ("Alarm 2"); lcd.setCursor (0, 2); lcd.print ("00:00"); lcd.setCursor (10, 3); lcd.print ("Alarm 3"); lcd.setCursor (10, 2); lcd.print ("00:00"); rtc kuanza (); pinMode (kifungo, INPUT); // Weka pini kwa kifungo cha kimya cha pinMode (buzzer1, OUTPUT); // weka pini kwa njia ya pato ya buzzer pinMode (buzzer2, OUTPUT); // weka pini kwa pato la buzzer Serial.begin (9600); Serial.println ("Wakati wa kuingiza kengele katika muundo wa HHMM bila nafasi kati ya kengele"); wakati wa kuanza = millis () / 1000; }
Kupokea Takwimu
Sasa, tunahitaji kuweza kupokea nyakati za kengele. Ili kufanya hivyo tuliunda kazi ya kupokea data kutoka kwa mfuatiliaji wa serial na kuihifadhi katika safu.
batili recvWithEndMarker () {
tuli int ndx = 0; String timein = Serial.readString (); kwa (ndx = 0; timein [ndx]; ndx ++) {kupokeaChars [ndx] = timein [ndx]; } kupokeaChars [ndx] = '\ 0'; Serial.print (kupokeaChars); }
Kuweka Kengele
Hatua inayofuata ni kuweza kuweka kengele. Hapa kuna nambari ya kengele 1. Kwa kengele 2 na 3 mchakato huo ulirudiwa na mabadiliko ya nambari chache.
/ * Kengele 1 * /
recvWithEndMarker (); int h, m; kwa (h = 0; h <2; h ++) {ahours1 [h] = kupokeaChars [h]; } kwa (m = 2; m <4; m ++) {amins1 [m-2] = imepokeaChars [m]; } ahours1 [h] = '\ 0'; amini1 [m-2] = '\ 0'; Rangi ya serial (ahours1); Printa ya serial (amins1); saa1 = atoi (ahours1); min1 = atoi (amins1); Rekodi ya serial (hour1); Printa ya serial (min1);
Buzzer / Button
Kwa kufanya hivyo, tunahitaji kufanya buzzer iende wakati halisi na wakati wa kengele ni sawa. Pia katika hatua hii tunafanya snooze kama kifungo ambacho kinasimamisha buzzer wakati unashikilia.
/ * Kitufe cha Ukimya * /
ukimya; int b; b = digitalSoma (2); ikiwa (b == CHINI) {kimya = 1; } mwingine {kimya = 0; } / * Anza Kengele * / ikiwa (masaa == hour1 && dakika == min1) {alarm = 1; } kingine ikiwa (masaa == hour2 && dins == min2) {alarm = 1; } kingine ikiwa (masaa == hour3 && dins == min3) {alarm = 1; } mwingine {alarm = 0; ukimya = 0; } ikiwa (kengele == 1 && kimya == 0) {toni (buzzer1, 4000, 1000); sauti (buzzer2, 4000, 1000); kuchelewesha (1000); hakuna Tone (buzzer1); hakuna Tone (buzzer2); kuchelewesha (1000); }
Nyakati za Uchapishaji
Mwishowe, tunahitaji kuchapisha nyakati za kengele na wakati halisi kwenye skrini ya LCD.
DateTime sasa = rtc.now ();
masaa kadhaa = (sasa. saa ()); dakika d = (sasa.minute ()); / * Wakati wa kengele katika muundo wa 00:00 * / lcd.setCursor (10, 0); lcd.print (ahours1); lcd.setCursor (13, 0); lcd.print (amins1); lcd.setCursor (0, 2); lcd.print (ahours2); Mshale wa lcd (3, 2); lcd.print (amini2); lcd.setCursor (10, 2); lcd.print (ahours3); lcd.set Mshale (13, 2); lcd.print (amins3); / * Saa ya Kuonyesha kutoka RTC * / lcd.setCursor (0, 0); lcd.print (masaa); lcd.print (":"); lcd.print (dk);
Hatua ya 7: Elektroniki
Kuna vipande kadhaa kwa umeme wa mradi huu, kama inavyoonekana katika muswada wa vifaa. Picha ya kwanza ni skimu ya miradi ya mwisho ya miradi. Picha ya pili ni muundo wetu wa mwisho wa elektroniki. Picha ya Tatu ni ya mradi wetu katikati ya mfano wa pili.
Kuanza kushikamana na NodeMCU yako hadi mwisho wa ubao wako wa mkate. Kisha utahitaji kuunganisha vifaa vyako vyote vya elektroniki kwa NodeMCU na ubao wa mkate. Anza kwa kuunganisha skrini yako ya LCD na pini D1 kwa SCL na D2 kwa SDA. LCD itamruhusu mtumiaji kuona wakati wa sasa na nyakati zilizowekwa za kengele. Sasa uwe na waya unganisha buzzers zako kwenye pini D3 na D6. Buzzers zitaruhusu kengele kuonya mtumiaji wakati uliowekwa umefikiwa. Lazima sasa uambatishe kitufe kuruhusu kengele isimamishwe. Ambatisha kitufe hiki kubandika D4. Sasa utaambatanisha saa yako ya wakati halisi kwenye ubao wa mkate. Washa saa ya wakati halisi kwa hivyo hutumia pini sawa za SDA na SCL zinazotumiwa kwa onyesho la LCD.
Hatua ya 8: Mwisho
Ikiwa umefuata habari uliyopewa mradi wako inaweza kuonekana kama picha hapo juu. Tunakutakia bahati katika majaribio yako ya kurudia mradi huu na utakapomaliza mradi wako tunakuhimiza ushiriki picha na maoni na sisi kwenye maoni. Asante na bahati nzuri Watunga wenzako.
Ilipendekeza:
Kuosha Utaratibu wa Asubuhi (kwa watoto): Hatua 7
Kuosha Uso Utaratibu wa Asubuhi (kwa Watoto): Mwishoni mwa wiki, binamu yangu mdogo alikaa nyumbani kwetu kwani wazazi wake hawakuwa nyumbani, baada ya kuishi naye kwa siku mbili, niliona kuwa alikuwa na wakati mgumu kukumbuka kila hatua wakati wa kuosha uso wake baada ya kuamka. Kwa hivyo niliamua kumjenga
Saa ya Alama ya Jua (Kuboresha Uamsho wa Asubuhi): Hatua 13
Saa ya Alama ya Kuamka (Kuboresha Uamsho wa Asubuhi): Panga kuchomoza kwa jua kwako mwenyewe, inaboresha kuamka asubuhi Uvumbuzi wa bahati nasibu, panga jua lako mwenyewe! Wakati wa mchana, taa ya samawati kwenye mwangaza wa jua huongeza umakini wetu, kumbukumbu, viwango vya nishati, nyakati za athari, na mhemko wa jumla. . Taa za samawati
Mwanga wa Asubuhi na Usiku: Hatua 4
Mwanga wa Asubuhi na Usiku: Hii ni taa ya karatasi iliyotengenezwa yenyewe kutumika kwa asubuhi na usiku
Mashine ya Asubuhi: Hatua 5 (na Picha)
Mashine ya Asubuhi: Je! Umewahi kuamka asubuhi kwa kengele yako ya kukasirisha kisha utembee hadi jikoni ili tu ujitahidi kumwagilia kinywaji chako. Usiangalie zaidi! Hii inaweza kufundisha jinsi ya kutengeneza mashine ambayo haiwezi
Roboti ya Vioo ya 4 asubuhi: Hatua 8 (na Picha)
Roboti ya Vioo ya 4 asubuhi: Watu wengine wameniuliza ni wapi ninapata maoni yangu. Sina hakika, lakini najua ninapowapata. Sijui ni kwanini, lakini ninaonekana kupata maoni yangu mengi wakati usiofaa - katikati ya somo, nikitembea nyumbani gizani, au, mara kwa mara, Naamka saa