-
[Technisches Gebiet]
-
Die vorliegende Erfindung bezieht sich auf ein Steuerungssystem und ein Verfahren dafür, genauer auf ein Steuerungssystem, das während des Betriebs rekonfigurierbar ist und ein Verfahren dafür.
-
[Hintergrundinformation]
-
Roboter und ähnliche Apparaturen verwenden Servomotoren für ihren Betrieb. (Arbeits-)Abläufe der Apparaturen können durch die Steuerung der Servomotoren kontrolliert werden.
-
Üblicherweise werden ein Hauptregler (oder Master-/Hauptkontroller) und Folgeregler (oder Hilfsregler oder Slave-Kontroller) zur Durchführung einer Ablaufsteuerung verwendet. Der Hauptregler sendet ein Steuersignal an jeden der Folgeregler, und jeder Folgeregler steuert den Servomotor entsprechend dem Steuersignal. Der Hauptregler kann mit einer Vielzahl von Folgereglern verbunden sein, und jeder Folgeregler steuert den dazugehörigen Servomotor.
-
Der Folgeregler hat normalerweise ein funktionales Baugruppenpaket (board package), das für den Betrieb des Servomotors zuständig ist. Jedoch weist der Folgeregler eine Schwäche auf, dass der Folgeregler nur den dazugehörigen Servomotor steuern kann. Anders ausgedrückt, muss der Folgeregler, falls der Servomotor durch ein anderes Modell ausgetauscht wird, ebenfalls ausgetauscht werden.
-
[Offenbarung]
-
[Technisches Problem]
-
Die vorliegende Erfindung stellt eine Steuerungssystem und ein Verfahren dafür bereit, das während eines Betriebs durch Auswechseln eines Steuerungs-Verfahrens eines Gerätes, durch Rekonfigurieren der Struktur (des Aufbaus) der FPGA (Field Programmable Gate Array – Feld-programmierbare-Gate-Anordnung), bei Aufrechterhaltung (oder Beibehaltung) der Steuerung (oder Kontrolle) des Geräts, rekonfigurierbar ist.
-
[Technisches Lösung]
-
Ein Aspekt der vorliegenden Erfindung kennzeichnet ein Steuerungssystem, das während des Betriebs rekonfigurierbar ist. Das Steuerungssystem, gemäß einer Ausführungsform der vorliegenden Erfindung, weist einen Hauptregler (oder Master-Kontroller) auf, der einen Bitstrom erzeugt, der Rekonfigurations-Information gemäß dem Befehl eines Benutzers enthält. Der erste Folgeregler (oder Hilfsregler oder Slave-Kontroller) weist auf: ein erstes dynamisches Rekonfigurationsmodul, das eine gemäß der Rekonfigurations-Information rekonfigurierte Feld-programmierbare-Gatter-Anordnung (FPGA – Field Programmable Gate Array) ist, und die einen Kontrollwert berechnet; ein statisches Rekonfigurationsmodul, das ein FPGA ist, der einen Betrieb einer Zieleinrichtung gemäß dem Kontrollwert steuert; und eine Steuereinheit (oder Kontrolleinheit), die ein oder mehrere des ersten dynamischen Rekonfigurationsmoduls und das statische Rekonfigurationsmodul gemäß der Rekonfigurations-Information rekonfiguriert.
-
Die Steuereinheit kann eine FPGA-Struktur des dynamischen Rekonfigurationsmoduls, unabhängig von dem Betrieb des statischen Rekonfigurationsmoduls, rekonfigurieren.
-
Der Folgeregler kann auch ein zweites dynamisches Rekonfigurationsmodul beinhalten, das ein FPGA ist, der gemäß der Rekonfigurations-Information rekonfiguriert ist, und der einen Kontrollwert berechnet, und die Steuereinheit kann das zweites dynamische Rekonfigurationsmodul steuern, das gemäß der Rekonfigurations-Information zu rekonfigurieren ist, falls die Kapazität der Rekonfigurations-Information größer ist, als ein vorbestimmter Wert, und den Betrieb des ersten dynamischen Rekonfigurationsmoduls aufrechterhält, bis das zweite dynamische Rekonfigurationsmodul vollständig rekonfiguriert ist.
-
Die Steuereinheit kann den Betrieb des ersten dynamischen Rekonfigurationsmoduls stoppen (oder anhalten), wenn das zweite dynamische Rekonfigurationsmodul vollständig rekonfiguriert ist.
-
Der Hauptregler kann beinhalten: eine Rekonfigurations-Bibliotheks-Speichereinheit, die Funktionsinformationen speichert, die eine Verbindungsbeziehung zwischen Gates des ersten dynamischen Rekonfigurationsmoduls oder des statischen Rekonfigurationsmoduls anzeigt; eine Rekonfigurations-Informations-Kombinationseinheit, die Funktionsinformation gemäß dem Befehl extrahiert und die Rekonfigurations-Information durch Kombinieren der extrahierten Funktionsinformation erzeugt; und eine Eintrag-Verwaltungseinheit (entry management unit), die einen Bitstrom erzeugt, der die Rekonfigurations-Information enthält.
-
Das Steuerungssystem kann auch eine Hilfs-(oder Slave-)-Kommunikationseinheit beinhalten, die den Bitstrom zu dem ersten Folgeregler überträgt, und, falls die Eintrag-Verwaltungseinheit Rekonfigurations-Zeitinformation erzeugt, welche die Zeit (oder der Zeitraum) für die Übertragung des Bitstroms gemäß dem Befehl ist, die Hilfs-Kommunikationseinheit den Bitstrom zu jedem vorbestimmten Zeitraum, oder wenn der Bitstrom gemäß der Rekonfigurations-Zeitinformation erzeugt ist, zu dem ersten Folgeregler übertragen kann.
-
Das Steuerungssystem kann auch einen zweiten Folgeregler beinhalten, der ein Regler ist, der die gleiche Konfiguration hat, wie der erste Folgeregler, wobei der Hauptregler den Bitstrom, der Rekonfigurations-Information enthält, sowohl entsprechend dem ersten Folgeregler als auch dem zweiten Folgeregler, erzeugen kann.
-
Der Hauptregler, der erste Folgeregler und der zweite Folgeregler können in einer Doppelring-Struktur (double-ring structure) des Netzwerks verbunden sein.
-
Für den Fall, dass die Zielvorrichtung verändert wird, kann das statische Rekonfigurationsmodul ein FPGA sein, der gemäß der Rekonfigurations-Information rekonfiguriert ist.
-
Ein weiterer Aspekt der vorliegenden Erfindung kennzeichnet ein Verfahren für ein rekonfigurierbares Steuerungssystem zum Steuern eines Betriebs einer Zielvorrichtung. Das Verfahren kann gemäß einer Ausführungsform der vorliegenden Erfindung beinhalten: Erzeugen eines Bitstroms, enthaltend Rekonfigurations-Information, gemäß dem Befehl eines Benutzers; Rekonfigurieren einer ersten Feld-programmierbaren-Gatter-Anordnung (FPGA), der gemäß der Rekonfigurations-Information rekonfiguriert wird und einen Kontrollwert berechnet; Berechnen eines Kontrollwerts durch Verwendung der rekonfigurierten FPGA; und Übertragen des Kontrollwertes zu einer zweiten FPGA, der den Betrieb der Zielvorrichtung steuert.
-
Das Rekonfigurieren der ersten FPGA kann unabhängig von einem Betrieb der zweiten FPGA sein.
-
Das Verfahren kann auch das Rekonfigurieren eines dritten FPGAs beinhalten, der gemäß der Rekonfigurations-Information rekonfiguriert wird, und einen Kontrollwert berechnet, falls die Kapazität der Rekonfigurations-Information größer ist als ein vorbestimmter Wert, und ein Betrieb des ersten FPGA kann aufrechterhalten werden, bis der dritte FPGA vollständig rekonfiguriert ist.
-
Das Verfahren kann auch das Stoppen (oder Anhalten) des Betriebs der ersten FPGA beinhalten, falls der dritte FPGA vollständig rekonfiguriert ist.
-
Das Erzeugen des Bitstroms kann beinhalten: Entnehmen (oder Extrahieren) von Funktionsinformation von einem Speicherplatz des Steuerungssystems, das die Funktionsinformation speichert, die eine Verbindungsbeziehung (connection relation) zwischen den Gates der ersten FPGA oder der zweiten FPGA anzeigt, gemäß dem Befehl; Erzeugen der Rekonfigurations-Information durch Kombinieren der entnommenen (oder extrahierten) Funktionsinformation; und Erzeugen eines Bitstroms, der die Rekonfigurations-Information enthält.
-
[Beschreibung der Figuren]
-
1 zeigt ein Steuerungssystem.
-
2 zeigt ein Beispiel für einen Bitstrom, erzeugt durch einen Hauptregler des Steuerungssystems.
-
3 ist ein Blockdiagramm, das eine konzeptuelle Struktur des Hauptreglers zeigt.
-
4 zeigt ein Beispiel, wie der Hauptregler Rekonfigurations-Information erzeugt.
-
5 ist ein Blockdiagramm, das knapp funktionelle Einheiten zeigt, die einen ersten Folgeregler bilden.
-
6 ist ein Flussdiagramm, das zeigt wie das Steuerungssystem einen Betrieb eines Servomotors steuert.
-
[Art und Weise der Erfindung]
-
1 zeigt ein Steuerungssystem, das während des Betriebs, gemäß einer Ausführungsform der vorliegenden Erfindung, rekonfigurierbar ist.
-
Bezugnehmend auf 1, beinhaltet das Steuerungssystem, gemäß einer Ausführungsform der vorliegenden Erfindung, einen Hauptregler 102, einen ersten Folgeregler (oder Hilfsregler) 102 und einen zweiten Folgeregler (oder Hilfsregler) 103.
-
Obwohl in der 1 zwei Folgeregler dargestellt sind, kann das Steuerungssystem, gemäß einer Ausführungsform der vorliegenden Erfindung, eine Vielzahl von Folgereglern (oder Hilfsreglern), abhängig von dem Umfeld, in dem die vorliegende Erfindung eingesetzt wird, beinhalten. Darüber hinaus kann jeder Folgeregler mit wenigstens einem Sensor verbunden sein, der jeden Servomotor, sowie Beschleunigung, Wärme, usw. von jedem Servomotor wahrnimmt.
-
Der Hauptregler 101 empfängt einen Befehl für einen Betrieb von einem Eingabegerät, wie beispielsweise einen Personal-Computer (nicht dargestellt). Hierbei ist der von dem Eingabegerät empfangene Befehl ein Signal, das einen Befehl für einen Betrieb, gemäß einer der Betriebsmöglichkeiten des Servomotors, anzeigt. Der Hauptregler 101 kann wenigstens eine der Rekonfigurations-Informationen, die eine Rekonfiguration eines FPGA (Field Programmable Gate Array – Feld-programmierbare-Gatter-Anordnung), der in einem Folgeregler angeordnet ist, anweist, mit dem empfangenen Befehl vergleichen und die Rekonfigurations-Information speichern. Beispielsweise kann der Hauptregler 101 einen Bitstrom (bitstream) durch Einfügen des, von dem Eingabegerät empfangenen Befehls, und der mit dem Befehl verglichenen Rekonfigurations-Information, erzeugen.
-
Beispielsweise kann, für den Fall, dass es zwei Folgeregler 102, 103, wie in 1 dargestellt, gibt, der Hauptregler 101 einen Bitstrom durch Einfügen wenigstens einer ersten Rekonfigurations-Information, die zu dem ersten Folgeregler 102 gehört (anders ausgedrückt diesem zugeordnet ist), und einer zweiten Rekonfigurations-Information, die zu dem zweiten Folgeregler 103 gehört (anders ausgedrückt diesem zugeordnet ist), erzeugen.
-
Nachfolgend wird der Aufbau des Bitstroms im Detail mit Bezug auf die 2 beschrieben.
-
2 zeigt ein Beispiel für einen Bitstrom, der durch einen Hauptregler des Steuerungssystems, gemäß einer Ausführungsform der vorliegenden Erfindung, erzeugt ist.
-
Der Hauptregler 101 erzeugt einen Bitstrom, der Rekonfigurations-Information beinhaltet, die eine Rekonfiguration des FPGA, der in dem ersten Folgeregler 102 und dem zweiten Folgeregler 103 angeordnet ist, anweist, um die Servomotoren zu steuern, die mit dem ersten Folgeregler 102 bzw. mit dem zweiten Folgeregler 103 verbunden sind.
-
Hierbei kann der Hauptregler 101 erlauben, dass die Rekonfigurations-Information nach der Slave-(oder Hilfs)-Identifikationsnummer, die eine Information zur Identifizierung eines jeden der Folgeregler ist, in dem Bitstrom so angeordnet wird, dass jeder Folgeregler ohne Weiteres die entsprechende Rekonfigurations-Information entnehmen kann.
-
Beispielweise, in 2, sind erste Slave-Identifikationsinformation 210 und erste Rekonfigurations-Information 220 eine Slave-Identifikationsinformation und Rekonfigurations-Information, die zu dem ersten Folgeregler 102 gehören, und zweite Slave-Identifikationsinformation 230 und zweite Rekonfigurations-Information 240 sind eine Slave-Identifikationsinformation und Rekonfigurations-Information die zu dem zweiten Folgeregler 103 gehören. Der erste Folgeregler 102 kann nach der ersten Slave-Identifikationsinformation 210, die in dem Bitstrom enthalten ist, suchen, kann Daten zwischen der ersten Slave-Identifikationsinformation 210 und der nächsten Slave-Identifikationsinformation, als die erste Rekonfigurations-Information 220, erkennen, und kann die erste Rekonfigurations-Information 220 aus dem Bitstrom entnehmen.
-
Bezugnehmend auf 1, kann der Hauptregler 101 periodisch eine Vielzahl von Bitströmen gemäß einem, von dem Eingabegerät empfangen Befehl, erzeugen.
-
Beispielsweise kann, falls der von dem Eingabegerät empfangene Befehl den Servomotor dazu anweist, Betriebs- und Anhalteschritte zu vorbestimmten Intervallen zu wiederholen, der Hauptregler 101 einen Bitstrom erzeugen, der Rekonfigurations-Information für die Durchführung des Betriebs des Servomotors enthält, und einen Bitstrom erzeugen, der Rekonfigurations-Information für die Durchführung des Anhaltens des Servomotors zu vorbestimmten Intervallen enthält.
-
Nachfolgend wird der Aufbau der Hauptreglers 101 im Detail mit Bezug auf 3 beschrieben.
-
3 ist ein Blockdiagramm, das einen konzeptionellen Aufbau des Hauptreglers zeigt. Bezugnehmen auf 3 beinhaltet der Hauptregler 101 eine Host-Kommunikationseinheit 310, eine Rekonfigurations-Informations-Kombinationseinheit 320, eine Rekonfigurations-Bibliotheks-Speichereinheit 330, eine Eintrag-Verwaltungseinheit 340 und eine Hilfs-(oder Slave-)-Kommunikationseinheit 350.
-
Die Host-Kommunikationseinheit 310 empfängt einen Befehl eines Benutzers von dem Eingabegerät über ein Netzwerk. Die Host-Kommunikationseinheit 310 überträgt den empfangenen Befehl zu der Rekonfigurations-Informations-Kombinationseinheit 320.
-
Die Rekonfigurations-Informations-Kombinationseinheit 320 entnimmt eine oder mehrere Funktionsinformationen, die in der Rekonfigurations-Bibliotheks-Speichereinheit, gemäß dem von der Host-Kommunikationseinheit empfangenen Befehl, gespeichert sind, und erzeugt Rekonfigurations-Information durch Kombinieren der entnommenen Funktionsinformation.
-
Hierbei kann die Funktionsinformation, gemäß einer Ausführungsform der vorliegenden Erfindung, Information zu einer Verbindungsbeziehung zwischen Gattern der FPGA der Folgeregler enthalten, und kann in unterschiedlicher Form, beispielsweise als Bitstring, wiedergegeben sein. Darüber hinaus kann die FPGA, gemäß einer Ausführungsform der vorliegenden Erfindung, eine bestimmte Funktion ausführen, wenn die FPGA gemäß der Funktionsinformation rekonfiguriert ist. Die Schritte für die Erzeugung der Rekonfigurations-Information werden später im Detail mit Bezug auf 4 beschrieben. Hierbei überträgt die Rekonfigurations-Informations-Kombinationseinheit 320 die erzeugte Rekonfigurations-Information zu der Eintrag-Verwaltungseinheit 340.
-
Die Eintrag-Verwaltungseinheit 340 erzeugt Rekonfigurations-Zeit-Information und Rekonfigurations-Modus-Information, basierend auf der von der Rekonfigurations-Informations-Kombinationseinheit 320 empfangenen Rekonfigurations-Information.
-
Hierbei zeigt die Rekonfigurations-Zeit-Information an, ob der Bitstrom, der die Rekonfigurations-Information enthält, sofort gesendet wird oder wann die Hilfs-Kommunikationseinheit 350 den Bitstrom periodisch sendet.
-
Die Rekonfigurations-Modus-Information gibt an, ob jeder der Folgeregler, die den Bitstrom empfangen haben, die FPGA rekonfigurieren wird.
-
Die Eintrag-Verwaltungseinheit 340 fügt die Rekonfigurations-Modus-Information der Rekonfigurations-Information hinzu, erzeugt einen Bitstrom, der jede der Rekonfigurations-Informationen und Slave-Identifikationsinformationen enthält, und übermittelt den Bitstrom zu der Hilfs-Kommunikationseinheit 350 zusammen mit der Rekonfigurations-Zeit-Information.
-
Die Hilfs-Kommunikationseinheit 350 übermittelt den Bitstrom zu dem ersten Folgeregler 102 oder dem zweiten Folgeregler 103, abhängig von der Rekonfigurations-Zeit-Information. Insbesondere, wenn die Rekonfigurations-Zeit-Information angibt, dass der Bitstrom sofort zu übertragen ist, übermittelt die Hilfs-Kommunikationseinheit 350 den Bitstrom sofort zu dem Folgeregler, und falls die Rekonfigurations-Zeit-Information angibt, dass der Bitstrom gemäß einer Periode von Übertragungen zu übermitteln, übermittelt die Hilfs-Kommunikationseinheit 350 den Bitstrom zu dem ersten Folgeregler 102 oder dem zweiten Folgeregler 103 zu jeder der angegeben Perioden der Übermittlung.
-
Rückbeziehend auf 1, übermittelt der Hauptregler 101 den erzeugten Bitstrom zu dem ersten Folgeregler 102. Hierbei kann der Hauptregler 101 mit dem ersten Folgeregler 102 und dem zweiten Folgeregler 103 in einer Doppel-Ringstruktur (double-ring structure) verbunden sein. Insbesondere bei dem Fall, bei dem der durch den Hauptregler 101 zu dem ersten Folgeregler 102 übermittelte Bitstrom nicht von dem zweiten Folgeregler 103 empfangen wird, kann die Doppel-Ringstruktur dem Hauptregler 101 ermöglichen, den erzeugten Bitstrom wieder an den zweiten Folgeregler 103 zu übermitteln. Daher ist, gemäß einer Ausführungsform der vorliegenden Erfindung, ein normaler Betrieb möglich, auch wenn jedes Netzwerk zwischen dem Hauptregler 101, dem ersten Folgeregler 102 und dem zweiten Folgeregler 103 unterbrochen ist.
-
Der erste Folgeregler 102 entnimmt die Rekonfigurations-Information aus dem von dem Hauptregler 101 empfangenen Bitstrom, rekonfiguriert den FPGA gemäß der Rekonfigurations-Information, und steuert den Servomotor durch Verwendung der rekonfigurierten FPGA. Der Aufbau der ersten Folgereglers 102 wird später im Detail mit Bezug auf 5 beschrieben.
-
4 zeigt ein Beispiel, wie der Hauptregler Rekonfigurations-Information erzeugt.
-
Bezugnehmend auf 4, empfängt die Rekonfigurations-Informations-Kombinationseinheit 320 des Hauptreglers 101 einen Befehl von dem Eingabegerät. Die Rekonfigurations-Informations-Kombinationseinheit 320 entnimmt notwendige Funktionsinformation von der Rekonfigurations-Speichereinheit 330 gemäß dem empfangenen Befehl. Die Rekonfigurations-Bibliotheks-Speichereinheit 330 kann eine oder mehrere Funktionsinformationen speichern, die Rekonfigurations-Informations-Kombinationseinheit 320 kann eine Liste von Funktionsinformation, die für die Rekonfiguration der FPGA gemäß jedem Befehl den von dem Benutzer empfangen werden kann, vorspeichern. Entsprechend durchsucht, sobald ein Befehl empfangen wurde, die Rekonfigurations-Informations-Kombinationseinheit 320 die Liste nach Funktionsinformation, die mit dem Befehl übereinstimmt, entnimmt Funktionsinformation, die in der durchsuchten Liste der Rekonfigurations-Bibliotheks-Speichereinheit 330 enthalten sind, und erzeugt Rekonfigurations-Information durch Kombinieren der Funktions-Information.
-
Beispielsweise kann die Rekonfigurations-Bibliotheks-Speichereinheit 330 Funktionsinformation über den Algorithmus, der von den Folgereglern auszuführen ist, Funktionsinformation, die eine Funktion anzeigt, die Daten von einem Sensor zum überwachen des Servomotors empfängt, und Funktionsinformation, die eine Funktion anzeigt, die einen Betrieb eines eigentlichen Motors steuert, speichern. Die Rekonfigurations-Informations-Kombinationseinheit 320 empfängt BEFEHL1 (COMMAND1) von einem Eingabegerät 410 und durchsucht die Liste nach Funktionsinformation, die mit BEFEHL1 (COMMAND1) übereinstimmt. Die Rekonfigurations-Informations-Kombinationseinheit 320 bestätigt, dass die Funktionsinformation, die in der Liste der Funktionsinformation enthalten ist, ALGORITHMUS1, SENSOR INPUT1 und MOTORANTRIEB2 (MOTOR DRIVE2) ist, und entnimmt jede der Funktionsinformation aus der Rekonfigurations-Bibliotheks-Speichereinheit 330. Die Rekonfigurations-Informations-Kombinationseinheit 320 erzeugt Rekonfigurations-Information 420 gemäß dem BEFEHL1 (COMMAND1) durch Kombinieren der entnommenen Funktionsinformation. Die Rekonfigurations-Informations-Kombinationseinheit 320 kann die Rekonfigurations-Information 420 an die Eintrag-Verwaltungseinheit 340 übermitteln.
-
Obwohl der Hauptregler 101 beschrieben ist, Rekonfigurations-Information dadurch zu erzeugen, dass die Rekonfigurations-Informations-Kombinationseinheit 320 Funktionsinformation entnimmt und kombiniert, ist es auch möglich, dass die Rekonfigurations-Informations-Kombinationseinheit 320 Rekonfigurations-Information gemäß jedem Befehl hierin vorgespeichert hat und die Rekonfigurations-Information gemäß einem besonderen Befehl an die Eintrags-Verwaltungseinheit 340 übermittelt, wenn der besondere Befehl empfangen wird. Dementsprechend ist es möglich, dass der Hauptregler 101 Rekonfigurations-Information ohne einen besonderen Schritt des Kombinierens der Funktionsinformation entnimmt und die Rekonfigurations-Information an die Eintrag-Verwaltungseinheit 340 übermittelt.
-
5 ist ein Blockdiagramm, das knapp funktionelle Einheiten zeigt, die einen ersten Folgeregler bilden. Bezugnehmens auf 5, beinhaltet der erste Folgeregler 102 eine Steuereinheit 510 und eine Rekonfigurations-Einheit 520.
-
Die Steuereinheit 510 empfängt einen Bitstrom von dem Hauptregler 101 und entnimmt Rekonfigurations-Information aus dem Bitstrom. Die Steuereinheit 510 überprüft, ob die Rekonfigurations-Modus-Information, die in der Rekonfigurations-Information enthalten ist, eine Rekonfiguration des FPGA anzeigt. Falls die Rekonfigurations-Modus-Information keine Rekonfiguration des FPGA anzeigt, führt die Steuereinheit 510 nicht den Schritt der Rekonfiguration des FPGA aus. Falls die Rekonfigurations-Modus-Information eine Rekonfiguration der FPGA anzeigt, rekonfiguriert die Steuereinheit 510 eine Gatter-Anordnungs-Struktur der Rekonfigurations-Einheit 520 gemäß der Rekonfigurations-Information. Beispielsweise, falls die Rekonfigurations-Information eine FPGA-Struktur anzeigt, bei der Daten von dem Sensor, gemäß dem überwachen des Servomotors empfangen werden, und die empfangenen Daten entsprechend einem vorbestimmten Algorithmus berechnet werden, und der Servomotor gemäß dem Ergebnis der Berechnung gesteuert wird, steuert die Steuereinheit 510 die Rekonfigurations-Einheit 520, um den FPGA gemäß der Rekonfigurations-Information zu rekonfigurieren.
-
Hierbei kann, obwohl die zuvor beschriebene Steuereinheit 510 ermittelt hat, die Rekonfiguration entsprechend der Rekonfigurations-Modus-Information auszuführen, die Steuereinheit 510 gemäß einer weiteren Ausführungsform der vorliegenden Erfindung ermitteln ob oder ob nicht der FPGA rekonfiguriert werden braucht, basierend ob oder ob nicht Rekonfigurations-Information gemäß dem entsprechenden Folgeregler in dem Bitstrom enthalten ist.
-
Die Rekonfigurations-Einheit 520 enthält ein statisches Rekonfigurationsmodul 523, ein erstes dynamisches Rekonfigurationsmodul 526 und ein zweites dynamisches Rekonfigurationsmodul 529, die mit dem FPGA gebildet sind. Das statische Rekonfigurationsmodul 523, das ein Modul ist, dass den Betrieb des Servomotors steuert, kann den Servomotor steuern, damit dieser eine Rotationsbeschleunigung, eine Gegenrotationsbeschleunigung, Anhalten, usw. ausführt, gemäß einem Signal, empfangen von den dynamischen Rekonfigurationsmodulen (d. h. dem ersten dynamischen Rekonfigurationsmodul 526 und dem zweiten dynamischen Rekonfigurationsmodul 529). Da das statische Rekonfigurationsmodul 523 direkt den Betrieb de Servomotors steuert, wird keine Rekonfiguration durchgeführt während der erste Folgeregler 102 den Betrieb des Servomotors steuert. Für den Fall jedoch, dass der Servomotor durch eine andere Art von Gerät ersetzt wird, kann das statische Rekonfigurationsmodul 523 eine Rekonfiguration durchführen. Insbesondere für den Fall, dass der Benutzer einen Befehl bereitstellt, die ersetzte andere Art von Gerät durch das Eingabegerät zu kontrollieren, kann der Hauptregler 101 einen Bitstrom, der die Rekonfigurations-Information für die Rekonfiguration des statischen Rekonfigurationsmoduls 523 enthält, übermitteln, um diesem Befehl für beispielsweise die Steuereinheit 510 des ersten Folgereglers 102, zu entsprechen. Dann rekonfiguriert die Steuereinheit 510 die Gatter-Anordnungs-Struktur der statischen Rekonfigurationseinheit 523 gemäß der Rekonfigurations-Information, die in dem Bitstrom enthalten ist, so dass das ersetzte andere Art von Gerät gesteuert (kontrolliert) werden kann.
-
Darüber hinaus hat das erste dynamische Rekonfigurationsmodul 526 den FPGA gemäß der Steuerung der Steuereinheit aber unabhängig von dem statischen Rekonfigurationsmodul 523 rekonfiguriert. Das heißt, dass das erste dynamische Rekonfigurationsmodul 526 rekonfiguriert wird, ungeachtet ob das statische Rekonfigurationsmodul 523 momentan den Servomotor steuert oder rekonfiguriert.
-
Beispielsweise empfängt das dynamische Rekonfigurationsmodul 526 eine Rotationsgeschwindigkeit des Servomotors von dem Sensor, der die Rotationsgeschwindigkeit des Servomotors ermittelt, und kann eine Berechnung gemäß einen Algorithmus durchführen, die für die Rotationsgeschwindigkeit des Servomotors vorbestimmt ist, falls die Rotationsgeschwindigkeit eine bestimmte Geschwindigkeit überschreitet. Das dynamische Rekonfigurationsmodul 526 kann einen Kontrollwert an das statische Rekonfigurationsmodul 523 übermitteln, der das Ergebnis einer Berechnung ist. Weiterhing kann das statische Rekonfigurationsmodul 523 die Rotationsgeschwindigkeit an eine Geschwindigkeit entsprechend dem Kontrollwert anpassen.
-
In einem weiteren Beispiel der Rekonfiguration des ersten dynamischen Rekonfigurationsmoduls 526, wird angenommen, dass die Steuerung des Servomotors das sukzessive Empfangen von Daten eines ersten Sensors, eines zweiten Sensors und eines dritten Sensors und das Durchführen einer Berechnung mit einem ersten Algorithmus erfordert, und dass der Bitstrom hierfür durch den Hauptregler 101 erzeugt wird. In diesem Fall kann die Steuereinheit 510 einen ersten Bitstrom von dem Hauptregler 101 empfangen. Hierbei enthält der erste Bitstrom Rekonfigurations-Information, die eine FPGA-Struktur für den Empfang der Daten von dem ersten Sensor und Durchführen einer Berechnung mit dem ersten Algorithmus anzeigt. Dann steuert die Steuereinheit 510 das erste dynamische Rekonfigurationsmodul 526, um die FPGA-Struktur gemäß der Rekonfigurations-Information zu rekonfigurieren. Hierbei kann das statische Rekonfigurationsmodul 523 fortfahren, den Servomotor zu steuern. Nach dem Abschluss der Rekonfiguration, empfängt das erste dynamische Rekonfigurationsmodul 526 die Daten von dem ersten Sensor gemäß der FPGA-Struktur und gibt einen Kontrollwert aus, der ein Wert ist, der durch den ersten Algorithmus berechnet ist. Das erste dynamische Rekonfigurationsmodul 526 sendet den Kontrollwert an das statische Rekonfigurationsmodul 523. Das statische Rekonfigurationsmodul 523 fährt mit der Steuerung des Servomotors entsprechend dem Kontrollwert fort.
-
Anschließend kann die Steuereinheit 510 einen zweiten Bitstrom von dem Hauptregler 101 empfangen. Hierbei enthält der zweite Bitstrom Rekonfigurations-Information, die eine FPGA-Struktur zum Empfangen der Daten von dem zweiten Sensor und dem Durchführen der Berechnung mit dem ersten Algorithmus, anzeigt. Nach den zuvor beschriebenen Schritten, ist das erste dynamische Rekonfigurationsmodul 526 dann zu einer FPGA-Struktur rekonfiguriert, die das Empfangen der Daten von dem zweiten Sensor erlaubt. Darüber hinaus fährt das statische Rekonfigurationsmodul 523 damit fort, den Servomotor entsprechend dem Kontrollwert zu steuern.
-
Anschließend kann die Steuereinheit 510 einen dritten Bitstrom von dem Hauptregler 101 empfangen. Hierbei enthält der dritte Bitstrom Rekonfigurations-Information, die eine FPGA-Struktur zum Empfangen der Daten von dem dritten Sensor und dem Durchführen der Berechnung mit dem ersten Algorithmus, anzeigt. Nach den zuvor beschriebenen Schritten ist das erste dynamische Rekonfigurationsmodul 526 dann zu einer FPGA-Struktur rekonfiguriert, die das Empfangen der Daten von dem dritten Sensor erlaubt. Darüber hinaus fährt das statische Rekonfigurationsmodul 523 damit fort, den Servomotor entsprechend dem Kontrollwert zu steuern.
-
Entsprechend können die Daten von dem ersten Sensor, dem zweiten Sensor und dem dritten Sensor nacheinander empfangen werden.
-
Konventionelle Betriebsregler erforderten ein Modul für jeden Sensor um die Daten von dem jeweiligen Sensor zu empfangen, falls Daten von den Sensoren nacheinander empfangen wird, und mussten unweigerlich einen ausreichend große Schaltung haben.
-
Jedoch ist es für den ersten Folgeregler 510 möglich ein dynamisches Rekonfigurationsmodul 526 zu verwenden um Daten nacheinander von den Sensoren zu Steuerung des Servomotors zu empfangen, bei Verwendung des statischen Rekonfigurationsmodul 523 zur Aufrechterhaltung der Steuerung des Servomotors. Dementsprechend kann das Steuerungssystem verhältnismäßig kleiner hergestellt werden als die konventionellen Betriebsregler.
-
Hierbei sind die Funktionen des statischen Rekonfigurationsmodul 523 und des ersten dynamischen Rekonfigurationsmodul 526 nicht auf die Beschreibung hierin beschränkt. Anders ausgedrückt können die Funktionen des statischen Rekonfigurationsmodul 523 und des ersten dynamischen Rekonfigurationsmodul 526 abhängig von der von der Steuereinheit 510 empfangenen Rekonfigurations-Information variieren.
-
Das zweite dynamische Rekonfigurationsmodul 529 hat die gleiche Konfiguration wie die des ersten dynamischen Rekonfigurationsmodul 526 und über die gleichen Rekonfigurations-Schritte rekonfiguriert werden, wie die des ersten dynamischen Rekonfigurationsmodul 526.
-
Bei einer anderen Ausführungsform der vorliegenden Erfindung kann die Steuereinheit 510 die FPGA-Struktur des ersten dynamischen Rekonfigurationsmoduls 526 oder des zweiten dynamischen Rekonfigurationsmoduls 529, abhängig von der Kapazität der aus dem Bitstrom entnommenen Rekonfigurations-Information, rekonfigurieren.
-
Beispielsweise, falls angenommen wird, dass das erste dynamische Rekonfigurationsmodul 526 momentan arbeitet, rekonfiguriert die Steuereinheit 510 die FPGA des zweiten dynamischen Rekonfigurationsmoduls 529, die momentan nicht arbeitet, gemäß der Rekonfigurations-Information, falls die Kapazität der Rekonfigurations-Information größer ist als eine vorbestimmte Kapazität. Nachdem die Rekonfiguration abgeschlossen ist, sendet das zweite dynamische Rekonfigurationsmodul 529 ein Rekonfigurations-Abschluss-Signal, das anzeigt, dass die Rekonfiguration abgeschlossen ist, an die Steuereinheit 510. Sobald der Rekonfigurations-Abschluss empfangen ist, sendet die Steuereinheit 510 eine Betriebs-Anhalte-Anfrage zum Anfragen des Anhaltens des Betriebs an das erste dynamische Rekonfigurationsmodul 526, das momentan arbeitet. Das erste dynamische Rekonfigurationsmodul 526 hält den Betrieb entsprechend der Betriebs-Anhalte-Anfrage an. Hierbei führt das zweite dynamische Rekonfigurationsmodul 529, bei dem die FPGA-Struktur gemö0 der Rekonfigurations-Information rekonfiguriert ist, eine Berechnung durch und sendet das Ergebnis der Berechnung an das statische Rekonfigurationsmodul 523. Dann kann das statische Rekonfigurationsmodul 523, nach dem Empfangen des Ergebnisses der Berechnung von dem zweiten dynamischen Rekonfigurationsmodul 529, den Servomotor steuern.
-
Obwohl es zuvor beschrieben ist, das die Steuereinheit 510 ermittelt, ob die Kapazität der Rekonfigurations-Information des von dem Hauptregler 101 empfangenen Bitstroms größer ist als ein vorbestimmter Wert, ist es auch in einer weiteren Ausführungsform möglich, dass der Hauptregler 101 ermittelt, ob die Kapazität der Rekonfigurations-Information größer ist als ein vorbestimmter Wert, und kann Information, entsprechend der Ermittlung in einen Header (anders ausgedrückt ein Kopffeld) der Rekonfigurations-Information einfügen.
-
Hierbei kann die Steuereinheit 510 die Information in dem Header der Rekonfigurations-Information überprüfen und die Rekonfigurations-Schritte des ersten dynamischen Rekonfigurationsmoduls 526 oder des zweiten dynamischen Rekonfigurationsmoduls 529 durchführen.
-
6 ist ein Flussdiagramm, das zeigt wie das Steuerungssystem einen Betrieb eines Servomotors steuert.
-
Bezugnehmend auf 6 empfängt der Hauptregler 101 im Schritt 610 einen Befehl von einem Eingabegerät.
-
In Schritt 620 erzeugt der Hauptregler 101 einen Bitstrom zu Steuerung des Servomotors entsprechend dem in Schritt 610 empfangenen Befehl. Hierbei erzeugt der Hauptregler 101 entsprechend dem Befehl einen Bitstrom, der Rekonfigurations-Information enthält, die eine FPGA-Struktur eines Folgereglers, die für die Steuerung des Servomotors erforderlich ist, anzeigt. Der Hauptregler 101 sendet einen Bitstrom an den ersten Folgeregler 102.
-
In Schritt 630 entnimmt der erste Folgeregler 102 Rekonfigurations-Information aus dem empfangenen Bitstrom. Hierbei kann, nach dem Entnehmen der Rekonfigurations-Information, der erste Folgeregler 102 den Bitstrom an den zweiten Folgeregler 103 senden. Der zweite Folgeregler 103, der den Bitstrom empfangen hat, kann auf die gleiche Art betrieben werden, wie der erste Folgeregler 102 nach dem Schritt 630.
-
In Schritt 640 rekonfiguriert der erste Folgeregler 102 den Aufbau (oder Struktur) der Rekonfigurations-Einheit, die ein FPGA-Modul ist, gemäß der Rekonfigurations-Information. Hierbei rekonfiguriert der erste Folgeregler 102 das zweite dynamische Rekonfigurationsmodul 529 in dem Fall, dass der erste Folgeregler 102 das Steuern des Servomotors anhalten muss, falls das erste dynamische Rekonfigurationsmodul 526, das momentan unter einer Vielzahl von dynamischen Rekonfigurationsmodulen den Servomotor steuert, entsprechend der Rekonfigurations-Information rekonfiguriert wurde. Sobald die Rekonfiguration des zweiten dynamischen Rekonfigurationsmoduls 29 abgeschlossen ist, kann der erste Folgeregler 102 den Betrieb des ersten dynamischen Rekonfigurationsmoduls 523 anhalten und kann den Servomotor durch Verwendung des zweiten dynamischen Rekonfigurationsmoduls 529 und des statischen Rekonfigurationsmoduls 523 steuern. Darüber hinaus ist es für den ersten Folgeregler 102 möglich, das erste statische Rekonfigurationsmodul 523, das erste dynamische Rekonfigurationsmodul 526 und das zweite dynamische Rekonfigurationsmodul 529 unabhängig entsprechend der Rekonfigurations-Information zu rekonfigurieren. Das heißt, dass für Fall, dass die Rekonfigurations-Information nur die Struktur des ersten dynamischen Rekonfigurationsmoduls 526 oder des zweiten dynamischen Rekonfigurationsmoduls 529 zeigt, der erste Folgeregler 102 das erste dynamischen Rekonfigurationsmodul 526 oder das zweite dynamischen Rekonfigurationsmodul 529 rekonfigurieren kann, während das statische dynamischen Rekonfigurationsmodul 523 den Servomotor steuert.
-
Im Schritt 650 steuert der erste Folgeregler 102 den Betrieb des Servomotors durch Verwendung der Rekonfigurations-Einheit, die im Schritt 640 rekonfiguriert wurde.
-
Auch wenn beschrieben worden ist, dass das Steuerungssystem den Servomotor steuert, sollte erkannt werden, dass andere Geräte als der Servomotor durch konfigurieren der Rekonfigurations-Information, um für andere Geräte geeignet zu sein, kontrolliert werden können.
-
Bislang wurde die vorliegende Erfindung mit Bezug auf bestimmte Ausführungsformen beschrieben, aber es gibt viele weitere Ausführungsformen, zusätzlich zu den zuvor beschriebenen Ausführungsformen, in den Ansprüchen der vorliegenden Erfindung. Jeder Fachmann auf dem Gebiet, zu dem die vorliegende Erfindung gehört, soll in der Lage sein zu verstehen, dass die vorliegende Erfindung in abgewandelter Form ausgeführt werden kann, ohne von den wesentlichen Merkmalen der vorliegenden Erfindung abzuweichen. Dementsprechend sind die enthaltenen Ausführungsformen in anschauliche Weise zu verstehen, und nicht in einschränkender Weise. Der Umfang der vorliegenden Erfindung soll durch die beigefügten Ansprüche definiert sein, nicht durch die obige Beschreibung, und jegliche Unterschiede mit gleicher Wirkung sollen als in der vorliegenden Erfindung eingeschlossen zu verstehen sein.
-
[Industrielle Anwendbarkeit]
-
Das Steuerungssystem und das Verfahren dafür, gemäß einer Ausführungsform der vorliegenden Erfindung, können flexibel verschiedene Geräte durch Rekonfigurieren eine Gatter-Anordnungs-Struktur entsprechend einer Eingabe eines Benutzers steuern.
-
Das Steuerungssystem und das Verfahren dafür, gemäß einer Ausführungsform der vorliegenden Erfindung, können die Größe eines Steuergeräts, durch Rekonfigurieren einer Gatter-Anordnungs-Struktur und Steuerung des Geräts unter Verwendung der rekonfigurierten Gatteranordnung, verkleinern.