DE4109258A1 - Verfahren zum umwandeln der hardwarekonfiguration einer programmierbaren verknuepfungssteuerung und des entsprechenden steuerprogramms zur verwendung bei einer zweiten programmierbaren verknuepfungssteuerung - Google Patents

Verfahren zum umwandeln der hardwarekonfiguration einer programmierbaren verknuepfungssteuerung und des entsprechenden steuerprogramms zur verwendung bei einer zweiten programmierbaren verknuepfungssteuerung

Info

Publication number
DE4109258A1
DE4109258A1 DE4109258A DE4109258A DE4109258A1 DE 4109258 A1 DE4109258 A1 DE 4109258A1 DE 4109258 A DE4109258 A DE 4109258A DE 4109258 A DE4109258 A DE 4109258A DE 4109258 A1 DE4109258 A1 DE 4109258A1
Authority
DE
Germany
Prior art keywords
plc
control program
hardware configuration
program
hardware
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE4109258A
Other languages
English (en)
Inventor
Gerald Michael Weisenborn
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intelligent Platforms LLC
Original Assignee
GE Fanuc Automation North America Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by GE Fanuc Automation North America Inc filed Critical GE Fanuc Automation North America Inc
Publication of DE4109258A1 publication Critical patent/DE4109258A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13019Translate program in order to be used on different plc
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S706/00Data processing: artificial intelligence
    • Y10S706/902Application using ai with detail of the ai system
    • Y10S706/919Designing, planning, programming, CAD, CASE

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Description

Die Erfindung bezieht sich allgemein auf programmierbare Verknüpfungssteuerungen und betrifft insbesondere ein Ver­ fahren zum Umwandeln einer vorhandenen Hardwarekonfigura­ tion einer programmierbaren Verknüpfungssteuerung und des Steuerprogramms in eine andere, äquivalente Hardwarekonfi­ guration einer programmierbaren Verknüpfungssteuerung und ein äquivalentes Steuerprogramm.
Programmierbare Verknüpfungssteuerungen (programmable logic controllers (PLC) oder speicherprogrammierbare Steuerungen (SPS)) sind eine relativ neue Entwicklung in der Prozeßsteuertechnologie. Als Teil einer Prozeßsteuerung wird eine programmierbare Verknüpfungssteuerung benutzt, um Eingangssignale aus einer Vielfalt von Eingabemoduln (Eingangssensoren) zu überwachen, die über Ereignisse und Zustände berichten, welche in einem gesteuerten Prozeß auftreten. Z. B. kann eine PLC bzw. SPS Eingangszustände wie die Motordrehzahl, die Temperatur, den Druck, den Volumenstrom und dgl. überwachen. Ein Steuerprogramm wird in einem Speicher innerhalb der PLC abgespeichert, um die PLC darüber zu instruieren, was zu unternehmen ist, wenn besondere Eingangssignale oder -zustände auftreten. Aufgrund dieser Eingangssignale, die durch Eingangssensoren geliefert werden, gewinnt und erzeugt die PLC Ausgangssignale, die zu verschiedenen Ausgangsvorrichtungen übertragen werden, um den Prozeß zu steuern. Z. B. gibt die PLC Ausgangssignale ab, um einen Motor zu beschleunigen oder zu verlangsamen, ein Relais zu öffnen oder zu schlie­ ßen, die Temperatur zu erhöhen oder zu verringern oder den Druck einzustellen, sowie für viele andere mögliche Steuerfunktionen, die zum Auflisten zu zahlreich sind.
Eine übliche PLC hat ein Gestell oder einen Träger, in den mehrere Eingabe/Ausgabe-Karten oder -Baugruppen plaziert werden können. Ein Träger hat mehrere Schlitze, in die diese Eingabe/Ausgabe-Karten eingeführt werden. Jede Ein­ gabe/Ausgabe-Karte hat mehrere E/A-Punkte. Ein E/A-Bus ver­ bindet die Karten in den Schlitzen mit dem Prozessor der PLC. Der besondere Prozessor, der in einer PLC zusammen mit der besonderen Wahl von Eingabe- und Ausgabekarten benutzt wird, die in dem PLC-Träger angeordnet sind, wird häufig als die Hardwarekonfiguration der PLC bezeichnet. Die Hard­ warekonfiguration beinhaltet auch die besonderen Adressen, die die E/A-Karten benutzen.
Mit dem Fortschritt der Technologie der programmierbaren Verknüpfungssteuerung wird es oft erwünscht, alte program­ mierbare Verknüpfungssteuerungen (PLCs) durch neue program­ mierbare Verknüpfungssteuerungen zu ersetzen. Wenn es not­ wendig wird, eine programmierbare Verknüpfungssteuerung so aufzubauen, daß sie einer alten oder anderen programmierba­ ren Verknüpfungssteuerung äquivalent ist, muß sowohl neue, äquivalente Hardware ausgewählt als auch eine neue, äquiva­ lente Verknüpfungssteuerungsprogrammierung (ein neues Steu­ erprogramm) erzeugt werden. Häufig wird es Inkompatibilitä­ ten hinsichtlich der Hardwareträgergrößen, der E/A-Modul­ dichten, der E/A-Punkt-Adressierung und in den Programmier­ konstrukten zwischen den ursprünglichen und den neuen PLCs geben. Es gibt häufig viele Komplexitäten in dem Hardwareauswählvorgang und in der Logikprogrammierung des Steuerprogramms.
Es ist demgemäß Ziel der Erfindung, ein Verfahren zum Um­ wandeln einer PLC-Hardwarekonfiguration und eines Steuer­ programms für eine erste PLC (SPS) in eine äquivalente PLC-Hard­ warekonfiguration und ein Steuerprogramm für eine zweite PLC, die von der ersten PLC verschieden ist, zu schaffen.
Weiter soll durch die Erfindung ein Verfahren geschaffen werden zum Umwandeln und Übersetzen eines Leiterlogiksteu­ erprogramms, das auf der ersten PLC betreibbar ist, in ein äquivalentes Leiterlogiksteuerprogramm, das auf der zweiten PLC betreibbar ist.
Ferner soll durch die Erfindung ein äquivalentes zweites Steuerprogramm in Form eines Eintastformats hohen Niveaus geschaffen werden, das von der internen Logik der zweiten programmierbaren Verknüpfungssteuerung im wesentlichen un­ abhängig ist.
Durch die Erfindung wird ein Verfahren geschaffen zum Um­ wandeln eines ersten Steuerprogramms und einer ersten Hard­ warekonfiguration für eine erste PLC (SPS) in ein zweites Steuer­ programm und eine zweite Hardwarekonfiguration für eine zweite PLC. Das erste und das zweite Steuerprogramm enthal­ ten mehrere Anweisungen. Das Verfahren nach der Erfindung beinhaltet die Schritte, Konfigurationsinformation mit Be­ zug auf die erste Hardwarekonfiguration der ersten PLC ei­ nem Prozessor zur Verfügung zu stellen; das erste PLC-Steu­ erprogramm dem Prozessor zur Verfügung zu stellen; und die zweite Hardwarekonfiguration durch den Prozessor so auszu­ wählen, daß sie der ersten Hardwarekonfiguration äquivalent ist, und zwar durch Bezugnahme auf eine Datenbasis, die die erste Hardwarekonfiguration zu möglichen zweiten Hardwarekonfigurationen in Beziehung setzt. Das Verfahren beinhaltet außerdem, eine Abbildung von E/A-Punkten aus der ersten PLC auf die zweite PLC zu erzeugen. Das Verfahren beinhaltet ferner den Schritt, das zweite Steuerprogramm so zu erzeugen, daß es dem ersten Steuerprogramm äquivalent ist, wobei das zweite Steuerprogramm durch den Prozessor erzeugt wird, der auf jede Anweisung des ersten Steuerpro­ gramms Bezug nimmt und eine auf der zweiten PLC funktions­ fähige Anweisung bestimmt, die dazu äquivalent ist.
Ausführungsbeispiele der Erfindung werden im folgenden un­ ter Bezugnahme auf die Zeichnungen näher beschrieben. Es zeigt
Fig. 1 ein Blockschaltbild eines ursprünglichen und eines neuen Ziel-PLC-Gestells, bei denen das Verfahren nach der Erfindung anwendbar ist,
Fig. 2 ein Funktionsblockschaltbild der Hardware und des Logikübersetzers nach der Erfindung,
Fig. 3 ein Flußdiagramm des Übersetzerprogramms zum Umwandeln von PLC-Anwendungen,
Fig. 4 eine Eins-zu-Eins-Abbildung von physikali­ schen E/A-Punkten zwischen der ursprüngli­ chen und der neuen PLC, und
Fig. 5 einen Teil eines Leiterdiagramms für eine PLC, das die Leiterlogik für eine Sprosse zeigt.
Eine Beschreibung hohen Niveaus des Umwandlungsverfahrens nach der Erfindung ist im folgenden angegeben.
Der erste Schritt bei dem Umwandlungsverfahren nach der Er­ findung besteht darin, eine Eins-zu-Eins-Abbildung der phy­ sikalischen Eingabe- und Ausgabe(E/A)-Punkte aus dem ur­ sprünglichen PLC-System (der ersten PLC) in das neue Ziel- PLC-System (die zweite PLC) zu erzielen. Ein auf Wissen ge­ gründetes Programm künstlicher Intelligenz (AI oder artifi­ cial intelligence) wird benutzt, um die erforderlichen Mo­ duln oder E/A-Karten in dem Träger der neuen programmierba­ ren Verknüpfungssteuerung auszuwählen, indem ein Anpaßpro­ zeß benutzt wird, der auf den Moduln oder E/A-Karten in dem Träger der ursprünglichen programmierbaren Verknüpfungssteuerung basiert. Die äquivalenten E/A-Punkt- Adressen werden dann bestimmt, und eine Abbildung der neuen E/A-Punkt-Adressen auf die ursprünglichen E/A-Punkt-Adres­ sen wird erzeugt.
In dem zweiten Schritt des Verfahrens wird die Liste der logischen Programmanweisungen des ursprünglichen PLC-Steu­ erprogramms in die äquivalenten Programmierkonstrukte des neuen PLC-Systems umgewandelt. Das AI-Computerprogramm ar­ beitet mit einer ursprünglichen oder ersten Steuerprogramm­ datei, welche eine ASCII-Darstellung der Leiterlogikkon­ strukte aus dem ursprünglichen PLC-System in Form einer symbolischen Darstellung derselben enthält. Diese Datei wird Sprosse für Sprosse und Symbol für Symbol verarbeitet, so daß die E/A-Adressen aus der Abbildung, die in dem er­ sten Schritt des Verfahrens gemacht worden ist, automatisch einem Satz von Tastenbetätigungen zugeordnet werden, der eine äquivalente Logik für die neue programmierbare Ver­ knüpfungssteuerung erzeugt. Teile der ursprünglichen Steu­ erprogrammlogik, die nicht automatisch umgewandelt werden können, werden für manuelle Intervention und Resolution identifiziert und gekennzeichnet.
Durch eine Playback-Möglichkeit eines Programmpakets einer programmierbaren Verknüpfungssteuerung für die neue PLC werden automatisch sowohl die äquivalente neue Hardwarekon­ figuration als auch das äquivalente neue Steuerprogramm in die neue programmierbare Verknüpfungssteuerung eingetippt, so daß der Benutzer diese Aufgabe nicht manuell auszuführen braucht. Diese übersetzte Logik hat die Form einer Eintast­ datei. D. h., der neuen PLC ist ein Programmierpaket zuge­ ordnet, das in der Lage ist, entweder ein Steuerprogramm, das durch manuell erzeugte Eintastungen eingegeben wird, oder eine Eintastdatei, die den Platz der manuell eingege­ benen Eintastungen einnimmt, zu akzeptieren. Nach der Reso­ lution eines relativ kleinen Prozentsatzes an nichtumgewan­ delter Logik, der manuellen Eingriff verlangt, wird ein neues ausführbares Steuerprogramm für die neue programmier­ bare Verknüpfungssteuerung erzeugt, wie es weiter unten er­ läutert ist.
Das Verfahren nach der Erfindung wird unter Bezugnahme auf Fig. 1 veranschaulicht, wo die Logikhardware einer ur­ sprünglichen programmierbaren Verknüpfungssteuerung (PLC) 10 in eine äquivalente Logikhardware einer neuen PLC 20 um­ zuwandeln ist. Die ursprüngliche PLC 10 hat Träger 110 und 120, die durch einen Bus 130 miteinander verbunden sind. Die Hardwarekomponenten der Träger 110 und 120 der ur­ sprünglichen PLC 10 werden identifiziert, und eine ent­ sprechende E/A-Liste wird erzeugt. Eine Liste äquivalenter Hardwarekomponenten wird für die neue PLC 20 erzeugt, und eine Eins-zu-Eins-E/A-Adreßabbildung zwischen den Komponen­ ten der ursprünglichen PLC 10 und den Komponenten der neuen PLC 20 wird erzeugt.
Die ursprüngliche PLC 10 hat eine 115-Volt-Wechselstromver­ sorgung 140 und fünf Hardwarekomponenten, zu denen eine CPU 150 und die Hardwarekomponenten 160, 170, 180 und 190 gehö­ ren, die alle in entsprechenden Schlitzen in dem Träger 110 befestigt sind. Der zweite Träger 120 enthält eine weitere 115-Volt-Wechselstromversorgung 210 zusammen mit Hardware­ komponenten 220, 230 und 240, die in entsprechenden Schlit­ zen in dem Träger 120 befestigt sind. Die Trägerschlitze 250 des Trägers 120 sind in diesem Beispiel unbenutzt. In dem in Fig. 1 gezeigten Beispiel ist die ursprüngliche PLC 10 eine programmierbare Verknüpfungssteuerung der SERIE 1, und die Komponenten 110-250 sind Hardwaremoduln und Kompo­ nenten der SERIE 1, welche von GE Fanuc North America, Inc. hergestellt werden.
In diesem Beispiel wird die neue PLC 20 durch das im fol­ genden beschriebene Verfahren so konfiguriert, daß sie der ursprünglichen PLC 10 äquivalent ist. Das äquivalente Steu­ erprogramm für die neue PLC 20 wird ebenfalls aus dem Steu­ erprogramm für die ursprüngliche PLC 10 erzeugt, was im folgenden ebenfalls beschrieben ist. In diesem besonderen Beispiel hat die neue PLC 20 einen einzelnen Träger 310, der eine 115-Volt-Wechselstromversorgung 320 und vier Hard­ warekomponenten 330, 340, 350 und 360, die in entsprechen­ den Schlitzen in dem Träger 310 befestigt sind, aufweist.
Der Hardwareschlitz 370 des Trägers 310 ist in diesem Bei­ spiel ein Reserveschlitz. In der in Fig. 1 gezeigten Aus­ führungsform ist die neue PLC 20 eine programmierbare Ver­ knüpfungssteuerung der SERIE 90-30, und die Hardwarekompo­ nenten 310-370 sind Moduln und Komponenten der SERIE 90-30, die von der GE Fanuc North America, Inc. hergestellt wer­ den.
Die Umwandlung der Hardwarekonfiguration und des Steuerlo­ gikprogramms der PLC 10 in die äquivalente Hardwarekonfigu­ ration und das äquivalente Steuerlogikprogramm der PLC 20 beinhaltet die Schritte, eine Leiterlogikprogrammdatei des Steuerlogikprogramms der ursprünglichen PLC 10 zu erzeugen und außerdem eine Liste des E/A-Modulinhalts der ursprüng­ lichen PLC 10 zu erzeugen. Das Verfahren beinhaltet weiter den Schritt, einen äquivalenten Hardwareinhalt für die neue Ziel-PLC 20 zu erzeugen, und den Schritt, die E/A-Punkte zwischen der ursprünglichen PLC 10 und der neuen PLC 20 ab­ zubilden. Das Verfahren beinhaltet außerdem den Schritt, ein Steuerlogikprogramm für die neue PLC 20 zu erzeugen, das dem Steuerlogikprogramm der ursprünglichen PLC 10 äqui­ valent ist. Die Hardwarekonfigurations- und Steuerlogikpro­ grammübersetzungen werden mit Hilfe eines auf Wissen basie­ renden Computerprogramms künstlicher Intelligenz ausge­ führt, das als ein Leiterlogikübersetzerprogramm benutzt wird, was im folgenden noch näher erläutert ist.
Fig. 2 zeigt ein Flußdiagramm des Verfahrens zum Umwandeln des Steuerlogikprogramms der ursprünglichen PLC 10 oder der Anwendung auf ein Steuerlogikprogramm oder der Anwendung für die neue Ziel-PLC 20. Ein auf Wissen basierendes Über­ setzercomputerprogramm 400 künstlicher Intelligenz, bei dem die Methodologie der künstlichen Intelligenz (artificial intelligence oder AI) benutzt wird, benutzt die folgenden Eingaben: eine Hardwarekonfigurationsdatei 410 der ur­ sprünglichen PLC, die in das Übersetzerprogramm durch Be­ dienerinteraktion eingegeben wird und die Hardware der ur­ sprünglichen PLC 10 beschreibt, und eine Steuerprogrammda­ tei 420 der ursprünglichen PLC 10. Das Übersetzerprogramm 400 ist bedienerinteraktiv und erzeugt folgende Ausgaben: eine Querverweisungsliste 430 von E/A-Punkten der ur­ sprünglichen PLC 10 und von E/A-Punkten der neuen Ziel-PLC 20, eine neue Hardwarekonfiguration 440 der neuen PLC 20 und ein kommentiertes neues Steuerprogramm 450 der neuen PLC 20.
Das Übersetzerprogramm 400 enthält eine Datenbasis, welche Information über alle verfügbaren Hardwaremoduln oder E/A- Karten sowohl für die ursprüngliche PLC 10 als auch für die neue Ziel-PLC 20 sowie die Entsprechung zwischen denselben enthält. Es enthält weiter kompilierte, auf Wissen basie­ rende Regeln, welche Adreßinformation und neue Erkenntnisse zum Abbilden von E/A-Punkten zwischen der ursprünglichen PLC 10 und der neuen Ziel-PLC 20 enthalten. Das Über­ setzerprogramm 400 enthält außerdem eine Datenbasis von Programmierertastengedächtnishilfen der neuen Ziel-PLC 20 und deren ganzzahlige Äquivalente, einen Interpretierer und ein Verzeichnis, welches alle Steuerprogrammelemente der ursprünglichen PLC 10 in Beziehung setzt zu einem Satz von interpretierenden Schritten und Eintastungen.
Das Übersetzerprogramm 400 erzeugt eine Ausgangsdatei 450 (vgl. Fig. 2), die eine Eintastungslisteneingabe für die neue Ziel-PLC 20 ist. Im Stand der Technik wurden PLCs durch Bedienungspersonen programmiert, die manuell eingeta­ stet haben, wogegen bei der Erfindung dieses Eintasten hauptsächlich durch das Übersetzercomputerprogramm 400 er­ folgt. Darüber hinaus ist dieselbe Eintastungslistendatei, die für die neue PLC 20 erzeugt wird, als eine Programmein­ gabe hohen Niveaus für zukünftige PLCs verwendbar, die die­ selbe oder eine ähnliche Eintastprogrammeingabe haben, aber mit völlig anderer interner Maschinencodierung arbeiten.
Fig. 3 ist ein Flußdiagramm eines Übersetzerprogramms 400, das benutzt wird, um das Verfahren nach der Erfindung aus­ zuführen. Das Übersetzerprogramm 400, das vorzugsweise auf einem Personalcomputer ausgeführt wird, arbeitet folgender­ maßen. Das Programm 400 beginnt bei einem Startblock 505 und zeigt ein Menü mit den Wahlmöglichkeiten des Benutzers KONFIGURATION 506, PROGRAMM 507 oder AUSGANG 508 an, die in einem Block 510 ausgewählt werden können. In der wirklichen Praxis wird KONFIGURATION 506 im allgemeinen zuerst ge­ wählt, und in dieser Betriebsart wird eine Hardwarekonfigu­ ration der neuen Ziel-PLC erzeugt, die auf einer Hardware­ konfiguration der alten, ursprünglichen PLC basiert.
Danach wird PROGRAMM 507 ausgewählt, und in dieser Be­ triebsart wird das Leiterlogikprogramm (Steuerprogramm) der alten, ursprünglichen PLC 10 in ein Eintastprogramm (Steuerprogramm) für die neue Ziel-PLC 20 übersetzt. Schließlich wird das Übersetzercomputerprogramm 400 mit der Wahl von AUSGANG in dem Block 508 beendet.
Wenn KONFIGURATION in dem Block 506 ausgewählt wird, wird dem Benutzer in dem Block 515A die besondere Hardware-CPU an die Hand gegeben, die in der Konfiguration der ursprüng­ lichen PLC 10 benutzt worden ist. Gemäß der Angabe in dem Block 515B wird dann ein graphisches Darstellungsmenü ange­ zeigt, aus dem der Rest der Hardware der ursprünglichen PLC 10 ausgewählt wird. Die Benutzerschnittstellenblöcke 515C- 515E des Programms 400 gestatten dem Benutzer, die Hardwa­ reschlitze der PLC 10 auf einer graphischen Menüdarstel­ lung, welche den Hardwaremodulschlitzplätzen auf der PLC 10 entsprechen, hervorzuheben. Wenn die Computercursortasten durch den Benutzer betätigt werden, werden andere Modul­ schlitze hervorgehoben, und für jeden hervorgehobenen Schlitz wird ein Menü von möglichen Hardwaremöglichkeiten auf dem Computerbildschirm dargeboten. Der Benutzer wählt unter diesen Wahlmöglichkeiten aus, indem er mit F1, F2, . . . Fn bezeichnete Computertasten niederdrückt, welche der gewünschten Auswahl aus dem Menü, das durch das Programm 400 angezeigt wird, und den Programmentscheidungsblöcken 515F-515H entsprechen. Jeder Wahlmöglichkeit F1 bis Fn ist einer von n möglichen Hardwaremoduln zugeordnet, die in der ursprünglichen PLC 10 enthalten sein können. Wenn der Be­ nutzer den passenden Hardwaremodul ausgewählt hat, ermit­ telt das Programm 400 aus seiner Datenbasis die passenden Hardwarekonfigurationsmöglichkeiten für den gewählten Modul in einem der Blöcke 520A-520C, konstruiert ein Benutzermenü der verfügbaren Wahlmöglichkeiten in dem Block 525 und zeigt dieses Menü in dem Block 530 an.
Das Programm 400 vergleicht die vom Benutzer ausgewählte Hardware mit entsprechender äquivalenter Hardware für die Ziel-PLC 20 in dem Programmblock 535, bestimmt die E/A-Ent­ sprechung zwischen den Moduln der ursprünglichen PLC 10 und den Moduln der neuen PLC 20 in dem Block 540 und macht die passende E/A-Abbildungseingabe in die E/A-Tabellendatei in dem Block 545.
Die Steuerung des Programms 400 kehrt zu der Benutzergra­ phikschnittstelle 515 zurück, die durch die Blöcke 515A- 515H definiert ist, an der die Hardwarewahlmöglichkeiten anschließend durch den Benutzer eingegeben werden. Zum Ver­ lassen der vorstehend beschriebenen Programmschleife be­ dient sich der Benutzer der Wahlmöglichkeit F10 in dem Pro­ grammblock 550. Das Programm 400 schreibt dann die Hard­ warekonfiguration und das E/A-Verzeichnis, die in den Blöc­ ken 530-545 bestimmt worden ist, in permanente Benutzerda­ teien in dem Programmblock 555 ein. Diese Benutzerdateien sind als Ausgaben 430 und 440 des Programms 400 in Fig. 2 gezeigt. Die Benutzerdateien 430 und 440 werden später bei dem Logikprogrammiererpaket der PLC 20 auf die weiter oben beschriebene Weise benutzt, um den Hardwareinhalt und die Basisadreßeinstellungen für die Ziel-PLC 20 automatisch einzugeben.
Gemäß Fig. 3 kehrt nach dem Ausgang über den Programmblock 550 die Steuerung in dem Programm 400 zu dem Hauptmenü in dem Block 510 zurück, woran anschließend die Menüwahlmög­ lichkeit PROGRAMM in dem Block 507 ausgewählt werden kann. Diese Auswahl wird benutzt, um die Steuerprogrammdatei der ursprünglichen PLC 10 (gezeigt als Eingabe 420 in das Pro­ gramm 400 in Fig. 2) in einen Satz von Eintastungen umzuwandeln, die ein äquivalentes Programmelement oder einen äquivalenten Algorithmus in die Ziel-PLC 20 über das Logikprogrammiererpaket der PLC 20 eingeben.
Eine Benutzerprogrammdatei (gezeigt als Eingabe 420 in Fig. 2), welche das Steuerprogramm der ursprünglichen PLC 10 darstellt, wird in dem Programmblock 560 geöffnet. Diese Datei ist eine ASCII-Druckdatei, welche eine sprossenweise symbolische Leiterlogikdarstellung des Steuerprogramms der ursprünglichen PLC 10 enthält. Die Blöcke 565A-565D des Programms 400 lesen diese Eingangsdatei Zeile für Zeile, erkennen Programmelemente und passen Elemente an eine Schrittliste an.
Dafür liest ein Block 565A mit einem Entscheidungsblock 565B Eingabezeilen des ursprünglichen Steuerprogramms, bis eine Startzeile gefunden wird. Ein Block 565C unterteilt Zeilen aus dem ursprünglichen Steuerprogramm in erkennbare Elemente, und der Block 565D paßt die Elemente einer Schrittliste an. In Blöcken 570A-570F des Programms 400 wird die Schrittliste dann bei Bedarf sequentiell in­ terpretiert und in Eintastungen für den Logikprogrammierer der neuen Ziel-PLC 20 in Form einer Ausgabedatei (in Fig. 2 mit 450 bezeichnet) umgewandelt.
Die ursprünglichen Leitersprossen und die Programmkommen­ tare der ursprünglichen PLC werden als kommentierte Kommen­ tare in dem neuen Steuerprogramm beibehalten, das in der Ausgabedatei 450 enthalten ist. Das heißt, der Block 570A entfernt einen Schritt aus der Schrittliste, und der Ent­ scheidungsblock 570B testet, ob der Schritt eine Pro­ grammeintastung der neuen PLC 20 ist. Wenn in dem Entschei­ dungsblock 570B festgestellt wird, daß der betreffende Schritt tatsächlich eine Eintastung ist, wird der Schritt in eine ganzzahlige Form umgewandelt und in dem Block 570C in die neue Steuerprogrammausgangsdatei eingeschrieben.
Wenn der Schritt keine Eintastung ist, wird er in dem Block 570D in äquivalente Eintastungen interpretiert und in dem Block 570E in die Ausgangsdatei eingeschrieben. Der Block 570F veranlaßt die Übersetzungsblöcke 570A-570E zu iterie­ ren, bis alle Schritte in der Schrittliste übersetzt und in die Ausgangsdatei 450 für das neue Steuerprogramm einge­ schrieben worden sind.
Die PROGRAMM-Funktion des Programms 400 hört über den Block 575 an dem Ende der Benutzerdaten auf und kehrt zu dem Hauptmenüabschnitt zurück, wo in dem Block 508 der AUSGANG gewählt werden kann. Das Programm 400 hört dann in dem Block 580 auf und überläßt die Steuerung wieder dem Host- Computer.
Gemäß Fig. 2 ist in dieser Ausführungsform des Verfahrens nach der Erfindung das Übersetzerprogramm 400, welches als Teil des Umwandlungsprozesses nach der Erfindung benutzt wird, ein Computerprogramm "künstlicher Intelligenz", das unter Verwendung der Programmiersprache Turbo Prolog (ein eingetragenes Warenzeichen von Borland International) ge­ schrieben und auf einem IBM-Personalcomputer (ein eingetra­ genes Warenzeichen der International Business Machines Corp.) oder auf einem kompatiblen DOS (disk operating sy­ stem) -Personalcomputer ausgeführt wird. Die Eingabe 420 wird nun als eine DOS-Eingangsdatei erkannt, und die Aus­ gänge 430, 440 und 450 sind DOS-Ausgangsdateien auf dem Host-Personalcomputer. Die Eingabe 410 ist der Satz von Be­ nutzertastatureingaben und Menüauswahlantworten, die unter der Steuerung des Programms 400 ausgewählt werden. Dem Fachmann ist klar, daß andere Computersprachen, Computerbe­ triebssysteme und Computer statt der oben angegebenen mit im wesentlichen denselben Ergebnissen benutzt werden kön­ nen.
Zum deutlicheren Veranschaulichen eines Teils des Umwand­ lungsverfahrens nach der Erfindung ist ein Beispiel einer teilweisen Dateiauflistung eines Eins-zu-Eins-Verzeichnis­ ses von physikalischen E/A-Punkten in Fig. 4 gezeigt. In jeder Verzeichnisanweisung wird die erste Zahl 610, bei der es sich um einen E/A-Punkt der ursprünglichen PLC 10 han­ delt, direkt in die zweite Zahl 615 abgebildet, welche ein E/A-Punkt der neuen Ziel-PLC 20 ist. In dem besonderen Bei­ spiel von Fig. 4 sind die in Klammern angegebenen ersten Zahlen 610 oktale Adressen auf Schlitzbasis, insbesondere für die PLC der SERIE 1, wogegen für die zweiten zugeordne­ ten Zahlen 615 die Dezimalbezifferung gemäß der Standard- IEC-Speichertypbezeichnung benutzt wird: %I für Eingänge und %Q für Ausgänge, welche besonders für eine PLC der SE- RIE 90-30 gelten.
Es ist nicht immer erwünscht, daß die PLC-Programmüberset­ zung oder -Umwandlung vollständig automatisch erfolgt. In einigen Fällen gibt es Gelegenheiten zum Verbessern der Leistung von gewissen PLC-Programmfunktionen, wenn eine Steuerprogrammanwendung von einer ursprünglichen Hardwarekonfiguration auf eine neue Zielkonfiguration über­ tragen wird. Die neue Zielkonfiguration kann erwünschte Funktionen enthalten, die auf der ursprünglichen PLC nicht vorhanden waren, oder es kann Fälle geben, wo es eine Eins- zu-Eins-Entsprechung zwischen den Leiterlogikkonstrukten der ursprünglichen PLC und denjenigen der Ziel-PLC gibt. In diesen Fällen ist ein manueller Eingriff in den Überset­ zungsprozeß erwünscht. In dem Fall, in welchem eine Eins- zu-Eins-Entsprechung nicht vorhanden ist, werden spezielle Symbole durch den Übersetzer in die Datei 450 eingefügt, welche jeden derartigen Fall identifizieren. Ebenso wird dem Benutzer des Übersetzerprogramms die Wahlmöglichkeit gegeben, gewisse Konstrukte in dem ursprünglichen PLC- Steuerprogramm unübersetzt zu lassen, so daß er/sie Verbes­ serungen in dem Anweisungssatz der Ziel-PLC ausnutzen kann. Wenn von dieser Wahlmöglichkeit Gebrauch gemacht wird, wer­ den spezielle Symbole in die Datei 450 eingefügt, welche jeden Fall identifizieren. In beiden Fällen erfolgt ein ma­ nueller Eingriff später unter Verwendung der Programmiersystemsoftware für die Ziel-PLC, um die ge­ wünschten Befehle in das Zielprogramm zu editieren.
Fig. 5 zeigt eine Sprosse 630 (SPROSSE 8) einer ASCII-Da­ tei, die eine Leiterlogikdarstellung des Steuerprogramms der ursprünglichen PLC 10 enthält und als eine Sprosse der Eingangsdatei 420 für das Übersetzerprogramm 400 dient. Das Übersetzerprogramm 400 verarbeitet diese ASCII-Information durch Erkennen des Stranges 635 ("003") als einen Eingangs­ punkt und erzeugt die entsprechenden PLC-20-Eintastungen "%I4" als den entsprechenden E/A-Punkt, wie es weiter oben in Fig. 4 gezeigt worden ist. Das Übersetzerprogramm 400 enthält viele "Äquivalente"-Anweisungen in seiner Datenba­ sis, wie z. B. die Äquivalenten-Anweisungen:
equiv("--) (--",(NO_CONTACT,REF, NAME, ENTER))
equiv("--( )", (COIL,REF,NAME,ENTER))
Jedesmal dann, wenn die ASCII-Symbole "--) (--" durch das Übersetzerprogramm 400 angetroffen werden, setzt das Über­ setzerprogramm 400 diese Symbole mit der Liste in Klammern gleich. Es wird:
  • 1) NO_CONTACT (normalerweise offener Kontakt) in dessen ganzzahliges Äquivalent umwandeln und die ganze Zahl in die Eintastdatei 450 einschreiben. Diese ganze Zahl wird als Eingabe durch das Programmierpaket der neuen PLC 20 direkt erkannt.
  • 2) Das REF-Symbol verarbeiten, indem es auf die Referenz schaut, die dem Kontakt in der ASCII-Datei des Programms der ursprünglichen PLC 10 zugeordnet war, z. B. wird die Re­ ferenz für die Symbole "003" in die entsprechende E/A-Refe­ renz "%I4" umgewandelt. Die ASCII-Zeichen zum Eingeben die­ ser E/A-Referenz werden der Eintastdatei 450 hinzugefügt.
  • 3) Das NAME-Symbol verarbeiten durch Feststellen des Spitznamens (in diesem Beispiel ist keiner gezeigt), der der Referenz zugeordnet ist, und ihn modifizieren, um ihn den Namengebungsvereinbarungen des Programmierers der PLC 20 anzupassen, und die entsprechenden ASCII-Zeichen in die Eintastdatei 450 eingeben.
  • 4) Das ENTER-Symbol in dessen ganzzahliges Äquivalent um­ wandeln und dieses ganzzahlige Äquivalent in die Eintastda­ tei 450 eingeben.
Somit werden Referenzen zu den Kontakten 640A, 640B und 640C in Fig. 5 ebenso übersetzt, indem die Datenbasisregeln benutzt werden, die oben angegeben sind.
Wenn das Übersetzerprogramm 400 die "--( )"-ASCII-Symbole antrifft, d. h. die Symbole innerhalb der Anführungszeichen, die in der obigen zweiten Äquivalente-Anweisung gezeigt sind, führt es einen analogen Satz von Operationen gemäß der zweiten "Äquivalente"-Datenbasisanweisung aus. Somit wird eine Spule (coil) 640D in Fig. 5 in die entsprechenden Eintastungen gemäß der obigen zweiten "Äquivalente"-Anwei­ sung übersetzt. Die Referenzen 645 und 650 zu den Adressen "601" und "600" in Fig. 5 werden in die Adressen "%T0236" und "%T0235" übersetzt, wie es in der Tabelle von Fig. 4 gezeigt ist. Andere "Äquivalente"-Datenbasisanweisungen (hier nicht gezeigt) haben zusätzliche Komplexitätsgrade und werden durch das Übersetzerprogramm 400 passend gehand­ habt.
Vorstehend ist ein Verfahren zum Umwandeln einer ursprüng­ lichen PLC-Anwendung in eine neue PLC-Anwendung beschrieben worden. Das heißt, beschrieben worden ist ein Verfahren zum Auswählen der Hardwarekomponenten und der Konfiguration ei­ ner neuen PLC in bezug auf die Hardwarekomponenten und die Konfiguration einer ursprünglichen PLC. Darüber hinaus sorgt das Verfahren für die Übersetzung eines ursprüngli­ chen Leiterlogiksteuerprogramms in eine Eintastdatei, die direkt benutzbar ist, um die neue PLC zu programmieren.

Claims (9)

1. Verfahren zum Umwandeln eines ersten Steuerprogramms und einer ersten Hardwarekonfiguration für eine erste PLC (SPS) in ein zweites Steuerprogramm und eine zweite Hardwarekonfigu­ ration für eine zweite PLC (SPS) wobei das erste und das zweite Steuerprogramm mehrere Anweisungen enthalten, gekennzeich­ net durch folgende Schritte:
Abgeben einer Konfigurationsinformation über die erste Hardwarekonfiguration der ersten PLC an einen Prozessor;
Abgeben des ersten PLC-Steuerprogramms an den Prozessor;
Auswählen der zweiten Hardwarekonfiguration als Äquivalent zu der ersten Hardwarekonfiguration durch den Prozessor, der auf eine Datenbasis Bezug nimmt, die die erste Hardwarekonfiguration zu möglichen zweiten Hardwarekon­ figurationen in Beziehung setzt;
Erzeugen einer Abbildung von E/A-Punkten aus der ersten PLC auf die zweite PLC; und
Erzeugen des zweiten Steuerprogramms als Äquivalent zu dem ersten Steuerprogramm, wobei das zweite Steuerprogramm durch den Prozessor erzeugt wird, der auf jede Anweisung des ersten Steuerprogramms Bezug nimmt und eine auf der zweiten PLC funktionsfähige Anweisung bestimmt, die dazu äquivalent ist.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das erste Steuerprogramm eine ASCII-Darstellung von Leiter­ logikkonstrukten der ersten PLC ist.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das zweite Steuerprogramm eine Eintastungsdatei ist.
4. Verfahren nach einem der Ansprüche 1 bis 3, gekennzeich­ net durch folgenden weiteren Schritt:
Kennzeichnen von vorbestimmten Anweisungen des ersten Steuerprogramms für manuelle Umwandlung, so daß Anweisun­ gen, die keine genauen Äquivalente haben, und diejenigen Anweisungen, die für die zweite PLC manuell optimiert wer­ den können, manuell umgewandelt werden können.
5. Verfahren zum Umwandeln eines ersten Steuerprogramms und einer ersten Hardwarekonfiguration für eine erste PLC in ein zweites Steuerprogramm und eine zweite Hardwarekonfigu­ ration für eine zweite PLC, wobei die erste PLC einen Trä­ ger aufweist, in den mehrere Hardwaremoduln der ersten PLC eingesetzt sein können, wobei die zweite PLC einen Träger aufweist, in den mehrere Hardwaremoduln der zweiten PLC eingesetzt sein können, und wobei das erste Steuerprogramm mehrere Logikanweisungen enthält, gekennzeichnet durch fol­ gende Schritte:
Anzeigen einer Darstellung von mehreren Hardwaremoduln, die bei der ersten PLC verwendbar sind;
Auswählen derjenigen Moduln unter den Hardwaremoduln in dem Anzeigeschritt, die in einer besonderen Hardwarekonfigura­ tion für die erste PLC tatsächlich benutzt werden;
Erzeugen einer ersten Hardwarekonfigurationsdarstellung der Hardwarekonfiguration, die in dem Auswählschritt ausgewählt worden ist;
Bestimmen derjenigen Hardwaremoduln der zweiten PLC, die Hardwaremoduln der ersten PLC äquivalent sind, welche in der ersten Hardwarekonfiguration benutzt werden, durch Be­ zugnahme auf eine erste Datenbasis, die Information darüber enthält, welche Hardwaremoduln zur Verwendung bei der zwei­ ten PLC entsprechenden Hardwaremoduln zur Verwendung bei der ersten PLC äquivalent sind;
Erzeugen einer Abbildung von E/A-Punkten aus der ersten PLC auf E/A-Punkte der zweiten PLC, wobei die Schritte des Be­ stimmens und Erzeugens einer Abbildung so die zweite Hard­ warekonfiguration der zweiten PLC definieren; und
Erzeugen des zweiten Steuerprogramms zur Verwendung bei der zweiten PLC aus den Anweisungen der ersten PLC und der Ab­ bildung der E/A-Punkte.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß der Schritt des Erzeugens des zweiten Steuerprogramms bein­ haltet, jede Anweisung des ersten Steuerprogramms auf eine zweite Datenbasis zu beziehen, die Anweisungen, welche bei der ersten PLC verwendbar sind, in Beziehung setzt zu einer äquivalenten Anweisung, die bei der zweiten PLC verwendbar ist, so daß auf jede Anweisung des ersten Steuerprogramms Bezug genommen wird, um eine äquivalente Anweisung zu be­ stimmen, die auf der zweiten PLC operativ funktionsfähig ist.
7. Verfahren nach Anspruch 5 oder 6, dadurch gekennzeich­ net, daß das erste Steuerprogramm eine ASCII-Darstellung von Leiterlogikkonstrukten der ersten PLC ist.
8. Verfahren nach einem der Ansprüche 5 bis 7, dadurch gekennzeichnet, daß das zweite Steuerprogramm eine Einta­ stungsdatei ist.
9. Verfahren nach einem der Ansprüche 5 bis 8, gekennzeich­ net durch den zusätzlichen Schritt:
Kennzeichnen von vorbestimmten Anweisungen des ersten Steu­ erprogramms für manuelle Umwandlung, so daß Anweisungen, die keine exakten Äquivalente haben, und diejenigen Anwei­ sungen, die für die zweite PLC manuell optimiert werden können, manuell umgewandelt werden können.
DE4109258A 1990-03-29 1991-03-21 Verfahren zum umwandeln der hardwarekonfiguration einer programmierbaren verknuepfungssteuerung und des entsprechenden steuerprogramms zur verwendung bei einer zweiten programmierbaren verknuepfungssteuerung Ceased DE4109258A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/501,612 US5142469A (en) 1990-03-29 1990-03-29 Method for converting a programmable logic controller hardware configuration and corresponding control program for use on a first programmable logic controller to use on a second programmable logic controller

Publications (1)

Publication Number Publication Date
DE4109258A1 true DE4109258A1 (de) 1991-10-02

Family

ID=23994292

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4109258A Ceased DE4109258A1 (de) 1990-03-29 1991-03-21 Verfahren zum umwandeln der hardwarekonfiguration einer programmierbaren verknuepfungssteuerung und des entsprechenden steuerprogramms zur verwendung bei einer zweiten programmierbaren verknuepfungssteuerung

Country Status (4)

Country Link
US (1) US5142469A (de)
JP (1) JPH0760326B2 (de)
DE (1) DE4109258A1 (de)
FR (1) FR2660451A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG96153A1 (en) * 1993-12-02 2003-05-23 Blundell Mark & Ass Inc Method and process of intermachine communication and generalized method for program preparations therefor

Families Citing this family (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5488714A (en) * 1990-05-23 1996-01-30 Unisys Corporation Computer program analyzer for adapting computer programs to different architectures
US5301344A (en) * 1991-01-29 1994-04-05 Analogic Corporation Multibus sequential processor to perform in parallel a plurality of reconfigurable logic operations on a plurality of data sets
US5517636A (en) * 1992-01-07 1996-05-14 Unisys Corporation Platform independent data communication system and method
US5944819A (en) * 1993-02-18 1999-08-31 Hewlett-Packard Company Method and system to optimize software execution by a computer using hardware attributes of the computer
US5530643A (en) * 1993-08-24 1996-06-25 Allen-Bradley Company, Inc. Method of programming industrial controllers with highly distributed processing
US6067615A (en) * 1993-11-30 2000-05-23 Trw Inc. Reconfigurable processor for executing successive function sequences in a processor operation
DE59502418D1 (de) * 1994-03-31 1998-07-09 Siemens Ag Verfahren zur automatischen diagnose von störungsfällen
US5508909A (en) * 1994-04-26 1996-04-16 Patriot Sensors And Controls Method and systems for use with an industrial controller
JP3251423B2 (ja) * 1994-05-16 2002-01-28 三菱電機株式会社 プログラマブルコントローラのプログラミング機器およびプログラマブルコントローラ用機能ユニット
US5648898A (en) * 1994-12-19 1997-07-15 Caterpillar Inc. Method for programming a vehicle monitoring and control system
US5724242A (en) * 1995-03-21 1998-03-03 Caterpillar Inc. Method for producing production control software for a natural gas engine controller
US6269300B1 (en) 1995-03-29 2001-07-31 Caterpillar Inc. Method for producing production control software for a natural gas or diesel engine controller
JP3447432B2 (ja) * 1995-06-07 2003-09-16 三菱電機株式会社 ネットワークデータサーバ装置およびプログラマブルロジックコントローラシステム
US5943242A (en) * 1995-11-17 1999-08-24 Pact Gmbh Dynamically reconfigurable data processing system
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US5764507A (en) * 1996-01-02 1998-06-09 Chuo; Po-Chou Programmable controller with personal computerized ladder diagram
US5845149A (en) * 1996-04-10 1998-12-01 Allen Bradley Company, Llc Industrial controller with I/O mapping table for linking software addresses to physical network addresses
US5978593A (en) * 1996-09-05 1999-11-02 Ge Fanuc Automation North America, Inc. Programmable logic controller computer system with micro field processor and programmable bus interface unit
DE19651075A1 (de) 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
DE19654595A1 (de) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen
US6338106B1 (en) 1996-12-20 2002-01-08 Pact Gmbh I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures
DE19654593A1 (de) * 1996-12-20 1998-07-02 Pact Inf Tech Gmbh Umkonfigurierungs-Verfahren für programmierbare Bausteine zur Laufzeit
ATE243390T1 (de) 1996-12-27 2003-07-15 Pact Inf Tech Gmbh Verfahren zum selbständigen dynamischen umladen von datenflussprozessoren (dfps) sowie bausteinen mit zwei- oder mehrdimensionalen programmierbaren zellstrukturen (fpgas, dpgas, o.dgl.)
DE19654846A1 (de) 1996-12-27 1998-07-09 Pact Inf Tech Gmbh Verfahren zum selbständigen dynamischen Umladen von Datenflußprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o. dgl.)
DE19704044A1 (de) * 1997-02-04 1998-08-13 Pact Inf Tech Gmbh Verfahren zur automatischen Adressgenerierung von Bausteinen innerhalb Clustern aus einer Vielzahl dieser Bausteine
DE19704728A1 (de) 1997-02-08 1998-08-13 Pact Inf Tech Gmbh Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
DE19704742A1 (de) 1997-02-11 1998-09-24 Pact Inf Tech Gmbh Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
US6144888A (en) * 1997-11-10 2000-11-07 Maya Design Group Modular system and architecture for device control
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
DE19807872A1 (de) 1998-02-25 1999-08-26 Pact Inf Tech Gmbh Verfahren zur Verwaltung von Konfigurationsdaten in Datenflußprozessoren sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstruktur (FPGAs, DPGAs, o. dgl.
US6104962A (en) * 1998-03-26 2000-08-15 Rockwell Technologies, Llc System for and method of allocating processing tasks of a control program configured to control a distributed control system
WO2002013000A2 (de) 2000-06-13 2002-02-14 Pact Informationstechnologie Gmbh Pipeline ct-protokolle und -kommunikation
DE10081643D2 (de) 1999-06-10 2002-05-29 Pact Inf Tech Gmbh Sequenz-Partitionierung auf Zellstrukturen
US6411963B1 (en) 1999-07-09 2002-06-25 Junot Systems, Inc. External system interface method and system
US7069185B1 (en) 1999-08-30 2006-06-27 Wilson Diagnostic Systems, Llc Computerized machine controller diagnostic system
AU782617B2 (en) * 1999-12-17 2005-08-11 Ochoa Optics Llc System and method permitting customers to order selected products from a vast array of products offered by multiple participating merchants
AU2001232997A1 (en) * 2000-01-24 2001-07-31 Fluor Corporation Control system simulation, testing, and operator training
EP1150192A1 (de) * 2000-04-28 2001-10-31 ABB Research Ltd. Umwandlungsmethode für Informationen bezüglich der Hardware/Software Konfiguration eines verteilten Steuerungssystem
AU2002220600A1 (en) 2000-10-06 2002-04-15 Pact Informationstechnologie Gmbh Cell system with segmented intermediate cell structure
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US6990555B2 (en) * 2001-01-09 2006-01-24 Pact Xpp Technologies Ag Method of hierarchical caching of configuration data having dataflow processors and modules having two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)
US7210129B2 (en) 2001-08-16 2007-04-24 Pact Xpp Technologies Ag Method for translating programs for reconfigurable architectures
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US7581076B2 (en) 2001-03-05 2009-08-25 Pact Xpp Technologies Ag Methods and devices for treating and/or processing data
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
WO2005045692A2 (en) 2003-08-28 2005-05-19 Pact Xpp Technologies Ag Data processing device and method
EP1402382B1 (de) * 2001-06-20 2010-08-18 Richter, Thomas Verfahren zur bearbeitung von daten
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US7660934B2 (en) * 2001-08-28 2010-02-09 Dearborn Group, Inc. ASCII gateway to in-vehicle networks
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
TWI220192B (en) * 2001-11-06 2004-08-11 Mediatek Inc Memory access method and apparatus in ICE system
US7577822B2 (en) 2001-12-14 2009-08-18 Pact Xpp Technologies Ag Parallel task operation in processor and reconfigurable coprocessor configured based on information in link list including termination information for synchronization
EP1483682A2 (de) 2002-01-19 2004-12-08 PACT XPP Technologies AG Reconfigurierbarer prozessor
AU2003214003A1 (en) 2002-02-18 2003-09-09 Pact Xpp Technologies Ag Bus systems and method for reconfiguration
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
WO2004021176A2 (de) 2002-08-07 2004-03-11 Pact Xpp Technologies Ag Verfahren und vorrichtung zur datenverarbeitung
AU2003289844A1 (en) 2002-09-06 2004-05-13 Pact Xpp Technologies Ag Reconfigurable sequencer structure
US7185225B2 (en) * 2002-12-02 2007-02-27 Marvell World Trade Ltd. Self-reparable semiconductor and method thereof
US7343593B2 (en) 2002-12-09 2008-03-11 Siemens Aktiengesellschaft Method and device for porting software programs to a target platform by way of an electronic data processing system
EP1429241A1 (de) * 2002-12-09 2004-06-16 Siemens Aktiengesellschaft Verfahren und Vorrichtung zur Portierung von Softwareprogrammen auf eine Zielplattform mittels einer EDV-Anlage
EP1570322B1 (de) * 2002-12-11 2007-03-14 Fraysen Systems Limited Prozessdatenverwaltung
US7184933B2 (en) * 2003-02-28 2007-02-27 Hewlett-Packard Development Company, L.P. Performance estimation tool for data storage systems
TWI228229B (en) * 2003-05-08 2005-02-21 Taiwan Semiconductor Mfg Method of duplicating future action of wafer batch in a semiconductor process
JP3910196B2 (ja) * 2004-10-21 2007-04-25 ファナック株式会社 シーケンスプログラムの編集装置
KR101097512B1 (ko) * 2004-11-23 2011-12-22 엘지디스플레이 주식회사 액정표시장치 및 구동방법
US7130196B2 (en) * 2005-01-19 2006-10-31 General Electric Company Apparatus and method for transferring heat from control devices
EP1729191A1 (de) * 2005-04-05 2006-12-06 Siemens Aktiengesellschaft Entwurfsvorrichtung zum Entwerfen einer leittechnischen Anlage und Verfahren zum Überprüfen der technologischen Aufgabenstellung beim Entwurf einer leittechnischen Anlage
US7720639B2 (en) * 2005-10-27 2010-05-18 General Electric Company Automatic remote monitoring and diagnostics system and communication method for communicating between a programmable logic controller and a central unit
JP2009524134A (ja) 2006-01-18 2009-06-25 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト ハードウェア定義方法
US20070234285A1 (en) * 2006-02-28 2007-10-04 Mendoza Alfredo V Determining the portability of an application program from a source platform to a target platform
US7987004B2 (en) * 2007-02-27 2011-07-26 Rockwell Automation Technologies, Inc. Scalability related to controller engine instances
US8856522B2 (en) 2007-02-27 2014-10-07 Rockwell Automation Technologies Security, safety, and redundancy employing controller engine instances
US7684876B2 (en) * 2007-02-27 2010-03-23 Rockwell Automation Technologies, Inc. Dynamic load balancing using virtual controller instances
US7899559B2 (en) * 2007-02-27 2011-03-01 Rockwell Automation Technologies, Inc. Language-based organization of controller engine instances
US7797060B2 (en) * 2007-02-27 2010-09-14 Rockwell Automation Technologies, Inc. Prioritization associated with controller engine instances
US7853336B2 (en) * 2007-02-27 2010-12-14 Rockwell Automation Technologies, Inc. Dynamic versioning utilizing multiple controller engine instances to limit complications
US7778713B2 (en) * 2007-02-27 2010-08-17 Rockwell Automation Technologies, Inc. Construction of an industrial control system using multiple instances of industrial control engines
US7870223B2 (en) * 2007-02-27 2011-01-11 Rockwell Automation Technologies, Inc. Services associated with an industrial environment employing controller engine instances
US20080208374A1 (en) * 2007-02-27 2008-08-28 Rockwell Automation Technologies, Inc. Testing utilizing controller engine instances
US7778714B2 (en) * 2007-02-27 2010-08-17 Rockwell Automation Technologies, Inc. On-line editing associated with controller engine instances
US20080282053A1 (en) * 2007-05-09 2008-11-13 Yong-Liang Chang Method for converting memory addresses of different programmable logic controllers connected to human-machine interface
CN102929591B (zh) * 2012-11-08 2015-07-08 广西工学院 并行操作逻辑运算及其控制器
CN104991503A (zh) * 2015-05-18 2015-10-21 广州市天誉创高电子科技有限公司 一种应用于可编程控制主机的控制方法和系统
JP6950665B2 (ja) * 2018-11-02 2021-10-13 横河電機株式会社 エンジニアリング装置、エンジニアリング装置の制御方法及びプログラム
US11454945B2 (en) * 2019-04-16 2022-09-27 Siemens Aktiengesellschaft Method and device for calling program module in PLC ladder programming environment
DE102021003647A1 (de) * 2020-07-30 2022-02-03 Canon Kabushiki Kaisha Informationsverarbeitungsvorrichtung, Kontaktplanprogramm-Erzeugungsvorrichtung, Informationsverarbeitungsverfahren, Kontaktplanprogrammerzeugungsverfahren, Verfahren zum Herstellen eines Produkts, Programm und Aufzeichnungsmedium
CN112415943A (zh) * 2020-11-12 2021-02-26 珠海格力电器股份有限公司 一种io端口配置装置、方法和plc组态软件

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4250563A (en) * 1979-08-09 1981-02-10 Allen-Bradley Company Expandable programmable controller
US4504927A (en) * 1982-09-08 1985-03-12 Allen-Bradley Company Programmable controller with expandable I/O interface circuitry
US4677548A (en) * 1984-09-26 1987-06-30 Honeywell Information Systems Inc. LSI microprocessor chip with backward pin compatibility and forward expandable functionality
US4663704A (en) * 1984-12-03 1987-05-05 Westinghouse Electric Corp. Universal process control device and method for developing a process control loop program
US4849928A (en) * 1987-01-28 1989-07-18 Hauck Lane T Logic array programmer
US5038317A (en) * 1988-07-25 1991-08-06 Allen-Bradley Company, Inc. Programmable controller module rack with a relative rack slot addressing mechanism

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FÄRBER, G.: "Entwicklungstendenzen der Mikro- elektronik und der Informationstechnik" in Automatisierungstechnische Praxis 31 (1989), H. 9, S. 400-407 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG96153A1 (en) * 1993-12-02 2003-05-23 Blundell Mark & Ass Inc Method and process of intermachine communication and generalized method for program preparations therefor

Also Published As

Publication number Publication date
JPH0760326B2 (ja) 1995-06-28
FR2660451A1 (fr) 1991-10-04
JPH04349505A (ja) 1992-12-04
US5142469A (en) 1992-08-25

Similar Documents

Publication Publication Date Title
DE4109258A1 (de) Verfahren zum umwandeln der hardwarekonfiguration einer programmierbaren verknuepfungssteuerung und des entsprechenden steuerprogramms zur verwendung bei einer zweiten programmierbaren verknuepfungssteuerung
EP1815335B1 (de) Verfahren und vorrichtung zur sicheren parametrierung von elektronischen geräten
DE69819188T2 (de) Programmschnittstellenumsetzer für rechner mit mehreren umgebungen
DE68919503T2 (de) Methode und System zur Darstellung einer Benutzeroberfläche auf einem Computerbildschirm.
DE3750188T2 (de) Verfahren zur In-Linie Implementierung einer Vorstellung in einem Informationsverarbeitungssystem.
DE3688107T2 (de) Verfahren zur Behaltung der Anpassungsfähigkeit von mit verschiedenen Eingabe-/Ausgabearten.
DE68915847T2 (de) Tastatur-Umbelegung.
DE68926428T2 (de) Personalisierung von Benutzerschnittstellen für Anwendungsprogramme
DE69918334T2 (de) Erzeugung von kompilierten programmen für interpretative laufzeitumgebungen
DE19960050A1 (de) Grafische Benutzerschnittstelle zur Entwicklung von Anwendungsbeispielen unter Verwendung einer Testobjektbibliothek
EP3543844B1 (de) Verfahren zum durchführen von änderungen an einer software-anwendung
DE3503119A1 (de) Verfahren zum automatischen erzeugen eines quellenprogramms
DE10048941A1 (de) Zeitdiagramm-Compiler und Laufzeitumgebung für die interaktive Erzeugung von ausführbaren Testprogrammen zur Logiküberprüfung
EP1005215B1 (de) Verfahren und Vorrichtung zum Editieren von Konfigurationsdaten für Telekommunikationssysteme
DE10008632B4 (de) Verfahren und System zum Erzeugen eines Computerprogramms
EP1862901A1 (de) Eingabe von Programm-Anweisungen bei imperativen Programmiersprachen
EP1505399B1 (de) Verfahren zum Erzeugen von Testdaten zum Austesten der Funktionsfähigkeit einer datenverarbeitenden Schaltung
DE3321131A1 (de) Selbstlernende rechenmaschine
EP1215571A2 (de) Verfahren zur automatischen Softwaregenerierung
DE4310615C2 (de) Entwurf elektrischer Vorrichtungen mit mehreren Entwurfswerkzeugen, die zumindest teilweise untereinander inkompatibel sind
EP2012227A1 (de) Programmieroberfläche zum Programmieren von Computern
EP1668494B1 (de) Verfahren und system zur sprachkonfigurierung eines computerprogramms
DE2613703C2 (de) Schaltungsanordnung zum Übersetzen von Programmtexten
DE102004039884A1 (de) Verfahren und System zur Beschreibung und Ausführung automatischer Tests
DE19828611C2 (de) Datenverarbeitungsvorrichtung und zugehöriges Verfahren

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8128 New person/name/address of the agent

Representative=s name: VOIGT, R., DIPL.-ING., PAT.-ANW., 6232 BAD SODEN

8131 Rejection