DE102010049671B4 - Verfahren zum Steuern von Komponenten eines Automationssystems - Google Patents

Verfahren zum Steuern von Komponenten eines Automationssystems Download PDF

Info

Publication number
DE102010049671B4
DE102010049671B4 DE102010049671A DE102010049671A DE102010049671B4 DE 102010049671 B4 DE102010049671 B4 DE 102010049671B4 DE 102010049671 A DE102010049671 A DE 102010049671A DE 102010049671 A DE102010049671 A DE 102010049671A DE 102010049671 B4 DE102010049671 B4 DE 102010049671B4
Authority
DE
Germany
Prior art keywords
automation
learning
server
automation system
program
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.)
Expired - Fee Related
Application number
DE102010049671A
Other languages
English (en)
Other versions
DE102010049671A1 (de
Inventor
Patentinhaber gleich
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE102010049671A priority Critical patent/DE102010049671B4/de
Publication of DE102010049671A1 publication Critical patent/DE102010049671A1/de
Application granted granted Critical
Publication of DE102010049671B4 publication Critical patent/DE102010049671B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2816Controlling appliance services of a home automation network by calling their functionalities
    • H04L12/2818Controlling appliance services of a home automation network by calling their functionalities from a device located outside both the home and the home network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zum Steuern von Komponenten (12) eines Automationssystems. Die Erfindung ist dadurch gekennzeichnet, dass ein Steuerungsgerät (10) als Client mit Komponenten (12) des Automationssystems, die als Server fungieren, kommuniziert, wobei für die Kommunikation das Hypertext Transfer Protokoll (HTTP) verwendet wird.

Description

  • Die Erfindung betrifft ein Verfahren zum Steuern von Komponenten eines Automationssystems.
  • Bei einem Automationssystem kann es sich beispielsweise um ein Gebäudeautomationssystem, ein Automationssystem zur Automatisierung eines Smart Grids, ein Maschinenautomationssystem, ein Anlagenautomationssystem oder ein System zur Prozessautomation handeln.
  • Ein Automationssystem kann beispielsweise eine Vielzahl von Komponenten, beispielsweise Sensoren und Aktoren aufweisen, die von einer Steuerung gesteuert werden. Es ist bekannt für die Kommunikation den Standard KNX zu verwenden. Dieser ist als internationale Norm ISO/IEC 14543-3 akzeptiert und basiert nicht auf Standard Ethernet. Nachteilig an diesem Standard ist, dass die Koexistenz von Internet basierenden Technologien nicht unterstützt wird, so dass neben der Kommunikation über KNX parallel weitere Kommunikationsstandards, wie z. B. Wireless LAN's, eingesetzt werden müssen.
  • Weiterhin ist es bekannt, Ethernet basierende Automatisierungsprofile, wie Profinet oder Ethernet IP, zu verwenden. Hier ist jedoch die Kodierung der Ein- und Ausgangswerte kryptisch im Ethernet Frame hinterlegt und kann erst durch spezielles Wissen des Anwenders entschlüsselt werden.
  • Weiterhin ist es bekannt, im Bereich der Mensch-Maschinen-Automation Client-Server-Technologie einzusetzen. In einer solchen Anwendung entfällt die Interpretation der Nutzdaten weitestgehend, da direkt mit den bekannten physikalischen Größen, wie beispielsweise Druck, Temperatur usw., gearbeitet werden kann.
  • In 1 ist eine Anwendung aus dem Bereich Mensch-Maschinen-Automation dargestellt. Über einen Client können IO-Server im Netzwerk adressiert werden. Diese stellen ihre Funktionalität in Form einer Webseite dar. Die Webseiten, die beispielsweise in HTML oder XML beschrieben sind, werden durch einen Browser auf dem Client dargestellt. Auf diesem Wege wird eine Bedienung einschließlich einer Parametrisierung und Diagnose der IO-Server ermöglicht. Die IO-Server sind beispielsweise in Schalter, Sensoren und Aktoren der Applikation integriert.
  • In der in 1 beispielhaft dargestellten Applikation kann eine Heizung über den Browser ein- und ausgeschaltet werden. Über die URL ”Temperatur” erhält der Nutzer Zugang zu weiteren Bedien- und Einstellmöglichkeiten der Heizung.
  • Beispielsweise übergibt der IO-Server der Heizung unter der URL ”Temperatur” den Wert der Außentemperatur –10 Grad Celsius zum aktuellen Zeitpunkt. Über diese Webseite ist der Nutzer auch in der Lage die aktuelle Außentemperatur in andern physikalischen Einheiten, wie z. B. Grad Fahrenheit, abzurufen. Über die Combobox ”Grad Celsius” können durch einen Mouseclick weitere Darstellungsformen des physikalischen Wertes der Temperatur über den IO-Server angefordert werden. Beispielshaft könnten auch Außentemperaturwerte zu früheren Zeitpunkten durch das Mensch-Maschinen-Benutzerinterface angefordert werden.
  • Im Dialogfeld darunter kann der Benutzer die Vorlauftemperatur der Heizung parametrisieren. Der bisherige Wert der Vorlauftemperatur der Heizung beträgt im Beispiel 40 Grad Celsius zur Tagzeit.
  • Bei starken Minusgraden im Winter kann es sinnvoll sein, die Vorlauftemperatur beispielhaft auf 60 Grad Celsius zu erhöhen. Dies kann durch den menschlichen Benutzer über das webbasierende Mensch-Maschinen-Interface bewerkstelligt werden.
  • DE 298 23 119 U1 beschreibt ein Automatisierungsgerät zur Steuerung eines technischen Prozesses, welches über ein Internet- oder Intranet-Netzwerk zum Zwecke der Prozessbeobachtung mit einem Beobachtungsgerät verbunden wird.
  • DE 10 2006 025 747 A1 betrifft ein automatisiertes System zur netzwerkbasierten Steuerung von Textilmaschinen. Das System umfasst mehrere Human-Machine-Interface-Einheiten, die mit der Maschinensteuerung vernetzt sind. Diese HMI-Einheiten sind als sogenannte „Thin-Clients” ausgebildet. Es können Prozessdaten und Software auf die HMI-Einheiten von einem entfernten Server geladen werden.
  • DE 101 32 038 A1 beschreibt ein Verfahren zum Steuern von Komponenten eines Automatisierungssystems, wobei ein Steuerungsgerät als Client mit weiteren Komponenten des Systems, die als Server fungieren, kommuniziert. Zur Kommunikation wird das HTTP-Protokoll verwendet.
  • US 2004/0111488 A1 beschreibt ein Verfahren zum Aufzeichnen und anschließenden Wiederholen von Bedienschritten durch ein HTTP-Makro. Ähnliche Merkmale gehen aus US 2004/0254935 A1 hervor.
  • Aufgabe der Erfindung ist es, ein vereinfachtes Verfahren zum Steuern von Komponenten eines Automationssystems bereitzustellen.
  • Die Lösung der Aufgabe erfolgt erfindungsgemäß durch die Merkmale des Anspruchs 1.
  • Das erfindungsgemäße Verfahren ist dadurch gekennzeichnet, dass ein Steuerungsgerät, das insbesondere als Steuerungsendgerät ausgebildet ist, als Client mit Komponenten des Automationssystems, die als Server fungieren, kommuniziert, wobei für die Kommunikation das Hypertext Transfer Protokoll (HTTP) verwendet wird. Insbesondere handelt es sich bei der Kommunikation um eine eigenständige Kommunikation, die ohne die Mitwirkung eines menschlichen Benutzers stattfindet.
  • Bei dem erfindungsgemäßen Automationssystem kann es sich um ein Gebäudeautomationssystem, ein System zur Automatisierung eines Smart Grids, ein Maschinenautomationssystem, ein Anlagenautomationssystem oder ein System zur Prozessautomation handeln. Andere Automationssysteme sind ebenfalls möglich.
  • Erfindungsgemäß bauen somit die Clients in einem Netzwerk, das Webserver und Clients aufweist, insbesondere gesteuert durch ein Automatisierungsprogramm, Verbindungen zu den Webservern auf und fordern mittels Requests Informationen über das HTTP an, welche in Form von Responses vom Server an den anfordernden Client beantwortet werden. Die Clients übertragen ihre Daten, Parameter und Kommandos bevorzugt mittels der Requests im Message-Body an den adressierten Webserver.
  • Insofern fungieren das Steuerungsgerät (Client) bevorzugt als Master und die Komponenten (Server) des Automationssystems als Slaves. Die Server stellen hierbei die Peripherie eines Automatisierungssystems beispielsweise in Form von Sensoren und Aktoren dar.
  • Erfindungsgemäß ist somit eine Client-Server gebundene Automatisierungslösung gelungen, welche nur auf den offenen Standards der webbasierenden Kommunikation aufbaut. Alle Ein- und Ausgangsvariablen stehen in profilneutraler Form zur Verfügung, sind durch einen menschlichen Benutzer direkt erfassbar und können direkt weiterverarbeitet werden. Es ist somit auf einfache Weise gelungen, das Mensch-Maschinen-Interface auf eine Maschine-Maschine-Kommunikation zu übertragen. Webserver, die heute in den meisten Geräten vorhanden sind, können in dem erfindungsgemäßen Verfahren weiterverwendet werden.
  • Erfindungsgemäß bedienen somit die Komponenten des Automatisierungssystems als Server oder Slaves die Anfragen des Steuerungsgerätes als Master oder Client.
  • Es ist erfindungsgemäß vorgesehen, dass auf dem Steuerungsgerät ein Automatisierungsprogramm ausgeführt wird, das eine Lernsoftware umfasst, wobei das Automatisierungsprogramm durch die Lernsoftware, die durch einen menschlichen Benutzer vorgenommenen Bedienschritte lernt. Die Lernsoftware kann auch getrennt vom Automatisierungsprogramm auf einem separaten Rechner ausgeführt werden. Hierdurch ist das Automatisierungsprogramm in der Lage, in gleicher Weise über das HTTP mit den Komponenten des Automationssystems zu interagieren wie der menschliche Benutzer.
  • Es ist ferner erfindungsgemäß vorgesehen, dass das Lernen der durch den menschlichen Benutzer vorgenommenen Bedienschritte folgende Schritte umfasst:
    • – Aufzeichnen aller Bedienschritte des Benutzers, die dieser während einer Beispielsanwendung durchführt,
    • – Extrahieren der zugrundeliegenden webbasierenden Kommunikationsprozeduren, wobei diese anschließend dem Automatisierungsprogramm zur Verfügung gestellt werden.
  • Das Aufzeichnen der Bedienschritte des menschlichen Benutzers umfasst folgende Verfahrensschritte:
    Zunächst wird eine Bedienschritt-Lernprozedur durch den Benutzer in der Lernsoftware initiiert. Hierbei werden alle aktivierbaren Links der angezeigten Webseite graphisch für den Benutzer hervorgehoben. Anschließend wird durch den Benutzer eine Abfolge von Bedienschritten durch Aktivieren eines oder mehrerer der hervorgehobenen Links eingegeben. Aus der durch den Benutzer getätigten Abfolge von Bedienschritten wird ein Kommunikations-Makro erstellt. Es ist bevorzugt diesem Makro einen Aufrufnamen zuzuordnen. Mit diesem ist das Automatisierungsprogramm später in der Lage die entsprechenden Parameter über das HTTP zu übermitteln.
  • Das Kommunikations-Makro ist bevorzugt zur Laufzeit des Automatisierungsprogramms abrufbar und hat die gleiche Antwort des Servers zur Folge wie die durch den menschlichen Benutzer generierten Eingaben. Mit anderen Worten lösen die durch den Benutzer aktivierten Links mit ihren Parametern im Client einen entsprechenden Kommunikationsprozess zum Server auf Basis des HTTP aus, welcher in seiner Gesamtheit vom Automatisierungsprogramm aufgezeichnet wird und ein Kommunikations-Makro bildet. Durch den Aufrufnamen des Kommunikations-Makros wird später das Automatisierungsprogramm befähigt, dieses Makro zu initiieren.
  • Es ist weiterhin erfindungsgemäß vorgesehen, dass das Lernen der Bedienschritte des menschlichen Benutzers durch die Lernsoftware ein Herausfiltern von Rückgabewerten umfasst, die durch den Server an den Client übermittelt werden. Ziel dieses Herausfilterns ist, dem Automatisierungsprogramm mitzuteilen, an welcher Stelle Rückgabewerte des Servers zu finden sind, sowie ggf. ihren Datentyp anzugeben, so dass diese Rückgabewerte durch das Automatisierungsprogramm selbsttätig weiterverarbeitet werden können. Das Herausfiltern der Rückgabewerte umfasst die folgenden Schritte:
    Zunächst wird eine Rückgabewert-Lernprozedur durch den Benutzer in der Lernsoftware initiiert. Hierbei werden alle Rückgabewerte auf der angezeigten Webseite des Servers graphisch für den Benutzer hervorgehoben. Dieser wählt einen oder mehrere graphisch gekennzeichnete Rückgabewerte aus, so dass die Stelle dieses Rückgabewerts im http-Protokoll durch das Automatisierungsprogramm insbesondere mit seinem Datentyp herausgefiltert und weiterverarbeitet werden kann.
  • Das Lernen der Bedienschritte des menschlichen Benutzers durch die Lernsoftware kann ferner ein Deklarieren von Eingabewerten, die vom Benutzer eingegeben werden, umfassen. Bei den Eingabewerten handelt es sich um Werte, die der Benutzer über den Browser auf dem Client in Eingabemasken oder andere Felder auf der Webseite des Servers eingibt. Das Deklarieren der Eingabewerte kann die folgenden Schritte einschließen:
    Zunächst wird eine Eingabewert-Lernprozedur durch den Benutzer in der Lernsoftware initiiert. Hierbei werden alle Eingabewerte auf der angezeigten Webseite des Servers graphisch für den Benutzer hervorgehoben. Der Benutzer wählt mindestens einen graphisch hervorgehobenen Eingabewert aus, so dass dieser hierdurch für das Automatisierungsprogramm als Eingabewert auffindbar ist.
  • Im Folgenden werden bevorzugte Ausführungsformen der Erfindung anhand von Figuren erläutert.
  • Es zeigen:
  • 1 eine Darstellung eines Webinhalts einer Heizung in einem Gebäude-Automationssystem gemäß dem Stand der Technik,
  • 2 eine vereinfachte Darstellung der Kommunikationsbeziehungen in einem Automationssystem,
  • 39 Darstellungen der Webseite einer Komponente eines Gebäude-Automationssystems zur Verdeutlichung der Lernprozedur.
  • 1 wurde bereits in Zusammenhang mit dem Stand der Technik beschrieben.
  • Gemäß 2 wird über den Router 14 ein lokales Netzwerk aufgespannt. Auf dem Client 10, beispielsweise einem PC, ist ein Automatisierungsprogramm installiert. Router 14 und Client 10 können auch als ein Automatisierungsgerät mit Mensch-Maschine-Interface (HMI) Funktion zusammengefasst sein. Weitere Clients 10, wie z. B. Smartphones, können als Subclients mit reduzierter Funktionalität in die Applikation eingebunden werden. Die IO-Server 12 stellen die Steuerungsperipherie der Applikation dar. Sie sind beispielsweise in Schalter, Sensoren und Aktoren der Applikation integriert. Auch Haushaltsgeräte aller Art, Alarm- und Feuermelderanlagen, Mulitmediageräte und Energieerzeugungsgeräte können mit den IO-Servern 12 ausgestattet sein. Über das Internet können weitere Clients 10 und Server 12 integriert werden, wobei ein Server z. B. als powersubstation bzw. virtual power substation ausgebildet sein kann.
  • In den 3 bis 9 wird anhand des Beispiels einer Heizung die Funktion der Lernsoftware näher erläutert. Mittels eines Browsers ist der menschliche Benutzer in der Lage, mit verschiedenen IO-Servern zu kommunizieren und diese zu bedienen. Erfindungsgemäß wird unter einem Bedienen das Tätigen jeglicher Bedienschritte, einschließlich des Eingebens von Parameter oder anderen Werten, das Abfragen von Daten usw., verstanden. Im Beispiel der Heizung kann der menschliche Benutzer die URL ”Temperatur” besuchen und erhält die Informationen zur aktuellen Außentemperatur in Grad Celsius und zu der aktuell eingestellten Vorlauftemperatur der Heizung. Folgende Schritte werden üblicherweise händisch durch den menschlichen Benutzer durchgeführt:
    Über das Pull-Down-Menü wählt er im Feld Außentemperatur die Einstellung ”aktuell”. Über diesen vom Menschen aktivierten Link wird über das Internet der Parameter ”aktuell” an den Server der Heizung übertragen bzw. gesetzt. Beispielhafte andere Einstellungen könnten sein ”Vortag” oder ”gemittelte Außentemperatur über die letzten zwei Tage” usw. Im nächsten Pull-Down-Menü wird durch den Benutzer die physikalische Einheit der Temperatur auf Grad Celsius eingestellt und in gleicher Weise zum Server der Heizung (IO-Server) übertragen. Mit der nächsten Antwort des Servers wird dem Client der aktuelle Wert der Außentemperatur in Grad Celsius übergeben und graphisch auf dem Bildschirm des Benutzers angezeigt.
  • Nun verfügt der menschliche Benutzer über eine Information, auf deren Basis er weitere Entscheidungen fällen kann. Liegt z. B. der Wert der Außentemperatur unter –8 Grad Celsius, kann der Mensch die Entscheidung fällen, den Wert der Vorlauftemperatur von 40 auf 60 Grad Celsius zu erhöhen. Diese Entscheidung des Menschen ist vergleichbar mit der Entscheidung, die ein Automatisierungsprogramm einer Steuerung fällen kann. Die Ermittlung des Vorlauftemperaturwertes kann selbstverständlich im Falle des Automationsprogrammes durch komplexere Algorithmen wie z. B. PID-Regelung realisiert werden.
  • Die grundsätzliche Funktionsweise derartiger Automatisierungsprogramme ist aus dem Stand der Technik bekannt. Wesentlich für die vorliegende Erfindung ist die Frage, wie das Automatisierungsprogramm an die benötigten Daten, hier an den Wert der aktuellen Außentemperatur gelangt.
  • Erfindungsgemäß geschieht dies über eine Lernsoftware, um die der Client erweitert wird. Hierdurch werden alle Bedienschritte des Benutzers aufgezeichnet, die zugrundeliegenden webbasierenden Kommunikationsprozeduren extrahiert und diese anschließend dem Automatisierungsprogramm zur Verfügung gestellt. Das Automatisierungsprogramm ist dann erfindungsgemäß in der Lage in gleicher Weise wie im Falle der Mensch-Maschinen-Automation mit den IO-Servern zu interagieren.
  • Ein Parser, welcher in einer bevorzugten Ausführungsform Bestandteil der Lernsoftware ist, untersucht die vom Benutzer aufgerufene Seite, welche beispielsweise dem Client vom Server in Form eines XML-basierten Dokuments zur Verfügung gestellt wird.
  • Aktiviert der Benutzer beispielsweise per Mouseclick den zur Lernsoftware zugehörigen Button ”get action” (siehe 4), so werden alle Aktionen, nämlich alle aktivierbaren Links dieser Seite, die vorliegend zur Parametrisierung der Ein- und Ausgangsgrößen dienen, graphisch für den Benutzer hervorgehoben. Im Beispiel sind das die Parameter ”aktuell”, ”Tag” und zweimal ”Grad Celsius”. Das Mouse Icon mit der Aktionsnummer (hier = 1) kennzeichnet im Folgenden die Aktionen, welche der Benutzer durchführt.
  • In der Folge wird der Benutzer ggf. die gekennzeichneten Aktionen durch Anklicken durchführen, um die Parameter vom Rückgabewert vom Server zu parametrisieren. Dies ist in 5 dargestellt, wobei jede Aktion mit einem Mouse Icon und einer entsprechenden Nummer versehen ist.
  • Beispielhaft sind die Aktionen 2 und 3 in 5 dargestellt, wobei über die entsprechenden Command-Buttons die Parameter ”aktuell” und ”Grad Celsius” vom Benutzer gesetzt werden. Anschließend kann dem hierzu entsprechenden Kommunikations-Makro ein Aufrufname übergeben werden (Aktion 4). Mit diesem ist später das Automatisierungsprogramm in der Lage, die entsprechenden Parameter über das HTTP zu setzen, bzw. entsprechende Sollwerte vorzugeben.
  • Die aktivierten Links mit ihren Parametern lösen im Client einen entsprechenden Kommunikationsprozess zum Server auf Basis des HTTP aus, welcher in seiner Gesamtheit aufgezeichnet wird und ein Kommunikations-Makro bildet, welches später zur Laufzeit des Automatisierungsprogramms ausgelöst, eine Antwort des Servers zur Folge haben wird, welche im Beispiel den Wert der aktuellen Außentemperatur auf dem Bildschirm ausgeben wird. Über den Aufrufnamen kann das Makro später durch das Automatisierungsprogramm initiiert werden.
  • Mit dem Command-Button ”get variable” werden anschließend alle Rückgabewerte dieser Webseite, beispielsweise vom Server gesendete Objekte, Variablen usw., auf der Seite graphisch gekennzeichnet und für den Benutzer zur Auswahl bereitgestellt. Die nächsten Aktionsschritte 6 und 7 sind in 6 dargestellt.
  • Der Benutzer wählt daraufhin den Rückgabewert ”–10” am Bildschirm aus. Im geschilderten Beispiel ist dies die Variable der aktuellen Außentemperatur. Durch die vom Parser untersuchte Webseite kann jetzt die vom Benutzer im Beispiel ausgewählte Variable inklusiv Datentyp herausgefiltert werden und vom Benutzer mit einem Variablennamen zur Verwendung im Automatisierungsprogramm versehen werden.
  • Der Datentyp des Wertes ”aktuelle Außentemperatur” kann aus dem Datentyp des XML-Dokuments übernommen oder vom Benutzer neu definiert werden, wobei in diesem Fall der Datentyp konvertiert werden muss. Dies kann durch unterstützende Tools, welche in der Lernsoftware integriert sind, durchgeführt werden.
  • Der Lernvorgang (Teaching) wird zum Abschluss dieses Makros vom Benutzer durch Betätigung des Buttons ”finish” beendet, wobei für das gesamte Makro jetzt ein Aufrufname zur Verfügung steht, der beispielsweise der Name der Variablen sein kann.
  • Mit Aufruf dieses Makros durch das Automatisierungsprogramm (nämliche eine Maschine) wird dem Automatisierungsprogramm der Wert der aktuellen Außentemperatur mit dem vom Benutzer bestimmten Variablennamen und Datentyp vom Server mittels des HTTP zur Verfügung gestellt und kann im Automatisierungsprogramm weiterverarbeitet werden. Die genannten Werte werden somit nicht mehr durch einen Menschen angefordert, sondern durch eine Maschine, nämlich das Automatisierungsprogramm.
  • In gleicher Weise kann jetzt der Wert der Vorlauftemperatur durch das Automatisierungsprogramm im IO-Server der Heizung gesetzt werden. Hierzu ist erneut ein Kommunikations-Makro aufzuzeichnen. Der Lernprozess beginnt wieder mit der Initiierung des Aufzeichnungsprozesses mit ”get action” (siehe 7).
  • Den 8 und 9 können die folgenden Bedienschritte entnommen werden. Durch die Aktionsschritte 10, 11 und 12 gemäß 8 wird in ähnlicher Weise zuerst die Parametrisierung der zu setzenden Variablen vorgenommen und dann durch die Aktionsschritte 14 und 15 (9) die Variablendeklaration durchgeführt. Jetzt stehen für das Automatisierungsprogramm alle Variablen mit entsprechender Parametrisierung zur Verfügung.
  • Zur Laufzeit der Automatisierungsapplikation fordert der Client bei Bedarf oder zyklisch, d. h. abhängig vom Applikationsprogramm, die parametrisierte Eingangsvariable ”Außentemperatur” vom adressierten Server an. Zuerst werden vom Applikationsprogramm (Maschine) die Parameter ”aktuell” an den Server übertragen, anschließend ”Grad Celsius” und zum Schluss wird die Rückgabewert ”Außentemperatur” von der adressierten Webseite des Servers angefordert und vom IO-Server dem Applikationsprogramm unter dem deklarierten Namen und Typ zur Verfügung gestellt.
  • In ähnlicher Weise wird mit der Ausgangsvariablen ”Vorlauftemperatur” verfahren. Nach der Übergabe der Parameter ”Tag” und ”Grad Celsius” wird dem adressierten Server vom Applikationsprogramm über den Client der Wert der Vorlauftemperatur mittels HTTP übergeben.
  • Auf diesem Wege wird über eine Client Server Architektur eine Master/Slave Automation realisiert. Die Clients stellen hierbei die Automatisierungsmaster und die IO-Server, die Slaves dar.
  • Das Automatisierungsprogramm kann durch verschiedene Programmiersprachen realisiert werden. Beispielhaft seien C++, C sharp, visual Basic oder die Programmiersprachen nach IEC 61131 genannt. Lösungen als Java Applets sind auch denkbar.

Claims (4)

  1. Verfahren zum Steuern von Komponenten (12) eines Automationssystems wobei ein Steuerungsgerät (10) als Client mit Komponenten (12) des Automationssystems, die als Server fungieren, kommuniziert, wobei für die Kommunikation das Hypertext Transfer Protokoll (HTTP) verwendet wird, wobei auf dem Steuerungsgerät (10) ein Automatisierungsprogramm ausgeführt wird, das eine Lernsoftware umfasst, wobei das Automatisierungsprogramm durch die Lernsoftware die vorgenommenen Bedienschritte lernt, so dass das Automatisierungsprogramm in der Lage ist, in gleicher Weise über das Hypertext Transfer Protokoll mit den Komponenten (12) des Automationssystems zu interagieren wie der menschliche Benutzer, dass das Lernen der Bedienschritte folgende Schritte umfasst: – Aufzeichnen aller Bedienschritte, die während einer Beispielanwendung durchgeführt werden, – Extrahieren der zugrundeliegenden webbasierenden Kommunikationsprozeduren, wobei diese anschließend dem Automatisierungsprogramm zur Verfügung gestellt werden, dass das Aufnehmen der Bedienschritte folgende Schritte umfasst: – Initiieren einer Bedienschritt-Lernprozedur in der Lernsoftware, wobei alle aktivierbaren Links der angezeigten Webseite graphisch hervorgehoben werden, – Eingeben einer Abfolge von Bedienschritten durch Aktivieren eines oder mehrerer der hervorgehobenen Links, – Erstellen eines Kommunikations-Makros, das aus der getätigten Abfolge von Bedienschritten besteht, und dass das Lernen der Bedienschritte durch die Lernsoftware ein Herausfiltern von Rückgabewerten umfasst, die durch den Server (12) an den Client (10) übermittelt werden, wobei das Herausfiltern der Rückgabewerte die folgenden Schritte einschließt: – Initiieren einer Rückgabewert-Lernprozedur in der Lernsoftware, wobei alle Rückgabewerte auf der angezeigten Webseite des Servers (12) graphisch hervorgehoben werden, – Auswählen eines graphisch gekennzeichneten Rückgabewerts, so dass dieser Rückgabewert durch das Automatisierungsprogramm herausgefiltert werden kann.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Kommunikations-Makro zur Laufzeit des Automatisierungsprogramms abrufbar ist und die gleiche Antwort des Servers (12) zur Folge hat, wie die durch den menschlichen Benutzer generierten Eingaben.
  3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass das Lernen der Bedienschritte durch die Lernsoftware ein Deklarieren von Eingabewerten, umfasst, wobei das Deklarieren der Eingabewerte folgende Schritte einschließt: – Initiieren einer Eingabewert-Lernprozedur in der Lernsoftware, wobei alle Eingabewerte auf der angezeigten Webseite des Servers (12) graphisch hervorgehoben werden, – Auswählen eines graphisch gekennzeichneten Eingabewerts, so dass dieser hierdurch für das Automatisierungsprogramm deklariert wird.
  4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass das Automationssystem ein Gebäudeautomationssystem, ein System zur Automation eines Smart Grids, ein Maschinenautomationssystem, ein Anlagenautomationssystem oder ein System zur Prozessautomation ist.
DE102010049671A 2010-10-26 2010-10-26 Verfahren zum Steuern von Komponenten eines Automationssystems Expired - Fee Related DE102010049671B4 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102010049671A DE102010049671B4 (de) 2010-10-26 2010-10-26 Verfahren zum Steuern von Komponenten eines Automationssystems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102010049671A DE102010049671B4 (de) 2010-10-26 2010-10-26 Verfahren zum Steuern von Komponenten eines Automationssystems

Publications (2)

Publication Number Publication Date
DE102010049671A1 DE102010049671A1 (de) 2012-04-26
DE102010049671B4 true DE102010049671B4 (de) 2012-08-16

Family

ID=45923220

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102010049671A Expired - Fee Related DE102010049671B4 (de) 2010-10-26 2010-10-26 Verfahren zum Steuern von Komponenten eines Automationssystems

Country Status (1)

Country Link
DE (1) DE102010049671B4 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3028964A1 (fr) * 2014-11-25 2016-05-27 Frantz Allandrieu Serveur domotique local

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE29823119U1 (de) * 1998-12-28 1999-02-25 Siemens AG, 80333 München Automatisierungsgerät
DE10132038A1 (de) * 2001-07-03 2003-01-23 Siemens Ag Automatisierungssystem und Verfahren zur Anlagenvisualisierung
US20040111488A1 (en) * 2002-12-06 2004-06-10 International Business Machines Corporation Method and system for playback of dynamic HTTP transactions
US20040254935A1 (en) * 2003-06-12 2004-12-16 International Business Machines Corporation Method and apparatus for automatic consolidation of personalized dynamic data
DE102006025747A1 (de) * 2006-05-31 2007-12-06 Maschinenfabrik Rieter Ag Automatisiertes System zur Steuerung von Textilmaschinen

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE29823119U1 (de) * 1998-12-28 1999-02-25 Siemens AG, 80333 München Automatisierungsgerät
DE10132038A1 (de) * 2001-07-03 2003-01-23 Siemens Ag Automatisierungssystem und Verfahren zur Anlagenvisualisierung
US20040111488A1 (en) * 2002-12-06 2004-06-10 International Business Machines Corporation Method and system for playback of dynamic HTTP transactions
US20040254935A1 (en) * 2003-06-12 2004-12-16 International Business Machines Corporation Method and apparatus for automatic consolidation of personalized dynamic data
DE102006025747A1 (de) * 2006-05-31 2007-12-06 Maschinenfabrik Rieter Ag Automatisiertes System zur Steuerung von Textilmaschinen

Also Published As

Publication number Publication date
DE102010049671A1 (de) 2012-04-26

Similar Documents

Publication Publication Date Title
DE102004025875B4 (de) Funktionsblock mit Boolescher Logik
DE102008055660B4 (de) Verfahren und Vorrichtung zum Zugreifen auf ein Funktionsmodul eines Automatisierungssystems
DE60207155T2 (de) Objektorientiertes Internetschnittstellensystem für eine industrielle Steuereinrichtung
DE60218539T2 (de) Verfahren zur steuerung eines heimautomatisierungssystems
DE102010029655A1 (de) Verfahren zum Bereitstellen eines Bedienmenus für ein Feldgerät der Prozessautomatisierungstechnik
EP1970783B1 (de) Verfahren, Steuergerät und Steuerungssystem zur Steuerung eines Automatisierungssystem
DE102008010864A1 (de) Verfahren zum Betreiben eines Feldgerätes
WO2014177327A1 (de) Feldgerät, kommunikations-chip und verfahren zum webzugriff auf ein feldgerät
DE102011008941A1 (de) System zur Visualisierung von Statusinformationen von Feldgeräten
DE102007047061A1 (de) Verfahren zum Bedienen von Feldgeräten der Prozessautomatisierungstechnik mit einem geräteunabhängigen Bedienprogramm
DE10208146A1 (de) Verfahren zum rechnergestützten Erzeugen einer graphischen Benutzeroberfläche und Geräteüberwachungs-/Steuerungseinheit
EP3416337B1 (de) Vorrichtung zur automation eines hauses oder gebäudes
EP1640826B2 (de) Darstellung von Prozesswerten in der Automatisierungstechnik
DE102018128502A1 (de) Verfahren und Vorrichtung zur Bedienung und Steuerung einer maschinentechnischen Anlage mit Hilfe einer grafischen Entwicklungsoberfläche und Erzeugung einer Feldbus-Konfiguration
DE102010049671B4 (de) Verfahren zum Steuern von Komponenten eines Automationssystems
EP1821165B1 (de) Nutzung von Variablen in mehreren Automatisierungssystemen
EP1658535A2 (de) Verfahren zur graphischen projektierung der steuerung einer technischen anlage mit integrierter projektierung von bediengeräten, einschliesslich einem projektierungssystem und einem computerprogrammprodukt
DE102014019368A1 (de) Einrichtung zur Verwaltung und Konfiguration von Feldgeräten einer Automatisierungsanlage
DE102011117758A1 (de) Verfahren zur automatischen Erzeugung von Anwenderprogmmcode für eine speicherprogrammierbare Steuerung zur Steuerung einer Maschine
EP1595185B1 (de) Elektrisches automatisierungsgerät und verfahren zum einstellen der funktionen des elektrischen automatisierungsgerätes
EP1227379B1 (de) Verfahren und Vorrichtung zur Steuerung einer Maschine in einem Fertigungssystem
EP2180388B1 (de) Verfahren zur Projektierung einer busorientierten programmierbaren Elektroinstallation
DE102013002085A1 (de) SPS-Funktionsbausteine für Energieverwaltungsfunktionalitäten
WO2022084452A1 (de) Verfahren zum betreiben eines automatisierungssystems einer maschine oder einer anlage
DE102009017816A1 (de) Verfahren zum Parametrieren von Betriebsmitteln

Legal Events

Date Code Title Description
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final

Effective date: 20121117

R084 Declaration of willingness to licence
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee