DE10360957A1 - Programmierbare Steuereinheit und Verfahren zur automatischen Speicherwiederherstellung - Google Patents

Programmierbare Steuereinheit und Verfahren zur automatischen Speicherwiederherstellung Download PDF

Info

Publication number
DE10360957A1
DE10360957A1 DE10360957A DE10360957A DE10360957A1 DE 10360957 A1 DE10360957 A1 DE 10360957A1 DE 10360957 A DE10360957 A DE 10360957A DE 10360957 A DE10360957 A DE 10360957A DE 10360957 A1 DE10360957 A1 DE 10360957A1
Authority
DE
Germany
Prior art keywords
memory
user program
anomaly
data
user
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
DE10360957A
Other languages
English (en)
Other versions
DE10360957B4 (de
Inventor
Akio Kyoto Ono
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 DE10360957A1 publication Critical patent/DE10360957A1/de
Application granted granted Critical
Publication of DE10360957B4 publication Critical patent/DE10360957B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/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
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/11Plc I-O input output
    • G05B2219/11101Verifying ram data correct, validity, reload faulty data with correct data
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/14Plc safety
    • G05B2219/14065Checking step, diagnostic routine at end of each scan
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/14Plc safety
    • G05B2219/14085Memory testing

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

Eine Einheit für eine programmierbare Steuerung enthält einen Anwenderprogrammspeicher, der ein Anwenderprogramm speichert, das für das Durchführen eines Rechnungsprozesses auszulesen ist, sowie einen Sicherungsspeicher, der Daten mit dem gleichen Inhalt wie das im Anwenderprogrammspeicher gespeicherte Anwenderprogramm speichert. Ein Anomaliedetektor ist für das Feststellen einer Speicheranomalie durch Vergleichen von im Anwenderprogramm und im Sicherungsspeicher gespeicherten Daten, während die programmierbare Steuerung betrieben wird, vorgesehen. Wenn eine Speicheranomalie festgestellt wird, repariert eine Wiederherstellungsvorrichtung die Daten an der Position, wo die Anomalie festgestellt worden ist, mit den Daten an der entsprechenden Position des Sicherungsspeichers, und die zyklische Operation der zyklischen Steuerung wird danach fortgesetzt.

Description

  • Hintergrund der Erfindung
  • Diese Erfindung bezieht sich auf eine Einheit für eine programmierbare Steuerung (SPS) und auf ein Verfahren zur automatischen Wiederherstellung eines Speichers.
  • Programmierbare Steuerungen werden als Steuereinrichtung in der Fabrikautomatisierung (FA) verwendet. Programmierbare Steuerungen sind mit einer Anzahl von Einheiten oder als geeignete Kombination verschiedener Arten von Einheiten, wie eine Spannungsquelleneinheit, die als Zuführungsquelle für elektrische Spannung dient, eine CPU-Einheit zur Steuerung der SPS insgesamt, eine Eingabeeinheit zur Eingabe von Signalen aus Schaltern und Sensoren, die geeignet auf den Produktions- und Ausstattungsvorrichtungen für die FA positioniert sind, eine Ausgabeeinheit zur Ausgabe von Steuersignalen auf Stellglieder oder dergleichen, und eine Kommunikationseinheit zur Verbindung mit einem Kommunikationsnetzwerk, ausgebildet.
  • Die SPS (oder ihre CPU-Einheit) führt wiederholt die Operationen des Empfangens von über die Eingabeeinheit in den E/A-Speicher der CPU-Einheit eingegebenen Signalen („IN-Aktualisierung"), des Durchführens logischer Berechnungen auf der Grundlage eines vorab registrierten Anwenderprogramms („Berechnung"), des Sendens der Ergebnisse solcher Berechnungen an die Ausgabeeinheit durch Einschreiben derselben in den E/A-Speicher („OUT-Auffrischung") und, nachfolgend, der sogenannten Peripherieprozesse aus. Die SPS steuert ein zu steuerndes Objekt durch Wiederholen solcher Operationen.
  • Anwenderprogramme und Einstelldaten („Anwenderdaten") werden auf einem RAM gespeichert und es werden Daten sequentiell aus ihm ausgelesen und in ihn eingeschrieben, wenn der Berechnungsprozess fortgeführt wird.
  • In einer Fabrik, wo die SPS installiert ist, sind viele Arten von Vorrichtungen, wie Servomotoren, Wechselrichter und Hochspannungsquellenvorrichtungen mit der SPS verbunden oder in der Nähe der SPS angeordnet. Für in einem Speicher der SPS gespeicherte Daten besteht also die Gefahr einer Zerstörung infolge von Strahlungsrauschen, momentanem Spannungsausfall oder magnetischen und elektrischen Feldern. Eine Zerstörung von Daten auf dem Speicher in der SPS kann auch infolge kosmischer Strahlung stattfinden. Eine Datenzerstörung des ersteren Typs findet normalerweise in Einheiten von mehreren Bits statt, während diejenige die letzteren Art oft in Einheiten von einzelnen Bits stattfindet.
  • Es versteht sich, dass eine SPS nicht normal funktionieren kann, wenn ihre Steuerung auf zerstörten Anwenderdaten beruht. Eine SPS ist also so eingerichtet, dass sie während ihres Arbeitens dauernd prüft, ob nicht eine Zerstörung von Daten stattgefunden hat. Beispielsweise ist eine SPS so eingerichtet, dass sie einen Summenwert der Daten auf ihrem RAM berechnet und den berechneten Summenwert mit einem vorab gespeicherten Summenwert vergleicht, um damit das Vorhandensein oder Nichtvorhandensein eines anomalen Zustands zu prüfen.
  • Genauer erläutert, werden jedes Mal, wenn Anwenderdaten neu heruntergeladen oder modifiziert werden, die Werte der Anwenderdaten von ihrem Anfang bis zum Ende addiert, und der so gewonnene Wert als der Summenwert in einem anderen Bereich gespeichert. Während einer tatsächlichen Operation wird der Summenwert der Anwenderdaten auf dem RAM abschnittsweise berechnet, und jedes Mal, wenn der Endsummenwert erhalten wird, wird dieser Wert mit dem vorher gespeicherten Wert verglichen. Wenn sie nicht übereinstimmen, wird geschlossen, dass die Daten auf dem RAM, aus welchem Grund auch immer, zerstört worden sind (oder eine Speicheranomalie aufgetreten ist), und das System wird angehalten, um ein Durchgehen und eine falsche Ausgabe zu Verhindern.
  • Das Anwenderprogramm ist mit Befehlsobjektcodes gebildet, die von einem speziellen IC (ASIC) , der in der Lage ist, Anwenderprogramme mit hoher Geschwindigkeit auszuführen, sowie von einer Mehrzweck-MPU verstanden werden können.
  • Es ist normalerweise ein ASIC, der den Befehlobjektcode interpretiert und bestimmt, ob der Befehl vom ASIC selbst oder der MPU auszuführen ist. Wenn der ASIC einen Code feststellt, der weder vom ASIC selbst noch von der MPU ausgeführt werden kann, wird dieser anomale Zustand der MPU mitgeteilt. Wenn diese Mitteilung empfangen wird, schließt die MPU, dass der den Objektcode speichernde RAM zerstört ist, und kann damit weitermachen, die SPS anzuhalten.
  • Wenn das System so angehalten wird, wird eine Arbeit zur Wiederherstellung des Speichers durchgeführt. Zur Durchführung dieser Wiederherstellungsarbeit muss jedoch ein Werkzeug, wie etwa ein PC, zur Übertragung und Ausgabe von Anwenderprogrammen mit der SPS verbunden werden. Da jedoch die SPS üblicherweise an einem tiefen Ende eines Steuerkastens angeordnet ist, ist es nicht einfach, eine solche Verbindung herzustellen.
  • Ferner besteht, wenn die Summenwerte verglichen werden, die Möglichkeit, dass die Summenwerte zufällig übereinstimmen, obwohl die Daten zerstört worden sind, und auch wenn es infolge der Zerstörung von Daten zu einer Modifizierung des Objektcodes kommt, kann es sein, dass die Situation als normal interpretiert werden, wenn die Codes und der ASIC nach der Modifikation immer noch mit der MPU durchgeführt werden können. Anders ausgedrückt, ist es ein schwieriges Stück Arbeit, eine Zerstörung von Daten zuverlässig festzustellen.
  • Im Hinblick auf dieses Problem hat beispielsweise die japanische Patentveröffentlichung Tokkai 11-143784 (in den Absätzen 0022, 0023 und 0034 sowie 1 bis 9) eine Anzeigevorrichtung für eine programmierbare Steuerung offenbart. Gemäß der Offenbarung darin werden Sicherungsdaten mit den gleichen Inhalten wie die im Speicher der SPS gespeicherten Anwenderdaten in der Anzeigevorrichtung gespeichert. Wenn die Spannung eingeschaltet wird und ein spezifiziertes Zeitintervall danach wird das Vorhandensein oder Nichtvorhandensein einer Zerstörung von im Speicher der SPS gespeicherten Daten nachgeprüft und, wenn festgestellt wird, dass eine Zerstörung vorhanden ist, eine Wiederherstellungsarbeit auf dem Speicher der SPS auf der Grundlage der in der Anzeigevorrichtung gespeicherten Sicherungsdaten durchgeführt. Sie hat auch die Funktion der Protokollierung von Daten bei Nichtübereinstimmung und der Anzeige ihrer Inhalte. Die Untersuchung des Vorhandenseins oder Nichtvorhandenseins der Zerstörung wird durch sequentielles Abrufen der im Speicher der Anzeigevorrichtung gespeicherten Sicherungsdaten für die SPS Sicherung und der im Speicher der SPS gespeicherten SPS-Daten, Vergleichen derselben unter Verwendung eines Arbeitsspeichers innerhalb der Anzeigevorrichtung und Schließen, dass eine Zerstörung von Daten vorliegt, wenn eine Nichtübereinstimmung zwischen den SPS-Sicherungsdaten und den SPS-Daten besteht, durchgeführt. Der zerstörte Datenabschnitt wird auf die SPS heruntergeladen, um eine Wiederherstellungsarbeit durchzuführen.
  • Bei diesem Verfahren besteht jedoch ein Problem, weil sich die Anzeigevorrichtung an einem verhältnismäßig fernen Ort weg von der SPS befindet und über ein Netzwerk angeschlossen ist. Dementsprechend wird der Speicher der SPS über das Netzwerk ausgelesen, weshalb der Auslesevorgang nicht ausreichend häufig durchgeführt werden kann. Die vorgenannte japanische Patentveröffentlichung Tokkai 11-143784 lehrt also, dass dieser nur peri odisch zu spezifizierten Zeitintervallen nach dem Einschalten der Spannung durchgeführt werden soll, ohne klar anzugeben, was diese spezifizierten Zeitintervalle sein könnten. Aus der Beschreibung insgesamt könnte man sich vorstellen, dass es ziemlich lange Zeitintervalle sind. Wenn dies so ist, sind sie möglicherweise länger als die Intervalle, in denen bekannte Prüfmethoden im Wege von Summenwerten durchgeführt werden können, und es ist schwierig eine Zerstörung von Daten augenblicklich festzustellen.
  • Bei einem Verfahren der Feststellung eines Auftretens einer Anomalie durch eine Anzeigevorrichtung und Herunterladens von korrekten Daten auf die SPS auf deren Basis ist jedoch eine Verzögerung in der Mitteilung der Anomalie an die SPS im Spiel und es ist üblicherweise erforderlich, die SPS für die Wiederherstellungsarbeit durch Herunterladen von Daten von der Anzeigevorrichtung vorübergehend anzuhalten. Dies macht es schwierig, eine Echtzeitwiederherstellung des Speichers durchzuführen.
  • Selbst bei einem Prüfverfahren mittels Summenwerten kann ferner das Anwenderprogramm als ganzes nicht für jeden Zyklus einer zyklisch arbeitenden SPS geprüft werden. Berechnungen werden also sequentiell in Teilen durchgeführt, und ein Summenwert wird durch Aufsummieren der Ergebnisse solcher Teilberechnungen gewonnen. Anders ausgedrückt, besteht eine verhältnismäßig große Zeitverzögerung von dem Zeitpunkt, zu dem eine Zerstörung stattfindet, bis sie tatsächlich festgestellt wird.
  • Zusammenfassung der Erfindung
  • Es ist daher Aufgabe dieser Erfindung, eine SPS-Einheit zu schaffen, die in der Lage ist, schnell und genau die Zerstörung von Speicherdaten festzustellen und automatisch bei fortgesetztem Arbeiten der SPS den Speicher wiederherzustellen, wenn eine Zerstörung festgestellt wird, sowie ein solches Verfahren zur automatischen Wiederherstellung eines Speichers zu schaffen.
  • Eine diese Erfindung verkörpernde Einheit ist für eine programmierbare Steuerung, die eine zyklische Operation, darin eingeschlossen gemeinsame, Berechnungs-, E/A-Aktualisierung- und periphere Dienstprozesse, ausführt, und lässt sich kennzeichnen dadurch, dass sie einen ein Anwenderprogramm speichernden Anwenderprogrammspeicher, der zur Durchführung der Rechenprozesse auszulesen ist, einen Sicherungsspeicher, der Daten mit den gleichen Inhalten wie das im Anwenderprogrammspeicher gespeicherte Anwenderprogramm speichert, einen Anomaliedetektor zur Feststellung einer Speicheranomalie in dem im Anwenderprogrammspeicher gespeicherten Anwenderprogramm, während die zyklische Operation ausgeführt wird, und eine Wiederherstellungsvorrichtung zur Wiederherstellung, wenn der Anomaliedetektor eine Anomalie festgestellt hat, eines Datenabschnitts, wo die Anomalie durch den Anomaliedetektor festgestellt worden ist, mit einem entsprechenden Datenabschnitt im Speicher, aufweist. Die zyklische Operation wird fortgesetzt, nachdem der Datenabschnitt wiederhergestellt worden ist. Der vorgenannte Anwenderprogrammspeicher kann auch als Anwenderspeicher bezeichnet werden.
  • Was oben als Anomaliedetektor bezeichnet worden ist, kann verschiedene Formen annehmen. Beispielsweise kann er so eingerichtet sein, dass der die Inhalte des Sicherungsspeichers und des Anwenderprogrammspeichers zu spezifizierten Zeiten vergleicht und beurteilt, dass der Speicher anomal ist, wenn eine Nichtübereinstimmung als Ergebnis des Vergleichs festgestellt wird. Die spezifizierte Zeit kann einmal pro Zyklus oder einmal pro mehreren Zyklen sein. Die zu vergleichenden Inhalte können das Anwenderprogramm und den Parameterbereich enthalten.
  • Das als Vergleichsinhalt dienende Anwenderprogramm kann beispielsweise eines sein, das vom Anwender in einer Steuerpro grammsprache, wie einer graphischen Programmiersprache unter Verwendung eines Werkzeugs, wie etwa eines PC, erzeugt, und in einen Code (Objektcode) umgewandelt worden ist, der von der SPS durchgeführt werden kann. Beispiele von im Parameterbereich zu speichernden Daten beinhalten Daten, die sich auf die Systemeinstellung durch die SPS beziehen, Daten zur Einstellung der Netzwerkkommunikation sowie Daten, die im Ausführungsmodus des Anwenderprogramms nicht geändert werden.
  • Ein Vergleich braucht nicht über alle Daten des Vergleichsobjekts (wie etwa das Anwenderprogramm und den Parameterbereich) hinweg innerhalb eines Zyklusses durchgeführt werden. Der Vergleich kann in Teilen erfolgen, so dass mehrere Zyklen ausgeführt werden, bevor alle Vergleichsobjekte auf Anomalie geprüft sind.
  • Als weiteres Beispiel kann der Berechnungsprozess in dem zyklischen Vorgang ausgeführt werden, wenn der ASIC sequentiell die Objektcodes ausliest, die das im Anwenderprogrammspeicher gespeicherte Anwenderprogramm umfassen, und der vorgenannte Anomaliedetektor eine Speicheranomalie feststellt, falls der mit dem ASIC ausgelesene Objektcode mit dem vorab spezifizierten Objektcode nicht übereinstimmt.
  • In diesem Beispiel ist es vorzuziehen, wenn der Anomaliedetektor mit der Funktion der Identifizierung des Abschnitts, wo die Speicheranomalie erzeugt worden ist, wenn der mit dem ASIC ausgelesene Objektcode und der vorab gespeicherte Objektcode nicht übereingestimmt haben und eine Speicheranomalie festgestellt worden ist, versehen ist, indem er die Inhalte des Sicherungsspeichers und des Anwenderprogrammspeichers auf der Grundlage der Daten der Adresse, wo der Objektcode, in welchem der ASIC die Anomalie festgestellt hat, vergleicht und damit den Ort der Nichtübereinstimmung feststellt.
  • In einem weiteren Beispiel kann der Anomaliedetektor vorzugsweise so eingerichtet sein, dass er die Gesamtheit des Anwenderprogramms im Anwenderprogrammspeicher innerhalb eines Zyklusses prüft und die Daten in einem spezifizierten Bereich des die E/A-Daten speichernden E/A-Speichers zwischenspeichert, wenn keine Anomalie vorhanden ist, und das Anwenderprogramm repariert und den E/A-Speicher beruhend auf den zwischengespeicherten E/A-Daten wiederherstellt, wenn eine Anomalie festgestellt worden ist.
  • Auch wenn die Einrichtung so getroffen ist, dass die Gesamtheit des Anwenderprogramms im Anwenderprogrammspeicher innerhalb eines Zyklusses geprüft wird, kann, wie oben erläutert, die Speicherwiederherstellung des Anwenderprogramms ausgeführt werden, ohne die E/A-Daten zu speichern und wiederherzustellen. Die Speicherprüfung kann in diesem Fall auf verschiedene Arten, wie etwa durch Überprüfung des Summenwerts oder durch einen Vergleich zwischen dem Anwenderspeicher und dem Sicherungsspeicher, durchgeführt werden.
  • Die Erfindung bezieht sich auch auf ein Verfahren zur automatischen Wiederherstellung eines Speichers einer Einheit für eine programmierbare Steuerung, die eine zyklische Operation, darin eingeschlossen gemeinsame, Berechnungs-, E/A-Aktualisierungs- und periphere Dienstprozesse, durchführt. Das Verfahren setzt dabei voraus, dass die Einheit mit einem Anwenderprogrammspeicher, der ein zur Durchführung des Berechnungsprozesses auszulesendes Anwenderprogramm speichert, und einem Sicherungsspeicher, der Daten mit dem gleichen Inhalt wie das im Anwenderprogrammspeicher gespeicherte Anwenderprogramm speichert, versehen ist. Gemäß dem Verfahren wird ein Anomaliefeststellungsprozess durchgeführt, um damit eine Speicheranomalie in dem im Anwenderprogramm des Speichers gespeicherten Anwenderprogramm festzustellen, während die zyklische Operation ausgeführt wird, und, wenn eine Anomalie durch Durchführen des Anomaliefeststellungsprozesses festgestellt wird, ein inkorrekten Daten bei der festgestellten Speicheranomalie entsprechender Datenabschnitt aus dem Sicherungsspeicher ausgelesen und dieser Datenabschnitt in den Anwenderprogrammspeicher geschrieben, um damit die inkorrekten Daten zu korrigieren und den Speicher wiederherzustellen. Die zyklische Operation wird fortgesetzt, nachdem die inkorrekten Daten so korrigiert sind.
  • In Obigem kann der Anomaliefeststellungsvorgang vorzugsweise durch Vergleichen der Inhalte des Sicherungsspeichers und des Anwenderprogramms des Anwenderprogrammspeichers zu spezifizierten Zeiten und Feststellen einer Anomalie, wenn sich durch den Vergleich eine Nichtübereinstimmung ergibt, durchgeführt werden.
  • Auch in Obigem wird der Berechnungsvorgang durch einen ASIC durchgeführt, der sequentiell im Anwenderprogramm gespeicherte Objektcodes des Anwenderprogramms ausliest, und der Anomaliedetektor dient dazu, eine Anomalie festzustellen, wenn die mit dem ASIC ausgelesenen Objektcodes mit vorab spezifizierten Objektcodes nicht übereinstimmen. Wenn durch Durchführen des Anomaliefeststellungsprozesses eine Anomalie festgestellt wird, kann der ASIC den Ort, wo die Anomalie aufgetreten ist, durch Vergleichen der Inhalte des Sicherungsspeichers und des Anwenderprogrammspeichers beruhend auf Adressendaten, die sagen, wo die Objektcodes gespeichert sind, identifizieren. Der Anwenderprogrammspeicher kann durch Abrufen der Daten an der identifizierten Position aus dem Sicherungsspeicher wiederhergestellt werden.
  • Ferner kann in Obigem der Anomaliefeststellungsprozess die Schritte des Prüfens der Gesamtheit des Anwenderprogramms im Anwenderprogrammspeicher innerhalb eines Zyklusses, der Zwischenspeicherung der Daten in einem spezifizierten Bereich des E/A-Speichers, der die E/A-Daten speichert, wenn keine Anomalie vorliegt, und des Reparierens des Anwenderprogramms und Wiederher stellen des E/A-Speichers, beruhend auf den zwischengespeicherten E/A-Daten, wenn eine Anomalie festgestellt worden ist, umfassen.
  • Da Geschwindigkeit ein wichtiger Faktor bei der SPS-Steuerung (d.h., dem vorgenannten Berechnungsprozess) ist, wird von einem Speicher Gebrauch gemacht, der beim Durchführen des Berechnungsprozesses zu schnellen Operationen in der Lage ist. Die Berechnungsgeschwindigkeit lässt sich verbessern, indem ein solcher Speicher als der Anwenderprogrammspeicher verwendet wird. Solche Speicher haben jedoch einen hohen Bereitschaftsstrom und würden eine große Anzahl von Batteriezellen erfordern, wenn gewünscht würde, Daten einer Größe, die so groß wie diejenige eines Anwendersprogramms ist, über eine längere Zeit zu speichern. Es ist daher unter dem Gesichtspunkt von Aufbau und Preis praktisch unzweckmäßig, diese für eine SPS-Einheit zu verwenden. Da ein solcher Speicher Daten nicht halten kann, wenn die Spannung abgeschaltet wird, ist es also gängige Praxis, das Anwenderprogramm getrennt in einem nicht flüchtigen Sicherungsspeicher zu speichern und es aus dem Sicherungsspeicher in den Anwenderspeicher zu transferieren, wenn die Spannung zu Durchführung der zyklischen Prozesse eingeschaltet wird. Anders ausgedrückt, wird der gleiche Inhalt der Anwenderprogrammdaten sowohl im Anwenderprogrammspeicher als auch im Sicherungsspeicher gespeichert, wenn die Spannung eingeschaltet wird.
  • Gemäß dieser Erfindung ist es daher die Einheit für die SPS, die auf einen anomalen Zustand des Speichers prüft, und, wenn Daten des Anwenderprogrammspeichers beschädigt sind, und eine Speicheranomalie verursachen, werden entsprechende Daten aus dem Sicherungsspeicher dazu verwendet, die beschädigten Daten durch einen umgeschriebenen Teil als Speicherwiederherstellungsarbeit zu ersetzen. Die Anwenderprogrammdaten auf dem Anwenderprogrammspeicher erlangen also eine Korrektur und die SPS kann ihre Ope rationen fortsetzen. Da die Übertragung des Anwenderprogramms aus dem Sicherungsspeicher in den Anwenderprogrammspeicher ein interner Vorgang ist, lässt sich die Wiederherstellung des Anwenderprogrammspeichers augenblicklich bewerkstelligen, während die zyklischen Operationen ausgeführt werden, und die zyklischen Operationen können fortgesetzt werden, nachdem die Daten korrigiert sind. Anders ausgedrückt, kann der Anwenderprogrammspeicher ohne Anhalten der SPS automatisch wiederhergestellt werden.
  • Drei Verfahren wurden für die Feststellung einer Speicheranomalie erwähnt (welche (1) durch Vergleichen des Anwenderprogramms zwischen dem Anwenderprogrammspeicher und dem Sicherungsspeicher und Prüfen, ob sie übereinstimmen oder nicht, (2) durch Bestimmen, ob Objektcodes für den ASIC verständlich sind, und (3) durch Prüfen des Summenwerts für eine Beurteilung gegeben sind), es kann aber auch eines dieser Verfahren allein oder irgendeine Kombination einer Anzahl dieser Verfahren enthalten sein. Wenn ein weiteres Verfahren darüber hinaus vorhanden ist, kann ein solches neues Verfahren ebenfalls enthalten sein.
  • Unter Bezug auf das Obige ist bevorzugt, sowohl (1) als auch (2) einzubauen. Es ist zwar nicht wünschenswert, zuzulassen, dass die Zeit für einen Zyklus von Operationen zu lange wird, es können aber Vorgänge, die nur wenigen Bits entsprechen (zu bestimmen gemäß der Kapazität der SPS), in einem Zyklus nach dem Verfahren des Vergleichens von Daten gemäß (1) durchgeführt werden. Wenn Daten an einer bestimmten Adresse nach diesem Vergleich von Daten als normal bestimmt werden und danach ein Datenfehler an dieser Adresse auftritt, bleibt ein Zustand, der für die SPS nicht wünschenswert ist, also bestehen, bis der nächste Vergleich durchgeführt wird. Wenn das Verfahren von (2) zusätzlich eingebaut wird und wenn der Datenfehler dort vorliegt, wo Objektcodes des Anwenderprogramms gespeichert sind, wird jedoch der Fehler festgestellt, wenn der ASIC das Anwender programm ausführt (oder wenn die Objektcodes ausgelesen werden). Dies bedeutet, dass der anomale Zustand früher festgestellt werden kann, womit die Zuverlässigkeit der SPS verbessert ist.
  • Es ist jedoch zu erkennen, dass, obwohl es mehrere Zyklen nach dem Verfahren (1) braucht, um alle Daten zu prüfen, weil die Prüfung in Einheiten von nur einigen Bytes stattfindet, der Zustand, wenn der den anomalen Zustand enthaltende Abschnitt geprüft wird, innerhalb dieses Zyklusses festgestellt werden kann.
  • Es ist auch zu erkennen, dass die Erfindung auch Verfahren enthält, mit denen das gesamte Anwenderprogramm des Anwenderprogrammspeichers innerhalb eines Zyklusses geprüft wird. In diesem Fall kann jedes der Verfahren (1) und (2) verwendet werden, und das Verfahren von (3) wird eines von wirksamen Verfahren.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Blockschaltbild einer die Erfindung verkörpernden Einheit.
  • 2 ist eine Zeichnung zur Erläuterung des Prinzips ihrer Operationen.
  • 3 bis 9 sind Flussdiagramme für verschiedene Operationen der MPU.
  • Ausführliche Beschreibung der Erfindung
  • 1 zeigt einen Aufbau einer CPU-Einheit 10 für eine SPS, welche diese Erfindung verkörpert. Ein Systemprogramm (Firmware) ist in einem Systemspeicher (SROM) 11 gespeichert, der eine Flash-Speichervorrichtung aufweist, und für ein Abrufen in die MPU 12 eingerichtet, welche zur Durchführung verschiedener Prozesse gemäß dem Programm unter Verwendung eines Arbeitsspeichers (WRAM) 13 dient, wenn es erforderlich wird.
  • Während der Operation wird ein Anwenderprogramm, welches eines von Anwenderdaten ist, in einem als Anwenderprogrammspeicher dienenden Anwenderspeicher 14 gespeichert. Der Anwenderspeicher 14 ist mit einem SRAM (welcher ein Hochgeschwindigkeits-RAM ist) ausgebildet und kann seinen Inhalt nicht halten, wenn die Spannung ausgeschaltet wird. Aus diesem Grund wird ein weiteres Anwenderprogramm mit dem gleichen Inhalt in einem Sicherungsspeicher 15 gespeichert, der mit einer Flash-Speichervorrichtung ausgebildet ist, die in der Lage ist, ihren Inhalt auch dann zu halten, wenn die Spannung abgeschaltet wird. Wenn die Spannung eingeschaltet wird, wird das in dem Sicherungsspeicher 15 gespeicherte Anwenderprogramm auf den Anwenderspeicher 14 übertragen.
  • E/A-Daten und Parameter sind in einem E/A-Speicher 16 gespeichert. Der E/A-Speicher ist auch mit einem SRAM ausgebildet, aber gemäß diesem Beispiel mit Batteriezellen versehen, weshalb er seinen Speicherinhalt auch dann hält, wenn die Spannung abgeschaltet wird.
  • Im Anwenderspeicher 14 gespeicherte Befehlsobjektcodes des Anwenderprogramms werden sequentiell durch einen ASIC 17 aufgerufen. Der ASIC 17 analysiert die abgerufenen Befehlsobjektcodes und führt die Befehle aus. Wenn diese Befehle ausgeführt werden, wird, wann immer erforderlich, auf den E/A-Speicher 16 zugegriffen, um E/A-Daten zu lesen und zu schreiben und Parameter zu gewinnen. Diese E/A-Daten können auf verschiedene Einheiten sowie andere E/A-Vorrichtungen über einen E/A-Bus 18 übertragen und/oder von diesen empfangen werden.
  • Der ASIC 17 ist so eingerichtet, dass er eine Anomalie feststellt (d.h., beurteilt, dass ein anomaler Zustand vorliegt) wenn ein Befehlsobjektcode analysiert wird, aber als ein inkorrekter Code befunden wird, der für ihn unverständlich ist, und die MPU 12 dahingehend informiert. Der Aufbau und die Funktion, die oben beschrieben wurden, sind im wesentlichen die gleichen wie beim Stand der Technik, weshalb keine ausführliche Erläuterung gegeben wird. Eine SPS wird ausgebildet, indem Einheiten verschiedener Art, wie etwa eine Spannungsquelleneinheit und ein E/A-Einheit zusätzlich zu der oben beschriebenen CPU-Einheit 10 über einen Bus verbunden werden.
  • Wie in 2 gezeigt, dient die MPU 12 dazu, die im Anwenderspeicher 14 gespeicherten Daten des Anwenderprogramms mit denjenigen des im Sicherungsspeicher 15 gespeicherten Anwenderprogramms zu vergleichen („VERGLEICH") um zu bestimmen, ob ihre Inhalte übereinstimmen, oder nicht. Wenn sie übereinstimmen, wird beurteilt, dass die Daten im Anwenderspeicher 14 nicht zerstört sind, und die Ausführung des Anwenderprogramms des Anwenderspeichers 14 wird direkt fortgesetzt. Wenn eine Nichtübereinstimmung, wie etwa Adresse 3 im Beispiel der 2, festgestellt wird, wird beurteilt, dass zerstörte Daten im Anwenderspeicher 14 vorhanden sind, und das entsprechende Datenelement (an Adresse 3), das in dem Sicherungsspeicher 15 gespeichert ist, wird im Anwenderspeicher 14 überschrieben („WIEDERHERSTELLUNG"), so dass der Anwenderspeicher 14 korrekte Daten enthält. Die SPS ist nun in der Lage, ihre Operationen fortzusetzen. Der vorstehende Vergleichsvorgang zwischen den beiden Speichern kann auf viele verschiedene Arten ausgeführt werden, wie etwa durch Auslesen der zu vergleichenden Daten, Speichern derselben in einem Arbeitsspeicher (WRAM) 13 und Vergleichen derselben dort.
  • Der ASIC 17 ist auch dazu eingerichtet, die MPU 12 über einen anomalen Zustand zu informieren, wenn ein unverständlicher Code (ausführbar weder durch den ASIC 17 noch durch die MPU 12) während der Ausführung eines Befehls angetroffen wird. Wenn die MPU 12 den Empfang einer solchen Information, beruhend auf der Feststellung eines unverständlichen Codes, bestätigt, wird der Anwenderspeicher 14 korrigiert und der korrigierte Code erneut in den ASIC 17 geschrieben. Als Reaktion liest der ASIC 17 den korrekten Code aus und führt ihn aus. Auf diese Weise kann der Speicher, ohne die SPS anzuhalten, automatisch wiederhergestellt werden.
  • In dem in 2 gezeigten Beispiel ist der Objektbefehlscode an Adresse 3 unverständlich. In diesem Beispiel liest der ASIC 17 die Befehlsobjektcodes sequentiell in der Reihenfolge ihrer Adressen aus, analysiert die Inhalte ihrer Befehle und führt diese aus. Anders ausgedrückt, wird der auf dem an Adresse 1 gespeicherten Befehlsobjektcode beruhende Befehl zuerst ausgeführt und dann der an Adresse 2 gespeicherte Befehlsobjektcode als nächster. Wenn der Befehlsobjektcode an Adresse 2 danach ausgelesen wird, um ihn auszuführen, wird er jedoch als unverständlich befunden, weshalb die Anomalie der MPU 12 mitgeteilt wird, ohne diesen Befehl auszuführen.
  • Wenn diese Mitteilung empfangen wird, korrigiert die MPU 12 den Inhalt von Adresse 3 des Anwenderspeichers 14 mit demjenigen der entsprechenden Adresse 3 des Sicherungsspeichers 15 und bewirkt, dass der ASIC 17 den Befehlsobjektcode in Adresse 3 erneut ausliest. Als Reaktion führt der ASIC 17 den korrigierten Befehl aus Adresse 3 aus. Danach wird der Befehlsobjektcode an Adresse 4 wie üblich ausgelesen und sein Befehl ausgeführt. Auf diese Weise kann jedes Mal, wenn eine Anomalie während der Abarbeitung des Anwenderprogramms festgestellt wird, der Inhalt des Anwenderprogramms ohne Anhalten der SPS automatisch wiederhergestellt und die Ausführung mit einem korrekten Inhalt wieder aufgenommen werden.
  • Als nächstes werden Einzelheiten von den oben beschriebenen Vorgängen zur Feststellung einer Anomalie und automatischen Korrektur des Speichers erläutert. Zunächst ist daran zu erinnern, dass die SPS dazu eingerichtet ist, einen gemeinsamen Prozess, einen Berechnungsprozess (d.h. die Ausführung des Anwenderprogramms), einen E/A-Aktualisierungsprozess und die peripheren Dienstprozesse wiederholt in einer zyklischen Weise auszuführen. Der vorgenannte Prozess zur Überprüfung einer anomalen Situation wird also in einer zyklischen Weise durchgeführt. Es gibt ein Verfahren zur Prüfung der Gesamtheit des Anwenderprogramms aus dem Anwenderspeicher 14 in einem Zyklus und ein weiteres Verfahren, dies in Teilen über mehrere Zyklen hinweg zu tun.
  • Wenn die Prüfung in Teilen über mehrere Zyklen hinweg erfolgt, wird das Anwenderprogramm im Anwenderspeicher 14 in mehrere (N) Blöcke unterteilt, wobei jeder Block in einem Zyklus geprüft wird, so dass das Prüfen des gesamten Anwenderprogramms in N Zyklen abgeschlossen sein wird. Wenn ein anomaler Zustand in einem der Blöcke festgestellt wird, wird nur der Block, der in diesem Zyklus gerade geprüft wird, automatisch wiederhergestellt. Die von der MPU in diesem Fall durchgeführten Operationen werden durch das Flussdiagramm der 3 wiedergegeben.
  • Unter Bezug auf 3 wird eine Speicherprüfung für einen Einblockabschnitt des Anwenderprogramms des in mehrere Teile unterteilten Anwenderprogramms 14 durch Vergleichen des Anwenderspeichers 14 und des Sicherungsspeichers 15 durchgeführt (Schritt ST1). Wenn eine Nichtübereinstimmung nicht vorhanden ist (NEIN in Schritt ST2), wird die Situation als normal betrachtet. Wenn eine Nichtübereinstimmung festgestellt wird (JA in Schritt ST2), wird geschlossen, dass der Speicher zerstört ist, und der nicht übereinstimmende Abschnitt innerhalb des gerade verarbeiteten Blocks wird automatisch wiederhergestellt (Schritt ST3). Da es vernünftig ist, aus der Stabilität von Speichern darauf zu schließen, dass die Übereinstimmung wegen zerstörter Daten auf Seiten des Anwenderspeichers 14 bewirkt wurde, wird das entsprechende Datenelement aus dem Sicherungs speicher 15 ausgelesen und in den Anwenderspeicher 14 geschrieben.
  • Das soll jedoch die Erfindung nicht einschränken. Es ist bevorzugt, zu Anfang eine Summenwertprüfung auf dem Anwenderprogramm in dem Sicherungsspeicher 15 auszuführen, um sicherzustellen, dass die Inhalte des Sicherungsspeichers 15 korrekt sind, bevor das Datenelement aus ihm in den Anwenderspeicher 14 geschrieben wird. Dies deshalb, weil die Möglichkeit eines Datenfehlers in der den Sicherungsspeicher umfassenden nicht flüchtigen Vorrichtung für den Sicherungsspeicher nicht exakt null ist.
  • Nachdem der anomale Abschnitt so korrigiert worden ist, oder wenn keine Nichtübereinstimmung vorlag, wird die normale zyklische Operation wieder aufgenommen (ST 4), wobei der ASIC 17 sequentiell die Befehlobjektcodes des Anwenderprogramms für den Anwenderspeicher 14 ausliest, die Befehlscodes analysiert und die Befehle ausführt. Darauf folgt die Ausführung des E/A-Aktualisierungsprozesses (Schritt ST 5).
  • Zusammenfassend wird das Programm im Falle einer anomalen Situation nur ausgeführt, nachdem es automatisch auf der Grundlage der im Sicherungsspeicher 15 innerhalb der CPU-Einheit 10 gespeicherten Sicherungsdaten wiederhergestellt worden ist. Es ist also eine kontinuierliche Operation ohne die SPS anzuhalten, wie es herkömmlicherweise erforderlich war, möglich.
  • Es ist unter Bezug auf 3 zu beachten, dass das Vorhandensein und Nichtvorhandensein eines anomalen Zustands während des ganzen Prozesses des Schrittes ST 4 kontinuierlich überwacht werden kann, während das Anwenderprogramm gerade ausgeführt wird, so dass die automatische Wiederherstellung jedes Mal bewirkt werden kann, wenn eine anomale Situation festgestellt wird. Wie oben erläutert, wird jedes Mal, wenn der ASIC 17 eine Befehlscode, der ihm unverständlich ist, ausliest, geschlossen, dass ein anomaler Zustand aufgetreten ist, und diese Tatsache wird mitgeteilt. Auf dieser Grundlage vergleicht die MPU 12 den Anwenderspeicher 14 mit dem Sicherungsspeicher 15, wobei nach Identifizierung einer anomalen Position die Daten an der entsprechenden Position korrigiert werden. Codes die für den ASIC 17 unverständlich sind, werden nicht ausgeführt, und der ASIC 17 führt die Ausführung nur nach erfolgter Korrektur durch, womit der Speicher mit beschädigten Daten ohne Anhalten der SPS automatisch wiederhergestellt wird. Wenn der ASIC 17 einen anomalen Zustand berichtet, lernt die MPU 12 daraus die Adresse des anomalen Zustands kennen und braucht folglich nur die Nachbarschaft dieser Adresse auf Daten der spezifizierten Größe zu prüfen. Die Position der Anomalie lässt sich also schnell feststellen. Einzelheiten dieses Prozesses werden untenstehend beschrieben.
  • In diesem Beispiel wird, wie oben erläutert, das Prüfen der Gesamtheit des Anwenderprogramms nur einmal innerhalb einer Anzahl von Zyklen abgeschlossen, weil nur ein Teil der Anwenderprogrammdaten in jedem Zyklus geprüft wird. Da es nicht der Summenwert ist, der geprüft wird, wie das herkömmlicherweise geschieht, lässt sich die Position der Anomalie jedoch schnell feststellen, weil der diese Position enthaltende Block schnell zu einer Prüfung gelangt. Ferner erfolgt die Speicherwiederherstellung nur an der anomalen Position, und da dies alles automatisch geschieht, kann der Wiederherstellungsvorgang sehr viel rascher abgeschlossen werden, als es früher möglich war.
  • Noch genauer erläutert, benötigt es, wenn das Anwenderprogramm des Anwenderspeichers in N Blöcke unterteilt ist, N Zyklen, um das Prüfen des gesamten Anwenderprogramms abzuschließen, aber es kann, wenn ein anomaler Zustand im n-ten Block (n < N) aufgetreten ist, dies nach dem herkömmlichen Verfahren erst nach N Zyklen durch Prüfen des Summenwerts festgestellt werden, und immer noch kann die Position des Auftretens der An omalie nicht identifiziert werden. Es musste also nach der bekannten Technologie das gesamte Anwenderprogramm aktualisiert werden, und dies musste durch Anhalten der SPS erfolgen.
  • Im Gegensatz dazu werden gemäß der Erfindung die Prüfvorgänge in Einheiten von Blöcken, wie in 4 gezeigt, durchgeführt, so dass normale Vorgänge, bis zum (n – 1)-ten Zyklus fortgesetzt werden, da keine Anomalie im Speicher vorliegt. Falls die Nichtübereinstimmung im n-ten Zyklus festgestellt wird, wird der Speicher im n-ten Block automatisch korrigiert und das Anwenderprogramm direkt ausgeführt, ohne die SPS anzuhalten. Zusammenfassend kann der anomale Zustand im n-ten Zyklus (früher als im N-ten Zyklus) festgestellt und automatisch auf den Ursprungszustand hin korrigiert werden, ohne die SPS anzuhalten, was damit das Arbeiten der SPS erlaubt.
  • 3 zeigt zwar ein Beispiel, in dem Schritte ST1–ST5 wiederholt werden, dies soll die Erfindung jedoch nicht einschränken. Das Prüfen des Speichers braucht nicht in jedem Zyklus durchgeführt zu werden, sondern kann in einer spezifizierten Anzahl von Zyklen erfolgen. Ferner kann die herkömmliche Prüfroutine durch Prüfen des Summenwerts unter Anhalten der SPS im Falle einer anomalen Situation enthalten sein. Bei einem solchen Beispiel kann die Einrichtung so getroffen sein, dass eine solche herkömmliche Routine und das oben erläuterte Prüfverfahren gemäß der Erfindung durch Vergleichen der Daten im Anwenderspeicher 14 und im Sicherungsspeicher 15 ausgewählt durchgeführt werden.
  • Als nächstes werden die Speicherprüfroutine und die zugeordnete Routine für die automatische Wiederherstellung in größeren Einzelheiten erläutert. 5 zeigt Schritt ST2 der 3, in dem als erstes der Anwenderspeicher (RAM) 14 und der Sicherungsspeicher (BROM) 15 verglichen werden (Schritt ST11). In diesem Schritt zu vergleichende Daten sind nur ein Abschnitt der Anwen derdaten, beispielsweise von 4 Bytes. Wenn festgestellt wird, dass sie übereinstimmen (JA in Schritt ST12) wird die Routine direkt beendet. Wenn festgestellt wird, dass sie nicht übereinstimmen (NEIN in Schritt ST12), werden Daten aus dem Sicherungsspeicher 15 an dem entsprechenden Teil, wo die Nichtübereinstimmung gefunden wurde, über die Daten an dem entsprechenden Teil des Anwenderspeichers 14 geschrieben (Schritt ST13). Anders ausgedrückt, erfolgt der Vergleich zwischen entsprechenden Teilen der Daten, weshalb ein Vorhandensein oder Nichtvorhandensein eines anomalen Zustands betreffend die verglichenen Abschnitte festgestellt werden kann.
  • Das ist die Art, auf die die Wiederherstellungsarbeit durchgeführt werden kann. Gemäß dem dargestellten Beispiel der Erfindung werden jedoch Daten aus dem Anwenderspeicher 14 erneut ausgelesen (Schritt ST14), um sie mit dem Inhalt des Sicherungsspeichers (BROM 15) zu vergleichen (Schritt ST15), um so die Wiederherstellungsarbeit zuverlässiger zu machen. Wenn die Operationen in Schritt ST13 richtig durchgeführt worden sind, wird das Ergebnis dieses Vergleichs positiv sein (JA in Schritt ST15) und die Routine beendet. Im Falle eines Einschreibefehlers oder dergleichen, was damit zu einer fehlerhaften Wiederherstellung führt (NEIN in Schritt ST15), wird jedoch Schritt ST13 wiederholt (Schritt St16) und es werden Daten aus dem Anwenderspeicher 14 erneut ausgelesen (Schritt ST17) und mit dem Inhalt des Sicherungsspeichers (BROM) 15 verglichen (Schritt ST18). Wenn das Ergebnis dieses zweiten Vergleichs negativ ist (NEIN in Schritt ST18), besteht eine hohe Wahrscheinlichkeit eines Hardware-Fehlers im Speicher und die Routine wird beendet und die SPS angehalten.
  • Wenn die im Anwenderspeicher (RAM) 14 und im Sicherungsspeicher (BROM) 15 gespeicherten Daten beispielsweise so sind, wie im Kasten der 5 gezeigt, wird die Nichtübereinstimmung in den vierten Datenelementen im Schritt ST13 oder ST16 korrigiert. Wenn der Schritt der Prüfung des Summenwerts des Sicherungsspeichers enthalten sein soll, wird bevorzugt, dass er durchgeführt wird, bevor Schritt ST11 ausgeführt wird.
  • 6 zeigt Schritt ST4 der 3 , in dem die MPU 12 auf eine Mitteilung des ASIC 17 betreffend einen von ihm empfangenen Code, der ihm unverständlich ist, wartet (Schritt ST21). Mit Erhalt dieser Mitteilung und mit dem Sichbewusstwerden des Auftretens einer Anomalie gewinnt die MPU 12 die Adresse, die der ASIC 17 besitzt, und vergleicht den Anwenderspeicher (RAM) 14 mit dem Sicherungsspeicher (BROM) 15 betreffend Daten, die sich in einer spezifizierten Länge in beiden Richtungen von der mitgeteilten Adresse weg erstrecken. Wenn die Position von nicht in Übereinstimmung befindlichen Daten festgestellt wird, wird diese als Anomalieposition identifiziert und die Feststellungsroutine abgeschlossen (Schritte ST22–ST24). In obigem kann die spezifizierte Länge auf die Maximallänge des Befehlscodes eingestellt werden, da das Kennzeichen am Beginn eines jeden Befehlsobjektcodes geändert werden kann.
  • Danach wird der Wiederherstellungsvorgang durch Auslesen der Daten an der anomalen Position aus dem Sicherungsspeicher 15 und Überschreiben des Anwenderspeichers 14 mit diesen durchgeführt (Schritt ST25). Dieser Wiederherstellungsvorgang wird auch vorzugsweise mehr als einmal, wie oben unter Bezug auf 5 erläutert, durchgeführt, um sicherzustellen, dass korrekte Daten richtig eingeschrieben worden sind.
  • Nachdem der Schritt der automatischen Wiederherstellung so abgeschlossen ist, wird die Startadresse des Befehls, die die anomalen Daten enthält, für den ASIC 17 eingestellt (Schritt ST26) . Dies versetzt den ASIC 17 in die Lage, den Befehl auszuführen, der wegen der Feststellung einer Anomalie nicht ausge führt werden konnte und dies geschieht unter dem korrigierten Befehl mit korrekt wiederhergestellten Daten.
  • 7 zeigt die Vorgänge zur Ausführung eines Befehls. Wenn der empfangene Befehl eine korrekte Art (bzw. ein „ASIC-Befehl", ausführbar durch den ASIC 17) ist (JA in ST31), wird der Befehl ausgeführt. Wenn er kein korrekter Befehl ist (nicht ausführbar durch die MPU) (NEIN in Schritt ST31), wird der ASIC 17 angehalten und ein Kennzeichen (MFN-STP-Kennzeichen) eingeschaltet (Schritt ST32).
  • Als nächstes wird bestimmt, ob der Befehl von einer korrekten Art ist oder nicht (Schritt ST33). In dem Fall eines Befehls einer korrekten Art (JA in Schritt ST33) wird seine Befehlsnummer in dem MFN-Register gesetzt (Schritt ST35). Im Falle eines Befehls einer inkorrekten Art (NEIN in Schritt ST33) wird eine „Inkorrektbefehl-Zahl" im MFN-Register gesetzt (Schritt ST36).
  • In der Zwischenzeit überwacht die MPU 12 weiterhin, ob das MFN-STP-Kennzeichen eingeschaltet worden ist oder nicht (Schritt ST37). Wenn das Kennzeichen eingeschaltet worden ist (JA in Schritt ST37), versteht sie, dass der ASIC 17 angehalten hat, und der Befehl wird durch die MPU 12 ausgeführt (Schritt ST38). Anders ausgedrückt, wird, wenn die Bestimmung im Schritt ST33 „korrekter Befehl" war, der Befehl an einer spezifizierten Position ausgeführt, d.h., die im MFN-Register eingestellte Befehlsnummer wird ausgeführt. Im Falle eines inkorrekten Befehls (etwa wenn eine inkorrekte Befehlsnummer im MFN-Register eingestellt ist) wird die automatische Wiederherstellung des Speichers durch Ausführen der Routine gemäß dem Flussdiagramm der 5 durchgeführt. Der ASIC 17 wird danach neu gestartet (Schritt ST39), und die Routine kehrt nach Schritt ST31 zurück und führt das Anwenderprogramm aus.
  • Die Erfindung wurde zwar oben mit einem Beispiel beschrieben, in dem das Anwenderprogramm des Anwenderspeichers 14 und das Anwenderprogramm des Sicherungsspeichers 15 in Teilen und über eine Anzahl hinweg verglichen worden ist, dies soll jedoch nicht die Erfindung einschränken. In dem Fall, wo die Gesamtheit des Anwenderprogramms des Anwenderspeichers 14 in einem Zyklus geprüft wird, erfolgt die Prüfung in Schritt STl der 3 über die Gesamtheit des Anwenderprogramms des Anwenderspeichers 14 hinweg. Als ein weiteres Beispiel kann die Einrichtung so getroffen werden, dass der Summenwert des gesamten Anwenderprogramms in einem Zyklus geprüft wird. 8 zeigt ein Beispiel eines solchen Prozesses.
  • In der in 8 gezeigten Routine wird das Anwenderprogramm zuerst ausgeführt (Schritt ST41). Während dieses Berechnungsvorgangs kann, wie oben erläutert, die Codeprüfung durchgeführt werden. Als nächstes wird der Summenwert des gesamten Anwenderprogramms des Anwenderspeichers 14 ausgeführt (Schritt ST42). Wenn eine Anomalie festgestellt wird (NEIN in Schritt ST43), werden die aktuellen E/A-Daten auf dem E/A-Speicher 16 ausgelesen und im Sicherungsspeicher gespeichert (gesetzt beispielsweise auf dem WRAM 13) (Schritt ST44), wonach der E/A-Aktualisierungsvorgang ausgeführt wird (Schritt ST47).
  • Wenn eine anomale Situation festgestellt wird (JA in Schritt ST43), wird eine automatische Speicherwiederherstellung des gesamten Anwenderprogramms auf dem Anwenderspeicher 14 ausgeführt (Schritt ST14). Genauer erläutert, kann dies erfolgen, indem die MPU 12 oder der ASIC 17 die Anwenderprogramme des Anwenderspeichers 14 und des Sicherungsspeichers 15 vergleicht, und, wenn eine Nichtübereinstimmungsposition festgestellt wird, die Daten an der Nichtübereinstimmungsposition auf dem Anwenderspeicher 14 durch die entsprechenden Daten auf dem Sicherungsspeicher 15 ersetzt. Als weiteres Beispiel kann dies erfolgen, indem das im Sicherungsspeicher 15 gespeicherte Anwenderprogramm ausgelesen und in den Anwenderprogrammspeicher 14 geschrieben wird, um da mit das gesamte Anwenderprogramm umzuschreiben. Da die anomale Position nach dem Verfahren mit Prüfung des Summenwerts nicht identifiziert werden kann, wird nach diesem Verfahren das gesamte Anwenderprogramm wiederhergestellt.
  • Als nächstes wird eine Wiederherstellung der E/A-Daten durchgeführt (Schritt ST46), indem die vorher im Sicherungsspeicher 15 gespeicherten E/A-Daten ausgelesen und in den E/A-Speicher 16 geschrieben werden. Danach wird der E/A-Aktualisierungsprozess ausgeführt (Schritt ST47).
  • Neben den E/A-Daten können die anderen Daten auf dem E/A-Speicher (wie etwa die Daten, die nicht Gegenstand des E/A-Aktualisierungsprozesses sind, wie etwa Parameter) zwischengespeichert und wiederhergestellt werden.
  • 9 zeigt ein Beispiel einer tatsächlichen Routine zur Prüfung des gesamten Anwenderprogramms in einem Zyklus. Nachdem das Anwenderprogramm ausgeführt ist, wird das gesamte Anwenderprogramm des Anwenderspeichers 14 geprüft, und, wenn keine Anomalie vorliegt, der E/A-Aktualisierungsvorgang ausgeführt, nachdem die E/A gespeichert sind. Wenn eine anomale Situation festgestellt wird, werden eine Wiederherstellung des Anwenderprogrammspeichers 14 und eine Wiederherstellung des E/A-Speichers auf der Grundlage der E/A-Daten ausgeführt.
  • In Obigem war es das Anwenderprogramm, das geprüft wurde, wie etwa, wenn das Anwenderprogramm des Anwenderspeichers 14 und dasjenige des Sicherungsspeichers 15 verglichen wurden, es ist aber bevorzugt, eingestellte Werte, wie etwa die im E/A-Speicher 16 gespeicherten Parameter auf dem Sicherungsspeicher 15 zu speichern und, wenn eine Speicherprüfung erfolgt, auch den E/A-Speicher 16 zu prüfen, um das Vorhandensein oder Nichtvorhandensein zerstörter Daten (Anomalie im Speicher) festzustellen und eine automatische Wiederherstellung des Speichers durchzuführen, wenn ein anomaler Zustand festgestellt wird.
  • Der Vergleich zwischen dem Anwenderprogramm des Anwenderspeichers 14 und dem Anwenderprogramm des Sicherungsspeichers 15 wird, wie oben erwähnt, durch Vergleichen der Daten in diesen Programmen, wo sie gespeichert sind, durchgeführt. Wenn das Anwenderprogramm im Anwenderspeicher 14 und im Sicherungsspeicher 15 gespeichert ist, können die berechneten Größen der Bereiche zu ihrer Speicherung auch gespeichert werden, und so, dass die Daten zu diesen Bereichsgrößen verglichen werden können. In diesem Fall kann der Sicherungsspeicher 15 ein Speicher sein, der bereits in der Einheit enthalten ist, oder ein lösbarer Speicher, wie etwa eine Speicherkarte.
  • Wie oben erläutert, kann eine Zerstörung von Daten im Speicher schnell und genau festgestellt werden und, wenn sie festgestellt wird, der Speicher gemäß dieser Erfindung automatisch wiederhergestellt werden, während das Arbeiten der SPS fortgesetzt wird.
  • Als weiteres Beispiel können zwei (erstes und zweites) Benutzerprogramme, die dem gleichen Objektcode entsprechen, in unterschiedlichen Bereichen innerhalb des Anwenderspeichers 14 gespeichert werden. In einem solchen Fall liest, wenn die SPS mit der Ausführung des Programms beginnt, der ASIC 17 die zwei Programme in Einheiten von Befehlen aus und vergleicht sie. Im Falle einer Übereinstimmung wird der Befehl ausgeführt. Im Falle einer Nichtübereinstimmung berichtet der ASIC 17 der MPU 12 über die Anomalie. Mit Erhalt dieses Berichts stellt die MPU 12 das Anwenderprogramm wieder her, indem sie die inkorrekten Daten in den beiden Anwenderprogrammen unter Verwendung der Daten an der Adresse des Sicherungsspeichers 15, die der Adresse entspricht, an der die Nichtübereinstimmung aufgefunden wurde, umschreibt. Nach Wiederherstellung des Anwenderprogramms gestattet die MPU 12 dem ASIC 17 seinen Vergleichsvorgang wieder aufzunehmen. Dieser Vorgang des ASIC 17 und der MPU 12 wird vom Anfang bis zum Ende des Anwenderprogramms fortgesetzt. Ein solcher Vorgang ermöglicht es, ein Programm über den Objektcode ohne inkorrekte Daten auszuführen.
  • Hinsichtlich des oben beschriebenen Beispiels brauchen die beiden (erstes und zweites) Anwenderprogramme nicht beide auf dem Anwenderspeicher 14 gespeichert zu werden. Sie können auf getrennten Speichern, auf die der ASIC 17 zugreifen kann, gespeichert sein.
  • Als weiteres Beispiel kann die SPS-Einheit so eingerichtet sein, dass sie unterschiedliche Operationsmoden, abhängig davon, ob die vorgenannte Funktion der automatischen Wiederherstellung einer Anzahl von Speichern. Normalerweise ist eine Einheit für eine SPS mit einem Speicher zur Einstellung ihrer Operationen versehen. Gemäß diesem Beispiel ist ein neuer Bereich am Speicher zur Spezifizierung von Operationsmoden zur Durchführung und Nichtdurchführung der automatischen Wiederherstellung vorgesehen. Wenn der Modus zur Durchführung der automatischen Speicherwiederherstellung, kann der Anwender spezifizieren, welche der Anzahl der automatischen Speicherwiederherstellungsfunktionen durchzuführen ist. Der Anwender der SPS-Einheit kann ein geeignetes Werkzeug verwenden, bevor er die Einheit betätigt, um spezifizierte Daten in diesem Speicherbereich zu setzen, um anzugeben, ob die automatische Speicherwiederherstellungsfunktion zu verwenden ist oder nicht, und, wenn sie zu verwenden ist, welche der automatische Wiederherstellungsfunktionen zu verwenden ist.
  • Die SPS-Einheit prüft den Bereich vor der Ausführung des Anwenderprogramms, um den vom Anwender spezifizierten Operationsmodus zur automatischen Speicherwiederherstellung zu ermitteln. Wenn ermittelt worden ist, dass der Anwender den Modus, der die Funktion zur automatischen Speicherwiederherstellung nicht verwendet, spezifiziert hat, und eine anomale Situation während seines Arbeitens angetroffen wird, wird das Auftreten der anoma len Situation berichtet, und ihr die Arbeiten angehalten, ohne ihre automatische Speicherwiederherstellungsfunktion auszuführen. Wenn ermittelt wird, dass der Anwender den Modus zur Verwendung der Funktion für eine automatische Speicherwiederherstellung spezifiziert hat, und eine anomale Situation während ihres Arbeitens angetroffen wird, übernimmt sie es, die spezifizierten automatischen Speicherwiederherstellungsoperationen durchzuführen. Einzelheiten, wie die automatische Speicherwiederherstellung ausgeführt wird, werden weggelassen, da die oben beschriebenen Verfahren angewendet werden können.
  • Betreffend das Obige braucht die Spezifikation des Modus zur Ausführung der automatischen Speicherwiederherstellung nicht durch Setzen bestimmter Daten in einem spezifizierten Speicherbereich innerhalb dieser SPS-Einheit vorgesehen sein. Alternativ kann dies erfolgen, indem ein speziell vorgesehener Befehl zur Spezifizierung des Modus für die automatische Speicherwiederherstellung am Beginn des Anwenderprogramms angeordnet wird, so dass der Befehl ausgeführt werden kann, den Operationsmodus auszuwählen. Bei einer so eingerichteten SPS-Einheit kann bewirkt werden, dass sie die Operationen der automatische Speicherwiederherstellung nur ausführt, wenn das System eine Verlängerung der Zeit für einen Zyklus, der mit dieser Operation für die automatische Speicherwiederherstellung einhergeht, gestattet, aber nicht im Falle eines Systems, das eine solche Zeitverlängerung nicht gestattet. Anders ausgedrückt, ist eine so eingerichtete SPS-Einheit sowohl für Systeme, die eine solche Zeitverlängerung für einen Zyklus, die mit der Ausführung der automatischen Speicherwiederherstellung einhergeht, zulassen, als auch für Systeme, die eine solche Zeitverlängerung nicht zulassen, verwendbar.

Claims (12)

  1. Einheit für eine programmierbare Steuerung, welche eine zyklische Operation, darin eingeschlossen gemeinsame, Berechnungs-, E/A-Aktualisierungs- und periphere Dienstprozesse, ausführt, wobei die Einheit aufweist: einen Anwenderprogrammspeicher, welcher ein Anwenderprogramm speichert, das zur Durchführung des Berechnungsprozesses auszulesen ist; einen Sicherungsspeicher, der Daten mit dem gleichen Inhalt wie das im Anwenderprogrammspeicher gespeicherte Anwenderprogramm speichert, einen Anomaliedetektor zur Feststellung einer Speicheranomalie in dem in dem Anwenderprogrammspeicher gespeicherten Anwenderprogramm, während die zyklische Operation ausgeführt wird; und eine Wiederherstellungsvorrichtung zur Wiederherstellung, wenn der Anomaliedetektor eine Anomalie festgestellt hat, eines Datenabschnitts, wo die Anomalie mit dem Anomaliedetektor festgestellt worden ist, mit einem entsprechenden Datenabschnitt aus dem Sicherungsspeicher; wobei die zyklische Operation fortgesetzt wird, nachdem der Datenabschnitt wiederhergestellt worden ist.
  2. Einheit nach Anspruch 1, wobei der Anomaliedetektor zur Durchführung eines Vergleichs zwischen dem Inhalt des Sicherungsspeichers und des Anwenderprogrammspeichers zu einer spezifizierten Zeit und zur Feststellung einer Anomalie, wenn nach dem Vergleich eine Nichtübereinstimmung vorhanden ist, dient.
  3. Einheit nach Anspruch 1, wobei der Berechnungsvorgang mit einem ASIC durchgeführt wird, welcher sequentiell Objektcodes, die das in dem Anwenderprogrammspeicher gespeicherte Anwenderprogramm umfassen, durchführt, und der Anomaliedetektor zur Feststellung einer Anomalie dient, wenn die mit dem ASIC ausgelesenen Objektcodes und vorab spezifizierte Objektcodes nicht übereinstimmen.
  4. Einheit nach Anspruch 3, wobei der ASIC so eingerichtet ist, dass er identifiziert, wenn mit dem ASIC ausgelesene Objektcodes und vorab spezifizierte Objektcodes nicht übereinstimmen, und die Position identifiziert, wo die Anomalie aufgetreten ist, indem er Inhalte des Sicherungsspeichers und des Anwenderprogrammspeichers beruhend auf Adressendaten darüber, wo die Objektcodes gespeichert sind, vergleicht.
  5. Einheit nach Anspruch 1, wobei der Anomaliedetektor eingerichtet ist, dass er das gesamte Anwenderprogramm des Anwenderprogrammspeichers in einem Zyklus prüft, die Daten in einem spezifizierten Bereich des E/A-Speichers, der die E/A-Daten speichert, zwischenspeichert, wenn keine Anomalie vorliegt, und das Anwenderprogramm repariert und den E/A-Speicher beruhend auf den zwischengespeicherten E/A-Daten wiederherstellt, wenn eine Anomalie festgestellt worden ist.
  6. Einheit nach Anspruch 1, welche so eingerichtet ist, dass sie ausgewählt in einem ersten Operationsmodus oder einem zweiten Operationsmodus arbeitet, wobei eine Benutzung der Wiederherstellungsvorrichtung zugelassen ist, wenn der erste Operationsmodus eingestellt ist, wobei die zyklische Operation angehalten wird, und wobei die Wiederherstellungsvorrichtung nicht verwendet wird, wenn der Anomaliedetektor eine Speicheranomalie feststellt, während der zweite Operationsmodus eingestellt ist.
  7. Verfahren zur automatischen Wiederherstellung eines Speichers einer Einheit für eine programmierbare Steuerung, welche eine zyklische Operation, darin eingeschlossen gemeinsame, Berechnungs-, E/A-Aktualisierungs- und periphere Dienstprozesse, ausführt, wobei das Verfahren folgende Schritte aufweist: Vorsehen der Einheit mit einem Anwenderprogrammspeicher, welcher ein Anwenderprogramm speichert, das zur Durchführung des Berechnungsprozesses auszulesen ist, und einem Sicherungsspeicher, welcher Daten mit dem gleichen Inhalt wie das in dem Anwenderprogrammspeicher gespeicherte Anwenderprogramm speichert; Durchführen eines Anomaliefeststellungsprozesses, um damit eine Speicheranomalie in dem in dem Anwenderprogrammspeicher gespeicherten Anwenderprogramm festzustellen, während die zyklische Operation ausgeführt wird; Auslesen aus dem Sicherungsspeicher, wenn eine Speicheranomalie durch Durchführen des Anomaliefeststellungsprozesses festgestellt wird, eines Datenabschnitts, der inkorrekten Daten entspricht, an der festgestellten Speicheranomalie und Schreiben des Datenabschnitts in den Anwenderprogrammspeicher, um damit die inkorrekten Daten zu korrigieren und den Speicher wiederherzustellen; und Fortsetzen der Durchführung der zyklischen Operation, nachdem die inkorrekten Daten korrigiert sind.
  8. Verfahren nach Anspruch 7, wobei der Anomaliefeststellungsprozess die Schritte des Durchführens eines Vergleichs zwischen Inhalten des Sicherungsspeichers und des Anwenderprogrammspeichers zu einer bestimmten Zeit und des Feststellens der Speicheranomalie, wenn nach dem Vergleich eine Nichtübereinstimmung vorliegt, enthält.
  9. Verfahren nach Anspruch 7, wobei der Berechnungsprozess durch einen ASIC ausgeführt wird, welcher sequentiell Objektcodes des in dem Anwenderprogrammspeicher gespeicherten Anwenderprogramms ausliest, und der Anomaliefeststellungsprozess die folgenden Schritte enthält: Bestimmen, ob die mit dem ASIC ausgelesenen Objektcodes die gleichen wie vorab spezifizierte Objektcodes sind; und Feststellen der Speicheranomalie, wenn die durch den ASIC ausgelesenen Objektcodes nicht die gleichen wie die vorab spezifizierten Objektcodes sind.
  10. Verfahren nach Anspruch 9, welches ferner die folgenden Schritten aufweist: Identifizieren durch den ASIC, wenn eine Anomalie mit dem Anomaliefeststellungsprozess festgestellt worden ist, der Position, wo die Anomalie aufgetreten ist, durch Vergleichen von Inhalten des Sicherungsspeichers und des Anwenderprogrammspeichers, beruhend auf Adressendaten darüber, wo die Objektcodes gespeichert sind; und Wiederherstellen des Anwenderprogrammspeichers durch Wiedergewinnen der Daten an der identifizierten Position aus dem Sicherungsspeicher.
  11. Verfahren nach Anspruch 7, wobei der Anomaliefeststellungsprozess die Schritte des Prüfens der Gesamtheit des Anwenderprogramms aus dem Anwenderprogrammspeicher innerhalb eines Zyklusses, Zwischenspeicherns der Daten an einem spezifizierten Bereich des E/A-Speichers, der die E/A-Daten speichert, wenn keine Anomalie vorhanden ist, und Reparierens des Anwenderpro gramms und Wiederherstellens des E/A-Speichers, beruhend auf den zwischengespeicherten E/A-Daten, wenn eine Anomalie festgestellt worden ist, aufweist.
  12. Verfahren nach Anspruch 7, wobei der Anwenderprogrammspeicher zwei Anwenderprogramme mit gleichen Inhalten speichert; wobei die zyklische Operation der Berechnung durch das sequentielle Auslesen von Objektcodes aus einem der beiden in dem Anwenderprogrammspeicher gespeicherten Anwenderprogramme durch eine ASIC ausgeführt wird; und wobei der Anomaliefeststellungsprozess die folgenden Schritte aufweist: Vergleichen der Objektcodes der beiden Anwenderprogramme, bevor der ASIC die Objektcodes ausliest und ausgeführt hat; und Feststellen einer Speicheranomalie, wenn eine Nichtübereinstimmung im Schritt des Vergleichens der Objektcodes festgestellt wird.
DE10360957A 2002-12-27 2003-12-23 Programmierbare Steuereinheit und Verfahren zur automatischen Speicherwiederherstellung Expired - Fee Related DE10360957B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2002-382444 2002-12-27
JP2002/382444 2002-12-27
JP2002382444 2002-12-27
JP2003421589A JP3961478B2 (ja) 2002-12-27 2003-12-18 プログラマブルコントローラ用ユニット及びメモリ自動復旧方法

Publications (2)

Publication Number Publication Date
DE10360957A1 true DE10360957A1 (de) 2004-08-05
DE10360957B4 DE10360957B4 (de) 2007-10-11

Family

ID=32911367

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10360957A Expired - Fee Related DE10360957B4 (de) 2002-12-27 2003-12-23 Programmierbare Steuereinheit und Verfahren zur automatischen Speicherwiederherstellung

Country Status (4)

Country Link
US (1) US7243260B2 (de)
JP (1) JP3961478B2 (de)
CN (1) CN1280739C (de)
DE (1) DE10360957B4 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106927211A (zh) * 2015-12-28 2017-07-07 株式会社大福 物品输送设备
WO2017157528A1 (de) * 2016-03-17 2017-09-21 Sew-Eurodrive Gmbh & Co. Kg Elektrogerät, insbesondere wechselrichter oder umrichter, und verfahren zum betreiben eines elektrogeräts

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3964841B2 (ja) * 2003-08-29 2007-08-22 株式会社東芝 半導体集積回路装置
US7882388B2 (en) * 2008-08-21 2011-02-01 Sierra Wireless America, Inc. Dual independent non volatile memory systems
JP5365875B2 (ja) * 2009-03-12 2013-12-11 オムロン株式会社 産業用コントローラ
US8151139B1 (en) * 2009-03-27 2012-04-03 Symantec Corporation Preventing data loss from restore overwrites
JP2012003644A (ja) * 2010-06-21 2012-01-05 Fujitsu Ltd メモリエラー箇所検出装置、及びメモリエラー箇所検出方法。
JP2014174812A (ja) * 2013-03-11 2014-09-22 Ricoh Co Ltd 集積回路、画像処理装置、方法およびプログラム
DE202013104690U1 (de) * 2013-10-17 2013-11-29 MB connect line GmbH Fernwartungssysteme Sicherungssystem zum Verbessern der Sicherheit informationstechnischer Steuerungsanlagen
CN104778091B (zh) * 2015-04-03 2017-11-10 北京奇虎科技有限公司 应用程序的运行方法及装置
JP6728841B2 (ja) * 2016-03-24 2020-07-22 カシオ計算機株式会社 通信機器、情報表示装置、通信方法、情報表示方法、及びプログラム
JP6812737B2 (ja) * 2016-10-07 2021-01-13 オムロン株式会社 演算装置および制御装置
CN107589734A (zh) * 2017-08-24 2018-01-16 固安华电天仁控制设备有限公司 一种风电变桨控制器io卡件测试方法
JP7099050B2 (ja) 2018-05-29 2022-07-12 セイコーエプソン株式会社 回路装置、電子機器及び移動体
JP6727472B1 (ja) * 2019-07-26 2020-07-22 三菱電機株式会社 プログラマブルロジックコントローラ、設定ツール、及びプログラム
CN113064757B (zh) * 2021-03-26 2023-02-28 山东英信计算机技术有限公司 一种服务器固件自恢复系统及服务器
CN113993100A (zh) * 2021-10-20 2022-01-28 广州小鹏汽车科技有限公司 车辆报警方法、装置、车辆及存储介质
CN114091037B (zh) * 2021-11-24 2024-10-25 中控技术股份有限公司 一种控制系统中的系统数据的防护方法及相关装置
CN114415941B (zh) * 2021-12-20 2024-07-23 深圳市联洲国际技术有限公司 存储信息的处理方法、存储系统及存储设备
CN114737321A (zh) * 2022-05-18 2022-07-12 浙江众邦机电科技有限公司 一种避免控制器异常掉电导致缝纫机使用参数丢失的方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4819154A (en) * 1982-12-09 1989-04-04 Sequoia Systems, Inc. Memory back up system with one cache memory and two physically separated main memories
JP2608593B2 (ja) 1988-08-26 1997-05-07 ファナック株式会社 故障診断方法
JPH0566936A (ja) * 1991-09-06 1993-03-19 Casio Comput Co Ltd データ処理装置
JPH0887429A (ja) 1994-09-19 1996-04-02 Fuji Electric Co Ltd プログラマブルコントローラ
JPH0981381A (ja) * 1995-09-11 1997-03-28 Nec Corp オブジェクトプログラム比較方式
JP3357777B2 (ja) * 1996-01-26 2002-12-16 株式会社東芝 プログラム制御システム
EP0825530A3 (de) * 1996-06-20 2004-06-02 Sharp Kabushiki Kaisha Rechnergerät mit elektrischem wiederschreibbarem nichtflüchtigem Speicher und nichtflüchtiger Halbleiterspeicher
JPH11143784A (ja) * 1997-11-12 1999-05-28 Omron Corp プログラマブルコントローラ用表示装置
JP2000030483A (ja) * 1998-07-15 2000-01-28 Mitsubishi Electric Corp 大規模メモリ用bist回路
US6367042B1 (en) * 1998-12-11 2002-04-02 Lsi Logic Corporation Testing methodology for embedded memories using built-in self repair and identification circuitry
US6651202B1 (en) * 1999-01-26 2003-11-18 Lsi Logic Corporation Built-in self repair circuitry utilizing permanent record of defects
JP3876959B2 (ja) 2000-01-25 2007-02-07 オムロン株式会社 シーケンスプログラムのシミュレーション装置
US6651138B2 (en) * 2000-01-27 2003-11-18 Hewlett-Packard Development Company, L.P. Hot-plug memory catridge power control logic
JP3548780B2 (ja) 2001-03-30 2004-07-28 オムロン株式会社 プログラマブルコントローラ及びその制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106927211A (zh) * 2015-12-28 2017-07-07 株式会社大福 物品输送设备
WO2017157528A1 (de) * 2016-03-17 2017-09-21 Sew-Eurodrive Gmbh & Co. Kg Elektrogerät, insbesondere wechselrichter oder umrichter, und verfahren zum betreiben eines elektrogeräts

Also Published As

Publication number Publication date
DE10360957B4 (de) 2007-10-11
US7243260B2 (en) 2007-07-10
CN1523509A (zh) 2004-08-25
JP3961478B2 (ja) 2007-08-22
JP2004220580A (ja) 2004-08-05
CN1280739C (zh) 2006-10-18
US20040193948A1 (en) 2004-09-30

Similar Documents

Publication Publication Date Title
DE10360957B4 (de) Programmierbare Steuereinheit und Verfahren zur automatischen Speicherwiederherstellung
EP2318920B1 (de) Steuergerät für ein fahrzeug und verfahren für eine datenaktualisierung für ein steuergerät für ein fahrzeug
DE69815392T2 (de) Systeme und verfahren zur synchronisierung von redundanten steuerungen mit minimaler steuerungsstörung
DE3854087T2 (de) Expertensystem für eine werkzeugmaschine mit numerischer steuerung.
DE69228272T2 (de) Mikrokontroller mit Korrektur von fehlerhafter Information
DE19513939A1 (de) Steuervorrichtung für ein Fahrzeug
EP1110130B1 (de) Steuergerät
DE3501592A1 (de) Verfahren und vorrichtung zur wiederherstellung des normalzustands im bewegungsablauf einer maschine
DE19846070A1 (de) Steuerungsvorrichtung für Kraftfahrzeuge
DE19839680A1 (de) Verfahren und Vorrichtung zur Veränderung des Speicherinhalts von Steuergeräten
DE10330607A1 (de) Einzelchip-Mikrocomputer und Verfahren zu dessen Boot-Region-Schaltern
DE69625718T2 (de) Aufspürung von speicherproblemen in rechnern
DE3200626C2 (de) Verfahren zur Überprüfung, ob ein außer dem Hauptspeicher vorgesehener weiterer Speicher in ein Mikrocomputersystem eingefügt ist
DE2554502B2 (de)
DE3210616A1 (de) Rechner
DE69810744T2 (de) ROM Abbildverarbeitung im Fall einer Stromversorgungsunterbrechung
DE3751493T2 (de) Verteiltes Verarbeitungssystem und -verfahren.
EP1924914B1 (de) Datenverarbeitungssystem und betriebsverfahren dafür
WO2007071590A1 (de) Verfahren zur erkennung einer versorgungsunterbrechung in einem datenspeicher und zur wiederherstellung des datenspeichers
DE19963475A1 (de) Verfahren und Vorrichtung zur Steuerung von Betriebsabläufen in einem Fahrzeug sowie zur Bereitstellung von Daten diesbezüglich
EP0978039A1 (de) Aufdatverfahren
DE102018128315A1 (de) Verfahren, Vorrichtung, Computerprogramm und Computerprogrammprodukt zur Überprüfung eines ersten adaptiven Systemmodells
EP3647801A1 (de) Verfahren zur überprüfung eines fpga-programms
DE10115630C2 (de) Steuerschaltung mit Datensicherung und Verfahren zur Datensicherung
DE69029034T2 (de) Verfahren zur Aktualisierung einer Kontrolldatenbank eines redundanten Prozessors in einem Prozessüberwachungssystem

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, DE

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

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee