DE102007062915A1 - Storage programmable control i.e. digitally operated electronic system, operating method for controlling automation system, involves switching functional block at feasible state if external information corresponds to internal information - Google Patents
Storage programmable control i.e. digitally operated electronic system, operating method for controlling automation system, involves switching functional block at feasible state if external information corresponds to internal information Download PDFInfo
- Publication number
- DE102007062915A1 DE102007062915A1 DE200710062915 DE102007062915A DE102007062915A1 DE 102007062915 A1 DE102007062915 A1 DE 102007062915A1 DE 200710062915 DE200710062915 DE 200710062915 DE 102007062915 A DE102007062915 A DE 102007062915A DE 102007062915 A1 DE102007062915 A1 DE 102007062915A1
- Authority
- DE
- Germany
- Prior art keywords
- function block
- key information
- function
- executable
- external
- 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.)
- Withdrawn
Links
- 238000011017 operating method Methods 0.000 title 1
- 238000000034 method Methods 0.000 claims abstract description 18
- 230000006870 function Effects 0.000 claims description 270
- 238000012795 verification Methods 0.000 abstract 1
- 238000011161 development Methods 0.000 description 15
- 230000018109 developmental process Effects 0.000 description 15
- 230000007246 mechanism Effects 0.000 description 11
- 238000013475 authorization Methods 0.000 description 4
- 238000005538 encapsulation Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 239000007788 liquid Substances 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/058—Safety, monitoring
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13099—Function block, OOP, various functions grouped, called by name as servo
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24165—Use codes to activate features of controller
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
Abstract
Description
Die vorliegende Erfindung betrifft ein Verfahren zum Betreiben einer Speicherprogrammierbaren Steuerung gemäß dem Oberbegriff des Anspruchs 1 sowie ein Anwenderprogramm zur Steuerung einer Anlage gemäß dem Oberbegriff des Anspruchs 11.The The present invention relates to a method of operating a programmable logic controller according to the generic term of claim 1 and a user program for controlling a system according to the generic term of claim 11.
Speicherprogrammierbare Steuerungen (SPS) werden zur Steuerung und/oder Regelung (im Folgenden allgemein als „Steuerung" bezeichnet) einer Maschine oder Anlage (im Folgenden allgemein als „Anlage" bezeichnet) eingesetzt. Eine Speicherprogrammierbare Steuerung ist dabei ein digital arbeitendes, elektronisches System, das einen programmierbaren Speicher zur internen Speicherung von anwenderorientierten Steuerungsanweisungen (Anwenderprogramm) aufweist. Durch solche Anwenderprogramme können verschiedene Funktionen, wie beispielsweise eine Ablaufsteuerung, eine Zählfunktion, eine arithmetische Funktion, eine Verknüpfungssteuerung, etc. implementiert werden, um durch digitale oder analoge Eingangs- und Ausgangssignale der Speicherprogrammierbaren Steuerung eine Anlage zu steuern. Neben den eigentlichen Steuerungsfunktionen führen Speicherprogrammierbare Steuerungen oftmals auch noch weitere Funktionen, wie beispielsweise das Anzeigen von Alarmmeldungen und/oder Statusmeldungen, die Dokumentation des zeitlichen Ablaufs von Meldungen (z. B. Status- und/oder Alarmmeldungen) der Anlage und/oder die Abwicklung der Kommunikation mit den Komponenten der Anlage, aus.Programmable Controllers (PLC) are used for control and / or regulation (hereafter commonly referred to as "controller") Machine or plant (hereinafter generally referred to as "plant") used. A programmable logic controller is a digitally working, electronic system that has a programmable memory for internal Storage of user-oriented control instructions (user program) having. Such application programs allow various functions, such as a sequencer, a counting function, an arithmetic Function, a link control, etc. can be implemented by digital or analogue input and outputs of the programmable logic controller a Control system. In addition to the actual control functions lead programmable Controls often also other functions, such as the display of alarm messages and / or status messages, the documentation the chronological sequence of messages (eg status and / or alarm messages) the installation and / or the handling of communication with the components the plant, off.
Beispielsweise ist die Speicherprogrammierbare Steuerung beim Einsatz in einer Anlage mit Sensoren und Aktoren mit diesen Sensoren und Aktoren über eine Kommunikationsverbindung (analog oder digital) verbunden. Solche Sensoren und Aktoren können insbesondere als Feldgeräte ausgebildet sein, die über einen Feldbus (z. B. Profibus®, HART®, Foundation® Fieldbus, etc.) mit der Speicherprogrammierbaren Steuerung verbunden sind. Sensoren, wie beispielsweise Füllstandsmessgeräte, Temperaturmessgeräte, etc., dienen zur Erfassung von Werten bzw. Variablen einer Anlage. Aktoren, wie beispielsweise Ventile oder Pumpen, dienen zur Beeinflussung von Werten einer Anlage. Die Sensoren dienen dabei als Geber von Signalen und sind dementsprechend mit einem Eingang der Speicherprogrammierbaren Steuerung verbunden. Die Aktoren bzw. Stellglieder werden von der Speicherprogrammierbaren Steuerung in Abhängigkeit von den erfassten Sensorsignalen gesteuert und sind dementsprechend mit einem Ausgang der Speicherprogrammierbaren Steuerung verbunden.For example, when used in a system with sensors and actuators, the programmable logic controller is connected to these sensors and actuators via a communication link (analog or digital). Such sensors and actuators may be designed as field devices via a field bus (z. B. ® Profibus, HART ®, ® Foundation Fieldbus, etc.) are connected to the programmable logic controller in particular. Sensors, such as level gauges, temperature measuring devices, etc., are used to record values or variables of a system. Actuators, such as valves or pumps, are used to influence the values of a system. The sensors serve as encoders of signals and are accordingly connected to an input of the programmable logic controller. The actuators or actuators are controlled by the programmable logic controller in response to the detected sensor signals and are accordingly connected to an output of the programmable logic controller.
Speicherprogrammierbare Steuerungen weisen ein Betriebssystem auf, das in der Regel von dem Hersteller der Speicherprogrammierbaren Steuerung mitgeliefert wird. Ferner ist auf der Speicherprogrammierbaren Steuerung ein Anwenderprogramm implementiert, durch das eine Steueranweisungen ausgeführt werden. Daneben können durch das Anwenderprogramm, wie oberhalb erläutert wird, noch weitere Funktionen ausgeführt werden. Diese Steueranweisungen sind in dem Anwenderprogramm entsprechend der jeweiligen Anwendung implementiert. Das Betriebssystem sorgt dafür, dass die Eingänge, die von den Gebern (von Signalen) bereitgestellt werden, dem Anwenderprogramm zur Verfügung stehen, was auch als Lesen der Eingänge bezeichnet wird. Das Anwenderprogramm führt dann in Abhängigkeit von den Eingangswerten die Steueranweisungen aus. Hierbei verknüpft es die Eingangswerte und intern in der Speicherprogrammierbaren Steuerung gespeicherte Werte nach der im Anwenderprogramm gegebenen Logik und liefert als Ergebnis die Ausgangswerte. Das Schreiben der Ausgänge erfolgt dann wiederum durch das Betriebssystem. Das Lesen und Schreiben der Eingänge und Ausgänge durch das Betriebssystem erfolgt in der Regel zyklisch, es kann jedoch auch ereignisorientiert erfolgen.Programmable Controls have an operating system that is usually of the type Manufacturer of the Programmable Logic Controller is included. Further, on the programmable logic controller is a user program implemented by which a control statements are executed. In addition, you can through the user program, as explained above, even more functions accomplished become. These control statements are corresponding in the user program implemented by the respective application. The operating system provides for this, that the entrances, provided by the encoders (signals), the user program to disposal what is also called reading the inputs. The user program then leads in dependence from the input values the control statements. Here it links the Input values and internally in the programmable logic controller stored values according to the logic given in the user program and returns the output values as a result. The writing of the outputs takes place then again through the operating system. The reading and writing the entrances and outputs The operating system is usually cyclical, it can but also event-oriented.
Je nach Einsatzbereich und Anwendung müssen entsprechende Anwenderprogramme, durch welche die gewünschten Steuerungsfunktionalitäten ausführbar sind, bereitgestellt werden. Solche Anwenderprogramme werden von verschiedenen Herstellern angeboten. In den Anwenderprogrammen sind in der Regel jeweils eine Mehrzahl von einfachen Funktionen in Funktionsblöcke gruppiert. Insbesondere werden einfache Funktionen, wie beispielsweise UND-Funktionen, ODER-Funktionen, etc., derart miteinander verknüpft und in Funktionsblöcke gruppiert, dass durch die einzelnen Funktionsblöcke jeweils eine oder mehrere Steuerungsfunktion(en), wie beispielsweise eine PID-Funktion, oder auch anderweitige Funktionen bereitgestellt wird/werden. Ein Anwender kann dann die von dem Anwenderprogramm bereitgestellten Funktionen nutzen und je nach Anwendung in geeigneter Weise kombinieren.ever according to application and application, corresponding user programs, through which the desired Control functionalities are executable, to be provided. Such application programs are of various types Offered to manufacturers. In the user programs are usually each group a plurality of simple functions in function blocks. In particular, simple functions, such as AND functions, OR functions, etc., linked together in such a way and grouped into function blocks, that each of the individual function blocks one or more Control function (s), such as a PID function, or Other functions are / will be provided. A user can then use the functions provided by the user program use and combine according to the application in a suitable manner.
Das Erstellen von Anwenderprogrammen und von Funktionsblöcken der oben angegebenen Art ist mit Kosten und Aufwand verbunden. Um zu verhindern, dass die in einem Funktionsblock enthaltenen Funktionen und deren interne Verknüpfung für unbefugte Dritte einsehbar sind, werden Funktionsblöcke teilweise derart gekapselt, dass diese Informationen für Dritte nicht einsehbar sind. Dritte können dann beispielsweise nur Informationen über die Anzahl und Art der Eingänge und Ausgänge eines Funktionsblockes erhalten. Werden solche Funktionsblöcke durch einen unbefugten Dritten kopiert, so können sie trotz dieser Kapselung in eine andere Anwendung eingebunden und genutzt werden. Denn die oberhalb angegebene Kapselung verhindert nicht, dass der kopierte Funktionsblock in den Ablauf eines Programms einer Speicherprogrammierbaren Steuerung eingebunden und ausgeführt wird. Demnach besteht kein ausreichender Schutz davor, dass das Anwenderprogramm selbst oder einzelne Funktionsblöcke durch einen unbefugten Dritten aus dem Anwenderprogramm kopiert und ohne Berechtigung genutzt werden.The creation of user programs and function blocks of the type mentioned above is associated with costs and effort. In order to prevent the functions contained in a function block and their internal link being visible to unauthorized third parties, function blocks are partially encapsulated in such a way that this information is not visible to third parties. For example, third parties can only receive information about the number and type of inputs and outputs of a function block. If such function blocks are copied by an unauthorized third party, they can be integrated and used in another application despite this encapsulation. Because the above-mentioned encapsulation prevents not that the copied function block is involved in the execution of a program of a programmable logic controller and executed. Accordingly, there is insufficient protection against copying the user program itself or individual functional blocks by an unauthorized third party from the user program and used without authorization.
Demgemäß besteht die Aufgabe der vorliegenden Erfindung darin, eine unbefugte Weiterverbreitung und Nutzung von Funktionsblöcken, die in einem Anwenderprogramm vorgesehen sind, zu verhindern oder zumindest zu erschweren.Accordingly, there is the object of the present invention therein, an unauthorized retransmission and use of function blocks, which are provided in a user program to prevent or at least to complicate.
Die Aufgabe wird durch ein Verfahren gemäß Anspruch 1 und durch ein Anwenderprogramm gemäß Anspruch 11 gelöst. Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.The The object is achieved by a method according to claim 1 and by a User program according to claim 11 solved. Advantageous developments of the invention are specified in the subclaims.
Gemäß der vorliegenden Erfindung wird ein Verfahren zum Betreiben einer Speicherprogrammierbaren Steuerung bereitgestellt, wobei auf der Speicherprogrammierbaren Steuerung ein Anwenderprogramm zur Steuerung einer Anlage implementiert ist und wobei das Anwenderprogramm mindestens einen Funktionsblock, durch den mindestens eine Funktion ausführbar ist, aufweist. Der Funktionsblock weist dabei einen Zustand, in dem er ausführbar ist, und einen Zustand, in dem er nicht ausführbar ist, auf. Zur Schaltung des Funktionsblockes von dem nicht ausführbaren Zustand in den ausführbaren Zustand werden nachfolgende Schritte durchgeführt:
- A) Eingeben mindestens einer externen Schlüsselinformation über mindestens einen Eingang des Funktionsblockes;
- B) Verifizieren in dem Funktionsblock, ob die eingegebene mindestens eine externe Schlüsselinformation mindestens einer zugehörigen internen Schlüsselinformation entspricht, wobei die interne Schlüsselinformation in dem Funktionsblock derart hinterlegt ist, dass sie nicht über extern zugängliche Schnittstellen des Funktionsblockes zugänglich ist; und
- C) Schalten des Funktionsblockes in den ausführbaren Zustand nur dann, falls die externe Schlüsselinformation der internen Schlüsselinformation entspricht.
- A) inputting at least one external key information via at least one input of the function block;
- B) verifying in the function block whether the entered at least one external key information corresponds to at least one associated internal key information, wherein the internal key information is stored in the function block such that it is not accessible via externally accessible interfaces of the function block; and
- C) switching the function block into the executable state only if the external key information corresponds to the internal key information.
Dabei kann insbesondere vorgesehen sein, dass sich der Funktionsblock als Ausgangs- oder Grundzustand in dem nicht ausführbaren Zustand befindet und folglich nicht ausführbar bzw. nutzbar ist. Ein nicht ausführbarer Zustand bedeutet dabei, dass der Funktionsblock die darin vorgesehene(n) Funktion(en) nicht oder nicht korrekt ausführen kann. In dem ausführbaren Zustand hingegen wird/werden die in dem Funktionsblock enthaltene(n) Funktion(en) in korrekter Weise ausgeführt. Ein Anwender oder auch ein Programmteil, der oder das den Funktionsblock nutzen möchte, muss dann, je nach Ausgestaltung des Anwenderprogramms, vor der erstmaligen Ausführung (des Funktionsblockes), vor jeder Ausführung oder in vorbestimmten Zeitabständen die korrekte externe Schlüsselinformation eingeben (Schritt A)), um den Funktionsblock freizuschalten und in den ausführbaren Zustand zu setzen. Es kann insbesondere vorgesehen sein, dass die Schritte A) bis C) immer dann auszuführen sind, wenn ein Anwender oder ein Programmteil eine Ausführungsanfrage an den Funktionsblock stellen. Unter einer einmaligen Ausführung des Funktionsblockes wird dabei verstanden, dass dessen Programmschleife einmal durchlaufen wurde. Für den Fall, dass der Funktionsblock von einem Programmteil genutzt werden soll, d. h. dass ein Programmteil während dessen Ausführung eine Ausführungsanfrage an den Funktionsblock stellt, muss der Programmteil entsprechend angepasst sein, dass durch diesen Programmteil der Schritt des Eingebens (Schritt A)) ausführbar ist.there may be provided in particular that the function block as the initial or default state in the non-executable State is and therefore not executable or usable. One not executable State means that the function block has the function (s) provided therein. do not or do not execute correctly can. In the executable State, on the other hand, will / will be contained in the function block (s) Function (s) performed correctly. A user or too a part of the program that wants to use the function block must then, depending on the configuration of the user program, before the first time execution (of the functional block), before each execution or in predetermined intervals the correct external key information (step A)) to unlock the function block and in the executable Condition. In particular, it can be provided that the Steps A) to C) are always to be executed when a user or a program part, an execution request to the function block. Under a one-time execution of the Function block is understood that the program loop once was passed through. For the case that the function block is used by a program part should be, d. H. that a program part during its execution a execution request to the function block, the program part must be adapted accordingly be that through this program part the step of entering (step A)) executable is.
Ein berechtigter Benutzer, der über die externe Schlüsselinformation verfügt, kann den Funktionsblock folglich nutzen. Hingegen ist die externe Schlüsselinformation einem unbefugten Dritten in der Regel nicht bekannt, so dass dieser den Funktionsblock nicht in den ausführbaren Zustand schalten und nutzen kann. Vorzugsweise ist die mindestens eine, in dem Funktionsblock enthaltene Funktion eine Steuerungsfunktion bezüglich der Anlage.One authorized user who over the external key information features, can therefore use the function block. On the other hand, the external key information an unauthorized third party usually not known, so this one Do not switch the function block to the executable state and use it can. Preferably, the at least one is in the functional block contained function a control function with respect to the system.
Bei der vorliegenden Erfindung kann vorgesehen werden, dass die externe und/oder die interne Schlüsselfunktion spezifisch für einen bestimmten Funktionsblock eines bestimmten Anwenderprogramms gewählt wird. In diesem Fall kann, selbst wenn einem unbefugten Dritten die externe Schlüsselfunktion bekannt ist und er den Funktionsblock in einer Anwendung unbefugt nutzt, anhand der spezifischen Schlüsselfunktion identifiziert werden, aus welchem Anwenderprogramm der betreffende Funktionsblock kopiert wurde.at The present invention can provide that the external and / or the internal key function specific for a specific function block of a specific user program chosen becomes. In this case, even if an unauthorized third party the external key function is known and he the function block in an application without authorization uses, identified by the specific key function become from which user program the relevant function block was copied.
Die (externen und internen) Schlüsselinformationen können bei der vorliegenden Erfindung auf verschiedene Weise ausgestaltet sein. Sie müssen lediglich ermöglichen, dass bei dem Schritt des Verifizierens eine Prüfung dahingehend möglich ist, ob die eingegebene externe Schlüsselinformation korrekt ist und damit eine Berechtigung zur Nutzung des Funktionsblockes vorliegt. Der Schritt des Verifizierens kann dabei, wie auch aus der nachfolgenden Erläuterung hervorgeht, unter Anwendung von weiteren Operationen, insbesondere Funktionen, durchgeführt werden. Insbesondere können die Schlüsselinformationen in Form von Werten, insbesondere Signalen oder gespeicherten Daten, oder auch in Form von Funktionen ausgestaltet sein.The (external and internal) key information can configured in various ways in the present invention be. You only have to enable, that in the step of verifying a check is possible to whether the entered external key information is correct and thus an authorization to use the function block is present. The step of verifying can be, as well as the following explanation using further operations, in particular Functions to be performed. In particular, you can the key information in the form of values, in particular signals or stored data, or be configured in the form of functions.
Die Bedingung, dass die mindestens eine externe Schlüsselinformation der mindestens einen internen Schlüsselinformation entspricht, bedeutet nicht zwangsläufig, dass diese identisch sein müssen. Sie müssen lediglich derart in vorher festgelegter Weise zueinander passen, dass bei dem Schritt des Verifizierens feststellbar ist, ob die korrekte externe Schlüsselinformation eingegeben wurde. Dabei werden die externe und die interne Schlüsselinformation bei dem Schritt des Verifizierens in vorher festgelegter Weise miteinander verarbeitet bzw. kombiniert, was beispielsweise unter Durchführung einer weiteren Operation, insbesondere unter Anwendung einer Funktion, etc., erfolgen kann. Der Schritt des Verifizierens und die externe und die interne Schlüsselinformation sind dabei vorzugsweise derart ausgestaltet, dass dann, wenn die korrekte externe Schlüsselinformation eingegeben wird, der Schritt des Verifizierens zu einem vorbestimmten Ergebnis führt, während der Schritt des Verifizierens bei einer falschen Eingabe zu einem anderen als dem vorbestimmten Ergebnis führt. Folglich wird dann, wenn der Schritt des Verifizierens zu dem vorbestimmten Ergebnis führt, bestätigt, dass die korrekte externe Schlüsselinformation eingegeben wurde. In diesem Fall wird dann der Schritt des Schaltens des Funktionsblockes in den ausführbaren Zustand (Schritt C)) ausgeführt.The Condition that the at least one external key information of at least an internal key information does not necessarily mean that these are identical have to be. You need to just fit together in a predetermined way, that in the step of verifying it is possible to determine whether the correct external key information was entered. Thereby the external and the internal key information become in the step of verifying in a predetermined manner with each other processed or combined, which, for example, by performing a further surgery, in particular using a function, etc., can be done. The step of verifying and the external and the internal key information are preferably configured such that when the correct external key information is entered, the step of verifying at a predetermined Result leads, while the step of verifying a wrong entry to a other than the predetermined result. Consequently, if the step of verifying leads to the predetermined result, confirms that the correct external key information was entered. In this case, then the step of switching of the functional block in the executable Condition (step C)).
Die interne Schlüsselinformation ist in dem Funktionsblock derart hinterlegt, dass sie nicht über extern zugängliche Schnittstellen des Funktionsblockes zugänglich ist. Dadurch kann ein unbefugter Dritter diese interne Schlüsselinformation nicht einsehen oder darauf zugreifen. Beispielsweise kann die interne Schlüsselinformation in einem Speicher, der dem Funktionsblock zugeordnet ist, gespeichert sein. Vorzugsweise ist dabei zusätzlich vorgesehen, dass die interne Schlüsselinformation auch nicht über extern zugängliche Schnittstellen des Anwenderprogramms zugänglich ist.The internal key information is stored in the function block such that it does not have an external connection accessible Interfaces of the function block is accessible. This can be a unauthorized third parties do not see this internal key information or access it. For example, the internal key information stored in a memory associated with the function block. Preferably, this is additional provided that the internal key information also not via external accessible Interfaces of the user program is accessible.
Gemäß der vorliegenden Erfindung kann die Speicherprogrammierbare Steuerung auch mehrere Funktionsblöcke aufweisen. In diesem Fall können diese Funktionsblöcke jeweils unterschiedliche Schlüsselmechanismen (das heißt interne und externe Schlüsselinformationen und Prüfmechanismus für den Schritt des Verifizierens) oder auch jeweils gleiche Schlüsselmechanismen aufweisen. Ferner besteht die Möglichkeit, dass zwei oder mehrere Funktionsblöcke einen gemeinsamen Schlüsselmechanismus aufweisen. Ferner können auch mehrere externe und/oder mehrere interne Schlüsselinformationen für einen Funktionsblock vorgesehen sein, wie dies in den Schritte A) und B) durch die Pluralform angegeben ist. Auf diese Möglichkeit wird in dem Schritt C) und auch in den erläuterten Weiterbildungen der Erfindung nicht jedesmal explizit durch Verwendung der Pluralform hingewiesen.According to the present Invention, the programmable logic controller may also have a plurality of functional blocks. In this case, these can function blocks each different key mechanisms (this means internal and external key information and testing mechanism for the Step of verifying) or the same key mechanisms exhibit. It is also possible to that two or more functional blocks have a common key mechanism exhibit. Furthermore, can also multiple external and / or multiple internal key information for one Function block be provided, as in the steps A) and B) is indicated by the plural form. At this possibility is in the step C) and also in the described developments of Invention not always explicit by using the plural form pointed.
Gemäß einer vorteilhaften Weiterbildung weist die interne Schlüsselinformation eine interne Schlüsselfunktion auf, die innerhalb des Funktionsblockes implementiert ist. Die externe Schlüsselinformation wird dabei an einem Eingang der internen Schlüsselfunktion angelegt. Dies ist programmtechnisch auf einfache Weise realisierbar, da die interne Schlüsselfunktion lediglich zu der/den weiteren in dem Funktionsblock vorgesehenen Funktion(en) hinzugefügt werden muss. Bei dieser Weiterbildung kann auf besonders einfache Weise vorgesehen werden, dass jedesmal dann, wenn der Funktionsblock ausgeführt wird, auch die interne Schlüsselfunktion ausgeführt und die erfindungsgemäße Abfrage der externen Schlüsselinformation durchgeführt wird. Damit gelingt eine besonders einfache Einbindung des erfindungsgemäßen Verfahrens in den normalen Ablauf des Anwenderprogramms in der Speicherprogrammierbaren Steuerung.According to one advantageous development has the internal key information an internal key function which is implemented within the function block. The external one key information is created at an input of the internal key function. This is technically feasible in a simple manner, since the internal key function only to the / further provided in the function block Added function (s) must become. In this development can be particularly simple Be provided that each time the function block is executed, also executed the internal key function and the query according to the invention the external key information carried out becomes. This allows a particularly simple integration of the method according to the invention in the normal course of the user program in the programmable logic controller Control.
Gemäß einer vorteilhaften Weiterbildung wird die externe Schlüsselinformation dauerhaft an einen Eingang der internen Schlüsselfunktion angelegt. Nach einer einmaligen Eingabe der externen Schlüsselinformation muss diese nicht für jede Ausführung des Funktionsblockes erneut eingegeben werden. Alternativ kann vorgesehen sein, dass die externe Schlüsselinformation nur für einen vorbestimmten Zeitraum an einem Eingang der internen Schlüsselfunktion angelegt wird. Nach Ablauf des vorbestimmten Zeitraums wird der Funktionsblock dann wieder in den nicht ausführbaren Zustand geschaltet.According to one advantageous development is the external key information permanently applied to an input of the internal key function. To a one-time entry of the external key information must this not for every execution of the function block are entered again. Alternatively, it can be provided be that external key information only for a predetermined period of time at an input of the internal key function is created. After the predetermined period of the Function block then switched back to the non-executable state.
Die interne Schlüsselfunktion kann derart in dem Funktionsblock implementiert sein, dass die Anwendung derselben nur dann ein vorbestimmtes Ergebnis an deren Ausgang liefert, wenn die korrekte externe Schlüsselinformation an dem entsprechenden Eingang der internen Schlüsselfunktion eingegeben wurde. Nur in diesem Fall wird dann der Funktionsblock in den ausführbaren Zustand geschaltet. Das heißt, der Funktionsblock wird in Abhängigkeit von dem Ausgang der internen Schlüsselfunktion in den ausführbaren Zustand bzw. in den nicht ausführbaren Zustand geschaltet.The internal key function may be implemented in the functional block such that the application it only supplies a predetermined result to its output, if the correct external key information was entered at the corresponding input of the internal key function. Only then is the function block in the executable State switched. This means, the function block is dependent on the output of the internal key function in the executable State or in the non-executable State switched.
Diese Funktionalität kann beispielsweise auf einfache Weise erreicht werden, wenn gemäß einer vorteilhaften Weiterbildung ein Ausgang der internen Schlüsselfunktion mit einem Ausgang der mindestens einen Funktion des Funktionsblockes verknüpft wird. Eine Verknüpfung bedeutet dabei, dass eine (oder auch mehrere) Funktion(en) auf diese beiden Ausgänge angewendet wird. Der Ausgang dieser Verknüpfung beziehungsweise Funktion bildet dann vorzugsweise den Ausgang des Funktionsblockes. Beispielsweise können die beiden Ausgänge an die Eingänge einer UND-Funktion oder einer ODER-Funktion angelegt werden. Wenn der Ausgang der internen Schlüsselfunktion „0" ist, wird bei Verwendung einer UND-Funktion deren Ausgang unabhängig von dem Ausgang der mindestens einen Funktion des Funktionsblockes immer auf den Wert „0" gesetzt. Der Funktionsblock liefert folglich nur dann einen korrekten Ausgangswert und ist damit ausführbar, wenn der Ausgang der internen Schlüsselfunktion „1" ist. In entsprechender Weise wird bei Verwendung einer ODER-Funktion deren Ausgang unabhängig von dem Ausgang der mindestens einen Funktion des Funktionsblockes immer auf den Wert „1" gesetzt, wenn der Ausgang der internen Schlüsselfunktion „1" ist. In diesem Fall liefert der Funktionsblock folglich nur dann einen korrekten Ausgangswert und ist damit ausführbar, wenn der Ausgang der internen Schlüsselfunktion „0" ist.This functionality can be achieved, for example, in a simple manner if, according to an advantageous development, an output of the internal key function is linked to an output of the at least one function of the function block. A link means that one (or more) function (s) is applied to these two outputs. The output of this link or function then preferably forms the output of the function block. For example, the two outputs can be applied to the inputs of an AND function or an OR function. When the off If the internal key function is "0", the output is always set to the value "0" when an AND function is used, independent of the output of the at least one function of the function block. The function block consequently only supplies a correct output value and can therefore be executed if the output of the internal key function is "1." In a corresponding manner, when an OR function is used, its output is always assigned to the output independently of the output of the at least one function of the function block Value "1" is set if the output of the internal key function is "1." In this case, the function block thus only supplies a correct output value and can therefore be executed if the output of the internal key function is "0".
Alternativ kann der Funktionsblock auch in Abhängigkeit von dem Ausgang der internen Schlüsselfunktion in den ausführbaren Zustand bzw. in den nicht ausführbaren Zustand geschaltet werden, wenn ein Ausgang der internen Schlüsselfunktion einen Eingang der mindestens einen Funktion des Funktionsblockes bildet und die mindestens eine Funktion des Funktionsblockes nur dann korrekt ausgeführt wird, wenn an diesem Eingang ein gewünschtes Signal, wie beispielsweise „0", anliegt.alternative The functional block can also be used depending on the output of the internal key function in the executable State or in the non-executable State are switched when an output of the internal key function an input of the at least one function of the function block forms and the at least one function of the function block only then executed correctly, if at this entrance a desired Signal, such as "0", is present.
Gemäß einer vorteilhaften Weiterbildung ist der Funktionsblock derart gekapselt, dass über extern zugängliche Schnittstellen des Funktionsblockes, abgesehen von Informationen über dessen Eingänge und Ausgänge, keine oder nur begrenzte Informationen über den Funktionsblock zugänglich sind. Informationen über die Eingänge und Ausgänge des Funktionsblocks sind beispielsweise die Anzahl und Art der Eingänge und Ausgänge. Dadurch kann insbeson dere verhindert werden, dass unbefugte Dritte Informationen über den Programmcode des Funktionsblockes und damit über dessen detaillierte Funktionsweise erhalten. Ferner kann damit verhindert werden, dass unbefugte Dritte die interne Schlüsselinformation aus dem Funktionsblock auslesen und damit den Funktionsblock unbefugt nutzen können. Diese „Kapselung", die einen Zugriff auf Informationen über den Funktionsblock verhindert, ist dabei bevorzugt speziell für den Funktionsblock vorgesehen. Alternativ oder zusätzlich kann sie auch das gesamte Anwenderprogramm oder auch einen Teil des Anwenderprogramms, der den Funktionsblock enthält, umfassen.According to one Advantageous development of the function block is encapsulated such that over externally accessible Interfaces of the function block, apart from information about its inputs and outputs, No or limited information about the function block is accessible. information about the entrances and outputs of the Function blocks are, for example, the number and type of inputs and Outputs. This can be prevented in particular that unauthorized third parties information about the program code of the function block and thus its detailed functionality receive. It can also be used to prevent unauthorized third parties the internal key information read out of the function block and thus the function block unauthorized to be able to use. This "encapsulation" that gives access on information about prevents the functional block is preferred especially for the function block intended. Alternatively or in addition It can also be the entire user program or even a part of the user program containing the function block.
Gemäß einer vorteilhaften Weiterbildung ist in dem Funktionsblock eine Mehrzahl von internen Schlüsselinformationen hinterlegt und bei dem Schritt des Eingebens wird eine entsprechende Mehrzahl von zugehörigen externen Schlüsselinformationen eingegeben. Dabei wird der Funktionsblock nur dann in den ausführbaren Zustand geschaltet, falls die externen Schlüsselinformationen jeweils den zugehörigen internen Schlüsselinformationen entsprechen. Dabei kann/können die Anzahl und/oder die Art der internen Schlüsselinformationen unterschiedlich zu der Anzahl und/oder Art der externen Schlüsselinformationen sein. Beispielsweise kann eine interne Schlüsselinformation durch eine interne Schlüsselfunktion mit mindestens zwei Eingängen gebildet werden, wobei an zwei Eingängen zwei externe Schlüsselinformationen in Form von bestimmten Werten angelegt werden müssen. Durch die Vorsehung einer Mehrzahl von internen und externen Schlüsselinformationen sind mehrere Schlüssel parallel vorgesehen, so dass dadurch der Schutz vor einer unberechtigten Nutzung des Funktionsblockes weiter erhöht wird. Dabei können auch verschiedene Arten von Schlüsselmechanismen parallel vorgesehen sein.According to one advantageous development is in the function block a plurality from internal key information and in the step of inputting a corresponding plurality from associated external key information entered. In this case, the function block is only in the executable State switched if the external key information respectively the corresponding internal key information correspond. It can / can the number and / or type of internal key information is different to the number and / or type of external key information. For example can be an internal key information by an internal key function formed with at least two inputs being, being at two entrances two external key information must be created in the form of specific values. By the providence of a The majority of internal and external key information is multiple key provided in parallel, thereby protecting against unauthorized Use of the function block is further increased. It also can different types of key mechanisms be provided in parallel.
Gemäß einer vorteilhaften Weiterbildung weist der Funktionsblock einen innerhalb des Funktionsblockes vorgesehenen inneren Funktionsblock auf, durch den mindestens eine Funktion ausführbar ist. Der innere Funktionsblock weist dabei einen Zustand, in dem er ausführbar ist, und einen Zustand, in dem er nicht ausführbar ist, auf. Zur Schaltung des inneren Funktionsblockes von dem nicht ausführbaren Zustand in den ausführbaren Zustand werden nachfolgende Schritte durchgeführt:
- D) Eingeben mindestens einer externen zweiten Schlüsselinformation über mindestens einen Eingang des inneren Funktionsblockes;
- E) Verifizieren in dem inneren Funktionsblock, ob die eingegebene mindestens eine externe zweite Schlüsselinformation mindestens einer zugehörigen internen zweiten Schlüs selinformation entspricht, wobei die interne zweite Schlüsselinformation in dem inneren Funktionsblock derart hinterlegt ist, dass sie nicht über extern zugängliche Schnittstellen des inneren Funktionsblockes zugänglich ist; und
- F) Schalten des inneren Funktionsblockes in den ausführbaren Zustand nur dann, falls die externe zweite Schlüsselinformation der internen zweiten Schlüsselinformation entspricht.
- D) inputting at least one external second key information via at least one input of the inner function block;
- E) verifying in the inner function block whether the input at least one external second key information corresponds to at least one associated internal second key information, wherein the internal second key information is stored in the inner function block such that it is not accessible via externally accessible interfaces of the inner function block ; and
- F) Switching the inner function block in the executable state only if the external second key information corresponds to the internal second key information.
Gemäß dieser Weiterbildung kann der Funktionsblock einen oder mehrere innere Funktionsblöcke aufweisen, die wiederum durch einen Schlüsselmechanismus gesichert sind. Auf diese Weise können die verschiedenen Funktionen eines Anwenderprogramms gestaffelt durch entsprechende Schlüsselmechanismen gegen eine unbefugte Nutzung derselben gesichert werden. In entsprechender Weise kann auch eine mehr als nur zweistufige Staffelung realisiert werden. Vorzugsweise ist die interne zweite Schlüsselinformation in dem inneren Funktionsblock derart hinterlegt, dass sie auch nicht über extern zugängliche Schnittstellen des Funktionsblockes oder des Anwenderprogramms zugänglich ist.According to this Further, the function block may have one or more inner function blocks which in turn are secured by a key mechanism. That way you can staggered the various functions of a user program through appropriate key mechanisms secured against unauthorized use thereof. In appropriate In this way, more than just two-tier staggering can be realized become. Preferably, the internal second key information is in the inner one Function block stored in such a way that they are not via external accessible Interfaces of the function block or the user program is accessible.
Gemäß einer vorteilhaften Weiterbildung wird die externe Schlüsselinformation bei dem Schritt des Eingebens in einen dem Funktionsblock zugeordneten Speicher geschrieben. Ein „dem Funktionsblock zugeordneter Speicher" bedeutet dabei, dass der Funktionsblock auf diese externe Schlüsselinformation in dem Speicher zugreifen kann. Dabei wird die externe Schlüsselinformation vorzugsweise derart in dem Speicher gespeichert, dass sie für den Funktionsblock dauerhaft verfügbar ist. Es kann auch vorgesehen sein, dass die externe Schlüsselinformation nur während der Betriebsdauer der Speicherprogrammierbaren Steuerung dauerhaft verfügbar ist und bei einem Neustart erneut eingegeben werden muss. In beiden Fällen muss die externe Schlüsselinformation nach einer einmaligen Eingabe nicht bei jeder Ausführung des Funktionsblockes erneut eingegeben werden.According to one advantageous development is the external key information at the step of entering into a function block associated with Memory written. A "the Function block allocated memory "means that the function block to this external key information can access the memory. Thereby the external key information becomes preferably stored in the memory such that they are for the function block permanently available is. It can also be provided that the external key information only during the operating life of the programmable logic controller permanently available is and must be entered again when restarting. In both make must be the external key information after a single entry not every time you run the Function block are entered again.
Weist die interne Schlüsselinformation eine interne Schlüsselfunktion auf, so ist diese vorzugsweise derart implementiert, dass an deren Eingang dauerhaft die korrekte externe Schlüsselinformation anliegen muss, um den Funktionsblock in dem ausführbaren Zustand zu halten. Beispielsweise wird immer dann, wenn an dem Eingang der internen Schlüsselfunktion nicht die korrekte externe Schlüsselinformation anliegt, der Funktionsblock in den nicht ausführbaren Zustand geschaltet und in diesem gehalten. Insbesondere bei solch einer Implementierung ist die oberhalb erläuterte dauerhafte Speicherung der externen Schlüsselinformation in einem dem Funktionsblock zugeordneten Speicher vorteilhaft. Dadurch kann auf einfache Weise realisiert werden, dass nach einer einmaligen Eingabe der externen Schlüsselinformation diese dauerhaft an dem Eingang der internen Schlüsselfunktion anliegt und der Funktionsblock somit in dem ausführbaren Zustand gehalten wird. Daneben besteht auch die Möglichkeit, den Eingang der internen Schlüsselfunktion auf eine Hardware-Komponente zu legen, durch welche ein Signal bereitgestellt wird, das der korrekten externen Schlüsselinformation entspricht. Dabei kann auch ein sich zeitlich änderndes Signal, beispielsweise in Form eines Sägezahnsignals, als externe Schlüsselinformation realisiert werden. Beispielsweise können die interne Schlüsselfunktion und solch eine Hardware-Komponente derart ausgebildet sein, dass die Hardware-Komponente an einen externen Anschluss der Speicherprogrammierbaren Steuerung anschließbar ist und über diesen Anschluss das entsprechende Signal an den Eingang der internen Schlüsselfunktion bereitstellt.has the internal key information an internal key function on, it is preferably implemented such that at the Input must permanently bear the correct external key information, to keep the function block in the executable state. For example, whenever is at the entrance of the internal key function not the correct external key information is present, the function block switched to the non-executable state and kept in this. Especially with such an implementation is the above explained permanent storage of the external key information in one Function block associated memory advantageous. This can be up Simple way be realized that after a single input the external key information this is permanently applied to the input of the internal key function and the Function block thus in the executable Condition is maintained. In addition, there is also the possibility the receipt of the internal key function to lay a hardware component through which a signal is provided which corresponds to the correct external key information. It can also be a time-varying signal, for example in the form of a sawtooth signal, as external key information will be realized. For example, the internal key function and such a hardware component be designed such that the Hardware component to an external port of the programmable logic controller connectable is and about this connection the appropriate signal to the input of the internal key function provides.
Gemäß einer vorteilhaften Weiterbildung wird der Funktionsblock nach einer vorbestimmten Anzahl von Ausführungen, insbesondere nach einer einmaligen Ausführung, wieder zurück in den nicht ausführbaren Zustand geschaltet. Das Zurückschalten nach einer einmaligen Ausführung oder nach einer geringen Anzahl von Ausführungen ist insbesondere dann vorteilhaft, wenn die externe Schlüsselinformation von einem anderen Programmteil, und damit automatisiert, eingegeben wird. Alternativ zu der Umschaltung nach einer vorbestimmten Anzahl von Ausführungen kann die Umschaltung auch nach einer vorbestimmten Zeitdauer erfolgen. Diese Variante kann insbesondere dann vorteilhaft sein, wenn der Anwender nur für einen vorbestimmten Zeitraum zur Nutzung des Funktionsblockes berechtigt ist.According to one advantageous development of the function block after a predetermined number of executions, especially after a single execution, back in the not executable State switched. The switchback after a single execution or after a small number of executions is particular then advantageous if the external key information from another Program part, and thus automated, is entered. alternative to the switchover after a predetermined number of executions the switching can also take place after a predetermined period of time. This variant can be particularly advantageous if the user only for entitles a predetermined period of time to use the function block is.
Gemäß einer vorteilhaften Weiterbildung ist der Funktionsblock dann, wenn das Anwenderprogramm in die Speicherprogrammierbare Steuerung geladen und erstmalig gestartet wird, in dem nicht ausführbaren Zustand. Für eine Schaltung des Funktionsblockes in den ausführbaren Zustand sind dann die Schritte des Eingebens, des Verifizierens und des Schaltens (Schritte A) bis C)) durchzuführen. Dadurch wird beim Laden und erstmaligen Starten des Anwenderprogramms überprüft, ob der betreffende Anwender berechtigt ist, den Funktionsblock zu nutzen. Die Prüfung zu diesem Zeitpunkt ist sinnvoll, da das Anwenderprogramm in der Regel auf einem separaten Programmiergerät programmiert wird und anschließend von dem Programmiergerät über eine hierfür an der Speicherprogrammierbaren Steuerung vorgesehene Schnittstelle auf die Speicherprogrammierbare Steuerung geladen wird. Folglich kann auf diese Weise direkt bei dem erstmaligen Starten des Anwenderprogramms die Berechtigung zur Nutzung des Funktionsblockes geprüft werden. Vorzugsweise wird der Funktionsblock anschließend für eine vorbestimmte Zeitdauer während der Laufzeit des Anwenderprogramms in dem ausführbaren Zustand gehalten. Insbesondere kann hierbei vorgesehen werden, dass der Funktionsblock während der gesamten Laufzeit des Anwenderprogramms in dem ausführbaren Zustand gehalten wird.According to one Advantageous development is the function block when the User program loaded in the programmable logic controller and is first started in the non-executable state. For a circuit of the functional block in the executable State are then the steps of entering, verifying and switching (steps A) to C)). This will when loading and first launching the application program checks to see if the user in question is authorized to use the function block. The exam too This time is useful because the user program usually is programmed on a separate programmer and then from the programming device via this one s.der Programmable logic controller provided interface the programmable logic controller is loaded. Consequently, can in this way directly at the first start of the user program the authorization to use the function block is checked. Preferably, the functional block is subsequently for a predetermined period of time while the runtime of the user program held in the executable state. Especially can be provided here that the function block during the entire runtime of the user program in the executable Condition is maintained.
Gemäß einer vorteilhaften Weiterbildung stellt das Anwenderprogramm dann, wenn das Anwenderprogramm in die Speicherprogrammierbare Steuerung geladen und erstmalig gestartet wird, eine Anfrage an einen Benutzer bzw. Anwender, dass dieser den Schritt des Eingebens durchführt. Vorzugsweise wird hierzu durch das Anwenderprogramm auf einer Anzeige eine Bedienoberfläche mit einer entsprechenden Menüführung bereitgestellt. Für die Eingabe der externen Schlüsselinformation kann der Anwender Eingabeelemente, die an der Speicherprogrammierbaren Steuerung vorgesehen sind, verwenden. Dies ermöglicht eine für den Anwender bequeme und übersichtliche Eingabe der externen Schlüsselinformation.According to one advantageous development, the user program then, if the user program is loaded into the programmable logic controller and is first started, a request to a user or User that he performs the step of inputting. Preferably For this purpose, a user interface is displayed on a display by the user program provided an appropriate menu. For input the external key information the user can input elements connected to the programmable logic Control are provided use. This allows one for the user comfortable and clear Enter the external key information.
Neben den oberhalb erläuterten Weiterbildungen, die verschiedene Schlüsselmechanismen betreffen, können bei der vorliegenden Erfindung auch andere Schlüsselmechanismen eingesetzt werden. Diese Schlüsselmechanismen müssen lediglich die oberhalb beschriebene Funktionalität erfüllen, dass der Schritt des Verifizierens bei einer Eingabe der korrekten externen Schlüsselinformation zu einem vorbestimmten Ergebnis führt, während er bei Eingabe einer falschen externen Schlüsselinformation nicht zu dem vorbestimmten Ergebnis führt, so dass eine korrekte Eingabe der externen Schlüsselinformation verlässlich überprüft werden kann.In addition to the above-mentioned developments, which relate to various key mechanisms, other key mechanisms can be used in the present invention the. These key mechanisms need only fulfill the above-described functionality that the step of verifying on input of the correct external key information leads to a predetermined result, while it does not lead to the predetermined result upon input of a wrong external key information, so that a correct input of the external Key information can be reliably checked.
Die vorliegende Erfindung betrifft ferner ein Anwenderprogramm zur Steuerung einer Anlage, wobei das Anwenderprogramm auf einer Speicherprogrammierbaren Steuerung implementierbar ist oder darauf implementiert ist. Das Anwenderprogramm weist mindestens einen Funktionsblock, durch den mindestens eine Funktion ausführbar ist, auf. Der Funktionsblock weist einen Zustand, in dem er ausführbar ist, und einen Zustand, in dem er nicht ausführbar ist, auf. Das Anwenderprogramm ist dabei derart angepasst, dass der Funktionsblock nur dann von dem nicht ausführbaren Zustand in den ausführbaren Zustand geschaltet wird, falls mindestens eine externe Schlüsselinformation, die über mindestens einen Eingang des Funktionsblockes eingegeben wird, mindestens einer zugehörigen internen Schlüsselinformation entspricht, wobei die mindestens eine interne Schlüsselinformation in dem Funktionsblock derart hinterlegt ist, dass sie nicht über extern zugängliche Schnittstellen des Funktionsblockes zu gänglich ist. Ferner betrifft die vorliegende Erfindung eine Speicherprogrammierbare Steuerung für eine Anlage, auf der solch ein Anwenderprogramm implementiert ist. Die in Bezug auf das erfindungsgemäße Verfahren erläuterten Vorteile, Varianten und Weiterbildungen sind in entsprechender Weise auch bei dem erfindungsgemäßen Anwenderprogramm und bei der Speicherprogrammierbaren Steuerung realisierbar.The The present invention further relates to a user program for control a plant, the user program on a programmable logic Control is implementable or implemented. The User program has at least one function block through which at least one function executable is on. The function block has a state in which it is executable, and a state in which it is not executable on. The user program is adapted so that the function block of only the non-executable State in the executable State is switched if at least one external key information, the above at least one input of the function block is input, at least an associated one internal key information corresponds, wherein the at least one internal key information is stored in the function block such that they do not have external accessible Interfaces of the function block is accessible. Further concerns the present invention is a programmable logic controller for one Plant on which such a user program is implemented. The in relation to the method according to the invention explained Advantages, variants and developments are in a corresponding manner also in the user program according to the invention and realized in the programmable logic controller.
Weitere Vorteile und Zweckmäßigkeiten der Erfindung ergeben sich anhand der nachfolgenden Beschreibung von Ausführungsbeispielen unter Bezugnahme auf die beigefügten Figuren. Von den Figuren zeigen:Further Advantages and expediencies The invention will become apparent from the following description of exemplary embodiments with reference to the attached Characters. From the figures show:
In der Speicherprogrammierbaren Steuerung ist ein Anwenderprogramm implementiert, durch das in Abhängigkeit von den Füllständen, die von den drei Füllstandssensoren FG0, FG1 und FG2 gemessen werden, die Pumpe FG3 angesteuert wird. Im vorliegenden Fall soll dabei die (einfache) Steuerungsfunktionalität bereitgestellt werden, dass der Füllstand in dem ersten Behälter einen vorbestimmten ersten Grenzwert nicht übersteigt. Nähert sich der Pegel in dem ersten Behälter dem vorbestimmten ersten Grenzwert, so muss die Pumpe FG3 angesteuert werden, so dass Flüssigkeit von dem ersten in den zweiten Behälter gefördert wird. Damit ein Überlaufen des zweiten Behälters verhindert wird, muss die Pumpe FG3, falls der Pegel in dem zweiten Behälter einen vorbestimmten zweiten Grenzwert übersteigt, gestoppt werden.In The programmable logic controller is a user program implemented by that in dependence from the levels, the from the three level sensors FG0, FG1 and FG2 are measured, the pump FG3 is driven. In the present case, the (simple) control functionality should be provided be that level in the first container does not exceed a predetermined first limit. Approaches the level in the first container the predetermined first limit, the pump FG3 must be controlled, so that liquid is conveyed from the first to the second container. So an overflow of the second container is prevented, the pump FG3, if the level in the second container a exceeds the predetermined second limit, being stopped.
Ferner
ist in dem Funktionsblock
Der
Ausgang
In
Vielmehr
bildet das Ausgangssignal der UND-Funktion
Ferner
sind in dem Funktionsblock
Der
Ausgang
Claims (12)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE200710062915 DE102007062915A1 (en) | 2007-12-21 | 2007-12-21 | Storage programmable control i.e. digitally operated electronic system, operating method for controlling automation system, involves switching functional block at feasible state if external information corresponds to internal information |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE200710062915 DE102007062915A1 (en) | 2007-12-21 | 2007-12-21 | Storage programmable control i.e. digitally operated electronic system, operating method for controlling automation system, involves switching functional block at feasible state if external information corresponds to internal information |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE102007062915A1 true DE102007062915A1 (en) | 2009-06-25 |
Family
ID=40689935
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE200710062915 Withdrawn DE102007062915A1 (en) | 2007-12-21 | 2007-12-21 | Storage programmable control i.e. digitally operated electronic system, operating method for controlling automation system, involves switching functional block at feasible state if external information corresponds to internal information |
Country Status (1)
| Country | Link |
|---|---|
| DE (1) | DE102007062915A1 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP2469367A3 (en) * | 2010-12-24 | 2013-10-09 | Yokogawa Electric Corporation | Wireless field device, device management system, and device management method |
| US10867077B2 (en) | 2014-11-18 | 2020-12-15 | Schneider Electric Automation Gmbh | Method of accessing functions of an embedded device |
Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2001033768A2 (en) * | 1999-10-29 | 2001-05-10 | Broadcom Corporation | Apparatus and method for secure field upgradability |
| DE10038779A1 (en) * | 2000-08-09 | 2002-03-07 | Schneider Automation Gmbh | Method for transferring data into or from a control device such as a programmable logic controller and control device |
| DE10128829A1 (en) * | 2000-06-16 | 2002-04-25 | Fisher Rosemount Systems Inc | Security process control system for medicine management, has security module to analyze security information collected in relation to authentication function start, to judge regarding execution of security function |
| DE10126451A1 (en) * | 2001-05-31 | 2002-12-05 | Bosch Gmbh Robert | Method for activation or deactivation of microcomputer system storage arrangement, e.g. for motor vehicle control device, involves initially verifying identifier signature at start-up of computer |
| DE10131579A1 (en) * | 2001-07-02 | 2003-01-16 | Bosch Gmbh Robert | Process for programming a memory of a microcomputer with data especially for a motor vehicle control program uses protective keys |
| US20050105738A1 (en) * | 2003-09-24 | 2005-05-19 | Kabushiki Kaisha Toshiba | On-chip multi-core type tamper resistant microprocessor |
| EP1582950A2 (en) * | 2004-03-31 | 2005-10-05 | Rockwell Automation Technologies, Inc. | Digital rights management system and method |
| WO2007036178A1 (en) * | 2005-09-29 | 2007-04-05 | Siemens Aktiengesellschaft | Method for carrying out a protected function of an electrical field device, and an electrical field device |
-
2007
- 2007-12-21 DE DE200710062915 patent/DE102007062915A1/en not_active Withdrawn
Patent Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2001033768A2 (en) * | 1999-10-29 | 2001-05-10 | Broadcom Corporation | Apparatus and method for secure field upgradability |
| DE10128829A1 (en) * | 2000-06-16 | 2002-04-25 | Fisher Rosemount Systems Inc | Security process control system for medicine management, has security module to analyze security information collected in relation to authentication function start, to judge regarding execution of security function |
| DE10038779A1 (en) * | 2000-08-09 | 2002-03-07 | Schneider Automation Gmbh | Method for transferring data into or from a control device such as a programmable logic controller and control device |
| DE10126451A1 (en) * | 2001-05-31 | 2002-12-05 | Bosch Gmbh Robert | Method for activation or deactivation of microcomputer system storage arrangement, e.g. for motor vehicle control device, involves initially verifying identifier signature at start-up of computer |
| DE10131579A1 (en) * | 2001-07-02 | 2003-01-16 | Bosch Gmbh Robert | Process for programming a memory of a microcomputer with data especially for a motor vehicle control program uses protective keys |
| US20050105738A1 (en) * | 2003-09-24 | 2005-05-19 | Kabushiki Kaisha Toshiba | On-chip multi-core type tamper resistant microprocessor |
| EP1582950A2 (en) * | 2004-03-31 | 2005-10-05 | Rockwell Automation Technologies, Inc. | Digital rights management system and method |
| WO2007036178A1 (en) * | 2005-09-29 | 2007-04-05 | Siemens Aktiengesellschaft | Method for carrying out a protected function of an electrical field device, and an electrical field device |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP2469367A3 (en) * | 2010-12-24 | 2013-10-09 | Yokogawa Electric Corporation | Wireless field device, device management system, and device management method |
| US8981960B2 (en) | 2010-12-24 | 2015-03-17 | Yokogawa Electric Corporation | Wireless field device, device management system, and device management method |
| US10867077B2 (en) | 2014-11-18 | 2020-12-15 | Schneider Electric Automation Gmbh | Method of accessing functions of an embedded device |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69719479T2 (en) | Data processing system security | |
| DE102008010864A1 (en) | Method for operating a field device | |
| EP2422244B1 (en) | Safety-related control unit, and method for controlling an automated system | |
| EP3607405B1 (en) | Method for parameterizing a field device, and field device that can be parameterized | |
| DE102015120314A1 (en) | Method of programming a safety controller | |
| WO2011042318A1 (en) | Method for controlling and operating a production cell, and a control device | |
| EP4235323A2 (en) | Method and device for automatically validating security functions on a modular security system | |
| DE102011088236A1 (en) | Method for operating field device using process automation technique, involves determining test value based on characteristic properties of field device and providing field device present state, after restart of field device | |
| EP1947568A1 (en) | Method for observing a control device | |
| DE19963208A1 (en) | Manipulation detection of programmable memory device in digital controller involves checking information about programming/reprogramming process stored in separate memory area | |
| DE10002204B4 (en) | Method for protecting a microcomputer of a control device against manipulation of a program and device for carrying out the method | |
| DE102007062395A1 (en) | Automatic parameterizing method for field device i.e. modular four-wire field device, involves providing selection possibility to user when parameter values are transferred in accordance with parameterization implementation | |
| EP3380981B1 (en) | Safety control device and method for changing a range of functions of a safety control device | |
| DE102007062915A1 (en) | Storage programmable control i.e. digitally operated electronic system, operating method for controlling automation system, involves switching functional block at feasible state if external information corresponds to internal information | |
| DE102009051808A1 (en) | Securing end-user program changes through formal contracts and program verification in automation technology | |
| EP1563358B1 (en) | Method for the secure checking of a memory region of a microcontroller in a control device and control device with a protected mikrocontroller | |
| DE102014016819A1 (en) | Method and device for managing and configuring field devices of an automation system | |
| EP1093039A1 (en) | Programmable field mounted sensor | |
| EP1800193B1 (en) | Method for operating a modularly constructed automation technology field device | |
| EP2482148B1 (en) | Method for projecting and/or programming a multi-functional component of an industrial automation assembly | |
| DE102008023873A1 (en) | Drive system operating method, involves using buffer for exchanging data between drive component and drive regulation unit, initializing buffer by drive regulation unit, and temporizing initialization of buffer by control unit | |
| WO2006069763A1 (en) | Method for configuring field devices | |
| DE102018202626A1 (en) | Method for the computer-aided parameterization of a technical system | |
| EP3757688B1 (en) | Method for configuring an industrial machine | |
| EP1495381A1 (en) | Measuring device for process engineering and operating method for a measuring device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| OM8 | Search report available as to paragraph 43 lit. 1 sentence 1 patent law | ||
| R012 | Request for examination validly filed | ||
| R012 | Request for examination validly filed |
Effective date: 20141205 |
|
| R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |