- Componenti richiesti:
- Schema del circuito del voltmetro di Arduino:
- Funzionamento del voltmetro CA basato su Arduino:
- Simulazione:
- Spiegazione del codice:
In questo progetto, realizzeremo un dispositivo di misurazione della tensione CA utilizzando Arduino, che misurerà la tensione dell'alimentazione in corrente alternata a casa nostra. Stamperemo quella tensione sul monitor seriale dell'IDE di Arduino e mostreremo sul multimetro.
Realizzare un voltmetro digitale è molto facile che realizzarne uno analogico perché in caso di voltmetro analogico devi avere una buona conoscenza di parametri fisici come coppia, perdite per attrito ecc. Mentre nel caso di voltmetro digitale puoi semplicemente usare una matrice LCD o LED o anche il tuo laptop (come in questo caso) per stampare i valori di tensione per te. Ecco alcuni progetti di voltmetro digitale:
- Circuito voltmetro digitale semplice con PCB utilizzando ICL7107
- Circuito voltmetro LM3914
- Voltmetro digitale 0-25V con microcontrollore AVR
Componenti richiesti:
- Un trasformatore 12-0-12
- Diodo 1N4007
- Condensatore 1uf
- Resistori 10k; 4.7k.
- Diodo Zener (5v)
- Arduino UNO
- Cavi di collegamento
Schema del circuito del voltmetro di Arduino:
Lo schema del circuito per questo voltmetro Arduino è mostrato sopra.
Collegamenti:
- Collegare il lato alta tensione (220V) del trasformatore all'alimentazione di rete e la bassa tensione (12v) al circuito del divisore di tensione.
- Collega un resistore da 10k in serie con un resistore da 4.7k ma assicurati di prendere la tensione come ingresso attraverso il resistore da 4.7k.
- Collegare il diodo come mostrato.
- Collegare il condensatore e il diodo zener su 4.7k
- Collega un filo dal terminale n del diodo al pin analogico A0 di Arduino.
** Nota: collegare il pin di terra di Arduino al punto come mostrato in figura o il circuito non funzionerà.
Hai bisogno di un circuito divisore di tensione?
Dato che stiamo usando un trasformatore da 220/12 v, otteniamo 12 v sul lato bt. Poiché questa tensione non è adatta come ingresso per Arduino, è necessario un circuito partitore di tensione che possa fornire un valore di tensione adeguato come ingresso per Arduino
Perché diodo e condensatore sono collegati?
Poiché Arduino non accetta valori di tensione negativi come input, è necessario prima rimuovere il ciclo negativo di step down AC in modo che Arduino prenda solo il valore di tensione positivo. Quindi il diodo è collegato per correggere la tensione di abbassamento. Controlla il nostro circuito del raddrizzatore a semionda e del raddrizzatore a onda intera per saperne di più sulla rettifica.
Questa tensione rettificata non è regolare in quanto contiene grandi ondulazioni che non possono darci alcun valore analogico esatto. Quindi il condensatore è collegato per appianare il segnale CA.
Scopo del diodo zener?
Arduino può subire danni se viene alimentata una tensione superiore a 5v. Quindi un diodo zener 5v è collegato per garantire la sicurezza di Arduino che si guasta nel caso in cui questa tensione superi i 5v.
Funzionamento del voltmetro CA basato su Arduino:
1. La tensione di abbassamento si ottiene sul lato bt del trasformatore che è adatto per l'uso su normali resistori di potenza.
2. Quindi otteniamo un valore di tensione adeguato attraverso il resistore 4.7k
La tensione massima che può essere misurata si trova simulando questo circuito su proteus (spiegato nella sezione simulazione).
3. Arduino prende questa tensione come input dal pin A0 sotto forma di valori analogici compresi tra 0 e 1023. 0 è 0 volt e 1023 è 5v.
4. Arduino converte quindi questo valore analogico nella corrispondente tensione CA di rete mediante una formula. (Spiegato nella sezione codice).
Simulazione:
Il circuito esatto è realizzato in proteus e quindi simulato. Per trovare la tensione massima che questo circuito può misurare viene utilizzato il metodo di prova e colpo.
Quando si effettua la tensione di picco dell'alternatore 440 (311 rms), la tensione sul pin A0 è risultata pari a 5 volt, ovvero massima. Quindi questo circuito può misurare una tensione massima di 311 rms.
La simulazione viene eseguita per varie tensioni comprese tra 220 rms e 440v.
Spiegazione del codice:
Il codice completo di ArduinoVoltmeter viene fornito alla fine di questo progetto ed è ben spiegato attraverso i commenti. Qui ne stiamo spiegando alcune parti.
m è il valore analogico di ingresso ricevuto sul pin A0 cioè, m = pinMode (A0, INPUT); // imposta il pin a0 come pin di input
Per assegnare la variabile n a questa formula n = (m * . 304177), prima viene eseguita una sorta di calcolo utilizzando i dati ottenuti nella sezione di simulazione:
Come si vede nella fotografia di simulazione, il valore analogico 5v o 1023 viene ottenuto sul pin A0 quando la tensione CA in ingresso è 311 volt. Quindi:
Quindi qualsiasi valore analogico casuale corrisponde a (311/1023) * m dove m è ottenuto il valore analogico.
Quindi arriviamo a questa formula:
n = (311/1023) * m volt oppure n = (m *.304177)
Ora questo valore di tensione viene stampato sul monitor seriale utilizzando i comandi seriali come spiegato di seguito. E anche mostrato sul multimetro come dimostrato nel video qui sotto.
I valori stampati sullo schermo sono:
Valore ingresso analogico come specificato nel codice:
Serial.print ("ingresso analogico"); // questo dà il nome che è "ingresso analogico" al valore analogico stampato Serial.print (m); // questo stampa semplicemente il valore analogico di ingresso
Tensione CA richiesta come specificato nel codice:
Serial.print ("tensione ac"); // questo dà il nome "tensione ac" al valore analogico stampato Serial.print (n); // stampa semplicemente il valore della tensione CA.