
Wie funktioniert denn das im Praktikum gezeigte? Dieses Video zeigt wie und was wir im Groben so benötigen und anwenden. Es zeigt eine Komponenten-Übersicht zur Anwendung im Praktikum und soll Ihnen helfen, damit Ihnen die Entscheidung für die Teilnahme am Praktikum leichter fällt.
Hier wird in Kurzform das von mir verwendete Material zum Praktikum (Software und Hardware) vorgestellt. Dazu dient die erste Installation MusterPLC1200 und deren Konfiguration. Besonders wichtig ist die Vergabe der IP-Adresse der PLC . Die Softwareversion meiner PLC ist V3. Diese sollte in Ihrer Ausstattung nicht unterschritten werden!
Aufbauend zu Lektion_2 erzeugen wir das TIA-Projekt PlcApi_L4 aus dem Projekt PlcApi. Hier werden wir zunächst die beiden FB3000 und FB2000 als Grundgerüst erstellen und mit dessen DB3000 und DB2000 in die SPS speichern. Zusätzlich müssen wir im PC die entsprechende IP-Adresse 192.168.1.100 passend zur SPS einstellen.
Beginnend mit der Datei PlcApi_L4 wird das Grundgerüst um die Bausteine TRCV_C und TSEND_C erweitert. Für den FB C_Receive wird die Konfiguration für die Verbindungsparameter erstellt. Damit ist die Initialisierung der Bausteine FB3000 und FB2000 vorbereitet.
Der Aufruf von PlcApi.exe und deren DLL-Dateien wird in Zusammenhang mit der SPS S7-1200 getestet. Sie verwenden also nicht Visual Studio Code, welche den compilierten Code aus der Übersetzung über Windows PowerShell aufruft.
Für diesen Test müssen Sie also ihre SPS mit dem Programm aus diesem Kapitel im TIA-Portal fehlerfrei übersetz und in die SPS geladen haben. So können Sie sich nun entscheiden, ob Sie dieses Praktikum buchen möchten. Aus diesem Grund sind die Videos in den Lektionen dieses Kapitels, fast alle als Vorschau für Sie abgelegt worden.
Der letzte Softwarestand aus Kapitel 1 und wie es nun weiter geht
Der Schritt für die Initialisierung des Bausteines C_RCV für die Dauerhafte Verbindung mit dem Server wird erklärt und zu Ende gebracht. Dazu gehört auch eine kleine Fehlerbehandlung und auch die Reaktion bei einem Fehler. Diese Kenntnisse werden auch für den C_Send-Baustein verwendet.
Das Lesen der Daten wird gestartet und der Ausgangsparameter DONE erklärt. Die Daten sind gelesen, wenn TRCV_LEN mit der Vorgabe LEN übereinstimmen und der Baustein nicht mehr BUSY ist.
Der Test über die Webseite und den dazugehörigen Dateien. Hier gibt es nicht viel zum mitmachen.
Wichtig ist das Verständnis für den Aufruf der Webseite und der PlcApi.exe mit dem SPS-Programm.
Diese Lektion zeigt den Aufruf des Parsers (FB1000) und die damit verbundenen Probleme, da der Parser ja noch nichts macht.
Der Sendestring wird als Test-String vorbereitet und die Struktur des Receive-Baustein FB3000 vorläufig abgeschlossen.
Mit dieser Zusammenfassung ist der Receive-Baustein ungetestet erst einmal fertig. Im folgenden Kapitel wird der Test behandelt und entsprechend die Quellen angepasst.
Die Vorbereitungen des Sendebausteines für die Daten aus dem Sendestring zu senden, werden programmiert.
Der Test auf Ihrem PC zusammen mit Ihrer SPS sollte so auch funktionieren, wie das hier in der Lektion gezeigt wird.
Der Test für die Bausteine Receive und Send, sowie die PlcApi.exe mit den DLL-Dateien und das letzte SPS-Programm müssen auf Ihrem PC funktionieren. Nur so können Sie mit Ihrer SPS das bis hierhin gezeigte auch studieren und anwenden. Denken Sie auch daran, dass der Browser Google-Chrome sein muss.
JSON-Erklärungen für SCL-Programmierer in einfacher Form. In dieser Lektion gibt es kein TIA-Projekt.
Diese Lektion beschreibt den Einstieg in den Parser. Wir behandelt einen Teil des möglichen Request vom Browser und stellen dafür den ersten Abschnitt des Parsers mit einer For-Schleife und einer Case-Anweisung fest.
Der Parser wird für eine Member fertig gestellt und das Projekt so vorbereitet, dass in der nächsten Lektion ein vorläufiger Test mit der Webseite erfolgen kann.
Kurze Zusammenfassung zu den bestehenden Dateien und wie es nun im folgenden Kapitel weiter gehen soll
Kapitel 4 wird zusammengefasst und die Dateien bis zum Test hochgeladen.
Der erste Schritt mit einem SVG. Parametervergabe für ein Rectangle und der Test dazu.
Erweiterung des Request nach 4001 und die damit verbundenen Probleme suchen.
Der Button wird als Event getestet und seine Wirkung untersucht. Dazu ist der Parser in der SPS zu erweitern.
Das SVG-Element Path wird mit einem Zufallsgenerator angewendet und als Trend dargestellt. Auch hier sind die Anwendungen in Form eines Praktikums. Fehler sollen absichtlich erstellt werden, damit man später damit auch umgehen kann.
Zusätzlich das JPG zur Hilfe, falls es mit neueren Versionen der SPS oder V16 Probleme gibt, da hier der SINT_TO_STRING ein '+' vor die Zahl setzt, dafür aber keine Leerstellen. Drei Zeilen Einfügen wie im JPG zu sehen ist. Das gilt auch für den Sinus, bzw. überall dort wo xxx_TO_String verwendet wird.
Zum Testen der Daten wird nun ein Sinus verwendet, welcher sofort Fehler anzeigen würde, falls hier mit den Daten etwas nicht stimmt. Hier ist die Lektion vorgegeben. Es gibt also nichts zum eintippen, sondern nur die Erklärungen dazu, da diese Lektion wie Lektion 25 aufgebaut ist.
Zusätzlich das JPG zur Hilfe, falls es mit neueren Versionen der SPS oder V16 Probleme gibt, da hier der SINT_TO_STRING ein '+' vor die Zahl setzt, dafür aber keine Leerstellen. Drei Zeilen Einfügen wie im JPG zu sehen ist. Das gilt auch für den Sinus, bzw. überall dort wo xxx_TO_String verwendet wird. Hier die Lösung zum GetRandom.
Kurz einige Worte zum Kapitel 5 und Vorschau auf Kapitel 6
Der Einstieg in JS mit dem SCL-Editor und einer FOR-Anweisung in JS
SVG-Elemente im JS-Programm über das Index ermitteln und dann die dazugehörige Methode nutzen
Kurze Zusammenfassung und eine allgemeine Meinungsäußerung zum Thema.
Änderung am 8.6.2021:
Der Test_L28.zip bezüglich das Klicken auf den Button oder einem anderen SVG-Element ist nun möglich.
Kurzer Überblick für C++-Programme, Kompilierung und so einige Tipps
Das JS-Programm und seine Komponenten kurz überflogen
Es wird eine klare Aufgabenstellung definiert und dessen Umsetzung als Praktikum im Kursstiel durchgeführt. Dazu muss der Teilnehmer das TIA-Portal Basic und eine SPS S7-1200 besitzen. Ich verwende das TIA-Portal V15 und eine S7-1200 mit der Version V3.0. Folgende Aufgabenstellung wird definiert:
Eine S7-1200 soll mit einem Server über TCP verbunden werden
Die Kommunikation erfolgt ausschließlich über JSON-Formate
Zielsetzung ist eine Visualisierung auf einer Webseite durch das SCL-Programm
Die Visu erfolgt ausschließlich über SVG-Elemente, dessen Darstellungsfelder mit SCL definiert werden
Zur Kommunikation werden die Bibliotheksfunktionen TSEND_C und TRCV_C verwendet
Der integrierte Server der SPS ist ausgeschaltet
Der Mini-Server ist in C++ Programmiert (G++, 32-Bit)
Die Webseite ist in JS programmiert und wird mit Google Chrome angewendet
Der SCL-Programmierer bestimmt ausschließlich, wie und wann die Webseite bedient werden soll
Dieses Praktikum ist für Anfänger nur bedingt geeignet. Fortgeschrittene können sich über die klaren, definierten Aufgaben sehr gut weiterbilden. Experten werden die Anwendung aus Sicht des SPS-Programmierers sehr zu schätzen wissen, da der SPS-Programmierer die Zusammenhänge einer möglichen, modernen Visualisierung in direktem Bezug zu seinem SPS-Programm besser verstehen kann.
Das Praktikum kann zudem den SCL-Programmierer dazu anregen, SCL für Aufgaben außerhalb der sonst gewohnten logischen Verarbeitung seiner Steuerungsaufgaben einzusetzen. Die allgemein bekannte Visualisierung dieser Industriekomponente, könnte so als weborientierte Visu neu geboren werden. Der SPS-Programmierer hat nun die Möglichkeit fast spielend in das zeitgerechte Design einzuwirken.
Das fordert nicht nur die Industrie allgemein, sondern auch der Unternehmer aus den Bereichen Sicherheit, Chemie und Wartung industrieller Automatisierung. Die SPS wird so als verlängerter Arm zu neuen, modernen Technologien erweitert, ohne dabei auf die gewohnte Sicherheit zu verzichten.
Die zum Kurs-Praktikum zur Verfügung gestellten Sourcen können beliebig in Eigenverantwortung vom Teilnehmer verwendet werden. Alle Programmabschnitte sind für den Teilnehmer eine Bereicherung und sollen das Arbeiten einer modernen SPS-Umgebung unterstützen.
Dies ist kein C++ oder JavaScript-Kurs, sondern zeigt die praktische Anwendung um eine SPS für andere Dinge zu nutzen.