This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F28377D: SDFM CMPH with AC signal

Part Number: TMS320F28377D
Other Parts Discussed in Thread: AMC1305M05,

Hi,

We have a prototype design using the SDFM on the TMS320F28377D with an AMC1305M05 to measure phase current on a three phase motor controller.

We intended to use the SDFM comparator feature to protect the power switches by turning off the PWM whenever the CMPH threshold is crossed.

In a BLDC motor controller, phase current is going to be negative at times. The TMS320F28377D technical manual mentions that the CMPH threshold value is unsigned. 

My CMPH protection keeps tripping even though I have the maximum value setup in the  threshold register. 

Anybody has experience with how to make this work, or is it just impossible to setup SDFM comparator overcurrent protection on a phase current sense, due to negative values during operation...? 

  • Hi Albert,

    In a BLDC motor controller, phase current is going to be negative at times. The TMS320F28377D technical manual mentions that the CMPH threshold value is unsigned.

    The SDFM receives (from the AMC1305M05) a 1's data stream varying from 0% up to 100%. The magnitude of the current (positive or negative) at the input of the AMC device matters only in that it sets the percentage of 1's in the data stream. The AMC device has a Vclipping spec that tells you the relationship between the 1's percentage and the diff current at the input of the device. The SDFM comparator output will vary from 0 to some MAX number based on that percentage. The MAX value is set based on the COSR and filter type you select (see "Peack Data Values for Different OSR/Filter Combinations" in the F2837xD TRM).

    My CMPH protection keeps tripping even though I have the maximum value setup in the  threshold register. 

    You'll have to share a bit more about your comparator configuration so we can figure what may be the problem. For starters, what is the COSR, filter type and CMPH values you are using?

  • COSR=31

    Filter type is SYNC3

    CMPH = 0x7fff

  • Do you know what is the differential voltage at the input to the AMC device? Is it less than the Vclipping spec of +/-62.5mV? Also, are you allowing for some settling time before enabling the comparator interrupt (see Data Rate and Latency of the Sinc Filter section in TRM)?

  • Gus,

    Thanks for your help.

    It looks like I have a lot of switching noise causing the signal to cross the +/-62.5mV Vclipping boundary. I will get back with more questions when I get the noise issue resolved.

  • Gus,

    I still have the question: When the signal at the AMC1305M05 is within +/-62.5mV, but negative values, what is the filter comparator is going to see? if the value is going to be close to 65535 as the data path, would that be the reason I am tripping?

  • As I previously explained, a negative value at the AMC input just means the comparator will output a digital code in the lower range of 0 to 32,767 (based on your comparator filter settings).