2. Daten von Blynk abrufen

In diesem Kapitel erfahren Sie, wie Sie den Schaltkreis mit Blynk steuern können. Lassen Sie uns die LEDs über das Internet leuchten!

Benötigte Komponenten

Für dieses Projekt benötigen wir die folgenden Komponenten.

Es ist definitiv praktisch, ein ganzes Set zu kaufen. Hier ist der Link:

Name

ARTIKEL IN DIESEM KIT

LINK

3 in 1 Starter Kit

380+

3 in 1 Starter Kit

Sie können sie auch separat über die untenstehenden Links kaufen.

KOMPONENTENBESCHREIBUNG

KAUF-LINK

SunFounder R3 Platine

BUY

Breadboard

BUY

ESP8266 Modul

BUY

Jumper-Kabel

BUY

Widerstand

BUY

LED

BUY

1. Schaltkreis aufbauen

Bemerkung

Das ESP8266-Modul benötigt einen hohen Strom, um eine stabile Betriebsumgebung zu gewährleisten. Stellen Sie daher sicher, dass die 9V-Batterie angeschlossen ist.

../_images/wiring_led.jpg

2. Dashboard bearbeiten

  1. Gehen Sie zum Quickstart Device, das Sie zuvor erstellt haben, klicken Sie auf das Menüsymbol in der oberen rechten Ecke und wählen Sie edit dashboard.

    ../_images/sp220609_112825.png
  2. Datastreams ermöglichen es den Widgets auf Blynk und dem Code auf dem R3-Board, sich gegenseitig zu erkennen. Um den vollständigen Konfigurationsprozess zu erleben, entfernen Sie alle Datastreams von der Datastreams-Seite.

    ../_images/sp220609_114723.png
  3. Bitte lesen Sie die Warnung sorgfältig durch und bestätigen Sie vor dem Löschen der Datastreams, dass sie korrekt ist.

    ../_images/sp220609_114929.png
  4. Erstellen Sie einen Datastream des Typs Virtual Pin, der zum Steuern der LED mit Blynks Schalter verwendet wird.

    ../_images/sp220609_115124.png
  5. Konfigurieren Sie den Virtual Pin. Da der Knopf und die LED nur EIN und AUS sein müssen, setzen Sie DEN DATENTYP auf Integer und MIN und MAX auf 0 und 1.

    ../_images/sp220609_115520.png
  6. Gehen Sie zur Web Dashboard-Seite und löschen Sie die vorhandenen Widgets.

    ../_images/sp220609_133707.png
  7. Ziehen Sie ein switch-Widget aus dem Widget Box links in den Arbeitsbereich.

    ../_images/sp220609_114508.png
  8. Nun geht es an die Einrichtung.

    ../_images/sp20220615180127.png
  9. Wählen Sie Datastream wie zuvor eingestellt.

    ../_images/sp220609_133741.png
  10. Nach Auswahl von Datastream sehen Sie einige benutzerdefinierte Einstellungen. Drücken Sie dann auf Speichern.

    ../_images/sp220609_133950.png
  11. Klicken Sie abschließend auf Save And Apply.

    ../_images/sp220609_141733.png

3. Den Code ausführen

  1. Öffnen Sie die Datei 2.get_data_from_blynk.ino unter dem Pfad 3in1-kit\iot_project\2.get_data_from_blynk, oder kopieren Sie diesen Code in die Arduino IDE.

  2. Ersetzen Sie die Template ID, Device Name und Auth Token durch Ihre eigenen. Geben Sie auch die ssid und das password Ihres WiFi ein. Für detaillierte Anleitungen verweisen Sie bitte auf 1.4 Verbindung des R3-Boards mit Blynk herstellen.

  3. Wählen Sie das richtige Board und den richtigen Port aus und klicken Sie auf den Upoad-Button.

    ../_images/2_upload.png
  4. Öffnen Sie den Seriellen Monitor (Baudrate auf 115200 einstellen) und warten Sie auf eine Aufforderung, z.B. eine erfolgreiche Verbindung.

    ../_images/2_ready.png

    Bemerkung

    Wenn beim Verbinden die Meldung ESP antwortet nicht erscheint, befolgen Sie bitte diese Schritte.

    • Stellen Sie sicher, dass die 9V-Batterie angeschlossen ist.

    • Setzen Sie das ESP8266-Modul zurück, indem Sie den Pin RST für 1 Sekunde auf GND legen und dann wieder entfernen.

    • Drücken Sie den Reset-Button auf dem R3-Board.

    Manchmal müssen Sie den obigen Vorgang 3-5 Mal wiederholen, bitte haben Sie Geduld.

  5. Zurück bei Blynk sehen Sie, dass der Status auf online geändert wurde und Sie können nun das Schalter-Widget auf Blynk verwenden, um die an das R3-Board angeschlossene LED zu steuern.

    ../_images/2_blynk_button.png
  6. Wenn Sie Blynk auf mobilen Geräten verwenden möchten, verweisen Sie bitte auf Wie verwendet man Blynk auf einem mobilen Gerät?.

Wie funktioniert das?

Der Unterschied zwischen dem Code in diesem Projekt und dem Code im vorherigen Kapitel 1.4 Verbindung des R3-Boards mit Blynk herstellen sind die folgenden Zeilen.

const int ledPin=6;

BLYNK_WRITE(V0)
{
    int pinValue = param.asInt();// Zuweisen des eingehenden Werts von Pin V0 zu einer Variablen
     // Sie können auch Folgendes verwenden:
     // String i = param.asStr();
     // double d = param.asDouble();
    digitalWrite(ledPin,pinValue);
}

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

Bezüglich der pinMode und digitalWrite des ledPin bin ich sicher, dass Sie bereits damit vertraut sind, deshalb werde ich sie nicht noch einmal erklären. Worauf Sie sich konzentrieren müssen, ist die Funktion BLYNK_WRITE(V0).

Was sie macht ist, dass, wenn der Wert von Blynks V0 sich ändert, Blynk.Cloud Ihrem Gerät mitteilt „Ich schreibe auf den Virtual Pin V0“, und Ihr Gerät wird in der Lage sein, etwas auszuführen, sobald es diese Information erhält.

Wir haben im vorherigen Schritt den V0 Datastream erstellt und ihn dem Switch-Widget zugewiesen. Das bedeutet, dass jedes Mal, wenn wir das Switch-Widget bedienen, BLYNK_WRITE(V0) ausgelöst wird.

Wir schreiben zwei Anweisungen in dieser Funktion.

int pinValue = param.asInt();

Holen Sie sich den Wert von V0 und weisen Sie ihn der Variable pinValue zu.

digitalWrite(ledPin,pinValue);

Schreiben Sie den erhaltenen Wert von V0 auf den ledPin, sodass das Schalter-Widget auf Blynk die LED steuern kann.