Topic:
- What speed accuracy can be expected if a motor controller is in use?
- How can the accuracy and stability of speed control be improved?
Solution:
The speed accuracy and variation is influenced on a lot of system parameters. Therefore it is difficult to state a concrete figure. In case of motor control based on an encoder feedback it should be possible to achieve a speed accuracy of 1 rpm or even better. Anyway it is important to understand which parameters might have the main impact for the concrete application and may even be optimized easily first of all.
- Feedback sensor's resolution
There is the need for a feedback sensor so that the controller can measure the actual speed and adjust it to the demanded speed.
Hints:- The feedback sensor has to be (stiffly) mounted on the motor shaft for best control results, i.e. use a motor combination with an integrated encoder.
- A higher resolution of the feedback sensor related to the motor shaft results in a more accurate speed measurement and better speed control. It is recommended to use an encoder with at least 500 cpt (= counts per turn) mounted on the motor shaft.
(see also in this article too: "Encoder selection") - A purely hall sensor based control just offers a very low resolution:
Hall sensor resolution per turn of the motor shaft = 6 x motor's pole pairs number.
This is not sufficient for low speed control. Rule of thumb to estimate the possible minimum speed in case of hall sensor based control:
Min. speed = 1000 rpm / no. of pole pairs
-
Motor's cogging torque
High-torque EC flat or EC-i motors have cogging torque which can result in some speed variation within one electrical turn of the motor shaft.
Hint:- There is an encoder (typ. 500 - 2000 cpt.) and a controller with fast control cycle rates and sophisticated control algorithms (like maxon's ESCON, EPOS, or MAXPOS product lines) recommended to ensure a stable constant low speed operation. A sinusoidal commutation (e.g. in use by EPOS and MAXPOS product lines) is an additional factor to improves motor's performance in case of a high cogging torque and very low speeds.
- There is an encoder (typ. 500 - 2000 cpt.) and a controller with fast control cycle rates and sophisticated control algorithms (like maxon's ESCON, EPOS, or MAXPOS product lines) recommended to ensure a stable constant low speed operation. A sinusoidal commutation (e.g. in use by EPOS and MAXPOS product lines) is an additional factor to improves motor's performance in case of a high cogging torque and very low speeds.
- Load's inertia
If the inertia of the load is quite high (e.g. in case of a disc directly mounted on the motor shaft or a centrifuge) and the motor is accelerated or decelerated quite fast, there is a high torque and motor current present. This can result in some oscillation if the controller's power stage or the power supply hits its current limits.
Hints:
- Try to reduce the configured acceleration or deceleration values in case of speed oscillation.
- Think about a more powerful motor, controller, and power supply.
- Take care of the high amount of reversed energy during deceleration of a high inertia.
(See also in this article: "Measures in case of energy recovery") - Remark:
Some inertia of the load can also help to block speed variations in case of a constant motion.
- Load's variation
If there is some strong variation of the load during motion present (e.g. in case of pumps), this can result in some short-term speed variation.
Hint:- There is an encoder (typ. 500 - 2000 cpt.) and a controller with fast control cycle rates and sophisticated control algorithms (like maxon's ESCON, EPOS, or MAXPOS product lines) recommended to react quickly on any changes of the external load.
- There is an encoder (typ. 500 - 2000 cpt.) and a controller with fast control cycle rates and sophisticated control algorithms (like maxon's ESCON, EPOS, or MAXPOS product lines) recommended to react quickly on any changes of the external load.
- Control parameters
A proper setting of control parameters is mandatory for smooth speed control and accurate speed profiles.
Hint:- Configure the motor and sensor data properly and tune the control parameters automatically with maxon's Studio software of the corresponding controller.
- In case of specific application demands improve the control parameters by manual tuning and optimization.
- Controller's sampling rate
A high current and speed control rate is required to achieve a fast reaction on any external influence to the motor or the motor's characteristics.
Hint:
- Use modern motor controllers with a high sampling rate of the current and speed control (e.g. maxon's ESCON, EPOS4, or MAXPOS product line).
- Use modern motor controllers with a high sampling rate of the current and speed control (e.g. maxon's ESCON, EPOS4, or MAXPOS product line).
- Commutation type
If there are brushless DC (= EC) motors in use, a so-called sinusoidal commutation (= FOC "Field Oriented Control) eliminates the torque ripple within one electrical turn of the motor shaft. This improves the smoothness of motion and reduces speed variation especially in case of low speed operation.
Hint:- Use an encoder (mounted on the motor shaft) and a modern motor controller which offer sinusoidal commutation (e.g. maxon's EPOS and MAXPOS product lines).
- Use an encoder (mounted on the motor shaft) and a modern motor controller which offer sinusoidal commutation (e.g. maxon's EPOS and MAXPOS product lines).
- Type of commanding
If there is an analog or a PWM commanding in use, you have to be aware that already this set value has some analog signal noise or PWM variation and the resolution of signal processing is limited. The controller and motor shaft speed might exactly follow the set value's variation.
Hint:
- If analog or PWM commanding is in use, take the limited resolution of the signal and signal processing (e.g. 12 Bit) into account to determine the speed resolution (= speed steps) and possible speed variation due to the set value's inaccuracy.
- If commanding of precise absolute speed values is required, there might be the need for commanding by a bus communication (e.g. RS232, USB, CAN, EtherCAT).
- Friction of the system
If there is some constant friction present, the motor cannot react so fast. This can also help to improve speed stability.
Stumbling block: Speed measurement!
One common stumbling block is quite often that the "Velocity actual value" which is measured and processed every speed control cycle by the motor controller is taken to judge about the speed accuracy and stability. This is wrong!
The "Velocity actual value" is a value which is calculated by counting sensor pulses per one control cycle period (e.g. 1 ms). The resulting speed value in [rpm] can strongly vary even at constant speed due to the measurement principle and depending on the sensor's resolution.
Another possible speed evaluation principle is the measurement of the period in between consecutive signal edges of the feedback sensor (e.g. encoder or hall sensors). This principle is partly in use by some controllers in case of low speed operation or low resolution sensors (like hall sensors). Although this pulse length speed measurement principle is more accurate at low speed or low feedback sensor resolution, there is its precision also limited by the resolution of the internal pulse length measurement unit and the sensor's accuracy itself. The pulse length measurement principle might be also have some drawbacks (compared to pulse counting per control cycle) in case of high speed operation (= short pulse lengths). Therefore the pulse counting method is often seen as default for speed measurement.
In case of both measurement principles it has to be noticed that hall sensors can have some remarkable tolerances by their mounting position. There is some inherent noise present by the speed measurement based on hall sensors (instead of encoders which are much more precise). This noise is especially obvious at low speed operation. Therefore it is a general recommendation to use encoders with at least 500 cpt. in case of low speed operation (typ. < 1000 rpm,1-pole pair motor). The encoder can improve the speed measurement and speed control results as well.
Most maxon controllers offer the possibility to record or read the so-called "Velocity actual value averaged" which is a filtered speed value. This filtered value is more stable and a better indication for the speed of the motor shaft. Anyway there is still some noise present because the software filter was designed in a way so that it does not completely flat any dynamic reaction or signal noise (e.g. due to the measurement principle and low resolution feedback sensors).
Example:
If there is an encoder with 500 cpt. in use and the speed control's cycle time is 1 ms, there is a "virtual" speed variation of the "Velocity actual value" possible in the range of +/- 30 rpm in case of the pulse counting measurement principle. There might be already one sensor's pulse edge present and counted while the consecutive control cycle has one less by its counts then. The resulting measured speed is 1 inc. per 1 ms (= 30 rpm) higher for the cycle which counted one pulse edge more than by the next control cycle.
Conclusion:
This variation by the measured "Velocity actual value" does not(!) correspond to a variation of the motor shaft speed but is due to the measurement principle and some "noise" based on limited sensor resolution, some tolerances of sensor edge and sample periods plus the extreme short control cycle's counting period.
Hint:
Judging about speed accuracy and possible variation should be focused on some process relevant factors of the application, e.g. "Is there any variation present in the quality or accuracy of work pieces influenced by the motor speed?", "Is there some pulsing behaviour or variation of the flow rate of a pump driven by the motor instead of a constant flow?", ....?
If there seems to be no useful criteria by the application present, it might be necessary to filter the "Velocity actual value" over a longer period of time or to attach some independent speed measuring device to the motor shaft.
Summary in practice
Selection of components:
- Choose a motor with no or almost no cogging torque.
EC-flat and EC-i motors partly have a significant cogging torque which can have some negative impact for extreme low speed operation. - Choose an encoder with a high resolution (at least 1024 cpt. or even much higher).
The encoder has to be mounted stiffly on the motor shaft. Best solution is if there is an encoder in use which is part of a maxon's motor combination. External encoders which are connected by belts, couplings, or even a gear are not recommended because this results in some additional negative impact on the control and motor reaction due to elasticity and backlash of such elements. - Use a controller (like maxon's EPOS4) with sinusoidal (= FOC) commutation in case of an EC motor plus a bus interface for commanding for the set value.
An encoder and a master controller (PC, PLC, microcontroller) with a bus interface are mandatory in this case. - Select a motor controller with a power stage's output current rating fitting to the motor's current demand based on the application's torque demand. In practice this means to select the controller with the "weakest" power stage that can fulfill your motor's voltage (-> speed) and current (-> torque) demand based on the concrete application.
- Add a load with some inertia (e.g. like a disc) if there is no need for highly dynamic acceleration or deceleration. If the motor is operated close to the "no load" working point, it might help to add some constant friction which increases the motor current level for a more precise current control. An increased inertia and increased friction can help to prevent fast changing speed variations by the mechanics too.
Please note:
- The lower the speed and / or the lower the encoder resolution, the higher will be the ripple or noise reported by the speed measurement.
Such a noise or ripple based on the speed measurement principle typically does NOT(!) represent actual speed variations by the motor shaft. - What does "constant speed" actually mean by your application?
e.g.- Does the speed have to be constant within some degrees of the motor shaft motion?
Has the required speed constancy be focused on some control cycles (of just some milliseconds) or periods based on just some encoder pulses? - Does the speed have to be constant rated over one complete turn of the motor shaft (evaluated at the same motor shaft position)?
- What impact has a speed variation focused on the functionality or precision of the final machine, device, or produced goods?
- Is it possible to judge the speed variation by some external measurement or process result of the machine or device?
Are there any other process factors which directly depend on the motor's speed accuracy and constancy?
- Does the speed have to be constant within some degrees of the motor shaft motion?
Recommended additional articles:
Comments
0 comments
Article is closed for comments.