Sisällysluettelo:

Wort-Uhr: 5 vaihetta
Wort-Uhr: 5 vaihetta

Video: Wort-Uhr: 5 vaihetta

Video: Wort-Uhr: 5 vaihetta
Video: НЕ ВЗДУМАЙ снимать аккумулятор с машины. Делай это ПРАВИЛЬНО ! 2024, Marraskuu
Anonim
Wort-Uhr
Wort-Uhr

Hei yhdessä!

Tämä on ensimmäinen ohjeeni, ja jos sinulla on ideoita sen parantamiseksi tai ymmärtämisen helpottamiseksi, älä epäröi ottaa minuun yhteyttä!

Aluksi tällainen "kello" ei ole minun idea! Olen nähnyt paljon Internetin kautta ja niitä voi tilata vain parilla dollarilla eri verkkokaupoista. Mutta en halunnut ostaa sellaista, halusin tehdä sellaisen omani oppiakseni ja ymmärtääkseni sen toiminnan.

Yksi sana "ei-saksalaisille" jäsenille… Pahoittelut siitä, että tämä on vain "saksalainen Wort Uhr". Se voidaan helposti muuntaa englanniksi tai mille tahansa muulle kielelle, mutta koska olen saksalainen, tein sen omalla kielelläni. Jos tarvitset tukea kielellesi, ota minuun yhteyttä ja yritän auttaa sinua.

Aloitetaan siis…

Vaihe 1: Kaavio

Kaavio
Kaavio

Kaavio on suoraviivainen ja jos kuva on huono lukea, siellä on myös PDF -tiedosto.

Aloitetaan vasemmasta alakulmasta. On olemassa yksinkertainen virtalähde, joka käyttää LM7805: tä vakaaseen 5 V: n lähtöön PIC: lle, siirtorekisterille (74HC164) ja reaaliaikaiselle sirulle DS3231. Kaikki LEDit toimitetaan myös tästä osasta. D22 oikeassa päässä on vain virtalähteen osoittamiseksi ja voidaan helposti jättää erilleen, jos sitä ei haluta.

Voit käyttää mitä tahansa tasavirtalähdettä kellolle, jonka jännite on alle 40 V, mutta sinun on sitten valittava sopiva arvo C7: lle. Sen jännitteen tulisi olla vähintään kaksinkertainen syöttöjännitteeseen asti ja muista, että tuotat lämpöä LM7805: een, joten sinun pitäisi yrittää pitää tulojännite mahdollisimman alhaisena, koska kaikki muu on vain energian tuhlausta. Paras istuvuus on jotain välillä 9V ja 12V DC.

Älä välitä virtalähteen napaisuudesta… P-kanavainen MOSFET (Q1) toimii väärän napaisuuden suojana ja kello ei vain toimi eikä vaurioidu. Voit tarkistaa tämän virtalähteestä LED D22, jos se on asennettu.

Kaavion oikealla puolella on sarja-sisään rinnakkaislähtöiset siirtorekisterit. Päätin käyttää niitä, koska en halunnut käyttää valtavaa PIC: tä, jossa on paljon I/O-portteja. Halusin käyttää pienempää ja minulla oli vielä 16F1829 kotona, joten valinta oli jo selvä. Tiedot (IN_1, IN_2 ja IN_3) toimittavat PIC (katso alla oleva koodiosa) ja REGISTER_CLK. Koodin ja piirilevyasettelun yksinkertaisuuden vuoksi käytin kahta 74HC164: tä tuntikausina ja viimeistä "logiikkaa" varten.

Vasemmassa yläkulmassa on PIC ja kaikki tarvittavat osat. Käytin sisäistä kelloa, joten ei tarvita oskillaattoria. Vain kolme vastusta SCL, SDA ja MCLR. Koska käytin 32 kHz: n osoitinta "tarkista sekunneista", PIC: lle ei tarvita varsin vakaata ja tarkkaa taajuutta.

Keskellä on DS3231, jossa on vähintään ulkoisia osia. Itse käytin vain SDA- ja SCL -tuloja tiedonsiirtoon I²C: n kautta ja 32 kHz: n lähtöä PIC16F1829: n ajastimen 1 ulkoiseksi kello -ohjeeksi. Tätä tuotosta varten taulukko sanoo, että se on ulkoinen vetovastus. Muut tuotokset, joita en käyttänyt tässä projektissa, jätin ne yhdistämättä.

Myös keskellä, LEDit … Kuten kaaviosta voit lukea, käytin sinisiä LED -valoja (ne, joissa on kirkas kotelo) ja vastusarvo 1 k ohmia. Jos aiot tehdä tämän projektin itse, sinun tulee valita näiden vastusten arvot valitsemiesi LED -valojen värin ja tyypin mukaan. Muista myös, mihin haluat asettaa kellon. Oma seisoo makuuhuoneessani, joten en halunnut LEDien olevan liian kirkkaita ja valitsin suuremman arvon vastuksille. Kokeile leipälevyä, jossa on LED -valoja ja vastusarvoja, ennen kuin asennat ne piirilevylle.

Vaihe 2: Asettelu

Layout
Layout
Layout
Layout
Layout
Layout

Kaavion jälkeen on aika reitittää piirilevy. Tätä varten käytin KiCADia (myös kaavamaisesti). Ei ole paljon sanottavaa, vain reititä linjat.

Koska tulostin kellon kotelon itse, oli erittäin tärkeää, missä yläkerroksen LEDit sijaitsevat. Laitoin LEDit ja vastukset vain yläkerrokseen, koska tilasin PCB: n osittain asennettuna (kaikki SMD-osat) ja koska valitsemani yritys sijoittaa osat vain toiselle puolelle eikä kaksipuolisia.

Näet sijoituksen kahteen kolmiulotteiseen kuvaan, jotka tein KiCADista.

Jos olet kiinnostunut… On mahdollista viedä KiCAD -piirilevy Eagleen ja kotelon rakentaminen on melko helppoa, koska sinulla on viite PCB: stä.

Vaihe 3: "Logiikka" "Wort-Uhr"

Suurin osa tässä projektissa oli PIC -koodi…

Aluksi löydettiin puheajan "logiikka" saksaksi ja käännettiin se koodiksi.

Valitettavasti Excel -tiedoston lataaminen ei ollut mahdollista suoraan, mutta toivon, että PDF -vienti on tarpeeksi luettavissa. Jos ei, ota yhteyttä minuun, niin lähetän sinulle alkuperäisen Excel -tiedoston. PDF -tiedostosta näet, kuinka asetin kelloni logiikan. Voit nähdä, kuinka olen kulkenut eri ajankohtien läpi ja kuinka oikeinkirjoitus on. Koodin sisällä oleva laskelma (lähinnä if-else-lausekkeet) voidaan johtaa taulukon oikealla puolella olevista tiedoista. Yksi osa on minuutteja ja toinen tunteja.

Kuten näette, tämä ei ole taikuutta, ja se voidaan helposti koodata C. C. Logiikan "hankalin" kohta on, kuinka käsitellä tuntia, kuten tiedostosta näkyy, että todellinen tunti näytetään vasta tunnin alussa. Saksassa (ehkä tämä voi olla vain baijerilainen ominaisuus) "seuraava tunti" on käytetty aikaisin.

Koodauksessa käytin MPLABXia valintani IDE: nä.

Vaihe 4: Koodinpätkät

Koodinpätkät
Koodinpätkät
Koodinpätkät
Koodinpätkät

En julkaise koodiani tänne, mutta jos aiot kirjoittaa oman koodisi, annan sinulle joitain vinkkejä siihen, mihin olen "kompastunut" kehityksen aikana …

Ensin "rekisteröidy" -täyttö:

Jos siirrät uusia tietoja rekistereihin liian usein ja liian lyhyissä jaksoissa, tein kokemuksen, että LED -valot alkoivat välkkyä. Joten tein joitakin "esto -lippuja", että vain joka minuutti tehdään uusi "laskenta" puheajasta ja tehdään rekisterin päivitys.

Rekisterien täyttämiskoodi on yllä olevassa kuvassa. Kuten näette, täytän kaikki 3 rekisteriä rinnakkain, joten tarvitsen 3 nastaista PIC -dataa ja 1 pin CLK: lle. 74HC164 ottaa vastaan uusia tietoja siirtymästä CLK -linjalla 0: sta 1: een.

Loput koodista ovat pääasiassa PIC-riippuvaisia juttuja, "puhuttu aika" -logiikkaa ja viestinnän ja painikkeiden käsittelyä. Viestinnän tarjoaa pääasiassa Microchip MPLABX, koska käytin MSSP -moduulia.

Hyvä idea on lukea DS3231: n tietolomake, koska tiedot tallennetaan sisälle BCD -muodossa, joten sinun on ehkä "muutettava" tämä koodi. Minun mielestäni olen "tekemällä oppiminen" -mies, ja tietysti en lukenut tietolomaketta… Maksoi minulle paljon hermoja ja tunteja.

Kuten olette ehkä huomanneet, tällä toteutuksella on kaksi tapaa "pitää aikaa raiteillaan".

  1. Voit lukea DS3231: n todellisen ajan
  2. Voit "laskea sekunteja" itse PIC: ssä ja vain synkronoida aika DS3231: n kanssa aika ajoin

Se on sinun tehtäväsi ja molemmat tavat ovat käytännöllisiä ja suoraan eteenpäin. Käytin ensimmäistä vaihtoehtoa ja vain synkronoitua aikaa, kun säädin aikaa painikkeilla (kirjoitusaika DS3231: een) tai 24 tunnin välein (lukuaika DS3231: sta), koska halusin toteuttaa enemmän logiikkaa itse. Käännän kelloa myös yöllä (klo 23.00–5.00), joten se oli mielestäni hieman helpompaa.

Vaihe 5: Kotelo

Viimeisenä, mutta ei vähäisimpänä, on aika tarkastella lyhyesti koteloa.

Kuten edellä mainitsin, tein kotelon itse (käyttämällä Eaglea) ja tulostin ne 3D-tulostimellani, joten minun on seurattava eri LEDien asentoja.

Liitteenä löydät STL -tiedostot, jos haluat käyttää niitä.

Toivottavasti tämä ohje auttaa sinua rakentamaan oman "Wort-Uhr". Jos sinulla on vielä "avoimia kysymyksiä", älä epäröi ottaa minuun yhteyttä. Paras tapa kommentoida alla, koska et ehkä ole ainoa, jolla on tietty kysymys.

Suositeltava: