Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Windows 7, XP
  • Sat uradi sam na LED indikatorima. Sat na AVR mikrokontroleru sa DS1307

Sat uradi sam na LED indikatorima. Sat na AVR mikrokontroleru sa DS1307

Kao što naziv govori, glavna svrha ovog uređaja je da sazna trenutno vrijeme i datum. Ali ima mnogo drugih korisnih karakteristika. Ideja o njegovom stvaranju pojavila se nakon što sam naišao na polupolomljen sat sa relativno velikim (za ručni zglob) metalnim kućištem. Mislio sam da bih tu mogao ubaciti domaći sat čije su mogućnosti ograničene samo mojom vlastitom maštom i vještinom. Kao rezultat toga, pojavio se uređaj sa sljedećim funkcijama:

1. Sat - kalendar:

    Odbrojavanje i prikaz na indikatoru sati, minuta, sekundi, dana u sedmici, dana, mjeseca, godine.

    Dostupnost automatske korekcije trenutnog vremena, koja se vrši svakog sata (maksimalne vrijednosti +/- 9999 jedinica, 1 jedinica = 3,90625 ms.)

    Izračunavanje dana u sedmici po datumu (za tekući vijek)

    Automatski prelazak na ljetno i zimsko računanje vremena (mogućnost prebacivanja)

  • Prijestupne godine se uzimaju u obzir

2. Dva nezavisna alarma (melodija se oglašava kada se aktivira)
3. Tajmer sa diskretnošću od 1 sek. (Maksimalno vrijeme odbrojavanja 99h 59m 59s)
4. Dvokanalna štoperica sa brzinom brojanja od 0,01 sek. (maksimalno vrijeme brojanja 99h 59m 59s)
5. Štoperica sa brzinom brojanja od 1 sekunde. (maksimalno vrijeme brojanja 99 dana)
6. Termometar u rasponu od -5°C. do 55°C (ograničeno temperaturnim opsegom normalnog rada uređaja) u koracima od 0,1°C.
7. Čitač i emulator elektronskih ključeva - tableti tipa DS1990 koji koriste Dallas 1-Wire protokol (memorija za 50 komada, u kojoj već postoji nekoliko univerzalnih "all-terrain ključeva") sa mogućnošću pregleda bajta šifre ključa .
8. IR daljinski upravljač (implementirana je samo komanda "Snimi sliku") za digitalne fotoaparate "Pentax", "Nikon", "Canon"
9. LED lampa
10.7 melodije
11. Zvučni signal na početku svakog sata (prekidač)
12. Zvučna potvrda pritiskanja dugmadi (preklopna)
13. Praćenje napona baterije sa funkcijom kalibracije
14. Digitalno podešavanje svjetline indikatora

Možda je ova funkcionalnost suvišna, ali volim univerzalne stvari, eto, plus moralna satisfakcija što će ovaj sat biti napravljen ručno.

Šematski dijagram sata

Uređaj je baziran na mikrokontroleru ATmega168PA-AU. Sat otkucava prema T2 tajmeru, koji radi u asinhronom režimu od kvarca sata na 32768 Hz. Mikrokontroler je skoro sve vreme u režimu mirovanja (indikator je isključen), budi se jednom u sekundi da bi dodao ovu sekundu trenutnom vremenu i ponovo zaspi. U aktivnom modu, MC je taktiran od internog RC oscilatora na 8 MHz, ali ga interni predskaler dijeli sa 2, kao rezultat toga, jezgra je taktovana sa 4 MHz. Za indikaciju se koriste četiri jednoznamenkasta LED digitalna sedmosegmentna indikatora sa zajedničkom anodom i decimalnim zarezom. Postoji i 7 statusnih LED dioda čija je namjena sljedeća:
D1- Znak negativne vrijednosti (minus)
D2- Znak štoperice u radu (treperi)
D3- Znak uključenog prvog budilnika
D4- Znak uključenog drugog budilnika
D5- Znak zvučne signalizacije na početku svakog sata
D6- Znak uključenog tajmera (treperi)
D7- Znak niskog napona baterije

R1-R8 - otpornici za ograničavanje struje segmenata digitalnih indikatora HG1-HG4 i LED dioda D1-D7. R12, R13 - razdjelnik za kontrolu napona akumulatora. S obzirom da je napon napajanja sata 3V, a bijeloj LED D9 potrebno oko 3,4-3,8V pri nazivnoj potrošnji struje, ne svijetli punom snagom (ali je dovoljno da se ne spotakne u mraku) i stoga se povezuje bez otpornik za ograničavanje struje. Elementi R14, Q1, R10 su dizajnirani za upravljanje D8 infracrvenim LED diodama (implementacija daljinskog upravljanja za digitalne kamere). R19, ​​R20, R21 se koriste za povezivanje pri komunikaciji sa uređajima koji imaju 1-Wire interfejs. Upravljanje se vrši pomoću tri dugmeta, koje sam uslovno nazvao: MODE (režim), UP (gore), DOWN (dolje). Prvi od njih je takođe dizajniran da probudi MC eksternim prekidom (dok se indikacija uključi), tako da se posebno povezuje na PD3 ulaz. Pritiskom na ostale tipke određuje se ADC i otpornici R16, R18. Ako se dugmad ne pritisne u roku od 16 sekundi, MK zaspi i indikator se gasi. Kada je u modu "Daljinski upravljač za kamere" ovaj interval je 32 sekunde, a sa uključenom baterijskom lampom 1 minut. MK se također može staviti u stanje mirovanja ručno pomoću kontrolnih tipki. Kada štoperica radi sa brzinom od 0,01 sek. uređaj ne ulazi u stanje mirovanja.

Štampana ploča

Uređaj je sastavljen na dvostranoj štampanoj ploči okruglog oblika kako bi odgovarao unutrašnjem prečniku kućišta ručnog sata. Ali u proizvodnji sam koristio dvije jednostrane ploče debljine 0,35 mm. Ova debljina je ponovo dobijena ljuštenjem od dvostranog stakloplastike debljine 1,5 mm. Zatim je zalijepio daske. Sve je to urađeno jer nisam imao tanki dvostrani fiberglas, a svaki ušteđeni milimetar debljine u ograničenom unutrašnjem prostoru kućišta sata je vrlo vrijedan i nije bilo potrebe da ga kombinujem u proizvodnji štampanih provodnika koristeći LUT metoda. Crtež PCB-a i lokacija dijelova nalaze se u priloženim datotekama. Na jednoj strani nalaze se indikatori i otpornici za ograničavanje struje R1-R8. Na poleđini - svi ostali detalji. Postoje dvije prolazne rupe za bijele i infracrvene LED diode.

Kontakti dugmadi i držača baterije izrađeni su od fleksibilnog, elastičnog čeličnog lima debljine 0,2 ... 0,3 mm. i konzervirano. Ispod su fotografije ploče sa obje strane:

Konstrukcija, dijelovi i njihova moguća zamjena

Mikrokontroler ATmega168PA-AU može se zamijeniti sa ATmega168P-AU, ATmega168V-10AU ATmega168-20AU. Digitalni indikatori - 4 komada KPSA02-105 super jarko crvene boje visine 5,08 mm. Može se isporučiti iz iste serije KPSA02-xxx ili KCSA02-xxx. (samo ne zeleno - slabo će svijetliti) Ne znam za druge analoge sličnih veličina sa pristojnom svjetlinom. Kod HG1, HG3 katodna veza segmenata se razlikuje od HG2, HG4, jer mi je bilo zgodnije da postavim štampanu ploču. U tom smislu, za njih se u programu koristi drugačija tabela generatora znakova. Korišteni otpornici i kondenzatori SMD za površinsku montažu standardnih veličina 0805 i 1206, LED D1-D7 standardne veličine 0805. Bijele i infracrvene LED diode prečnika 3mm. Ploča ima 13 prolaznih rupa u koje je potrebno ugraditi kratkospojnike. Kao senzor temperature korišten je DS18B20 sa 1-Wire interfejsom. LS1 je konvencionalna piezoelektrična sirena koja se uklapa u poklopac. Jednim kontaktom se spaja na ploču uz pomoć opruge koja je na njoj ugrađena, a drugim se samim poklopcem spaja na kućište sata. Kvarcni rezonator od ručnog sata.

Programiranje, firmver, osigurači

Za programiranje unutar kola, ploča ima samo 6 okruglih kontaktnih pinova (J1), budući da potpuni konektor ne stane u visinu. Povezao sam ih sa programatorom pomoću kontakt uređaja od PLD2x3 pin utikača i zalemio na njih oprugama, pritiskajući ih jednom rukom na mjesta. Ispod je fotografija uređaja.

Koristio sam ga jer sam tokom procesa otklanjanja grešaka morao mnogo puta da ponovo flešujem MK. Uz jednokratni firmver, lakše je zalemiti tanke žice povezane s programatorom na zakrpe, a zatim ponovo odlemiti. Pogodnije je flešovati MK bez baterije, ali tako da napajanje dolazi ili iz vanjskog + 3V izvora, ili iz programatora s istim naponom napajanja. Program je napisan na asembleru u VMLAB 3.15 okruženju. Izvorni kodovi, firmver za FLASH i EEPROM u aplikaciji.

FUSE bitovi mikrokontrolera DD1 moraju se programirati na sljedeći način:
CKSEL3 ... 0 = 0010 - taktiranje od internog RC oscilatora 8 MHz;
SUT1 ... 0 = 10 - Vrijeme pokretanja: 6 CK + 64 ms;
CKDIV8 = 1 - djelitelj frekvencije sa 8 je onemogućen;
CKOUT = 1 - Izlazni sat na CKOUT je onemogućen;
BODLEVEL2… 0 = 111 - kontrola napona napajanja je onemogućena;
EESAVE = 0 - brisanje EEPROM-a tokom programiranja čipa je zabranjeno;
WDTON = 1 - Nema stalne aktivacije Watchdog Timera;
Bolje je ne dirati ostale dijelove FUSE. FUSE – bit je programiran ako je postavljen na “0”.

EEPROM treperi sa dumpom priloženim u arhivi.

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

Adresa ćelije

Imenovanje

Parametar

Bilješka

Količina napona baterije pri kojoj se javlja signal slabe baterije

260 (104 dolara) (2,6 V)

koeficijent za korekciju vrijednosti izmjerenog napona baterije

vremenski interval za prelazak u stanje mirovanja

1 jedinica = 1 sek

vremenski interval za prelazak u režim mirovanja kada je lampa uključena

1 jedinica = 1 sek

vremenski interval za prelazak u režim mirovanja kada je u režimu daljinskog upravljanja za kamere

1 jedinica = 1 sek

Ovdje se pohranjuju brojevi ključeva IButtona.

Mala objašnjenja za tačke:

1 bod. Ovdje je prikazana vrijednost napona na bateriji, pri kojoj će se upaliti LED, signalizirajući njegovu nisku vrijednost. Postavio sam ga na 2.6V (parametar - 260). Ako vam treba nešto drugo, na primjer 2.4V, onda trebate napisati 240 ($ 00F0). Niži bajt se unosi u ćeliju na 0000 $, a visoki bajt u 0001 $.

2 bod. Pošto nisam ugradio varijabilni otpornik na ploču za podešavanje tačnosti mjerenja napona baterije zbog nedostatka prostora, uveo sam softversku kalibraciju. Procedura kalibracije za precizno mjerenje je sljedeća: u početku je u ovoj EEPROM ćeliji upisan faktor od 1024 ($ 400), potrebno je staviti uređaj u aktivni način rada i pogledati napon na indikatoru i odmah izmjeriti stvarni napon na bateriji voltmetrom. Faktor korekcije (K), koji se mora podesiti, izračunava se po formuli: K = Ur / Ui * 1024 gdje je Ur stvarni napon mjeren voltmetrom, Ui je napon koji mjeri sam uređaj. Nakon izračunavanja faktora "K", on se unosi u uređaj (kao što je opisano u uputstvu za upotrebu). Nakon kalibracije moja greška nije prelazila 3%.

3 pipsa Ovdje možete podesiti vrijeme nakon kojeg uređaj prelazi u stanje mirovanja ako se ne pritisne nijedno dugme. Košta me 16 sekundi. Ako trebate zaspati nakon 30 sekundi, onda morate zapisati 30 (26 dolara).

4 i 5 bodova su isti.

6 pipsa Adresa $ 0030 pohranjuje nulti ključ porodice (dallas 1-Wire), zatim njegov 48-bitni broj i CRC. I tako 50 ključeva u seriji.

Postavka, karakteristike rada

Postavljanje uređaja se svodi na kalibraciju mjerenja napona baterije kao što je gore opisano. Takođe je potrebno detektovati odstupanje sata za 1 sat, izračunati i uneti odgovarajuću vrednost korekcije (procedura je opisana u uputstvu za upotrebu).

Uređaj se napaja CR2032 (3V) litijumskom baterijom i troši oko 4 μA u režimu mirovanja i 5 ... 20 mA u aktivnom režimu, u zavisnosti od osvetljenosti indikatora. Uz svakodnevno petominutno korištenje aktivnog načina rada, baterija bi trebala biti dovoljna za oko 2....8 mjeseci, ovisno o svjetlini. Kućište sata je spojeno na minus baterije.

Očitavanje ključa je provjereno na DS1990. Emulacija je testirana na METAKOM interfonima. Serijski brojevi od 46 do 49 (zadnja 4) su spojeni (svi ključevi su pohranjeni u EEPROM, mogu se mijenjati prije treptanja) univerzalni ključevi za interfone. Ključ registrovan na broju 49 otvorio je sve METAKOM interfone na koje sam naišao, ostale univerzalne ključeve nisam mogao testirati, uzeo sam njihove kodove sa mreže.

Daljinski upravljač za kamere testiran na Pentax optio L20, Nikon D3000. Canon ga nije mogao natjerati da provjeri.

Korisnički priručnik ima 13 stranica, tako da ga nisam uključio u članak, već sam ga stavio u prilogu u PDF formatu.

Arhiva sadrži:
Shema u i GIF;
Crtanje štampane ploče i raspored elemenata u formatu;
Firmware i izvori u asembleru;

Spisak radioelemenata

Oznaka Tip Denominacija Količina BilješkaRezultatMoja sveska
DD1 MK AVR 8-bit

ATmega168PA

1 PA-AU U notepad
U2 senzor temperature

DS18B20

1 U notepad
Q1 MOSFET tranzistor

2N7002

1 U notepad
C1, C2 Kondenzator30 pF2 U notepad
C3, C4 Kondenzator0,1 uF2 U notepad
C5 Elektrolitički kondenzator47 uF1 U notepad
R1-R8, R17 Otpornik

100 ohma

9 U notepad
R9 Otpornik

10 kΩ

1 U notepad
R10 Otpornik

8.2 Ohm

1 U notepad
R11 Otpornik

300 Ohm

1 U notepad
R12 Otpornik

2 MOhm

1 U notepad
R13 Otpornik

220 kΩ

1 U notepad
R14 Otpornik

30 kΩ

1 U notepad
R15, R19 Otpornik

4,7 k Ohm

2 U notepad
R16 Otpornik

20 kΩ

1

Ručni sat sa indikatorom vakuuma, izrađen u steampunk stilu. Materijal preuzet sa www.johngineer.com. Ovaj ručni sat je baziran na IVL-2 displeju. U početku sam kupio nekoliko ovih indikatora kako bih napravio standardni stoni sat, ali nakon razmišljanja shvatio sam da možete napraviti i moderan ručni sat. Indikator ima niz karakteristika koje ga čine pogodnijim za ovu svrhu od većine drugih sovjetskih displeja. Evo parametara:

  • Nominalna struja filamenta je 60mA 2.4V, ali radi sa 35mA 1.2V.
  • Mala veličina - samo 1,25 x 2,25 "
  • Može raditi sa relativno niskim naponom mreže 12V (do 24)
  • Troši samo 2,5 mA / segment na 12,5 V

Sve slike se mogu povećati klikom na njih. Najveća prepreka uspješnom završetku projekta bila je hrana. Pošto je ovaj sat zamišljen kao dio odijela, nije bitno što baterija traje samo 10 sati. Zaustavljen zbog AA i AAA.

Krug je prilično jednostavan. Atmel AVR ATMega88 mikrokontroler, i sat realnog vremena - DS3231. Ali postoje i druge IC-ove, mnogo jeftinije, koje će jednako dobro raditi u generatoru.

VFD pokreće MAX6920 - 12-bitni pomakni registar sa visokim naponom (do 70V) izlazima. Jednostavan je za korištenje, vrlo pouzdan i kompaktan. Takođe je moguće da drajver ekrana zalemi gomilu diskretnih komponenti zajedno, ali to je bilo nepraktično zbog ograničenja prostora.

Napon baterije također napaja pojačivač od 5 V (MCP1640 SOT23-6), koji je neophodan da bi AVR, DS3231 i MAX6920 pravilno funkcionisali, a također djeluje i kao ulazni napon za drugi pojačivač (NCP1403 SOT23-5), koji proizvodi 13V za mrežni napon indikatora vakuuma.

Sat ima tri senzora: jedan analogni i dva digitalna. Analogni senzor je fototranzistor i koristi se za detekciju nivoa svjetlosti (Q2). Digitalni senzori: BMP180 - pritisak i temperatura, i MMA8653 - akcelerometar za detekciju pokreta. Oba digitalna senzora su povezana preko I2C magistrale na DS3231.

Mesingane cijevi su zalemljene za ljepotu i štite stakleni zaslon ručnog sata, a za pričvršćivanje kožnog remena koriste se bakrene žice debljine 2 mm. Kompletan šematski dijagram nije dat u originalnom članku - pogledajte vezu preko tablica sa navedenim mikro krugovima.

Skrećem vam pažnju elektronski mikrokontrolerski sat... Satni sklop je vrlo jednostavan, sadrži minimum detalja i dostupan je za ponavljanje za početnike radio amatere.

Dizajn je sastavljen na mikrokontroleru i satu realnog vremena DS1307... Kao indikator trenutnog vremena koristi se četvorocifreni LED indikator sa sedam segmenata (ultra-svetla, plava boja sjaja, koja dobro izgleda u mraku, a istovremeno sat igra ulogu noći svjetlo). Satom se upravlja pomoću dva dugmeta. Zahvaljujući upotrebi mikrokruga sata realnog vremena DS1307, algoritam programa je prilično jednostavan. Komunikacija između mikrokontrolera i sata realnog vremena odvija se preko I2C magistrale, a organizirana je softverom.

Šema sata:

Nažalost, postoji greška u šemi:
- zaključci MK-a na baze tranzistora moraju biti povezani:
PB0 do T4, PB1 do T3, PB2 do T2, PB3 do T1
ili promijenite vezu kolektora tranzistora na indikator pražnjenja:
T1 do DP1 ... .. T4 do DP4

Detalji korišteni u dijagramu sata:

♦ ATtiny26 mikrokontroler:

♦ Sat realnog vremena DS1307:

♦ 4-cifreni LED indikator sa sedam segmenata - FYQ-5641UB -21 sa zajedničkom katodom (ultra svijetla, plava boja svjetla):

♦ kvarc 32,768 kHz, sa ulaznim kapacitetom od 12,5 pF (može se preuzeti sa matične ploče računara), tačnost sata zavisi od ovog kvarca:

♦ svi tranzistori - NPN-strukture, možete koristiti bilo koje (KT3102, KT315 i njihove strane kolege), koristio sam BC547S
♦ Stabilizator napona mikrokola tip 7805
♦ svi otpornici snage 0,125 vati
♦ polarni kondenzatori za radni napon koji nije niži od napona napajanja
♦ rezervno napajanje za DS1307 - 3V litijumske ćelije CR2032

Za napajanje sata možete koristiti bilo koji nepotreban punjač za mobilni telefon (u ovom slučaju, ako je napon na izlazu punjača unutar 5 volti ± 0,5 volti, dio kruga je regulator napona na mikrokrugu 7805, možete isključiti)
Potrošnja struje uređaja je - 30 mA.
Rezervna baterija za sat DS1307 možda neće biti instalirana, ali će tada, u slučaju nestanka struje, morati ponovo da se podesi trenutno vreme.
Štampana ploča uređaja nije prikazana, struktura je sastavljena u kućištu od neispravnog mehaničkog sata. LED (sa frekvencijom treptanja od 1 Hz, sa izlaza SQW DS1307) služi za odvajanje sati i minuta na indikatoru.

Fabričke postavke mikrokontrolera: frekvencija takta - 1 MHz, FUSE-bitovi se ne moraju dirati.

Algoritam sata(u Algoritam Builder):

1. Postavljanje pokazivača steka
2. Podešavanje tajmera 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 konfigurisani za izlaz, PA7 i PB6 za ulaz)
4. Inicijalizacija I2C sabirnice (pinovi PB4 i PB5)
5. Provjera 7. bita (CH) nultog registra DS1307
6. Globalni prekid prekida
7. Ulazak u ciklus provjerom pritiska na tipku

Kada se prvi put uključi, ili kada se ponovo uključi bez rezervnog napajanja DS307, vraća se na početnu postavku trenutnog vremena. U ovom slučaju: dugme S1 - za podešavanje vremena, dugme S2 - prelazak na sledeću cifru. Podešeno vreme - sati i minuti se snimaju u DS1307 (sekunde su postavljene na nulu), a SQW / OUT pin (7. pin) je podešen da generiše kvadratne impulse frekvencije od 1 Hz.
Pritiskom na dugme S2 (S4 - u programu) globalno se zabranjuju prekidi, program prelazi u potprogram za korekciju vremena. Istovremeno, desetice i jedinice minuta se postavljaju pomoću dugmadi S1 ​​i S2, a zatim, od 0 sekundi, pritiskom na dugme S2 bilježi se ažurirano vrijeme u DS1307, dozvoljava globalni prekid i vraća se na glavni program.

Sat je pokazao dobru tačnost, vremenski pomak mjesečno je bio 3 sekunde.
Da bi se poboljšala tačnost, preporučuje se povezivanje kvarca na DS1307, kao što je navedeno u tablici sa podacima:

Program je napisan u okruženju "Algorithm Builder".
Koristeći program sata kao primjer, možete se upoznati s algoritmom za komunikaciju između mikrokontrolera i drugih uređaja putem I2C magistrale (svaka linija je detaljno komentarisana u algoritmu).

Fotografija sklopljenog uređaja i štampane ploče u .lay formatu od čitaoca sajta Anatolija Pilguka, na čemu mu veliko hvala!

Uređaj koristi: Tranzistori - SMD VS847 i CHIP otpornici

Prilozi uz članak:

(42,9 KiB, 3,038 pogodaka)

(6,3 KiB, 4,058 pogodaka)

(3,1 KiB, 2,500 pogodaka)

(312,1 KiB, 5,833 pogodaka)


Druga verzija programa sata u AB (za one koji nemaju gornju)

(11,4 KiB, 1,842 pregleda)

Jednostavni LED satovi se mogu napraviti sa jeftinim PIC16F628A kontrolerom. Naravno, prodavnice su prepune raznih elektronskih satova, ali shodno njihovoj funkciji, možda im nedostaje termometar ili budilnik, ili ne svetle u mraku. I općenito, ponekad proto želi nešto sam zalemiti, a ne kupiti gotovo. Za uvećanje dijagrama dijagrama - kliknite.

Ponuđeni satovi imaju kalendar. Ima dvije opcije za prikaz datuma - mjesec u cifri ili slogu, sve se to konfiguriše nakon unosa datuma daljinskim prebacivanjem pomoću dugmeta S1 dok je prikazan željeni parametar, termometar. postoje firmveri za različite senzore. Pogledajte uređaj u kućištu:


Svi znaju da kvarcni rezonatori nisu savršeni u smislu tačnosti i u roku od nekoliko sedmica se nakuplja greška. Za borbu protiv ovog slučaja, sat predviđa korekciju hoda, koja je postavljena parametrima SH i SL... Više detalja:

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

Na ovaj način se može postići savršena tačnost. Iako ćete morati nekoliko puta voziti korekciju dok je ne postavite savršeno. A sada je jasno prikazan rad elektronskog sata:

temperatura 29 stepeni Celzijusa

Kao indikatore, možete staviti ili LED digitalne sklopove, koji su naznačeni na samom dijagramu, ili ih zamijeniti običnim okruglim super svijetlim LED diodama - tada će ovaj sat biti vidljiv izdaleka i može se objesiti čak i na ulici.

Sat sa LED pozadinskim osvetljenjem i pulsirajućom minutnom kazaljkom na Arduino mikrokontroleru
Ovaj jedinstveni sat sa LED pozadinskim osvetljenjem i pulsirajućom minutnom kazaljkom napravljen je pomoću TLC5940 PWM kontrolera. Njegov glavni zadatak je povećanje broja kontakata sa PWM modulacijom. Još jedna karakteristika ovog sata je pretvoreni analogni voltmetar u uređaj koji mjeri minute. Za to je nova skala odštampana na standardnom štampaču i zalijepljena preko stare. Kao takav, 5. minuta se ne računa, već samo tokom petog minuta brojač vremena pokazuje strelicu koja se nalazi na kraju skale (ilazi van skale). Glavna kontrola je implementirana na Arduino Uno mikrokontroleru.

Kako pozadinsko osvjetljenje sata ne bi svijetlilo previše jako u mračnoj prostoriji, implementirano je kolo za automatsko podešavanje svjetline ovisno o osvjetljenju (korišten je fotootpornik).

Korak 1: Potrebne komponente



Evo šta vam treba:

  • Analogni voltmetarski modul za 5V DC;
  • Arduino UNO mikrokontroler ili drugi odgovarajući Arduino;
  • Arduino ploča (proto ploča);
  • DS1307 Sat realnog vremena (RTC);
  • Modul sa PWM kontrolerom TLC5940;
  • Latice LED za rasvjetu - 12 kom.;
  • Komponente za sklapanje kola za automatsku kontrolu svjetline (LDR).

Takođe, za izradu nekih drugih komponenti projekta poželjno je imati pristup 3D štampaču i mašini za lasersko sečenje. Pretpostavlja se da imate ovaj pristup, stoga će crteži za proizvodnju biti priloženi uputstvima u odgovarajućim fazama.

Korak 2: Birajte




Brojčanik se sastoji od tri dijela (sloja) izrezana na mašini za lasersko sečenje od MDF lima debljine 3 mm, koji su međusobno pričvršćeni vijcima. Ploča bez proreza (dolje desno na slici) je postavljena ispod druge LED ploče za pozicioniranje (dolje lijevo). Zatim se pojedinačne LED diode postavljaju u odgovarajuće žljebove, a prednja ploča se postavlja na vrh (gore na slici). Oko ruba brojčanika su izbušene četiri rupe kroz koje su sva tri dijela spojena vijcima.

  • Za testiranje performansi LED dioda u ovoj fazi, korištena je CR2032 dugmasta baterija;
  • Za fiksiranje LED dioda korištene su male trake ljepljive trake koje su zalijepljene na stražnjoj strani LED dioda;
  • Sve LED noge su prethodno savijene na odgovarajući način;
  • Rupe su ponovo izbušene na ivicama i pričvršćene vijcima. Ispostavilo se da je mnogo zgodnije.

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

Korak 3: Dizajnirajte krug



U ovoj fazi razvijeno je električno kolo. Za to su korišteni različiti tutorijali i vodiči. Nećemo ulaziti duboko u ovaj proces, dvije datoteke ispod pokazuju gotov električni krug koji je korišten u ovom projektu.

Korak 4: Povezivanje Arduino ploče





  1. Prvi korak je da odlemite sve iglene kontakte na pločama sa električnim kolom i na graničnim pločama;
  2. Nadalje, zbog činjenice da mnoge ploče i periferije koriste 5V i GND napajanje, radi pouzdanosti, dvije žice za 5V i GND su zalemljene na ploči;
  3. Zatim je pored korišćenih pinova instaliran TLC5940 PWM kontroler;
  4. Nakon toga, TLC5940 kontroler se povezuje, prema dijagramu povezivanja;
  5. Da bi se baterija mogla koristiti, RTC modul je instaliran na rubu ploče. Ako ga zalemite na sredini ploče, tada oznaka kontakata neće biti vidljiva;
  6. RTC modul je povezan prema dijagramu povezivanja;
  7. Krug automatske kontrole svjetline (LDR) je sklopljen, možete ga pronaći na linku
  8. Žice za voltmetar su povezane 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 nego što nastavite s korakom 3).

Korak 5: programski kod

Donji kod je sastavljen od različitih dijelova satova koji se nalaze na internetu. U potpunosti je otklonjena greška i sada je potpuno funkcionalna, plus dodani su neki prilično detaljni komentari. Ali prije učitavanja u mikrokontroler, razmotrite sljedeće točke:

  • Prije flešovanja Arduina, morate dekomentirati red koji postavlja vrijeme:
    rtc.adjust (DateTime (__ DATE__, __TIME__))
    Nakon bljeskanja kontrolera sa ovom linijom (vrijeme je podešeno), potrebno ga je ponovo prokomentirati i ponovo flešovati kontroler. Ovo omogućava RTC-u da koristi bateriju za praćenje vremena u slučaju nestanka glavnog napajanja.
  • Svaki put kada koristite "Tlc.set ()" morate koristiti "Tlc.update"

Korak 6: vanjski prsten

Vanjski prsten sata je 3D štampan na Replicatoru Z18. Pričvršćuje se na sat vijcima na prednjoj strani sata. Ispod je fajl sa 3D modelom prstena za štampanje na 3D štampaču.

Korak 7: Sastavljanje sata


Arduino mikrokontroler sa svom ostatkom elektronike bio je pričvršćen na poleđini sata sa zavrtnjima i maticama kao odstojnicima. Zatim se sve LED diode, analogni voltmetar i LDR spajaju na žice koje su prethodno bile zalemljene na pločicu. Sve LED diode su međusobno povezane jednom nogom i spojene na VCC pin na TLC5940 kontroleru (samo je komad žice zalemljen u krug).

Sve ovo do sada nije dobro izolovano od kratkih spojeva, ali će se radovi na tome nastaviti u narednim verzijama.

Top srodni članci