Description
Module 4 Relais Statique 5V
Le module 4 relais statique 5V est un dispositif électronique utilisé pour commuter des charges électriques. Contrairement aux relais mécaniques, les relais statiques n’ont pas de pièces mobiles et sont donc plus fiables et rapides. Ce tutoriel porte sur la version du relais statique avec une activation haute, c’est-à-dire que le relais s’active lorsque le signal d’entrée est à un niveau haut (5V).
Caractéristiques en détails
- Tension de fonctionnement : 5V DC
- Courant de fonctionnement : 12.5 mA par canal
- Tension de sortie : 240V AC max par canal
- Courant de sortie : 2A max par canal
- Type de relais : Statique (Solid State)
- Signal de commande : Actif Haut
- Isolation : Opto-isolation entre la charge et le circuit de commande
Fonctionnement
Le relais statique utilise un circuit opto-isolé pour séparer la commande et la charge. Lorsque le signal d’entrée est haut (5V), l’opto-coupleur est activé, permettant au relais de conduire et de commuter la charge connectée.
Applications
- Contrôle de charges électriques AC
- Automatisation industrielle
- Projets domotiques
- Contrôle de moteurs, lumières et autres appareils électriques
Brochage
- VCC : Alimentation (5V)
- GND : Masse
- IN1 : Signal de commande pour le relais 1 (actif haut)
- IN2 : Signal de commande pour le relais 2 (actif haut)
- IN3 : Signal de commande pour le relais 3 (actif haut)
- IN4 : Signal de commande pour le relais 4 (actif haut)
- NO1 : Normalement ouvert (sortie de charge du relais 1)
- COM1 : Commun (sortie de charge du relais 1)
- NO2 : Normalement ouvert (sortie de charge du relais 2)
- COM2 : Commun (sortie de charge du relais 2)
- NO3 : Normalement ouvert (sortie de charge du relais 3)
- COM3 : Commun (sortie de charge du relais 3)
- NO4 : Normalement ouvert (sortie de charge du relais 4)
- COM4 : Commun (sortie de charge du relais 4)
Comment l’utiliser avec Arduino Uno
Connexion :
- Connecter VCC à 5V sur l’Arduino.
- Connecter GND à la masse sur l’Arduino.
- Connecter IN1 à une broche numérique de l’Arduino (ex: D7).
- Connecter IN2 à une autre broche numérique de l’Arduino (ex: D8).
- Connecter IN3 à une autre broche numérique de l’Arduino (ex: D9).
- Connecter IN4 à une autre broche numérique de l’Arduino (ex: D10).
- Connecter les charges à commuter entre NO1 et COM1 pour le relais 1, NO2 et COM2 pour le relais 2, NO3 et COM3 pour le relais 3, et NO4 et COM4 pour le relais 4.
Exemple de Code Basique
int relay1Pin = 7; // Broche de commande du relais 1
int relay2Pin = 8; // Broche de commande du relais 2
int relay3Pin = 9; // Broche de commande du relais 3
int relay4Pin = 10; // Broche de commande du relais 4
void setup() {
pinMode(relay1Pin, OUTPUT); // Définir la broche comme sortie pour le relais 1
pinMode(relay2Pin, OUTPUT); // Définir la broche comme sortie pour le relais 2
pinMode(relay3Pin, OUTPUT); // Définir la broche comme sortie pour le relais 3
pinMode(relay4Pin, OUTPUT); // Définir la broche comme sortie pour le relais 4
}
void loop() {
digitalWrite(relay1Pin, HIGH); // Activer le relais 1
digitalWrite(relay2Pin, HIGH); // Activer le relais 2
digitalWrite(relay3Pin, HIGH); // Activer le relais 3
digitalWrite(relay4Pin, HIGH); // Activer le relais 4
delay(1000); // Attendre 1 seconde
digitalWrite(relay1Pin, LOW); // Désactiver le relais 1
digitalWrite(relay2Pin, LOW); // Désactiver le relais 2
digitalWrite(relay3Pin, LOW); // Désactiver le relais 3
digitalWrite(relay4Pin, LOW); // Désactiver le relais 4
delay(1000); // Attendre 1 seconde
}
But du code : Ce code active et désactive les quatre relais toutes les secondes.
Composants nécessaires :
- Arduino Uno
- Module relais statique 5V actif haut (4 canaux)
- Fils de connexion
- Charges (ex: lampes)
Explications détaillées du code :
- Déclaration des broches des relais :
int relay1Pin = 7;
,int relay2Pin = 8;
,int relay3Pin = 9;
, etint relay4Pin = 10;
définissent les broches de commande des relais. - Initialisation dans
setup()
:pinMode(relay1Pin, OUTPUT);
,pinMode(relay2Pin, OUTPUT);
,pinMode(relay3Pin, OUTPUT);
, etpinMode(relay4Pin, OUTPUT);
configurent les broches des relais comme sorties.
- Boucle principale
loop()
:digitalWrite(relay1Pin, HIGH);
,digitalWrite(relay2Pin, HIGH);
,digitalWrite(relay3Pin, HIGH);
, etdigitalWrite(relay4Pin, HIGH);
activent les relais.delay(1000);
crée une pause de 1 seconde.digitalWrite(relay1Pin, LOW);
,digitalWrite(relay2Pin, LOW);
,digitalWrite(relay3Pin, LOW);
, etdigitalWrite(relay4Pin, LOW);
désactivent les relais.delay(1000);
crée une pause de 1 seconde avant de répéter la boucle.
Brochage pour le Code Basique
- VCC du module relais connecté à 5V sur l’Arduino.
- GND du module relais connecté à la masse sur l’Arduino.
- IN1 du module relais connecté à D7 sur l’Arduino.
- IN2 du module relais connecté à D8 sur l’Arduino.
- IN3 du module relais connecté à D9 sur l’Arduino.
- IN4 du module relais connecté à D10 sur l’Arduino.
- NO1 et COM1 du relais connecté à la charge 1.
- NO2 et COM2 du relais connecté à la charge 2.
- NO3 et COM3 du relais connecté à la charge 3.
- NO4 et COM4 du relais connecté à la charge 4.
Exemple de Code Avancé (avec capteur de température DHT11)
#include <DHT.h>
// Brève description du capteur et de sa fonctionnalité
// Le DHT11 est un capteur de température et d'humidité qui mesure
// la température en degrés Celsius et l'humidité en pourcentage.
#define DHTPIN 2 // Broche de signal du DHT11
#define DHTTYPE DHT11 // Type de capteur DHT
#define RELAY1PIN 7 // Broche de commande du relais 1
#define RELAY2PIN 8 // Broche de commande du relais 2
#define RELAY3PIN 9 // Broche de commande du relais 3
#define RELAY4PIN 10 // Broche de commande du relais 4
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600); // Initialiser la communication série
dht.begin(); // Initialiser le capteur DHT
pinMode(RELAY1PIN, OUTPUT); // Définir la broche comme sortie pour le relais 1
pinMode(RELAY2PIN, OUTPUT); // Définir la broche comme sortie pour le relais 2
pinMode(RELAY3PIN, OUTPUT); // Définir la broche comme sortie pour le relais 3
pinMode(RELAY4PIN, OUTPUT); // Définir la broche comme sortie pour le relais 4
}
void loop() {
float currentTemperature = dht.readTemperature(); // Lire la température
if (isnan(currentTemperature)) {
Serial.println(F("Erreur lors de la lecture de la température !"));
return;
}
// Logique de contrôle des relais
int relayStates[] = {
(currentTemperature > 25) ? HIGH : LOW, // Relais 1
(currentTemperature < 20) ? HIGH : LOW, // Relais 2
(currentTemperature > 30) ? HIGH : LOW, // Relais 3
(currentTemperature < 15) ? HIGH : LOW // Relais 4
};
for (int i = 0; i < 4; i++) {
digitalWrite(RELAY1PIN + i, relayStates[i]);
}
delay(2000); // Attendre 2 secondes avant de refaire une lecture
}
But du code : Ce code utilise un capteur de température DHT11 pour activer les relais 1 et 3 si la température dépasse respectivement 25°C et 30°C, et activer les relais 2 et 4 si la température descend en dessous de respectivement 20°C et 15°C.
Composants nécessaires :
- Arduino Uno
- Module relais statique 5V actif haut (4 canaux)
- Capteur de température DHT11
- Fils de connexion
- Charges (ex: ventilateur, chauffage, etc.)
Explications détaillées du code :
- Inclusion des bibliothèques :
#include <DHT.h>
inclut la bibliothèque pour le capteur DHT11. - Déclaration des broches et initialisation du capteur :
#define DHTPIN 2
définit la broche de signal du DHT11.#define RELAY1PIN 7
,#define RELAY2PIN 8
,#define RELAY3PIN 9
, et#define RELAY4PIN 10
définissent les broches de commande des relais.DHT dht(DHTPIN, DHTTYPE);
initialise l’objet DHT pour interagir avec le capteur.
- Initialisation dans
setup()
:Serial.begin(9600);
initialise la communication série pour les messages de débogage.dht.begin();
initialise le capteur DHT11.pinMode(RELAY1PIN, OUTPUT);
,pinMode(RELAY2PIN, OUTPUT);
,pinMode(RELAY3PIN, OUTPUT);
, etpinMode(RELAY4PIN, OUTPUT);
configurent les broches des relais comme sorties.
- Boucle principale
loop()
:float currentTemperature = dht.readTemperature();
lit la température du capteur.- Si la température est un nombre invalide (isnan), un message d’erreur est affiché et la boucle est arrêtée.
- La logique de contrôle des relais est ensuite appliquée :
- Si la température est supérieure à 25°C, le relais 1 est activé.
- Si la température est inférieure à 20°C, le relais 2 est activé.
- Si la température est supérieure à 30°C, le relais 3 est activé.
- Si la température est inférieure à 15°C, le relais 4 est activé.
- La fonction
delay(2000);
crée une pause de 2 secondes avant la prochaine lecture.
Brochage pour le Code Avancé
- VCC du module relais connecté à 5V sur l’Arduino.
- GND du module relais connecté à la masse sur l’Arduino.
- IN1 du module relais connecté à D7 sur l’Arduino.
- IN2 du module relais connecté à D8 sur l’Arduino.
- IN3 du module relais connecté à D9 sur l’Arduino.
- IN4 du module relais connecté à D10 sur l’Arduino.
- VCC du capteur DHT11 connecté à 5V sur l’Arduino.
- GND du capteur DHT11 connecté à la masse sur l’Arduino.
- Signal du capteur DHT11 connecté à D2 sur l’Arduino.
- NO1 et COM1 du relais connecté à la charge 1.
- NO2 et COM2 du relais connecté à la charge 2.
- NO3 et COM3 du relais connecté à la charge 3.
- NO4 et COM4 du relais connecté à la charge 4.
Installation de Drivers/bibliothèques
Pour utiliser ce capteur avec Arduino, vous devez installer la bibliothèque DHT11 depuis le gestionnaire de bibliothèques de l’IDE Arduino. Recherchez “DHT sensor library” et installez-la.
Mots clés: Relais statique, 5V, Arduino, Automation, Home automation, Arduino tutorial, static.