DE19906695A1 - Automatic decentralization of programs in control devices and distribution of intelligence involves replacing existing computer system with decentrally organized computer system - Google Patents
Automatic decentralization of programs in control devices and distribution of intelligence involves replacing existing computer system with decentrally organized computer systemInfo
- Publication number
- DE19906695A1 DE19906695A1 DE1999106695 DE19906695A DE19906695A1 DE 19906695 A1 DE19906695 A1 DE 19906695A1 DE 1999106695 DE1999106695 DE 1999106695 DE 19906695 A DE19906695 A DE 19906695A DE 19906695 A1 DE19906695 A1 DE 19906695A1
- Authority
- DE
- Germany
- Prior art keywords
- program
- units
- computer system
- decentralized
- programs
- 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
Links
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/056—Programming the PLC
-
- 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/13068—Program divided in operation blocks, groups, tasks each executed
-
- 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/13166—Program intelligent I-O separate from main plc
-
- 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/21—Pc I-O input output
- G05B2219/21021—Intelligent I-O, executes tasks independently from main cpu
Abstract
Description
Speicherprogrammierbare Steuerungen oder Mikrocomputer werden heute überall dort eingesetzt, wo man Prozesse oder Maschinen mittels Computer oder ähnlichen Verarbeitungssystemen in ihrer Funktion flexibel programmieren möchte.Programmable logic controllers or microcomputers are used everywhere today wherever processes or machines are used by means of computers or similar Would like to program processing systems flexibly in their function.
Obwohl sich die Strukturen derartiger Steuerungseinrichtungen in den letzten 20 Jahren deutlich verändert haben, sind die Verarbeitungsalgorithmen nahezu gleich geblieben.Although the structures of such control devices have changed in the last 20 Years have changed significantly, the processing algorithms are almost the same remained.
Moderne Steuerungseinrichtungen zeichnen sich durch schnelle Zentraleinheiten, dezentrale Bussystem, und große Speichermedien aus. Mittlerweile ist man jedoch an physikalische Grenzen gestoßen, da noch schnellere Zentraleinheiten extreme Kosten mit sich bringen und im Zusammenspiel mit Speicher, internen Bussen und anderen digitalen Komponenten leicht störanfällig werden. Zusätzlich ist man beim Datentransport über Lokale Netze bereits jetzt bei der Transportgeschwindigkeit des Lichtes angekommen, so daß lange Wegstrecken mit kurzer Transportzeit technologisch kollidieren (vergl.: Wolf-Dieter Haaß: Handbuch der Kommunikationsnetze, Springer 1997, ISBN 3-540-61831-6).Modern control devices are characterized by fast central units, decentralized bus system, and large storage media. In the meantime, however, one is reached physical limits because even faster central processing units are extreme Bring costs and in interaction with storage, internal buses and other digital components are easily prone to failure. In addition, you are at Data transport via local networks already at the transport speed of the Light arrived so that long distances with short transport time technologically collide (see: Wolf-Dieter Haaß: Handbuch der Communication networks, Springer 1997, ISBN 3-540-61831-6).
Dem gegenüber gilt es, alle Prozesse in der Industrie schneller zu machen und vielfach auch redundant zu überwachen. Die gestiegene Funktionalität mit dem Bedürfnis der erhöhten Kommunikation und Diagnose hat zusätzlich dazu geführt, daß Programme immer länger werden und damit zur Bearbeitung eine höhere Bearbeitungszeit gehört.In contrast, it is important to make all processes in industry faster and often redundant to monitor. The increased functionality with the Need for increased communication and diagnosis has also resulted in that programs are getting longer and longer and therefore higher for editing Processing time belongs.
Bereits vor einem Jahrzehnt hat man sich daher intensiv damit beschäftigt, wie man Programme parallelisieren kann und damit in einem vernetzten System nur noch die absolut notwendigen Daten austauscht. Diese Dezentralisierung von Programmen sollte der erste Schritt verteilter Intelligenz sein, so daß die notwendigen Programme genau dort ablaufen, wo sie ihre Funktion erfüllen. Die Kommunikation und der Datenaustausch beschränkt sich dann nur noch auf globale Größen, die übergeordnet gebraucht werden.That is why a decade ago, people were intensely concerned with how to do it Can parallelize programs and thus only in a networked system exchanges absolutely necessary data. This decentralization of programs The first step should be distributed intelligence so that the necessary programs run exactly where they fulfill their function. The communication and the Data exchange is then only limited to global sizes superordinate.
Das Verteilen von Intelligenz ist vielfach nicht daran gescheitert, daß man die Hardwarestrukturen nicht zur Verfügung stellen konnte. Vielmehr ist es nicht gelungen, ein bestehendes Programm aufzuteilen, wenn man es nicht bereits während des Entwurfs als "Programm verteilter Intelligenz" schreibt.The distribution of intelligence has often not failed because of the fact that Could not provide hardware structures. Rather, it is not managed to split up an existing program if you haven't already writes during the design as a "distributed intelligence program".
Die seit vielen Jahren bekannten Programmiersprachen (Speicherprogrammierbare Steuerungen: Anweisungsliste, Kontaktplan, Funktionsbausteinsprache, usw., Mikrorechner: Assembler, Pascal, Basic, C++, usw.) lassen kaum eine Verteilung von Intelligenz zu. Selbst die neuen Techniken, die in der IEC 1131-3 beschrieben sind, machen keine genauen Angaben zur Dezentralisierung von Programmteilen (vergl.: Bernhard Plagemann: Methoden der Programmierung von SPS, Vogel-Verlag 1990, ISBN3-8023-0272-9) Darüber hinaus existieren bereits zahlreiche Programme in Automatisierungseinrichtungen, die seit Jahren optimal funktionieren, aber kaum dezentralisierbar sind (vergl.: Neumann, Grötsch, Libkoll, Simon: SPS-Standard IEC 1131, Oldenburg 1995, ISBN 3-486-23348-3 und Peter Wratil: Moderne Programmiertechnik für Automatisierungssysteme, Vogel-Verlag 1996, ISBN 3-8023-1575-8 und Karl-Heinz John, Micheal Tiegelkamp: SPS-Programmierung mit IEC 1131-3, Springer 1995, ISBN 3-540-58635-0 und DIN-Verlag: DIN IEC 1131 Teil 3).The programming languages known for many years (programmable logic Controls: instruction list, ladder diagram, function block language, etc., Microcomputers: Assembler, Pascal, Basic, C ++, etc.) hardly allow a distribution of Intelligence too. Even the new techniques described in IEC 1131-3 do not provide precise information on the decentralization of program parts (see: Bernhard Plagemann: Methods of PLC programming, Vogel Verlag 1990, ISBN3-8023-0272-9) In addition, numerous programs already exist in Automation devices that have been working optimally for years, but hardly can be decentralized (see: Neumann, Grötsch, Libkoll, Simon: PLC standard IEC 1131, Oldenburg 1995, ISBN 3-486-23348-3 and Peter Wratil: Moderne Programming technology for automation systems, Vogel Verlag 1996, ISBN 3-8023-1575-8 and Karl-Heinz John, Micheal Tiegelkamp: PLC programming with IEC 1131-3, Springer 1995, ISBN 3-540-58635-0 and DIN publishing house: DIN IEC 1131 part 3).
Die Aufgabe der vorgestellten Erfindung besteht daher darin, aus beliebigen Programmen (Ausgangsprogramm), dezentralisierbare Software-Module zu erzeugen, die in intelligente Einheiten geladen werden und dann mit extrem kurzer Verarbeitungszeit parallel ablaufen. Hierbei bleibt die Funktion des Ausgangsprogramms gleich. Lediglich die Verarbeitungszeit und der Aufwand für den Datentransport wird erheblich reduziert.The object of the presented invention is therefore any Programs (initial program), decentralizable software modules too generate, which are loaded into intelligent units and then with extremely short Processing time should run in parallel. The function of the Initial program the same. Only the processing time and the effort for data transport is significantly reduced.
Fig. 1 zeigt den typischen Aufbau eines heute üblichen Automatisierungssystems. Die Speicherprogrammierbare Steuerung (1) steuert über das Lokale Netzwerk (Bussystem, 2) die dezentralen Einheiten (3, 4, 5, 6, 7) an. Dabei werden die Eingangsgrößen des Prozesses oder der Maschine von der dezentralen Einheit (7) und den möglichen kombinierten Einheiten (3, 4) über das Bussystem (2) in die Steuerung (1) geholt. Danach verarbeitet die Steuerung (1) diese Eingangsgrößen mittels des Programms (8) und berechnet die Werte für die Ausgangsgrößen. Über das Bussystem (2) transportiert sie dann diese Ausgabewerte an die Ausgabeeinheiten (5, 6) oder an die kombinierten Einheiten (3, 4). Sobald die Ausgaben ihre Information (analoge oder digitale Werte) an die Peripherie (Prozeß oder Maschine) weitergegeben haben, beginnt der Vorgang erneut, so daß eventuelle Änderungen der Eingangsgrößen den gesamten Ablauf dynamisieren. Fig. 1 shows the typical structure of an automation system common today. The programmable logic controller ( 1 ) controls the decentralized units ( 3 , 4 , 5 , 6 , 7 ) via the local network (bus system, 2 ). The input variables of the process or the machine are fetched from the decentralized unit ( 7 ) and the possible combined units ( 3 , 4 ) via the bus system ( 2 ) into the controller ( 1 ). The controller ( 1 ) then processes these input variables using the program ( 8 ) and calculates the values for the output variables. It then transports these output values to the output units ( 5 , 6 ) or to the combined units ( 3 , 4 ) via the bus system ( 2 ). As soon as the outputs have passed on their information (analog or digital values) to the periphery (process or machine), the process begins again, so that any changes in the input variables make the entire process dynamic.
Der gesamte Programmablauf (8) besteht dabei im Detail aus 3 Schritten. Zuerst erfolgt ein Datentransport aller Eingangsgrößen der dezentralen Einheiten über das Bussystem (2) und die Werte werden in dem Speicher der SPS abgelegt. Dieser erste Vorgang erfordert bereits eine nicht zu vernachlässigende Zeit, die durch den Datentransport und die Ablage im Speicher zustande kommt. Im rechten Teil von Fig. 1 ist dieser Vorgang mit dem Verarbeitungsblock der Informationsaufnahme der Eingänge (9) bezeichnet.The entire program sequence ( 8 ) consists of 3 steps in detail. First of all, all input variables of the decentralized units are transported via the bus system ( 2 ) and the values are stored in the memory of the PLC. This first process already requires a not insignificant time, which is due to the data transport and the storage in the memory. In the right part of Fig. 1, this process is referred to the processing block of the information reception of the inputs ( 9 ).
Sobald die Werte dieser Eingänge im Speicher der SPS liegen beginnt die Verarbeitung des Programms (10), das der Programmierer zur Erreichung der Funktion in die Steuerung geladen hat.As soon as the values of these inputs are in the memory of the PLC, the processing of the program ( 10 ) that the programmer has loaded into the controller to achieve the function begins.
Nach Berechnung aller Ausgänge und weiterer Funktionen überträgt die SPS alle Ausgabedaten zu den dezentralen Ausgängen. Dieser Vorgang ist im rechten Teil von Fig. 1 mit (11) bezeichnet. Auch für diesen Vorgang braucht das System eine Ablaufzeit, die von der Datenmenge und von der Datentransportgeschwindigkeit abhängt.After calculating all outputs and other functions, the PLC transfers all output data to the decentralized outputs. This process is denoted by ( 11 ) in the right part of FIG. 1. The system also needs an expiry time for this process, which depends on the amount of data and the data transport speed.
Bei modernen Steuerungen kann der Datentransport von den Eingängen und zu den
Ausgängen auch unsynchronisiert zum Programmablauf (10) erfolgen. Der
Programmablauf (10) stellt in der Regel den längsten Zeitaufwand dar, wenn man
komplexe Funktionen berechnen muß. Kalkuliert man die Einzelzeiten für die
Datentransfer- und Berechnungsprogramme, so ergibt sich folgende Aussage:
In modern control systems, the data transport from the inputs and to the outputs can also take place unsynchronized to the program sequence ( 10 ). The program sequence ( 10 ) usually represents the longest time expenditure when one has to calculate complex functions. If you calculate the individual times for the data transfer and calculation programs, the following statement results:
(2.(Tein + Tprog + Taus)) < T < (Tein + Tprog + Taus)
(2 (T prog a + T + T off)) <T <(T prog a + T + T off)
Dabei ist:
Tein Zeit für das Einlesen der Eingänge incl. Datentransport und Ablage im Speicher
Tprog: Zeit für die Bearbeitung des Programm in der SPS
Tein: Zeit für das Auslesen der Ausgänge incl. Datentransport und Ablage in den
dezentralen Einheiten
T: Gesamte Zykluszeit incl. Test- und sonstiger interner Funktionen
(vergl.: Peter Wratil: Speicherprogrammierbare Steuerung in der
Automatisierungstechnik, Vogel-Verlag 1989, ISBN 3-8023-0235-4).Here is:
T is a time for reading the inputs incl. Data transport and storage in memory
T prog : time for processing the program in the PLC
T a: Time for reading the outputs including data transport and storage in the decentralized units.
T: Total cycle time including test and other internal functions (see: Peter Wratil: Programmable logic controller in automation technology, Vogel Verlag 1989, ISBN 3-8023-0235-4).
Im schlimmsten Fall vergeht etwa die zweifache gesamte Zykluszeit als Reaktionszeit, bis die Änderung einer Eingangsgröße zur gewünschten Veränderung eines Ausgangs führt. In the worst case, about twice the total cycle time passes Response time until the change of an input variable to the desired change of an exit leads.
Damit man ein Programm auf dezentrale Module verteilen kann, muß man diese dazu befähigen, selbst Programme abarbeiten zu können. In der Regel enthalten dezentrale Einheiten bereits heute alle notwendigen Komponenten, da sie zum Datentransport und zur Zwischenspeicherung über einen Mikroprozessor, einen Speicher und eine Bus-Interface verfügen. Normalerweise ist die Verarbeitung von Programmen jedoch nicht vorgesehen, da (wie vorher bereits beschrieben) ein Algorithmus zur optimalen Aufteilung fehlt. Der Programmablauf einer Eingabeeinheit beschränkt sich daher heute nur auf die simple Datenablage der Eingangsgrößen und dem Datentransport über das Bussystem zur SPS. Manchmal enthält das interne Programm dieser dezentralen Einheiten auch noch Kontrolleinrichtungen oder Sicherheitsfunktionen, die entweder direkt im Programm vorgesehen oder später ladbar sind.To be able to distribute a program to decentralized modules, you have to do this enable them to work through programs themselves. Usually included decentralized units already have all the necessary components today, as they Data transport and temporary storage via a microprocessor, one Memory and a bus interface. Usually the processing of However, programs are not provided as (as previously described) Algorithm for optimal division is missing. The program flow of an input unit Therefore, today it is limited to the simple data storage of the input variables and data transport via the bus system to the PLC. Sometimes the internal contains Program of these decentralized units also control devices or Safety functions either provided directly in the program or later are loadable.
Einen typischen Aufbau, wie man ein Automatisierungssystem (Fig. 1) in ein flexibles System mit dezentraler Intelligenz und mit verteilten Programmen überführt ist in Fig. 2 dargestellt.A typical structure of how to convert an automation system ( FIG. 1) into a flexible system with decentralized intelligence and with distributed programs is shown in FIG. 2.
Da das Programm in einer noch zu beschreibenden Technik auf die dezentralen Module verteilt werden, entfällt die SPS. Es existieren nur noch dezentrale Einheiten (2, 3, 4, 5, 6), die sich über das Bussystem (1) unterhalten. Im Gegensatz zu den normalen dezentralen Einheiten, sind diese Einheiten jedoch in der Lage, Programmteile des sonst in der SPS befindlichen Gesamtprogramms aufzunehmen. Da das gesamte Programm (der nun nicht mehr vorhandenen SPS) auf viele Module verteilt wird, kann deren Speicher auch erheblich kleiner ausfallen.Since the program is distributed to the decentralized modules using a technology to be described, the PLC is not required. There are only decentralized units ( 2 , 3 , 4 , 5 , 6 ) that communicate via the bus system ( 1 ). In contrast to the normal decentralized units, these units are, however, able to accommodate program parts of the overall program otherwise located in the PLC. Since the entire program (the PLC that is no longer available) is distributed to many modules, their memory can also be considerably smaller.
Die Einzelprogramme werden nun derart verteilt, daß sich die Programmteile danach orientieren, wo ihre Ausgänge physikalisch vorliegen. Damit enthält das erste Modul (2) genau das Programm, das die Berechnung der Ausgänge desgleichen Moduls bewirkt. Für alle anderen Module gilt das ebenfalls. Damit braucht ein Eingangsmodul (6) nicht intelligent zu sein, da es selbst nicht über Ausgänge verfügt.The individual programs are now distributed in such a way that the program parts are based on where their outputs are physically present. The first module ( 2 ) thus contains exactly the program that effects the calculation of the outputs of the same module. This also applies to all other modules. This means that an input module ( 6 ) need not be intelligent, since it does not have any outputs itself.
Nach (einer noch zu beschreibenden Anweisung) erhalten nun alle Module ihr spezielles Programm (9, 10, 11, 12), das je nach Komplexität länger oder kürzer zu seiner Ausführung braucht. Die notwendigen Eingangsgrößen zur Berechnung der Einzelprogramme (9, 10, 11, 12) werden vor der Verarbeitung in jedes Modul eingelesen. Hierzu dient das Bussystem (1). Die Datentransportzeit reduziert sich jedoch ganz beträchtlich, da nur diejenigen Eingangsgrößen übertragen werden, die in dem speziellen Modul nicht schon lokal vorliegen. Diese nicht lokalen Eingangsgrößen werden auch globale Eingabegrößen genannt. Weiterhin braucht man keine Übertragung der Ausgangsgrößen, da diese immer lokal vorliegen und direkt vom Modul aus an die Peripherie gelangen.After (an instruction yet to be described) all modules now receive their special program ( 9 , 10 , 11 , 12 ), which depending on the complexity may take longer or shorter to execute. The input variables required for calculating the individual programs ( 9 , 10 , 11 , 12 ) are read into each module before processing. The bus system ( 1 ) serves this purpose. However, the data transport time is reduced considerably since only those input variables are transmitted that are not already available locally in the special module. These non-local input variables are also called global input variables. Furthermore, there is no need to transfer the output variables, since these are always available locally and reach the periphery directly from the module.
Da die Programme in den einzelnen Modulen erheblich kürzer sind als das Gesamtprogramm (Fig. 1, 8) ist auch hier die Ablaufzeit deutlich reduziert. Das System wird damit schneller und kostengünstiger, da man keine SPS mehr braucht.Since the programs in the individual modules are considerably shorter than the overall program ( FIGS. 1, 8), the execution time is also significantly reduced here. This makes the system faster and cheaper, since you no longer need a PLC.
Die automatische Verteilung des Gesamtprogramm erfolgt in mehreren Schritten:
The automatic distribution of the entire program takes place in several steps:
- 1. In der Zuordnungsliste befindet sich eine tabellarische Darstellung, welcher Name oder welche Bezeichnung mit einem Ausgang verknüpft ist und wo sich dieser Ausgang physisch befindet. Als erster Schritt wird nun diese Zuordnungsliste nach den physischen Ausgängen sortiert und den entsprechenden Modulen, welche über die Ausgänge verfügen, zugeordnet. 1. The assignment list contains a tabular representation of which name or which name is associated with an output and where it is located Exit physically located. The first step is this assignment list sorted by the physical outputs and the corresponding modules, which have the outputs assigned.
- 2. Alle Programmteile, die sich auf die Ausgänge eines Moduls beziehen, werden separiert und als Modulprogramm erstellt. Dabei enthalten diese Programmteile (Modulprogramm) in der Regel logische oder arithmetische Verknüpfungen, die selbst wieder Eingänge oder Ausgänge beinhalten können. Alle nicht im Modul vorliegenden Ein- oder Ausgangsgrößen werden danach in eine globale Übertragungsliste eingetragen. Die Ausgangsgrößen werden daraufhin soweit heruntergebrochen, daß nur noch Eingänge als globale Größen übrigbleiben. Man kann dann auf die Übertragung von Ausgangsgrößen verzichten und diese wieder aus der Übertragungsliste streichen.2. All program parts that relate to the outputs of a module are separated and created as a module program. These contain program parts (Module program) usually logical or arithmetic operations that can again contain inputs or outputs. All not in the module existing input or output variables are then converted into a global one Transfer list entered. The output variables are then so far broken down that only inputs remain as global quantities. You can then do without the transmission of output variables and these delete from the transfer list again.
- 3. Die Programmiereinheit speichert zu Beginn der Verarbeitung alle Modulprogramme in die dafür vorgesehen Module. Diese Programmübertragung ist jedoch nicht nur von einem Programmiergerät möglich, sondern kann auch von einem der dezentralen Module aus geschehen. Diese Option erlaubt es auch, während des Ablaufs des Programms Module neu zu programmieren oder Programme zu verändern.3. The programming unit saves all at the start of processing Module programs in the designated modules. This program broadcast is not only possible from a programming device, but also from one of the decentralized modules. This option also allows to reprogram modules while the program is running or Change programs.
- 4. Die Übertragungsliste wird allen Modulen mitgeteilt und stellt diejenigen Größen dar, die zu Beginn jedes Zyklus zu transportieren sind.4. The transmission list is communicated to all modules and represents those sizes that must be transported at the beginning of each cycle.
- 5. Eines der Module übernimmt die Datentransportfunktion und synchronisiert den gesamten Ablauf. Hierbei stellt jedes Modul in sequentieller Folge seine Eingangsgrößen für den Bustransport zur Verfügung, die global gebraucht werden.5. One of the modules takes over the data transport function and synchronizes it entire process. Each module puts its own in sequential order Input variables available for bus transportation that are used globally become.
- 6. Nach dem Ende der Übertragung erfolgt die Programmverarbeitung und die Ausgaben aller Module werden durch die Buszyklen synchronisiert.6. After the end of the transmission, the program processing and Outputs from all modules are synchronized by the bus cycles.
Fig. 3 stellt eine mögliche Ausprägung der notwendigen Module und ein Verfahren zum Datentransport dar. Das Bussystem (1) übermittelt alle globalen Eingangsgrößen und synchronisiert den Ablauf innerhalb jedes Moduls (2, 3, 4). Ein Modul besteht aus einem Mikroprozessor mit Speicher und Kontrolle, so daß eine Programmbearbeitung möglich wird (5). Dieser erhält sein spezielles Modulprogramm vor dem Ablauf über das Bussystem (1). Hierzu wird auch das Businterface (6) verwendet, das während des Programmablaufs auch die Eingangsgrößen anderer Module entgegennimmt oder seine Eingangsgrößen (sofern man diese global braucht) zur Verfügung stellt: Fig. 3 illustrates a possible embodiment of necessary modules and a method for data transport. The bus system (1) transmits all the global inputs and synchronizes the flow within each module (2, 3, 4). A module consists of a microprocessor with memory and control, so that program processing is possible ( 5 ). This receives its special module program before it expires via the bus system ( 1 ). The bus interface ( 6 ) is also used for this purpose, which also accepts the input variables of other modules during the program run or provides its input variables (if these are needed globally):
Die Ein- /Ausgabe-Logik (7) bildet die Anpassung zur Peripherie und ist letztlich für die Handhabung des Prozesses verantwortlich.The input / output logic ( 7 ) forms the adaptation to the periphery and is ultimately responsible for handling the process.
Im unteren Teil von Fig. 3 ist ein mögliches Bustransportverfahren dargestellt, das sich besonders gut für einen schnellen Datenaustausch aller globalen Eingangsgrößen eignet. Nach einem Startsignal legt jedes Modul seine gewünschten globalen Eingangsdaten sequentiell auf den Bus, so daß eine Kette von Eingangsdaten entsteht. Nachdem das letzte Modul seine Daten zur Verfügung gestellt hat, beschließt eine Ende-Kennung den Datentransport und die Module können mit der Verarbeitung ihres internen Modulprogramms beginnen.In the lower part of FIG. 3, a possible bus transport method is shown, which is particularly well suited for fast data exchange of all global input variables. After a start signal, each module sequentially places its desired global input data on the bus, creating a chain of input data. After the last module has made its data available, an end identifier decides the data transport and the modules can begin processing their internal module program.
Ein derartiges Bussystem ist bereits unter dem Namen "Interbus-S" bekannt (vergl.:Such a bus system is already known under the name "Interbus-S" (see:
Alfredo Baginski, Martin Müller: Interbus-S. Hüthig 1994, ISBN 3-7785-2293-0). Es ist nicht Gegenstand dieses Verfahrens. Insbesondere funktioniert diese Technik auch mit anderen Bussystemen oder anderen Topologien, wenngleich die Reaktionszeit etwas erhöht wird.Alfredo Baginski, Martin Müller: Interbus-S. Hüthig 1994, ISBN 3-7785-2293-0). It is not the subject of this procedure. In particular, this technique also works with other bus systems or other topologies, although the response time something is increased.
Es ist bei diesem Verfahren schnell ersichtlich, daß man eine Optimierung erreicht, wenn man alle notwendigen Eingänge genau dort findet, wo auch die Ausgänge liegen. Der Programmverteilungsprozeß, der aus dem Gesamtprogramm einzelne Module erstellt und die globale Übertragungsliste verwaltet, kann daher sofort auch Hinweise zur Optimierung geben, so daß es dem Anwender überlassen bleibt, selbst physisch festgelegte Ein- oder Ausgänge in den Modulen zu verschieben. Alleine durch die Mehrfachanwendung innerhalb der Zuordnung der Zuordnungsliste kann eine Simulation geschehen, die ein Minimum der Zykluszeit garantiert.With this method it is quickly apparent that an optimization is achieved if you find all the necessary inputs exactly where the outputs lie. The program distribution process, which is individual from the overall program Modules created and the global transmission list can be managed immediately Give advice on optimization so that it is up to the user, himself to move physically defined inputs or outputs in the modules. Alone through multiple use within the assignment of the assignment list a simulation is done that guarantees a minimum of cycle time.
Diese automatische Verteilung eines Gesamtprogramms bringt aber auch noch
weitere Vorteile mit sich:
This automatic distribution of an overall program also has other advantages:
- - Es besteht die Möglichkeit, Module zu verdoppeln und identische Programmteile in parallele Module zu laden. Damit kann man Module gegenseitig überwachen und Fehler unterdrücken. Durch Hinzufügen einer übergeordneten Überwachungseinheit entsteht so ein Sicherheitssystem, das für Sicherheitsfunktionen eingesetzt werden kann (vergl.: Patentanmeldung: Peter Wratil: Akt. Nr.: 198 57 683.8).- It is possible to double modules and identical program parts to load in parallel modules. This allows you to monitor modules mutually and suppress errors. By adding a parent Monitoring unit thus creates a security system that is suitable for Security functions can be used (see: patent application: Peter Wratil: Act.No .: 198 57 683.8).
- - Weiterhin kann man Programmteile einzelner Module auf zwei oder mehrere Module aufteilen, so daß eine Beschleunigung der Verarbeitung ermöglicht wird.- Furthermore, you can program parts of individual modules on two or more Split modules so that processing can be accelerated.
- - Darüber hinaus besteht die Möglichkeit, zwei Module identischer Ein- und Ausgabe mit identischen Modulprogrammen parallel laufen zu lassen, so daß eine Redundanz entsteht. Im Falle eines Ausfalls übernimmt die noch intakte Einheit den weiteren Ablauf, ohne daß eine Unterbrechung entsteht.- There is also the option of two modules of identical input and To let output run in parallel with identical module programs, so that redundancy arises. In the event of a failure, it is still intact Unity the further process without an interruption.
Das vorgestellte Verfahren eignet sich ganz besonders für die Zusammenschaltung unterschiedlicher Anbieter. Die Module können Einheiten dezentraler Komponenten speicherprogrammierbarer Steuerungen, Ventile, Antriebe, Displays, Tastaturen, Bedieneinheiten, Personal Computer oder andere Verarbeitungseinheiten sein. Mit diesem Verfahren erhält man eine weitgehende Herstellerunabhängigkeit, die eine optimale Anpassung an den Prozeß erlaubt.The method presented is particularly suitable for interconnection different providers. The modules can be units of decentralized components programmable logic controllers, valves, drives, displays, keyboards, Operating units, personal computers or other processing units. With This procedure gives you extensive manufacturer independence, the one allows optimal adaptation to the process.
Claims (17)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE1999106695 DE19906695A1 (en) | 1999-02-18 | 1999-02-18 | Automatic decentralization of programs in control devices and distribution of intelligence involves replacing existing computer system with decentrally organized computer system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE1999106695 DE19906695A1 (en) | 1999-02-18 | 1999-02-18 | Automatic decentralization of programs in control devices and distribution of intelligence involves replacing existing computer system with decentrally organized computer system |
Publications (1)
Publication Number | Publication Date |
---|---|
DE19906695A1 true DE19906695A1 (en) | 2000-08-31 |
Family
ID=7897839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1999106695 Ceased DE19906695A1 (en) | 1999-02-18 | 1999-02-18 | Automatic decentralization of programs in control devices and distribution of intelligence involves replacing existing computer system with decentrally organized computer system |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE19906695A1 (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10227241A1 (en) * | 2002-06-19 | 2004-01-15 | Koenig & Bauer Ag | Control for rotary printing machines |
DE10326542A1 (en) * | 2003-06-12 | 2005-01-05 | Siemens Ag | Operating automation system central unit involves central unit communicating with exactly one peripheral module associated with time slice during time slice when implementing activated sub-program |
EP1513035A2 (en) | 2003-09-02 | 2005-03-09 | Siemens Aktiengesellschaft | Real-time control method for a control apparatus for a industrial technical process and real-time operating method for a computing apparatus |
US7139622B2 (en) | 2001-02-20 | 2006-11-21 | Pilz Gmbh & Co. | Method and device for programming a failsafe control system |
DE102007015205A1 (en) * | 2007-03-27 | 2008-10-09 | Abb Ag | Automation system for controlling and monitoring of technical process or technical equipment, has slave modules integrated in base station or in slave module functional modules for local processing of application data |
DE102007015203A1 (en) * | 2007-03-27 | 2008-10-23 | Abb Ag | Automation system, has functional blocks integrated in base station and/or in slave module for local processing of application data, control signals and diagnostic data, where blocks are programmable by engineering tools |
WO2010121797A1 (en) * | 2009-04-20 | 2010-10-28 | Pilz Gmbh & Co. Kg | Safety controller for controlling an automated system and method for generating a user program for a safety controller |
WO2010121798A1 (en) * | 2009-04-20 | 2010-10-28 | Pilz Gmbh & Co. Kg | System and method for distributing project data of a safety controller of an automated system to the control components |
DE102010038484A1 (en) | 2010-07-27 | 2012-02-02 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Plant controlling method, involves transmitting error signal to output modules independent of fixed transmission sequence, and transferring control signal to plant in safe state based on error signal |
WO2014029609A1 (en) * | 2012-08-21 | 2014-02-27 | Siemens Aktiengesellschaft | Automation system with decentralized control functionalities in i/o subassemblies |
-
1999
- 1999-02-18 DE DE1999106695 patent/DE19906695A1/en not_active Ceased
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7139622B2 (en) | 2001-02-20 | 2006-11-21 | Pilz Gmbh & Co. | Method and device for programming a failsafe control system |
DE10227241A1 (en) * | 2002-06-19 | 2004-01-15 | Koenig & Bauer Ag | Control for rotary printing machines |
DE10326542A1 (en) * | 2003-06-12 | 2005-01-05 | Siemens Ag | Operating automation system central unit involves central unit communicating with exactly one peripheral module associated with time slice during time slice when implementing activated sub-program |
US7139618B2 (en) | 2003-06-12 | 2006-11-21 | Siemens Aktiengesellschaft | Method of operation and a control program for a central unit in an automation system |
DE10326542B4 (en) * | 2003-06-12 | 2016-12-08 | Siemens Aktiengesellschaft | Operating method and control program for a central unit of an automation system and central unit of an automation system and automation system itself |
EP2315090A1 (en) * | 2003-09-02 | 2011-04-27 | Siemens Aktiengesellschaft | Real-time control method for a control apparatus for a industrial technical process and real-time operating method for a computing apparatus |
EP1513035A2 (en) | 2003-09-02 | 2005-03-09 | Siemens Aktiengesellschaft | Real-time control method for a control apparatus for a industrial technical process and real-time operating method for a computing apparatus |
EP1513035A3 (en) * | 2003-09-02 | 2005-06-29 | Siemens Aktiengesellschaft | Real-time control method for a control apparatus for a industrial technical process and real-time operating method for a computing apparatus |
US7058460B2 (en) | 2003-09-02 | 2006-06-06 | Siemens Aktiengesellschaft | Real-time control process for a controller of an industrial technical process, and a real-time operating process for a computing device |
DE102007015205A1 (en) * | 2007-03-27 | 2008-10-09 | Abb Ag | Automation system for controlling and monitoring of technical process or technical equipment, has slave modules integrated in base station or in slave module functional modules for local processing of application data |
DE102007015203A1 (en) * | 2007-03-27 | 2008-10-23 | Abb Ag | Automation system, has functional blocks integrated in base station and/or in slave module for local processing of application data, control signals and diagnostic data, where blocks are programmable by engineering tools |
WO2010121798A1 (en) * | 2009-04-20 | 2010-10-28 | Pilz Gmbh & Co. Kg | System and method for distributing project data of a safety controller of an automated system to the control components |
US20120116541A1 (en) * | 2009-04-20 | 2012-05-10 | Matthias Reusch | Safety controller and method for controlling an automated installation |
CN102460327A (en) * | 2009-04-20 | 2012-05-16 | 皮尔茨公司 | System and method for distributing project data of a safety controller of an automated system to the control components |
CN102549508A (en) * | 2009-04-20 | 2012-07-04 | 皮尔茨公司 | Safety controller for controlling an automated system and method for generating a user program for a safety controller |
CN102460327B (en) * | 2009-04-20 | 2014-07-30 | 皮尔茨公司 | System and method for distributing project data of a safety controller of an automated system to the control components |
US9128480B2 (en) | 2009-04-20 | 2015-09-08 | Pilz Gmbh & Co. Kg | Safety controller and method for controlling an automated installation |
US9188964B2 (en) | 2009-04-20 | 2015-11-17 | Pilz Gmbh & Co. Kg | Safety controller for controlling an automated installation and method for generating a user program for a safety controller |
CN102549508B (en) * | 2009-04-20 | 2015-12-02 | 皮尔茨公司 | For the safety control of auto-control equipment and the method for creating application program for safety control |
EP3082002A1 (en) * | 2009-04-20 | 2016-10-19 | Pilz GmbH & Co. KG | Safety control and method for controlling an automated system |
WO2010121797A1 (en) * | 2009-04-20 | 2010-10-28 | Pilz Gmbh & Co. Kg | Safety controller for controlling an automated system and method for generating a user program for a safety controller |
DE102010038484A1 (en) | 2010-07-27 | 2012-02-02 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Plant controlling method, involves transmitting error signal to output modules independent of fixed transmission sequence, and transferring control signal to plant in safe state based on error signal |
WO2014029609A1 (en) * | 2012-08-21 | 2014-02-27 | Siemens Aktiengesellschaft | Automation system with decentralized control functionalities in i/o subassemblies |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2422243B1 (en) | Safety controller for an automated plant and method for creating an application program for a safety controller | |
EP2067081B1 (en) | Method for synchronising two control devices and redundant structured automation apparatus | |
DE112018002293T5 (en) | INDUSTRIAL CONTROL SYSTEM WITH OPEN ARCHITECTURE | |
EP2817682B1 (en) | Method for the failsafe operation of a process control system with redundant control devices | |
DE10316217A1 (en) | Individual function blocks for use in a process control system | |
EP1182528A2 (en) | Industrial control based on distributed technological objects | |
WO2013171234A1 (en) | Method for the monitoring, control and data-collection of system components of a service-oriented automation system, and a service-oriented automation system for carrying out said method | |
EP1865394A1 (en) | Method for replacing a field device in automation technology | |
EP1860564A1 (en) | Method and device for exchanging data based on the OPC communication protocol between the redundant components of a process control system | |
EP3622357B1 (en) | Control system for controlling safety-critical and non-safety-critical processes with master-slave functionality | |
DE102011011587A1 (en) | Port-independent topologically planned real-time network | |
EP2520991B1 (en) | Method for controlled intervention into the behaviour of a sub-module | |
DE19906695A1 (en) | Automatic decentralization of programs in control devices and distribution of intelligence involves replacing existing computer system with decentrally organized computer system | |
WO2013007349A1 (en) | Method and system for the dynamic distribution of program functions in distributed control systems | |
DE102007043769B4 (en) | Device, method for addressing, converter and method for secure data transmission | |
EP3039494B1 (en) | Automation system | |
EP3807728A1 (en) | Process control unit and method for interprocess exchange of process variables | |
EP2216696B1 (en) | Method and communication system for configuring a communication module containing a logic module | |
EP2561415A1 (en) | Data management method and programmable logic controller | |
WO2014161986A1 (en) | Control and data transfer system for redundant process control and method for firmware updating | |
DE3534465A1 (en) | Distributed system of stored program controllers | |
DE10014390A1 (en) | Fault tolerant computer system for control and monitoring of technical process of automation system - detects current data values of first control program and transfers to second computer at corresponding program stage | |
WO2016079091A1 (en) | Method for operating a first and at least one second field device | |
EP2687930B1 (en) | Automation unit for controlling a device or a system | |
EP2185982B1 (en) | Central control and instrumentation system for a technical installation and method for operating a central control and instrumentation system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8181 | Inventor (new situation) |
Free format text: ERFINDER IST ANMELDER |
|
8131 | Rejection |