Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Windows 7, XP
  • Uradi sam sat s LED indikatorima. Takt na AVR mikrokontroleru s DS1307

Uradi sam sat s LED indikatorima. Takt na AVR mikrokontroleru s DS1307

Kao što ime govori, glavna namjena ovog uređaja- naučiti Trenutno vrijeme i datum. Ali ima ih mnogo više korisne funkcije. Ideja o njegovoj izradi pojavila se nakon što sam naišao na polurazbijeni sat s relativno velikim (za ručni) metalno tijelo. Mislio sam da ga mogu staviti tamo kućni sat, čije su mogućnosti ograničene samo vlastitom maštom i vještinom. Rezultat je bio uređaj sa sljedećim funkcijama:

1. Sat - kalendar:

2. Dvije neovisne budilice (zvuči melodija kada se aktivira)
3. Mjerač vremena s koracima od 1 sekunde. (Maksimalno vrijeme brojanja 99h 59m 59s)
4. Dvokanalna štoperica s rezolucijom brojanja od 0,01 sek. ( maksimalno vrijeme broji 99h 59m 59s)
5. Štoperica s rezolucijom brojanja od 1 sekunde. (maksimalno vrijeme brojanja 99 dana)
6. Termometar u rasponu od -5°C. do 55°C (ograničeno rasponom temperature normalna operacija uređaji) u koracima od 0,1°C.
7. Čitač i emulator elektronički ključevi- tablete tipa DS1990 koji koriste Dallas 1-Wire protokol (memorija za 50 komada, koja već sadrži nekoliko univerzalnih "ključeva za sve terene") s mogućnošću pregleda koda ključa bajt po bajt.
8. Daljinski kontrola na IC zrakama (implementirana je samo naredba “Snimi fotografiju”) za digitalne kamere"Pentax", "Nikon", "Canon"
9. LED svjetiljka
10. 7 melodija
11. Zvučni signal na početku svakog sata (može se isključiti)
12. Zvučna potvrda pritiska tipki (može se isključiti)
13. Praćenje napona baterije s funkcijom kalibracije
14. Podešavanje svjetline digitalnog indikatora

Možda je takva funkcionalnost suvišna, ali volim univerzalne stvari, plus moralno zadovoljstvo da će ovaj sat biti napravljen vlastitim rukama.

Shematski dijagram sata

Uređaj je izgrađen na mikrokontroleru ATmega168PA-AU. Sat otkucava prema mjeraču vremena T2, koji radi u asinkronom načinu rada od kvarcnog sata na 32768 Hz. Mikrokontroler je gotovo cijelo vrijeme u stanju mirovanja (indikator je isključen), budi se jednom u sekundi kako bi tu sekundu dodao trenutnom vremenu i ponovno zaspi. U aktivnom načinu rada, MK radi na internom RC oscilatoru na 8 MHz, ali interni prescaler ga dijeli s 2, kao rezultat toga, jezgra radi na 4 MHz. Za indikaciju se koriste četiri jednoznamenkasta LED digitalna sedmosegmentna indikatora sa zajedničkom anodom i decimalnom točkom. Tu je i 7 statusnih LED dioda čija je namjena sljedeća:
D1- Znak negativna vrijednost(minus)
D2- Znak štoperice koja radi (treperi)
D3- Znak uključenja prvog alarma
D4- Znak uključenja drugog alarma
D5- Indikator hrane zvučni signal na početku svakog sata
D6- Znak uključenog mjerača vremena (treperi)
D7- Indikator niskog napona baterije

R1-R8 - otpornici za ograničavanje struje segmenata digitalnih indikatora HG1-HG4 i LED D1-D7. R12,R13 – razdjelnik za praćenje napona baterije. Budući da je napon napajanja sata 3V, a bijeli LED D9 zahtijeva oko 3,4-3,8V na nazivna struja potrošnje, tada ne svijetli punom snagom (ali je dovoljno da se ne spotakne u mraku) i stoga je spojen bez otpornika za ograničavanje struje. Elementi R14, Q1, R10 dizajnirani su za upravljanje infracrvenim LED D8 (izvedba daljinski upravljač za digitalne fotoaparate). R19, ​​​​R20, R21 koriste se za uparivanje pri komunikaciji s uređajima koji imaju 1-Wire sučelje. Kontrola se vrši pomoću tri tipke, koje sam konvencionalno nazvao: MODE (način), UP (gore), DOWN (dolje). Prvi od njih također je dizajniran da probudi MK vanjskim prekidom (u ovom slučaju se uključuje indikacija), pa je zasebno spojen na PD3 ulaz. Pritisak preostalih gumba određuje se pomoću ADC-a i otpornika R16, R18. Ako se tipke ne pritisnu unutar 16 sekundi, MK odlazi u stanje mirovanja i indikator se gasi. Kada je u načinu rada “Daljinski upravljač za kamere” ovaj interval je 32 sekunde, a sa svjetiljkom - 1 minuta. MK se također može staviti u stanje mirovanja ručno pomoću upravljačkih gumba. Kada štoperica radi s rezolucijom brojanja od 0,01 sek. Uređaj ne prelazi u stanje mirovanja.

Isprintana matična ploča

Uređaj je sastavljen na dvostranoj tiskanoj pločici okruglog oblika prema veličini unutarnjeg promjera kućišta ručni sat. Ali u proizvodnji sam koristio dvije jednostrane ploče debljine 0,35 mm. Ova debljina opet je dobivena odvajanjem od dvostranog laminata od stakloplastike debljine 1,5 mm. Ploče su zatim zalijepljene. Sve je to učinjeno jer nisam imao tanki dvostrani fiberglas, a svaki milimetar debljine ušteđen u ograničenom unutarnjem prostoru kućišta sata je vrlo vrijedan, a nije bilo potrebe za poravnavanjem u izradi tiskanih vodiča pomoću LUT-a. metoda. Nacrt tiskane pločice i položaj dijelova nalaze se u priloženim datotekama. S jedne strane nalaze se indikatori i otpornici za ograničavanje struje R1-R8. Na poleđini su svi ostali detalji. Postoje dvije prolazne rupe za bijele i infracrvene LED diode.

Kontakti gumba i držač baterije izrađeni su od fleksibilnog opružnog čeličnog lima debljine 0,2...0,3 mm. i konzervirana. Ispod su fotografije ploče s obje strane:

Dizajn, dijelovi i njihova moguća zamjena

Mikrokontroler ATmega168PA-AU može se zamijeniti s ATmega168P-AU, ATmega168V-10AU ATmega168-20AU. Digitalni indikatori - 4 komada KPSA02-105 super-jarko crvenog sjaja s visinom znamenke od 5,08 mm. Može se isporučiti iz iste serije KPSA02-xxx ili KCSA02-xxx. (samo ne zelene - slabo će svijetliti) Ne znam za druge analoge sličnih veličina s pristojnom svjetlinom. U HG1, HG3, veza segmenata katode je drugačija od HG2, HG4, jer mi je bilo prikladnije za ožičenje tiskane ploče. U tom smislu, za njih se u programu koristi druga tablica generatora znakova. Rabljeni SMD otpornici i kondenzatori za površinska montaža standardne veličine 0805 i 1206, LED diode D1-D7 standardne veličine 0805. Bijele i infracrvene LED diode promjera 3 mm. Ploča ima 13 prolaznih rupa u koje se moraju ugraditi skakači. Kao senzor temperature koristi se DS18B20 s 1-Wire sučeljem. LS1 je obični piezoelektrični visokotonac, umetnut u poklopac. Jednim kontaktom je povezan s pločom pomoću opruge koja je na njoj ugrađena, drugim je spojen s tijelom sata pomoću samog poklopca. Kvarcni rezonator iz ručnog sata.

Programiranje, firmware, osigurači

Za programiranje unutar kruga, ploča ima samo 6 okruglih kontaktnih mjesta (J1), budući da puni konektor ne odgovara visini. Povezao sam ih s programatorom pomoću kontaktni uređaj, napravljen od PLD2x3 utikača i opruga zalemljenih na njih, pritišćući ih jednom rukom na njuške. Ispod je fotografija uređaja.

Koristio sam ga jer sam tijekom postupka otklanjanja pogrešaka morao mnogo puta ponovno bljeskati MK. Prilikom treptanja jednokratnog firmvera, lakše je zalemiti tanke žice spojene na programator na zakrpe, a zatim ih ponovno odlemiti. Pogodnije je bljeskati MK bez baterije, ali tako da napajanje dolazi ili iz vanjski izvor+3V, ili iz programatora s istim naponom napajanja. Program je napisan u asembleru u okruženju VMLAB 3.15. Izvorni kodovi, firmware za FLASH i EEPROM u aplikaciji.

FUSE bitovi mikrokontrolera DD1 moraju se programirati na sljedeći način:
CKSEL3...0 = 0010 - takt iz internog RC oscilatora 8 MHz;
SUT1...0 =10 - Vrijeme pokretanja: 6 CK + 64 ms;
CKDIV8 = 1 - djelitelj frekvencije za 8 je onemogućen;
CKOUT = 1 - Izlazni takt na CKOUT onemogućen;
BODLEVEL2…0 = 111 - kontrola napona napajanja je onemogućena;
EESAVE = 0 - brisanje EEPROM-a pri programiranju kristala je zabranjeno;
WDTON = 1 - Watchdog Timer nije uvijek uključen;
Preostale FUSE bitove najbolje je ostaviti netaknute. Bit FUSE je programiran ako je postavljen na “0”.

Potrebno je flešovanje EEPROM-a s dumpom uključenim u arhivu.

Prve EEPROM ćelije sadrže početni parametri uređaja. Tablica u nastavku opisuje namjenu nekih od njih, koja se može mijenjati u razumnim granicama.

Adresa ćelije

Svrha

Parametar

Bilješka

Količina napona baterije pri kojoj se javlja signal niske razine

260 (104 USD) (2,6 V)

koeficijent za korekciju vrijednosti izmjerenog napona baterije

vremenski interval za prebacivanje u stanje mirovanja

1 jedinica = 1 sek

vremenski interval za prebacivanje u stanje mirovanja kada je svjetiljka uključena

1 jedinica = 1 sek

vremenski interval za prebacivanje u način mirovanja kada je u načinu daljinskog upravljanja za kamere

1 jedinica = 1 sek

Ovdje su pohranjeni brojevi ključeva IButton

Mala objašnjenja o točkama:

1 bod. To označava razinu napona na bateriji pri kojoj će LED zasvijetliti, označavajući njegovu nisku vrijednost. Postavio sam ga na 2,6 V (parametar - 260). Ako vam treba nešto drugo, na primjer 2.4V, onda trebate napisati 240 ($00F0). Niži bajt je pohranjen u ćeliji na adresi $0000, a visoki bajt je pohranjen u $0001.

2 boda. Pošto ga nisam instalirao na ploču promjenjivi otpornik Za podešavanje točnosti mjerenja napona baterije zbog nedostatka prostora uveo sam softversku kalibraciju. Postupak kalibracije za precizno mjerenje sljedeće: u početku je koeficijent 1024 (400$) zapisan u ovoj ćeliji EEPROM-a, potrebno je prebaciti uređaj u aktivni način rada i pogledati napon na indikatoru, a zatim voltmetrom izmjeriti stvarni napon na bateriji. Faktor korekcije (K) koji se mora podesiti izračunava se po formuli: K=Ur/Ui*1024 gdje je Ur stvarni napon izmjeren voltmetrom, Ui napon koji je izmjerio sam uređaj. Nakon izračuna koeficijenta “K” isti se unosi u uređaj (kao što je navedeno u uputama za uporabu). Nakon kalibracije, moja greška nije prelazila 3%.

3 boda. Ovdje možete postaviti vrijeme nakon kojeg će uređaj prijeći u stanje mirovanja ako se ne pritisne nijedan gumb. Moj košta 16 sekundi. Ako, na primjer, trebate zaspati za 30 sekundi, tada morate zapisati 30 (26 dolara).

U točkama 4. i 5. isto.

6 bodova. Na adresi $0030 pohranjen je nulti kod obitelji ključa (Dallas 1-Wire), zatim njegov 48-bitni broj i CRC. I tako 50 ključeva u nizu.

Postavljanje, značajke rada

Postavljanje uređaja svodi se na kalibriranje mjerenja napona baterije, kao što je gore opisano. Također je potrebno detektirati odstupanje takta sata za 1 sat, izračunati i unijeti odgovarajuću vrijednost korekcije (postupak je opisan u uputama za rad).

Uređaj se napaja iz litijska baterija CR2032 (3V) i troši približno 4 µA u stanju mirovanja i 5...20 mA u aktivnom načinu rada, ovisno o svjetlini indikatora. Uz svakodnevnu upotrebu od pet minuta aktivni način rada Baterija bi trebala trajati otprilike 2...8 mjeseci, ovisno o svjetlini. Kućište sata spojeno je na minus baterije.

Očitavanje ključa testirano je na DS1990. Emulacija je testirana na METAKOM portafonima. Pod, ispod serijski brojevi od 46 do 49 (zadnja 4) su flashani (svi ključevi su pohranjeni u EEPROM-u, mogu se mijenjati prije flashanja) univerzalni ključevi za portafone. Ključ registriran pod brojem 49 otvarao je sve METAKOM portafone na koje sam naišao, ostale univerzalne ključeve nisam imao priliku testirati, šifre sam im uzeo s mreže.

Daljinski upravljač za fotoaparate testiran je na modelima Pentax optio L20 i Nikon D3000. Canon nije bilo moguće dobiti za pregled.

Upute za upotrebu zauzimaju 13 stranica pa ih nisam uključio u članak, već sam ih stavio u prilog u PDF formatu.

Arhiva sadrži:
Shema u i GIF;
Crtanje tiskane pločice i raspored elemenata u formatu;
Firmware i izvorni kod u asembleru;

Popis radioelemenata

Oznaka Tip Vjeroispovijest Količina BilješkaDućanMoja bilježnica
DD1 MK AVR 8-bitni

ATmega168PA

1 PA-AU U bilježnicu
U2 senzor temperature

DS18B20

1 U bilježnicu
P1 MOSFET tranzistor

2N7002

1 U bilježnicu
C1, C2 Kondenzator30 pF2 U bilježnicu
C3, C4 Kondenzator0,1 µF2 U bilježnicu
C5 Elektrolitički kondenzator47 µF1 U bilježnicu
R1-R8, R17 Otpornik

100 Ohma

9 U bilježnicu
R9 Otpornik

10 kOhm

1 U bilježnicu
R10 Otpornik

8,2 Ohma

1 U bilježnicu
R11 Otpornik

300 Ohma

1 U bilježnicu
R12 Otpornik

2 MOhma

1 U bilježnicu
R13 Otpornik

220 kOhm

1 U bilježnicu
R14 Otpornik

30 kOhm

1 U bilježnicu
R15, R19 Otpornik

4,7 kOhm

2 U bilježnicu
R16 Otpornik

20 kOhm

1

Ručni sat kućne izrade s indikatorom vakuuma, izrađen u steampunk stilu. Materijal preuzet s www.johngineer.com. Ovaj ručni sat sastavljen je na temelju IVL-2 zaslona. U početku sam kupio nekoliko ovih indikatora kako bih napravio standardne. stolni sat, ali nakon razmišljanja shvatio sam da mogu izraditi i elegantne ručne satove. Indikator ima niz značajki koje ga čine prikladnijim za ovu svrhu od većine drugih sovjetskih zaslona. Evo parametara:

  • Nazivna struja žarne niti je 60 mA 2,4 V, ali radi s 35 mA 1,2 V.
  • Mala veličina- samo 1,25 x 2,25"
  • Može raditi s relativno Niski napon mreže 12V (do 24)
  • Troši samo 2,5 mA/segmentu na 12,5 V

Sve fotografije možete povećati klikom na njih. Najveća prepreka uspješnom završetku projekta bila je hrana. Budući da je ovaj sat trebao biti dio kostima, nije važno što baterija traje samo 10 sati. Odlučio sam se za AA i AAA.

Shema je prilično jednostavna. Mikrokontroler Atmel AVR ATMega88, i sat realnog vremena - DS3231. Ali postoje i drugi čipovi, mnogo jeftiniji, koji će jednako dobro raditi u generatoru.

VFD zaslon pokreće MAX6920 - 12-bitni registar posmaka s visokonaponskim (do 70V) izlazima. Jednostavan je za korištenje, vrlo pouzdan i kompaktan. Također je bilo moguće da upravljački program zaslona lemi hrpu diskretnih komponenti, ali to je bilo nepraktično zbog ograničenja prostora.

Napon baterije također napaja 5V pretvarač pojačanja (MCP1640 SOT23-6), koji je potreban za normalan rad AVR-a, DS3231 i MAX6920, a također djeluje kao ulazni napon za drugi pretvarač pojačanja (NCP1403 SOT23-5), koji proizvodi 13V za napon mreže indikatora vakuuma.

Sat ima tri senzora: jedan analogni i dva digitalna. Analogni senzor je fototranzistor i koristi se za detekciju razine svjetlosti (Q2). Digitalni senzori: BMP180 - tlak i temperatura, te MMA8653 - akcelerometar za detekciju pokreta. Oba digitalni senzor spojen preko I2C sabirnice na DS3231.

Za ljepotu i zaštitu staklenog zaslona ručnog sata zalemljene su mjedene cijevi, a za pričvršćivanje kožnog remena koriste se bakrene žice debljine 2 mm. puna kružni dijagram nije dano u izvornom članku - pogledajte podatkovnu tablicu veza s navedenim mikrosklopovima.

Predstavljam vam elektronički sat mikrokontrolera. Krug sata je vrlo jednostavan, sadrži najmanje dijelova i mogu ga ponoviti početnici radio amateri.

Dizajn je sastavljen na mikrokontroleru i DS1307 satu stvarnog vremena. Četveroznamenkasti LED indikator sa sedam segmenata (ultra svijetli, plava boja sjaj, koji dobro izgleda u mraku, a u isto vrijeme sat ima ulogu noćnog svjetla). Satom se upravlja pomoću dvije tipke. Zahvaljujući korištenju DS1307 čipa za sat stvarnog vremena, programski algoritam se pokazao prilično jednostavnim. Mikrokontroler komunicira sa satom stvarnog vremena preko I2C sabirnice, a organiziran je softverski.

Dijagram sata:

Nažalost, postoji greška u dijagramu:
— MK terminale treba spojiti na baze tranzistora:
RV0 do T4, RV1 do T3, RV2 do T2, RV3 do T1
ili promijenite vezu kolektora tranzistora na znamenke indikatora:
T1 do DP1….. T4 do DP4

Dijelovi koji se koriste u krugu sata:

♦ ATTiny26 mikrokontroler:

♦ sat realnog vremena DS1307:

♦ 4-znamenkasti LED indikator sa sedam segmenata – FYQ-5641UB-21 sa zajedničkom katodom (ultra-svijetli, plavi):

♦ kvarc 32,768 kHz, s ulaznom kapacitivnošću od 12,5 pF (može se uzeti iz matična ploča računalo), točnost sata ovisi o ovom kvarcu:

♦ svi tranzistori su NPN strukture, možete koristiti bilo koji (KT3102, KT315 i njihovi strani analozi), koristio sam BC547S
♦ stabilizator napona mikrokruga tipa 7805
♦ svi otpornici snage 0,125 vata
♦ polarni kondenzatori za radni napon koji nije niži od napona napajanja
♦ rezervno napajanje DS1307 – 3 voltna litijska ćelija CR2032

Za napajanje sata možete koristiti bilo koji nepotrebni punjač. mobitel(u ovom slučaju, ako je izlazni napon punjač unutar 5 volti ± 0,5 volti, dio kruga je stabilizator napona na mikro krugu tipa 7805, može se isključiti)
Trenutna potrošnja uređaja je 30 mA.
Ne morate instalirati pomoćnu bateriju za sat DS1307, ali tada, ako nestane struje, morat ćete ponovno postaviti trenutno vrijeme.
Tiskana ploča uređaja nije prikazana; dizajn je sastavljen u kućištu od neispravnog mehanički sat. LED dioda (sa frekvencijom treptanja od 1 Hz, sa pina SQW DS1307) služi za odvajanje sati i minuta na indikatoru.

Tvorničke postavke mikrokontrolera: taktna frekvencija— 1 MHz, FUSE bitovi ne moraju se dirati.

Algoritam rada sata(u Algorithm Builder-u):

1. Postavljanje pokazivača na stog
2. Postavljanje mjerača vremena T0:
— frekvencija SK/8
- prekidi prekoračenja (na ovoj unaprijed postavljenoj frekvenciji, prekid se poziva svake 2 milisekunde)
3. Inicijalizacija portova (pinovi PA0-6 i PB0-3 su konfigurirani kao izlaz, PA7 i PB6 kao ulaz)
4. Inicijalizacija I2C sabirnice (pinovi PB4 i PB5)
5. Provjera 7. bita (CH) nula registra DS1307
6. Omogućivanje globalnog prekida
7. Ulazak u petlju i provjera je li gumb pritisnut

Kada se uključi prvi put ili ponovno uključi u nedostatku rezervnog napajanja, DS307 prelazi u početna instalacija Trenutno vrijeme. U ovom slučaju: tipka S1 – za podešavanje vremena, tipka S2 – prijelaz na sljedeću znamenku. Postavi vrijeme– sati i minute se zapisuju u DS1307 (sekunde su postavljene na nulu), a pin SQW/OUT (7. pin) je konfiguriran za generiranje pravokutni impulsi s frekvencijom od 1 Hz.
Kada pritisnete tipku S2 (S4 - u programu), globalni prekid je onemogućen, program prelazi u podrutinu korekcije vremena. U ovom slučaju, korištenjem gumba S1 i S2, postavljaju se desetice i jedinice minuta, zatim, od 0 sekundi, pritiskom na gumb S2 bilježi se ažurirano vrijeme u DS1307, rješava globalni prekid i vraća se na glavni program.

Sat je pokazao dobra točnost napredak, gubitak vremena mjesečno - 3 sekunde.
Za poboljšanje točnosti, preporuča se spojiti kvarc na DS1307, kao što je navedeno u podatkovnoj tablici:

Program je napisan u okruženju Algorithm Builder.
Na primjeru clock programa možete se upoznati s algoritmom za komunikaciju između mikrokontrolera i drugih uređaja putem I2C sabirnice (svaka linija je detaljno komentirana u algoritmu).

Fotografija sastavljen uređaj I isprintana matična ploča u .lay formatu od čitatelja stranice Anatolija Pilguka, za što mu veliko hvala!

Uređaj koristi: Tranzistori - SMD BC847 i CHIP otpornike

Prilozi uz članak:

(42,9 KiB, 3038 pogodaka)

(6,3 KiB, 4058 pogodaka)

(3,1 KiB, 2500 pogodaka)

(312,1 KiB, 5833 pogotka)


Druga verzija programa sata u AB (za one koji ne mogu preuzeti gornju)

(11,4 KiB, 1842 pogotka)

LED jednostavan sat može se napraviti na jeftinom kontroleru PIC16F628A. Naravno, trgovine su pune raznih elektroničkih satova, ali njihove funkcije možda nemaju termometar ili budilicu ili možda ne svijetle u mraku. I općenito, ponekad samo želite nešto sami lemiti, a ne kupiti gotove. Kliknite za povećanje dijagrama.

Satovi u ponudi imaju kalendar. Ima dvije opcije za prikaz datuma - mjesec kao broj ili slog, sve se to konfigurira nakon unosa datuma prelaskom dalje tipkom S1 tijekom prikaza traženi parametar, termometar. Postoje programi za različite senzore. Pogledajte uređaj unutar kućišta:


Svi znaju da kvarcni rezonatori nisu idealne točnosti, a u roku od nekoliko tjedana pogreška se akumulira. Kako bi se riješio ovaj problem, sat ima korekciju brzine, koja je postavljena parametrima SH I SL. Više detalja:

SH=42 i SL=40 su naprijed za 5 minuta dnevno;
SH=46 i SL=40 unazad su za 3 minute dnevno;
SH=40 i SL=40 su naprijed za 2 minute dnevno;
SH=45 i SL=40 unazad su za 1 minutu dnevno;
SH=44 i SL=S0 - ovo je unaprijed za 1 minutu dnevno;
SH=45 i SL=00 - ova korekcija je onemogućena.

Na taj način možete postići savršenu točnost. Iako ćete morati prilagoditi korekciju nekoliko puta dok ne bude savršeno postavljena. A sada je jasno prikazan rad elektroničkog sata:

temperatura 29 Celzijevih stupnjeva

Kao indikatore možete koristiti ili sklopove LED brojčanika, koji su naznačeni na samom dijagramu, ili ih zamijeniti običnim okruglim super-sjajnim LED diodama - tada će ti satovi biti vidljivi izdaleka i mogu se objesiti čak i na ulici.

Sat od LED pozadinsko osvjetljenje i pulsirajuća kazaljka za minute na Arduino mikrokontroler
Ovaj jedinstveni sat s LED pozadinskim osvjetljenjem i pulsirajućom kazaljkom za minute izrađen je pomoću TLC5940 PWM kontrolera. Njegovo glavni zadatak je proširiti broj kontakata s PWM modulacijom. Još jedna značajka ovog sata je da je analogni voltmetar pretvorio u uređaj koji mjeri minute. Da biste to učinili, nova je ljestvica ispisana na standardnom pisaču i zalijepljena na staru. Kao takva, 5. minuta se ne računa, samo što tijekom pete minute brojač vremena pokazuje strelicu koja pokazuje na kraj ljestvice (izvan ljestvice). Glavna kontrola implementirana je na Arduino Uno mikrokontroleru.

Kako bi se osiguralo da pozadinsko osvjetljenje sata ne svijetli previše u mračnoj prostoriji, implementiran je krug za automatsko podešavanje svjetline ovisno o osvjetljenju (korišten je fotootpornik).

Korak 1: Potrebne komponente



Evo što će vam trebati:

  • 5V DC analogni voltmetarski modul;
  • Mikrokontroler Arduino UNO ili drugi odgovarajući Arduino;
  • Skupština Arduino ploča(proto tabla);
  • DS1307 modul sata realnog vremena (RTC);
  • Modul s PWM kontrolerom TLC5940;
  • Latice LED pozadinsko osvjetljenje – 12 kom.;
  • Komponente za sastavljanje sklopa za automatsku kontrolu svjetline (LDR).

Također, za izradu nekih drugih komponenti projekta poželjno je imati pristup 3D printeru i stroju za lasersko rezanje. Pretpostavlja se da imate ovaj pristup, tako da će upute uključivati ​​proizvodne crteže u odgovarajućim fazama.

Korak 2: Birajte




Brojčanik se sastoji od tri dijela (sloja) izrezana na stroju za lasersko rezanje od MDF lima debljine 3 mm, koji su međusobno pričvršćeni vijcima. Ploča bez utora (dolje desno na slici) postavlja se ispod druge ploče za postavljanje LED dioda (dolje lijevo). Zatim se pojedinačne LED diode postavljaju u odgovarajuće utore i Prednja ploča(gore na slici). Uz rub brojčanika izbušene su četiri rupe kroz koje se spajaju sva tri dijela.

  • Za testiranje učinkovitosti LED dioda u ovoj fazi korištena je CR2032 baterija u obliku novčića;
  • Za pričvršćivanje LED dioda korištene su male trake ljepljive trake koje su bile zalijepljene na stražnju stranu LED dioda;
  • Sve LED noge su prethodno savijene u skladu s tim;
  • Ponovno su izbušene rupe duž rubova kroz koje je izvedeno pričvršćivanje. Ispostavilo se da je to mnogo zgodnije.

Tehnički crtež dijelova brojčanika dostupan je na:

Korak 3: Dizajnirajte krug



U ovoj fazi je razvijen električni dijagram. U tu svrhu korišteni su razni udžbenici i vodiči. Nećemo previše ulaziti u ovaj proces; dvije datoteke u nastavku prikazuju gotov električni krug koji je korišten u ovom projektu.

Korak 4: Spajanje Arduino ploče





  1. Prvi korak je odlemiti sve igličaste kontakte na sklopnim pločama i sekcijskim pločama;
  2. Nadalje, zbog činjenice da 5V napajanje i GND koristi toliko mnogo ploča i periferni uređaji, za pouzdanost, dvije žice za 5V i GND lemljene su na ploči;
  3. Zatim je pored korištenih kontakata instaliran TLC5940 PWM kontroler;
  4. Zatim je kontroler TLC5940 spojen prema dijagramu povezivanja;
  5. Kako bi se baterija mogla koristiti, na rubu tiskane ploče ugrađen je RTC modul. Ako ga zalemite na sredini ploče, oznake pinova neće biti vidljive;
  6. RTC modul je spojen prema dijagramu spajanja;
  7. Sastavljen je krug automatske kontrole svjetline (LDR), možete ga pogledati na poveznici
  8. Žice za voltmetar spajaju se spajanjem žica na pin 6 i GND.
  9. Na kraju je zalemljeno 13 žica za LED diode (u praksi se pokazalo da je to bolje učiniti prije prelaska na korak 3).

Korak 5: Kod

Kôd u nastavku sastavljen je od raznih dijelova satova pronađenih na internetu. U potpunosti je otklonjena pogreška i sada je potpuno funkcionalan, a dodani su i neki prilično detaljni komentari. Ali prije učitavanja u mikrokontroler, razmotrite sljedeće točke:

  • Prije Arduino firmware, trebate odkomentirati redak koji postavlja vrijeme:
    rtc.adjust(DatumVrijeme(__DATE__, __TIME__))
    Nakon bljeskanja kontrolera ovom linijom (vrijeme je postavljeno), morate ga ponovno komentirati i ponovno bljeskati kontroler. To RTC modulu omogućuje korištenje baterije za pamćenje vremena ako se izgubi glavno napajanje.
  • Svaki put kada koristite "Tlc.set()" morate koristiti "Tlc.update"

Korak 6: Vanjski prsten

Vanjski prsten sata je 3D isprintan pomoću Replicator Z18 pisača. Pričvršćuje se na sat pomoću vijaka na prednjoj strani sata. Ispod je datoteka s 3D modelom prstena za ispis na 3D printeru.

Korak 7: Sastavljanje sata


Arduino mikrokontroler sa svom ostalom elektronikom pričvršćen je na stražnju stranu sata pomoću vijaka i matica kao odstojnika. Zatim sam spojio sve LED diode, analogni voltmetar i LDR na žice koje su prethodno bile zalemljene na pločicu. Sve LED diode su međusobno povezane jednim krakom i spojene na VCC pin na kontroleru TLC5940 (komad žice se jednostavno zalemi u krug).

Iako sve ovo nije jako dobro izolirano od kratki spojevi, no rad na tome nastavit će se u budućim verzijama.

Najbolji članci na temu