Come configurare smartphone e PC. Portale informativo

Come realizzare un orologio con le tue mani? Grande orologio a LED.

Ricordo... Trent'anni fa, sei indicatori erano un piccolo tesoro. Chiunque potesse quindi realizzare un orologio TTL con tali indicatori era considerato un esperto sofisticato nel suo campo.

Il bagliore degli indicatori di scarico del gas sembrava essere più caldo. Dopo alcuni minuti mi sono chiesto se queste vecchie lampade avrebbero funzionato e volevo fare qualcosa con loro. Ora è molto facile realizzare un orologio del genere. Basta prendere un microcontrollore ...

Da allora mi sono appassionato alla programmazione di microcontrollori in linguaggi di alto livello, ho deciso di giocarci un po'. Ho provato a progettare un semplice orologio digitale indicatore di scarica di gas.

Scopo del progetto

Ho deciso che l'orologio dovrebbe avere sei cifre e l'ora dovrebbe essere impostata con il numero minimo di pulsanti. Inoltre, volevo provare a utilizzare alcune delle famiglie di microcontrollori più comuni di diversi produttori. Intendevo scrivere il programma in C.

Gli indicatori di scarica richiedono alta tensione per funzionare. Ma non volevo avere a che fare con tensioni di rete pericolose. L'orologio doveva essere alimentato da una tensione innocua di 12 V.

Poiché il mio obiettivo principale era il gioco, qui non troverai una descrizione della struttura meccanica e dei disegni del case. Se lo desideri, tu stesso puoi modificare l'orologio in base ai tuoi gusti e alla tua esperienza.

Questo è quello che ho fatto:

  • Indicazione dell'ora: HH MM SS
  • Indicazione allarme: HH MM -
  • Modalità di visualizzazione dell'ora: 24 ore
  • Precisione ± 1 secondo al giorno (dipende dal risonatore a cristalli)
  • Tensione di alimentazione: 12V
  • Consumo di corrente: 100 mA

Schema orologio

Per un dispositivo con display digitale a sei cifre, la modalità multiplex era una soluzione naturale.

Lo scopo della maggior parte degli elementi dello schema a blocchi (Figura 1) è chiaro senza commenti. In una certa misura, un compito non standard era creare un convertitore di livelli TTL in segnali di controllo ad alta tensione per indicatori. I driver anodici sono realizzati su transistor NPN e PNP ad alta tensione. Il diagramma è preso in prestito da Stefan Kneller (http://www.stefankneller.de).

Il chip TTL 74141 contiene un decoder BCD e un driver ad alta tensione per ogni cifra. Potrebbe essere difficile ordinare un microcircuito. (Anche se non so se vengono prodotti da qualcuno ora). Ma se trovi indicatori di scarico del gas, 74141 potrebbe essere da qualche parte nelle vicinanze :-). Ai tempi della logica TTL, non c'era praticamente alcuna alternativa al microcircuito 74141. Quindi prova a trovarne uno da qualche parte.

Gli indicatori richiedono una tensione di circa 170 V. Non ha senso sviluppare un circuito speciale per un convertitore di tensione, poiché esiste un numero enorme di microcircuiti per convertitori boost. Ho scelto l'IC MC34063, economico e ampiamente disponibile. Il circuito del convertitore è quasi completamente copiato dal datasheet dell'MC34063. Ad esso è stato aggiunto solo l'interruttore di alimentazione T13. La chiave interna non è adatta a una tensione così alta. Ho usato uno starter come induttore per il convertitore. È mostrato in Figura 2; il suo diametro è di 8 mm e la sua lunghezza è di 10 mm.

L'efficienza del convertitore è abbastanza buona e la tensione di uscita è relativamente sicura. Con una corrente di carico di 5 mA, la tensione di uscita scende a 60 V. L'R32 funge da resistore di rilevamento della corrente.

Un regolatore lineare U4 viene utilizzato per alimentare la logica. C'è spazio per una batteria di backup sullo schema e sulla scheda. (3.6V - NiMH o NiCd). D7 e D8 sono diodi Schottky e il resistore R37 è progettato per limitare la corrente di carica in base alle caratteristiche della batteria. Se stai costruendo il tuo orologio solo per divertimento, non avrai bisogno di una batteria, D7, D8 e R37.

Il layout finale è mostrato in Figura 3.

Figura 3.

I pulsanti di impostazione dell'ora sono collegati tramite diodi. Lo stato dei pulsanti viene verificato impostando un "1" logico sull'uscita corrispondente. Come funzione bonus, un emettitore piezoelettrico è collegato all'uscita del microcontrollore. Per mettere a tacere questo brutto cigolio, usa il piccolo interruttore. Per questo, un martello sarebbe abbastanza adatto, ma questo è per un caso estremo :-).

Un elenco di componenti schematici, disegno PCB e layout è disponibile nella sezione Download.

processore

Questo semplice dispositivo può essere controllato da quasi tutti i microcontrollori con un numero sufficiente di pin, il cui numero minimo richiesto è indicato nella Tabella 1.

Tabella 1.
Funzione conclusioni
Nutrizione 2
Risonatore al quarzo 2
Controllo dell'anodo 6
Autista 74141 4
Ingresso pulsante 1
Emettitore piezoelettrico 1
Totale 16

Ogni produttore sviluppa le proprie famiglie e tipi di microcontrollori. La disposizione dei pin è individuale per ogni tipo. Ho provato a progettare una scheda universale per diversi tipi di microcontrollori. La scheda ha una presa a 20 pin. Con pochi ponticelli, puoi adattarlo a diversi microcontrollori.

I microcontrollori testati in questo circuito sono elencati di seguito. Puoi sperimentare con altri tipi. Il vantaggio dello schema è la possibilità di utilizzare processori diversi. Di norma, i radioamatori utilizzano una famiglia di microcontrollori e dispongono del programmatore e degli strumenti software appropriati. Possono sorgere problemi con i microcontrollori di altri produttori, quindi ti ho dato l'opportunità di scegliere un processore dalla tua famiglia preferita.

Tutte le specifiche dell'accensione di vari microcontrollori si riflettono nelle tabelle 2 ... 5 e nelle figure 4 ... 7.

Tavolo 2.
Scala libera
Un tipo MC68HC908QY1
Risonatore al quarzo 12 MHz
Condensatori C1, C2 22 pF
Programma freescale.zip
(vedi sezione "Download")
Installazioni

Nota: una resistenza da 10 MΩ è collegata in parallelo al risonatore al quarzo.

Tabella 3.
Microchip
Un tipo PIC16F628A
Risonatore al quarzo 32,768kHz
Condensatori C1, C2 22 pF
Programma pic628.zip
(vedi sezione "Download")
Installazioni interno Generatore 4 MHz - I/O RA6,
MCLR SPENTO, WDT SPENTO, LVP SPENTO,
BROUT OFF, CP OFF, PWRUP OFF

Nota: il microcircuito deve essere ruotato di 180 ° nella presa.

Tabella 4.
Atmel
Un tipo ATtiny2313
Risonatore al quarzo 12 MHz
Condensatori C1, C2 15 pF
Programma attiny.zip
(vedi sezione "Download")
Installazioni mq. oscillatore 8 MHz, RESET ON

Nota: aggiungere i componenti SMD R e C al pin RESET (10 kΩ e 100 nF).

Tabella 5.
Atmel
Un tipo AT89C2051
Risonatore al quarzo 12 MHz
Condensatori C1, C2 22 pF
Programma at2051.zip
(vedi sezione "Download")
Installazioni --

Nota: aggiungere i componenti SMD R e C al pin RESET (10 kΩ e 100 nF); i cavi contrassegnati da asterischi, si collegano al bus di alimentazione + Ub tramite resistori SMD da 3,3 kOhm.

Confrontando i codici per diversi microcontrollori, vedrai che sono molto simili. Le differenze sono nell'accesso alle porte e nella definizione delle funzioni di interruzione, nonché in ciò che dipende dai componenti del cablaggio.

Il codice sorgente è diviso in due sezioni. Funzione principale () configura le porte e avvia un timer che genera segnali di interruzione. Successivamente, il programma esegue la scansione dei pulsanti premuti e imposta i valori di ora e allarme corrispondenti. Nello stesso punto, nel ciclo principale, l'ora corrente viene confrontata con la sveglia e l'emettitore piezoelettrico viene acceso.

La seconda parte è una routine di interruzione del timer. Una subroutine che viene chiamata ogni millisecondo (a seconda delle capacità del timer) incrementa le variabili temporali e controlla le cifre del display. Inoltre, viene verificato lo stato dei pulsanti.

Lancio del circuito

Iniziare con l'installazione e la configurazione dei componenti dall'alimentatore. Saldare il regolatore U4 e i componenti circostanti. Verificare la presenza di 5 V per U2 e 4,6 V per U1. Il prossimo passo è assemblare il convertitore ad alta tensione. Regolare il resistore di trimmer R36 su 170 V. Se l'intervallo di trim non è sufficiente, modificare leggermente la resistenza del resistore R33. Ora installa il chip U2, i transistor e i resistori dell'anodo e del circuito del driver delle cifre. Collegare gli ingressi di U2 al bus GND e collegare in serie una delle resistenze R25 - R30 al bus di alimentazione +Ub. Le cifre dell'indicatore dovrebbero accendersi nelle posizioni corrispondenti. Nell'ultima fase del controllo del circuito, collegare il pin 19 del microcircuito U1 a terra: l'emettitore piezoelettrico dovrebbe accendersi.

I codici sorgente e i programmi compilati possono essere trovati nel file ZIP corrispondente nella sezione Download. Dopo aver cucito il programma nel microcontrollore, controllare attentamente ogni pin in posizione U1 e installare i cavi necessari e i ponticelli di saldatura. Controlla le immagini del microcontrollore sopra. Se il microcontrollore è programmato e collegato correttamente, il suo generatore dovrebbe funzionare. È possibile impostare l'ora e la sveglia. Attenzione! C'è spazio per un altro pulsante sulla scheda - questo è un pulsante di riserva per future estensioni :-).

Verificare la precisione della frequenza del generatore. Se non rientra nell'intervallo previsto, modificare leggermente i valori nominali dei condensatori C1 e C2. (Saldare piccoli condensatori in parallelo o sostituirli con altri). La precisione dell'orologio dovrebbe migliorare.

Conclusione

I piccoli processori a 8 bit sono adatti per i linguaggi di alto livello. C non è stato originariamente progettato per piccoli microcontrollori, ma per applicazioni semplici puoi usarlo bene. Assembler è più adatto per compiti complessi che richiedono il rispetto di tempi critici o il massimo utilizzo della CPU. Per la maggior parte dei radioamatori, funzioneranno sia le versioni limitate gratuite che shareware del compilatore C.

La programmazione in C è la stessa per tutti i microcontrollori. È necessario conoscere le funzioni dell'hardware (registri e periferiche) del tipo di microcontrollore selezionato. Fai attenzione con le operazioni bit per bit: il linguaggio C non è adatto per la manipolazione di singoli bit, come si può vedere nell'esempio dell'originale quando per ATtiny.

Hai finito? Quindi sintonizzati sulla contemplazione dei tubi a vuoto e guarda ...

...sono tornati i vecchi tempi... :-)

Nota editoriale

L'analogo completo di SN74141 è il microcircuito K155ID1, prodotto dal software Minsk "Integral".
Il microcircuito può essere facilmente trovato su Internet.

Propongo di ripetere lo schema di un semplice orologio elettronico con sveglia, realizzato sul tipo PIC16F628A. Un grande vantaggio di questo orologio è l'indicatore LED di tipo ALS per la visualizzazione dell'ora. Personalmente, sono piuttosto stanco di tutti i tipi di LCD e voglio essere in grado di vedere l'ora da qualsiasi punto della stanza, anche al buio, e non solo direttamente con una buona illuminazione. Il circuito contiene un minimo di dettaglio e ha un'eccellente ripetibilità. L'orologio è stato testato per un mese, il che ha dimostrato la sua affidabilità e prestazioni. Penso a tutti gli schemi su Internet, questo è il più facile da costruire ed eseguire.

Schema schematico di un orologio elettronico con sveglia su un microcontrollore:


Come puoi vedere dal circuito di clock, è l'unico microcircuito utilizzato in questo dispositivo. Un risonatore a cristallo da 4 MHz viene utilizzato per impostare la frequenza di clock. Per visualizzare l'ora vengono utilizzati indicatori rossi con un anodo comune, ogni indicatore è composto da due cifre con punti decimali. Nel caso di utilizzo di un emettitore piezoelettrico, il condensatore C1 - 100μF può essere omesso.

È possibile utilizzare qualsiasi indicatore con un anodo comune, purché ogni cifra abbia il proprio anodo. In modo che l'orologio elettronico sia chiaramente visibile al buio e da una grande distanza, prova a scegliere l'ALS-ki più grande.


Le ore vengono visualizzate in modo dinamico. In un dato momento, viene visualizzata solo una cifra, che può ridurre significativamente il consumo di corrente. Gli anodi di ogni cifra sono controllati dal microcontrollore PIC16F628A. I segmenti di tutte e quattro le cifre sono collegati insieme e tramite resistori limitatori di corrente R1 ... R8 sono collegati ai pin della porta MK. Poiché l'indicatore si accende molto rapidamente, lo sfarfallio dei numeri diventa impercettibile.


Per impostare i minuti, le ore e la sveglia utilizzare i pulsanti momentanei. Come uscita per il segnale di allarme, viene utilizzato il pin 10 e come amplificatore - una cascata sui transistor VT1,2. L'emettitore del suono è un elemento piezoelettrico di tipo ZP. Per migliorare il volume, puoi invece mettere un piccolo altoparlante.


L'orologio è alimentato da una sorgente di tensione stabilizzata a 5V. È possibile anche con batterie. L'orologio ha 9 modalità di visualizzazione. La transizione tra le modalità viene eseguita con i pulsanti "+" e "-". Prima di visualizzare le letture stesse, sugli indicatori viene visualizzato un breve suggerimento sul nome della modalità. La durata della visualizzazione del prompt è di un secondo.


Il pulsante "Correzione" commuta l'orologio - sveglia nella modalità impostazioni. In questo caso viene visualizzato un breve prompt per mezzo secondo, dopodiché il valore corretto inizia a lampeggiare. La correzione delle letture viene eseguita con i pulsanti "+" e "-". Quando si preme a lungo il pulsante, si attiva la modalità di ripetizione automatica, con una frequenza specificata. Tutti i valori, ad eccezione di ore, minuti e secondi, vengono scritti nella EEPROM e ripristinati dopo lo spegnimento/riaccensione.


Se per diversi secondi non viene premuto alcun pulsante, l'orologio digitale passa alla modalità di visualizzazione dell'ora. Premendo il pulsante "On / Off" si accende o si spegne l'allarme, questa azione è confermata da un breve suono. Quando la sveglia è accesa, si accende un punto nella cifra meno significativa dell'indicatore. Stavo pensando a dove mettere l'orologio in cucina e ho deciso di montarlo direttamente nel fornello a gas :) Il materiale è stato inviato da in_sane.


Discuti l'articolo OROLOGIO ELETTRONICO SVEGLIA

Semplici orologi a LED possono essere realizzati con un controller PIC16F628A economico. Certo, i negozi sono pieni di vari orologi elettronici, ma in base alle loro funzioni, possono mancare un termometro o una sveglia, oppure non si illuminano al buio. E in generale, a volte il proto vuole saldare qualcosa da solo e non comprare già pronto. Per ingrandire il diagramma del diagramma - fare clic.

Gli orologi offerti hanno un calendario. Ha due opzioni per visualizzare la data - mese in cifre o sillaba, tutto questo è configurato dopo aver inserito la data passando ulteriormente con il pulsante S1 mentre è visualizzato il parametro desiderato, il termometro. ci sono firmware per diversi sensori. Guarda il dispositivo all'interno della custodia:


Tutti sanno che i risonatori al quarzo non sono perfetti in termini di precisione e nel giro di poche settimane si accumula un errore. Per combattere questo caso, l'orologio prevede una correzione della corsa, che è impostata dai parametri SH e SL... Più dettagli:

SH = 42 e SL = 40 - questo è in avanti di 5 minuti al giorno;
SH = 46 e SL = 40 - questo è 3 minuti al giorno indietro;
SH = 40 e SL = 40 - questo è in avanti di 2 minuti al giorno;
SH = 45 e SL = 40 - questo è indietro di 1 minuto al giorno;
SH = 44 e SL = С0 - questo è in avanti di 1 minuto al giorno;
SH = 45 e SL = 00 - questa correzione è disabilitata.

In questo modo è possibile ottenere una precisione perfetta. Anche se dovrai guidare la correzione più volte fino a quando non la imposti perfettamente. E ora il lavoro dell'orologio elettronico è chiaramente mostrato:

temperatura 29 gradi Celsius

Come indicatori, puoi inserire gruppi digitali a LED, che sono indicati nel diagramma stesso, o sostituirli con normali LED rotondi super luminosi - quindi questo orologio sarà visibile da lontano e può essere appeso anche per strada.


Un semplice lampeggiatore con sei led e due resistenze, alimentato da una batteria da 9 volt.

Nella foto c'è un prototipo che ho assemblato per eseguire il debug del programma che gestirà l'intera economia. Il secondo arduino nano nell'angolo in alto a destra della breadboard non appartiene al progetto e sporge lì proprio così, puoi ignorarlo.

Un po 'del principio di funzionamento: Arduino prende i dati dal timer DS323, li elabora, determina il livello di illuminazione usando una fotoresistenza, quindi invia tutto al MAX7219 e, a sua volta, illumina i segmenti necessari con la luminosità desiderata. Inoltre, utilizzando tre pulsanti, è possibile impostare l'anno, il mese, il giorno e l'ora a piacimento. Nella foto, gli indicatori mostrano l'ora e la temperatura, rilevate da un sensore di temperatura digitale.

La principale difficoltà nel mio caso è che gli indicatori da 2,7 pollici con un anodo comune, e dovevano prima in qualche modo fare amicizia con il max7219, che è affilato per gli indicatori con un catodo comune, e in secondo luogo, per risolvere il problema con il loro alimentatore , poiché hanno bisogno di 7,2 volt per il bagliore, che il max7219 da solo non è in grado di fornire. Dopo aver chiesto aiuto su un forum, ho avuto la stessa risposta.

Soluzione dello screenshot:


Un microcircuito si aggrappa alle uscite dei segmenti da max7219, che inverte il segnale, e un circuito di tre transistor si aggrappa a ciascuna uscita, che deve essere collegata al catodo comune del display, che inverte anche il suo segnale e aumenta la tensione. Pertanto, abbiamo l'opportunità di collegare i display con un anodo comune e una tensione di alimentazione superiore a 5 volt al max7219.

Per il test, ho collegato un indicatore, tutto funziona, niente fuma

Iniziamo a raccogliere.

Ho deciso di dividere il circuito in 2 parti a causa dell'enorme numero di ponticelli nella versione divorziata dalle mie gambe storte, dove tutto era su un'unica tavola. L'orologio sarà composto da un'unità di visualizzazione e da un'unità di alimentazione e controllo. Si è deciso di assemblare prima quest'ultimo. Esteti e radioamatori esperti, per favore non svenite a causa dell'abuso di parti. Non c'è alcun desiderio di acquistare una stampante per il bene di LUT, quindi lo faccio alla vecchia maniera: mi alleno su un pezzo di carta, faccio dei fori secondo un modello, disegno una traccia con un pennarello, quindi esche.

Il principio di fissaggio degli indicatori è lo stesso di acceso.

Segniamo la posizione di indicatori e componenti utilizzando una dima in plexiglass realizzata per comodità.

Il processo di markup







Quindi, utilizzando il modello, eseguiamo i fori nei punti giusti e proviamo tutti i componenti. Tutto è caduto senza problemi.

Tracciamo percorsi e avvelenamo.




fare il bagno nel cloruro ferrico

Pronto!
pannello di controllo:


scheda di indicazione:


La scheda di controllo si è rivelata eccellente, la traccia sul tabellone non ha inghiottito in modo critico la traccia, questo è risolvibile, è ora di saldare. Questa volta ho perso la mia verginità SMD e ho incluso 0805 componenti nel circuito. Per lo meno, i primi resistori e condensatori sono stati saldati sul posto. Penso che mi riempirò ulteriormente la mano, sarà più facile.
Per la saldatura, ho usato il flusso che ho comprato. È un piacere saldare con esso, ora uso la colofonia alcolica solo per la stagnatura.

Ecco le tavole finite. La scheda di controllo ha una sede per un arduino nano, un orologio, oltre a uscite per il collegamento a un tabellone e sensori (fotoresistenza per luminosità automatica e un termometro digitale ds18s20) e un alimentatore con tensione di uscita regolabile (per sette grandi -dispositivi a segmenti) e per l'alimentazione dell'orologio e di arduino, il tabellone contiene slot per display, prese per max2719 e uln2003a, una soluzione per alimentare quattro grandi dispositivi a sette segmenti e un mucchio di ponticelli.




pannello di controllo posteriore

Tabellone posteriore:

Installazione orribile smd:


In esecuzione

Dopo aver saldato tutti i cavi, pulsanti e sensori, è il momento di accenderlo. Il primo lancio ha rivelato diversi problemi. L'ultimo grande indicatore era spento e il resto era debole. Ho affrontato il primo problema saldando la gamba del transistor SMD, con il secondo regolando la tensione emessa dall'LM317.
È VIVA!

Per chi è almeno un po' esperto di microcontrollori, e vuole realizzare anche un dispositivo semplice e utile per la casa, non c'è niente di meglio di un assemblaggio con indicatori LED. Una cosa del genere può decorare la tua stanza o può essere un regalo fatto a mano unico, dal quale otterrà un valore aggiuntivo. Il circuito funziona come un orologio e come un termometro: le modalità vengono commutate tramite un pulsante o automaticamente.

Schema elettrico di un orologio fatto in casa con termometro

Microcontrollore PIC18F25K22 si occupa di tutte le elaborazioni e tempistiche dei dati, e per una frazione ULN2803A il coordinamento delle sue uscite con l'indicatore LED rimane. Piccolo microcircuito DS1302 funziona come un timer per precisi segnali di secondo, la sua frequenza è stabilizzata da un risonatore al quarzo standard 32768 Hz. Ciò complica un po' il design, ma non è necessario regolare e correggere costantemente l'ora, che sarà inevitabilmente ritardata o accelerata se si riesce a cavarsela con un risonatore al quarzo non sintonizzato casuale per diversi MHz. Un orologio del genere è piuttosto un giocattolo semplice che un cronometro accurato di alta qualità.

Se necessario, i sensori di temperatura possono essere posizionati lontano dall'unità principale: sono collegati ad essa con un cavo a tre fili. Nel nostro caso, un sensore di temperatura è installato nel blocco e l'altro si trova all'esterno, su un cavo lungo circa 50 cm, che quando abbiamo provato un cavo da 5 m ha funzionato perfettamente.

Il display dell'orologio è composto da quattro grandi indicatori digitali a LED. Originariamente erano a catodo comune, ma nella versione finale cambiarono in anodo comune. Puoi metterne altri, quindi selezionare i resistori di limitazione della corrente R1-R7 in base alla luminosità richiesta. Potrebbe essere stato posizionato su una scheda comune con la parte elettronica dell'orologio, ma questo è molto più versatile: all'improvviso vuoi mettere un indicatore LED molto grande in modo che possano essere visti a lunga distanza. Un esempio di un tale design di un orologio stradale è qui.

L'elettronica stessa parte da 5 V, ma per un bagliore luminoso dei LED, è necessario utilizzare 12 V. Dalla rete, l'alimentazione viene fornita tramite un adattatore per trasformatore step-down allo stabilizzatore 7805 , che forma una tensione di rigorosamente 5 V. Prestare attenzione alla piccola batteria cilindrica verde - funge da fonte di alimentazione di backup in caso di mancanza di rete da 220 V. Non è necessario prenderla per 5 V - una agli ioni di litio o la batteria Ni-MH per 3.6 è abbastanza volt.

Per il caso, puoi utilizzare vari materiali: legno, plastica, metallo o incorporare l'intera struttura di un orologio fatto in casa in uno industriale finito, ad esempio da un multimetro, sintonizzatore, radio e così via. Abbiamo realizzato in plexiglass, perché è facile da lavorare, ti permette di vedere l'interno in modo che tutti possano vedere - questo orologio è assemblato dalle nostre stesse mani. E, soprattutto, era disponibile :)

Qui puoi trovare tutti i dettagli necessari per la progettazione proposta di un orologio digitale fatto in casa, incluso lo schema elettrico, il layout del PCB, il firmware PIC e

Principali articoli correlati