Presentation on theme: "Driver for Improving the Positioning Accuracy of Step Motors Eugen Ioan GERGELY, Alexandru GACSÁDI, Zoltán Tamás NAGY, Laura COROIU, Helga SILAGHI, Viorica."— Presentation transcript:
Driver for Improving the Positioning Accuracy of Step Motors Eugen Ioan GERGELY, Alexandru GACSÁDI, Zoltán Tamás NAGY, Laura COROIU, Helga SILAGHI, Viorica SPOIALA University of Oradea, Romania Two countries, one goal, joint success! www.huro-cbc.eu The content of this material does not necessarily represent the official position of the European Union.
1. Introduction Step motors are electromagnetic incremental-motion devices which convert digital pulse inputs to analog angle outputs. Their inherent stepping ability allows for accurate position control without feedback. That is, they can track any step position in open-loop mode; consequently no feedback is needed to implement position control. Stepper motors deliver higher peak torque per unit weight than DC motors. They are brushless machines and therefore require less maintenance. All of these properties have made stepper motors a very attractive selection in many position and speed control systems, such as in computer hard disk drivers and printers, XY-tables, robot manipulators, etc.
The speed of a stepper motor depends on the rate at which you torn on and off the coils, and is termed the step-rate. The maximum step-rate, and hence, the maximum speed, depends upon the inductance of the stator coil. It takes a longer time to build the rated current in a winding with greater inductance compared to a winding with smaller inductance. When using a motor with higher winding inductance, sufficient time needs to be given for current to build up before the next step command is issued. If the time between two step commands is less then the current build-up time, it results in a slip i.e. the motor misses a step.
II. STEP MOTOR CONTROL The controller is build around the PIC18C452. Two H-bridges are used to control two windings of the stepper motors. The following are the most common drive types: a. Two phase on full step drive b. Half step drive, where the motor moves half of the full step angle c. Microstepping (which requires unequal current flow in two windings), where the rotor moves a fraction of the full step angle (i.e. 1/4, 1/8, 1/16 or 1/32).
Microstepping A stepper motor has a natural resonant frequency. When the step=rate equals this frequency, we experience an audible change in the noise made by the motor, as well as an increase in vibration. The resonance point varies with the application and load, and typically occurs at low speed. In severe cases, the motor may lose steps at the resonant frequency. The best way to reduce the problem is to drive the motor in Half Step mode or Microstepping mode.
Although the resonance frequency depends upon the load connected to the rotor, it typically occurs at a low step-rate. If we move the motor in microsteps, i.e., a fraction of a full step (1/4, 1/8, 1/16 or 1/32), then the step–rate has to be increased by a corresponding factor (4, 8, 16 or 32) for the same rpm. Microstepping ( + ): a. Smooth movement at low speed b. Increased step positioning resolution, as a result of a smaller step angle c. Maximum torque at both low and high step-rates Microstepping ( - ): a. It requires more processing power b. The microstepping controller has to control the magnitude of current in both coil in the proper sequence.
III. IMPLEMENTATION The controller is build around the PIC18F452 microcontroller. Two PWM modules of the microcontroller are used to control current through two windings of the stator, and can be used for both full and half step.
Added features in the controller: a. Speed setting through a potentiometer connected to one of the ADC channels b. A step switch connected to one of the inputs of PORTB. If this switch is pressed, then the motor moves only one step (full, half or micro step) c. A toggle switch connected to one of the inputs to PORTB that decides the direction (forward or reverse) d. A DIP switch connected to PORTD is used to select the number of microsteps. e. DIP4 is use as the Enable switch. This has to be closed to run the motor with microsteps selected by DIP1-3.
Appropriate values of the PWM duty cycle (proportional to the required coil current) for each step are given in the table bellow. The table, corresponding to the PWM duty cycle, is stored in the program memory of the microcontroller. The table pointer of the PIC 18C452 is used to retrieve the value from the table and load it to the PWM registers to generate an accurate duty cycle.
Conclusions For a better control of the step motors one may use the microstepping control method. This increases the starting torque and leads to step lossless movements. In addition, microstepping a step motor increases stepping accuracy and reduces resonance in the motor at the self resonant frequency.