Clear Filters
Clear Filters

Torque controlled BLDC motor

68 views (last 30 days)
Vrinda V Nair
Vrinda V Nair on 6 Apr 2023
Commented: Sam Chak on 12 Apr 2023
I am doing one project on BLDC motor control using neural network for reducing torque ripples. But for that I need data to train the network. The speed control models available in MATLAB are having high torque ripples. Is there any suitable model of torque controlled bldc motor model with less torque ripples, which can be used for data collection. Or anyone have other suggestion ragarding data collection?

Answers (3)

Joel Van Sickel
Joel Van Sickel on 11 Apr 2023
You will need to learn how to implement active cancellation teqniques to reduce the ripple purely through control methods. It is very similar to active noise cancellation. I don't think MathWorks has any publicly available demos of that approach so unfortunately you will have to implement them on your own by reading research papers on the topic. You might find something in file exchange if someone has been nice enough to share a model that does this.

Sam Chak
Sam Chak on 11 Apr 2023
Sinusoidal back-EMF motors can experience reduced torque ripple by utilizing sinusoidal currents, such as those generated by employing the Field-Oriented Control (FOC) method.
For non-sinusoidal back EMF, you can try using the Model Predictive Control (MPC).
You can look into this example
Vrinda V Nair
Vrinda V Nair on 11 Apr 2023
I don't think so. As far as I understood the controlling techniques used in PMSM and BLDC are different. In BLDC we are exciting only 2 phases at a time while in PMSM excitation is given to 3 phases.
Sam Chak
Sam Chak on 12 Apr 2023
You can try the Reinforcement Learning technique as suggested by @Arkadiy Turevskiy.

Sign in to comment.

Arkadiy Turevskiy
Arkadiy Turevskiy on 11 Apr 2023
Maybe another approach could be to use reinforcement learning and formulate a reward to minimize torque ripple. This way you would not need data with reduced torque ripple to learn from, your reinforcement learning agent would figure out how to do it for you. I would suggest using a policy that you would train with reinforcement learning as a "delta" to a traditional controller, not as an outright replacement.
For BLDC control models with traditional controllers that you can use as a starting point, see the links in the examples section of BLDC motor control page.
For reinforcement learning, check out Reinforcement Learning Toolbox and more specifically an example for applying reinforcement learning for PMSM control. The example replaces PIs for id and iq with a neural net. As mentioned above, I'd recommend adding as an additional input, not replacing traditional controllers outright.




Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!