Posts mit dem Label Grafcet werden angezeigt. Alle Posts anzeigen
Posts mit dem Label Grafcet werden angezeigt. Alle Posts anzeigen

Donnerstag, 3. Mai 2018

Objekte mit der Maus bewegen Teil II

😉 Neues 5-Tages-Seminar: Framework PCE.js aus der erfolgreichen Serie:

Neu: Kursinfo:

 

Objekte mit der Maus bewegen

Automatisieren mit dem Internet

  • Erstellen Sie dynamische Webanwendung mit node.js und dem Framework PCE.js.

  • Verwandeln Sie eine Webseite schnell zur aktiven HMI oder IoT-Netzwerk mit SVG-Objekten. 

  • Implementierten sie künstliche Intelligenz durch steuerbare Inline-Run-Code Scripte.

  • Erstellen Sie eine Funktionsdatenbank für die Objekt-Kommunikation. 

  •  Anwendungen aus dem Bereich PCE, wie z. B.  P&ID, Grafcet oder IEC61131 können mit dem Framework schnell und einfach integriert werden.

  • PCE.js zeigt eine völlig neue Idee, Webseiten aktiv und dynamisch zu gestalten.

  • Nachhaltiger Produktschutz durch Verschlüsselung der inline-Scripte in der Webanwendung.

  • Private-Server ermöglicht Unabhängigkeit zur kommerziellen Cloud.


Kurs-Voraussetzungen/Merkmale:

  • Ohne Fleiß kein Preis und Programmierkenntnisse in Java-Script oder C++/C#
  • Bestens geeignet für Umsteiger von C++/C# nach JS (ECMAScript)
  • Anwendungen nur über Klassenstrukturen, also ab ECMA6 (C++-Stil)
  • Keine HTML- und CSS-Kenntnisse erforderlich
  • Eigener PC mit vorinstallierter Software (Note.js, Google Chrom, Texteditor)
  • Kurseinstieg ab dem 3. Kurstag ist möglich

Kurs-Ziele:

  • Anwendung und Erweiterung des bestehenden Framework PCE.js
  • Handhabung einer dynamischen Webseite mit JS ohne HTML-Details
  • Servereigenschaften mit Node.js für PCE-Objekte erstellen
  • Anwendungen durch Klassenstrukturen (Vererbung) mit JS
  • SVG-Objekte erzeugen und mit der Maus bewegen
  • Dynamische SVG-Templates erstellen (DOM-Funktionen)
  • Ereignisgesteuerte Programmierung für die Menüführung
  • Inline-Scripte (Regeln) und deren Anwendung
  • Funktionsdatenbank und das Prinzip der KI-Verteilung
  • SVG-Templates im RUN-Modus testen
  • Selbständige Entwicklungstätigkeit einer Webapplikation mit dem Framework
  • Anwendungen im Internet via IoT und Industrie 4.0 für effizientes Projektieren mit dem Framework PCE.js



  • Bild 1: Das PCE.js Framework und seine möglichen Anwendungsgebiete

https://www.youtube.com/watch?v=2QHF3RGrGOo


Einleitung und Seminarbeschreibung

 

PCE steht für Process-Control-Engineering und gewinnt durch die Webtechnologie wieder mehr an Aufmerksamkeit und damit auch an Bedeutung für ein neues und modernes Publikum. Die Begriffe HMI (Human-Machine Interface) oder zu Deutsch MMS (Mensch-Maschine-Schnittstelle), stammen aus Zeiten der Visualisierung (SKADA) und sind Anwendungen für die industrielle Automatisierung, welche mittels eines Gerätes (CPE, nicht mit PCE zu verwechseln) und einer dort installierten Software die Verbindung zwischen Mensch und Maschine visualisieren und ermöglichen soll.
Eigentlich ist das traditionelle Thema HMI für Anwender mit Blick auf Web-Anwendungen nicht nur langweilig, sondern auch höchst kompliziert. Die Prozess-Steuerung, welche letztendlich durch die Kontrolle einer Applikation in einer SPS die entsprechende Sichert zur Anlage garantiert, ist ein ganz wichtiger Faktor zum Thema PCE und gestaltet die Kopplung zur HMI oft äußerst komplex und kostenintensiv.

Nun - solche Erläuterungen  und Spezifikationen (wie im oberen Abschnitt dargestellt) sind weiterhin gültig, aber nicht vollständig in das heutige Geschehen mit dem Internet einzugliedern, denn die Zeiten und damit auch die Anwendungen und deren Protokolle, haben sich in den letzten Jahren durchgängig und deutlich verändert.

Neue Geräte (IoT-fähige CPEs) können über die Web-Technologie und dem Internet nicht nur einen Service für Personen anbieten, sondern ermöglichen auch über einen Browser ein Smartphone oder ein Tablett als Web-Panel zu nutzen. Allerdings betrachten die meisten Anwender dieser Geräte nicht mehr unter dem Gesichtspunkt HMI, sondern allgemein als Webapplikation.  Und diese hat natürlich überwiegend kostenfreien Charakter.

Und damit sind wir beim Thema PCE.js-Framework angekommen. Wir, das sind die Kursteilnehmer und Referenten, vergessen alles was uns an Konzepte zur Erstellung einer Webseite für Industrieanwendungen (HMI/Iot) über HTML, CSS und XML (AJAX) erinnert.

Zielsetzung ist es, uns auf eine moderne und schlanke Webanwendung im  Sinne Web-PCE zu konzentrieren. Es handelt sich hier um die Umsetzung bewährter Techniken in  eine moderne Webtechnologie. Um das deutlich zu machen, handelt es sich nicht nur um die Erstellung einer dynamischen Webseite oder das Ein- und Ausschalten der Kaffee-Maschine über eine Cloud, sondern die Anwendung einer dynamischen Webseite mit JavaScript und Node.js sowie künstlicher Intelligenz (KI) durch sogenannte steuerbare inline-Scripte. Ähnlich wie beim Arduino - einfach, schnell und effizient!

So erarbeiten wir uns eine erste Webseite, welche es uns erlaubt eigene Objekte in ein Top-Menü zu organisieren, von dem aus wir dann die Objekte in die leere Projektseite (Web-Display)  mittels Maus plazieren. Eben - Objekte mit der Maus bewegen :) -  Die so gezeichnete Webseite wird dann Schritt für Schritt als Web-Applikation  vervollständigt und schließlich durch die Integration der Inline-Scripte steuerbar gemacht, sodass diese vorerst in einer Simulation getestet werden können. Nachdem der Test zufriedenstellend ist, wird die Anwendung auf dem Privatserver mit node.js getestet. Danach steht der Anwendung nichts mehr im Wege um damit ins Internet zu gehen

Damit wir diese Vision umsetzen und praktizieren können, brauchen wir kostenfreie Werkzeuge, ein wenig Geschick und ausreichend  Zeit mit ein wenig Geduld. Zudem benötigen wir eine klar beschriebene Aufgabenstellung für die Erstellung der eigenen Web-Applikation mit dem Framework PCE.js.

[PCE] Process Control Engineering (PCE-Kategorien, DIN EN 62424, DIN EN 60848, IEC 61131)
[CPE] Customer Premises Equipment nicht mit PCE zu verwechseln
[SCADA] Supervisory Control and Data Acquisition
[Regeln] Programmierungs-Anwendung der IoT-fähigen Geräte wie z. B. Flow-Diagramm, Grafcet oder IEC 61131

Samstag, 4. Februar 2017

Multikommunikation mit der IOT2020

☺☺☺☺Bei der Erstellung des Buches musste ich feststellen, dass meine Arduino-Kenntnisse nicht ausreichend waren um mit der IOT2020 eine etwas größere Aufgabenstellung zu lösen. Dazu musste ich die C++-Sourcen des EthernetClient der Intel-Version studieren. So manche Dinge sind doch nicht so blauäugig anzugehen, wie ich dachte 😭.

Kann man mit der IOT2000 nicht auf die SD-Karte schreiben?

Das hat mich sehr gewundert, dass ich mittels der Arduino-Welt nicht auf die SD-Karte schreiben konnte und musste gezwungenermaßen in die Eclipse-Welt umsteigen. Vielleicht ist es ja nur meine Unwissenheit oder gibt es da andere Erfahrungen?

Das Thema aus Kapitel 12 zeigt die schon industriereife Aufgabenstellung, welche nun endlich gelöst wurde:

12 Multikommunikation mit der SIMATIC IOT2000

Die serielle Verbindung über die Schnittstelle zur Arduino-IDE (COM) haben wir schon in Kapitel 8.2, speziell in Kapitel 8.2.1 für den SerialEvent kennen gelernt. Ich denke, die Anwendungen über die serielle Schnittstelle sind relativ einfach zu verstehen und findet sicherlich noch in manchen Anwendungen ihre Berechtigung. Für IoT sind proprietäre Protokolle und das Pollen von Daten allerdings nicht mehr aktuell. Abgesehen davon ist die lokale Entfernung der Teilnehmer über USB sehr begrenzt und zudem alle Teilnehmer über das Internet kommunizieren möchten. Hier wird die COM-Schnittstelle nur für die Simulation der Analogeingänge mit Ardu_IOsim der IOT2000 und zu Testzwecken angewendet.

Das Ziel muss nun sein, eine Kommunikation über Ethernet mit anerkannten Protokollen zu schaffen. Nur so können gewisse IoT-Dienste erreicht werden.
Damit IoT aus Sicht eines Projektes angewendet wird, betrachten wir eine etwas gehobene  Anwendung aus folgenden Komponenten:
  • WinCC mit Rezeptur und PLC (S7-1200®) über Profinet
  • Externe SPS (S7-1500) welche nicht im Tia Portal zum WinCC-Projekt konfiguriert ist
  • IOT2020
  • Webanwendung mit einem Browser

12.1 Aufgabenstellung

In Bild  12.1 ist das Deployment zu sehen. Wir erstellen ein TIA-Projekt mit einer Visualisierung (WinCC) und Rezeptverarbeitung auf einer S7-1200®. Die Daten der Rezeptur sollen auf einem Web-Browser dargestellt werden. Im System existiert zusätzlich eine S7-1500®, deren Analogwert (Sinus) im gleichen Web-Browser dargestellt werden soll. Die IOT2000 besitzt zudem eigene Analogeingänge, welche ebenfalls auf dem Web-Browser abgebildet werden. Diese Analogdaten sollen über Ardu_IOsim simuliert werden, da kein Shield zur Verfügung steht.
Die Anpassung der IP-Adressen wird in Kapitel 12.1.1 erklärt, da Sie sicherlich nicht die gleiche Konstellation über Ihren Router haben, wie das hier bei meinem PC der Fall war. Im Detail müssen nun folgende Punkte erfüllt werden:
  •  Ardu_IOsim wird mit Netbeans gestartet und soll die 6 analogen Eingänge der IOT2000 simulieren.
  •  Mit dem TIA Portal wird eine Visualisierung auf einem Panel-PC entwickelt, welche mit einer SPS (S7-1200®) eine Rezeptur anwendet. Daraus soll ein Rezeptwert über die IOT2000 auf dem Web-Browser des PCs übertragen werden.
  •  Die IOT2000 empfängt vom Panel-PC den Analogwert und sendet diesen auf den Webbrowser. Zudem bildet die IOT2000 ihre eigenen Analogeingänge auf dem Webbrowser ab. Zu guter Letzt verbindet sich die IOT2000 mit der externen S7‑1500® um dessen Analogwert ebenfalls auf dem Webbrowser abzubilden.

Bild 12.1  Deployment zur Aufgabenstellung


WinCC und die S7‑1200® werden auf einem PC mit PLCSIM simuliert, sonst müssten Sie ja einen Panel-PC und einen PC für den Webserver zur Verfügung stellen J. Aus diesem Grunde wird das Projekt in drei Teilen vorgestellt:
  1. Teil: Für den Webserver brauchen Sie einen PC und eine IOT2000.
  2. Teil: Sie brauchen für dieses Beispiel einen PC, eine IOT2000 und eine S7‑1500®.
  3. Teil: Sie brauchen einen PC mit PLCSIM TIA Portal V13 SP1 und eine IOT2000 

    12.2 Die Programmstruktur


     Bild  12.4 Die Programmstruktur zur Aufgabenstellung
In Bild  12.4 ist die Programmstruktur (Arduino) zu sehen. Dazu eine kurze Zusammenfassung:
  •  Die S7-1500® kommuniziert über Ethernet mit der IOT2020 und besitzt einen DB1, welcher über einen FB den Wert einer Sinuskurve darstellt. Diese soll als Real-Zahl im Webserver angezeigt werden. Dazu wird der Baustein plc.GetFloatFromDB angewendet.
  •  WinCC schreibt die Rezeptdaten auf die Festplatte. Gleichzeitig kommuniziert WinCC über eine C++-Schnittstelle, damit der Rezeptwert an die IOT2000 gelangt. Dazu wird der Baustein plc.GetFloatFromWinCC verwendet.
  • Die IOT2000 holt sich den Analogwert (C++) aus der S7‑1500® und gibt diesen an den Webserver weiter. Dazu wird der Baustein plc.PutMessage2Client verwendet.
  • Die IOT2000 liest ihre eigenen 6 Analogwerte und übergibt diese dem Webserver.
  •  Die IOT2000 empfängt die Rezeptdaten von WinCC (C++-Interface) um diese an den Webserver zu senden.
  • Der Webbrowser befindet sich auf dem Test-PC, welcher auch PLCSIM startet.
Damit dieses Beispiel realisiert werden kann wurde die PLC_IOT in der IOT2000 mit den Funktionen plc.PutMessage2Client und plc.GetFloatFromDB erweitert. So ist eine einfache Anwendung durch den Programmierer gewährleistet, ohne sich in die Server-Client-Technik einzuarbeiten.




Im Test  wurden zwei Browser und die Simulation gestartet, sowie die S7-1500 mit der Sinuskurve verwendet. Die Webseite wird jede Sekunde aufgerufen und die Zykluszeit der IOT2020 beträgt für dieses Beispiel im Schnitt ca. 15 Millisekunden.

Donnerstag, 12. Mai 2016

Libro de Trabajo de Johannes Hofer Add-On en TIA Portal Aprende con ejercicios y prácticas en GRAFCET con la norma de DIN-EN-60848

 Libro de Trabajo de Johannes Hofer

Add-On en TIA Portal 

Aprende con ejercicios y prácticas en

GRAFCET

con la norma de DIN-EN-60848


https://www.youtube.com/watch?v=PN_VIgV-lUk

1.0 Introducción


Que motivo hay detrás para crear un Libro de trabajo de Grafcet en TIA Portal?


La Infraestructura TIA Portal no ofrece ningun Grafcet con la norma DIN EN 60848. Simplemente ofrece un S7-GRAPH® y pertenece a la norma DIN EN 61131, que describe los procesos secuenciales con opciones adiciones. En este caso, no ofrece la opción de la norma DIN EN 60848 que requieren los estudiantes para una formación en un exámen de Admisión. Puesto que no hay alguna aplicación de Grafcet en la Infraestructura TIA, las Escuelas de capacitación tienen que confiar en el software de PC con una simulación. Una aplicación directa con un Simatic PLC no existía en el momento antes de editar este libro. Por lo tanto era necesario encontrar una solución a la SIMATC®-PLC.


1.1 La Aplicación en Tia Portal 


Como se puede realizar una aplicación inexistente como lo es GRAFCET en una Infraestructura TIA Portal?
Una buena pregunta, sin embargo dentro de los marcos no es posible en la forma convencional. El tiempo de ejecución señalado como RT es un sistema compilado resultante de un lenguaje de programación editado.

A modo de ejemplo en codigo fuente en FUP o SCL se compilarán y por lo tanto se traducirán en un codigo máquina. Esto entonces se ejecutará en RT.
En la elaboración de un programa, el RT en el PLC no influenciará. Por supuesto que en el PC hay un RT como Simatic WinCC Advanced y en el Sistema de Windows se ejecuta. Esta compilación surge de la aplicación HMI en los paneles de visualización y manejo. La solución del problema se realiza por lo tanto en el Panel HMI de visualización, entonces con unos pequeños trucos podriamos en RT del Panel de Visualización (panel, monitor etc) programar una aplicación orientada a objetos.

1.2 La Aplicación en primer paso


Para el inicio de una creación de un Proyecto se presenta en la Imagen 1.0 en una forma simplificada. Con el TIA Portal configuraremos un proyecto con un PLC y un aparato HMI (por ejemplo S7-1500® CPU y un Panel táctil o MonitorTP1500® Comfort). El Programa PLC será del PC (TIA) donde se visualizarán en el (descarga al dispositivo). En las aplicaciones de este libro con Grafcet, se utiliza S7-PLCSIM y la simulación HMI-RT. Por lo tanto necesita a ex cepcion de su PC ningún otro tipo de Hardware. Usted podría descargar una versión en Demo del Software de TIA Portal en la Pagina Web de Siemens (Se requiere de darse de alta y al momento de editar este libro la descarga es sin costo alguno). Del mismo modo, existe la posibilidad de la compra de un Disco de demostración. 






La aplicación de las imágenes proyectadas en el equipo de operación y el programa de control en el autómata se comunican conjuntamente  ahora en RT . Esto significa que se puede acceder al programa del PLC a través de entradas (por ejemplo, botones) en el panel de operador. Asi también se pueden cambiar colores o similares.

Desventajas:
Después de una compilación las imágenes de la aplicación en nuestro pantalla de visualización no se pueden ya mas mover con el ratón del ordenador. Es decir que, para una nueva solicitud de cambio se tiene nuevamente programarlo a travez de TIA Portal, suminsitrar nuevas u otras imagenes, compilar y reenviar al Panel de visualización.

1.3 La Aplicación en segundo paso


Se puede ver en el Panel de Visualización en la  Imagen 1.1  una representación simplificada de una aplicación de RT con  Add-on Grafcet . El software es un proyecto que está en TIA el cual funciona en RT en el PC con S7-PLCSIM y RT.

A travéz de esta extensión podremos entonces mover los objetos en el Panel HMI en Runtime. Por ejemplo una imágen del proyecto arrastrarla a otra posición. A travéz de una Programación inteligente en el SPS sería sólo una aplicación de Grafcet rápida como un juego de niños J. 





1.3.1 Información del libro y el Programa

El Programa en el PLC esta en SCL escrito. La visualización será programada con una secuencia de comandos en Scripts (VBS). Con este Libro de trabajo recibe lo necesario y preciso del Software TIA Portal (Proyecto en TIA así como la extensión para hacer dinámicas las imagenes en RT) y por lo tanto se podría preparar Grafcet en las pruebas de capacitación e incluso en algun Proyecto. La versión para escuelas de capacitación estan protegidas todos los caminos de acceso, por ejemplo Se pueden usar todas las aplicaciones pero no se pueden ver los Códigos Fuente del programa en SCL o VBS.

En resumen:

  • El Add-on Grafcet se emplea o se integra a su Proyecto. 
  • Los deseos en el Programa se escriben en el PLC y/o se integran en el módulo del Proyecto Grafcet 
  • Ambos se compilan y en el equipo S7-1500 se transfieren. 
  • Grafcet diseña, compila y crea aplicaciones. 
  • Grafcet y el Add-on del Maus del Ordenador funcionan sólo cuando se ha iniciado el S7-PLCSIM 
  • En total son 10 fases de estudio descritas las cuales cubre el alcance del control esencial. Además, los ejercicios propios se pueden crear. No hay limitaciones en la versión de capacitación. 
  • El código fuente completo de la versión de aprendizaje de capacitación protegida puede adquirirse por separado para sus propios proyectos y utilizar esto tan a menudo, cambiarlo (otro hardware, etc.) y mejorarlo. 




Mittwoch, 17. Februar 2016

Motivation

Welche Motivation veranlasst das Projekt App Runtime?


Ausgehend vom V-Diagramm der SW-Entwicklung treten zwangs-läufig sehr häufig dieselben Merkmale auf. Diese zu umgehen heißt, das V-Diagramm zu ändern.

Inbetriebnahme = Integration

Das Ergebnis ist hier sichtbar!

                                                                                          
Das Projekt wird komplett bis auf die Programmierung konfiguriert. D.h. keine neue Kompilierung und damit auch kein neues Produkt. In Runtime wird das Anwender-Programm online mit Grafcet objektorientiert konfiguriert. So wird das Anwenderprogramm innerhalb der App zum Bestandteil des bereits übersetzen Programmes. Der Betreiber muss im Einzelfall entscheiden, ob eine neue Zertifizierung noch notwendig wird.

Integration mit FBs im TIA Portal® oder C/C++

Grafcet kann auch durch die Integration in das Framework TIA Portal® genutzt werden. Dazu werden  Bibliotheksbausteine zu Grafcet genutzt. Diese erlauben auch als Aktion oder Transition den  Aufruf eigens erstellter Bibliotheks-Funktionen (FBs) oder in begrenzter Form C/C++-Programme ohne DLLs. Diese Grafcet Add-ons bilden daraus eine erweiterte Funktionalität zur Ablaufsteuerung. Damit führt diese Norm zum objektorientierten Einsatz in der SPS mit und ohne Visualisation.

[Runtime]: Ergebnis aus dem Kompilat der Entwicklungsumgebung wird von Runtime ausgeführt.
[C/C++]: Kompilat, d.h. EXE-Dateien mit geringer Anwendungsdichte. Auch VB oder C# usw.