DD210775A1 - Verfahren und schaltungsanordnung zur zeitlichen programmueberwachung von mikroprozessorgesteuerten einrichtungen - Google Patents
Verfahren und schaltungsanordnung zur zeitlichen programmueberwachung von mikroprozessorgesteuerten einrichtungen Download PDFInfo
- Publication number
- DD210775A1 DD210775A1 DD24386682A DD24386682A DD210775A1 DD 210775 A1 DD210775 A1 DD 210775A1 DD 24386682 A DD24386682 A DD 24386682A DD 24386682 A DD24386682 A DD 24386682A DD 210775 A1 DD210775 A1 DD 210775A1
- Authority
- DD
- German Democratic Republic
- Prior art keywords
- timer
- reset
- microprocessor
- program
- input
- Prior art date
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Die Erfindung betrifft Verfahren und Schaltungsanordnung zur Ueberwachung von Programmablaeufen bei Systemen mit Mikroprozessoren auf Ueberschreitung einer maximalen Taktzahl oder Zeit. Ziel der Erfindung ist es, derartige Mikroprozessorsysteme stoersicher zu machen und damit fuer den Einsatz unter Industriebedingungen auszuruesten. Erfindungsgemaess wird ein Zeitglied durch Kontrollimpulse an sich wiederholenden Programmstellen rueckgesetzt. Wird der normale Programmablauf aufgrund von Stoerungen verlassen, so erreicht das Zeitglied die Endlage und loest einen Interrupt hoechster Prioritaet aus, wobei innerhalb der Interruptroutine der Test auf systematische Fehler oder stochastische Stoerungen durchgefuehrt wird. Bei stochastischen Stoerungen erfolgt zeitverzoegert ein Hardware-Reset und damit die Synchronisation, waehrend bei Systemfehlern eine Fehlerausgabeschleife den sicheren Zustand initiiert.
Description
-ή-
Titel der Erfindung:
Verfahren und Schaltungsanordnung aur zeitlichen ProgrammUberwachung von mikroprozessorgesteuerten Einrichtungen
Die Erfindung betrifft ein Verfahren zur Überwachung von Programmabläufen bei Systemen mit Mikroprozessoren auf Überschreitung einer maximalen Taktzahl oder Zeit in Unterprogrammen und die zur Realisierung des Verfahrens vorgeschlagene Schaltungsanordnung· Der Einsatz derartiger Schaltungsanordnungen und Verfahren erfolgt in industriellen Automatisierungsanlagen, bei denen kleinere Mikroprozessorsysteme in stark störverseuchter Umgebung zur Anwendung kommen·
Aber auch für größere Mikroprozessorsysteme für die Industrieautomation ist das erfindungsgemäße Verfahren anwendbar.
Charakteristik der bekannten technischen Lösungen:
Aus DE-OS 2946081 ist bekannt, daß die überwachung der Funktion eines Mikroprozessors dadurch erfolgt, indem bei jedem Programmdurchlauf ein Kontrollimpuls vom Mikroprozessor einen Zähler rücksetzt« Bei gestörtem . Programmablauf und damit Ausbleiben des Kontrollimpulses erreicht der Zähler einen unzulässigen Zählerstand, der durch eine Auswerteschaltung zur Erzeugung eines Restart-Signals für den Mikroprozessor benutzt
η i. η
wird. Nachteil dieser Anordnung ist es, daß selbst bei systematischen Störungen, z* B. Systemdefekt oder stark störverseuchter Umgebung, ständig das Restart-Signal für den Mikroprozessor kommt und damit zyklisch eine normale Funktion vorgetäuscht wird, ohne daß das System in einen sicheren Betriebszustand übergeht· Ebenfalls aus DB-OS 2903638 ist eine Lösung zur Überwachung der Laufzeit eines MikrorechnerProgramms bekannt. Hierbei wird eine zu jedem Zeitpunkt durch den Kontrollimpuls des Mikroprozessors setabare monostabile Kippstufe (sogenanntes retriggerbares Monoflop) ständig im gesetzten Zustand gehalten· Bleibt der Kontrollimpuls aufgrund eines gestörten Programmablaufes aus, so ist das Monoflop nach Ablauf der ; Haltezeit rückgesetzt und löst damit ein Restart-Signal für den Mikroprozessor aus· Wahlweise kann auch ein Interrupt durch die Überwachungsschaltung ausgelöst werden· Die Schaltungsanordnung unterscheidet zwischen einmaligem oder mehrmaligen Ausfall des Kontrollimpulses innerhalb der größeren Standzeit eines zweiten Monoflops» Nachteil dieser Anordnung ist es, daß die Häufigkeit pro Zeiteinheit der zugelassenen Störungen von einer Hardware-Schaltungsanordnung (zweites Monoflop) und nicht von einer leicht änderbaren Software-Zeitkonstante bzw. -Fehlerzahl abhängt· Damit wäre bei Anpassung an unterschiedliche Prozesse eine Änderung der Zeitkonstante des zweiten Monoflops durch Schaltungsänderung erforderlich· Bei dieser Schaltungsanordnung ist keine Auslösung von Interrupt und Restart nacheinander möglich· Damit kann bei Fehlerdiagnose innerhalb der Interruptroutine in Abhängigkeit von der Art und Priorität des Fehlers gegebenenfalls kein hardwaremäßiger Restart ausgelöst werden, wodurch auch alle Peripheriebausteine in den Anfangszustand zurückgesetzt würden·
Ziel der Erfindung ist die zeitliche Programmüberwachung auf Einhaltung einer maximalen Anzahl von Systemtakten, die von einem Vorteiler (Zeitgeber) mit beliebigem Tastverhältnis abgenommen werden können, bzw, auf Einhaltung einer maximalen Laufzeit, wobei jeder Programmdurchlauf einen Kontrollimpuls zum Rücksetzen der Laufzeitüberwachung erzeugte
Das Anliegen des erfindungsgemäßen Verfahrens besteht darin, eine Unterscheidbarkeit zwischen nicht systembedingten Störungen und häufiger auftretenden Störungen bzw. Systemdefekten zu ermöglichen und damit derartig ausgerüstete Mikroprozessorsysteme speziell für den Einsatz unter kritischen Industriebedingungen hinsichtlich der Störsicherheit anzupassen»
Darlegung des Wesens der Erfindung
Um eine einwandfreie Funktion eines Mikroprozessorsystems zu gewährleisten, ist es erforderlich, zwischen stochastischen Störimpulsen und Systemfehlern zu unterscheiden· Dabei muß das Programm bei zufälligen Störungen
z. B. über ein Restart-Signal wieder neu synchronisiert werden, während bei systembedingten Programmablaufstörungen ein Fehlermeldesignal als Dauersignal an eine übergeordnete Steuerung weitergegeben wird» Je nach System kann diese Steuerung dann einen gefahrlosen Zustand erzwingen« Außerdem erscheint es sinnvoll, im Rahmen eines Interruptprogramms, welches im Fehlerfall aufgerufen wird, den Fehlerort und die Art des aufge-• tretenen Fehlers zu ermitteln· Erfindungsgemäß werden von einem Zeitglied (Zeitgeberschaltkreis) Impulse gezählt, welche vom Systemtakt des Mikroprozessorsystems abgeleitet werden und damit exakt reproduzierbare Werte für die ProgrammdurchlaufZeitüberwachung liefern, wobei das Zeitglied bei Erreichen eines wählbaren Zählerendwertes eine Programmunterbrechung über einen Interrupt höchster Priorität auslöst und eine 2· Zeitstufe star-
tet, wenn nicht vorher das Zeitglied von einem vom Mikroprozessor ausgesandten Kontrollimpuls rückgesetzt wurde. Bei korrektem Programmablauf wird das Zeitglied immer vor Erreichen des Zählerendwertes rückgesetzt«, Liegt eine Störung des Programmdurchlaufes vor, so wird innerhalb der vom Zeitglied ausgelösten Programmunterbrechungsroutine die Störungsart diagnostiziert· Bei erkannten Systemdefekten bzw«, häufig auftretenden Störungen , die eine normale Arbeitsweise nicht mehr zulassen, besteht die Möglichkeit, die 2· Zeitstufe noch vor Ablauf ihrer Haltezeit durch einen Kontrollimpuls rückzusetzen, so daß ein Programmneustart verhindert wird und der Mikroprozessor innerhalb einer Fehlermeldelind -anzeigeschleife arbeitet. Zur Erzeugung der Mindestdauer der Impulse für das Zeitglied werden die zu kurzen, vom Takt des Mikroprozessors abgeleiteten, Impulse mittels eines Torteilers in eine Rechteckspannung der halben Frequenz und mit einem tastverhältnis 1 s 1 umgeformt· Der ebenfalls zu kurze Kontrollimpuls zum Rücksetzen des Zeitgliedes wird von einem RS-KLip-Flop bis zum nächsten Taktimpuls abgespeichert und kann damit auf die erforderliche Impulsdauer gebracht werden·' Bei Ausnutzung des internen Oszillators des Zeitgeberschal tkreises als Taktgenerator kann mittels externer RC-Beschaltung ein in weiten Grenzen wählbarer Takt erzeugt werden» der unabhängig vom Mikroprozessorsystemtakt ist β Das Zählvolumen des Zeitgliedes kann durch hardwaremäßige Auswahl des Ausganges des Zeitgliedes und Vorgabe der entsprechenden Zählimpulse oder mittels externer RC°»Beschaltang am Oszillator des Zeitgeberschaltkreises in weiten Grenzen an die zu überwachende Progransmdurchlaufzeit und damit die Wiöderholrate des Kontrollimpulses angepaßt werden« Zur Vorgabe der Zeit von der Programmunterbrechung bis zum Heustart des Programms dient die 2* Zeitstufe, die weitgehend auf der Schaltungsanordnung zum Starten des Prozessors bei Zuschalten der Versorgungsspannung beruht·
Figur 1 zeigt das Ausführungsbeispiel der Schaltungsanordnung zur Programmüberwachung von mikroprozessorgesteuerten Einrichtungen·
Aus einer bestimmten Anzahl von Systemtakten werden von einem Vorteiler Impulse T gebildet, die anschließend ein Teiler 1 im Verhältnis 2 : 1 teilt und dabei die Impulsfolge, auf das Tastverhältnis 1 : 1 bringend, auf den Eingang E des 1. Zeitgliedes 3 legt· Die Impulslänge ist ausreichend, um von dem Zeitglied 3 bis zum Erreichen eines Endwertes des Zählerstandes addiert zu werden* Der Endwert wird durch Auswahl des entsprechenden Teilerausganges A mittels Wahlschalter S festgelegt· Der Takt T und Vorteiler 1 können durch ein RC-Glied ersetzt werden, das an die Anschlüsse E und i1 des Zeitgliedes 3 geschaltet wird und in Verbindung mit dem Eingangsverstärker 6 als Oszillator wirkt· Jeder Programmdurchlauf erzeugt einen kurzen Kontrollimpuls R, der ein RS-Flip-Flop 2 setzt, welches vom darauffolgenden Takt T wieder rückgesetzt wird· Der entstehende Rücksetzimpuls R1 löscht über die Steuerlogik das Zeitglied 3 und startet es erneut* Programmtechnisch ist eine Mindestlänge des Rücksetzimpulses R? zu garantieren· Bleiben die Kontrollimpulse R aus, oder ist der Rücksetzimpuls R* zu kurz, so erreicht das Zeitglied 3 den durch die wirksame Teilerkette 5 vorgegebenen Endwert, löst einen Interrupt höchster Priorität 9 aus und startet ein 2. Zeitglied R 1, R 2, C 1, 4, welches nach Entladung von C 1 über R 1 unter den unteren Schwellwert des Triggers 4 einen üJeustart 8 des Programms veranlaßt, wenn nicht vorher innerhalb des Interruptprogramms das Zeitglied 3 durch Kontrollimpulse R rückgesetzt wurde. Das 2, Zeitglied veranlaßt ebenfalls bei Zuschaltung der Versorgungsspannung einen definierten Neustart des Programms·
Im Interruptprogramm wird nach dem Prinzip der Autodiagnose auf Vorliegen von systematischen Fehlern bzw« Systemdefekt oder stochastischen Fehlern getestet und die Fehlerart programmtechnisch registriert. Bei stochastisehen Fehlern wird ein Programmneustart veranlaßt, wenn die maximale Fehlerzahl pro Zeiteinheit nicht überschritten ist. Ansonsten arbeitet der Mikroprozessor in einer Fehlerwarteschleife, wobei dann vor Ablauf der Verzögerungszeit des 2, Zeitgliedes das 1, Zeitglied 3 mittels Kontrollimpuls R rückgesetzt werden muß0 Durch Aktivieren des Eingangs W, Z0 B· für Prüfzwecke im Schrittest, kann das Zeitglied 3 über den Rücksetzeingang Rfl statisch rückgesetzt werden·
Claims (3)
- Patentansprüche:1. Verfahren zur zeitlichen Programmüberwachung von mikroprozessergesteuerten Einrichtungen, insbesondere solchen, bei denen das informationsverarbeitende Element Vorrichtungen zum Rücksetzen des Systems als auch zur Auslösung eines Interrupts höchster Priorität besitzt, und bei denen während eines jeden Programmdurchlaufes Kontrollimpulse abnehmbar sind, dadurch gekennzeichnet, daß während jedes Programmdurchlaufes ein Zeitglied (3) rückgesetzt wird, noch bevor das Zeitglied (3) seine Durchlaufzeit beendet hat, welches durch insbesondere Systemtaktimpulse (T) aktiviert wurde, und damit keinen Interrupt (9) bzw«, kein Rücksetzen (8) des Systems bewirkt, daß bei Systemstörungen, die ein Verlassen der normalen Programmabarbeitung hervorrufen, der Kontrollimpuls (R) ausbleibt und damit nach Ablauf der Durchlaufzeit des Zeitgliedes (3) ein Interrupt (9) ausgelöst wird, wobei innerhalb der Abarbeitung des Interruptprogrammes das System nach Prinzipien der Autodiagnose getestet wird und in Abhängigkeit des Testergebnisses eine Aussage darüber vorliegt, ob es sich um stochastische Störungen oder um systematische Pehler bzw· einen Systemdefekt handelt, und daß bei stochastisch^ Störungen nach Ablauf der Verzögerungszeit eines zweiten Zeitgliedes (R1, R2, 01,(4)) das System rückgesetzt (8) wird, während bei systematischen Fehlern das Zeitglied (3) mit Hilfe des Kontrollimpulses (R) rückgesetzt wird noch bevor die Verzögerungszeit"des zweiten Zeitgliedes (R1, R2, 01, (4)) abgelaufen ist und damit aas System in eine Programmwarteschleife mit Ausgabe eines Pehlersignals gehto2· Schaltungsanordnung zur Durchführung des Verfahrens nach Punkt 1, insbesondere mit Mikroprozessor als informationsverarbeitendes Element,dadurch gekennzeichnet, daß ein Zeitglied (3)f bestehend aus einer Teilerkette (5), einem Eingangsverstärker (6) und einer kombinatorischen Schaltung zur Zeitgliedsteuerung (7), Taktimpulse (T), die über einen Vorteiler - 2:1 (1) aufbereitet am Eingang (E) des Zeitgliedes (3) anliegen, aufsummiert und nach Erreichen einer Endsumme am Ausgang (A) ein Signal auf den Interrupteingang (9) des Mikroprozessors und gleichzeitig auf den, mit dem Ausgang (A) des Zeitgliedes (3) verbundenen, Eingang eines zweiten Zeitgliedes (R1, R2, C1, U)) gibt, wobei das zweite Zeitglied (R1, R2, 01, (4)), ausgangsseitig mit dem Rücksetz-Eingang (8) des Mikroprozessors verbunden ist, und daß weiterhin der Kontrollimpuls (R) über ein RS-Flip-ELop (2) auf den Rücksetzeingäng (Rf) des Zeitgliedes (3) gebracht wird,
- 3. Schaltungsanordnung nach Punkt 2, dadurch gekennzeichnet , daß das zweite Zeitglied (R1, R2, C1, (4)) gleichzeitig als Reset-Schaltung zum Starten des Mikroprozessors bei Zuschalten der Versorgungsspannung (Urt_) ausgebildet ist, wobei ein Verzögerungsglied, bestehend aus einem gegen Bezugspotential an den Eingang eines Schmitt-Triggers (4) geschalteten Kondensator (01) und einem ersten 'Widerstand (R1), der vom Eingang des Schmitt-Triggers (4) zum Ausgang (A) des Zeitgliedes (3) geschaltet ist, und einem zweiten Widerstand (R2), der vom Eingang des Schmitt-Triggers (4) zur Versorgungsspannung (ϋΛΛ) geschaltet ist, in"Verbindung mit demCCSchmitt-Trigger (4) sowohl die Verzögerung des Reset-Signals (8) gegenüber dem Interrupt-Signal (9) ala auch die Verzögerung des High-Signals am Reset-Eingang (8) des Mikroprozessors bei Zuschalten der Versorgungsspannung (Ucc) realisiert»4p Schaltungsanordnung nach Punkt 2, dadurch gekennzeichnet, daß das Zeitglied (3) insbesondere als Zeitgeberschaltkreis mit Oszillätorverstärker (6), Teilerkette (5) und Steuerlogik (7) ausgebildet ist und damit auch statt des Systemtaktes (T) ein in weiten Grenzen wählbarer Takt, der durch eine externe RC-Beschaltung am Zeitgeberschaltkreis festgelegt ist, verwendet werden kann»5· Schaltungsanordnung nach den Punkten 2 und 4» dadurch gekennzeichnet, daß die zu überwachende Programmdurchlaufzeit und damit die Wiederholrate des Kontrollimpulses (R) einerseits durch das Programm festgelegt ist und andererseits das Zählvolumen des Zeitgliedes (3) sowohl durch Wahl der Verdrahtung (S1) des Ausgangs (A) des Zeitgliedes (R1, R2, 01, (4)) als auch durch programmtechnische Wahl des Ausgangs (A) des Zeitgliedes (3) auf die jeweilige Wiederholrate des Kontrollimpulses (R) angepaßt werden kann, der Art, daß das Zählvolumen des Zeitgliedes (3) größer ist als die Wiederholrate des Kontrollimpulses (R) und daß die programratechnische Wahl des Ausgangs (A) des Zeitgliedes (3) durch einen Digitalmultiplexer mit Pufferregister für die Dekodiereingänge (S1) realisiert wird«,
- 6. Schaltungsanordnung nach den Punkten 2 bis 5» dadurch gekennzeichnet, daß vor dem Eingang (E) des Zeitgliedes (3) ein beliebiger Teiler (1) geschaltet ist, der'den Systemtakt (T) auf die erforderliche Frequenz herunterteilt und gleichzeitig eine Rechteckspannung mit Tastverhältnis 1 s 1 erzeugt, und daß vor den Rücksetzeingang (R«) des Zeitgliedes (3) ein RS-Flip-Flop (2) geschaltet ist, welches den verhältnismäßig kurzen Kontrollimpuls (R) solange abspeichert bis der nächste Taktimpuls (T) erscheint.7· Schaltungsanordnung nach den Punkten 2 bis 6,
dadurch gekennzeichnet, daß
für Prüfzwecke, wenn der Mikroprozessor im Schrittbetrieb arbeitet, das Zeitglied (3) immer dann über den zweiten Rücksetzeingang (R")"rückgesetzt bleibt, wenn am Mikroprozessor dessen Wartebefehlssignal (W) aktiv ist.Hierzu 1 Seit© Zeichnungan
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DD24386682A DD210775A1 (de) | 1982-10-08 | 1982-10-08 | Verfahren und schaltungsanordnung zur zeitlichen programmueberwachung von mikroprozessorgesteuerten einrichtungen |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DD24386682A DD210775A1 (de) | 1982-10-08 | 1982-10-08 | Verfahren und schaltungsanordnung zur zeitlichen programmueberwachung von mikroprozessorgesteuerten einrichtungen |
Publications (1)
Publication Number | Publication Date |
---|---|
DD210775A1 true DD210775A1 (de) | 1984-06-20 |
Family
ID=5541679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DD24386682A DD210775A1 (de) | 1982-10-08 | 1982-10-08 | Verfahren und schaltungsanordnung zur zeitlichen programmueberwachung von mikroprozessorgesteuerten einrichtungen |
Country Status (1)
Country | Link |
---|---|
DD (1) | DD210775A1 (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4219433A1 (de) * | 1992-06-13 | 1993-12-16 | Man Technologie Gmbh | Verfahren zur Steuerung eines rechnerunterstützten Prozeßsteuerungssystems |
DE102005018518A1 (de) * | 2005-04-20 | 2006-10-26 | Braun Gmbh | Verfahren zum Erzeugen einer Zeitbasis für einen Mikrokontroller und Schaltungsanordnung hierfür |
-
1982
- 1982-10-08 DD DD24386682A patent/DD210775A1/de unknown
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4219433A1 (de) * | 1992-06-13 | 1993-12-16 | Man Technologie Gmbh | Verfahren zur Steuerung eines rechnerunterstützten Prozeßsteuerungssystems |
DE102005018518A1 (de) * | 2005-04-20 | 2006-10-26 | Braun Gmbh | Verfahren zum Erzeugen einer Zeitbasis für einen Mikrokontroller und Schaltungsanordnung hierfür |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2946081C2 (de) | ||
DE69016169T2 (de) | Leitungschnittstelle für ein Nachrichtenübertragungsnetz. | |
DE2842392A1 (de) | Ueberwachungseinrichtung fuer programmgesteuerte vorrichtungen | |
DE102015202473A1 (de) | Ladesteuerungs-Backupsignal-Erzeugungsschaltung | |
DD210775A1 (de) | Verfahren und schaltungsanordnung zur zeitlichen programmueberwachung von mikroprozessorgesteuerten einrichtungen | |
DE69634644T2 (de) | Schaltung zur Zählerprüfung | |
EP1025501B1 (de) | Verfahren und vorrichtung zur überprüfung einer fehlerüberwachung einer schaltung | |
DE19845220A1 (de) | Verfahren und Vorrichtung zur Synchronisation und Überprüfung von Prozessor und Überwachungsschaltung | |
DE2505662C2 (de) | Vorrichtung zur Überprüfung der Funktionsfähigkeit eines an einer logischen Steuereinheit gehörenden Zeitgebers | |
DE102007010886B3 (de) | Steuergerät für ein Fahrzeug | |
DE2903638A1 (de) | Ueberwachungseinrichtung fuer programmgesteuerte vorrichtungen | |
DE2737133C2 (de) | Schaltungsanordnung zum Verhindern von Doppelfehlern in einer Datenverarbeitungsanlage | |
EP0195457B1 (de) | Vorrichtung zur Eigenüberwachung einer Schaltungsanordnung mit einem Mikrocomputer | |
DE3836870A1 (de) | Verfahren zum ueberwachen eines einen mikroprozessor ueberwachenden watchdog-timer und vorrichtung zur durchfuehrung des verfahrens | |
DE3920696A1 (de) | Mikroprozessor-schaltungsanordnung mit watchdog-schaltung | |
DE3146735C2 (de) | Selbstüberwachungseinrichtung für einen digitalen, programmgesteuerten Ablaufsteuerschaltkreis | |
DE102021104265B4 (de) | Controller, elektronische Komponente und elektronisches System | |
DE3127100C2 (de) | ||
DE3127624C2 (de) | Schaltungsanordnung zum Erzeugen von signaltechnisch sicheren Impulsfolgen | |
DE3207120A1 (de) | Ueberwachungsschaltung fuer einen mikrocomputer | |
DE2432043A1 (de) | Elektronisches sicherheitszeitglied fuer ein brennersteuergeraet | |
DE19703890C1 (de) | Watchdog-Bedienung | |
EP0360952B1 (de) | Vorrichtung zur Erzeugung und Steuerung von Meldesignalen | |
DE2639064A1 (de) | Schaltungsanordnung zur ueberwachung und zur erkennung von fehlern in zaehlschaltungen | |
DE1168952B (de) | Schaltungsanordnung zum UEberwachen einer Impulsfolge |