DE4317729A1 - Programmierbare Steuereinheit - Google Patents

Programmierbare Steuereinheit

Info

Publication number
DE4317729A1
DE4317729A1 DE4317729A DE4317729A DE4317729A1 DE 4317729 A1 DE4317729 A1 DE 4317729A1 DE 4317729 A DE4317729 A DE 4317729A DE 4317729 A DE4317729 A DE 4317729A DE 4317729 A1 DE4317729 A1 DE 4317729A1
Authority
DE
Germany
Prior art keywords
control unit
signal
programmable
programmable control
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE4317729A
Other languages
English (en)
Inventor
William Byron Cook
Robert Daniel Eaton
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.)
Allen Bradley Co LLC
Original Assignee
Allen Bradley Co LLC
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 Allen Bradley Co LLC filed Critical Allen Bradley Co LLC
Publication of DE4317729A1 publication Critical patent/DE4317729A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • 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/058Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric
    • G05B9/03Safety arrangements electric with multiple-channel loop, i.e. redundant control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2048Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share neither address space nor persistent storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Programmable Controllers (AREA)
  • Safety Devices In Control Systems (AREA)

Description

Die Erfindung bezieht sich auf programmierbare Steuereinheiten für den Betrieb industrieller Anlagen. Eine Steuereinheit dieser Art ist in der US-PS 4 858 101 beschrieben. Insbesondere bezieht sich die Erfindung auf die Verbindung von zwei programmierbaren Steuereinheiten, von denen die eine bei einem Ausfall der anderen die Steuerfunktionen übernehmen kann.
Programmierbare Steuereinheiten sind übliche industrielle Computer, mit denen eine große Vielfalt von Fabrikationsanlagen, beispielsweise Montagebändern und Maschinenwerkzeugen, entsprechend einem gespeicherten Programm betrieben wer­ den kann. Das Programm umfaßt eine Folge von Prozeßsteuerbefehlen, die gelesen und ausgeführt werden, damit der Zustand ausgewählter Fühlervorrichtungen an der gesteuerten Anlage geprüft und ausgewählte Arbeitsvorrichtungen in Über­ einstimmung mit dem Zustand eines oder mehrerer der überprüften Fühlervorrich­ tungen eingeschaltet oder abgeschaltet werden.
Der Zustand vieler Fühler- und Arbeitsvorrichtungen kann durch ein einziges Daten-Bit repräsentiert werden, auf das von den Steuerprogrammbefehlen einge­ wirkt wird. Andere Vorrichtungen, beispielsweise Positionsfühler, liefern meh­ rere Daten-Bits, die einen Zustand der gesteuerten Anlage repräsentieren. Für diese zuletzt genannten Vorrichtungen sind Befehle vorgesehen, um Bytes und Datenwörter zu manipulieren, die den Zustand der Fühler- und Arbeitsvorrich­ tungen repräsentieren. Zusätzliche Programmbefehle führen arithmetische Opera­ tionen, Zeitsteuer- und Zählfunktionen und komplexe statistische Listenopera­ tionen durch. Solche Befehle sind in der Industrie ziemlich standardisiert worden, und sie sind direkt den Elementen eines Leiterlogikdiagramms zugeord­ net, das von den Prozeßsteueringenieuren einfach verstanden werden kann. Es sind Programmsteuerpulte wie die in den US-Patentschriften 3 808 612, 3 813 649 und 4 070 702 entwickelt worden, um den Benutzer dabei zu unterstützen, Lei­ terlogik-Steuerprogramme aus solchen Befehlen programmierbarer Steuereinheiten zu entwickeln und zu editieren.
Es gibt viele Anwendungsfalle programmierbarer Steuereinheiten, in denen die Ausfallzeit, die sich aus einer Funktionsstörung der Steuereinheit ergibt, minimiert werden muß. Beispielsweise sind die Kosten des Abschaltens einer Automobil-Fertigungsstraße enorm, und es müssen besondere Maßnahmen ergriffen werden, um zu gewährleisten, daß in den Steuersystemen qualitativ hochwertige Bauelemente benutzt werden. In anderen Fertigungssystemen, beispielsweise in chemischen Prozessen, kann ein Ausfall des Steuersystems zu Todesfällen oder zu einem Verlust einer großen Menge des erzeugten Produkts führen. Trotz die­ ser Anstrengungen besteht statistisch die Gewißheit, daß Ausfälle oder Fehl­ funktionen der elektrischen und mechanischen Bauelemente vorkommen.
Eine Eigenschaft programmierbarer Steuereinheiten ist die Konzentration von Entscheidungsfunktionen des Systems in gewissen Untersystemen und Komponenten. Eine Fehlfunktion im Speicher, in dem das Steuerprogramm gespeichert ist, oder eine Fehlfunktion des Prozessors, der das Steuerprogramm liest und ausführt, ist katastrophal in dem Sinne, daß das gesamte gesteuerte System dadurch be­ einflußt wird. Es werden Verfahren zur Fehlfunktionserfassung angewendet, um solche Probleme festzustellen und eine schnelle Diagnose zu liefern; Bauele­ mente sind auf den Leiterplatten für einen leichten Austausch angebracht. Je­ doch selbst dann, wenn eine Fehlfunktion schnell entdeckt, diagnostiziert und lokalisiert wird, ist das Rücksetzen und Wiederanfahren des Fabrikationssystems sehr zeitraubend.
Die Verwendung redundanter Bauteile oder Module ist in zahlreichen Anwendungs­ gebieten allgemein üblich. In der Luftfahrttechnik wird eine Vielfachredundanz des gesamten Flugsteuersystems angewendet, und auf dem Gebiet der Datenverar­ beitung ist es üblich, redundante Prozessoren oder Eingabe/Ausgabe-Steuerwerke (I/O-Steuerwerke) einzusetzen. Auf dem Gebiet der industriellen Steuerung ist eine Redundanz des Gesamtsystems vom wirtschaftlichen Standpunkt aus undurch­ führbar. Bei einer in der US-PS 4 521 871 beschriebenen Lösung werden ausge­ wählte Hardware-Bauteile verdoppelt, die Programmspeicherungs- und Programm­ ausführungsfunktionen ausüben. Eine Gruppe der Bauteile wird als Primäreinheit bezeichnet, und die andere Gruppe wird als Reserveeinheit bezeichnet, die die Steuerung des Systems nur dann übernimmt, wenn die Primäreinheit ausfällt. Da­ mit der Übergang von einer Gruppe von Bauteilen zur anderen glatt abläuft, müssen beide Gruppen die gleichen Informationen über den Status des Ferti­ gungsprozesses und der Anlage zur Verfügung haben. Außerdem hat es sich als wünschenswert erwiesen, daß jede Gruppe von Bauteilen Kenntnis über den Status der anderen Gruppe hat.
Eine programmierbare Steuereinheit weist einen Speicher auf, in dem ein Steu­ erprogramm und Daten, beispielsweise als I/O-Bildtabellen und Betriebsstatus­ daten, gespeichert sind. Eine Eingabe-Ausgabe-Schaltung ist für den Austausch von Daten zwischen den I/O-Bildtabellen und Geräten an einer Maschine vorge­ sehen, die von der programmierbaren Steuereinheit gesteuert wird. Es ist ein Prozessor vorgesehen, der das Steuerprogramm ausführt, um Daten in der Einga­ be-Bildtabelle zu untersuchen und die Daten in der Ausgabe-Bildtabelle zu ändern.
Die programmierbare Steuereinheit enthält ferner einen Reservemodul, der eine Eingabevorrichtung aufweist, die dann ein erstes Signal empfängt, wenn eine weitere programmierbare Steuereinheit danach verlangt, in einem aktiven Modus zu arbeiten und den Betrieb der Maschine zu steuern. Es ist ein Eingabean­ schluß vorgesehen, der ein Ausscheidungssignal empfängt, das anzeigt, daß die programmierbare Steuereinheit im aktiven Modus arbeiten soll, wenn mehrere programmierbare Steuereinheiten praktisch gleichzeitig verlangen, den Betrieb der Maschine zu steuern.
Als Antwort auf die Abwesenheit des ersten Signals an der Eingabevorrichtung oder dann, wenn das erste Signal empfangen wird, wenn das Ausscheidungssignal an dem Eingabeanschluß anliegt, gibt ein Anzeiger an, daß die programmierbare Steuereinheit im aktiven Modus arbeiten soll. Andernfalls gibt der Anzeiger an, daß die programmierbare Steuereinheit in einem Bereitschaftsbetrieb arbei­ ten soll. In der bevorzugten Ausführung gibt der Anzeiger anstelle des Bereit­ schaftsmodus einen Ausschlußmodus an, wenn ein Warnsignal von einer anderen programmierbaren Steuereinheit empfangen wird oder wenn die programmierbare Steuereinheit nicht genügend Daten für die Übernahme der Steuerung zur Verfü­ gung hat.
Eine Ausgangsvorrichtung überträgt eine Anforderung für einen Betrieb im akti­ ven Modus zu einer anderen programmierbaren Steuereinheit, wenn der Anzeiger angibt, daß die programmierbare Steuereinheit im aktiven Modus arbeiten kann. Die Anforderung, im aktiven Modus zu arbeiten, wird nicht übertragen, wenn der Anzeiger angibt, daß die programmierbare Steuereinheit im Reserve- oder im Ausschlußbetrieb arbeiten soll.
Mit Hilfe der Erfindung soll ein Mechanismus geschaffen werden, durch den zwei programmierbare Steuereinheiten für den Betrieb einer Maschine angeschlossen werden können, wobei eine der Steuereinheiten die Maschine aktiv steuert, wäh­ rend die andere sich in einem Reservebetrieb befindet und die Steuerung über­ nehmen kann, falls die eine Steuereinheit ausfällt.
Ferner soll ein Mechanismus geschaffen werden, mit dessen Hilfe die program­ mierbaren Steuereinheiten beim Einschalten oder bei einem Rücksetzen entschei­ den können, welche die aktive Einheit und welche die Reserveeinheit ist.
Außerdem soll mit Hilfe der Erfindung ein Mechanismus eingeführt werden, durch den eine programmierbare Steuereinheit die andere Steuereinheit bezüglich mut­ maßlicher Störungen und Fehler warnen kann.
Ein weiteres Ziel der bevorzugten Ausführung besteht darin, eine Kommunika­ tionsschnittstelle für einen periodischen Austausch von I/O-Bildtabellen-Daten und von Betriebsstatusdaten mit einer anderen programmierbaren Steuereinheit zu schaffen. Durch diesen Austausch werden Daten von der aktiven programmier­ baren Steuereinheit zur programmierbaren Reservesteuereinheit übertragen, so daß die Reserveeinheit ohne weiteres die Steuerung der Maschine übernehmen kann, wenn die aktive Steuereinheit ausfällt.
Die Erfindung wird nun anhand der Zeichnung beispielshalber erläutert. Es zeigen:
Fig. 1 eine Darstellung von zwei programmierbaren Steuereinheiten, die er­ findungsgemäß miteinander verbunden sind,
Fig. 2 ein schematisches Schaltbild der Verbindung von Funktionsmodulen in jeder programmierbaren Steuereinheit,
Fig. 3 ein schematisches Schaltbild eines Betriebsmittel-Verwaltungsmoduls in in jeder programmierbaren Steuereinheit,
Fig. 4 einen Speicherbelegungsplan eines gemeinsam benutzten Systemspeichers im Betriebsmittel-Verwaltungsmodul,
Fig. 5 ein schematisches Schaltbild eines Prozessormoduls in jeder program­ mierbaren Steuereinheit,
Fig. 6 einen Speicherbelegungsplan in dem Speicher, der im Prozessormodul enthalten ist,
Fig. 7 ein schematisches Schaltbild eines Fern-I/O-Abtastmoduls in jeder pro­ grammierbaren Steuereinheit,
Fig. 8 ein schematisches Schaltbild eines Reservemoduls in jeder programmier­ baren Steuermoduls,
Fig. 9 ein schematisches Schaltbild der Verbindungen zwischen den Reservemo­ dulen in jeder programmierbaren Steuereinheit,
Fig. 10 ein Schaltbild der Primär/Sekundär-Entscheidungsschaltung in dem Re­ servemodul,
Fig. 11 ein Zustandsdiagramm zur Veranschaulichung des Betriebs der Primär/ Sekundär-Entscheidungsschaltung und
Fig. 12 ein Blockschaltbild der Kabelfehlerschaltung von Fig. 10.
Nach Fig. 1 weist ein Steuersystem 10 zwei programmierbare Steuereinheiten 12′ und 12" auf, die in Kaskade geschaltet sind. Die Komponenten der ersten pro­ grammierbaren Steuereinheit sind mit einfach gestrichenen Bezugszeichen ver­ sehen, während die Komponenten der anderen programmierbaren Steuereinheit mit zweifach gestrichenen Bezugszeichen gekennzeichnet sind. Das Bezugszeichen allein wird für die Beschreibung von Eigenschaften der Komponenten verwendet, die in beiden programmierbaren Steuereinheiten die gleichen sind.
Jede programmierbare Steuereinheit befindet sich in einem Gestell 13′ oder 13′′, das eine Reihe von Schlitzen aufweist, die mehrere Leiterplattenmodule aufneh­ men. Diese Funktionsmodule sind mit einer Mutterplatine verbunden, die sich längs der Rückseite des Gestells erstreckt und eine Rückwandplatine 11′ und 11′′ bildet. Die Rückwandplatine 11 weist mehrere Modulverbinder auf, die über ein Leiterbahnmuster auf der Rückwandplatine miteinander verbunden sind. Die Rückwandplatine 11 bildet eine Reihe von Signalbussen, mit denen die Module verbunden sind. Jedes Gestell 13′ und 13′′ enthält ein Energieversorgungsmodul 14′ oder 14′′, ein Betriebsmittel-Verwaltungsmodul 17′ oder 17′′, mehrere Prozes­ sormodule 19′ oder 19′′ und ein Fern-I/O-Abtastmodul 20′ oder 20′′. Im darge­ stellten Beispiel des Systems 10 enthält der am weitesten rechts liegende Schlitz in jedem Gestell 13′ oder 13′′ ein Reservemodul 22′ oder 22′′, das einer der programmierbaren Steuereinheiten ermöglicht, die gesteuerte Maschine aktiv zu betreiben, während die andere Steuereinheit als Reservesystem wirkt und die Steuerung übernimmt, wenn die aktive Steuereinheit ausfällt. Die Reservemodule in den zwei programmierbaren Steuereinheiten 12′ und 12′′ sind über Kabel 21 und 23 verbunden. Die übrigen Steckplätze in den Gestellen sind leer, und die Schlitze sind durch Leerplatten bedeckt, bis zusätzliche Funktionsmodule in diese Schlitze eingesteckt werden.
Die Fern-I/O-Abtastmodule 20′ und 20′′ bilden eine Schnittstelle zwischen der jeweiligen Steuereinheit 12 und externen Fern-I/O-Gestellen 24 über die ge­ meinsam benutzte serielle Datenverbindung 15. Jedes Fern-I/O-Gestell 24 weist mehrere I/O-Module 25 auf, die mit einzelnen Sensoren und Stellorganen der (nicht dargestellten) gesteuerten Maschine verbunden sind. Die I/O-Module 25 können verschiedenartige Formen haben und beispielsweise Gleichstromeingänge oder Gleichstromausgänge, Wechselstromeingänge oder Wechselstromausgänge, Ana­ logeingänge oder Analogausgänge und Positionierungsmodule mit offener oder ge­ schlossener Schleife aufweisen. Die I/O-Gestelle 24 und die serielle Datenver­ bindung 15 machen von einer herkömmlichen Schnittstellen- und Kommunikations­ technologie Gebrauch. Jedes Fern-I/O-Gestell 24 enthält auch einen Adapter­ modul 26, wie er beispielsweise in der US-PS 4 413 319 beschrieben ist. Er steuert die Übertragung von Daten über das I/O-Netzwerk 15 zwischen den I/O- Modulen 25 und den Abtastmodulen 20.
Der Betriebsmittel-Verwaltungsmodul 17′ der ersten programmierbaren Steuerein­ heit 12′ ist über ein Kabel mit einem Programmier-Terminal 16 angeschlossen. Das Terminal 16 ist ein Personal-Computer, der so programmiert ist, daß der Benutzer die Steuerprogramme entwickeln kann, die dann in die programmierbare Steuereinheit geladen werden. Das Terminal wird auch dazu benutzt, die pro­ grammierbare Steuereinheit zu konfigurieren und die Systemleistung zu über­ wachen. Sobald die Programme in die erste programmierbare Steuereinheit 12′ geladen worden sind und ihr Betrieb fehlerfrei läuft, kann das Terminal 16 vom Betriebsmittel-Verwaltungsmodul 17′ abgetrennt werden, falls eine Betriebs­ überwachung nicht erforderlich ist. Das Terminal 16 kann auch an den Betriebs­ mittel-Überwachungsmodul 17′′ der zweiten programmierbaren Steuereinheit 12′′ angeschlossen werden.
Typischerweise sind die Betriebsmittel-Verwaltungsmodule 17′ und 17′′ an ein (nicht dargestelltes) lokales Netzwerk angeschlossen, über das Daten und Pro­ grammbefehle empfangen und Statusinformationen sowie Leistungsdaten zu einem Leitrechner gesendet werden können. Dies ermöglicht einem Leitrechner oder einem zentralen Terminal den Betrieb beider programmierbarer Steuereinheiten 12′ und 12′′ zu programmieren und zu steuern.
Nach Fig. 2 weist die Rückwandplatine des Gestells 13 der programmierbaren Steuereinheit eine Gruppe von Steuerleitungen 27, einen parallelen Datenbus 28 und einen parallelen Adreßbus auf. Die Funktionsmodule 17 bis 22 im Gestell 13 der programierbaren Steuereinheit sind mit den Steuerleitungen und den Bussen 27 bis 29 für den Austausch von Daten und Steuersignalen zwischen den Modulen verbunden. Die Module sind mit eigenen Speichern für die Speicherung von Daten ausgestattet, die von dem Modul benötigt werden. Der Betriebsmittel-Verwal­ tungsmodul 17 enthält einen Speicher für die Speicherung von Statusinformatio­ nen und von Konfigurationsdaten, der für die anderen Module über die Rückwand­ platine 11 zugänglich ist.
Betriebsmittel-Verwaltungsmodul
Die Schaltung der Betriebsmittel-Verwaltungsmodule 17′ und 17′′ ist in Fig. 3 schematisch dargestellt; sie ist in drei Abschnitte 31, 32 und 33 für die Rückwandplatinen-Schnittstellenfunktion, die Verarbeitungsfunktion und die Kommunikationsfunktion unterteilt. Der Rückwandplatinen-Schnittstellenabschnitt 31 überwacht den Zugriff auf die Rückwandplatine 11 durch alle Gestellmodule, und er verbindet den Betriebsmittel-Verwaltungsmodul 17 mit der Rückwandpla­ tine. Der Verarbeitungsabschnitt 32 führt ein Überwachungsprogramm für das Steuersystem 10 aus, und der Kommunikationsabschnitt 33 ist hauptsächlich für die Kommunikation mit dem externen Terminal 16 und mit örtlichen Netzwerken verantwortlich. Der Prozessorabschnitt 32 ist über eine Gruppe von Bussen an­ geschlossen, die Steuerleitungen 34, einen 16 Bit breiten Datenbus 35 und einen parallelen Adreßbus 36 umfaßt. Der Rückwandplatinen-Schnittstellenab­ schnitt 31 koppelt die Busse 34 bis 36 des Prozessorabschnitts mit den Rück­ wandplatinen-Bussen 27 bis 29. Insbesondere ist der Datenbus 28 der Rückwand­ platine mit dem Datenbus 35 des Prozessorabschnitts über eine Gruppe bidirek­ tionaler Datenübertragungsgatter 38 verbunden, und der Adreßbus 29 der Rück­ wandplatine ist mit dem Adreßbus 36 des Prozessorabschnitts über eine weitere Gruppe bidirektionaler Gatter 39 verbunden. Wenn der Betriebsmittel-Verwal­ tungsmodul 17 versucht, die Steuerung über die Rückwandplatine 11 auszuüben, reagiert eine Hauptmodus-Steuerschaltung 40 auf Signale an den Steuerleitungen des Busses 34 des Prozessorabschnitts und gibt die richtigen Steuersignale über den Steuerbus 27 der Rückwandplatine für den Zugriff auf weitere Module innerhalb des Gestells ab.
Wenn ein anderer Modul innerhalb des Gestells 13 einen Zugriff auf den Be­ triebsmittel-Verwaltungsmodul 17 versucht, wird der Betriebsmittel-Verwal­ tungsmodul untergeordnet bei der Steuerung der Rückwandplatine 11 durch diesen anderen Modul. Unter diesen Umständen reagiert eine Nebenmodus-Steuerschaltung 41 innerhalb des Betriebsmittel-Verwaltungsmoduls 17 auf Signale am Adreßbus 29 der Rückwandplatine und an Steuerleitungen des von dem anderen Modul kom­ menden Busses 27 der Rückwandplatine. Die Nebenmodus-Steuerschaltung 41 rea­ giert durch Abgeben von Signalen zu den Übertragungsgattern 38 und 39, die den anderen Rückwandplatinenmodul freigeben, einen Zugriff auf den Betriebsmittel- Verwaltungsmodul 17 auszuüben. Im letztgenannten Fall befindet sich die Haupt­ modus-Steuerschaltung 40 in einem schlafenden Zustand. Die zwei Busgatter 38 und 39 empfangen abhängig vom Modus der Rückwandplatinenkommunikation über die Leitungen des Steuerbusses 34 Freigabesteuersignale von der Hauptmodus-Steuer- Schaltung 40 und der Nebenmodus-Steuerschaltung 41. Eine herkömmliche Rück­ wandplatinen-Entscheidungsschaltung 42 überwacht den Zugriff auf die Rückwand­ platine 11 und steuert miteinander in Konflikt stehende Zugriffsanforderungen zu den Modulen im System.
Eine weitere Entscheidungsschaltung 44 beherrscht den Zugriff auf die Busse 34 bis 36 des Prozessorabschnitts. Zwei Gruppen von Signalgattern 45 und 46 sind zwischen den Bussen 35 und 36 des Prozessorabschnitts und dem Kommunikations­ abschnitt angebracht. Insbesondere bildet die erste Gruppe von Gattern 45 eine bidirektionale Datenverbindung zwischen diesen Abschnitten, während die zweite Gruppe von Gattern 46 einen Weg für die Adressensignale bildet. Eine Zugriffs­ steuerschaltung 47 reagiert auf Zugriffsanforderungssignale vom Prozessorab­ schnitt 32 und vom Kommunikationsabschnitt 33, indem die Datengatter 45 und die Adressengatter 46 freigegeben werden.
Der Prozessorabschnitt 32 ist um einen 16-Bit-Mikroprozessor 48 herum aufge­ baut, der Programmbefehle ausführt, die in einem programmierbaren Festspeicher 51 (PROM) gespeichert sind. Der Mikroprozessor 48 ist im wesentlichen eine mit einer Speichertabelle arbeitende Vorrichtung; er weist keine direkt angeschlos­ senen Eingabe/Ausgabe-Leitungen auf. Sein Zugriff auf andere Komponenten am Prozessorbus muß daher durch Abgeben von Adressen am Bus 36 erfolgen. Die vom Mikroprozessor 48 ausgesendete Adresse wird in einer Adressendecodierschaltung 52 decodiert, damit die richtigen Steuersignale für die Baueinheit erzeugt werden, auf die ein Zugriff über den Steuerbus 34 erfolgt. Der Prozessorab­ schnitt 32 enthält auch einen Unterbrechungsprozessor 53, der Unterbrechungen zum Mikroprozessor 48 steuert.
Eine der Datenübertragungsbestätigung und einem Busfehler zugeordnete Schal­ tung 54 (DTACK/BERR-Schaltung) ist ebenfalls an den Prozessorsteuerbus 34 an­ geschlossen. Die Schaltung 54 reagiert auf Signale von den verschiedenen Kom­ ponenten im Prozessorabschnitt 32, um die Beendigung einer Datenübertragung zu bestätigen, und sie gibt für den Fall einer unrichtigen Adressierung oder eines Fehlers bei der Datenübertragung Busfehlersignale ab. Diese Signale wer­ den vom Mikroprozessor 48 bearbeitet, um korrigierend einzugreifen. Der Pro­ zessorabschnitt 32 enthält auch eine Taktschaltung 55, die den Hauptsystem­ taktgeber und einen Echtzeit-Taktgeber enthält.
Der Haupt-Schreib/Lese-Speicher 50 (RAM) für den Betriebsmittel-Verwaltungs­ modul 17 ist ebenfalls an die Prozessorbusse 35 bis 36 angeschlossen. Der RAM 50 ist ein Speicher mit Speicherplätzen, die eine Breite von 16 Bit haben; er dient als Systemspeicher für die gesamte programmierbare Steuereinheit 12. Auf den RAM kann von anderen Modulen im Gestell direkt über die Rückwandplatine 11 zugegriffen werden, ohne daß der Mikroprozessor 48 innerhalb des Betriebsmit­ tel-Verwaltungsmoduls 17 eingreift. Der RAM 50 speichert Konfigurationsdaten, die vom Benutzer über das Terminal 16 geliefert werden, sowie weitere Daten, die von mehreren Funktionsmodulen gemeinsam benutzt werden.
Fig. 4 zeigt die Datenstrukturen innerhalb des Hauptsystemspeichers 50 des Betriebsmittel-Verwaltungsmoduls 17. Der Hauptsystemspeicher 50 speichert ge­ trennte Datendateien, die Daten für die Durchführung spezieller Funktionen während des Betriebs der programmierbaren Steuereinheit enthalten. Die Daten­ strukturen enthalten verschiedene Formen von Daten, beispielsweise ganze Zah­ len, Gleitkommazahlen, ASCII-Zeichen und verschiedene Steuerstrukturen. Die erste Datei 61 ist ein Inhaltsverzeichnis der anderen im Hauptsystemspeicher gespeicherten Dateien. Der übrige Speicher ist in eine Systemstatusdatei 62, eine Systemdatentabelle 63 und in eine Gruppe von Systemunterstützungsdateien 64 aufgeteilt.
Die Systemstatusdatei 62 enthält Daten, die sich auf die Konfiguration der gesamten programmierbaren Steuereinheit 12 beziehen. In dieser Datei sind In­ formationen enthalten, die die verschiedenen vom Benutzer auswählbaren Merk­ male der programmierbaren Steuereinheit identifizieren, die vom Systemoperator freigegeben worden sind. Die Daten des Echtzeittakts bezüglich der Tageszeit, des Monats, des Tages und des Jahres sind ebenfalls in diesem Teil des System­ speichers enthalten. Digitale Wörter, die das Auftreten und den Typ verschie­ dener Systemstörungen und Systemfehler angeben, sowie Zeiger, die die beim Auftreten der Störung ausgeführten Programmbefehle angeben, sind in einer weiteren Unterdatei dieses Abschnitts gespeichert. Ein Abschnitt der System­ statusdatei 62 listet die Anzahl und den Typ aller aktiven Module am System sowie die relative Modulzahl und die für den Zugriff auf jeden Modul notwen­ digen Adressenzeiger auf. Wenn beispielsweise mehr als ein Programmprozessor­ modul 19 oder Fern-I/O-Abtastmodul 20 im Gestell 13 vorhanden ist, muß der Benutzer eine besondere Zahl mittels eines Wahlschalters am Modul eingeben, damit die verschiedenen Module dieses Typs voneinander unterschieden werden. Die Wahlschaltereinstellung wird vom Betriebsmittel-Verwaltungsmodul während des anfänglichen Hochfahrens des Systems gelesen und in diesem Abschnitt der Systemstatusdatei 62 gespeichert.
Die Systemdatentabelle 63 enthält Daten, die von mehr als einem Modul gemein­ sam benutzt werden. Beispielsweise können Ergebnisse verschiedener von einem Prozessormodul 19 durchgeführter Berechnungen in diesem Teil des Systemspei­ chers gespeichert werden, so daß andere Programmprozessormodule ohne weiteres Zugriff auf die Daten haben. Innerhalb der Systemdatentabelle 63 wird Spei­ cherplatz dem Speichern von Daten zugeordnet, die über die verschiedenen ex­ ternen Kommunikationsverbindungen des Kommunikationsabschnitts des Betriebs­ mittel-Verwaltungsmoduls empfangen oder gesendet werden. Weitere Module im Gestell 13 können direkt auf diese Speicherplätze zugreifen.
Die Systemdatentabelle 63 enthält auch den Wert verschiedener Systemzähler und verschiedener Variablen, die entweder vom Betriebsmittel-Verwaltungsmodul 17 oder gemeinsam von einer Anzahl weiterer Module wie den Prozessormodulen 19 oder den I/O-Abtastmodulen 20 gemeinsam benutzt werden. Die letzte Unterdatei innerhalb der Systemdatentabelle 63 ist ein Raum, der für vom Benutzer defi­ nierte Daten für verschiedene Programme zugeordnet ist, die der Benutzer in die programmierbare Steuereinheit geladen hat.
Der Endabschnitt 64 des Hauptsystemspeichers 50 ist den Systemunterstützungs­ dateien zugeteilt. Diese Dateien enthalten die Quellenprogramminformation für das Funktionsübersichtsprogramm. Der Betriebsmittel-Verwaltungsmodul 17 führt das Funktionsübersichtsprogramm nicht direkt aus. Wie später noch beschrieben wird, wird diese Funktionsübersicht während des Programmierungsschritts dazu benutzt, Daten zu erzeugen, die beim Leiten des Betriebs der Programmausfüh­ rungsmodule 19 benutzt werden. Damit diese Programme anschließend editiert werden können, muß für die Wiedergabe auf dem Programmier-Terminal eine Quel­ lenversion der Funktionsübersicht zur Verfügung stehen. Wie ebenfalls später noch beschrieben wird, enthalten die Unterstützungsdateien 64 gleichzeitig Zähler für die Ausführung der verschiedenen Zweige der Funkionsübersicht. Der lokale Speicher in jedem Modul enthält zwar Daten bezüglich des Modulstatus, jedoch enthalten diese Speicher in manchen Fällen keine Batterie für die Auf­ rechterhaltung ihrer Daten. Um solche flüchtigen Informationen nach dem Ab­ schalten der Versorgungsenergie festzuhalten, wird die Statusinformation die­ ser Module in eine Unterdatei des Abschnitts 64 des Systemspeichers 50 kopiert.
Kommunikationsparameter sind ebenfalls in diesem Abschnitt 64 zum Konfigurie­ ren des Kommunikationsabschnitts 33 des Betriebsmittel-Verwaltungsmoduls 17 gespeichert. Diese Parameter enthalten unter anderem die Baud-Rate, die Wort­ größe und Steuerbits für das serielle Datensignalformat. Beispielsweise sind in diesem Teil des Systemspeichers Parameter für die Kommunikation mit dem Bediener-Terminal 16 gespeichert. Wie oben angegeben wurde, können außerdem mehrere programmierbare Steuereinheiten über ein lokales Netzwerk angeschlos­ sen sein, wobei in diesem Fall in jeder Steuereinheit Parameter vorgesehen sein müssen, die ihr angeben, wie über das Netzwerk kommuniziert werden soll.
Der Kommunikationsabschnitt 33 koppelt die programmierbare Steuereinheit mit der seriellen Kommunikationsverbindung für das Terminal 16 und ein lokales Netzwerk. Der Kommunikationsabschnitt enthält Treiber für serielle Signalnor­ men wie RS232, RS423 oder RS422.
Der Betriebsmittel-Verwaltungsmodul 17 führt Betriebssystemprogramme aus, die die Initialisierung des programmierbaren Steuersystems 10 und der externen Kommunikationsschnittstelle steuern. Der Betriebsmittel-Verwaltungsmodul 17 führt das vom Benutzer definierte Steuerprogramm nicht aus, das die gesteuerte Anlage betätigt. Dies ist die Aufgabe des oder der Prozessormodule.
Programmausführungsprozessor
Die Programmausführungs-Prozessormodule 19 dienen der Speicherung und der Aus­ führung spezieller Benutzersteuerprogramme, beispielsweise Leiterprogramme. Einer dieser Module ist schematisch in Fig. 5 dargestellt. Während dieser Aus­ führung lesen die Module 19 den Zustand der Fühlervorrichtungen aus der Ein­ gabebildtabelle im Speicher für die verschiedenen I/O-Abtastmodule 20, und sie schreiben Ausgangsdaten aus ihrem Speicher in die Ausgangsbildtabellen in den I/O-Abtastmodulen. Auch aus dem Systemspeicher 50 im Betriebsmittel-Ver­ waltungsmodul 17 werden Daten erhalten.
Zur Durchführung dieser Aufgabe verfügt jeder Prozessormodul 19 über eine Gruppe interner Busse 71 bis 73, die mit der Rückwandplatine 11 gekoppelt sind. Insbesondere enthält der Prozessormodul 19 einen internen 32-Bit-Daten­ bus 72, eine Gruppe von Steuerleitungen 71 und einen Adreßbus 73. Diese sind mit den Daten- und Adreßbussen der Rückwandplatine 11 über jeweilige Gruppen bidirektionaler Tristate-Übertragungsgatter 74 und 76 gekoppelt. Der Betrieb dieser Gatter 74 und 76 wird von einer Zwischenbus-Steuerschaltung 75 gesteu­ ert, die mit den Rückwandplatinen-Steuerleitungen 27 und den Modul-Steuerlei­ tungen 71 gekoppelt ist.
Die übrigen Komponenten des Prozessormoduls 19 sind an die internen Busse 71 bis 73 angeschlossen. Diese internen Busse sind an einen Mikroprozessor 78 angeschlossen, der einen Unterbrechungsanschluß aufweist, der mit einer Unter­ brechungs-Schnittstellenschaltung 79 gekoppelt ist. Diese Schnittstellenschal­ tung empfängt Signale von vier externen Unterbrechungsleitungen, die an An­ schlüsse an der Vorderseite des Prozessormoduls 19 und an Schaltungen inner­ halb des Prozessormoduls 19 angeschlossen sind. Ein Signal an einer dieser externen oder internen Unterbrechungsleitungen veranlaßt den Mikroprozessor, den normalen Programmablauf sofort zu unterbrechen und eine Routine auszufüh­ ren, die dieser Unterbrechungsleitung entspricht.
Die Verarbeitungsfähigkeit des Prozessormoduls 19 wird auch durch einen mathe­ matischen Gleitkomma-Koprozessor 80 und durch einen Bit-Koprozessor 82 unter­ stützt. Der Bit-Koprozessor 82 ist eine kundenspezifische integrierte Schaltung zur Ausführung Boolescher logischer Operationen an einzelnen Bits der Daten­ wörter. Bit-Koprozessoren sind in programmierbaren Steuereinheiten in der Ver­ gangenheit zur Ausführung einer Gruppe von Leiterdiagrammbefehlen unter Verwen­ dung einer festverdrahteten Logik verwendet worden, wie in der US-PS 4 742 443 beschrieben ist.
Die drei Prozessorschaltungen 78, 80 und 82 arbeiten bei der Ausführung spe­ zieller Befehlstypen zusammen, die im Steuerprogramm enthalten sind. Der Mi­ kroprozessor 78 kann mit der Ausführung des Steuerprogramms beginnen; wenn er auf eine arithmetische Gleitkomma-Funktion trifft, wird der Gleitkomma-Kopro­ zessor 80 freigegeben, die Verarbeitungsfunktion zu übernehmen, bis diese arithmetische Operation beendet ist, wobei an diesem Zeitpunkt der Mikropro­ zessor 78 wieder die Programmausführung übernimmt. Wenn das Steuerprogramm nach der Verarbeitung eines einzigen Datenbits ruft, überläßt der Mikroprozes­ sor sofort die Steuerung dem Bit-Koprozessor 82, indem die Adresse des Steuer­ programmbefehls in einen Programmzähler im Bit-Koprozessor geschrieben wird. Der Bit-Koprozessor 82 entfernt den Mikroprozessor 78 dann von den internen Bussen 71 bis 73 und führt die nachfolgenden Steuerprogrammbefehle aus, bis ein Stopbefehl angetroffen wird. An diesem Punkt meldet der Bit-Koprozessor 82 dem Mikroprozessor 78 über den Steuerbus 71, daß dieser die Steuerung der Bus­ se und die Ausführung des Steuerprogramms wieder übernehmen soll. Etwa 85 bis 90% eines typischen Steuerprogramms vom " Leiter" -Typ können vom Bit-Koprozes­ sor 82 ausgeführt werden. Der Betrieb des Bit-Koprozessors im Zusammenhang mit einem Mikroprozessor ist in der unmittelbar zuvor erwähnten US-Patentschrift ausführlich beschrieben.
Sowohl ein Festspeicher 84 (ROM) als auch ein Schreib/Lese-Speicher 85 (RAM) sind innerhalb des Prozessormoduls 19 an alle drei internen Busse 71 bis 73 angeschlossen. Die ROM 84 enthält Speicherplätze für Befehle und für Konstan­ ten für die drei Prozessorschaltungen 78, 80 und 82. Der RAM 85 enthält Spei­ cherplätze für die Operanden und die Ergebnisse der verschiedenen Berechnun­ gen, die vom Prozessormodul 19 durchgeführt werden. Die vom Modul 19 auszufüh­ renden, benutzerdefinierten Steuerprogramme sind ebenfalls in seinem RAM 85 gespeichert.
Fig. 6 zeigt die Datenstruktur des RAM im Prozessormodul 19. Der Speicher 85 enthält einen Abschnitt 90, in dem Statusinformationen bezüglich des Betriebs des Moduls enthalten sind. Jeder Programmausführungs-Prozessormodul 19 enthält seine eigene Datentabelle 91, die im RAM 85 gespeichert ist. Die Datentabelle 91 enthält Speicherplätze für verschiedene Zähler, Zeitgeber und Zwischenbe­ rechnungswerte. Der größte Anteil des RAM 85 ist dem Speichern des Steuerpro­ gramms zugeteilt. Die Programme umfassen kompilierte Steuerprogramme, unabhän­ gige Hintergrundaufgaben und verschiedene Unterbrechungsroutinen, die in den Prozessormodulen 19 abgearbeitet werden sollen. Zur richtigen Ausführung der Steuerprogramme sind im Programmbereich 92 auch Unterstützungsdateien enthal­ ten, die die Funktionsübersichtsdaten, die sogenannten "Deskriptoren" enthal­ ten. In einem Operationsmodus des Programmausführungs-Prozessormoduls 19, der hier als der "Synchronmodus" bezeichnet wird, kopiert der Prozessormodul 19 periodisch die gesamte Eingangsbildtabelle aus den I/O-Abtastmodulen 20 in seinen eigenen Speicher 85. Im Speicherabschnitt 93 ist für diese Kopie der I/O-Bildtabelle Platz vorgesehen.
Die letzte Komponente des Prozessormoduls 19 ist eine Steuer- und Statusschal­ tung 88, die den Status des Prozessormoduls überwacht und an verschiedenen Leitungen des Steuerbusses 71 geeignete Steuersignale liefert, damit verschie­ dene Komponenten in herkömmlicher Weise freigegeben werden. Wie angegeben wurde, behandeln die I/O-Abtastmodule 20 die Übertragung von Daten aus den Prozessormodulen 19 zu den I/O-Modulen 25 in den entfernt liegenden I/O-Ge­ stellen 24.
Fern-I/O-Abtastmodule
Nach den Fig. 1 und 2 koppelt ein Fern-I/O-Abtastmodul 20 die programmier­ bare Steuereinheit 12 mit einem oder mehreren I/O-Gestellen 24, die einzelne I/O-Module 25 enthalten, die ihrerseits die Sensoren, Eingabevorrichtungen, Stellglieder oder Ausgabevorrichtungen mit der programmierbaren Steuereinheit koppeln. Jeder Abtastmodul 20 verlangt periodisch nach Eingangsdaten bezüglich des Status der Eingabevorrichtungen, die an die Fern-I/O-Gestelle 24 ange­ schlossen sind, und er speichert diese Daten in der Eingangsbildtabelle des Moduls, damit sie von anderen Modulen der Steuereinheit, beispielsweise den Prozessormodulen 19, gelesen werden können. Der Abtastmodul 20 enthält auch eine Bildtabelle der Ausgangsdaten, die er von anderen Modulen der Steuerein­ heit, beispielsweise von den Prozessormodulen 19, empfängt. In regelmäßigen Intervallen werden die aktualisierten Ausgangsdaten in der Ausgangsbildtabelle des Abtastmoduls in die jeweiligen Fern-I/O-Gestelle 24 übertragen, damit die an diese Gestelle angeschlossenen verschiedenen Stellorgane gesteuert werden.
Gemäß Fig. 7 ist jeder Fern-I/O-Abtastmodul 20 mit den drei Bussen 27 bis 29 der Rückwandplatine verbunden. Der Fern-I/O-Abtastmodul 20 enthält eine Gruppe interner Busse 101 bis 103, die an die Rückwandplatine 11 über eine Gruppe von Adreßbus-Gattern 104 und eine Gruppe von Datenbus-Gattern 106 angeschlossen ist. Diese beiden Übertragungsgatter werden von einer Zwischenbus-Steuerschal­ tung 108 gesteuert, die über den Steuerbus 101 Signale zu den Gattern 104 und 106 sendet. Ein lokaler Schreib/Lese-Speicher, der als RAM 110 bezeichnet ist, ist mit den drei internen Bussen 101 bis 103 gekoppelt. Dieser Speicher spei­ chert die Eingangsbildtabelle für die Sensorinformation, die in dem I/O-Ab­ tastmodul 20 von den Fern-I/O-Gestellen 24 eingegeben wird, und er speichert außerdem die Ausgangsbildtabelle für die Ausgangsdaten, die an die Fern-I/O- Gestelle abgegeben werden.
Der Mikroprozessor 112 und der I/O-Abtastmodul 20 führen ein in einem ROM 114 gespeichertes, festprogrammiertes Programm aus. Dieses Programm führt perio­ disch einen Zugriff auf jedes Fern-I/O-Gestell 24 aus, um Statusdaten von den zugehörigen Eingabevorrichtungen zu sammeln und Ausgangsdaten an das Gestell zu senden. Die Daten werden über eine I/O-Netzwerk-Schnittstellenschaltung 116 ausgetauscht, die an die Busse 101 bis 103 im Abtastmodul 20 angeschlossen ist. Die Schnittstellenschaltung 116 behandelt die elektrische Schnittstelle zwischen dem parallelen Datenformat des Moduls und dem seriellen Datenüber­ tragungsprotokoll der I/O-Datenverbindung 15. An einen I/O-Abtastmodul 20 können zwei derartige Datenverbindungen 15 angeschlossen sein.
Die bisher beschriebene Struktur der programmierbaren Steuereinheit 12 gleicht der Struktur, die in der US-PS 4 858 101 beschrieben ist. In diesem Dokument ist genau beschrieben, wie die Steuereinheit vom Benutzer programmiert wird und wie das vom Benutzer definierte Steuerprogramm zum Steuern des Betriebs einer maschinellen Anlage ausgeführt wird. Diese frühere programmierbare Steu­ ereinheit enthielt keinen Mechanismus, mit dessen Hilfe eine zweite Steuerein­ heit für den Fall einer Störung der primären Steuereinheit als Reserve einge­ setzt werden könnte.
Hardware des Reservemoduls
Wie in Fig. 1 dargestellt ist, enthalten die zwei programmierbaren Steuerein­ heiten 12′ und 12′′ identische Reservemodule 22′ bzw. 22′′, die über eine se­ rielle Kommunikationsverbindung 21 und ein Steuerkabel 23 verbunden sind. Die Funktion dieses Moduls wird anhand des Betriebs des Reservemoduls 22′ in der ersten programmierbaren Steuereinheit 12′′ beschrieben.
Gemäß Fig. 8 ist der Reservemodul 22′ über eine Schnittstellenschaltung 24 der Rückwandplatine an die drei Busse 27 bis 29 der Gestell-Rückwandplatine 11 angeschlossen, wobei diese Schnittstellenschaltung aus zwei Gruppen bidirek­ tionaler Datenpuffer für den Adreßbus und den Datenbus und aus einer Zwischen­ bus-Steuerschaltung besteht, die an die Steuerleitungen jeder Gruppe von Bus­ sen angeschlossen ist. Diese Komponenten der Schnittstellenschaltung 124 glei­ chen den Vorrichtungen, mit denen die zuvor beschriebenen Module an die Rück­ wandplatine angeschlossen sind.
Die Schnittstellenschaltung 124 ist im Reservemodul 22 an einen Steuerbus 121, an einen internen Datenbus 122 und an einen internen Adreßbus 123 angeschlos­ sen. Der Reservemodul enthält einen Mikrocomputer 125, der ein im Speicher 126 gespeichertes Programm ausführt, das den Betrieb des Reservemoduls steuert, wie beschrieben wird. Als Alternative kann der Programmspeicher 126 über einen eigenen Bus an den Mikrocomputer 125 angeschlossen sein. Daten, die im Verlauf des Betriebs des Reservemoduls benutzt werden, und zusätzliche Daten, die mit den anderen Reservemodulen ausgetauscht werden, sind in einem Datenspeicher 128 gespeichert. Der Mikrocomputer 125 und die Programm- und Datenspeicher 126 und 128 sind an die internen Busse 121 bis 123 angeschlossen. Der Mikrocompu­ ter ist auch an eine Takt- und Zeitgeberschaltung 127 angeschlossen.
Die serielle Datenkommunikationsverbindung 21 zwischen den zwei Reservemodulen 22′ und 22′′ ist an eine Kommunikationsschnittstellenschaltung 123 angeschlos­ sen, die ihrerseits mit den drei internen Bussen 121 bis 123 innerhalb des Moduls angeschlossen ist. Die Dateekommunikationsverbindung 21 entspricht beispielsweise dem Standardkommunikationsprotokoll nach IEEE 802.4, und sie enthält herkömmliche Schaltungen für eine Kommunikation gemäß diesem Proto­ koll. Wie noch beschrieben wird, sammelt der Mikrocomputer 125 periodisch Daten von anderen Modulen innerhalb der programmierbaren Steuereinheit 12, und er speichert die Daten vorübergehend im Datenspeicher 128. Die Daten werden dann als Nachricht über die serielle Kommunikationsverbindung 21 durch den Mikrocomputer 125 ausgesendet, wobei die Daten aus dem Speicher in die Kommu­ nikationsschnittstelle 130 übertragen werden.
In ähnlicher Weise empfängt der Reservemodul 22′′ am anderen Ende der seriellen Kommunikationsverbindung 21 die Nachricht, und sein Mikroprozessor 125 erhält die Nachrichtendaten aus der Kommunikationsschnittstelle 130 und speichert sie vorübergehend im Datenspeicher 128. Nachdem die ganze Nachricht empfangen wor­ den ist, gibt der Mikrocomputer 125 die Daten aus dem Speicher 128 über die Schnittstellenschaltung 124 und über die Rückwandplatine 11 zu einem vom Typ der Daten abhängigen bestimmten Funktionsmodul innerhalb des Gestells 13 wei­ ter. Solche Daten können Systemsteuerinformationen enthalten, die zum Betriebs­ mittel-Verwaltungsmodul 17 weitergegeben werden, oder I/O-Bildtabellendaten, die zu einem speziellen I/O-Abtastmodul 20 innerhalb der empfangenden program­ mierbaren Steuereinheit 12 geschickt werden.
Die zwei Reservemodule 22′ und 22′′ sind über ein Steuerkabel 23 verbunden, über das Signale ausgetauscht werden, damit bestimmt wird, welche der zwei programmierbaren Steuereinheiten 12′ oder 12′′ die in einem aktiven Modus ar­ beitende Hauptsteuereinheit sein soll und welche die in einem Reservebetrieb arbeitende sekundäre Steuereinheit sein soll. Das Steuerkabel 23 stellt eine Verbindung mit einer Primär/Sekundär-Entscheidungsschaltung 132 her, die über die Busse 121 bis 123 an den Mikrocomputer 125 angeschlossen ist. Wie noch genauer beschrieben wird, verlaufen auch Unterbrechungs- und andere Steuer­ leitungen direkt zwischen der Primär/Sekundär-Entscheidungsschaltung 132 und dem Mikrocomputer 125 innerhalb des Reservemoduls 22.
Die Leiter des Steuerkabels 23 sind in Fig. 9 dargestellt. Das erste Leiter­ paar 134 und 135 wird bei der Initialisierung oder bei der Rückstellung des Systems dazu benutzt, zu bestimmen, welche der zwei programmierbaren Steuer­ einheiten 12′ und 12′′ die aktive Steuereinheit und die Reservesteuereinheit werden soll. Die erste programmierbare Steuereinheit 12′ sendet ein Signal aus, das mit "meine Primäranforderung" bezeichnet ist und das an den ersten Leiter 134 des Kabels angelegt wird. Dieses Signal zeigt an, daß die erste programmierbare Steuereinheit verlangt, im aktiven Modus zu arbeiten, und es wird an der zweiten programmierbaren Steuereinheit 12′′ zu einem Eingangssi­ gnal, das als "andere Primäranforderung" bezeichnet wird. Ein zweiter Leiter 125 des Steuerkabels 23 überträgt eine ähnliche Anforderung, die aktive oder primäre Steuereinheit zu sein, von der zweiten programmierbaren Steuereinheit 12′′ zur ersten programmierbaren Steuereinheit 12′. Nach der Initialisierung wird nur diejenige programmierbare Steuereinheit, die zur primären, die Ma­ schine aktiv steuernden Einheit wird, weiterhin ein Signal "meine Primäran­ forderung" aussenden. Im Anschluß daran beendet die primäre Steuereinheit die Aktivierung dieses Signals, um der Reservesteuereinheit eine Störung anzuzeigen.
Ein weiterer Leiter 136 überträgt ein Warnsignal, das anzeigt, daß die erste programmierbare Steuereinheit 12′ den Verdacht hat, daß die zweite program­ mierbare Steuereinheit 12′′ fehlerhaft arbeitet. Dieses Signal "warne andere" aus der ersten programmierbaren Steuereinheit 12′ wird an der zweiten Steuer­ einheit 12′′ zu einem Eingangssignal, das mit "andere warnen mich" bezeichnet ist. Am Leiter 137 wird ein ähnliches Warnsignal von der zweiten programmier­ baren Steuereinheit 12′′ zur ersten Einheit 12′ übertragen. Die Parität der Steuersignale, die zwischen den programmierbaren Steuereinheiten 12′ und 12′′ ausgetauscht werden, wird durch zwei Paritätsprüfsignale angezeigt, die in entgegengesetzten Richtungen über die Leiter 138 und 139 übertragen werden.
Das hier vorliegende Reserveverfahren ermöglicht jeder der beiden programmier­ baren Steuereinheiten 12′ oder 12′′, die die Maschine aktiv steuernde primäre Steuereinheit zu werden. Wie noch genauer beschrieben wird, wird ein Entschei­ dungsverfahren angewendet, um festzulegen, welche der programmierbaren Steuer­ einheiten im aktiven Modus arbeitet. Es ist vorstellbar, daß dieser Entschei­ dungsprozeß zu einem unentschiedenen Ergebnis führt. Um diesen unentschiedenen Zustand zu durchbrechen, weist jede programmierbare Steuereinheit einen Ein­ gang 141 auf, der mit "Ausscheidungseingang" bezeichnet ist, und sie enthält einen Steuerkabelanschluß 142, der auf einen hohen Logigpegel gelegt ist. An einem Ende des Steuerkabels 23 ist ein Verbindungsanschluß vorgesehen, wobei zwischen Kontakten des Anschlusses 142 und des Eingangs 141 eine Kurzschluß­ brücke 144 angebracht ist. Der Verbindungsanschluß am anderen Ende des Kabels weist keine derartige Kurzschlußbrücke auf. Wenn ein unentschiedener Zustand eintritt, übernimmt die Steuereinheit 12, die an ihrem Ausscheidungseingang 141 die Kurzschlußbrücke 144 aufweist, normalerweise den aktiven steuernden Modus, und die andere programmierbare Steuereinheit, die an ihrem Verbindungs­ anschluß keine Kurzschlußbrücke aufweist, geht gewöhnlich in den Reservemodus über, wobei angenommen wird, daß beide Steuereinheiten einwandfrei arbeiten. Diese Entscheidung für die Festlegung, welche der zwei programmierbaren Steu­ ereinheiten 12′ oder 12′′ im aktiven Modus arbeiten soll, wird von den Primär/ Sekundar-Entscheidungsschaltungen 132 in ihren Reservemodulen 22 ausgeführt.
Nach Fig. 10 ist die Primär/Sekundär-Entscheidungsschaltung 132 um eine Ab­ laufsteuerschaltung 150 herum aufgebaut, die eine im Handel erhältliche pro­ grammierbare Logikeinheit enthält. Der Betrieb der Ablaufsteuerschaltung 150 wird für den Fachmann anhand des Diagramms von Fig. 11 und der Beschreibung der verschiedenen Betriebszustände für die Entscheidungsschaltung sowie der Ereignisse, die das Auftreten eines Übergangs von einem Zustand zu einem ande­ ren verursachen, verständlich. Die Ablaufsteuerschaltung ist an eine externe Zeitgeberschaltung 152 angeschlossen. Die Entscheidungsschaltung 132 empfängt auch Angaben darüber, wann der Reservemodul 22 einen Rücksetzvorgang ausführt und wann ein Systemfehler aufgetreten ist, was durch Eingangssignale an Lei­ tungen 153 und 154 vom Steuerbus 121 des Reservemoduls angezeigt wird. Diese Steuerleitungen 153 und 154 sind an die Eingänge einer ODER-Schaltung 155 an­ geschlossen, deren Ausgang mit einem Eingang der Ablaufsteuerschaltung 150 verbunden ist. Die Ablaufsteuerschaltung erzeugt auch ein mit "Umschaltunter­ brechung" bezeichnetes Signal, das direkt an einen Unterbrechungseingang (IRQ) des Mikrocomputers 125 in Fig. 8 angelegt wird. Das Unterbrechungssignal zeigt dem Mikrocomputer an, daß seine programmierbare Steuereinheit die primäre Ein­ heit werden soll.
Ein Reservemodul-Datenbus 122 ist an eine Gruppe von Halteschaltungen 156 an­ geschlossen, die auf ein mit "CPU schreiben" bezeichnetes Steuersignal dadurch reagieren, daß sie am Bus 122 übertragene Daten aus dem Mikrocomputer 125 speichern. Das Signal "CPU schreiben" wird von dem Adressendecodierer 131 er­ zeugt, der die Adresse der Datenhalteschaltungen 156 aus dem Mikrocomputer empfängt. Ein in den Halteschaltungen 156 gespeichertes Datenbit zeigt an, wenn der Reservemodul 22 zum Arbeiten bereit ist; ein weiteres Bit zeigt an, wenn sich der Reservemodul in einem Zustand befindet, in dem die Steuereinheit 12 für ein Arbeiten als sekundäre Steuereinheit oder als Reservesteuereinheit qualifiziert ist; ein drittes Datenbit zeigt an, daß der Mikrocomputer 125 die Ablaufsteuerschaltung 150 veranlassen will, das Unterbrechungsumschaltsignal zu löschen. Diese Bits erzeugen drei Signale an Ausgangsleitungen aus den Da­ tenhalteschaltungen 156, die an Eingänge der Ablaufsteuerschaltung 150 ange­ legt werden. Ein weiteres Ausgangsbit aus den Datenhalteschaltungen 156 er­ zeugt das Signal "warne andere", das an das Steuerkabel 23 angelegt wird, um eine vermutete Störung der anderen programmierbaren Steuereinheit zu signali­ sieren. Ein letztes Datenbit aus der Gruppe von Halteschaltungen 156 wird vom Mikrocomputer 125 gespeichert, um ein Signal "Kabelfehler" zu löschen, das er­ zeugt wird, wenn in den Signalen am Steuerkabel 23 ein Paritätsfehler festge­ stellt wird, wie er noch beschrieben wird.
Diese fünf Ausgangssignale der Datenhalteschaltungen 156 werden an getrennte Eingänge einer ersten Gruppe von Tristate-Datenpuffern 158 angelegt, deren Ausgänge an den Reservemodul-Datenbus 122 angeschlossen sind. Die Datenpuffer 158 werden durch ein Signal "CPU lesen" freigegeben, das von der Entschei­ dungsschaltung 132 über den Steuerbus 121 aus dem Adressendecodierer 131 emp­ fangen wird. Das Signal "CPU lesen" gibt auch eine zweite Gruppe von Tristate- Datenpuffern 116 frei, deren Eingänge an Ausgänge der Ablaufsteuerschaltung 150 angeschlossen sind, die den aktuellen Zustand dieser Baueinheit anzeigen. Der Ausgang der zweiten Gruppe von Datenpuffern 160 ist ebenfalls an den Re­ servemodul-Datenbus 122 angeschlossen.
Die Ablaufsteuerschaltung 150 enthält einen Ausgang, der über einen Signal­ puffer 161 an einen Anschluß für das Steuerkabel 23 angeschlossen ist und das Signal "meine Primäranforderung" erzeugt. Ein weiterer Leiter des Steuerkabels 23 ist über einen zweiten Signalpuffer 162 mit einem Eingang der Ablaufsteuer­ schaltung 150 verbunden, damit das Signal "andere Primäranforderung" zur Ab­ laufsteuerschaltung gekoppelt wird. Der Leiter 136 des Steuerkabels überträgt das Signal "andere warnen mich" über einen dritten Signalpuffer 163 zu einem weiteren Eingang der Ablaufsteuerschaltung 150. Das Ausscheidungssignal am Leiter 141 des Steuerkabels 53 wird an einen Eingangsanschluß eines vierten Signalpuffers 164 angelegt, dessen Ausgang mit einem Eingang der Ablaufsteuer­ schaltung 150 verbunden ist. Ein fünfter Signalpuffer 165 erzeugt ein Signal mit hohem Logikpegel an einer Ausgangsklemme, an der der Leiter 142 ange­ schlossen ist.
Die Signale von den Ausgängen der Puffer 163 und 164, die mit "andere warnen mich" bzw. "Ausscheidung" bezeichnet sind, sind an zwei Datenhalteschaltungen 166 angelegt. Wenn die Datenhalteschaltungen 166 vom Modul-Taktsignal freige­ geben sind, speichern sie den Pegel der jeweiligen Signale. Die Ausgänge die­ ser Datenhalteschaltungen 166 sind an ausgewählte Eingänge der ersten Gruppe von Tristate-Datenpuffern 158 angeschlossen.
Die Ausgangssignale der zweiten und dritten Signalpuffer 162 und 163, die mit "andere Primäranforderung" bzw. "andere warnen mich" bezeichnet sind, werden an Eingänge einer Kabelfehlerschaltung 168 angelegt. Außerdem werden die Aus­ gangssignale der Datenhalteschaltungen 156, die mit "warne andere" und "lösche Kabelfehler" bezeichnet sind, ebenfalls an die Eingänge der Kabelfehlerschal­ tung 168 angelegt. Die Kabelfehlerschaltung empfangt somit als Eingangssignale die zwei Signale von den Signalpuffern 162 und 163, die über das Steuerkabel 63 von der anderen programmierbaren Steuereinheit 12 empfangen werden. Wie noch beschrieben wird, berechnet die Kabelfehlerschaltung 168 die Parität die­ ser zwei Signale, und sie vergleicht sie mit dem Signal "andere Parität", das sie an der Leitung 139 des Steuerkabels empfängt. Wenn die zwei Paritätswerte nicht übereinstimmen, wird an einen Eingang eines der Datenpuffer 158 und, wenn die Puffer durch das Signal "CPU lesen" freigegeben sind, an den Datenbus ein Signal "Kabelfehler" geschickt. Die Kabelfehlerschaltung 168 empfängt fer­ ner Signale, die von anderen Komponenten der Entscheidungsschaltung 132 an das Kabel 23 angelegt werden, damit ein Paritätsbit zur Leitung 138 des Kabels ge­ schickt wird.
Betrieb des Reservemoduls
Die Reservemodule 22′ und 22′′ in jeder programmierbaren Steuereinheit 12′ und 12′′ tauschen beim Einschalten und beim Auftreten eines Rücksetzvorgangs Signa­ le über das Steuerkabel 23 aus, damit festgelegt wird, welche Steuereinheit die die Maschine steuernde primäre Steuereinheit sein wird. Nach Fig. 10 be­ stimmt die Ablaufsteuerschaltung 150 im Reservemodul, ob seine programmierbare Steuereinheit die primäre oder die sekundäre Steuereinheit sein wird und dem­ gemäß im aktiven oder im Reservemodus arbeitet. Diese Festlegung erfolgt ent­ sprechend dem in Fig. 11 dargestellten Zustandsdiagramm. Der Betrieb des Re­ servemoduls 22′ in der ersten programmierbaren Steuereinheit 12′ wird unter der Annahme beschrieben, daß der andere Reservemodul 22′′ in der gleichen Weise arbeitet. Der einzige betriebsmäßige Unterschied ist das Auflösen eines unent­ schiedenen Zustandes, wenn beide Steuereinheiten den Primärstatus anstreben, wie noch beschrieben wird.
Bei einem Rücksetzvorgang oder einem in der programmierbaren Steuereinheit 12 auftretenden Systemfehler empfängt die Primär/Sekundär-Entscheidungsschaltung 132 ein entsprechendes Signal an der Eingangsleitung 153 oder an der Eingangs­ leitung 154, und sie legt das Signal über die ODER-Schaltung 155 an einen Ein­ gang der Ablaufsteuerschaltung an. Wenn eines dieser Signale aktiv ist, geht die Ablaufsteuerschaltung ohne Rücksicht auf ihren vorhergehenden Status in den in Fig. 11 dargestellten Start-Status 170 über. Die Ablaufsteuerschaltung verbleibt in diesem Zustand, bis der Mikroprozessor 125 seine Initialisierung beendet hat und ein Bit in den Halteschaltungen 156 der Entscheidungsschaltung 132 gespeichert hat, das ein aktives Bereit-Eingangssignal an der Ablaufsteu­ erschaltung erzeugt. Es sei bemerkt, daß dann, wenn der Mikrocomputer dieses Bit in den Halteschaltungen 156 speichert, oder dann, wenn ein Systemrücksetz­ vorgang erfolgt, die übrigen Halteschaltungen zurückgesetzt werden, um an den anderen Ausgangsleitungen inaktive Signale zu erzeugen. An diesem Zeitpunkt sollte das Rücksetzsignal oder das Systemfehlersignal, das den erneuten Start der Ablaufsteuerschaltung ausgelöst hat, in den inaktiven Zustand übergegangen sein. Wenn eines dieser Signale wieder aktiv wird oder das Bereit-Signal ver­ schwindet, während sich die Ablaufsteuerschaltung in irgendeinem Zustand mit Ausnahme des Steuerzustandes 176 befindet, erfolgt ein automatischer Übergang in den Start-Zustand 170.
Sobald das Bereit-Signal empfangen worden ist und die Rücksetz- und Systemfeh­ lersignale inaktiv geworden sind, führt die Ablaufsteuerschaltung einen Über­ gang zum Schritt 171 durch, bei dem geprüft wird, ob die andere programmier­ bare Steuereinheit (PC) versucht, die primäre Steuereinheit zu werden. Diese Feststellung geschieht durch Überprüfen der Eingangsleitung der Ablaufsteuer­ schaltung, die an den Steuerkabelleiter 135 angeschlossen ist, der das Ein­ gangssignal "andere Primäranforderung" überträgt. Zunächst sei angenommen, daß das Signal "andere Primäranforderung" inaktiv ist, wie dies immer dann ge­ schieht, wenn entweder keine andere programmierbare Steuereinheit 12′′ vorhan­ den ist oder wenn der Reservemodul 22′′ der anderen Steuereinheit 12′′ erst noch danach trachten muß, die primäre Steuereinheit zu werden. In dieser Situation geht die Ablaufsteuerschaltung 150 in den Zustand 152 des Strebens nach der Primäranforderung über, indem sie das Signal "meine Primäranforderung" an das Steuerkabel 23 abgibt. Um dies zu tun, erzeugt die Ablaufsteuerschaltung am Eingang des ersten Signalpuffers 161 ein Steuersignal, um ein aktives Anforde­ rungssignal am Kabelleiter 134 zu erzeugen. Nach der Geltendmachung des Signals "meine Primäranforderung" initialisiert die Ablaufsteuerschaltung den Zeitge­ ber 152 für eine gegebene Dauer und geht zum Zustand 173 über, in dem auf den Ablauf dieses Zeitgebers gewartet wird. Der Zeitgeber 152 erzeugt eine Verzö­ gerung um wenigstens die Zeitdauer, die die Signale für den Durchlauf durch das Steuerkabel 23 benötigen, falls andere programmierbare Steuereinheiten 12′ ebenfalls eine Anforderung, zur primären Steuereinheit gemacht zu werden, aus­ senden.
Nach Ablauf des Zeitgebers 152 geht die Ablaufsteuerschaltung 150 in den Kon­ fliktlösungszustand 174 über, bei dem der Eingang von der Leitung 135, die das Signal "andere Primäranforderung" führt, abgetastet wird, damit sichergestellt wird, daß die andere programmierbare Steuereinheit 12′′ nicht versucht, zur primären Steuereinheit zu werden. Unter der Annahme, daß nur die erste Steuer­ einheit 12′ danach trachtet, die primäre Steuereinheit zu werden, geht ihre Ablaufsteuerschaltung 150 in den Steuerzustand 176 über. Dieser Übergang wird dem Mikrocomputer 125 des Reservemoduls über den Puffer 160 gemeldet. Der Mi­ krocomputer signalisiert dann anderen Modulen in der ersten programmierbaren Steuereinheit 12′, in den aktiven Modus überzugehen und mit der Ausführung des Steuerprogramms zu beginnen, damit Daten mit den Fern-I/O-Gestellen 24 ausge­ tauscht werden. Die Ausführung des Steuerprogramms ist in der US-PS 4 858 101 genau beschrieben. Die erste programmierbare Steuereinheit wird somit zur pri­ mären Steuereinheit, die die Steuerung über die Maschinenanlage übernimmt.
Im steuernden Zustand erfaßt der Reservemodul 22′ periodisch I/O- und Status- Daten und überträgt die Daten über die serielle Kommunikationsverbindung 21 zur sekundären programmierbaren Steuereinheit. Insbesondere läuft in regel­ mäßigen Intervallen ein Zeitgeber innerhalb der Baueinheit 127 des Reservemo­ duls von Fig. 8 ab und gibt eine Meldung an den Mikrocomputer 125. Der Mikro­ computer antwortet darauf durch Ausführen einer Datenerfassungs- und Daten­ übertragungsroutine, die im Programinspeicher 126 gespeichert ist. Diese Routi­ ne veranlaßt den Mikrocomputer 125, auf jedem I/O-Abtastmodul 20′ im gleichen Gestell 13′ wie der Reservemodul 22′ einen Zugriff auszuüben. Beim Zugriff auf jeden I/O-Abtastmodul 20′ wird der Inhalt seiner I/O-Datentabelle über die Rückwandplatine 11′ zum Datenspeicher 128 des Reservemoduls übertragen. Der Reservemodul 22′ übt dann einen Zugriff auf den Betriebsmittel-Verwaltungs­ modul 17′ aus, um die Systemstatusinformation und die Systemdatentabelle aus dem Speicher 50 in ähnlicher Weise zu erhalten. Datentabellen in den Programm­ prozessormodulen 19′ werden ebenfalls gelesen und im Reservemodul 22′ gespei­ chert.
Wenn unterschiedliche Segmente dieser Daten durch den Reservemodul 22′ erfaßt und im Datenspeicher 128 gespeichert werden, beginnt der Mikrocomputer 125 des Moduls, diese Daten über den Datenbus 122 zur Kommunikationsschnittstelle 130 zu übertragen. Diese letztgenannte Baueinheit formuliert eine die Daten ent­ haltende Nachricht gemäß dem Protokoll der seriellen Kommunikationsverbindung 21. Die formulierte Nachricht wird über die Verbindung übertragen.
Die Nachricht wird vom Reservemodul 22′′ der zweiten programmierbaren Steuer­ einheit 12′′ empfangen. Typischerweise befindet sich der empfangende Reservemodul 22′′ an diesem Zeitpunkt im qualifizierten Sekundärzustand, wenn dies nicht die erste Datenübertragung ist, die sich an einen Rücksetzvorgang des empfangenden Moduls anschließt. In diesem Zustand werden die über die Verbin­ dung 21 empfangenen Daten vom Mikroprozessor 125 des zweiten Reservemoduls 22′′ von der Kommunikationsschnittsteile zu seinem Datenspeicher 125 übertragen. Wenn der Empfänger jedes Datensegment empfängt, überträgt der Mikrocomputer 125′′ dieses Reservemoduls die Daten über die Rückwandplatine 11′′ in der zwei­ ten programmierbaren Steuereinheit 12′′ zu den entsprechenden Modulen 17′′, 19′′ und 20′′. Durch diese Datenübertragung steht der im Reservebetrieb arbeitenden zweiten programmierbaren Steuereinheit 12′′ eine relativ aktuelle Kopie der Be­ triebsdaten zur Verfügung, so daß sie die Steuerung des Systems im Falle einer Störung der primären Steuereinheit 12′ übernehmen kann. Es sei bemerkt, daß dann, wenn die zweite programmierbare Steuereinheit 12′ im aktiven Modus als Primäreinheit arbeitet, ihre Betriebsdaten zur ersten programmierbaren Steuer­ einheit 12′ übertragen werden, die dann im Reservebetrieb als sekundäre Steu­ ereinheit arbeitet.
Die Ablaufsteuerschaltung 150 in der primären Steuereinheit (beispielsweise der ersten programmierbaren Steuereinheit 12′) verbleibt im steuernden Zustand 176, bis ein Rücksetz- oder Systemfehlersignal geltend gemacht wird oder das Bereit-Signal aus den Datenhalteschaltungen 156 negiert wird. Sollte eine dieser Bedingungen eintreten, geht die Ablaufsteuerschaltung aus dem steuern­ den Zustand 176 in einen Filterzustand 178 über und kehrt nicht sofort in den Start-Zustand 170 zurück, was geschieht, wenn eines dieser Signale im Verlauf eines der anderen Zustände auftritt. Der Filterzustand 178 verhindert eine kurzzeitige Änderung der Pegel der Bereit-, Rücksetz- oder Systemfehlersignale aufgrund von Störspitzen, und er verhindert ein irrtümliches Verlassen des steuernden Zustandes durch die Ablaufsteuerschaltung. Ein Übergang in den Fil­ terzustand veranlaßt die Ablaufsteuerschaltung nicht, das Signal "meine Pri­ märanforderung" zu negieren, noch wird sie veranlaßt, den Betrieb der gesteu­ erten Maschine zu beenden. Wenn das Rücksetz-Signal oder das Fehlersignal weiterhin aktiv bleiben oder das Bereit-Signal immer noch negiert ist, nachdem ein Taktzyklus verstrichen ist, führt die Ablaufsteuerschaltung 150 einen Übergang vom Filterzustand 178 in den Startzustand 170 durch. Andernfalls kehrt die Ablaufsteuerschaltung vom Filterzustand 178 in den steuernden Zu­ stand 176 zurück.
Es wird nun angenommen, daß dann, wenn die erste programmierbare Steuereinheit 12′ in Betrieb geht, die zweite programmierbare Steuereinheit 12′′ bereits ihr Signal "meine Primäranforderung" geltend gemacht hat. Dieses Signal wird an der ersten Steuereinheit 12′ das vom Kabelleiter 135 kommende Eingangssignal "andere Primäranforderung". Wenn die Ablaufsteuerschaltung 150 in der ersten programmierbaren Steuereinheit 12′ vom Startzustand 170 in den Zustand 171 zum Prüfen anderer programmierbarer Steuereinheiten übergeht, wird sie ein aktives Signal "andere Primäranförderung" feststellen. Dies veranlaßt die Ablaufsteu­ erschaltung, zum Schritt 180 überzugehen, der mit ausgeschlossene Sekundärein­ heit bezeichnet ist. Wenn die zweite programmierbare Steuereinheit 12′′ die erste Steuereinheit 12′ nicht absichtlich davon ausschließt, eine sekundäre Einheit zu werden, wie durch den Empfang eines aktiven Signals "andere warnen mich" zu erkennen wäre, springt die Ablaufsteuerschaltung 150 zum sekundären Reservezustand 182.
In diesem letztgenannten Zustand 182 gibt der Mikrocomputer 128 unter der Steuerung durch ein festverdrahtetes Programm im Programmspeicher 126 an, daß er bereit ist, die Verantwortung einer qualifizierten sekundären Einheit zu übernehmen, indem ein Bit in der ersten Gruppe von Halteschaltungen 156 ge­ speichert wird, damit ein Eingangssignal "qualifiziere Sekundäreinheit" zur Ablaufsteuerschaltung 150 gesendet wird. Die Ablaufsteuerschaltung verbleibt im Sekundär-Bereitschaftszustand 182, bis sie das Signal "qualifiziere Sekun­ däreinheit" empfängt. Wenn das Signal "andere warnen mich" im Verlauf des Zu­ standes 182 in den aktiven Zustand übergeht, kehrt die Ablaufsteuerschaltung 150 in den Zustand "ausgeschlossene Sekundäreinheit" zurück. Das Signal "ande­ re warnen mich" wird von einer anderen programmierbaren Steuereinheit erzeugt und über das Steuerkabel 23 übertragen, wenn die andere Einheit glaubt, daß sich die derzeitige programmierbare Steuereinheit in einem Fehlerzustand be­ findet oder nicht richtig arbeitet.
Wenn die Ablaufsteuerschaltung ein aktives Signal "qualifiziere Sekundarein­ heit" empfängt, während der Zustand 182 für den Bereitschaftsbetrieb der Se­ kundäreinheit vorliegt, erfolgt ein Übergang in den Zustand 184, der für die qualifizierte Sekundäreinheit gilt, wobei die Ablaufsteuereinheit in diesem Zustand verbleibt, bis entweder ein Ausschluß durch ein aktives Signal "andere warnen mich" auftritt oder das Signal "qualifiziere Sekundäreinheit" in den inaktiven Zustand übergeht. Eine programmierbare Steuereinheit befindet sich im Reservemodus, wenn der Reservemodul das Vorliegen des Zustandes der quali­ fizierten Sekundäreinheit anzeigt.
Eine programmierbare Steuereinheit im Reservemodus befindet sich in einer Position, in der sie die Steuerung der Maschine übernimmt, falls die primäre programmierbare Steuereinheit gestört sein sollte. Eine Störung wird durch das Signal "andere Primäranforderung" aus der primären Steuereinheit angezeigt, das in den inaktiven Zustand übergeht. Die Ablaufsteuerschaltung 150 in der sekundären Steuereinheit stellt dieses Ereignis fest und reagiert darauf durch den Übergang in den Unterbrechungserzeugungszustand 186. Wenn dies geschieht, sendet die Ablaufsteuerschaltung 150 ein aktives Signal "Unterbrechungsum­ schaltung" zum Unterbrechungseingang (IRQ) des Mikrocomputers 125 in Fig. 8. Dieses Unterbrechungssignal bleibt aktiv, bis es durch ein Signal "lösche Unterbrechung" zurückgesetzt wird, das vom Mikrocomputer 125 erzeugt wird, indem ein geeignetes Bit in den Datenhalteschaltungen 156 gespeichert ist, oder es wird durch ein aktives Rücksetz- oder Fehler-Eingangssignal an den Leitungen 153 oder 154 zurückgesetzt. Unter der Annahme, daß das Signal "qualifizierte Sekundäreinheit" aus der Datenhalteschaltung immer noch aktiv ist und das Eingangssignal "andere Primäranforderung" an der Leitung 135 des Steuerkabels 23 immer noch inaktiv ist, geht die Ablaufsteuerschaltung 150 vom Unterbrechungserzeugungszustand 186 in den steuernden Zustand 176 über.
Der Unterbrechungserzeugungszustand 186 dient als Filter für den Fall, daß das Negieren des Signals "andere Primäranforderung" auf Rauschen zurückzuführen ist. Falls das Signal "andere Primäranforderung" an der Leitung 135 des Steu­ erkabels im Unterbrechungserzeugungszustand 186 wieder aktiv werden sollte, kehrt die Ablaufsteuerschaltung 150 in den Zustand 184 für die qualifizierte Sekundäreinheit zurück. In diesem Fall stellt der Mikrocomputer 125 die Zu­ standsänderung fest, indem er die zweite Gruppe der Datenpuffer 160 liest, und er reagiert darauf durch Nichtbeachten und Löschen des Signals "Unterbrechung umschalten". Zum Löschen der Unterbrechung sendet der Mikrocomputer 125 ein Bit an die entsprechende Datenhalteschaltung in der Gruppe 156, die das Signal "lösche Unterbrechung" zur Ablaufsteuerschaltung 150 sendet. Ohne Rücksicht auf den Zustand, in dem die Ablaufsteuerschaltung gerade arbeitet, veranlaßt dieses Signal "lösche Unterbrechung" die Ablaufsteuerschaltung, das aktive Signal "Umschaltung unterbrechen" zu negieren, das vorher erzeugt worden ist.
Die im Zustand 184 arbeitende Ablaufsteuerschaltung springt bei Rücksetzvor­ gängen, beim Auftreten von Fehlern und beim Negieren des Signals "bereit" durch den Mikroprozessor 125 stets in den Startzustand 170. Außerdem können qualifizierte sekundäre Steuereinheiten als Reaktion auf den Mikrocomputer 125 oder entsprechende Steuersignale am Kabel 23 von der anderen programmierbaren Steuereinheit in den Zustand 180 der Ausschließung der sekundären Steuerein­ heit übergehen. Falls sie vom Mikrocomputer 125 des Reservemoduls von der Übernahme der Funktion als Sekundäreinheit ausgeschlossen wird, wird das Si­ gnal "qualifiziere Sekundäreinheit" am Ausgang der Datenhalteschaltungen 156 einfach entfernt. Dies veranlaßt die Ablaufsteuerschaltung, einen Weg durch den Zustand 180 für die ausgeschlossene Sekundäreinheit zum Zustand 182 für den Bereitschaftszustand der Sekundäreinheit zu verfolgen. Wenn der Mikrocom­ puter 125 dann bestimmt, daß die programmierbare Steuereinheit wieder eine qualifizierte sekundäre Steuereinheit werden kann, wird das Signal "qualifiziere Sekundäreinheit" wieder an die Ablaufsteuerschaltung 150 angelegt, indem ein aktives Bit in der entsprechenden Datenhalteschaltung innerhalb der Gruppe 156 gespeichert wird. Dies veranlaßt die Ablaufsteuerschaltung, wieder in den Zustand 184 für die qualifizierte Sekundäreinheit zurückzukehren.
Wenn eine programmierbare Steuereinheit, die als sekundäre Steuereinheit ar­ beitet, das Signal "andere warnen mich" am Kabelleiter 136 empfängt, geht ihre Ablaufsteuerschaltung 150 vom Zustand 184 in den Zustand 180 über. Um wieder eine qualifizierte Steuereinheit zu werden, entfernt die andere programmier­ bare Steuereinheit das aktive Signal "andere warnen mich", und der Mikrocom­ puter 125 des derzeitigen Reservemoduls muß das Signal "qualifiziere Sekun­ däreinheit" negieren und dann wieder aktivieren. Diese Wirkung veranlaßt die Ablaufsteuerschaltung 150, über den Zustand 182 für den Bereitschaftszustand der Sekundäreinheit in den Zustand 184 für die qualifizierte Sekundäreinheit überzugehen.
Es ist vorstellbar, daß die beiden programmierbaren Steuereinheiten 12′ und 12′′ nahezu gleichzeitig in den Betriebszustand übergehen; in diesem Fall müs­ sen die Ablaufsteuerschaltungen in ihren jeweiligen Reservemodulen 22′ und 22′′ in den Zustand 172 für die Geltendmachung einer Primäranforderung übergehen, da keine über die Wirkung der jeweils anderen in diesem frühen Stadium wegen der Geräte- und Signal-Laufzeitverzögerungen informiert ist. Beide Ablauf­ steuerschaltungen 150 gehen in den Wartezustand 173 über, bis ihre jeweiligen Zeitgeber 152 ablaufen, was ausreichend Zeit zur Verfügung stellt, damit sich alle Kabelsignale ausbreiten können.
Eine richtige Konfiguration legt fest, daß an einer programmierbaren Steuer­ einheit (beispielsweise der Steuereinheit 12′ in Fig. 9) der Eingang 141′ für das Ausscheidungssignal an einen hohen Logikpegel gelegt ist, während an der anderen programmierbaren Steuereinheit (beispielsweise der Einheit 12′′) der Eingang 141′′ für das Ausscheidungssignal negiert ist, indem ein Logikpegel über den Widerstand 167 von Fig. 10 angelegt wird. Wenn die sekundäre program­ mierbare Steuereinheit 12′′ in diesem Beispiel in den Konfliktlösungszustand 174 übergeht, stellt sie fest, daß das Eingangssignal "andere Primäranforde­ rung" geltend gemacht wird und daß ihr eigenes Ausscheidungssignal negiert ist. Dies veranlaßt die Ablaufsteuerschaltung 150 in der zweiten programmier­ baren Steuereinheit 12′′, in den Zustand 180 für die ausgeschlossene Sekundär­ einheit überzugehen und ihr zuvor aktives Signal "meine Primäranforderung" in diesem Prozeß zu negieren. Aus diesem Zustand 180 kann die ausgeschlossene Se­ kundäreinheit die zweite programmierbare Steuereinheit in die zuvor beschrie­ benen Zustände für den Bereitschaftsbetrieb und für den qualifizierten Betrieb übergehen. Die erste programmierbare Steuereinheit 12′, an deren Eingang 141′ das Ausscheidungssignal mit hohem Logikwert angelegt ist, wartet im Konflikt­ lösungszustand 174, bis die andere Steuereinheit nicht mehr danach strebt, die primäre Steuereinheit zu werden, wie durch den inaktiven Zustand des Signals "andere Primäranforderung" angezeigt wird. Die erste programmierbare Steuer­ einheit geht dann in den steuernden Zustand 176 über und wird zur primären Steuereinheit.
Mit Bezugnahme auf die Fig. 10 und 11 gibt es Zeitperioden, in denen die Umschalt- und Rückschaltvorgänge zwischen primären und sekundären Steuerein­ heiten unter der Steuerung durch den Mikrocomputer 125 im Reservemodul statt­ finden müssen. Diese Zeitperioden enthalten Test- und Diagnoseabläufe zusätz­ lich zu beabsichtigten Zuordnungen primärer und sekundärer Systeme ohne Rück­ sicht auf die Einschaltreihenfolge. Eine solche Steuerung ist bei der Konfigu­ ration der Ablaufsteuerschaltung möglich, da die vorliegende Ablaufsteuer­ schaltung jederzeit durch den Mikrocomputer 125 zurückgesetzt werden kann, indem das Eingangssignal "bereit" negiert wird. Die primäre Steuereinheit muß lediglich das Signal "bereit" negieren, bis sie in den Startzustand 170 über­ geht, während die sekundäre programmierbare Steuereinheit ein aktives Signal "meine Primäranforderung" geltend macht, das an den Eingang "andere Primäran­ forderung" der vorherigen primären Steuereinheit angelegt wird. Sobald dies geschieht, kann der Mikrocomputer 125 der vorherigen primären programmierbaren Steuereinheit ein aktives Signal "bereit" wieder geltend machen, um seine Ab­ laufsteuerschaltung auf einen Weg zum Zustand 184 für die qualifizierte Sekun­ däreinheit zu bringen, da die andere programmierbare Steuereinheit nun in den Zustand umgeschaltet hat, in dem sie die neue primäre Steuereinheit wird.
Kabelfehlererfassung
Da die Ablaufsteuerschaltung 150 Signale parallel über das Steuerkabel 23 zu der anderen programmierbaren Steuereinheit sendet, empfängt eine Kabelfehler­ schaltung 168 die Signale, und sie berechnet ein Paritätsbit, das über den Leiter 138 des Kabels übertragen wird. In gleicher Weise wird ein Paritätsbit an der Leitung 139 von der anderen programmierbaren Steuereinheit empfangen, um die Parität der Signale anzuzeigen, die die Ablaufsteuerschaltung 150 von der anderen Steuereinheit empfängt. Das Paritätsbit kann beispielsweise an­ zeigen, ob eine gerade oder eine ungerade Anzahl von Bits mit dem Signalwert 1 über das Kabel in der entsprechenden Richtung an einem gegebenen Zeitpunkt gesendet wird. Es sei jedoch bemerkt, daß alle in beiden Richtungen über das Steuerkabel übertragenen Signale asynchron sind, so daß eine spezielle Bear­ beitung erforderlich ist, um die Parität zu bestimmen, da ein gegebenes Signal die Logikwerte ändern kann, bevor das entsprechende Paritätssignal antwortet. Der Ausdruck "asynchron" bezieht sich hier auf die Tatsache, daß die Signale, die hier parallel zwischen den zwei Reservemodulen gesendet werden, die Logik­ werte unabhängig von einer gemeinsamen Zeitreferenz ändern.
Die Paritätssignale werden durch die in Fig. 12 dargestellte Kabelfehlerschal­ tung verarbeitet. Zur Erzeugung des Paritätsausgangssignals werden die Aus­ gangssignale der Ablaufsteuerschaltung 150, die mit "meine Primäranforderung" und "warne andere" bezeichnet sind, als Eingangssignale an einen üblichen Pa­ ritätsgenerator 190 angelegt, der ein Bit an der Paritätsausgangsleitung 138 abhängig davon erzeugt, ob die gesamte Anzahl der Bits mit hohem Logikwert an den Eingangsleitungen ungerade oder gerade ist. Wenn die Ablaufsteuerschaltung oder andere Baueinheiten des Reservemoduls 22 weitere Signale über das Steuer­ kabel senden, werden diese weiteren Signale ebenfalls an den Paritätsgenerator angelegt, so daß das Ausgangsbit genau die Parität aller dieser Signale, die in der Richtung über das Steuerkabel gesendet werden, wiedergibt.
Eine Änderung des Signals "meine Primäranforderung" oder des Signals "warne andere" ist an das Steuerkabel 23 angelegt worden, bevor ein neues Paritätsbit berechnet und an das Kabel angelegt wird, was auf die Laufzeitverzögerungen der Schaltung zurückzuführen ist. Das Signal an der Paritätsausgangsleitung ist somit ebenfalls asynchron in bezug auf die anderen Ausgangssignale am Steuerkabel 23. Dies bedeutet, daß der andere Reservemodul das neue Signal "meine Primäranforderung" oder "warne andere" vor dem neuen Paritätsbit emp­ fängt. Wenn eine herkömmliche Paritätsprüfschaltung im anderen Reservemodul enthalten ist, wird ein Paritätsfehlersignal erzeugt, wenn die Parität der ankommenden Signale nicht mit dem alten Paritätsbit übereinstimmt. Die vorlie­ gende Kabelfehlerschaltung 168 macht von einem besonderen Paritätsprüfverfah­ ren Gebrauch, das in diesem Fall nicht irrtümlich einen Kabelfehler anzeigt.
Der Reservemodul 22 in der anderen programmierbaren Steuereinheit 12 enthält einen ebensolchen Paritätsgenerator 190. Das Paritätssignal aus der anderen Steuereinheit wird vom vorliegenden Reservemodul 22 empfangen und an die Ka­ belfehlerschaltung 168 in der Primär/Sekundär-Entscheidungsschaltung 132 ange­ legt. Wie in Fig. 12 dargestellt ist, ist das Signal "andere Parität" an der Leitung 139 an einen Eingang einer Datenhalteschaltung innerhalb der ersten Gruppe von Datenhalteschaltungen 191 angelegt. Ebenso werden die Signale "andere Primäranforderung" und "andere warnen mich", die vom Reservemodul von der anderen programmierbaren Steuereinheit empfangen werden, an die Eingänge ihrer Datenhalteschaltungen in der Gruppe 191 angelegt. Die Logikwerte dieser Signale werden in den jeweiligen Datenhalteschaltungen beim Empfang eines Taktimpulses an der Leitung 194 gespeichert, der von der Taktschaltung 127 im Reservemodul erzeugt wird. Bei jedem Auftreten eines Taktimpulses wird ein Bit-Wert jedes Eingangssignals in einer Halteschaltung gespeichert. Die Aus­ gänge jeder Halteschaltung innerhalb der Gruppe 191 sind mit Eingängen einer zweiten Gruppe von Datenhalteschaltungen 192 verbunden, die Ausgänge aufwei­ sen, die der Reihe nach an Eingänge einer dritten Gruppe von Halteschaltungen 193 angeschlossen sind. Jede Halteschaltung innerhalb der zweiten Gruppe 192 und der dritten Gruppe 193 wird vom Taktsignal an der Leitung 194 getaktet. Die drei Gruppen von Halteschaltungen 191 bis 193 bilden eine Kaskade, durch die die Kabeldaten laufen. An jedem gegebenen Zeitpunkt speichern die drei Gruppen von Halteschaltungen 191 bis 193 drei Bit-Werte jedes Eingangssignals vom Steuerkabel 23.
Die Ausgangssignale der dritten Gruppe von Datenhalteschaltungen 193 werden als Eingangssignale an eine Paritätsprüfschaltung 196 angelegt. Die Paritäts­ prüfschaltung 196 enthält einen internen Paritätsgenerator, der der Baueinheit 190 gleicht; sie leitet ein Paritätsbit aus den Bitwerten der Signale "andere Primäranforderung" und "andere warnen mich" ab. Das Signal "andere Parität" durchläuft die Kaskade der Datenhalteschaltungen 191 bis 193 und wird schließ­ lich an die Paritätsprüfschaltung 196 angelegt. Das intern erzeugte Paritäts­ bit wird durch die Paritätsprüfschaltung mit dem Bit des Signals "andere Parität" verglichen. Wenn die zwei Paritätsbits unterschiedlich sind, erzeugt die Paritätsprüfschaltung 196 ein aktives Ausgangssignal "Paritätsfehler" an der Leitung 198.
Die drei Ausgangssignale jeder Gruppe von Datenhalteschaltungen 191 bis 193 werden als Eingangssignale an drei Komparatoren 200, 201 und 202 angelegt. Der erste Komparator 200 vergleicht die Bit-Werte aus den drei Halteschaltungen, die das Signal "andere Parität" repräsentieren, um zu bestimmen, ob alle drei Bits identisch sind. Der zweite Komparator 201 und der dritte Komparator 202 führen unabhängig voneinander ebensolche Vergleiche mit Dreiergruppen von Bit- Werten aus den Datenhalteschaltungen durch, die die Signale "andere Primäran­ forderung" und "andere warnen mich" repräsentieren. Die Ergebnisse der drei unabhängigen Vergleichsvorgänge werden im Gatter 203 einer UND-Verknüpfung unterzogen, damit ein Ausgangssignal erzeugt wird, das mit "gleich" bezeichnet ist. Das Signal "gleich" hat einen hohen, aktiven Logikwert, wenn jede Dreier­ gruppe der Bit-Werte den gleichen Logikwert hat oder, in anderen Worten, wenn jedes Signal sich über zwei oder drei Taktperioden nicht geändert hat. Es sei bemerkt, daß die drei Kabelsignale "andere Primäranforderung", "andere warnen mich" und "andere Parität" unterschiedliche Logikwerte haben können und das Signal "gleich" trotzdem aktiv ist.
Die Signale "Paritätsfehler" und "gleich" werden als Eingangssignale an die UND-Schaltung 204 angelegt, die ein an eine erste Datenhalteschaltung 205 an­ gelegtes Ausgangssignal erzeugt. Wenn die erste Datenhalteschaltung 205 durch das Taktsignal an der Leitung 194 freigegeben wird, wird das Ausgangssignal der UND-Schaltung 204 zur Erzeugung des Signals "Kabelfehler" gespeichert. Das Signal "Kabelfehler" wird aus der Datenhalteschaltung 205 an einen von drei Tristate-Datenpuffern in der Gruppe 158 angelegt, die an den Datenbus 122 des Reservemoduls angeschlossen wird, wie Fig. 10 zeigt.
Das Ausgangssignal der UND-Schaltung 204 wird auch als Eingangssignal an eine ODER-Schaltung 206 angelegt, die einen mit dem Eingang einer zweiten Datenhal­ teschaltung 208 verbundenen Ausgang aufweist. Diese Datenhalteschaltung 208 wird vom Taktsignal an der Leitung 194 freigegeben, um ein mit "gespeicherter Kabelfehler" bezeichnetes Ausgangssignal zu erzeugen, das zum anderen Eingang der ODER-Schaltung 206 zurückgekoppelt ist. Das Signal "gespeicherter Kabelfeh­ ler" wird auch an einen weiteren Datenpufferinhalt der Gruppe 158 von Fig. 10 angelegt. Die beiden Datenhalteschaltungen 205 und 208 werden vom Signal "lösche Kabelfehler" gelöscht, das aus einer ersten Gruppe von Datenhalte­ schaltungen 156 in der in Fig. 10 dargestellten Primär/Sekundär-Entscheidungs­ schaltung 132 empfangen wird.
Die Signale "andere Paritätsanforderung" und "andere warnen mich" werden an die Kaskade der Datenhalteschaltungen 191, 192 und 193 angelegt und durch die­ se Halteschaltungen durch das Taktsignal des Reservemoduls an der Leitung 194 durchgetaktet, das keine zeitliche Beziehung zu den zwei Eingangssignalen hat. Die empfangenen Daten durchlaufen die Kaskade in aufeinanderfolgenden Takt­ zyklen. Die Daten am Ausgang der dritten Gruppe von Halteschaltungen 193 in der Kaskade werden durch die Paritätsprüfschaltung 196 geprüft. Wenn die Parität fehlerhaft ist, was durch das Bit "andere Parität" festgelegt wird, das von der anderen programmierbaren Steuereinheit gesendet wird, wird an der Lei­ tung 198 das Signal "Paritätsfehler" aktiviert.
Gleichzeitig vergleicht der Komparator 200 die drei Bits jedes die Kaskade durchlaufenden Signals. Wenn die drei Bits des Signals "andere Primäranforde­ rung", die drei Bits des Signals "andere Parität" und die drei Bits des Si­ gnals "andere warnen mich" gleich sind, dann erzeugt der Komparator ein akti­ ves Signal "gleich", das zusammen mit dem Signal "Paritätsfehler" an die UND- Schaltung 204 angelegt wird. Die Durchführung einer logischen UND-Verknüpfung des Signals "Paritätsfehler" und des Signals "gleich" legt fest, ob bei der Übertragung der Daten ein Fehler vorliegt. Ein gültiger Kabelfehler muß für die Dauer von zwei bis drei Taktperioden vorgelegen haben, damit ein Fehler­ signal von den Halteschaltungen 205 und 208 ausgesendet wird. Das Signal "ge­ speicherter Kabelfehler" aus den Halteschaltungen 208 wird vo 05976 00070 552 001000280000000200012000285910586500040 0002004317729 00004 05857m Mikroprozessor 125 im Reservemodul 22 periodisch gelesen, indem die erste Gruppe von Daten­ puffern 158 in der Entscheidungsschaltung 132 freigegeben wird. Ein aktives Signal "Kabelfehler" veranlaßt den Mikroprozessor 125, die entsprechende Feh­ lerkorrektur oder Fehleraktion durchzuführen. Das von der Datenhalteschaltung 208 erzeugte Signal "gespeicherter Kabelfehler" wird gleichzeitig mit dem Signal "Kabelfehler" aktiviert, jedoch bleibt es vorhanden, bis ein Signal "lösche Kabelfehler" vom Mikrocomputer 125 aktiviert wird, auch wenn der tat­ sächliche Paritätsfehlerzustand am Steuerkabel 23 korrigiert ist.
Die Signale "Kabelfehler" und "gespeicherter Kabelfehler" zeigen an, daß eine falsche Parität am Steuerkabel 23 für die Dauer von zwei bis drei Taktzyklen festgestellt worden ist. Damit das Fehlererfassungsschema wirksam wird, müssen die asynchronen Signale periodisch für die Dauer von zwei bis drei Taktperio­ den konstant bleiben. Da sich die Steuersignale beim Kabel 23 zwischen den zwei programmierbaren Steuereinheiten 12′ und 12′′ selten ändern und da Kabel­ unterbrechungen typischerweise weit länger als drei Taktperioden anhalten, ist das Fehlerprüfschema für diesen Anwendungsfall angemessen. Die Kaskade aus Datenhalteschaltungen 191 bis 193 wird verwendet, um die Stabilität der Kabel­ signale während dieser Zeitperiode zu überprüfen. Die Halteschaltungskaskade überprüft die Stabilität dieser Signale, die im Begriff gewesen sein können, sich zu ändern, wenn sie durch die erste Gruppe der Halteschaltungen 191 in der Kaskade abgetastet worden sind oder die vorübergehend eine falsche Parität haben konnten, was auf Signallaufzeitverzögerungen von der anderen program­ mierbaren Steuereinheit zurückzuführen ist.
Datenübertragungsfehler am Steuerkabel 23 können aus beschädigten Kabelleitern oder Baueinheiten, aus einem abgetrennten Steuerkabel oder aus einem Abschal­ ten der anderen programmierbaren Steuereinheit resultieren. Induzierte Kabel­ rauschstörungen können auch ein möglicher Grund sein, obgleich das Erforder­ nis, daß drei aufeinanderfolgende Abtastwerte des Signals identisch sind, be­ vor ein Fehler angezeigt wird, dazu beiträgt, die Wahrscheinlichkeit störungs­ bezogener Fehler stark herabzusetzen.
Vom Standpunkt einer programmierbaren Steuereinheit aus, die für den Betrieb als sekundäre Steuereinheit qualifiziert ist, würde jeder dieser Kabelfehler­ gründe dazu führen, daß das Signal "andere Primäranforderung" negiert wird, das von der Ablaufsteuerschaltung 150 dazu benutzt wird, ein Signal "Umschalt­ unterbrechung" zu erzeugen. Wenn der Mikrocomputer 125 im Reservemodul einer als Sekundäreinheit qualifizierten programmierbaren Steuereinheit das Signal "Umschaltunterbrechung" empfängt, beginnt er mit der Abarbeitung einer Unter­ brechungsroutine. Diese Unterbrechungsroutine muß die Signale "lösche Kabel­ fehler" oder "gespeicherter Kabelfehler" abtasten, um zu bestimmen, ob ein Ka­ belfehler aufgetreten ist. Dieses Fehlersignal sollte mehrmals, beispielsweise mindestens fünfmal, abgetastet werden. Wenn einer der Abtastwerte einen Kabel­ fehlerzustand zeigt, wird angenommen,daß das Kabel einen schwerwiegenden Feh­ ler aufweist.
Wenn die Unterbrechungsroutine das Abtasten des Signals "Kabelfehler" beendet, ohne daß ein Fehler festgestellt wird, ist die andere programmierbare Steuer­ einheit entweder im Begriff, abgeschaltet zu werden, oder Kabelrauschen hat die Unterbrechung hervorgerufen. Wenn das andere System eine Abschaltung durch­ führt, erreicht die Ablaufsteuerschaltung 150 schließlich den steuernden Zu­ stand, wie oben beschrieben wurde. Wenn dieser Zustand erreicht ist, kann das derzeitige System sicher in den primären Status umgeschaltet werden. Das Ab­ schalten der anderen programmierbaren Steuereinheit verursacht keinen unmit­ telbaren Kabelfehler, da die Systemrückstellung manchmal vor dem eigentlichen Abtrennen der Versorgungsenergie auftritt. Wenn der Rücksetzvorgang auftritt, wird das Signal "meine Primäranforderung" negiert, jedoch arbeitet ihr Pari­ tätsgenerator weiterhin richtig, bis die Versorgungsenergie tatsächlich nicht mehr anliegt.
Wenn ein momentanes Rauschen das Signal "Umschaltunterbrechung" hervorruft, kehrt die Ablaufsteuerschaltung 150 schließlich in den Zustand der qualifi­ zierten Sekundäreinheit zurück, da sie einen fehlerhaften Signalabtastwert am Leiter 135 mit dem Signal "andere Primäranforderung" tolerieren kann.
Das Signal "warne andere" wird vom Mikrocomputer 125 im Reservemodul als Me­ chanismus zur schnellen und zuverlässigen Mitteilung an die andere program­ mierbare Steuereinheit erzeugt, daß er ein Problem mit der anderen Steuerein­ heit entdeckt hat oder die andere Steuereinheit außer Betrieb setzen will. Wenn die primäre programmierbare Steuereinheit dieses Signal zu einer sekun­ dären Steuereinheit sendet, wird die sekundäre Steuereinheit ausgeschlossen und kann die Steuerung des Systems nicht mehr übernehmen. Wenn die sekundäre Steuereinheit das Signal "warne andere" zur primären Steuereinheit sendet, durchläuft die primäre Steuereinheit eine erweiterte Diagnoseroutine, um ih­ rerseits festzustellen, ob sie sich in einem Fehlerzustand befindet oder nicht. Gewöhnlich sind sekundäre programmierbare Steuereinheiten nicht in der Lage, die primäre programmierbare Steuereinheit direkt außer Betrieb zu setzen. Es sei bemerkt, daß das Signal "warne andere" an der empfangenden programmierba­ ren Steuereinheit zum Signal "andere warnen mich" wird.

Claims (13)

1. Programmierbares Steuerwerk mit einem Speicher, in dem ein Steuerprogramm und Daten gespeichert sind, und einem Prozessor zum Ausführen des Steuerpro­ gramms für den Empfang von Daten von an eine gesteuerte Maschine angeschlosse­ nen Eingabe/Ausgabe-Schaltungen und zum Senden von Daten zu den Eingabe/Aus­ gabe-Schaltungen für den Betrieb von Geräten an der Maschine, gekennzeichnet durch:
  • - eine Eingabevorrichtung für den Empfang eines ersten Signals, das anzeigt, daß eine weitere programmierbare Steuereinheit, die an die gleichen Eingabe/ Ausgabe-Schaltungen angeschlossen ist, verlangt, in einem aktiven Modus zu arbeiten;
  • - einen ersten Anschluß für den Empfang eines zweiten Signals, das anzeigt, daß die programmierbare Steuereinheit im aktiven Modus arbeiten soll, wenn mehrere programmierbare Steuereinheiten im wesentlichen am gleichen Zeitpunkt einen Betrieb im aktiven Modus verlangen;
  • - eine Modusanzeigevorrichtung, die angibt, daß die programmierbare Steuerein­ heit als Reaktion darauf, daß die Eingabevorrichtung das erste Signal nicht empfängt, oder als Antwort darauf, daß die Eingabevorrichtung das erste Signal empfängt und der erste Anschluß das zweite Signal empfängt, im aktiven Modus arbeiten soll, während die Modusanzeigevorrichtung sonst angibt, daß die pro­ grammierbare Steuereinheit in einem Bereitschaftsmodus arbeiten soll; und
  • - eine Ausgabevorrichtung zum Übertragen eines dritten Signals zu der zweiten programmierbaren Steuereinheit, wenn die Modusanzeigevorrichtung angibt, daß die programmierbare Steuereinheit im aktiven Modus arbeiten soll, wobei das dritte Signal nicht übertragen wird, wenn die Modusanzeigevorrichtung angibt, daß die programmierbare Steuereinheit im Bereitschaftsmodus arbeiten soll.
2. Programmiebare Steuereinheit nach Anspruch 1, ferner gekennzeichnet durch eine Quelle eines gegebenen Logikpegels, der an einen zweiten Anschluß ange­ legt wird, und ein Kabel zum Verbinden der Eingabevorrichtung und der Ausgabe­ vorrichtung mit der weiteren programmierbaren Steuereinheit, wobei nur ein Ende des Kabels einen Leiter aufweist, der den ersten Anschluß mit dem zweiten Anschluß zum Erzeugen des dritten Signals verbindet.
3. Programmierbare Steuereinheit nach Anspruch 1, ferner gekennzeichnet durch eine Kommunikationsschnittstelle zum Übertragen von Zustandsdaten der Eingabe/ Ausgabe-Schaltungen und von Steuerdaten zu der anderen programmierbaren Steu­ ereinheit, die an die gleichen Eingabe/Ausgabe-Schaltungen angeschlossen ist, und zum Empfangen von Zustandsdaten von den Eingabe/Ausgabe-Schaltungen und von Steuerdaten von der anderen programmierbaren Steuereinheit.
4. Programmierbare Steuereinheit nach Anspruch 1, ferner gekennzeichnet durch eine Vorrichtung zum Sperren des Sendens von Daten zu den Eingabe/Ausgabe- Schaltungen, wenn sich die programmierbare Steuereinheit nicht im aktiven Modus befindet.
5. Programmierbare Steuereinheit nach Anspruch 1, ferner enthaltend eine Feh­ lervorrichtung zum Melden, daß in der programmierbaren Steuereinheit ein Feh­ ler aufgetreten ist, wobei die Modusanzeigevorrichtung auch angibt, daß die programmierbare Steuereinheit nur dann im aktiven Modus arbeiten soll, wenn die Fehlervorrichtung keinen aufgetretenen Fehler meldet.
6. Programmierbare Steuereinheit nach Anspruch 1, ferner gekennzeichnet durch eine Vorrichtung zum Feststellen einer Fehlfunktion der anderen programmierba­ ren Steuereinheit und einer Vorrichtung zum Übertragen einer Warnung zu der anderen programmierbaren Steuereinheit, wenn ein Fehler festgestellt worden ist.
7. Programmierbare Steuereinheit nach Anspruch 1, ferner gekennzeichnet durch einen Empfänger für eine Warnung von der anderen programmierbaren Steuerein­ heit, wobei die Modusanzeigevorrichtung angibt, daß die programmierbare Steuer­ einheit in einem Ausschlußmodus arbeiten soll, wenn eine Warnung empfangen wird.
8. Programmierbare Steuereinheit nach Anspruch 1, ferner gekennzeichnet durch einen Empfänger für eine Warnung von der weiteren programmierbaren Steuerein­ heit und eine Vorrichtung zur Durchführung einer Diagnoseanalyse der program­ mierbaren Steuereinheit, wenn eine Warnung empfangen wird.
9. Programmierbare Steuereinheit mit einem Speicher, in der ein Steuerprogramm, eine Eingabe/Ausgabe-Bildtabelle und eine Datentabelle gespeichert sind, mit einem Prozessor zum Ausführen des Steuerprogramms zum Untersuchen und Ändern der Eingabe/Ausgabe-Bildtabelle, und Mitteln zum Austauschen von Daten zwischen dem Speicher und einer gesteuerten Maschine, wobei ein Reservemodul vorgesehen ist, der folgendes enthält:
  • - eine Eingabevorrichtung für den Empfang eines ersten Aktivmodus-Anforderungs­ signals und eines ersten Warnsignals von einer weiteren programmierbaren Steu­ ereinheit, die an die gleiche Maschine angeschlossen ist;
  • - eine Vorrichtung zum Erzeugen eines Ausscheidungssignals, das angibt, ob die programmierbare Steuereinheit im aktiven Modus arbeiten soll, wenn mehrere programmierbare Steuereinheiten im wesentlichen am gleichen Zeitpunkt verlan­ gen, im aktiven Modus zu arbeiten;
  • - eine Modusanzeigevorrichtung zum Anzeigen eines Modus, in dem die program­ mierbare Steuereinheit arbeiten soll, die einen aktiven Modus als Reaktion darauf anzeigt, daß die Eingabevorrichtung das erste Aktivmodus-Anforderungs­ signal nicht empfängt, oder als Antwort darauf, daß die Eingabevorrichtung das erste Aktivmodus-Anforderungssignal empfängt, und als Antwort auf das Ausschei­ dungssignal aus der Vorrichtung zur Erzeugung dieses Signals, wobei die Modus­ anzeigevorrichtung sonst anzeigt, daß die programmierbare Steuereinheit im Bereitschaftsbetrieb arbeiten soll, wenn nicht das erste Warnsignal empfangen wird, wobei in diesem Fall die Modusanzeigevorrichtung einen Ausschlußmodus anzeigt; und
  • - eine Ausgabevorrichtung zum Übertragen eines zweiten Aktivmodus-Anforderungs­ signals zu den anderen programmierbaren Steuereinheiten, wenn die Modusanzei­ gevorrichtung den aktiven Modus angibt.
10. Programmierbare Steuereinheit nach Anspruch 9, ferner gekennzeichnet durch eine Vorrichtung zum Erzeugen eines zweiten Warnsignals, das angibt, daß ein mögliches Problem beim Betrieb der anderen programmierbaren Steuereinheit vor­ liegt, wobei die Ausgabevorrichtung auch dem Aussenden des zweiten Warnsignals zu der anderen programmierbaren Steuereinheit dient.
11. Programmierbare Steuereinheit nach Anspruch 9, dadurch gekennzeichnet, daß die Vorrichtung zum Erzeugen des Ausscheidungssignals einen ersten Anschluß aufweist, an den ein gegebener Logikpegel angelegt ist, sowie einen zweiten Anschluß aufweist, an den das Ausscheidungssignal angelegt wird, das erzeugt wird, wenn der gegebene Logikpegel angelegt ist, und daß die programmierbare Steuereinheit ferner ein Kabel zum Verbinden der Eingangsvorrichtung und der Ausgangsvorrichtung mit der anderen programmierbaren Steuereinheit enthält, von dem nur ein Ende einen Leiter aufweist, der den ersten Anschluß mit dem zweiten Anschluß zum Verbinden des Ausscheidungssignals aufweist.
12. Programmierbare Steuereinheit nach Anspruch 9, ferner gekennzeichnet durch eine Kommunikationsschnittstelle zum Übertragen von Zustandsdaten der Eingabe/ Ausgabe-Schaltungen und von Steuerdaten zu der anderen programmierbaren Steu­ ereinheit und zum Empfangen von Zustandsdaten von den Eingabe/Ausgabe-Schal­ tungen sowie von Steuerdaten von der anderen programmierbaren Steuereinheit.
13. Programmierbare Steuereinheit nach Anspruch 9, ferner gekennzeichnet durch eine Fehlervorrichtung zum Melden, daß ein Fehler in der programmierbaren Steuereinheit aufgetreten ist, wobei die Modusanzeigevorrichtung auch den Ausschlußmodus angibt, wenn die Fehlervorrichtung meldet, daß ein Fehler auf­ getreten ist.
DE4317729A 1992-06-11 1993-05-27 Programmierbare Steuereinheit Withdrawn DE4317729A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/897,172 US5313386A (en) 1992-06-11 1992-06-11 Programmable controller with backup capability

Publications (1)

Publication Number Publication Date
DE4317729A1 true DE4317729A1 (de) 1993-12-16

Family

ID=25407454

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4317729A Withdrawn DE4317729A1 (de) 1992-06-11 1993-05-27 Programmierbare Steuereinheit

Country Status (3)

Country Link
US (1) US5313386A (de)
JP (1) JPH0651802A (de)
DE (1) DE4317729A1 (de)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19918270A1 (de) * 1999-04-22 2000-10-26 Abb Patent Gmbh Verfahren zur bedarfsabhängigen Berechnung einer Funktion
WO2004036324A1 (de) * 2002-10-11 2004-04-29 Siemens Aktiengesellschaft Verfahren und vorrichtung zur prozessautomatisierung mit redundanten steuergeräten zur ansteuerung von peripheriegeräten über ein bussystem
WO2005114341A1 (de) * 2004-05-18 2005-12-01 Robert Bosch Gmbh Verfahren zur überwachung eines verbundes von steuergeräten
DE19934513B4 (de) * 1999-07-22 2006-05-24 Siemens Ag Steuerungsverfahren für eine technische Anlage
EP2687930A1 (de) * 2012-07-20 2014-01-22 Siemens Aktiengesellschaft Automatisierungseinheit zur Steuerung eines Geräts oder einer Anlage

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5428769A (en) * 1992-03-31 1995-06-27 The Dow Chemical Company Process control interface system having triply redundant remote field units
US5392424A (en) * 1992-06-11 1995-02-21 Allen-Bradley Company, Inc. Apparatus for detecting parity errors among asynchronous digital signals
US5455914A (en) * 1993-07-23 1995-10-03 Unisys Corporation Tie-breaking control circuit for bus modules which share command execution
GB2288954B (en) * 1994-04-15 1998-10-14 Vlsi Technology Inc Method and apparatus for providing programmable serial communications
JP3365581B2 (ja) * 1994-07-29 2003-01-14 富士通株式会社 自己修復機能付き情報処理装置
WO1997008620A2 (en) * 1995-08-23 1997-03-06 Philips Electronics N.V. Data processing system comprising an asynchronously controlled pipeline
US5978933A (en) * 1996-01-11 1999-11-02 Hewlett-Packard Company Generic fault tolerant platform
US5777874A (en) * 1996-02-12 1998-07-07 Allen-Bradley Company, Inc. Programmable controller backup system
US6181929B1 (en) * 1996-05-20 2001-01-30 Motorola, Inc. Method for switching cell site controllers
JP3582230B2 (ja) * 1996-06-04 2004-10-27 三菱電機株式会社 制御システム
JP2000507019A (ja) * 1996-12-13 2000-06-06 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 直列式に動作する2台のプログラムドロジックコントローラを有する冗長データ処理システム
US5966304A (en) * 1997-04-29 1999-10-12 Allen-Bradley Company, Llc Redundant automation controller permitting replacement of components during operation
US5966301A (en) * 1997-06-13 1999-10-12 Allen-Bradley Company, Llc Redundant processor controller providing upgrade recovery
US5997166A (en) * 1997-06-18 1999-12-07 Allen-Bradley Company, Llc Redundant industrial controller storing module and chassis level redundancy status
US5966300A (en) * 1997-06-18 1999-10-12 Allen-Bradley Company, Inc. Redundant automation controller with deductive power-up
US5963448A (en) * 1997-06-18 1999-10-05 Allen-Bradley Company, Llc Industrial controller having redundancy and using connected messaging and connection identifiers to enable rapid switchover without requiring new connections to be opened or closed at switchover
US6170044B1 (en) * 1997-12-19 2001-01-02 Honeywell Inc. Systems and methods for synchronizing redundant controllers with minimal control disruption
JPH11203157A (ja) * 1998-01-13 1999-07-30 Fujitsu Ltd 冗長装置
US6272386B1 (en) * 1998-03-27 2001-08-07 Honeywell International Inc Systems and methods for minimizing peer-to-peer control disruption during fail-over in a system of redundant controllers
DE19815097C2 (de) 1998-04-03 2002-03-14 Siemens Ag Busmasterumschalteinheit
US6216051B1 (en) * 1998-05-04 2001-04-10 Nec Electronics, Inc. Manufacturing backup system
US6282584B1 (en) * 1998-08-18 2001-08-28 International Business Machines Corporation Structure and method for reading/writing signature commands from/to a plurality of controller pairs
EP0985988A1 (de) * 1998-09-11 2000-03-15 Sck.Cen Adaptiver Fuzzy-Regler und Simulationsmethode
JP2001069585A (ja) * 1999-08-31 2001-03-16 Fujitsu Ltd 二重化装置及びハイウェイインタフェース回路
CN1193281C (zh) * 1999-11-15 2005-03-16 西门子公司 自动化设备及更新方法
US6528901B1 (en) * 1999-12-07 2003-03-04 Lucent Technologies Inc. Automatic protection switching
JP4846890B2 (ja) * 2000-01-20 2011-12-28 ソニー株式会社 端末制御装置
US6618628B1 (en) * 2000-10-05 2003-09-09 Karl A. Davlin Distributed input/output control systems and methods
US7023795B1 (en) * 2000-11-07 2006-04-04 Schneider Automation Inc. Method and apparatus for an active standby control system on a network
US6968242B1 (en) * 2000-11-07 2005-11-22 Schneider Automation Inc. Method and apparatus for an active standby control system on a network
US20040205111A1 (en) * 2002-11-15 2004-10-14 Zaki Chasmawala User configurable data messages in industrial networks
TWM242781U (en) * 2002-11-25 2004-09-01 Quanta Comp Inc Blade server management system with auxiliary management structure
US7131028B2 (en) * 2002-12-11 2006-10-31 Sun Microsystems, Inc. System and method for interconnecting nodes of a redundant computer system
DE102004061013A1 (de) * 2004-12-18 2006-07-06 Bosch Rexroth Aktiengesellschaft Sichere Eingabe-/Ausgabe-Baugruppe für eine Steuerung
EP1842191A4 (de) * 2005-01-19 2012-05-09 Favoweb Ltd System und verfahren zur bouncing-fehlschlag-analyse
US7636613B2 (en) * 2005-07-01 2009-12-22 Curtiss-Wright Flow Control Corporation Actuator controller for monitoring health and status of the actuator and/or other equipment
JP4234720B2 (ja) * 2006-02-17 2009-03-04 古河電気工業株式会社 光増幅装置
US8707290B2 (en) * 2006-02-22 2014-04-22 Dell Products L.P. Firmware update in an information handling system employing redundant management modules
CN101354610B (zh) * 2007-07-27 2011-08-24 佛山市顺德区顺达电脑厂有限公司 以虚拟信道进行键盘控制器与电脑系统间的信号传输方法
US8364291B2 (en) * 2007-11-13 2013-01-29 Rockwell Automation Technologies, Inc. Method and apparatus for providing redundancy in an industrial control system
KR101418511B1 (ko) * 2008-02-05 2014-07-10 엘지전자 주식회사 설비기기 제어시스템 및 그 제어방법
JP5344936B2 (ja) * 2009-01-07 2013-11-20 株式会社日立製作所 制御装置
KR101431301B1 (ko) * 2010-01-20 2014-08-20 엘에스산전 주식회사 안전 증설 베이스 및 그의 제어방법
US8278779B2 (en) 2011-02-07 2012-10-02 General Electric Company System and method for providing redundant power to a device
JP5846369B2 (ja) * 2011-12-01 2016-01-20 横河電機株式会社 二重化システムおよび制御切り換え方法
US9823640B2 (en) * 2013-03-14 2017-11-21 Control Technology Corporation Networked programmable industrial controllers
FR3010540B1 (fr) * 2013-09-10 2015-08-14 Schneider Electric Ind Sas Systeme d'automatisme comprenant plusieurs controleurs logiques programmables connectes sur un reseau de communication
CN107850873B (zh) * 2015-07-23 2021-12-21 三菱电机株式会社 双重化过程控制装置
CN109687278B (zh) * 2019-01-02 2021-05-11 武汉光迅科技股份有限公司 一种用于光放大器在线升级程序的方法和装置
CN110531678B (zh) * 2019-09-16 2020-10-02 珠海格力电器股份有限公司 自控系统及其运维方法
CN112564579A (zh) * 2020-11-30 2021-03-26 中国航空工业集团公司西安航空计算技术研究所 一种主从架构机电控制器及健康管理方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3797612A (en) * 1971-07-13 1974-03-19 A Carias Braking device for vehicles
US3813649A (en) * 1972-09-01 1974-05-28 Bradley Co A Controller program editor
US4070702A (en) * 1976-03-26 1978-01-24 Allan-Bradley Company Contact histogram for programmable controller
US4276593A (en) * 1979-03-30 1981-06-30 Beckman Instruments, Inc. Transfer system for multi-variable control units
US4351023A (en) * 1980-04-11 1982-09-21 The Foxboro Company Process control system with improved system security features
US4413319A (en) * 1981-03-09 1983-11-01 Allen-Bradley Company Programmable controller for executing block transfer with remote I/O interface racks
US4521871A (en) * 1982-04-12 1985-06-04 Allen-Bradley Company Programmable controller with back-up capability
US4610013A (en) * 1983-11-08 1986-09-02 Avco Corporation Remote multiplexer terminal with redundant central processor units
US4797884A (en) * 1986-09-29 1989-01-10 Texas Instruments Incorporated Redundant device control unit
US4858101A (en) * 1987-08-26 1989-08-15 Allen-Bradley Company, Inc. Programmable controller with parallel processors

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19918270A1 (de) * 1999-04-22 2000-10-26 Abb Patent Gmbh Verfahren zur bedarfsabhängigen Berechnung einer Funktion
DE19934513B4 (de) * 1999-07-22 2006-05-24 Siemens Ag Steuerungsverfahren für eine technische Anlage
WO2004036324A1 (de) * 2002-10-11 2004-04-29 Siemens Aktiengesellschaft Verfahren und vorrichtung zur prozessautomatisierung mit redundanten steuergeräten zur ansteuerung von peripheriegeräten über ein bussystem
WO2005114341A1 (de) * 2004-05-18 2005-12-01 Robert Bosch Gmbh Verfahren zur überwachung eines verbundes von steuergeräten
US8037353B2 (en) 2004-05-18 2011-10-11 Robert Bosch Gmbh Method for operating a system
EP2687930A1 (de) * 2012-07-20 2014-01-22 Siemens Aktiengesellschaft Automatisierungseinheit zur Steuerung eines Geräts oder einer Anlage

Also Published As

Publication number Publication date
JPH0651802A (ja) 1994-02-25
US5313386A (en) 1994-05-17

Similar Documents

Publication Publication Date Title
DE4317729A1 (de) Programmierbare Steuereinheit
DE68924119T2 (de) Verfahren und Vorrichtung zum Wiederanlauf nach einem Fehler in einem digitalen Rechnersystem.
DE3751949T2 (de) Verfahren zum Starten eines Untersystems in einem verteilten Verarbeitungssystem
DE2735397C2 (de) Überwachungseinrichtung für eine programmgesteuerte Maschine
DE69019441T2 (de) Line Computer.
DE69932654T2 (de) Überwachungssystem für Anlagen
DE68922440T2 (de) Gerät und Verfahren zur gleichzeitigen Einreichung von Fehlerunterbrechung und Fehlerdaten zu einem Unterstützungsprozessor.
CH654943A5 (de) Pruefeinrichtung fuer mikroprogramme.
DE2244402A1 (de) Datenverarbeitungsanlage
EP2221696A1 (de) Verfahren und Vorrichtung zum Überprüfen eines Steuerprogramms einer Industrieanlage
DE3702408C2 (de)
DE69122142T2 (de) Steuerungsanlage für ein Mehrprozessorsystem
DE19811864B4 (de) Redundante Steuervorrichtung und Fehlerbehebungsverfahren dafür
DE2461592C3 (de) Anordnung zur Durchführung von Wartungsoperationen bei einem Datenverarbeitungssystem
DE60002618T2 (de) Verfahren und Analysewerkzeug zur Fehlerortung in einem Rechner
EP0048991B1 (de) Verfahren und Anordnung zur Behandlung von Unterbrechungsbedingungen während des Arbeitsablaufes in Datenverarbeitungsanlagen mit Mikroprogrammsteuerung
DE2336020B2 (de) Adressen-berechnungsschaltung fuer paritaetsfehler-korrekturprogramme
EP0104490A2 (de) Verfahren und Vorrichtung zur Synchronisation von Datenverarbeitungsanlagen
DE3811658A1 (de) Sequenz-controller
DE3689491T2 (de) Überwachungsschaltung.
DE4302908A1 (de) Verfahren zur Ermittlung kritischer Fehler insbesondere für ein Kommunikationssystem und eine nach diesem Verfahren arbeitende Schaltungsanordnung
DE69523509T2 (de) Dezentralisiertes System und Mehrrechnersystem
DE3751374T2 (de) Verfahren und Mechanismus zum unabhängigen Sicherstellungsmodustransfer für digitale Steuerprozessoren.
DE3040429A1 (de) Ueberwachungseinrichtung fuer ein computersystem
EP0525214B1 (de) Verfahren zum Betreiben eines Automatisierungsgeräts

Legal Events

Date Code Title Description
8141 Disposal/no request for examination