2. Obtenir des Données depuis Blynk

Dans ce chapitre, vous apprendrez à contrôler le circuit avec Blynk. Allumons les LED via Internet !

Composants Requis

Pour ce projet, nous avons besoin des composants suivants.

Il est certainement pratique d’acheter un kit complet, voici le lien :

Nom

ÉLÉMENTS DANS CE KIT

LIEN

3 in 1 Starter Kit

380+

3 in 1 Starter Kit

Vous pouvez également les acheter séparément via les liens ci-dessous.

INTRODUCTION DES COMPOSANTS

LIEN D’ACHAT

Carte SunFounder R3

BUY

Plaque d’essai

BUY

Module ESP8266

BUY

Fils de Cavalier

BUY

Résistance

BUY

LED

BUY

1. Construire le Circuit

Note

Le module ESP8266 nécessite un courant élevé pour fournir un environnement de fonctionnement stable, donc assurez-vous que la batterie 9V est branchée.

../_images/wiring_led.jpg

2. Éditer le Tableau de Bord

  1. Allez sur le Quickstart Device que vous avez créé précédemment, cliquez sur l’icône du menu en haut à droite et sélectionnez edit dashboard.

    ../_images/sp220609_112825.png
  2. Les Datastreams permettent aux widgets sur Blynk et au code sur la carte R3 de se reconnaître mutuellement. Pour expérimenter le processus de configuration complet, supprimez tous les Datastreams de la page Datastreams.

    ../_images/sp220609_114723.png
  3. Veuillez lire attentivement l’avertissement et confirmer qu’il est correct avant de supprimer les Datastreams.

    ../_images/sp220609_114929.png
  4. Créez un Datastream de type Virtual Pin, qui sera utilisé pour contrôler la LED en utilisant l’interrupteur Blynk.

    ../_images/sp220609_115124.png
  5. Configurez le Virtual Pin. Comme le bouton et la LED n’ont besoin que d’être ON et OFF, réglez DATA TYPE sur Integer et MIN et MAX sur 0 et 1.

    ../_images/sp220609_115520.png
  6. Allez sur la page Web Dashboard et supprimez les widgets existants.

    ../_images/sp220609_133707.png
  7. Faites glisser et déposez un widget switch depuis la Widget Box à gauche.

    ../_images/sp220609_114508.png
  8. Maintenant pour le configurer.

    ../_images/sp20220615180127.png
  9. Sélectionnez Datastream comme celui que vous avez configuré précédemment.

    ../_images/sp220609_133741.png
  10. Après avoir sélectionné Datastream, vous verrez quelques paramètres personnalisés, puis appuyez sur Enregistrer.

    ../_images/sp220609_133950.png
  11. Enfin, cliquez sur Save And Apply.

    ../_images/sp220609_141733.png

3. Exécutez le Code

  1. Ouvrez le fichier 2.get_data_from_blynk.ino situé dans le dossier 3in1-kit\iot_project\2.get_data_from_blynk, ou copiez ce code dans Arduino IDE.

  2. Remplacez le Template ID, Device Name et Auth Token par les vôtres. Vous devez également entrer le ssid et le mot de passe du WiFi que vous utilisez. Pour des tutoriels détaillés, veuillez vous référer à 1.4 Connexion de la carte R3 à Blynk.

  3. Après avoir sélectionné la bonne carte et le bon port, cliquez sur le bouton Upoad.

    ../_images/2_upload.png
  4. Ouvrez le moniteur série (réglez le débit en bauds sur 115200) et attendez qu’un message tel qu’une connexion réussie apparaisse.

    ../_images/2_ready.png

    Note

    Si le message ESP is not responding apparaît lorsque vous vous connectez, veuillez suivre ces étapes.

    • Assurez-vous que la batterie 9V est branchée.

    • Réinitialisez le module ESP8266 en connectant la broche RST à GND pendant 1 seconde, puis débranchez-la.

    • Appuyez sur le bouton de réinitialisation de la carte R3.

    Parfois, il peut être nécessaire de répéter l’opération ci-dessus 3 à 5 fois, veuillez être patient.

  5. De retour sur Blynk, vous pouvez voir que le statut a changé en ligne et vous pouvez maintenant utiliser l’interrupteur widget sur Blynk pour contrôler la LED connectée à la carte R3.

    ../_images/2_blynk_button.png
  6. Si vous souhaitez utiliser Blynk sur des appareils mobiles, veuillez vous référer à Comment utiliser Blynk sur un appareil mobile ?.

Comment ça fonctionne ?

La différence entre le code de ce projet et le code du chapitre précédent 1.4 Connexion de la carte R3 à Blynk est les lignes suivantes.

const int ledPin=6;

BLYNK_WRITE(V0)
{
    int pinValue = param.asInt(); // assigning incoming value from pin V0 to a variable
    // You can also use:
    // String i = param.asStr();
    // double d = param.asDouble();
    digitalWrite(ledPin,pinValue);
}

void setup()
{
    pinMode(ledPin,OUTPUT);
}

En ce qui concerne les fonctions pinMode et digitalWrite du ledPin, je suis sûr que vous les connaissez déjà, donc je ne vais pas les réexpliquer. Ce sur quoi vous devez vous concentrer, c’est la fonction BLYNK_WRITE(V0).

Ce qu’elle va faire, c’est que lorsque la valeur de V0 sur Blynk change, Blynk.Cloud dira à votre appareil « Je suis en train d’écrire sur le Virtual Pin V0 », et votre appareil pourra réaliser quelque chose une fois qu’il aura reçu cette information.

Nous avons créé le Datastream V0 à l’étape précédente et l’avons appliqué au Widget Interrupteur. Cela signifie que chaque fois que nous utilisons le Widget Interrupteur, BLYNK_WRITE(V0) sera déclenché.

Nous écrivons deux instructions dans cette fonction.

int pinValue = param.asInt();

Obtenez la valeur de V0 et attribuez-la à la variable pinValue.

digitalWrite(ledPin,pinValue);

Écrivez la valeur de V0 obtenue sur le ledPin, afin que le widget Interrupteur sur Blynk puisse contrôler la LED.