Sommario:
- Passaggio 1: Informazioni sul progetto
- Passaggio 2: sensori di tensione
- Passaggio 3: sensori di corrente
- Passaggio 4: sensore di temperatura e ventola
- Passaggio 5: circuito di alimentazione
- Passaggio 6: LCD e uscite seriali
- Passaggio 7: programmazione ISP e ATMega328P
- Passaggio 8: note e file
Video: Modulo sensore di tensione a doppio canale Arduino: 8 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:00
Sono passati alcuni anni da quando ho scritto un istruibile, stavo pensando che fosse ora di tornare. Volevo costruire un sensore di tensione in modo da poterlo collegare al mio alimentatore da banco. Ho un alimentatore variabile a due canali, non ha display quindi devo usare un voltmetro per impostare la tensione. Non sono un ingegnere elettrico o un programmatore, lo faccio per hobby. Detto questo, descriverò ciò che costruiremo qui e potrebbe non essere il miglior design o la migliore codifica, ma farò del mio meglio.
Passaggio 1: Informazioni sul progetto
Prima di tutto questo è solo un progetto preliminare di qualcosa di più stabile e affidabile, alcuni dei componenti non finiranno nel progetto finale. La maggior parte dei componenti sono stati selezionati solo per la disponibilità (li avevo a casa mia) e non per la loro affidabilità. Questo design è per un alimentatore da 15 V ma è possibile sostituire alcuni componenti passivi e farlo funzionare con qualsiasi tensione o corrente. I sensori di corrente sono disponibili in 5A, 20A e 30A basta scegliere l'amperaggio e modificare il codice, la stessa cosa con il sensore di tensione è possibile modificare il valore delle resistenze e il codice per misurare tensioni maggiori.
Il PCB non ha valori impostati perché puoi sostituire i componenti passivi per soddisfare le esigenze del tuo alimentatore. È stato progettato per essere aggiunto a qualsiasi alimentatore.
Passaggio 2: sensori di tensione
Inizieremo con i sensori di tensione e i sensori di corrente. Sto usando un Arduino Mega per testare i circuiti e il codice, quindi alcuni principianti come me possono crearne e testarli al volo invece di dover costruire l'intero modulo su una breadboard.
Possiamo misurare solo 0-5 volt utilizzando gli ingressi analogici di Arduino. Per poter misurare fino a 15 volt dobbiamo creare un partitore di tensione, i divisori di tensione sono molto semplici e possono essere creati utilizzando solo 2 resistori in questo caso stiamo usando un 30k e un 7.5k che ci darebbe un rapporto di 5:1 in modo da poter misurare valori di 0-25 volt.
Elenco delle parti per il sensore di tensione
Resistori R1, R3 30k
Resistori R2, R4 7.5k
Passaggio 3: sensori di corrente
Per i sensori di corrente utilizzerò l'ACS712 prodotto da Allegro. Ora la prima cosa che devo menzionare è che so che questi sensori non sono molto precisi, ma è quello che avevo a portata di mano durante la progettazione di questo modulo. L'ACS712 è disponibile solo in una confezione a montaggio superficiale ed è uno dei pochissimi componenti SMD utilizzati in questo modulo.
Elenco attuale delle parti del sensore
IC2, IC3 ASC712ELC-05A
Condensatore C1, C3 1nF
Condensatore C2, C4 0.1uF
Passaggio 4: sensore di temperatura e ventola
Ho deciso di aggiungere il controllo della temperatura al modulo perché la maggior parte degli alimentatori genera una buona quantità di calore e abbiamo bisogno di una protezione contro il surriscaldamento. Per il sensore di temperatura sto usando un HDT11 e per il controllo della ventola utilizzeremo un MOSFET a canale N 2N7000 per pilotare una ventola della CPU da 5V. Il circuito è abbastanza semplice, dobbiamo applicare tensione al Drain del transistor e applichiamo una tensione positiva al gate, in questo caso stiamo usando l'uscita digitale di arduino per fornire quella tensione e il transistor si accende permettendo alla ventola di essere eccitato.
Il codice è molto semplice prendiamo una lettura della temperatura dal sensore DHT11 se la temperatura è maggiore del nostro valore impostato imposta il pin di uscita HIGH e la ventola si accende. Quando la temperatura scende al di sotto della temperatura impostata, la ventola si spegne. Costruisco il circuito sulla mia breadboard per testare il mio codice, ho scattato alcune foto veloci con il mio cellulare, non molto bene scusa, ma lo schema è facile da capire.
Elenco dei componenti del sensore di temperatura e della ventola
Sensore di temperatura J2 DHT11
Resistenza R8 10K
VENTOLA J1 5V
MOSFET Q1 2N7000
D1 1N4004 Diodo
Resistenza R6 10K
Resistenza R7 47K
Passaggio 5: circuito di alimentazione
Il modulo funziona a 5V quindi abbiamo bisogno di una fonte di alimentazione stabile. Sto usando un regolatore di tensione L7805 per fornire un'alimentazione a 5V costante, non c'è molto da dire su questo circuito.
Elenco delle parti del circuito di alimentazione
1 regolatore di tensione L7805
Condensatore C8 0,33uF
Condensatore C9 0.1uF
Passaggio 6: LCD e uscite seriali
Ho progettato il modulo da utilizzare con un LCD in mente, ma poi ho deciso di aggiungere un'uscita seriale per scopi di debug. Non entrerò nei dettagli su come configurare un LCD I2C perché l'ho già coperto in un precedente LCD I2C istruibile Il modo semplice in cui ho aggiunto i LED alle linee Tx e Rx per mostrare l'attività. Uso un adattatore da USB a seriale che collego al modulo, quindi apro il monitor seriale nell'IDE di Arduino e posso vedere tutti i valori, assicurarmi che tutto funzioni come dovrebbe.
Elenco parti LCD e uscita seriale
LCD I2C 16x2 I2C (20x4 opzionale)
LED7, LED8 0603 LED SMD
R12, R21 1K R0603 Resistenza SMD
Passaggio 7: programmazione ISP e ATMega328P
Come ho detto all'inizio, questo modulo è progettato per essere costruito per diverse configurazioni, abbiamo bisogno di aggiungere un modo per programmare ATMega328 e caricare i nostri schizzi. Ci sono diversi modi per programmare il modulo, uno di questi è usare un Arduino come programmatore ISP come in uno dei miei precedenti ATMega Bootloading Instructable con Arduino mega.
Appunti:
- Non è necessario il condensatore per caricare lo sketch ISP su Arduino, è necessario per masterizzare il bootloader e caricare lo sketch voltage_sensor.
-Sulle versioni più recenti dell'IDE Arduino è necessario collegare il pin 10 al pin 1 RESET di ATMega328.
Elenco delle parti del circuito ISP e ATMega328P
U1 ATMega328P
XTAL1 16MHz HC-49S Cristallo
Condensatori C5, C6 22pf
Intestazione 6 pin ISP1
Resistenza R5 10K
Ripristina interruttore SMD 3x4x2 Tact
Passaggio 8: note e file
Questo era solo un modo per me di mettere alcune idee in un dispositivo funzionante, come ho detto prima è solo una piccola aggiunta per il mio alimentatore da banco Dual Channel. Ho incluso tutto il necessario per costruire il tuo modulo, tutti i file CAD Eagle e gli schemi. Ho incluso lo sketch di Arduino, è molto semplice e ho cercato di renderlo facile da capire e modificare. Se avete domande non esitate a chiedere, proverò a rispondervi. Questo è un progetto aperto, si accettano suggerimenti. Cerco di inserire quante più informazioni possibili, ma ho scoperto tardi del concorso Arduino e volevo inviarlo. Scriverò il resto molto presto. Ho anche rimosso i componenti SMD (resistenze e LED) e li ho sostituiti con componenti TH, l'unico componente SMD è il sensore di corrente perché è disponibile solo in un pacchetto SOIC, il file ZIP contiene il file con i componenti TH.
Consigliato:
Monitor di tensione per batterie ad alta tensione: 3 passaggi (con immagini)
Monitor di tensione per batterie ad alta tensione: in questa guida ti spiegherò come ho costruito il mio monitor di tensione della batteria per il mio longboard elettrico. Montalo come vuoi e collega solo due fili alla batteria (Gnd e Vcc). Questa guida presume che la tensione della batteria superi i 30 volt, con
Convertitore di tensione buck in modalità interruttore di riduzione della tensione CC - CC (LM2576/LM2596): 4 passaggi
Convertitore di tensione buck in modalità interruttore di riduzione della tensione CC - CC (LM2576/LM2596): Realizzare un convertitore buck altamente efficiente è un lavoro difficile e anche gli ingegneri esperti richiedono più progetti per arrivare a quello giusto. Un convertitore buck (convertitore step-down) è un convertitore di alimentazione CC-CC, che riduce la tensione (mentre aumenta
6283 Cablaggio della scheda dell'amplificatore a doppio canale IC: 7 passaggi
Cablaggio della scheda dell'amplificatore a doppio canale 6283 IC: Ciao amico, questo blog è sulla scheda dell'amplificatore che è una scheda dell'amplificatore audio a doppio canale 6283 IC. In questo blog impareremo come collegare i fili degli altoparlanti, del cavo aux, del potenziometro del volume e dell'alimentatore in amplificatore a doppio canale
Come Realizzare un Vu Meter a Doppio Canale Usando LM3914: 3 Passaggi
Come realizzare un Vu meter a doppio canale utilizzando LM3914: In questo post condividerò su come realizzare un Vu meter a doppio canale utilizzando LM3914 IC. Puoi guardare il video allegato insieme al post per la costruzione completa & lavorazione del progetto o continua a leggere il post
Alimentatore da banco fai-da-te (doppio canale): 4 passaggi (con immagini)
Alimentatore da banco fai-da-te (doppio canale): ogni hobbista elettronico ha bisogno di un alimentatore variabile per la prototipazione e il test, ma possono essere molto costosi. Ti mostrerò come costruire un alimentatore economico ma affidabile