Siemens Antriebe der Reihe Sinamics


Google-Suche auf MEINE-SCHALTUNG.de :





Online Rechner

Chronik

Dauerkalender


LEDs mit ESP32 via WLAN schalten


Schaltung mit drei Leuchtdioden

In dem Beispiel wird gezeigt, wie man auf einfache Weise diverse Geräte (hier drei farbige Leuchtdioden) via WLAN innerhalb des eigenen Heimnetzes schalten kann. Als Steuereinheit soll hier ein Smartphone auftreten. Für die Ausführung der Schaltvorgänge ist ein ESP32 zuständig.
Unsere Fernschaltzentrale basiert in diesem Fall auf der IoT-Plattform Blynk, die für solche Aufgaben entwickelt wurde und online nutzbar ist.
Bevor wir loslegen, müssen einige Vorbereitungen getroffen werden.
Der Mikrocontroller ESP32 wird in unserem Beispiel mit der Arduino-IDE programmiert. Die Software muss auf dem PC installiert sein. In der Arduino IDE muss der Mikrocontroller ESP32 integriert sein. Dies wird in der Arduino IDE mit dem Bordverwalter erledigt.
Außerdem ist es erforderlich, in der Arduino IDE die Bibliotheken „WiFi“ und „Blynk“ zu installieren.
Zusätzlich muss auf dem Smartphone die Blynk.App installiert werden.

Blynk starten

In diesem Beispiel erstellen wir auf dem PC in der Blynk.Console die Schaltflächen, die anschließend auf dem Handy erscheinen werden. Mit der Eingabe https://www.blynk.io/ in der Eingabezeile unseres Browsers starten wir die Blynk-Bedieneroberfläche und loggen uns ein (nachdem eine Registrierung durchgeführt wurde).

Blynk-Startseite


Vorlage

Im ersten Schritt erstellen wir eine Vorlage. Hier navigieren wir zu „Developer Zone“ und mit dem Betätigen der Schaltfläche „+ Neue Vorlage“ starten wir die Oberfläche für die Erstellung einer neuen Vorlage.

Neue Vorlage erstellen

Hier vergeben wir der Vorlage einen Namen und legen die Hardware und den Verbindungstyp fest.

Datenströme

Anschließend navigieren wir zu „Datenströme“ und mit „+ Neuer Datenstrom“ legen wir drei neue Datenströme an. Dabei bestimmen wir jeden Datenstrom als Ausgang mit einem virtuellen Pinn.

Datenstrom anlegen

Jeder Datenstrom muss konfiguriert werden. Hier ein Beispiel für den Datenstrom der blauen Leuchtdiode.

Datenstrom

Für die gelbe Leuchtdiode legen wir die Variable V26 fest, für die rote Leuchtdiode die Variable V27. Die Nummerierung der Variablen ist irrelevant. Hier wurden die Nummern 25 bis 27 gewählt, da später die Variablen im ESP32-Programm mit den Pins des Mikrocontrollers Nummer 25-27 verbunden werden. Bis auf die Nummer der virtuellen Pins unterscheidet sich die Konfiguration aller drei Datenströme nicht.

Drei Datenströme


Web-Dashboard

Anschließend navigieren zu Web-Dashboard.

Web-Dashboard

Und betätigen die Schaltfläche „Bearbeiten“.

Dasboard Eingabefeld

Auf der linken Seite werden diverse Elemente aufgelistet, die in Dashboard-Feld eingebunden werden können. Mit der Drag-and-drop-Technik werden jetzt in die Bearbeitungsfläche drei „Schalter“ und drei „LED“s eingefügt.

Dashboard mit Schaltflächen


Elemente konfigurieren

Alle sechs Elemente müssen anschließend konfiguriert werden. Wir navigieren zu jedem Element und betätigen das Zahnrad, das für Einstellungen steht.
Zuerst muss jedem Schalter ein Datenstrom, den wir zuvor definiert haben, zugeordnet werden. Zusätzlich kann jedem Schalter eine Farbe zugeordnet werden.

Einstellungen wechseln

Den gleichen Vorgang müssen wir für jede LED durchführen. Nachdem alle Einstellungen abgeschlossen wurden, sieht das Web-Dashboard ungefähr so aus:

Dashboard abgeschlossen

Nach allen Eingaben bzw. Änderungen soll die Schaltfläche „Speichern“ betätigt werden.
Damit wurde unsere Vorlage erfolgreich erstellt.

Fertige Vorlage


Neues Gerät

Jetzt verlassen wir den „Developer Zone“-Bereich, navigieren zu „Geräten“ und betätigen die Schaltfläche „+ Neues Gerät“.

Neues Gerät

Hier betätigen wir die Schaltfläche „Von Vorlage“ und wählen die Vorlage, die wir soeben erstellt haben.

Neues Gerät erstellen

Mit dem Betätigen der Schaltfläche „Erstellen“ wird ein neues Gerät erstellt. Dabei werden von der Software wichtige Erkennungsdaten generiert, die wir später in das ESP32-Programm einbetten müssen.

Neues Gerät wurde erstellt


Programm (Sketch)

Jetzt verlassen wir die BLYNK-Bedieneroberfläche und starten die Arduino-IDE. Hier gehen wir zu Datei/Beispiele/Blynk/Boards_WiFi/ESP32_WiFi und öffnen das Beispielprogramm. Das Programm ergänzen wir über einige Einträge und laden es in den ESP32 hoch. Bevor das geschieht, müssen wir noch fünf Eingaben tätigen. Es müssen zunächst die drei Zeilen mit den Einträgen, die bei Erstellung eines neuen Gerätes mit Blynk generiert wurden, eingefügt werden. In unserem Beispiel sind das:

#define BLYNK_TEMPLATE_ID "TMPL4uorTXePP"
#define BLYNK_TEMPLATE_NAME "LEDs mit ESP32 schalten"
#define BLYNK_AUTH_TOKEN "r1y3fFRXgt3vqputBGoNv33pU29PvC8d"
Darüber hinaus müssen ssid und Passwort bzw. Netzwerkschlüssel unseres Heimnetzwerkes eingegeben werden.
Des Weiteren muss das Programm um einige zusätzliche Programmzeilen ergänzt werden. Das Programm muss nämlich wissen, welche Ausgänge den Variablen V25–V27 zugeordnet wurden. Nach allen Ergänzungen sieht das Endprogramm wie folgt aus:

//***************************************************************************************
// LEDs mit ESP32 via WLAN schalten
// Eine Schaltung mit ESP32 und BLYNK-IoT-Platform
// ESP32-Dev-KitC V4
// Arduino IDE 2.3.7
//***************************************************************************************

#define BLYNK_PRINT Serial
                              // Die folgende Daten sind aus dem BLYNK zu entnehmen,
                              // nachdem die Geräte-Konfiguration abgeschlossen wurde.
#define BLYNK_TEMPLATE_ID     "TMPL4uorTXePP"
#define BLYNK_TEMPLATE_NAME   "LEDs mit ESP32 schalten"
#define BLYNK_AUTH_TOKEN      "r1y3fFRXgt3vqputBGoNv33pU29PvC8d"

                              // Blynk und WiFi - Bibliotheken müssen installiert sein.
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
                              // Folgende Daten beziehen sich auf das Heim-Funknetz.
char ssid[] = "FRITZ!Box 7590";
char pass[] = "12348586802516644321";

// **************************************************************************************
int PIN_LED_Blau = 25;                           // ESP32-Pin LED Blau
    BLYNK_WRITE(V25) {                           // Blynk virtueller Pin
    int pinValue = param.asInt();                // Wert aus der App lesen (0 oder 1)
    if (pinValue == 1) {
        digitalWrite(PIN_LED_Blau, HIGH);        // Pin 25 am ESP32 einschalten
    } else {
        digitalWrite(PIN_LED_Blau, LOW);         // Pin 25 am ESP32 ausschalten
    }
}

// **************************************************************************************
int PIN_LED_Gelb = 26;                           // ESP32-Pin LED Gelb
    BLYNK_WRITE(V26) {                           // Blynk virtueller Pin         
    int pinValue = param.asInt();                // Wert aus der App lesen (0 oder 1)

    if (pinValue == 1) {                         
        digitalWrite(PIN_LED_Gelb, HIGH);        // Pin 26 am ESP32 einschalten
    } else {
        digitalWrite(PIN_LED_Gelb, LOW);         // Pin 26 am ESP32 ausschalten
    }
}

// **************************************************************************************
int PIN_LED_Rot = 27;                            // ESP32-Pin LED Rot
    BLYNK_WRITE(V27) {                           // Blynk virtueller Pin
    int pinValue = param.asInt();                // Wert aus der App lesen (0 oder 1)

    if (pinValue == 1) {
        digitalWrite(PIN_LED_Rot, HIGH);         // Pin 27 am ESP32 einschalten
    } else {
        digitalWrite(PIN_LED_Rot, LOW);          // Pin 27 am ESP32 ausschalten
    }
}

// **************************************************************************************
void setup() {

    Serial.begin(9600);
    Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
    pinMode(PIN_LED_Blau, OUTPUT);               // ESP32-Pins 25, 26, 27 als Ausgänge
    pinMode(PIN_LED_Gelb, OUTPUT);               // konfigurieren
    pinMode(PIN_LED_Rot, OUTPUT);  
}

// **************************************************************************************
void loop() {

    Blynk.run();
}

// **************************************************************************************  
        

Anschließend kann das Programm hochgeladen werden. Damit ist das kleine Projekt angeschlossen und die LEDs, sollte alles geklappt haben, müssten jetzt von PC oder Smartphone geschaltet werden können. Das kann natürlich erst dann erfolgen, wenn wir eine entsprechende Schaltung mit dem Mikrocontroller ESP32 und drei Leuchtdioden erstellt haben.

Schaltplan

Schaltplan


Testschaltung

Testschaltung




Kurzvideo

Kurzvideo


Weitere Themen:


Google-Suche auf MEINE-SCHALTUNG.de :


Home Impressum Datenschutz