DE10324380A1 - Programmierbare Steuerung mit CPU und Kommunikationseinheiten sowie Verfahren zur Steuerung derselben - Google Patents

Programmierbare Steuerung mit CPU und Kommunikationseinheiten sowie Verfahren zur Steuerung derselben Download PDF

Info

Publication number
DE10324380A1
DE10324380A1 DE10324380A DE10324380A DE10324380A1 DE 10324380 A1 DE10324380 A1 DE 10324380A1 DE 10324380 A DE10324380 A DE 10324380A DE 10324380 A DE10324380 A DE 10324380A DE 10324380 A1 DE10324380 A1 DE 10324380A1
Authority
DE
Germany
Prior art keywords
mode
data
unit
communication
communication unit
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.)
Granted
Application number
DE10324380A
Other languages
English (en)
Other versions
DE10324380B4 (de
Inventor
Eisuke Nagano
Kenichiro Tomita
Kazuya Sawa
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Publication of DE10324380A1 publication Critical patent/DE10324380A1/de
Application granted granted Critical
Publication of DE10324380B4 publication Critical patent/DE10324380B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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/2002Error 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 interconnections or communication control functionality are redundant
    • G06F11/2005Error 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 interconnections or communication control functionality are redundant using redundant communication controllers

Abstract

Eine programmierbare Steuerung weist zwei mit dem gleichen Netzwerk verbundene Kommunikationseinheiten und eine CPU-Einheit auf. Diese zwei Kommunikationseinheiten werden beide durch gleiche Einheitenidentifizierungsdaten, wie etwa Knotennummern und Einheitennummern, identifiziert und funktionieren so, dass die eine von ihnen in einer aktiven Betriebsart und die andere in einer Wartebetriebsart arbeitet. Jede dieser Kommunikationseinheiten arbeitet, wenn sie sich in der aktiven Betriebsart befindet, so, dass sie einen Datenaustausch mit der CPU-Einheit und anderen mit dem Netzwerk verbundenen Knoten ausführt, und ist, wenn sie sich in der Wartebetriebsart befindet, daran gehindert, einen Datenaustausch mit den anderen mit dem Netzwerk verbundenen Knoten auszuführen. Wenn die Kommuniktionseinheit in der aktiven Betriebsart ausfällt und abschaltet, wird die eine in der Wartebetriebsart auf die aktive Betriebsart umgeschaltet und führt den Datenaustausch durch. Diese Betriebsartenumschaltung wird ansprechend auf einen Befehl von der CPU-Einheit durchgeführt, wenngleich die Einrichtung auch so getroffen sein kann, dass die Kommunikationseinheit miteinander kommunizieren und ihre Betriebsarten umschalten, indem sie über das Auftreten eines Ausfalls die andere Einheit informieren.

Description

  • Hintergrund der Erfindung
  • Diese Erfindung bezieht sich auf eine programmierbare Steuerung, ihre CPU und Kommunikationseinheiten sowie ein Verfahren zu ihrer Steuerung.
  • Programmierbare Steuerungen (SPSen) werden als Steuervorrichtungen bei der Fabrikautomation (FA) benutzt. Solche SPSen sind als geeignete Kombination aus einer Anzahl von Einheiten, wie etwa einer Netzeinheit zur Lieferung elektrischer Spannung, einer CPU-Einheit zur Steuerung der SPS insgesamt, einer Eingabeeinheit zur Eingabe von Signalen aus Schaltern und Sensoren, die strategisch für die FA-Vorrichtungen angeordnet sind, einer Ausgabeeinheit zur Ausgabe von Steuersignalen auf Stellglieder oder dergleichen, und einer Kommunikationseinheit zum Anschluss an ein Kommunikationsnetzwerk, aufgebaut.
  • Die Steuerung einer SPS durch ihre CPU-Einheit beinhaltet das Empfangen von Signalen, die über die Eingabeeinheit in den E/A-Speicher der CPU-Einheit eingegeben werden („IN-Auffrischung"), das Durchführen einer logischen Berechnung gemäß einem Anwenderprogramm, das vorab in einer Anwenderprogrammsprache, wie etwa einer Leitersprache, registriert worden ist („Berechnung"), das Schreiben der Ergebnisse solcher Berechnungen in den E/A-Speicher zur Übertragung derselben auf die Ausgabeeinheit („OUT-Auffrischung") und das nachfolgende Austauschen von Daten über die Kommunikationseinheit mit den anderen SPSen auf dem gleichen Kommunikationsnetzwerk oder über Kommunikationsanschlüsse, die an der CPU-Einheit vorgesehen sind, mit externen Vorrichtungen („periphere Verarbeitung") in einer zyklischen Betriebsart. Operationen der IN-Auffrischung und OUT-Auffrischung werden manchmal zusammen ausgeführt.
  • Um die Sicherheit und Zuverlässigkeit eines Systems zu verbessern, ist es bekannt, ein Netzwerksystem in einem Doppelaufbau vorzusehen. Die japanische Patentveröffentlichung 2001-156818 beispielsweise beschreibt ein ringförmiges Übertragungssystem mit einem Doppelschleifenaufbau aus optischen Kabeln. Mit einem solchen Doppelschleifenaufbau können Knoten, wie etwa mit einem solchen ringförmigen Übertragungsweg verbundene SPSen, ihren wechselseitigen Verbindungszustand auch dann aufrechterhalten, wenn ein Teil des Übertragungswegs zufällig unterbrochen ist, weshalb Kommunikationsunterbrechungen als Folge eines solchen Bruchs verhindert werden können und die Zuverlässigkeit des Netzwerks verbessert ist.
  • Jede SPS ist mit dem Netzwerk über ihre Kommunikationseinheit (oder Netzwerkeinheit) verbunden und tauscht mit anderen SPSen oder Knoten über diese Kommunikationseinheit Daten aus. Unterbrechungen der Kommunikation als Folge eines Bruchs im Transmissionsweg können also durch Verwendung eines Netzwerksystems mit einem Doppelschleifenaufbau verhindert werden, das Problem einer unterbrochenen Kommunikation bleibt aber, wenn ein anomaler Zustand in der Kommunikationseinheit selbst auftritt, weil die Knoten (wie etwa SPSen), die mit dem Netzwerk über eine solche Kommunikationseinheit verbunden sind, nicht mehr in der Lage sind, Daten auszutauschen.
  • Im Hinblick auf das Obige war es, wenn ein SPS-System auch bei Vorhandensein eines Problems mit einer Kommunikationseinheit des Steuerungssystems mit redundantem Doppelschleifenaufbau weiter in der Lage sein musste, Kommunikationsprozesse fortzusetzen, erforderlich, die Kommunikationseinheit durch Übertragen der gleichen Daten zweimal mit dem Anwenderprogramm aufzudoppeln. Genauer erläutert, geschieht dies durch Vorsehen der SPS mit zwei Kommunikationseinheiten mit verschiedenen Knotennummern und verschiedenen Einheitennummern. Wenn solche zwei Kommunikationseinheiten für den Austausch von Daten mit einem anderen Knoten nach der sogenannten Datenverknüpfungsmethode verwendet werden, werden unterschiedliche Speicherbereiche (bezeichnet als Datenverknüpfungsbereiche) innerhalb der CPU-Einheit für den Datenaustausch für die beiden Kommunikationseinheiten verwendet. Aus diesem Grund muss die CPU-Einheit Datenaustausche und andere Prozesse mit zwei Kommunikationseinheiten ausführen. Anders ausgedrückt, muss das Anwenderprogramm für die CPU-Einheit so erstellt werden, dass es einen ähnlichen Vorgang zweimal, betreffend die beiden unterschiedlichen Speicherbereiche, die den beiden Kommunikationseinheiten zugeordnet sind, zweimal ausführt, wenn auf einen Datenverknüpfungsbereich zuzugreifen ist. Dies bedeutet, dass der Berechnungsprozess für die Ausführung eines solchen Anwenderprogramms stärker belastet ist.
  • Ein ähnliches Problem tritt auf, wenn ein Anwenderprogramm für die Kommunikation mit anderen mit dem Netzwerk verbundenen Knoten erzeugt wird. Wenn ein Anwenderprogramm durch Verwendung von Befehlen (Kommunikationsbefehlen) für das Senden und Empfangen von Nachrichten an bzw. von einem anderen Knoten erzeugt wird, muss die Knotennummer und die Einheitennummer, die der Adressatenkommunikationseinheit zugeordnet sind, als Operand des Kommunikationsbefehls geschrieben werden. Das Anwenderprogramm muss also so erstellt werden, dass jede Nachricht an zwei verschiedene Kommunikationseinheiten durch Spezifizieren der Knotennummer und der Einheitennummer einer jeden derselben gesendet wird.
  • Wenn jede Kommunikationseinheit so an jedem Knoten auf dem Netzwerk aufgedoppelt wird, muss die Kommunikation auch dann nicht unterbrochen werden, wenn in einem der Netzwerke eine anomale Situation vorliegt, aber das Anwenderprogramm für die CPU-Einheit muss zweimal für jede Einheit ausgeführt werden.
  • Zusammenfassung der Erfindung
  • Es ist daher eine Aufgabe dieser Erfindung, eine programmierbare Steuerung mit CPU und Kommunikationseinheiten sowie ein Verfahren zur Steuerung derselben zu schaffen, so dass ein hochzuverlässiges System mit aufgedoppelten Kommunikationseinheiten bei nicht erhöhter, sondern ungefähr gleichbleibender Belastung so, als würde das System mit einer einzigen Kommunikationseinheit arbeiten, ausgebildet werden kann, und dass Anwenderprogramme so einfach wie für eine einzelne Kommunikationseinheit hergestellt werden können.
  • Eine die Erfindung verkörpernde programmierbare Steuerung ist dadurch gekennzeichnet, dass sie nicht nur zwei mit dem gleichen Netzwerk Kommunikationseinheiten und eine CPU-Einheit aufweist, sondern auch, dass diese beiden Kommunikationseinheiten beide durch die gleichen Einheitenidentifizierungsdaten identifiziert werden und so arbeiten, dass eine von ihnen in einem aktiven Modus und die andere in einer Wartebetriebsart ist. Jede dieser Kommunikationseinheiten führt, wenn sie sich im aktiven Modus befindet, einen Datenaustausch mit der CPU-Einheit und anderen mit dem Netzwerk verbundenen Knoten aus, und ist, wenn sie sich in der Wartebetriebsart befindet, daran gehindert, einen Datenaustausch mit den anderen mit dem Netzwerk verbundenen Knoten auszuführen. Wenn die im aktiven Modus befindliche Kommunikationseinheit ausfällt und abschaltet, wird die in der Wartebetriebsart befindliche in den aktiven Modus geschaltet und führt den Datenaustausch aus, und dieser Betriebsartenumschaltvorgang wird ansprechend auf einen Befehl von der CPU-Einheit ausgeführt, wenngleich die Einrichtung auch so getroffen sein kann, dass die Kommunikationseinheiten miteinander kommunizieren und ihre Moden umschalten, indem sie die andere Einheit über das Auftreten eines Ausfalls informieren.
  • In Obigem sind die Einheitenidentifizierungsdaten Adressendaten, wie etwa Knotennummern und Einheitennummern. Netzwerknummern zur Identifizierung von Netzwerken, wo eine Anzahl von Netzwerken vorhanden sind, können auch in den Einheitenidentifizierungsdaten enthalten sein. Im Falle einer Ethernet-Einheit wird eine IP Adresse zusätzlich eingestellt. Zusammenfassend gesagt, sind jedwede Daten ausreichend, wenn sie Kommunikationseinheiten auf dem Netzwerk unterscheiden und spezifizieren können.
  • Da die beiden Kommunikationseinheiten einer programmierbaren Steuerung gemäß der Erfindung die gleichen Einheitenidentifizierungsdaten (d. h., die gleichen Adressendaten, wie etwa die Knotennummern und die Einheitennummern) haben, kann das Anwenderprogramm für den Austausch von Daten mit den anderen Knoten durch Datenverknüpfungsoperationen so erstellt werden, als ob nur eine Kommunikationseinheit ohne Verdoppelung vorhanden wäre. Anders ausgedrückt, brauchen bekannte Anwenderprogramme nicht modifiziert werden, wenn Kommunikationen verdoppelt werden. Da ferner die beiden Kommunikationseinheiten die gleichen Adressdaten haben, können Anwenderprogramme für das Senden von Nachrichten an die programmierbare Steuerung von den anderen Knoten so erzeugt werden, als ob nur eine Kommunikationseinheit, die nicht verdoppelt ist, vorhanden wäre. Bekannte Anwenderprogramme können also ohne Modifikation verwendet werden.
  • Obwohl beide Kommunikationseinheiten die gleichen Einheitenidentifizierungsdaten haben und somit beide von den anderen Knoten gesendete Daten empfangen können, dient lediglich die aktive von ihnen dazu, normale Vorgänge entsprechend den empfangenen Daten auszuführen, da jede weiß, ob sie sich in der aktiven oder in der Wartebetriebsart befindet. Selbst wenn die aktive Einheit ausfällt und abschaltet, kann die andere Einheit aktiviert werden und direkt mit dem Datenaustausch und der Durchführung von Kommunikationen fortfahren, da die beiden Einheiten die gleichen Einheitenidentifizierungsdaten haben.
  • In der vorgenannten aktiven Betriebsart ist jede der Kommunikationseinheiten so eingerichtet, dass sie die Datenaustausche mit der CPU-Einheit und den anderen Knoten durch Datenverknüpfungsoperationen in einer geeigneten Reihenfolge ausführen kann, wobei die CPU-Einheit die Parameter speichert, die für solche Datenverknüpfungsoperationen notwendig sind. Es kann durch den Empfang solcher Parameter von der CPU-Einheit sein, dass die Kommunikationseinheit in der Wartebetriebsart, wenn sie in die aktive Betriebsart geschaltet wird, in die Lage versetzt wird, die Datenverknüpfungsoperationen auszuführen.
  • In Obigem bedeutet „Datenverknüpfung" die Operation und Funktion des konstanten Haltens von Daten (Verknüpfungsdaten) auf spezifizierten Bereichen interner Speicher von Knoten (wie etwa einer SPS), die Knoten auf einem Netzwerk gemeinsam sind, so dass kein anwendererstelltes Kommunikationsprogramm zur Aufteilung der Daten zwischen den Knoten benötigt wird. Sobald neue Daten in den Ausgabebereich des eigenen Knoten geschrieben werden, werden solche Daten automatisch in den Eingangsbereichen der anderen Knoten wiedergegeben, so dass Daten von den Knoten auf dem gleichen Netzwerk gemeinsam besessen werden können. Da Kommunikationen zwischen den mit einem Netzwerk verbundenen Knoten über Kommunikationseinheiten ausgeführt werden, werden Daten, die im Ausgabebereich einer CPU-Einheit für ihren eigenen Knoten zur Ausführung einer Datenverknüpfungsoperation gespeichert sind, zunächst in einen Speicher in der Kommunikationseinheit und dann auf die anderen Knoten übertragen. In gleicher Weise werden von den anderen Knoten übertragenen Daten zunächst in einem Speicher innerhalb der Kommunikationseinheit gespeichert und dann an den Eingabebereich der CPU-Einheit für die anderen Knoten übertragen. Der Ausgabebereich für ihren eigenen Knoten und der Eingabebereich für die anderen Knoten innerhalb der CPU-Einheit zur Durchführung von Datenverknüpfungsoperationen werden gemeinsam als Datenverknüpfungsbereich bezeichnet.
  • Da die für Datenverknüpfungsoperation benötigten Parameter in der CPU-Einheit gespeichert sind, kann die Kommunikationseinheit, die neu aus ihrem Wartezustand aktiviert wird, diese Parameter von der CPU-Einheit erhalten und die Datenverknüpfungsoperationen unter den gleichen Bedingungen wie vor dem Schalten der Betriebsarten wieder aufnehmen. Es besteht also keine Notwendigkeit, dass die Kommunikationseinheit in der Wartebetriebsart solche Parameter erhält, oder Daten von der Kommunikationseinheit in der aktiven Betriebsart zu übertragen, weshalb die Arbeitsbelastung vermindert ist.
  • Es ist vorzuziehen, dass, wenn eine Kommunikationseinheit aus der Wartebetriebsart in die aktive Betriebsart, wie oben erläutert, schaltet, keine Datenübertragung dadurch auf die anderen Knoten während des Datenaustauschs, der der ersten Datenverknüpfungsoperation nach dem Betriebsartenumschalten entspricht, ausgeführt wird. Dies deshalb, weil der Speicher gelöscht wird, wenn ein Rücksetzsignal zum Zwecke des Betriebsartenwechsels ausgegeben wird, so dass inkorrekte Daten unter Umständen übertragen werden könnten, wenn eine Datenübertragung auf die anderen Knoten bewirkt wird, bevor Daten mit der CPU-Einheit ausgetauscht werden. Dies ist jedoch nicht wesentlich, weil das System so eingerichtet sein kann, dass ein Datenaustausch mit der CPU-Einheit zuerst ausgeführt wird. In einem solchen System kann die Datenübertragung auf die anderen Knoten auch vom ersten Zeitpunkt an ausgeführt werden, ohne dass ein Fehler bewirkt wird. Ferner kann das System so eingerichtet sein, dass die Betriebsartenwechsel ohne Neustart bewirkt werden, und dass der gleiche Datensatz für die aktive Betriebsart auch in Wartebetriebsart im Speicher aufbewahrt werden kann. Mit einem so eingerichteten System können Daten auf die anderen Knoten ohne Bewirkung eines Fehlers selbst vom ersten Zeitpunkt unmittelbar nach dem Betriebsartenwechsel an übertragen werden.
  • Die Erfindung bezieht sich auch auf eine CPU-Einheit einer programmierbaren Steuerung mit zwei mit dem gleichen Netzwerk verbundenen Kommunikationseinheiten, die dadurch gekennzeichnet ist, dass sie Mittel für den Austausch von Daten in einer aktiven Betriebsart über eine der Kommunikationseinheiten mit anderen, auch mit dem gleichen Netzwerk verbundenen Knoten, aber nicht über die anderen der Kommunikationseinheiten in einer Wartebetriebsart aufweist. Sie hat auch die Funktion der Beurteilung des Vorliegens eines anomalen Zustands der Kommunikationseinheiten und, wenn damit die aktive Kommunikationseinheit als ausgefallen mit einem anomalen Zustand beurteilt wird und die andere Kommunikationseinheit in der Wartebetriebsart als normal arbeitend beurteilt wird, eines Neustarts der aktiven Kommunikationseinheit, Neustarts der anderen Kommunikationseinheit in der Wartebetriebsart und des nachfolgenden Hochfahrens der Warte-Kommunikationseinheit in die aktive Betriebsart. In Obigem und nachstehend bedeutet der Vorgang des „Neustarts" einer Kommunikationseinheit das Senden eines Befehls an sie, ihre Hardware zurückzusetzen.
  • Nachdem die aktive Kommunikationseinheit so neu gestartet worden ist, kann sie in die Wartebetriebsart mit einer spezifizierten Zeit hochgefahren werden, so dass der verdoppelte Aufbau, aufrechterhalten werden kann. Obwohl es kein stringen tes Erfordernis hinsichtlich dieser Zeit nach dem Neustart gibt, ist vorzuziehen, dass dieser Hochfahrvorgang bewirkt wird, nachdem die Warte-Kommunikationseinheit wieder gestartet und dann hochgefahren ist. Es ist zu beachten, dass solche Neustart- und Hochfahroperationen ausgeführt werden, wenn eine anomale Situation in einer Kommunikationseinheit auftritt, die normal gearbeitet hat. Wenn diese anomale Situation das Ergebnis eines Hardwareprobelms ist, kann die Einheit nicht hochgefahren werden. In einer solchen Situation wird ein Neustartbefehl gesendet, aber der Befehl, sie hochzufahren, braucht nicht nachfolgend gesendet zu werden.
  • Die Erfindung bezieht sich ferner auf ein Verfahren zur Steuerung einer programmierbaren Steuerung, die sich aus zwei Kommunikationseinheiten, die mit dem gleichen Netzwerk verbunden sind, und einer CPU-Einheit aufbaut. Das Verfahren dieser Erfindung lässt sich dadurch kennzeichnen, dass es die Schritte des Zuordnens gleicher Einheitenidentifizierungsdaten zu beiden dieser beiden Kommunikationseinheiten, des Bewirkens, dass eine dieser Kommunikationseinheiten in einer aktiven Betriebsart Datenaustausche mit der CPU-Einheit und anderen Knoten, die mit dem gleichen Netzwerk verbunden sind, ausführt, des Verhinderns, dass die anderen der Kommunikationseinheiten in der Wartebetriebsart Datenaustausche mit diesen anderen Knoten ausführen, und des Schaltens der Warte-Kommunikationseinheit in der aktiven Betriebsart, wenn die aktive Kommunikationseinheit ausfällt, und des Bewirkens, dass die aus der Wartebetriebsart aktivierte Kommunikationseinheit diese Datenaustausche durchführt.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Blockschaltbild eines Netzwerksystems, welches eine diese Erfindung verkörpernde programmierbare Steuerung enthält.
  • 2 ist ein Blockdiagramm eines Teils der Ausführungsform dieser Erfindung.
  • 3 ist ein Flussdiagramm der Operationen der CPU-Einheit.
  • 4 ist ein Flussdiagramm der Operationen einer jeden Einheit, wenn aktiver und Wartezustand umgeschaltet werden.
  • 5 ist ein Blockdiagramm zur Wiedergabe der Operationen der Kommunikationseinheit im aktiven Modus.
  • Ausführliche Beschreibung der Erfindung
  • Die Erfindung wird als nächstes anhand eines Beispiels beschrieben. 1 zeigt ein Beispiel eines Netzwerksystems, das unter Verwendung einer diese Erfindung verkörpernden programmierbaren Steuerung 10 zusätzlich zu programmierbaren Steuerungen 20 bekannter Art aufgebaut ist, die mit einem in Ringform angeordneten Übertragungsweg (Übertragungskreis) 30 verbunden sind, wie dies beispielsweise in der vorgenannten japanischen Patentveröffentlichung 2001-156818 beschrieben ist. Dieses Beispiel soll jedoch die Erfindung nicht einschränken. Ein Netzwerk gemäß dieser Erfindung kann ohne bekannte programmierbare Steuerungen (wie durch Bezugszeichen 20 angegeben), sondern unter Verwendung einer auf gedoppelten SPS 10 gemäß der Erfindung an jedem Knoten ausgebildet sein.
  • Jede der bekannten SPSen 20 enthält eine Spannungsquelleneinheit (POWER) 21 zur Lieferung von elektrischer Spannung an jede ihrer Einheiten, eine CPU-Einheit 22 zur Ausführung eines Anwenderprogramms und zur zyklischen Durchführung der E/A-Auffrisch- und/oder Peripherieverarbeitung, eine mit dem Kommunikationskreis 30 verbundene Kommunikationseinheit (COMM) 23 zur Durchführung von Kommunikationen mit den anderen Knoten und eine E/A-Einheit 25 für den Anschluss von Eingabe- und Ausgabegeräten. Diese Einheiten sind über ein Bussystem verbunden. Einheiten anderer Arten sind verfügbar, und die Anzahl anzuschließender Einheiten kann, wenn nötig, erhöht oder vermindert sein. Eine detaillierte Beschreibung der bekannten SPS 20 ist, da sie wohlbekannt ist, weggelassen.
  • Die diese Erfindung verkörpernde SPS 10 enthält auch eine Anzahl von Einheiten und ihr Aufbau ist im Wesentlichen der gleiche wie der der oben beschriebenen SPS 20. Zwei Kommunikationseinheiten (die erste Kommunikationseinheit (COMM 1) 13 und die zweite Kommunikationseinheit (COMM 2) 14) für eine Kommunikation mit den anderen Knoten sind mit dem gleichen Netzwerk (dem Kommunikationskreis 30) verbunden und bilden ein aufgedoppeltes Paar von Kommunikationseinheiten. Außerdem enthält die SPS 10 eine Spannungsquelleneinheit 11 zur Lieferung von elektrischer Spannung an jede der Einheiten, aus welchen die SPS 10 besteht, eine CPU-Einheit 12 zur Ausführung eines Anwenderprogramms und zyklischen Durchführung der E/A-Auffrisch- und/oder Peripherieverarbeitung sowie eine E/A-Einheit 15 für den Anschluss von Eingabe- und Ausgabegeräten. Diese Einheiten sind über einen Systembus verbunden. Einheiten anderer Arten sind ebenfalls verfügbar und die Anzahl anzuschließender Einheiten kann, wenn nötig, erhöht oder vermindert sein.
  • Die ersten und zweiten Kommunikationseinheiten 13 und 14 haben identischen inneren Aufbau. Wenn das System in Tätigkeit ist, wird eine von ihnen aktiv, während die andere inaktiv bzw. in einem Wartezustand bleibt. Wenn gerade die Datenverknüpfungsfunktion läuft, dient eine zum Austausch von Daten mit der CPU-Einheit und zur Durchführung von Datenaustauschen mit anderen mit dem Netzwerk (dem Kommunikationskreis 30) ver bundenen Knoten. Wenn ein anomaler Zustand bei der aktiven Kommunikationseinheit auftritt, wird die andere, im Wartezustand befindliche Kommunikationseinheit ansprechend auf einen Befehl von der CPU-Einheit aktiv und macht mit den im Gange befindlichen Vorgängen weiter.
  • Die beiden Kommunikationseinheiten 13 und 14 haben die gleichen Adressdaten für ihre Identifizierung, d. h., ihre Knotennummern (Knoten 1 im Beispiel der 1) und ihre Einheitennummern sind die gleichen. Diese Adressdaten können unter Verwendung eines (nicht gezeigten) Adresseneinstellschalters, der ein bei den Kommunikationseinheiten vorgesehener Drehschalter sein kann, eingestellt werden. Alternativ kann ein Einstellwerkzeug bzw. Einstell-Tool 31 zur Speicherung von Adressendaten in einem spezifizierten Speicherbereich der Kommunikationseinheit verwendet werden.
  • Wenn eine der beiden Kommunikationseinheiten 13 und 14 aktiv ist und Daten mit der CPU-Einheit austauscht, während sie ihre Datenverknüpfungsfunktion ausführt, erfolgt die Speicherzuordnung für die Datenverknüpfungsoperation auf der Grundlage dieser Einheitennummern. Da sowohl die erste als auch die zweite Kommunikationseinheit 13 und 14 die gleiche Einheitennummer haben, kann jedoch auf den gleichen Speicherbereich für den Datenaustausch zugegriffen werden, unabhängig davon, welche der beiden Kommunikationseinheiten 13 und 14 gerade aktiv ist, wobei die andere sich im Wartezustand befindet. Da die Knotennummern und die Einheitennummern bei den beiden Kommunikationseinheiten 13 und 14 ebenfalls die gleichen sind, kann die andere Kommunikationspartei (beispielsweise bei einer Datenkommunikation mit einem anderen Knoten, der auch mit dem gleichen Netzwerk verbunden ist) Nachrichten und Antworten an die gleiche Adresse übertragen, unabhängig davon, ob eine andere der Kommunikationseinheiten 13 und 14 aktiv geworden ist.
  • Es können also Anwenderprogramme für den Zugriff auf Datenverknüpfungsbereiche erstellt werden, ohne dass zwischen den beiden Kommunikationseinheiten 13 und 14 unterschieden wird. Anwenderprogramme, die von der CPU-Einheit eines anderen Knoten zur Kommunikation mit Knoten 1 (wo die erste und zweite Kommunikationseinheit 13 und 14 eingerichtet sind) zu verwenden sind, brauchen lediglich eine Adresse (die gleiche Knotennummer und die gleiche Einheitennummer, die sowohl für die erste als auch für die zweite Kommunikationseinheit an Knoten 1 eingestellt sind) zu verwenden. Dies ist im Wesentlichen wie die Handhabung einer bekannten SPS (wie der in 1 gezeigten SPS 20), die mit nur einer Kommunikationseinheit versehen ist. Anders ausgedrückt, besteht keine Notwendigkeit, das gleiche Programm zweimal unter Änderung nur der Adresse laufen zu lassen.
  • Da die beiden Kommunikationseinheiten 13 und 14 die gleichen Knoten- und Einheitennummern haben, können über das Netzwerk an ihre gemeinsame Adresse gesendete Daten von beiden empfangen werden, da aber jede von ihnen weiß, ob sie aktiv oder im Wartezustand ist, kann jede einen geeigneten Vorgang gemäß dem Zustand, in welchem sie aufgefunden wird, durchführen.
  • Als nächstes werden die inneren Aufbauten der CPU-Einheit 12 und der ersten und zweiten Kommunikationseinheit 13 und 14 zusammen mit ihren tatsächlichen Operationen erläutert. Wie in 2 gezeigt, ist die CPU-Einheit 12 mit einer MPU 12a zur Durchführung der EA-Auffrisch- und der Peripherieverarbeitung und einem EA-Speicher 12b zur Speicherung von EA-Daten versehen. Die MPU 12a und der E/A-Speicher 12b sind beide über eine Busschnittstelle 12c mit einem Systembus 10a verbunden, so dass sie in der Lage sind, Daten mit anderen Einheiten über den Systembus 10a auszutauschen. Die CPU-Einheit 12 ist auch mit einem Parameterspeicher 12d zur Speicherung einer Datenverknüpfungseinstellung, die Parameter, wie Speicherzuordnungsdaten, die für die Datenverknüpfungsoperation erforderlich sind, aufweist. Ein solcher Hardware-Aufbau ist ähnlich bekannten Strukturen, weshalb keine detaillierte Darstellung gegeben wird.
  • Wie oben erläutert, sind die erste und zweite Kommunikationseinheit 13 und 14 identisch strukturiert, wobei jede eine Kommunikaionsschnittstelle 13a bzw. 14a zur Steuerung von Kommunikationen, eine MPU 13b bzw. 14b zur Durchführung verschiedener Prozesse sowie einen Speicher 13c bzw. 14c, verbunden mit dem Systembus und versehen mit einer Schnittstelle ASIC 13d bzw. 14d für das Senden und Empfangen von Daten, aufweist.
  • Die Speicher 13c und 14c sind jeweils mit einem Empfangsnachricht-Speicherbereich (NACHRICHT IN) zur Speicherung von Nachrichten, die über die Kommunikationsschnittstelle 13a bzw. 14a empfangen wurden, einem Sendenachricht-Speicherbereich (NACHRICHT OUT) zur Speicherung von gesendeten Nachrichten, die von der CPU-Einheit 12 über das Bussystem 10a erhalten wurden, einem Datenverknüpfungs-Speicherbereich (DATENVERKNÜPFUNGSSPEICHER) zur vorübergehenden Speicherung von zu verknüpfenden Daten sowie einem Bereich (I/F-STEUERDATEN) zur Speicherung von Steuerdaten für die Schnittstelle versehen. Die Schnittstellensteuerdatenbereiche können beispielsweise Zuordnungsdaten für die Speicheradressen in dem EA-Speicher für Datenaustausche speichern. Bereiche innerhalb des EA-Speichers, die Daten für sich selbst speichern, können anhand der Schnittstellenspeicherdaten identifiziert werden.
  • Als Nächstes werden die Funktionen der MPUs 13b und 14b erläutert. Wenn sie aktiv sind, arbeiten sie als gewöhnliche Kommunikationseinheit, greifen auf die Speicher 13c und 14c zu und führen eine Datenverknüpfungsverarbeitung sowie einen Aus tausch von Nachrichten durch, während sie die Kommunikationsschnittstellen 13a und 14a steuern. Anders ausgedrückt, können sie Daten mit dem Datenverknüpfungsbereich des EA-Speichers 12b der CPU-Einheit 12 gemäß einer Speicherbereichzuordnung, die vorab eingestellt worden ist, und auch mit anderen Knoten unter Durchführung der Datenverknüpfungsverarbeitung austauschen, und die CPU-Einheiten verschiedener Knoten können also Daten gemeinsam besitzen. Die Nachrichtenaustauschvorgänge können mit der sogenannten Nachrichten-Dienstfunktion, d. h. durch Ausführen von Kommunikationsbefehlen (Befehlen zum Senden und Empfangen von Nachrichten an und von verschiedenen Knoten), die in dem Anwenderprogramm für den Austausch von Daten enthalten sind, mit einem spezifizierten Knoten zu einer erforderlichen Zeit ausgeführt werden. Wenn sie aktiv sind, dienen die erste und zweite Kommunikationseinheit 13 und 14 jeweils zur Überprüfung des Vorliegens eines Anomaliezustands in sich selbst und zur Mitteilung an die CPU-Einheit 12, wenn ein anomaler Zustand festgestellt wird. Wenn sie sich in dem Wartezustand befinden, führen sie nicht die Datenverknüpfungsverarbeitung oder den Austausch von Nachrichten, die von der aktiven MPU ausgeführt werden, durch, sondern wiederholen Diagnosetests auf einen Fehler. Wenn durch diesen Diagnosetest eine Anomalie festgestellt wird, wird die Feststellung der CPU-Einheit 12 mitgeteilt.
  • Es gibt drei Arten von Anomaliezuständen, die durch die Kommunikationseinheiten festgestellt werden können, nämlich Auftreten einer Anomalie in einer Kommunikationseinheit im aktiven Zustand, Auftreten einer Anomalie in einer Kommunikationseinheit im Wartezustand, und wenn die Einheit entfernt wird, während sich die Spannungsquelle im eingeschalteten Zustand befindet („Online-Austausch").
  • Zu anomalen Zuständen in einer aktiven Kommunikationseinheit gehören der „Watchdog-Zeitgeber um (WDTUP)" der Kommunikationseinheit, Anomalien im Übertragungsteil der Kommunikationseinheit und Hardware-Anomalien der Kommunikationseinheit. Diese Anomalien können anhand der Busschnittstellen-Steuerdaten festgestellt werden. Zu anomalen Zuständen in einer Kommunikationseinheit im Wartezustand gehören der „Watchdog-Zeitgeber um (WDTUP)" der Kommunikationseinheit und Hardware-Anomalien der Kommunikationseinheit. Diese sind auch anhand der Busschnittstellen-Steuerdaten feststellbar. Wenn eine Anomalie in der Kommunikationseinheit im Wartezustand festgestellt wird, wird natürlich das Umschalten zwischen der aktiven Kommunikationseinheit und der Wartekommunikationseinheit nicht bewirkt. Da sich der verdoppelte Zustand in einer solchen Situation nicht aufrechterhalten lässt, wird stattdessen eine Anomalie beim Verdoppeln in einer solchen Situation mitgeteilt. Dass ein Online-Austausch einer aktiven Kommunikationseinheit vorkommt, ist wahrscheinlich, wenn die Kommunikationseinheit für eine Wartungsinspektion oder einen periodischen Austausch ausgetauscht wird. Wenn ein Online-Austausch an einer aktiven Kommunikationseinheit durchgeführt wird, kann der Benutzer von einem Tool bzw. Hilfsmittel zur Mitteilung an die CPU-Einheit 12, betreffend den Beginn der Online-Beseitigung und -Anbringung, Gebrauch machen, so dass der CPU-Einheit 12 der Zustand bewusst gemacht wird, unter welchem der verdoppelte Kommunikationszustand nicht aufrechterhalten werden kann. Ansprechend darauf, aktiviert die CPU-Einheit 12 die Kommunikationseinheit, die sich im Wartezustand befunden hat. Ferner arbeitet die CPU-Einheit so, dass die Bus-Anomalie, die normalerweise auftreten würde, wenn eine Einheit entfernt und angebracht wird, während die Spannungs quelle im EIN-Zustand ist, sich nicht ergibt, wenn die Kommunikationseinheit entfernt und angebracht wird.
  • Die Kommunikationen werden also nicht unterbrochen, da die Warte-Kommunikationseinheit aktiviert wird, wenn eine Anomalie in der aktiven Kommunikationseinheit auftritt, und die SPS 10 kann ihre Kommunikationen sowie ihre Steuerungen und Operationen fortsetzen. Das Auftreten eines solchen anomalen Zustands kann über das Netzwerk (den Kommunikationsweg 30) den anderen Knoten und dem Tool mitgeteilt werden. Bekannte Technologien können im Grundsatz für die Funktion der Feststellung anomaler Zustände selbst verwendet werden.
  • Wie oben erläutert, dient die CPU-Einheit 12 zur Überwachung des Auftretens eines anomalen Zustands in der ersten und zweiten Kommunikationseinheit 13 und 14 und führt einen Umschaltvorgang (zwischen aktivem und Wartezustand) durch, wenn ein anomaler Zustand in der aktiven der Kommunikationseinheiten 13 und 14 festgestellt wird. Diese Operationen der CPU-Einheit 12 werden als nächstes unter Bezug auf die Flussdiagramme der 3 und 4 erläutert. In dieser Erläuterung wird angenommen, dass die erste Kommunikationseinheit 13 anfänglich aktiv und die zweite Kommunikationseinheit 14 im Wartezustand ist.
  • Die CPU-Einheit 12 prüft auf einen anomalen Zustand der aktiven ersten Kommunikationseinheit 13 (Schritt ST1) und dann auf den der zweiten Kommunikationseinheit 14 im Wartezustand (Schritt ST2). Wenn kein anomaler Zustand in den Kommunikationseinheiten 13 und 14 festgestellt wird (NEIN in Schritt ST3), ist der Prüfvorgang zunächst abgeschlossen. Wenn ein anomaler Zustand in der Kommunikationseinheit 13 oder 14 festgestellt wird (JA in Schritt ST3), wird diese Anomalie (im Sinne eines Verfehlens des Aufrechterhaltens der Kommunikationseinheiten in Verdopplung) in einem Speicher registriert, auf den das Tool zugreifen kann (Schritt ST4). Wenn der anomale Zustand nur in der aktiven ersten Kommunikationseinheit 13 vorliegt (JA in Schritt ST5), wird ein Neustartvorgang, wie oben erläutert, auf der ersten Kommunikationseinheit 13 ausgeführt (Schritt ST6), um ihre Hardware rücksetzen zu lassen, und ein weiterer Neustartvorgang wird auf der zweiten Kommunikationseinheit 14 im Wartezustand durchgeführt (Schritt ST7), um ihre Hardware rücksetzen zu lassen.
  • Ansprechend auf diese Neustartvorgänge führen die erste und zweite Kommunikationseinheit 13 und 14 ihre eigenen Neustartoperationen (Schritte ST20 und ST30), wie in 4 gezeigt, aus, womit eine Speicherlöschung und andere Initialisierungsvorgänge bewirkt werden. Danach wird die erste Kommunikationseinheit 13, die aktiv gewesen ist, in die Wartebetriebsart hochgefahren (Schritt ST8), und die zweite Kommunikationseinheit 14, die sich im Wartezustand befunden hat, wird in die aktive Betriebsart hochgefahren (Schritt ST9).
  • Wenn die erste Kommunikationseinheit 13 diesen Neustartbefehl in der Wartebetriebsart empfängt (Schritt ST21), wird eine Hardware-Prüfung (bzw. Selbstdiagnose) ausgeführt (Schritt ST22). Wenn sie als normal befunden wird, fährt sie in der Wartebetriebsart hoch und setzt die Durchführung von Operationen für diese Betriebsart fort (Schritt ST23), d. h., sie setzt die Durchführung von Selbstdiagnosevorgängen fort, um das Vorliegen oder Fehlen eines anomalen Zustands zu bestimmen, und berichtet das Ergebnis an die CPU-Einheit 12.
  • Wenn die zweite Kommunikationseinheit 14 den Neustartbefehl in der aktiven Betriebsart erhält (Schritt ST31), führt auch sie eine Hardware-Prüfung (Selbstdiagnose) durch (Schritt ST32). Wenn sie als normal befunden wird, fährt sie in der aktiven Betriebsart hoch und tauscht Anfangsdaten mit der CPU-Einheit 12 aus (Schritt ST33) und liest notwendige Parameter (Datenverknüpfungseinstellung) auf der Grundlage der empfangenen Anfangsdaten aus (Schritt ST34). Danach setzt die zweite Kommunikationseinheit 14 Operationen in der aktiven Bewegung fort und führt eine Datenverknüpfungsverarbeitung durch wiederholtes Durchführen eines Datenaustauschs mit der CPU-Einheit und den anderen Knoten (Schritt ST35) und Nachrichtenaustauschvorgänge mit den anderen Knoten (Schritt ST36) aus. Im Flussdiagramm der 4 ist dies zwar weggelassen, sie hat aber auch die Funktionen der Fortsetzung der Prüfung des Vorliegens oder Nicht-Vorliegens eines anomalen Zustands und der Mitteilung an die CPU-Einheit 12, wenn ein anomaler Zustand festgestellt wird.
  • Nachdem aktiver und Wartezustand der Kommunikationseinheiten 13 und 14 in den oben erläuterten Schritten ST6 – ST9 geschaltet sind, führt die CPU-Einheit 12 die normale Verarbeitung, wie etwa das Analysieren der von der aktiven Kommunikationseinheit empfangenen Nachrichten, um darin spezifizierte Vorgänge auszuführen, und das Zurücksenden von Antworten darauf aus (Schritt ST10). Sie führt auch Datenaustausche in Verbindung mit der Ausführung ihrer Datenverknüpfungsfunktion mit der aktiven zweiten Kommunikationseinheit 14 aus (Schritt ST11) und dient dazu, die Ergebnisse der Selbstdiagnose zu empfangen, die von der ersten Kommunikationseinheit 13, die sich nun im Wartezustand befindet, gesendet worden sind (Schritt ST12).
  • Die Datenverknüpfungsverarbeitung durch die zweite Kommunikationseinheit 14, nachdem sie in die aktive Betriebsart geschaltet worden ist, wird wie in 5 gezeigt ausgeführt. Als Erstes (1) werden über das Netzwerk (in dem Kommunikationsweg 30) laufende Daten über die Kommunikationsschnittstelle 14a gewonnen und in einem spezifizierten Abschnitt des Datenverknüpfungsspeicherbereichs im Speicher 14c gespeichert. Als Nächstes (2) werden Übertragungsdaten, die in einem anderen Bereich gespeichert worden sind, an einen spezifizierten Adressaten über den Kommunikationsweg 30 übertragen.
  • Danach werden, während die CPU-Einheit 12 die EA-Auffrischung durchführt, Daten zwischen der zweiten Kommunikationseinheit 14 und der CPU-Einheit 12 in der Reihenfolge von (3) und (4), wie in 5 gezeigt, ausgetauscht. Die Folge (1), (2), (3) und (4) wird danach wiederholt ausgeführt.
  • Unmittelbar nachdem sie aus der Wartebetriebsart in die aktive Betriebsart geschaltet worden ist, liest die zweite Kommunikationseinheit 14 die in der CPU-Einheit 12 gespeicherte Datenverknüpfungseinstellung aus. Sie kann also die Datenverknüpfungsverarbeitung mit der gleichen Einstellung wie die erste Kommunikationseinheit 13, die bis dahin aktiv gewesen ist, beginnen. Da die Initialisierungsverarbeitung zur Zeit des Neustarts einen Speicherlöschvorgang beinhaltet, können inkorrekte Daten im Speicher 14c vorhanden sein, bevor die Datenverknüpfungsverarbeitung begonnen wird. Wenn in diesem Zustand übertragen werden, kann dies ein fehlerhaftes Arbeiten bewirken. Aus diesem Grund wird die oben beschriebene Verarbeitung (2) unmittelbar nach dem Neustart weggelassen.
  • Als Nächstes werden die Operationen beim Systemhochfahren einer solchen SPS erläutert. Adressdaten (wie etwa Knotennummern oder Einheitennummern), die für einzelne Einheiten auf dem gleichen Netzwerk eingestellt sind, müssen üblicherweise einmalig sein. Wenn Spannung eingeschaltet wird, während die gleiche Einheitennummer oder Knotenadresse an verschiedenen Einheiten eingestellt ist, wird ein „Doppelverwendungsfehler" erzeugt. Gemäß einer Ausführungsform dieser Erfindung wird also das Einstell-Tool 31 zur Speicherung der Einheitennummern der duplizierten Kommunikationseinheit an einem spezifizierten Speicherbereich innerhalb der CPU-Einheit 12 verwendet, und nachdem die Einrichtung so getroffen ist, dass die CPU-Einheit 12 die duplizierte Verwendung dieser Einheitennummer nicht prüft, wird die Spannungsquelle der SPS ein- und ausgeschaltet. Eine weitere mögliche Methode, den Doppelverwendungsfehler zu umgehen, besteht darin, durch eine Operation des Einstell-Tools 31 den Doppelverwendungsfehler zu löschen, und die Spannungsquelle der SPS wird nicht aus- und eingeschaltet. Auf diese Weise resultieren zwei Kommunikationseinheiten mit der gleichen Knotennummer und der gleichen Einheitennummer.
  • Als Nächstes wird bestimmt, welche der doppelten Kommunikationseinheiten in der aktiven Betriebsart zu verwenden ist, und welche in der Wartebetriebsart zu verwenden ist. Es kommt nicht darauf an, wie die Wahl getroffen wird, und es gibt kein Problem, unabhängig davon, wie die Wahl getroffen worden ist. Die Wahl kann gemäß ihrer Anbringungspositionen getroffen werden. Beispielsweise kann die Kommunikationseinheit mit der jüngeren Gestellzahl oder Schlitzzahl als eine ausgewählt werden, die in der aktiven Betriebsart zu betreiben ist. Es versteht sich, dass die umgekehrte Wahl gleichermaßen akzeptabel ist. Die Wahl kann durch einen Betriebsarteneinstellbefehl von der CPU-Einheit 12 erfolgen.
  • Als Nächstes werden Kommunikationsparameter, die für die Durchführung von Datenverknüpfungsfunktionen (wie etwa eine Datenverknüpfungseinstellung) erforderlich sind, eingestellt, aber die Methode der Einstellung ist die gleiche wie im Falle der bekannten Kommunikationseinheiten.
  • Für eine Erholung aus einem anomalen Verdoppelungszustand (in welchem eine der Kommunikationseinheiten im aktiven und Wartezustand nicht normal arbeitet) muss eine Online-Einheitenaustauschoperation für den Austausch der fehlerhaften Kommunikationseinheit gegen eine normale Kommunikationseinheit durchgeführt werden. Wenn ein anomaler Zustand auf Seiten der aktiven Kommunikationseinheit auftritt, wird die andere Kommunikationseinheit im Wartezustand aktiviert und nimmt die im Gange befindlichen Kommunikationen wieder auf, wie dies oben erläutert wurde.
  • Für eine Rückkehr in den normalen verdoppelten Zustand in einer solchen Situation wird ein Online-Austauschvorgang auf der Einheit im anomalen Zustand ausgeführt. Die ersetzende Einheit wird in der Wartebetriebsart hochgefahren. Wenn ein anomaler Zustand auf Seiten der Kommunikationseinheit im Wartezustand auftritt, werden der aktive und der Wartezustand nicht geschaltet, und die aktive Kommunikationseinheit wird weiterhin für Kommunikationen benutzt. Auch in diesem Fall wird ein Online-Austausch auf der Einheit im anomalen Zustand ausgeführt, und die ersetzende Einheit wird in der Wartebetriebsart hochgefahren.
  • Die Mitteilung eines anomalen Zustands von der Kommunikationseinheit an die CPU-Einheit kann durch Schreiben des Einheitenanomaliedatenelements, das durch die Kommunikationseinheit festgestellt worden ist, in einen gemeinsamen Speicher (wie etwa Speicher 13c und 14c aus 2), der mit der CPU-Einheit geteilt wird, durchgeführt werden, so dass sie durch die CPU-Einheit ausgelesen werden kann.
  • Wie oben erläutert, werden nicht nur zwei gemäß der Erfindung vorgesehene Kommunikationseinheiten, sondern auch Daten zu ihrer Identifizierung als gleiche eingestellt, und nur eine von ihnen in der aktiven Betriebsart darf normale Kommunikationen und Sendungen und Empfänge von Daten durchführen. Die Belastung der CPU bleibt also ungefähr die gleiche, als ob nur eine Kommunikationseinheit vorhanden wäre, und Anwenderprogramme können so einfach sein, als ob nur eine Kommunikationseinheit vorhanden wäre, während die Zuverlässigkeit des Sy stems durch die Verwendung der duplizierten Kommunikationseinheiten verbessert werden kann.

Claims (11)

  1. Programmierbare Steuerung, welche zwei mit dem gleichen Netzwerk verbundene Kommunikationseinheiten und eine CPU-Einheit aufweist; wobei die beiden Kommunikationseinheiten beide durch die gleichen Identifikationsdaten identifiziert werden und so funktionieren, dass die eine derselben in einer aktiven Betriebsart und die andere derselben in einer Wartebetriebsart arbeitet; wobei jede der Kommunikationseinheiten, wenn sie in der aktiven Betriebsart ist, so arbeitet, dass sie Daten mit der CPU-Einheit und anderen mit dem Netzwerk verbundenen Knoten austauscht; wobei jede der Kommunikationseinheiten, wenn sie sich in der Wartebetriebsart befindet, daran gehindert ist, einen Datenaustausch mit anderen mit dem Netzwerk verbundenen Knoten auszuführen; und wobei die Kommunikationseinheit in der Wartebetriebsart in die aktive Betriebsart umgeschaltet wird und den Datenaustausch ausführt, wenn die Kommunikationseinheit in der aktiven Betriebsart ausfällt.
  2. Programmierbare Steuerung nach Anspruch 1, wobei die Kommunikationseinheit in der Wartebetriebsart ansprechend auf einen Befehl von der CPU-Einheit in die aktive Betriebsart geschaltet wird.
  3. Programmierbare Steuerung nach Anspruch 1, wobei die Kommunikationseinheit in der aktiven Betriebsart so arbeitet, dass sie den Datenaustausch mit der CPU-Einheit und den anderen Knoten durch Datenverknüpfungsoperationen in einer geeigneten Reihenfolge ausführt; wobei die CPU-Einheit Parameter speichert, die für die Datenverknüpfungsoperationen notwendig sind; und wobei die Kommunikationseinheit in der Wartebetriebsart, die auf die aktive Betriebsart umgeschaltet wird, fähig wird, Datenverknüpfungsoperationen durch den Empfang der Parameter von der CPU-Einheit weiterzuführen.
  4. Programmierbare Steuerung nach Anspruch 2, wobei die Kommunikationseinheit in der aktiven Betriebsart so arbeitet, dass sie einen Datenaustausch mit der CPU-Einheit und den anderen Knoten durch Datenverknüpfungsoperationen in einer geeigneten Reihenfolge ausführt; wobei die CPU-Einheit Parameter speichert, die für die Datenverknüpfungsoperationen notwendig sind; und wobei die Kommunikationseinheit in der Wartebetriebsart, die in die aktive Betriebsart umgeschaltet wird, fähig wird, Datenverknüpfungsoperationen durch Empfang der Parameter von der CPU-Einheit fortzuführen.
  5. Programmierbare Steuerung nach Anspruch 1, wobei die Kommunikationseinheit in der aktiven Betriebsart so arbeitet, dass sie einen Datenaustausch mit der CPU-Einheit und den anderen Knoten durch Datenverknüpfungsoperationen in einer geeigneten Reihenfolge ausführt; und wobei die Kommunikationseinheit, die von der Wartebetriebsart auf die aktive Betriebsart umgeschaltet hat, keine Daten an die anderen Knoten in der ersten Datenverknüpfungsoperation nach dem Umschalten aus der Wartebetriebsart in die aktive Betriebsart sendet.
  6. Programmierbare Steuerung nach Anspruch 2, wobei die Kommunikationseinheit in der aktiven Betriebsart so arbeitet, dass sie einen Datenaustausch mit der CPU-Einheit und den anderen Knoten durch Datenverknüpfungsoperationen in einer geeigneten Reihenfolge ausführt; und wobei die Kommunikationseinheit, die von der Wartebetriebsart auf die aktive Betriebsart umgeschaltet hat, keine Daten an die anderen Knoten in der ersten Datenverknüpfungsoperation nach dem Umschalten aus der Wartebetriebsart in die aktive Betriebsart sendet.
  7. Programmierbare Steuerung nach Anspruch 3, wobei die Kommunikationseinheit, die aus der Wartebetriebsart in die aktive Betriebsart umgeschaltet hat, keine Daten an die anderen Knoten in der ersten Datenverknüpfungsoperation nach dem Umschalten aus der Wartebetriebsart in die aktive Betriebsart sendet.
  8. Programmierbare Steuerung nach Anspruch 4, wobei die Kommunikationseinheit, die von der Wartebetriebsart in die aktive Betriebsart umgeschaltet hat, keine Daten an die anderen Knoten in der ersten Datenverknüpfungsoperation nach dem Umschalten aus der Wartebetriebsart in die aktive Betriebsart sendet.
  9. CPU-Einheit einer programmierbaren Steuerung, welche zwei mit dem gleichen Netzwerk verbundene Kommunikationseinheiten aufweist, wobei die CPU-Einheit aufweist: Mittel zum Austauschen von Daten mit anderen Knoten über die eine der Kommunikationseinheiten in einer aktiven Betriebsart, aber nicht über die andere der Kommunikationsein heiten in einer Wartebetriebsart, wobei die anderen Knoten mit dem gleichen Netzwerk verbunden sind; und Mittel zur Beurteilung des Vorliegens eines anomalen Zustands der Kommunikationseinheiten und, wenn die eine Kommunikationseinheit in der aktiven Betriebsart damit als mit einem anomalen Zustand ausgefallen und die andere Kommunikationseinheit in der Wartebetriebsart als normal funktionierend beurteilt wird, zum Hochfahren der anderen Kommunikationseinheit in der Wartebetriebsart in die aktive Betriebsart.
  10. Kommunikationseinheit in einer programmierbaren Steuerung, wobei die programmierbare Steuerung zwei gleich aufgebaute und mit dem gleichen Netzwerk verbundene Kommunikationseinheiten und eine CPU-Einheit enthält, wobei die Kommunikationseinheit eine der zwei Kommunikationseinheiten ist, wobei die zwei Kommunikationseinheiten beide durch die gleichen Identifizierungsdaten identifiziert werden, wobei die Kommunikationseinheit aufweist: Betriebsarteneinstellbefehl-Empfangsmittel für den Empfang eines Betriebsarteneinstellbefehls von der CPU-Einheit; und Datenaustauschmittel für den Austausch von Daten mit der CPU-Einheit und mit anderen mit dem gleichen Netzwerk verbundenen Knoten, wenn der Betriebsarteneinstellbefehl die Kommunikationseinheit in eine aktive Betriebsart einstellt, wobei die Datenaustauschmittel daran gehindert sind, Daten mit den anderen mit dem gleichen Netzwerk verbundenen Knoten auszutauschen, wenn der Betriebsarteneinstellbefehl die Kommunikationseinheit in eine Wartebetriebsart setzt.
  11. Verfahren zur Steuerung einer programmierbaren Steuerung, welche zwei mit dem gleichen Netzwerk verbundene Kommu nikationseinheiten und eine CPU-Einheit aufweist, wobei das Verfahren folgende Schritte aufweist: Zuordnen gleicher Einheitenidentifizierungsdaten zu beiden der zwei Kommunikationseinheiten; Bewirken, dass die eine der Kommunikationseinheiten in einer aktiven Betriebsart einen Datenaustausch mit der CPU-Einheit und anderen mit dem gleichen Netzwerk verbundenen Knoten ausführt; Verhindern, dass die andere der Kommunikationseinheiten in einer Wartebetriebsart Daten mit den anderen Knoten austauscht; und Schalten der anderen Kommunikationseinheit in der Wartebetriebsart in die aktive Betriebsart, wenn die eine Kommunikationseinheit in der aktiven Betriebsart ausfällt, und Bewirken, dass die andere Kommunikationseinheit den Datenaustausch durchführt.
DE10324380A 2002-05-31 2003-05-28 Programmierbare Steuerung mit CPU und Kommunikationseinheiten sowie Verfahren zur Steuerung derselben Expired - Lifetime DE10324380B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2002160808 2002-05-31
JP2002/160808 2002-05-31
JP2003/145983 2003-05-23
JP2003145983A JP3882783B2 (ja) 2002-05-31 2003-05-23 プログラマブルコントローラ及びcpuユニット並びに通信ユニット及び通信ユニットの制御方法

Publications (2)

Publication Number Publication Date
DE10324380A1 true DE10324380A1 (de) 2004-05-19
DE10324380B4 DE10324380B4 (de) 2007-02-08

Family

ID=29586030

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10324380A Expired - Lifetime DE10324380B4 (de) 2002-05-31 2003-05-28 Programmierbare Steuerung mit CPU und Kommunikationseinheiten sowie Verfahren zur Steuerung derselben

Country Status (4)

Country Link
US (1) US7246270B2 (de)
JP (1) JP3882783B2 (de)
CN (1) CN1260624C (de)
DE (1) DE10324380B4 (de)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004020830B4 (de) * 2004-02-19 2010-06-10 Lenze Automation Gmbh Sicherheits-Schaltungsverbund mit Ringkonzept für Steuergeräte der Leistungselektronik
US7500140B2 (en) * 2004-12-15 2009-03-03 International Business Machines Corporation System for on demand task optimization
JP4635616B2 (ja) * 2005-01-17 2011-02-23 株式会社明電舎 コンピュータ間のネットワーク通信方式
JP4494299B2 (ja) * 2005-07-04 2010-06-30 三菱電機株式会社 プログラマブルコントローラ
DE112006002841B4 (de) * 2005-11-14 2016-12-22 Mitsubishi Electric Corp. Netzeinheit und programmierbare Steuervorrichtung, die selbige verwendet
JP4921291B2 (ja) * 2007-09-04 2012-04-25 キヤノン株式会社 ファクシミリ装置及びその制御方法、並びにプログラム
TWI387225B (zh) * 2009-01-17 2013-02-21 Giga Byte Tech Co Ltd 具有備用網路電路的主機板
EP2228724A1 (de) * 2009-03-13 2010-09-15 Giga-Byte Technology Co., Ltd. Hauptplatine mit Sicherungsnetzwerkschaltung
JP4877423B1 (ja) * 2011-03-15 2012-02-15 オムロン株式会社 Plcのcpuユニット、plc用システムプログラムおよびplc用システムプログラムを格納した記録媒体
JP2012230446A (ja) * 2011-04-25 2012-11-22 Hitachi Industrial Equipment Systems Co Ltd プログラマブルコントローラステーション
JP5682509B2 (ja) * 2011-08-29 2015-03-11 トヨタ自動車株式会社 車両用充電装置、充電線通信システム
JP5506755B2 (ja) * 2011-09-22 2014-05-28 三菱電機株式会社 プログラマブル表示器およびそのデータ処理方法
CN102736603B (zh) * 2012-06-29 2014-09-17 厦门思德电子科技有限公司 基于plc网络的多操作开关仲裁方法
JP6144151B2 (ja) * 2013-08-08 2017-06-07 株式会社日立産機システム 通信制御方法
JP6139386B2 (ja) 2013-11-27 2017-05-31 株式会社東芝 プログラマブルコントローラ
JP6517474B2 (ja) * 2014-05-12 2019-05-22 株式会社東芝 プログラマブルコントローラ、及び演算処理システム
JP2016184291A (ja) * 2015-03-26 2016-10-20 株式会社東芝 ロジック実行装置及び設定方法
JP2018045399A (ja) * 2016-09-14 2018-03-22 株式会社日立産機システム プログラマブルコントローラ
JP6861533B2 (ja) * 2017-02-17 2021-04-21 三菱電機株式会社 処理装置、二重化システム、処理方法、および処理プログラム

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6488803A (en) * 1987-09-30 1989-04-03 Toshiba Corp Plant monitor and control equipment
US5148433A (en) * 1989-03-13 1992-09-15 Square D Company Transfer network interface
JP2732668B2 (ja) * 1989-06-22 1998-03-30 株式会社東芝 二重化制御装置
JP3651693B2 (ja) 1995-02-24 2005-05-25 株式会社東芝 プラント監視診断装置および方法
US5790775A (en) * 1995-10-23 1998-08-04 Digital Equipment Corporation Host transparent storage controller failover/failback of SCSI targets and associated units
US5777874A (en) * 1996-02-12 1998-07-07 Allen-Bradley Company, Inc. Programmable controller backup system
US6047222A (en) * 1996-10-04 2000-04-04 Fisher Controls International, Inc. Process control network with redundant field devices and buses
JPH10124138A (ja) * 1996-10-18 1998-05-15 Toshiba Corp 複合プラント監視制御装置
US5966304A (en) * 1997-04-29 1999-10-12 Allen-Bradley Company, Llc Redundant automation controller permitting replacement of components during operation
US6108300A (en) * 1997-05-02 2000-08-22 Cisco Technology, Inc Method and apparatus for transparently providing a failover network device
US5892928A (en) * 1997-05-13 1999-04-06 Micron Electronics, Inc. Method for the hot add of a network adapter on a system including a dynamically loaded adapter driver
US6148410A (en) * 1997-09-15 2000-11-14 International Business Machines Corporation Fault tolerant recoverable TCP/IP connection router
DE19814096B4 (de) 1998-03-30 2007-07-19 Abb Patent Gmbh Verfahren zur Umschaltung redundant geschalteter, gleichartiger Baugruppen
FR2786891B1 (fr) * 1998-12-04 2001-01-12 Schneider Automation Systeme d'automatisme redondant
JP3662444B2 (ja) * 1999-06-09 2005-06-22 三菱電機株式会社 プログラマブルコントローラおよび切替信号生成装置
US6523140B1 (en) * 1999-10-07 2003-02-18 International Business Machines Corporation Computer system error recovery and fault isolation
JP3770016B2 (ja) * 1999-11-30 2006-04-26 オムロン株式会社 ノード及び伝送方法並びにplcの通信ユニット
JP3896237B2 (ja) 2000-02-21 2007-03-22 株式会社日立製作所 制御システム
JP2001268092A (ja) * 2000-03-21 2001-09-28 Yokogawa Electric Corp 冗長化通信カード
US6633996B1 (en) * 2000-04-13 2003-10-14 Stratus Technologies Bermuda Ltd. Fault-tolerant maintenance bus architecture
JP4054509B2 (ja) * 2000-04-19 2008-02-27 株式会社東芝 フィールド機器制御システムおよびコンピュータが読取り可能な記憶媒体
JP3516905B2 (ja) * 2000-07-06 2004-04-05 株式会社デジタル ホストコンピュータ、および、そのプログラムが記録された記録媒体、並びに、それを用いた制御システム
US6711698B1 (en) * 2000-07-07 2004-03-23 Schneider Automation Inc. Programmable logic controller with provisions for safety systems
JP2002062903A (ja) * 2000-08-21 2002-02-28 Yokogawa Electric Corp 制御装置
JP3884609B2 (ja) * 2000-08-25 2007-02-21 株式会社山武 多重化システム
US6954881B1 (en) * 2000-10-13 2005-10-11 International Business Machines Corporation Method and apparatus for providing multi-path I/O in non-concurrent clustering environment using SCSI-3 persistent reserve
US6742136B2 (en) * 2000-12-05 2004-05-25 Fisher-Rosemount Systems Inc. Redundant devices in a process control system
US6871296B2 (en) * 2000-12-29 2005-03-22 International Business Machines Corporation Highly available TCP systems with fail over connections
US6954712B2 (en) * 2003-04-01 2005-10-11 International Business Machines Corporation Multi-mode SCSI diagnostic tool, system, and method

Also Published As

Publication number Publication date
CN1260624C (zh) 2006-06-21
JP2004054907A (ja) 2004-02-19
CN1475883A (zh) 2004-02-18
US20030225813A1 (en) 2003-12-04
US7246270B2 (en) 2007-07-17
JP3882783B2 (ja) 2007-02-21
DE10324380B4 (de) 2007-02-08

Similar Documents

Publication Publication Date Title
DE10324380B4 (de) Programmierbare Steuerung mit CPU und Kommunikationseinheiten sowie Verfahren zur Steuerung derselben
DE10223724B4 (de) Eingabe/Ausgabegerät zur Verwendung in einem Prozesssteuerungssystem und Verfahren zur Konfiguration des Selben
DE60225443T2 (de) Sicherheitseinheit, steuerungsverkettungsverfahren, steuerungssystemsteuerverfahren und steuerungssystemüberwachungsverfahren
DE69815392T2 (de) Systeme und verfahren zur synchronisierung von redundanten steuerungen mit minimaler steuerungsstörung
DE102004001031B4 (de) Redundante Anwendungsendgeräte für Prozesssteuerungssysteme
EP2817682B1 (de) Verfahren zum ausfallsicheren betreiben eines prozesssteuersystems mit redundanten steuereinrichtungen
EP2981868B1 (de) Steuer- und datenübertragungsanlage, prozesseinrichtung und verfahren zur redundanten prozesssteuerung mit dezentraler redundanz
DE102017106087A1 (de) Fehlertoleranz-muster und schaltprotokoll für mehrere hot- und cold-standby-redundanzen
EP1297394B1 (de) Redundantes steuerungssystem sowie steuerrechner und peripherieeinheit für ein derartiges steuerungssystem
EP3547618B1 (de) Verfahren zum aufbau einer redundanten kommunikationsverbindung und ausfallgesicherte steuerungseinheit
DE102014102582A1 (de) Fehlertolerantes Steuerungssystem
EP1205052A1 (de) Verfahren zur einstellung einer datenübertragungsrate in einem feldbussystem
EP3622357B1 (de) Steuerungssystem zum steuern von sicherheitskritischen und nichtsicherheitskritischen prozessen mit master-slave-funktionalität
DE10325069A1 (de) Programmierbare Steuerung mit CPU-Einheiten und Spezialfunktionsmodulen sowie Verfahren zur Aufdopplung
DE19744071B4 (de) Eine programmierbare Logiksteuervorrichtung verwendendes Steuerungssystem
DE102012000158A1 (de) Adaptives mehrfach redundantes ringförmiges Netzwerk und Verfahren zum Wählen einer Umleitung
WO2006042775A2 (de) Verfahren und vorrichtung zur redundanzkontrolle von elektrischen einrichtungen
DE602004010111T2 (de) Backup-zellensteuerung
EP1672446B1 (de) Sichere Eingabe-/Ausgabe-Baugruppen für eine Steuerung
DE60309012T2 (de) Verfahren und system zur sicherstellung eines busses und eines steuerservers
DE3522220C2 (de) Schaltungsanordnung zur sicheren Ansteuerung von Stellelementen eines Prozesses
DE19842593A1 (de) Verfahren zum Betrieb eines Busmasters an einem Feldbus
WO2014161986A1 (de) Steuer- und datenübertragungsanlage zur redundanten prozesssteuerung und verfahren zur firmware-aktualisierung
EP3759889A1 (de) Verfahren zum etablieren einer netzwerkkommunikation in einer anlage der automatisierungstechnik
EP2881812A1 (de) Verfahren zum Betreiben einer Automatisierungseinrichtung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R082 Change of representative

Representative=s name: KILIAN KILIAN & PARTNER MBB PATENTANWAELTE, DE

Representative=s name: KILIAN KILIAN & PARTNER, DE

R071 Expiry of right