Allegro ACS758 capteur de courant avec écran LCD et protection contre les surintensités pour Arduino
Dans ce tutoriel, nous apprendrons comment utiliser le capteur de courant Allegro ACS758 avec un écran LCD pour afficher les relevés de courant et mettre en œuvre une protection contre les surintensités. Cette configuration permet de surveiller le courant et de déconnecter la charge automatiquement si celui-ci dépasse une limite prédéfinie. Le projet combine matériel et logiciel pour créer un système de surveillance du courant fonctionnel.

En suivant ce guide, vous serez en mesure de câbler correctement les composants et de comprendre la logique de programmation du code. Pour une explication plus visuelle, consultez la vidéo associée (à 00:00).
Le matériel expliqué
Les composants clés de ce projet comprennent le capteur de courant Allegro ACS758, un afficheur LCD1602 avec interface I2C, et une carte Arduino. Le capteur ACS758 mesure le courant qui le traverse et fournit une tension proportionnelle au courant. Le LCD1602 affiche les mesures de courant et les messages d'état, tandis que l'Arduino traite les données et commande le relais pour la protection contre les surintensités.
Le capteur ACS758 fonctionne selon un principe appelé détection par effet Hall, qui lui permet de mesurer le courant sans contact électrique direct. La tension de sortie varie en fonction de l'intensité du courant le traversant, offrant un moyen sûr et efficace de surveiller les charges électriques.
Détails de la fiche technique
| Fabricant | Allegro MicroSystems |
|---|---|
| Numéro de pièce | ACS758 |
| Tension logique / E/S | 3.3V / 5V |
| Tension d'alimentation | 5 V |
| Courant de sortie (par canal) | 200 A max |
| Courant de crête (par canal) | 200A |
| Recommandations sur la fréquence PWM | Sans objet |
| Seuils logiques d'entrée | 0,5 × VCC (bidirectionnel) |
| Chute de tension / RDS(on)/ saturation | Sans objet |
| Limites thermiques | 150 °C |
| Paquet | montage sur circuit imprimé |
| Notes / variantes | Plusieurs modèles disponibles pour différentes plages de courant |
- Assurez une dissipation thermique adéquate si l'appareil fonctionne près des limites maximales.
- Utilisez des condensateurs de découplage pour stabiliser la tension d'alimentation.
- Vérifiez que le relais utilisé peut supporter le courant de charge maximal.
- Soyez prudent avec le câblage pour éviter les courts-circuits.
- Parmi les pièges courants figurent les entrées flottantes ; assurez-vous que toutes les connexions sont bien établies.
- Surveillez la surchauffe du capteur lors d'une utilisation prolongée.
Composants nécessaires
- Capteur de courant ACS758
- relais 12 V 100 A
- LCD1602 avec I2C (4 fils)
- Transistor 2N2222 ou 2N3904
- 1 kΩ 1/4 W ou toute résistance de puissance
- Alimentation pour relais
- Alimentation pour votre charge
- Plaque d'essai
- Fils de connexion
Instructions de câblage

Pour câbler le capteur de courant Allegro ACS758 et l'écran LCD1602, commencez par connecter le capteur ACS758. Connectez leVCCbroche du capteur à la broche 5V de l'Arduino. LeGNDLa broche doit être connectée à une broche de masse sur l'Arduino. LeSLa broche (signal) du capteur doit être connectée à la broche d'entrée analogique.A0sur l'Arduino.
Ensuite, pour le LCD1602, connectez leVCCbroche sur la broche 5V de l'Arduino et leGNDÉpingler au sol. LeSDALa broche de l'écran LCD doit être connectée à laA4la broche (SDA) de l'Arduino, tandis que leSCLla broche devrait se connecter àA5La broche (SCL) de l'Arduino. Enfin, connectez un module relais à la broche numérique2pour contrôler la charge en fonction des mesures de courant.
Exemples de code et guide pas à pas
Dans le code Arduino, nous commençons par définir des identifiants clés tels queVIN, qui représente la broche d'entrée analogique connectée au capteur ACS758. LerelayPinest configuré pour la commande du relais, tandis quemaxCurrentdéfinit le seuil de protection contre les surintensités.
#define VIN A0 // define the Arduino pin A0 as voltage input (V in)
const int relayPin = 2; // set a digital pin for relay
const float maxCurrent = 15.00; // set maximum Current
Lesetup()La fonction initialise l'écran LCD et configure la broche du relais en sortie. Elle affiche également un message de bienvenue sur l'écran LCD, informant l'utilisateur du capteur de courant utilisé.
void setup() {
pinMode(relayPin, OUTPUT); // set relayPin as output
Serial.begin(9600); // initialize serial monitor
lcd.begin(); // initialize the LCD
lcd.backlight(); // Turn on the blacklight
lcd.print("Robojax");
}
Dans leloop()Dans la fonction, nous lisons en continu la tension du capteur et calculons le courant. Si le courant dépasse la valeur maximale, le relais est activé pour déconnecter la charge. Cette logique garantit que le système se protège contre les surintensités.
void loop() {
float voltage_raw = (5.0 / 1023.0) * analogRead(VIN); // Read the voltage from sensor
float current = voltage / FACTOR; // Calculate current
if (current >= minCurrent) {
if (current <= maxCurrent) {
digitalWrite(relayPin, LOW); // turn the relay OFF to allow current
} else {
digitalWrite(relayPin, HIGH); // turn the relay ON to disconnect current
}
}
}
Démonstration / À quoi s'attendre
Une fois que tout est câblé et que le code est téléversé, l'écran LCD affichera les valeurs de courant. Si le courant dépasse le seuil définimaxCurrent, le relais s'activera, déconnectant la charge. Vous pouvez tester cela en augmentant progressivement le courant de charge et en observant les changements sur l'écran LCD et dans le moniteur série. Veillez à éviter les connexions de polarité inversée, car cela peut endommager les composants (dans la vidéo à 10:15).
Ce dont vous pourriez avoir besoin
-
Amazon
-
Amazon
-
Amazon
-
AliExpressAchetez 10 pièces de LCD1602-I2C sur AliExpresss.click.aliexpress.com
-
AliExpressAchetez un LCD1602 sur AliExpresss.click.aliexpress.com
-
BanggoodAchetez un écran LCD1602 sur Banggoodbanggood.com
Ressources et références
-
Externe
-
Externe
-
ExterneAchetez un LCD1602 sur AliExpresss.click.aliexpress.com
-
Externe
-
ExterneAchetez un écran LCD1602 sur Banggoodbanggood.com
Fichiers📁
Fiche technique (pdf)
-
Fiche technique du capteur de courant ACS758
robojax_ACS758_current_sensor_datasheet.pdf1.03 MB