- Matériaux nécessaires:
- Fonctionnement du capteur de courant ACS712:
- Schéma:
- Simulation:
- Programmation du microcontrôleur PIC:
- Travail:
Mesurer la tension et le courant sera toujours utile lors de la création ou du débogage de tout système électrique. Dans ce projet, nous allons fabriquer notre propre ampèremètre numérique en utilisant le microcontrôleur PIC16F877A et le capteur de courant ACS712-5A. Ce projet peut mesurer à la fois le courant alternatif et continu avec une plage de 0 à 30 A avec une précision de 0,3 A. Avec quelques modifications sur le code, vous pouvez également utiliser ce circuit pour mesurer jusqu'à 30A. Alors commençons !!!
Matériaux nécessaires:
- PIC16F877A
- Régulateur de tension 7805
- Capteur de courant ACS712
- Écran LCD 16 * 2
- Une boîte de jonction et une charge (juste pour tester)
- Fils de connexion
- Condensateurs
- Planche à pain.
- Alimentation - 12V
Fonctionnement du capteur de courant ACS712:
Avant de commencer à construire le projet, il est très important pour nous de comprendre le fonctionnement du capteur de courant ACS712 car il s'agit du composant clé du projet. Mesurer le courant, en particulier le courant alternatif, est toujours une tâche difficile en raison du bruit associé à un problème d'isolation incorrect, etc. Mais, avec l'aide de ce module ACS712 qui a été conçu par Allegro, les choses sont devenues beaucoup plus faciles.
Ce module fonctionne sur le principe de l' effet Hall, qui a été découvert par le Dr Edwin Hall. Selon son principe, lorsqu'un conducteur porteur de courant est placé dans un champ magnétique, une tension est générée sur ses bords perpendiculaires aux directions à la fois du courant et du champ magnétique. N'allons pas trop loin dans le concept mais, en termes simples, nous utilisons un capteur à effet Hall pour mesurer le champ magnétique autour d'un conducteur porteur de courant. Cette mesure sera exprimée en millivolts que nous appelons la tension hall. Cette tension Hall mesurée est proportionnelle au courant qui circulait dans le conducteur.
Le principal avantage de l'utilisation du capteur de courant ACS712 est qu'il peut mesurer à la fois le courant alternatif et le courant continu et qu'il fournit également une isolation entre la charge (charge CA / CC) et l'unité de mesure (partie microcontrôleur). Comme le montre l'image, nous avons trois broches sur le module qui sont respectivement Vcc, Vout et Ground.
Le bornier à 2 broches est l'endroit où le fil porteur de courant doit être passé. Le module fonctionne sur + 5V, le Vcc doit donc être alimenté par 5V et la terre doit être connectée à la terre du système. La broche Vout a une tension de décalage de 2500 mV, ce qui signifie que lorsqu'il n'y a pas de courant circulant dans le fil, la tension de sortie sera de 2500 mV et lorsque le courant circulant est positif, la tension sera supérieure à 2500 mV et lorsque le courant circulant est négatif, le la tension sera inférieure à 2500 mV.
Nous utiliserons le module ADC du microcontrôleur PIC pour lire la tension de sortie (Vout) du module, qui sera de 512 (2500mV) lorsqu'il n'y a pas de courant circulant dans le fil. Cette valeur diminuera à mesure que le courant circule dans le sens négatif et augmentera à mesure que le courant circule dans le sens positif. Le tableau ci-dessous vous aidera à comprendre comment la tension de sortie et la valeur ADC varient en fonction du courant traversant le fil.
Ces valeurs ont été calculées sur la base des informations fournies dans la fiche technique de l'ACS712. Vous pouvez également les calculer à l'aide des formules ci-dessous:
Tension Vout (mV) = (Valeur ADC / 1023) * 5000 Courant à travers le fil (A) = (Vout (mv) -2500) / 185
Maintenant que nous savons comment fonctionne le capteur ACS712 et ce que nous pouvons en attendre. Passons au schéma de circuit.
Schéma:
Le schéma de circuit complet de ce projet d'ampèremètre numérique est présenté dans l'image ci-dessous.
Le circuit de compteur de courant numérique complet fonctionne sur + 5V qui est régulé par un régulateur de tension 7805. Nous avons utilisé un écran LCD 16X2 pour afficher la valeur du courant. La broche de sortie du capteur de courant (Vout) est connectée à la 7 e broche du PIC qui est l'AN4 pour lire la tension analogique.
En outre, la connexion des broches pour le PIC est indiquée dans le tableau ci-dessous
S.Non: |
Code PIN |
Nom de la broche |
Connecté à |
1 |
21 |
RD2 |
RS de l'écran LCD |
2 |
22 |
RD3 |
E de l'écran LCD |
3 |
27 |
RD4 |
D4 de l'écran LCD |
4 |
28 |
RD5 |
D5 de l'écran LCD |
5 |
29 |
RD6 |
D6 de l'écran LCD |
6 |
30 |
RD7 |
D7 de l'écran LCD |
sept |
sept |
AN4 |
Vout du Sesnor actuel |
Vous pouvez construire ce circuit d'ampèremètre numérique sur une maquette ou utiliser une carte de performance. Si vous avez suivi les tutoriels PIC, vous pouvez également réutiliser le matériel que nous avons utilisé pour apprendre les microcontrôleurs PIC. Ici, nous avons utilisé la même carte de performance que nous avons construite pour le clignotement des LED avec le microcontrôleur PIC, comme indiqué ci-dessous:
Remarque: Il n'est pas obligatoire pour vous de construire cette carte, vous pouvez simplement suivre le schéma de circuit et construire votre circuit sur une planche à pain et utiliser n'importe quel kit de dumper pour vider votre programme dans le microcontrôleur PIC.
Simulation:
Ce circuit de compteur de courant peut également être simulé à l'aide de Proteus avant de procéder réellement à votre matériel. Attribuez le fichier hexadécimal du code donné à la fin de ce tutoriel et cliquez sur le bouton de lecture. Vous devriez être en mesure de remarquer le courant sur l'écran LCD. J'ai utilisé une lampe comme charge AC, vous pouvez faire varier la résistance interne de la lampe en cliquant dessus pour faire varier le courant qui la traverse.
Comme vous pouvez le voir sur l'image ci-dessus, l'ampèremètre indique le courant réel circulant à travers la lampe qui est d'environ 3,52 A et l'écran LCD indique que le courant est d'environ 3,6 A. Toutefois, en cas pratique que nous pourrions obtenir erreur jusqu'à 0,2A. La valeur ADC et la tension en (mV) sont également affichées sur l'écran LCD pour votre compréhension.
Programmation du microcontrôleur PIC:
Comme indiqué précédemment, le code complet se trouve à la fin de cet article. Le code est auto-expliqué avec des lignes de commentaires et implique simplement le concept d'interfaçage d'un écran LCD avec le microcontrôleur PIC et l'utilisation du module ADC dans le microcontrôleur PIC que nous avons déjà couvert dans nos précédents tutoriels d'apprentissage des microcontrôleurs PIC.
La valeur lue par le capteur ne sera pas précise car le courant est alternatif et est également soumis au bruit. Par conséquent, nous lisons la valeur ADC pendant 20 fois et la moyenne pour obtenir la valeur actuelle appropriée, comme indiqué dans le code ci-dessous.
Nous avons utilisé les mêmes formules que celles expliquées ci-dessus pour calculer la valeur de tension et de courant.
for (int i = 0; i <20; i ++) // Lire la valeur pendant 20 fois {adc = 0; adc = ADC_Read (4); // Lire la tension ADC = adc * 4.8828; // Calculez la tension si (Tension> = 2500) // Si le courant est positif Ampères + = ((Tension-2500) /18,5); else if (Voltage <= 2500) // Si le courant est négatif Ampères + = ((2500-Voltage) /18.5); } Ampères / = 20; // Moyenne de la valeur lue 20 fois
Étant donné que ce projet peut également lire le courant alternatif, le flux de courant sera également négatif et positif. C'est la valeur de la tension de sortie qui sera supérieure et inférieure à 2500 mV. Par conséquent, comme indiqué ci-dessous, nous modifions les formules de courant négatif et positif afin de ne pas obtenir de valeur négative.
if (Voltage> = 2500) // Si le courant est positif Amps + = ((Voltage-2500) /18.5); else if (Voltage <= 2500) // Si le courant est négatif Ampères + = ((2500-Voltage) /18.5);
Utilisation d'un capteur de courant 30A:
Si vous avez besoin de mesurer un courant supérieur à 5A, vous pouvez simplement acheter un module ACS712-30A et l'interfacer de la même manière et changer la ligne de code ci-dessous en remplaçant 18,5 par 0,66 comme indiqué ci-dessous:
if (Voltage> = 2500) // Si le courant est positif Amps + = ((Voltage-2500) /0.66); else if (Voltage <= 2500) // Si le courant est négatif Ampères + = ((2500-Voltage) /0.66);
Vérifiez également l'ampèremètre 100 mA à l'aide du microcontrôleur AVR si vous souhaitez mesurer un courant faible.
Travail:
Une fois que vous avez programmé le microcontrôleur PIC et préparé votre matériel. Allumez simplement la charge et votre microcontrôleur PIC vous devriez être en mesure de voir le courant passant à travers le fil affiché sur votre écran LCD.
REMARQUE: SI vous utilisez un module ASC7125A, assurez-vous que votre charge ne consomme pas plus de 5 A et utilisez également des fils de calibre plus élevé pour les conducteurs de courant.
Le fonctionnement complet du projet d'ampèremètre basé sur le microcontrôleur PIC est illustré dans la vidéo ci-dessous. J'espère que vous avez fait fonctionner le projet et que vous avez aimé le faire. Si vous avez des doutes, vous pouvez les écrire dans la section commentaires ci-dessous ou les publier sur nos forums.