2025-01-06 09:37 PM
Hello all,
I’m using NUCLEO F302R8 and IHM08M1 for motor control. While the motor runs, it gradually heats up to around 85°C and draws more current than its rated value in no-load conditions.
while using the IHM07M1, the motor's heating seems normal, but the board temperature rises significantly.
What could be causing this issue?
2025-01-07 12:42 AM - edited 2025-01-07 12:44 AM
I don't know anything about the IHM08M1. But I have configured BLDC speedcontrollers for RC motors in the past. Once I had a motor getting really hot. It was the setting of the number of poles. I don't know why this had to be configured, but it made a huge difference. It must have impacted the timing or waveform and lead to current flowing when there shouldn't be current, leading to heating of the windings instead of providing torque to the motor.
Have you measured the output voltage and current with an oscilloscope? You can compare it with the output of the IHM07M1.
2025-01-15 10:14 PM
Thank you for your response.
I have configured the motor with the correct number of poles as specified in the datasheet. I am using a high-speed BLDC motor with the IHM08M1 and an STM32F401RE (84 MHz). Considering the motor's specifications (47,000 RPM, 24V, 9.3A, 180W), is the 84 MHz clock frequency sufficient for efficient operation of the motor?
2025-01-16 12:58 AM
The IHM07M1 is capable of lower current. So it probably has more RDSON loss. It will heat up more.
The IHM08M1 should handle the current, but if the motor is heating up in idle while the board isn't, then it has to be switching at the wrong times (like sending DC-current through a speaker).
It could be that there's something wrong with current measurement. The current measurement is used to determine when it switches. If there is a phase error or noise it might switch at the wrong time.
2025-01-16 09:27 PM
I am using a high-speed BLDC motor (47,000 RPM, 24V, 180W) ,
2025-01-17 12:01 AM - edited 2025-01-17 12:04 AM
Thank you. I feel like we can get to the bottom of this with enough data.
@hashiR wroteHow can I determine if there is any filtering applied to the current measurement?
Check the schematic. I found there is a first order RC-filter for each shunt resistor. 680Ohm and 100nf. This results in a Cutoff frequency (Fc) of 2340Hz.
The motor is spinning at 47k RPM which is 783Hz. To get the required frequency of the waveforms on the phases you need to multiply it with the number of pole pairs. In case of 4 poles, or 2 pole pairs, that results in 1,566Hz. Which is under the cutoff frequency, but pretty close. It will definitely result in a phase change. I don't know if that's a problem for the controller, but I suspect it might. In that case changing the filter might solve the problem.
The shunt of the IHM08M1 is 10mOhm and that of the IHM07M1 is 330mOhm.
The IHM07M1 uses a different filter type.
The waveform I'm interested in is the voltage on the phases or switching signals in combination with the current. I'm interested in timing of the switching. If it switches at appropriate times. Like I wrote if the motor receives current at the wrong time or DC current it isn't used for torque, but for heating the windings.
2025-01-17 04:46 AM
hello
My motor (IPMSM) runs at 60000 RPM (1000 Hz with 1 pole pair) much lower than the boards 2340 Hz cutoff frequency. Why would the filter still need to be changed?
2025-01-17 09:07 AM - edited 2025-01-17 09:31 AM
@hashiR wrote:hello
My motor (IPMSM) runs at 60000 RPM (1000 Hz with 1 pole pair) much lower than the boards 2340 Hz cutoff frequency. Why would the filter still need to be changed?
If the current sampled at a specific point, then a group delay might screw up the result. I don't know what algorithm you use so I don't know what happens.
According to this filter calculator (http://sim.okawa-denshi.jp/en/CRtool.php) the phase change at 1000 Hz is about 24 degrees. The time constant tau is 68us. So there is a shift/delay of the signal.
Usually the back-EMF voltage is used to detect zero crossing. Can you measure those signals too?
60k RPM is higher than the 47k RPM value you mentioned earlier. Are you running your motor too fast? Same speed as with the other board?
2025-01-18 11:25 PM
I am using hall foc algorithm
2025-01-19 12:59 PM - edited 2025-01-22 07:51 AM
That's new information. You didn't specify you were using a sensored BLDC motor.
Can you share the datasheet of the motor? The thing with FOC is that it needs to be tuned to the motor. It needs to match the BEMF wafe form. Most BLDC motors are designed for 6-step and not sine.