cancel
Showing results for 
Search instead for 
Did you mean: 

Strange current waveform driving a BLDC motor using the IHM08M1 with the Nucleo F303

der.ule
Associate III

I keep investigating why I have problems driving my motor with negative speeds.

I captured the phase voltage directly on the motor leads (yellow, cyan and magenta channels) and the current on the DAC output (Ia or Ib) and I noticed this peaks on the current waveform.

0693W00000JODPSQA5.png 

Zooming in, the currents themselves don't look bad at all

0693W00000JODMoQAP.png 

However I do not understand where does peaks are coming from

0693W00000JODRdQAP.pngAny ideas will be greatly appreciated.

34 REPLIES 34

Hello,

I'm measuring the current from the DAC output (don't have a current probe available at the moment). I'm connecting the oscilloscope in the middle pin of J7 and its ground lead connected to the test point J8.

MK.1
Senior

Look carefully at the board diagram and you will understand that the signal from the DAC does not get to this connector in any way :)

GMA
ST Employee

Hello,

I used a IHM08/F303Re/Hall Sensor Motor combo in order to display Ia current on PA4 pin (through DAC output), and I don't see difference between positive and negative speed in term of current or behavior.

Looking to the currents, did you check if the peaks are also present in positive speed?

If you agree with the answer, please accept it by clicking on 'Accept as solution'.
Best regards.
GMA
der.ule
Associate III

Well, after a lot of testing, I want to log my experience here in case it helps somebody else:

While looking for a solution to my problems I stumble upon this thread, he had the same setup as me, it turns that I was measuring just noise (and the PWM). In summary, the IHM08M1 is somehow targeted to be used by the Nucleo F302R8 and the Nucleo F401RE and if you are using something else (like in my case Nucleo F303) you will need to grab the soldering iron and fiddle around with some resistors.

I feel like this statement from the UM1996 User Manual is a bit misleading:

The interconnection between the STM32 Nucleo board and the X-NUCLEO-IHM08M1
expansion board is designed for full-compatibility with a wide range of STM32 Nucleo
boards without any solder bridge modifications, except for the removal of resistor R60 on
the X-NUCLEO-IHM08M1 board if the NUCLEO-F401RE board is used and X-CUBESPN8 firmware is installed.

So, the changes that I had to do in order to get the DAC outputs working correctly and configure the board as a 24V, 3-Shunt, FOC with Hall Sensors were:

On the F303:

  1. Remove jumper JP1. (It was not set)
  2. Plug-in jumper JP5 connecting U5V and the middle pin together for power supply from USB connector of ST-LINK/V2. (Apparently more than 12V supply into the IHM08M1 can damage the Nucleo board)
  3. Plug-in the two jumpers on CN2, to program the STM32. (they were set)
  4. Remove SB21 on F303RE (LD2 interferes with signal on PA5). (it wasn't set on my board)

On the IHM08M1

  • Solder the jumpers J5 and J6 in the three shunt (3Sh) configuration
  • Remove resistor R181

0693W00000JPGVfQAP.png

  • Remove jumper J9
  • Plug-in jumpers JP1 and JP2 connecting both pins.
  • Connect the correct DAC output (PA4) to the J7 pin header, for this the R77 has to be removed and the R76 installed.
  • Connect the correct DAC output (PA5) to the J7 pin header, for this the R82 and R85 have to be removed an the R80 installed.

0693W00000JPGNTQA5.png

  • Remove R63, it conflicts with BEMF3

0693W00000JPGWiQAP.png

  • Remove R21. This is also used CURRENT REF which is input to OpAmp through a low pass filter so in the case of Observer Electric angle, the saw-tooth will appear chopped at the end. In my case maybe this wasn't necessary as I do not use the observers.

0693W00000JPGYPQA5.pngWith all this changes I was finally able to see the DAC output in my oscilloscope and cycle through the different variables without recompiling.

0693W00000JPGauQAH.pngUnfortunately for me, only the DAC Ch1 seems to be working properly, as I get lots of distortion in Ch2. Here a screenshot of both channels displaying the "measured electrical angle"

0693W00000JPGY1QAP.pngBut the one channel that works, seems to be working properly

0693W00000JPGdZQAX.png0693W00000JPGdjQAH.png 

Thank a lot for the hint, this really helped me out!

der.ule
Associate III

I did, the same waveforms were present on both directions, but check my answer below.

ssipa.1
Associate II

If this is trapezoidal drive, you appear to be turning on the gate of one of the "off" phases. This may be due to the reverse transfer capacitance which is quite high with all of those MOSFETs in parallel, or possibly you are drawing enough current in your inductive current path on board board to pull down the source with respect to some of the gates.

I would start by reducing the value of the 10K pull down resistor on the gate to 1K and see if this improves your problem - this may work if it is the drain-to-gate capacitance turning the FET on. In any case, measure the gate voltage on the FETs during their off period with respect to the source.

I did read that answer too, however I do not believe it applies here, I did some measurements directly at the MOSFETs and all looks peachy, thanks.

glad i helped you

der.ule
Associate III

I got my hands on a current probe today and this is what I got from Phase_U at 3000RPM (scaling: 1mV/10mA)

0693W00000JPkUNQA1.png