KLELL

On neid, kes loevad seda uudist enne sind.
Tellige värskete artiklite saamiseks.
Meil
Nimi
Perekonnanimi
Kuidas soovite kellukest lugeda?
Rämpsposti pole

Fotol on prototüüp, mille panin kokku kogu seda rajatist haldava programmi silumiseks. Leivaplaadi paremas ülanurgas olev teine ​​arduino nano ei kuulu projekti ja kleepub seal niisama välja, sa ei pea sellele tähelepanu pöörama.

Natuke tööpõhimõttest: Arduino võtab DS323 taimerist andmed, töötleb neid, määrab fototakisti abil valguse taseme, seejärel saadab kõik MAX7219-le ja see omakorda sütitab vajalikud segmendid vajaliku heledusega. Lisaks saate kolme nupuga määrata aasta, kuu, päeva ja kellaaja vastavalt soovile. Fotol näitavad indikaatorid aega ja temperatuuri, mis on võetud digitaalsest temperatuuriandurist

Minu puhul on peamiseks raskuseks see, et 2,7-tollistel indikaatoritel on ühine anood ja nad pidid esiteks kuidagi sõbrustama max7219-ga, mis on mõeldud ühise katoodiga indikaatorite jaoks, ja teiseks lahendama probleemi oma toiteallikas, kuna nad vajavad hõõgumiseks 7,2 volti, mida max7219 üksi ei suuda pakkuda. Olles ühes foorumis abi küsinud, sain vastuse.

Lahendus ekraanipildil:


Segmentide väljunditele max7219-st on kinnitatud signaali inverteeriv mikroskeem ja igale tihvtile, mis tuleks ühendada kuvari ühiskatoodiga, on kolmest transistorist koosnev ahel, mis ühtlasi inverteerivad selle signaali ja tõstavad pinget. Nii saame võimaluse ühendada max7219-ga ühise anoodi ja üle 5-voldise toitepingega kuvarid.

Ühendasin testi jaoks ühe indikaatori, kõik töötab, midagi ei suitse

Alustame kogumist.

Otsustasin jagada vooluringi kaheks osaks, kuna minu kõverate käppadega eraldatud versioonis oli tohutult palju hüppajaid, kus kõik oli ühel laual. Kell koosneb kuvaseadmest ning toite- ja juhtplokist. Viimased otsustati enne kokku korjata. Palun esteetidel ja kogenud raadioamatööridel osade julma kohtlemise tõttu mitte minestada. Printerit mul LUTi pärast osta pole, seega teen seda vanaviisi - harjutan paberil, puurin šablooni järgi augud, joonistan markeriga teed, siis söövitan.

Näidikute kinnitamise põhimõte jäi samaks, mis peal.

Märgistame indikaatorite ja komponentide asukoha mugavuse huvides valmistatud pleksiklaasist malli abil.

Märgistusprotsess







Seejärel puurime šablooni abil õigetesse kohtadesse augud ja proovime kõik komponendid peale. Kõik sobis ideaalselt.

Joonistame radu ja söövitame.




raudkloriidis suplemine

Valmis!
juhtpaneel:


näidustustahvel:


Juhtpaneel tuli suurepärane, näidikuplaadi rada ei olnud kriitiliselt ära söödud, saab parandada, on aeg jootma. Seekord kaotasin SMD süütuse ja lülitasin ahelasse 0805 komponendid. Vähemalt said esimesed takistid ja kondensaatorid paika joodetud. Ma arvan, et saan sellega paremaks, siis läheb lihtsamaks.
Jootmiseks kasutasin ostetud räbustit. Sellega jootmine on rõõm, nüüd kasutan piirituskampolit ainult tinatamiseks.

Siin on valmis lauad. Juhtpaneelil on iste Arduino nano jaoks, kell, samuti väljundid kuvaplaadi ja anduritega ühendamiseks (fototakisti automaatse heleduse jaoks ja digitaalne termomeeter ds18s20) ning reguleeritava väljundpingega toiteallikas (suurte seitsmesegmendiliste seadmete jaoks) ja kella toiteks. ja Arduino, ekraaniplaadil on paigalduspesad kuvaritele, pistikupesad max2719 ja uln2003a jaoks, lahendus nelja suure seitsmesegmendilise seadme toiteks ja hunnik džempreid.




tagumine juhtpaneel

Tagumine kuvalaud:

Kohutav smd installimine:


Käivitage

Pärast kõigi kaablite, nuppude ja andurite jootmist on aeg see kõik sisse lülitada. Esimene käivitamine paljastas mitmeid probleeme. Viimane suur indikaator ei põlenud ja ülejäänud helendasid tuhmilt. Esimese probleemiga tegelesin SMD transistori jala jootmisega ja teisega - lm317 poolt toodetud pinge reguleerimisega.
SEE ON ELUS!

Müügil leiate palju erinevaid mudeleid ja elektrooniliste digitaalkellade võimalused, kuid enamik neist on mõeldud kasutamiseks siseruumides, kuna numbrid on väikesed. Kuid mõnikord on vaja kella asetada tänavale - näiteks maja seinale või staadionile, väljakule, st sinna, kus see on paljudele inimestele kaugelt nähtav. Selleks töötati välja ja monteeriti edukalt kokku see suure LED-kella skeem, mille külge saab ühendada (läbi sisemiste transistorlülitite) LED indikaatoreid vastavalt soovile. suur suurus. Suurendada skemaatiline diagramm võite sellel klõpsata:

Kella kirjeldus

  1. Vaata. Selles režiimis on standardne ajakuva. Kella täpsuses on digitaalne korrektsioon.
  2. Termomeeter. Sel juhul mõõdab seade ühest andurist ruumi või välisõhu temperatuuri. Vahemikus -55 kuni +125 kraadi.
  3. Toiteallika juhtimine on ette nähtud.
  4. Näitab vaheldumisi teavet indikaatori kohta - kell ja termomeeter.
  5. Seadete ja seadistuste salvestamiseks, kui 220 V pinge kaob, kasutatakse püsimälu.


Seadme aluseks on ATMega8 MK, mis vilgub kaitsmete seadistamisega vastavalt tabelile:

Töötamine ja kella haldamine

Kella esmakordsel sisselülitamisel ilmub ekraanile reklaamkuva, misjärel lülitub see kellaaja kuvamisele. Nupu vajutamine SET_TIME indikaator läheb põhirežiimist ringikujuliselt:

  • minutite ja sekundite kuvamisrežiim. Kui selles režiimis vajutate samaaegselt nuppu PLUSS Ja MIINUS, siis sekundid lähtestatakse;
  • praeguse kellaaja minutite määramine;
  • praeguse kella seadistamine;
  • sümbol t. Kella kuvamise kestuse määramine;
  • sümbol o. Välise temperatuuri näidu sümbolite kuvamisaeg (väljas);
  • kella täpsuse igapäevase korrigeerimise hulk. Sümbol c ja parandusväärtus. Piirangute seadmine -25 kuni 25 sek. Valitud väärtus lisatakse või lahutatakse praegusest kellaajast iga päev kell 0 tundi 0 minutit ja 30 sekundit. Lisateabe saamiseks lugege püsivara ja trükkplaadi failidega arhiivis olevaid juhiseid.

Kella seadmine

Nuppe all hoides PLUSS/MIINUS Teeme väärtuste kiirendatud seadistust. Pärast seadete muutmist kirjutatakse 10 sekundi pärast uued väärtused püsimällu ja neid loetakse sealt, kui toide uuesti sisse lülitatakse. Uued sätted jõustuvad installimise ajal. Mikrokontroller jälgib põhitoite olemasolu. Kui see on välja lülitatud, saab seade toite sisemisest allikast. Üleliigse toitemooduli diagramm on näidatud allpool:


Voolutarbimise vähendamiseks lülitatakse indikaator, andurid ja nupud välja, kuid kell ise jätkab aja lugemist. Niipea kui 220 V võrgupinge ilmub, taastuvad kõik näidufunktsioonid.


Kuna seade loodi suure LED-kellana, on sellel kaks ekraani: suur LED - tänava jaoks ja väike LCD - põhiekraani hõlpsaks seadistamiseks. Suur ekraan asub juhtseadmest mitme meetri kaugusel ja on ühendatud kahe 8-juhtmelise kaabliga. Välise indikaatori indikaatori anoodide juhtimiseks kasutatakse transistorlüliteid vastavalt arhiivis toodud skeemile. Projekti autorid: Aleksandrovitš & SOIR.

See kell on kokku pandud tuntud kiibistikule - K176IE18 (kellasignaali generaatoriga kella kahendloendur),

K176IE13 (kellaloendur koos äratusega) ja K176ID2 (binaar- ja seitsmesegmendiline koodimuundur)

Toite sisselülitamisel kirjutatakse U2 kiibi tundide ja minutite loendurisse ning äratuskella mäluregistrisse automaatselt nullid. Paigaldamiseks

aega, vajutage nuppu S4 (aja määramine) ja hoidke seda all vajutage nuppu S3 (tund) - tundide määramiseks või S2 (min) - seadistamiseks

minutit. Sel juhul hakkavad vastavate näidikute näidud muutuma sagedusega 2 Hz vahemikus 00 kuni 59 ja seejärel uuesti 00. Ülemineku hetkel

59-lt 00-ni tõuseb tunniloendur ühe võrra. Äratuse aja määramine on sama, peate seda lihtsalt hoidma

nupp S5 (alarm Set). Pärast äratuse aja määramist peate äratuse sisselülitamiseks vajutama nuppu S1 (kontaktid

suletud). Nuppu S6 (Lähtesta) kasutatakse minutinäitajate sundimiseks lähtestamiseks seadistamise ajal 00-le. Valgusdioodid D3 ja D4 mängivad rolli

jagavad punktid, mis vilguvad sagedusega 1 Hz. Diagrammil asuvad digitaalsed indikaatorid õiges järjekorras, st. tule esikohale

tunninäidikud, kaks jaotuspunkti (LED-id D3 ja D4) ja minutinäitajad.

Kell kasutas takisteid R6-R12 ja R14-R16 võimsusega 0,25 W, ülejäänud 0,125 W. Kvartsresonaator XTAL1 sagedusel 32 768 Hz -

tavaline kell, KT315A transistorid saab asendada mis tahes väikese võimsusega sobiva struktuuriga räniga, KT815A - transistoridega

keskmine võimsus staatilise baasvoolu ülekandeteguriga vähemalt 40, dioodid - mis tahes väikese võimsusega räni. Tweeter BZ1

dünaamiline, ilma sisseehitatud generaatorita, mähise takistus 45 Ohm. Nupp S1 on loomulikult lukustatud.

Kasutatavad indikaatorid on TOS-5163AG rohelised, saate kasutada mis tahes muid ühise katoodiga indikaatoreid ilma vähendamata

takistite takistus R6-R12. Joonisel näete selle indikaatori pinouti, mis on näidatud tinglikult, kuna esitati

pealtvaade.

Pärast kella kokkupanemist peate võib-olla reguleerima kristallostsillaatori sagedust. Seda saab kõige täpsemalt teha digitaalse juhtimisega

sagedusmõõturit kasutades on võnkeperioodiks 1 s mikrolülituse U1 viigul 4. Generaatori häälestamine kella edenedes nõuab oluliselt rohkem kulutusi

aega. Võimalik, et peate reguleerima ka LED-ide D3 ja D4 heledust, valides takisti R5 takistuse, nii et kõik

säras ühtlaselt eredalt. Kella tarbitav vool ei ületa 180 mA.

Kella toiteallikaks on tavaline toiteallikas, mis on kokku pandud positiivsele mikrolülituse stabilisaatorile 7809, mille väljundpinge on +9V ja voolutugevus 1,5A.

Esitan teie tähelepanu elektroonilisele mikrokontrolleri kell. Kellaahel on väga lihtne, sisaldab minimaalselt osi ja seda saavad korrata ka algajad raadioamatöörid.

Disain on kokku pandud mikrokontrollerile ja DS1307 reaalajakellale. Praeguse kellaaja indikaatorina kasutatakse neljakohalist seitsmesegmendilist LED-indikaatorit (ülihele, sinine, mis näeb pimedas hea välja ja samal ajal mängib kell öö rolli valgus). Kella juhitakse kahe nupuga. Tänu DS1307 reaalajas kella kiibi kasutamisele osutus programmi algoritm üsna lihtsaks. Mikrokontroller suhtleb reaalajas kellaga I2C siini kaudu ja seda korraldab tarkvara.

Kella diagramm:

Kahjuks on diagrammil viga:
— MK-klemmid tuleb ühendada transistori alustega:
РВ0 kuni Т4, РВ1 kuni Т3, РВ2 kuni Т2, РВ3 kuni Т1
või muutke transistori kollektorite ühendus indikaatornumbritega:
T1 kuni DP1… T4 kuni DP4

Kella ahelas kasutatavad osad:

♦ ATTiny26 mikrokontroller:

♦ reaalajas kell DS1307:

♦ 4-kohaline seitsmesegmendiline LED-indikaator – FYQ-5641UB-21 ühise katoodiga (ülihele, sinine):

♦ kvarts 32,768 kHz, sisendmahtuvusega 12,5 pF (saab võtta arvuti emaplaadilt), kella täpsus sõltub sellest kvartsist:

♦ kõik transistorid on NPN struktuurid, kasutada võib mis tahes (KT3102, KT315 ja nende välismaised analoogid), mina kasutasin BC547S
♦ mikrolülituse pingestabilisaator tüüp 7805
♦ kõik takistid võimsusega 0,125 vatti
♦ polaarkondensaatorid sisse lülitatud tööpinge mitte madalam kui toitepinge
♦ varutoiteallikas DS1307 – 3 volti liitiumelement CR2032

Kella toiteks saate kasutada mis tahes mittevajalikku mobiiltelefoni laadijat (antud juhul kui väljundpinge laadija 5 volti ± 0,5 volti piires on osa vooluringist pingestabilisaator 7805 tüüpi mikroskeemil, võib välistada)
Seadme voolutarve on 30 mA.
Te ei pea kella DS1307 jaoks varuakut paigaldama, kuid kui vooluvõrk kaob, tuleb praegune kellaaeg uuesti seadistada.
Seadme trükkplaati ei ole antud, disain on kokku pandud vigasest mehaanilisest kellast. LED (vilkumissagedusega 1 Hz, SQW DS1307 kontaktilt) eraldab indikaatoril tunde ja minuteid.

Mikrokontrolleri seaded on tehases: taktsagedus - 1 MHz, FUSE bitte ei ole vaja puudutada.

Kella töö algoritm(Algoritmi koostajas):

1. Virnakursori seadistamine
2. Taimeri T0 seadistamine:
— sagedus SK/8
- ülevoolukatkestused (sel eelseadistatud sagedusel kutsutakse katkestus iga 2 millisekundi järel)
3. Portide lähtestamine (viigud PA0-6 ja PB0-3 on konfigureeritud väljundina, PA7 ja PB6 sisendiks)
4. I2C siini lähtestamine (kontaktid PB4 ja PB5)
5. DS1307 registri nulli 7. biti (CH) kontrollimine
6. Globaalse katkestuse lubamine
7. Silmuse sisestamine ja nupuvajutuse kontrollimine

Esmakordsel sisselülitamisel või uuesti sisselülitamisel, kui DS307-l pole varutoidet, lähtestatakse praegune kellaaeg algsele seadistusele. Sel juhul: nupp S1 – kellaaja määramiseks, nupp S2 – üleminek järgmisele numbrile. Määrake aeg – tunnid ja minutid kirjutatakse DS1307-le (sekundid on seatud nulli) ja SQW/OUT viik (7. kontakt) on konfigureeritud genereerima ruutlaine impulsse sagedusega 1 Hz.
Kui vajutate nuppu S2 (S4 - programmis), on globaalne katkestus keelatud, programm läheb aja korrigeerimise alamprogrammi. Sel juhul seadistatakse nuppude S1 ja S2 abil minutid kümned ja ühikud, seejärel alates 0 sekundist salvestab nupu S2 vajutamine DS1307 värskendatud aja, lahendab globaalse katkestuse ja naaseb põhiprogrammi.

Kell näitas head täpsust, ajakadu kuus oli 3 sekundit.
Täpsuse parandamiseks on soovitatav ühendada kvarts DS1307-ga, nagu on näidatud andmelehel:

Programm on kirjutatud Algorithm Builder keskkonnas.
Kellaprogrammi näitel kasutades saate tutvuda I2C siini kaudu mikrokontrolleri ja teiste seadmete vahelise suhtlemise algoritmiga (iga rida on algoritmis üksikasjalikult kommenteeritud).

Foto kokkupandud seadmest ja trükkplaadist .lay formaadis saidilugeja Anatoli Pilguki poolt, mille eest suur tänu talle!

Seade kasutab: Transistorid - SMD BC847 ja CHIP takistid

Artikli manused:

(42,9 KiB, 3227 tabamust)

(6,3 KiB, 4180 tabamust)

(3,1 KiB, 2657 tabamust)

(312,1 KiB, 5929 tabamust)


Kellaprogrammi teine ​​versioon AB-s (neile, kes ei saa ülemist alla laadida)

(11,4 KiB, 1942 tabamust)

Selles samm-sammult juhised Ma ütlen teile, kuidas oma kätega seinakella teha.

Kella omadused:

  • Suured numbrid (iga number on ligikaudu võrdne A4 lehe suurusega).
  • Õhukesed seinad (saab sisestada pildiraami).
  • Automaatne reguleerimine sõltuvalt ruumi valgustuse heledusest.
  • Spetsiaalne suveaja nupp.

1. samm: vajalikud materjalid


Mida kasutasin suurte numbritega digitaalse seinakella jaoks.

Elektroonika:

  • Arduino nano V3.0 (kahjuks, kuna ma ei saa algset Arduinot endale lubada, kasutasin Hiina klooni) - 150 rubla.
  • Digitaalne moodul valguse intensiivsuse mõõtmiseks Fotoresistor Arduino jaoks - 60 rubla.
  • DS3231 AT24C32 IIC mälumoodul Arduino täpse aja jaoks - 60 rubla.
  • DC-DC muundur LM2596, Väljundvõimsus 1,23V-30V - 50 rubla.
  • 4 meetrit WS2811 LED-riba 30 dioodi / m - 700 rubla. (üks WS2811 juhib 3 LED-kiipi)

Elektroonika kogumaksumus: 900 rubla.

Muud materjalid:

  • Termokahanev toru - 400 rubla (33m laos)
  • 20 tk. 5 x 7 cm trükkplaat - 200 rubla.
  • 3 tk. Mikrolüliti - 60 rubla.
  • Joote - 50 rubla
  • Flux - 50 rubla.
  • UTP (varjestamata keerdpaar) kaabel
  • LCD font (http://www.dafont.com/lcd-lcd-mono.font) – tasuta.
  • Papp on supermarketis tasuta.
  • Polüstüreenpaneel - 100 rubla.

Nagu ka erinevad tööriistad.

2. samm: ettevalmistamine – numbrimustrid


  1. Laadige alla ja installige kella font
  2. Avage Word või mõni muu programm ja looge mall, nagu esimesel fotol.
  • Kirja suurus ~ 800,
  • Font valge musta piirjoonega,
  • Hallid triibud, kus asuvad LED-ribad

Printige mall ja lõigake triibud välja noaga (nagu teisel fotol)

3. samm: Ettevalmistus – papi ja LED-riba lõikamine

Kasutades digitaalset malli, lõigake kartong sobivasse mõõtu (pidage meeles, et tundide ja minutite vahele tuleb jätta ruumi punktidele)

Kui teie LED-ribade mõlemas otsas on pistik (nagu minu oma), eemaldage pistik ja lõigake need kolmeks osaks.

4. samm: kinnitage LED-riba


Kasutades malli, kleepige LED riba papi peal.

See pole vajalik, kuid ma märkisin pliiatsiga, kuhu LED-ribad asetada.

Lõpliku kuju nägemisel on neid palju mugavam liimida. Tänu sellele märkasin, et olin jätnud numbrite vahele liiga palju ruumi täppidele ja parandasin selle õigel ajal.

5. samm: jootke LED-riba


Nüüd algab pikk jootmisprotsess.

Jootke LED-riba pideva riba moodustamiseks. Pöörake tähelepanu fotol olevate ribade jootmise järjekorrale. Täppide jaoks kasutasin ühte teibitükki ja teipisin selle keskele.

Värvid, mille valisin:

  • Sinine maa jaoks
  • Roheline andmete jaoks
  • Punane +12V jaoks

6. samm: Arduino installimine PCB-le


Üritasin Fritzingis visandada, aga ei leidnud kõiki detaile :)

Niisiis, esimene foto näitab juhtmestiku skeemi ja teine ​​foto näitab, kuidas see minu jaoks välja näeb.

7. samm: LED-i kontroll

Enne koodi üleslaadimist (millega mul pole midagi pistmist) installige kindlasti FastLED teek.

Kui kõik töötab hästi, peaksid LED-id värvide vahel ringi käima. Kui teil on probleeme, kontrollige kõigepealt oma jootmist.

Failid

Samm 8: Programmeerige kell

Mõne aja pärast õnnestus mul teha kell, mis mulle täiesti sobib. Küll aga leiab igaüks midagi, mida saaks parandada.

Kood on hästi kommenteeritud, seega ei tohiks sellega probleeme tekkida.

Kõik silumissõnumid on samuti kommenteeritud.

Kasutatava värvi muutmiseks peate muutma muutujat real 22 (int ledColor = 0x0000FF; // Kasutatud värv (kuueteistkümnes)). Värvide loendi leiate selle lehe allservast



KLELL

On neid, kes loevad seda uudist enne sind.
Tellige värskete artiklite saamiseks.
Meil
Nimi
Perekonnanimi
Kuidas soovite kellukest lugeda?
Rämpsposti pole