[go: up one dir, main page]

DE19502400A1 - Positioniervorrichtung und Verfahren zur virtuellen Übermittlung - Google Patents

Positioniervorrichtung und Verfahren zur virtuellen Übermittlung

Info

Publication number
DE19502400A1
DE19502400A1 DE19502400A DE19502400A DE19502400A1 DE 19502400 A1 DE19502400 A1 DE 19502400A1 DE 19502400 A DE19502400 A DE 19502400A DE 19502400 A DE19502400 A DE 19502400A DE 19502400 A1 DE19502400 A1 DE 19502400A1
Authority
DE
Germany
Prior art keywords
information
value
address
cam
virtual
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.)
Ceased
Application number
DE19502400A
Other languages
English (en)
Inventor
Misako Okada
Makoto Nishimura
Hidehiko Matsumoto
Yuko Tomita
Yasuharu Kudo
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 Engineering Co Ltd
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Engineering Co Ltd
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 Engineering Co Ltd, Mitsubishi Electric Corp filed Critical Mitsubishi Electric Engineering Co Ltd
Publication of DE19502400A1 publication Critical patent/DE19502400A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D3/00Control of position or direction
    • G05D3/12Control of position or direction using feedback
    • 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/416Numerical 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 characterised by control of velocity, acceleration or deceleration
    • 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/33Director till display
    • G05B2219/33053Modular hardware, software, easy modification, expansion, generic, oop
    • 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/34396Control different groups of functions, commands simultaneously, synchronized
    • 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/43Speed, acceleration, deceleration control ADC
    • G05B2219/43162Motion control, movement speed combined with position
    • 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/43Speed, acceleration, deceleration control ADC
    • G05B2219/43166Simulation of mechanical gear
    • 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/43Speed, acceleration, deceleration control ADC
    • G05B2219/43174Simulating cam motion mechanism

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Control Of Position Or Direction (AREA)
  • Numerical Control (AREA)
  • Control By Computers (AREA)
  • Programmable Controllers (AREA)
  • Control Of Multiple Motors (AREA)

Description

Die Erfindung bezieht sich auf eine Antriebsvorrichtung, und insbesondere auf eine Positioniervorrichtung zum Ansteuern von Motoren, beispielsweise Stellmotoren, und im besonderen auf eine Positioniervorrichtung zur synchronen Ansteuerung ausschließlich mit Hilfe von Motoren ohne Einschaltung mecha­ nischer Teile wie Kupplungswellen, Kupplungen, Getriebe und Kurvenscheiben.
Unter Bezugnahme auf die Zeichnung werden nachfolgend Bei­ spiele für den herkömmlichen Stand der Technik erläutert. Da­ bei zeigt Fig. 24 eine allgemeine schematische Darstellung der Anordnung bei der Systemauslegung einer Positioniersteue­ rung, wobei das Bezugszeichen 500 eine Positioniersteuerung angibt, die Bezugszeichen 501a, 501b, 501c und 501d jeweils Servoverstärker angeben, die Bezugszeichen 502a, 502b, 502c und 502d jeweils einen Stellmotor bezeichnen, 503 einen Posi­ tionsmelder, z. B. einen Kodierer, darstellt, 503 eine Ablauf­ steuerung bezeichnet, die Informationen wie Variablen zur Po­ sitionssteuerung 500 und von dieser aus überträgt, 505 eine periphere Einheit angibt, die die Programmierung und Überwa­ chung der Positionssteuerung 500 übernimmt, 506 eine Zentral­ einheit bezeichnet, die die erforderlichen Berechnungen für die Positionierung ausführt, 507 einen ROM-Speicher für das Betriebssystem (O/S) angibt, in welchem das Betriebssystem für die Positioniersteuerung abgespeichert ist, 508 einen Programmspeicher bezeichnet, in dem Anwendungsprogramme abge­ speichert sind, 509 einen Arbeitsspeicher für die Zentralein­ heit 506 angibt, 510 einen variablen Speicher bezeichnet, in dem Parameter und andere zur Positionierung erforderliche Da­ ten abgespeichert werden, 511 eine Kommunikationsschnittstel­ le zwischen der Ablaufsteuerung 504 und der Positioniersteue­ rung 500 bezeichnet, 512 eine Peripherieschnittstelle zwi­ schen der peripheren Einheit 505 und der Positioniersteuerung 500, 513 eine Positionsmelde-Schnittstelle zur Eingabe des Ausgangssignals des Positionsmelders 503 in die Positionier­ steuerung 500, 514 für eine Servoverstärker-Schnittstelle zwischen den Servoverstärkern 501a, 501b, 501c und 501d und der Positioniersteuerung 500 steht, und das Bezugszeichen 515 eine Ein-/Ausgabe-Schnittstelle angibt, die Signale zu und von einem externen Gerät überträgt.
In Fig. 40 ist ein Beispiel für die Kombination von Programm­ moduln dargestellt, die unter Verwendung von Softwaremoduln (Programmen) Positionsinformationen an die Servoverstärker 501a bis 501d gemäß Fig. 24 entsprechend dem Ausführungsbei­ spiel 1 in der japanischen Offenlegungsschrift Nr. HEI05073147 ausgeben; dabei ist mit 800 ein Antriebs-Soft­ waremodul angegeben (das nachstehend als "virtuelles An­ triebsmodul" bezeichnet wird), welches Positionsinformationen erzeugt und ausgibt, auf die für den Antrieb der Stellmotoren Bezug genommen wird; das Bezugszeichen 801 gibt ein Software­ modul für die Kupplungswelle an (nachstehend als "virtuelle Kupplungswelle" bezeichnet), mit welchem eine Vielzahl von Stellmotoren synchronisiert wird, bzw. ein Programm, das zur Übermittlung der Ausgangsinformationen des virtuellen An­ triebsmoduls 800 eingesetzt wird, und die Bezugszeichen 802, 803, 804 und 805 geben jeweils Blöcke 1 bis 4 an, die jeweils einen Block aus Softwaremoduln für eine einzelne Achse be­ zeichnen; die Bezugszeichen 806, 808, 811 und 81 stehen je­ weils für Übertragungs-Softwaremoduln (nachstehend als "vir­ tuelle Übertragungsmoduln" bezeichnet), von denen jedes dem Äquivalent der mechanischen Übertragungseinrichtung eines Ge­ triebes mit Software bzw. Programmen entspricht, die die In­ formationen der virtuellen Kupplungswelle übermitteln. Die Bezugszeichen 809 und 814 geben virtuelle Übertragungsmoduln als Kupplungsäquivalente an, mit 815 ist ein virtuelles Über­ tragungsmodul als Äquivalent für ein Untersetzungsgetriebe bezeichnet, und die Bezugszeichen 807, 810, 812 und 816 ent­ sprechend jeweils Ausgabe-Softwaremoduln (nachstehend als "Ausgabemoduln" bezeichnet), die an die Stellmotoren Befehle ausgeben.
Nachfolgend wird nun anhand von Fig. 24 der Betriebsablauf beschrieben. Die Positionssteuerung 500 gibt an die Servover­ stärker 501a bis 501d Werte für Positionsbefehle aus. Die Servoverstärker 501a bis 501d steuern die Stellmotoren 502a bis 502 entsprechend den Positionsbefehlswerten an. Außerdem wird vorausgesetzt, daß die vier Stellmotoren 502a bis 502d zueinander synchron arbeiten sollen.
Es wird angenommen, daß es sich bei dem Ausgangsmodul 807 ge­ mäß Fig. 40 um das Softwaremodul handelt, daß an den Ser­ voverstärker 501a einen Befehl ausgibt, daß das Ausgangsmodul 810 Befehle an den Servoverstärker 501b, das Ausgangsmodul 812 an den Servoverstärker 501c und das Ausgangsmodul 816 an den Servoverstärker 501d ausgibt, und daß die Stellmotoren 502a bis 503 zueinander synchron entsprechend den Positions­ informationen der mechanisch nicht vorhandenen virtuellen Kupplungswelle arbeiten, die von dem virtuellen Antriebsmodul 800 erzeugt wurden.
Anhand der Zeichnung werden nun die herkömmlichen virtuellen Übertragungsmoduln erläutert.
Zunächst wird ein erstes Beispiel für den Stand der Technik erläutert. Fig. 25 und 26 zeigen hierzu ein virtuelles Über­ tragungsmodul, das einer Kupplung für eine Mechanik zur Über­ tragung von Bewegungskraft äquivalent ist (nachstehend wird es als "virtuelles Kupplungsmodul" bezeichnet), wie es in Ausführungsbeispiel 9 der japanischen Offenlegungsschrift Nr. HEI05073147 definiert ist. Fig. 25 zeigt ein Speicherabbild des im Programmspeicher abgespeicherten virtuellen Kupplungs­ moduls. In Fig. 25 ist mit 550 ein Modulnummernbereich ange­ geben, das Bezugszeichen 551 gibt einen Verbindungsinformati­ ons-Bereich an, in dem die Kennungsinformation des anderen virtuellen Mechanikmoduls abgespeichert ist, in welchem die Adressendaten für die Stellung der Antriebsachse abgelegt sind, die dann benötigt werden, wenn das virtuelle Kupplungs­ modul Berechnungen ausführt. Mit dem Bezugszeichen 552 ist ein Speicherbereich für die Verbindungsinformationen einer Hilfsantriebsachse angegeben, in dem die Informationen für "NEIN" des virtuellen Kupplungsmoduls abgelegt sind. Das Be­ zugszeichen 570 steht für einen Bereich, in dem eine Berech­ nungsformel abgelegt ist, nach der das virtuelle Kupplungsmo­ dul arbeitet, und das Bezugszeichen 571 gibt einen Variablen­ bereich an, den das virtuelle Kupplungsmodul nicht verwendet. In den Bereichen 572 und 573 sind Parameter bzw. die Ein­ schalt-Adresseninformationen und die Ausschalt-Adresseninfor­ mationen für das virtuelle Kupplungsmodul abgelegt. Hier be­ zeichnen die Ein- und Ausschalt-Adresseninformationen jeweils Adressen bezüglich der Adressendaten für die Position der An­ triebsachse.
Fig. 26 zeigt das Speicherabbild des Arbeitsspeichers, in welchem die Daten gesichert werden, die dann benötigt werden, wenn das virtuelle Kupplungsmodul Berechnungen vornimmt; da­ bei sind in den Bereichen 574 und 575 jeweils der vorherge­ hende bzw. der aktuelle Wert x(n-1) bzw. x(n) für die Adres­ sendaten der Antriebsachsenposition abgelegt, während die Be­ zugszeichen 576 und 577 jeweils einen Speicherbereich für den letzten bzw. aktuellen Wert y(n-1) bzw. y(n) der Adressenda­ ten zur Abtriebsachsenposition bezeichnen, und mit 578 ein Speicherbereich für Ein-/Ausschalt-Befehlsinformationen des virtuellen Kupplungsmoduls angegeben ist.
Nachfolgend wird nun anhand von Fig. 27 der Ablauf zur Verar­ beitung einer Unterbrechung in Echtzeit durch das virtuelle Kupplungsmodul beschrieben. Wird das virtuelle Kupplungsmodul abgearbeitet, werden im Schritt S1570 die Adressendaten zur Antriebsachsenposition entsprechend den Verbindungsinforma­ tionen 551 ausgelesen und im Speicherbereich 575 für die x(n)-Daten abgelegt. Anschließend wird im Schritt S1571 die Einschaltadressen-Befehlsinformation 572 des virtuellen Kupp­ lungsmoduls ausgelesen und mit dem Wert x(n) verglichen. Ist x(n) kleiner, wird entschieden, daß es sich um einen Kupp­ lungs-Ausschaltbereich handelt, woraufhin der Ablauf zum schritt S1574 springt. Ist dies nicht der Fall, schaltet die Verarbeitung zum Schritt S1572 weiter, wo die Ausschaltadres­ sen-Befehlsinformation 573 ausgelesen und mit dem Wert x(n) verglichen wird. Ist x(n) kleiner, wird entschieden, daß es sich hierbei um einen Kupplung-Einschaltbereich handelt, und die Ein-/Ausschalt-Befehlsdaten mit h = 1 werden im Schritt S1573 im Ein-/Ausschaltbefehlsbereich 578 des virtuellen Kupplungsmoduls abgelegt, woraufhin die Verarbeitung den Schritt S1575 anspringt. Wurde anhand dieses Vergleichs fest­ gestellt, daß es sich um den Kupplungs-Ausschaltbereich han­ delt, werden im schritt S1574 Ein-/Ausschaltbefehlsdaten mit h = 0 abgespeichert, und der Ablauf springt den Schritt S1575 an.
Nun wird im Schritt S1575 eine Berechnung gemäß der nachste­ henden Formel ausgeführt, nach welcher der Wert y(n) der ak­ tuellen Adressendaten für die Abtriebsachsenposition ermit­ telt werden:
y(n) = x(n) - x(n-1)·h + y(n-1).
Hier haben die Ein-/Ausschaltbefehlsdaten h des virtuellen Kupplungsmoduls den-Wert 1 oder 0. Wenn somit dieser Wert 1 ist, ist das Ergebnis der Addition der Differenz x(n)- x(n-1) zum Wert y(n-1) der vorhergehenden Adressendaten für die Abtriebsachse die Ausgangsinformation des virtuellen Kupplungsmoduls. Ist dieser Wert 0, wird der Wert y(n-) der vorhergehenden Adressendaten für die Abtriebsachse verwendet und unverändert als Ausgangssignal des virtuellen Kupplungs­ moduls beibehalten.
Anschließend wird in den Schritten S1576 und S1577 der Wert x(n) der aktuellen Adressendaten zur Antriebsachsenposition zum Wert x(n-1) der vorhergehenden Adressendaten für die An­ triebsachsenstellung übertragen, während zur Vorbereitung des nächsten Rechenvorgangs der Wert y(n) der aktuellen Adressen­ daten für die Abtriebsachsenposition zum Wert y(n-1) der vor­ hergehenden Adressendaten für die Abtriebsachsenposition übertragen wird. Schließlich wird im Schritt S1578 der Wert y(n) der aktuellen Adressendaten für die Abtriebsachsenposi­ tion, der im schritt S1575 berechnet wurde, als Ausgangsin­ formation des virtuellen Kupplungsmoduls bereitgestellt und im Speicherbereich 577 für die aktuellen Werte der Adressen­ daten zur Abtriebsachsenposition abgelegt, woraufhin der Ab­ lauf beendet wird. Die Verarbeitung gemäß dem Ablaufdiagramm nach Fig. 27 erfolgt zur Ausgabe von Positionsadressendaten nacheinander in Echtzeit.
Fig. 28 zeigt ein Beispiel für die Funktion des virtuellen Kupplungsmoduls. Es wird angenommen, daß A1 eine Adresse be­ zeichnet, an welcher die Kupplung eingeschaltet wird (581a), während es sich bei B1 um eine Adresse handelt, an der die Kupplung abgeschaltet wird, entsprechend den Adressendaten X(n) für die Antriebsachsenposition; dabei hat der Ein-/Aus­ schaltbefehl ha des virtuellen Kupplungsmoduls (582a) den Wert 1 (EIN) ab einem Punkt, an dem die Adressendaten (580) für die Antriebsachseziposition A1 entsprechen, bis zu einem Punkt kurz bevor dieser Wert B1 entspricht. Zwischen diesen Punkten verändert sich die Ausgangsinformation y(n) im Ansprechen auf Veränderungen der Adressendaten zur Antriebsachsenposition. Hat der Ein-/Ausschaltbefehl h (582a) des virtuellen Kupp­ lungsmoduls den Wert 0 (AUS), bleibt die Eingangsinformation y(n) unverändert und steht nach wie vor zur Verfügung, wenn sich die Adressendaten für die Antriebsachsenposition (583) ändern.
Soll ein Zyklus des Ausgabevorgangs in einem Zeitraum N wie­ derholt werden, der beispielhaft in der Figur angegeben ist, und gilt die Voraussetzung, daß es sich bei A2 und B2 jeweils um eine Kupplungseinschaltadresse (581c) bzw. eine Kupplungs­ ausschaltadresse (581d) handelt, die jeweils im nächsten Zy­ klus per Befehl vorgegeben wird, muß die Berechnung A2 = A1 + N und B2 = B1 + N von einem Benutzerablaufprogramm vorgenom­ men werden, werden von einer programmierbaren Steuerung nach Abgabe der Kupplungsausschaltadresse in einem Zyklus die Adressen A2 und B2 für die Antriebsachsenposition wieder per Befehl vorgegeben, und wird dieser Vorgang danach wiederholt.
Soll außerdem eine Vielzahl von Achsen mit unterschiedlichen Kupplungseinschalt- und Kupplungsausschalt-Adressen synchro­ nisiert werden, d. h. Achsen mit unterschiedlichen Ausgangs­ werten y(n), um einen Funktionszyklus auszuführen, muß der Berechnungsvorgang vom Benutzerablaufprogramm ausgeführt und für die Anzahl dieser Achsen wieder per Befehl vorgegeben werden.
Unter Bezugnahme auf die Zeichnung wird nun ein zweites Bei­ spiel für den Stand der Technik beschrieben. Dabei zeigen
Fig. 29 bis 33 ein herkömmliches virtuelles Übertragungsmo­ dul, das das Äquivalent zu einer Kurvenscheibe darstellt (nachstehend als "virtuelles Kurvenscheibenmodul" bezeichnet) und bereits in der japanischen Offenlegungsschrift Nr. HEI05073147 definiert ist. Fig. 29 veranschaulicht nun das virtuelle Kurvenscheibenmodul, wobei die Bezugszeichen 600 eine Antriebsachse und 601 eine Hilfsantriebsachse, 602 eine Abtriebsachse, 620a einen Hubeinstellwert h1, 620b einen Ein­ stellwert h2 für den kleinsten Hubgrenzwert, und 604 eine Black Box bezeichnen, die Funktionen (Abläufe) enthält.
Fig. 30 ist ein Speicherabbild, aus dem ersichtlich ist, wie im Programmspeicher eine Tabelle mit den geometrischen Daten der Kurvenscheibe abgespeichert ist, wobei das Bezugszeichen 605 Positionsadressen innerhalb einer Umdrehung der virtuel­ len Nockenwelle angibt und 621 Werte für die Bewegung einer Kurvenscheibe bzw. eines Nockens entsprechend diesen Positi­ onsadressen repräsentiert. Die Bewegungswerte für die Kurven­ scheibe sind die positionswerte, bei denen ein unterer Hub­ totpunkt als 0 und ein oberer Hubtotpunkt als 1 definiert ist, und es innerhalb einer Umdrehung der virtuellen Nocken­ welle zu einer Veränderung zwischen 0 und 1 kommt. Bei den Positionsadressen innerhalb einer Umdrehung der virtuellen Nockenwelle handelt es sich um Winkeldaten in gleichmäßigen Abständen innerhalb einer Umdrehung (z. B. 2000 Adressen).
Fig. 31 und 32 zeigen Ablaufdiagramme zur Veranschaulichung von Funktionen (Abläufen), die in der Black Box 604 enthalten sind.
Fig. 33 ist dabei ein Speicherabbild, das zeigt, wie das vir­ tuelle Kurvenscheibenmodul im Programmspeicher eingespeichert ist; dabei geben die Bezugszeichen 601 eine Modulnummer und 611 eine Verbindungsinformation an, der Informationen zum Querverweis auf die Positionsadresse der Antriebsachse zu­ grunde liegen. Das Bezugszeichen 612 gibt die Verbindungsin­ formationen für eine Hilfsantriebsachse an, die für den Quer­ verweis auf die Positionsadresse der Hilfsantriebsachse die­ nen. Mit dem Bezugszeichen 622 sind Berechnungsformeln ange­ geben, mit deren Hilfe ein Positionier-Ausgangswert zur Aus­ gabe an die Abtriebsachse 602 ermittelt wird, wobei in diesem Bereich die in den Ablaufdiagrammen in Fig. 31 und 32 darge­ stellten Funktionen abgespeichert sind. Im Variablenbereich werden der Hubeinstellwert 620a und der Hubeinstellwert zum kleinsten Hubgrenzwert 620b abgespeichert.
Als nächstes wird nun der Funktionsablauf beschrieben. Im virtuellen Kurvenscheibenmodul gemäß Fig. 29 sind die Positi­ onsadresse der Antriebsachse 600 als Haupteingangsinformation und die Positionsadresse der Hilfsantriebsachse 601 als Ne­ beneingangsinformation vorhanden. Eine Positionsadresse aus dem anderen virtuellen Mechanikmodul wird als Drehstellungs­ information der virtuellen Nockenwelle in die Antriebsachse 600 eingegeben. Außerdem wird in die Hilfsantriebsachse 601 als Versatz- bzw. Relativzeigerwert zum Ausgleich der von der Antriebsachse 600 aus eingegebenen Drehstellungsinformationen der virtuellen Nockenwelle die Befehlsadresse des in einem Positionierprogramm beschriebenen Ablaufs eingegeben.
Aus diesen Eingangsinformationen, aus dem Hubeinstellwert 620a und dem Hubeinstellwert 620b für den kleinsten Hubgrenz­ wert, die zuvor im Variablenbereich abgespeichert wurden, und aus der gemäß Fig. 30 in den Programmspeicher übernommenen Tabelle mit den Daten zur Kurvenscheibengeometrie berechnet das virtuelle Kurvenscheibenmodul einen Positionierwert für die hin- und hergehende Kurvenscheibenbewegung und gibt das Ergebnis dieser Berechnung an die Abtriebsachse 602 aus. Der ausgegebene Positionierwert für die hin- und hergehende Kur­ venscheibenbewegung wird für den Antrieb des Stellmotors zu dem Ausgangsmodul übertragen, das direkt neben der Abtriebs­ achse angeschlossen ist.
Anhand der in Fig. 31 und 32 dargestellten Ablaufdiagramme wird nachfolgend nun die Art der Berechnung des ausgegebenen Positionierwerts für die hin- und hergehende Kurvenscheiben­ bewegung beschrieben, die die Black Box in Form von Funktio­ nen (Abläufen) beinhaltet. Dabei werden als erstes (S1620) die Positionsadresse x der Antriebsachse und die Positions­ adresse z der Hilfsantriebsachse übernommen, woraufhin deren Summe in die Positionsadresse innerhalb einer Umdrehung umge­ setzt wird (S1621). Diese Einzelumdrehungsadresse wird durch einen Rest repräsentiert, den man bei Division der Summe der Positionsadressen der Antriebsachse und der Hilfsantriebsach­ se durch einen Einzelumdrehungswert (360°) erhält. Der so er­ mittelte Wert stellt die Drehstellungsinformation der virtu­ ellen Nockenwelle dar. Anschließend wird unter Querbezug auf die Tabelle mit den Daten zur Kurvenscheibengeometrie der Wert der Kurvenscheibenbewegung ermittelt, der der Drehstel­ lungsinformation entspricht (S1622). Dieser Vorgang ist in weiteren Einzelheiten in Fig. 32 dargestellt.
Gemäß Fig. 32 wird als erstes aus der in Fig. 30 dargestell­ ten Tabelle mit Daten zur Kurvenscheibengeometrie die Positi­ onsadresse innerhalb einer Umdrehung der virtuellen Nocken­ welle A1 und A2 abgerufen (S1630), wobei A1 und A2 bezüglich der Drehstellungsinformation A der virtuellen Nockenwelle die Bedingung nach der Beziehung A1 A A2 erfüllen müssen. An­ schließend werden aus der Tabelle mit den Daten zur Kurven­ scheibengeometrie nach Fig. 30 die Positionsadressen inner­ halb einer Umdrehung A1 und A2 abgerufen und als D1 und D2 definiert (S1631). Der Bewegungswert D der Kurvenscheibe, der der Drehstellungsinformation A der virtuellen Nockenwelle entspricht, wird aus den Positionsadressen innerhalb einer Umdrehung A1 und A2 und aus den Bewegungswerten D1 und D2 für die Kurvenscheibe nach der folgenden Formel berechnet (S1632):
D = D1 + (D2-D1) × {(A-A1)/(A2-A1)}
Diese Formel stellt eine Berechnung der proportionalen Ver­ teilung aufgrund der Positionsadressen innerhalb einer Umdre­ hung dar, da die Bewegungswerte der Kurvenscheibe, die in der Tabelle mit den Daten zur Kurvenscheibengeometrie abgespei­ chert sind, bezüglich der Einzelumdrehungs-Positionsadressen der virtuellen Nockenwelle diskrete Werte besitzen.
Aus dem der Drehstellungsinformation der virtuellen Nocken­ welle entsprechenden Bewegungswert der Kurvenscheibe D, der im Ablauf gemäß Fig. 32 ermittelt wurde, und aus dem Hubein­ stellwert h1 und dem Hubeinstellwert h2 für den kleinsten Hubgrenzwert, die zuvor im Variablenbereich abgelegt wurden, wird nun der Positionierwert für die kontinuierliche hin- und hergehende Kurvenscheibenbewegung nach folgendem Ansatz be­ rechnet (S1623) in Fig. 31):
(h1 × D) + h2.
Dies entspricht einer hin- und hergehenden Bewegung zwischen der kleinsten Grenzposition h2 und der größten Grenzposition (h1 + h2) in der Kurvenscheibenbewegung. Der ermittelte Posi­ tionierwert wird an die Abtriebsachse (S1624) ausgegeben und für den Antrieb des Stellmotors zu dem in unmittelbarer Nähe zur Abtriebsachse angeschlossenen Ausgabemodul übermittelt.
Anhand der Zeichnung wird nun ein drittes Beispiel für den Stand der Technik beschrieben. Dabei zeigen Fig. 34 bis 38 ein herkömmliches virtuelles Übertragungsmodul, das das Äqui­ valent zu einer Kurvenscheibe darstellt (nachstehend als "virtuelles Kurvenscheibenmodul" bezeichnet) und bereits in der japanischen Offenlegungsschrift Nr. HEI05073147 definiert ist. Fig. 34 veranschaulicht nun das virtuelle Kurvenschei­ benmodul, wobei die Bezugszeichen 600 eine Antriebsachse und 601 eine Hilfsantriebsachse, 602 eine Abtriebsachse, 620a ei­ nen Hubeinstellwert h1, 620b einen Einstellwert h2 für den kleinsten Hubgrenzwert, und 604 eine Black Box bezeichnen, die Funktionen (Abläufe) enthält.
Fig. 35 ist ein Speicherabbild, aus dem ersichtlich ist, wie im Programmspeicher eine Tabelle mit den geometrischen Daten der Kurvenscheibe abgespeichert wird, wobei das Bezugszeichen 605 Positionsadressen innerhalb einer Umdrehung der virtuel­ len Nockenwelle angibt und 621 Werte für die Bewegung einer Kurvenscheibe bzw. eines Nockens entsprechend diesen Positi­ onsadressen repräsentiert.
Da die Veränderung des Hubs während der Kurvenscheibenbewe­ gung voraussetzt, daß der Einstellwert am unteren Hubtotpunkt übernommen wird, wird die Positionsadresse innerhalb einer Umdrehung der virtuellen Nockenwelle, die dem unteren Hubtot­ punkt entspricht, als Aktualisierungsadresse 620c der virtu­ ellen Nockenwelle definiert, bei der der Hub in der Kurven­ scheibenbewegung aktualisiert wird (bei dem in Fig. 35 darge­ stellten Beispiel sind dies 180°).
Fig. 36 zeigt das Ablaufdiagramm zur Veranschaulichung der Funktion (Ablaufprozedur), die in der Black Box 604 enthalten ist.
Aus dem Speicherabbild in Fig. 37 ist zu entnehmen, wie das virtuelle Kurvenscheibenmodul im Programmspeicher eingespei­ chert wird; dabei geben die Bezugszeichen 601 eine Modulnum­ mer und 611 eine Verbindungsinformation an, mit welcher auf die Positionsadresse der Antriebsachse Bezug genommen wird. Das Bezugszeichen 612 gibt die Verbindungsinformationen für eine Hilfsantriebsachse an, die für den Querverweis auf die Positionsadresse der Hilfsantriebsachse dienen. Mit dem Be­ zugszeichen 630 sind Berechnungsformeln angegeben, mit deren Hilfe ein Positionier-Ausgangswert zur Ausgabe an die Ab­ triebsachse 602 ermittelt wird, wobei in diesem Bereich die im Ablaufdiagramm in Fig. 36 dargestellte Funktion abgespei­ chert ist. Der Variablenbereich 632 enthält den Hubeinstell­ wert 620a und den Hubeinstellwert 620b zum kleinsten Hub­ grenzwert.
Fig. 38 ist ein Speicherabbild des Arbeitsspeichers, der zur Ermittlung des an die Abtriebsachse 602 abgegebenen Positio­ nierwerts verwendet wird, wobei das Bezugszeichen 632 dort die Hubdaten bezeichnet.
Als nächstes wird nun der Funktionsablauf beschrieben. Das virtuelle Kurvenscheibenmodul gemäß Fig. 34 verwendet die Po­ sitionsadresse der Antriebsachse 600 als Haupteingangsinfor­ mation und die Positionsadresse der Hilfsantriebsachse 601 als Nebeneingangsinformation. Eine Positionsadresse aus dem anderen virtuellen Mechanikmodul wird als Drehstellungsinfor­ mation der virtuellen Nockenwelle in die Antriebsachse 600 eingegeben. Außerdem wird in die Hilfsantriebsachse 601 als Versatz- bzw. Relativzeigerwert zum Ausgleich der von der An­ triebsachse 600 aus eingegebenen Drehstellungsinformationen der virtuellen Nockenwelle die Befehlsadresse des bei einer herkömmlichen Form eines Positionierprogramms beschriebenen Ablaufs eingegeben.
Aus diesen Eingangsinformationen, aus dem Hubeinstellwert 620a und dem Hubeinstellwert 620b für den kleinsten Hubgrenz­ wert, sowie aus der Aktualisierungsadresse 620c der virtuel­ len Nockenwelle, an welcher der Hub der Kurvenscheibenbewe­ gung aktualisiert wird, die alle zuvor im Variablenbereich abgespeichert wurden, und aus der gemäß Fig. 34 in den Pro­ grammspeicher 9 übernommenen Tabelle mit den Daten zur Kur­ venscheibengeometrie berechnet das virtuelle Kurvenscheiben­ modul einen Positionierwert für die hin- und hergehende Kur­ venscheibenbewegung und gibt das Ergebnis dieser Berechnung an die Abtriebsachse 602 aus. Der ausgegebene Positionierwert für die hin- und hergehende Kurvenscheibenbewegung wird zum Antrieb des Stellmotors zu dem Ausgangsmodul übertragen, das in unmittelbarer Nähe mit der Abtriebsachse verbunden ist.
Anhand des in Fig. 36 dargestellten Ablaufdiagramms wird nachfolgend nun die Art der Berechnung des ausgegebenen Posi­ tionierwerts für die hin- und hergehende Kurvenscheibenbewe­ gung beschrieben, die die Black Box in Form einer Funktion (Ablaufprozedur) beinhaltet.
Dabei werden gemäß Fig. 36 als erstes (S1640) die Positions­ adresse x der Antriebsachse und die Positionsadresse z der Hilfsantriebsachse übernommen, woraufhin deren Summe in die Positionsadresse innerhalb einer Umdrehung umgesetzt wird (S1641). Diese Einzelumdrehungsadresse wird durch einen Rest repräsentiert, den man bei Division der Summe der Positions­ adressen der Antriebsachse und der Hilfsantriebsachse durch einen Einzelumdrehungswert (360°) erhält. Der so ermittelte Wert stellt die Drehstellungsinformation der virtuellen Noc­ kenwelle dar.
Anschließend wird entschieden, ob die Drehstellungsinformati­ on der virtuellen Nockenwelle die Aktualisierungsadresse 620c der virtuellen Nockenwelle überschritten hat, bei welcher der Hub der Kurvenscheibenbewegung aktualisiert wird (S162). Ist diese Information größer als die Adresse, so wird der vom ex­ ternen Gerät aus eingestellte Hubeinstellwert 620a im Varia­ blenbereich so aktualisiert, daß er den Hubdaten 602 im Ar­ beitsspeicher 10 entspricht. Ist die Information kleiner als die Adresse, werden die Hubdaten 632 nicht aktualisiert.
Anschließend wird der Wert der Kurvenscheibenbewegung, wel­ cher der Drehstellungsinformation der virtuellen Nockenwelle entspricht, unter Querbezug auf die Tabelle mit den Daten zur Kurvenscheibengeometrie ermittelt (S1644). Dieser Vorgang wurde bereits anhand von Fig. 32 erläutert.
Aus dem der Drehstellungsinformation der virtuellen Nocken­ welle entsprechenden Bewegungswert der Kurvenscheibe D, aus den Hubdaten F im Arbeitsspeicher 10, und aus dem Einstell­ wert h2 für die kleinste Hubgrenzwertposition, der zuvor im Variablenbereich abgespeichert wurde, wird nun der Positio­ nierwert für die kontinuierliche hin- und hergehende Kurven­ scheibenbewegung nach folgendem Ansatz berechnet (S1645 in Fig. 36):
(F × D) + h2.
Dies entspricht einer hin- und hergehenden Bewegung zwischen der kleinsten Grenzposition der Kurvenscheibenbewegung und der größten Grenzposition (F + h2), und dieser Hubwert F wird auch während der ablaufenden Kurvenscheibenbewegung aktuali­ siert. Der so ermittelte Positionierwert wird an die Ab­ triebsachse (S1646) ausgegeben und für den Antrieb des Stell­ motors zu dem Ausgabemodul übermittelt, das in unmittelbarer Nähe an die Abtriebsachse angeschlossen ist.
Nachfolgend wird nun anhand der Zeichnung ein viertes Bei­ spiel für den Stand der Technik beschrieben. Fig. 39 zeigt hierzu den Funktionsablauf für dieses bekannte Beispiel. In dieser Zeichnung ist mit dem Bezugszeichen 762 ein Kurven­ scheibenschema angegeben, während die Bezugszeichen 763a, 763b und 763c Grenzwert-Ausgangsschemata repräsentieren. Mit 764a ist ein Punkt 1, mit 764b ein Punkt 2, mit 764c ein Punkt 3, mit 764d ein Punkt 4 angegeben, und in ähnlicher Weise repräsentiert 764e einen Punkt n-1, während 764f einen Punkt n darstellt. Mit dem Bezugszeichen 765a ist ein Inter­ vall 0 von einem kleinsten Hubgrenzwert beim aktuellen IST- Wert einer Kurvenscheibe bis zum Punkt 1 angegeben, und die Bezugszeichen 765b, 765c und 765d geben jeweils ein Intervall 1 vom Punkt 1 beim aktuellen IST-Kurvenscheibenwert bis zum Punkt 2, bzw. ein Intervall 2 vom Punkt 2 beim aktuellen IST- Wert der Kurvenscheibe bis zum Punkt 3, bzw. ein Intervall 3 vom Punkt 3 beim aktuellen IST-Kurvenscheibenwert bis zum Punkt 4 an; in ähnlicher Weise repräsentieren 765e ein Inter­ vall n-1 vom Punkt n-1 beim aktuellen IST-Wert der Kurven­ scheibe bis zum Punkt n, und ein Intervall n vom Punkt n beim aktuellen IST-Kurvenscheibenwert bis zu einem größten Hub­ grenzwert. Mit den Bezugszeichen 766a, 766b, 766c, 766d, 7663, 766f, 766g, 766h, 766i, 766j, 766k und 766l sind je­ weils Ein-/Ausschaltpunkte bei Grenzwertausgangswerten im Kurvenscheibenschema bezeichnet, welche Grenzwertausgangszu­ stände angeben, in denen im Ansprechen auf aktuelle IST-Kur­ venscheibenwerte Ein- und Ausschaltsignale nach außen abgege­ ben werden.
Und zwar ist in den Bereichen zwischen den Punkten 766a und 766b, 766k bis 766l im Grenzwertausgangsschema 1 und in den Bereichen zwischen Punkt 766c und Punkt 766d, Punkt 766i und Punkt 766j im Grenzwertausgangsschema 2, und in den Bereichen zwischen den Punkten 766e und 766f sowie 766g und 766h im Grenzwertausgangsschema die Grenzwert-Ausgangsinformation auf EIN gesetzt.
Der vorstehend erläuterte Ablauf läßt sich bei einer Abfüll­ maschine einsetzen. Beispielsweise kann angenommen werden, werden, daß der Vorgang des Hochschiebens von Flaschen, Ver­ packungen, usw. (in vertikaler Richtung) in Übereinstimmung mit einem Kurvenscheibenschema auf einer Abfüllmaschine stattfindet, daß als erstes an der Position der Flasche, Ver­ packung oder dergleichen eine Einfülldüse abgesenkt und dann entsprechend der Füllmenge wieder angehoben wird. Ist an der Position einer vertikalen Achse zum Absenken der Einfülldüse ein Ausgangssignal vorgesehen, wird dieses dann abgegeben, wenn sich die vertikale Achse nach oben bewegt (z. B. am Punkt 766a des Grenzwertausgangsschemas 1 in Fig. 39), und ebenso, wenn sich die vertikale Achse nach unten senkt (z. B. am Punkt 766k im Grenzwertausgangsschema 1 in Fig. 39), da das Grenz­ wertausgangssignal beim aktuellen IST-Wert der vertikalen Achse vorliegt (Hub durch die Kurvenscheibe). Bei diesem Bei­ spiel einer Abfüllmaschine darf das Grenzschalter-Ausgangssi­ gnal nicht vorliegen, wenn sich die vertikale Achse absenkt, und es müssen Messungen vorgenommen werden, um einen Ab­ schaltbefehl für das Grenzschalter-Ausgangssignal zu erhal­ ten, beispielsweise während des Zeitraums, in dem sich die vertikale Achse unter Steuerung durch ein Benutzerablaufpro­ gramm absenkt. Wenn sich außerdem die Form eines zu füllenden Behälters verändert, muß das Kurvenscheibenschema entspre­ chend geändert werden. Da sich der Arbeitsbereich (Hubbe­ reich) für die vertikale Achse dementsprechend verändert, müssen auch die Vorgaben im Grenzschalter-Ausgangsschema ge­ ändert werden.
Bei dem virtuellen Kupplungsmodul bei der herkömmlichen er­ sten Positioniervorrichtung, das entsprechend der vorstehen­ den Beschreibung ausgelegt ist, trat insofern ein Problem auf, als dann, wenn ein Einzelzyklus des Positioniervorgangs kontinuierlich und wiederholt zur Ansteuerung der Ein-/Aus- Adressen der Kupplung bezüglich der Adressendaten für die An­ triebsachse veranlaßt wird, die Ein-/Aus-Befehlsadressen der Kupplung beim nächsten Zyklus unter Ansteuerung durch ein Be­ nutzer-Ablaufprogramm wieder in Echtzeit berechnet und ange­ wiesen werden müssen.
Bei dem virtuellen Kupplungsmodul bei der herkömmlichen er­ sten Positioniervorrichtung mit der vorstehend erläuterten Auslegung trat auch in der Weise ein Problem auf, daß dann, wenn ein einzelner Zyklus zur Synchronisierung einer Vielzahl von Achsen kontinuierlich und wiederholt veranlaßt wird, die Ein-/Aus-Befehlsadressen der Kupplung im nächsten Zyklus un­ ter Ansteuerung durch ein Benutzer-Ablaufprogramm für die An­ zahl der synchronisierten Achsen wieder in Echtzeit berechnet und per Befehl vorgegeben werden müssen.
Bei dem virtuellen Kurvenscheibenmodul bei der zweiten her­ kömmlichen Positioniervorrichtung, das gemäß der Beschreibung in der japanischen Offenlegungsschrift Nr. HEI05073147 ausge­ legt ist, trat bei diesem mit den vom virtuellen Antriebsmo­ dul ausgegebenen Positionsinformationen synchronisierten vir­ tuellen Kurvenscheibenmodul in der Form ein Problem auf, daß ein erstes virtuelles Kurvenscheibenmodul und ein zweites virtuelles Kurvenscheibenmodul keine Kreisbewegungen in einem einzigen Vorgang gemeinsamer bzw. gekoppelter Bewegungen aus­ führen kann. Da jedoch eine Kreisbewegung zur Bearbeitung, beispielsweise zum Plan- bzw. Stirnsenken, notwendig ist, und in der Metallverarbeitung somit eine Kreisinterpolation vor­ genommen wurde, wie sie für eine herkömmliche Form eines Po­ sitionierprogramms beschrieben wurde, mußte somit ein Kreis­ bogenradius dadurch verändert werden, daß der Motor einmal angehalten wurde, danach die Radiusangabe im Positionierpro­ gramm geändert und das Positionierprogramm erneut gestartet wurde.
Mit dem virtuellen Kurvenscheibenmodul bei der dritten Posi­ tioniervorrichtung, das gemäß der Beschreibung in der japani­ schen Offenlegungsschrift Nr. HEI05073147 ausgelegt ist, kann der zu verändernde Hub nur am unteren Hubtotpunkt während der laufenden Kurvenscheibenbewegung dann verändert werden, wenn sich beispielsweise beim Plansenken in der Metallverarbeitung der Betrag allmählich ändert, weshalb aus dem Grund, daß ent­ sprechend der schrittweisen Vergrößerung/Verkleinerung des Hubs eine lineare Bewegung vorliegt und eine Kreisbewegung dann zum Zeitpunkt der Hubveränderung ausgeführt wird, das erste virtuelle Kurvenscheibenmodul und das zweite virtuelle Kurvenscheibenmodul kontinuierliche Bewegungen entlang einer spiralförmigen Bahn als einen einzigen Vorgang mit gemeinsa­ mer bzw. gekoppelter Bewegung nicht reibungslos ausführen können.
Bei dem virtuellen Kurvenscheibenmodul bei einer herkömmli­ chen zweiten Positioniervorrichtung, das so ausgelegt ist, wie in der japanischen Offenlegungsschrift Nr. HEI05073147 beschrieben, ist es schwierig, die Geometrie einer Kurven­ scheibe während des Betriebs der Vorrichtung zu verändern.
Bei dem virtuellen Kurvenscheibenmodul bei einer herkömmli­ chen zweiten Positioniervorrichtung, das so ausgelegt ist, wie in der japanischen Offenlegungsschrift Nr. HEI05073147 beschrieben ist, trat insofern ein Problem auf, als dann, wenn sich beispielsweise in der Metallverarbeitung oder der­ gleichen infolge der Verformung eines Blechs in Längsrichtung während der Bearbeitung und wegen des Zuschnitts des Blechs entsprechend einer gemäß einem Kurvenscheibenschema vorgege­ benen Länge die Ausgangsstellung einer Kurvenscheibe bezüg­ lich des Blechs verschiebt, die Bewegung der Kurvenscheibe von der Ausgangsstellung der Kurvenscheibe relativ zu dem Blech erneut gestartet werden muß, was bedeutet, daß der Ar­ beitsgang bis zum Punkt in der Mitte eines einzelnen Zyklus im Kurvenscheibenschema auszuführen und anschließend ab Be­ ginn des einzelnen Zyklus im Kurvenscheibenschema wieder zu starten ist. Dies läßt sich jedoch nur mit Schwierigkeiten bewerkstelligen.
Bei dem virtuellen Kurvenscheibenmodul bei einer herkömmli­ chen zweiten Positioniervorrichtung, das in der vorstehend beschriebenen Weise ausgelegt ist, trat auch insofern ein Problem auf, als es zeit- und arbeitsaufwendig war, in einem einzelnen Zyklus der Hin- und Herbewegung der Kurvenscheibe die Grenzschalter-Ausgangsinformationen in gewünschter Weise zu verändern.
Das virtuelle Kurvenscheibenmodul bei einer herkömmlichen zweiten Positioniervorrichtung, das in der vorstehend be­ schriebenen Weise ausgelegt ist, war darüberhinaus insofern problematisch, als bei Veränderung des Kurvenscheibenschemas und des Hubs die Grenzschalter-Ausgangsinformationen eben­ falls verändert werden müssen, was zeit- und arbeitsaufwendig ist.
Dementsprechend liegt der vorliegenden Erfindung in erster Linie die Aufgabe zugrunde, eine Positioniervorrichtung zu schaffen, mit der dich diese Probleme lösen lassen und bei der es möglich ist, einen einzelnen Zyklus im Positioniervor­ gang kontinuierlich und wiederholt auszuführen, ohne daß der Benutzer die Ein-/Ausschalt-Befehlsadressen für die Kupplung in Echtzeit bearbeiten und erneut per Befehl vorgeben muß.
Die Erfindung hat sich darüberhinaus zum Ziel gesetzt, die vorstehend genannten Nachteile dadurch zu überwinden, daß ei­ ne Positioniervorrichtung geschaffen wird, mit der es möglich ist, daß das erste virtuelle Kurvenscheibenmodul und das zweite virtuelle Kurvenscheibenmodul Kreisbewegungen in einem einzigen Vorgang gekoppelter Bewegungen ausführen können, und daß ein Hub (Radiusvorgabe) an einem unteren Hubtotpunkt ver­ ändert werden kann, wodurch sich der Radius für eine Kreisbe­ wegung auch ohne Anhalten eines Motors verändern läßt.
Zum dritten zielt die Erfindung darauf ab, zur Lösung der vorstehend geschilderten Probleme eine Positioniervorrichtung vorzuschlagen, bei welcher das erste virtuelle Kurvenschei­ benmodul und das zweite virtuelle Kurvenscheibenmodul in ei­ nem einzigen Vorgang gekoppelter bzw. gemeinsamer Bewegung Bewegungen entlang einer spiralförmigen Bahn ausführen kön­ nen.
Der vorliegenden Erfindung liegt als viertem Aspekt auch die Aufgabe zugrunde, eine Positioniervorrichtung zu schaffen, bei der sich die entsprechenden Probleme dadurch lösen las­ sen, daß sich ein Bewegungsschema für die Kurvenscheibenbewe­ gung während des Betriebs der Vorrichtung in einfacher Weise verändern läßt.
Des weiteren liegt der Erfindung als fünfte Teilaufgabe zu­ grunde, eine Positioniervorrichtung zur Lösung der vorstehend angeschnittenen Probleme zu entwickeln, bei der sich der Ar­ beitsablauf bis zur Mitte eines einzelnen Zyklus im Kurven­ scheibenschema ausführen und anschließend ab Beginn des ein­ zelnen Zyklus im Kurvenscheibenschema wieder starten läßt.
Die vorliegende Erfindung hat sich sechstens auch zum Ziel gesetzt, zur Lösung der genannten Probleme eine Positionier­ vorrichtung zu schaffen, bei der sich die Grenzschalter-Aus­ gangsinformation in entsprechender Weise in einem einzelnen Zyklus der Hin- und Herbewegung der Kurvenscheibe verändern läßt.
Schließlich liegt der Erfindung auch die siebte Teilaufgabe zugrunde, eine Positioniervorrichtung vorzuschlagen, bei der es nicht erforderlich ist, das Schema der Grenzschalter-Aus­ gangsinformationen zu verändern, wenn am Kurvenscheibenschema und am Hub Veränderungen vorgenommen werden.
Nachfolgend wird nun die Erfindung anhand verschiedener Aus­ führungsbeispiele unter Bezugnahme auf die beiliegende Zeich­ nung näher beschrieben und erläutert. Es zeigen:
Fig. 1 eine schematische Darstellung der Systemauslegung eines Ausführungsbeispiels der erfindungsgemäßen Po­ sitioniervorrichtung;
Fig. 2 ein Programmspeicherabbild für ein virtuelles Über­ tragungsmodel bei einem Ausführungsbeispiel der er­ findungsgemäßen Positioniervorrichtung;
Fig. 3 ein Arbeitsspeicherabbild für ein virtuelles Kupp­ lungsmodul bei einem Ausführungsbeispiel der erfin­ dungsgemäßen Positioniervorrichtung;
Fig. 4 ein Ablaufdiagramm zur Veranschaulichung der Abläufe in einem virtuellen Kupplungsmodul bei einem Ausfüh­ rungsbeispiel der erfindungsgemäßen Positioniervor­ richtung;
Fig. 5 ein Ablaufdiagramm zur Darstellung der Abläufe in einem virtuellen Kupplungsmodul bei einem Ausfüh­ rungsbeispiel der erfindungsgemäßen Positioniervor­ richtung;
Fig. 6 eine schematische Darstellung eines Beispiels der Abläufe bei einem virtuellen Kupplungsmodul eines Ausführungsbeispiels der erfindungsgemäßen Positio­ niervorrichtung;
Fig. 7 ein Blockschaltbild zur Veranschaulichung eines vir­ tuellen Kurvenscheibenmoduls für einen Betrieb mit kontinuierlicher Hin- und Herbewegung im Zusammen­ hang mit einem Ausführungsbeispiel der Erfindung;
Fig. 8 ein Speicherabbild, das zeigt, wie eine Tabelle mit Daten zur Kurvenscheibengeometrie des virtuellen Kurvenscheibenmoduls im Zusammenhang mit einem Aus­ führungsbeispiel der Erfindung in einem Speicher ab­ gelegt wird;
Fig. 9 eine schematische Darstellung einer Tabelle mit Da­ ten zur Kurvenscheibengeometrie des virtuellen Kur­ venscheibenmoduls in graphischer Form im Zusammen­ hang mit einem Ausführungsbeispiel der Erfindung;
Fig. 10 ein Ablaufdiagramm zur Veranschaulichung einer im virtuellen Kurvenscheibenmodul enthaltenen Funktion im Zusammenhang mit einem Ausführungsbeispiel der Erfindung;
Fig. 11 ein Ablaufdiagramm, das eine im virtuellen Kurven­ scheibenmodul enthaltene Funktion im Zusammenhang mit einem Ausführungsbeispiel der Erfindung dar­ stellt;
Fig. 12 ein Speicherabbild, welches zeigt, wie das virtuelle Kurvenscheibenmodul im Zusammenhang mit einem Aus­ führungsbeispiel der Erfindung in einem Programm­ speicher abgespeichert wird;
Fig. 13 ein Blockschaltbild zur Darstellung eines virtuellen Kurvenscheibenmoduls bei einem Ausführungsbeispiel der erfindungsgemäßen Positioniervorrichtung;
Fig. 14 ein Speicherabbild, welches veranschaulicht, wie das virtuelle Kurvenscheibenmodul im Zusammenhang mit einem Ausführungsbeispiel der Erfindung in einem Speicher abgelegt wird;
Fig. 15 ein Ablaufdiagramm zur Darstellung einer im virtuel­ len Kurvenscheibenmodul enthaltenen Funktion bei ei­ nem Ausführungsbeispiel des erfindungsgemäßen Posi­ tioniermoduls;
Fig. 16 eine schematische Darstellung einer Tabelle mit Da­ ten zur Kurvenscheibengeometrie in graphischer Form bei einem virtuellen Kurvenscheibenmodul in einem Ausführungsbeispiel der erfindungsgemäßen Positio­ niervorrichtung;
Fig. 17 eine schematische Darstellung des Ablaufs des virtu­ ellen Kurvenscheibenmoduls bei einem Ausführungsbei­ spiel der erfindungsgemäßen Positioniervorrichtung;
Fig. 18 ein Blockschaltbild zur Veranschaulichung des virtu­ ellen Kurvenscheibenmoduls bei einem Ausführungsbei­ spiel der erfindungsgemäßen Positioniervorrichtung;
Fig. 19 ein Ablaufdiagramm zur Darstellung einer im virtuel­ len Kurvenscheibenmodul enthaltenen Funktion bei ei­ nem Ausführungsbeispiel des erfindungsgemäßen Posi­ tioniermoduls;
Fig. 20 ein Ablaufdiagramm, das den Ablauf einer im virtuel­ len Kurvenscheibenmodul enthaltenen Funktion bei ei­ nem Ausführungsbeispiel des erfindungsgemäßen Posi­ tioniermoduls zeigt;
Fig. 21 eine schematische Darstellung eines Beispiels für den Betrieb einer Positioniervorrichtung mit Grenz­ schalter-Ausgangsfunktion im Zusammenhang mit einem Ausführungsbeispiel der Erfindung;
Fig. 22 ein Speicherabbild, das darstellt, wie eine Grenz­ schalter-Ausgangsinformation in der Positioniervor­ richtung bei einem Ausführungsbeispiel der Erfindung abgespeichert wird;
Fig. 23 ein Ablaufdiagramm zur Darstellung des Ablaufs bei der Verarbeitung der Grenzschalter-Ausgangsinforma­ tionen bei einem Ausführungsbeispiel der erfindungs­ gemäßen Positioniervorrichtung;
Fig. 24 eine schematische Darstellung der Systemauslegung bei einer herkömmlichen Positioniervorrichtung;
Fig. 25 ein Programmspeicherabbild für ein virtuelles Über­ tragungsmodul bei einer Positioniervorrichtung gemäß einem ersten Beispiel für eine herkömmliche Vorrich­ tung nach dem Stand der Technik;
Fig. 26 ein Arbeitsspeicherabbild für ein virtuelles Kupp­ lungsmodul bei der Positioniervorrichtung gemäß dem ersten Beispiel für eine herkömmliche Vorrichtung nach dem Stand der Technik;
Fig. 27 ein Ablaufdiagramm zur Veranschaulichung des Ablaufs in dem virtuellen Kupplungsmodul bei der Positio­ niervorrichtung entsprechend dem ersten Beispiel für eine herkömmliche Vorrichtung nach dem Stand der Technik;
Fig. 28 eine schematische Darstellung eines Beispiels für den Ablauf des virtuellen Kupplungsmoduls bei der Positioniervorrichtung entsprechend dem ersten Bei­ spiel für eine herkömmliche Vorrichtung nach dem Stand der Technik;
Fig. 29 ein Blockschaltbild mit der Darstellung eines virtu­ ellen Kurvenscheibenmoduls für eine kontinuierliche Hin- und Herbewegung der Kurvenscheibe bei einem zweiten Beispiel für eine herkömmliche Vorrichtung nach dem Stand der Technik;
Fig. 30 ein Speicherabbild, das veranschaulicht, wie eine Tabelle mit Daten zur Kurvenscheibengeometrie für das virtuelle Kurvenscheibenmodul bei dem zweiten Beispiel für eine Vorrichtung nach dem Stand der Technik in einem Speicher abgelegt wird;
Fig. 31 ein Ablaufdiagramm zur Darstellung einer im virtuel­ len Kurvenscheibenmodul enthaltenen Funktion bei dem zweiten Beispiel für eine herkömmliche Vorrichtung nach dem Stand der Technik;
Fig. 32 ein Ablaufdiagramm zur Veranschaulichung einer im virtuellen Kurvenscheibenmodul enthaltenen Funktion bei dem zweiten Beispiel für eine herkömmliche Vor­ richtung nach dem Stand der Technik;
Fig. 33 ein Speicherabbild, das zeigt, wie das virtuelle Kurvenscheibenmodul bei dem zweiten Beispiel für ei­ ne Vorrichtung nach dem Stand der Technik in einem Speicher abgelegt ist;
Fig. 34 ein Blockschaltbild zur Darstellung des virtuellen Kurvenscheibenmoduls zu einem Zeitpunkt, zu dem der Hub der Kurvenscheibenbewegung während des Betriebs der Vorrichtung bei einem dritten Beispiel für eine Vorrichtung nach dem Stand der Technik verändert wird;
Fig. 35 ein Speicherabbild mit der Darstellung der Art und Weise, in der eine Tabelle mit Daten zur Kurven­ scheibengeometrie bei dem virtuellen Kurvenscheiben­ modul bei dem dritten Beispiel für eine Vorrichtung nach dem Stand der Technik in einem Speicher abge­ legt wird;
Fig. 36 ein Ablaufdiagramm zur Veranschaulichung einer im virtuellen Kurvenscheibenmodul enthaltenen Funktion bei dem dritten Beispiel für eine Vorrichtung nach dem Stand der Technik;
Fig. 37 ein Speicherabbild, das darstellt, wie das virtuelle Kurvenscheibenmodul bei dem dritten Beispiel für ei­ ne Vorrichtung nach dem Stand der Technik in einem Speicher abgelegt ist;
Fig. 38 ein Speicherabbild eines Arbeitsspeichers, den das virtuelle Kurvenscheibenmodul bei dem dritten Bei­ spiel für eine Vorrichtung nach dem Stand der Tech­ nik bei der Ermittlung eines auszugebenden Positio­ nierwertes benutzt;
Fig. 39 eine schematische Darstellung eines Beispiels für den Betrieb der herkömmlichen Positioniervorrichtung mit einer Grenzschalter-Ausgangsfunktion; und
Fig. 40 ein Blockschaltbild mit der Darstellung eines Bei­ spiels für eine Kombination von herkömmlichen Pro­ grammoduln, die Positionsinformationen liefern.
Fig. 1 zeigt in allgemeiner schematischer Form die Anordnung bei der Systemauslegung einer Positioniersteuerung, bei wel­ cher das Bezugszeichen 1 eine Positioniersteuerung, angibt, die Bezugszeichen 2a, 2b, 2c und 2d jeweils Servoverstärker bezeichnen, die Bezugszeichen 3a, 3b, 3c und 3d jeweils einen Stellmotor angeben, 4 einen Positionsmelder, z. B. einen Ko­ dierer, darstellt, 5 eine Ablaufsteuerung bezeichnet, die In­ formationen wie Variablen zur Positionssteuerung 1 und von dieser aus überträgt, 6 eine periphere Einheit angibt, die für die Programmierung und Überwachung der Positionssteuerung 1 zuständig ist, 7 eine Zentraleinheit bezeichnet, die die erforderlichen Berechnungen für die Positionierung ausführt, 8 einen ROM-Speicher für das Betriebssystem (O/S) angibt, in welchem das Betriebssystem für die Positioniersteuerung 1 ab­ gespeichert ist, 9 einen Programmspeicher bezeichnet, in dem Anwendungsprogramme abgelegt sind, 10 einen Arbeitsspeicher für die Zentraleinheit 8 angibt, 11a einen Variablenspeicher bezeichnet, in dem Parameter und andere zur Positionierung erforderliche Daten abgespeichert werden, 11b einen Daten­ speicher zur Erfassung von Daten wie beispielsweise Kurven­ scheibendaten repräsentiert, 12 eine Kommunikationsschnitt­ stelle zwischen der Ablaufsteuerung 5 und der Positionier­ steuerung 1 bezeichnet, 13 eine Peripherieschnittstelle zwi­ schen der peripheren Einheit 6 und der Positioniersteuerung 1, 14 eine Positionsmelde-Schnittstelle zur Eingabe des Aus­ gangssignals des Positionsmelders 4 in die Positioniersteue­ rung 1 angeben, 15 für eine Servoverstärker-Schnittstelle zwischen den Servoverstärkern 2a, 2b, 2c und 2d und der Posi­ tioniersteuerung 1 steht, und das Bezugszeichen 16 eine Ein-/ Ausgabe-Schnittstelle angibt, die Signale zu und von einem externen Gerät überträgt.
Erstes Ausführungsbeispiel
Anhand der Fig. 2 bis 6 wird nun ein Ausführungsbeispiel für ein virtuelles Übertragungsmodul beschrieben, wobei diese Figuren ein virtuelles Übertragungsmodul darstellen, das ein Äquivalent zu einer Kupplung darstellt (nachstehend als "vir­ tuelles Kupplungsmodul" bezeichnet). Auch wenn in der Praxis das virtuelle Kupplungsmodul nicht unabhängig funktioniert und in Verbindung mit den anderen virtuellen Mechanikmoduln eingesetzt wird, wird dennoch hier aus Gründen der Vereinfa­ chung seine Arbeitsweise in unabhängiger Form beschrieben, während sein Einsatz in Verbindung mit anderen Moduln für je­ den Fachmann auf diesem Gebiet offensichtlich ist.
Fig. 2 zeigt ein Speicherabbild für das virtuelle Kupplungs­ modul, das im Programmspeicher 9 enthalten ist. In dieser Fig. 2 ist mit 550 ein Modulnummernbereich angegeben, das Be­ zugszeichen 551 gibt einen Verbindungsinformations-Bereich an, in dem die Kennungsinformation des anderen virtuellen Me­ chanikmoduls abgespeichert ist, in welchem die Adressendaten für die Stellung der Antriebsachse abgelegt sind, die dann benötigt werden, wenn das virtuelle Kupplungsmodul Berechnun­ gen ausführt. Mit dem Bezugszeichen 552 ist ein Speicherbe­ reich für die Verbindungsinformationen einer Hilfsantriebs­ achse angegeben, in dem die Informationen für "NEIN" des vir­ tuellen Kupplungsmoduls abgelegt sind. Das Bezugszeichen 553 steht für einen Bereich, in dem eine Berechnungsformel abge­ legt ist, nach der das virtuelle Kupplungsmodul arbeitet, und das Bezugszeichen 554a gibt einen Variablenspeicher-Adressen­ bereich an, in dem die Ein-/Aus-Befehlsinformationen des vir­ tuellen Kupplungsmoduls abgespeichert werden, während die Nummern 554b und 554c Variablenspeicher-Adressenbereiche be­ zeichnen, in denen die Einschaltadressen-Befehlsinformation bzw. die Ausschaltadressen-Befehlsinformationen des virtuel­ len Kupplungsmoduls abgespeichert sind, und schließlich ist mit 555 ein Parameterbereich angegeben, in dem die Anzahl der Impulse N für eine Umdrehung der Antriebsachse abgespeichert ist.
Fig. 3 zeigt das Speicherabbild des Arbeitsspeichers 10, in welchem die Daten gesichert werden, die dann benötigt werden, wenn das virtuelle Kupplungsmodul seine Berechnungen vor­ nimmt; dabei sind in den Bereichen 556 und 557 jeweils der vorhergehende bzw. der aktuelle Wert x(n-1) bzw. x(n) für die Adressendaten der Antriebsachsenposition innerhalb einer Um­ drehung abgespeichert, während die Bezugszeichen 558 und 559 jeweils einen Speicherbereich für den letzten bzw. den aktu­ ellen Wert y(n-1) bzw. y(n) der Adressendaten zur Abtriebs­ achsenposition während einer Umdrehung bezeichnen, und mit 561 ein Speicherbereich für den vorhergehenden Zustandswert h0 des virtuellen Kupplungsmoduls, 562 ein Bereich für die Ein-/Ausschalt-Befehlsinformationen eines virtuellen Kupp­ lungsmoduls, und mit den Bezugszeichen 563 bzw. 564 eine Ein­ schaltadressen-Befehlsinformation h2 bzw. eine Ausschalt­ adressen-Befehlsinformation h3 für das virtuelle Kupplungsmo­ dul bezeichnet sind.
Fig. 4 und 5 zeigen jeweils ein Ablaufdiagramm, aus dem der Ablauf des virtuellen Kupplungsmoduls bzw. ein Teil des Ab­ laufs der Unterbrechungsverarbeitung in Echtzeit hervorgeht.
Nachfolgend wird nun anhand von Fig. 4 der Funktionsablauf beschrieben. Bei der Abarbeitung des virtuellen Kupplungsmo­ duls werden im Schritt S1551 die Positionsadressendaten für die Antriebsachse entsprechend der Verbindungsinformation 551 ausgelesen und im Bereich 557 für die x(n)-Daten abgespei­ chert. Anschließend wird im Schritt S1552 die Anzahl der Ein­ zeldrehungs-Impulse 555 für die Antriebsachse ausgelesen, während die Adresse innerhalb einer Umdrehung der Antriebs­ achse xa(n) nach der folgenden Formel ermittelt wird:
Adresse innerhalb einer Umdrehung der Antriebsachse:
xa(n) = x(n) % N Formel 100
wobei N die Anzahl der Impulse während einer Umdrehung der Antriebsachse angibt und % für den Operator für den Rest steht.
Nun werden im Schritt S1553 der Adressenbereich 554a des Va­ riablenspeichers, in dem die Ein-/Aus-Befehlsinformationen des virtuellen Kupplungsmoduls gespeichert sind, und die Adressenbereiche 554b, 554c des Variablenspeichers, in denen die Ein- bzw. Ausschaltadressen-Befehlsinformationen des virtuellen Kupplungsmoduls abgespeichert sind, ausgelesen, woraufhin die entsprechenden Adressen im Variablenspeicher ausgelesen und als Variablen h1, h2 und h3 definiert werden. Danach wird im Schritt S1554 der vorhergehende Zustandswert 561 des virtuellen Kupplungsmoduls ausgelesen und als Varia­ ble h0 definiert.
Anschließend wird im Schritt S1555 der aktuelle Wert y(n) der Adressendaten für die Stellung der Abtriebsachse gemäß der Formel 101 ermittelt, und der aktuelle Wert x(n) der Adres­ sendaten für die Stellung der Antriebsachse wird zum vorher­ gehenden Wert x(n-1) der Adressendaten für die Position der Antriebsachse übertragen, während der Wert y(n) der Adressen­ daten für die aktuelle Stellung der Abtriebsachse zum Wert y(n-1) der Adressendaten für die vorhergehende Stellung der Abtriebsachse übertragen wird; nun wird der aktuelle Zu­ standswert des virtuellen Kupplungsmoduls zum vorhergehenden Wert h0 zur Vorbereitung des nächsten Berechnungsvorgangs im Schritt S1556 übertragen. Schließlich wird im Schritt S1557 der aktuelle Datenwert y(n) für die Stellung der Abtriebsach­ se, der im Schritt S1555 berechnet wurde, im Adressendaten­ wertbereich 559 für die aktuelle Position der Abtriebsachse als Ausgangsinformation des virtuellen Kupplungsmoduls abge­ speichert, woraufhin der Ablauf beendet wird. Die Abarbeitung des Flußdiagramms nach Fig. 4 erfolgt in Echtzeit, um so nacheinander Positionsadressendaten auszugeben.
y(n) = g(n) + y(n-1) Formel 101
g(n) = G(x, xa, h0, h1, h2, h3) Formel 102
wobei x = Adressendaten für die Position der Antriebsachse
xa = Adresse innerhalb einer Umdrehung der Antriebsach­ se
h0 = vorhergehender Zustandswert des virtuellen Kupp­ lungsmoduls
h1 = Ein-/Aus-Befehlsinformation des virtuellen Kupp­ lungsmoduls
h2 = Einschalt-Befehlsadresse des virtuellen Kupplungs­ moduls
h3 = Ausschalt-Befehlsadresse des virtuellen Kupplungs­ moduls.
Hier gibt die Formel 102 eine Funktion an, die zur Berechnung einer Weglänge pro Zeiteinheit herangezogen wird, die als Ausgangsinformation der Verarbeitung dieses virtuellen Kupp­ lungsmoduls übermittelt wird; ihr Ablauf ist im Ablaufdia­ gramm in Fig. 5 dargestellt.
Im Schritt S1560 erfolgt eine Beurteilung der Ein-/Aus-Be­ fehlsinformationen h1 des virtuellen Kupplungsmoduls. Handelt es sich um den Ausschaltbefehl (OFF), wird im Schritt S1561 ermittelt, ob der vorhergehende Zustandswert h0 des virtuel­ len Kupplungsmoduls EIN oder AUS war. War er EIN, so springt die Routine den Schritt S1564 an. War er AUS, wird im Schritt S1562 beurteilt, ob der aktuelle Adressenwert xa(n) innerhalb einer Umdrehung der Antriebsachse größer wurde als die Ein­ schalt-Befehlsadresse h2 des virtuellen Kupplungsmoduls. Ist dies der Fall, wird die aktuelle Weglänge pro Zeiteinheit g(n) = xa(n) - h2 + 1, während der aktuelle Zustandswert für das virtuelle Kupplungsmodul im Schritt S1563 auf EIN gesetzt wird. Blieb der Wert xa(n) darunter, springt die Verarbeitung den Schritt S1565 an, wobei g(n) = 0 ist, was bedeutet, daß das virtuelle Kupplungsmodul ausgeschaltet ist, d. h. auf AUS (OFF) steht. Im Schritt S1564 ist das virtuelle Kupplungsmo­ dul eingeschaltet, d. h. es steht auf EIN (aN), wobei g(n) = x(n) - x(n-1) gilt.
Wenn anschließend das virtuelle Kupplungsmodul den AUS-Befehl erhält, wird im Schritt S1566 beurteilt, ob der vorherige Zu­ standswert h0 des virtuellen Kupplungsmoduls EIN oder AUS ist. Ist der Zustand AUS, wird bei der Abarbeitung zum Schritt S1565 gesprungen. War er EIN, wird im Schritt S1567 ermittelt, ob der aktuelle Adressenwert xa(n) innerhalb einer Umdrehung der Antriebsachse größer als die Ausschalt-Befehls­ adresse h3 geworden ist. Ist dies der Fall, so werden im Schritt S1568 die aktuelle Weglänge pro Zeiteinheit g(n) = h3 - xa(n) und der aktuelle Zustandswert des virtuellen Kupp­ lungsmoduls auf AUS gesetzt. Blieb der Wert xa(n) kleiner, so wird bei der Verarbeitung ein Sprung zum Schritt 51564 ausge­ führt, und damit ist dieser Ablauf an seinem Ende angekommen.
Fig. 6 zeigt ein Beispiel für die Funktionsweise dieses vir­ tuellen Kupplungsmoduls. Unter der Annahme, daß N ein Inter­ vall von einem einzigen Zyklus im Ausgabebetrieb, relativ zu den Adressendaten x(n) für die Stellung der Antriebsachse, sei, wiederholt die Adresse innerhalb einer Umdrehung der An­ triebsachse xa(n) das Muster von 0 bis N-1 (584). Unter der Annahme, daß A0 (581e) eine Adresse sei, bei welcher die Kupplung ausgeschaltet wird (0 A0, B0 N), hat der Ein-/ Ausschaltbefehl h1 (582h) für das virtuelle Kupplungsmodul den Wert 1 (EIN) ab einem Punkt, an dem die Adresse innerhalb einer Umdrehung der Antriebsachse (584) mit A0 übereinstimmt, bis zu einem Punkt knapp vor diese Adresse mit dem Wert B0 übereinstimmt, während sich die Ausgangsinformation y(n) in diesem Intervall im Ansprechen auf die Veränderung der Adres­ se innerhalb einer Umdrehung der Antriebsachse (584), d. h. der Positionsadressendaten für die Antriebsachse, verändert. Hat der Ein-/Ausschaltbefehl h1 für das virtuelle Kupplungs­ modul (582b) den Wert 0 (AUS), bleibt die Ausgangsinformation y(n) unverändert und wird beibehalten, sofern sich die Posi­ tionsadressendaten für die Antriebsachse ändern (585).
Soll der Ausgabevorgang im Intervall N wiederholt werden, wie in der Figur dargestellt, wird entsprechend den Veränderungen in den Adressendaten zur Stellung der Antriebsachse die An­ steuerung automatisch wiederholt, ohne daß die Kupplungs-Ein- und -Ausschaltadressen bearbeitet und unter Ansteuerung durch ein Benutzerablaufprogramm erneut angewiesen werden müssen.
Zweites Ausführungsbeispiel
Die nachfolgende Beschreibung anhand der Fig. 7 bis 12 be­ zieht sich auf ein anderes Ausführungsbeispiel des virtuellen Übertragungsmoduls. Dabei zeigt Fig. 7 ein virtuelles Über­ tragungsmodul, das das Äquivalent zu einer Kurvenscheibe dar­ stellt (und im folgenden als "virtuelles Kurvenscheibenmodul" bezeichnet wird), wobei das Bezugszeichen 600 eine Antriebs­ achse, das Bezugszeichen 601 eine Hilfsantriebsachse, 602 ei­ ne Abtriebsachse, 603 einen Hubeinstellwert h und 604 eine Black Box bezeichnen, welche Funktionen (Ablaufroutinen) be­ inhaltet.
Das Speicherabbild in Fig. 8 zeigt, wie im Programmspeicher 9 eine Tabelle mit den Daten zur Kurvenscheibengeometrie abge­ legt ist; dabei gibt das Bezugszeichen 605 Positionsadressen innerhalb einer Umdrehung der virtuellen Nockenwelle an, wäh­ rend die Bezugszeichen 606 und 607 die diesen Positionsadres­ sen entsprechenden Werte der Kurvenscheibenbewegung repräsen­ tieren. Die Werte der Kurvenscheibenbewegung geben Werte an, die den Kurvenscheibenpositionen entsprechen, an welchen ein unterer Hubtotpunkt mit -1 und ein oberer Hubtotpunkt als +1 definiert ist, während sich die Werte innerhalb einer Umdre­ hung der virtuellen Nockenwelle zwischen -1 und 1 verändern. Die Positionsadressen innerhalb einer Umdrehung der virtuel­ len Nockenwelle stellen Winkel dar, die in gleichmäßigen Ab­ ständen über eine volle Umdrehung verteilt sind (z. B. 2000 Adressen).
Fig. 9 ist eine graphische Darstellung jener Werte der Kur­ venscheibenbewegung, die den Positionsadressen entsprechen, die mit 606 und 607 in der Tabelle mit den Daten zur Kurven­ scheibengeometrie gemäß Fig. 8 bezeichnet sind, wobei hier das Bezugszeichen 608 angibt, daß die mit 606 bezeichneten Werte der Kurvenscheibenbewegung als Sinuskurve gesetzt sind, während 609 die Kurvenscheiben-Bewegungswerte bezeichnet, die mit 607 in der Tabelle gekennzeichnet und hier als Kosinus­ kurve gesetzt sind.
Fig. 10 und 11 sind Ablaufdiagramme zur Darstellung der in der Black Box 604 enthaltenen Funktionen (Prozeduren).
Das Speicherabbild in Fig. 12 zeigt, wie das virtuelle Kur­ venscheibenmodul im Programmspeicher 9 abgelegt ist, wobei das Bezugszeichen 610 eine Modulnummer angibt und mit 611 die Verbindungsinformationen bezeichnet sind, die einen Querbezug zur Positionsadresse der Antriebsachse herstellen. Mit 612 sind Verbindungsinformationen für die Hilfsantriebsachse an­ gegeben, die einen Querverweis zur Positionsadresse der Hilfsantriebsachse herstellen. Das Bezugszeichen 613 reprä­ sentiert Berechnungsformeln, die zur Ermittlung eines Posi­ tionierwerts herangezogen werden, der an die Abtriebsachse 602 ausgegeben wird, wobei in diesem Speicherbereich die in den Ablaufdiagrammen gemäß Fig. 10 und 11 dargestellten Funk­ tionen (Abläufe) abgelegt sind. Mit 614 ist ein Variablenbe­ reich ausgewiesen, wo die Hubeinstellwerte (Kreisbogenradius) 603 abgespeichert sind.
Als nächstes wird nun die Funktion beschrieben. Das in Fig. 7 dargestellte virtuelle Kurvenscheibenmodul verwendet die Po­ sitionsadresse der Antriebsachse 600 als Haupteingangsinfor­ mation und die Positionsadresse der Hilfsantriebsachse 601 als Nebeneingangsinformation. Eine Positionsadresse aus dem anderen virtuellen Mechanikmodul wird als Drehstellungsinfor­ mation zur virtuellen Nockenwelle in die Antriebsachse 600 eingegeben. Darüberhinaus wird in die Hilfsantriebsachse 601 die Befehlsadresse des für ein herkömmliches Positionierpro­ gramm beschriebenen Ablaufs als Versatz- bzw. Relativzeiger­ wert zum Ausgleich der von der Antriebsachse 600 aus eingege­ benen Drehstellungsinformationen der virtuellen Nockenwelle eingegeben.
Aus diesen Eingangsinformationen, aus dem zuvor im Variablen­ bereich abgespeicherten Hubeinstellwert 603 und aus der im Programmspeicher 9 gemäß Fig. 8 abgespeicherten Tabelle mit den Daten zur Kurvenscheibengeometrie berechnet das virtuelle Kurvenscheibenmodul nun einen Positionierwert für die hin- und hergehende Kurvenscheibenbewegung und gibt das Ergebnis dieser Berechnung an die Abtriebsachse 602 aus. Der ausgege­ bene Positionierwert für die hin- und hergehende Kurvenschei­ benbewegung wird für den Antrieb des Stellmotors zu dem an die Abtriebsachse in unmittelbarer Nähe angeschlossenen Aus­ gangsmodul übertragen.
Anhand der in Fig. 10 und 11 dargestellten Ablaufdiagramme wird nachfolgend nun die Art der Berechnung des ausgegebenen Positionierwerts für die hin- und hergehende Kurvenscheiben­ bewegung beschrieben, die in der Black Box in Form von Funk­ tionen (Abläufen) enthalten sind. Dabei werden gemäß Fig. 10 als erstes (S1600) die Positionsadresse x der Antriebsachse und die Positionsadresse z der Hilfsantriebsachse übernommen, woraufhin deren Summe in die Positionsadresse innerhalb einer Umdrehung umgesetzt wird (S1601). Diese Einzelumdrehungs­ adresse wird durch einen Rest repräsentiert, den man bei Di­ vision der Summe der Positionsadressen der Antriebsachse und der Hilfsantriebsachse durch einen Einzelumdrehungswert (360°) erhält. Der so ermittelte Wert stellt die Drehstel­ lungsinformation der virtuellen Nockenwelle dar. Anschließend wird unter Querbezug auf die Tabelle mit den Daten zur Kur­ venscheibengeometrie der Wert der Kurvenscheibenbewegung er­ mittelt, der der Drehstellungsinformation entspricht (S1602). Dieser Vorgang ist in weiteren Einzelheiten in Fig. 11 darge­ stellt.
Gemäß Fig. 11 werden als erstes aus der in Fig. 8 dargestell­ ten Tabelle mit Daten zur Kurvenscheibengeometrie die Positi­ onsadressen innerhalb einer Umdrehung der virtuellen Nocken­ welle A1 und A2 abgerufen (S1610), wobei A1 und A2 bezüglich der Drehstellungsinformation A der virtuellen Nockenwelle die Bedingung gemäß der Beziehung A1 A A2 erfüllen müssen. Anschließend werden aus der Tabelle mit den Daten zur Kurven­ scheibengeometrie nach Fig. 8 die Werte der Kurvenscheibenbe­ wegung abgerufen, welche den Positionsadressen innerhalb ei­ ner Umdrehung A1 und A2 entsprechen, und die als D1 und D2 definiert werden (S1611). Der Bewegungswert D der Kurven­ scheibe, der der Drehstellungsinformation A der virtuellen Nockenwelle entspricht, wird aus den Positionsadressen inner­ halb einer Umdrehung A1 und A2 und aus den Bewegungswerten D1 und D2 für die Kurvenscheibe nach der folgenden Formel be­ rechnet (S1612):
D = D1 + (D2-D1) × {(A-A1)/(A2-A1)}.
Diese Formel ergibt eine Berechnung der proportionalen Ver­ teilung aufgrund der Positionsadressen innerhalb einer Umdre­ hung, da die Bewegungswerte der Kurvenscheibe, die in der Ta­ belle mit den Daten zur Kurvenscheibengeometrie abgespeichert sind, bezüglich der Einzelumdrehungs-Positionsadressen der virtuellen Nockenwelle diskrete Werte besitzen.
Aus dem der Drehstellungsinformation der virtuellen Nocken­ welle entsprechenden Bewegungswert der Kurvenscheibe D, der im Ablauf gemäß Fig. 11 ermittelt wurde, und aus dem Hubein­ stellwert h, der zuvor im Variablenbereich abgelegt wurde, wird nun der Positionierwert für eine kontinuierliche hin- und hergehende Kurvenscheibenbewegung nach folgendem Ansatz berechnet (S1603) in Fig. 10):
(h × D).
Dies entspricht einer Hin- und Herbewegung der Kurvenscheibe zwischen der kleinsten Grenzposition -h und der größten Grenzposition +h. Der so ermittelte Positionierwert wird an die Abtriebsachse (S1604) ausgegeben und für den Antrieb des Stellmotors zu dem zunächst der Abtriebsachse angeschlossenen Ausgabemodul übermittelt.
In der Datentabelle für die Kurvenscheibengeometrie ist die mit dem Bezugszeichen 608 in Fig. 9 angegebene Sinuskurve für ein erstes virtuelles Kurvenscheibenmodul abgespeichert, das den Positionierwert für die hin- und hergehende Kurvenschei­ benbewegung berechnet, und ebenso ist dort die mit 609 in Fig. 9 bezeichnete Kosinuskurve, die um 90° hierzu versetzt ist, für ein zweites virtuelles Kurvenscheibenmodul abgelegt. Wenn nun beispielsweise das an das erste virtuelle Kurven­ scheibenmodul angeschlossene Ausgabemodul eine Abtriebsachse ist, die in horizontaler Richtung arbeitet, und das an das zweite virtuelle Kurvenscheibenmodul angeschlossene Ausgabe­ modul eine Abtriebsachse ist, die, bezogen auf die in hori­ zontaler Richtung wirksame Abtriebsachse, in vertikaler Rich­ tung funktioniert, so ist dementsprechend an der Positions­ adresse oder Positionierwert des ersten virtuellen Kurven­ scheibenmoduls 0 und der des zweiten virtuellen Kurvenschei­ benmoduls + Maximalwert, wie Fig. 9 dies zeigt, während der Positionierwert des ersten virtuellen Kurvenscheibenmoduls an der Positionsadresse 90° + Maximalwert und der des zweiten virtuellen Kurvenscheibenmoduls 0° ist; dabei führen die Mo­ dule entsprechend der Sinus- bzw. Kosinuskurve im horizonta­ ler und vertikaler Richtung hin- und hergehende Bewegungen aus, wodurch das erste virtuelle Kurvenscheibenmodul und das zweite virtuelle Kurvenscheibenmodul gemeinsam bzw. gekoppelt so bewegt werden, daß sie Kreisbewegungen ausführen.
Drittes Ausführungsbeispiel
Aus dem der Drehstellungsinformation der virtuellen Nocken­ welle entsprechenden Bewegungswert der Kurvenscheibe D, der in dem in Fig. 11 für das zweite Ausführungsbeispiel darge­ stellten Ablauf ermittelt wurde, und aus dem zuvor im Varia­ blenbereich abgespeicherten Hubeinstellwert h wird nun der Positionierwert für eine kontinuierliche hin- und hergehende Kurvenscheibenbewegung nach folgendem Ansatz berechnet (S1603) in Fig. 10):
(h × D).
Damit übernehmen das erste und das zweite virtuelle Kurven­ scheibenmodul in Echtzeit die schrittweise erhöhten bzw. ver­ minderten Hubeinstellwerte (Bezeichnung des Kreisbogenradius) h, die mit dem Bezugszeichen 614 in Fig. 12 gekennzeichnet sind, und führen während der Kreisbewegungen Berechnungen in Echtzeit aus, wodurch kontinuierliche Bewegungen entlang ei­ ner spiralförmigen Bahn reibungslos ausgeführt werden.
Viertes Ausführungsbeispiel
Anhand der Fig. 13 bis 15 wird nun ein weiteres Ausfüh­ rungsbeispiel des virtuellen Kurvenscheibenmoduls beschrie­ ben. Dabei zeigt Fig. 13 das virtuelle Kurvenscheibenmodul, wobei das Bezugszeichen 650 eine Antriebsachse angibt, mit 651 eine Abtriebsachse bezeichnet ist, 652 die Nummer einer herangezogenen Datentabelle zur Kurvenscheibengeometrie re­ präsentiert, und das Bezugszeichen 653 eine Block Box angibt, die eine Funktion (Ablaufroutine) beinhaltet.
Fig. 14 zeigt ein Speicherabbild, aus dem ersichtlich ist, wie im Programmspeicher Tabellen mit den Daten zur Kurven­ scheibengeometrie abgespeichert sind, wobei die Bezugszeichen 654 Positionsadressen innerhalb einer Umdrehung der virtuel­ len Nockenwelle, sowie 655 und 656 jeweils Werte für die Be­ wegung einer Kurvenscheibe entsprechend diesen Positions­ adressen repräsentieren. Bei den Positionsadressen innerhalb einer Umdrehung der virtuellen Nockenwelle handelt es sich um die Werte von Winkeln in gleichmäßigen Abständen über eine Umdrehung.
Fig. 15 zeigt ein Ablaufdiagramm zur Veranschaulichung der Funktion (Ablaufprozedur), die in der Black Box 653 enthalten ist.
Als nächstes wird nun der Funktionsablauf beschrieben. Das virtuelle Kurvenscheibenmodul gemäß Fig. 13 verwendet die Po­ sitionsadresse der Antriebsachse 650 als Eingangsinformation. Eine Positionsadresse aus einem anderen Antriebs-Softwaremo­ dul wird als Drehstellungsinformation der virtuellen Nocken­ welle in die Antriebsachse 650 eingegeben. Aus dieser Ein­ gangsinformation und aus den Datentabellen zur Kurvenschei­ bengeometrie, die gemäß Fig. 14 im Programmspeicher 9 abge­ speichert sind, berechnet das virtuelle Kurvenscheibenmodul nun einen Positionierwert für die Kurvenscheibenbewegung und gibt das Ergebnis der Berechnung an die Abtriebsachse 651 aus. Der für die Kurvenscheibenbewegung ausgegebene Positio­ nierwert wird dann für den Antrieb des Stellmotors an ein Ausgangsmodul übertragen, das in unmittelbarer Nähe der Ab­ triebsachse angeschlossen ist.
Anhand des Ablaufdiagramms gemäß Fig. 15 wird nun die Art und Weise erläutert, in der der ausgegebenen Positionierwert für die Kurvenscheibenbewegung berechnet wird, die in der Black Box 653 in Form einer Funktion enthalten ist. Dabei wird ge­ mäß Fig. 15 als erstes (S1650) die Positionsadresse x der An­ triebsachse 650 übernommen und in die Adresse innerhalb einer Umdrehung der virtuellen Nockenwelle umgesetzt (S1651). Diese Positionsadresse innerhalb einer Umdrehung der virtuellen Nockenwelle erhält man durch Division der Positionsadresse der Antriebsachse um einen Wert für eine Umdrehung. Es liegt auf der Hand, daß der Wert für eine Umdrehung der virtuellen Nockenwelle das Äquivalent für einen Zyklus in der Datenta­ belle zur Kurvenscheibengeometrie darstellt. Der so ermittel­ te Wert stellt die Drehstellungsinformation der virtuellen Nockenwelle dar. Anschließend wird beurteilt, ob die Dreh­ stellungsinformation der virtuellen Nockenwelle schon den Wert einer Schaltposition in der Datentabelle zur Kurven­ scheibengeometrie erreicht hat (S1652). Die Schaltposition in der Datentabelle zur Kurvenscheibengeometrie, die zuvor in den Programmspeicher übernommen wurde, hat den Wert 0 bis -1 (ein Einzelumdrehungswert der virtuellen Nockenwelle). An­ schließend wird die verwendete Nummer 652 der Datentabelle zur Kurvenscheibengeometrie zu einem angegebenen Wert ge­ schaltet (S1653), wenn die Positionsadresse innerhalb einer Umdrehung der virtuellen Nockenwelle die Schaltposition in der Datentabelle zur Kurvenscheibengeometrie in Aufwärts- oder Abwärtsrichtung überschritten hat, und im Anschluß daran wird der Bewegungswert der Kurvenscheibe, der der Drehstel­ lungsinformation entspricht, anhand der Datentabelle zur Kur­ venscheibengeometrie ermittelt, die durch die verwendete Num­ mer 652 der Datentabelle zur Kurvenscheibengeometrie angege­ ben wird (S1654).
Zwar werden bei diesem Ausführungsbeispiel zwei Datentabellen zur Kurvenscheibengeom 15137 00070 552 001000280000000200012000285911502600040 0002019502400 00004 15018etrie verwendet, doch können tatsäch­ lich auch drei oder noch mehr Tabellen eingesetzt werden.
Fünftes Ausführungsbeispiel
Nachfolgend wird nun anhand der Fig. 16 bis 20 ein weiteres Ausführungsbeispiel des virtuellen Kurvenscheibenmoduls er­ läutert. Dabei zeigt Fig. 16 ein Beispiel für eine graphische Datentabelle zur Kurvenscheibengeometrie, wobei auf der waag­ rechten Achse die Positionsadressen einer Antriebsachse und auf der senkrechten Achse die Positionsadressen für eine Ab­ triebsachse aufgetragen sind.
Fig. 17 zeigt die Arbeitsweise dieses Ausführungsbeispiels. Die Zeichnung veranschaulicht dabei, wie der Vorgang ab Be­ ginn eines Zyklus in der Datentabelle zur Kurvenscheibengeo­ metrie erneut gestartet wird, während gerade ein Zyklus aus der Datentabelle zur Kurvenscheibengeometrie ausgeführt wird.
Fig. 18 zeigt das virtuelle Kurvenscheibenmodul, wobei das Bezugszeichen 657 eine Antriebsachse bezeichnet, mit 658 eine Abtriebsachse angegeben ist, 659 ein Rücksetzsignal für den aktuellen Wert innerhalb einer Umdrehung einer virtuellen Nockenwelle repräsentiert, und mit dem Bezugszeichen 660 eine Black Box angegeben ist, die Funktionen (Abläufe) enthält.
Die Ablaufdiagramme in Fig. 19 und 20 stellen jeweils die Funktionen (Ablaufroutinen) dar, die in der Black Box 660 enthalten sind.
Als nächstes wird nun der Funktionsablauf beschrieben. Das in Fig. 18 dargestellte virtuelle Kurvenscheibenmodul verwendet die Positionsadresse der Antriebsachse 657 als Eingangsinfor­ mation. Eine Positionsadresse aus dem Antriebs-Softwaremodul wird als Drehstellungsinformation der virtuellen Nockenwelle in die Antriebsachse 657 eingegeben. Aus dieser Eingangsin­ formation und aus der Datentabelle zur Kurvenscheibengeome­ trie, die in der im Zusammenhang mit dem vierten Ausführungs­ beispiel gemäß Fig. 14 dargestellten Weise im Programmspei­ cher abgelegt ist, berechnet das virtuelle Kurvenscheibenmo­ dul einen Positionierwert für die Kurvenscheibenbewegung und gibt das Ergebnis dieser Berechnung an die Abtriebsachse 658 aus. Der zur Kurvenscheibenbewegung ausgegebene Positionier­ wert wird für den Antrieb des Stellmotors an das Ausgangsmo­ dul übermittelt, das in unmittelbarer Nähe der Abtriebsachse angeschlossen ist.
Anhand der Ablaufdiagramme in Fig. 19 und 20 wird nun die Art und Weise erläutert, in der der ausgegebenen Positionierwert für die Kurvenscheibenbewegung berechnet wird, die in der Black Box 653 in Form einer Funktion enthalten ist. Dabei wird gemäß Fig. 19 als erstes (S1656) die Positionsadresse x der Antriebsachse 657 übernommen und in die Adresse innerhalb einer Umdrehung der virtuellen Nockenwelle umgesetzt (S1656). Diese Positionsadresse innerhalb einer Umdrehung der virtuel­ len Nockenwelle wird durch einen Rest repräsentiert, den man durch Division der Positionsadresse der Antriebsachse um ei­ nen Wert für eine Umdrehung erhält der so ermittelte Wert stellt die Drehstellungsinformation der virtuellen Nockenwel­ le dar. Danach wird der Wert der Kurvenscheibenbewegung, der der Drehstellungsinformation entspricht, anhand der Datenta­ belle für die Kurvenscheibengeometrie ermittelt (S1657).
Fig. 20 zeigt, wie ab Beginn eines Zyklus in der Datentabelle für die Kurvenscheibengeometrie vor Beendigung eines Zyklus in dieser Datentabelle der Bezugsvorgang erneut gestartet wird. Zunächst wird beurteilt, ob das in Fig. 18 bezeichnete Rücksetzsignal 659 für den aktuellen Wert der virtuellen Noc­ kenwelle innerhalb einer Umdrehung eingegeben wurde oder nicht (S1658). Ist dies der Fall, wird der aktuelle Wert ei­ ner Umdrehung der virtuellen Nockenwelle auf 0 rückgesetzt (S1659). Dabei ist zu beachten, daß der Vorgang ab der Adres­ se der Abtriebsachsenstellung wieder aufgenommen wird, die unverändert blieb. In vorstehend erläuterter Weise wird nach Weiterschaltung des aktuellen Werts in einer Umdrehung der virtuellen Kurvenscheibe zu a nun ab Beginn eines Zyklus nach der Datentabelle für die Kurvenscheibengeometrie wieder die Bezugnahme auf diese Tabelle gestartet, um den Vorgang der Wiederaufnahme der Kurvenscheibenbewegung gemäß Fig. 17 ab­ laufen zu lassen. Dabei liegt es auf der Hand, daß das Rück­ setzsignal 659 für den aktuellen Wert innerhalb einer Umdre­ hung entweder von der Ein-/Ausgabe-Schnittstelle 16 in Fig. 1 aus oder von der Ablaufsteuerung 5 gemäß Fig. 1 eingegeben werden kann.
Sechstes Ausführungsbeispiel
Nachfolgend wird ein weiteres Ausführungsbeispiel des virtu­ ellen Übertragungsmoduls beschrieben. Hierzu zeigt Fig. 21 den Funktionsablauf bei diesem Ausführungsbeispiel. In der Zeichnung ist mit 750 ein Kurvenscheibenschema angegeben, wo­ bei die Bezugszeichen 751a, 751b und 751c jeweils Grenzwert­ ausgangsschemata repräsentieren, 752a einen Punkt 1 bzw. den Grenzwertausgangs-Einschaltpunkt im Ausgangsschema 1, 752b einen Punkt 2 bzw. den Grenzwertausgangs-Ausschaltpunkt im Ausgangsschema 1, 752c einen Punkt 3 bzw. den Grenzwertaus­ gangs-Einschaltpunkt im Ausgangsschema 2, 752d einen Punkt 4 bzw. den Grenzwertausgangs-Ausschaltpunkt im Ausgangsschema 2 und in ähnlicher Weise 752e einen Punkt n-1 bzw. den Grenz­ wertausgangs-Einschaltpunkt im Ausgangsschema 3 und 752f ei­ nen Punkt n bzw. den Grenzwertausgangs-Ausschaltpunkt im Aus­ gangsschema 3 bezeichnen, während jeweils mit 753a ein Inter­ vall 0 ab Beginn eines Zyklus einer Kurvenscheibe bis zum Punkt 1, mit 753b ein Intervall 1 ab Punkt 1 eines Zyklus der Kurvenscheibe bis zum Punkt 2, mit 753c ein Intervall 2 ab Punkt 2 eines Kurvenscheibenzyklus bis zu Punkt 3, mit 753d ein Intervall 3 ab Punkt 3 eines Kurvenscheibenzyklus bis zum Punkt 4, und in ähnlicher Weise mit 753e ein Intervall n-1 ab Punkt n-1 eines Kurvenscheibenzyklus bis zum Punkt n und mit 753f ein Intervall n zwischen Punkt n in einem Kurvenschei­ benzyklus bis zum Ende eines Kurvenscheibenzyklus bezeichnet ist, wobei diese Punkte Grenzwertausgangszustände angeben, in denen im Ansprechen auf einen Zyklus der Kurvenscheibe nach außen Ein- und Ausschaltsignale ausgegeben werden.
Das Speicherabbild in Fig. 22 zeigt, wie die Grenzwertschal­ ter-Ausgangsinformationen abgespeichert werden. Dabei be­ zeichnet 754 einen Wertebereich für Einstellwerte bei Ein­ satz/Nichteinsatz, mit dem bestimmt wird, ob eine Verarbei­ tung des ausgegebenen Grenzwerts heranzuziehen ist oder nicht. Das Bezugszeichen 755 bezeichnet einen Betriebsart- Einstellbereich, mit dem bestimmt wird, ob ein Grenzschalter- Ausgangssignal entsprechend einem aktuellen IST-Wert vor­ liegt, der als Rückmeldung vom servoverstärker kommt, oder entsprechend einem aktuellen Wert innerhalb einer Umdrehung der Nockenwelle, der jeden Punkt in einem Zyklus der Kurven­ scheibe bezeichnet. Das Bezugszeichen 756 gibt einen Ein­ stellbereich für die Ein-/Ausschaltpunktadresse in einem Grenzschalter-Ausgangssignal an, in welchem der Speicher 757 die Startadresse 0 des aktuellen Werts innerhalb einer Umdre­ hung der virtuellen Nockenwelle abspeichert, und der Speicher 759 die Anzahl der Impulse ablegt, die die Kurvenscheibe zur Ausführung einer vollen Umdrehung benötigt, d. h. unter der Annahme, daß der Wert der letzten Adresse des aktuellen Werts innerhalb einer Umdrehung der virtuellen Nockenwelle +1 ist.
Im Speicher 758 wird der aktuelle Wert in einer Umdrehung der virtuellen Nockenwelle innerhalb der Wertebereiche der Spei­ cher 757 und 759 gesetzt. 760 bezeichnet hier einen Einstell­ bereich für das Ein-/Ausschaltschema, der herangezogen wird, um zu ermitteln, ob in jedem Intervall das Grenzschalter-Aus­ gangssignal ein- oder ausgeschaltet ist, und in dem das Ein-/ Ausschaltschema für jedes Intervall entsprechend der im Spei­ cher 756 gesetzten Adresse abgespeichert wird, während der Speicher 761 dazu dient, die Anzahl der Impulse für eine Um­ drehung der virtuellen Nockenwelle abzuspeichern und die An­ zahl der Impulse einzustellen, die die Kurvenscheibe zur Aus­ führung eines Zyklus benötigt.
Als nächstes wird anhand des Ablaufdiagramms in Fig. 23 der Funktionsablauf beschrieben. Dieser Verarbeitungsablauf wird in Intervallen von vorgegebener Dauer durch Unterbrechung in Echtzeit wiederholt. Im Schritt S1750 wird die Positionsin­ formation der Antriebsachse durch den Wert dividiert, der im Zählbereich 761 für die Impulse in einer Umdrehung der virtu­ ellen Nockenwelle gesetzt ist, und dann wird ein Rest als ak­ tueller Wert innerhalb einer Umdrehung der virtuellen Nocken­ welle berechnet. Im Schritt S17551 wird der Wertebereich für Einstellwerte bei Einsatz/Nichteinsatz ausgelesen, um zu be­ urteilen, ob das Grenzschalter-Ausgangssignal auf Einsatz oder Nichteinsatz gesetzt ist. Ist es auf Einsatz gesetzt, wird der nächste Schritt S1752 ausgeführt. Andernfalls wird die Verarbeitung beendet. Im Schritt S1752 wird der Betriebs­ art-Einstellbereich ausgelesen, um zu beurteilen, ob der ak­ tuelle Ablauf im Modus "aktueller Wert in einer Umdrehung der Nockenwelle" arbeitet oder nicht. Ist dies der Fall, dann schaltet die Routine zum nächsten Verarbeitungsschritt S1753 weiter. Läuft dagegen der Vorgang nicht im Modus "aktueller Wert in einer Umdrehung der Nockenwelle" ab, wird der Verar­ beitungsvorgang beendet.
Im Schritt S1753 wird der Bereich 756 mit den Ein-/Ausschalt­ punkten anhand des im Schritt S1750 ausgelesenen aktuellen Werts in einer Umdrehung der Nockenwelle ausgelesen, um die entsprechende aktuelle Intervallnummer zu berechnen. Im Schritt S1754 wird dann das der im Schritt S1753 berechneten Intervallnummer entsprechende Ausgangsschema aus dem Ein-/ Ausschaltschema-Bereich 757 abgerufen. Im Schritt S1755 wird das im Schritt S1755 aufgerufene Ein-/Ausschaltschema zu den Ausgangseinrichtungen übermittelt, woraufhin das Ablaufschema beendet ist.
Wie vorstehend erläutert, sieht die vorliegende Erfindung ei­ ne Positioniervorrichtung vor, mit der es möglich ist, die Adressen für die Ein- und Ausschaltbefehle eines virtuellen Kupplungsmoduls mit Einzelumdrehungsadressen anzusteuern, die jeweils einem Zyklus des Positioniervorgangs entsprechen, al­ so Adressen innerhalb einer Umdrehung einer Antriebsachse, wodurch sich eine kontinuierliche wiederholte Ansteuerung ei­ nes Zyklus im Positioniervorgang ohne Schwierigkeiten erfol­ gen kann, ohne daß die Kupplungs-Ein- und -Ausschaltadressen in einem nächsten Zyklus erneut unter Ansteuerung durch ein Benutzerablaufprogramm angesprochen werden müssen.
Erfindungsgemäß wird eine Positioniervorrichtung vorgeschla­ gen, die es möglich macht, daß die Adressen der Ein- und Aus­ schaltbefehle bei einem virtuellen Kupplungsmodul mit Einzel­ umdrehungs-Adressen angesteuert werden können, die einem Zy­ klus im Positioniervorgang entsprechen, d. h. Adressen inner­ halb einer Umdrehung einer Antriebsachse, wodurch eine konti­ nuierliche wiederholte Ansteuerung eines Zyklus im Positio­ niervorgang mit einer Vielzahl miteinander synchronisierter Achsen ohne Schwierigkeiten vorgenommen werden kann, ohne daß es erforderlich ist, die Kupplungs-Ein- und -Ausschaltadres­ sen in einem nächsten Zyklus unter Ansteuerung durch ein Be­ nutzerablaufprogramm erneut für die Anzahl der synchronisier­ ten Achsen per Befehl zu setzen.
Die vorliegende Erfindung sieht außerdem eine Positioniervor­ richtung vor, die es ermöglicht, daß ein erstes virtuelles Kurvenscheibenmodul und ein zweites virtuelles Kurvenschei­ benmodul Kreisbewegungen in einem einzigen gemeinsamen bzw. gekoppelten Bewegungsablauf auszuführen, wodurch die Radius­ vorgabe verändert werden kann, ohne die Motoren anzuhalten.
Darüberhinaus schlägt die vorliegende Erfindung eine Positio­ niervorrichtung vor, mit der es möglich ist, daß das erste virtuelle Kurvenscheibenmodul und das zweite virtuelle Kur­ venscheibenmodul in einem einzigen gemeinsamen bzw. gekoppel­ ten Bewegungsablauf reibungslos kontinuierliche Bewegungen entlang einer spiralförmigen Bahn ausführen können.
Erfindungsgemäß ist außerdem eine Positioniervorrichtung vor­ gesehen, die eine mühelose Veränderung des Schemas der Kur­ venscheibenbewegung während des Betriebs der Vorrichtung ge­ stattet, wodurch ein Stellmotor nicht jedesmal angehalten werden muß, wenn im laufenden Betrieb das Funktionsschema des Stellmotors verändert wird, wodurch die Taktzeit verkürzt wird.
Die vorliegende Erfindung schlägt darüberhinaus eine Positio­ niervorrichtung vor, mit der es möglich ist, einen Zyklus im Kurvenscheibenschema ab Beginn wieder aufzunehmen, nachdem der eine Zyklus im Kurvenscheibenschema nur teilweise durch­ laufen wurde, wodurch eine Position innerhalb eines Kurven­ scheibenzyklus ohne Schwierigkeiten bezüglich eines Werk­ stücks kompensiert werden kann, z. B. um die Kurvenscheibenbe­ wegung auf das Werkstück abzustimmen.
Erfindungsgemäß ist eine Positioniervorrichtung vorgesehen, mit der es möglich ist, die Grenzschalter-Ausgangssignale in angemessener Weise während eines Zyklus der hin- und herge­ henden Kurvenscheibenbewegung zu verändern, wodurch sich wäh­ rend eines Zyklus der Kurvenscheibenbewegung unabhängig vom Kurvenscheibenschema und vom Hub die Grenzschalter-Ausgangs­ informationen verändern lassen, um so ohne Schwierigkeiten synchron mit dem Betrieb einer Nockenwelle das äußere Umfeld zu beeinflussen.
Der gesamte Offenbarungsgehalt jeglicher ausländischen Pa­ tentanmeldung, deren Auslandspriorität für die vorliegende Anmeldung in Anspruch genommen wurde, wird hier durch Quer­ verweis in vollständigem Umfang einbezogen.
Auch wenn die vorliegende Erfindung anhand mindestens eines bevorzugten Ausführungsbeispiels mit einem gewissen Umfang spezieller Ausprägung beschrieben wurde, ist es doch offen­ sichtlich, daß die hier enthaltene Offenbarung des bevorzug­ ten Ausführungsbeispiels nur exemplarischen Charakter hat und daß an den Einzelheiten und in der Anordnung der einzelnen Elemente und Bestandteile zahlreiche Veränderungen vorgenom­ men werden können, ohne über den Grundgedanken und den Umfang der Erfindung hinauszugehen, wie er in den nachfolgenden An­ sprüchen umrissen ist.

Claims (18)

1. Antriebsvorrichtung, dadurch gekennzeichnet, daß sie folgendes aufweist:
  • - eine Vielzahl von Motoren (3a, 3b, 3c, 3d);
  • - eine Vielzahl von Antriebseinheiten (2a, 2b, 2d, 2c), die jeweils den Motoren (3a, 3b, 3c, 3d) zum Antrieb des entsprechenden Motors zugeordnet sind;
  • - ein Rechenwerk (7) zur Ausführung arithmetischer Ver­ arbeitungsschritte;
  • - ein Software-Modul für den virtuellen Antrieb, das auf Eingangsinformationen zur Angabe einer Drehstellung anspricht und im Zusammenwirken mit dem Rechenwerk (7) Bezugspositions-Informationen erzeugt und ausgibt; und
  • - eine Vielzahl von Software-Modulblöcken zur Übertra­ gung, die den jeweiligen Antriebseinheiten (2a, 2b, 2c, 2d) zugeordnet sind und jeweils eine vorgegebene Anzahl von Übertragungs-Softwaremoduln zur Ausführung einer vorgegebene Operation aufgrund der Bezugspositi­ ons-Informationen und zur Abarbeitung der vorgegebenen Anzahl von Übertragungs-Softwaremoduln durch das Re­ chenwerk (7) sowie zur Ausgabe eines Ergebnisses der vorgegebenen Operation an die entsprechende Antriebs­ einheit (2a, 2b, 2c, 2d) umfassen,
  • - wobei die Antriebsvorrichtung den Antrieb einer Viel­ zahl angesteuerter Objekte unter gegenseitiger Syn­ chronisierung durch die Vielzahl von Motoren (3a, 3b, 3c, 3d) ermöglicht;
  • - bei welcher mindestens eines der Übertragungs-Soft­ waremoduln folgendes umfaßt:
  • - eine Umwandlungseinrichtung zum Umwandeln der Ein­ gangsinformationen in eine Einzelumdrehungs-Adresse zur Angabe einer Drehstellung innerhalb einer einzel­ nen Umdrehung, die gleich einem vorgegebenen Betrag der Eingangsinformation ist; und
  • - eine Übertragungseinrichtung zum Starten eines Vor­ gangs zur Veränderung eines Ausgangswerts entsprechend einem Veränderungsverhältnis bei der Einzelumdrehungs- Adresse nach Übereinstimmung einer voreingestellten ersten Adresse mit einem aktuellen Wert der Einzelum­ drehungs-Adresse, und zum Unterbrechen des Vorgangs nach Übereinstimmung einer voreingestellten zweiten Adresse mit einem aktuellen Wert der Einzelumdrehungs- Adresse.
2. Antriebsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß sie folgendes aufweist:
  • - eine Vielzahl von Motoren (3a, 3b, 3c, 3d);
  • - eine Vielzahl von Antriebseinheiten (2a, 2b, 2d, 2c), die jeweils den Motoren (3a, 3b, 3c, 3d) zum Antrieb des entsprechenden Motors zugeordnet sind;
  • - ein Rechenwerk (7) zur Ausführung arithmetischer Ver­ arbeitungsschritte;
  • - ein Software-Modul für den virtuellen Antrieb, das auf Eingangsinformationen zur Angabe einer Drehstellung anspricht und im Zusammenwirken mit dem Rechenwerk (7) Bezugspositions-Informationen erzeugt und ausgibt; und
  • - eine Vielzahl von Software-Modulblöcken zur Übertra­ gung, die den jeweiligen Antriebseinheiten (2a, 2b, 2c, 2d) zugeordnet sind und jeweils eine vorgegebene Anzahl von Übertragungs-Softwaremoduln zur Ausführung einer vorgegebene Operation aufgrund der Bezugspositi­ ons-Informationen und zur Abarbeitung der vorgegebenen Anzahl von Übertragungs-Softwaremoduln durch das Re­ chenwerk (7) sowie zur Ausgabe eines Ergebnisses der vorgegebenen Operation an die entsprechende Antriebs­ einheit (2a, 2b, 2c, 2d) umfassen,
  • - wobei die Antriebsvorrichtung den Antrieb einer Viel­ zahl angesteuerter Objekte unter gegenseitiger Syn­ chronisierung durch die Vielzahl von Motoren (3a, 3b, 3c, 3d) ermöglicht;
  • - bei welcher mindestens eines der Übertragungs-Soft­ waremoduln folgendes umfaßt:
  • - eine erste Tabelle, in der für jedes Verhältnis aus einer Vielzahl voreingestellter Veränderungsverhält­ nisse der Eingangsinformationen zur Angabe einer Dreh­ stellung ein Tabellenwert abgespeichert ist;
  • - ein erstes Softwaremodul zum Übernehmen des einem ak­ tuellen Wert der Eingangsinformationen entsprechenden Tabellenwerts aus der ersten Tabelle, und zum Ausgeben von Informationen aufgrund des übernommenen Tabellen­ werts;
  • - eine zweite Tabelle, in der für jedes Verhältnis aus einer Vielzahl voreingestellter Veränderungsverhält­ nisse der Eingangsinformationen zur Angabe einer Dreh­ stellung ein Tabellenwert abgespeichert ist, wobei die Drehstellung gegenüber einer entsprechenden Drehstel­ lung in der ersten Tabelle um 90° versetzt ist; und
  • - ein zweites Softwaremodul zum Übernehmen des einem ak­ tuellen Wert der Einzelumdrehungs-Adresse entsprechen­ den Tabellenwerts aus der zweiten Tabelle und zum Aus­ geben von Ausgangsinformationen aufgrund des übernom­ menen Tabellenwerts.
3. Antriebsvorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß das erste und das zweite Softwaremodul Ergebnisse ausgeben, die das Produkt einer Multiplikation der In­ formationen aufgrund des ersten und des zweiten Tabel­ lenwerts mit einer jeweiligen Zeitveränderungskonstante darstellen.
4. Antriebsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß sie folgendes aufweist:
  • - eine Vielzahl von Motoren (3a, 3b, 3c, 3d);
  • - eine Vielzahl von Antriebseinheiten (2a, 2b, 2d, 2c), die jeweils den Motoren (3a, 3b, 3c, 3d) zum Antrieb des entsprechenden Motors zugeordnet sind;
  • - ein Rechenwerk (7) zur Ausführung arithmetischer Ver­ arbeitungsschritte;
  • - ein Software-Modul für den virtuellen Antrieb, das auf Eingangsinformationen zur Angabe einer Drehstellung anspricht und im Zusammenwirken mit dem Rechenwerk (7) Bezugspositions-Informationen erzeugt und ausgibt; und
  • - eine Vielzahl von Software-Modulblöcken zur Übertra­ gung, die den jeweiligen Antriebseinheiten (2a, 2b, 2c, 2d) zugeordnet sind und jeweils eine vorgegebene Anzahl von Übertragungs-Softwaremoduln zur Ausführung einer vorgegebene Operation aufgrund der Bezugspositi­ ons-Informationen und zur Abarbeitung der vorgegebenen Anzahl von Übertragungs-Softwaremoduln durch das Re­ chenwerk (7) sowie zur Ausgabe eines Ergebnisses der vorgegebenen Operation an die entsprechende Antriebs­ einheit (2a, 2b, 2c, 2d) umfassen,
  • - wobei die Antriebsvorrichtung den Antrieb einer Viel­ zahl angesteuerter Objekte unter gegenseitiger Syn­ chronisierung durch die Vielzahl von Motoren (3a, 3b, 3c, 3d) ermöglicht;
  • - bei welcher mindestens eines der Übertragungs-Soft­ waremoduln
    • I) eine erste und eine zweite Tabelle umfaßt, wobei in jeder Tabelle für jedes vorgegebene Verände­ rungsverhältnis der Eingangsinformationen zur Angabe einer Drehstellung ein Tabellenwert abge­ speichert ist;
    • II) den einem aktuellen Wert der Eingangsinformatio­ nen entsprechenden Tabellenwert aus der ersten Tabelle übernimmt und aufgrund des übernommenen Tabellenwerts Ausgangsinformationen ausgibt, und
    • III) nach Übereinstimmung eines voreingestellten Werts mit dem aktuellen Wert der Eingangsinfor­ mationen den dem aktuellen Wert der Eingangsin­ formationen entsprechenden Tabellenwert aus der zweiten Tabelle übernimmt und aufgrund des über­ nommenen Tabellenwerts Ausgangsinformationen ausgibt.
5. Antriebsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß sie folgendes aufweist:
  • - eine Vielzahl von Motoren (3a, 3b, 3c, 3d);
  • - eine Vielzahl von Antriebseinheiten (2a, 2b, 2d, 2c), die jeweils den Motoren (3a, 3b, 3c, 3d) zum Antrieb des entsprechenden Motors zugeordnet sind;
  • - ein Rechenwerk (7) zur Ausführung arithmetischer Ver­ arbeitungsschritte;
  • - ein Software-Modul für den virtuellen Antrieb, das auf Eingangsinformationen zur Angabe einer Drehstellung anspricht und im Zusammenwirken mit dem Rechenwerk (7) Bezugspositions-Informationen erzeugt und ausgibt; und
  • - eine Vielzahl von Software-Modulblöcken zur Übertra­ gung, die den jeweiligen Antriebseinheiten (2a, 2b, 2c, 2d) zugeordnet sind und jeweils eine vorgegebene Anzahl von Übertragungs-Softwaremoduln zur Ausführung einer vorgegebene Operation aufgrund der Bezugspositi­ ons-Informationen und zur Abarbeitung der vorgegebenen Anzahl von Übertragungs-Softwaremoduln durch das Re­ chenwerk (7) sowie zur Ausgabe eines Ergebnisses der vorgegebenen Operation an die entsprechende Antriebs­ einheit (2a, 2b, 2c, 2d) umfassen,
  • - wobei die Antriebsvorrichtung den Antrieb einer Viel­ zahl angesteuerter Objekte unter gegenseitiger Syn­ chronisierung durch die Vielzahl von Motoren (3a, 3b, 3c, 3d) ermöglicht;
  • - bei welcher mindestens eines der Übertragungs-Soft­ waremoduln
    • I) eine erste und eine zweite Tabelle umfaßt, wobei in jeder Tabelle für jedes vorgegebene Verände­ rungsverhältnis der Eingangsinformationen zur Angabe einer Drehstellung ein Tabellenwert abge­ speichert ist;
    • II) den einem aktuellen Wert der Eingangsinformatio­ nen entsprechenden Tabellenwert aus der ersten Tabelle übernimmt und aufgrund des übernommenen Tabellenwerts Ausgangsinformationen ausgibt, und
    • III) nach Übereinstimmung eines vorgegebenen Werts mit dem aktuellen Wert der Eingangsinformationen aus der Tabelle den Tabellenwert übernimmt, der einem Wert entspricht, der das Ergebnis einer Addition bzw. Subtraktion eines vorgegebenen Wert zum bzw. vom aktuellen Wert der Eingangsin­ formationen darstellt, und aufgrund des übernom­ menen Tabellenwerts Ausgangsinformationen aus­ gibt.
6. Antriebsvorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Übertragungs-Softwaremoduln folgendes umfassen:
  • - eine Umwandlungseinrichtung zum Umwandeln der Ein­ gangsinformationen in eine Einzelumdrehungs-Adresse zur Angabe einer Drehstellung innerhalb einer einzel­ nen Umdrehung, die gleich einer vorgegebenen Vergröße­ rung der Eingangsinformation ist; und
  • - eine Einrichtung zur Erzeugung von Ausgangsinformatio­ nen, die einen Speicherbereich zum Abspeichern einer vorgegebenen Anzahl von Informationspaaren aufweist und eine vorgegebene Anzahl von Ausgangsinformationen aufgrund des Inhalts des Speicherbereichs erzeugt, wo­ bei jedes Informationspaar aus der Einzelumdrehungs- Adresse zu einem Zeitpunkt, zu dem ein Ausgangssignal entgegengesetzt ist, und einer Information besteht, die einen Zustand "1" oder "0" für jede vorgegebene Anzahl von Intervallen, dividiert durch den Zeitpunkt, angibt, und
  • - wobei die die Drehstellung angebende Eingangsinfor­ mation ein Ausgangssignal der Umwandlungseinrichtung ist.
7. Antriebsvorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß jedes der Übertragungs-Softwaremoduln folgendes um­ faßt:
  • - eine Umwandlungseinrichtung zum Umwandeln der Ein­ gangsinformationen in eine Einzelumdrehungs-Adresse zur Angabe einer Drehstellung innerhalb einer einzel­ nen Umdrehung, die gleich einer vorgegebenen Vergröße­ rung der Eingangsinformation ist; und
  • - eine Einrichtung zur Erzeugung von Ausgangsinformatio­ nen, die einen Speicherbereich zum Abspeichern einer vorgegebenen Anzahl von Informationspaaren aufweist und eine vorgegebene Anzahl von Ausgangsinformationen aufgrund des Inhalts des Speicherbereichs erzeugt, wo­ bei jedes Informationspaar aus der Einzelumdrehungs- Adresse zu einem Zeitpunkt, zu dem ein Ausgangssignal entgegengesetzt ist, und einer Information besteht, die einen Zustand "1" oder "0" für jede vorgegebene Anzahl von Intervallen, dividiert durch den Zeitpunkt, angibt, und
  • - wobei die die Drehstellung angebende Eingangsinfor­ mation ein Ausgangssignal der Umwandlungseinrichtung ist.
8. Antriebsvorrichtung nach Anspruch 4, dadurch gekennzeichnet, daß jedes der Übertragungs-Softwaremoduln folgendes um­ faßt:
  • - eine Umwandlungseinrichtung zum Umwandeln der Ein­ gangsinformationen in eine Einzelumdrehungs-Adresse zur Angabe einer Drehstellung innerhalb einer einzel­ nen Umdrehung, die gleich einer vorgegebenen Vergröße­ rung der Eingangsinformation ist; und
  • - eine Einrichtung zur Erzeugung von Ausgangsinformatio­ nen, die einen Speicherbereich zum Abspeichern einer vorgegebenen Anzahl von Informationspaaren aufweist und eine vorgegebene Anzahl von Ausgangsinformationen aufgrund des Inhalts des Speicherbereichs erzeugt, wo­ bei jedes Informationspaar aus der Einzelumdrehungs- Adresse zu einem Zeitpunkt, zu dem ein Ausgangssignal entgegengesetzt ist, und einer Information besteht, die einen Zustand "1" oder "0" für jede vorgegebene Anzahl von Intervallen, dividiert durch den Zeitpunkt, angibt, und
  • - wobei die die Drehstellung angebende Eingangsinfor­ mation ein Ausgangssignal der Umwandlungseinrichtung ist.
9. Antriebsvorrichtung nach Anspruch 5, dadurch gekennzeichnet, daß jedes der Übertragungs-Softwaremoduln folgendes um­ faßt:
  • - eine Umwandlungseinrichtung zum Umwandeln der Ein­ gangsinformationen in eine Einzelumdrehungs-Adresse zur Angabe einer Drehstellung innerhalb einer einzel­ nen Umdrehung, die gleich einer vorgegebenen Vergröße­ rung der Eingangsinformation ist; und
  • - eine Einrichtung zur Erzeugung von Ausgangsinformatio­ nen, die einen Speicherbereich zum Abspeichern einer vorgegebenen Anzahl von Informationspaaren aufweist und eine vorgegebene Ausgangsinformation aufgrund des Inhalts des Speicherbereichs erzeugt, wobei jedes In­ formationspaar aus der Einzelumdrehungs-Adresse zu ei­ nem Zeitpunkt, zu dem ein Ausgangssignal entgegenge­ setzt ist, und einer Information besteht, die einen Zustand "1" oder "0" für jede vorgegebene Anzahl von Intervallen, dividiert durch den Zeitpunkt, angibt, und
  • - wobei die die Drehstellung angebende Eingangsinfor­ mation ein Ausgangssignal der Umwandlungseinrichtung ist.
10. Verfahren zum synchronen Antreiben einer Vielzahl von Motoren mit einer Vielzahl von Antriebseinheiten, die den Motoren jeweils zu deren Antrieb zugeordnet sind, im Ansprechen auf Positionsinformationen zum Ansteuern ei­ nes angesteuerten Objekts, dadurch gekennzeichnet, daß es folgende Schritte umfaßt:
  • - Eingeben von Informationen, die jene Informationen be­ inhalten, die eine Drehstellung für jeden Motor ange­ ben,
  • - Bestimmen einer Bezugspositions-Information für jeden Motor;
  • - Ausführen einer vorgegebenen Operation aufgrund der Bezugspositions-Informationen und Ausführen der fol­ genden Schritte:
  • - Umwandeln von Eingangsinformationen in eine Einzelum­ drehungs-Adresse zur Angabe einer Drehstellung inner­ halb einer einzelnen Umdrehung, die gleich einem vor­ gegebenen Betrag der Eingangsinformation ist; und
  • - Starten eines Vorgangs zur Veränderung eines Ausgangs­ werts entsprechend einem Veränderungsverhältnis bei der Einzelumdrehungs-Adresse nach Übereinstimmung ei­ ner voreingestellten ersten Adresse mit einem aktuel­ len Wert der Einzelumdrehungs-Adresse, und Unterbre­ chen des Vorgangs nach Übereinstimmung einer voreinge­ stellten zweiten Adresse mit einem aktuellen Wert der Einzelumdrehungs-Adresse.
11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß Teil des Schritts der Einstellung einer Bezugsposi­ tions-Information die Einstellung der Anzahl der Impulse für eine Umdrehung der Antriebsachse zur Umwandlung der Positionsinformation in eine Einzelumdrehungsadresse ei­ ner Antriebsachse ist.
12. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß Teil des Schritts des Startens das Einrücken einer Kupplung ist, und daß Teil des Schritts des Unterbre­ chens das Ausrücken einer Kupplung ist.
13. Verfahren nach Anspruch 12, dadurch gekennzeichnet, daß die Ein- und Ausschalt-Befehlsadressen der Kupplung mit Einzelumdrehungs-Adressen in mehreren aufeinander­ folgenden Zyklen per Befehl angegeben werden.
14. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß das Kurvenscheiben-Schema pro Umdrehung teilweise ausgeführt wird, wobei eine Position innerhalb einer Um­ drehung einer Kurvenscheibe bezüglich eines Werkstücks wiederholt kompensierbar ist.
15. Verfahren zum synchronen Antreiben einer Vielzahl von Motoren mit einer Vielzahl von Antriebseinheiten, die den Motoren jeweils zu deren Antrieb zugeordnet sind, im Ansprechen auf Positionsinformationen zum Ansteuern ei­ nes angesteuerten Objekts, dadurch gekennzeichnet, daß es folgende Schritte umfaßt:
  • - Eingeben von Informationen, die jene Informationen be­ inhalten, die eine Drehstellung für jeden Motor ange­ ben,
  • - Bestimmen einer Bezugspositions-Information für jeden Motor;
  • - Ausführen einer vorgegebenen Operation aufgrund der Bezugspositions-Informationen und Ausführen der fol­ genden Schritte:
  • - Umwandeln von Eingangsinformationen in eine Einzelum­ drehungs-Adresse zur Angabe einer Drehstellung inner­ halb einer einzelnen Umdrehung, die gleich einem vor­ gegebenen Betrag der Eingangsinformation ist; und
  • - Abspeichern einer ersten Gruppe von Werten für jedes Verhältnis aus einer Vielzahl voreingestellter Verän­ derungsverhältnisse der Eingangsinformationen zur An­ gabe einer Drehstellung;
  • - Übernehmen eines Werts aus der ersten Gruppe von Wer­ ten, der einem aktuellen Wert der Eingangsinformatio­ nen entspricht, und zum Ausgeben von Informationen aufgrund des übernommenen Werts aus der ersten Gruppe;
  • - Abspeichern einer zweiten Gruppe von Werten für jedes Verhältnis aus einer Vielzahl voreingestellter Verän­ derungsverhältnisse der Eingangsinformationen zur An­ gabe einer Drehstellung, die gegenüber einer entspre­ chenden Drehstellung aus der ersten Gruppe von Werten um 90° versetzt ist; und
  • - Übernehmen eines Werts aus der zweiten Gruppe von Wer­ ten, der einem aktuellen Wert der aktuellen Einzelum­ drehungs-Adresse entspricht, und Ausgeben von Aus­ gangsinformationen aufgrund des übernommenen Werts aus der zweiten Gruppe von Werten.
16. Verfahren zum synchronen Antreiben einer Vielzahl von Motoren mit einer Vielzahl von Antriebseinheiten, die den Motoren jeweils zu deren Antrieb zugeordnet sind, im Ansprechen auf Positionsinformationen zum Ansteuern ei­ nes angesteuerten Objekts, dadurch gekennzeichnet, daß es folgende Schritte umfaßt:
  • - Abspeichern von Werten in einer Kurvenscheibengeome­ trie-Tabelle;
  • - Eingeben von Positionsinformationen, die jene Informa­ tionen beinhalten, die für eine Antriebsachse und eine Hilfsantriebsachse eine Drehstellung angeben,
  • - Berechnen einer Drehinformation für die Antriebsachse und die Hilfsantriebsachse;
  • - Berechnen eines Werts der Bewegung einer Kurvenscheibe anhand der Tabelle mit Daten zur Kurvenscheibengeome­ trie;
  • - Berechnen eines Positionswerts aus dem Hubwert und dem Wert der Kurvenscheibenbewegung; und
  • - Ausgeben eines Positionierwerts an eine Abtriebsachse.
17. Verfahren nach Anspruch 16, dadurch gekennzeichnet, daß es die folgenden Schritte umfaßt:
  • - Abrufen einer ersten und einer zweiten Adresse anhand der Drehstellungs-Information;
  • - Übernehmen der Werte der Kurvenscheibenbewegung, die diesen Adressen entsprechen;
  • - Berechnen der Werte der Kurvenscheibenbewegung, die den Drehstellungswerten entsprechen, aufgrund der Adressen und der übernommenen, den Adressen entspre­ chenden Werten der Kurvenscheibenbewegung.
18. Verfahren nach Anspruch 16, dadurch gekennzeichnet, daß der Schritt des Abspeicherns die folgenden Schritte umfaßt:
  • - Abspeichern von Werten in einer Vielzahl von Geome­ trietabellen, die durch eine jeweilige Nummer gekenn­ zeichnet sind;
  • - Auswahlen einer Tabelle aus der Vielzahl von Tabellen mit Geometriedaten aufgrund einer Bestimmung, ob die Tabelle mit Geometriedaten zu schalten ist; und
  • - Berechnen des Werts der Kurvenscheibenbewegung anhand der ausgewählten Kurvenscheibengeometrie-Tabelle.
DE19502400A 1994-01-28 1995-01-26 Positioniervorrichtung und Verfahren zur virtuellen Übermittlung Ceased DE19502400A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP00886794A JP3220588B2 (ja) 1994-01-28 1994-01-28 位置決め装置

Publications (1)

Publication Number Publication Date
DE19502400A1 true DE19502400A1 (de) 1995-08-03

Family

ID=11704649

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19502400A Ceased DE19502400A1 (de) 1994-01-28 1995-01-26 Positioniervorrichtung und Verfahren zur virtuellen Übermittlung

Country Status (5)

Country Link
US (1) US5642024A (de)
JP (1) JP3220588B2 (de)
KR (1) KR0150587B1 (de)
CN (1) CN1073246C (de)
DE (1) DE19502400A1 (de)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11110047A (ja) * 1997-10-07 1999-04-23 Fanuc Ltd モーションコントローラ
JP3296419B2 (ja) * 1998-03-12 2002-07-02 株式会社安川電機 サーボシステムの制御装置および制御方法
JP3480349B2 (ja) * 1999-01-27 2003-12-15 富士ゼロックス株式会社 ステッピングモータ制御装置
ITVI20010149A1 (it) * 2001-07-04 2003-01-04 Adriano Cazzavillan Metodo per coordinare e sincronizzare il movimento di assi servo-assistiti
JP4805629B2 (ja) * 2005-08-04 2011-11-02 本田技研工業株式会社 エンコーダ
JP4584191B2 (ja) * 2006-06-14 2010-11-17 三菱電機株式会社 位置決め制御装置
JP5121578B2 (ja) * 2008-05-29 2013-01-16 三菱電機株式会社 電子カム制御装置
JP4554697B2 (ja) * 2008-07-03 2010-09-29 ファナック株式会社 任意の軸を動作させるテーブル形式データを有する数値制御装置
US8024069B2 (en) * 2009-01-28 2011-09-20 Ge Intelligent Platforms, Inc. System and method for path planning
JP5640514B2 (ja) * 2010-07-14 2014-12-17 富士電機株式会社 位置決め制御装置
CN101984553B (zh) * 2010-11-28 2013-01-09 沈阳工业大学 电压矢量选择方法及依该方法建立的多电机同步控制系统
BR112013021605A2 (pt) * 2011-02-28 2016-11-16 Yaskawa Denki Seisakusho Kk dispositivo de acionamento de motor multi-eixo e sistema de acionamento de motor multi-eixo
JP4973792B1 (ja) * 2011-03-15 2012-07-11 オムロン株式会社 演算ユニット、出力制御方法、およびプログラム
WO2013111325A1 (ja) * 2012-01-27 2013-08-01 三菱電機株式会社 多軸同期制御装置を駆動制御する同期制御プログラムの表示方法
WO2016002076A1 (ja) * 2014-07-04 2016-01-07 三菱電機株式会社 位置決め制御装置の同期制御設定方法
KR101888732B1 (ko) 2014-11-13 2018-08-14 도레이 카부시키가이샤 이차전지 세퍼레이터의 제조방법, 이에 따라 제조된 이차전지 세퍼레이터, 및 이를 포함하는 이차전지의 제조방법
US9748882B1 (en) * 2016-03-28 2017-08-29 Amazon Technologies, Inc. Integrated motor driver/controller with sensorless or sensored commutation
WO2019215854A1 (ja) * 2018-05-09 2019-11-14 三菱電機株式会社 カムデータ生成装置
CN110737193B (zh) * 2019-09-19 2021-11-23 中建材创新科技研究院有限公司 一种虚拟轴控制多轴的同步算法控制系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0573147A (ja) * 1991-09-13 1993-03-26 Mitsubishi Electric Corp 位置決め装置及びそのプログラム表示方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2528189B1 (fr) * 1982-06-04 1985-07-26 Ropelato Michel Dispositif modulaire de pilotage de processus industriels
US4568866A (en) * 1983-10-26 1986-02-04 Allen-Bradley Company Programmable controller for stepping motor control
US4663704A (en) * 1984-12-03 1987-05-05 Westinghouse Electric Corp. Universal process control device and method for developing a process control loop program
US4901221A (en) * 1986-04-14 1990-02-13 National Instruments, Inc. Graphical system for modelling a process and associated method
JPS63181033A (ja) * 1987-01-23 1988-07-26 Hitachi Ltd プログラム自動生成方式
JPS63273101A (ja) * 1987-04-30 1988-11-10 Fanuc Ltd プログラマブル・コントロ−ラ
JPH083731B2 (ja) * 1988-10-18 1996-01-17 株式会社日立製作所 プログラマブルコントローラ
US4972186A (en) * 1989-03-20 1990-11-20 Allen-Bradley Company, Inc. Resolver excitation circuit
CA2015788C (en) * 1989-05-01 1996-04-09 Hiroaki Wada Method of and apparatus for generating control program
US5187788A (en) * 1989-05-01 1993-02-16 The United States Of America As Represented By The Secretary Of The Air Force Graphics system for automatic computer code generation
JPH0421107A (ja) * 1990-05-16 1992-01-24 Yokogawa Electric Corp モータの制御システム
US5168441A (en) * 1990-05-30 1992-12-01 Allen-Bradley Company, Inc. Methods for set up and programming of machine and process controllers

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0573147A (ja) * 1991-09-13 1993-03-26 Mitsubishi Electric Corp 位置決め装置及びそのプログラム表示方法
US5355062A (en) * 1991-09-13 1994-10-11 Mitsubishi Denki Kabushiki Kaisha Positioning and control apparatus that is interactively programmable using a display

Also Published As

Publication number Publication date
KR0150587B1 (ko) 1998-12-15
JPH07219639A (ja) 1995-08-18
US5642024A (en) 1997-06-24
JP3220588B2 (ja) 2001-10-22
KR950024043A (ko) 1995-08-21
CN1073246C (zh) 2001-10-17
CN1120186A (zh) 1996-04-10

Similar Documents

Publication Publication Date Title
DE19502400A1 (de) Positioniervorrichtung und Verfahren zur virtuellen Übermittlung
DE10152765B4 (de) Verfahren zur elektronischen Bereitstellung von Diensten für Maschinen über eine Datenkommunikationsverbindung
DE60035651T2 (de) Steuerungssystem zum synchronen kooperativen Betreiben einer Mehrzahl von Robotern
DE60127908T2 (de) Robotersteuerung
DE112013006576B4 (de) Synchronsteuerungsvorrichtung
DE69705999T2 (de) Graphische Benutzerschnittstelle für die Programmierung einer Motorsteuerung
EP3408714B1 (de) Modul für eine technische anlage und verfahren zur steuerung einer technischen anlage
EP1410122B1 (de) Verfahren und system zur elektronischen bereitstellung von diensten für maschinen über eine datenkommunikationsverbindung
DE4210091A1 (de) Vorrichtung und verfahren zur automatischen nachstellung von steuerparametern bei einer nc-steuerung
WO2002065223A2 (de) Steuerungs- und überwachungsanlage von maschinen und/oder anlagen mit aktionskomponenten unterschiedlicher aktionsgruppen
EP2266003A1 (de) Konfigurierung von maschinenabläufen
DE102017116810A1 (de) Prädiktive tachometerprofil-erzeugung während getriebeschaltvorgängen
DE19616855B4 (de) Verfahren zur Datenverarbeitung in einer numerisch gesteuerten Antriebseinheit
EP0543034B1 (de) Verfahren zum Betrieb einer numerisch gesteuerten Werkzeugmaschine und Werkzeugmaschine zur Ausübung des Verfahrens
EP1373992B1 (de) Verfahren zum synchronisierten betrieb von maschinen mit durch einzelantriebe angetriebenen achsen
EP3367185A1 (de) Antriebssystem und dessen beurteilung
EP2002316B1 (de) Steuereinrichtung mit integriertem maschinenmodell
EP3082002A1 (de) Sicherheitssteuerung und verfahren zum steuern einer automatisierten anlage
DE10200377A1 (de) Einstellanzeigevorrichtung für eine progrmmierbare Steuereinrichtung
WO2018210514A1 (de) Verfahren und vorrichtung zur bestimmung zumindest eines zweckmässigen betriebszustandes einer industriellen anlage, computerprogrammprodukt, antriebssystem und industrielle anlage
DE112021007250T5 (de) System und Steuervorrichtung
DE69529907T2 (de) Verfahren und Programm einer numerischen Steuerung einer Werkzeugmaschine und numerische Steuerung, die mit Mitteln dieses Programms arbeitet
DE112005002185B4 (de) Verfahren zum Betrieb einer Automatisierungseinrichtung bzw. Vorrichtung zur Durchführung des Verfahrens
DE69910375T2 (de) Verfahren und vorrichtung zur sequenzen-erstellung für numerisch gesteuerte maschinenwerkzeuge
DE102023206761A1 (de) Verfahren und systeme für ein mehrganggetriebe

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection