Using a sensorless brushless DC motor & controller for dosing application
A lot more accurate than you might first think...
The challenge with this project was to find the most reliable and accurate method of dosing with sensorless brushless motors and controllers.
Whilst dosing with sensorless brushless motors and controllers is never going to be as accurate as a stepper motor and microstepping stepper motor controller, it might still exceed your expectations. Of course, a large part of the accuracy is also dictated by the pump that you are using and one must always take considerable time to assess the choice of pump if considering this as a potential option.
There are several key methods by which this project was attempted. The first, using time as a method, worked well but was not as accurate as we would have liked. The second involved an open loop system in which the commutation cycles were counted by the controller. The third, and the most accurate, was an improved version of the second idea in which the open loop system was swapped for a closed loop system to try and further limit the anomalies caused by changes in pressure.
Dosing via time
This is the simplest but least accurate method for dosing with sensorless brushless motors. However, depending on your requirement it may still be accurate enough. In this project we experimented with adjusting factors and found that we were able to get a reasonable level of accuracy using the onboard timer on the ZDBL15 Sensorless Brushless DC Motor Controller.
The idea here is obviously very simple – to calibrate the amount being dosed with the time taken to dose that particular amount. Once done, one need only adjust the time the motor is running (at a preset speed) and this change in time will lead to a change in the dose. This method is very susceptible to changes in pressure and the timing method itself always leaves slight room for variance with startup and deceleration in particular being affected by changes in pressure. These differences led to inaccuracies in the overall dosing performance.
Counting the commutation steps in open loop mode
This is more accurate than timing because its actively monitoring the number of motor turns. Resolution is dictated by the number of pole pairs in the motor. The higher the number of poles, the higher the resolution. In this particular project, the motor we were required to use was quite a low pole motor but we still found that this proved considerably more accurate than the timing method outlined above.
Depending on the type of pump being used it is possible to get very high accuracy dosing from this setup. The key advantage of this method over the simple time monitoring method is that it enables the system to accurately count the number of motor turns rather than simply relying on a rather approximated time/number of turns calibration which can easily change with differences in back pressure or other factors.
Sensorless Brushless DC Dosing demonstration using open loop, commutation counting method
Closed loop, constant speed under variable pressure commutation step counting in sensorless brushless DC motors
This method is a further improved version of the second method outlined above and was the method that we ultimately settled on for this particular project.
The key things to understand here are that, where the second method uses an open loop system, this system uses back-EMF monitoring to close the loop and pro-actively control the motor speed. This active monitoring allows the system to adjust to changes in external factors such as pressure with the resultant commutation cycle counting being more accurate as a result.
It was for this reason that we therefore settled on this method for this project.
Issues to be aware of...
There are a large number of factors which can impact on the accuracy of this particular method. The design, build quality and tolerances of the pumps will all have an impact. A potential issue is slippage through the pump.
However, in this particular case, it was proved possible to be able to dose to a <1% accuracy over repeated testing even with changes in pressure. There are a number of potential ways in which this can be done and depending on your application it may be a good idea to explore all three options outlined above.
Sensorless dosing using an external input to set dose amount
Why wouldn't I just use a stepper motor?
The single biggest reason for choosing brushless motors and controllers in a dosing application such as this is the power that you are able to get out of them. The power density of a sensorless brushless DC motor is considerably higher than that of a stepper motor.
In this particular application we originally used a stepper motor but with the switch to brushless DC we were able to get >8 times the power from the brushless DC motor than we could from the stepper motor of a similar size. There are therefore huge gains to be made in output level by using brushless DC. Whilst never as accurate as a stepper, if the methods outlined above (most notably the third method) are used then it is possible to get considerably higher power (and hence pressure or volume) from the dosing system for the same physical envelope.
Final thoughts: plenty of scope for this type of application
As outlined above there has been a general acceptance in a lot of industry that dosing is best carried out by peristaltic pumps driven by stepper or geared motors. However, as with every application there is always a trade off between accuracy and key application specific requirements such as volume, power usage and dosing frequency. It is therefore our belief that this project shows just how much can be gained from using sensorless brushless DC dosing with the right method and the right application.