Installation

Unsere Software zur prototypischen Umsetzung von IoT-Anwendungen ist der IoT²-Pilotyzer. Die Installation und Einrichtung der Software wird im Folgenden beschrieben.

Weitere Informationen zur Entwicklung unserer Software zur grafischen Programmierung von ESP-8266 basierten Mikrocontrollern finden Sie auch im IEEE Artikel Node and Block-Based Development Tools for Distributed Systems With AI Applications

1. Installation von Python
Stellen Sie zunächst sicher, dass Python Version 3.5 oder höher auf Ihrem System installiert ist. Die aktuellen Python-Versionen finden Sie hier. Zusätzlich dazu benötigen Sie noch weitere Python Packages wie z.B. NumPy und SciPy, die Sie über die Kommandozeile über den Package-Manager PIP installieren können ( z.B. python -m pip install SciPy). Sie benötigen folgende Packages:

  • NumPy
  • SciPy
  • joblib
  • pandas
  • scikit-learn

2. Installation von Node-RED
Der erste Schritt ist die Installation von NodeJS, das Sie hier finden. Anschließend kann Node-RED mit dem Kommando npm install -g -unsafe-perm node-red in der Kommandozeile installiert werden. Fehlende Module wie das node-red-dashboard können im Menü unter Manage palette hinzugefügt werden. Empfohlene Module sind:

  • node-red-dashboard
  • node-red-contrib-mqtt-broker
  • node-red-contrib-machine-learning

3. Installation des IoT²-Pilotyzers
Laden Sie die aktuelle IoT²-Pilotyzer Software hier* herunter (oder klonen Sie das Repository, um alle Entwicklungsstände von Ardublockly ansehen und herunterladen zu können). Anschließend extrahieren Sie das zip-Archiv auf Ihrer Festplatte in einen möglichst kurzen Pfad (z.B. C:\iotw-pilotyzer\). Anschließend kann das Programm mit start_windows gestartet werden. In Ihrem Webbrowser sollte sich ein neues Fenster öffnen. Dort kann geprüft werden, ob alle benötigten Module installiert sind oder es kann ohne Überprüfung fortgefahren werden. Mit GENERATE DATA wird Ardublockly, ein Tool zur visuellen Programmierung gestartet. PROCESS DATA und ANALYZE DATA starten das Node-RED Dashboard. Um den Quellcode aus Ardublockly auf ein Mikrocontroller-Board hochzuladen, muss in Ardublockly zunächst der korrekte Port eingetragen werden, an welchem der Mikrocontroller angeschlossen ist. Sie finden die Einstellungen hierzu im Adrublockly-Menü in der oberen linken Ecke. Wird kein passender Port angezeigt, kann es notwendig sein, den USB-Treiber für den Mikrocontroller zu installieren (siehe Punkt 4).

4. Installation des USB-Interface Treibers
Das Betriebssystem des PCs sollte das USB-Interface automatisch erkennen und einen virtuellen COM-Port vergeben. Die Nummer des COM-Ports merken Sie sich. Haben Sie die Windows-Meldung beim Anschließen des Mikrocontoller-Boards verpasst, so können Sie den Port im Gerätemanager unter Anschlüsse als Silicon Labs CP210x identifizieren. In seltenen Fällen muss der Silicon Labs –Treiber manuell installiert werden. Die notwendigen Treiber-Bibliotheken finden Sie unter folgendem Link.

*Bitte beachten Sie bei Nutzung der Software die Hinweise der Apache2.0-Lizenz und insbesondere diese Hinweise:

Disclaimer of Warranty
„Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an „AS IS“ BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.”

Limitation of Liability
In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.