Hi,
we are developing an application using a PM motor driven by a custom F28069M board based on the DRV8301 Kit design.
We have a quadrature encoder on the motor shaft so we want to use sensored FOC to achieve good torque at very low speeds, which is required for our project. We have adapted the MotorWare example using ctrlQEP.c and ctrlQEP.h to our hardware and we have been able to run the motor at 50rpm (motor has 10 pole pairs) relatively smooth. However, we found out looking at the code in ctrlQEP.[ch] that the QEP feedback is only used for commutation and not for control, i.e. the speed feedback used in the speed control loop is still taken from the FAST estimator.
Is there a reason to not use the QEP feedback since it is already available?
One possible issue I could think is that the speed feedback from the QEP could be noisy at low speeds, especially when the position differences are calculated relatively fast, 15KHz in our case (45KHz PWM, MainISR every 3 cycles). I saw that enc.c includes a low pass filter to handle that but I do not know how well this works in reality.
We will probably attempt to use the encoder speed in the speed control loop and see how this works, but any additional information is welcome.
Giannis