CA1164930A - Quantized speed control of a stepper motor - Google Patents
Quantized speed control of a stepper motorInfo
- Publication number
- CA1164930A CA1164930A CA000359532A CA359532A CA1164930A CA 1164930 A CA1164930 A CA 1164930A CA 000359532 A CA000359532 A CA 000359532A CA 359532 A CA359532 A CA 359532A CA 1164930 A CA1164930 A CA 1164930A
- Authority
- CA
- Canada
- Prior art keywords
- motor
- pulses
- rotor
- advance
- indicia
- 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.)
- Expired
Links
- 238000000034 method Methods 0.000 claims description 17
- 125000004122 cyclic group Chemical group 0.000 claims description 13
- 230000001133 acceleration Effects 0.000 claims description 12
- 238000006073 displacement reaction Methods 0.000 claims description 11
- 230000003111 delayed effect Effects 0.000 claims description 4
- 230000001419 dependent effect Effects 0.000 claims description 3
- 230000000295 complement effect Effects 0.000 claims 1
- 239000002184 metal Substances 0.000 abstract description 5
- 230000000694 effects Effects 0.000 abstract description 3
- 230000000977 initiatory effect Effects 0.000 abstract description 3
- 230000010355 oscillation Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 4
- 238000001208 nuclear magnetic resonance pulse sequence Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 150000002500 ions Chemical class 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000002028 premature Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P8/00—Arrangements for controlling dynamo-electric motors rotating step by step
- H02P8/14—Arrangements for controlling speed or speed and torque
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Control Of Stepping Motors (AREA)
Abstract
QUANTIZED SPEED CONTROL OF A STEPPER MOTOR
Abstract A coded disk is coupled to a stepper motor to control the speed of the latter. On the periphery of the coded disk are a plurality of equidistant marks, the sensing of each of which generates a motor control pulse. One motor control pulse produces one motor step. Previously, motors have been decelerated by delaying the initiation of the motor control pulses.
This is disadvantageous if the speed fluctations occurred prior to the initiation of a motor control pulse, in that the optimum deceleration angle of the motor could not be maintained. In accordance with the invention, several fine marks are provided on the coded disk for each motor step and a motor control pulse is emitted only when a selected one of the fine marks has been sensed. This leads to motor control pulses with rigid angles, and speed fluctations prior to the emission of such pulses no longer produce negative effects. The invention is suitable for the print head control of metal paper printers.
Abstract A coded disk is coupled to a stepper motor to control the speed of the latter. On the periphery of the coded disk are a plurality of equidistant marks, the sensing of each of which generates a motor control pulse. One motor control pulse produces one motor step. Previously, motors have been decelerated by delaying the initiation of the motor control pulses.
This is disadvantageous if the speed fluctations occurred prior to the initiation of a motor control pulse, in that the optimum deceleration angle of the motor could not be maintained. In accordance with the invention, several fine marks are provided on the coded disk for each motor step and a motor control pulse is emitted only when a selected one of the fine marks has been sensed. This leads to motor control pulses with rigid angles, and speed fluctations prior to the emission of such pulses no longer produce negative effects. The invention is suitable for the print head control of metal paper printers.
Description
Quan.ized S~eed ~
-The invention concerns a method for the quantized speed control of a stepper motor as well as the basic electrical circuitry for implementing the method.
The method and the circuitry of the invention will be useful in particular for controlling the speed of stepper motors that drive the print heads of electrographic printers.
In German Offenlegungsschrift P 25 56 015.0 (U.S.
priority ~ecember 23, 1974, serial number 535647, EN 974 015) a control circuit is described for a stepper motor driven carriage of a printer, whereby the advance pulse sequence corresponding to a predetermined speed profile can be fetched from a read-only storage.
In German Patent 21 19 352 (U.S. priority April 22, 1970, serial number 3075~, Docket ~N 969 035~ a method of controlling a stepper motor is described, whereby after the motor has been started by a starting pulse, the motor is controlIed by the pulse which a coded disk fixed to the motor snaft generates during each step, a single additional pulse keing applied to the motor control between two step pulses to accelerate the motor from a lower to a higher speed, and one step pulse being suppressed to decelerate the motor from the higher to the lower ~speed.
Also, German Patent 24 21 219 (GE 973 013) concerns a method;of controlling a stepper motor, whereby after the motox has been started by means of a~starting motor advance pulse, feed~ack pulses dependent upon the motor position are used to contr~l the motor. This method is characterized in that the motor advance pulses triggered~by preceding feedback pulses are emitted~a~ter a particular delay time has elapsed, whereby said de~lay tlme corresponds to the angular magnet wheel value associated~wlth~the respective speed or number of steps obtained as well as with the optimum torque.
IBM Technical Disclosure Bulletin Vol. 21, No. 4 (September 1978),~discloses the use of a coded disk for con~trolling the position of an electrographic printer. The coded ~", ~,~, , :
~ .
~ .
:
..
' ~ ' l disk, which is connected to a stepper motor, has a plurality of equidistant marks around its periphery, -the photoelectrical sensing of which marks during rotation of the disk generates print pulses. This arrangement allows synchronization of the print positions along a line OL print to be independent of the motor speed.
Embodiments of the invention will be described in detail below with reference to the accompanying drawings, in which:
Fig. l is a schematic representation of a coded disk with marks for generating stepper motor standard pulses and print pulses, Fig. 2 is a partly schematic representation of a stepper motor showing a standard phase angle ~
for a standard control pulse and an acceleration phase angle ~aand a deceleration phase angle ~ ~d_ for the acceleration and deceleration pulse, respectively, Figs. 3A to 3C are schematic representations of pulse diagrams for deriving a deceleration pulse, Figs. 4A to 4B are schematic representations of ; pulse diagrams for deriving a deceleration pulse from the marks on the coded dlsks applicable for the derivation of the pxint pulses, Fig. 5 is a schematic representation of different speed profi]es, Fig. 6 is a block diagxam of an arrangement fox generating stepper motor control pulses at particular given angular positions.
In printing a line, for example, the stepper motor driven print head of a metal paper printer has a :~ :
.
2a 1 particular speed profile. This speed profile (see Fig. 5) is marked by a starting phase (Inl) at the beginning of the print line, a uniform speed phase (In2) during which the speed is approximately uniform, and by a deceleration phase (In3) at the end of the print line.
It is desirable to op-timize the acceleration and deceleration characteristics of the stepper motor, and to assist in such optimization deceleration pulses have been applied to the motor to act as delayed standard control pulses. The delay time determined the size of the so-called deceleration angle which will be referred to in detail in connection with Fig. 2. As the magnitude of the time delay did not vary between motor steps, the following disadvantage was encountered. The occurrence of speed fluctations of the stepper motor (e.gO, as a result of load variations and temperature in~luences) led on occasion to initiation of the delayed deceleration pulses at differiny deceleration phase angles. As a result, deceleration conditions obtained were non uniform. In practice, after a series of lines had been printed, their end points (point Z on the speed profile of Fig. 5) wou]d be horizontally displaced relative to each other. A displacement of that point - caused by unfavourable deceleration characteristics leading to motor oscillations - meant, also, that after print head return following the emission of a particular number of position pulses determining the line length, the line starting points would similarily be horizontally displaced relative to each other.
This disadvantage has little or no effect on metal paper printers with relatively lower speeds. However, at increasing print speeds and print resolutions, it will be obvious .
6/~ 3 from the foregoing remarks that deri~ation of acceleration or deceleration pulses using a standard control pulse in an electronic time delay circuit may result in ~1 intolera~le situation.
Therefore, it is the object of ~he invention to provide means for generating a deceleration or acceleration pulse at particular angular positions (meaning the angular positions of the rotor relative to the stator) of the stepper motor. In addition, it is the object of the invention to provide means for a quantized speed control of the stepper motor.
One form of the invention is a method for controlling he speed of a stepper motor, which comprises the steps of attaching a coded disk thereto to rotate ~ith the rotor thereof, the periphery of the disk having equidistant marks therearound, and applying to the stepper motor,^at times corresponding to discrete angular positions of the rotor relative to the motor stator acceleration or deceleration control pulses. The method may further comprise determining val~es characterizing discrete angular positions for a time-optimized, oscillation-free acceleration or deceleration range of the motor, and storing the values with the aid of a program for generating motor control pulses with rigid angles. Alternately, the method may further comprise determining values characterizing discrete angular posi~ions for different uniform speed ranges o~ the motor with different given speeds.
Another form of the invention is a coded disk for implementing the foregoing methods, which disk has finer equidistant marks arranged between the equidistant marks, which ; finer equidistant marks are arranged for derlving control pulses with rigid angles in a standard motor control step.
A still further form of the invention is a circuit for implementing the foregoing methods usiny the foregoing coded disk, which circuit comprises a sensor, a programmable cyclic counter, a progxammable value assignment circuit, a decoder, a cyclic counter, and control line$. The sensor senses the finer equidistan~ marks on the coded disk. The programmable : . ' : ' ' ' ~ '~
1 cyclic counter is clock-driven by the pulses sensed, and has output pulses representing the motor control pulses. The decoder has each of its output lines connected to the programmable value assignment circuit.
The cyclic counter is clock driven by the motor control pulses over a given range of the speed profile of the stepper motor, and has output lines connected to the decoder, that can be successively activated for the individual steps of the given speed profile range. The control lines are connected to each stage of the programmable cyclic counter. The stages of the programmable cyclic counter are connectable either to the control lines for starting and accelerating the motor and maintaining it at a uniform speed or connectable to the outputs of the value assignment circuits, such that the programmable cyclic counter receives for each motor step an initial value which is such that it ensures the occurrence of an overflow pulse acting as a motor control pulse at the time of the desired angular position of the motor.
In a yet still further form of the invention, the programmable cyclic counter and the cyclic counter are binary counters and the stages of the programmable cyclic counter are proceeded by one OR gate each.
In a further form of the invention, the line carrying the output pulses of the programmable cyclic counter is connected to a delay element for emitting the motor control pulses~
The foregoing methods, coded disk or circuits may be utilized to move a metal paper printer print head along a line.
1 Fig. 1 shows a schematic representation of a coded disk with marks fcr generating stepper motor control pulses. The axle of the stepper motor that drives the print head of a metal paper printer (not shown) extends through the symmetric axis bore 2 of the coded disk 1.
The print head is to be moved across the record carrier line by line. Each time the motor movesl a photo-electronic device (not shown), aimed at the periphery of the coded disk, senses the mark MAl, MA2, MA3, etc., and transmits a signal from which will be derived the standard control pulses for the motor.
These marks and those arranged between them (MP2 to MP8) are utilized in deriving print pulses. A
different number of control pulses in each motor step cycle is e~ually conceivable. By coupling rotation of the stepper motor to lateral displacement and return of the print head, synchronization of the individual print positions along the print line is independent of the motor speed. Such synchronization is also required because the speed curve of the print head fluctuates over a print line. This speed curve is marked by a starting phase, a phase during which the speed is approximately uniform (uniform phase), and a deceleration phase at the end of the print line.
At particular positions of the rotor relative to the stator, drive of the motor (see also Fig. 2) is generally effected by standard control pulses. For a particular motor speed the control pulse is emitted at a particular angular position (which is speed-dependent). The angular positions for different speed values are also different. It is assumed that the angle values for speed controlling the stepper ~otor are :
3~ ~
a~ailable in the system; hey may be empirically or algorithmically determined.
As an example, assume that such a standard control pulse is applied to the coil 7 Oc the stator pole 5 at a time when the rotor 6 is at an angle ~,~relative to the stator pole.
This angle is necessary for maintaining a particular speed. The clockwise direction of rotation of the rotor is marked by an arrow. If the control pulse occurred at the angular position ~+ ~ ~, the prematuxe attraction of the rotor pole (north) relative to the stator pole (south) would lead to an acceleration of'the motor, because of the acceleration phase ansle ~ ~ . In this manner, premature or delayed control pulses (with reference to the standard control pulses of a corresponding angular position) can influence the speed characteristics of the stepper motor.
A delay of the standard control pulse at the angular position ~by, for example, ~ ~1, would lead to a decelerztion.
This deceleration would be particularly pronounced if ~ ~
extended into the area on the right of the stator pole 5, because in such a case the south pole of stator 5 and the nor'~h pole of the rotor 6 would be mutually attracted, opposing the direction of rotation of the motor.
As previously mentioned, rotation of the stepper motor sta'tor was previously decelerated by delaying the emission of the standard control pulse. ' Such a time delay, which is illustrated as T~ in Fig. 3, produces the desired deceleration phase angle ~
Further details may be seen from the pulse diagrams in Figs. 3A to 3C.
Fig. 3 illustrates ~wo standard control pulses PAl and PA2 of the stepper motor, which pulses are separated from each other in time. These pulses are assumed to occur at times when the marks MAl and MA2 of th'e coded disk are photo-electron-ically sensed.~ In order to generate ~ corresponding deceleration pulse PSl (see Fig. 3C) on the basis ~f the pulse PAl, it would ~e conceivable to apply the pulse P~l to a monostable multivibrator, not shown, operating at ~he delay time TD (see . .
-- --- - .
Q~3 Fig~ 3~). After the delay time TD has elapsed, the ~eceleration pulse PSl is generated by means of the trailing edge or the multivibrator output sigr,al PD at the time tl and used to decelerate the stepper motor.
The delay time T~ generated by the monostable multi-vibrator is constant. The fact that the occurrence Gf the deceleration pulse P$1 is solely determined by the time TD does not make allowance for speed fluctuations of the rotor occurring during that time. Such speed fluctuations may be attributable to load fluctuations or temperature influences affecting the electronic circuits. When such speed fluctuations are encountered, a fixed uniform deceleration angle~ ~lis no longer ensured because of the constant delay time TD. However, a change in that angle leads to de~iations from the optimum deceleration characteristics. Such deviations are particularly critical ln electrographic printers wlth a high print speed and a very high print resolution, respectively.
Therefore, in the case of such applications the speed profile o~ the stepper motor can no longer be influenced by constant time delays in the corresponding standard control pulses.
Continued adherence to that principle ~70uld lead to motor oscillations and displacements of the whole speed profile alon~
the print line and thus to a poor print image, so that a~ter the print head has been reset by a corresponding number of print positions - as a function of an electronic count - the next line would start at a position horizontally displaced from the previous one.
To eliminate this disadvantage, the deceleration pulses are derived directly from the coded disk, to ensure that the optimum deceleration a~gle (e.y., ~ ~ in Fig. 2) is strictly adhered to. For this purpose, further marks (MP2 to MP~) for deriving the print pulses are provided on the coded disk IFi~. 1) between the marks MAl, ~2, MA3, etc. for deriving the standard control pulses. All marks are sensed by a photo-electronic sensor ~not shcwn). As a result, pulse sequences, as shown in Fig. 4A, are generated: Each standard step cycle of the motor (starting, for example, at PA1 or PA2, etc~) comprises a total .
~L~
n~ber of 8 print pulses Pl to P8. The flrst print pulse Pl of each cycle is identical with the standard con~rol pulse PAl (PA2, etc.) of that cycle. The occurrence of the print pulses is subject to fixed an~ular phase positions of the stepper motor.
The spacing of these angular positions is a function of the number of print pulses used in the step cycle of a motor. It is assumed that the spacing is such that the speed profile of the motor can be most effectively influenced.
For purposes of illustration, assume that the optimum deceleration phase angle ~ ~ in accordance with Fig. 2 exists when the second mark MP3 (after MAl or MA2 or M~3 etc.), which leads to the emission of the pulse P3 of Fig. 4A, passes the sensor. The occurrence of pulse P3 in accordance with Fig. 4B
would be identical with that of the deceleration pulse PS2.
This would ensure that, despite possible speed fluctuations of the motor in the range of the deceleration angle ~ ~ , the deceleration pulse PS2 would occur exactly at the time at which the rotor assumes the deceleration phase angle ~ ~l(with refer-ence to the angle ~ of the standard control pulse). This would preclude the possibility of the speed profile of the motor being displaced along the print line.
To ensure an optimum deceleration phase, there must be no overshooting by the motor after it has reached the "stop"
position. For optimum deceleration characteristics, ~ values deviating from the angular values of the differen~ speeds are predetermined for the deceleration pulses. It is assumed that the optimum deceleration phase comprises 5 motor steps. During the individual steps the motor would operate at different average speeds Vl, V2, V3, V4, and V5. For each step a deceleration phase angle ~ 2, ~3, ~4, and ~5, is predetermined.
These deceleration phase angles can be empirically or algorith-mically determined. When the deceleration pulses during the 5 deceleration steps are applied in accordance with the ~ ~
values, optimum deceleration characteristics are obtained for the mo or. Such optimum deceleration characteristics would not be ensured,~if, for example, o~her deceleration angles were used which, although leading to the value O of the speed g curve being reached more rapidly, would cause undesirable oscillations of the motor.
Pis. 6 shows a block diagram of a circuit for generating the stepper motor control pulse ensuring optimum deceleration characteristics. It is assumed that l. a motor step comprises 8 print pulses Pl to P8 (it is conceivable to use another number of steps for other embodiments) and
-The invention concerns a method for the quantized speed control of a stepper motor as well as the basic electrical circuitry for implementing the method.
The method and the circuitry of the invention will be useful in particular for controlling the speed of stepper motors that drive the print heads of electrographic printers.
In German Offenlegungsschrift P 25 56 015.0 (U.S.
priority ~ecember 23, 1974, serial number 535647, EN 974 015) a control circuit is described for a stepper motor driven carriage of a printer, whereby the advance pulse sequence corresponding to a predetermined speed profile can be fetched from a read-only storage.
In German Patent 21 19 352 (U.S. priority April 22, 1970, serial number 3075~, Docket ~N 969 035~ a method of controlling a stepper motor is described, whereby after the motor has been started by a starting pulse, the motor is controlIed by the pulse which a coded disk fixed to the motor snaft generates during each step, a single additional pulse keing applied to the motor control between two step pulses to accelerate the motor from a lower to a higher speed, and one step pulse being suppressed to decelerate the motor from the higher to the lower ~speed.
Also, German Patent 24 21 219 (GE 973 013) concerns a method;of controlling a stepper motor, whereby after the motox has been started by means of a~starting motor advance pulse, feed~ack pulses dependent upon the motor position are used to contr~l the motor. This method is characterized in that the motor advance pulses triggered~by preceding feedback pulses are emitted~a~ter a particular delay time has elapsed, whereby said de~lay tlme corresponds to the angular magnet wheel value associated~wlth~the respective speed or number of steps obtained as well as with the optimum torque.
IBM Technical Disclosure Bulletin Vol. 21, No. 4 (September 1978),~discloses the use of a coded disk for con~trolling the position of an electrographic printer. The coded ~", ~,~, , :
~ .
~ .
:
..
' ~ ' l disk, which is connected to a stepper motor, has a plurality of equidistant marks around its periphery, -the photoelectrical sensing of which marks during rotation of the disk generates print pulses. This arrangement allows synchronization of the print positions along a line OL print to be independent of the motor speed.
Embodiments of the invention will be described in detail below with reference to the accompanying drawings, in which:
Fig. l is a schematic representation of a coded disk with marks for generating stepper motor standard pulses and print pulses, Fig. 2 is a partly schematic representation of a stepper motor showing a standard phase angle ~
for a standard control pulse and an acceleration phase angle ~aand a deceleration phase angle ~ ~d_ for the acceleration and deceleration pulse, respectively, Figs. 3A to 3C are schematic representations of pulse diagrams for deriving a deceleration pulse, Figs. 4A to 4B are schematic representations of ; pulse diagrams for deriving a deceleration pulse from the marks on the coded dlsks applicable for the derivation of the pxint pulses, Fig. 5 is a schematic representation of different speed profi]es, Fig. 6 is a block diagxam of an arrangement fox generating stepper motor control pulses at particular given angular positions.
In printing a line, for example, the stepper motor driven print head of a metal paper printer has a :~ :
.
2a 1 particular speed profile. This speed profile (see Fig. 5) is marked by a starting phase (Inl) at the beginning of the print line, a uniform speed phase (In2) during which the speed is approximately uniform, and by a deceleration phase (In3) at the end of the print line.
It is desirable to op-timize the acceleration and deceleration characteristics of the stepper motor, and to assist in such optimization deceleration pulses have been applied to the motor to act as delayed standard control pulses. The delay time determined the size of the so-called deceleration angle which will be referred to in detail in connection with Fig. 2. As the magnitude of the time delay did not vary between motor steps, the following disadvantage was encountered. The occurrence of speed fluctations of the stepper motor (e.gO, as a result of load variations and temperature in~luences) led on occasion to initiation of the delayed deceleration pulses at differiny deceleration phase angles. As a result, deceleration conditions obtained were non uniform. In practice, after a series of lines had been printed, their end points (point Z on the speed profile of Fig. 5) wou]d be horizontally displaced relative to each other. A displacement of that point - caused by unfavourable deceleration characteristics leading to motor oscillations - meant, also, that after print head return following the emission of a particular number of position pulses determining the line length, the line starting points would similarily be horizontally displaced relative to each other.
This disadvantage has little or no effect on metal paper printers with relatively lower speeds. However, at increasing print speeds and print resolutions, it will be obvious .
6/~ 3 from the foregoing remarks that deri~ation of acceleration or deceleration pulses using a standard control pulse in an electronic time delay circuit may result in ~1 intolera~le situation.
Therefore, it is the object of ~he invention to provide means for generating a deceleration or acceleration pulse at particular angular positions (meaning the angular positions of the rotor relative to the stator) of the stepper motor. In addition, it is the object of the invention to provide means for a quantized speed control of the stepper motor.
One form of the invention is a method for controlling he speed of a stepper motor, which comprises the steps of attaching a coded disk thereto to rotate ~ith the rotor thereof, the periphery of the disk having equidistant marks therearound, and applying to the stepper motor,^at times corresponding to discrete angular positions of the rotor relative to the motor stator acceleration or deceleration control pulses. The method may further comprise determining val~es characterizing discrete angular positions for a time-optimized, oscillation-free acceleration or deceleration range of the motor, and storing the values with the aid of a program for generating motor control pulses with rigid angles. Alternately, the method may further comprise determining values characterizing discrete angular posi~ions for different uniform speed ranges o~ the motor with different given speeds.
Another form of the invention is a coded disk for implementing the foregoing methods, which disk has finer equidistant marks arranged between the equidistant marks, which ; finer equidistant marks are arranged for derlving control pulses with rigid angles in a standard motor control step.
A still further form of the invention is a circuit for implementing the foregoing methods usiny the foregoing coded disk, which circuit comprises a sensor, a programmable cyclic counter, a progxammable value assignment circuit, a decoder, a cyclic counter, and control line$. The sensor senses the finer equidistan~ marks on the coded disk. The programmable : . ' : ' ' ' ~ '~
1 cyclic counter is clock-driven by the pulses sensed, and has output pulses representing the motor control pulses. The decoder has each of its output lines connected to the programmable value assignment circuit.
The cyclic counter is clock driven by the motor control pulses over a given range of the speed profile of the stepper motor, and has output lines connected to the decoder, that can be successively activated for the individual steps of the given speed profile range. The control lines are connected to each stage of the programmable cyclic counter. The stages of the programmable cyclic counter are connectable either to the control lines for starting and accelerating the motor and maintaining it at a uniform speed or connectable to the outputs of the value assignment circuits, such that the programmable cyclic counter receives for each motor step an initial value which is such that it ensures the occurrence of an overflow pulse acting as a motor control pulse at the time of the desired angular position of the motor.
In a yet still further form of the invention, the programmable cyclic counter and the cyclic counter are binary counters and the stages of the programmable cyclic counter are proceeded by one OR gate each.
In a further form of the invention, the line carrying the output pulses of the programmable cyclic counter is connected to a delay element for emitting the motor control pulses~
The foregoing methods, coded disk or circuits may be utilized to move a metal paper printer print head along a line.
1 Fig. 1 shows a schematic representation of a coded disk with marks fcr generating stepper motor control pulses. The axle of the stepper motor that drives the print head of a metal paper printer (not shown) extends through the symmetric axis bore 2 of the coded disk 1.
The print head is to be moved across the record carrier line by line. Each time the motor movesl a photo-electronic device (not shown), aimed at the periphery of the coded disk, senses the mark MAl, MA2, MA3, etc., and transmits a signal from which will be derived the standard control pulses for the motor.
These marks and those arranged between them (MP2 to MP8) are utilized in deriving print pulses. A
different number of control pulses in each motor step cycle is e~ually conceivable. By coupling rotation of the stepper motor to lateral displacement and return of the print head, synchronization of the individual print positions along the print line is independent of the motor speed. Such synchronization is also required because the speed curve of the print head fluctuates over a print line. This speed curve is marked by a starting phase, a phase during which the speed is approximately uniform (uniform phase), and a deceleration phase at the end of the print line.
At particular positions of the rotor relative to the stator, drive of the motor (see also Fig. 2) is generally effected by standard control pulses. For a particular motor speed the control pulse is emitted at a particular angular position (which is speed-dependent). The angular positions for different speed values are also different. It is assumed that the angle values for speed controlling the stepper ~otor are :
3~ ~
a~ailable in the system; hey may be empirically or algorithmically determined.
As an example, assume that such a standard control pulse is applied to the coil 7 Oc the stator pole 5 at a time when the rotor 6 is at an angle ~,~relative to the stator pole.
This angle is necessary for maintaining a particular speed. The clockwise direction of rotation of the rotor is marked by an arrow. If the control pulse occurred at the angular position ~+ ~ ~, the prematuxe attraction of the rotor pole (north) relative to the stator pole (south) would lead to an acceleration of'the motor, because of the acceleration phase ansle ~ ~ . In this manner, premature or delayed control pulses (with reference to the standard control pulses of a corresponding angular position) can influence the speed characteristics of the stepper motor.
A delay of the standard control pulse at the angular position ~by, for example, ~ ~1, would lead to a decelerztion.
This deceleration would be particularly pronounced if ~ ~
extended into the area on the right of the stator pole 5, because in such a case the south pole of stator 5 and the nor'~h pole of the rotor 6 would be mutually attracted, opposing the direction of rotation of the motor.
As previously mentioned, rotation of the stepper motor sta'tor was previously decelerated by delaying the emission of the standard control pulse. ' Such a time delay, which is illustrated as T~ in Fig. 3, produces the desired deceleration phase angle ~
Further details may be seen from the pulse diagrams in Figs. 3A to 3C.
Fig. 3 illustrates ~wo standard control pulses PAl and PA2 of the stepper motor, which pulses are separated from each other in time. These pulses are assumed to occur at times when the marks MAl and MA2 of th'e coded disk are photo-electron-ically sensed.~ In order to generate ~ corresponding deceleration pulse PSl (see Fig. 3C) on the basis ~f the pulse PAl, it would ~e conceivable to apply the pulse P~l to a monostable multivibrator, not shown, operating at ~he delay time TD (see . .
-- --- - .
Q~3 Fig~ 3~). After the delay time TD has elapsed, the ~eceleration pulse PSl is generated by means of the trailing edge or the multivibrator output sigr,al PD at the time tl and used to decelerate the stepper motor.
The delay time T~ generated by the monostable multi-vibrator is constant. The fact that the occurrence Gf the deceleration pulse P$1 is solely determined by the time TD does not make allowance for speed fluctuations of the rotor occurring during that time. Such speed fluctuations may be attributable to load fluctuations or temperature influences affecting the electronic circuits. When such speed fluctuations are encountered, a fixed uniform deceleration angle~ ~lis no longer ensured because of the constant delay time TD. However, a change in that angle leads to de~iations from the optimum deceleration characteristics. Such deviations are particularly critical ln electrographic printers wlth a high print speed and a very high print resolution, respectively.
Therefore, in the case of such applications the speed profile o~ the stepper motor can no longer be influenced by constant time delays in the corresponding standard control pulses.
Continued adherence to that principle ~70uld lead to motor oscillations and displacements of the whole speed profile alon~
the print line and thus to a poor print image, so that a~ter the print head has been reset by a corresponding number of print positions - as a function of an electronic count - the next line would start at a position horizontally displaced from the previous one.
To eliminate this disadvantage, the deceleration pulses are derived directly from the coded disk, to ensure that the optimum deceleration a~gle (e.y., ~ ~ in Fig. 2) is strictly adhered to. For this purpose, further marks (MP2 to MP~) for deriving the print pulses are provided on the coded disk IFi~. 1) between the marks MAl, ~2, MA3, etc. for deriving the standard control pulses. All marks are sensed by a photo-electronic sensor ~not shcwn). As a result, pulse sequences, as shown in Fig. 4A, are generated: Each standard step cycle of the motor (starting, for example, at PA1 or PA2, etc~) comprises a total .
~L~
n~ber of 8 print pulses Pl to P8. The flrst print pulse Pl of each cycle is identical with the standard con~rol pulse PAl (PA2, etc.) of that cycle. The occurrence of the print pulses is subject to fixed an~ular phase positions of the stepper motor.
The spacing of these angular positions is a function of the number of print pulses used in the step cycle of a motor. It is assumed that the spacing is such that the speed profile of the motor can be most effectively influenced.
For purposes of illustration, assume that the optimum deceleration phase angle ~ ~ in accordance with Fig. 2 exists when the second mark MP3 (after MAl or MA2 or M~3 etc.), which leads to the emission of the pulse P3 of Fig. 4A, passes the sensor. The occurrence of pulse P3 in accordance with Fig. 4B
would be identical with that of the deceleration pulse PS2.
This would ensure that, despite possible speed fluctuations of the motor in the range of the deceleration angle ~ ~ , the deceleration pulse PS2 would occur exactly at the time at which the rotor assumes the deceleration phase angle ~ ~l(with refer-ence to the angle ~ of the standard control pulse). This would preclude the possibility of the speed profile of the motor being displaced along the print line.
To ensure an optimum deceleration phase, there must be no overshooting by the motor after it has reached the "stop"
position. For optimum deceleration characteristics, ~ values deviating from the angular values of the differen~ speeds are predetermined for the deceleration pulses. It is assumed that the optimum deceleration phase comprises 5 motor steps. During the individual steps the motor would operate at different average speeds Vl, V2, V3, V4, and V5. For each step a deceleration phase angle ~ 2, ~3, ~4, and ~5, is predetermined.
These deceleration phase angles can be empirically or algorith-mically determined. When the deceleration pulses during the 5 deceleration steps are applied in accordance with the ~ ~
values, optimum deceleration characteristics are obtained for the mo or. Such optimum deceleration characteristics would not be ensured,~if, for example, o~her deceleration angles were used which, although leading to the value O of the speed g curve being reached more rapidly, would cause undesirable oscillations of the motor.
Pis. 6 shows a block diagram of a circuit for generating the stepper motor control pulse ensuring optimum deceleration characteristics. It is assumed that l. a motor step comprises 8 print pulses Pl to P8 (it is conceivable to use another number of steps for other embodiments) and
2. optimum deceleration of the stepper motor is to be effected in the course of 5 motor steps (other step numbers are equally conceivable).
In accordanee with the 8 print pulses to be generated for each motor step, the circuit of Fig. 6 comprises a cyclic progra~mable binary counter 10 with 4 stages. This counter 10 is clock-driven. The print pulses on line ll, which are derived from the marks MPl to MP8 of the coded disk., are used as a clock. The pulses occurring on the carry line 12 of the counter 10 are used as motor control pulses. The time variance between the emission of the motor control pulses and the sensing of the marks M~1, MA2, M~3, on the coded disk is controlled by the circuitry of Fig. 6, which will now be more fully described.
The marks MAl, MA2, MA3, etc., and the marks MP2 to MP8 arranged between them are used to derive the print pulses Pl to P8 for each motor step. The counter 10 is clock-driven by these print pulses. If ~ motor control pulse instead of occurring at the sensing time of a mark, e.g., MAl or MA2, is to occur, for example, two print pulses later, a corresponding initial value must be loaded into counter 10 prior to the count process beginning with MAl or MA2. This lnitial value must be such that the counter 10 overflows after receipt of two print pulses on cloek line 11, emitting a motor control pulse on the carry line 12. For the four-stage binary counter 10, this initial ~alue would have to be the deeimal value 13 ~binary 1101).
Assignment of the initial value for the counter 10 is effected via the OR gates 13, 14, 15, and 16 which are connected in ~eaeh case to one stage of the binary counter 10.
The function of the cireuit m~y be readily appreciated on the basis of the previous description.
:: :
:: .
, ' The stepper motor is started by applying thereto a motor starting signal. As shown in the circuit Fig. 6, the motor starting signal is applied through line 17. This starting signal causes the motor and the coded disk connected to it to start rotating. During this rotation, the marks MPl, MP2, etc., are sensed. The starting signal defines one of the marks on the periphery of the coded disk as MAl. All further marks MA2, MA3/
etc., are then defined by an "eighth" count (starting with MAl =
MPl - 1, MP2 - 2, MP3 = 3, etc., until MP8 = 8 for the rirst count cycle and motor step, respectively, and continuing with MA2 = MPl = 1, MP2 = 2, etc., for the subsequent motor step).
Line 17 is connected to the OR gates 13, 14 and 16, and after application of the motor starting signal, a signal trans-~itted through line 17 to these gates generates the succeeding motor control pulse. Subsequently, these OR gates set the corresponding binary stages of counter 10 by means of their output signal.
In this embodiment, the motor control pulses are to occur always at the time of the second print pulse in a motor step dùring the starting and uniform speed phases. If it is desired to assign a different value - if, for example, the occurrence of the motor control pulse is not to be determined by the second but by another print pulse ln a motor step -line 17 must be connected to ano~her combination of OR gates.
As a motox step comprises altogether 8 print pulses, ~t must be ensured by suitable switching means that all motor pulses following the first motor con~trol pulse (genera~ed at the-time of the second print pulse) are generated 8 print pulses later than the pxeceding motor control pulse. For this purpose, line 18, which is connected to the OR gate 13, is activated to obtain the further motor control pulse for the starting and the uniform speed range of the motor until the deceleration phase is reached.
At the beginning of a count cycle, this OR gate 13, via its ou~tput line, pulses the highest value stage, marked (8), of the binary counter 10. In this manner, the initial value 8 is set in counter 10 after the first motor control pulse has been generated, so that said counter acts~ as a clock by emitting a fresh mo.or control pulse after eight further print pulses.
'., ~ . ~
.
.
As previously mentioned, this new motor control pulse occurs 8 pri.nt pulses iater than the preceding motor control pulse.
~ o~ the deceleration phase, an initial value for each assumed motor step is assigned to counter 10 in a particular manner. In the case of the present embodiment it is assumed - as previously indicated - that the deceleration phase comprises altogether 5 motor steps. The motor control pulse for each motor step is to be generated upon the occurrence o~ a particular print pulse during a motor step.
Thus, for example, assume in a particular system that the optimum motor control pulse for the first step occurs during the first print pulse, for the second step occurs during the fourth print pulse, for the third step occurs during the second print pulse/ for the fourth step occurs during the fourth print pulse, and for the last an~ fifth step occurs during the third print pulse. The values for any system, by which optimllm deceleration of the motor, and thus its complete standstill without oscillations~ can be effected in five steps, may be determined either by means of an algorithm ~using a program computation) or by means of a test, and can be stored in the form of a program. During the deceleration phase, each of these values is loaded into the counter 10 to act as a ~corresponding initial value for each assumed motor step prior to the actual count process. Th.e initial value must ensure that the motor control pulses occur on the carry line 12 of the counter 10 at the desired print pulse times. Upon the ~oc~urrence of the last motor control pulse during the so-called uniform speed phase of the motor, a corresponding initial value is assigned to counter 10 for each count cycle of the assumed five subsequent motor steps of the deceleration phase.
~The deceleration phase is indicated by a signal on line 32. This signal is derived ~rom the count of the individual motor steps for the starting and the uniform speed phase. It is applied to an AND gate 33~ the second input of which is connected to the carry ~ine of the counter 10. Via the output of the AND gate 33r the four-stage binary counter 19 is pulsed. The outputs of the individual stages of this counter are connected to a decoder 21 via lines 20.
. .. .
.:
. - ~ ;- , . ~: .
' , . . . ............................ .
;~ u According to the five predetermined motor steps for the deceleration phase, this decoder comprises five output lines S1 to S~ whi_h for value assignmen~ are connected to one circuit each, Wl to W5 (22 to 26). These circuits W1 to W5 may effect either a permanently wired value assignment or they may be desiyned in such a manner that value assignment is effected under the control of a program. The switches required for such programmable value assignment are conventional and thus will not be described in detail. The value assignment circuit W1 (22) is connected to a control line 22-1 on which a corresponding value assignment is effected for said circuit (Binary value assignment would be limit0d to "set" or "do not set" a binary state. For value assignments exceeding a simple binary state r the value assignment circuit consists of several binarily weighted stages, each of which is separately addressable). The other circuits 23 to 26 are correspondingly connected to the value assignment circuits 23-1 to 26-1. The value to be assigned to each of the circuits W1 to W5 ~i.e., the initial value for counter 10) is related to that print pulse within each of the five motor steps which is to correspond with the five desired motor control pulses-. A corresponding initial value determining the time of each motor control pulse is to be set in counter 10.
~s counter 10 in the embodiment described has four binary stages and each binary stage is connected to one of the OR gates 13 to 16, via which counter 10 receives its initial values, the four outputs of the value assignment circuits 22 to 26 are connected to one of said OR gates 13 to 16. For clarity's sake, the four outputs of the value assignmen~ circuits are not directly connected to each of the OR circuits 13 to 16 but a set of four OR gates 27 to 30 is connected in ~etween the former and the latter.
The value assignment mode will be described by way of an example. During the first step of the deceleration phase, line Sl is activated. This line causes the value assignment circuit Wl (22) to emit corresponding binary signals to the four OR gates 27 to 30, the outputs Qf wh~ch are connected to one stage each of counter 10 via the OR gates 13 to 16. Advancing the counter 19 from one motor step to another during the ~6 ~ U
deceleration phase causes the output lines S1 to SS of the decoder to be successively activated. In accordance with the value assignm~lts r predetermined values are set iII counter 10 during each motor step It would have been easier from the circuit point of view, although less clear from the point of view of the drawings, if 0~ gates 13 to 16 had been shown to carry out the function of ~R gates 27 to 30. Another reason for using the binary counters 10 and 19, although their capacity is unnecessarily great in some cases, was that they are readily commercially available. For clarity of illustration, the resetting and control lines for gating the initial values into the counter have not been considered.
The circuit shown in Fig. 6 can be extended by applying the motor control pulses via a delay circuit (not shown). In the absence of such a delay circuit, the occurrence of only the slightest motor oscillations ~ould prevent the generation of a new motor control pulse at a speed close to zero, ~ecause such oscillations would prematurely set the motor speed to zero.
(Note: Such slight motor oscillations can generally be neglec~ed, unless the motor speed is close to zero.) The delay element permits generating the last control pulse at a time at which motor oscillations, if any, are encountered and using such oscillations as a principal control variable. In this manner, the final motor step wo~ld always be clearly defined.
It is pointed out that when a delay element is used, the delay time of such a delay element has to be considered for all phase angle values of the system.
The embodiment shown in Fig. 6 is limited to the deceleration phase of the stepper motor. The principle of step optimization pursued in that case, i.e., a motor control occurs upon the emission of a particular print pulee in a motor step, is equally applicable to the starting and the uniform speed~phase of the motor, respectively.
By using correspondlng motor control pulses which .
` ~ ~ are generated~at the time of~occurrence of particular print pulses, the motor speed during the uniform speed phase is influenced in such a manner that it i.s approximately constant, :,: , . : ~ ~ . . : .
. . ' , : `' :". ' ' .
:
~ .
; ~ , -
In accordanee with the 8 print pulses to be generated for each motor step, the circuit of Fig. 6 comprises a cyclic progra~mable binary counter 10 with 4 stages. This counter 10 is clock-driven. The print pulses on line ll, which are derived from the marks MPl to MP8 of the coded disk., are used as a clock. The pulses occurring on the carry line 12 of the counter 10 are used as motor control pulses. The time variance between the emission of the motor control pulses and the sensing of the marks M~1, MA2, M~3, on the coded disk is controlled by the circuitry of Fig. 6, which will now be more fully described.
The marks MAl, MA2, MA3, etc., and the marks MP2 to MP8 arranged between them are used to derive the print pulses Pl to P8 for each motor step. The counter 10 is clock-driven by these print pulses. If ~ motor control pulse instead of occurring at the sensing time of a mark, e.g., MAl or MA2, is to occur, for example, two print pulses later, a corresponding initial value must be loaded into counter 10 prior to the count process beginning with MAl or MA2. This lnitial value must be such that the counter 10 overflows after receipt of two print pulses on cloek line 11, emitting a motor control pulse on the carry line 12. For the four-stage binary counter 10, this initial ~alue would have to be the deeimal value 13 ~binary 1101).
Assignment of the initial value for the counter 10 is effected via the OR gates 13, 14, 15, and 16 which are connected in ~eaeh case to one stage of the binary counter 10.
The function of the cireuit m~y be readily appreciated on the basis of the previous description.
:: :
:: .
, ' The stepper motor is started by applying thereto a motor starting signal. As shown in the circuit Fig. 6, the motor starting signal is applied through line 17. This starting signal causes the motor and the coded disk connected to it to start rotating. During this rotation, the marks MPl, MP2, etc., are sensed. The starting signal defines one of the marks on the periphery of the coded disk as MAl. All further marks MA2, MA3/
etc., are then defined by an "eighth" count (starting with MAl =
MPl - 1, MP2 - 2, MP3 = 3, etc., until MP8 = 8 for the rirst count cycle and motor step, respectively, and continuing with MA2 = MPl = 1, MP2 = 2, etc., for the subsequent motor step).
Line 17 is connected to the OR gates 13, 14 and 16, and after application of the motor starting signal, a signal trans-~itted through line 17 to these gates generates the succeeding motor control pulse. Subsequently, these OR gates set the corresponding binary stages of counter 10 by means of their output signal.
In this embodiment, the motor control pulses are to occur always at the time of the second print pulse in a motor step dùring the starting and uniform speed phases. If it is desired to assign a different value - if, for example, the occurrence of the motor control pulse is not to be determined by the second but by another print pulse ln a motor step -line 17 must be connected to ano~her combination of OR gates.
As a motox step comprises altogether 8 print pulses, ~t must be ensured by suitable switching means that all motor pulses following the first motor con~trol pulse (genera~ed at the-time of the second print pulse) are generated 8 print pulses later than the pxeceding motor control pulse. For this purpose, line 18, which is connected to the OR gate 13, is activated to obtain the further motor control pulse for the starting and the uniform speed range of the motor until the deceleration phase is reached.
At the beginning of a count cycle, this OR gate 13, via its ou~tput line, pulses the highest value stage, marked (8), of the binary counter 10. In this manner, the initial value 8 is set in counter 10 after the first motor control pulse has been generated, so that said counter acts~ as a clock by emitting a fresh mo.or control pulse after eight further print pulses.
'., ~ . ~
.
.
As previously mentioned, this new motor control pulse occurs 8 pri.nt pulses iater than the preceding motor control pulse.
~ o~ the deceleration phase, an initial value for each assumed motor step is assigned to counter 10 in a particular manner. In the case of the present embodiment it is assumed - as previously indicated - that the deceleration phase comprises altogether 5 motor steps. The motor control pulse for each motor step is to be generated upon the occurrence o~ a particular print pulse during a motor step.
Thus, for example, assume in a particular system that the optimum motor control pulse for the first step occurs during the first print pulse, for the second step occurs during the fourth print pulse, for the third step occurs during the second print pulse/ for the fourth step occurs during the fourth print pulse, and for the last an~ fifth step occurs during the third print pulse. The values for any system, by which optimllm deceleration of the motor, and thus its complete standstill without oscillations~ can be effected in five steps, may be determined either by means of an algorithm ~using a program computation) or by means of a test, and can be stored in the form of a program. During the deceleration phase, each of these values is loaded into the counter 10 to act as a ~corresponding initial value for each assumed motor step prior to the actual count process. Th.e initial value must ensure that the motor control pulses occur on the carry line 12 of the counter 10 at the desired print pulse times. Upon the ~oc~urrence of the last motor control pulse during the so-called uniform speed phase of the motor, a corresponding initial value is assigned to counter 10 for each count cycle of the assumed five subsequent motor steps of the deceleration phase.
~The deceleration phase is indicated by a signal on line 32. This signal is derived ~rom the count of the individual motor steps for the starting and the uniform speed phase. It is applied to an AND gate 33~ the second input of which is connected to the carry ~ine of the counter 10. Via the output of the AND gate 33r the four-stage binary counter 19 is pulsed. The outputs of the individual stages of this counter are connected to a decoder 21 via lines 20.
. .. .
.:
. - ~ ;- , . ~: .
' , . . . ............................ .
;~ u According to the five predetermined motor steps for the deceleration phase, this decoder comprises five output lines S1 to S~ whi_h for value assignmen~ are connected to one circuit each, Wl to W5 (22 to 26). These circuits W1 to W5 may effect either a permanently wired value assignment or they may be desiyned in such a manner that value assignment is effected under the control of a program. The switches required for such programmable value assignment are conventional and thus will not be described in detail. The value assignment circuit W1 (22) is connected to a control line 22-1 on which a corresponding value assignment is effected for said circuit (Binary value assignment would be limit0d to "set" or "do not set" a binary state. For value assignments exceeding a simple binary state r the value assignment circuit consists of several binarily weighted stages, each of which is separately addressable). The other circuits 23 to 26 are correspondingly connected to the value assignment circuits 23-1 to 26-1. The value to be assigned to each of the circuits W1 to W5 ~i.e., the initial value for counter 10) is related to that print pulse within each of the five motor steps which is to correspond with the five desired motor control pulses-. A corresponding initial value determining the time of each motor control pulse is to be set in counter 10.
~s counter 10 in the embodiment described has four binary stages and each binary stage is connected to one of the OR gates 13 to 16, via which counter 10 receives its initial values, the four outputs of the value assignment circuits 22 to 26 are connected to one of said OR gates 13 to 16. For clarity's sake, the four outputs of the value assignmen~ circuits are not directly connected to each of the OR circuits 13 to 16 but a set of four OR gates 27 to 30 is connected in ~etween the former and the latter.
The value assignment mode will be described by way of an example. During the first step of the deceleration phase, line Sl is activated. This line causes the value assignment circuit Wl (22) to emit corresponding binary signals to the four OR gates 27 to 30, the outputs Qf wh~ch are connected to one stage each of counter 10 via the OR gates 13 to 16. Advancing the counter 19 from one motor step to another during the ~6 ~ U
deceleration phase causes the output lines S1 to SS of the decoder to be successively activated. In accordance with the value assignm~lts r predetermined values are set iII counter 10 during each motor step It would have been easier from the circuit point of view, although less clear from the point of view of the drawings, if 0~ gates 13 to 16 had been shown to carry out the function of ~R gates 27 to 30. Another reason for using the binary counters 10 and 19, although their capacity is unnecessarily great in some cases, was that they are readily commercially available. For clarity of illustration, the resetting and control lines for gating the initial values into the counter have not been considered.
The circuit shown in Fig. 6 can be extended by applying the motor control pulses via a delay circuit (not shown). In the absence of such a delay circuit, the occurrence of only the slightest motor oscillations ~ould prevent the generation of a new motor control pulse at a speed close to zero, ~ecause such oscillations would prematurely set the motor speed to zero.
(Note: Such slight motor oscillations can generally be neglec~ed, unless the motor speed is close to zero.) The delay element permits generating the last control pulse at a time at which motor oscillations, if any, are encountered and using such oscillations as a principal control variable. In this manner, the final motor step wo~ld always be clearly defined.
It is pointed out that when a delay element is used, the delay time of such a delay element has to be considered for all phase angle values of the system.
The embodiment shown in Fig. 6 is limited to the deceleration phase of the stepper motor. The principle of step optimization pursued in that case, i.e., a motor control occurs upon the emission of a particular print pulee in a motor step, is equally applicable to the starting and the uniform speed~phase of the motor, respectively.
By using correspondlng motor control pulses which .
` ~ ~ are generated~at the time of~occurrence of particular print pulses, the motor speed during the uniform speed phase is influenced in such a manner that it i.s approximately constant, :,: , . : ~ ~ . . : .
. . ' , : `' :". ' ' .
:
~ .
; ~ , -
3~
By suitably selecting the time of the motor control pulse, it is also possible to achieve different speeds, as may be seen from the representation in ~ig. 5, curves A, B and C~
It i5 the use of microprocessors in particular that permits generating particular theoretically predetermined speed profiles. For this purpose, the microprocessors can control the pulse control sequence of the stepper motor, taking into account the various acceleration and deceleration phase angles for the individual motor steps. ~eviations frsm a predetermined speed profile can be measured by conventional means (e.g., by the time measurement between two subsequent print pulses), and as a function of such deviations the microprocessor could control the stepper motor in the desired speed range.
,~ .
. ~
, ~ :
,: ~ . :
:
: ; , , ~ .
By suitably selecting the time of the motor control pulse, it is also possible to achieve different speeds, as may be seen from the representation in ~ig. 5, curves A, B and C~
It i5 the use of microprocessors in particular that permits generating particular theoretically predetermined speed profiles. For this purpose, the microprocessors can control the pulse control sequence of the stepper motor, taking into account the various acceleration and deceleration phase angles for the individual motor steps. ~eviations frsm a predetermined speed profile can be measured by conventional means (e.g., by the time measurement between two subsequent print pulses), and as a function of such deviations the microprocessor could control the stepper motor in the desired speed range.
,~ .
. ~
, ~ :
,: ~ . :
:
: ; , , ~ .
Claims (8)
1. Apparatus for controlling the profile of relative velocity between the rotor and stator of a stepping motor by producing motor advance pulses at times dependent upon the relative displacement of said rotor and stator comprising:
disk means mounted for rotation with said rotor bearing sensible first indicia arranged equiangularly on said disk and a plurality of sensible second indicia arranged equiangularly between each pair of said first indicia on said disk; and counter means operable to produce said motor advance signals, said counter means being settable with values corresponding to increments of rotor displacement at which each motor advance signal is to be supplied and being incrementally advanced to said displacement values by pulses representing said first and second indicia.
disk means mounted for rotation with said rotor bearing sensible first indicia arranged equiangularly on said disk and a plurality of sensible second indicia arranged equiangularly between each pair of said first indicia on said disk; and counter means operable to produce said motor advance signals, said counter means being settable with values corresponding to increments of rotor displacement at which each motor advance signal is to be supplied and being incrementally advanced to said displacement values by pulses representing said first and second indicia.
2. Apparatus as described in claim 1 wherein said counter means has a predetermined count capacity and provides a said motor advance signal when filled and said counter means is set with the complement of the number of increments of displacement represented by said pulses at which a motor advance signal is to occur.
3. Apparatus as described in claim 1 wherein said counter means includes means responsive to a predetermined number of pulses representing said first indicia and said advance pulses for setting successive displacement values in said counter means during deceleration of said motor.
4. Apparatus as described in claim 1 wherein said counter means is settable with a said corresponding value in response to a said motor advance pulse.
5. Apparatus for controlling the profile of relative velocity between the rotor and stator of a stepping motor during acceleration or deceleration comprising:
a disk mounted for rotation with said rotor and bearing first sensible indicia arranged equiangularly about said disk and a plurality of second sensible indicia about said disk arranged equiangularly between each pair of said first indicia;
cyclic counter means incremented by pulses representative of each of said first and second indicia and operable on being filled for producing a motor advance signal; and means responsive to ones of said motor advance signals for presetting selected values in said counter means causing said advance signal to occur at varying displacements of said rotor beyond said selected ones of said first indicia.
a disk mounted for rotation with said rotor and bearing first sensible indicia arranged equiangularly about said disk and a plurality of second sensible indicia about said disk arranged equiangularly between each pair of said first indicia;
cyclic counter means incremented by pulses representative of each of said first and second indicia and operable on being filled for producing a motor advance signal; and means responsive to ones of said motor advance signals for presetting selected values in said counter means causing said advance signal to occur at varying displacements of said rotor beyond said selected ones of said first indicia.
6. The method of varying the point of application of advance signals to a stepping motor to thereby vary the relative velocity profile between the rotor and stator of said motor during acceleration or deceleration comprising the steps of:
determining the successive positions for applying each standard advance signal to produce said relative velocity; and selectively changing the point of application of an advance signal from one of said standard signal positions by a discrete value of relative displacement between said rotor and said stator by counting a predetermined number of displacement increments between successive standard signal positions.
determining the successive positions for applying each standard advance signal to produce said relative velocity; and selectively changing the point of application of an advance signal from one of said standard signal positions by a discrete value of relative displacement between said rotor and said stator by counting a predetermined number of displacement increments between successive standard signal positions.
7. The method of claim 6 further including the step of using a said changed advance signal to set said discrete value for the succeeding advance signal from its standard position.
8. The method of claim 6 further including the step of selectively delaying an advance signal from a said standard signal position and using said delayed advance signal to set the delay of the succeeding advance signal from its standard position.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DEP2935800.7 | 1979-09-05 | ||
DE19792935800 DE2935800A1 (en) | 1979-09-05 | 1979-09-05 | QUANTIZED SPEED CONTROL OF A STEPPER MOTOR |
Publications (1)
Publication Number | Publication Date |
---|---|
CA1164930A true CA1164930A (en) | 1984-04-03 |
Family
ID=6080084
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA000359532A Expired CA1164930A (en) | 1979-09-05 | 1980-09-04 | Quantized speed control of a stepper motor |
Country Status (5)
Country | Link |
---|---|
US (1) | US4320330A (en) |
EP (1) | EP0025081B1 (en) |
JP (1) | JPS585600B2 (en) |
CA (1) | CA1164930A (en) |
DE (2) | DE2935800A1 (en) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4469995A (en) * | 1982-07-19 | 1984-09-04 | Mcc Associates | Method of stopping a stepping motor |
JPS59188397A (en) * | 1983-04-08 | 1984-10-25 | Tokyo Electric Co Ltd | Driving method of step motor |
JPS59188396A (en) * | 1983-04-08 | 1984-10-25 | Tokyo Electric Co Ltd | Driving method of step motor |
ES529123A0 (en) * | 1984-01-24 | 1984-10-01 | Carrio Llopis Miguel | OPTOELECTROMAGNETIC MOTOR |
DE3423420A1 (en) * | 1984-06-26 | 1986-01-02 | Hoechst Ag, 6230 Frankfurt | METHOD FOR DETECTING STEP LOSES IN STEPPER MOTOR-DRIVEN ACTUATORS |
US4635205A (en) * | 1984-10-04 | 1987-01-06 | Pitney Bowes Inc. | Microprocessor controlled d.c. motor for indexing postage value changing means |
US4636959A (en) * | 1984-10-04 | 1987-01-13 | Pitney Bowes Inc. | Microprocessor controlled d.c. motor for controlling a postage meter |
US4646635A (en) * | 1984-10-04 | 1987-03-03 | Pitney Bowes Inc. | Microprocessor controlled D.C. motor for controlling print value selection means |
US4630210A (en) * | 1984-10-04 | 1986-12-16 | Pitney Bowes Inc. | Microprocessor controlled d.c. motor for controlling a load |
DE3630312A1 (en) * | 1986-09-05 | 1988-03-17 | Thomson Brandt Gmbh | CIRCUIT ARRANGEMENT FOR ELECTRONIC COMMUTATION OF A DC MOTOR |
US4835448A (en) * | 1987-12-28 | 1989-05-30 | Sundstrand Corporation | Brushless DC motor torque control |
US4975608A (en) * | 1988-05-23 | 1990-12-04 | Harold Aspden | Switched reluctance motor with full accommutation |
JPH04312868A (en) * | 1991-04-12 | 1992-11-04 | Tokyo Electric Co Ltd | Printer carrier drive |
US5216245A (en) * | 1991-10-04 | 1993-06-01 | General Motors Corporation | Multi-color optical shaft position sensor |
TW492944B (en) * | 1997-03-20 | 2002-07-01 | Barmag Barmer Maschf | Traversing device and method for controlling a traversing device |
FR2820252B1 (en) * | 2001-01-31 | 2004-07-09 | Midi Ingenierie | BRUSHLESS MOTOR CONTROL SYSTEM |
DE10355153B4 (en) * | 2003-11-26 | 2006-04-20 | Tirron-Elektronik Gmbh | Stepper drive control with non-linear speed change |
CN112583309B (en) * | 2020-12-04 | 2022-05-13 | 大唐半导体科技有限公司 | Stepping motor speed adjustment control algorithm based on photoelectric encoder |
CN114268254B (en) * | 2021-12-28 | 2024-01-30 | 中元汇吉生物技术股份有限公司 | Rail transfer device, speed control method and system thereof and related medium |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3694725A (en) * | 1969-12-29 | 1972-09-26 | Ibm | Stepping motor control system using pulse injection |
US3757191A (en) * | 1971-02-22 | 1973-09-04 | Honeywell Inf Systems | Stepping motor control circuit |
DE2249757C3 (en) * | 1972-10-11 | 1975-07-31 | Ibm Deutschland Gmbh, 7000 Stuttgart | Method for controlling a stepping motor which is operated in the high and low speed range and circuit arrangement for carrying out the method |
US3863118A (en) * | 1973-01-26 | 1975-01-28 | Warner Electric Brake & Clutch | Closed-loop speed control for step motors |
GB1486428A (en) * | 1974-04-11 | 1977-09-21 | Int Computers Ltd | Motor drive control arrangements |
US4101006A (en) * | 1974-12-23 | 1978-07-18 | International Business Machines Corporation | Carrier traverse control for a serial printer |
US4025837A (en) * | 1975-06-30 | 1977-05-24 | International Business Machines Corporation | Adaptive control circuit for a stepping motor |
US4103216A (en) * | 1976-05-28 | 1978-07-25 | Tally Corporation | Stepping motor closed loop constant velocity control system |
US4158800A (en) * | 1976-10-26 | 1979-06-19 | Ncr Corporation | Control system |
-
1979
- 1979-09-05 DE DE19792935800 patent/DE2935800A1/en not_active Withdrawn
-
1980
- 1980-05-09 DE DE8080102564T patent/DE3065022D1/en not_active Expired
- 1980-05-09 EP EP80102564A patent/EP0025081B1/en not_active Expired
- 1980-06-30 US US06/164,430 patent/US4320330A/en not_active Expired - Lifetime
- 1980-09-04 CA CA000359532A patent/CA1164930A/en not_active Expired
- 1980-09-05 JP JP55122524A patent/JPS585600B2/en not_active Expired
Also Published As
Publication number | Publication date |
---|---|
JPS585600B2 (en) | 1983-01-31 |
US4320330A (en) | 1982-03-16 |
EP0025081A1 (en) | 1981-03-18 |
DE3065022D1 (en) | 1983-11-03 |
DE2935800A1 (en) | 1981-04-02 |
EP0025081B1 (en) | 1983-09-28 |
JPS5698399A (en) | 1981-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA1164930A (en) | Quantized speed control of a stepper motor | |
US4429268A (en) | Speed control for step motors | |
US4869610A (en) | Carriage control system for printer | |
EP0226450B1 (en) | Print head motor control system for printer with moving print head | |
SU822772A3 (en) | Device for control of synchronous motion of gear-working lathe | |
EP0314800B1 (en) | Device for controlling speed of servo motor | |
US4486693A (en) | Motor velocity control | |
US5663624A (en) | Closed-loop method and apparatus for controlling acceleration and velocity of a stepper motor | |
US3546553A (en) | System for maintaining a motor at a predetermined speed utilizing digital feedback means | |
US4712048A (en) | Process and apparatus for controlling the spindle speed of a gear cutting machine | |
DE3008289C2 (en) | Arrangement for positioning a type disc in a teletypewriter | |
EP0389641B1 (en) | Servo controller | |
DE69023401T2 (en) | Control voltage calculation method and motor control device using this method. | |
US3575653A (en) | Stepping motor control circuit | |
US4642542A (en) | Velocity control systems | |
US4127800A (en) | Means for adjustment of speed of prime mover | |
JPS5919182A (en) | Adjusting method of printing position of serial printer | |
EP0088626A2 (en) | Apparatus for controlling the speed of a rotating body | |
JPS6337597B2 (en) | ||
GB2105871A (en) | Speed control device for a stepping motor | |
SU641397A1 (en) | Electrohydraulic follow-up drive | |
US20230347644A1 (en) | Pulse generator | |
EP1790595B1 (en) | Skew correction system and method of controlling a skew correction system | |
JP2579970B2 (en) | Rotation control device | |
SU489973A1 (en) | Device for measuring the torque on the shaft |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MKEX | Expiry |