» elektronika » Arduino »Hodiny s teplomerom na Attiny

Attiny Teplomer hodinky

Attiny Teplomer hodinky



Ahoj všetci a pekný deň alebo večer. Tentokrát budem zdieľať pokyny na výrobu izbových hodín s teplomerom. Výpočtovým centrom hodiniek bude Attiny85, zostavený na doske spoločnosti Digispark. Zobrazenie hodín - Oled. Teplomer - známy ds18b20. Pre napájanie berieme Li-ion 18650 (dajú sa získať zo starej batérie z notebooku). A pridajte zobrazenie úrovne nabitia batérie. Rovnako ako vo všetkých mojich predchádzajúcich sledovaniach, aj bez modulu RTC (hodiny v reálnom čase) sa obídeme.

Zhromažďujeme všetko potrebné:

- Digispark Attiny85 (verzia micro USB)
- ds18b20 (v plastovom obale)
- Oledová obrazovka s rozlíšením 128x64, I2C
- 2ks 18650 batérií alebo stará Li-ion batéria pre laptop
- rezistory (3,3 kΩ, 4,7 kΩ, 10 kΩ)
- Tenký plast (na bývanie)
- Spojovacie vodiče rôznych farieb
- ISP programátor (alebo iný) Arduino za poplatok)
- Tlačidlo
- Dupontové konektory 2,54 mm „matka“, „otec“
- kancelársky nôž, obojstranná páska, elektrická páska, tavenina
- Všetko na spájkovanie (spájkovačka, kolofónia, spájka)

Krok 1 Prípad.
Budúce puzdro na hodinky bude vyrobené z tenkého plastu. List takéhoto plastu si môžete kúpiť v špecializovanom obchode alebo si objednať na aliexpress. Alebo môžete (nečakať a nepozerať sa) chodiť do kancelárskej kancelárie a kúpiť si plastovú papierovú zložku svojej obľúbenej farby. Rozmery budúcich hodiniek: šírka - 40 mm, hrúbka - 30 mm, výška - 70 mm. Podľa nasledujúceho obrázka sme vyrezali skenovanie z plastu:


Rezáme pozdĺž hrubých čiar, jemne sa ohýbame pozdĺž tenkých čiar. Vystrihli sme obdĺžnik uprostred pomocou kancelárskeho noža, toto je okno na zobrazenie. Výsledkom je sken plastu:


Prejdeme do Attiny.

Krok 2 Attiny + Oled.
Ako som povedal, v našom srdci domáci bude Attiny 85. Najlepšie je kúpiť tento čip, okamžite spájkovaný na dosku spolu s regulátorom napätia a postrojom. Digispark Attiny85 sa veľmi dobre hodí. Vyberte si verziu s micro-USB na doske. Ostatné úpravy dosky sa nezmestia na veľkosť. Stáva sa, že táto doska sa predáva s spájkovanými konektormi Dupon. Ak áno, spájkujte všetky konektory. Zbierame farebné drôty. Potrebujeme 10 centimetrov v rôznych farbách. Spájkujeme ich v Attine a napíšeme, ktorý drôt, ktorému záveru zodpovedá. Vodiče P0 a P2 musia byť spájkované dvoma vodičmi. Druhý pár je potrebný na pripojenie obrazovky Oled. Dostávame nasledujúce:


Na vodič som napísal nasledujúci diagram:


Obrazovka je malá (tak, aby zodpovedala ovládaču), ale vyzerá to krásne. OLED (organická svetelná dióda) je grafické zobrazenie. Nie je podsvietenie a namiesto toho je každý pixel samostatnou diódou LED. Veľkosti obrazovky - 0,96 palca.Rozlíšenie 128x64. Pripojené cez zbernicu I2C. Na pripojenie k Attiny sa používajú iba dva káble. Prichádzajú v rôznych farbách, vyberajú podľa vášho vkusu. Páčilo sa mi modré s žltým pruhom hore. Konáme podobne ako Digispark. Ak existujú spájkované konektory - spájkujte ich. Spájka, zatiaľ len napájacie vodiče:


Pri spájkovaní buďte opatrní, nepoškodite kábel spájkou na displeji:


Dosky spájame pomocou obojstrannej pásky:


Spájkujeme displeje Digispark Attiny a Oled spoločne podľa schémy (farby drôtov sa môžu líšiť, hlavnou vecou nie je pokaziť závery):


Z dôvodu pohodlia a objednávky zhromažďujeme všetky káble dohromady. Môžete ich skrútiť elektrickou páskou, aby ste sa nezamieňali:


Na koniec všetkých vodičov pripojíme „samičí“ konektor Dupont, vložíme ho do izolátorov a obalíme elektrickou páskou tak, aby sa vytvoril konektor. Zaznamenávame tiež pinout konektora:


Pinout by mal byť taký, pretože v budúcnosti pripojíme drôt pre firmvér alebo iné prvky hodiniek ku konektoru.
Výslednú štruktúru nalepíme do puzdra a nezabudnite na prípadnú lepšiu manipuláciu prilepiť aj samotný puzdro, pričom jeden ston nie je zlepený.


Pri lepení dbajte na to, aby obrazovka bola rovnomerná:


Krok 3 Napájanie.
Na napájanie použijeme dva lítium-iónové prvky. Typ 18650. Môžete si ich kúpiť samostatne. V takom prípade ich spájkujte paralelne, izolujte a vydajte konektor na pripojenie a následné nabíjanie:


Mnohé majú staršie notebooky. Či už nepracujú alebo nepracujú v priebehu času. Aj keď je batéria prenosného počítača už zlá a nie je vhodná na zamýšľané použitie, dá sa použiť na všetky druhy domácich výrobkov. V našom prípade na hodinky. Berieme batériu z notebooku:


Hlavná vec je, že je Li-ion. Opatrne ho rozoberte, musíte otvoriť plastové puzdro, aby ste nepoškodili prvok vo vnútri. Najčastejšie je batéria rozdelená na dva prvky spojené paralelne. Vyberieme ich a oddelíme jeden pár od ostatných:


Najlepšie je spájkovanie s kontaktnými doštičkami:


Prilepte tento pár na zadnú stranu hodiniek:


Krok 4 Určenie stavu nabitia batérie.
Pohodlnou funkciou hodiniek je indikácia nabitia batérie. Určíme stupeň nabitia napätím. Minimálne napätie pre tieto batérie je 2,4 V. Nie je možné ďalej vybíjať. Maximálne napätie je 4,2 V.

Meranie napätia na analógovom porte je vždy relatívne k inému napätiu. Nemôžeme použiť kolík AREF mikrokontroléra, ktorý slúži na nastavenie referenčného napätia. Je tiež nemožné zmerať napätie vzhľadom na napájacie napätie (pomer bude vždy rovnaký). Preto určíme napätie vo vzťahu k internému referenčnému napätiu alebo Vbg (referenčné napätie Bandgap). Je to 1,1 V. Teraz musíme vypočítať delič napätia pre našu batériu, takže pri maximálnom nabití (4,2 V) mal delič (1,1 V). Môžete vypočítať podľa vzorca:



Alebo použiť

R1 má nominálnu hodnotu 10 kOhm. Potom R2 dostaneme 3,55 KOhm, najbližšie vhodné zo štandardných hodnôt 3,3 KOhm a vezmeme ho. Merajú sa medzi vnútorným napätím a GND, takže rezistor 3,3 KΩ je spájkovaný na mínus a 10 KΩ na plus. Umiestnime odpory na batériu, stiahneme drôt z deliča.


Izolujeme všetky kontakty, aby sme predišli skratu:


Drôt z deliča bude pripojený k PB4.

Krok 5 Zmerajte teplotu.
Vynikajúcim doplnkom hodiniek je meranie teploty miestnosti. Použijeme integrovaný snímač teploty DS18B20. Na prácu s ním je potrebný iba jeden vodič (veľmi užitočné pri používaní Attiny 85). Všetky merania sa vykonávajú sám, centrálny ovládač sa neobťažuje (Attiny 85 má tiež vynikajúcu pamäť a tak málo), musíme iba zadávať príkazy a dosahovať výsledky. Na pripojenie tohto senzora existuje niekoľko rôznych schém. Podľa môjho názoru použijeme optimálnu možnosť pre tento prípad.Použitie externého napájania a odporu 4,7 kΩ:


Spájkujte malé drôty a upevnite konektory


Drôt zo snímača DQ je pripojený k PB 3.

Krok 6 Tlačidlo.
Máme niekoľko záverov, ale existuje veľa požiadaviek na hodinky. Na nastavenie času použijeme jedno tlačidlo. Nemôžeme sa spoľahnúť na viac. Spájkujte vodiče k tlačidlu, jeden kontakt od GND. Kombinujte s naším teplotným senzorom:


Druhý kontakt z tlačidla je pripojený k PB 1.

Krok 7 Príprava vývojového prostredia
Pre ďalšiu prácu s náčrtom, ako aj s jeho úpravami a vypĺňaním potrebujeme Arduino IDE. Stiahnite si tento program z:

Teraz pridajte podporu pre Attiny 85 v stredu. Otvorte Arduion IDE a choďte po ceste:
Súbor - Nastavenia - „Doplňujúce adresy URL Správcu dosiek“ vložte odkaz:

https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json


Kliknite na tlačidlo OK.
Prejsť na:
Tools - Board - Boards Manager zadajte Attiny a kliknite na „attiny by David A. Mellis“. Kliknite na tlačidlo Inštalovať a nechajte kávu položiť.
A teraz o knižniciach. Potrebujú dve:

Práca s displejom Oled

Ovládanie snímača teploty

Po stiahnutí týchto archívov ich rozbaľte do priečinka „knižnice“, ktorý je ľahké nájsť po inštalačnej ceste Arduino IDE.

Krok 8 Programátor.
Digispark Attiny 85 je skvelá doska. Navrhnuté na pripojenie k počítaču USB. A to sa dá naprogramovať. Attiny však používa softvérové ​​USB, ktoré zase zaberá 2 KB z 8 KB pamäte. To nám nevyhovuje, a preto budeme prostredníctvom rozhrania ISP blikať Attiny 85. A tu potrebujeme programátora ISP. Ak tam nie je, nezáleží na tom. Vezmite Arduino. V mojom prípade Arduino UNO:


Z rady Arduino si môžete vziať akúkoľvek inú kompatibilnú dosku. Pripojíme sa k počítaču, otvoríme Arduino IDE, vyberieme com port, ku ktorému je pripojená doska Arduino, v príkladoch otvoríme náčrt, Arduino ISP a vložíme ho do dosky. Potrebujeme tiež drôt na rýchle pripojenie k Attiny.


Spojenie je nasledujúce:

D11 - P0
D12 - P1
D13 - P2
D10 - P5

Nezabudnite na výživu Attiny.

Krok 9 Upravte a vyplňte náčrt.

Stiahnite si skicu

Pred vyplnením musíte skicu upraviť.
Integrovaný senzor ds18b20, ako už bolo spomenuté, pracuje pomocou protokolu One Wire. Každý senzor má svoju vlastnú jedinečnú 64-bitovú adresu. Musíte nájsť adresu senzora a napísať ju do náčrtu. Otvorte Arduino IDE a postupujte podľa pokynov:
Súbor - príklady - Dallas Temperature - OneWireSearch.

Vyplňte náčrt do Arduina. Otvorte monitor portu. Mali by ste vidieť adresy všetkých pripojených snímačov a ich hodnoty teploty. Vašu adresu si zapíšeme. Otvorte moju náčrt a v riadku zmeňte adresu na svoju vlastnú:

byte addr [8] = {0x28, 0xFF, 0x75, 0x4E, 0x87, 0x16, 0x5, 0x63};


Ak chcete upraviť priebeh hodín, použite túto konštantu:

if (micros () - prevmicros> [b] 497000 [/ b]) 


Čím väčšia je táto hodnota, tým pomalšie sú hodiny.
Na ovládanie sa na obrazovke zobrazujú sekundy:

OzOled.printNumber ((long) sek, 0, 7); // výstupné sekundy na presné ladenie 


Ak chcete odstrániť sekundy, okomentujte tento riadok.
Teraz prepojíme programátor alebo Arduino ako programátor, vyberieme com-port, vyberieme našu dosku v ponuke Nástroje a nastavíme nasledujúce parametre:
Stravovanie: Attiny 25/45/85
Spracovateľ: Attiny 85
Hodiny: vnútorné 16
Potom vyberte v rovnakej ponuke:
Nástroje - Programátor - „Arduino ako ISP“.
A nakoniec:
Skica - sťahovanie prostredníctvom programátora

Krok 10 Finálna montáž a spustenie.
Vypnite programátor a pripojte snímač, napájanie a tlačidlo:


Pokiaľ nenastavíte presný priebeh hodín, môžete puzdro uzavrieť pomocou gumovej gumy. Po dokončení ho môžete prilepiť.


Sledujte hodnotenie
Hlasov celkom: 13
10
10
10

Pridajte komentár

    • usmievaťúsmevyxaxaokdontknowyahoonea
      bossškrabanecoklamaťánoáno, ánoútočnýtajomstvo
      ľutovaťtanecdance2dance3odpusteniehelpnápoje
      zastávkapriateliadobrýgoodgoodpíšťalaomdlieťjazyk
      dymtlieskanieCraydeklarovaťvýsměšnýdon-t_mentiondownload
      teplohnevlivýlaugh1MDAstretnutiemoskingnegatívny
      not_ipražená kukuricatrestaťprečítaťvydesiťzdesenievyhľadávať
      posmechthank_youtototo_clueumnikakútnasúhlasiť
      zlýbeeeblack_eyeblum3očervenieťchvastanienuda
      cenzurovanéžartysecret2hroziťvíťazstvoyusun_bespectacled
      shokrešpektlolprevedievitajtekrutoyya_za
      ya_dobryipomocníkne_huliganne_othodiFLUDzákazzavrieť
9 komentár
Autor
Táto myšlienka je skvelá. Urobil som s tým niečo. Iba na dosah ruky bola premena na 5 kΩ. Zahrnul som to do spodného ramena. A potom nahradený najvhodnejšou permanentnou. Ale vo výrobných pokynoch si myslím, že ich písanie nie je potrebné. Prečo tieto merania nevykonávať niekoľkokrát.
Nevidel som potrebu písať o zdĺhavých a dlhých pokusoch.
Nie je potrebné robiť nič zdĺhavé a únavné. Zapnite rezistor (2,7 ... 3) kOhm v dolnom ramene a postupne s ním orezávač 1 kOhm. Z nastaviteľného zdroja energie vstupujete na vstup extrémne hodnoty regulovaného napätia, upravujete prevádzkový bod, potom môžete zmerať odpor trimra a nahradiť ho konštantným odporom.
Autor
Pri frekvencii 8 MHz som sa nesnažil spustiť hodiny a podľa toho zmerať presnosť kurzu. Všetky merania boli uskutočnené pri 16 zvnútra. Nemôžem povedať ani o mesiaci. Doteraz bez vypnutia pracovali maximálne týždeň. Pokusy a zlepšenia stále prebiehajú.
Autor
Pokiaľ ide o delič napätia, v skutočnosti existuje veľa nuancií a chýb. A rozptyl odporov rezistorov a rozptyl referenčného napätia. V praxi som vyskúšal všetko. Pri použití rezistora 3,6 kΩ, dokonca aj pri napätí batérie 3,9 V, zobrazuje analógový port Attiny 1023 (pri konverzii na 100% percent). Pri použití rezistora 3,3 kΩ sa hodnota analógového portu znižuje aj pri 4,1 V na batérii. Preto som napísal, že svedectvo sa získava presnejšie, len som nevidel potrebu písať o nudných a dlhých súdnych konaniach.
Autor
Nastavil som hodiny na týždeň, upravoval som ich postup každý deň alebo častejšie. Výsledkom je, že pri hodnote 497343 sa ponáhľajú asi 10 sekúnd týždenne.
Frekvencia sa môže znížiť. Nezmenil som parameter, nebolo potrebné
Aká je presnosť 8-MHz RC-hodín? Za mesiac?
a prečo Hodiny: interné 16?
Je lepšie zvoliť menej, potom sú hodnoty presnejšie.
Nie presnejšie, ale jednoducho by vstupné napätie malo byť menšie ako referenčná hodnota. Okrem toho vo svojom odôvodnení absolútne nezohľadňujete šírenie parametrov: odpory, s najväčšou pravdepodobnosťou budete mať päť percent, Vbg = (1,0 ... 1,2) V. Takže 3,3 kOhm sa môže ukázať ako príliš veľké, a možno 3,6 kOhms.
Autor
Ak použijete výstupné napätie 3,6, dostaneme 1,11. Aj keď nie príliš veľa, ale viac referenčného napätia. Pri použití 3,3 - 1,04. Je lepšie zvoliť menej, potom sú hodnoty presnejšie.
A pokiaľ ide o Oh, máš pravdu, len som nevenoval pozornosť tomuto drobnému detailu.
Po nalepení puzdra získate prístup k nabíjacej zásuvke a tlačidlám zo spodnej časti hodiniek odrezaním spodného krytu alebo jednoducho nelepením.
Potom R2 dostaneme 3,55 KOhm, najbližší zo štandardných hodnôt 3,3 KOhm
Vôbec nie. Najbližšia E24 v štandardnom rozsahu je 3,6 kOhm. A mimochodom, nie „KOhm, ale“ KOhm.
Pokiaľ nenastavíte presný priebeh hodín, môžete puzdro uzavrieť pomocou gumovej gumy. Po dokončení ho môžete prilepiť.
Ako nabijeme batériu?
A ako s tlačidlom manipulovať?

Odporúčame vám prečítať si:

Ruku pre smartphone ...