[go: up one dir, main page]

DE19813203A1 - Servosteuerverfahren und Servosteuersystem - Google Patents

Servosteuerverfahren und Servosteuersystem

Info

Publication number
DE19813203A1
DE19813203A1 DE19813203A DE19813203A DE19813203A1 DE 19813203 A1 DE19813203 A1 DE 19813203A1 DE 19813203 A DE19813203 A DE 19813203A DE 19813203 A DE19813203 A DE 19813203A DE 19813203 A1 DE19813203 A1 DE 19813203A1
Authority
DE
Germany
Prior art keywords
information
servo
area
memory
data
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
DE19813203A
Other languages
English (en)
Other versions
DE19813203B4 (de
Inventor
Chihiro Morita
Misako Okada
Nobuyasu Takaki
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE19813203A1 publication Critical patent/DE19813203A1/de
Application granted granted Critical
Publication of DE19813203B4 publication Critical patent/DE19813203B4/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/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0421Multiprocessor system
    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4141Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by a controller or microprocessor per axis
    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4148Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by using several processors for different functions, distributed (real-time) systems
    • 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/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34272Communication pc and nc, pic over file system of pc, direct access pc to nc, pic
    • 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/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34279Pc, personal computer as controller

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Numerical Control (AREA)
  • Control Of Position Or Direction (AREA)

Description

Die vorliegende Erfindung betrifft ein Servosteuerverfahren und ein Servosteuersystem mit einem Computer, beispielsweise einem Personalcomputer (PC), und mehreren miteinander verbundenen Servosteuerungen.
Bei einem herkömmlichen Servosteuersystem mit einem Hostcomputer und mehreren an den Hostcomputer angeschlossenen Servosteuerungen sind der Hostcomputer und jede der Servosteuerungen miteinander über eine serielle Kommunikationsleitung wie beispielsweise RS-232C verbunden, so daß Datentransaktionen asynchron in Bezug aufeinander durchgeführt werden.
Fig. 24 zeigt als Blockschaltbild ein NC-System, welches in der japanischen Patentoffenlegungsschrift Nr. HEI-1-195509 beschrieben ist. Mehrere NC-Einheiten sind mit der Einheit eines Hostcomputers über RS-232C in diesem NC-System angeschlossen, wie in der Figur gezeigt ist. Bei diesem Beispiel für ein NC-System weist der Hostcomputer 163 mehrere RS-232C-Schnittstellen auf, und sind Schnittstellenwandlerplatinen bei den jeweiligen RS-232C-Schnittstellen vorgesehen. Jede der Schnittstellenwandlerplatinen ist mit jeder der NC-Einheit über eine Bandleseschnittstelle DLM verbunden, und mehrere NC-Einheiten sind mit dem Hostcomputer 163 über mehrere Schnittstellenwandlerplatinen 160-1 bis 160-n verbunden.
Weiterhin ist mit diesem Hostcomputer 163 eine NC-Einheit mit einem entfernten Puffer über eine weitere RS-232C-Schnitt­ stelle verbunden.
Dieses NC-System kann eine Verarbeitung, von dem Hostcomputer 163 zu den NC-Einheiten 170-1 bis 170-n, durchführen, beispielsweise die Einstellung oder Änderung von Parametern, das Lesen/Schreiben eines Steuerprogramms, und die intermittierende Überwachung interner Daten in den NC-Einheiten 170-1 bis 170-n.
In dem Servosystem, bei welchem der Hostcomputer und die Servosteuerungen miteinander über serielle Kommunikationsleitungen wie beispielsweise jeweils RS-232C verbunden sind, um asynchron zueinander Datentransaktionen durchzuführen, ist die Kommunikationsgeschwindigkeit niedrig, und werden Kommunikationsvorgänge asynchron in Bezug auf den Steuerzyklus jeder der Servosteuerungen durchgeführt, so daß beispielsweise dann, wenn interne Daten in irgendeiner der Servosteuerungen von dem Hostcomputer überwacht werden, dynamische Änderungen der internen Daten in der Servosteuerung nicht mit hoher Genauigkeit überwacht werden können, da die Überwachung nur in einem vergleichsweise langen Zyklus durchgeführt werden kann, verglichen mit dem Steuerzyklus für die Servosteuerung, und auch die Abtastzeit nicht exakt festgelegt ist.
Aus diesem Grund mußten die Geschwindigkeit und der Stromwert oder dergleichen eines Servomotors dadurch überwacht werden, daß ein teures Meßgerät mit großen Abmessungen verwendet werden mußte, beispielsweise ein digitaler Speicheroszillograph, mit dem die Einstellungen vorgenommen wurden, wenn das Servosystem in Bezug gesetzt wurde, und sich im Betrieb befand, usw. Darüber hinaus war infolge der voranstehend geschilderten Umstände eine Arbeit in der Nähe von Schaltungen mit hohen Spannungen und hohen Strömen nötig, beispielsweise bei einem Verteilerschrank, so daß Befürchtungen in Bezug auf die erforderliche Sicherheit auftraten.
Wenn eine Verarbeitung wie beispielsweise die Übertragung einer Datei mit großem Umfang durchgeführt wird, bei welcher eine Kommunikationsleitung über einen längeren Zeitraum belegt ist, kann eine Verarbeitung wie beispielsweise eine Überwachung während dieses Zeitraums nicht durchgeführt werden.
Wenn beispielsweise beim Schweißen verschiedener Werkstücke, die jeweils eine komplizierte Form oder Beschichtung aufweisen, eine große Menge an Punktdaten erforderlich ist, und darüber hinaus relativ häufig ein Bearbeitungsprogramm umgeschrieben werden muß, werden Punktdaten und ein Bearbeitungsprogramm häufig von dem Hostcomputer an die Servosteuerungen übertragen, und aus diesem Grund treten gewisse Schwierigkeiten bei der Überwachung der momentanen Position und dergleichen des Servomotors durch den Hostcomputer auf, oder bei der Übertragung eines Startbefehls vom Hostcomputer an die Servosteuerungen.
Wenn eine Einheit mit verhältnismäßig großen Schwankungen der Last oder Belastung gesteuert werden soll, dann wird normalerweise ein Verfahren eingesetzt, bei welchem ein Befehl selbst so korrigiert wird, daß die Sollbewegung mit der tatsächlichen Bewegung übereinstimmt. Wenn dieses Verfahren bei einem Fließbandförderer eingesetzt wird, beispielsweise einer Bandfördereinrichtung, bei welcher Änderungen der Belastung relativ häufig auftreten, und für welche mehrere Servosteuerungen verwendet werden, müssen in den jeweiligen Servosteuerungen jeweils Speicher hoher Kapazität mit der jeweiligen Software zur Realisierung der darin gespeicherten Funktion zur Ausführung bereitgestellt werden. Darüber hinaus nimmt bei Einsatz dieses Verfahrens die Belastung der CPU zu, und hierdurch werden Funktionen verhindert, die ursprünglich von den Servosteuerungen ausgeführt werden sollten, beispielsweise Verarbeitungen zur Auswahl und Verwendung eines von mehreren Algorithmen entsprechend jedem zu steuernden oder zu bearbeitenden Gegenstand, um Algorithmen auszutauschen.
Wenn Daten von dem Hostcomputer in die mehreren Servosteuerungen eingeschrieben werden sollen, kann keine Verarbeitung zum Schreiben von Daten an jede der Servosteuerungen durch zueinander passende Steuerzyklen der Servosteuerungen und zum Synchronisieren der Servosteuerungen untereinander durchgeführt werden.
Bei dem herkömmlichen System wurde ein Anwendungsprogramm zur Verfügung gestellt, welches mit einem Allzweckbetriebsprogramm wie beispielsweise MS-DOS oder Windows arbeitet, und zwar von den Verkäufern der Servosteuerungen, so daß Benutzer Parameter in der Servosteuerung für das System einstellen und ändern können, oder ein Steuerprogramm in die Servosteuerungen einschreiben bzw. aus diesen lesen können, jedoch ist es schwierig, ein Anwendungsprogramm vorzubereiten und zur Verfügung zu stellen, welches den Aufbau einer Mensch-Maschine-Schnitt­ stelle ermöglicht, die zu einem aktuellen Gerät paßt (beispielsweise verschiedene Arten von Mensch-Maschine-Schnitt­ stellen, die jeweils zum System eines Benutzers passen, in welchem ein Bild, welches ein aktuelles Gerät wie beispielsweise einen Fließbandförderer simuliert, auf einem Bildschirm des Hostcomputers dargestellt wird, und Überwachungsabschnitte wie beispielsweise Schalter in dem jeweiligen Bild angezeigt werden), da der Zugriff auf einen internen Speicher irgendeiner der Servosteuerungen entsprechend einem Befehl von dem Hostcomputer nicht einfach und schnell durchgeführt werden kann, was für den Benutzer Schwierigkeiten im Betrieb mit sich bringt.
Wenn eine große Menge an Punktdaten, die eingestellt werden müssen, und ein Bearbeitungsprogramm, welches häufig umgeschrieben werden muß, dazu führen, daß eine Kommunikationsleitung zwischen dem Hostcomputer und den Servosteuerungen besetzt ist, so kann eine Verarbeitung wie beispielsweise eine Überwachung nicht mit kurzer Reaktionszeit durchgeführt werden. Wenn der Hostcomputer beispielsweise ständig den Zustand jeder Servosteuerung überwacht, und eine geeignete Wiederherstellverarbeitung beim Auftreten eines Fehlers durchführen muß, so kann diese Wiederherstellungsverarbeitung nicht schnell durchgeführt werden, und dies stellt einen Nachteil dar.
Es ist ebenfalls schwierig, mehrere Servosteuerungen synchron zueinander zu betreiben.
Zwar wurde ein Verfahren eingesetzt, bei welchem Schritte elektrisch miteinander dadurch synchronisiert würden, daß eine große Anzahl an Servomotoren von einer Einheit einer Servosteuerung gesteuert wurde, jedoch weist dieses Verfahren einige Unzulänglichkeiten auf, nämlich daß ein längeres Kabel erforderlich ist, wenn die Anzahl zu steuernder Achsen zunimmt, und es darüber hinaus schwierig ist, ein Programm für jeden Managementschritt zu unterteilen, infolge der erhöhten Belastung der Servosteuerung, und weiterhin ist es schwierig, das Programm zu erstellen.
Eine Maschine wie beispielsweise eine Druckmaschine mit erheblichen Abmessungen zur Bearbeitung in mehreren Schritten, während auf eine Rolle gewickeltes Papier zugeführt wird, erfordert eine Synchronisation zwischen dem Takt zum Zuführen des Papiers und der Bearbeitungsoperation in jedem Schritt, so daß bei dem herkömmlichen System die Synchronisierung dadurch erzielt wird, daß eine Hauptwelle als Bezugsantriebsquelle verwendet wird, und darüber hinaus Nocken und Zahnräder oder dergleichen verwendet werden, die einen Drehantrieb durch diese Hauptwelle erfahren, jedoch erfordert dieses Verfahren ein Gerät mit großen Abmessungen und erheblichem Kostenaufwand, und erfordert darüber hinaus eine Wartung des Bearbeitungsgerätes.
Das herkömmliche System erfordert in nachteiliger Weise bestimmte Software auf dem Hostcomputer zu dem Zweck, daß der Hostcomputer Parameter in den Servosteuerungen einstellt und ändert, oder ein Steuerprogramm schreibt oder liest.
Wenn irgendeine Servosteuerung Daten in eine andere Servosteuerung einschreiben soll, oder die Servosteuerung aus einer anderen Servosteuerung Daten auslesen soll, so wird die Datentransaktion in herkömmlicher Weise zwischen den Steuerungen über eine programmierbare Steuerung durchgeführt, jedoch muß zu diesem Zweck von einem Benutzer ein sequentielles Programm zur Durchführung dieser Operation erzeugt werden, und die Erstellung eines derartigen Programms kann eine beträchtliche Zeit erfordern.
Ein Ziel der vorliegenden Erfindung besteht darin, daß jede von mehreren Servosteuerungen gleichzeitig eine bestimmte Anzahl an Verarbeitungsvorgängen durchführen kann.
Ein weiteres Ziel der vorliegenden Erfindung besteht darin, daß die Korrektur von Befehlsdaten für eine Servosteuerung entsprechend interner Daten in der Servosteuerung einfach durchgeführt werden kann.
Ein weiteres Ziel der vorliegenden Erfindung besteht darin, daß das Schreiben von Daten in einen internen Speicher einer Servosteuerung entsprechend einem Befehl von dem Computer einfach durchgeführt werden kann.
Ein weiteres Ziel der vorliegenden Erfindung besteht darin, daß eine Wiederherstellungsverarbeitung schnell durchgeführt werden kann, wenn irgendein Fehler in den Servosteuerungen auftritt.
Ein weiteres Ziel der vorliegenden Erfindung besteht darin, daß das Schreiben eines Steuerprogramms in Servosteuerungen einfach durchgeführt werden kann.
Ein weiteres Ziel der vorliegenden Erfindung besteht darin, daß eine Steuerung für den synchronen Betrieb zwischen Motoren, die jeweils an eine von mehreren Servosteuerungen angeschlossen sind, einfach durchgeführt werden kann.
Ein weiteres Ziel der vorliegenden Erfindung besteht darin, daß das Lesen/Schreiben interner Parameter und eines Steuerprogramms oder dergleichen von bzw. an Servosteuerungen einfach von einem Computer durchgeführt werden kann.
Ein weiteres Ziel der vorliegenden Erfindung besteht darin, daß der Zugriff auf einen Speicher in einer Servosteuerung entsprechend der Einstellung von Dateiattributen beschränkt werden kann.
Ein weiteres Ziel der vorliegenden Erfindung besteht darin, daß ein momentaner Verarbeitungsstatus oder dergleichen in der Servosteuerung einfach anderen Servosteuerungen mitgeteilt werden kann, oder interne Daten in anderen Servosteuerungen einfach durch die Servosteuerung geändert werden können.
Die vorliegende Erfindung stellt ein Servosteuerverfahren zur Durchführung serieller Kommunikationsvorgänge zwischen einem Computer und mehreren Servosteuerungen zur Verfügung, die jeweils zur Bereitstellung einer Steuerung der Bewegung eines Motors dienen, und das Verfahren umfaßt einen Schritt, in dem erste Übertragungsinformation, die aus einer festgelegten Anzahl an Informationen besteht, beispielsweise Anforderungsinformation für jede der mehreren Servosteuerungen, synchron zu einem festgelegten Mastertakt von dem Computer an die Servosteuerungen übertragen wird, sowie einen Schritt, in welchem zweite Übertragungsinformation, die aus einer festgelegten Anzahl an Informationen besteht, beispielsweise Reaktionsinformation, synchron zum Mastertakt von den Servosteuerungen an den Computer übertragen wird; und die Servosteuerungen führen gleichzeitig eine festgelegte Anzahl an Verarbeitungsvorgängen entsprechend der ersten Übertragungsinformation synchron zum Mastertakt durch, und die Bewegungssteuerung durch die Servosteuerungen wird gleichzeitig synchron mit dem Mastertakt durchgeführt.
Bei der vorliegenden Erfindung wird Befehlsinformation vorbereitet, die unter Verwendung interner Information in der Servosteuerung korrigiert wird, beispielsweise aufgrund von Rückkopplungsdaten, die von der Servosteuerung als Information in Reaktion auf die zweite Übertragungsinformation geschickt wird, und diese korrigierte Befehlsinformation wird als Information in Anforderungsinformation für die erste Übertragungsinformation an die Servosteuerungen geschickt.
Die vorliegende Erfindung stellt ein Servosteuerverfahren zur Verfügung, bei welchem Bereiche entsprechend Speicherbereichen für interne Information in Speichern von mehreren Servosteuerungen vorher in einem Computerspeicher zugeordnet werden, und interne Information in den mehreren Servosteuerungen periodisch als Information in Reaktionsinformation für die zweite Übertragungsinformation an den Computer geschickt wird, und in einen Speicher des Computers eingeschrieben wird, und das Verfahren weist einen Schritt auf, in welchem der Inhalt in einem Bereich des Speichers des Computers durch eine von mehreren Anwendungen oder dergleichen überschrieben wird, sowie einen Schritt, in welchem die Information, die wieder in den Bereich geschrieben wurde, als Information in Anforderungsinformation für die Übertragungsinformation an die mehreren Servosteuerungen geschickt wird, und der Inhalt in einem Bereich, der in dem Speicher der Servosteuerung entsprechend dem Bereich zugeordnet wurde, durch die voranstehende Information überschrieben wird.
Die vorliegende Erfindung stellt ein Servosteuerverfahren zur Verfügung, bei welchem ein Schritt vorgesehen ist, in welchem Alarminformation, die in einer der Servosteuerungen erzeugt wird, an den Computer als Information in Reaktionsinformation für die zweite Übertragungsinformation geschickt wird, und in einen Speicher des Computers eingeschrieben wird, und geeignete Befehlsinformation entsprechend der Alarminformation als Information in Anforderungsinformation für die zweite Übertragungsinformation an die Servosteuerung geschickt wird.
Die vorliegende Erfindung stellt ein Servosteuerverfahren zur Verfügung, welches weiterhin einen Schritt aufweist, in welchem ein Programm für die Steuerung als Information in Anforderungsinformation für die erste Übertragungsinformation von dem Computer an die Servosteuerung übertragen wird.
Die vorliegende Erfindung stellt ein Servosteuerverfahren zur Verfügung, welches weiterhin den Schritt aufweist, Befehlsinformation zur Ausführung eines Steuerprogramms für jede der Servosteuerungen als Information in Anforderungsinformation für die erste Übertragungsinformation von dem Computer an die mehreren Servosteuerungen zu schicken, um den Gleichlauf (den synchronen Lauf) von Motoren zu steuern, die jeweils an eine der mehreren Servosteuerungen angeschlossen sind.
Die vorliegende Erfindung stellt ein Servosteuerverfahren zur Verfügung, bei welchem weiterhin der Schritt vorgesehen ist, auf interne Information als Datei in den Servosteuerungen dadurch zuzugreifen, daß Schreibdaten oder dergleichen als Information in Anforderungsinformation für die Übertragungsinformation von dem Computer an die Servosteuerungen geschickt wird, und weiterhin Lesedaten als Information in Reaktionsinformation für die zweite Übertragungsinformation von den Servosteuerungen an den Computer geschickt werden.
Bei der vorliegenden Erfindung ist der Zugriff auf einen Speicher in einer Servosteuerung entsprechend der Einstellung von Dateiattributen begrenzt.
Die vorliegende Erfindung stellt ein Servosteuerverfahren zur Verfügung, bei welchem Bereiche entsprechend Speicherbereichen für interne Information in Speichern von mehreren Servosteuerungen vorher in einem Computerspeicher zugeordnet werden, und interne Information, die in den Speicherbereichen gespeichert ist, periodisch als Information in Reaktionsinformation für die zweite Übertragungsinformation an den Computer geschickt wird, und in einen Speicher des Computers eingeschrieben wird, und das Servosteuerverfahren einen Schritt aufweist, in welchem irgendeine interne Information in den Servosteuerungen als besondere Information eingestellt wird; einen Schritt, in welchem irgendeine der mehreren Servosteuerungen interne Information in der Servosteuerung entsprechend der internen Information überschreibt, die in dieser bestimmten Information eingestellt ist; sowie einen Schritt, in welchem diese umgeschriebene und aktualisierte interne Information als Information in Reaktionsinformation für die zweite Übertragungsinformation an den Computer geschickt wird, der Computer die aktualisierte interne Information als Information in Anforderungsinformation für die erste Übertragungsinformation an jede der anderen zugehörigen Servosteuerungen schickt, und entsprechende interne Information in jeder der Servosteuerungen durch diese aktualisierte interne Information überschrieben wird.
Die vorliegende Erfindung stellt ein Servosteuersystem zur Verfügung, welches einen Computer und mehrere Servosteuerungen zum Steuern der Bewegung von Motoren aufweist, um eine serielle Kommunikation zwischen den mehreren Servosteuerungen und dem Computer durchzuführen, und in dem Servosteuersystem wird erste Übertragungsinformation, die aus einer festgelegten Anzahl an Informationen besteht, beispielsweise Anforderungsinformation für jede der mehreren Servosteuerungen, synchron zu einem festgelegten Mastertakt von dem Computer an die Servosteuerungen geschickt; zweite Übertragungsinformation, die aus einer festgelegten Anzahl an Informationen besteht, beispielsweise Reaktionsinformation, wird synchron mit dem Mastertakt von den Servosteuerungen an den Computer geschickt; die Servosteuerungen führen gleichzeitig eine vorbestimmte Anzahl an Verarbeitungsvorgängen entsprechend der ersten Übertragungsinformation synchron zum Mastertakt durch; und die Bewegungssteuerung durch die Servosteuerungen wird gleichzeitig synchron mit dem Mastertakt durchgeführt wird.
Die Erfindung wird nachstehend anhand zeichnerisch dargestellter Ausführungsbeispiele näher erläutert, aus welchen weitere Vorteile und Merkmale hervorgehen. Es zeigt:
Fig. 1 als Blockschaltbild ein gesamtes Servosteuersystem gemäß Ausführungsform 1 der vorliegenden Erfindung;
Fig. 2 ein Zeitablaufdiagramm mit einer Darstellung des Zeitablaufs bei der Kommunikation bei der Ausführungsform 1 der vorliegenden Erfindung;
Fig. 3 Darstellungen von Datenrahmen, die zwischen einer seriellen Hochgeschwindigkeitskommunikationsschnittstelle und einer Servosteuerung bei der Ausführungsform 1 der vorliegenden Erfindung empfangen und übertragen werden;
Fig. 4 die Struktur von Daten bei einem Doppeleingangsspeicher bei der Ausführungsform 1 der vorliegenden Erfindung;
Fig. 5 ein Flußdiagramm mit einer Darstellung des Betriebsablaufes beim Auslesen gespeicherter Daten-bei der Ausführungsform 1 der vorliegenden Erfindung;
Fig. 6 ein Flußdiagramm mit einer Darstellung des Betriebsablaufs beim Auslesen gespeicherter Daten bei der Ausführungsform 1 der vorliegenden Erfindung;
Fig. 7 ein Flußdiagramm mit einer Darstellung des Betriebsablaufs bei der Mehrzweckverarbeitung bei der Ausführungsform 1 der vorliegenden Erfindung;
Fig. 8 ein Flußdiagramm mit einer Darstellung des Betriebsablaufs bei der Mehrzweckverarbeitung bei der Ausführungsform 1 der vorliegenden Erfindung;
Fig. 9 eine Darstellung der Struktur eines Anforderungsbereiches und eines Antwortbereiches für Mehrzweckverarbeitung bei der Ausführungsform 1 der vorliegenden Erfindung;
Fig. 10 eine Darstellung des Informationsflusses, wenn interne Daten in einer Steuerung von mehreren Anwendungen gelesen oder geschrieben werden, die auf einem PC bei der Ausführungsform 1 der vorliegenden Erfindung ablaufen;
Fig. 11 eine Darstellung eines Verfahrens zum Zuordnen interner Daten in einer Servosteuerung zu einem gemeinsam genutzten Speicher mit Tasks bei einem PC bei der Ausführungsform der vorliegenden Erfindung;
Fig. 12 eine Darstellung der Struktur eines Anforderungsbereiches und eines Antwortbereiches für Mehrzweckverarbeitung, die beim statistischen Schreiben von Daten bei der Ausführungsform der vorliegenden Erfindung verwendet werden;
Fig. 13 eine Darstellung der Struktur eines Anforderungsbereiches und eines Antwortbereiches für Mehrzweckverarbeitung, die zur Auswahl einer Direktbefehlsbetriebsart bei der Ausführungsform 1 der vorliegenden Erfindung verwendet werden;
Fig. 14 eine Darstellung der Struktur eines Anforderungsbereiches und eines Antwortbereiches für Mehrzweckverarbeitung, die zur Erkennung der übrigbleibenden Größe eines Direktbefehlspuffers bei der Ausführungsform 1 der vorliegenden Erfindung verwendet werden;
Fig. 15 eine Darstellung der Struktur eines Anforderungsbereiches und eines Antwortbereiches für Mehrzweckverarbeitung, die für einen Steuerprogrammdirektbefehl bei der Ausführungsform 1 der vorliegenden Erfindung verwendet werden;
Fig. 16 ein Blockschaltbild mit einer Darstellung des Datenflusses, wenn ein Steuerprogramm entsprechend einem direkten Befehl bei der Ausführungsform 1 der vorliegenden Erfindung geschrieben wird;
Fig. 17 eine Erläuterung eines Verfahrens zum Synchronisieren von Motoren, die an mehrere Servosteuerungen bei der Ausführungsform 1 der vorliegenden Erfindung angeschlossen sind;
Fig. 18 eine Darstellung der Struktur von Dateien, wenn auf einen internen Speicher in einer Servosteuerung als Datei bei der Ausführungsform 1 der vorliegenden Erfindung zugegriffen wird;
Fig. 19 eine Darstellung der Struktur eines Anforderungsbereiches und eines Antwortbereiches für Mehrzweckverarbeitung, die verwendet werden, wenn ein Sektorlesen bei der Ausführungsform 1 der vorliegenden Erfindung erfolgt;
Fig. 20 eine Darstellung der Struktur eines Anforderungsbereiches und eines Antwortbereiches für Mehrzweckverarbeitung, die verwendet werden, wenn ein Sektorschreiben bei der Ausführungsform 1 der vorliegenden Erfindung durchgeführt wird;
Fig. 21 Darstellungen der Detailstruktur gemeinsam genutzter interner Daten, wenn die internen Daten in mehreren Servosteuerungen gemeinsam in dem Servosteuersystem gemäß Ausführungsform 1 der vorliegenden Erfindung verwendet werden;
Fig. 22 als Blockschaltbild ein Servosteuersystem gemäß Ausführungsform 2 der vorliegenden Erfindung;
Fig. 23 Darstellungen der Struktur eines Anforderungsbereiches und eines Antwortbereiches für Mehrzweckverarbeitung, die verwendet werden, wenn Zeichenkettenkommunikationsvorgänge bei der Ausführungsform 1 der vorliegenden Erfindung durchgeführt werden; und
Fig. 24 als Blockschaltbild ein herkömmliches Servosteuersystem.
Fig. 1 zeigt als Blockschaltbild ein Servosteuersystem gemäß einer Ausführungsform der vorliegenden Erfindung. Hierbei ist mit dem Bezugszeichen 1 ein Personalcomputer (PC) bezeichnet, mit #1 bis #n jeweils eine Servosteuerung, und mit 2 eine serielle Hochgeschwindigkeitskommunikationsschnittstelle. Die serielle Hochgeschwindigkeitskommunikationsschnittstelle 2 ist in dem PC 1 vorgesehen, und führt eine Kommunikationsverarbeitung zur Durchführung einer seriellen Datenübertragung zwischen dem PC 1 und den Servosteuerungen #1 bis #n durch.
Bei dem PC 1 sind eine CPU 3 und eine Interruptsteuerschaltung 4 zum Empfang einer Interruptanforderung von der seriellen Hochgeschwindigkeitskommunikationsschnittstelle 2 und zur Mitteilung des Interrupts an die CPU 3 vorgesehen.
Bei der seriellen Hochgeschwindigkeitsschnittstelle 2 sind ein Mikrocomputer 5, ein Doppelanschlußspeicher 6, eine Interrupterzeugungsschaltung 7, ein IC 8 für serielle Kommunikation mit hoher Geschwindigkeit, ein Mastertakt 9, ein Leitungstreiber 12 und ein Leitungsempfänger 13 vorgesehen.
Auf den Speicher 6 mit zwei Anschlüssen kann sowohl vom Mikrocomputer 5 als auch der CPU 3 für den PC 1 zugegriffen werden. Die Interrupterzeugungsschaltung 7 erzeugt ein Interruptsignal entsprechend einem Befehl von dem Mikrocomputer 5, und schickt das Signal an die Interruptsteuerschaltung 4 für den PC 1. In dem IC 8 für serielle Hochgeschwindigkeitskommunikation ist ein Sendespeicher 10 und ein Empfangsspeicher 11 vorgesehen, und der IC 8 wandelt Sendedaten von parallel in seriell um, schickt die Daten an eine Übertragungsleitung als erste Übertragungsinformation, beispielsweise eine Information in einem Datenrahmen zum Zeitpunkt der Sendung, empfängt zweite Übertragungsinformation von der Übertragungsleitung, beispielsweise Empfangsdaten, die als Information indem Datenrahmen zum Zeitpunkt des Empfangs gesendet werden, und wandelt die Daten von seriell in parallel um. Der Mastertakt 9 erzeugt einen Mastertakt als Bezugsgröße für eine Senderate und schickt den Takt an den IC 8 für die serielle Hochgeschwindigkeitskommunikation.
Auf jeder der Servosteuerungen #1 bis #n sind der IC 8 für serielle Hochgeschwindigkeitskommunikation vorgesehen, ein Übertragungsleitungstreiber 12a, ein Empfangsleitungsempfänger 13a, eine CPU 14, und ein Speicher 15, und weiterhin ist eine Einheit oder sind mehrere Servomotortreiber (nicht gezeigt) an die Servosteuerung angeschlossen.
Wie aus Fig. 1 hervorgeht ist die serielle Hochgeschwindigkeitskommunikationsschnittstelle 2 an einen verlängerten Bus für den PC 1 angeschlossen, und sind n Einheiten von Servosteuerungen (Servosteuerungen #1 bis #n) an diese serielle Hochgeschwindigkeitskommunikationsschnittstelle 2 in dem System mit mehreren Stationen angeschlossen.
Das Ausgangssignal des Übertragungsleitungstreibers 12 für die serielle Hochgeschwindigkeitskommunikationsschnittstelle 2 wird nämlich in den Empfangsleitungsempfänger 13a eingegeben, der in jeder der Servosteuerungen #1 bis #n vorgesehen ist, und zwar durch ein Kabel, und das Ausgangssignal von jedem der Übertragungsleitungstreiber 12a, die in jeder der Servosteuerungen #1 bis #n vorgesehen sind, wird über ein Kabel in den Empfangsleitungsempfänger 13 für die serielle Hochgeschwindigkeitskommunikationsschnittstelle 2 eingegeben.
Fig. 2 ist ein Zeitablaufdiagramm, in welchem Operationen des in Fig. 1 dargestellten Servosystems dargestellt sind. Zunächst erfolgt eine kurze Beschreibung von Operationen in einem Anfangssteuerzyklus (wobei der Steuerzyklus nachstehend als Mastertaktzyklus bezeichnet wird), der in Fig. 2 gezeigt ist.
Der IC 8 für serielle Hochgeschwindigkeitskommunikation schickt ein Interruptsignal an den Mikrocomputer 5 (23 in Fig. 2) in der seriellen Hochgeschwindigkeitskommunikationsschnittstelle 2 an einer abfallenden Flanke des Mastertakts (zu einem Bezugszeitpunkt (21 in Fig. 2)).
Auf der Grundlage dieses Interruptsignals für die serielle Hochgeschwindigkeitskommunikationsschnittstelle 2 die nachstehend geschilderten Operationen (I) bis (III) durch.
  • (I) Von dem Empfangsspeicher 11 empfangene Daten werden in einen Empfangsbereich in dem zwei Anschlüsse aufweisenden Speicher 6 (24 in Fig. 2) eingeschrieben.
  • (II) Übertragungsdaten, die in einem Übertragungsbereich in dem Doppelanschlußspeicher 6 gespeichert sind, werden an den Übertragungsspeicher 10 (24 in Fig. 2) übertragen.
Es wird darauf hingewiesen, daß es sich beim Inhalt der im Übertragungsbereich des Doppelanschlußspeichers 6 gespeichert ist, um Übertragungsdaten handelt, die dort vorher durch die CPU 3 des PC 1 eingeschrieben wurden.
  • (III) Nach den Operationen (I) und (II) schickt der Mikrocomputer 5 ein Interruptsignal an die Interruptsteuerschaltung 4 für den PC 1 über die Interrupterzeugungsschaltung 7 (25 in Fig. 2).
Wenn die Interruptsteuerschaltung 4 des PC 1 dieses Interruptsignal empfängt, schreibt der PC 1 Übertragungsdaten, die im nächsten Mastertaktzyklus an eine Servosteuerung übertragen werden sollen, in den Übertragungsbereich des Doppelanschlußspeichers 6 ein, und liest den Inhalt aus dem Empfangsbereich des Doppelanschlußspeichers 6 aus (26 in Fig. 2).
Wenn ein vorbestimmter Zeitraum abgelaufen ist, werden die in dem Übertragungsspeicher 10 in dem IC 8 für serielle Hochgeschwindigkeitskommunikation gespeicherten Übertragungsdaten von parallel in seriell umgewandelt, und werden die umgewandelten Daten als Übertragungspaket an jede der Servosteuerungen #1 bis #n über den jeweiligen Übertragungsleitungstreiber 12 (27 in Fig. 2) übertragen.
In jeder der Servosteuerungen #1 bis #n schickt der IC 8a für deren serielle Hochgeschwindigkeitskommunikation, wenn er dieses Übertragungspaket empfangen hat, ein Interruptsignal an die CPU 14 zum Zeitpunkt des Vorspanns des Pakets (29 in Fig. 2).
Entsprechend diesem Interruptsignal überträgt die CPU 14 den Inhalt eines Empfangsspeichers 11a an jeden Speicher 15, und beginnt mit einer Operation, bei welcher die Übertragungsdaten, die vorher in dem Speicher 15 gespeichert wurden, an einen Übertragungsspeicher 10a (20 in Fig. 2) übertragen werden.
Wenn ein vorbestimmter Zeitraum abgelaufen ist, werden in jeder der Servosteuerungen #1 bis #n Übertragungsdaten, die in dem Übertragungsspeicher 10a gespeichert wurden, an den PC 1 über den Übertragungsleitungstreiber 12a (28 in Fig. 2) übertragen.
Zum Zeitpunkt der Übertragung überträgt jede der Servosteuerungen #1 bis #n zu einem Zeitpunkt, der gegenüber den anderen Zeitpunkten von den jeweiligen Stationen verschoben ist, Übertragungsdaten, so daß die von den verschiedenen Stationen ausgesandten Übertragungsdaten nicht zusammentreffen.
Wie voranstehend geschildert werden die Übertragungsdaten von den Servosteuerungen #1 bis #n an den PC 1 zum Zeitpunkt des Vorspanns des empfangenen Pakets (29 in Fig. 2) als Bezugsgröße geschickt, die von dem PC 1 an die Servosteuerungen #1 bis #n geschickt wurde, und aus diesem Grund werden Pakettransaktionen zwischen dem PC 1 und den Servosteuerungen #1 bis #n synchron zwischen den Servosteuerungen durchgeführt.
Fig. 3 zeigt die Struktur eines Datenrahmens in einem Übertragungspaket, welches von dem PC 1 an die Servosteuerungen #1 bis #n geschickt wurde, sowie die Struktur eines Datenrahmens in einem empfangenen Paket, welches von den Servosteuerungen #1 bis #n an den PC 1 geschickt wurde.
Es wird darauf hingewiesen, daß Daten, die denselben Inhalt aufweisen wie die Daten des Datenrahmens für die Übertragung, zeitweilig auch in dem Übertragungsspeicher 10 der seriellen Hochgeschwindigkeitskommunikationsschnittstelle 2 gespeichert werden, sowie in dem Empfangsspeicher 11a jeder der Servosteuerungen. Ebenfalls werden Daten, welche denselben Inhalt aufweisen wie die Daten des empfangenen Datenrahmens, zeitweilig im Empfangsspeicher 11 der seriellen Hochgeschwindigkeitskommunikationsschnittstelle 2 gespeichert, und ebenso in dem Übertragungsspeicher 10a jeder der Servosteuerungen.
In Fig. 3 ist mit dem Bezugszeichen 30 die Struktur eines Übertragungsdatenrahmens bezeichnet, der von dem PC 1 an die Servosteuerungen #1 bis #n geschickt werden soll.
In dem Datenrahmen 3 bezeichnet das Bezugszeichen 31 einen Bereich, in welchem eine Kommunikationsstations-ID (ID: Abkürzung für Identifizierung) gespeichert ist. Der IC 18a für die serielle Hochgeschwindigkeitskommunikation in jeder der Servosteuerungen #1 bis #n vergleicht die Kommunikationsstations-ID, die in diesem Bereich 31 gespeichert ist, mit der ID der Station, holt sich den Datenrahmen 30, wenn die beiden ICs miteinander übereinstimmen, und speichert den Rahmen im Empfangsspeicher 11a.
Der Datenrahmen 30 weist Bereiche 32-1 bis 32-n auf, entsprechend den Servosteuerungen #1 bis #n, in einem Bereich, der auf den Bereich 31 folgt.
Wenn Information, die "sämtliche Stationen im Stapelbetrieb" anzeigt, als Kommunikationsstations-ID in dem Bereich 31 gespeichert ist, holen sich sämtliche Servosteuerungen #1 bis #n einmal den Inhalt des Datenrahmens 30 in dem jeweiligen Empfangsspeicher 11a der Stationen, und übertragen nur den Inhalt des Datenbereiches entsprechend jeder der Stationen unter den Datenbereichen 32-1 bis 32-n an jeden Speicher 15 der Stationen.
In Fig. 3 ist mit dem Bezugszeichen 32 die Detailstruktur der Daten bezeichnet, die in jedem der Bereiche 32-1 bis 32-n gespeichert sind. Bei der Detailstruktur 32 der Daten bezeichnet das Bezugszeichen 33 einen Bereich, in welchem eine "Hochgeschwindigkeitsdatenleseanforderung" gespeichert wird. In diesem Bereich sind als "Hochgeschwindigkeitsdatenleseanforderung" eine Adresse und ein Schlüsselwort oder dergleichen gespeichert, die einen Ort anzeigen, aus welchem in dem Speicher 15 ausgelesen werden soll.
Das Bezugszeichen 34 bezeichnet einen Bereich, in welchem eine "Hochgeschwindigkeitsdatenschreibanforderung" gespeichert werden soll. In diesem Bereich ist als "Hochgeschwindigkeitsdatenschreibanforderung" eine Adresse, ein Schlüsselwort und einzuschreibende Daten oder dergleichen gespeichert, die in den Speicher 15 eingeschrieben werden sollen.
Das Bezugszeichen 35 bezeichnet einen Bereich, in welchem eine "Mehrzweckverarbeitungsanforderung" gespeichert werden soll, in welchem ein Befehlscode oder Betriebsarten und dergleichen, die in Fig. 12 bis 15 gezeigt sind, gespeichert werden.
Es wird darauf hingewiesen, daß jede der "Hochgeschwindigkeitsdatenleseanforderungen", "Hochgeschwindigkeitsdatenschreibanforderungen" und "Mehrzweckverarbeitungsanforderungen" Anforderungsinformation darstellen, welche dem Inhalt der jeweiligen Verarbeitung entspricht.
In der Figur ist mit dem Bezugszeichen 36 ein Bereich bezeichnet, in welchem eine Hochgeschwindigkeitsdatenlesebefehlsmarke gespeichert werden soll, mit 37 ein Bereich, in welchem eine Hochgeschwindigkeitsdatenschreibbefehlsmarke gespeichert werden soll, mit 38 ein Bereich, in welchem eine Speicherdatenlesebefehlsmarke gespeichert werden soll, und mit 38 ein Bereich, in welchem eine Mehrzweckverarbeitungsanforderungsmarke gespeichert werden soll.
Als nächstes erfolgt eine Beschreibung eines Datenrahmens zum Zeitpunkt von dessen Empfang, der von den Servosteuerungen #1 bis #n an den PC 1 geschickt wird. In Fig. 3 ist mit dem Bezugszeichen 40 ein Datenrahmen zum Zeitpunkt seines Empfangs bezeichnet. Das Bezugszeichen 41 in dem Datenrahmen 40 bezeichnet einen Bereich, in welchem eine Kommunikationsstations-ID gespeichert werden soll. In diesem Bereich wird als Kommunikationsstations-ID ein Code eingeschrieben, welcher die serielle Hochgeschwindigkeitskommunikationsschnittstelle 2 bezeichnet.
Der IC 8 für die serielle Hochgeschwindigkeitskommunikation in der seriellen Hochgeschwindigkeitskommunikationsschnittstelle 2 erkennt, daß der Datenrahmen 40 in die Station entsprechend dieser Kommunikationsstations-ID geholt werden sollte, und speichert den Inhalt des Datenrahmens 40 in dem Empfangsspeicher 11.
Das Bezugszeichen 42 in dem Datenrahmen 40 zeigt einen Bereich an, in welchem die Stations-ID gespeichert werden soll, welche die Servosteuerung an der Sendeseite angibt.
Die serielle Hochgeschwindigkeitskommunikationsschnittstelle 2 kann erkennen, von welcher Servosteuerung jeder der mehreren empfangenen Datenrahmen 40 geschickt wurde, auf der Grundlage des Inhalts dieses Bereiches 42, selbst nachdem die Inhalte der mehreren Datenrahmen 40 in dem Empfangsspeicher 11 in der Reihenfolge ihres Empfangs gespeichert wurden.
Das Bezugszeichen 43 bezeichnet einen Bereich, in welchem eine "Hochgeschwindigkeitsdatenleseantwort" gespeichert werden soll. In diesem Bereich wird als "Hochgeschwindigkeitsdatenleseantwort" ein Inhalt gespeichert, der aus dem Speicher 15 ausgelesen wurde.
Das Bezugszeichen 44 bezeichnet einen Bereich, in welchem eine "Hochgeschwindigkeitsdatenschreibantwort" gespeichert werden soll. In diesem Bereich wird als die "Hochgeschwindigkeitsdatenschreibantwort" ein Befehlscode und ein Fehlerstatus und dergleichen gespeichert.
Das Bezugszeichen 45 bezeichnet einen Bereich, in welchem eine "Mehrzweckverarbeitungsantwort" gespeichert werden soll, in welcher Daten wie beispielsweise ein Befehlscode, ein Fehlerstatus und die übrigbleibende Größe eines Befehlspuffers, die in Fig. 12 bis Fig. 15 gezeigt ist, gespeichert werden.
Es wird darauf hingewiesen, daß es sich bei jeder der "Hochgeschwindigkeitsdatenleseantworten", "Hochgeschwindigkeitsdatenschreibantworten" und "Mehrzweckverarbeitungsantworten" um Antwortinformation entsprechend dem Inhalt der jeweiligen Verarbeitung handelt.
In der Figur ist mit dem Bezugszeichen 46 ein Bereich gespeichert, in welchem eine Speicherdatenleseantwortmarke gespeichert werden soll, und mit 47 ein Bereich, in welchem eine Mehrzweckverarbeitungsantwortmarke gespeichert werden soll.
Fig. 4 zeigt die Speicherstruktur des Speichers 6 mit zwei Anschlüssen. Wie aus der Figur hervorgeht, sind Bereiche 51-1 bis 51-n bei dem Doppelanschlußspeicher 6 entsprechend den Servosteuerungen #1 bis #n vorgesehen.
In Fig. 4 bezeichnet das Bezugszeichen 51-n an der rechten Seite den Detailaufbau jeder der Bereiche (Bereiche 51-1 bis 51-n) für Daten, die an jede Station an der linken Seite in der Figur geschickt werden sollen.
Bei 51-n an der rechten Seite ist mit dem Bezugszeichen 52 ein Bereich bezeichnet, in welchem eine "Hochgeschwindigkeitsdatenleseanforderung" gespeichert werden soll, mit 53 ein Bereich, in welchem eine "Hochgeschwindigkeitsdatenschreibanforderung" gespeichert werden soll, mit 54 ein Bereich, in welchem eine "Mehrzweckverarbeitungsanforderung" gespeichert werden soll, mit 55 ein Bereich, in welchem eine "Hochgeschwindigkeitsdatenleseantwort" gespeichert werden soll, mit 56 ein Bereich, in welchem eine "Speicherdatenleseantwort" gespeichert werden soll, mit 57 ein Bereich, in welchem eine "Mehrzweckverarbeitungsantwort" gespeichert werden soll, mit 58 ein Bereich, in welchem eine Hochgeschwindigkeitsdatenlesebefehlsmarke gespeichert werden soll, mit 59 ein Bereich, in welchem ein Hochgeschwindigkeitsdatenschreibbefehlsmarke gespeichert werden soll, mit 60 ein Bereich, in welchem eine Speicherdatenlesebefehlsmarke gespeichert werden soll, mit 61 ein Bereich, in welchem eine Datenleseantwortmarke gespeichert werden soll, mit 62 ein Bereich, in welchem eine Mehrzweckverarbeitungsanforderungsmarke gespeichert werden soll, und mit 63 ein Bereich, in welchem eine Mehrzweckverarbeitungsantwortmarke gespeichert werden soll. Als nächstes erfolgt eine eingehende Erläuterung der "Hochgeschwindigkeitsdatenlesefunktion" zum schnellen Auslesen von Daten aus den Servosteuerungen #1 bis #n synchron zum Mastertakt.
Zuerst stellt der PC 1 bestimmte Festlegungsinformation, die von den Servosteuerungen #1 bis #n geschickt wird, in dem Bereich 52 des Doppelanschlußspeichers 6 (26 in Fig. 2) ein. Diese Festlegungsinformation wird dazu verwendet, Daten festzulegen, die ausgelesen werden sollen, und die eine ID-Nummer und ein Schlüsselwort enthalten.
Wenn die "Hochgeschwindigkeitsdatenlesebefehlsmarke", die in dem Bereich 58 gespeichert ist, EIN ist, stellt in dem nächsten Mastertaktzyklus (dem zweiten Mastertaktzyklus in Fig. 2) der Mikrocomputer eine "Hochgeschwindigkeitsdatenleseanforderung" in dem Bereich 33 in dem Übertragungsspeicher 10 in der seriellen Hochgeschwindigkeitskommunikationsschnittstelle 2 ein, und schaltet die "Hochgeschwindigkeitsdatenlesebefehlsmarke" EIN, die in dem Bereich 36 in dem Übertragungsspeicher 10 (24a in Fig. 2) gespeichert ist.
Der Datenrahmen, bei welchem diese "Hochgeschwindigkeitsdatenleseanforderung" und die "Hochgeschwindigkeitsdatenlesebefehlsmarke" angebracht wurde, wird an die Servosteuerungen #1 bis #n (27a in Fig. 2) übertragen.
In dem nächsten Mastertaktzyklus (dritter Mastertaktzyklus in Fig. 2) holt sich jede der Servosteuerungen #1 bis #n die "Hochgeschwindigkeitsdatenleseanforderung" aus dem Bereich 33 in dem Datenbereich für die Station des Datenrahmens, speichert die Daten in dem Empfangsspeicher 11a, und schreibt den Inhalt, der aus dem Speicher 15 ausgelesen wurde, in dem Bereich 43 in dem Übertragungsspeicher 10a als "Hochgeschwindigkeitsdatenleseantwort" (20b in Fig. 2) ein.
Der Datenrahmen, an welchem die "Hochgeschwindigkeitsdatenleseanforderung" angebracht wurde, kehrt von jeder der Servosteuerungen an den PC 1 (28b in Fig. 2) zurück. Es wird darauf hingewiesen, daß die durch das Bezugszeichen 28b in Fig. 2 bezeichnete Verarbeitung innerhalb des dritten Mastertaktzyklus in Fig. 2 gezeigt ist.
Der Mikrocomputer 5 der seriellen Hochgeschwindigkeitskommunikationsschnittstelle 2 holt sich in dem nächsten Mastertaktzyklus (dem vierten Mastertaktzyklus in Fig. 2) die "Hochgeschwindigkeitsdatenleseantwort", die in dem Bereich 43 des Empfangsspeichers 11 gespeichert ist, schreibt die Daten in dem Bereich 55 des Doppelanschlußspeichers 6 (24c in Fig. 2) ein, und schickt ein Interruptsignal an die CPU 3 des PC 1 (25c in Fig. 2). Es wird darauf hingewiesen, daß dieses Interruptsignal eine bestimmte Zeit nach der abfallenden Flanke (einem Bezugszeitpunkt) des Mastertakts 22 erzeugt wird.
Im Ergebnis liest die CPU 3 des PC 1 die "Hochgeschwindigkeitsdatenleseantwort" aus dem Bereich 55 des Doppelanschlußspeichers 6 entsprechend diesem Interrupt (26c in Fig. 2) aus.
Um beispielsweise Daten zu überwachen, welche durch diese Festlegungsinformation festgelegt werden, in einem Status, in welchem die Daten in jedem Zyklus des Mastertaktzyklus 22 aktualisiert werden, kann Festlegungsinformation (Information wie beispielsweise eine ID-Nummer und ein Schlüsselwort) zum Festlegen von Daten, die aus den Servosteuerungen #1 bis #n aus gelesen werden sollen, festgelegt sein, und kann die Hochgeschwindigkeitsdatenlesebefehlsmarke 58 so festgelegt sein, daß sie EIN ist.
Es wird darauf hingewiesen, daß bei der vorliegenden Ausführungsform angenommen wird, daß die Hochgeschwindigkeitsdatenleseverarbeitung durch das Programm in dem PC 1 aktiviert wird.
Als nächstes erfolgt eine Beschreibung der Verarbeitung beim "Hochgeschwindigkeitsdatenschreiben" zum schnellen Einschreiben von Daten in die Servosteuerungen #1 bis #n synchron zum Mastertakt.
Zuerst schreibt die CPU 1 eine "Hochgeschwindigkeitsdatenschreibanforderung", welche "Information zur Festlegung zu schreibender Daten" (Information in Bezug auf eine Adresse und ein Schlüsselwort, die einen Platz in dem Speicher 15 angeben, in welchen Daten eingeschrieben werden sollen) sowie "einzuschreibende Daten" aufweist, in den Bereich 53 des Doppelanschlußspeichers 6 ein, und schaltet eine "Hochgeschwindigkeitsdatenschreibbefehlsmarke" EIN, die in dem Bereich 59 (26 in Fig. 2) gespeichert ist.
Der Mikrocomputer 5 der seriellen Hochgeschwindigkeitskommunikationsschnittstelle 2 schreibt dann eine "Hochgeschwindigkeitsdatenschreibanforderung" in den Bereich 34 des Übertragungsspeichers 10 ein, und schaltet die Hochgeschwindigkeitsdatenschreibbefehlsmarke in dem Bereich 37 (24a in Fig. 2) EIN.
Dann wird der Datenrahmen mit der dort angebrachten "Hochgeschwindigkeitsdatenschreibanforderung" und der auf ihm angebrachten Hochgeschwindigkeitsdatenschreibbefehlsmarke an die Servosteuerungen #1 bis #n (27a in Fig. 2) übertragen.
Jede der Servosteuerungen #1 bis #n holt sich die "Hochgeschwindigkeitsdatenschreibanforderung" aus dem Bereich 34 des Empfangsspeichers 11a, und aktualisiert die Daten, die durch diese "Hochgeschwindigkeitsdatenschreibanforderung" (20b in Fig. 2) festgelegt werden.
Wenn der Inhalt der Adresse, die durch die "Information zur Festlegung einzuschreibender Daten" festgelegt wird, in dem Speicher 15 der Servosteuerungen #1 bis #n für jeden Mastertakt entsprechend der Aktualisierung der "einzuschreibenden Daten" aktualisiert werden soll, kann so vorgegangen sein, daß nur die "einzuschreibenden Daten" aktualisiert werden, nämlich durch Festlegen der "Information zur Festlegung einzuschreibender Daten" und durch Festlegung der Hochgeschwindigkeitsdatenschreibbefehlsmarke auf EIN.
Da nicht erwartet wird, daß gewünschte Operationen entsprechend einem üblichen Befehl ausgeführt werden, in welchem die Auswirkungen der Solidität eines Mechanismusabschnitts (nicht gezeigt), der durch die Servosteuerung angetrieben wird, ignoriert werden, wird nunmehr als Beispiel ein Fall angenommen, in welchem eine Operation dadurch durchgeführt wird, daß der Befehl selbst entsprechend der aktuellen Operation geändert wird, und dann kann eine Korrektur in Echtzeit einfach dadurch durchgeführt werden, daß ein Positionsbefehlswert von der CPU 1 dadurch korrigiert wird, daß momentane Werte von Daten verwendet werden, beispielsweise die Position, die Geschwindigkeit und das Drehmoment eines Motors, die von den Servosteuerungen #1 bis #n entsprechend dem "Hochgeschwindigkeitsdatenlesen" ausgelesen werden, und dieser korrigierte Positionsbefehlswert von der CPU 1 an die Servosteuerungen #1 bis #n entsprechend dem "Hochgeschwindigkeitsdatenschreiben" geschickt wird.
Es wird darauf hingewiesen, daß es verschiedene Arten und Weisen der Benutzung dieser Hochgeschwindigkeitsdatenschreibverarbeitung gibt, beispielsweise eine Aktivierung entsprechend dem Programm in dem Mikrocomputer 1, oder eine periodische Aktivierung synchron zum Mastertakt.
Als nächstes erfolgt, als Anwendung der Funktion des "Hochgeschwindigkeitsdatenschreibens", die Beschreibung einer synchronen Operation zwischen Motoren, die jeweils an unterschiedliche Servosteuerungen angeschlossen sind.
Fig. 17 zeigt den Signalfluß, wenn eine lineare Interpolation zwischen einer Achse X1, die an die Servosteuerung #1 angeschlossen ist, und einer Achse Y2 durchgeführt wird, die an die Servosteuerung #2 angeschlossen ist.
In der Figur wird angenommen, daß in der Servosteuerung #1 ein Steuerprogramm 111-1 gespeichert ist, welches zum Positionieren jedes Punktes von einem Startpunkt A zu einem Endpunkt B dient, auf der Grundlage der linearen Interpolation in der Ebene, die durch zwei Achsen gebildet wird, nämlich die Steuerachse X1 und eine virtuelle Achse Y'. Weiterhin wird angenommen, daß in der Servosteuerung #2 ein Steuerprogramm 111-2 gespeichert ist, welches dazu dient, jeden Punkt von einem Startpunkt A zu einem Endpunkt B zu positionieren, auf der Grundlage der linearen Interpolation in der Ebene, welche durch zwei Achsen gebildet wird, nämlich durch die Steuerachse Y2 und eine virtuelle Achse X'.
Die virtuelle Achse Y' entspricht der Steuerachse Y2, und die Steuerachse X1 entspricht der virtuellen Achse X', eine Trajektorie AB durch das Steuerprogramm 111-1 und eine Trajektorie AB durch das Steuerprogramm 111-2 haben dieselbe Form, und die Befehlsgeschwindigkeit infolge des Steuerprogramms 111-1 ist ebenso groß wie jene infolge des Steuerprogramms 111-2.
Zuerst wird bei dem "Hochgeschwindigkeitsdatenschreiben" ein Startbefehlssignal an die Servosteuerungen #1 und #2 in demselben Mastertaktzyklus geschickt.
Die Programmstartverarbeitung 110 überwacht das Startbefehlssignal, schickt ein Interruptsignal synchron zum Mastertakt an die Programmanalyseverarbeitung 102, wenn das Startbefehlssignal empfangen wurde (wenn das Startbefehlssignal beim Empfangsspeicher 11a EIN geschaltet wird), und setzt dann die Programmanalyseverarbeitung 102 in Betrieb.
Das Steuerprogramm 111-1 wird in der Servosteuerung #1 ausgeführt, und das Steuerprogramm 111-2 wird in der Servosteuerung #2 ausgeführt, jeweils durch die Programmanalyseverarbeitung 102 für jede Steuerung, und das Steuerprogramm 111-1 und das Steuerprogramm 111-2 werden gleichzeitig ausgeführt.
Dies führt dazu, daß Interpolationsoperationen zwischen der Steuerachse X1 und der Steuerachse Y2 durchgeführt werden.
Allerdings ist es erforderlich, daß sämtliche Operationen von der Ausführung der Steuerprogramme durch die jeweilige Programmanalyseverarbeitung 102 bis zur Befehlsverarbeitung bei jedem Servoverstärker (nicht gezeigt) synchron zum Mastertakt ausgeführt werden.
Als nächstes erfolgt eine Beschreibung des "Speicherdatenlesens", wobei Information wie beispielsweise eine Adreßgruppe und eine Schlüsselwortgruppe, die jeweils einen Speicherbereich in dem Speicher 15 jeder Servosteuerung anzeigen, vorher in den Servosteuerungen #1 bis #n gespeichert wird, und der Inhalt in dem Speicherbereich einfach dadurch ausgelesen werden kann, daß eine bestimmte Marke EIN geschaltet wird.
Die Fig. 5 und 6 stellen Flußdiagramme dar, welche die Verarbeitung beim "Speicherdatenlesen" erläutern. In Fig. 5 ist mit "Verarbeitung durch den PC" der Inhalt der Verarbeitung durch die CPU 3 des PC 1 bezeichnet, und bezeichnet die "Kommunikationsschnittstellenverarbeitung" den Inhalt der Verarbeitung durch den Mikrocomputer 5 der seriellen Hochgeschwindigkeitskommunikationsschnittstelle 2.
Als nächstes erfolgt unter Bezugnahme auf die Fig. 5 und 6 eine Beschreibung der Operationen beim "Speicherdatenlesen".
Bei der in Fig. 5 gezeigten "Verarbeitung durch den PC" erfolgt im Schritt S1 eine Ermittlung, ob es möglich ist oder nicht, gespeicherte Daten auszulesen, auf der Grundlage der Tatsache, ob sowohl die Speicherdatenlesebefehlsmarke in dem Bereich 60 des Doppelanschlußspeichers 6 als auch die Speicherdatenleseantwortmarke in dem Bereich 61 dieses Speichers AUS sind oder nicht. Wenn festgestellt wird, daß die gespeicherten Daten ausgelesen werden können, geht die Verarbeitung zum Schritt S2 über.
Im Schritt S2 wird die Speicherdatenlesebefehlsmarke in dem Bereich 60 des Doppelanschlußspeichers 6 EIN geschaltet.
Diese Speicherdatenlesebefehlsmarke, die den Wert EIN aufweist, wird in dem Bereich 38 der Datenrahmeninformation 32 im Übertragungsspeicher 10 eingeschrieben, und der Datenrahmen mit der daran angebrachten Marke wird an die Servosteuerungen #1 bis #n im Schritt S7 der "Kommunikationsschnittstellenverarbeitung" übertragen.
In Fig. 6 ist mit "Verarbeitung durch Servosteuerung" der Inhalt der Verarbeitung durch jede CPU 14 der Servosteuerungen #1 bis #n bezeichnet.
Bei dieser "Verarbeitung durch Servosteuerung" wird die Servosteuerung auf den Status "Warteschlange für eine Anforderung" im Schritt S12 gesetzt. Im Schritt S13 erfolgt eine Abfrage, ob es sich bei der Phase um "Warteschlange für eine Anforderung" handelt oder nicht, und wenn festgestellt wird, daß es sich bei der Phase um eine "Warteschlange für eine Anforderung" handelt, geht die Verarbeitung zum Schritt S14 über.
Im Schritt S14 erfolgt eine Ermittlung, ob die Speicherdatenlesebefehlsmarke EIN ist oder nicht, und falls festgestellt wird, daß die Marke nicht EIN ist, geht der Betriebsablauf zum Schritt S13 zurück, wogegen dann, wenn festgestellt wird, daß die Marke EIN ist, die Verarbeitung zum Schritt S15 übergeht, die Phase auf den Status "Datenlesen" im Schritt S15 gesetzt wird, und dann die Verarbeitung zum Schritt S13 übergeht.
Die Operationen vom Schritt S13 zum Schritt S14 zum Schritt S13 werden nämlich solange wiederholt, bis die Speicherdatenlesebefehlsmarke EIN geschaltet ist, und wenn sie das ist, wird die Servosteuerung auf den Status "Datenlesen" eingestellt, und geht die Verarbeitung zum Schritt S16 über.
Im Schritt S16 erfolgt eine Ermittlung, ob sich die Phase im Status "Datenlesen" befindet oder nicht, und falls festgestellt wird, daß sich die Phase nicht im Status "Datenlesen" befindet, geht die Verarbeitung zum Schritt S21 über, und falls festgestellt wird, daß sich die Phase im Status "Datenlesen" befindet, geht die Verarbeitung zum Schritt S17 über.
Im Schritt S17 erfolgt eine Ermittlung, ob bei auszulesenden Daten noch ein übrigbleibender Anteil vorhanden ist oder nicht, und wenn festgestellt wird, daß ein übrigbleibender Anteil noch vorhanden ist, geht die Verarbeitung zum Schritt S18 über.
Im Schritt S18 werden aus dem Speicher 15 ausgelesene Daten in den Bereich 44 (einen Antwortbereich für "Lesen gespeicherter Daten" zu einem Zeitpunkt) der Datenrahmeninformation 40 im Übertragungsspeicher 10a eingeschrieben, und die Verarbeitung geht zurück zum Schritt S13.
Bei der "Kommunikationsschnittstellenverarbeitung" erfolgt im Schritt S8 eine Ermittlung, ob die Speicherdatenlesebefehlsmarke bei dem Doppelanschlußspeicher 6 EIN ist oder nicht, und wenn festgestellt wird, daß die Speicherdatenlesebefehlsmarke nicht EIN ist, so geht die Verarbeitung zum Schritt S11 über, dagegen zum Schritt S9, falls festgestellt wird, daß die Marke EIN ist.
Im Schritt S9 erfolgt eine Ermittlung, ob eine Antwort auf "Speicherdatenlesen" für einen Zeitpunkt in dem Bereich 44 in dem Empfangsspeicher 11 gespeichert ist oder nicht, und wenn festgestellt wird, daß dort keine Antwort gespeichert ist, geht die Verarbeitung zum Schritt S11 über, wogegen sie zum Schritt S10 übergeht, wenn festgestellt wird, daß dort eine Antwort gespeichert ist.
Im Schritt S10 wird die Antwort für einen Zeitpunkt auf dieses "Speicherdatenlesen" an einen entsprechenden Ort des Bereichs 56 beim Doppelanschlußspeicher 6 übertragen.
Im Schritt S11 wird eine Speicherdatenleseantwortmarke von dem Empfangsspeicher 11 an dem Bereich 61 in dem Doppelanschlußspeicher 6 übertragen.
Bei der "Bearbeitung durch Servosteuerung" werden die Operationen vom Schritt S13 zum Schritt S16 zum Schritt S17 zum Schritt S18 zum Schritt S13 wiederholt ausgeführt, und bei der "Kommunikationsschnittstellenverarbeitung" wird eine Antwort (auf die Anzahl gespeicherter Daten) auf "Speicherdatenlesen" in dem Bereich 56 des Doppelanschlußspeichers 6 dadurch eingestellt, daß die Operationen vom Schritt S7 zum Schritt S8 zum Schritt S9 zum Schritt S10 zum Schritt S11 zum Schritt S7 wiederholt werden.
Wenn im Schritt S17 wie voranstehend geschildert sämtliche Daten ausgelesen wurden, und festgestellt wird, daß bei den zu lesenden Daten kein Anteil mehr übrig ist, geht die Verarbeitung zum Schritt S19 über.
Im Schritt S19 werden ungültige Daten in den Bereich 44 des Übertragungsspeichers 10a als Antwort für einen Zeitpunkt auf das "Speicherdatenlesen" eingeschrieben, wird die Speicherdatenleseantwortmarke, die beim Übertragungsspeicher 10a gespeichert ist, EIN geschaltet, und geht die Verarbeitung zum Schritt S20 über.
Die Servosteuerung wird auf den Status "Warteschlange für Befehlslöschung" im Schritt S20 eingestellt, und die Verarbeitung kehrt zum Schritt S13 zurück. Die Speicherdatenleseantwortmarke, die im Übertragungsspeicher 10a gespeichert ist, wird an die serielle Hochgeschwindigkeitskommunikationsschnittstelle 2 übertragen.
Bei der "Kommunikationsschnittstellenverarbeitung" wird die Speicherdatenleseantwortmarke in dem Bereich 61 des Doppelanschlußspeichers 6 im Schritt S11 eingeschrieben.
Bei der "Verarbeitung durch PC" werden die Operationen vom Schritt S3 zum Schritt S4 zum Schritt S3 wiederholt, wird der Bereitschaftszustand solange fortgesetzt, bis die in dem Bereich 61 gespeicherte Speicherdatenleseantwortmarke EIN geschaltet ist, geht die Verarbeitung vom Schritt S4 zum Schritt S5 über, wenn die Speicherdatenleseantwortmarke EIN geschaltet ist, wird eine Antwort auf das "Speicherdatenlesen" aus dem Bereich 56 im Schritt S5 geholt, wird die Speicherdatenlesebefehlsmarke, die in dem Bereich 60 des Doppelanschlußspeichers 6 gespeichert ist, im Schritt S6 AUS geschaltet, und ist dann die Verarbeitung beendet.
Bei der "Kommunikationsschnittstellenverarbeitung" wird die Speicherdatenlesebefehlsmarke, die AUS ist, in dem Bereich 60 des Doppelanschlußspeichers 6 in den Bereich 38 des Übertragungsspeichers 10 eingeschrieben, und an die Servosteuerungen #1 bis #n übertragen.
Bei der "Verarbeitung durch die Servosteuerung" werden die Operationen vom Schritt S13 zum Schritt S16 zum Schritt S21 zum Schritt S22 zum Schritt S13 wiederholt ausgeführt, und wird der Bereitschaftszustand fortgesetzt, bis die in dem Bereich 38 des Empfangsspeichers 11a gespeicherte Speicherdatenlesebefehlsmarke AUS geschaltet wird.
Wenn die Speicherdatenlesebefehlsmarke AUS geschaltet wird, geht die Verarbeitung vom Schritt S21 zum Schritt S24 über, wird die Speicherdatenleseantwortmarke, die im Bereich 46 des Übertragungsspeichers 10a gespeichert ist, im Schritt S24 AUS geschaltet, wird die Servosteuerung auf den Zustand "Warteschlange für Anforderung" im Schritt S25 eingestellt, und ist damit die Verarbeitung beendet.
Es wird darauf hingewiesen, daß diese Speicherdatenleseverarbeitung durch das Programm und dergleichen in dem Mikrocomputer 1 gestartet werden kann, daß jedoch bei der vorliegenden Ausführungsform angenommen wird, daß die Verarbeitung periodisch durch den Zeitgeber im Inneren des PC 1 in einem Zyklus entsprechend der Datenlänge gestartet wird.
Als nächstes erfolgt eine Beschreibung der "Mehrzweckverarbeitung" zur Ausführung einer von verschiedenen Arten von Verarbeitungsvorgängen, beispielsweise Verarbeitung beim statistischen Schreiben von Daten, Verarbeitung im Direktbetrieb, Sektorleseverarbeitung, Sektorschreibverarbeitung, und Verarbeitung bei der Zeichenübertragung.
Die Fig. 7 und 8 sind Flußdiagramme, die jeweils den Inhalt gemeinsamer Verarbeitung bei der "Mehrzweckverarbeitung" zeigen, und Fig. 9 zeigt den Aufbau eines Anforderungsbereiches und ebenso eines Antwortbereiches.
Bei der "Verarbeitung durch PC" in Fig. 7 erfolgt im Schritt S31 eine Ermittlung, ob sowohl die Mehrzweckverarbeitungsanforderungsmarke, die in dem Bereich 62 des Doppelanschlußspeichers 6 gespeichert ist, als auch die Mehrzweckverarbeitungsantwortmarke, die in dem Bereich 63 dort gespeichert ist, AUS sind oder nicht, es wird festgestellt, daß die Ausführung der "Mehrzweckverarbeitung" möglich ist, solange beide Marken AUS sind, und die Verarbeitung geht zum Schritt S32 über.
Es wird festgestellt, daß die Ausführung der "Mehrzweckverarbeitung" nicht möglich ist, es sei denn die Bedingung würde erfüllt, daß die beiden Marken AUS sind, und die Verarbeitung geht zum Schritt S57 über.
Fehlerinformation wird einem Servosteuerungsalarm-Ma­ nagingtask 85 im Schritt S57 mitgeteilt, und die "Verarbeitung durch den PC" ist beendet.
Im Schritt S32 wird der Befehlscode für eine "Mehrzweckverarbeitungsanforderung" in einem Bereich 71 des Bereiches 54 des Doppelanschlußspeichers 6 eingestellt, und werden Anforderungsdaten in einem Bereich 72 dort eingestellt.
Im Schritt S33 wird die in dem Bereich 62 des Doppelanschlußspeichers 6 Mehrzweckverarbeitungsanforderungsmarke EIN geschaltet, und die Verarbeitung geht zum Schritt S34 über.
Als nächstes erfolgt unter Bezugnahme auf Fig. 7 eine Beschreibung der "Kommunikationsschnittstellenverarbeitung". Im Schritt S38 und im Schritt S39 wird eine Ermittlung vorgenommen, ob sich der Zustand der Mehrzweckverarbeitungsanforderungsmarke von AUS auf EIN geändert hat oder nicht, entsprechend einem vorherigen Wert und einem momentanen Wert der Mehrzweckverarbeitungsanforderungsmarke, die in dem Bereich 62 des Doppelanschlußspeichers 6 gespeichert ist, und wenn festgestellt wird, daß sich der Zustand der Marke von AUS auf EIN geändert hat, geht die Verarbeitung zum Schritt S40 über, und geht dagegen zum Schritt S41 über, wenn festgestellt wird, daß sich der Zustand der Marke nicht von AUS auf EIN geändert hat.
Im Schritt S40 wird die "Mehrzweckverarbeitungsanforderung", die im Bereich 54 des Doppelanschlußspeichers 6 gespeichert ist, in dem Bereich 35 des Übertragungsspeichers 10 übertragen.
Im Schritt S41 wird die Mehrzweckverarbeitungsanforderungsmarke, die im Bereich 62 des Doppelanschlußspeichers 6 gespeichert ist, an den Bereich 39 des Übertragungsspeichers 10 übertragen, und geht die Verarbeitung zum Schritt S42 über.
Es wird darauf hingewiesen, daß dann, wenn diese Mehrzweckverarbeitungsanforderungsmarke an den Bereich 39 des Übertragungsspeichers 10 übertragen wird, die "Mehrzweckverarbeitungsanforderung" und die Mehrzweckverarbeitungsanforderungsmarke, die in dem Übertragungsspeicher 10 eingestellt ist, an die Servosteuerungen #1 bis #n übertragen werden.
Als nächstes erfolgt eine Beschreibung der "Verarbeitung durch die Servosteuerung".
Die Steuerung für die Mehrzweckverarbeitung durch eine Servosteuerung wird am Anfang auf den Zustand "Warteschlange für eine Anforderung" im Schritt S46 eingestellt.
Im Schritt S47 erfolgt eine Ermittlung, ob die "Warteschlange für eine Anforderung" ausgeführt wird oder nicht, und wenn festgestellt wird, daß die "Warteschlange für eine Anforderung" ausgeführt wird, geht die Verarbeitung zum Schritt S48 über, dagegen zum Schritt S52, wenn festgestellt wird, daß die "Warteschlange für eine Anforderung" nicht durchgeführt wird.
Im Schritt S48 erfolgt eine Ermittlung, ob jede der Mehrzweckverarbeitungsanforderungsmarken, die in dem Bereich 39 der Bereiche 32-1 bis 32-n des Empfangsspeichers 11a gespeichert sind, EIN sind oder nicht, und wenn festgestellt wird, daß die Marken AUS sind, kehrt die Verarbeitung zum Schritt S47 zurück, und werden die Operationen vom Schritt S47 zum Schritt S48 zum Schritt S47 wiederholt, bis die Mehrzweckverarbeitungsanforderungsmarken EIN geschaltet werden.
Wenn die Mehrzweckverarbeitungsanforderungsmarken EIN geschaltet wurden, geht die Verarbeitung vom Schritt S48 auf den Schritt S49 über.
Im Schritt S49 wird Befehlscode, der in dem Bereich 71 des Bereiches 35 gespeichert ist, ausgelesen, und wird die Mehrzweckverarbeitung entsprechend diesem Befehlscode ausgeführt. Das Ergebnis dieser Verarbeitung wird in dem Bereich 45 des Übertragungsspeichers 10 als "Antwort auf die Mehrzweckverarbeitung" eingestellt.
Im Schritt S50 wird die Mehrzweckverarbeitungsantwortmarke, die in dem Bereich 47 des Übertragungsspeichers 10a gespeichert ist, EIN geschaltet, und geht die Verarbeitung zum Schritt S51 über.
Im Schritt S51 wird die Steuerung auf den Zustand "Warten auf Löschen des Befehls" eingestellt, und die Verarbeitung kehrt zum Schritt S47 zurück.
Die "Reaktion auf die Mehrzweckverarbeitung" sowie die Mehrzweckverarbeitungsantwortmarke, die in dem Übertragungsspeicher 10a eingestellt sind, werden in die serielle Hochgeschwindigkeitskommunikationsschnittstelle 2 übertragen.
Bei der "Kommunikationsschnittstellenverarbeitung" erfolgt im Schritt S42 und im Schritt S43 eine Ermittlung, ob sich der Zustand der Mehrzweckverarbeitungsantwortmarke, die in dem Bereich 47 des Empfangsspeichers 11 gespeichert ist, von AUS auf EIN geändert hat oder nicht, und wenn festgestellt wird, daß sich die Marke geändert hat, geht die Verarbeitung zum Schritt S44 über, dagegen zum Schritt S45, falls festgestellt wird, daß sich die Marke nicht geändert hat.
Im Schritt S44 wird die "Antwort an die Mehrzweckverarbeitung", die in dem Bereich 45 des Empfangsspeichers 11 gespeichert ist, an den Bereich 57 des Doppelanschlußspeichers 6 übertragen.
Im Schritt S45 wird die Mehrzweckverarbeitungsantwortmarke, die in dem Bereich 47 des Empfangsspeichers 11 gespeichert ist, an den Bereich 63 des Doppelanschlußspeichers 6 übertragen.
Als nächstes wird die "Verarbeitung durch den PC" beschrieben. Zuerst werden die Operationen vom Schritt S34 zum Schritt S35 zum Schritt S34 wiederholt, bis die in dem Bereich 63 des Doppelanschlußspeichers 6 gespeicherte Mehrzweckverarbeitungsantwortmarke EIN geschaltet wird, und wenn die Mehrzweckverarbeitungsantwortmarke EIN geschaltet wurde, geht die Verarbeitung vom Schritt S35 auf den Schritt S36 über.
Im Schritt S36 wird die "Antwort auf die Mehrzweckverarbeitung", die in dem Bereich 57 des Doppelanschlußspeichers 6 gespeichert ist, ausgelesen. Im Schritt S37 wird die Mehrzweckverarbeitungsantwortmarke, die in dem Bereich 62 des Doppelanschlußspeichers 6 gespeichert ist, AUS geschaltet, und ist die "Verarbeitung durch den PC" beendet.
Als nächstes erfolgt eine Beschreibung der "Verarbeitung durch die Servosteuerung".
Obwohl die Servosteuerung, die in dem Zustand "Warten auf Befehlslöschen" gehalten wird, die Operationen vom Schritt S47 zum Schritt S52 zum Schritt S53 zum Schritt S47 wiederholt, bis die im Bereich 39 des Empfangsspeichers 11a gespeicherte Mehrzweckverarbeitungsanforderungsmarke AUS geschaltet wird, geht dann, wenn die Mehrzweckverarbeitungsanforderungsmarke AUS geschaltet wird, die Verarbeitung vom Schritt S52 zum Schritt S55 über.
Im Schritt S55 wird die Mehrzweckverarbeitungsantwortmarke, die in dem Bereich 47 des Übertragungsspeichers 10a gespeichert ist, AUS geschaltet, wird die Steuerung auf den Zustand "Warteschlange für eine Anforderung" im Schritt S56 eingestellt, und ist die Verarbeitung beendet.
Als nächstes wird beschrieben, wie interne Daten in den Servosteuerungen #1 bis #n periodisch durch eine Funktion "Speicherdatenlesen" ausgelesen werden, und der Inhalt der gespeicherten Daten in den Servosteuerungen #1 bis #n durch jedes der mehreren Anwendungsprogramme überschrieben werden, nämlich durch Ausführung der statistischen Datenschreibverarbeitung, welche eine der "Mehrzweckverarbeitungen" darstellt.
Die Fig. 10 und 11 sind Blockschaltbilder, die jeweils den Informationsfluß bei dieser Verarbeitung zeigen. In Fig. 10 und in Fig. 11 sind mit den Bezugszeichen 80-1 bis 80-n Anwendungen bezeichnet, mit 81 eine Schnittstelle für den Speicherzugriff, der mit Tasks geteilt wird, mit 82 ein serieller Hochgeschwindigkeitskommunikationstask, mit 83 ein gemeinsam mit Tasks genutzter Speicher, mit 84 ein serieller Hochgeschwindigkeitskommunikationstreiber, mit 85 ein Servosteuerungsalarm-Managingtask, und mit 87 Speicherdatenspezifikationsdaten.
Ein Speicherdatenbereich ist in jeder Station (jede der Servosteuerungen #1 bis #n) bei dem gemeinsam mit Tasks 83 genutzten Speicher vorgesehen. Mehrere Bereiche (Speichernummern CB0 bis CBn), die dazu dienen, darin Bitdaten zu speichern, sowie mehrere Bereiche (Speichernummern CW0 bis CWn), die dazu dienen, darin Bytedaten zu speichern, die ein bis mehrere Byte umfassen, sind in jedem der Speicherdatenbereiche vorgesehen, die in jeder Station vorhanden sind.
In der Speicherdatenspezifikationstabelle 87 für jede Station sind Spalten vorgesehen, in denen Information gespeichert werden soll, welche eine Daten-ID, eine Speichernummer und eine Stationsnummer für jede Speichernummer umfaßt. Der Inhalt, der durch diese Daten-ID festgelegt wird, stellt interne Daten dar, die in dem Speicher 15 der Servosteuerung gespeichert sind.
Es wird eine Korrelation entsprechend dieser Speicherdatenspezifikationstabelle 87 zwischen einer Speichernummer, welche eine Speicheradresse in dem mit Tasks 83 gemeinsam genutzten Speicher anzeigt, und einer Daten-ID eingestellt, welche eine Adresse anzeigt, an welcher die internen Daten für die Servosteuerung gespeichert sind.
Es wird darauf hingewiesen, daß Fig. 11 jeweils den Inhalt der Einstellung als ein Beispiel für die Speicherdatenspezifikationstabelle 87, den gemeinsam mit Tasks 83 genutzten Speicher, und den Doppelanschlußspeicher 6 zeigt.
Fig. 12 zeigt den Inhalt des Bereichs 54 (oder des Bereichs 35 des Datenrahmens) bei dem Doppelanschlußspeicher 6, sowie den Inhalt des Bereichs 57 (oder des Bereichs 45 des Datenrahmens) des Doppelanschlußspeichers 6 bei der "Verarbeitung zum statistischen Einschreiben von Daten.
In dem Bereich 54 (oder dem Bereich 35) ist Anforderungsinformation gespeichert, wenn das "statistische Einschreiben von Daten" angefordert wird, und Antwortinformation wird in dem Bereich 57 (oder dem Bereich 45) gespeichert.
Ein Befehlscode, welcher "statistisches Schreiben von Daten" anzeigt, ist in dem Bereich 71 des Bereichs 54 (oder des Bereichs 35) eingestellt, und die Anzahl an Punkten für in den Speicher 15 der Servosteuerung einzuschreibende Daten ist in einem Bereich 90 eingestellt.
In einem Bereich 91-1 bis zu einem Bereich 91-n sind ID-Num­ mern eingestellt, die jeweils eine Adresse des Speichers 15 angeben, in welcher interne Daten als erste bis n-te Schreibdaten-IDs gespeichert sind.
In einem Bereich 92-1 bis zu einem Bereich 92-n sind Attribute eingestellt, beispielsweise die Abmessungen von Daten (beispielsweise 1 Bit, 8 Bits, 16 Bits, 32 Bits), als jeweils erste bis n-te Schreibdatenbetriebsart, und erste bis n-te Schreibdaten sind in einem Bereich 93-1 bis zu einem Bereich 93-n eingeschrieben.
Ein Befehlscode, welcher die Verarbeitung zum statistischen Schreiben von Daten vorgibt, ist in einem Bereich 73 des Bereichs 57 (oder des Bereichs 45) eingestellt, und ein Code, der das Vorhandensein oder die Abwesenheit von Fehlern als Fehlerstatus und einen Grund für den Fehler angibt, ist in einem Bereich 94 des Bereichs 57 (oder des Bereichs 45) eingestellt.
Unter Bezugnahme auf die Fig. 10 und 11 erfolgt nunmehr eine Beschreibung des Datenflusses und des Inhalts der Verarbeitung.
Es wird angenommen, daß in dem System gemäß Ausführungsform 1 der vorliegenden Erfindung die Verarbeitung zum "Lesen gespeicherter Daten" periodisch ausgeführt wird, so daß dann, wenn Daten-IDs, die in der Speicherdatenspezifikationstabelle 87 eingestellt sind, vorher in der Servosteuerung gespeichert werden, jede der Daten, die durch diese Daten-ID festgelegt werden, aus dem Speicher 15 der Servosteuerung ausgelesen und in den Bereichen 56-1 bis 56-n des Doppelanschlußspeichers 6 als "Datenleseantwort" eingestellt werden, in der Reihenfolge, die in der Speicherdatenspezifikationstabelle 87 vorhanden ist.
Zusammen mit diesem Vorgang liest der serielle Hochgeschwindigkeitskommunikationstask 82 jeden Inhalt der Bereiche 56-1 bis 56-n des Doppelanschlußspeichers 6 über den seriellen Hochgeschwindigkeitskommunikationstreiber 84 aus, erkennt, zu welcher Speichernummer der ausgelesene Inhalt gehört, durch Bezugnahme auf die Speicherdatenspezifikationstabelle 87, und schreibt die ausgelesenen Daten in den entsprechenden Bereich in dem mit Tasks 83 gemeinsam genutzten Speicher über die Schnittstelle 81 für einen gemeinsam mit Tasks genutzten Speicherzugriff ein.
Es wird darauf hingewiesen, daß das Anwendungsprogramm 80-1 bis 80-n gespeicherte Daten aus dem mit Tasks 83 gemeinsam genutzten Speicher über die Schnittstelle 81 für einen gemeinsam mit Tasks durchgeführten Speicherzugriff auslesen kann.
Wenn die "Mehrzweckverarbeitung" durch eines der Anwendungsprogramme 80-1 bis 80-n durchgeführt wird, nachdem irgendwelche der Daten in dem gemeinsam mit Tasks 83 benutzten Speicher überschrieben wurden, stellt der serielle Hochgeschwindigkeitskommunikationstask 82 die überschriebenen Daten entsprechend der Marke fest, welche zu den Daten gehört, liest die Daten aus dem gemeinsam mit Tasks 83 genutzten Speicher aus, erhält eine Daten-ID und ebenso eine Stationsnummer der Servosteuerung, die jeweils den Daten aus der Speicherdatenspezifikationstabelle 87 entsprechen, und schreibt entsprechende interne Daten, die in dem Speicher 15 der Servosteuerung unter den Servosteuerungen #1 bis #n gespeichert sind, erneut ein.
Da "Speicherdatenlesen" periodisch ausgeführt wird, durch vorheriges Speichern von Information wie beispielsweise den Zustand des Auftretens eines Alarms in den Servosteuerungen #1 bis #n und eine Daten-ID, welche eine Speicheradresse des Alarminhalts in der Servosteuerung angibt, werden der Zustand des Auftretens eines Alarms in den Servosteuerungen #1 bis #n und die Alarminhalte periodisch in den gemeinsam mit Tasks 83 genutzten Speicher eingeschrieben.
Der Servosteuerungsalarm-Managingtask 85 liest über die Schnittstelle 81 für einen gemeinsam mit Tasks durchgeführten Speicherzugriff den Inhalt des gemeinsam mit Tasks 83 genutzten Speichers aus, überwacht, ob ein Alarm auftritt oder nicht, und läßt, wenn das Auftreten eines Alarms festgestellt wird, einen Befehl gültig werden, welcher dem Alarminhalt entspricht, der in dem gemeinsam mit Tasks 83 genutzten Speicher gespeichert ist (in der Speicherdatenspezifikationstabelle 87 gespeicherte Befehle, beispielsweise einen Rücksetzbefehl und Zurücksetzen des Zustands eines Nothalts oder dergleichen in der Servosteuerung, oder ein Befehl, der manuelle Operationen betrifft, beispielsweise ein Rücksetzen des Programms zur zwangsweisen Beendigung eines Programms oder zum Zurückkehren zum Anfang), über die Schnittstelle 81 für einen gemeinsam mit Tasks genutzten Speicherzugriff, entsprechend der Ausführung dieser "Mehrzweckverarbeitung", und es kann eine Verarbeitung für die Wiederherstellung nach dem Auftreten des Alarms durchgeführt werden.
Als nächstes erfolgt die Beschreibung eines Falles, in welchem interne Daten einer Servosteuerung dadurch mit mehreren Servosteuerungen geteilt werden, daß "Speicherdatenlesen" und "statistisches Einschreiben von Daten" bei der Mehrzweckverarbeitung in dem System durchgeführt werden, welches den gemeinsam mit Tasks 83 genutzten Speicher verwendet, unter Bezugnahme auf Fig. 21.
In Fig. 21 sind Einzelheiten des seriellen Hochgeschwindigkeitskommunikationstreibers 84 weggelassen, und ebenso die Schnittstelle 81 für einen Speicherzugriff, der mit Tasks geteilt wird, wie in Fig. 10 gezeigt, sowie Einzelheiten der Übertragungsspeicher 10, 10a sowie der Empfangsspeicher 11, 11a, die jeweils in Fig. 1 gezeigt sind.
In dem gemeinsam mit Tasks 83 genutzten Speicher sind Bereiche 151-1 bis 151-n zum Speichern gespeicherter Daten für die erste Station bis zur n-ten Station (Servosteuerung #1 bis Servosteuerung #n) vorgesehen, sowie ein Bereich 150, in welchem Speicherdaten gespeichert werden sollen, die gemeinsam von allen Stationen genutzt werden. Es wird darauf hingewiesen, daß nicht nur ein Speicherdatenposten, sondern auch Speicherdaten, die gemeinsam von allen Stationen benutzt werden, in dem Bereich 150 gespeichert werden können.
In diesem Fall werden, durch vorherige Speicherung interner Daten, so daß die internen Daten mit einer Daten-ID von D0 in Speicherdaten GW0 geändert werden, die gemeinsam von allen Stationen benutzt werden, dann, wenn Daten D0 in einer der Servosteuerungen überschrieben werden, beispielsweise in der Servosteuerung #1, jede der Daten D0 in den Servosteuerungen #2 bis #n überschrieben.
Da "Lesen gespeicherter Daten" periodisch durchgeführt wird, werden in diesem Fall D0 der Servosteuerung #1 und Inhalte von D0 in dem Bereich 56 in dem Doppelanschlußspeicher 6 als "Speicherdatenleseantwort" in der ersten Station gespeichert. Zusammen mit dieser Operation überträgt der serielle Hochgeschwindigkeitskommunikationstask 82 den Inhalt zu einem Bereich 152 des Speicherdatenbereichs 150, der gemeinsam von allen Stationen benutzt wird, in den gemeinsam mit Tasks 83 genutzten Speicher. Dann wird, entsprechend dem Inhalt des Bereichs 56 des Doppelanschlußspeichers 6 eine bestimmte "Mehrzweckverarbeitungsanforderung" entsprechend der Verarbeitung zum statistischen Schreiben von Daten, deren Konfiguration in Fig. 12 gezeigt ist, in den Bereich 54 des Doppelanschlußspeichers 6 durch eine der Anwendungen 80-1 bis 80-n eingeschrieben, und wenn die "Mehrzweckverarbeitung" ausgeführt wird, wird dieser Inhalt in dem Bereich 54 des Bereiches 51-2 bis 51-n in dem Doppelanschlußspeicher 6 gespeichert, und wird in D0 in jeden der Speicher 15 der Servosteuerungen #2 bis #n über jede Übertragungsleitung eingeschrieben.
Da die Verarbeitung zum Lesen von Speicherdaten in einem angegebenen Zyklus wiederholt ausgeführt wird, werden dann, wenn beliebige Daten in D0 eingeschrieben werden, beispielsweise durch eine Funktion 154 der Ablaufsteuerverarbeitung der Servosteuerung #1, die Daten an jedes D0 der Servosteuerungen #2 bis #n in dem nächsten Verarbeitungszyklus übertragen.
Obwohl zuerst die Beschreibung eines Falles erfolgte, in welchem die Servosteuerung #1 den Inhalt von D0 überschreibt, wird dieselbe Verarbeitung auch dann durchgeführt, wenn irgendeine andere Servosteuerung den Inhalt eines Datenregisters überschreibt.
Wenn der PC 1 den Inhalt des Bereiches 152, entsprechend D0, in dem Speicherdatenbereich überschreibt, der mit allen Stationen geteilt wird, in dem zusammen mit Tasks 83 genutzten Speicher, wird der Inhalt jedes D0 in den Servosteuerungen #1 bis #n ebenfalls in dem nächsten Verarbeitungszyklus überschrieben.
Wie voranstehend geschildert ist es einfach möglich, direkt interne Daten einer anderen Servosteuerung durch das Steuerprogramm oder dergleichen der Station zu ändern, oder den Zustand der momentanen Verarbeitung in der Servosteuerung der Station mitzuteilen.
Es wird darauf hingewiesen, daß zur Speicherung mehrerer Daten-IDs in dem Speicherdatenbereich, der von allen Stationen gemeinsam genutzt wird, der Inhalt der Speicher, der durch die mehreren Daten-IDs festgelegt wird, gleichzeitig an andere Servosteuerungen übertragen werden kann.
Als nächstes erfolgt eine Beschreibung der Verarbeitung einer direkten Operation bei der "Mehrzweckverarbeitung", durch welche das Steuerprogramm von dem PC 1 an die Servosteuerungen #1 bis #n geschickt wird.
Fig. 13 zeigt die Datenstrukturen mit Inhalten, die in dem Bereich 54 im Doppelanschlußspeicher 6 gespeichert sind, sowie mit Inhalten, die dort in dem Bereich 57 in dem "direkten Befehl für die Betriebsartauswahl" gespeichert sind.
Fig. 14 zeigt Datenstrukturen, die in dem Bereich 54 (und dem Bereich 35 eines Datenrahmens) im Doppelanschlußspeicher 6 gespeicherte Inhalte aufweisen, sowie Inhalte, die in dem Bereich 57 (und dem Bereich 45 eines Datenrahmens) in diesem Speicher gespeichert sind, beim direkten Befehl für "Erkennung der verbleibenden Größe eines Puffers".
Fig. 15 zeigt Datenanordnungen, die Inhalte aufweisen, die in dem Bereich 54 (und dem Bereich 35 eines Datenrahmens) im Doppelanschlußspeicher 6 gespeichert sind, sowie Inhalte, die dort im Bereich 57 (und im Bereich 45 eines Datenrahmens) gespeichert sind, bei dem "Direktübertragungsbefehl eines Steuerprogramms".
Entsprechend diesem "direkten Befehl für die Betriebsartauswahl" ist es möglich, eine Operation durch ein übliches Programm als direkte Operation auszuwählen, bei welcher ein Steuerprogramm direkt übertragen wird, und umgekehrt.
Wenn diese "Mehrzweckverarbeitung" dadurch ausgeführt wird, daß eine Befehlscodeanzeigeverarbeitung für die Betriebsartauswahl in dem Bereich 71 des Bereiches 54 in dem Doppelanschlußspeicher 6 eingestellt wird, und auch ein Code zur Festlegung, ob die direkte Operation gültig oder ungültig erklärt ist, in einem Bereich 95 des Bereichs 54 eingestellt wird, wird der Datenrahmen mit diesem Inhalt an jede Servosteuerung geschickt, und wird wie nachstehend noch genauer erläutert eine Antwort, welche die Annahme oder die Nichtannahme der Anforderung anzeigt, von der Servosteuerung zurückgeschickt.
Ein Datenrahmen, in welchem ein Befehlscode, welcher die Auswahl einer Betriebsart anzeigt, in dem Bereich 73 des Bereiches 35 eingestellt ist, und wobei ein Fehlerstatuscode, der das Vorhandensein oder die Abwesenheit irgendeines Fehlers und ebenso die Ursache für den Fehler, wenn dieser auftritt, anzeigt, in dem Bereich 94 des Bereichs 35 eingestellt ist, wird an den PC 1 geschickt, und jede der Informationen wird in jedem entsprechenden Bereich in dem Doppelanschlußspeicher 6 gespeichert.
Der "Direktbefehl zur Erkennung der verbleibenden Größe eines Puffers" bei der "Mehrzweckverarbeitung" hat die Funktion, die Größe eines verfügbaren Bereiches in einem Direktbefehlspuffer 101 zu überprüfen, der in Fig. 16 gezeigt ist. Der Direktbefehlspuffer 101 im Speicher 15 ist ein Pufferspeicher zur zeitweiligen Speicherung eines Steuerprogramms, welches von dem PC 1 an die Servosteuerung geschickt wird.
Wenn die "Mehrzweckverarbeitung" dadurch ausgeführt wird, daß ein Befehlscode, welcher die Erkennung der verbleibenden Größe eines Puffers anzeigt, in dem Bereich 71 des Bereiches 54 in dem Doppelanschlußspeicher 6 eingestellt wird, wird die Übertragung des entsprechenden Datenrahmens zwischen dem PC und der Servosteuerung durchgeführt, und dann wird, entsprechend der "Antwort auf die Mehrzweckverarbeitung" von der Servosteuerung der Befehlscode, der die Erkennung der verbleibenden Größe eines Puffers anzeigt, in dem Bereich 73 des Bereiches 57 eingestellt, wird der Fehlerstatuscode, der das Vorhandensein oder die Abwesenheit irgendeines Fehlers anzeigt, und ebenso die Ursache für den Fehler, wenn einer auftritt, in dem Bereich 54 des Bereiches 57 eingestellt, und wird die übrigbleibende Größe des Befehlspuffers (die Größe des verfügbaren Bereichs in dem Direktbefehlspuffer 101) in dem Bereich 96 des Bereiches 57 eingestellt.
Entsprechend diesem "Direktübertragungsbefehl für ein Steuerprogramm" kann das Steuerprogramm von dem PC 1 an die Servosteuerung (#1 bis #n) übertragen werden.
Wenn dieser Befehl ausgeführt werden soll, so wird, wie in Fig. 15 gezeigt, vorher ein Befehlscode eingestellt, der den "Direktübertragungsbefehl für ein Steuerprogramm" angibt, in dem Bereich 71 des Bereiches 54 im Doppelanschlußspeicher 6, wird die Anzahl an Blöcken des Steuerprogramms, die übertragen werden soll, als Anzahl von Befehlsblöcken in einem Bereich 97 des Bereichs 54 eingestellt, wird die erste Blockprogrammcodeabmessung in einem Bereich 98-1 des Bereichs 54 eingestellt, wird die zweite Blockprogrammcodeabmessung in einem Bereich 98-2 eingestellt, . . ., wird die n-te Blockprogrammcodeabmessung in einem Bereich 98-n eingestellt, und wird der erste Blockprogrammcode in einem Bereich 99-1 des Bereichs 54 eingestellt, der zweite Blockprogrammcode in einem Bereich 99-2, . . ., der n-te Blockprogrammcode in einem Bereich 99-n, und wird dann, wenn die "Mehrzweckverarbeitung" ausgeführt wird, nachdem sämtliche voranstehenden Verarbeitungsvorgänge durchgeführt wurden, das Steuerprogramm in den Direktbefehlspuffer 101 der Servosteuerung (#1 bis #n) eingeschrieben, und wird eine Antwort von der Servosteuerung (#1 bis #n) zurückgeschickt.
Der Befehlscode, der den Direktübertragungsbefehl des Steuerprogramms angibt, wird entsprechend der Antwort in dem Bereich 73 des Bereichs 57 in dem Doppelanschlußspeicher 6 eingestellt, der Fehlerstatuscode, der das Vorhandensein oder die Abwesenheit irgendeines Fehlers sowie die Ursache des Fehlers, wenn ein solcher auftritt, anzeigt, wird in dem Bereich 94 des Bereichs 57 eingestellt, und die Größe eines verfügbaren Bereichs in dem Direktbefehlspuffer 101, nachdem das Steuerprogramm dort eingeschrieben wurde, wird in dem Bereich 96 des Bereichs 57 eingestellt.
Bei dieser "Direktübertragung des Steuerprogramms" wird zuerst die Betriebsart auf die Direktbetriebsart eingestellt, entsprechend dem "Direktbefehl für die Betriebsartauswahl".
Nach Erkennung der Größe des verfügbaren Bereichs des Direktbefehlspuffers 101 entsprechend der "Direktübertragung der Feststellung der verbleibenden Größe eines Puffers" wird das Steuerprogr 21223 00070 552 001000280000000200012000285912111200040 0002019813203 00004 21104amm in den verfügbaren Bereich dieses Puffers entsprechend dem "Direktbefehl zur Übertragung des Steuerprogramms" eingeschrieben.
Fig. 16 zeigt den Datenfluß bei der "Direktübertragung des Steuerprogramms".
Zuerst wird das Steuerprogramm, welches von dem PC 1 in einem Bereich 99-1 bis zu einem Bereich 99-n in dem Bereich 54 in dem Doppelanschlußspeicher 6 eingeschrieben wurde, an den Empfangsspeicher 11a jeder der Servosteuerungen #1 bis #n übertragen.
Dieses übertragene Steuerprogramm wird an den Direktbefehlspuffer 101 entsprechend der seriellen Hochgeschwindigkeitskommunikationsverarbeitung 100 übertragen. Bei der Steuerprogrammanalyseverarbeitung 102 wird die Verarbeitung (beispielsweise Verarbeitung zur Umwandlung des Programms in einen Befehl für einen Servoverstärker) dadurch durchgeführt, daß das in den Direktbefehlspuffer 101 eingeschriebene Steuerprogramm blockweise ausgelesen wird.
Nunmehr erfolgt die Beschreibung eines Falles, in welchem interne Daten jeder der Servosteuerungen #1 bis #n über ein Dateisystem des PC 1 dadurch ausgelesen werden, daß die Servosteuerungen #1 bis #n als Speicher für die Plattenlaufwerke oder dergleichen in dem PC 1 zugeordnet werden, und die Sektorlesefunktion ebenso wie die Sektorschreibfunktion bei der "Mehrzweckverarbeitung" verwendet wird. Es wird darauf hingewiesen daß in diesem Fall auch eine Dateisicherheit möglich ist.
Um den Zugriff zu jedem internen Speicher (Speicher 15) der Servosteuerungen #1 bis #n von dem Dateisystem des PC 1 aus zu ermöglichen wird jeder der internen Speicher der Servosteuerungen #1 bis #n in minimale Zugriffseinheiten unterteilt (einen Sektor mit einer festgelegten Kapazität), und wird Blockgeräteinformation zur Einheit hinzugefügt, entsprechend einem Dateiformat in dem Dateisystem des PC 1.
Mit dieser Funktion kann einfach auf interne Daten von Servosteuerungen zugegriffen werden, beispielsweise durch ein Dateimanagementwerkzeug, beispielsweise einen Dateimanager, der bei dem Betriebssystem des PC vorgesehen ist, oder durch kommerzielle Anwendungen, die auf diesem Betriebssystem arbeiten.
Fig. 18 zeigt jeweils den Aufbau einer üblichen Datei in dem Dateisystem.
In der Figur ist mit dem Bezugszeichen 120 ein Vorspannabschnitt bezeichnet. In einem Bereich von einem Sektor 0 bis zu einem Sektor n ist Information gespeichert, welche die Struktur der internen Datei jeder Servosteuerung anzeigt.
Das Bezugszeichen 121 bezeichnet einen Bereich, in welchem Boot-Information gespeichert werden soll, welche die Größe eines Boot-Verzeichnisses oder dergleichen angibt.
Das Bezugszeichen 122 bezeichnet einen Bereich, in welchem eine Dateizuordnungstabelle gespeichert werden soll, welche die Zuordnung von Clustern zu Dateien angibt.
Das Bezugszeichen 123 bezeichnet einen Bereich, in welchem Boot-Verzeichnisse gespeichert werden sollen.
Das Bezugszeichen 124 bezeichnet einen Bereich zum Speichern eines Unterverzeichnisses und von Dateiinformation.
Es wird darauf hingewiesen, daß Sektoren hintereinander Bereichen in dem Vorspannabschnitt 120 zugeordnet sind, so daß beispielsweise der Sektor 0 einem Bereich 121 zugeordnet ist, der Sektor 1 einem Bereich 122, der Sektor 2 einem Bereich 123, usw.
Das Bezugszeichen 125 bezeichnet einen Bereich, in welchem jeweilige Daten (beispielsweise verschiedene Parameter, ein PLC-Gerät, und ein Steuerprogramm) in der Servosteuerung gespeichert werden sollen. Der Sektor m + 1 bis zum Sektor m ist diesem Bereich 125 zugeordnet.
Es ist nicht erforderlich, daß sämtliche Sektoren in dem Speicher hintereinander anschließend angeordnet sind, da der Zugriff auf irgendeinen Sektor auch dadurch erfolgen kann, daß dessen Sektornummer festgelegt wird.
Die "Sektorlesefunktion" und die "Sektorschreibfunktion" bei der "Mehrzweckverarbeitung", die nachstehend noch genauer erläutert werden, werden zum Lesen und Schreiben interner Daten von den Servosteuerungen #1 bis #n und in diese von dem PC 1 aus verwendet.
Fig. 19 zeigt Datenstrukturen des Bereiches 54 (und des Bereiches 35 eines Datenrahmens) bei dem Doppelanschlußspeicher 6 und dem Bereich 57 (oder dem Bereich 45) bei dem "Sektorlesen" der "Mehrzweckverarbeitung".
Fig. 20 zeigt Datenstrukturen des Bereiches 54 (oder des Bereiches 35) und des Bereiches 57 (und des Bereiches 45 eines Datenrahmens) bei dem "Sektorschreiben".
Wenn die "Mehrzweckverarbeitung" unter der Bedingung durchgeführt wird, daß ein Befehlscode, der das Sektorlesen anzeigt, in dem Bereich 71 des Bereichs 54 in dem Doppelanschlußspeicher 6 gespeichert ist, und die Nummer des auszulesenden Sektors in einem Bereich 130 des Bereichs 54 gespeichert ist, führen die Servosteuerungen #1 bis #n die folgenden Operationen (1) bis (5) durch.
  • (1) Der Befehlscode, welcher "Sektorlesen" anzeigt, wird in dem Bereich 73 des Bereiches 45 in einem Datenrahmen eingestellt.
  • (2) Der Fehlerstatuscode, der das Vorhandensein oder die Abwesenheit eines Fehlers sowie den Grund für den Fehler anzeigt, wird in einem Bereich 94 des Bereichs 45 eingestellt.
  • (3) Die Nummer des ausgelesenen Sektors wird in einem Bereich 131 des Bereichs 45 eingestellt.
  • (4) Der Inhalt des Bereichs in dem Speicher 15, der durch die Nummer des ausgelesenen Sektors festgelegt ist, wird in einem Bereich 132 des Bereichs 45 als "Lesedaten" eingestellt.
  • (5) Der Datenrahmen mit dem Inhalt des Bereichs 45, in welchem wie voranstehend geschildert bestimmte Daten eingestellt wurden, wird zurück an den PC 1 geschickte.
Wie voranstehend geschildert kann der Inhalt eines freiwählbaren Sektors aus jedem der internen Speicher der Servosteuerungen #1 bis #n durch den Code "Sektorlesen" ausgelesen werden.
Wenn die "Mehrzweckverarbeitung" unter der Bedingung durchgeführt werden soll, daß ein Befehlscode, der das Sektorschreiben anzeigt, in dem Bereich 71 des Bereiches 54 in dem Doppelanschlußspeicher 6 eingestellt ist, wird die Nummer eines Sektors, in welchen Daten eingeschrieben werden sollen, in dem Bereich 133 des Bereiches 54 eingestellt, und werden zu schreibende Daten in dem Bereich 134 des Bereiches 54 eingestellt, und dann wird der Datenrahmen mit dem dort vorgesehenen Inhalt des Bereiches 54 (Bereich 35) an die Servosteuerungen #1 bis #n geschickt.
Jede der Servosteuerungen #1 bis #n schreibt den Inhalt des Bereiches 134 in den Bereich mit der Schreibsektornummer, die in dem Bereich 133 des Bereichs 35 in dem Datenrahmen gespeichert ist, und schickt darüber hinaus jeden Datenrahmen mit dem Befehlscode zurück, der "Sektorschreiben" anzeigt, und in dem Bereich 73 des Bereichs 45 eingestellt ist, den Fehlerstatuscode, der das Vorhandensein oder die Abwesenheit irgendeines Fehlers anzeigt, sowie den Grund für den Fehler, der in dem Bereich 94 eingestellt ist, wobei die Nummer des Sektors, in welchen Daten eingeschrieben wurden, in einen Bereich 135 eingestellt ist, an den PC 1 als eine "Antwort".
Wie voranstehend geschildert können Daten in einen freiwählbaren Sektor in jedem der internen Speicher (Speicher 15) in den Servosteuerungen #1 bis #n eingeschrieben werden.
Fügt man dem PC 1 einen Blockgerätetreiber zur Durchführung des Lesens und Schreibens von Daten von und zu einem freiwählbaren Sektor zu, unter Verwendung der Sektorlesefunktion und der Sektorschreibfunktion, kann jede der Servosteuerungen #1 bis #n als eins der Laufwerke verwendet werden, und kann auf jeden von deren internen Speichern von dem PC 1 aus zugegriffen werden.
Das freie Lesen und Schreiben von Daten von und zu einer Datei kann dadurch eingeschränkt werden, daß Dateiattribute, die in den Bereichen 123 und 124 des Dateisystemvorspannabschnitts 120 gespeichert sind, der in Fig. 18 gezeigt ist, in einer Datei eingestellt werden, welche speziell für das Lesen einer versteckten Datei vorgesehen ist.
Fig. 23 zeigt die Strukturen von Anforderungsinformation und von Antwortinformation, die zwischen den Servosteuerungen #1 bis #n bei der "Zeichenkettenkommunikation" ausgetauscht werden, die eine der "Mehrzweckverarbeitungen" darstellt.
In Fig. 23 ist ein Befehlscode, welcher eine "Anforderung nach Zeichenkettenkommunikation" angibt, in dem Bereich 71 des Bereichs 54 in dem Doppelanschlußspeicher 6 eingestellt, ist die Anzahl an Zeichen, die eine Zeichenkette bilden, in einem Bereich 140 eingestellt, und ist eine Zeichenkette, die an die Servosteuerungen #1 bis #n übertragen werden soll, in einem Bereich 141 eingestellt, und wenn die Mehrzweckverarbeitungsanforderungsmarke in dem Bereich 62 in dem Doppelanschlußspeicher 6 EIN geschaltet ist, wird der Inhalt (Zeichenkette) des Bereiches 141 an die Servosteuerungen #1 bis #n geschickt.
Jede der Servosteuerungen #1 bis #n schickt, nachdem die Verarbeitung entsprechend dieser Zeichenkette ausgeführt wurde, an den PC 1 einen Datenrahmen mit einer "Antwort" zurück, in welcher der Befehlscode, welcher die Zeichenkommunikation anzeigt, in dem Bereich 73 eingestellt ist, der Fehlerstatuscode, der das Vorhandensein oder die Abwesenheit irgendeines Fehlers sowie den Grund für den Fehler anzeigt, in dem Bereich 94 eingestellt ist, die Anzahl an Zeichen, welche die Zeichenkette bilden, auf welche geantwortet werden soll, in einem Bereich 142 eingestellt ist, und die Zeichenkette, die an den PC 1 übertragen werden soll, in einem Bereich 143 eingestellt ist.
Durch diese "Zeichenkettenkommunikation" kann, ähnlich wie bei der "Direktoperation" der PC 1 ein Steuerprogramm mit einer Zeichenkette, die nicht auf einem Codesystem beruht, an die Servosteuerungen #1 bis #n übertragen, und auch Inhalte, welche einen Alarm oder dergleichen betreffen, mit einer Zeichenkette von den Servosteuerungen #1 bis #n holen, und aus diesem Grund ist die Umwandlung eines Steuerprogramms zwischen einem Codesystem und einem Zeichenkettensystem in dem PC 1 nicht erforderlich.
Bei dieser Ausführungsform können, wie in Fig. 3 gezeigt, die "Hochgeschwindigkeitsdatenleseanforderung", die "Hochgeschwindigkeitsdatenschreibanforderung", die "Mehrzweckverarbeitungsanforderung" sowie Marken wie beispielsweise die "Hochgeschwindigkeitsdatenlesemarke" gleichzeitig von dem PC 1 an die Servosteuerungen #1 bis #n geschickt werden, so daß eine Anforderung, die für eine bestimmte Verarbeitung der Anforderungen bezüglich der Hochgeschwindigkeitsdatenleseverarbeitung, Hochgeschwindigkeitsdatenschreibverarbeitung, irgendeiner der "Mehrzweckverarbeitungen" sowie bezüglich verschiedener Arten von Markenverarbeitung, beispielsweise Hochgeschwindigkeitsdatenlesebefehlsmarkenverarbeitung, erforderlich ist, gleichzeitig von dem PC 1 den Steuerungen mitgeteilt werden kann.
Weiterhin können die "Hochgeschwindigkeitsdatenleseantwort", die "Speicherdatenleseantwort für einen Zeitpunkt", die "Mehrzweckverarbeitungsantwort", die "Speicherdatenleseantwortmarke" und die "Mehrzweckverarbeitungsantwortmarke" gleichzeitig von den Steuerungen ans den PC 1 geschickt werden, so daß eine Antwort, die für eine bestimmte Verarbeitung unter den Antworten bezüglich des Hochgeschwindigkeitsdatenlesens, den Antworten auf das Speicherdatenlesen für einen Zeitpunkt, den Antworten auf irgendeine der "Mehrzweckverarbeitungen" und den Antworten auf die "Speicherdatenleseantwortmarke" erforderlich ist, gleichzeitig von dem PC 1 den Steuerungen mitgeteilt werden kann.
Es wird daher deutlich, daß die Erfindung nicht auf die voranstehend geschilderte Ausführungsform beschränkt ist, und beispielsweise durch periodisches Aussenden eines Datenrahmens mit eingeschalteter "Speicherdatenlesebefehlsmarke", Einschalten der "Speicherdatenlesebefehlsmarke", wenn der Inhalt des Speichers 15 irgendeiner Servosteuerung überschrieben werden muß, während eine momentane Position einer Maschine oder dergleichen periodisch überwacht wird, des Datenrahmens in diesem Fall, und durch Anbringung von Information, welche eine Anforderung nach dem Direktbetrieb betrifft, in dem "Mehrzweckverarbeitungsanforderungsbereich", kann eine Verarbeitung wie beispielsweise der Austausch von Servoprogrammen in dem Speicher 15 jeder der Servosteuerungen und Überschreiben von Parametern ausgeführt werden, ohne gegenseitige Störung mit dem Überwachungsvorgang.
Obwohl der PC 1 und die Servosteuerungen #1 bis #n an das mehrere Stationen aufweisende System bei der Ausführungsform 1 und der Ausführungsform 2 angeschlossen sind, wird wie in Fig. 22 gezeigt ein Kanal zum Verbinden der Servosteuerungen mit der seriellen Hochgeschwindigkeitskommunikationsschnittstelle 2 entsprechend der Anzahl an Einheiten vorgesehen, die für die Servosteuerungen erforderlich sind, und kann der IC 8 für die Hochgeschwindigkeitskommunikation in jedem der Kanäle vorgesehen sein.
Bei der Ausführungsform 1 und der Ausführungsform 2 erfolgte die Beschreibung eines Falles, in welchem die vorliegende Erfindung für Kommunikationsvorgänge zwischen dem PC 1 und den Servosteuerungen #1 bis #n verwendet wird, jedoch läßt sich die Erfindung auch für Kommunikationsvorgänge mit anderen Steuergeräten als der Servosteuerung verwenden.
Bei der voranstehend geschilderten vorliegenden Erfindung wird erste Übertragungsinformation, die aus einer festgelegten Anzahl an Informationen besteht, beispielsweise Anforderungsinformation für jede der mehreren Servosteuerungen, synchron zu einem festgelegten Mastertakt von dem Computer an die Servosteuerungen übertragen, wird zweite Übertragungsinformation, die aus einer festgelegten Anzahl an Informationen besteht, beispielsweise Antwortinformation, synchron zum Mastertakt von den Servosteuerungen an den Computer übertragen, führen die Servosteuerungen gleichzeitig eine festgelegte Anzahl an Verarbeitungsvorgängen entsprechend der ersten Übertragungsinformation synchron zum Mastertakt durch, und wird die Bewegungssteuerung durch die Servosteuerungen gleichzeitig synchron zum Mastertakt ausgeführt, so daß Servosteuerungen in mehreren Servosteuerungen gleichzeitig eine bestimmte Verarbeitung ausführen können.
Es wird Befehlsinformation vorbereitet, die unter Verwendung interner Information in der Servosteuerung korrigiert wird, beispielsweise aufgrund von Rückkopplungsdaten, die von der Servosteuerung als Information in Antwortinformation bezüglich der zweiten Übertragungsinformation geschickt wird, und diese korrigierte Befehlsinformation wird als Information in Anforderungsinformation für die erste Übertragungsinformation an die Servosteuerungen geschickt, so daß die Korrektur von Befehlsdaten für Servosteuerungen entsprechend interner Information in den Servosteuerungen einfach durchgeführt werden kann.
Der Inhalt in irgendeinem Bereich des Speichers des Computers wird durch eine oder mehreren Anwendungen oder dergleichen überschrieben, die in dem Bereich überschriebene Information wird als Information in Anforderungsinformation für die erste Übertragungsinformation an die mehreren Servosteuerungen geschickt, und der Inhalt in einem Bereich, der in dem Speicher der Servosteuerung entsprechend dem Bereich zugeordnet wurde, wird mit der voranstehend erwähnten Information überschrieben, so daß das Schreiben in interne Speicher von Servosteuerungen entsprechend einem Befehl von dem Computer einfach durchgeführt werden kann.
Alarminformation, die in einer der Servosteuerungen erzeugt wird, wird an den Computer als Information in Antwortinformation für die zweite Übertragungsinformation geschickt, und wird in einen Speicher des Computers eingeschrieben, und geeignete Befehlsinformation entsprechend der Alarminformation wird als Information in Anforderungsinformation für die zweite Übertragungsinformation in die Servosteuerung geschickt, so daß dann, wenn ein Fehler in einer der Servosteuerungen auftritt, eine Wiederherstellungsverarbeitung schnell durchgeführt werden kann.
Ein Programm zur Steuerung als Information in Anforderungsinformation für die erste Übertragungsinformation wird von dem Computer an die Servosteuerung geschickt, so daß das Schreiben eines Steuerprogramms für die Servosteuerung einfach durchgeführt werden kann.
Befehlsinformation zur Ausführung eines Steuerprogramms für jede der Servosteuerungen als Information in Anforderungsinformation für die erste Übertragungsinformation wird von dem Computer an die mehreren Servosteuerungen geschickt, um den Synchronlauf zwischen Motoren zu steuern, die jeweils an eine der Servosteuerungen angeschlossen sind, so daß die Steuerung für den Synchronlauf von Motoren, die an mehrere Servosteuerungen angeschlossen sind, einfach durchgeführt werden kann.
Auf interne Information als Datei in den Servosteuerungen wird dadurch zugegriffen, daß Schreibdaten oder dergleichen als Information in Anforderungsinformation für die erste Übertragungsinformation von dem Computer an die Servosteuerungen geschickt werden, und darüber hinaus Lesedaten als Information in Antwortinformation für die zweite Übertragungsinformation von den Servosteuerungen zu dem Computer geschickt werden, so daß das Lesen und Schreiben interner Parameter in Servosteuerungen und von Steuerprogrammen oder dergleichen einfach von dem Computer aus ausgeführt werden kann.
Der Zugriff auf einen Speicher in einer Servosteuerung wird entsprechend der Einstellung von Dateiattributen beschränkt, so daß der Zugriff auf einen Speicher in einer Servosteuerung eingeschränkt werden kann.
Irgendwelche interne Information in den Servosteuerungen wird als besondere Information eingestellt, und eine der mehreren Servosteuerungen überschreibt interne Information in der Servosteuerung entsprechend der internen Information, die in dieser besonderen Information eingestellt ist, diese überschriebene und aktualisierte interne Information wird als Information in Anforderungsinformation für die zweite Übertragungsinformation an den Computer geschickt, der Computer schickt die aktualisierte interne Information als Information in Anforderungsinformation für die erste Übertragungsinformation an jede der anderen Servosteuerungen, und entsprechende interne Information in jeder der Servosteuerungen wird durch diese aktualisierte interne Information überschrieben, so daß der momentane Status oder Zustand der Verarbeitung in der Servosteuerung einfach anderen Servosteuerungen mitgeteilt werden kann, und interne Daten in anderen Servosteuerungen einfach von der betreffenden Servosteuerung aus geändert werden können.
Die vorliegende Erfindung beruht auf den japanischen Patentanmeldungen Nr. HEI 9-072443 und HEI 10-66428, die im japanischen Patentamt am 25. März 1997 bzw. 17. März 1998 eingereicht wurden, und deren Gesamtinhalt in die vorliegende Anmeldung durch Bezugnahme eingeschlossen wird.
Zwar wurde die Erfindung unter Bezugnahme auf eine bestimmte Ausführungsform zum Zwecke einer vollständigen und deutlichen Offenbarung beschrieben, jedoch sollen die beigefügten Patentansprüche nicht auf die Ausführungsform beschränkt sein, sondern sollen sämtliche Modifikationen und alternativen Ausführungsformen umfassen, die einem Fachmann auf diesem Gebiet deutlich werden, und die dem Wesen und Umfang der vorliegenden Erfindung entsprechen, welche sich aus der Gesamtheit der vorliegenden Anmeldeunterlagen ergeben und von den beigefügten Patentansprüchen umfaßt sein sollen.

Claims (10)

1. Servosteuerverfahren zur Durchführung serieller Kommunikationsvorgänge zwischen einem Computer und mehreren Servosteuerungen, die jeweils zur Bereitstellung der Steuerung der Bewegung eines Motors dienen, mit:
einem Schritt, in welchem erste Übertragungsinformation, die aus einer festgelegten Anzahl an Informationen besteht, beispielsweise Anforderungsinformation für jede der mehreren Servosteuerungen, synchron mit einem festgelegten Mastertakt von dem Computer an die Servosteuerungen übertragen wird; und
einem Schritt, in welchem zweite Übertragungsinformation, die aus einer festgelegten Anzahl an Informationen besteht, beispielsweise Antwortinformation, synchron mit dem Mastertakt von den Servosteuerungen an den Computer übertragen wird; wobei die Servosteuerungen gleichzeitig eine festgelegte Anzahl an Verarbeitungen entsprechend der ersten Übertragungsinformation synchron mit dem Mastertakt ausführen, und die Bewegungssteuerung durch die Servosteuerungen gleichzeitig synchron mit dem Mastertakt durchgeführt wird.
2. Servosteuerverfahren nach Anspruch 1, dadurch gekennzeichnet, daß Befehlsinformation, die durch Verwendung interner Information in der Servosteuerung korrigiert ist, beispielsweise durch Rückkopplungsdaten, die von der Servosteuerung als Information in Antwortinformation für die zweite Übertragungsinformation ausgesandt werden, vorbereitet wird, und diese korrigierte Befehlsinformation als Information in Anforderungsinformation für die erste Übertragungsinformation an die Servosteuerungen geschickt wird.
3. Servosteuerverfahren nach Anspruch 1, dadurch gekennzeichnet, daß Bereiche, welche Speicherbereichen für interne Information in Speichern mehrerer Servosteuerungen entsprechen, vorher in einem Computerspeicher zugeordnet werden, und interne Information in den mehreren Servosteuerungen periodisch als Information in Antwortinformation für die zweite Übertragungsinformation an den Computer geschickt wird, und in einen Speicher des Computers eingeschrieben wird, mit:
einem Schritt, in welchem der Inhalt in irgendeinem Bereich des Speichers des Computers durch eine von mehreren Anwendungen oder dergleichen überschrieben wird; und
einem Schritt, in welchem die in dem Bereich überschriebene Information als Information in Anforderungsinformation für die erste Übertragungsinformation an die mehreren Servosteuerungen geschickt wird, und der Inhalt in einem Bereich, der in dem Speicher der Servosteuerung entsprechend dem Bereich zugeordnet wird, durch die voranstehend genannte Information überschrieben wird.
4. Servosteuerverfahren nach Anspruch 3, gekennzeichnet durch:
einen Schritt, in welchem in irgendeiner der Servosteuerungen erzeuge Alarminformation an den Computer als Information in Antwortinformation für die zweite Übertragungsinformation geschickt wird, und in einen Speicher des Computers eingeschrieben wird, und geeignete Befehlsinformation entsprechend der Alarminformation als Information in Antwortinformation für die zweite Übertragungsinformation an die Servosteuerung geschickt wird.
5. Servosteuerverfahren nach Anspruch 1, gekennzeichnet durch: den Schritt der Übertragung eines Programms für die Steuerung als Information in Anforderungsinformation für die erste Übertragungsinformation von dem Computer an die Servosteuerung.
6. Servosteuerverfahren nach Anspruch 1, gekennzeichnet durch: einen Schritt des Schickens von Befehlsinformation zur Ausführung eines Steuerprogramms für jede der Servosteuerungen als Information in Anforderungsinformation für die erste Übertragungsinformation von dem Computer an die mehreren Servosteuerungen, zum Steuern des Synchronlaufes von Motoren, die jeweils an eine der Servosteuerungen angeschlossen sind.
7. Servosteuerverfahren nach Anspruch 1, gekennzeichnet durch: einen Schritt des Zugriffs auf interne Information als Datei in den Servosteuerungen durch Schicken von Schreibdaten oder dergleichen als Information in Anforderungsinformation für die erste Übertragungsinformation von dem Computer an die Servosteuerungen, und Schicken von Lesedaten als Information in Antwortinformation für die zweite Übertragungsinformation von den Servosteuerungen an den Computer.
8. Servosteuerverfahren nach Anspruch 7, dadurch gekennzeichnet, daß der Zugriff auf einen Speicher in einer Servosteuerung entsprechend der Einstellung von Dateiattributen beschränkt ist.
9. Servosteuerverfahren nach Anspruch 1, bei welchem Bereiche, die Speicherbereichen für interne Information in Speichern von mehreren Servosteuerungen entsprechen, vorher in einem Computerspeicher zugeordnet werden, und die interne Information, die in den Speicherbereichen gespeichert ist, periodisch als Information in Antwortinformation für die zweite Übertragungsinformation an den Computer geschickt wird, und in einen Speicher des Computers eingeschrieben wird, mit:
einem Schritt der Einstellung irgendeiner internen Information in den Servosteuerungen als besondere Information;
einem Schritt, in welchem eine der mehreren Servosteuerungen interne Information in der Servosteuerung entsprechend der internen Information überschreibt, die in dieser besonderen Information eingestellt ist; und
einem Schritt, in welchem diese überschriebene und aktualisierte interne Information als Information in Antwortinformation für die zweite Übertragungsinformation an den Computer geschickt wird, der Computer die aktualisierte interne Information als Information in Anforderungsinformation für die erste Übertragungsinformation an jede der anderen Servosteuerungen schickt, und entsprechende interne Information in jeder der Servosteuerungen durch diese aktualisierte interne Information überschrieben wird.
10. Servosteuersystem, welches einen Computer (1) und mehrere Servosteuerungen (#1 bis #n) zum Steuern der Bewegung von Motoren zur Ausführung einer seriellen Kommunikation zwischen den mehreren Servosteuerungen (#1 bis #n) und dem Computer (1) aufweist; wobei erste Übertragungsinformation, die aus einer bestimmten Anzahl an Informationen besteht, beispielsweise Anforderungsinformation für jede der mehreren Servosteuerungen (#1 bis #n) synchron mit einem festgelegten Mastertakt (9) von dem Computer (1) an die Servosteuerungen (#1 bis #n) geschickt wird; zweite Übertragungsinformation, die aus einer festgelegten Anzahl an Informationen besteht, beispielsweise Antwortinformation, synchron mit dem Mastertakt (9) von den Servosteuerungen (#1 bis #n) an den Computer (1) geschickt wird; die Servosteuerungen (#1 bis #n) gleichzeitig eine festgelegte Anzahl an Verarbeitungen entsprechend der ersten Übertragungsinformation synchron mit dem Mastertakt (9) ausführen; und die Bewegungssteuerung durch die Servosteuerungen (#1 bis #n) gleichzeitig synchron mit dem Mastertakt (9) ausgeführt wird.
DE19813203A 1997-03-25 1998-03-25 Verfahren zum Steuern einer Vielzahl von Servosteuerungen und Servosteuersystem Expired - Fee Related DE19813203B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP7244397 1997-03-25
JP9-072443 1997-03-25
JP10-066428 1998-03-17
JP10066428A JPH10326107A (ja) 1997-03-25 1998-03-17 サーボ制御方法およびサーボ制御システム

Publications (2)

Publication Number Publication Date
DE19813203A1 true DE19813203A1 (de) 1998-10-15
DE19813203B4 DE19813203B4 (de) 2007-08-02

Family

ID=26407627

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19813203A Expired - Fee Related DE19813203B4 (de) 1997-03-25 1998-03-25 Verfahren zum Steuern einer Vielzahl von Servosteuerungen und Servosteuersystem

Country Status (3)

Country Link
US (1) US6037738A (de)
JP (1) JPH10326107A (de)
DE (1) DE19813203B4 (de)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19754271C1 (de) * 1997-12-06 1999-07-08 Armatic Ges Fuer Automatische Signalgeber für einen Stellantrieb
US6167162A (en) * 1998-10-23 2000-12-26 Lucent Technologies Inc. Rate-distortion optimized coding mode selection for video coders
JP3937244B2 (ja) * 1998-12-03 2007-06-27 三菱電機株式会社 サーボシステムコントローラ
JP4396077B2 (ja) * 1999-11-08 2010-01-13 三菱電機株式会社 サーボ制御システム
KR100371587B1 (ko) * 2000-12-15 2003-02-11 한국과학기술연구원 Can통신망을 이용한 유연한 소형의 전동기 제어장치
JP3945403B2 (ja) * 2000-12-19 2007-07-18 三菱電機株式会社 サーボモータ駆動制御システム
JP2003052189A (ja) * 2001-08-07 2003-02-21 Keyence Corp 電動機駆動装置と制御装置との制御情報通信方法、電動機駆動装置及びシステム
US7363540B2 (en) * 2002-10-22 2008-04-22 Microsoft Corporation Transaction-safe FAT file system improvements
US7174420B2 (en) * 2002-10-22 2007-02-06 Microsoft Corporation Transaction-safe FAT file system
KR100936380B1 (ko) * 2002-12-06 2010-01-13 두산디에스티주식회사 서보 구동방법
JP2004348464A (ja) 2003-05-22 2004-12-09 Hitachi Ltd ストレージ装置、及び通信信号の整形回路
JP4060235B2 (ja) * 2003-05-22 2008-03-12 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の制御方法
JP4156499B2 (ja) * 2003-11-28 2008-09-24 株式会社日立製作所 ディスクアレイ装置
JP4565312B2 (ja) * 2003-12-11 2010-10-20 株式会社安川電機 サーボ制御装置と非常停止方法
JP4497918B2 (ja) * 2003-12-25 2010-07-07 株式会社日立製作所 ストレージシステム
US7983769B2 (en) * 2004-11-23 2011-07-19 Rockwell Automation Technologies, Inc. Time stamped motion control network protocol that enables balanced single cycle timing and utilization of dynamic data structures
US7904184B2 (en) * 2004-11-23 2011-03-08 Rockwell Automation Technologies, Inc. Motion control timing models
US8321439B2 (en) 2004-12-17 2012-11-27 Microsoft Corporation Quick filename lookup using name hash
US8606830B2 (en) 2004-12-17 2013-12-10 Microsoft Corporation Contiguous file allocation in an extensible file system
US7873596B2 (en) 2006-05-23 2011-01-18 Microsoft Corporation Extending cluster allocations in an extensible file system
US9639554B2 (en) 2004-12-17 2017-05-02 Microsoft Technology Licensing, Llc Extensible file system
DE102005009707A1 (de) * 2005-03-03 2006-09-07 Dr. Johannes Heidenhain Gmbh Modulares numerisches Steuergerät
JP4584045B2 (ja) * 2005-06-20 2010-11-17 住友重機械工業株式会社 モーションコントローラ、通信制御モジュール、制御装置、及び制御方法
JP4642683B2 (ja) * 2006-03-23 2011-03-02 デルタ エレクトロニックス,インコーポレイテッド 高速シリアル通信のための自動同期acサーボシステムおよびその作動方法
JP2008023692A (ja) * 2006-07-25 2008-02-07 Mitsubishi Electric Corp 数値制御装置
US8340788B2 (en) * 2006-12-15 2012-12-25 Pitney Bowes Inc. Positioned based motor tuning for a guillotine cutter mechanism
US7747664B2 (en) * 2007-01-16 2010-06-29 Microsoft Corporation Storage system format for transaction safe file system
US7613738B2 (en) 2007-01-16 2009-11-03 Microsoft Corporation FAT directory structure for use in transaction safe file system
US20100001670A1 (en) * 2008-07-03 2010-01-07 Honeywell International Inc., Single-chip brushless motor controller
KR20130117870A (ko) * 2011-02-09 2013-10-28 미쓰비시덴키 가부시키가이샤 센서 중계 제어장치
JP5192571B2 (ja) 2011-07-26 2013-05-08 ファナック株式会社 一つの被駆動体を二つの電動機で駆動させる制御装置
CN102489786A (zh) * 2011-11-30 2012-06-13 常州市步云工控自动化有限公司 数控锥齿轮研齿机的三轴联动控制系统
CN102612875B (zh) * 2012-04-12 2014-06-04 苏州博田自动化技术有限公司 自动避苗双刀锄草机的控制方法
CN102707672A (zh) * 2012-06-11 2012-10-03 杭州大华工控技术有限公司 一种双伺服电机平移系统
CN102736597A (zh) * 2012-06-13 2012-10-17 东莞广营电子科技有限公司 一种用于控制串行伺服机的系统
JP5702827B2 (ja) * 2013-05-09 2015-04-15 ファナック株式会社 サーボモータ制御システム
JP2015035184A (ja) * 2013-08-09 2015-02-19 株式会社日立ハイテクノロジーズ 制御装置
CN104267683B (zh) * 2014-09-16 2017-05-24 深圳市佳晨科技有限公司 产品质量测试启动控制系统及产品质量测试启动控制方法
CN107942698A (zh) * 2017-12-14 2018-04-20 清华大学 基于现场总线和高速差分串行通信的多叶光栅控制系统
JP2022072352A (ja) * 2020-10-29 2022-05-17 山洋電気株式会社 サーボシステム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4456963A (en) * 1981-05-11 1984-06-26 S & W Instruments, Inc. Apparatus and method for measuring and displaying performance characteristics of reciprocating piston machines
US4902948A (en) * 1985-05-02 1990-02-20 Eaton-Kenway, Inc. Guide wire communication system and method
JPH0622841B2 (ja) * 1986-06-23 1994-03-30 フアナツク株式会社 計量・型開き同時動作制御方式
JPH01134605A (ja) * 1987-11-20 1989-05-26 Fanuc Ltd 数値制御装置
JPH01195509A (ja) * 1988-01-30 1989-08-07 Fanuc Ltd Dnc装置
US4931712A (en) * 1988-12-28 1990-06-05 Pitney Bowes Inc. Multiple channel servo configuration
JPH03110519A (ja) * 1989-09-25 1991-05-10 Stanley Electric Co Ltd 液晶表示装置の製造方法
JPH03154104A (ja) * 1989-11-10 1991-07-02 Mitsubishi Electric Corp 位置決め制御装置
JPH03245204A (ja) * 1990-02-23 1991-10-31 Mitsubishi Electric Corp 数値制御装置
US5274311A (en) * 1991-11-13 1993-12-28 Quest Technologies, Inc. Control system network structure
JP2669997B2 (ja) * 1992-07-28 1997-10-29 富士通株式会社 ディスク装置のモータ起動制御方法
US5463296A (en) * 1993-06-30 1995-10-31 Allen-Bradley Company, Inc. Motion controller with remote linking
US5391970A (en) * 1993-09-30 1995-02-21 Allen-Bradley Company, Inc. Motion controller with remote linking and time disturbance correction
US5710755A (en) * 1993-11-15 1998-01-20 Pitney Bowes Communication system for control applications
CA2135718A1 (en) * 1993-11-15 1995-05-16 Mark A. Gilbertie Universal electrical system architecture for control applications

Also Published As

Publication number Publication date
JPH10326107A (ja) 1998-12-08
DE19813203B4 (de) 2007-08-02
US6037738A (en) 2000-03-14

Similar Documents

Publication Publication Date Title
DE19813203A1 (de) Servosteuerverfahren und Servosteuersystem
EP2182418B1 (de) Verfahren und Vorrichtung zum Zugreifen auf ein Funktionsmodul eines Automatiersierungssystems
DE3004827C2 (de) Datenverarbeitungsanlage
DE3204905C2 (de)
DE4011278A1 (de) Programmierbare steuereinheit
DE2755981A1 (de) Wiedergabesystem
DE3134091A1 (de) Mikroprozessorgestuetzte prozesssteuerung
EP1095320B1 (de) Steuerungssystem mit einem personalcomputer
DE10317390A1 (de) Datenübertragungseinrichtung und elektronische Steuereinheit
DE2724199C2 (de)
EP0782722B1 (de) Verfahren und vorrichtung zur steuerung und aktivierung von miteinander mittels eines bussystems vernetzten sensoren und/oder aktuatoren
DE19616855B4 (de) Verfahren zur Datenverarbeitung in einer numerisch gesteuerten Antriebseinheit
DE60313826T2 (de) Netzwerksystem
DE19650753B4 (de) Netzwerksystem
DE69230353T2 (de) Übergangssignalisierende Datenkommunikationen
DE2632277A1 (de) Mikroprogrammierbarer computer fuer eine numerische steuervorrichtung
DE19859371C2 (de) Elektropneumatisches Regulatorsystem
DE1549399A1 (de) Verfahren und System zur grafischen Aufzeichnung von Kurvenzuegen
EP1376281B1 (de) Verfahren und System zum Verarbeiten von Konfigurationsdaten
DE2642251A1 (de) Steuerungseinrichtung und betriebsverfahren fuer eine rechnergefuehrte steuerung bei einer numerisch gesteuerten maschine, beispielsweise einer werkzeugmaschine
AT410376B (de) Anordnung und verfahren zur datenübertragung von und zu cnc-steuerungen über ein standardnetzwerk und einen leitrechner
DE69918829T2 (de) Steuerungssystem zur steuerung von prozessgeräten
EP0811926B1 (de) Verfahren, Anlage und Unterstation zur Übertragung von Information- und Steuerdaten
EP0525214A1 (de) Verfahren zum Betreiben eines Automatisierungsgeräts
EP0121038B1 (de) Speicherprogrammierbare Steuerung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee