DE102013103088A1 - Speicherprogrammierbare Steuerung und Verfahren zur Erzeugung von Webseiten - Google Patents

Speicherprogrammierbare Steuerung und Verfahren zur Erzeugung von Webseiten Download PDF

Info

Publication number
DE102013103088A1
DE102013103088A1 DE102013103088.2A DE102013103088A DE102013103088A1 DE 102013103088 A1 DE102013103088 A1 DE 102013103088A1 DE 102013103088 A DE102013103088 A DE 102013103088A DE 102013103088 A1 DE102013103088 A1 DE 102013103088A1
Authority
DE
Germany
Prior art keywords
control program
programmable logic
logic controller
code
web pages
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102013103088.2A
Other languages
English (en)
Inventor
Klaus Dreiskemper
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wago Verwaltungs GmbH
Original Assignee
Wago Verwaltungs GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wago Verwaltungs GmbH filed Critical Wago Verwaltungs GmbH
Priority to DE102013103088.2A priority Critical patent/DE102013103088A1/de
Publication of DE102013103088A1 publication Critical patent/DE102013103088A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15038Internet, tcp-ip, web server see under S05B219-40
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31457Factory remote control, monitoring through internet
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34038Web, http, ftp, internet, intranet server

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

Eine speicherprogrammierbare Steuerung (1) mit einer Steuerungseinheit zur Ausführung eines Steuerungsprogramms (10) wird beschrieben. Die speicherprogrammierbare Steuerung (1) hat einen integrierten Webserver (8) oder ist mit einem Webserver (8) verbindbar. Das mit der Steuerungseinheit ausführbare Steuerungsprogramm (10) ist zur Erzeugung von Code für Webseiten (12), die durch Ansprechen des Webservers (8) durch ein über ein Kommunikationsnetzwerk mit dem Webserver (8) verbindbaren Datenverarbeitungsgerät (7) an das Datenverarbeitungsgerät (7) zur Anzeige übertragbar sind, bei der Ausführung des Steuerungsprogramms (10) eingerichtet.

Description

  • Die Erfindung betrifft eine speicherprogrammierbare Steuerungseinheit zur Ausführung eines Steuerungsprogramms, wobei die speicherprogrammierbare Steuerung einen integrierten Webserver hat oder mit einem Webserver verbindbar ist.
  • Die Erfindung betrifft weiterhin ein Verfahren zur Erzeugung von Webseiten für einen Webserver, der in eine speicherprogrammierbare Steuerung integriert oder mit der speicherprogrammierbaren Steuerung verbindbar ist.
  • Speicherprogrammierbare Steuerungen werden in vielfältiger Weise zum Zwecke der Automatisierung von Prozessen eingesetzt. So werden speicherprogrammierbare Steuerungen als Industriesteuerungen in Fertigungsanlagen eingesetzt. Speicherprogrammierbare Steuerungen finden aber auch bei der Gebäudeautomatisierung, in Fortbewegungsmitteln wie Fahrzeugen, Flugzeugen und Schiffen etc. Anwendung.
  • Ein Fernzugriff auf speicherprogrammierbare Steuerungen wird durch verstärkte Verbreitung des Internets mit Hilfe von Webservern ermöglicht, die in speicherprogrammierbare Steuerungen integriert oder als separate Webserver mit speicherprogrammierbaren Steuerungen verbindbar sind. Die Webserver haben dabei einen Internet-Zugang und übermitteln Webseitencodes in der Regel an einen Browser eines entfernten Datenverarbeitungsgerätes, das über das Internet auf den Webserver zugreift.
  • DE 10 2010 032 798 A1 beschreibt ein Verfahren zur Einrichtung eines Fernzugriffs auf eine speicherprogrammierbare Steuerung, bei der ein Server automatisch Instruktionen zur Einrichtung der speicherprogrammierbaren Steuerung generiert oder aus einer Gruppe von Instruktionen auswählt. Hierbei wird zunächst eine Website von einem Server auf ein Nutzergerät über eine Internetverbindung geladen. Mit der ersten Webseite ist eine Applikationsart auswählbar, um die Logik der speicherprogrammierbaren Steuerung zu definieren. Nach der Übertragung von Konfigurationsdaten und Parametereinstellungen vom Benutzergerät zum Server generiert der Server dann automatisch Daten für zumindest eine weitere Webseite, die als Nutzerschnittstelle für den Fernzugriff auf die speicherprogrammierbare Steuerung dient. Alternativ oder zusätzlich wählt der Server ein Steuerungsprogramm bestehend aus Instruktionen für die speicherprogrammierbare Steuerung aus.
  • DE 102 14 539 A1 beschreibt eine Produktionsmaschine mit einer in einem Webserver integrierten Steuerung. Der Webserver hat Softwaremodule zur Realisierung der Steuerung. Ein standardmäßiger Webbrowser wird durch Erweiterung mittels Softwaremodulen somit derart ausgestaltet, dass der Webserver auch Automatisierungsaufgaben lösen kann.
  • Die insbesondere zur Visualisierung von durch eine speicherprogrammierbare Steuerung gesteuerte Maschinen oder Anlagen genutzten Webseiten werden herkömmlicherweise entweder mit einem separaten Werkzeug oder mit einem in der Entwicklungsumgebung der speicherprogrammierbaren Steuerung integrierten Werkzeug entwickelt. Die Webseiten können somit nur während der Einrichtung der speicherprogrammierbaren Steuerung erzeugt oder verändert werden und sind demnach statisch. Die Generierung dynamischer Webseiten beim Aufruf durch den Anwender wird herkömmlicherweise auch durch Webserver unterstützt, erfordert jedoch PHP-Code oder Skriptsprachen die serverseitig im Webserver bereitgestellt werden.
  • Ausgehend hiervon ist es Aufgabe der vorliegenden Erfindung, eine verbesserte speicherprogrammierbare Steuerung und ein verbessertes Verfahren zur Erzeugung von Webseiten für eine in eine speicherprogrammierbare Steuerung integrierten oder mit dieser verbindbaren Webserver zu schaffen, mit der die Erzeugung dynamischer Webseiten verbessert wird.
  • Die Aufgabe wird durch die speicherprogrammierbare Steuerung mit den Merkmalen des Anspruchs 1 sowie durch das Verfahren mit den Merkmalen des Anspruchs 5 gelöst.
  • Für eine gattungsgemäße speicherprogrammierbare Steuerung wird vorgeschlagen, dass ein mit der Steuerungseinheit der speicherprogrammierbaren Steuerung ausführbares Steuerungsprogramms zur Erzeugung von Code für Webseiten, die durch ein Ansprechen des Webservers, durch ein über ein Kommunikationsnetzwerk mit dem Webserver verbindbaren Datenverarbeitungsgerät an das Datenverarbeitungsgerät zur Anzeige übertragbar sind, bei der Ausführung des Steuerungsprogramms eingerichtet ist.
  • Es wird somit vorgeschlagen, dass ein auf einer Steuerungseinheit, insbesondere einem Mikroprozessor oder Mikrocontroller der speicherprogrammierbaren Steuerung ausführbares Steuerungsprogramm nicht nur zur Durchführung von Automatisierungsaufgaben, sondern zusätzlich auch zur Erzeugung von Codes für Webseiten während der Laufzeit des Steuerungsprogramms, d. h. bei der Ausführung des Steuerungsprogramms während des Betriebs des speicherprogrammierbaren Steuerung eingerichtet ist. Das Steuerungsprogramm kann hierzu insbesondere Programmcode enthalten, mit dem die Erzeugung von Codes für Webseiten bei der Ausführung des Steuerungsprogramms mit der Steuerungseinheit erfolgt. Dies hat den Vorteil, dass die Webseiten nicht bereits bei der Einrichtung einer speicherprogrammierbaren Steuerung erzeugt werden müssen. Vielmehr ist es nunmehr möglich, Webseiten dynamisch während des Ablaufs des Steuerungsprogramms in Abhängigkeit des Ablaufs des Steuerungsprogramms zu erzeugen. Die Erzeugung des Codes von Webseiten kann dabei von dem Einrichter der speicherprogrammierbaren Steuerung bei der Programmierung des Steuerungsprogramms in den Ablauf des Steuerungsprogramms selbst eingebunden werden. Das Steuerungsprogramm und die während des Ablaufs erforderlichen Webseiten bilden somit eine funktionale Einheit und sind im Steuerungsprogramm selbst miteinander dadurch verknüpft, dass das Steuerungsprogramm die Programmcodes zur Erzeugung von Codes für gewünschte Webseiten enthält.
  • Besonders vorteilhaft ist es, wenn das Steuerungsprogramm zur Erzeugung des Codes für Webseiten in Abhängigkeit von einem bei der Ausführung des Steuerungsprogramms vorliegenden Steuerungszustand der speicherprogrammierbaren Steuerung eingerichtet ist. Die Erzeugung von Code für Webseiten lässt sich somit nicht nur in den zeitlichen Ablauf des Steuerungsprogramms, sondern auch in einen ereignisorientierten Ablauf des Steuerungsprogramms einbinden.
  • Durch die Generierung der Codes für Webseiten durch Programmbefehle innerhalb des Programmcodes des Steuerungsprogramms können die Webseiten prozessspezifisch erzeugt oder gelöscht werden, ohne das der Webserver eine serverseitige Skriptsprache, wie PHP, benötigt. Die Befehle zur Erzeugung der Webseiten werden automatisch mit dem Steuerungsprogramm von einem Programmiersystem auf die speicherprogrammierbare Steuerung übertragen. Zur Laufzeit des Steuerungsprogramms erzeugt die speicherprogrammierbare Steuerung dann mit Hilfe des von der Steuerungseinheit ausgeführten Steuerungsprogramms prozessspezifische Webseiten zur Darstellung auf einem Client, der mit dem Webserver verbunden ist. Auf diese Weise lassen sich z. B. einfache Konfigurationsänderungen durch Hinterlegungen von Dateien durchführen. Die Erzeugung von Codes durch ein Steuerungsprogramm selbst führt auch zu einer erhöhten Sicherheit gegenüber Zugriffen von Dritten auf die speicherprogrammierbare Steuerung über das Netzwerk, insbesondere das Internet. Zudem werden dynamische Webseiten ohne serverseitige Skriptsprachen durch das Steuerungsprogramm der speicherprogrammierbaren Steuerung (SPS) erstellt.
  • Besonders vorteilhaft ist es, wenn die speicherprogrammierbare Steuerung und der Webserver einen Datenspeicher mit mindestens einer in dem Datenspeicher abgelegten Funktionsbibliothek hat, wobei die Funktionsbibliothek Daten beinhaltet, die in den erzeugten Codes für Webseiten einbindbar sind. Solche zur Einbindung in Codes für Webseiten vorgesehene Daten können beispielsweise Bilddateien, Sprachdateien, Skriptcode, Programmcode oder ähnliches sein. Das mit der Steuerungseinheit ausführbare Steuerungsprogramm ist dann zum Zugriff auf die mindestens eine Funktionsbibliothek bei der Erzeugung des Codes für Webseiten eingerichtet, um bei der Erzeugung des Codes für Webseiten benötigte Daten aus der Funktionsbibliothek auszulesen und in den Code für Webseiten einzubinden.
  • Das Steuerungsprogramm kann beispielsweise zur Erzeugung von HTML-Code und/oder von webserverseitigen Skriptsprachencode, insbesondere JAVA-Skript, PHP-Code oder ähnlichem eingerichtet sein.
  • Besonders vorteilhaft ist es, wenn das Steuerungsprogramm von erzeugten und im Webserver abgespeicherten Code für Webseiten in Abhängigkeit von der Ausführung des Steuerungsprogramms vorliegenden Steuerungszustandes der speicherprogrammierbaren Steuerung eingerichtet ist. Durch die Möglichkeit nicht nur der dynamischen Erzeugung von Webseiten, sondern auch zum Löschen bereits erzeugter und auf dem Webserver abgelegten Webseiten ist es möglich, Speicherplatz des Webserver einzusparen. Die dynamische Löschung bereits erzeugter Webseiten verhindert zudem die Möglichkeit eines unkontrollierten Zugriffs auf das Steuerungsprogramm über auf dem Webserver abgelegter Webseiten, die nicht mehr aktuell sind. Mit dem Verfahren zur Erzeugung von Webseiten für einen Webserver, der in eine speicherprogrammierbare Steuerung integriert oder mit der speicherprogrammierbaren Steuerung verbindbar ist, gelingt eine optimierte Erzeugung von Webseiten dadurch, dass die Codes für Webseiten, die durch Ansprechen des Webservers über ein Kommunikationsnetzwerk, insbesondere dem Internet, mit dem Webserver verbindbaren Datenverarbeitungsgerät an das Datenverarbeitungsgerät zur Anzeige übertragbar sind, durch das Steuerungsprogramm bei der Ausführung des Steuerungsprogramms mit der Steuerungseinheit erzeugt werden.
  • Vorteilhafte Ausführungsformen sind in den Unteransprüchen beschrieben.
  • Die Erfindung wird nachfolgend anhand eines Ausführungsbeispiels mit den beigefügten Zeichnungen näher erläutert. Es zeigen:
  • 1 – Blockdiagramm eines Steuerungssystems mit einer speicherprogrammierbaren Steuerung, einem Webserver, einem entfernten Client und einer Programmierstation;
  • 2a – Skizze einer Webseite auf einem Webbrowser;
  • 2b – Beispielhafter Auszug aus einem SPS-Steuerungsprogramm mit Befehlen zur Erzeugung von Code für Webseiten;
  • 2c – Beispielhafter Code für eine Webseite zur Anzeige der in 2a skizzierten Webseite auf einem Webbrowser.
  • 1 lässt ein Blockdiagramm eines Systems erkennen, das eine speicherprogrammierbare Steuerung 1 hat. Diese speicherprogrammierbare Steuerung 1 ist beispielsweise als modulares Ein-/Ausgabesystem ausgestaltet, das einen Feldbuscontroller 2 und eine Vielzahl an den Feldbuscontroller 2 angeschlossene Ein-/Ausgabemodule 3 aufweist. Der Feldbuscontroller 2 mit den sich daran anschließenden Ein-/Ausgabemodulen 3 kann beispielsweise in einen Schaltschrank auf einer Tragschiene 4 angebracht sein. Eingabemodule 3 sind zur Erfassung von Daten z. B. an Eingabemodul 3 angeschlossene Sensoren 5 und Ausgabemodule zur Ansteuerung von an Ausgabemodule angeschlossene Aktoren 6 vorgesehen.
  • Der Feldbuscontroller 2 stellt eine Steuerungseinheit dar oder bereit, mit der ein auf den Feldbuscontroller 2 geladenes und dort abgespeichertes Steuerprogramm ausgeführt wird. Mit Hilfe des Steuerungsprogramms können dann die Aktoren 6 in Abhängigkeit der erfassten Sensordaten 5 durch das Steuerungsprogramm vorgegebenen Steuerungslogik angesteuert werden. Zudem kann der Systemstatus bzw. Steuerungszustand über ein Feldbus-Netzwerk an externe Einheiten, wie beispielsweise ein entferntes Datenverarbeitungsgerät 7 zur dortigen Anzeige oder weiteren Verarbeitung/Auswertung weitergeleitet werden. Der Feldbuscontroller 2 kann dabei direkt oder indirekt über ein firmeneigenes Netzwerk (Intranet) oder das weltweit zugängliche Netzwerk (Internet) mit dem entfernten Datenverarbeitungsgerät 7 kommunizieren. Hierzu ist ein Webserver 8 vorgesehen, der entweder als Softwarekomponente in den Feldbuscontroller 2 integriert oder als separate Hard-/Softwarelösung mit dem Feldbuscontroller 2 in Kommunikationsverbindung steht. Das externe Datenverarbeitungsgerät 7 (Client) kann dann über das Intranet oder Internet vorzugsweise auf Basis eines Ethernet-Protokolls auf den Webserver zugreifen, um Code für Webseiten vom Webserver zu laden. Mit Hilfe des auf dem Datenverarbeitungsgerät 7 geladenen Codes für Webseiten wird dann eine Webseite 12 (WEB n) mit Hilfe eines Standard-Browsers des Datenverarbeitungsgerätes 7 auf den Bildschirm 9 des Datenverarbeitungsgerätes 7 angezeigt.
  • Das Steuerungsprogramm 10, das auf der durch den Feldbuscontroller 2 bereitgestellten Steuerungseinheit abläuft, wird mit Hilfe eines Programmierwerkzeuges 11 in an sich bekannter Weise programmiert und in kompilierter Form oder als Hochsprachenskript zur Interpretation im Feldbuscontroller 2 von dem Programmierwerkzeug 11 in einen Datenspeicher des Feldbuscontrollers 2 geladen. Dies ist in der 1 durch den Pfeil vom Programmierwerkzeug 11 zum Feldbuscontroller 2 skizziert. Die Programmierung des Steuerungsprogramms 10 kann beispielsweise mit LADDER-Logic oder unter Nutzung einer Hochsprache erfolgen.
  • Das Steuerungsprogramm 10 enthält nicht nur wie üblich SPS-Code zur Steuerung des Prozessablaufes einschließlich der Steuerung von Konfigurations- und Parametrisierungsprozessen, sondern auch Anweisungen zur Erzeugung und/oder zum Löschen von Code für Webseiten. Derartige Anweisungen (Web-Code) zur Erzeugung bzw. zum Löschen oder Ändern von Code für Webseiten sind durch die Anbindung an das Steuerungsprogramm und den Ablauf des SPS-Codes vorzugsweise in Abhängigkeit von einem bei der Ausführung des Steuerungsprogramms vorliegenden Steuerungszustands der speicherprogrammierbaren Steuerung 1 abhängig. So wird der Code für Webseiten dynamisch unter Ausnutzung von Bedingungsfunktionen des SPS-Codes erzeugt.
  • Mit diesen Programmbefehlen (WEB-CODE) zur Erzeugung von Code für Webseiten werden allerdings noch keine fertigen Webseiten bzw. deren Code bereitgestellt und auf einem Speicher des Feldbuscontrollers 2 abgelegt. Vielmehr dienen diese im Steuerungsprogramm 10 enthaltenen Programmbefehle (WEB-CODE) dazu, dynamisch in Abhängigkeit von Bedingungen bei der Ausführung des Steuerungsprogramms 10 den erforderlichen Code für Webseiten 12 zu erzeugen. Der durch Ablauf des Steuerungsprogramms 10 auf der durch den Feldbuscontroller 2 bereitgestellten Steuerungseinheit erzeugte Code für Webseiten 12 wird dann von der Steuerungseinheit, z. B. dem Feldbuscontroller 2, an den Webserver 8 übertragen. Das entfernte Datenverarbeitungsgerät 7 kann dann auf diese während der Laufzeit des Steuerungsprogramms 10 dynamisch bereitgestellten Webseiten 12 bzw. deren Code zugreifen, um diese Webseiten 12 im Standardbrowser des entfernten Datenverarbeitungsgerätes 7 wie skizziert darzustellen.
  • Auf diese Weise kann nicht nur dynamisch ein angepasster Steuerungszustand der speicherprogrammierbaren Steuerung 1 auf dem entfernten Datenverarbeitungsgerät 7 dargestellt werden. Es ist auch möglich, dass das entfernte Datenverarbeitungsgerät 7 mit durch die Webseiten 12 dynamisch durch das Steuerungsprogramm 10 bereitgestellten Interaktionen auf das Steuerungsprogramm 10 bzw. die speicherprogrammierbare Steuerung 1 Einfluss nimmt. So ist denkbar, dass das Steuerungsprogramm 10 in Abhängigkeit des Steuerungszustandes der speicherprogrammierbaren Steuerung 1 gewisse Konfigurationen und Parametrisierungen über das entfernte Datenverarbeitungsgerät zulässt.
  • Aus 1 wird jedenfalls deutlich, dass dynamische Webseiten 12 prozessabhängig mit einem Steuerungsprogramm 10 auf einem Webserver 8 erzeugt werden können. Die web-spezifischen Funktionen, wie beispielsweise das Erzeugen einer Webseite 12, das Anlegen eines Bedienbuttons oder das Übertragen oder Löschen einer Webseite kann dabei z. b. in speziellen Bibliotheken zusammengefasst werden. Diese Bibliotheken können auch Bestandteil der Firmware der speicherprogrammierbaren Steuerung 1 sein. Die Generierung der Webseiten 12 erfolgt innerhalb des Programmcodes des Steuerungsprogramms 10 mit bei Ablauf des Steuerungsprogramms 10 ausgeführten Programmbefehlen. Daher können die Webseiten 12 prozessspezifisch erzeugt oder gelöscht werden, ohne dass der Webserver 8 eine serverseitige Skriptsprache wie PHP benötigt. Die Befehle zur Erzeugung der Webseiten 12 werden automatisch mit dem Steuerungsprogramm 10 vom dem Programmierwerkzeug 11, d. h. einem Programmierrechner mit darauf ablaufendem geeigneten Programmierumgebung für Steuerungsprogramme 10 auf dem Feldbuscontroller 2 der speicherprogrammierbaren Steuerung 1 übertragen. Zur Laufzeit des Steuerungsprogramms 10 erzeugt das Steuerungsprogramm 10 dann die prozessspezifischen Webseiten 12 zur Darstellung auf einem entfernten Datenverarbeitungsgerät 7 (Client) über den Webserver 8.
  • 2a lässt eine beispielhafte Webseite 12 erkennen, die auf einem Standard-Webbrowser 14 eines entfernten Datenverarbeitungsgerätes 7 zur Sprachauswahl angezeigt wird. Hierbei hat das entfernte Datenverarbeitungsgerät 7 auf den Webserver 8 zugegriffen, um eine Verbindung mit der speicherprogrammierbaren Steuerung 1 aufzunehmen. Bei dem Ablauf des Steuerungsprogramms 10 wird dabei Code für die zur Sprachauswahl vorgesehene Webseite 12 erzeugt und auf dem Webserver 9 abgelegt.
  • Mit Hilfe dieser Webseite kann dann durch anklicken einer Landesflagge 13 eine zugehörige Sprache ausgewählt werden.
  • 2b zeigt einen beispielhaften Auszug eines Steuerungsprogramms 10, das aus einer Anzahl von Programmzeilen 0001 bis n besteht. Das Steuerungsprogramm 10 weist hierbei eine Folge von SPS-Code auf, in das Web-Code zur Erzeugung von Code für Webseiten 12 eingebettet ist.
  • Das dargestellte Steuerungsprogramm 10 ist beispielsweise eingerichtet, um beim Programmstart in Abhängigkeit der im eigenen Dateisystem in einer Bibliothek vorhandenen Sprachdateien eine Webseite 12 mit dem Dateinamen „language.html“ zu erzeugen und auf den Webserver 8 zu übertragen. Hierzu wird erst einmal überprüft, ob auf dem Webserver 8 eine Datei „index1.ssi“ existiert. Falls diese nicht existiert, wird eine dort vorhandene Datei „index.ssi“ in die benötigte Datei „index1.ssi“ umbenannt (SysFileRename). Die Anzahl der zur Auswahl bereitgestellter Sprachen wird dynamisch in Abhängigkeit der in der Bibliothek vorhandenen Sprachdateien festgelegt (siehe Programmzeile 0011), um auf diese Weise den Code für die Webseite 12 mit der Bezeichnung „language.html“ zu erzeugen.
  • 2c lässt ein beispielhaften Code für die Webseite 12 mit dem Titel „language.html“ erkennen. Hierbei handelt es sich um HTML-Code in an sich bekannter Struktur. Dieser HTML-Code besteht aus einem Kopfteil (head) und einem Rumpfteil (body). In dem Rumpfteil ist die auf dem Standard-Browser 14 dargestellte Information einschließlich der Formatierung definiert. Der Code für diese Webseite 12 wurde wie oben beschrieben dynamisch durch entsprechenden Programmcode (WEB-CODE) in dem Steuerungsprogramm 10 bei der Ausführung des Steuerungsprogramms 10 auf dem Feldbuscontroller 2, d. h. während der Laufzeit des Steuerungsprogramms 10 generiert und auf dem Webserver 8 übertragen und dort abgespeichert.
  • Deutlich wird insbesondere, dass die Landesflagge und deren Auswahlmöglichkeit in den Befehlszeilen <img src = ...> dynamisch und automatisch in Abhängigkeit der im Dateisystem vorhandenen, d h. in der Bibliothek vorhandenen Sprachdateien erzeugt wurden. Hierbei werden in der Bibliothek abgelegte Bilddateien mit den Flaggensymbolen (DE.gif, EN.gif, ...) genutzt.
  • Durch das Hinterlegen verschiedener Sprachdateien im Filesystem der speicherprogrammierbaren Steuerung 1 wird eine Basis für eine Sprachumschaltung bereitgestellt. Beim Starten des Steuerungsprogramms 10 wird durch den in das Steuerungsprogramm 10 integrierten Programmcode zur Erzeugung von Webseiten (Web-Code) überprüft, welche aktuellen Sprachdateien im Filesystem hinterlegt sind und es wird in Abhängigkeit eine geeignete Webseite 12 zur entsprechenden Sprachauswahl erzeugt und auf dem Webserver 8 abgelegt. Die Erzeugung der Webseiten 12 erfolgt durch Einbindung in das Steuerungsprogramm 10 in Abhängigkeit eines Benutzers bzw. eines Prozess. Die Webseiten 12 werden somit benutzer-/prozessspezifisch erzeugt und gelöscht. Damit wird ein hohes Maß an Sicherheit vor unberechtigten Zugriffen Dritter erreicht, da die benutzer-/prozessspezifische erzeugten Webseiten nur zur Verfügung stehen, wenn das entsprechende Steuerungsprogramm 10 gestartet wurde. Zu anderen Zeiten sind keine Webseiten 12 auf dem Webserver 8 vorhanden.
  • Die Erzeugung von Code für Webseiten 12 mit dem Steuerungsprogramm 10 während der Laufzeit des Steuerungsprogramms 10 bietet außerdem die Möglichkeit, dynamische Webseiten 12 auch auf einfachen Webservern 8 ohne serverseitige Skriptsprachen zu realisieren. Dies führt zu einem einfacheren und sichereren Webserver 8. Mit dem Verfahren können sowohl reine Webseiten 12 für reine HTTP-Webserver 8 erzeugt oder auch Webseiten 12 mit browser- oder serverseitigen Skriptsprachen wie PHP generiert werden. Es ist sogar möglich, Webseiten 12 mit JAVA-Skript oder ähnlichen Programmcode, der auf einem Standardbrowser 14 eines entfernten Datenverarbeitungsgerätes 7 abläuft, zu erzeugen.
  • Die speicherprogrammierbare Steuerung 1 ist durch das Verfahren in der Lage, Webseiten 12 je nach Steuerungszustand der speicherprogrammierbaren Steuerung 1 auf dem Webserver 8 zu erzeugen oder zu löschen. Damit kann zusätzlich zur erhöhten Sicherheit teurer Speicher des Webservers 8 eingespart werden. Es ist auch denkbar, dass derartige Webseiten 12 in Abhängigkeit einer entsprechenden Konfiguration der speicherprogrammierbaren Steuerung 1 bzw. der daran angeschlossenen Aktoren oder Sensoren einschließlich komplexer Maschinen erzeugt oder gelöscht werden.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • DE 102010032798 A1 [0005]
    • DE 10214539 A1 [0006]

Claims (8)

  1. Speicherprogrammierbare Steuerung (1) mit einer Steuerungseinheit zur Ausführung eines Steuerungsprogramms (10), wobei die speicherprogrammierbare Steuerung (1) einen integrierten Webserver (8) hat oder mit einem Webserver (8) verbindbar ist, dadurch gekennzeichnet, dass das mit der Steuerungseinheit ausführbare Steuerungsprogramm (10) zur Erzeugung von Code für Webseiten (12), die durch Ansprechen des Webservers (8) durch ein über ein Kommunikationsnetzwerk mit dem Webserver (8) verbindbaren Datenverarbeitungsgerät (7) an das Datenverarbeitungsgerät (7) zur Anzeige übertragbar sind, bei der Ausführung des Steuerungsprogramms (10) eingerichtet ist.
  2. Speicherprogrammierbare Steuerung (1) nach Anspruch 1, dadurch gekennzeichnet, dass das Steuerungsprogramm zur Erzeugung von Code für Webseiten (12) in Abhängigkeit von einem bei der Ausführung des Steuerungsprogramms (10) vorliegenden Steuerungszustandes der speicherprogrammierbaren Steuerung (1) eingerichtet ist.
  3. Speicherprogrammierbare Steuerung (1) nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die speicherprogrammierbare Steuerung (1) oder der Webserver (8) einen Datenspeicher mit mindestens einer in dem Datenspeicher abgelegten Funktionsbibliothek hat, wobei die Funktionsbibliothek in den erzeugten Code für Webseiten (12) einbindbare Daten beinhaltet und das Steuerungsprogramm (10) zum Zugriff auf die mindestens eine Funktionsbibliothek bei der Erzeugung von Code für Webseiten (12) eingerichtet ist.
  4. Speicherprogrammierbare Steuerung (1) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Steuerungsprogramm (10) zur Erzeugung von HTML-Code und/oder von webserverseitigem Skriptsprachencode, insbesondere JAVA-Skript oder PHP-Code eingerichtet ist.
  5. Speicherprogrammierbare Steuerung (1) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Steuerungsprogramm (10) zur Löschung von erzeugtem und im Webserver (8) abgespeicherten Code für Webseiten (12) in Abhängigkeit von einem bei der Ausführung des Steuerungsprogramms (10) vorliegenden Steuerungszustandes der speicherprogrammierbaren Steuerung (1) eingerichtet ist.
  6. Verfahren zur Erzeugung von Webseiten (12) für einen Webserver (8), der in eine speicherprogrammierbare Steuerung (1) integriert oder mit der speicherprogrammierbaren Steuerung (1) verbindbar ist, gekennzeichnet durch Erzeugen von Codes für Webseiten (12), die durch Ansprechen des Webservers (8) durch ein über ein Kommunikationsnetzwerk verbindbaren Datenverarbeitungsgerät (7) an das Datenverarbeitungsgerät (7) zur Anzeige übertragbar sind, durch das Steuerungsprogramm (10) bei der Ausführung des Steuerungsprogramms (10) mit der Steuerungseinheit.
  7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass die Erzeugung des Codes für Webseiten (12) in Abhängigkeit von einem bei der Ausführung des Steuerungsprogramms (10) vorliegenden Steuerungszustandes der speicherprogrammierbaren Steuerung (1) erfolgt.
  8. Verfahren nach Anspruch 6 oder 7, gekennzeichnet durch Zugreifen auf eine Funktionsbibliothek in dem erzeugten Code für Webseiten (8) einbindbaren Daten bei der Erzeugung des Codes für Webseiten (12) und einbinden von Daten der Funktionsbibliothek in den erzeugten Code für Webseiten (8) durch das Steuerungsprogramm (10).
DE102013103088.2A 2013-03-26 2013-03-26 Speicherprogrammierbare Steuerung und Verfahren zur Erzeugung von Webseiten Pending DE102013103088A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102013103088.2A DE102013103088A1 (de) 2013-03-26 2013-03-26 Speicherprogrammierbare Steuerung und Verfahren zur Erzeugung von Webseiten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102013103088.2A DE102013103088A1 (de) 2013-03-26 2013-03-26 Speicherprogrammierbare Steuerung und Verfahren zur Erzeugung von Webseiten

Publications (1)

Publication Number Publication Date
DE102013103088A1 true DE102013103088A1 (de) 2014-10-02

Family

ID=51519628

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102013103088.2A Pending DE102013103088A1 (de) 2013-03-26 2013-03-26 Speicherprogrammierbare Steuerung und Verfahren zur Erzeugung von Webseiten

Country Status (1)

Country Link
DE (1) DE102013103088A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110166467A (zh) * 2019-05-28 2019-08-23 重庆科技学院 基于html_web网关的plc跨平台控制方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10214539A1 (de) 2002-04-02 2003-10-23 Siemens Ag Produktionsmaschine mit einer in einem Webserver integrierten Steuerung
DE102004045240A1 (de) * 2004-09-17 2006-03-30 Siemens Ag Darstellung von Prozesswerten in der Automatisierungstechnik
US20070185969A1 (en) * 2005-08-19 2007-08-09 Davis Wayne R Drive with Server
DE102008055660A1 (de) * 2008-11-03 2010-05-06 Phoenix Contact Gmbh & Co. Kg Verfahren und Vorrichtung zum Zugreifen auf ein Funktionsmodul eines Automatisierungssystems
DE102010032798A1 (de) 2010-07-30 2012-02-02 Siemens Aktiengesellschaft Verfahren zur Einrichtung einer speicherprogrammierbaren Steuerung

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10214539A1 (de) 2002-04-02 2003-10-23 Siemens Ag Produktionsmaschine mit einer in einem Webserver integrierten Steuerung
DE102004045240A1 (de) * 2004-09-17 2006-03-30 Siemens Ag Darstellung von Prozesswerten in der Automatisierungstechnik
US20070185969A1 (en) * 2005-08-19 2007-08-09 Davis Wayne R Drive with Server
DE102008055660A1 (de) * 2008-11-03 2010-05-06 Phoenix Contact Gmbh & Co. Kg Verfahren und Vorrichtung zum Zugreifen auf ein Funktionsmodul eines Automatisierungssystems
DE102010032798A1 (de) 2010-07-30 2012-02-02 Siemens Aktiengesellschaft Verfahren zur Einrichtung einer speicherprogrammierbaren Steuerung

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110166467A (zh) * 2019-05-28 2019-08-23 重庆科技学院 基于html_web网关的plc跨平台控制方法
CN110166467B (zh) * 2019-05-28 2022-04-01 重庆科技学院 基于html_web网关的plc跨平台控制方法

Similar Documents

Publication Publication Date Title
DE102013103242B4 (de) Feldgerät, Kommunikations-Chip und Verfahren zum Zugreifen auf ein Feldgerät
DE102008019040A1 (de) Verfahren und Steuergerät zur Steuerung eines Automatisierungssystems
DE102006044182A1 (de) System und Verfahren zur bedarfsgerechten Funktionalisierung von Steuer-/Regeleinrichtungen
EP2911024B1 (de) Verfahren zur Inbetriebnahme eines industriellen Automatisierungsnetzwerks
EP3616365A1 (de) Verfahren zum betreiben eines feldgeräts
WO2015117749A1 (de) Feldbusmodul, maschinensteuerung und verfahren zur parametrierung eines, insbesondere sicherheitsgerichteten, feldbusmoduls
DE102010063164A1 (de) Verfahren zum Integrieren von mindestens einem Feldgerät in ein Netzwerk der Automatisierungstechnik
EP1425639B1 (de) Verfahren zur übertragung eines prozesswerts und steuerungssystem
DE102007024687A1 (de) Verfahren zum Parametrieren von Betriebsmitteln
DE102008038501A1 (de) Verfahren zum Bestimmen einer statischen Datenstruktur eines Feldgerätes
EP3200034A1 (de) Verfahren und vorrichtung zum zugriff auf daten oder funktionen einer speicherprogrammierbaren steuerung mittels eines webdientes
DE102013103088A1 (de) Speicherprogrammierbare Steuerung und Verfahren zur Erzeugung von Webseiten
DE102007052031B4 (de) Verfahren zum Betreiben eines Parametrier-Gerätes
DE102016123599A1 (de) Robotersteuerung mit Funktion zur Kommunikation mit einer speicherprogrammierbaren Steuerung und Kommunikationssystem
EP3438774B1 (de) Verfahren zur bereitstellung von funktionen innerhalb eines industriellen automatisierungssystems und automatisierungssystem
DE102008043683A1 (de) Feldgerät der Prozessautomatisierungstechnik
WO2008077358A1 (de) Geräteverbund mit einem automatisierungsgerät und einem bediengerät sowie verfahren zum betrieb eines solchen geräteverbunds
DE102011117758A1 (de) Verfahren zur automatischen Erzeugung von Anwenderprogmmcode für eine speicherprogrammierbare Steuerung zur Steuerung einer Maschine
EP1515207A1 (de) Automatisierungsobjekt und Verfahren zur Beschreibung eines Automatisierungsobjektes unter Verwendung einer Metasprache
DE102004045240A1 (de) Darstellung von Prozesswerten in der Automatisierungstechnik
DE102008007102A1 (de) Verfahren zum Programmieren einer Steuerungseinrichtung
WO2003026208A2 (de) Datenverarbeitungsanlage, ressourcensteuergerät und verfahren zur fernverwaltung von ressourcen mittels generisch gekennzeichneten ressoucenbeschreibungsdaten
DE102010049671B4 (de) Verfahren zum Steuern von Komponenten eines Automationssystems
EP2926504B1 (de) Verfahren zum betreiben eines feldbusprotokoll-fähigen feldgerätes
DE10132036A1 (de) Automatisierungssystem und Verfahren mit Funktionen in einer Auszeichnungssprache

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: BARDEHLE PAGENBERG PARTNERSCHAFT MBB PATENTANW, DE

R082 Change of representative

Representative=s name: BARDEHLE PAGENBERG PARTNERSCHAFT MBB PATENTANW, DE

R016 Response to examination communication
R016 Response to examination communication