Cuprins:
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
Ți-ai dorit vreodată ca prânzul să fie mai lung, dar nu știai unde să găsești acele câteva minute în plus? Ei bine, nu mai doresc!
Datorită avansurilor extraordinare în tehnologia ceasului, vă prezint un ceas care accelerează cu 20% în fiecare zi la 11:00 și încetinește cu 20% în fiecare zi la 11:48, oferindu-vă încă douăsprezece minute de prânz pentru a vă bucura. Douăsprezece minute s-ar putea să nu pară prea multe, dar, pentru a le pune în perspectivă, aceasta este o oră suplimentară de prânz câștigată în fiecare săptămână.
Pasul 1: Du-te la lucruri
Vei avea nevoie:
(x1) Ceas de perete standard (x1) Ceas Adafruit DS1307 în timp real (x1) Arduino Uno (cu cip ATMEGA328 DIP) (x1) Cip ATMEGA328 suplimentar cu bootloader Arduino instalat (vezi ultimul pas) (x2) BC547 NPN tranzistoare (x2) BC557 tranzistori PNP (x1) mufă 28 pini (x1) cristal de 16mhz + (x2) condensatori 20pf (x1) rezistor 1K (x1) regulator 7805 (x1) mufă 4 pini (x1) baterie 9V (x1) baterie de 9V
(Vă rugăm să rețineți că unele dintre linkurile de pe această pagină conțin linkuri afiliate Amazon. Acest lucru nu modifică prețul niciunui articol de vânzare, dar câștig un mic comision dacă faceți clic pe oricare dintre aceste linkuri și cumpărați ceva. I reinvestiți acești bani în materiale și instrumente pentru proiecte viitoare. Dacă doriți o sugestie alternativă pentru un furnizor de oricare dintre piese, vă rugăm să ne anunțați.)
Pasul 2: Eliminați mișcarea
Scoateți mișcarea ceasului de pe corpul ceasului. Acest lucru va necesita îndepărtarea feței din sticlă din față a ceasului, precum și a mâinilor ceasului. Fii blând ca să nu rupi nimic. Va trebui să reasamblați totul mai târziu.
Pasul 3: Hackează mișcarea
Mișcarea ceasului are în interior un singur motor pas cu pas. Teoria de bază aici este că vrem să deconectăm bobina de la circuitul de sincronizare al ceasului și apoi să atașăm fire la bobină, astfel încât să o putem controla noi înșine. Deci, știind acest lucru, deschideți mișcarea ceasului și faceți o notă mentală atentă despre locul în care este totul (sau faceți o fotografie). Demontați mișcarea până când placa de circuit este liberă. Localizați contactele de pe placa de circuit unde se află motorul. Observați că aceste două contacte au urme care se îndreaptă către cip (ascunse sub blobul negru). Ideea este să folosiți o lamă de ras sau un cuțit pentru a zgâria aceste urme până când conexiunea cu cipul este vizibil ruptă. Pentru o bună măsură, am tăiat și cristalul de sincronizare, făcând circuitul mai mult sau mai puțin inutil. În cele din urmă, am lipit aproximativ 6 de sârmă la fiecare dintre terminalele motorului. Când s-a terminat totul, am pus totul din nou laolaltă. Nu exista un loc în cazul în care să pot strecura în mod convenabil firele și aveam nevoie de el pentru a reveni împreună împreună, așa că am sfârșit prin a tăia o gaură mică pentru a trece firele.
Pasul 4: Reasamblați ceasul
Odată ce mișcarea dvs. este bună și spartă, dar ceasul este din nou împreună. Important: asigurați-vă că orele, minutele și secundele sunt aliniate la 12:00. Nu am făcut acest lucru prima dată și am descoperit rapid că ceasul nu se va afișa corect decât dacă toate mâinile sunt aliniate.
Pasul 5: Kit RTC
Dacă nu ați făcut-o deja, dar împreună kitul dvs. de ceas Adafruit DS1307 în timp real. Iată câteva instrucțiuni pentru a face treaba. De asemenea, în timp ce vă aflați, setați ora pe placa RTC. Atâta timp cât nu scoateți bateria, ar trebui să faceți acest lucru o singură dată (cel puțin în următorii 5 ani aproximativ până când bateria moare). Puteți obține instrucțiuni detaliate pentru setarea orei pe site-ul Ladyada.
Pasul 6: Construiți circuitul
Circuitul este destul de simplu. Practic este ceea ce copiii numesc zilele noastre „hackduino”, o priză pentru placa RTC și o punte H brută pentru a controla motorul.
Pasul 7: Programați cipul
Va trebui să instalați biblioteca RTClib pentru ca codul dvs. să funcționeze. Instrucțiunile pentru a face acest lucru sunt pe pagina Ladyada. Descărcați lunchtime_clock.zip, decomprimați-l și apoi încărcați codul lunchtime_clock.pde pe cipul dvs. Dacă nu aveți chef să descărcați fișierul, iată codul: // Lunchtime Clock // de Randy Sarafan // // Încetinește 20% la 11 și accelerează cu 20% la 11:48 până când ajunge la 1. / / Restul timpului ceasul merge la viteza normală // // Fă ce vrei cu acest cod. Asigură-te că orice ai face, este minunat. // #include #include "RTClib.h" RTC_DS1307 RTC; int ceas = 9; int clockpin1 = 10; void setup () {Serial.begin (57600); Wire.begin (); RTC.begin (); } void loop () {DateTime now = RTC.now (); TurnTurnTurn (1000); if (now.hour () == 11) {for (int i = 0; i <1800; i ++) {TurnTurnTurn (800); } pentru (int i = 0; i <1800; i ++) {TurnTurnTurn (1200); }}} int TurnTurnTurn (int TimeToWait) {analogWrite (clockpin, 0); analogWrite (clockpin1, 124); // setează valoarea (intervalul de la 0 la 255) întârziere (TimeToWait); analogWrite (clockpin, 124); analogWrite (clockpin1, 0); întârziere (TimeToWait); }
Pasul 8: puneți totul împreună
Odată programat, transferați cipul ATMEGA168 de pe Arduino pe placa de circuit. Conectați placa RTC la priză. Asigurați-vă că știfturile sunt aliniate corect înainte de a le alimenta. Atașați placa de circuit și bateria la partea din spate a ceasului. În adevăratul mod de bricolaj din ultimul minut, am folosit adeziv fierbinte și bandă de prindere pentru a face acest lucru. Velcro autoadeziv ar fi ideal.
Pasul 9: Sincronizați ceasurile
Puneți un nou cip ATMEGA168 în Arduino. Conectați încă o dată Arduino la placa RTC.
Rulați exemplul de cod din pagina Ladyada. Deschideți monitorul serial. Ora afișată aici este ora la care doriți să sincronizați ceasul.
Am găsit că este cel mai ușor să setez un al treilea ceas (ceasul computerului meu) care să fie perfect sincronizat cu placa RTC. Apoi, am oprit Arduino, am transferat placa RTC înapoi în circuitul meu și am setat Lunchtime Clock la un minut mai târziu decât ora computerului meu. În momentul potrivit, când minutul s-a schimbat pe computerul meu, am pornit ceasul de la prânz pentru a atinge sincronicitatea.
Ceasul de la prânz funcționează extrem de bine și a depășit până acum așteptările mele.
Ați găsit acest lucru util, distractiv sau distractiv? Urmăriți @madeineuphoria pentru a vedea ultimele mele proiecte.