WO1998035436A1 - Verfahren und vorrichtung zur schrittmotoransteuerung - Google Patents

Verfahren und vorrichtung zur schrittmotoransteuerung Download PDF

Info

Publication number
WO1998035436A1
WO1998035436A1 PCT/DE1998/000053 DE9800053W WO9835436A1 WO 1998035436 A1 WO1998035436 A1 WO 1998035436A1 DE 9800053 W DE9800053 W DE 9800053W WO 9835436 A1 WO9835436 A1 WO 9835436A1
Authority
WO
WIPO (PCT)
Prior art keywords
motor
digital
setpoints
current
current setpoints
Prior art date
Application number
PCT/DE1998/000053
Other languages
English (en)
French (fr)
Inventor
Robert Mainberger
Original Assignee
Leica Microsystems Wetzlar Gmbh
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 Leica Microsystems Wetzlar Gmbh filed Critical Leica Microsystems Wetzlar Gmbh
Priority to DE59808273T priority Critical patent/DE59808273D1/de
Priority to KR10-1999-7006083A priority patent/KR100404680B1/ko
Priority to EP98904015A priority patent/EP0958651B1/de
Priority to JP53350898A priority patent/JP2001510678A/ja
Publication of WO1998035436A1 publication Critical patent/WO1998035436A1/de
Priority to US09/369,268 priority patent/US6194863B1/en

Links

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P8/00Arrangements for controlling dynamo-electric motors rotating step by step
    • H02P8/22Control of step size; Intermediate stepping, e.g. microstepping

Definitions

  • the invention relates to a method and a device for carrying out the method for controlling a stepping motor according to the preamble of the independent claims.
  • Stepper motors are used today in a wide variety of applications for positioning in technical devices. They allow step-by-step positioning without feedback on the position. If high demands are placed on the positioning accuracy, it is usually necessary to operate the stepper motors in microstep mode. The user places high demands on the concentricity and low vibration of the motor, even at high traversing speeds, which are necessary to quickly reach further positions.
  • stepper motors in micro-stepping is, for example, in
  • Micro step operation means the supply of the stepping motor with sinusoidal stepped motor currents instead of rectangular block motor currents in full and half step operation.
  • the values of the stepped motor currents are available as current setpoints in a saved sine table.
  • the individual, successive table values are read out one after the other by the motor control and the motor currents are generated from them.
  • Each table value corresponds to a time-limited motor current value of a certain level.
  • a new motor current value per phase causes the motor to go one micro step further.
  • the sine table is structured in such a way that a fixed step size is always given by reading out the successive table positions.
  • the number of full steps of a stepper motor depends on the design. An entire sine period of the motor current corresponds to a rotation of the stepper motor by four full steps. Therefore, the number of table positions for a full sine period corresponds to the number of micro-steps that make up four full steps. The number of table positions per sine period thus determines the step size of the microsteps and thus the position resolution of the stepper motor.
  • the speed of rotation of the motor is adjusted by increasing or decreasing the step frequency, i.e. by changing the time intervals between the steps.
  • the step frequency required for a desired rotational speed of the stepper motor is calculated from the product "number of full steps of the stepper motor times the number of microsteps times the number of desired revolutions per second".
  • the sine table which contains the digital current setpoints for the motor current
  • a memory for example an EPROM.
  • a CPU calculates the microstep sequence required to reach the target position, each with constant step sizes in the form of a sequence of sinusoidally stepped motor current values and the required step frequency for the desired rotational speed.
  • the digital current setpoints required for this are read out from successive table positions in the sine table with the step frequency calculated by the CPU.
  • the read digital current setpoints for the motor currents are converted by a D / A converter to analog current setpoints, which appear at the output of the D / A converter as stepped analog signals with an almost sinusoidal basic form.
  • the motor current (actual value) is generated from the output signals of the D / A converter in a final stage as a sequence of stepped motor current values. These generated motor current values have a step-like gradation that corresponds approximately to a sine curve in accordance with the digital current setpoint values read from the sine table.
  • the corresponding phase-shifted motor current value is generated for each of the phases of the stepping motor for each microstep.
  • the stepper motor carries out a micro step for each new motor current value per phase.
  • the number of sinusoidally stepped motor current values calculated up to a target position corresponds to the number of microsteps required to reach the motor target position.
  • the target position reached is at the end of a microstep.
  • the possible resolution of the target position is given by the size of the microsteps and thus by the number of table spaces in the sine table. If positions between two microsteps are to be approached, this is not possible with the given sine table.
  • An increase in the resolution of the target position can only be achieved by a finely divided sine table and thus by a higher number of smaller microsteps. This requires the CPU to calculate a longer sequence of steps. For different position resolutions, differently divided sine tables must therefore be stored in memories. An increase in the speed of rotation of the stepper motor is only possible through an even higher step frequency.
  • a high CPU capacity is also required to calculate the sequences of motor current values required to generate acceleration or deceleration profiles.
  • a certain number of acceleration profiles could be calculated before operation and stored in a memory. Because of the limited storage space, this limits the traversing operation to this small number of stored acceleration profiles.
  • the method according to the invention does not work with a variable step frequency and a fixed step size, but with a constant step rate. frequency but variable step size.
  • at least three arbitrarily selected current setpoints are read out from a sine table stored in an EPROM, which contains the digital current setpoints for the motor current, with a constantly constant sampling frequency per sine period in the sine table. From these current setpoints with any value jumps, a smooth, sinusoidal course of the current setpoints for the motor current is reconstructed by low-pass filtering and the actually sinusoidal motor current is generated therefrom.
  • the successive digital current setpoints are not read from the sine table, but the digital current setpoints to be read out are selected in accordance with the desired driving behavior of the motor. Since successive table positions determine the width of a microstep, each table position in the sine table is also assigned a specific motor position. The step size is therefore varied by selecting the table positions that are read. Because the selected digital current setpoints are all read out with a constantly constant sampling frequency, that is, at the same time intervals, this variation of the step size also simultaneously varies the rotational speed of the stepper motor. With large step sizes, the constant scanning frequency inevitably results in a higher rotational speed than with small step sizes.
  • Different constant speeds of rotation of the stepper motor are generated by reading out every nth value from the sine table with a constant sampling frequency, where n is an integer.
  • the number n thus represents a temporal compression factor for the read out sine table and thus the one-piece size for the frequencies of the generated sinusoidal motor currents.
  • Accelerations and decelerations can be realized by gradually increasing or decreasing the step size in the sine table.
  • selected digital current setpoints are therefore read from the sine table with a constant sampling time, the distances between the read table positions of the sine table increasing continuously.
  • selected digital current setpoints are read from the sine table with a constant sampling time, the distances between the table positions read from the sine table decreasing continuously.
  • the required digital current setpoints for the sinusoidal signal could also be calculated continuously by the CPU instead of reading them from the EPROM. According to the task, a stepper motor controller with a low CPU capacity is specified here.
  • a CPU is used to control the position and rotational speed of the stepper motor. It calculates a sequence of intermediate positions for a desired target position of the stepper motor, which are to be approached one after the other in order to reach the target position.
  • the step size can be varied as required. It is given by the distances between the table positions to be read in the sine table. Because of the constant sampling frequency, the stepper motor rotates at high speed for large steps and at low speed for small steps.
  • the CPU determines the digital current setpoint to be read from the sine table for each phase of the motor. The CPU then reads out the associated digital current setpoints from the sinus table in succession at a constant sampling frequency in accordance with the intermediate position sequence calculated by it.
  • the digital current setpoints read out by the CPU are now converted into analog values and a low-pass filter is used to reconstruct a smooth sinusoidal curve of the current setpoints from which the motor currents for exciting the phases of the stepper motor are derived.
  • a low-pass filter is used to reconstruct a smooth sinusoidal curve of the current setpoints from which the motor currents for exciting the phases of the stepper motor are derived.
  • the digital current setpoints read from the sine table are fed to a D / A converter.
  • Stepped analog current setpoints appear at the output of the D / A converter.
  • Their basic form is approximately sinusoidal for small rotational speeds, i.e. for small increments.
  • the stepped analog current setpoints have large amplitude jumps and are not similar to a sine. All stepped current setpoints appear at the constant sampling frequency. These can be reconstructed with only one analog low-pass filter that is tuned to the sampling frequency under certain conditions given here for a smooth sine shape.
  • sampling frequency Since the sampling frequency is constant, the sampling theorem applies (see also common mathematics textbooks or also "Small Electric Motors" by H. Moczala et al., Expert-Verlag, 1993, pages 278-281)
  • Sampling with a constant sampling frequency can be completely reconstructed from the sampled values if the sampling frequency has at least twice the value of the highest frequency to be reconstructed.
  • the sampling frequency must be chosen to be more than twice as large as the largest sine frequency to be generated, which corresponds to the largest adjustable rotational speed of the stepper motor in full step mode. This is the sampling frequency at which the motor travels at maximum speed with only four samples per period of the sine table. All other, that is to say lower, travel speeds are then also possible with the same low sampling frequency, namely by sampling more than four setpoints per sine period.
  • a suitable low-pass filter is used to reconstruct a sinusoidal profile of the current setpoints for controlling the stepper motor.
  • This low-pass filter reconstructs a smooth sine curve from the stepped analog current setpoints.
  • the low-pass filter must filter out all frequencies that do not correspond to the sine frequency to be generated. To do this, the filter cut-off frequency of the low-pass filter must be selected to be less than half the sampling frequency of the CPU. In order to simplify the low-pass filter, it is possible to work with a higher constant sampling frequency than the lowest possible.
  • the digital current setpoints read from the sine table are fed to a pulse width modulator instead of to a D / A converter.
  • This generates based digital current soli value from the sine table at its output a high-frequency pulse train with constant pulse width modulation frequency, hereinafter referred to as PWM frequency.
  • PWM frequency constant pulse width modulation frequency
  • the high-frequency pulse sequences generated by the pulse width modulator are fed to the input of a low-pass filter.
  • the constant PWM frequency of the pulse sequences generated by the pulse width modulator must be greater than the sampling frequency of the CPU, but at least the same size, and thus more than twice the limit frequency of the low-pass filter.
  • the low-pass filter forms the analog mean for each incoming high-frequency pulse sequence and filters out both the PWM frequency and the sampling frequency.
  • the low-pass filter thus directly reconstructs a smooth analog sine signal for the current setpoints in accordance with the current setpoints read out by the CPU. A smooth sinusoidal signal of the current setpoints therefore appears at the output of the low-pass filter, which is led to the input of an output stage.
  • the current setpoints read from the sine table are converted in one of the ways described, i.e. either by a combination of a D / A converter with a subsequent low-pass filter or by a combination of a pulse width modulator with a subsequent low-pass filter. actually sinusoidal curves of the current setpoints generated and led to a power amplifier.
  • the outputs of the output stages deliver the phase-shifted, sinusoidal motor currents.
  • a stepper motor moves to its target position in small jerky steps in accordance with the sinusoidally stepped motor current values.
  • operation with known controls leads to disturbingly loud operating noises of the motor and disturbing vibrations.
  • a stepper motor operates with a control according to the method according to the invention due to the actually sinusoidal Motor currents without jumps and therefore calm and low-vibration to its target position.
  • the method is suitable for positioning operation for all permanently magnetically excited stepper motors, including hybrid stepper motors and linear stepper drives, as well as for all motors with at least two coils and phase-shifted motor currents, such as synchronous motors. It is also possible to apply the method to multi-phase stepper motors, for example by reading the required digital current setpoints with the required phase shift for each phase from the sine table and using them to generate the phase-shifted motor currents required for the different phases of the motor. With a powerful CPU, it is also possible to continuously calculate the digital current setpoints in the sine table instead of taking them from a sine table.
  • the method according to the invention always works with the same low sampling frequency for all speeds and all fine positioning. Therefore, with the new method at a constant sampling frequency, the position resolution can be increased as desired by specifying a single sine table that is divided as finely as possible, even with the maximum speed remaining the same. Since according to the invention a single finely divided sine table for setting all
  • the new process is characterized by a very large number of possible speeds and acceleration profiles with any position resolution and at the same time optimized concentricity.
  • the new method is thus clearly superior to the previous stepper motor controls, because with these high speeds could only be achieved by reducing the position resolution or by increasing the step frequency with the disadvantages already explained.
  • the size of the constant sampling frequency determines the number of computing operations of the CPU per unit of time and thus influences the required CPU capacity. Since the method according to the invention operates at the same low, constant sampling frequency at all speeds and resolutions, only the same low CPU capacity is always required.
  • Fig. 2 Circuit diagram of a second device according to the invention with digital-analog conversion by a pulse width modulator
  • a sine table is stored in an EPROM 1, which contains the digital current setpoints for the motor current to be generated.
  • the number of table positions determines the possible position resolution of the motor.
  • a CPU 2 reads at least three selected digital current setpoints from the sine table in EPROM 1 with a constant sampling frequency per sine period.
  • the digital current setpoints are read from the sine table with uniform intervals between the table positions to be read from the sine table.
  • the sine table is read out with a large step size. As a result, the frequency of the motor current to be generated will be high and thus the speed of rotation of the stepper motor will be high.
  • the digital current setpoints read by the CPU 2 from the sine table are fed to a D / A converter 3.
  • analog current setpoints which are shown schematically in Fig. 1. In the case shown, they have an approximately sinusoidal course. Since only a few samples are taken per period of the sine, the analog output signals of the D / A converter 3 have very large jumps.
  • the motor current is also generated in the manner already described using the method according to the invention.
  • the CPU 2 reads selected digital current setpoints for the motor current of the second phase of the stepping motor 6 from the EPROM 1.
  • the digital current setpoints are phase-shifted by ninety degrees compared to those for the first phase of the stepper motor 6 from the sine table.
  • the read digital current setpoints are fed to a D / A converter 7, at the output of which there appear stepped, analog current setpoints which are ninety degrees out of phase with those appearing after the D / A converter 3.
  • the output signals of the D / A converter 7 are fed to the input of a low-pass filter 8, at the output of which a completely reconstructed sinusoidal signal appears. This is ninety degrees out of phase with that appearing after the low-pass filter 4.
  • the output signal of the low-pass filter 8 is fed to the input of an output stage 9, which generates the sinusoidal motor current for the second phase of the stepping motor 6.
  • the stepper motor 6 rotates at a constant speed.
  • the end position of the stepper motor 6 is determined by the last two digital current setpoints in the sine table, read out of phase by 90 degrees and read out by the CPU 2, which are still processed into motor currents for the two phases. The motor turns to its end position.
  • phase-shifted motor currents are supplied to the stepper motor 6, that is, as long as no further digital current setpoints are read from the sine table by the CPU 2, it stops. Only by reading out further digital current setpoints, phase-shifted by ninety degrees, are sinusoidal, phase-shifted motor currents again generated and the stepping motor 6 set in motion again.
  • FIG. 2 the D / A converters 3, 7 are replaced by the pulse width modulators 10, 11 compared to FIG. 1.
  • This embodiment is particularly advantageous because the pulse width modulators in many commercially available CPU modules
  • a CPU 2 reads selected digital current setpoints from the sine table stored in an EPROM 1 with a constant sampling frequency. To fulfill the sampling theorem, the condition must also be fulfilled here that at least three selected digital current setpoints are selected from the sine table per sine period.
  • the analog mean value of the pulse train at the output of the pulse width modulator 10 is proportional to the level of its digital input signal. This means, for example, that a digital input signal equal to zero generates a pulse sequence at the output of the pulse width modulator 10, the mean value of which is also zero due to the pulse widths of the individual pulses. For a digital input signal greater than zero, the positive components of the pulses of the output signal broaden such that the mean value of the new one Pulse sequence greater than zero and the level of the input signal is proportional.
  • the positive components of the pulses of the output signal narrow in such a way that the mean value of the new pulse sequence is less than zero and is proportional to the level of the input signal.
  • the pulse sequence appearing at the output of the pulse width modulator 10 in the case of very large step sizes is shown schematically separately in FIG. 2.
  • the high-frequency pulse sequences generated by the pulse width modulator 10 are fed to the input of a low-pass filter 4.
  • the PWM frequency of the pulse sequences generated by the pulse width modulator 10 is at least equal to or greater than the sampling frequency of the CPU 2 and thus more than twice as high as the limit frequency of the low-pass filter 4.
  • the low-pass filter 4 forms the analog mean value for each incoming high-frequency pulse sequence and filters it both the PWM frequency of the pulse width modulator 10 and the sampling frequency of the CPU 2. This filters out all frequencies that do not correspond to the sine signal to be reproduced.
  • the low-pass filter 4 thus delivers a complete smooth sine signal of the current setpoints at its output.
  • the completely reconstructed, smooth sine signal appearing at the output of the low-pass filter 4 is shown separately in FIG. 2.
  • This smooth sinusoidal signal is fed to the input of an output stage 5, which uses it to generate the motor current for the first phase of a stepper motor 6.
  • the motor current for the second phase of the stepping motor 6 is generated accordingly.
  • digital current setpoints selected by the CPU 2 are read out from the EPROM 1 at a constant sampling frequency and passed to the input of the pulse width modulator 11.
  • the digital current setpoints are phase-shifted by 90 degrees compared to those for the first
  • Phase of the stepper motor 6 read from the sine table.
  • the pulse width modulator 11 For each incoming digital current setpoint, the pulse width modulator 11 supplies at its output a high-frequency pulse train with an analog mean value proportional to the input signal.
  • the pulse sequences generated by the pulse width modulator 11 are fed to the input of a low-pass filter 8.
  • The- ses reconstructs, as already described above for the low-pass filter 4, a complete smooth sinusoidal signal of the current setpoints from the incoming pulse sequences.
  • the reconstructed sine signal appearing at the output of the low-pass filter 8 is phase-shifted by 90 degrees compared to the reconstructed sine signal after the low-pass filter 4, which is shown separately in FIG. 2.
  • the sine signal at the output of the low-pass filter 8 is fed to the input of an output stage 9, which generates the sinusoidal motor current generated for the second phase of the stepper motor 6.
  • stepper motor 6 moves as long as its two phases are supplied with sinusoidal, phase-shifted motor currents.
  • the approached end position of the stepper motor 6 is also determined by the last two digital current setpoints read from the sine table, which are converted into motor currents.

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Control Of Stepping Motors (AREA)

Abstract

Die Erfindung beschreibt ein Verfahren und eine Vorrichtung zur Ansteuerung eines Schrittmotors, bei dem von einer CPU aus einer abgespeicherten Sinustabelle pro Sinusperiode mindestens drei ausgewählte digitale Strom-Sollwerte mit einer stets konstanten Abtastzeit ausgelesen werden und mittels eines D/A-Wandlers oder eines Pulsweitenmodulators in diskrete analoge Strom-Sollwerte umgesetzt werden. Aus diesen wird mittels eines Tiefpaßfilters ein glattes Sinussignal für die Strom-Sollwerte rekonstruiert, aus welchem der Motorstrom für die Erregung einer Phase des Schrittmotors abgeleitet wird. Durch Auswahl der Abstände der ausgelesenen Tabellenplätze der Sinustabelle wird die Schrittweite des Motors variiert und damit infolge der stets konstanten Abtastfrequenz die Drehgeschwindigkeit des Motors eingestellt. Das Verfahren und die Vorrichtung eignen sich zur Ansteuerung und zum Positionierbetrieb für alle permanent magnetisch erregten Schrittmotoren und Hybridmotoren sowie für Synchronmotoren.

Description

Verfahren und Vorrichtung zur Schrittmotoransteuerung
Die Erfindung betrifft ein Verfahren und eine Vorrichtung zur Ausübung des Verfahrens zur Ansteuerung eines Schrittmotors gemäß dem Oberbegriff der unab- hängigen Ansprüche.
Schrittmotore werden heute in vielfältigen Anwendungen zur Positionierung in technischen Geräten eingesetzt. Sie erlauben schrittgenaue Positionierung ohne Rückmeldung der Position. Werden hohe Anforderungen an die Positioniergenauigkeit gestellt, ist in der Regel ein Betrieb der Schrittmotore im Mikroschrittbe- trieb erforderlich. Dabei stellt der Anwender auch bei hohen Verfahrgeschwindig- keiten, die zum schnellen Erreichen weiter entfernter Positionen erforderlich sind, hohe Ansprüche an den Rundlauf und an die Vibrationsarmut des Motors.
Der Einsatz von Schrittmotoren im Mikrosch rittbetrieb wird zum Beispiel in
• „Elektrische Kleinmotoren" von H. Moczala et al., Expert-Verlag, 1993, Seiten 261-263, und
• „Schrittmotorantriebe" von F.Prautzsch, Franzis-Verlag, 1988, Seiten 70-76,
beschrieben. Die Grundlagen sollen hier kurz dargelegt werden. Unter Mikrosch rittbetrieb versteht man die Versorgung des Schrittmotors mit sinusförmig abgestuften Motorströmen anstelle von rechteckblockförmigen Motorströmen beim Voll- und Halbschrittbetrieb. Die Werte der gestuften Motorströme liegen als Strom-Sollwerte in einer abgespeicherten Sinustabelle vor. Die einzel- nen, aufeinanderfolgenden Tabellenwerte werden von der Motorsteuerung nacheinander ausgelesen und daraus die Motorströme erzeugt. Jedem Tabellenwert entspricht dabei ein zeitlich begrenzter Motorstromwert einer bestimmten Höhe. Jeweils ein neuer Motorstromwert pro Phase veranlaßt den Motor, um einen Mikroschritt weiter zu fahren. Die Sinustabelle ist so aufgebaut, daß durch Auslesen der aufeinanderfolgenden Tabellenplätze stets eine feste Schrittweite gegeben ist.
Die Anzahl der Vollschritte eines Schrittmotors ist bauartbedingt. Eine ganze Sinusperiode des Motorstroms entspricht einer Drehung des Schrittmotors um vier Vollschritte. Daher entspricht die Anzahl der Tabellenplätze für eine volle Sinusperiode der Anzahl der Mikrosch ritte, die auf vier Vollschritte entfallen. Die Anzahl der Tabellenplätze pro Sinusperiode bestimmt also die Schrittweite der Mikroschritte und damit die Positionsauflösung des Schrittmotors.
Die Drehgeschwindigkeit des Motors wird durch Vergrößern oder Verringern der Schrittfrequenz, also durch Ändern der Zeitabstände zwischen den Schritten, eingestellt. Die für eine gewünschte Drehgeschwindigkeit des Schrittmotors benötigte Schrittfrequenz berechnet sich aus dem Produkt „ Anzahl der Vollschritte des Schrittmotors mal Anzahl der Mikroschritte mal Anzahl der gewünschten Umdrehungen pro Sekunde".
In den bekannten Schrittmotor-Ansteuerungen ist in einem Speicher, beispiels- weise einem EPROM, die Sinustabelle abgelegt, welche die digitalen Strom- Sollwerte für den Motorstrom enthält. Wenn der Schrittmotor eine bestimmte Zielposition anfahren soll, berechnet eine CPU die zum Erreichen der Zielposition erforderliche Mikroschrittfolge mit jeweils konstanten Schrittweiten in Form einer Folge von sinusförmig gestuften Motorstromwerten und für die gewünschte Drehgeschwindigkeit die benötigte Schrittfrequenz. Entsprechend der Länge der von der CPU vorher berechneten Folge von Mikro- schritten werden die dazu erforderlichen digitalen Strom-Sollwerte aus aufeinander folgenden Tabellenplätzen der Sinustabelle mit der von der CPU berechneten Schrittfrequenz ausgelesen.
Die ausgelesenen digitalen Strom-Sollwerte für die Motorströme werden von einem D/A-Wandler zu analogen Strom-Sollwerten gewandelt, die am Ausgang des D/A-Wandlers als gestufte analoge Signale mit annähernd sinusförmiger Grundform erscheinen. Aus den Ausgangssignalen des D/A-Wandlers wird in einer Endstufe der Motorstrom (Ist-Wert) als eine zeitliche Folge gestufter Mo- torstromwerte erzeugt. Diese erzeugten Motorstromwerte besitzen entsprechend den aus der Sinustabelle ausgelesenen digitalen Strom-Sollwerten eine treppen- förmige Abstufung, die näherungsweise einer Sinuskurve entspricht. Auf die gleiche Weise wird für jede der Phasen des Schrittmotors für jeden Mikroschritt der entsprechend phasenverschobene Motorstromwert erzeugt. Zu jedem neuen Motorstromwert pro Phase führt der Schrittmotor einen Mikroschritt aus.
Die bis zu einer Zielposition berechnete Anzahl der sinusförmig gestuften Motorstromwerte entspricht der Anzahl der Mikroschritte, die zum Erreichen der Motor- Zielposition erforderlich sind. Die jeweils erreichte Zielposition liegt am Ende eines Mikroschrittes. Die mögliche Auflösung der Zielposition wird durch die Größe der Mikroschritte und damit durch die Anzahl der Tabellenplätze der Sinustabelle gegeben. Sollen Positionen zwischen zwei Mikroschritten angefahren werden, ist dies mit der gegebenen Sinustabelle nicht möglich. Eine Steigerung der Auflösung der Zielposition ist nur durch eine feiner geteilte Sinustabelle und damit durch eine höhere Zahl von kleineren Mikroschritten zu erreichen. Diese erfor- dert von der CPU die Berechnung einer längeren Schrittfolge. Für verschiedene Positionsauflösungen müssen daher verschieden fein geteilte Sinustabellen in Speichern abgelegt werden. Eine Steigerung der Drehgeschwindigkeit des Schrittmotors ist nur durch eine noch höhere Schrittfrequenz möglich. Auch dies erfordert zusätzlich höhere CPU-Kapazitäten. Nachteilig an den bekannten Steuerungen sind die bei hoher Auflösung und gleichzeitig hoher Drehgeschwindigkeit des Schrittmotors erforderlichen sehr hohen Schrittfrequenzen und die dadurch erforderliche große CPU-Kapazität, weil die CPU die Schrittfrequenzen erzeugt und die Schrittfolgen berechnet. Be- schleunigte Bewegungen erfordern darüber hinaus noch eine stetige Veränderung der Schrittfrequenz. Niedrige Beschleunigungen und hohe Drehgeschwindigkeiten im Mikroschrittbetrieb erfordern bei höheren Auflösungen sehr lange Schrittfolgen und technisch nicht mehr realisierbare, extrem schnelle Änderungen der Zeit zwischen den Schritten. Daher sind hohe Drehgeschwindigkeiten des Schrittmotors nur mit reduzierter Positionier-Auflösung, also zusätzlich gespeicherten kleineren Sinustabellen mit weniger Tabellenwerten, möglich. Eine Reduzierung der Positionier-Auflösung und damit geringere Frequenzen führen jedoch zu störend lautem Motorlauf und Vibrationen. Zur Berechnung der zur Erzeugung von Beschleunigungs- oder Verzögerungsprofilen erforderlichen Fol- gen von Motorstromwerten ist ebenfalls eine hohe CPU-Kapazität erforderlich. Alternativ könnte eine gewisse Anzahl von Beschleunigungsprofilen vor dem Betrieb berechnet und in einem Speicher abgelegt werden. Dies schränkt wegen des beschränkten Speicherplatzes den Verfahrbetrieb auf diese geringe Anzahl gespeicherter Beschleunigungsprofile ein.
Es ist daher Aufgabe der vorliegenden Erfindung, ein Verfahren und eine Vorrichtung zur Ausübung des Verfahrens zur Ansteuerung eines Schrittmotors anzugeben, welche mit niedrigen Frequenzen und geringer CPU-Kapazität bei höchstmöglicher Auflösung und sehr gutem Rundlauf arbeiten. Weiterhin soll eine große Anzahl von Beschleunigungsprofilen und Geschwindigkeiten bei ge- ringer CPU-Kapazität einstellbar sein.
Diese Aufgabe wird erfindungsgemäß durch die im kennzeichnenden Teil der unabhängigen Patentansprüche angegebenen Merkmale gelöst. Weitere vorteilhafte Weiterbildungen der Erfindung sind Gegenstand der Unteransprüche.
Das erfindungsgemäße Verfahren arbeitet nicht mit einer variablen Schrittfre- quenz und einer festen Schrittweite, sondern mit einer stets konstanten Schritt- frequenz aber variabler Schrittweite. Erfindungsgemäß werden aus einer in einem EPROM abgelegten Sinustabelle, welche die digitalen Strom-Sollwerte für den Motorstrom enthält, mit einer stets konstanten Abtastfrequenz pro Sinusperiode der Sinustabelle mindestens drei beliebig ausgewählte Strom-Sollwerte ausgelesen. Aus diesen Strom-Sollwerten mit beliebigen Wertesprüngen wird durch Tiefpaßfilterung ein glatter, sinusförmiger Verlauf der Strom-Sollwerte für den Motorstrom rekonstruiert und daraus der tatsächlich sinusförmige Motorstrom erzeugt.
Gegenüber den bekannten Verfahren werden nicht die aufeinanderfolgenden digitalen Strom-Sollwerte aus der Sinustabelle ausgelesen, sondern die auszulesenden digitalen Strom-Sollwerte werden entsprechend dem gewünschten Fahrverhalten des Motors ausgewählt. Da aufeinanderfolgende Tabellenplätze die Weite eines Mikroschrittes bestimmen, ist jedem Tabellenplatz der Sinustabelle auch eine bestimmte Motorposition zugeordnet. Durch die Auswahl der ausgele- senen Tabellenplätze wird daher die Schrittweite variiert. Weil die ausgewählten digitalen Strom-Sollwerte alle mit einer stets konstanten Abtastfrequenz, also in gleichen zeitlichen Abständen, ausgelesen werden, wird durch diese Variation der Schrittweite auch gleichzeitig die Drehgeschwindigkeit des Schrittmotors variiert. Bei großen Schrittweiten ergibt sich durch die konstante Abtastfrequenz zwangsläufig eine höhere Drehgeschwindigkeit als bei kleinen Schrittweiten.
Verschiedene konstante Drehgeschwindigkeiten des Schrittmotors werden erzeugt, indem mit konstanter Abtastfrequenz jeder n-te Wert aus der Sinustabelle ausgelesen wird, wobei n eine ganze Zahl ist. Für n = 1 wird jeder Strom- Sollwert der Sinustabelle ausgelesen und damit die niedrigste Frequenz des er- zeugten sinusförmigen Motorstroms, also die niedrigste Drehgeschwindigkeit des Schrittmotors, eingestellt. Für n = 2 wird jeder zweite Strom-Sollwert aus der Sinustabelle ausgelesen. Weil bei konstanter Abtastfrequenz die Schrittweite in der Sinustabelle verdoppelt ist, ist damit die Frequenz des erzeugten sinusförmigen Motorstroms auch doppelt so groß wir für den Fall n = 1. Damit ist auch die Drehgeschwindigkeit des Schrittmotors doppelt so groß. Die Zahl n stellt somit einen zeitlichen Stauchungsfaktor für die ausgelesene Sinustabelle und damit die Einsteilgröße für die Frequenzen der erzeugten sinusförmigen Motorströme dar. Je größer die Zahl n und damit die Schrittweite zwischen den ausgelesenen Tabellenplätzen der Sinustabelle ist, umso höher sind die Frequenzen der erzeugten sinusförmigen Motorströme und umso schneller dreht der Schrittmotor. Solange die Schrittweite konstant gesetzt ist, ist auch die Drehgeschwindigkeit des Schrittmotors konstant.
Durch stufenweises Vergrößern oder Verringern der Schrittweite in der Sinustabelle lassen sich Beschleunigungen und Verzögerungen realisieren. Zur Einstel- lung einer beschleunigten Bewegung des Motors werden daher mit einer konstanten Abtastzeit ausgewählte digitale Strom-Sollwerte aus der Sinustabelle ausgelesen, wobei die Abstände zwischen den ausgelesenen Tabellenplätzen der Sinustabelle fortlaufend zunehmen. Zur Einstellung einer verzögerten Bewegung des Motors werden mit einer konstanten Abtastzeit ausgewählte digitale Strom-Sollwerte aus der Sinustabelle ausgelesen, wobei die Abstände zwischen den ausgelesenen Tabellenplätzen der Sinustabelle fortlaufend abnehmen.
Bei ausreichend hoher CPU-Kapazität könnten die erforderlichen digitalen Strom-Sollwerte für das Sinussignal auch laufend von der CPU berechnet werden, anstatt sie aus dem EPROM auszulesen. Aufgabengemäß wird hier aber eine Schrittmotorsteuerung mit niedriger CPU-Kapazität angegeben.
Zur Positions- und Drehgeschwindigkeitssteuerung des Schrittmotors wird eine CPU eingesetzt. Sie berechnet zu einer gewünschten Zielposition des Schrittmotors eine Folge von Zwischenpositionen, die nacheinander zum Erreichen der Zielposition angefahren werden sollen. Die Schrittweite kann dazu beliebig vari- iert werden. Sie ist durch die Abstände zwischen den auszulesenden Tabellenplätzen in der Sinustabelle gegeben. Wegen der konstanten Abtastfrequenz dreht der Schrittmotor bei großen Schritten mit großer Geschwindigkeit, bei kleinen Schritten mit kleiner Geschwindigkeit. Zu jeder berechneten Zwischenposition wird von der CPU pro Phase des Motors der aus der Sinustabelle auszulesende digitale Strom-Sollwert bestimmt. Dann werden von der CPU nacheinander entsprechend der von ihr berechneten Zwischenposition-Folge die zugehörigen digitalen Strom-Sollwerte aus der Sinusta- belle mit konstanter Abtastfrequenz ausgelesen.
Die von der CPU ausgelesenen digitalen Strom-Sollwerte werden nun in analoge Werte umgesetzt und daraus mit einem Tiefpaßfilter ein glatter sinusförmiger Verlauf der Strom-Sollwerte rekonstruiert, aus dem die Motorströme zur Erregung der Phasen des Schrittmotors abgeleitet werden. Dazu sind in den Un- teransprüchen verschiedene mögliche Ausführungsformen aufgeführt.
In einer der möglichenen Ausgestaltungen des Verfahrens werden die aus der Sinustabelle ausgelesenen digitalen Strom-Sollwerte auf einen D/A-Wandler geführt. Am Ausgang des D/A-Wandlers erscheinen gestufte analoge Strom- Sollwerte. Ihre Grundform ist für kleine Drehgeschwindigkeiten, also für kleine Schrittweiten, annähernd sinusförmig. Für hohe Drehgeschwindigkeiten, also für große Schrittweiten, weisen die gestuften analogen Strom-Sollwerte große Amplitudensprünge und keinerlei Ähnlichkeit mit einem Sinus auf. Alle gestuften Strom-Sollwerte erscheinen mit der konstanten Abtastfrequenz. Diese lassen sich mit nur einem und zwar auf die Abtastfrequenz abgestimmten analogen Tiefpaßfilter unter bestimmten, hier gegebenen Voraussetzungen zur glatten Sinusform rekonstruieren.
Da nämlich die Abtastfrequenz konstant ist, gilt das Abtasttheorem (siehe dazu gängige Mathematiklehrbücher oder auch „Elektrische Kleinmotoren" von H. Moczala et al., Expert-Verlag, 1993, Seite 278-281). Danach können zeitlich ver- änderiiche Signale nach einer Abtastung mit einer konstanten Abtastfrequenz aus den abgetasteten Werten vollständig rekonstruiert werden, wenn die Abtastfrequenz mindestens den doppelten Wert der höchsten zu rekonstruierenden Frequenz aufweist. Für das erfindungsgemäße Verfahren bedeutet dies, daß die Abtastfrequenz mehr als doppelt so groß gewählt werden muß wie die größte zu erzeugende Sinusfrequenz, welche der größten einstellbaren Drehgeschwindigkeit des Schrittmotors im Vollschrittbetrieb entspricht. Das ist dann die Abtastfrequenz, bei welcher mit nur vier Abtastungen pro Periode der Sinustabelle der Motor mit maximaler Geschwindigkeit verfährt. Mit derselben niedrigen Abtastfrequenz sind dann auch alle anderen, also kleineren Verfahrgeschwindigkeiten möglich, nämlich durch Abtastung von mehr als vier Sollwerten pro Sinusperiode.
Daraus folgt, daß im Verlauf einer vollständigen Sinusperiode mindestens drei Abtastungen aus der Sinustabelle als Stützpunkte für das Filter erforderlich sind, um die Sinuskurve vollständig zu rekonstruieren. Im Vollschrittbetrieb eines Zwei- Phasen-Schrittmotors, also mit vier Schritten für eine volle Sinusperiode, sind aber bereits vier Stützpunkte vorhanden, weil die Sinustabelle im EPROM an vier Stellen abgetastet wird. Damit ist bereits im Vollschrittbetrieb die Forderung des Abtasttheorems stets erfüllt. Für den Mikroschrittbetrieb mit entsprechend mehr Abtastungen ist die Forderung dann ohnehin erfüllt.
Zur Rekonstruktion eines sinusförmigen Verlaufs der Strom-Sollwerte für die Ansteuerung des Schrittmotors wird ein geeignetes Tiefpaßfilter eingesetzt. Aus den gestuften analogen Strom-Sollwerten rekonstruiert dieses Tiefpaßfilter eine glatte Sinuskurve. Das Tiefpaßfilter muß alle Frequenzen herausfiltern, die nicht der zu erzeugenden Sinusfrequenz entsprechen. Dazu muss die Filter- Grenzfrequenz des Tiefpaßfilters kleiner als die halbe Abtastfrequenz der CPU gewählt werden. Um das Tiefpaßfilter zu vereinfachen, kann mit einer höheren konstanten Abtastfrequenz als der niedrigst möglichen gearbeitet werden. Am Ausgang des Tiefpaßfilters erscheint dann ein glattes Sinussignal der Strom-
Sollwerte, welches auf den Eingang einer Endstufe geführt wird, die daraus den Motorstom erzeugt.
In einer anderen möglichen Ausgestaltung des Verfahrens werden die aus der Sinustabelle ausgelesenen digitalen Strom-Sollwerte anstatt auf einen D/A- Wandler auf einen Pulsweitenmodulator geführt. Dieser erzeugt für jeden einge- henden digitalen Strom-Soliwert aus der Sinustabelle an seinem Ausgang eine hochfrequente Pulsfolge mit konstanter Pulsweitenmodulationsfrequenz, im folgenden kurz PWM-Frequenz genannt. Der analoge Mittelwert dieser erzeugten Pulsfolge ist jeweils der Höhe des Eingangssignals proportional.
Die vom Pulsweitenmodulator erzeugten hochfrequenten Pulsfolgen werden auf den Eingang eines Tiefpaßfilters geführt. Die konstante PWM-Frequenz der vom Pulsweitenmodulator erzeugten Pulsfolgen muß größer als die Abtastfrequenz der CPU, mindestens jedoch gleich groß, sein und damit mehr als doppelt so groß wie die Grenzfrequenz des Tiefpaßfilters. Das Tiefpaßfilter bildet zu jeder eingehenden hochfrequenten Pulsfolge den analogen Mittelwert und filtert dabei sowohl die PWM-Frequenz als auch die Abtastfrequenz heraus. Damit rekonstruiert das Tiefpaßfilter direkt ein glattes analoges Sinussignal für die Strom- Sollwerte entsprechend den von der CPU ausgelesenen Strom-Sollwerten. Am Ausgang des Tiefpaßfilters erscheint daher ein glattes Sinussignal der Strom- Sollwerte, welches auf den Eingang einer Endstufe geführt wird.
Für jede Phase des Schrittmotors werden aus den ausgelesenen Strom- Sollwerten der Sinustabelle auf eine der beschriebenen Weisen, also entweder durch eine Kombination aus D/A-Wandler mit nachfolgendem Tiefpaßfilter oder durch eine Kombination aus Pulsweitenmodulator mit nachfolgendem Tiefpaßfil- ter, die entsprechend phasenverschobenen, tatsächlich sinusförmigen Verläufe der Strom-Sollwerte erzeugt und auf je eine Endstufe geführt. Die Ausgänge der Endstufen liefern die phasenverschobenen, sinusförmigen Motorströme.
Mit vorbekannten Ansteuerungen fährt ein Schrittmotor entsprechend den sinusförmig gestuften Motorstromwerten in kleinen ruckartigen Schritten an seine Sollposition. Bei hohen Verfahrgeschwindigkeiten und dazu verminderter Positionsauflösung, also größeren Schritten, führt ein Betrieb mit vorbekannten AnSteuerungen zu störend lauten Betriebsgeräuschen des Motors und störenden Vibrationen. Demgegenüber verfährt ein Schrittmotor mit einer Ansteuerung nach dem erfindungsgemäßen Verfahren aufgrund der tatsächlich sinusförmigen Motorströme ohne Sprünge und damit ruhig und vibrationsarm an seine Sollposition.
Das Verfahren eignet sich zum Positionierbetrieb für alle permanent magnetisch erregten Schrittmotoren, also auch für Hybrid-Schrittmotoren und Linearschritt- antriebe, sowie generell für alle Motoren mit mindestens zwei Spulen und phasenversetzten Motorströmen, wie beispielsweise Synchronmotoren. Ebenso ist eine Anwendung des Verfahrens auf Mehrphasen-Schrittmotoren möglich, indem beispielsweise für jede Phase aus der Sinustabelle die benötigten digitalen Strom-Sollwerte mit der erforderlichen Phasenverschiebung ausgelesen werden und daraus erfindungsgemäß die für die verschiedenen Phasen des Motors erforderlichen phasenverschobenen Motorströme erzeugt werden. Mit einer leistungsfähigen CPU ist es auch möglich, die digitalen Strom-Sollwerte der Sinustabelle laufend zu berechnen, anstatt sie aus einer Sinustabelle zu entnehmen.
Gegenüber bisher bekannten Schrittmotorsteuerungen im Mikroschrittbetrieb arbeitet das erfindungsgemäße Verfahren für alle Geschwindigkeiten und alle Feinpositionierungen stets mit derselben niedrigen Abtastfrequenz. Daher kann mit dem neuen Verfahren bei konstanter Abtastfrequenz lediglich durch Vorgabe einer einzigen möglichst fein geteilten Sinustabelle die Positionsauflösung beliebig gesteigert werden, sogar bei gleichbleibender Maximalgeschwindigkeit. Da erfindungsgemäß eine einzige fein geteilte Sinustabelle zur Einstellung aller
Schrittweiten ausreicht, entfällt auch die beim vorbekannten Verfahren erforderliche Speicherkapazität für die Speicherung diverser Sinustabellen für verschiedene Schrittweiten.
Das neue Verfahren zeichnet sich durch eine sehr große Zahl an möglichen Ge- schwindigkeiten und Beschleunigungsprofilen mit beliebig hoher Positionsauflösung bei gleichzeitig optimiertem Rundlauf aus. Damit ist das neue Verfahren den bisherigen Schrittmotoransteuerungen deutlich überlegen, denn bei diesen konnten hohe Geschwindigkeiten nur unter Verringerung der Positionsauflösung oder durch Erhöhung der Schrittfrequenz mit den bereits erläuterten Nachteilen erreicht werden. Die Größe der konstanten Abtastfrequenz bestimmt die Anzahl der Rechenoperationen der CPU pro Zeiteinheit und beeinflußt damit die erforderliche CPU- Kapazität. Da das erfindungsgemäße Verfahren bei allen Geschwindigkeiten und Auflösungen mit derselben niedrigen, konstanten Abtastfrequenz arbeitet, wird auch stets nur dieselbe geringe CPU-Kapazität benötigt.
Die Erfindung wird anhand zweier Ausführungsbeispiele mit Hilfe der schematischen Zeichnungen näher erläutert.
Es zeigen:
Fig. 1 : Schaltbild einer ersten erfindungsgemäßen Vorrichtung mit Digital- Analog-Umsetzung durch einen D/A-Wandler;
Fig. 2 : Schaltbild einer zweiten erfindungsgemäßen Vorrichtung mit Digital- Analog-Umsetzung durch einen Pulsweitenmodulator;
In Fig. 1 ist in einem EPROM 1 eine Sinustabelle gespeichert, die die digitalen Strom-Sollwerte für den zu erzeugenden Motorstrom enthält. Die Anzahl der Ta- bellenplätze bestimmt die mögliche Positionsauflösung des Motors. Eine CPU 2 liest mit einer konstanten Abtastfrequenz pro Sinusperiode mindestens drei ausgewählte, digitale Strom-Sollwerte aus der Sinustabelle im EPROM 1 aus.
Im vorliegenden Beispiel wird zur Vereinfachung angenommen, daß eine konstante Drehgeschwindigkeit für den Motor eingestellt werden soll. Dazu werden die digitalen Strom-Sollwerte aus der Sinustabelle mit gleichmäßigen Abständen zwischen den auszulesenden Tabellenplätzen aus der Sinustabelle ausgelesen. Im vorliegenden Beispiel wird angenommen, daß die Sinustabelle mit einer großen Schrittweite ausgelesen wird. Dadurch wird die Frequenz des zu erzeugenden Motorstroms hoch und damit auch die Drehgeschwindigkeit des Schrittmo- tors hoch sein.
Die von der CPU 2 aus der Sinustabelle ausgelesenen digitalen Strom-Sollwerte werden auf einen D/A-Wandler 3 geführt. Am Ausgang des D/A-Wandlers 3 er- scheinen gestufte, analoge Strom-Sollwerte, die separat in Fig. 1 schematisch dargestellt sind. Sie weisen in dem dargestellten Fall einen annähernd sinusförmigen Verlauf auf. Da pro Periodendauer des Sinus nur wenige Abtastungen vorgenommen werden, weisen die analogen Ausgangssignale des D/A-Wandlers 3 sehr große Sprünge auf.
Sie werden auf den Eingang eines Tiefpaßfilters 4 geführt, an dessen Ausgang das in Fig. 1 separat dargestellte vollständig rekonstruierte Sinussignal der Strom-Sollwerte erscheint. Dieses glatte Sinussignal wird auf eine Endstufe 5 geführt, die daraus den sinusförmigen Motorstrom für die erste Phase eines zweiphasigen Schrittmotors 6 erzeugt.
Für die zweite Phase des Schrittmotors 6 wird der Motorstrom ebenfalls nach dem erfindungsgemäßen Verfahren in der bereits beschriebenen Weise erzeugt. Dazu liest die CPU 2 ausgewählte digitale Strom-Sollwerte für den Motorstrom der zweiten Phase des Schrittmotors 6 aus dem EPROM 1 aus. Die digitalen Strom-Sollwerte werden dazu um neunzig Grad phasenversetzt gegenüber denen für die erste Phase des Schrittmotors 6 aus der Sinustabelle ausgelesen. Die ausgelesenen digitalen Strom-Sollwerte werden auf einen D/A-Wandler 7 geführt, an dessen Ausgang gestufte, analoge Strom-Sollwerte erscheinen, die um neunzig Grad phasenverschoben gegenüber den nach dem D/A-Wandler 3 erscheinenden sind.
Die Ausgangssignale des D/A-Wandlers 7 werden auf den Eingang eines Tiefpaßfilters 8 geführt, an dessen Ausgang ein vollständig rekonstruiertes Sinussignal erscheint. Dieses ist um neunzig Grad phasenverschoben gegenüber dem nach dem Tiefpaßfilter 4 erscheinenden. Das Ausgangssignal des Tiefpaßfilters 8 wird auf den Eingang einer Endstufe 9 geführt, die den sinusförmigen Motorstrom für die zweite Phase des Schrittmotors 6 erzeugt.
Solange beide Phasen des Schrittmotors 6 mit den erzeugten sinusförmigen, phasenverschobenen Motorströmen versorgt werden, dreht der Schrittmotor 6 mit einer konstanten Geschwindigkeit. Die Endposition des Schrittmotors 6 wird bestimmt durch die beiden letzten, um neunzig Grad phasenversetzten, von der CPU 2 ausgelesenen digitalen Strom-Sollwerte in der Sinustabelle, die noch zu Motorströmen für die beiden Phasen verarbeitet werden. Damit dreht der Motor an seine Endposition.
5 Solange dem Schrittmotor 6 keine sinusförmigen, phasenverschobenen Motorströme zugeführt werden, also solange von der CPU 2 keine weiteren digitalen Strom-Sollwerte aus der Sinustabelle ausgelesen werden, bleibt er stehen. Erst durch das Auslesen weiterer digitaler, um neunzig Grad phasenversetzter Strom- Sollwerte werden wieder sinusförmige, phasenverschobene Motorströme erzeugt l o und der Schrittmotor 6 wieder in Bewegung versetzt.
In Fig. 2 sind gegenüber der Fig. 1 die D/A-Wandler 3,7 durch die Pulsweitenmodulatoren 10,11 ersetzt. Diese Ausführungsform ist besonders vorteilhaft, weil die Pulsweitenmodulatoren in vielen im Handel erhältlichen CPU-Bausteinen
15 bereits enthalten sind. Dies erspart Kosten und Schaltungsaufwand. Eine CPU 2 liest aus der in einem EPROM 1 gespeicherten Sinustabelle mit einer konstanten Abtastfrequenz ausgewählte digitale Strom-Sollwerte aus. Auch hier muß zur Erfüllung des Abtasttheorems die Bedingung erfüllt sein, daß pro Sinusperiode mindestens drei ausgewählte digitale Strom-Sollwerte aus der Sinustabelle aus-
20 gelesen werden. Diese werden auf den Eingang des Pulsweitenmodulators 10 geführt.
Dieser setzt die digitalen Strom-Sollwerte in hochfrequente Pulsfolgen mit konstanter PWM-Frequenz um. Der analoge Mittelwert der Pulsfolge am Ausgang des Pulsweitenmodulators 10 ist jeweils der Höhe seines digitalen Eingangs- 25 Signals proportional. Das heißt beispielsweise, daß ein digitales Eingangssignal gleich Null am Ausgang des Pulsweitenmodulators 10 eine Pulsfolge erzeugt, deren Mittelwert aufgrund der Pulsbreiten der einzelnen Pulse auch gleich Null ist. Für ein digitales Eingangssignal größer als Null verbreitern sich die positiven Anteile der Pulse des Ausgangssignals dergestalt, daß der Mittelwert der neuen Pulsfolge größer als Null und der Höhe des Eingangssignals proportional ist. Für ein digitales Eingangssignal kleiner als Null verschmälern sich die positiven Anteile der Pulse des Ausgangssignals dergestalt, daß der Mittelwert der neuen Pulsfolge kleiner als Null und der Höhe des Eingangssignal proportional ist. Die am Ausgang des Pulsweitenmodulators 10 erscheinende Pulsfolge bei sehr großen Schrittweiten ist separat in Fig. 2 schematisch dargestellt.
Die vom Pulsweitenmodulator 10 erzeugten hochfrequenten Pulsfolgen werden auf den Eingang eines Tiefpaßfilters 4 geführt. Die PWM-Frequenz der vom Pulsweitenmodulator 10 erzeugten Pulsfolgen ist mindestens gleich der Ab- tastfrequenz der CPU 2 oder größer und damit mehr als doppelt so hoch wie die Grenzfrequenz des Tiefpaßfilters 4. Das Tiefpaßfilter 4 bildet zu jeder eingehenden hochfrequenten Pulsfolge den analogen Mittelwert und filtert dabei sowohl die PWM-Frequenz des Pulsweitenmodulators 10 als auch die Abtastfrequenz der CPU 2 heraus. Damit werden alle Frequenzen, die nicht dem zu reproduzie- renden Sinussignal entsprechen, herausgefiltert. Damit liefert das Tiefpaßfilter 4 ein vollständiges glattes Sinussignal der Strom-Sollwerte an seinem Ausgang. Das am Ausgang des Tiefpaßfilters 4 erscheinende, vollständig rekonstruierte, glatte Sinussignal ist separat in Fig. 2 dargestellt. Dieses glatte Sinussignal wird auf den Eingang einer Endstufe 5 geführt, die daraus den Motorstrom für die erste Phase eines Schrittmotors 6 erzeugt.
Entsprechend wird der Motorstrom für die zweite Phase des Schrittmotors 6 erzeugt. Dazu werden von der CPU 2 mit einer konstanten Abtastfrequenz aus dem EPROM 1 ausgewählte digitale Strom-Sollwerte ausgelesen und auf den Eingang des Pulsweitenmodulators 11 geführt. Die digitalen Strom-Sollwerte werden dazu um neunzig Grad phasenversetzt gegenüber denen für die erste
Phase des Schrittmotors 6 aus der Sinustabelle ausgelesen.
Für jeden ankommenden digitalen Strom-Sollwert liefert der Pulsweitenmodulator 11 an seinem Ausgang eine hochfrequente Pulsfolge mit einem dem Eingangssignal proportionalem analogen Mittelwert. Die vom Pulsweitenmodulator 11 er- zeugten Pulsfolgen werden auf den Eingang eines Tiefpaßfilters 8 geführt. Die- ses rekonstruiert, wie bereits oben beim Tiefpaßfilter 4 beschrieben, aus den eingehenden Pulsfolgen ein vollständiges glattes Sinussignal der Strom- Sollwerte. Das am Ausgang des Tiefpaßfilters 8 erscheinende rekonstruierte Sinussignal ist um 90 Grad phasenverschoben gegenüber dem in Fig. 2 separat dargestellten rekonstruierten Sinussignal nach dem Tiefpaßfilter 4. Das Sinussignal am Ausgang des Tiefpaßfilters 8 wird auf den Eingang einer Endstufe 9 geführt, die daraus den sinusförmigen Motorstrom für die zweite Phase des Schrittmotors 6 erzeugt.
Auch in diesem Beispiel verfährt der Schrittmotor 6, solange seine beiden Pha- sen mit sinusförmigen, phasenverschobenen Motorströmen versorgt werden. Die angefahrene Endposition des Schrittmotors 6 wird ebenfalls durch die beiden letzten, aus der Sinustabelle ausgelesenen, digitalen Strom-Sollwerte bestimmt, die in Motorströme umgesetzt werden.
Bezugszeichenliste
- EPROM
- CPU
- D/A-Wandler
- Tiefpaßfilter
- Endstufe
- zweiphasiger Schrittmotor
- D/A-Wandler
- Tiefpaßfilter
- Endstufe
- Pulsweitenmodulator
- Pulsweitenmodulator

Claims

Patentansprüche
1. Verfahren zur Ansteuerung eines Schrittmotors (6), bei dem digitale Strom- Sollwerte in Form einer Sinustabelle gespeichert sind und aus dieser Sinusta- belle ausgelesen werden und bei dem aus den ausgelesenen digitalen Strom-
Sollwerten ein Motorstrom zur Erregung einer Phase des Schrittmotors (6) abgeleitet wird, dadurch gekennzeichnet, daß a) mit einer konstanten Abtastfrequenz aus den Tabellenplätzen der Sinus- tabelle mindestens drei digitale Strom-Sollwerte pro Periodendauer ausgewählt und ausgelesen werden, b) jeder ausgelesene digitale Strom-Sollwert in ein diskretes analoges Signal umgesetzt wird und c) aus den diskreten analogen Signalen durch Tiefpaßfilterung ein glattes Sinussignal rekonstruiert wird, aus welchem der Motorstrom für die Erregung einer Phase des Schrittmotors (6) abgeleitet wird.
2. Verfahren nach Anspruch 1 , dadurch gekennzeichnet, daß die ausgelesenen digitalen Strom-Sollwerte mit einem D/A-Wandler (3,7) in diskrete analoge Signale umgesetzt werden.
3. Verfahren nach Anspruch 1 , dadurch gekennzeichnet, daß die ausgelesenen digitalen Strom-Sollwerte zur Umsetzung in diskrete analoge Signale mit einem Pulsweitenmodulator (10,11) moduliert werden.
4. Verfahren nach einem der vorhergehenden Ansprüche , dadurch gekennzeichnet, daß zur Einstellung einer konstanten Geschwindigkeit des Schrittmotors (6) digitale Strom-Sollwerte mit gleichen Abständen der Tabellenplätze ausgelesen werden.
5. Verfahren nach einem der vorhergehenden Ansprüche , dadurch gekennzeichnet, daß zur Einstellung einer beschleunigten Bewegung des Schrittmotors (6) digitale
Strom-Sollwerte mit fortlaufend zunehmenden Abständen der Tabellenplätze ausgelesen werden.
6. Verfahren nach einem der vorhergehenden Ansprüche , dadurch gekennzeichnet, daß zur Einstellung einer verzögerten Bewegung des Schrittmotors (6) digitale
Strom-Sollwerte mit fortlaufend abnehmenden Abständen der Tabellenplätze ausgelesen werden.
7. Verfahren nach einem der vorhergehenden Ansprüche , dadurch gekennzeichnet, daß die ausgewählten digitalen Strom-Sollwerte fortlaufend berechnet und zwischengespeichert werden.
8. Vorrichtung zur Ausübung des Verfahrens nach Anspruch 1 zur Ansteuerung eines Schrittmotors (6) mit
- einem EPROM (1) zur Speicherung von Strom-Sollwerten in Form einer digitalen Sinustabelle,
- einer CPU (2) zum Erzeugen einer Auslesefrequenz für die digitalen Strom- Sollwerte aus der digitalen Sinustabelle,
- und einer Endstufe zur Erzeugung des Motorstroms für eine Phase des Schrittmotors (6) aus den in analoge Werte umgesetzten Strom-Sollwerten, gekennzeichnet durch,
- eine CPU (2) mit konstanter Abtastfrequenz für die digitalen Strom-Sollwerte
- einen elektronischen Umsetzer für die Umwandlung der abgetasteten digitalen Strom-Sollwerte aus ausgewählten Tabellenplätzen in diskrete analoge Strom-Sollwerte und - ein vor die Endstufe geschaltetes Tiefpaßfilter mit einer Grenzfrequenz kleiner als die halbe Abtastfrequenz der CPU.
9. Vorrichtung nach Anspruch 8 dadurch gekennzeichnet, daß der elektronische Umsetzer ein D/A-Wandler (3) ist.
10. Vorrichtung nach Anspruch 8 dadurch gekennzeichnet, daß der elektronische Umsetzer ein Pulsweitenmodulator (10) mit einer PWM- Frequenz > der Abtastfrequenz ist.
PCT/DE1998/000053 1997-02-06 1998-01-09 Verfahren und vorrichtung zur schrittmotoransteuerung WO1998035436A1 (de)

Priority Applications (5)

Application Number Priority Date Filing Date Title
DE59808273T DE59808273D1 (de) 1997-02-06 1998-01-09 Verfahren und vorrichtung zur schrittmotoransteuerung
KR10-1999-7006083A KR100404680B1 (ko) 1997-02-06 1998-01-09 스테핑 모터 제어 방법 및 장치
EP98904015A EP0958651B1 (de) 1997-02-06 1998-01-09 Verfahren und vorrichtung zur schrittmotoransteuerung
JP53350898A JP2001510678A (ja) 1997-02-06 1998-01-09 ステップモータの制御方法および制御装置
US09/369,268 US6194863B1 (en) 1997-02-06 1999-08-06 Method and apparatus for driving a stepping motor

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19704296A DE19704296C2 (de) 1997-02-06 1997-02-06 Verfahren und Vorrichtung zur Schrittmotoransteuerung
DE19704296.1 1997-02-06

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US09/369,268 Continuation US6194863B1 (en) 1997-02-06 1999-08-06 Method and apparatus for driving a stepping motor

Publications (1)

Publication Number Publication Date
WO1998035436A1 true WO1998035436A1 (de) 1998-08-13

Family

ID=7819359

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE1998/000053 WO1998035436A1 (de) 1997-02-06 1998-01-09 Verfahren und vorrichtung zur schrittmotoransteuerung

Country Status (7)

Country Link
US (1) US6194863B1 (de)
EP (1) EP0958651B1 (de)
JP (1) JP2001510678A (de)
KR (1) KR100404680B1 (de)
DE (2) DE19704296C2 (de)
TW (1) TW355880B (de)
WO (1) WO1998035436A1 (de)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6121745A (en) * 1997-10-02 2000-09-19 Warner Electric Technology, Inc. Direct current command generation for a stepper motor drive
DE19842698C2 (de) * 1998-09-17 2002-08-01 Phytron Elektronik Gmbh Sollstromerzeugungsvorrichtung
DE19928356C1 (de) * 1999-06-21 2000-12-07 Sig Positec Bergerlahr Gmbh & Verfahren zum Positionieren eines Schrittmotors und elektrischen Antriebs
DE19928357A1 (de) * 1999-06-21 2001-01-04 Sig Positec Bergerlahr Gmbh & Verfahren zum Betreiben einer Synchronmaschine sowie elektrischer Antrieb
DE10007201A1 (de) * 2000-02-17 2001-08-23 Zeiss Carl Jena Gmbh Verfahren zur Synchronsteuerung mehrerer Schrittmotoren
FR2805680B1 (fr) * 2000-02-29 2002-05-10 Sagem Generateur comportant deux paires de sorties differentielles
WO2002015381A1 (en) * 2000-08-15 2002-02-21 Vladimir Nikolayevich Davidov Method and apparatus for controlling acceleration and velocity of a stepper motor
US6823221B2 (en) 2001-11-28 2004-11-23 National Instruments Corporation Motion control system and method which includes improved pulse placement for smoother operation
DE10208675A1 (de) * 2002-02-28 2003-09-04 Wilo Gmbh Erzeugung skalierbarer periodischer Signale
FR2910198B1 (fr) * 2006-12-13 2009-03-13 Peugeot Citroen Automobiles Sa Procede de commande d'un moteur electrique de vehicule hybride ou elctrique
US7687703B2 (en) * 2007-03-22 2010-03-30 Qualcomm Incorporated Method and device for generating triangular waves
DE102010032607A1 (de) 2009-07-30 2011-02-03 Dornier Technologie Gmbh & Co. Kg Fahrzeugsitz, insbesondere Fluggastsitz, sowie Antriebseinheit für einen Fahrzeugsitz
JP2013509150A (ja) * 2009-10-22 2013-03-07 コンティネンタル オートモーティブ システムズ ユーエス, インコーポレイティッド ステッパモータコントローラ
AU2011232432B2 (en) * 2010-03-23 2015-12-24 Pelco Inc. Voltage-controlled stepper motor driver
US8788099B2 (en) 2011-07-29 2014-07-22 National Instruments Corporation Position-based step control algorithm for a motion control system
DE102013213683B3 (de) * 2013-07-12 2014-10-23 Karl E. Brinkmann GmbH Vorrichtung und verfahren zum erzeugen eines rekonstruierten signals und testvorrichtung
JP2018098851A (ja) * 2016-12-09 2018-06-21 キヤノン株式会社 モータ制御装置及び画像形成装置
WO2019231632A1 (en) 2018-06-01 2019-12-05 Shure Acquisition Holdings, Inc. Pattern-forming microphone array

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1989007859A1 (en) * 1988-02-18 1989-08-24 Siemens Aktiengesellschaft Microstepping of a unipolar d.c. motor
JPH06334528A (ja) * 1993-05-25 1994-12-02 Fuji Electric Co Ltd ディジタル−アナログ電圧変換回路

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4584512A (en) * 1980-02-27 1986-04-22 Pritchard Eric K Microstepping drives with waveform tuning and microprocessor control
GB8405253D0 (en) * 1984-02-29 1984-04-04 Peritronic Medical Ind Plc Controlling stepping motor
JPS6146198A (ja) * 1984-08-11 1986-03-06 Mitsubishi Electric Corp ステツプモ−タ駆動制御回路
US4929879A (en) * 1988-02-18 1990-05-29 Siemens-Bendix Automotive Electronics L.P. Microstepping of an unipolar stepping motor
JPH01291698A (ja) * 1988-05-13 1989-11-24 Sharp Corp パルスモータ駆動回路
JP2928518B2 (ja) * 1988-07-01 1999-08-03 キヤノン株式会社 ステッピングモータの駆動方法
US5055761A (en) * 1989-02-21 1991-10-08 Linear Instruments Smooth rotation by a galvanometer
US5198741A (en) * 1989-07-31 1993-03-30 Canon Kabushiki Kaisha Drive control system of stepping motor
DE19521445A1 (de) * 1995-06-16 1996-12-19 Moto Meter Gmbh Verfahren zur Ansteuerung eines Schrittmotors und Vorrichtung dazu
US6016044A (en) * 1995-09-11 2000-01-18 Alaris Medical Systems, Inc. Open-loop step motor control system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1989007859A1 (en) * 1988-02-18 1989-08-24 Siemens Aktiengesellschaft Microstepping of a unipolar d.c. motor
JPH06334528A (ja) * 1993-05-25 1994-12-02 Fuji Electric Co Ltd ディジタル−アナログ電圧変換回路

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PATENT ABSTRACTS OF JAPAN vol. 095, no. 003 28 April 1995 (1995-04-28) *

Also Published As

Publication number Publication date
DE19704296C2 (de) 2001-03-01
KR100404680B1 (ko) 2003-11-07
JP2001510678A (ja) 2001-07-31
DE59808273D1 (de) 2003-06-12
US6194863B1 (en) 2001-02-27
DE19704296A1 (de) 1998-08-20
TW355880B (en) 1999-04-11
KR20000069890A (ko) 2000-11-25
EP0958651A1 (de) 1999-11-24
EP0958651B1 (de) 2003-05-07

Similar Documents

Publication Publication Date Title
EP0958651B1 (de) Verfahren und vorrichtung zur schrittmotoransteuerung
DE69822896T2 (de) Verfahren und gerät zur steuerung eines bürstenlosen elektrischen motors
EP0151296A2 (de) Steuerschaltung für einen Schrittmotor
DE2459986C2 (de) Umformer
DE2251292C3 (de) Anordnung zur Drehzahlregelung eines kollektorlosen Gleichstrommotors
EP0448610A1 (de) Verfahren und anordnung zur ansteuerung elektromechanischer wandler.
DE2417982A1 (de) Vorrichtung zum betreiben mehrerer elektromotoren
EP0832514B1 (de) Verfahren zur ansteuerung eines schrittmotors
DE2112186B2 (de) Verfahren zur Bildung der Steuersignale eines Pulswechselrichters für die Drehzahlsteuerung von Drehfeldmaschinen sowie eine Anordnung zur Durchführung des Verfahrens
EP0714162A2 (de) Schaltungsanordnung zum Steuern eines elektronisch kommutierten Motors
EP3529891A1 (de) Verfahren und schaltungsanordnung zum ansteuern eines schrittmotors
EP0469177A1 (de) Verfahren und Vorrichtung zum Wiederanlassen eines Induktionsmotors
DE2341052A1 (de) Gleichstrommotor mit geschwindigkeitsregelung ueber hall-generatoren
DE1900347A1 (de) Anordnung zur frequenzanalogen Drehlzahlregelung einer wechselrichtergespeisten Induktionsmaschine
DE4426764C2 (de) Verfahren zur Ansteuerung eines Pulswechselrichters durch Stellbefehle eines Pulsmustergenerators
DE19707705A1 (de) Ausgangsspannungssteuervorrichtung zur Einstellung der Ausgänge einer Steuervorrichtung und Verfahren zur Steuerung
EP0544728B1 (de) Generator für amplitudengekoppelte spannungen
DE4100864A1 (de) Verfahren zum ansteuern eines elektrischen synchronmotors
EP1063762B1 (de) Verfahren zum Positionieren eines Schrittmotors und elektrischer Antrieb
DE19842698C2 (de) Sollstromerzeugungsvorrichtung
DE2950642A1 (de) Steuerung fuer einen schrittmotor
EP0829950B1 (de) Digital gesteuerter Oszillator
DE2257671B2 (de) Verfahren zum Ansteuern eines Schrittmotors mittels eines frequenzvariablen Oszillators und Schaltungsanordnung zur Durchführung des Verfahrens
DE3221190A1 (de) Verfahren und anordnung zur regelung eines linearmotors
DE10360007A1 (de) Drehzahleinstellung bei einem Gleichstrommotor

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): IL JP KR SG US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1998904015

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1019997006083

Country of ref document: KR

ENP Entry into the national phase

Ref country code: JP

Ref document number: 1998 533508

Kind code of ref document: A

Format of ref document f/p: F

WWE Wipo information: entry into national phase

Ref document number: 09369268

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 1998904015

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1019997006083

Country of ref document: KR

WWG Wipo information: grant in national office

Ref document number: 1998904015

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 1019997006083

Country of ref document: KR