Hello,
Unfortunately the application requires very very very stable fixed speed at 3000 RPM. ( its being used in the development of scientific instrument that has spinning optical measurement system)
The DRV10983 is sensor-less but the motor I have has 3 hall effect sensors I use one of the hall signals to generate a square wave to do a 32 bit high resolution frequency measurement on a STM32MCU
The reason I do this the resolution of DRV10983 Speed register 0x11 and 0x12 speed registers is not high enough its only got 0.1Hz resolution so I cant see whats happening.
I multiply the 32 bit frequency Measured from hall sensor on STM32 By a large number then I apply A low pass 1st order lagging filter works great showing me a real time speed variance zoomed right in. I send the Data out via UART and display a real time graph of the frequency on a GUI I wrote in visual studio.
The hall effect gives 4 pulses in one revolution of the motor. 200Hz on hall effect ..RPM = 200hz x 60 / 4 = 3000 RPM
In Closed Loop Mode the frequency varies 199.9 Hz 200.0Hz 200.1Hz +/- 0.1Hz this gives 2998.5 rpm 3000.00rpm and 3001.5rpm max min plus minus 1.5rpm
In open loop the variance is less by say 0.05Hz +/- twice as good!!
I attach a picture from my 32 Bit low pas filtered frequency speed measurement in open loop and closed loop modes.its amazing the speed drift or speed hunt is massively improved by changing the controller from closed loop mode to open loop mode see pictures attached
My question is can it be improved by tuning closed loop mode to be even better than open loop mode.Is there a parameter that alters the PI speed algorithm update rate so speed hunts less in closed loop mode
By changing to open loop mode the speed hunt is far less but there is still quite a bit of movement even in open loop which the senior designer is not happy with.
In closed loop I followed the DRV10983 tuning guide and I have tried so many changes the best stability i can get is 0.1Hz +/- in 200Hz
the strangest thing is in Closed loop if you vary the 24v supply +/-0.5V the speed moves a few hundred RPM in open loop where its more stable if you vary the supply 24v +/0.5v the speed dosent move at all remains solid 3000RPM why is this
I think in closed loop mode its activley trying to regulate the speed ending up in a speed hunt. I know this is a tiny tiny amount +/- 0.1Hz or +/-1.5rpm but in my application we really need very stable speed.
Summary is it possible to tune the Closed loop to get better than +/- 1.5 RPM speed variance
For experienced BLDC motor PEOPLE last question
If a high end Sensored BLDC Driver Was used designed using a Microcontroller And Hall effects with P.I Speed control algorithm could the RPM become more stable than +/- 1.5 RPM or is this the best i can ever achieve whether DRV10983 back emf or sensored halls custom micro with BLDC driver. I know its a small percent isnt it +/-0.1 Hz in 200Hz is a tiny percentage +/- 0.05% of 3000RPM but the instrument needs very very very stable speed.
Pictures attached 3000RPM open Loop Closed Loop and also My DRV10983 settings only difference in two graphs is open loop ticked or not ticked.
Sorry for the Long Post I found it hard to summarise my findings without giving more detail...