-
Die
Erfindung betrifft ein modulares numerisches Steuergerät nach Anspruch
1. In einem derartigen modularen numerischen Steuergerät können sicherheitsrelevante
Informationen zuverlässig über serielle
Schnittstellen übertragen
werden.
-
Numerische
Steuergeräte
(numerical control; NC) werden vorwiegend zur Steuerung von Werkzeugmaschinen
eingesetzt und können
im wesentlichen in zwei Funktionseinheiten unterteilt werden, einem
Hauptrechner und wenigstens einer Reglereinheit.
-
Der
Hauptrechner stellt die zur Bedienung der NC notwendigen Benutzerschnittstellen
wie Tastatur und Monitor zur Verfügung und dient zur Erstellung,
Speicherung und Abarbeitung von Programmen. In den Reglereinheiten
befinden sich Regelkreise, die zur Ansteuerung von Umrichtermodulen
dienen, die wiederum Motoren ansteuern. Außerdem umfassen die Reglereinheiten
digitale und/oder analoge Schnittstellen zur Erfassung von Istwerten,
die während
eines Programmlaufs kontinuierlich zur Steuerung der Regelkreise
benötigt
werden. Bei den zu erfassenden Istwerten kann es sich beispielsweise
um Positionswerte (Lagewerte), Geschwindigkeitswerte, Beschleunigungswerte
oder auch Stromwerte handeln. Ebenso wie der Hauptrechner sind auch
die Reglereinheiten mikroprozessorgesteuert.
-
Häufig besteht
der Wunsch, Hauptrechner und Reglereinheiten räumlich getrennt anzuordnen. So
ist es sinnvoll, den Hauptrechner zusammen mit der Tastatur und
dem Monitor in einem Gehäuse
zusammenzufassen, um eine Benutzerschnittstelle zu schaffen, die
nach ergonomischen Gesichtspunkten für den Anwender optimal platzierbar
ist. Ebenso ist es wünschenswert,
die Reglereinheiten nahe an den Umrichtern anzuordnen, um eine optimale
Signalqualität
der pulsbreitenmodulierten Steuersignale zu gewährleisten.
-
Für die Datenübertragung
zwischen räumlich getrennten
Einheiten bieten sich serielle Schnittstellen an, da hier Kabel
mit nur wenigen Adern eingesetzt werden können, die im Vergleich zu Kabeln
für die
Datenübertragung über parallele
Schnittstellen sehr preisgünstig
und einfach handhabbar sind.
-
Als
problematisch ist in einer solchen Systemarchitektur die Übertragung
von sicherheitsrelevanten Informationen anzusehen, da die mikroprozessorgesteuerten
Einheiten bestimmen, welche Daten über die serielle Schnittstelle übertragen
werden. Deshalb kann es bei einer Fehlfunktion einer mikroprozessorgesteuerten
Einheit, hervorgerufen beispielsweise durch einen Programmabsturz
oder durch äußere Einflüsse (z.B.
Schwankungen der Betriebsspannung, Überhitzung von Modulen), passieren,
dass sicherheitsrelevante Informationen nicht übertragen werden. Besonders
im Falle einer sicherheitsbedingten Notabschaltung kann das gefährliche Folgen
haben, die von materiellen Schäden
an der Werkzeugmaschine bis hin zur Gefährdung von Leib und Leben des
Bedienpersonals reichen.
-
Die
US 5,274,311 beschreibt
ein modulares Motorsteuerungssystem, bestehend aus einem Motorsteuermodul,
einem Ein-/Ausgabemodul und einem Prozessormodul, die über eine
differentielle Zweidraht-Schnittstelle miteinander kommunizieren. Zur
sicheren Übertragung
eines Abschaltsignals ist eine separate Leitung vorgesehen, die
parallel zur Zweidraht-Schnittstelle zu allen Modulen geführt ist. Dadurch
wird eine sichere Abschaltung auch bei Ausfall der Datenübertragung über die
Zweidraht-Schnittstelle gewährleistet.
-
Nachteile
dieser Lösung
sind zum einen, dass eine zusätzliche
Leitung benötigt
wird, zum anderen, dass über
die eine zusätzliche
Leitung nur ein dediziertes Signal übertragen werden kann.
-
Es
ist daher Aufgabe der Erfindung, ein modulares numerisches Steuergerät anzugeben,
das eine sichere Übertragung
von sicherheitsrelevanten Informationen über serielle Schnittstellen
erlaubt, ohne dass dafür
zusätzliche
Leitungen eingesetzt werden müssen.
-
Diese
Aufgabe wird gelöst
durch ein modulares numerisches Steuergerät nach Anspruch 1. Vorteilhafte
Details des modularen numerischen Steuergeräts ergeben sich aus den von
Anspruch 1 abhängigen
Ansprüchen.
-
Es
wird nun ein modulares numerisches Steuergerät vorgeschlagen, das aus wenigstens zwei
Modulen besteht, die je eine Mikroprozessoreinheit enthalten und über serielle
Datenübertragungskanäle zur Übertragung
von Informationen in Form von Datenpaketen miteinander verbunden
sind. In wenigstens einem Modul ist eine Datenpaket-Erzeugungseinheit
zur Erzeugung von Datenpaketen und zur Übertragung von Datenpaketen
zu wenigstens einem weiteren Modul vorgesehen. Dabei arbeitet die Datenpaket-Erzeugungseinheit
unabhängig
von der Funktion der Mikroprozessoreinheit. Darüber hinaus ist in wenigstens
einem Modul eine Datenpaket-Verarbeitungseinheit vorgesehen, mit
der, ebenfalls unabhängig
von der Funktion der Mikroprozessoreinheit, Datenpakete verarbeitbar
und/oder zu wenigstens einem weiteren Modul übertragbar sind. Die Datenpakete
enthalten den Status von wenigstens einem Sicherheitssignal.
-
Weitere
Vorteile sowie Einzelheiten der vorliegenden Erfindung ergeben sich
aus der nachfolgenden Beschreibung anhand der Figuren. Dabei zeigt
-
1 ein
Blockschaltbild eines erfindungsgemäßen modularen numerischen Steuergeräts,
-
2 ein
Blockschaltbild einer weiteren Ausführungsform eines erfindungsgemäßen modularen
numerischen Steuergeräts,
-
3 ein
Blockschaltbild einer bevorzugten Ausführungsform eines erfindungsgemäßen modularen
numerischen Steuergeräts
-
4 ein
Blockschaltbild einer vierten Ausführungsform eines erfindungsgemäßen modularen numerischen
Steuergeräts
-
1 zeigt
ein erfindungsgemäßes modulares
numerisches Steuergerät.
Es besteht aus zwei Modulen, einem Hauptrechner 10 und
einer Reglereinheit 20. Beide Module enthalten je eine
Mikroprozessoreinheit 30. Der Hauptrechner 10 enthält weiter eine
Datenpaket-Erzeugungseinheit 40, dem ein Sicherheitssignal
SH1_IN zugeführt
ist, und eine Hauptsendeeinheit 50. In der Reglereinheit 20 befindet
sich eine Datenpaket-Verarbeitungseinheit 60, die ein Abschaltsignal
SH1_OUT ausgibt, und eine erste Empfängereinheit 70. Hauptrechner 10 und Reglereinheit 20 sind über einen
seriellen Datenübertragungskanal 80 verbunden,
der sich aus der Hauptsendeeinheit 50 und der ersten Empfängereinheit 70 zusammensetzt,
mit deren Hilfe über
einen Sendekanal 90 eine unidirektionale Datenübertragung
vom Hauptrechner 10 zur Reglereinheit 20 möglich ist.
-
Da
die Art und der Aufbau der Mikroprozessoreinheiten 30 beliebig
sein kann, sind sie im Hauptrechner 10 und in der Reglereinheit 20 mit
dem gleichen Bezugszeichen versehen. Es sei aber ausdrücklich darauf
hingewiesen, dass sich die Mikroprozessoreinheit 30 im
Hauptrechner 10 durchaus von der Mikroprozessoreinheit 30 in
der Reglereinheit 20 unterscheiden kann. So kann es sich
bei der Mikroprozessoreinheit 30 im Hauptrechner 10 beispielsweise
um einen Personal Computer (PC) handeln, der dazu geeignet ist,
Befehle über
ein Eingabegerät
(Tastatur, Maus) zu empfangen und zu verarbeiten, Informationen
auf einem Monitor anzuzeigen und Daten auf Speichermedien zu verwalten.
Die Mikroprozessoreinheit 30 in der Reglereinheit 20 kann dagegen
von einem Signalprozessor gesteuert sein und Regelkreise, sowie
Schnittstellen zum Erfassen von Istwerten (Positionswerten, Stromwerten,
...) und zur Ansteuerung von Umrichtermodulen, die wiederum Antriebsachsen
ansteuern, enthalten.
-
Während der
Abarbeitung eines Programms, etwa zur Bearbeitung eines Werkstückes durch
eine Werkzeugmaschine, die vom modularen numerischen Steuergerät gesteuert
wird, überträgt der Hauptrechner 10 in äquidistanten
Zeitabständen
Daten, z.B. Sollwerte, zur Reglereinheit 20. Dabei werden
die zu übertragenden
Daten von der Mikroprozessoreinheit 30 im Hauptrechner 10 der
Datenpaket-Erzeugungseinheit 40 zugeführt. Diese bildet in äquidistanten
Zeitabständen
aus den zu übertragenden
Daten und dem Status des Sicherheitssignals SH1_IN ein Datenpaket
und überträgt dieses über den
seriellen Datenübertragungskanal 80 zur
Datenpaket-Verarbeitungseinheit 60 in der Reglereinheit 20.
Die Datenpaket-Verarbeitungseinheit 60 leitet die im Datenpaket
enthaltenen Daten an die Mikroprozessoreinheit 30 der Reglereinheit 20 weiter
und schaltet in Abhängigkeit
vom Status des Sicherheitssignals SH1_IN das Abschaltsignal SH1_OUT
ein oder aus.
-
Das
Bilden der Datenpakete in der Datenpaket-Erzeugungseinheit 40 im
Hauptrechner 10, die Übertragung
der Datenpakete über
den seriellen Datenübertragungskanal 80 und
die anschließende Auswertung
der Datenpakete, insbesondere des Status des Sicherheitssignals
SH1_IN, in der Datenpaket-Verarbeitungseinheit 60 ist dabei
unabhängig
von den Mikroprozessoreinheiten 30. Das bedeutet zum einen,
dass auch bei Ausfall der Mikroprozessoreinheit 30 im Hauptrechner 10 weiter
Datenpakete gebildet und übertragen
werden, zum anderen, dass auch bei Ausfall der Mikroprozessoreinheit 30 in
der Reglereinheit 20 bei Empfang eines Datenpakets der
Status des Sicherheitssignals SH1_IN überprüft wird und gegebenenfalls über das
Abschaltsignal SH1_OUT eine Sicherheitsabschaltung initiiert wird. Es
hat sich als besonders vorteilhaft erwiesen, die Datenpaket-Erzeugungseinheit 40 und
auch die Datenpaket-Verarbeitungseinheit 60 als digitale
zustandsgesteuerte Automaten (State Machines) mit eigener, unabhängiger Zeitbasis
auszuführen.
Eine derartige Schaltung kann beispielsweise in ei nem programmierbaren
Logikbaustein, insbesondere in einem FPGA integriert werden.
-
2 zeigt
ein Blockschaltbild einer weiteren Ausführungsform eines erfindungsgemäßen modularen
numerischen Steuergeräts.
Es besteht aus einem Hauptrechner 10 und zwei Reglereinheiten 20, die
mittels serieller Datenübertragungskanäle 80 in Form
einer Reihenschaltung miteinander verbunden sind. Im Vergleich zu 1 enthalten
die Reglereinheiten 20 zusätzlich eine erste Sendeeinheit 100,
die zusammen mit dem Sendekanal 90 und der ersten Empfängereinheit 70 der
nachfolgenden Reglereinheit 20 der Reihenschaltung den
seriellen Datenübertragungskanal 80 bilden.
Der serielle Datenübertragungskanal 80,
der den Hauptrechner 10 mit der ersten Reglereinheit 20 der
Reihenschaltung verbindet, setzt sich, wie in 1,
aus der Hauptsendeeinheit 50, dem Sendekanal 90 und
der ersten Empfängereinheit 70 der
ersten Reglereinheit 20 der Reihenschaltung zusammen. Die
Datenpaket-Verarbeitungseinheit 60 in dieser Ausführungsform
ist so ausgebildet, dass sie erstens den Status des Sicherheitssignals
SH1_IN auswertet und gegebenenfalls über das Abschaltsignal SH1_OUT
eine Notabschaltung initiiert, zweitens im Datenpaket enthaltene
Daten der Mikroprozessoreinheit 30 zuführt und drittens eintreffende
Datenpakete zur ersten Sendeeinheit 100 weiterleitet, die
sie zur nachfolgenden Reglereinheit 20 der Reihenschaltung überträgt.
-
Auf
diese Weise wird der Status des Sicherheitssignals SH1_IN, ausgehend
vom Hauptrechner 10, sequentiell zu allen Reglereinheiten 20 der
Reihenschaltung übertragen.
Da sowohl die Datenpaket-Erzeugungseinheit 40, als auch
die Datenpaket-Verarbeitungseinheit 60 unabhängig von
den Mikroprozessoreinheiten 30 arbeiten, ist sichergestellt, dass
der Status des Sicherheitssignals SH1_IN auch bei Ausfall von einer
oder mehreren Mikroprozessoreinheiten 30 übertragen
wird.
-
Wie
durch die gestrichelte Linie am Ausgang der ersten Sendeeinheit 100 der
zweiten Reglereinheit 20 der Reihenschaltung angedeutet,
kann die Ausführungsform
in 2 um eine Vielzahl von weiteren Reglereinheiten 20 erweitert
werden.
-
3 zeigt
schließlich
eine bevorzugte Ausführungsform
eines erfindungsgemäßen modularen numerischen
Steuergeräts.
Es besteht aus einem Hauptrechner 300 und zwei Reglereinheiten 400,
die, ausgehend vom Hauptrechner 300, in Form einer Reihenschaltung
miteinander verbunden sind.
-
Der
Hauptrechner 300 enthält
neben der Mikroprozessoreinheit 30 eine Datenpaket-Erzeugungseinheit 310,
eine abschließende
Datenpaket-Verarbeitungseinheit 320, sowie eine Hauptsendeeinheit 330 und
eine Hauptempfängereinheit 340. Der
Datenpaket-Erzeugungseinheit 310 ist, wie in den vorhergehenden
Beispielen, ein Sicherheitssignal SH1_IN zugeführt. Dagegen gibt die abschließende Datenpaket-Verarbeitungseinheit 320 ein
Abschaltsignal SH2_OUT aus.
-
Die
Reglereinheiten 400 bestehen aus einer ersten Datenpaket-Verarbeitungseinheit 410,
einer zweiten Datenpaket-Verarbeitungseinheit 420, einer ersten
Empfängereinheit 430,
einer ersten Sendeeinheit 440, einer zweiten Empfängereinheit 450 und
einer zweiten Sendeeinheit 460. Außerdem befindet sich in jeder
Reglereinheit 400 eine Mikroprozessoreinheit 30.
Der ersten Datenpaket-Verarbeitungseinheit 410 ist ein
Sicherheitssignal SH2_IN zugeführt, während die
zweite Datenpaket-Verarbeitungseinheit 420 zwei Abschaltsignale
SH1_OUT und SH2_OUT ausgibt.
-
Die
seriellen Datenübertragungskanäle 480, über die
der Hauptrechner 300 mit der ersten Reglereinheit 400 der
Reihenschaltung, bzw. die Reglereinheiten 400 untereinander
verbunden sind, sind in diesem bevorzugten Ausführungsbeispiel bidirektional
ausgelegt. So besteht der serielle Datenübertragungskanal 480,
der den Hauptrechner 300 mit der ersten Reglereinheit 400 der
Reihenschaltung verbindet, aus der Hauptsendeeinheit 330,
die über
einen Sendekanal 490 Datenpakete zur ersten Empfängereinheit 430 sendet
und aus der Hauptempfängereinheit 340,
die über
einen Empfangs kanal 500 Datenpakete von der zweiten Sendeeinheit 460 empfängt. Analog
dazu besteht der serielle Datenübertragungskanal 480,
der die Reglereinheiten 400 untereinander verbindet, aus
der ersten Sendeeinheit 440, die über den Sendekanal 490 Datenpakete
zur ersten Empfängereinheit 430 der
nachfolgenden Reglereinheit 400 der Reihenschaltung sendet
und der zweiten Empfängereinheit 450,
die Datenpakete über
den Empfangskanal 500 von der zweiten Sendeeinheit 460 der
nachfolgenden Reglereinheit 400 der Reihenschaltung empfängt.
-
Eine
weit verbreitete serielle Datenschnittstelle, die zur Bildung der
seriellen Datenübertragungskanäle 480 besonders
geeignet ist, ist vor allem aus dem Bereich der Local Area Networks
(LAN) bekannt und trägt
die Bezeichnung FAST ETHERNET (Norm IEEE Std. 802.3-2002). Das Datenübertragungsverfahren,
wie es im Standard IEEE 802.3 beschrieben ist, ist für zeitkritische
Anwendungen zwar nur bedingt geeignet, da es vorwiegend für die Bürotechnik
zur Übertragung
großer
Datenmengen entwickelt wurde und dadurch kein determiniertes Zeitverhalten
aufweist. Auf der Basis der physikalischen Ebene des Standards IEEE
802.3 (Layer 1 des OSI/ISO Schichtenmodells) kann jedoch ein echtzeitfähiges Datenübertragungssystem
aufgebaut werden. Das hat insbesondere den Vorteil, dass auf eine bewährte Technik
zurückgegriffen
werden kann, zu der auf dem Markt eine große Anzahl von Bauteilen zu
einem günstigen
Preis zur Verfügung
stehen.
-
Die
Datenpaket-Erzeugungseinheit 310 im Hauptrechner 300 ist
so ausgebildet, dass sie während
der Abarbeitung eines Programms in determinierten, mit Vorteil äquidistanten
Zeitabständen
aus Daten, die ihr von der Mikroprozessoreinheit 30 übermittelt
werden, und dem Status des Sicherheitssignals SH1_IN, Datenpakete
bildet und über
den seriellen Datenübertragungskanal 480 zur
ersten Reglereinheit 400 der Reihenschaltung sendet. Abweichend
zu den vorhergehenden Ausführungsbeispielen
enthalten die Daten, die die Mikroprozessoreinheit 30 der
Datenpaket-Erzeugungseinheit 310 übermittelt, auch noch die Information,
ob es sich um einen schreibenden oder/und lesenden Zugriff handelt. Die
Bildung und Übertragung
der Datenpakete erfolgt, wie bei den vorhergehenden Ausführungsbeispielen, unabhängig von
der Mikroprozessoreinheit 30. Treffen aufgrund einer Fehlfunktion
keine Daten von der Mikroprozessoreinheit 30 bei der Datenpaket-Erzeugungseinheit 310 ein,
so bildet die Datenpaket-Erzeugungseinheit 310 Datenpakete,
in denen der Bereich, der zur Aufnahme der zu übertragenden Daten vorgesehen
ist, leer ist, oder die überhaupt
keinen derartigen Bereich aufweisen. In der Reglereinheit 400 werden
in der ersten Datenpaket-Verarbeitungseinheit 410 die in
einem empfangenen Datenpaket enthaltenen Daten ausgelesen und an
die Mikroprozessoreinheit 30 weitergeleitet. Außerdem fügt die erste
Datenpaket-Verarbeitungseinheit 410 den Status des Sicherheitssignals
SH2_IN in das Datenpaket ein und sendet es weiter zur nächsten Reglereinheit 400 der
Reihenschaltung.
-
Bei
der letzten Reglereinheit 400 der Reihenschaltung ist der
Sendekanal 490 mit dem Empfangskanal 500 verbunden,
d.h. Datenpakete, die von der ersten Sendeeinheit 440 gesendet
werden, werden in umgekehrter Richtung zurückgeschickt und erreichen über die
zweite Empfängereinheit 450 die
zweite Datenpaket-Verarbeitungseinheit 420 der Reglereinheit 400.
Diese wertet den Status der Sicherheitssignale SH1_IN und SH2_IN
aus und schaltet die Abschaltsignale SH1_OUT und SH2_OUT in Abhängigkeit
vom Status der Sicherheitssignale SH1_IN und SH2_IN ein oder aus.
Weiterhin fügt
die zweite Datenpaket-Verarbeitungseinheit 420 bei einem
lesenden Zugriff Daten, die ihr von der Mikroprozessoreinheit 30 zugeführt werden,
in das Datenpaket ein und leitet es über den seriellen Datenübertragungskanal 480 zur
nächsten
Reglereinheit 400 in Richtung Hauptrechner 300 weiter.
An dieser Stelle sei noch einmal darauf hingewiesen, dass die Weiterleitung des
Datenpakets unabhängig
von der Funktion der Mikroprozessoreinheit 30 funktioniert,
d.h. auch wenn die Mikroprozessoreinheit 30 keine Daten
zur zweiten Datenpaket-Verarbeitungseinheit 420 übermittelt,
wird das Datenpaket weitergeleitet.
-
Schließlich erreicht
das Datenpaket die abschließende
Datenpaket-Verarbeitungseinheit 320 im Hauptrechner 300.
Diese übermittelt
die im Datenpaket enthaltenen, gegebenenfalls von den Reglereinheiten 400 modifizierten
Daten zur weiteren Verarbeitung zur Mikroprozessoreinheit 30.
Für den
Fall, dass auch am Hauptrechner 30 sicherheitsrelevante Einheiten
angeschlossen sind, wertet die abschließende Datenpaket-Verarbeitungseinheit 320 den Status
des Sicherheitssignals SH2_IN aus und schaltet in Abhängigkeit
davon das Abschaltsignal SH2_OUT ein oder aus.
-
In
diesem bevorzugten Ausführungsbeispiel ist
der Zusammenhang zwischen den Sicherheitssignalen SH1_IN, SH2_IN
und den Abschaltsignalen SH1_OUT, SH2_OUT wie folgt geregelt:
Der
Status des Sicherheitssignals SH1_IN bestimmt direkt den Zustand
des Abschaltsignals SH1_OUT, d.h. signalisiert der Status von SH1_IN
einen Fehler, dann wird in jeder Reglereinheit 400 das
Abschaltsignal SH1_OUT aktiv geschaltet.
-
Der
Status aller Sicherheitssignale SH2_IN ist ODER-verknüpft, d.h.
sobald das Sicherheitssignal SH2_IN von einer Reglereinheit 400 einen
Fehler anzeigt, werden alle Abschaltsignale SH2_OUT aktiv geschaltet.
-
Wie
der Fachmann erkennt, kann der Zusammenhang zwischen den Sicherheitssignalen SH1_IN,
SH2_IN und den Abschaltsignalen SH1_OUT, SH2_OUT auch völlig anders
geregelt sein. So könnte
z.B. das Sicherheitssignal SH1_IN nur ein Abschalten der Antriebe
einer bestimmten Reglereinheit 400 bewirken. Gleiches gilt
für die
Anzahl der Sicherheitssignale und Abschaltsignale. So könnte eine
beliebige Anzahl von Sicherheitssignalen zur Abschaltung aller von
der modularen numerischen Steuerung gesteuerten Module über eine
einzelnes Abschaltsignal führen.
-
Neben,
oder anstatt der Sicherheitssignale SH1_IN, SH2_IN, können auch
interne Sicherheitssignale erzeugt werden. So ist im Hauptrechner 300 mit
gestrichelten Linien eine Hauptrechner-Überwachungseinheit 350 eingezeichnet, über deren
Ausgang ein internes Sicherheitssignal SH1_IN' an die Datenpaket-Erzeugungseinheit 310 gelangt.
Analog dazu ist in den Reglereinheiten 400 eine Regler-Überwachungseinheit 520 vorgesehen, über de ren
Ausgang ein internes Sicherheitssignal SH2_IN' der ersten Datenpaket-Verarbeitungseinheit 410 zugeführt ist.
-
Derartige Überwachungseinheiten
sind im Stand der Technik als Watchdog-Schaltungen bekannt. Ihre Funktion entspricht
im Wesentlichen der eines retriggerbaren Monoflops. Solange die
Schaltung regelmäßig innerhalb
ihrer eingestellten Umschaltzeit durch einen Triggerimpuls zurückgesetzt wird,
bleibt der Pegel an ihrem Ausgang gleich. Wird diese definierte
Zeitdauer verletzt, d.h. überschreitet die
Zeit zwischen zwei Triggerimpulsen die eingestellte Umschaltzeit, ändert sich
der Pegel am Ausgang der Schaltung. In der Praxis kann eine Watchdog-Schaltung
beispielsweise mit einem freilaufenden Zähler mit Überlauf-Ausgang realisiert
werden, der durch einen Triggerimpuls rücksetzbar ist. Bleibt der Triggerimpuls
aus, kommt es zu einem Überlauf des
Zählers
und der Pegel am Überlauf-Ausgang ändert sich.
-
Im
Beispiel in 3 erhält die Hauptrechner-Überwachungseinheit 350 die
Triggerimpulse über
eine Triggerleitung 360 von der Mikroprozessoreinheit 30 des
Hauptrechners 300. Um zu verhindern, dass die Hauptrechner-Überwachungseinheit 350 den
Status des internen Sicherheitssignals SH1_IN' ändert,
muss das Programm, das im Hauptrechner 300 abgearbeitet
wird, so geschrieben sein, dass stets innerhalb der eingestellten
Umschaltzeit der Hauptrechner-Überwachungseinheit 350 durch einen
Programmbefehl ein Triggerimpuls generiert wird. Bei einer Fehlfunktion,
wenn der Programmbefehl zum Erzeugen des Triggerimpulses, etwa hervorgerufen
durch einen Programmabsturz, nicht mehr oder zu spät ausgeführt wird,
bleibt der Triggerimpuls aus. Dadurch wird die definierte Zeitdauer überschritten
und das interne Sicherheitssignal SH1_IN' ändert
seinen Pegel.
-
Das
gleiche gilt für
die Regler-Überwachungseinheit 520.
Sie erhält über die
Triggerleitung 530 ihren Triggerimpuls von der Mikroprozessoreinheit 30 der
Reglereinheit 400. Das Ausbleiben des Triggerimpulses wird
hier durch den Pegel des internen Sicherheitssignals SH2_IN' signalisiert.
-
Da
die Bildung und das Senden von Datenpaketen, die den Status der
internen Sicherheitssignale SH1_IN' und SH2_IN' enthalten, wie oben beschrieben, unabhängig von
der Funktion der Mikroprozessoreinheiten 30 erfolgt, ist
damit gewährleistet,
dass bei einer Fehlfunktion einer Mikroprozessoreinheit 30 eine
Notabschaltung aller mit der modularen numerischen Steuerung verbundenen
Antriebe initiiert werden kann.
-
4 zeigt
schließlich
ein Blockschaltbild einer vierten Ausführungsform eines erfindungsgemäßen modularen
numerischen Steuergeräts.
Aus Gründen
der Übersichtlichkeit
wurde in 4 auf die Darstellung der Überwachungseinheiten
zur Erzeugung der internen Sicherheitssignale, wie sie anhand von 3 beschrieben
wurden, verzichtet.
-
Abweichend
zum in 3 dargestellten Beispiel umfasst der Hauptrechner 300 in 4 zusätzlich eine
zweite Hauptempfängereinheit 600,
eine zweite Hauptsendeeinheit 610, sowie eine zweite abschließende Datenpaket-Verarbeitungseinheit 620 und
eine zweite Datenpaket-Erzeugungseinheit 630.
-
Die
zweite Hauptempfängereinheit 600 ist über einen
Sendekanal 490 mit der ersten Sendeeinheit 440 der
abschließenden
Reglereinheit 400 der Reihenschaltung verbunden, die zweite
Hauptsendeeinheit 610 über
einen Empfangskanal 500 mit der zweiten Empfängereinheit 450 der
abschließenden Reglereinheit 400.
Somit ist wiederum ein serieller Datenübertragungskanal 480 gebildet,
der die abschließende
Reglereinheit 400 der Reihenschaltung mit dem Hauptrechner 300 verbindet.
-
Die
zweite abschließende
Datenpaket-Verarbeitungseinheit 620 und die zweite Datenpaket-Erzeugungseinheit 630 arbeiten
analog zur abschließenden
Datenpaket-Verarbeitungseinheit 320 bzw. zur Datenpaket-Erzeugungseinheit 310.
Der zweiten Datenpaket-Erzeugungseinheit 630 ist das Sicherheitssignal
SH1_IN zugeführt.
Sie bildet in determinierten Zeitabständen aus Daten, die ihr von
der Mikroprozessoreinheit 30 zugeführt werden und dem Status des
Sicherheitssignals SH1_IN Datenpakete und sendet sie über den
seriellen Datenübertragungskanal 500 zur
abschließenden
Reglereinheit 400 der Reihenschaltung. Die zweite abschließende Datenpaket-Verarbeitungseinheit 620 erhält über den seriellen
Datenübertragungskanal 490 Datenpakete, verarbeitet
sie und schaltet, abhängig
vom Status des Sicherheitssignals SH2_IN, das Abschaltsignal SH2_OUT.
Die Funktion der zweiten abschließenden Datenpaket-Verarbeitungseinheit 620,
sowie der zweiten Datenpaket-Erzeugungseinheit 630 ist
wiederum unabhängig
von der Funktion der Mikroprozessoreinheit 30.
-
In
den Reglereinheiten 400 ist die erste Datenpaket-Verarbeitungseinheit 410 jeweils
so aufgebaut, dass sie den Status des Sicherheitssignals SH2_IN
in ankommende Datenpakete einfügt
und diese zur nachfolgenden Reglereinheit 400 der Reihenschaltung
weiterleitet. Eine Auswertung der Sicherheitssignale SH1_IN und
SH2_IN, insbesondere ein Schalten der Abschaltsignale SH1_OUT und SH2_OUT
in Abhängigkeit
vom Status der Sicherheitssignale SH1_IN und SH2_IN, findet dagegen
in den Reglereinheiten 400 nur in der zweiten Datenpaket-Verarbeitungseinheit 420 statt.
Aus diesem Grund ist der Datenpaket-Erzeugungseinheit 310, abweichend
vom Ausführungsbeispiel
in 3, kein Sicherheitssignal zugeführt und
die abschließende Datenpaket-Verarbeitungseinheit 320 gibt
kein Abschaltsignal aus. Statt dessen füllt die Datenpaket-Erzeugungseinheit 310 die
Bereiche in den erzeugten Datenpaketen, die den Status von Sicherheitssignalen
aufnehmen sollen, mit Werten, die inaktiven Sicherheitssignalen
entsprechen.
-
Um
sicherzustellen, dass der Status des Sicherheitssignals SH2_IN alle
Reglereinheiten erreicht, rekonstruiert die zweite Datenpaket-Verarbeitungseinheit 620 aus
dem in eintreffenden Datenpaketen enthaltenen Status des Sicherheitssignals SH2_IN
das Signal SH2_IN und führt
es der zweiten Datenpaket-Erzeugungseinheit 630 zu, die
es wiederum in von ihr erzeugte Datenpakete einfügt. Ohne diese Maßnahme würden beispielsweise
Reglereinheiten 400, die sich vor der abschließenden Reglereinheit 400 befinden,
ein Problem, dass der abschließenden
Reglereinheit 400 über
das Sicherheitssignal SH2_IN angezeigt wird, nicht erkennen, da
die Datenpakete, die den Status dieses Sicherheitssignals SH2_IN
enthalten, nur in Richtung des Hauptrechners 300 weitergeleitet
werden.
-
Besonders
vorteilhaft an diesem Ausführungsbeispiel
ist es, dass die Datenpakete nicht zweimal alle Reglereinheiten
der Reihenschaltung passieren müssen,
sondern nach dem einmaligen Durchlaufen der Reihenschaltung direkt
zum Hauptrechner 300 zurückgeschickt werden. Darüber hinaus
können
Datenpakete aus zwei Richtungen zu den Reglereinheiten gesendet
werden, wodurch eine höhere Übertragungssicherheit
erreichbar ist. In anderen Worten ist eine doppelte Ringstruktur
gebildet, bei der Datenpakete, die von der Datenpaket-Erzeugungseinheit 310 erzeugt
wurden, nach dem einmaligen Durchlaufen der Reglereinheiten 400 der
Reihenschaltung (bezogen auf die Darstellung in 4 im
Uhrzeigersinn) bei der zweiten abschließenden Datenpaket-Verarbeitungseinheit 620 im
Hauptrechner 300 ankommen, und Datenpakete, die von der zweiten
Datenpaket-Erzeugungseinheit 630 erzeugt wurden, analog
dazu nach dem einmaligen Durchlaufen der Reihenschaltung (bezogen
auf die Darstellung in 4 gegen den Uhrzeigersinn) bei
der Datenpaket-Verarbeitungseinheit 320 der abschließenden Datenpaket-Verarbeitungseinheit 320 eintreffen.