Skip to main content
Associate III
January 7, 2025
Question

motor is drawing more current than expected

  • January 7, 2025
  • 2 replies
  • 2134 views

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?

2 replies

Lead II
January 7, 2025

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.

"Kudo posts if you have the same problem and kudo replies if the solution works.Click ""Accept as Solution"" if a reply solved your problem. If no solution was posted please answer with your own."
hashiRAuthor
Associate III
January 16, 2025

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?

Lead II
January 16, 2025

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.

  • Please use an oscilloscope or logic analyser to show the switching signals and the current.
  • Are you using 6-step or FOC algorithm?
  • Have you checked the value of the shunt resistors? Too high and you have higher loss and potential clipping in your measurement. Too low and your signal is too small and more sensitive to noise.
  • Is there any filtering on the current measurement? Perhaps it causes too much delay for such a fast motor.

 

 

"Kudo posts if you have the same problem and kudo replies if the solution works.Click ""Accept as Solution"" if a reply solved your problem. If no solution was posted please answer with your own."
Lead II
January 21, 2025


You could spin the motor by hand or by a (cordless) drill and measure the HALL output and the BEMF. HALL sensors should produce 120 degree rotated waveform and so should the BEMF. The BEMF of one phase can be measured by using 3 resistors (1k for instance) connected to each winding to get a virtual ground if the windings are connected in star.
I suspect the HALL sensors may need to be calibrated due to mechanical tolerance. If they fire too soon or too late the controller might switch the outputs at the wrong time.

"Kudo posts if you have the same problem and kudo replies if the solution works.Click ""Accept as Solution"" if a reply solved your problem. If no solution was posted please answer with your own."
hashiRAuthor
Associate III
January 21, 2025
Hi @unsigned_char_array 
 

I tested the same motor with another controller from Maxon, and it operates correctly, drawing only the expected no-load current of 210mA.

However, when using my current controller, the motor exhibits excessive heating, even when using a sensorless algorithm. The overheating persists regardless of whether I use a sensored or sensorless approach.

Do I need to recalibrate the Hall sensors? If the issue occurs with both sensored and sensorless algorithms, what could be causing the overheating, especially when the motor works smoothly with the Maxon controller?

Lead II
January 21, 2025

@hashiR wrote:
Hi @unsigned_char_array 
 

I tested the same motor with another controller from Maxon, and it operates correctly, drawing only the expected no-load current of 210mA.


So we can exclude the motor as the cause. Though the HALL sensors could be wired incorrectly, but I suspect that then the motor would not spin at all.

 


@hashiR wrote:
 

However, when using my current controller, the motor exhibits excessive heating, even when using a sensorless algorithm. The overheating persists regardless of whether I use a sensored or sensorless approach.


I suggest sticking to sensored for now as that should be easier to measure as BEMF is noisier.

 


@hashiR wrote:
 

Do I need to recalibrate the Hall sensors? If the issue occurs with both sensored and sensorless algorithms, what could be causing the overheating, especially when the motor works smoothly with the Maxon controller?


Calibration of the HALL sensors is adding a phase correction, this can be done mechanically or in software. I don't know if the algorithm you use can self calibrate or requires external calibration values.
If the controller switches too soon it will brake the motor part of the time heating it up.

The easiest way I think you can test is to compare the output of the Maxon controller w.r.t. the HALL signals compared to the IHM08M1 output w.r.t. to the HALL signals.

"Kudo posts if you have the same problem and kudo replies if the solution works.Click ""Accept as Solution"" if a reply solved your problem. If no solution was posted please answer with your own."