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 verknuepfungssteuerungInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims description 42
- PWPJGUXAGUPAHP-UHFFFAOYSA-N lufenuron Chemical compound C1=C(Cl)C(OC(F)(F)C(C(F)(F)F)F)=CC(Cl)=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F PWPJGUXAGUPAHP-UHFFFAOYSA-N 0.000 title description 6
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 description 11
- 238000013473 artificial intelligence Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 230000014616 translation Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000015654 memory Effects 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 239000000969 carrier Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004886 process control Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/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/13019—Translate program in order to be used on different plc
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S706/00—Data processing: artificial intelligence
- Y10S706/902—Application using ai with detail of the ai system
- Y10S706/919—Designing, 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))
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.
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.
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.
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.
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.
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)
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)
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)
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 |
-
1990
- 1990-03-29 US US07/501,612 patent/US5142469A/en not_active Expired - Lifetime
-
1991
- 1991-03-21 DE DE4109258A patent/DE4109258A1/de not_active Ceased
- 1991-03-22 FR FR9103498A patent/FR2660451A1/fr active Pending
- 1991-03-29 JP JP3196185A patent/JPH0760326B2/ja not_active Expired - Lifetime
Non-Patent Citations (1)
Title |
---|
FÄRBER, G.: "Entwicklungstendenzen der Mikro- elektronik und der Informationstechnik" in Automatisierungstechnische Praxis 31 (1989), H. 9, S. 400-407 * |
Cited By (1)
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 |