Critica schematica


10

Ho progettato il mio primo progetto di elettronica e sarei grato se potessi darmi un feedback al riguardo.

Sono particolarmente alla ricerca di eventuali errori per principianti, qualcosa di sbagliato o inefficiente con il mio circuito, e sul modo in cui ho costruito lo schema.

Il progetto è un timer da cucina controllato da un Arduino. Ha tre timer che possono essere eseguiti contemporaneamente e emette un segnale acustico quando raggiunge lo zero. È alimentato dalla parete, ma quando è scollegato una batteria deve assumere, senza riavviare il timer.

Il primo schema è l'alimentatore. Se collegato alla parete, non deve utilizzare l'alimentazione della batteria, ma deve passare alla batteria se scollegato.

Schema 1

Il secondo schema contiene il microcontrollore e gli interruttori e i pulsanti utilizzati per controllare il timer.

Schema 2

Il terzo schema contiene il display.

Schema 3

Capisco che valutare uno schema sia molto da chiedere, quindi sono davvero grato per qualsiasi feedback.

MODIFICARE

Sono molto grato a tutti coloro che si sono presi il tempo di commentare il mio schema. Non ho amici ingegneri in giro, quindi il tuo feedback è molto prezioso.

Ho cercato di apportare le modifiche in base a ciò che hai suggerito. Non l'ho ancora provato sulla breadboard, quindi non sono sicuro che tutto funzioni. Devo ancora fare alcuni test per scoprire il miglior valore per R5.

Ecco lo schema aggiornato:

Schema 1

Schema 2

Schema 3


3
220 ohm per i LED è un po 'basso. Il valore dovrebbe dipendere dalla tensione e dalla tensione diretta del led. Supponiamo che tu stia utilizzando un tipico led - tensione diretta 0,7 v e corrente 10 mA. Per il led 12v, usando V = IR, il resistore dovrebbe essere (12v - 0,7v) / 10mA = 1130 ohm ... Quindi un resistore 1,2K lì. Lo stesso per il led 5v, forse un resistore da 470 ohm. Rendi questi valori un po 'più piccoli se vuoi più luminoso.
geometrikal,

1
@geometrikal Grazie, non avevo installato alcun programma, quindi ho disegnato a mano.
André Wagner,

4
La linea di ripristino Atmega è attiva in basso, quindi deve essere collegata a Vcc e non a terra. Adoro la sensazione di 8 bit, sembra fantastico.
s3c,

2
Debounce effettuerà una transizione graduale da bassa ad alta quando si preme l'interruttore. S4 è un interruttore a tre poli? Non è necessario il resistore inferiore di r3, non è necessario abbassarlo se non è collegato al mcu
geometrikal

2
Il debouncing del software è una soluzione completamente valida e abbastanza comune; purché i cicli / la memoria per farlo non vengano utilizzati altrimenti, una volta sviluppato ha un costo unitario pari a zero.
Chris Stratton,

Risposte:


10

Complimenti per l'utilizzo di un refdes (designatore di riferimento) per (la maggior parte) componenti. Soprattutto se vuoi discutere uno schema sono necessari per una comunicazione decente.

L'alimentazione

  • si utilizzano i refdes "L1" e "L2" per i LED. Non farlo. "L" è il designatore standard per gli induttori. Utilizzare "LD" o "LED" o, come faccio, "D" per diodo.
  • il valore di R1 è troppo basso. Darà il LED 45 mA che è troppo per un LED indicatore. Aumenta il valore a 560 Ω e avrai una sicurezza di 18 mA; di solito sono classificati a 20 mA. Controlla la scheda tecnica. A proposito, hai davvero bisogno di quel LED? Consumerà sempre energia.
  • C1 e C2 sono indicati come "10 mF", dove presumo dovrebbero essere "10 µF", questa è una differenza di fattore 1000. Molto probabilmente saranno condensatori elettrolitici, che sono polarizzati. Utilizzare un simbolo che indica la polarizzazione e indica chiaramente qual è il lato positivo. Anche per gli elettrolitici è buona norma menzionare la tensione anche nello schema. C1 dovrebbe essere almeno 20 V, C2 10 V.
  • Posizionare un 100 nF parallelo a C1 e C2
  • avvicinare C2 all'uscita del regolatore rispetto al LED. Elettricamente non fa differenza, ma è così che dovresti posizionarli sul PCB. 100 nF dovrebbe essere il più vicino all'output.

Il microcontrollore

  • ATmega328 non ha un pin VREF. Questo dovrebbe probabilmente essere Vcc. Aggiungi un condensatore di disaccoppiamento da 100 nF tra Vcc e terra, il più vicino possibile ai pin. Disaccoppiare sempre un alimentatore IC.
  • Il ripristino è collegato a terra. Va bene se usi i circuiti di reset interno, ma non dimenticare di programmare il bit RSTDISBL su "1".
  • non è possibile pilotare un altoparlante direttamente da un pin I / O. Avrai bisogno di un transistor lì.
  • è possibile salvare un resistore se si utilizza il pull-up interno di PC0 e si collega l'interruttore a terra. R4 non sarà quindi necessario. Ricorda che la logica verrà invertita.
  • lo stesso per PB2 su PB5 e interruttori S2 e S4: pull-up interni e interruttori a terra anziché +5 V.
  • gli interruttori S2 e S4 sono confusi. Hai 2 contatti nella parte inferiore e 5 nella parte alta. Dovrebbero essere contatti di scambio? In tal caso, non ne avrai bisogno: un input sarà sempre complementare all'altro, quindi ne avrai bisogno solo uno. In ogni caso il più basso dei resistori pull-down non ha alcuna funzione.
  • Userei nomi più descrittivi per le reti sulla porta D, come "Digit1", "Digit2", ecc.

Il display

  • Ancora una volta, disaccoppiare l'alimentatore con un condensatore da 100 nF.
  • i valori dei resistori per R4 sono troppo alti. Scambiali per tipi da 150 Ω.
  • le 5 resistenze R5 possono essere lasciate cadere. Non hanno alcuna funzione.
  • ×

Conclusione
Questa è una lunga lista, ma penso che tu abbia fatto un ottimo lavoro, considerato che è il tuo primo progetto. Ho visto schemi molto peggiori. Successo!


modifica Re aggiornamento della domanda
Il tuo circuito attorno a Q1 e D3 non è del tutto OK: la batteria alimenterà il LED, ma non il resto del circuito. Non sono sicuro che il LED come indicatore della batteria sia una buona idea: soprattutto con la carica della batteria devi essere economico e non sprecare energia su un LED.

Che ne dici di questo: mantieni i diodi come nella tua prima versione, ma controlla il LED dal microcontrollore. Utilizzare uno dei pin liberi per rilevare la presenza di 12 V attraverso un diodo zener 5 V e un resistore serie. È quindi possibile lampeggiare il LED quando si utilizza la batteria. Un breve lampeggio una volta al secondo è molto più economico.


Grazie mille per aver dedicato del tempo a valutare lo schema. Una domanda iniziale: parli del disaccoppiamento del microcontrollore e, più tardi, del display. Suppongo che tutti gli ingressi + 5V siano collegati all'uscita + 5V dell'alimentatore. Il potere non è già disaccoppiato? Perché dovrei disaccoppiare di nuovo?
André Wagner,

3
@ André - Bella domanda. Soprattutto i circuiti integrati digitali possono generare picchi di corrente corti quando molti transistor commutano simultaneamente. Il tempo di salita può essere molto elevato (= alta frequenza) e l'induttanza delle tracce del PCB può essere un'alta resistenza nei confronti del condensatore dell'alimentatore. Quindi vuoi un buffer di energia extra (ecco cos'è un tappo di disaccoppiamento) vicino ai pin di alimentazione. Prendi "nelle vicinanze" letteralmente: 1 mm è meglio di 5 mm. Un extra è che i picchi attuali non viaggiano oltre il bordo, dove potrebbero causare EMI. Fornire sempre il disaccoppiamento per tutti i circuiti integrati. È la legge! :-)
stevenvh

Un'altra domanda: riguardo al tuo ultimo commento, che avrei bisogno di alcuni transistor per guidare i LED. Ho costruito il circuito nella breadboard senza i transistor (collegando l'MC direttamente ai LED) ed era abbastanza luminoso per le mie esigenze. (Sto usando resistori 220R) Posso lasciarlo così o sono a rischio di danneggiare il microcontrollore?
André Wagner,

2
@ André - Danneggiamento. Ho calcolato che assorbiresti fino a 140 mA, mentre il foglio dati dice che 40 mA è il massimo assoluto . Pagina 313. Leggere l'avviso: "Le sollecitazioni oltre quelle elencate in" Valutazioni massime assolute " possono causare danni permanenti al dispositivo ." E ultima riga: "L'esposizione a condizioni di valutazione massime assolute per periodi prolungati può influire sull'affidabilità del dispositivo ." Meglio usare i transistor.
Stevenvh,

Ok! Quindi immagino che inserirò alcuni transistor lì! Grazie per le info.
André Wagner,

4

Lancerò alcuni rapidi pensieri qui e potrò aggiungerli in seguito.
L'elenco degli altri nei commenti farebbe bene come risposta combinata.

Qualcuno dovrebbe bloccare Olin fino a quando non affronti alcuni dei punti sollevati :-).

C! E C2 sono indicati come 10 mF ciascuno.
mF = milli-Farad = 10.000 microFarad.
Se intendi 10 microFarad (come sembra probabile), questo è più comunemente scritto 10 uF.
Potresti averlo scritto come uF ed è stato modificato dalla sostituzione del carattere in 10 mF (come a volte accade) ma questo deve essere verificato.

Stai usando un nome di resistenza per un gruppo di resistori. ad es. R4 = 7 x 10k.
Ciò è facilmente comprensibile ma rende impossibile fare facilmente riferimento a un singolo resistore o simile, ed è inadatto per l'automazione a fini di layout (poiché quale componente è R4 non è sicuro.

La capacità di leggere le designazioni in modo semplice e inequivocabile è uno dei principali obiettivi di progettazione di uno schema.
Il diverso aspetto visivo delle etichette in luoghi diversi non sembra avere uno scopo (ma potrebbe avere) e alcuni sono difficili da vedere.
ad es. ABCD che si collega a DA DB DC DD sono bianchi in quadrati neri. Difficile da leggere.
Il bianco su grigio all'interno dei corpi dei componenti è ugualmente difficile da leggere e non necessario.
Il grigio su grigio è peggio.

Al momento questo diagramma è un istruttore funzionale ma è impossibile da usare per la costruzione o la risoluzione dei problemi senza altro materiale di riferimento (o una memoria eidetica).
L'aggiunta di numeri di pin migliorerebbe notevolmente la gamma di usi che il diagramma può avere.

Tutti gli elettroni finiranno con C1 :-).
Non proprio, ovviamente, ma allinea i suoi cavi in ​​verticale secondo C2.
Non c'è nulla di sbagliato nell'allineare i condensatori orizzontalmente dove si adatta all'applicazione, ma l'uso normale quando si mostra un condensatore da una linea orizzontale a terra (come prima e dopo il regolatore di tensione U1) è come da C2.

Allo stesso modo la disposizione orizzontale di R2 è meno comune e "non sembra bella". Ciò è stato fatto per risparmiare spazio, ma ad esempio spostando U1 verso l'alto in modo che il suo input fosse alimentato orizzontalmente da D1 e spostando il testo sopra U1 si consentirebbe di utilizzare lo stesso spazio ma L2 e R2 fossero entrambi verticali.

La connessione SPK1 sembra un po 'strana - l'intenzione è chiara.

In alcuni punti la leggibilità sarebbe migliorata dall'uso di una connessione orizzontale a terra o di un simbolo di terra locale piuttosto che di un lungo filo a terra.
ad es. pin LE di U3,


Il regolatore può essere Toshiba TA4805 .
La corrente di quiescenza senza carico è tipica di 0,85 mA e nel caso peggiore di 1,7 mA.
MA l'indicatore di stato a LED assorbe circa 3 mA. Una "batteria a transistor" PP3 9V aveva una capacità di circa 600 mAh, quindi la durata della batteria era scarica ~ = 600/5 = 150 ore o circa 1 settimana di funzionamento 24 ore su 24, ma scarica.
I LED moderni possono essere MOLTO luminosi e meno di 1 mA dovrebbe essere sufficiente.

I pin delle porte PC1 - PC5 sono OK come mostrato, ma DEVONO essere programmati con pull up / down se impostato come input o deve essere impostato come output.

R4 = 7 x 10k sembrano MOLTO troppo alti a meno che non sia un display intelligente in contatto con una potenza maggiore per la fornitura corrente.

Anon ...


"a meno che non sia un display intelligente in contatto con una potenza maggiore". Esistono per 7 segmenti? So che lo fanno per i display a matrice .
Stevenvh,

Ah, certo che lo fanno! Come il costoso MAX7219. Ma quelli sono di solito interfacciati in serie, penso.
Stevenvh,

Olin è stato rinchiuso e ora è scomparso. Torna Olin, ci manchi.
RoyC
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.