Obsah:
- Krok 1: Krok 1: Schémy
- Krok 2: Krok 2: Protokol prototypu
- Krok 3: Krok 3: Finálna konštrukcia
- Krok 4: Krok 4: Vytvorenie zásuvky pre displej a rozdávanie nôh
- Krok 5: Krok 5: Kontrola zapojenia obvodovej dosky a príprava na kalibráciu
- Krok 6: Krok 6: Kalibrácia obvodu
- Krok 7: Krok 7: Program Arduino
- Krok 8: Krok 8: Ponuka PCBWay
Video: 60 Hz hodiny Arduino: 8 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:58
Tieto digitálne hodiny založené na Arduine sú synchronizované pomocou 60 Hz elektrického vedenia. Má jednoduchý a lacný spoločný anódový 4 -miestny 7 -segmentový displej, ktorý zobrazuje hodiny a minúty. Používa krížový detektor na detekciu, keď prichádzajúca 60 Hz sínusová vlna prekročí bod nulového napätia a odvodí 60 Hz štvorcovú vlnu.
V krátkych časových obdobiach sa frekvencia prichádzajúcej sínusovej vlny z elektrického vedenia môže veľmi líšiť v dôsledku zaťaženia, ale v dlhých časových obdobiach sa pohybuje v priemere na 60 Hz veľmi presne. Môžeme to využiť na odvodenie zdroja časovania na synchronizáciu našich hodín.
Krok 1: Krok 1: Schémy
Existujú dve verzie obvodu v závislosti od toho, či chcete použiť transformátor so stredovým odbočením alebo bez, v oboch prípadoch je činnosť obvodu takmer identická. Na tento účel som použil nástenný adaptér (bez stredového kohútika), ktorý má výstup 12 V AC. Tento návrh (schéma obvodu Digital Clock1) použijem na opis obvodu. Všimnite si toho, že je dôležité použiť nástenný adaptér, ktorý napája 12 V AC, nie 12 V DC, aby sme mohli načasovať pripojenie k sínusovej vlne striedavého prúdu. Pravdepodobne môžete použiť aj transformátor s výstupom 9 V AC, odstrániť R19 a tiež ho uviesť do prevádzky, ale napätie 12V je veľmi bežne dostupné. Takto funguje obvod:
120 V AC pri 60 Hz sa transformuje na 12 V AC transformátorom TR1. Ten je privádzaný do diódy D4 a usmerňovaný tak, že do kondenzátora C3 je privádzané a vyhladzované na približne DC s zvlnením iba plusové napätie. Napätie na C3 je privádzané do regulátora napätia 7805 (U6) cez odpor R19. R19 sa používa na zníženie napätia na C3, ktoré bolo v mojom prípade namerané pri približne 15 VDC. To môže byť regulované 7805, ale s touto úrovňou vstupu musí 7805 klesnúť približne o 10 VDC a v dôsledku toho sa poriadne zahreje. Použitím R19 na zníženie napätia na približne 10 VDC zabránime prílišnému zahriatiu U6. Nejde teda o efektívnu techniku premeny energie, ale na naše účely funguje. POZNÁMKA: Tu použite odpor najmenej 1/2W alebo viac. Obvod čerpá asi 55 ma, takže stratový výkon v R19 je asi 1/3W na základe P = I ** 2*R alebo P = 55ma x 55ma x 120 ohmov = 0,363W. Ďalej U6 výstupy čistých 5V DC s výstupmi C4 a C5 na filtrovanie akéhokoľvek šumu na 5V elektrickom vedení. Tento 5V DC napája všetky integrované obvody na doske. Z TR1 tiež odoberieme vzorku nefiltrovaného striedavého signálu a napájame ho do potenciometra RV1, ktorý slúži na úpravu úrovne privádzanej do krížového detektora. R18 a R17 tvoria delič napätia na ďalšie zníženie úrovne prichádzajúceho striedavého napätia. Pamätajte si, že toto prichádza pri 12 V AC a musíme ho znížiť na menej ako 5 V, aby fungovalo s naším krížovým detektorom, ktorý je iba napájané 5 VDC. R15 a R16 poskytujú obmedzenie prúdu, zatiaľ čo D1 a D2 majú zabrániť preťaženiu operačného zosilňovača U5. V zobrazenej konfigurácii sa výstup U5 na kolíku 1 bude striedať medzi +5 V a 0 V vždy, keď sa prichádzajúca sínusová vlna zmení z kladnej na zápornú. Toto generuje 60 Hz štvorcovú vlnu, ktorá je privádzaná do mikrokontroléra U4. Program načítaný na U4 potom používa túto 60 Hz štvorcovú vlnu na zvýšenie hodín každú minútu a hodinu. Ako sa to robí, bude prediskutované v sekcii softvérového programu a v komentároch k softvéru. U7 sa používa posuvný register 74HC595, pretože na mikroprocesore máme obmedzený počet digitálnych pinov, takže sa používa na rozšírenie počtu výstupov. Na mikroprocesore používame 4 digitálne piny, ale pomocou 74HC595 môžeme ovládať 7 segmentov na displeji. To sa dosiahne posunutím vopred určených vzorov bitov uložených v mikrokontroléri, ktoré predstavujú každú číslicu, ktorá sa má zobraziť, do posuvného registra. Tu použitý displej je bežnou anódou, preto musíme invertovať úrovne signálu vychádzajúceho zo 74HC595, aby sa zapol segment. Keď by mal byť segment zapnutý, signál prichádzajúci z výstupného kolíka 74HC595 bude mať +5 V, ale na zapnutie tohto segmentu displeja potrebujeme, aby kolík, ktorý napája na displej, bol na 0 V. Na to potrebujeme hexadecimálne meniče U2 a U3. Jeden invertorový integrovaný obvod bohužiaľ zvládne iba 6 inverzií, takže ich potrebujeme dve, aj keď na druhom používame iba jednu zo 6 brán. Žiaľ zbytočné. Môžete sa opýtať, prečo tu nepoužiť bežný katódový typ displeja a nevylúčiť U2 a U3? Odpoveď je, že môžete, ja mám náhodou v zásobe náhradných dielov spoločný typ anódy. Ak máte alebo chcete použiť bežný katódový typ displeja, stačí eliminovať U2 a U3 a prepojiť Q1 - Q4 tak, aby boli tranzistorové kolektory pripojené k pinom displeja a tranzistorové žiariče boli pripojené k zemi. Q1 - Q4 riadi, ktorý zo štyroch 7 -segmentových displejov je aktívny. Toto je riadené mikrokontrolérom prostredníctvom pinov spojených so základňou tranzistorov Q1 - Q4. Tlačidlá prírastku a nastavenia sa použijú na manuálne nastavenie správneho času, pokiaľ ide o skutočné používanie hodín. Keď je tlačidlo Nastavenie stlačené raz, pomocou tlačidla Zvýšiť je možné prechádzať hodinami zobrazenými na displeji. Po opätovnom stlačení tlačidla Set je možné pomocou tlačidla prírastku prechádzať minúty zobrazené na displeji. Po treťom stlačení tlačidla Nastaviť sa nastaví čas. R13 a R14 ťahajú kolíky mikrokontroléra súvisiace s týmito tlačidlami nízko, keď sa nepoužívajú. Všimnite si toho, že sme tu stiahli U4 (Atmega328p) z typickej prototypovej dosky Arduino UNO a položili sme ju na prototypovú dosku so zvyškom nášho obvodu. Aby sme to urobili, musíme prinajmenšom poskytnúť kryštál X1 a kondenzátory C1 a C2, aby sme poskytli zdroj hodín pre mikrokontrolér, viazací kolík 1, resetovací kolík, vysoký a poskytujúci napájanie 5 VDC.
Krok 2: Krok 2: Protokol prototypu
Bez ohľadu na to, či budujete obvod presne tak, ako je to znázornené na schéme zapojenia, alebo či používate mierne odlišný transformátor, typ displeja alebo iné komponenty, najskôr by ste mali obvod zapojiť, aby ste zaistili, že funguje a že rozumiete jeho fungovaniu.
Na obrázkoch môžete vidieť, že na chlebovanie celej veci bolo potrebných niekoľko dosiek a doska Arduino Uno. Aby ste mohli naprogramovať mikrokontrolér alebo experimentovať alebo vykonávať zmeny v softvéri, budete spočiatku potrebovať integrovaný obvod mikrokontroléra na doske UNO, aby ste k nemu a k počítaču mohli pripojiť kábel USB a nahrať program alebo vykonať zmeny softvéru. Akonáhle začnú hodiny pracovať na doske a máte naprogramovaný mikrokontrolér, môžete ich odpojiť a zapojiť do zásuvky na konečných budovateľských hodinách na prototype dosky. Nezabudnite pri tom dodržiavať antistatické opatrenia. Pri manipulácii s mikroprocesorom používajte antistatický remienok na zápästie.
Krok 3: Krok 3: Finálna konštrukcia
Obvod je konštruovaný na kusu prototypovej dosky a zapojený bod -bod pomocou drôtu omotaného drôtom AWG #30. Poskytuje tvrdý a spoľahlivý výsledok. Pretože transformátor, ktorý mám, má na konci kábla zástrčku 5 mm, namontoval som zodpovedajúcu zásuvku na zadnú stranu dosky tak, že som narezal, ohnul a vyvŕtal kus 1/2 palcového plochého hliníkového pásu, aby som si vyrobil vlastný. držiak a potom ho priskrutkujte na dosku malými 4-40 maticami a skrutkami. Môžete jednoducho odrezať konektor a spájkovať zvyšné napájacie káble k doske a ušetriť si asi 20 minút práce, ale nechcel som, aby bol transformátor trvalo pripevnený na dosku.
Krok 4: Krok 4: Vytvorenie zásuvky pre displej a rozdávanie nôh
Pretože displej má 16 pinov, 8 na každej strane, s rozstupom pinov, ktorý je širší ako štandardná 16 -pinová zásuvka IC, musíme prispôsobiť veľkosť zásuvky tak, aby zodpovedala zobrazeniu. Môžete to urobiť tak, že jednoducho použijete dvojicu nožníc na drôt na odstrihnutie plastu spájajúceho dve strany zásuvky, oddelíte ich a oddelene ich spájkujete s doskou s rozstupom, ktorý zodpovedá rozstupu kolíkov na displeji. Je výhodné to urobiť tak, aby ste sa nemuseli spájkovať priamo s kolíkmi displeja a vystavovať displej nadmernému teplu. Zásuvku, do ktorej som to urobil, môžete vidieť v hornej časti dosky na obrázku vyššie.
Aby sa displej správne postavil, priskrutkoval som dva 1 skrutky do spodnej časti dvoch rohových otvorov prototypovej dosky, ako je znázornené na fotografiách, aby som vytvoril jednoduchý stojan. Toto bolo dosť nápadné, takže ak to urobíte, môžete chcete na zadnej strane skrutiek položiť niečo ťažké, aby ste to stabilizovali.
Krok 5: Krok 5: Kontrola zapojenia obvodovej dosky a príprava na kalibráciu
Keď je doska s plošnými spojmi zapojená, ale pred zapojením integrovaných obvodov alebo displeja alebo pred zapnutím je vhodné skontrolovať zapojenie dosky pomocou DVM. Väčšinu DVM môžete nastaviť tak, aby v prípade kontinuity pípali. Nastavte DVM v tomto režime a potom podľa schémy zapojenia skontrolujte čo najviac zapojení obvodov. Skontrolujte, či medzi bodmi +5 V a uzemnením nie je otvorený obvod alebo v jeho blízkosti. Vizuálne skontrolujte, či sú všetky súčasti pripojené k správnym kolíkom.
Potom pripojte transformátor k obvodu a zapnite ho. Pred zapojením akýchkoľvek integrovaných obvodov alebo displeja skontrolujte, či máte na 5V napájacej lište presne 5V DC, buď pomocou ďalekohľadu, alebo DVM. Ďalej zapojte IBA OP-Amp U5 IC ako prípravu na ďalší krok. Tu skontrolujeme, či náš krížový obvod generuje štvorcovú vlnu, a upravíme potenciometer RV1 na čistý signál 60 Hz.
Krok 6: Krok 6: Kalibrácia obvodu
Jedinou kalibráciou, ktorú je potrebné vykonať, je nastaviť potenciometer RV1 na správnu úroveň signálu napájajúceho krížový detektor. Existujú dva spôsoby, ako to urobiť:
1. Nasaďte sondu rozsahu na kolík 1 na U5 a uistite sa, že ste uzemňovací vodič sondy sondy pripojili k uzemneniu obvodu. Potom nastavte RV1, kým nebudete mať čistú štvorcovú vlnu, ako je to znázornené na obrázku vyššie. Ak nastavíte RV1 príliš ďaleko jedným alebo druhým spôsobom, buď nebudete mať žiadnu štvorcovú vlnu alebo skreslenú štvorcovú vlnu. Zaistite, aby frekvencia štvorcovej vlny bola 60 Hz. Ak máte moderný rozsah, pravdepodobne vám to povie frekvenciu. Ak máte starodávny rozsah ako ja, zaistite, aby bola doba štvorcovej vlny približne 16,66 ms alebo 1/60 s. 2. Pomocou frekvenčného počítadla alebo DVM v frekvenčnom režime zmerajte frekvenciu na vývode 1 U5 a nastavte RV1 na presne 60 Hz. Po dokončení tejto kalibrácie vypnite obvod a zapojte všetky integrované obvody a displej, aby ste dokončili stavbu obvodu.
Krok 7: Krok 7: Program Arduino
Program je plne komentovaný, aby ste mohli zistiť podrobnosti o každom kroku. Vzhľadom na zložitosť programu je ťažké opísať každý krok, ale na veľmi vysokej úrovni to funguje takto:
Mikroprocesor prijíma prichádzajúcu 60 Hz štvorcovú vlnu a počíta 60 cyklov a zvyšuje počet sekúnd po každých 60 cykloch. Akonáhle počet sekúnd dosiahne 60 sekúnd alebo 3600 cyklov, počet minút sa zvýši a počet sekúnd sa vynuluje. Akonáhle počet minút dosiahne 60 minút, počet hodín sa zvýši a počet minút sa vynuluje. počet hodín sa po 13 hodinách resetuje na 1, takže ide o 12 -hodinový formát. Ak chcete 24 -hodinový formát, zmeňte program tak, aby sa hodiny po 24 hodinách vynulovali. Ide o experimentálny projekt, preto som sa pokúsil použiť slučku Do-While na potlačenie odrazu spínača na tlačidlách Nastaviť a Zvýšiť. Funguje to primerane dobre. Keď raz stlačíte tlačidlo Set, pomocou tlačidla Increment môžete prechádzať hodinami zobrazenými na displeji. Keď znova stlačíte tlačidlo Set, pomocou tlačidla prírastku môžete prechádzať minútami zobrazenými na displeji. Keď stlačíte tlačidlo Set tretíkrát, nastaví sa čas a hodiny sa spustia. Vzory 0 a 1, ktoré sa používajú na zobrazenie každého čísla na 7-segmentových displejoch, sú uložené v poli s názvom Seven_Seg. V závislosti od aktuálneho času sú tieto vzory privedené do integrovaného obvodu 74HC595 IC a odoslané na displej. Ktorá zo 4 číslic displeja je súčasne zapnutá na príjem týchto údajov, je riadená mikroprocesorom prostredníctvom displeja Dig 1, 2, 3, 4 kolíky. Keď je obvod zapojený, program najskôr spustí testovaciu rutinu s názvom Test_Clock, ktorá odošle správne číslice na rozsvietenie každého displeja s počtom od 0 do 9. Takže ak to uvidíte pri zapnutí, viete, že ste všetko postavili správne.
Krok 8: Krok 8: Ponuka PCBWay
Tým sa tento príspevok končí, ale sponzorom tohto projektu je PCBWay, ktorý v tom čase oslavuje svoje 5. výročie. Pozrite sa na https://www.pcbway.com/anniversary5sales.html a nezabudnite, že ich montážna služba je teraz len za 30 dolárov.
Odporúča:
Ako vyrobiť analógové hodiny a digitálne hodiny s LED pásikom pomocou Arduina: 3 kroky
Ako vyrobiť analógové hodiny a digitálne hodiny s LED pásikom pomocou Arduina: Dnes vyrobíme analógové hodiny & Digitálne hodiny s LED pásikom a modulom MAX7219 Dot s Arduino. Opraví čas s miestnym časovým pásmom. Analógové hodiny môžu používať dlhší LED pás, takže ich možno zavesiť na stenu a stať sa umeleckým
Hodiny pre odchod do dôchodku / Hodiny s odpočítavaním / Dn: 4 kroky (s obrázkami)
Hodiny pre odchod do dôchodku / Hodiny počítania / Dn: V zásuvke som mal niekoľko týchto 8x8 LED bodových displejov a premýšľal som, čo s nimi. Inšpirovaný inými pokynmi, dostal som nápad postaviť displej odpočítavania/odpočítavania, ktorý bude odpočítavať do budúceho dátumu/času a ak cieľový čas p
C51 4 -bitové elektronické hodiny - drevené hodiny: 15 krokov (s obrázkami)
C51 4 -bitové elektronické hodiny - drevené hodiny: Tento víkend mal nejaký voľný čas, a tak sa dal dokopy a zostavil tieto 4 -bitové elektronické digitálne hodiny vo výške 2,40 USD za 4 doláre, ktoré som pred chvíľou kúpil od AliExpress
Rozvodové hodiny a reťazové hodiny - takmer zadarmo! 5 krokov (s obrázkami)
Rozvodové hodiny a reťazové hodiny - takmer zadarmo !: Našťastie, keď ste zmenili rozvodovú súpravu svojho auta, nehodili ste staré prevody a reťaz. Skoro som to urobil, ale moja žena mi ukázala toto: http://www.uncommongoods.com/product/auto-timing-chain-and-gears-wall-clock 125 USD v USA plus poštovné.
Premeňte obyčajné hodiny z domova na vlastné žiariace hodiny: 8 krokov (s obrázkami)
Premeňte obyčajné hodiny na vlastné žiariace hodiny: PRVÉ DÁVAM SVOJE SRDEČNÉ VĎAKA INŠTRUKČNÝM TÍMOM, KTORÉ SA TÝKAJÚ DNI OBNOVY ZDRAVIA AKO VIAC ODPOVEDE ….. V tomto návode sa s vami chcem podeliť o to, ako previesť doma obyčajné hodiny do automaticky žiariacich hodín. > > Za to, že