ACS712: le module capteur de courant

Puce ACS712

Le module ACS712 est une solution abordable pour mesurer le courant dans vos circuits DIY. En tant que maker, vous pourriez avoir besoin de surveiller le courant dans un circuit. Dans ce cas, ce composant vous sera très utile. Le capteur détecte le courant et génère une tension proportionnelle à celui-ci. De plus, sa conception intégrée simplifie grandement la connexion : il est fourni avec des connecteurs et tous les éléments nécessaires, ce qui permet de l'utiliser sans ajouter de composants supplémentaires.

Ce dispositif offre de nombreuses applications, comme vous le constaterez, même avec des intensités différentes dans votre circuit, grâce aux différentes versions de l'ACS712 disponibles. Par exemple, les modèles ACS712-05A, ACS712-20A et ACS712-30A correspondent respectivement à des intensités de 5 A, 20 A et 30 A.

effet Hall

effet Hall

Wikipédia

Le capteur ACS712 fonctionne grâce à l'effet Hall . Il permet de mesurer les champs magnétiques et les courants, comme ici. Lorsqu'un courant traverse le capteur à effet Hall et rencontre un champ magnétique perpendiculaire à celui-ci, il génère une tension de sortie proportionnelle au produit de l'intensité du champ magnétique et du courant. Ainsi, la connaissance de l'intensité du champ magnétique permet de mesurer le courant dans le conducteur ou la bobine.

Les applications de l'effet Hall sont nombreuses : détecteurs de métaux, mesures de courant, mesures de champ magnétique, émetteur de signal sans contact, mesure d'épaisseur de métal, etc.

Caractéristiques de l'ACS712

Module acs712

Le module ACS712 est très simple , basé sur l'effet Hall, et son brochage est très direct. D'un côté, on trouve trois broches, et de l'autre, un connecteur à deux fils permettant de mesurer l'intensité du courant dans le circuit. Les trois broches servent à connecter l'alimentation. Comme illustré ci-dessus, de gauche à droite, on trouve Vcc, la sortie centrale où est effectuée la mesure, et GND à l'extrême droite.

Selon le modèle, il peut mesurer une ou plusieurs intensités de courant en ampères, avec trois versions de base de l'ACS712 :

  • ACS712ELCTR-05B-T: qui atteint jusqu'à -5 et 5A d'intensité maximale tolérée. Avec une sensibilité de 185mV / A.
  • ACS712ELCTR-20A-T: dans ce cas, il varie de -20 à 20A, avec une sensibilité de 100mV / A.
  • ACS712ELCTR-30A-T: augmente jusqu'à une plage de -30 à 30A, avec une sensibilité de 66mV / A.

Une fois cela établi, il faut retenir que la tension de sortie est de 2.5 V si le courant appliqué est nul . Ensuite, selon que le courant est négatif ou positif, la tension augmentera ou diminuera par rapport à cette valeur. On peut tracer une droite sur un graphique, avec la tension et le courant en ordonnée et en abscisse respectivement ; la pente de cette droite représente la sensibilité de chaque module.

Par conséquent, si la tension est de 2.5 volts, on peut appliquer la formule V = SI + 2.5, où S est la pente, équivalente à la sensibilité. En exprimant I en fonction du courant, on obtient I = V - 2.5 / Sensibilité . Autrement dit, la tension moins 2.5 divisée par la sensibilité. Il est important d'en tenir compte lors de l'étalonnage du microcontrôleur Arduino pendant la programmation.

Brochage, fiche technique et où acheter

Pour votre connexion à Arduino, c'est super simple grâce au brochage, connectez simplement la broche GND de votre carte Arduino UNO avec le GND du module ACS712, la broche 5v de l'Arduino avec le Vcc du module, et la centrale (sortie) avec l'une des entrées Arduino, par exemple, A0. Et avec cela, le circuit serait déjà complet, en l'absence de connexion du circuit qui fournit l'intensité que vous souhaitez mesurer sur l'onglet vert.

N'oubliez pas que vous pouvez vous le procurer auprès de différentes marques, et je vous conseille de consulter sa fiche technique pour en savoir plus sur les caractéristiques spécifiques de ce module ACS712 particulier, bien qu'elles aient tendance à être assez similaires d'un fabricant à l'autre… Si vous souhaitez voir un exemple, voici une fiche technique d'Allegro.

Il convient également de mentionner que vous pouvez l'acheter dans n'importe quel magasin spécialisé, ou auprès de nombreux grands détaillants en ligne tels qu'Amazon, à des prix allant de 2 € à 11 € selon le modèle, par exemple :

Un exemple d'application avec Arduino

sondes de test

La méthode la plus simple et recommandée pour commencer à utiliser cet appareil est de connecter l'ACS712 à votre carte Arduino , puis de générer un programme simple pour l'IDE Arduino afin de mesurer le courant. Utilisez des cordons de test provenant d'un multimètre défectueux (ou dont vous n'avez plus de composants) pour obtenir un ampèremètre facile à utiliser. Il suffit de toucher un petit circuit avec les cordons pour déterminer le courant. Si vous ne souhaitez pas acheter de cordons de test ou si vous n'en possédez pas, vous pouvez utiliser deux fils conducteurs isolés avec une bonne isolation, capables de supporter le courant que vous souhaitez mesurer.

Prenez les précautions appropriées, si vous travaillez avec des intensités élevées, utilisez des éléments isolants ou vous pouvez subir de graves dommages en cas de choc électrique. Travaillez toujours avec prudence ... Regardez les caractéristiques de votre module et ne dépassez pas les valeurs d'intensité pour lesquelles il est préparé ou il sera endommagé, ni ne dépassez l'intensité maximale à laquelle les sondes ou câbles que vous avez choisis peut marcher.

Le code de votre programme Arduino IDE est très simple :

//Ejemplo de código para medir intensidades para un ACS712 de 5A
float Sensibilidad=0.185; //Sensibilidad en Voltios/Amperio para sensor de 5A a 185mV/A

void setup() {
  
  Serial.begin(9600);
}

void loop() {
  
  float voltajeSensor= analogRead(A0)*(5.0 / 1023.0); //Para la lectura del sensor   
  float I=(voltajeSensor-2.5)/Sensibilidad; //Fórmula para obtener la corriente o intensidad medida con las puntas conectadas al módulo ACS712
  Serial.print("La intensidad en Amperios es de: ");
  Serial.println(I,3); 
  delay(200);     
}

considérations

N'oubliez pas que si vous avez connecté la sortie du module ACS712 à une autre entrée, vous devez remplacer A0 par la broche appropriée. Il en va de même si vous avez utilisé un module de 20 A ou 30 A ; vous devrez alors modifier la valeur de la constante de sensibilité à 100 ou 66.

Vous pouvez également modifier les formules afin que les données de mesure soient exprimées en sous-multiples d'ampères, par exemple en milliampères, si cela convient mieux à votre projet. Vous pouvez aussi ajuster le délai pour effectuer des mesures plus fréquemment ou à intervalles plus longs, selon vos besoins. Enfin, vous pouvez appliquer des filtres aux mesures directement dans le code, les calibrer, etc.

Il faut également savoir que si vous connaissez la tension et le courant, vous pouvez générer des formules dans le code du programme pour calculer d'autres paramètres, comme la résistance à l'aide de la loi d'Ohm. Vous pouvez aussi déterminer la puissance en watts (W) à partir de ces paramètres, et ainsi de suite. Comme vous le savez, la seule limite est votre imagination… enfin, et les limitations de la technologie que vous utilisez.

Comme vous le savez, si vous souhaitez en savoir plus sur la programmation Arduino , vous pouvez télécharger gratuitement ici un manuel PDF pour débutants .


Ajouter comme source préférée dans Google