Mittwoch, 11. Januar 2017

Absturz der IOT2000

IOT2000  ohne Shield testen

Bei den ersten Schritten mit der SIMATIC IOT2000 fällt auf, dass beide Sketche sich gleichzeitig im RUN befinden können. Das kann sehr Vorteilhaft sein, wenn die Arbeitsaufteilung stimmt und bedeutet, dass die Programme sich nicht in Konkurrenz befinden dürfen. Also entweder die Pins mit der Arduino- oder der Intel® -Welt programmieren, sonst gibt es einen gemischten Salat ☺.

Absturz beim Test der PLC in Kapitel 9 festgestellt

Die Anwendung der  PLC wird in Kapitel 9 vorgestellt. Hier ein Ausschnitt für das Lesen von analogen Werten.
9.2.5 Analogwerte lesen uns skalieren
Das Programm befindet sich auf der Buch-CD unter PLC_IOT200_Kap_9_2_5.



Hier wurde die Funktion von SCALE aus der FUP-Programmierung verwendet und angepasst. Die Parameter error und BIPOLAR (Bild  9.11), wurden nicht übernommen. Tritt ein Fehler auf, z. B. bei falscher Angabe der Grenzen (HI_LIM, LO_LIM), wird der Analogwert auf 0.0 gesetzt. Die Anwendung negativer Werte findet im Baustein nicht statt und kann vom Leser gegebenenfalls nachgeholt werden. In den meisten Fällen ist der negative Wert aus dem Rohwert ein Thema nach der Skalierung, wenn das bei einem Rohwert von 0-1023 überhaupt sinnvoll ist, da dieser nicht negativ werden kann.
Im Beispiel wurde plc.Scale für vier Bereiche skaliert. Jeder Bereich soll einem Ausgang (A0-A3) zugeordnet werden. In Bild  9.11 sind die vier Bereiche (Punkt 1 bis Punkt 4) durch die Schieber optisch dargestellt (diese haben keine Wirkung auf das Programm) und zeigen wie der aktuelle Wert (AI0) von 692 sich im dritten Bereich befindet und deswegen A2 gesetzt ist.

9.3  Das Absturz-Problem mit C++-Klassen bei der IOT2000
Wenn sie eine Klasse nicht im loop() instanziieren (Bild  9.13), dann darf die Klasse im Konstruktor keine Systemfunktionen aufrufen.

Wird im Konstruktor einer Klasse eine Systemfunktion benutzt, wie z. B. Millis(), dann hängt sich die IOT2000 nach dem Hochladen auf (Stand Jan. 2017), wenn die Instanz der Klasse global erzeugt wird.
In Bild  9.13 ist das Beispiel der Deklaration aus den Übungen zu sehen. PLC_IOT plc(&ioSim) wird vor dem loop() deklariert. Der Konstruktor initialisiert dabei die PLC und muss unter anderem auch die Timer zurücksetzen. In der Timerfunktion wird Millis() verwendet. Das würde zu einem Systemabsturz führen, da es Millis() anscheinend noch gar nicht gibt. Aus diesem Grunde wird die Klasse über den Konstruktor keine Systemfunktionen aufrufen. Diese Absicherung ist im folgenden Bild  9.14 zu sehen.

Hier wird das Attribut inRun auf false gesetzt bevor der Konstruktor wirksam wird und somit verhindert, dass die Methode InitPLC() keine Systemfunktionen anwendet (z. B. beim Timer). InitPLC() wird danach inRun auf true setzen, damit z. B. Millis() für die Timer im Anwenderprogramm verwendet werden kann.
Wenn also die Kommunikation zum Simulator ausfällt (Checksum zählt hoch) dann haben Sie vielleicht in einem Konstruktor eine Systemfunktion benutzt, obwohl diese noch nicht instanziiert war und das IOT2000 kennt die Programmanwendung nicht mehr.
Nun können Sie das Problem lösen, indem Sie grundsätzlich keine globalen Deklarationen vornehmen, sondern erst im loop() deklarieren. Das ist für die Programmierer welche z. B. mit Singleton arbeiten nicht möglich, denn diese sind instanziiert, bevor der loop() beginnt. Je nach Auffassung und Begründung gehen hier die Meinungen auseinander, aber abstürzen darf eine Hardware mit den besonderen Eigenschaften der Industrietauglichkeit, nach meiner Meinung nicht.
Übrigens: Bei einem Test auf dem Arduino-Board UNO mit diesem Problem, konnte kein Absturz festgestellt werden!

Vertrieb in Deutschland zum Buch gesucht!





Mittwoch, 4. Januar 2017

Ist die IOT2000-Arduino kompatibel zur Arduino-Welt?

IOT2000 und die Arduino-Welt

Bei der Erstellung meines neuen Buches zur IOT2000 ist mir zur Programmierung der Arduino-Anwendung aufgefallen, dass die Programme, welche auf einem UNO-Board entwickelt wurden, nicht ohne Anpassungen fehlerfrei übersetzt wurden. Dazu nachfolgend ein Ausschnitt aus dem Buch zu Kapitel 8:


8    Der Arduino-Sketch in der SIMATIC IOT2000 für Ardu_IOsim

Die Anwendung der IO-Simulation Ardu_IOsim hat den Vorteil, dass vorerst keine digitalen und analogen Eingänge verdrahtet sein müssen und der Sketch trotzdem getestet werden kann, bevor man sich ein passendes Shield für die IOT2000 suchen muss.

Der Programmzusatz für den Test mit Ardu_IOsim muss für das eigene Anwenderprogramm so gering wie möglich sein. Die Programmierung des Sketchs darf auch nach dem Einsatz eines Shields für die digitalen und analogen Eingänge keine Programmänderung erfordern.
Diese Forderung ist mit einem kleinen Trick ohne großen Aufwand erfüllbar. Betrachten wir die kleine Softwarestruktur zum Sketch in Bild  8.1.


























Das Anwenderprogramm verbindet sich mit einem #include “Ardu_IOsim.h“ mit der Klasse Ardu_IOsim_PLC.cpp und kann so die Eigenschaften dieser Klasse anwenden. Dies ist aber nur dann der Fall, wenn der Anwender dies wünscht. Das wird durch die #define _IOSIM_ festgelgt. Ist das der Fall, dann wird innerhalb serialEvent die Schnittstelle zu Ardu_IOsim (PC) aktiv und kann für das Anwenderprogramm nicht mehr genutzt werden. Auch werden innerhalb des Anwenderprogrammes bestimmte #define-Anweisungen aktiv (nicht im Bild abgebildet). Existiert das Define _IOSIM_ nicht, wird das Anwenderprogramm ohne die Simulation abgearbeitet. Wie sieht das nun in der Praxis aus?
In Bild  8.2 ist das Grundgerüst für das Einbinden der Simulation ersichtlich. Leider verfügt der Editor über keine Zeilen-Nummerierung (Version 1.6.9). Dazu nun folgende Erklärungen:
Die #define _IOSIM_-Anweisung sorgt dafür, dass die Zeilen nach #ifdef _IOSIM_ ausgeführt werden. Soll die Simulation abgeschaltet werden, so ist die Zeile #define _IOSIM_ in Kommentare zu setzen (//#define _IOSIM_). Im Falle der Simulation wird mit Ardu_IOsim iosim; die Instanz der Klasse Ardu_IOsim instanziiert und die darauffolgenden #define-Anweisungen bedeuten, dass die im Programm üblichen Funktionen digitalRead, analoRead und pinMode umgeleitet werden in iosim.DigitalRead, iosim.AnalogRead und ioSim.PinMode. Somit können in der Anwendersoftware diese Anweisungen wie gewohnt benutzt werden.



Im setup werden wie gewohnt die Pin konfiguriert. Hier im Beispiel sind die Pins 2 und 3 als Ausgänge deklariert. Danach wird die serielle Schnittstelle auf 115200 Baud eingestellt und falls Zeichen vorhanden sind, gleich der Buffer geleert.
Der loop zeigt ein kleines Beispiel zur Anwendung der digitalen und analogen Befehle. Ist die Simulation aktiv, werden die digitalen und analogen Eingänge simuliert, ohne dass der Programmierer der Anwender-Software etwas dazu berücksichtigen muss. Im Beispiel wird der digitale Pin_2 auf den digitalen Pin_3 kopiert und der Ana_0 entsprechend bei >=127 der Pin_3 gesetzt oder gelöscht.

Die Funktion serialEvent  ist eine Systemfunktion und wird automatisch aufgerufen, sobald sich Zeichen an der seriellen Schnittstelle befinden. Nur hier muss die #ifdef _IOSIM_-Anweisung eingefügt werden, damit die Methode iosim.SerialEvent nur dann aufgerufen wird, wenn _IOSIM_ auch tatsächlich definiert worden ist.
Damit soll das Prinzip über die Anwendung einer IO-Simulation programmtechnisch ausreichend erklärt sein.
Aufgefallen ist mir, dass das Programm Ardu_IOsim, welches auf dem Arduino UNO entwickelt wurde nicht in der SIMATIC IOT2000 fehlerfrei übersetzt wurde. Damit ist die IOT2000 nicht unbedingt 100% kompatibel zum Arduino-Konzept!

Aus diesem Grunde wurde die Software für die Anwendung in der SIMATIC IOT2000 angepasst. Der Arduino-Kenner sollte sich also nicht wundern, wenn hier einige cast gesetzt wurden, die sonst nicht verwendet werden. Auch die Register zum Atmel-Prozessor (z. B. DDRD, PORTA usw.) wurde durch Funktionen künstlich ersetzt. Zudem auch serialEvent() auch nicht funktioniert, sind einige Anpassungen notwendig (naja - ist ja auch kein Arduino-Board!).
So jagt eine Überraschung die andere.
Im folgenden Kapitel 8.1 wird die IOT2000-Arduino-Version vorgestellt. Die ursprünglich entwickelte Arduino-Version für das UNO-Board befindet sich auch auf der Buch-CD.
Besonders interessant ist, dass beide Module (Arduino-IDE und Eclipse) gleichzeitig lauffähig sind! Das kann zu Überraschungen führen, wenn die Programme bezüglich der Pins konkurrierend sind J.






Montag, 19. Dezember 2016

SIMATIC IOT2000


Was und wie kann ich mit dem neuen Gateway SIMATIC IOT2000 anfangen?

Diese Frage habe ich mir mehrmals gestellt und bin vorerst zu keinem Ergebnis gekommen. Nach einigen Untersuchungen am Objekt konnte ich feststellen, dass ich wohl ein Galileo-Board in den Händen hielt. Das hat mich nicht sehr überrascht, denn das Galileo-Board gibt es ja schon seit 2014 mit der Integration einer Arduino-Schnittstelle. Wie und was kann ich nun mit dem IOT2000 anfangen, um nicht das was es bereits in der Galileo-Welt schon gibt, noch einmal neu zu erfinden?

Die Antwort ist mein neues Buch:



Nachfolgend einige Seiten aus dem Buch. Weitere Ausschnitte folgen noch :)


1.1 SIMATIC IOT2000

Viele reden von Industrie 4.0, deren Idee es ist, unter anderem Daten in der Cloud über die weltweite Vernetzung für verschiedene Nutzer zur Verfügung zu stellen. Das Problem ist nicht die Erfassung der physikalischen Daten, sondern deren Portierung und Darstellung über ein Netzwerk in eine entsprechende Internet-Struktur. Beispielhaft liefert ein Barcode eine Information über ein Objekt (Größe, Gewicht, Farbe, Preis usw.) und kann so als gespeichertes Objekt innerhalb eines Netzwerkes Informationen weitergeben.
Eine Lösung bietet das Kommunikationsprotokoll MQTT[1], welches sich bereit in der Anwendung IoT etabliert hat und bietet bessere Möglichkeiten der Umsetzung als das http[2]-Protokoll.
Ganz anders sieht es bei der Sensorik aus, diese liefern nicht nur Daten wie Temperatur, Feuchtigkeit usw., sondern können zudem Funktionalität übermitteln und Aktionen einleiten. So schaltet sich z. B. eine Heizung ein, wenn die Temperatur unter den Sollwert fällt. Aufgrund der verschiedenen Systeme und Darstellung der physikalischen Werte entsteht ein riesiges Funktionsbündel. Dazu gehören z. B. die Identifikation, Adressierung und Skalierung der Daten und ein ganz wichtiges Argument ist die Informationsverarbeitung der eingebetteten  Systeme (Embedded). Und da sind wir schon beim SIMATIC IOT2000 (im weiteren Buchverlauf auch häufig als IOT2000 bezeichnet) angekommen.

Es stellt sich damit die Frage: „Wie kommen meine physikalischen Daten in die IOT2000 und wie muss ich diese verwerten und kalibrieren, um diese dann wieder in einem Netzwerk zur Verfügung zu stellen"?




[1] [MQTT] Message Queue Telemetry Transport
[2] [http] hypertext transfer protocol

Ein Gateway mit der Möglichkeit verschiedene Datenquellen zu lesen, zu schreiben und auch zu erzeugen wäre eine denkbare Lösung. Z. B. eine SPS kann von der Datenquelle lesen und Daten erzeugen. Experten können sich deren Programmierung gut vorstellen. Auch die Vernetzung der SPS innerhalb eines bekannten, lokalen Netzwerkes ist gut denkbar. Die Daten oder sogar Funktionalität in einen Cloud zu senden wird dagegen für den SPS-Programmierer schon schwieriger, sich vorzustellen und damit auch umzusetzen. Noch komplexer wird der Gedanke, Daten aus anderen Netzwerken und deren Geräte zu erfassen, auszutauschen und letztendlich in einer Cloud als Service zur Verfügung zu stellen.

Die Sensorik und die Kommunikationsfähigkeit, sollten mit einer minimalen Informationsverarbeitung möglich werden.

 ....

8.1 Der Entwurf von Ardu_IOsim
Es soll ein Programm geschrieben werden, welches die digitalen Eingänge Pin2-Pin13 und die analogen Eingänge A0-A5 des Arduino-Boards simulieren soll. Die Kontrolle zum Arduino-Board soll mit der seriellen Schnittstelle (USB) erfolgen. Dafür müssen je ein Programm für den PC und ein Programm für das Arduino-Board geschrieben werden. Für den PC wird das Java-Programm und das C++-Programm für den Arduino erstellt. Die Anwendung auf dem PC wird durch eine kleine Grafik (JavaFX Scene Builder) unterstützt, welche es erlaubt die Schnittstelle zum Arduino zu kontrollieren. Die digitalen und analogen Eingänge für den Arduino können so per Klick zum Board gesendet werden, welches nun mit seinem Anwenderprogramm auf die simulierten Daten reagiert und diese dann auf einer Webseite präsentiert.
Das Arduino-Projekt bekommt eine Library, welche zum beliebigen, eigenen Projekt eingefügt wird. Der Programmierer kann so mittels #define-Anweisung zwischen Simulation und echten Eingängen unterscheiden.


Bild  8.1 Das Programm Ardu_IOsim kann für das SIMATIC IOT2000 und dem Arduino/Genuino eingesetzt werden
....

8.1 Der Datenaustausch zwischen Arduino/IOT2000 und Ardu_IOsim

Der Arduino/IOT2000 dient als Server und der PC als Client. Das bedeutet, dass der PC seine Aufforderung an den Client sendet und dieser Antwortet. Mit der Aufforderung des Client werden die digitalen und die analogen Eingänge im ASCII-Format gesendet (Bild  8.2). Im Bild sind die Eingänge Pin_0, Pin_1, Pin10 und Pin_11 als Eingänge deklariert. Die restlichen Pins sind Ausgänge und können bei dieser Deklaration vom Anwender nicht gesetzt werden.
Die Datenrichtungen der einzelnen Pins sind für die Darstellung im Programm Ardu_IOsim wichtig, damit diese richtig angezeigt werden und die Eingabemöglichkeit zugeordnet werden können. Dafür werden die Datenrichtungsregister DDRD-DDRC gesendet. Für die Zustände der Ports auf True oder False sind die Register Port_D bis Port_C zuständig. Im Programm Ardu_IOsim werden die letzten Ports DDRC und Port_C nicht ausgewertet. Das kann dann der Leser erweitern, falls er die analogen Pins ebenfalls als digitale Eingänge verwerten möchte. Das Zusammensetzen der Port-Signale übernimmt die Funktion SerialEvent, welche dann noch später zur Programmierung erklärt werden wird.
Damit ist die Philosophie für den Datenaustausch dieser proprietären Verbindung prinzipiell erklärt.
Wenn die SIMATIC IOT2000 Daten zur Verfügung stellen soll, ist diese als Server zu programmieren (Empfehlung). Sie wird also nie von sich aus irgendwelche Daten senden, sondern wartet bis der Client (PC) seine Aufforderung dazu sendet.
Welches Protokoll dazu verwendet wird und wie die Vernetzung mit anderen SPSen funktionieren soll, wird in Kapitell 11 vorgestellt.








Dienstag, 6. Dezember 2016

Jetzt auch als Buch: Objekte in TIA Runtime mit der Maus bewegen

Wie im TIA Portal Objekte  ähnlich wie auf einem Smartphone bewegt werden können, zeigt das neue Buch:



Auf der Buch-CD befinden sich alle TIA-Projekte zu diesem Thema. Das was Sie wissen möchten wird hier kurz und knapp im Source-Code für Sie veröffentlicht. Lernen Sie die neuesten Techniken kennen, das TIA-Portal einmal ganz anders zu nutzen, wie es die alten, eingesessenen Praktiken einmal vorgestellt haben.

Das Buch ist ab sofort lieferbar unter www.tia-expert.com. Der Buchpreis beträgt 39,50€ brutto zuzüglich 3,00€ Versandkosten innerhalb Europa. Bei Bestellungen auf www.tia-experet.com erhalten Sie einen Rabatt von 15% auf den Buchpreis. Sie können auch ohne Rabatt bei Amazon bestellen.

Neue Ideen zeigen wie mächtig das TIA-Portal auch in der Runtime sein kann, wenn man ein wenig Fantasie entwickelt.

Beispielhaft GRAFCET in RunTime:



Dazu das passende Buch in deutsch oder spanisch in Vorbereitung:


                 






Freitag, 2. September 2016

GRAFCET-Workbook

Lernen wie GRAFCET funktioniert und dann ausprobieren. Ein völlig neue Betrachtung mit dem GRAFCET-Studio.


Keine reine Theorie sondern Praxis Pur. Das und noch vieles mehr, ist die Devise!


Die Buchveröffentlichung erfolgt Ende Januar 2017 in Deutsch und Ende März in Spanisch. Für Schüler, Studenten und Profis ideal geeignet, den professionellen GRAFCET zu erstellen, zu testen und zu simulieren. GRAFCET-Anfänger können sich über 10 Lernphasen das Wissen aneignen und trainieren. Schüler, Studenten und Auszubildende bereiten sich so auf ihre individuelle Prüfungsaufgabe vor und trainieren diese mit 10 weiteren, praktischen Beispielen.
Der Leser setzt den getesteten GRACET nicht nur in die virtuelle Welt um,  sondern transformiert das GRFACET-Projekt über das TIA Portal in die reale SPS. Im Buch enthalten ist je eine Vollversion von GRAFCET-Studio Starter und PLC-Lab Runtime.

Der Leser erstellt mit dem GRFACET-Studio den GRAFCET und kontrolliert sein Ergebnis im dynamisierten GRAFCET und mit Hilfe einer virtuellen Anlage, welche mit PLC-Lab Runtime dargestellt wird.







Preis: 39 EURO inkl. Lösungen, inkl. Vollversion „GRAFCET Studio Starter“, inkl. Vollversion „PLC-Lab Runtime“


Was man damit alles in Zukunft machen kann zeigt das folgende Foto:


Transformationen in alle verfügbaren PLC's, welche den Anforderungen der PLC-Engine entsprechen. Mehr Information unter: www.mhj.de


La publicación del libro en aleman será el final de enero 2017 y finales de marzo en español. Para los alumnos, los estudiantes y los profesionales ideal para crear GRAFCET profesional, probar y simular in PLC de Siemens y Arduino, Respberry u otro Hardware similar. Mas información: www.mhj.de








Freitag, 24. Juni 2016

TIA-Projekt für Entwickler eigener Applikationen


TIA-Expert-Produkte (deutsch)

Ab Mitte Juli 2016 im Internet-Job unter TIA-Expert.com


Vorschau:

MOB.V01.0.L  MoveObjects_Basic

Entwickler-Tool als TIA-Projekt zur Entwicklung eigener Applikationen, in denen eine Bewegung der Objekte mit der Maus in RT gewünscht ist. Mit diesem Tool lässt sich das dynamische Verhalten von Objekten auf einfache Weise realisieren.
Die einmal gefundene Lösung MoveObjects_Basic, ist ein erstelltes TIA-Projekt und dient als Basis-Projekt für Ihre zukünftigen TIA-Applikation. Eine wertvolle Ergänzung Ihres Produktes mit viel Know-how ermöglicht unterschiedliche Varianten für Ihrer Anwendungen.

MOB.V01.0.L     MoveObjects_Basic Entwickler-Lizenz                                         980,00€ netto zuzüglich 19 % USt
Demo-Version auf Anfrage (135,00€ netto) wird beim Kauf der Lizenz
angerechnet.

___________________________________________________________________________

MOBT.TI   Training Inhouse

Einführung mit Training zur Programmierung beweglicher Objekte mit der Maus in RT.
Voraussetzung zur Ausführung dieses Trainings ist der Erwerb einer MoveObjects_Basic-Lizenz (MOB.V01.0.L)

Inhouse-Training Tagessatz für Deutschland:
MOBT.TI     MoveObject_Basic-Inhouse-Training                                                   520,00€ netto zuzüglich 19 % USt
MOT.TI        MoveObject ohne Basislizenz MOB.V01.0.L                                       850,00€ netto zuzüglich 19 % USt

___________________________________________________________________________    

MOC.V01.0.L  MoveObjects_Basic-Chemie

Entwickler-Tool als TIA-Projekt zur Entwicklung eigener Applikationen, in denen eine Bewegung der Objekte mit der Maus in RT gewünscht ist. Mit diesem Tool lässt sich das dynamische Verhalten von Objekten auf einfache Weise realisieren. Die einmal gefundene Lösung MoveObjects_Basic, ist ein erstelltes TIA-Projekt für die Anwendung in der Chemie/Petrochemie und dient als Basis-Projekt für Ihre zukünftige TIA-Applikation. Eine wertvolle Ergänzung Ihres Produktes mit viel Know-how ermöglicht unterschiedliche Varianten für Ihrer Anwendungen.

Mit dieser Version zeichnen Sie in RT eine Bildseite (Ventile, Motoren, Pumpen), welche dann sofort in Modus Hand funktionsfähig ist. So können Sie Ihren P&ID in wenigen Minuten umsetzen und in der Betriebsart Manuell testen.

Das Add-on Grafcet MOCG.V01.2.L bietet zudem die Basis zur Programmierung der gezeichneten Applikation mit Grafcet zum fertigen Batch-Prozess.
So können Sie in kurzer Zeit mehrseitige Applikationen Entwickeln, die auch der Betreiber (Labor-Technik) kinderleicht programmieren kann. Die kundenseitige Grafcet-Erweiterung im TIA-Projekt ist nicht möglich. Jedoch bieten wir eine kundenspezifische Anpassung an zusätzliche Anforderungen an.

MOC.V01.0.L     MoveObjects_Basic-Chemie  Entwickler-Lizenz                          1.400,00€ netto zuzüglich 19 % USt
MOCG.V01.2.L  MoveObjects_Basic-Chemie plus Grafcet-Lizenz                        2.600,00€ netto zuzüglich 19 % USt



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.