- Composants requis:
- Schéma du circuit du voltmètre Arduino:
- Fonctionnement du voltmètre AC basé sur Arduino:
- Simulation:
- Explication du code:
Dans ce projet, nous allons fabriquer un appareil de mesure de tension alternative utilisant Arduino, qui mesurera la tension de l'alimentation en courant alternatif chez nous. Nous allons imprimer cette tension sur le moniteur série de Arduino IDE ainsi que l'afficher sur le multimètre.
Faire un voltmètre numérique est beaucoup plus facile que de fabriquer un voltmètre analogique car dans le cas d'un voltmètre analogique, vous devez avoir une bonne connaissance des paramètres physiques comme le couple, les pertes par frottement, etc. alors que dans le cas d'un voltmètre numérique, vous pouvez simplement utiliser une matrice LCD ou LED ou même votre ordinateur portable (comme dans ce cas) pour imprimer les valeurs de tension pour vous. Voici quelques projets de voltmètre numérique:
- Circuit de voltmètre numérique simple avec PCB utilisant ICL7107
- Circuit de voltmètre LM3914
- Voltmètre numérique 0-25V utilisant un microcontrôleur AVR
Composants requis:
- Un transformateur 12-0-12
- Diode 1N4007
- Condensateur 1 uf
- Résistances 10k; 4,7k.
- Diode Zener (5v)
- Arduino UNO
- Fils de connexion
Schéma du circuit du voltmètre Arduino:
Le schéma de circuit de ce voltmètre Arduino est illustré ci-dessus.
Connexions:
- Connectez le côté haute tension (220 V) du transformateur à l'alimentation secteur et la basse tension (12 V) au circuit diviseur de tension.
- Connectez une résistance de 10 k en série avec une résistance de 4,7 k, mais assurez-vous de prendre la tension comme entrée à travers la résistance de 4,7 k.
- Connectez la diode comme indiqué.
- Connectez le condensateur et la diode Zener sur 4,7k
- Connectez un fil de la borne n de la diode à la broche analogique A0 d'Arduino.
** Remarque: connectez la broche de terre d'Arduino au point indiqué sur la figure, sinon le circuit ne fonctionnera pas.
Besoin d'un circuit diviseur de tension?
Comme nous utilisons un transformateur 220/12 v, nous obtenons 12 v côté lv. Étant donné que cette tension ne convient pas comme entrée pour Arduino, nous avons besoin d'un circuit diviseur de tension qui peut donner une valeur de tension appropriée en tant qu'entrée d'Arduino
Pourquoi la diode et le condensateur sont-ils connectés?
Étant donné qu'Arduino ne prend pas de valeurs de tension négatives en entrée, nous devons d'abord supprimer le cycle négatif de l'abaissement du courant alternatif afin que seule la valeur de tension positive soit prise par Arduino. Par conséquent, la diode est connectée pour redresser la tension d'abaissement. Consultez notre circuit redresseur demi-onde et redresseur pleine onde pour en savoir plus sur le redressement.
Cette tension redressée n'est pas régulière car elle contient de grandes ondulations qui ne peuvent pas nous donner de valeur analogique exacte. Par conséquent, le condensateur est connecté pour lisser le signal alternatif.
But de la diode Zener?
Arduino peut être endommagé si une tension supérieure à 5 V lui est fournie. Par conséquent, une diode Zener 5v est connectée pour assurer la sécurité d'Arduino qui se bloque au cas où cette tension dépasserait 5v.
Fonctionnement du voltmètre AC basé sur Arduino:
1. La tension d'abaissement est obtenue sur le côté lv du transformateur qui convient à une utilisation sur des résistances de puissance nominale normales.
2. Ensuite, nous obtenons une valeur de tension appropriée à travers une résistance de 4,7 k
La tension maximale qui peut être mesurée est trouvée en simulant ce circuit sur proteus (expliqué dans la section simulation).
3. Arduino prend cette tension comme entrée de la broche A0 sous forme de valeurs analogiques entre 0 et 1023. 0 étant 0 volt et 1023 étant 5v.
4. Arduino convertit ensuite cette valeur analogique en tension alternative du secteur correspondante par une formule. (Expliqué dans la section code).
Simulation:
Le circuit exact est réalisé en proteus puis simulé. Pour trouver la tension maximale que ce circuit peut mesurer, une méthode d'essai est utilisée.
En établissant la tension de crête de l'alternateur 440 (311 rms), la tension sur la broche A0 s'est avérée être de 5 volts, c'est-à-dire au maximum. Par conséquent, ce circuit peut mesurer une tension efficace de 311 maximum.
La simulation est effectuée pour différentes tensions entre 220 rms et 440v.
Explication du code:
Le code ArduinoVoltmeter complet est donné à la fin de ce projet et il est bien expliqué à travers les commentaires. Ici, nous n'en expliquons qu'une partie.
m est la valeur analogique d'entrée reçue sur la broche A0, c'est-à-dire
m = pinMode (A0, INPUT); // définir la broche a0 comme broche d'entrée
Pour affecter la variable n à cette formule n = (m * . 304177), une sorte de calcul est d'abord effectuée en utilisant les données obtenues dans la section simulation:
Comme on le voit sur la photographie de simulation, une valeur analogique 5v ou 1023 est obtenue à la broche A0 lorsque la tension alternative d'entrée est de 311 volts. Par conséquent:
Ainsi, toute valeur analogique aléatoire correspond à (311/1023) * m où m est une valeur analogique obtenue.
Nous arrivons donc à cette formule:
n = (311/1023) * m volts ou n = (m *.304177)
Maintenant, cette valeur de tension est imprimée sur le moniteur série à l'aide des commandes série comme expliqué ci-dessous. Et également montré sur le multimètre comme démontré dans la vidéo ci-dessous.
Les valeurs imprimées à l'écran sont:
Valeur d'entrée analogique telle que spécifiée dans le code:
Serial.print ("entrée analogique"); // cela donne le nom qui est «entrée analogique» à la valeur analogique imprimée Serial.print (m); // cela imprime simplement la valeur analogique d'entrée
Tension alternative requise comme spécifié dans le code:
Serial.print ("tension alternative"); // cela donne le nom «tension alternative» à la valeur analogique imprimée Serial.print (n); // ceci imprime simplement la valeur de la tension alternative