DE102011080590A1 - Steuerungs- und/oder Regelungseinrichtung - Google Patents

Steuerungs- und/oder Regelungseinrichtung Download PDF

Info

Publication number
DE102011080590A1
DE102011080590A1 DE201110080590 DE102011080590A DE102011080590A1 DE 102011080590 A1 DE102011080590 A1 DE 102011080590A1 DE 201110080590 DE201110080590 DE 201110080590 DE 102011080590 A DE102011080590 A DE 102011080590A DE 102011080590 A1 DE102011080590 A1 DE 102011080590A1
Authority
DE
Germany
Prior art keywords
control
regulating device
test
programming
transaction
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.)
Ceased
Application number
DE201110080590
Other languages
English (en)
Inventor
Tino Kalbitz
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE201110080590 priority Critical patent/DE102011080590A1/de
Priority to PCT/EP2012/064819 priority patent/WO2013020844A1/de
Publication of DE102011080590A1 publication Critical patent/DE102011080590A1/de
Ceased 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/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

Die Erfindung bezieht sich auf eine Steuerungs- und/oder Regelungseinrichtung (10) mit einem Speicher (20), in dem ein Steuerprogramm (25) abgespeichert ist, und einer Recheneinrichtung (15), die mit dem Speicher (20) in Verbindung steht und das Steuerprogramm (25) für den Betrieb der Steuerungs- und/oder Regelungseinrichtung (10) ausführen kann, wobei das Steuerprogramm (25) die Arbeitsweise der Steuerungs- und/oder Regelungseinrichtung (10) festlegt und mit Programmierbefehlen (PB) einer vorgegebenen Programmiersprache programmiert ist. Erfindungsgemäß ist vorgesehen, dass die Steuerungs- und/oder Regelungseinrichtung (10) ein Testmodul (40) aufweist, das einen externen Test durch eine externe Testeinrichtung (50) über eine Kommunikationsschnittstelle (30) der Steuerungs- und/oder Regelungseinrichtung (10) ermöglicht, wobei das Testmodul (40) derart ausgestaltet ist, dass es den Empfang eines Transaktionscodes (TC), der einen Programmierbefehl (PB) der vorgegebenen Programmiersprache definiert, von der externen Testeinrichtung (50) ermöglicht und die Recheneinrichtung (15) veranlasst, diesen Programmierbefehl (PB) nach Empfang des Transaktionscodes (TC) zu Testzwecken auszuführen.

Description

  • Die Erfindung bezieht sich auf eine Steuerungs- und/oder Regelungseinrichtung mit einem Speicher, in dem ein Steuerprogramm abgespeichert ist, und einer Recheneinrichtung, die mit dem Speicher in Verbindung steht und das Steuerprogramm für den Betrieb der Steuerungs- und/oder Regelungseinrichtung ausführen kann, wobei das Steuerprogramm die Arbeitsweise der Steuerungs- und/oder Regelungseinrichtung festlegt und mit Programmierbefehlen einer vorgegebenen Programmiersprache programmiert ist.
  • Steuerungs- und/oder Regelungseinrichtungen dieser Art werden fachsprachlich auch kurz speicherprogrammierbare Steuerungen (SPS) genannt. Diese speicherprogrammierbaren Steuerungen werden gemäß der europäischen Norm EN61131 bzw. der entsprechenden internationalen Norm IEC61131 üblicherweise mit standardisierten Programmiersprachen programmiert, zu denen beispielsweise die AWL(Anweisungsliste)-Programmiersprache, die KOP(Kontaktplan)-Programmiersprache, die FBS(Funktionsbaustein)-Programmiersprache, die AS(Ablaufsteuerung)-Programmiersprache und die ST(Strukturierter Text)-Programmiersprache gehören.
  • Der Erfindung liegt die Aufgabe zugrunde, eine Steuerungs- und/oder Regelungseinrichtung anzugeben, die sich besonders einfach von außen testen lässt.
  • Diese Aufgabe wird erfindungsgemäß mit einer Steuerungs- und/oder Regelungseinrichtung mit den Merkmalen gemäß Patentanspruch 1 gelöst. Vorteilhafte Ausgestaltungen der erfindungsgemäßen Steuerungs- und/oder Regelungseinrichtung sind in Unteransprüchen angegeben.
  • Danach ist erfindungsgemäß vorgesehen, dass die Steuerungs- und/oder Regelungseinrichtung ein Testmodul aufweist, das einen externen Test durch eine externe Testeinrichtung über eine Kommunikationsschnittstelle der Steuerungs- und/oder Regelungseinrichtung ermöglicht, wobei das Testmodul derart ausgestaltet ist, dass es den Empfang eines Transaktionscodes, der einen Programmierbefehl der vorgegebenen Programmiersprache definiert, von der externen Testeinrichtung ermöglicht und die Recheneinrichtung veranlasst, diesen Programmierbefehl nach Empfang des Transaktionscodes zu Testzwecken auszuführen.
  • Ein wesentlicher Vorteil der erfindungsgemäßen Steuerungs- und/oder Regelungseinrichtung besteht darin, dass sich über die erfindungsgemäß vorgesehene Kommunikationsschnittstelle und das erfindungsgemäß vorgesehene Testmodul die Recheneinrichtung der Steuerungs- und/oder Regelungseinrichtung mit Blick auf die korrekte Abarbeitung der Programmierbefehle gezielt testen lässt. Mit Hilfe des Testmoduls ist es somit möglich, nicht die Arbeitsweise der Steuerungs- und/oder Regelungseinrichtung insgesamt, sondern statt dessen nur eine Teilkomponente, nämlich die Recheneinrichtung, auf eine korrekte Arbeitsweise hin zu testen. Wird ein Fehler festgestellt, so steht unmittelbar fest, dass die Recheneinrichtung, also die Hard- und/oder Firmware der Steuerungs- und/oder Regelungseinrichtung, defekt ist; ein festgestellter Fehler wird nicht auf dem Steuerprogramm der Steuerungs- und/oder Regelungseinrichtung basieren, da das Steuerprogramm zum Test nicht herangezogen wird. Getestet wird lediglich die Reaktion der Recheneinrichtung auf Programmierbefehle der Programmiersprache, in der das Steuerprogramm programmiert ist.
  • Ein weiterer wesentlicher Vorteil der erfindungsgemäßen Steuerungs- und/oder Regelungseinrichtung ist darin zu sehen, dass ein Test der Recheneinrichtung sehr schnell durchführbar ist, da die Anzahl der Programmierbefehle einer Programmiersprache sehr begrenzt ist und daher in relativ kurzer Zeit alle Programmierbefehle der Programmiersprache für einen Test der Recheneinrichtung herangezogen werden können. Es lässt sich somit sehr schnell feststellen, ob die Recheneinrichtung in der Lage ist, die Programmiersprache, die in dem Steuerprogramm der Steuerungs- und/oder Regelungseinrichtung benutzt wird, korrekt anzuwenden.
  • Als besonders vorteilhaft wird es angesehen, wenn das Testmodul derart ausgestaltet ist, dass es die Steuerungs- und/oder Regelungseinrichtung befähigt, über die Kommunikationsschnittstelle zumindest einen Transaktionswert, der sich auf den durch den Transaktionscode definierten Programmierbefehl bezieht, zu empfangen, den Programmierbefehl auf den zumindest einen Transaktionswert unter Bildung eines Transaktionsergebnisses anzuwenden und das Transaktionsergebnis an die externe Testeinrichtung zurückzumelden. Bei dieser Ausgestaltung lässt sich sehr einfach feststellen, ob die Recheneinrichtung den Programmierbefehl richtig angewandt hat; es muss nämlich lediglich das Transaktionsergebnis mit einem parallel – beispielsweise mit Hilfe eines "sicheren Referenzrechners" – gebildeten Referenztransaktionsergebnis verglichen werden, um eine Aussage über die richtige oder falsche Bearbeitung durch die Recheneinrichtung der Steuerungs- und/oder Regelungseinrichtung treffen zu können.
  • Besonders einfach und damit vorteilhaft lassen sich die Transaktionscodes und die Transaktionswerte in Form von Testtelegrammen an die Kommunikationsschnittstelle der Steuerungs- und/oder Regelungseinrichtung übermitteln. Demgemäß wird es als vorteilhaft angesehen, wenn das Testmodul derart ausgestaltet ist, dass es die Steuerungs- und/oder Regelungseinrichtung befähigt, über die Kommunikationsschnittstelle ein Testtelegramm zu empfangen und auszuwerten, das den Transaktionscode und den zumindest einen Transaktionswert enthält, und ein Ergebnistelegramm an die externe Testeinrichtung zu senden, das das Transaktionsergebnis enthält.
  • Das Testmodul der Steuerungs- und/oder Regelungseinrichtung kann beispielsweise durch ein Testsoftwaremodul gebildet sein, das in dem Speicher oder einem anderen Speicher der Steuerungs- und/oder Regelungseinrichtung gespeichert ist.
  • Alternativ kann das Testmodul auch durch ein Softwaremodul gebildet sein, das in der Firmware der Recheneinrichtung der Steuerungs- und/oder Regelungseinrichtung implementiert ist.
  • Auch ist es denkbar, das Testmodul in Form eines Testsoftwaremoduls in das Steuerprogramm der Steuerungs- und/oder Regelungseinrichtung zu integrieren. In diesem Fall bildet das Testmodul also einen Bestandteil des Steuerprogramms.
  • Bezüglich der Programmiersprache wird es als vorteilhaft angesehen, wenn die Programmiersprache die AWL(Anweisungsliste)-Programmiersprache, die KOP(Kontaktplan)-Programmiersprache, die FBS(Funktionsbaustein)-Programmiersprache, die AS(Ablaufsteuerung)-Programmiersprache oder die ST(Strukturierter Text)-Programmiersprache ist.
  • Die Erfindung bezieht sich darüber hinaus auch auf eine Anordnung mit einer Steuerungs- und/oder Regelungseinrichtung, wie sie oben beschrieben worden ist, sowie einer daran angeschlossenen externen Testeinrichtung. Erfindungsgemäß ist diesbezüglich vorgesehen, dass die externe Testeinrichtung geeignet ist, ein Testtelegramm zu erzeugen und an die Steuerungs- und/oder Regelungseinrichtung zu übermitteln, wobei das Testtelegramm einen Transaktionscode enthält, der einen Programmierbefehl der vorgegebenen Programmiersprache, in der das Steuerprogramm der Steuerungs- und/oder Regelungseinrichtung programmiert ist, definiert und wobei die externe Testeinrichtung außerdem geeignet ist, ein Ergebnistelegramm der Steuerungs- und/oder Regelungseinrichtung zu empfangen und auf Korrektheit der Anwendung des Programmierbefehls zu überprüfen.
  • Bezüglich der Vorteile der erfindungsgemäßen Anordnung sei auf die oben aufgeführten Vorteile der erfindungsgemäßen Steuerungs- und/oder Regelungseinrichtung verwiesen, da die Vorteile der erfindungsgemäßen Anordnung denen der erfindungsgemäßen Steuerungs- und/oder Regelungseinrichtung im Wesentlichen entsprechen.
  • Bei der "externen" Testeinrichtung handelt es sich um eine Testeinrichtung, die von der Recheneinrichtung der Steuerungs- und/oder Regelungseinrichtung unabhängig arbeitet. Die räumliche Anordnung der externen Testeinrichtung relativ zu der Recheneinrichtung der Steuerungs- und/oder Regelungseinrichtung ist beliebig: Die externe Testeinrichtung kann einen großen räumlichen Abstand aufweisen und in einem anderen Gehäuse als die Recheneinrichtung der Steuerungs- und/oder Regelungseinrichtung untergebracht sein; alternativ können die Testeinrichtung und die Recheneinrichtung der Steuerungs- und/oder Regelungseinrichtung aber auch räumlich sehr nah sein und in ein und demselben Gehäuse untergebracht sein. Der Begriff "extern" ist hier also auf die externe Arbeitsweise der Testeinrichtung bezogen.
  • Bezüglich der Ausgestaltung der Testeinrichtung wird es als vorteilhaft angesehen, wenn die externe Testeinrichtung geeignet ist, ein Testtelegramm, das einen Transaktionscode und zumindest einen Transaktionswert, der sich auf den durch den Transaktionscode definierten Programmierbefehl bezieht, zu erzeugen und an die Steuerungs- und/oder Regelungseinrichtung zu senden, und die externe Testeinrichtung außerdem geeignet ist zu prüfen, ob ein in einem Ergebnistelegramm der Steuerungs- und/oder Regelungseinrichtung enthaltenes Transaktionsergebnis die korrekte Anwendung des Programmierbefehls auf den zumindest einen Transaktionswert anzeigt. Wie bereits erwähnt, ist eine Übertragung von Testsignalen in Form von Telegrammen besonders einfach und damit vorteilhaft.
  • Darüber hinaus wird es als vorteilhaft angesehen, wenn die externe Testeinrichtung derart ausgestaltet ist, dass sie mindestens einen Transaktionscode mit jeweils zumindest einem Transaktionswert für jeden Programmierbefehl erzeugt, der einen Transaktionswert verarbeiten kann und in dem Steuerprogramm der Steuerungs- und/oder Regelungseinrichtung zumindest einmal verwendet wird.
  • Um die Geschwindigkeit beim Testen der Steuerungs- und/oder Regelungseinrichtung zu erhöhen, wird es als vorteilhaft angesehen, wenn die externe Testeinrichtung derart ausgestaltet ist, dass sie mindestens einen Transaktionscode mit jeweils zumindest einem Transaktionswert ausschließlich für alle solchen Programmierbefehle erzeugt, die einen Transaktionswert verarbeiten können und in dem Steuerprogramm der Steuerungs- und/oder Regelungseinrichtung zumindest einmal verwendet worden sind. Bei dieser Ausgestaltung wird also nur der Teil der Programmierbefehle der Programmiersprache zu einem Test herangezogen, nämlich der Teil, der tatsächlich in dem Steuerprogramm der Steuerungs- und/oder Regelungseinrichtung tatsächlich eingesetzt worden ist.
  • Die Erfindung bezieht sich darüber hinaus auf eine Testeinrichtung für die oben beschriebene Anordnung. Erfindungsgemäß ist diesbezüglich vorgesehen, dass die externe Testeinrichtung geeignet ist, ein Testtelegramm zu erzeugen und an die Steuerungs- und/oder Regelungseinrichtung zu übermitteln, wobei das Testtelegramm einen Transaktionscode enthält, der einen Programmierbefehl der vorgegebenen Programmiersprache, in der das Steuerprogramm der Steuerungs- und/oder Regelungseinrichtung programmiert ist, definiert und wobei die externe Testeinrichtung außerdem geeignet ist, ein Ergebnistelegramm der Steuerungs- und/oder Regelungseinrichtung zu empfangen und auf Korrektheit der Anwendung des Programmierbefehls zu überprüfen.
  • Bezüglich der Vorteile der erfindungsgemäßen Testeinrichtung sei auf die obigen Ausführungen im Zusammenhang mit der erfindungsgemäßen Anordnung sowie im Zusammenhang mit der erfindungsgemäßen Steuerungs- und/oder Regelungseinrichtung verwiesen.
  • Die Erfindung bezieht sich darüber hinaus auf ein Verfahren zum Testen einer Steuerungs- und/oder Regelungseinrichtung, wie sie oben beschrieben worden ist. Erfindungsgemäß ist vorgesehen, dass ein Testtelegramm erzeugt wird und an die Steuerungs- und/oder Regelungseinrichtung übermittelt wird, wobei das Testtelegramm einen Transaktionscode enthält, der einen Programmierbefehl der Programmiersprache, in der das Steuerprogramm der Steuerungs- und/oder Regelungseinrichtung programmiert ist, definiert, der Programmierbefehl der Programmiersprache von der Steuerungs- und/oder Regelungseinrichtung ausgeführt wird und ein Ergebnistelegramm der Steuerungs- und/oder Regelungseinrichtung empfangen und auf Korrektheit der Anwendung des Programmierbefehls überprüft wird.
  • Bezüglich der Vorteile des erfindungsgemäßen Verfahrens sei auf die obigen Ausführungen im Zusammenhang mit der erfindungsgemäßen Steuerungs- und/oder Regelungseinrichtung verwiesen.
  • Die Erfindung wird nachfolgend anhand von Ausführungsbeispielen näher erläutert; dabei zeigen beispielhaft
  • 1 ein erstes Ausführungsbeispiel für eine erfindungsgemäße Anordnung, die ein Ausführungsbeispiel für eine erfindungsgemäße Steuerungs- und/oder Regelungseinrichtung sowie ein Ausführungsbeispiel für eine erfindungsgemäße Testeinrichtung aufweist,
  • 2 ein zweites Ausführungsbeispiel für eine erfindungsgemäße Anordnung, bei der die Testeinrichtung durch ein in der Firmware der Steuerungs- und/oder Regelungseinrichtung gespeichertes Testsoftwaremodul gebildet ist,
  • 3 ein drittes Ausführungsbeispiel für eine erfindungsgemäße Anordnung, bei der die Testeinrichtung durch ein in einem Speicher gespeichertes Testsoftwaremodul gebildet ist, und
  • 4 ein viertes Ausführungsbeispiel für eine erfindungsgemäße Anordnung, bei der die Testeinrichtung ebenfalls durch ein in einem Speicher gespeichertes Testsoftwaremodul gebildet ist.
  • In den Figuren werden der Übersicht halber für identische oder vergleichbare Komponenten stets dieselben Bezugszeichen verwendet.
  • Die 1 zeigt eine Steuerungs- und/oder Regelungseinrichtung 10, die eine Recheneinrichtung 15 umfasst. An die Recheneinrichtung 15 ist ein Speicher 20 angeschlossen, in dem ein Steuerprogramm 25 abgespeichert ist. Das Steuerprogramm 25 ist durch eine Vielzahl an Programmierbefehlen einer vorgegebenen Programmiersprache gebildet, von denen beispielhaft sechs Programmierbefehle in der 1 dargestellt und mit dem Bezugszeichen PB gekennzeichnet sind.
  • Die Recheneinrichtung 15 steht mit einer Kommunikationsschnittstelle 30 in Verbindung, an die ein oder mehrere Geräte 35 angeschlossen werden können, die von der Steuerungs- und/oder Regelungseinrichtung 10 gesteuert und/oder geregelt werden sollen.
  • Darüber hinaus ist die Steuerungs- und/oder Regelungseinrichtung 10 mit einem Testmodul 40 ausgestattet, das sowohl mit der Recheneinrichtung 15 als auch mit der Kommunikationsschnittstelle 30 in Verbindung steht. Die Aufgabe des Testmoduls 40 besteht darin, die Recheneinrichtung 15 dahingehend zu testen, ob diese in der Lage ist, die Programmierbefehle PB, auf denen das Steuerprogramm 25 basiert, richtig auszuführen.
  • In der 1 lässt sich darüber hinaus eine externe Testeinrichtung 50 erkennen, die mit einer Referenzrecheneinrichtung 55 sowie einem Referenzspeicher 60 ausgestaltet ist. In dem Referenzspeicher 60 befindet sich ein Testprogramm 65, das die Referenzrecheneinrichtung 55 zum Testen der Steuerungs- und/oder Regelungseinrichtung 10 ausführen kann.
  • Die Anordnung gemäß 1 lässt sich beispielsweise wie folgt betreiben:
    Soll die Steuerungs- und/oder Regelungseinrichtung 10 getestet werden, so wird die Referenzrecheneinrichtung 55 das Testprogramm 65 ausführen. Bei der Ausführung des Testprogramms 65 wird die Referenzrecheneinrichtung 55 im Rahmen eines jeden Testschrittes jeweils einen Programmierbefehl PB auswählen, der in dem Steuerprogramm 25, das in dem Speicher 20 gespeichert ist, verwendet worden ist. Dabei wird die Referenzrecheneinrichtung 55 dem Programmierbefehl PB einen oder mehrere Transaktionswerte TW zuordnen, auf die der Programmierbefehl PB angewandt werden soll. Die Referenzrecheneinrichtung 55 ordnet dem Programmierbefehl PB einen Transaktionscode TC zu, der den Programmierbefehl PB definiert und erzeugt ein Testtelegramm TTG, das den Transaktionscode TC sowie den oder die Transaktionswerte TW enthält. Das Testtelegramm TTG(TC, TW) wird von der Referenzrecheneinrichtung 55 über eine Kommunikationsverbindung 70 zu der Kommunikationsschnittstelle 30 der Steuerungs- und/oder Regelungseinrichtung 10 übersandt. Die Kommunikationsschnittstelle 30 extrahiert den Transaktionscode TC sowie den oder die Transaktionswerte TW und übermittelt diese an das Testmodul 40. Das Testmodul 40 erkennt anhand des Transaktionscodes TC, welcher Programmierbefehl PB von der externen Testeinrichtung 50 ausgewählt worden ist und fordert die Recheneinrichtung 15 auf, den entsprechenden Programmierbefehl PB auszuführen und diesen auf den oder die Transaktionswerte TW anzuwenden.
  • Die Recheneinrichtung 15 wird – unabhängig von dem Steuerprogramm 25 – den Programmierbefehl PB ausführen und auf den oder die Transaktionswerte TW anwenden und ein Transaktionsergebnis TE bilden, das zu dem Testmodul 40 zurückgesandt wird. Das Testmodul 40 leitet das Transaktionsergebnis TE zur Kommunikationsschnittstelle 30, die mit dem Transaktionsergebnis TE ein Ergebnistelegramm ETG(TE) bildet und dieses zu der externen Testeinrichtung 50 übersendet.
  • Die Referenzrecheneinrichtung 55 hat parallel zur Recheneinrichtung 15 ebenfalls den Programmierbefehl PB auf den oder die Transaktionswerte TW angewandt und ein Referenztransaktionsergebnis TE’ gebildet; alternativ kann das Referenztransaktionsergebnis TE’ auch in einem Speicher, beispielsweise dem Referenzspeicher 60, hinterlegt sein und von der Referenzrecheneinrichtung 55 zu Vergleichszwecken lediglich ausgelesen werden. Sobald das Transaktionsergebnis TE des Testmoduls 40 in der Referenzrecheneinrichtung 55 eingetroffen ist, kann diese das Transaktionsergebnis TE mit dem selbst gebildeten oder ausgelesenen Referenztransaktionsergebnis TE’ vergleichen und prüfen, ob beide Transaktionsergebnisse übereinstimmen. Ist dies der Fall, so schließt die Referenzrecheneinrichtung 55 daraus, dass die Recheneinrichtung 15 der Steuerungs- und/oder Regelungseinrichtung 10 in der Lage ist, den Programmierbefehl PB richtig anzuwenden. In diesem Fall wird sie, gesteuert von dem Testprogramm 65, entweder einen anderen Programmierbefehl der Programmiersprache für einen weiteren Test auswählen oder aber alternativ anhand desselben Programmierbefehls einen weiteren Testschritt durchführen, bei dem derselbe Programmierbefehl PB mit einem oder mehreren anderen Transaktionswerten durchgeführt wird.
  • Stellt die Referenzrecheneinrichtung 55, gesteuert von dem Testprogramm 65, hingegen fest, dass das selbst gebildete Referenztransaktionsergebnis TE’ von dem Transaktionsergebnis TE der Recheneinrichtung 15 abweicht, so erzeugt es an einem Ausgang 50a ein Fehlersignal F. In der beschriebenen Weise wird die Referenzrecheneinrichtung 55 vorzugsweise alle Programmierbefehle PB testen, die in dem Steuerprogramm 25 der Steuerungs- und/oder Regelungseinrichtung 10 verwendet worden sind. Solche Programmierbefehle, die zwar zu der vorgegebenen Programmiersprache des Steuerprogramms 25 gehören, jedoch in diesem Steuerprogramm 25 nicht verwendet worden sind, müssen von der Referenzrecheneinrichtung 55 nicht getestet werden. Selbstverständlich ist es dennoch möglich, dass die Referenzrecheneinrichtung 55 – gesteuert von dem Testprogramm 65 – einen erweiterten Test vornimmt, um die richtige Arbeitsweise der Recheneinrichtung 15 zu prüfen, und in diesem Zusammenhang auch die übrigen Programmierbefehle der Programmiersprache für einen Test heranzieht, die in dem Steuerprogramm 25 nicht verwendet worden sind.
  • Die 2 zeigt eine weitere Anordnung mit einer Steuerungs- und/oder Regelungseinrichtung 10 sowie einer externen Testeinrichtung 50. Im Unterschied zu dem Ausführungsbeispiel gemäß 1 ist das Testmodul 40 keine separate Komponente, die mit der Recheneinrichtung 15 in Verbindung steht; statt dessen wird das Testmodul durch ein Testsoftwaremodul 41 gebildet, das in der Firmware 151 der Recheneinrichtung 15 implementiert ist. Bei diesem Ausführungsbeispiel werden also die Transaktionscodes TC sowie die Transaktionswerte TW von der Kommunikationsschnittstelle 30 unmittelbar zur Recheneinrichtung 15 übertragen. Die Recheneinrichtung 15 wird, gesteuert durch das Testsoftwaremodul 41, den Transaktionscode TC auswerten und den durch den Transaktionscode TC definierten Programmierbefehl PB auf den oder die Transaktionswerte TW anwenden. Das dabei entstehende Transaktionsergebnis TE gelangt zu der Kommunikationsschnittstelle 30 und wird in Form eines Ergebnistelegramms ETG(TE) an die externe Testeinrichtung 50 übersandt, die das rückgemeldete Testergebnis TE mit dem selbst gebildeten Referenztransaktionsergebnis TE’ vergleicht. Stimmen beide Transaktionsergebnisse überein, so wird der Test fortgesetzt. Andernfalls wird an dem Ausgang 50a der Testeinrichtung 50 ein Fehlersignal F erzeugt.
  • Die 3 zeigt ein Ausführungsbeispiel für eine externe Testeinrichtung 50 sowie eine Steuerungs- und/oder Regelungseinrichtung 10, bei der das Testsoftwaremodul 41 nicht in der Firmware 151 der Recheneinrichtung 15 implementiert ist, sondern statt dessen in einem weiteren Speicher 21 der Steuerungs- und/oder Regelungseinrichtung 10 gespeichert ist. Führt die Recheneinrichtung 15 das Testsoftwaremodul 41 in dem Speicher 21 aus, so wird – gesteuert von der externen Testeinrichtung 50 – ein Test durchgeführt, wie er im Zusammenhang mit den 1 und 2 bereits oben beispielhaft erläutert worden ist. Bezüglich des Testablaufs kann also auf die obigen Ausführungen verwiesen werden.
  • Die 4 zeigt ein Ausführungsbeispiel mit einer Steuerungs- und/oder Regelungseinrichtung 10, bei der das Testsoftwaremodul 41 in dem Speicher 20 gespeichert ist, in dem auch das Steuerprogramm 25 der Steuerungs- und/oder Regelungseinrichtung abgespeichert ist. Führt die Recheneinrichtung 15 das Testsoftwaremodul 41 aus, so wird in Zusammenarbeit mit der externen Testeinrichtung 50 ein Testmodus möglich, mit dem die Testeinrichtung 50 die korrekte Arbeitsweise der Recheneinrichtung 15 mit Blick auf die korrekte Abarbeitung der Programmierbefehle PB testen kann. Der Testablauf kann dem Testablauf entsprechen, wie er beispielhaft im Zusammenhang mit den 13 erläutert worden ist.
  • Bei den Ausführungsbeispielen gemäß den 1 bis 4 können beispielsweise alle arithmetischen, Schiebe- und Rotiere-Funktionen sowie auch alle logischen Verknüpfungen in einfacher Weise getestet werden.
  • Soll beispielsweise der Programmierbefehl "+I" (INT-Addition) getestet werden, so kann für diesen Befehl beispielsweise der Transaktionscode "1" gewählt werden. Wird mit dem Programmierbefehl ein erster Transaktionswert = 100 und ein zweiter Transaktionswert = 1 an die Recheneinrichtung 15 übersandt, so wird diese bei korrekter Abarbeitung zu dem Transaktionsergebnis "101" kommen und dieses zurücksenden.
  • In entsprechender Weise können die Programmierbefehle "–I" (INT-Subtraktion), "*I" (INT-Multiplikation) oder "/I" (INT-Division) getestet werden.
  • Soll der Programmierbefehl "SLW" (Schiebe links wortweise) getestet werden, so kann beispielsweise der Transaktionscode "20" verwendet werden. Mit den beiden Transaktionswerten "255" und "2" muss die Recheneinrichtung 15 bei korrekter Abarbeitung beispielsweise zu dem Transaktionsergebnis "1020" kommen und dieses zurückliefern.
  • Soll der Programmierbefehl "UND" (UND-Verknüpfung) getestet werden, so kann beispielsweise der Transaktionscode "25" verwendet werden. Mit den beiden Transaktionswerten "1" und "1" muss die Recheneinrichtung 15 bei korrekter Abarbeitung beispielsweise zu dem Transaktionsergebnis "1" kommen und dieses zurückliefern.
  • Obwohl die Erfindung im Detail durch die bevorzugten Ausführungsbeispiele näher illustriert und beschrieben wurde, so ist die Erfindung nicht durch die offenbarten Beispiele eingeschränkt und andere Variationen können vom Fachmann hieraus abgeleitet werden, ohne den Schutzumfang der Erfindung zu verlassen.
  • 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 Nicht-Patentliteratur
    • Norm EN61131 [0002]
    • Norm IEC61131 [0002]

Claims (10)

  1. Steuerungs- und/oder Regelungseinrichtung (10) mit – einem Speicher (20), in dem ein Steuerprogramm (25) abgespeichert ist, und – einer Recheneinrichtung (15), die mit dem Speicher (20) in Verbindung steht und das Steuerprogramm (25) für den Betrieb der Steuerungs- und/oder Regelungseinrichtung (10) ausführen kann, – wobei das Steuerprogramm (25) die Arbeitsweise der Steuerungs- und/oder Regelungseinrichtung (10) festlegt und mit Programmierbefehlen (PB) einer vorgegebenen Programmiersprache programmiert ist, dadurch gekennzeichnet, dass – die Steuerungs- und/oder Regelungseinrichtung (10) ein Testmodul (40) aufweist, das einen externen Test durch eine externe Testeinrichtung (50) über eine Kommunikationsschnittstelle (30) der Steuerungs- und/oder Regelungseinrichtung (10) ermöglicht, – wobei das Testmodul (40) derart ausgestaltet ist, dass es den Empfang eines Transaktionscodes (TC), der einen Programmierbefehl (PB) der vorgegebenen Programmiersprache definiert, von der externen Testeinrichtung (50) ermöglicht und die Recheneinrichtung (15) veranlasst, diesen Programmierbefehl (PB) nach Empfang des Transaktionscodes (TC) zu Testzwecken auszuführen.
  2. Steuerungs- und/oder Regelungseinrichtung nach Anspruch 1, dadurch gekennzeichnet, dass das Testmodul (40) derart ausgestaltet ist, dass es die Steuerungs- und/oder Regelungseinrichtung (10) befähigt, über die Kommunikationsschnittstelle (30) zumindest einen Transaktionswert (TW), der sich auf den durch den Transaktionscode (TC) definierten Programmierbefehl (PB) bezieht, zu empfangen, den Programmierbefehl (PB) auf den zumindest einen Transaktionswert (TW) unter Bildung eines Transaktionsergebnisses (TE) anzuwenden und das Transaktionsergebnis (TE) an die externe Testeinrichtung (50) zurückzumelden.
  3. Steuerungs- und/oder Regelungseinrichtung nach Anspruch 2, dadurch gekennzeichnet, dass das Testmodul (40) derart ausgestaltet ist, dass es die Steuerungs- und/oder Regelungseinrichtung (10) befähigt, über die Kommunikationsschnittstelle (30) ein Testtelegramm (TTG) zu empfangen und auszuwerten, das den Transaktionscode (TC) und den zumindest einen Transaktionswert (TW) enthält, und ein Ergebnistelegramm (ETG) an die externe Testeinrichtung (50) zu senden, das das Transaktionsergebnis (TE) enthält.
  4. Steuerungs- und/oder Regelungseinrichtung nach einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass das Testmodul durch ein Softwaremodul (41) gebildet ist, das in dem Speicher (20) oder einem anderen Speicher (21) der Steuerungs- und/oder Regelungseinrichtung (10) gespeichert ist.
  5. Steuerungs- und/oder Regelungseinrichtung nach einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass es sich bei der Programmiersprache um die AWL(Anweisungsliste)-Programmiersprache, die KOP(Kontaktplan)-Programmiersprache, die FBS(Funktionsbaustein)-Programmiersprache, die AS(Ablaufsteuerung)-Programmiersprache oder die ST(Strukturierter Text)-Programmiersprache handelt.
  6. Anordnung mit einer Steuerungs- und/oder Regelungseinrichtung (10) nach einem der voranstehenden Ansprüche und einer daran angeschlossenen externen Testeinrichtung (50), dadurch gekennzeichnet, dass – die externe Testeinrichtung (50) geeignet ist, ein Testtelegramm (TTG) zu erzeugen und an die Steuerungs- und/oder Regelungseinrichtung (10) zu übermitteln, – wobei das Testtelegramm (TTG) einen Transaktionscode (TC) enthält, der einen Programmierbefehl (PB) der vorgegebenen Programmiersprache, in der das Steuerprogramm (25) der Steuerungs- und/oder Regelungseinrichtung (10) programmiert ist, definiert und – wobei die externe Testeinrichtung (50) außerdem geeignet ist, ein Ergebnistelegramm (ETG) der Steuerungs- und/oder Regelungseinrichtung (10) zu empfangen und auf Korrektheit der Anwendung des Programmierbefehls (PB) zu überprüfen.
  7. Anordnung nach Anspruch 6, dadurch gekennzeichnet, dass – die externe Testeinrichtung (50) geeignet ist, ein Testtelegramm (TTG), das einen Transaktionscode (TC) und zumindest einen Transaktionswert (TW), der sich auf den durch den Transaktionscode (TC) definierten Programmierbefehl (PB) bezieht, zu erzeugen und an die Steuerungs- und/oder Regelungseinrichtung (10) zu senden, und – die externe Testeinrichtung (50) außerdem geeignet ist zu prüfen, ob ein in einem Ergebnistelegramm (ETG) der Steuerungs- und/oder Regelungseinrichtung (10) enthaltenes Transaktionsergebnis (TE) die korrekte Anwendung des Programmierbefehls (PB) auf den zumindest einen Transaktionswert (TW) anzeigt.
  8. Anordnung nach Anspruch 7 dadurch gekennzeichnet, dass die externe Testeinrichtung (50) derart ausgestaltet ist, dass sie mindestens einen Transaktionscode (TC) mit jeweils zumindest einem Transaktionswert (TW) für jeden Programmierbefehl (PB) erzeugt, der einen Transaktionswert (TW) verarbeiten kann und in dem Steuerprogramm (25) der Steuerungs- und/oder Regelungseinrichtung (10) zumindest einmal verwendet wird.
  9. Testeinrichtung für eine Anordnung nach einem der voranstehenden Ansprüche 6–8, dadurch gekennzeichnet, dass – die externe Testeinrichtung (50) geeignet ist, ein Testtelegramm (TTG) zu erzeugen und an die Steuerungs- und/oder Regelungseinrichtung (10) zu übermitteln, – wobei das Testtelegramm (TTG) einen Transaktionscode (TC) enthält, der einen Programmierbefehl (PB) der vorgegebenen Programmiersprache, in der das Steuerprogramm (25) der Steuerungs- und/oder Regelungseinrichtung (10) programmiert ist, definiert und – wobei die externe Testeinrichtung (50) außerdem geeignet ist, ein Ergebnistelegramm (ETG) der Steuerungs- und/oder Regelungseinrichtung (10) zu empfangen und auf Korrektheit der Anwendung des Programmierbefehls (PB) zu überprüfen.
  10. Verfahren zum Testen einer Steuerungs- und/oder Regelungseinrichtung (10) nach einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass – ein Testtelegramm (TTG) erzeugt wird und an die Steuerungs- und/oder Regelungseinrichtung (10) übermittelt wird, wobei das Testtelegramm (TTG) einen Transaktionscode (TC) enthält, der einen Programmierbefehl (PB) der Programmiersprache, in der das Steuerprogramm (25) der Steuerungs- und/oder Regelungseinrichtung (10) programmiert ist, definiert, – der Programmierbefehl (PB) der Programmiersprache von der Steuerungs- und/oder Regelungseinrichtung (10) ausgeführt wird und – ein Ergebnistelegramm (ETG) der Steuerungs- und/oder Regelungseinrichtung (10) empfangen und auf Korrektheit der Anwendung des Programmierbefehls (PB) überprüft wird.
DE201110080590 2011-08-08 2011-08-08 Steuerungs- und/oder Regelungseinrichtung Ceased DE102011080590A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE201110080590 DE102011080590A1 (de) 2011-08-08 2011-08-08 Steuerungs- und/oder Regelungseinrichtung
PCT/EP2012/064819 WO2013020844A1 (de) 2011-08-08 2012-07-27 Steuerungs- und/oder regelungseinrichtung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE201110080590 DE102011080590A1 (de) 2011-08-08 2011-08-08 Steuerungs- und/oder Regelungseinrichtung

Publications (1)

Publication Number Publication Date
DE102011080590A1 true DE102011080590A1 (de) 2013-02-14

Family

ID=46754392

Family Applications (1)

Application Number Title Priority Date Filing Date
DE201110080590 Ceased DE102011080590A1 (de) 2011-08-08 2011-08-08 Steuerungs- und/oder Regelungseinrichtung

Country Status (2)

Country Link
DE (1) DE102011080590A1 (de)
WO (1) WO2013020844A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016120307A1 (de) * 2016-10-25 2018-04-26 Endress+Hauser SE+Co. KG Verfahren und System zum Überprüfen eines Feldgeräts der Automatisierungstechnik
EP4276551A1 (de) * 2022-05-13 2023-11-15 Siemens Aktiengesellschaft Applikationsmodul für eine steuereinrichtung

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3630959A1 (de) * 1986-09-11 1988-03-24 Christian Dipl Ing Nitschke Programmier- und testeinheit fuer speicherprogrammierbare steuerungen
DE59008260D1 (de) * 1990-04-02 1995-02-23 Siemens Ag Automatisierungsgerät mit Test in einzelnen Schritten.

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Norm EN61131
Norm IEC61131
VL PROZESSLEITTECHNIK I: DIN EN 61131 Ein abstraktes, vereinheitlichendes Modell einer speicherprogrammierbaren Steuerung (SPS). [recherchiert am 18.04.2012] 12.04.2011. Im Internet: *
VL PROZESSLEITTECHNIK I: DIN EN 61131 Ein abstraktes, vereinheitlichendes Modell einer speicherprogrammierbaren Steuerung (SPS). [recherchiert am 18.04.2012] 12.04.2011. Im Internet: <URL: http://www.et.tu-dresden.de/ifa/uploads/media/PLT1_002-IEC61131-Architektur_01.pdf >

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016120307A1 (de) * 2016-10-25 2018-04-26 Endress+Hauser SE+Co. KG Verfahren und System zum Überprüfen eines Feldgeräts der Automatisierungstechnik
EP4276551A1 (de) * 2022-05-13 2023-11-15 Siemens Aktiengesellschaft Applikationsmodul für eine steuereinrichtung
WO2023217490A1 (de) * 2022-05-13 2023-11-16 Siemens Aktiengesellschaft Applikationsmodul für eine steuereinrichtung

Also Published As

Publication number Publication date
WO2013020844A1 (de) 2013-02-14

Similar Documents

Publication Publication Date Title
EP2801872B1 (de) Testeinrichtung zum Test eines virtuellen Steuergeräts
DE102020205539A1 (de) Verfahren und Vorrichtung zum Prüfen eines technischen Systems
DE102011081477A1 (de) Stellwerksrechner
DE102012212304A1 (de) Anordnung mit einem Mikroprozessorsystem
DE102004014290A1 (de) Verfahren zur Erstellung von Abläufen zum Testen einer Software
EP2221697B1 (de) Verfahren zum Test eines Steuergeräts und Testvorrichtung
DE102014219711A1 (de) Verfahren zur Kraftwerkssimulation
EP3058425A1 (de) Vorrichtung und verfahren zur änderung von betriebseinstellungen einer technischen anlage
DE102011080590A1 (de) Steuerungs- und/oder Regelungseinrichtung
DE102014016180A1 (de) Verfahren und Einrichtung zur Verwaltung und Konfiguration von Feldgeräten einer Automatisierungsanlage
EP3082001B1 (de) Verfahren zum erweitern einer automatisierungseinrichtung mittels einem virtuellen feldgerät sowie automatisierungseinrichtung
EP2126644B1 (de) Verfahren zur umwandlung von kontaktplänen
EP3575898B1 (de) Speicherprogrammierbare steuerung und betriebsverfahren für virtuelle speicherprogrammierbare steuerung und computerprogrammprodukt
EP2796953B1 (de) Numerische Steuerung mit Anzeige einer Vorschau bei Änderungen des Teileprogramms
WO2015124320A1 (de) Dynamisches speicherprogrammierbares steuergerät zum emulieren eines steuergerätes
EP3044667A1 (de) Verfahren zur verifizierung generierter software sowie verifizierungseinrichtung zum durchführen eines solchen verfahrens
DE102014217561B4 (de) Verfahren und Anordnung zum Test eines Multimediagerätes
EP3779619B1 (de) Verfahren und vorrichtung zur bestimmung emergenter risiken eines technischen systems
EP2864845B1 (de) Automatisierte rekonfiguration eines ereignisdiskreten regelkreises
DE102020205540A1 (de) Verfahren und Vorrichtung zum Prüfen eines technischen Systems
EP2360576B1 (de) Verfahren und Einrichtung zur Projektierung einer industriellen Automatisierungsanordnung
EP2908197A1 (de) Verfahren und Engineering-System zum Laden von Objekten eines Steuerprogramms in ein Automatisierungsgerät
DE102014105109A1 (de) Verfahren und Vorrichtung zum Erzeugen und Abarbeiten von Testfällen
EP2811349A1 (de) Verfahren zum Betreiben eines Automatisierungssystems
DE2639057A1 (de) Programmierbare folgesteuereinrichtung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final
R003 Refusal decision now final

Effective date: 20150106