Skip to main content
Associate III
Jan 13, 2025 5:05 AM UTC
Solved

SVPWM and BEMF Wareform type

Hello Everybody,

MCSDK:6.3.0

CubeMX: 6.3.0

Workbench : 6.3.0

Motor Pilot : 1.2.9

Power Board : IHM08M1

Control Board : NUCLEO-G431RB

Motor : GBM2804H-100T

I am currently testing FOC-OpenLoop-Voltage. I am using Motor Pilot for tuning and measuring SVPWM (at OUT1~OUT3) and BEMF (at D6, D8, D10) with an oscilloscope. However, both waveforms appear as square waves. Could this be related to the specific motor model I am using?

This topic has been closed for replies.
Vincent7Best answer
Associate III
Jan 24, 2025 3:21 AM UTC

Hello egarcialopez,

Thank you for guiding me to use a low-pass filter to successfully display the saddle waveform.

Although the attached waveform still requires some further adjustments, it already shows the result I was aiming for.

Once again, I sincerely appreciate your guidance!

SVPWM_16KHZ.png

5 replies

Explorer
Jan 20, 2025 11:59 PM UTC

You are trying to read directly the SVPWM signal, which is using Pulse Width Modulation to represent the three sinusoidal voltages that you intend to inject at each phase. If you want to reconsrtuct the three sinusoidal voltages you need to insert a Low Pass Filter between any of the three BEMF and the oscilloscope. You can build a very simple Low Pass Filter (LPF) with just a resistor and a capacitor.

Vincent7Author
Associate III
Jan 21, 2025 1:52 AM UTC

Hello egarcialopez, 

Thank you for your reply.

I just searched online for how to create a low-pass filter using a resistor and a capacitor and connect it to D6, as well as how to calculate the appropriate resistor and capacitor values. I managed to test it successfully. I'll share the waveform later. Thank you again!