DE19532502A1 - Electronic circuit for automatic restart of stepper- and servo-motors - Google Patents

Electronic circuit for automatic restart of stepper- and servo-motors

Info

Publication number
DE19532502A1
DE19532502A1 DE1995132502 DE19532502A DE19532502A1 DE 19532502 A1 DE19532502 A1 DE 19532502A1 DE 1995132502 DE1995132502 DE 1995132502 DE 19532502 A DE19532502 A DE 19532502A DE 19532502 A1 DE19532502 A1 DE 19532502A1
Authority
DE
Germany
Prior art keywords
restart
run
motors
signal
auto
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.)
Withdrawn
Application number
DE1995132502
Other languages
German (de)
Inventor
Walter Dipl Ing Sakmann
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE1995132502 priority Critical patent/DE19532502A1/en
Publication of DE19532502A1 publication Critical patent/DE19532502A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/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/19Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • G05B19/21Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device
    • G05B19/25Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for continuous-path control
    • 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/33268D-A, A-D
    • 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/34157Synchronize interpolation of different axis boards, simultaneous start
    • 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/41Servomotor, servo controller till figures
    • G05B2219/41326Step motor

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Stepping Motors (AREA)
  • Control Of Multiple Motors (AREA)

Abstract

As soon as the motors have reached the next programmed position and the run-latches RLx (x is the motor number) are off, the new data for the next position, the step frequency (for stop motors), the analogue voltage (for servo motors) and the direction of rotation CW/CCW (clockwise or counter-clockwise) are transmitted from the buffer resister to the working register. In fact, the next positions go from the position buffer register PBx to the position comparison register PCx, the direction of rotation from the monitoring buffer register CBx to the monitoring register CRx, and to the generator FGx or the D/A converter DACx.

Description

Hardware BeschreibungHardware description

Bahn- oder Kurven-Steuerungen mittels Schritt- oder Servomotoren werden vorwiegend über digitale Regler gesteuert. Dabei wird meist in konstanten Zeitintervallen die Ist-Position der Motoren über Drehimpulsgeber oder Resolver gemessen und mit den Sollwerten verglichen. In Abhängigkeit der momentanen Abweichung wird dann bei Schrittmotoren die Pulsfrequenz der Motor- Fortschaltimpulse geändert und bei Servomotoren die analoge Referenz- Spannung über einen DAC (Digital Analog Converter) verändert, um so die Abweichung zu korrigieren. Jede Korrektur eines Reglers hat natürlich zur Folge, daß Abweichungen über und unter die Sollwerte vorkommen. Eine Regelung ist nie 100-prozentig genau, da jeder Regler von der Abweichung "lebt" und nur regeln kann wenn eine Abweichung vorliegt. Andererseits gibt es keinen Regler, der ohne Abweichungen arbeitet.Path or curve controls using stepper or servo motors mainly controlled by digital controllers. It is usually in constant Time intervals the actual position of the motors via rotary pulse encoder or resolver measured and compared with the target values. Depending on the current In the case of stepper motors, the deviation is then the pulse frequency of the motor Advance pulses changed and the analog reference for servo motors Voltage changed via a DAC (Digital Analog Converter) so that the Correct deviation. Every correction of a controller has of course As a result, there are deviations above and below the target values. A Regulation is never 100 percent accurate, since every regulator detects the deviation "lives" and can only regulate if there is a deviation. On the other hand, there is no controller that works without deviations.

Schrittmotor-Steuerungen über Regler sind nach dem Stand der Technik mit standardisierten Elektronik-Bausteinen z.B von HP (Hewlett Packard HCTL-1100 General Purpose Motion Control IC), bekannt.Stepper motor controls via controllers are included in the state of the art standardized electronic components e.g. from HP (Hewlett Packard HCTL-1100 General Purpose Motion Control IC).

Die folgende Steuerung erzeugt insbesondere bei Schrittmotoren keine signifikanten Abweichungen und benötigt deshalb auch keine Regelung solange die Schrittmotoren den exakt vorgegebenen Frequenzen folgen. Dies ist dann erfüllt, wenn man die kritischen Schrittfrequenz nicht überschreitet. Es werden eine Vielzahl von exakt vorgegebenen Punkten mit genau vorgegebenen Geschwindigkeiten angefahren. Bei Servomotoren kann zwar die Geschwindigkeit während eines Schrittes geringfügig geändert werden, die Präzision wird jedoch auch hier durch das exakte Anfahren von vielen Stützpunkten erreicht.The following control does not generate any, especially with stepper motors significant deviations and therefore does not require any regulation the stepper motors follow the precisely specified frequencies. Then this is fulfilled if you do not exceed the critical step frequency. It will a large number of precisely specified points with precisely specified points Speeds approached. With servomotors, the Speed during a step can be changed slightly However, precision is achieved here by the precise approach of many Bases reached.

In Fig. 2 sind die Unterschiede zwischen der Exakt-Bahnsteuerung und der Regulierten-Bahn-Steuerung deutlich zu sehen. Die Exakt-Bahnsteuerung wurde von der IBM Deutschland im August 1990 im IBM Technical Disclosure Bulletin Volume 33 No. 3B veröffentlicht mit dem Titel "Motor Stepping and Advance Frequency Control".The differences between the exact path control and the regulated path control can be clearly seen in FIG . The exact path control was published by IBM Germany in August 1990 in the IBM Technical Disclosure Bulletin Volume 33 No. 3B publishes "Motor Stepping and Advance Frequency Control".

Zeitliche Lücken entstehen bei der bisherigen über die Software gesteuerten Lösung aber dadurch, daß ein Prozessor im INTERRUPT- oder POLLING- Verfahren viele Mikrosekunden braucht, um den Zeitpunkt des Restarts zu ermitteln, den Datentransfer von den Puffer-Registern zu den Arbeits-Registern vorzunehmen und den Restart auszuführen. Dieses Problem macht sich bei höheren Schrittfrequenzen bemerkbar. Die hier beschriebene neue elektronische Hardware-Steuerung zum automatischen Restart von Schritt- und Servomotoren vermeidet diese zeitlichen Lücken; sie erlaubt eine Vielzahl von Motoren exakt synchron laufen zu lassen. Time gaps arise in the previous software-controlled The solution, however, is that a processor in INTERRUPT or POLLING The process takes many microseconds to get the time to restart determine the data transfer from the buffer registers to the working registers and restart. This problem arises noticeable higher step frequencies. The new one described here electronic hardware control for automatic restart of step and Servomotors avoid these time gaps; it allows a variety of To let motors run exactly in sync.  

Wie in Fig. 3 gezeigt, hat jeder Schritt- oder Servomotor zur Positionskontrolle einen ladbaren Up/Down Zähler CNTRx (x = Motor Nummer), ein Positions- Puffer-Register PBx und ein Positions-Vergleich-Register PCx sowie ein Run- Latch RLx, das sowohl vom Programm als auch von der Hardware gesetzt werden kann. Wird das Run Latch RLx gesetzt, so wird bei einem Schrittmotor der Frequenzgenerator FGx freigegeben und bei einem Servomotor der Ausgang des Digital-Analog-Converters DACx. Auch der Frequenz-Generator hat ein Puffer-Register BFx und der DAC ein Puffer-Register BAx). Der Motor beginnt, aus Position A in die Position B zu laufen. Die Feedback Impulse des Drehgebers schalten den Zähler weiter, je nach Drehrichtung in Up (CW) oder DOWN (CCW) Richtung. Hat der Zähler CNTRx den im Positions-Vergleich- Register PCx gespeicherten Wert erreicht, so wird über den Komparator COMPx ein Impuls erzeugt, der das Run-Latch RLx auf AUS zurücksetzt (x = Motor Nummer).As shown in FIG. 3, each step or servo motor for position control has a loadable up / down counter CNTRx (x = motor number), a position buffer register PBx and a position comparison register PCx as well as a run latch RLx that can be set both by the program and by the hardware. If the run latch RLx is set, the frequency generator FGx is enabled for a stepper motor and the output of the digital-to-analog converter DACx for a servomotor. The frequency generator also has a buffer register BFx and the DAC has a buffer register BAx). The engine starts to move from position A to position B. The feedback pulses from the encoder switch the counter on, depending on the direction of rotation in the Up (CW) or DOWN (CCW) direction. If the counter CNTRx has reached the value stored in the position comparison register PCx, a pulse is generated via the comparator COMPx, which resets the run latch RLx to OFF (x = motor number).

Die Entfernung von A nach B wird in Abhängigkeit der Krümmungsänderung der Bahn vom Programm festgelegt, wobei der Vorschub beispielsweise über eine Spindel im Bereich von 0,001 mm, 0,01 mm, 0,1 mm oder 1 mm etc sein kann. Die Motor-Frequenzen, bzw. DAC-Werte werden aus der Steigung der Kurve ermittelt. Während des Laufes von A nach B werden für alle am Laufe beteiligten Motoren die Daten für den nächsten Schritt von B nach C übertragen.The distance from A to B is dependent on the change in curvature Path determined by the program, the feed, for example, over a Spindle can be in the range of 0.001 mm, 0.01 mm, 0.1 mm or 1 mm etc. The Motor frequencies, or DAC values, are derived from the slope of the curve determined. During the run from A to B for everyone involved in the run Motors transfer the data for the next step from B to C.

Die Erfindung ergänzt nun die Steuerung gemäß Fig. 4 mit einem Auto-Restart- Register ARR in dem per Software für jeden Motor ein Mx_RESTART-ENABLE Bit gesetzt wird, sofern dieser Motor Mx am Restart beteiligt werden soll. Gleichzeitig wird ein RESTART-PENDlNG_FLAG gesetzt, das besagt, daß der Restart noch nicht ausgeführt wurde. Die Ausgänge +Mx_RESTART_ENABLE des ARR Registers werden nun mit den +Mx_RUN Leitungen mit Oder-Schaltern -OI verbunden, (-OI = minus OR Invert bedeutet, daß der aktive Eingangspegel des Oder-Schalters MINUS ist und daß bei erfüllter Oder-Bedingung der Ausgang invertiert wird auf PLUS). Zum leichteren Verständnis werden Pegel, die aktiv MINUS sind, mit einem Keil gekennzeichnet. Ist also ein Signal +Mx_RESTART_ENABLE aktiv (PLUS), so bestimmt alleine das zugehörige Signal +Mx_RUN den Ausgang des -OI-Schalters. Das inaktive Signal +Mx_RUN trägt also zur nachfolgenden UND-Bedingung des Schalters +A (plus AND) bei. Ist dagegen ein Signal +Mx_RESTART_ENABLE inaktiv (MINUS), so ist der -Ol-Schalters immer erfüllt, d. h der Ausgang ist PLUS und das zugehörige Signal +Mx_RUN trägt nichts zur Und-Bedingung des nachfolgenden UND-Schalters +A bei. Sind nun alle Signale +Mx_RUN inaktiv (MINUS) geworden, so ist der Undschalter +A erfüllt, und mit der positiven Schaltflanke des Ausganges von +A wird nun der Restart eingeleitet. The invention now supplements the control according to FIG. 4 with an auto restart register ARR in which an Mx_RESTART-ENABLE bit is set by software for each engine, provided that this engine Mx is to be involved in the restart. At the same time, a RESTART-PENDlNG_FLAG is set, which means that the restart has not yet been carried out. The + Mx_RESTART_ENABLE outputs of the ARR register are now connected to the + Mx_RUN lines with OR switches -OI, (-OI = minus OR Invert means that the active input level of the OR switch is MINUS and that if the OR condition is met, the output is inverted to PLUS). For easier understanding, levels that are active MINUS are marked with a wedge. If a signal + Mx_RESTART_ENABLE is active (PLUS), the associated signal + Mx_RUN alone determines the output of the -OI switch. The inactive signal + Mx_RUN thus contributes to the subsequent AND condition of the switch + A (plus AND). If, on the other hand, a signal + Mx_RESTART_ENABLE is inactive (MINUS), the -Ol switch is always fulfilled, i. h the output is PLUS and the associated signal + Mx_RUN does nothing to contribute to the AND condition of the subsequent AND switch + A. If all signals + Mx_RUN have become inactive (MINUS), the AND switch + A is fulfilled and the restart is initiated with the positive switching edge of the output of + A.

Der Ausgang des Und-Schalters +A ist mit dem Eingang D0 eines 6 Bit-Daten Register DREG verbunden. Bei aktivem Eingang an D0 wird der zugehörige Ausgang Q0 mit der nächsten positiven Flanke des Taktgebers CLOCK aktiv (PLUS). Bei der nächsten positiven Flanke des Taktgebers wird Q1 aktiv, da der Eingang D1 mit dem Ausgang Q0 verbunden ist. Wie aus Fig. 4 und Fig. 5 ersichtlich, werden so sequentiell mit jedem weiteren Taktimpuls die Ausgänge Q1 bis Q5 aktiv. Der Ausgang Q0 ist außerdem mit einem UND-Schalter +AI verbunden und der Ausgang Q1 über den Inverter N ebenfalls mit den UND-Schalter +AI. Somit läßt sich, wie im Timing Diagramm der Fig. 5 ersichtlich, aus der Sequenz von D0 und D1 ein Impuls ausschneiden mit dem Namen AUTO_XFER_PULSE. Das gleiche Verfahren gilt für das Signal AUTO_RESTART_PULSE und das Signal RESET_AUTO_ RESTART_REG. The output of the AND switch + A is connected to the input D0 of a 6 bit data register DREG. If the input at D0 is active, the associated output Q0 becomes active with the next positive edge of the clock generator CLOCK (PLUS). On the next positive edge of the clock generator, Q1 becomes active because input D1 is connected to output Q0. As can be seen from FIG. 4 and FIG. 5, the outputs Q1 to Q5 become active sequentially with each additional clock pulse. The output Q0 is also connected to an AND switch + AI and the output Q1 via the inverter N also to the AND switch + AI. Thus, as can be seen in the timing diagram of FIG. 5, a pulse with the name AUTO_XFER_PULSE can be cut out of the sequence of D0 and D1. The same procedure applies to the AUTO_RESTART_PULSE signal and the RESET_AUTO_ RESTART_REG signal.

Software-BeschreibungSoftware description

Das nun folgende Beispiel zeigt in der Notation der Programmiersprache "C", eine zweidimensionale Bahnsteuerung. Die Koordinaten und Frequenzen (bzw. DAC Werte) sowie die momentanen Drehrichtungen sind vom Computer vorausberechnet, um einen schnellen tabellengetriebenen Programmablauf zu ermöglichen. Die Tabelle. xy[n] wird über den Index n adressiert.The following example shows in the notation of the programming language "C", a two-dimensional path control. The coordinates and frequencies (or DAC values) and the current directions of rotation are from the computer calculated in advance to ensure a fast table-driven program sequence enable. The table. xy [n] is addressed via index n.

Fig. 1 zeigt den Programmablauf der Funktion MakeCurve(xy, mcb, M1, M2). Vor jedem Schritt wird durch Aufruf der Funktion Wait4AutoRestartComplete() (zu lesen: wait for auto restart complete) geprüft, ob der letzte automatische Restart ausgeführt wurde, wenn nicht, wird gewartet bis das Hardware-Signal RESTART_PENDING_FLAG auf AUS geht. Danach werden die Daten in ein Array der Struktur mcb (Motor Control Block) übertragen. Der Index in das Array mcb[Mx] entspricht dem Motor-Index Mx. Es folgen nun 3 Funktionen, die die Daten aus dem Motor Control Block in den PC-externen Adapter übertragen. Bei diesen Funktionen WriteNextPos(mcb, M1 ,M2), WriteFreqReg(mcb,M1 ,M2) und der Function WriteCtrlReg(mcb, M1, M2) wird die Adresse (Pointer) des Motor- ControI-Blocks sowie der Motor-Index M1 und M2 übergeben. Nun wird geprüft, ob Fehler vorliegen mit der Funktion Test4Errors() (zu lesen test for errors) Sollte de Return Code diese Funktion ungleich Null sein, so wird die Schleife verlassen. Anschließend wird über den Return Code der Funktion Test4Run(M1, M2) geprüft, ob das Run-Latch eines Motors noch aktiv ist. Wenn ja, wird über die Funktion AutoRestartSet(M1 ,M2) der automatische Restart gesetzt. Wenn nein, wird per Programm über die Funktion XferAll() (zu lesen: transfer all) der Datentransfer aus den Puffer-Registern in die Arbeits-Register durchgeführt und anschließend ebenfalls per Programm über die Funktion StartMotors(M1 ,M2) der Restart durchgeführt. Fig. 1 shows the program flow of the function MakeCurve (xy, mcb, M1, M2). Before each step, the function Wait4AutoRestartComplete () (read: wait for auto restart complete) is used to check whether the last automatic restart has been carried out, if not, the system waits until the hardware signal RESTART_PENDING_FLAG goes OFF. The data is then transferred to an array with the structure mcb (Motor Control Block). The index in the array mcb [Mx] corresponds to the motor index Mx. There are now 3 functions that transfer the data from the Motor Control Block to the PC-external adapter. With these functions WriteNextPos (mcb, M1, M2), WriteFreqReg (mcb, M1, M2) and the function WriteCtrlReg (mcb, M1, M2) the address (pointer) of the motor control block as well as the motor index M1 and M2 passed. Now it is checked whether there are errors with the function Test4Errors () (read test for errors). If the return code is not equal to zero, the loop is exited. The return code of the Test4Run (M1, M2) function is then used to check whether the run-latch of a motor is still active. If so, the automatic restart is set via the AutoRestartSet (M1, M2) function. If not, the program XferAll () (read: transfer all) is used to transfer the data from the buffer registers to the working registers and then to restart the program using the StartMotors (M1, M2) function.

In der Regel werden zum Zeitpunkt der Abfrage Test4Run(M1 ,M2) die Motoren noch laufen und deren Run-Latche RLx noch aktiv sein. Es kann jedoch bei sehr kurzen Schritten oder umfangreicher anderer Programm-Abläufe vorkommen, daß die Run-Latche RLx bereits aus-gegangen sind; für diesen Fall muß der alternative Pfad (XferAll() und StartMotors( . . )) vorhanden sein.As a rule, the motors are at the time of the Test4Run (M1, M2) query are still running and their Run-Latche RLx are still active. However, it can be very short steps or extensive other program sequences occur, that the run latche RLx have already run out; in this case the alternative path (XferAll () and StartMotors (..)) exist.

Claims (7)

1. Elektronische Schaltung zum automatischen Restart von Schritt- und Servomotoren, deren momentaner Bewegungsablauf zum Zeitpunkt des Einleitens des nächsten Bewegungs-ablaufes noch nicht abgeschlossen ist. Sobald die Motoren die zuletzt programmierte Position erreicht haben und die Run-Latche RLx (x = Motor Nummer) auf AUS gegangen sind, werden dann über eine elektronische Schaltung gemäß Fig. 3 und fig. 4 die neuen Daten für die nächste Position, die Schrittfrequenz (bei Schrittmotoren), die Analog-Spannung (bei Servomotoren) und die Drehrichtung CW/CCW (clockwise/ counterclockwise) von Puffer-Register in Arbeits-Register übertragen; und zwar die nächsten Positionen von Positions-Puffern PBx in die Positions-Vergleich- Register PCx, die Drehrichtungen von Kontroll-Puffern CBx in Kontroll-Register CRx, für Schrittmotoren die Frequenzdaten von Frequenz-Puffern FBx in Frequenz-Generatoren FGx, und für Servomotoren die Analog-Spannung von Analog Puffern ABx in die Digital-Analog-Converter DACx. Danach werden die Run-Latche RLx wieder gesetzt, um den Weiterlauf der Motoren zu ermöglichen.1. Electronic circuit for the automatic restart of stepper and servo motors, the current sequence of movements of which has not yet been completed when the next sequence of movements is initiated. As soon as the motors have reached the last programmed position and the Run-Latche RLx (x = motor number) have turned OFF, an electronic circuit according to FIG. 3 and fig. 4 Transfer the new data for the next position, the step frequency (for stepper motors), the analog voltage (for servomotors) and the direction of rotation CW / CCW (clockwise / counterclockwise) from buffer registers into working registers; namely the next positions of position buffers PBx in the position comparison register PCx, the directions of rotation of control buffers CBx in control register CRx, for stepper motors the frequency data of frequency buffers FBx in frequency generators FGx, and for servomotors the analog voltage from analog buffers ABx to the digital-analog converter DACx. Then the Run-Latche RLx are set again to enable the motors to continue running. 2. Anordnung nach Anspruch 1 dadurch gekennzeichnet, daß für die Motoren, für die der Auto-Restart vorgesehen ist, jeweils ein Enable Bit Mx_RESTART_ENABLE in das Auto-Restart-Register ARR geschrieben wird und gleichzeitig ein weiteres Bit AUTO_RESTART_PENDING_FLAG gesetzt wird. Dieses Flag kann auch durch eine logische ODER-Verknüpfung aller Mx_RESTART_ENABLE Leitungen gebildet werden. d. h. wenn mindestens eine dieser Leitungen aktiv ist, dann wird auch der Ausgang des ODER-Schalters aktiv und kann somit als AUTO_RESTART_PENDING_FLAG benutzt werden.2. Arrangement according to claim 1, characterized in that for the Motors for which the auto restart is intended each have an enable bit Mx_RESTART_ENABLE is written into the auto restart register ARR and at the same time set another bit AUTO_RESTART_PENDING_FLAG becomes. This flag can also be created by a logical OR combination of all Mx_RESTART_ENABLE lines are formed. d. H. if at least one of these lines is active, then the output of the OR switch active and can therefore be used as AUTO_RESTART_PENDING_FLAG. 3. Anordnung nach Anspruch 1 dadurch gekennzeichnet, daß die Leitungen Mx_RESTART_ENABLE zusammen mit den Leitungen +Mx_RUN mit den Eingängen von x 2-Weg-Oder-Schaltern verbunden werden und die Ausgänge dieser Oder-Schalter zusammen mit dem RESTART_PENDING_FLAG einen x+1 Weg-UND-Schalter steuern, so daß das Ausgangssignal des UND- Schalters, genannt ALL_RUN_OFF erst dann aktiv wird, wenn alle Run-Latche RLx zurückgesetzt sind.3. Arrangement according to claim 1, characterized in that the lines Mx_RESTART_ENABLE together with the lines + Mx_RUN with the Inputs from x 2-way OR switches are connected and the outputs this OR switch together with the RESTART_PENDING_FLAG one Control x + 1 way AND switch so that the output signal of the AND Switch, called ALL_RUN_OFF, only becomes active when all run latches RLx are reset. 4. Anordnung nach Anspruch 1 dadurch gekennzeichnet, daß das Signal ALL_RUN_OFF mit dem Eingang D0 eines 6-Bit-Daten-Registers DREG verbunden wird und der Ausgang Q0 mit dem Eingang D1, sowie Q1 mit D2, Q2 mit D3, Q3 mit D4 und Q4 mid D5 verbunden wird, so daß mit dem CLOCK- Signal (positive Flanke), das dem aktiven Signal ALL_RUN_OFF folgt, der Ausgang Q0 aktiv wird und mit den nachfolgenden CLOCK-Signalen die Ausgänge Q1, Q2, Q3, Q4 und Q5 sequentiell aktiv werden, so daß dann über einen 2fach-UND-Schalter der eine Eingang mit Q0 und der andere mit dem invertierten Q1 verbunden wird und am Ausgang ein Signal AUTO_XFER_PULSE erzeugt wird. Über eine gleiche Anordnung wird mittels Ausgang Q2 und Q3 das Signal AUTO_RESTART_PULSE und mittels Ausgang Q4 und Q5 das Signal RESET_ARR_REG_PULSE erzeugt. 4. Arrangement according to claim 1, characterized in that the signal ALL_RUN_OFF with input D0 of a 6-bit data register DREG is connected and the output Q0 to the input D1, and Q1 to D2, Q2 with D3, Q3 with D4 and Q4 mid D5, so that with the CLOCK- Signal (positive edge) that follows the active signal ALL_RUN_OFF that Output Q0 becomes active and with the subsequent CLOCK signals Outputs Q1, Q2, Q3, Q4 and Q5 become active sequentially, so that then a double AND switch, one input with Q0 and the other with the inverted Q1 and a signal at the output AUTO_XFER_PULSE is generated. The same arrangement is used Output Q2 and Q3 the signal AUTO_RESTART_PULSE and via output Q4 and Q5 generate the RESET_ARR_REG_PULSE signal.   5. Anordnung nach Anspruch 1 dadurch gekennzeichnet, daß das Signal AUTO_XFER_PULSE mit der UND-Bedingung Mx_RESTART_ENABLE Daten von den Puffer-Register in die Arbeits-Register überträgt, und das zeitlich nachfolgende Signal AUTO_RESTART-PULSE ebenfalls in einer UND- Bedingung mit dem Signal Mx_RESTART_ENABLE das Run-Latche RLx des Motors x wieder neu aktiviert und daß das nachfolgende Signal RESET_ARR_REG_PULSE das Auto-Restart-Register ARR löscht um danach das AAR Register per Programm wieder neu laden zu können.5. Arrangement according to claim 1, characterized in that the signal AUTO_XFER_PULSE with the AND condition Mx_RESTART_ENABLE data transfers from the buffer registers into the working registers, in time subsequent signal AUTO_RESTART-PULSE also in an AND Condition with the signal Mx_RESTART_ENABLE the run latche RLx of the Motors x reactivated again and that the subsequent signal RESET_ARR_REG_PULSE clears the auto restart register ARR afterwards to be able to reload the AAR register by program. 6. Anordnung nach Anspruch 1 dadurch gekennzeichnet, daß die Leitung AUTO_RESTART_PENDING_FLAG vom Programm über eine Polling-Funktion überwacht wird, die erst dann neue Daten in die Puffer-Register lädt, wenn dieses Flag vom dem Signal RESET_ARR_REG_PULSE gelöscht wurde.6. Arrangement according to claim 1, characterized in that the line AUTO_RESTART_PENDING_FLAG from the program via a polling function is monitored, which only loads new data into the buffer register when this flag was cleared by the RESET_ARR_REG_PULSE signal. 7. Anordnung nach Anspruch 1 dadurch gekennzeichnet, daß das Programm für den Fall, daß bei der Abfrage Test4Run(M1 ,M2, . . Mx) die Motoren bereits ihre nächste Position erreicht haben und die Run-Latche RLx bereits inaktiv sind, eine Verzweigung im Programm den Restart über die Funktion XferAll() und die Funktion StartMotors(M1 ,M2,Mx) übernimmt.7. Arrangement according to claim 1, characterized in that the Program for the case that the motors when querying Test4Run (M1, M2, ... Mx) have already reached their next position and the Run-Latche RLx already are inactive, a branch in the program the restart via the function XferAll () and the function StartMotors (M1, M2, Mx) takes over.
DE1995132502 1995-09-02 1995-09-02 Electronic circuit for automatic restart of stepper- and servo-motors Withdrawn DE19532502A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE1995132502 DE19532502A1 (en) 1995-09-02 1995-09-02 Electronic circuit for automatic restart of stepper- and servo-motors

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1995132502 DE19532502A1 (en) 1995-09-02 1995-09-02 Electronic circuit for automatic restart of stepper- and servo-motors

Publications (1)

Publication Number Publication Date
DE19532502A1 true DE19532502A1 (en) 1996-03-14

Family

ID=7771152

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1995132502 Withdrawn DE19532502A1 (en) 1995-09-02 1995-09-02 Electronic circuit for automatic restart of stepper- and servo-motors

Country Status (1)

Country Link
DE (1) DE19532502A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8823311B2 (en) 2011-09-30 2014-09-02 Infineon Technologies Ag System and method for controlling a step motor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8823311B2 (en) 2011-09-30 2014-09-02 Infineon Technologies Ag System and method for controlling a step motor

Similar Documents

Publication Publication Date Title
US4310878A (en) Digital feedback control system
EP0046180B1 (en) Positioning control system with a digital incremental measuring device
DE69219335T2 (en) CONTROL SYSTEM FOR MACHINE TOOL
DE2713400C2 (en)
DE3134091A1 (en) MICROPROCESSOR-AIDED PROCESS CONTROL
DE2754945A1 (en) DIGITAL FUNCTION TOTAL FOR ABSOLUTE ANGLE POSITIONS
DE2716775C2 (en)
DE68927001T2 (en) PROCESS FOR CORRECTING A PROCESSING PROGRAM
DE3886748T2 (en) CRUISE CONTROL ARRANGEMENT.
DE3635305C2 (en)
DE2847369A1 (en) DEVICE AND METHOD FOR SCANNING AN ELECTRON BEAM
DE2713869A1 (en) POSITIONING SYSTEM IN A NUMERICALLY CONTROLLED DEVICE
EP0282877B1 (en) Method and apparatus for controlling the error correction in a data transmission system of data read from dynamical peripheral storage devices, in particular disk storage devices of a data-processing system
DE3750345T2 (en) Numerical control device.
DE112016007167B4 (en) Numerical control device
DE4005042A1 (en) ARCHITECTURE OF A HIGH-SPEED DIGITAL MOTION CONTROL
DE102020130130A1 (en) ENGINE CONTROL DEVICE, NUMERICAL CONTROL DEVICE, ROBOT CONTROL AND INTEGRATED CONTROL SYSTEM
DE19532502A1 (en) Electronic circuit for automatic restart of stepper- and servo-motors
DE2840033A1 (en) METHOD AND DEVICE FOR CONTROLLING MOTORS
DE19883000B4 (en) Servo system controller
DE19651427A1 (en) Synchronous control technically linked drive systems e.g. for printing machines and machine tools
DE2244941A1 (en) PULSE INTERPOLATION SYSTEM
EP0071661B1 (en) Control device for a chain printer with a plurality of print hammers
DE2139053A1 (en) Numerical machine tool control
EP1311934A2 (en) Method for automatically generating several electrical pulses using numeric default values, in particular for simulating an incremental encoder

Legal Events

Date Code Title Description
OAV Applicant agreed to the publication of the unexamined application as to paragraph 31 lit. 2 z1
8122 Nonbinding interest in granting licenses declared
8139 Disposal/non-payment of the annual fee