Contrôle de LED à partir la plateforme IoT de YoupiLab
.png)
Contrôle de LEDs à partir la plateforme IoT de YoupiLab
Ce tutoriel nous montre comment contrôler deux LEDs (rouge et verte) connectées à un ESP32(à partir de la bibliothèque YoupiLab_IoT_ESP) via la plateforme YoupiLab IoT. Nous allons vous montrer se faire le câblage du système, aller sur la plateforme pour créer un nouvel objet et une télécommande avec des touches (deux touches dans notre cas) et le code-source commenté et expliqué.
Image du câblage du système de Contrôle de led
Liste des composants utilisés
-un Module wifi NODE MCU ESP 32
-un Bredboard + jumpers
-Deux LEDs(rouge et vert)
-un câble de connexion USB
Bibliothèques requises
#include <YoupiLab_IoT_ESP.h> :cette bibliothèque est utilisée pour connecter l’ESP32 à Internet pour le contrôler à distance via l’interface YoupiLab IoT.
Schéma du câblage du système
Procédure à suivre sur la plateforme
S’inscrire et se connecter sur la plateforme.
Créer un nouvel objet en cliquant le bouton plus en haut à côté droit.
Copiez les APP-ID et APP-KEY de l’objet créé en cliquant sur la partie description de l’objet et allez les coller dans le code source.
Aller dans la section télécommande et créer une nouvelle télécommande en cliquant le bouton plus en haut à côté droit.
Créer les touches de la télécommande en cliquant le bouton plus en haut à côté droit.
Une fois les deux touches de la télécommande créée, vous pouvez maintenant les utiliser pour commander les deux lEDs depuis la plateforme.
Le code-source commenté
#include <YoupiLab_IoT_ESP.h>
/*Connexion au wifi
Identifiants de la plateforme
Déclaration des broches
Déclaration des variables
Fonction pour afficher les erreurs
*/
const char* ssid = "youpilab_fibre";
const char* password = "i_l@v3_yl2021Fibre";
String APP_ID = "sys745ae"; // Equipment APP ID
String APP_KEY = "87ee88be"; // Equipment Key
YoupiLab_IoT_ESP YlIoTDriver(APP_ID, APP_KEY);
// LEDs connectées sur les GPIO 21 et 22
int led_rouge = 21;
int led_verte = 22;
// Variables de bouton depuis la plateforme
int button_rouge;
int button_vert;
int nombre_boutons = 2;
void printLastError() {
String error = YlIoTDriver.getLastError();
Serial.print("Erreur détectée : ");
Serial.println(error);
}
/*Récupération de l’état des boutons virtuels
Contrôle des deux LEDs selon l’état des boutons
*/
void setup() {
Serial.begin(9600);
if (YlIoTDriver.connectToWifi(ssid, password) == 1) {
Serial.println("Connecté au WiFi avec succès !");
} else {
Serial.print("Échec de connexion au WiFi : ");
Serial.println(ssid);
}
pinMode(led_rouge, OUTPUT);
pinMode(led_verte, OUTPUT);
}
void loop() {
if (YlIoTDriver.executeAction(nombre_boutons, &button_rouge, &button_vert) == 1) {
// LED rouge
if (button_rouge == 1) {
digitalWrite(led_rouge, HIGH);
} else {
digitalWrite(led_rouge, LOW);
}
// LED verte
if (button_vert == 1) {
digitalWrite(led_verte, HIGH);
} else {
digitalWrite(led_verte, LOW);
}
} else {
printLastError();
}
delay(500); // Pause pour éviter une surcharge
}
Résumé de chaque partie du code
Partie1
Dans ce bout de code, le système essaye de se connecter au Wifi à partir des informations que vous aurez rempli au début du code. Si la connexion est réussie, le message « Connecté au WiFi avec succès ! » apparaît dans le moniteur série sinon, vous verrez plutôt : « Échec de connexion au WiFi : ». Nous avons ensuite une initialisation des Led Rouge (GPIO 21) et Led Verte (GPIO 22) qui sont configurées en sortie (OUTPUT).
Partie2
Ce second bout de code appelle la fonction « executeAction() » de la bibliothèque YoupiLab_IoT_ESP, lit les états des boutons virtuels depuis l'interface YoupiLab IoT.
Ainsi, dès que la lecture est réussie, les conditions s’exécutent et nous avons les résultats appropriés. Mais si la lecture échoue, le moniteur série nous affiche l’erreur avec la fonction « printLastError() ».
TEST
Les deux leds allumées après le clic des boutons créés à partir de la télécommande de l’objet.