Was wird benötigt ?
Person A - Eine Person, die die
Aufgabe der Remote Entwicklung übernimmt und Rechner A steuert.
Rechner A - Remote Rechner mit einer aktuellen Windows Version
Person B - Eine Person die vor Ort ist
und den Rechner B Steuern kann
Rechner B -
Ein Rechner vor Ort (in ermittelbarer nähe vom ESP32)
mit einer aktuellen Windows Version, und installiertem Arduino IDE
- Version 1.8.13 oder aktueller. Dazu muss der Rechner WLAN
zugriff haben.
Internet - Sowohl
Rechner A als auch Rechner B brauchen Internetzugriff
Die erste Verbindung - Grundeinstellungen und
Vorbereitungen Schritt
1 - Remote Unterstützung einrichten: Für die Einrichtung auf
Rechner B wird über
Systemsteuerung > System und Sicherheit > System >
Remoteeinstellungen die Remoteunterstützung von Person B aktivert.
Abb.:
Aktivieren von Remoteunterstützung
Als nächsten
Schritt startet Person B die Windows-Remoteunterstützung wie unten im Bild zu
sehen, indem "msra" in der Windows-Suchleiste eingegeben
wird. Im anschließend auftauchenden Abfragefenster wird die Option
ausgewählt eine vertrauenswürdige Person (Person A) zur Unterstützung
einzuladen.
Abb.: Starten des Programms
Windows-Remoteunterstützung
Jetzt wird eine
Einladung erstellt indem "Einladung als Datei speichern" im
nächsten Abfragefenster ausgewählt wird. Diese Datei schickt
Person B an Person A.
Abb.: Erstellen der Einladung
Zu dieser Datei brauch der Rechner A das Zugangspasswort, dass
automatisch nach dem Erstellen der Einladung auf Rechner B
auftaucht. Danach hat kann der Person A eine Verbindung zu
Rechner B aufbauen
Abb.:
Beispiel für das Zugangspasswort
Zu guter Letzt
wird die Erlaubnis für den vollen Zugriff auf den Rechner B erlaubt.
Abb.: Abfragefenster für den vollen
Zugriff
Die Remote-Sitzung wird beendet
wenn entweder Person A oder Person B die Remote Unterstützung
schließt oder wenn der Rechner heruntergefahren wird.
Schritt 2 -
Programmschablone Einrichten
Dass die
Programme auf den ESP32 über WLAN hochgeladen werden, ist zwar
nicht zwingend notwendig für die Remote Entwicklung. Jedoch ist
für ein effektives Programmieren und beim späteren Einsatz des Ventilators dies zu bevorzugen.
Anders müsste der ESP32 permanent über USB mit Rechner B
verbunden sein um die Stromversorgung zu gewährleisten. Dies
haben wir in unseren Konzept berücksichtigt - dazu dient die
Programmschablone "OTAProgram_Webserial"
Person A hat nun
zugriff auf Rechner B und kann jetzt die Programmschablone
einrichten.
Als erstes muss die Python version 2.7x
installiert werden. Diese kann von der offizielle Python
Seite heruntergeladen werden (unter specific release).
Abb.: Python offizielle Seite - specific release
Hier
der Link dazu:
https://www.python.org/downloads/
Unter folgenden Teams link ist die
Programmschablone vorhanden:
OTAProgram_Webserial
Der Gestamte Ordner
OTAProgram_Webserial soll von Person A heruntergeladen und
entpackt werden.
Abb.: OTAProgram_Webserial Ordner Inhalt
In der Abbildung oben ist der Ordner Inhalt zu sehen. Die
vier blau markierten Ordner sind Bibliotheken,die das Programm
benötigt (Diese sind nicht im Bibliotheken-Manager von
Arduino vorhanden). Person A soll nun diese Bibliotheken kopieren
und in den Ordner ../Arduino/libraries einfügen. Somit sind die
Bibliotheken installiert.
Jetzt muss noch die
individuelle SSID und das
WLAN-Passwort dazu im Code eingegeben werden. Jetzt ist es dem
ESP32 möglich sich mit dem WLAN zu verbinden.
Abb.: Ausschnitt
von der Programmschablone - SSID und Passwort
Schritt 3 - WLAN Zugriff
von ESP32 einrichten:
Falls sich der ESP32 schon
mit WLAN verbinden kann, kann dieser Schritt übersprungen
werden.
Das erste Mal und bei einem neuen WLAN-Netzwerk
muss Person B die Programmschablone einmalig über eine
USB-Verbindung zwischen Rechner B und den ESP32 des Ventilators
hochladen. Damit der ESP32 das Wlan "kennenlernt".
Abb.: Arduino IDE - Port Auswahl
Nachdem das Programm hochgeladen wurde, wird wie oben
Abgebildet, unter "Port" zusätzlich ein Network Port erscheinen.
Jetzt kann Person B den ESP32 vom Rechner B trennen und
wieder mit der ursprüngliche Stromversorgung verbinden.
Entwicklung und Debuggen nach den
Grundeinstellungen und Vorbereitung
Hinweis: Für jede neue Remote
Unterstützung Sitzung muss Person A eine neue Einladung schicken
Schritt 4 -
EntwicklungFur die Entwicklung soll immer auf die
Programmschablone aufgebaut werden. Diese enthält Kommentare die
darauf hinweisen wo der neue Code eingefügt werden darf. Dann
kann das Programm ganz normal hochgeladen werden.
Schritt 4 - Debuggen
Zum Debuggen können Ausgaben auf den Webserial mit
einprogrammiert werden. Dies erfolgt mit dem Befehl:
WebSerial.println("Gewuenschten
Text eingeben");
Um auf
Webserial zuzugreifen kann im Browser die IP-Adresse vom ESP32
gefolgt von "/webserial" eigegeben werden.
(Die IP-Adresse
wird immer im Terminal,
nach erfolgreichem Upload, von Arduino ausgegeben )
Abb.: WebSerial mit Ausgabe "Debug"