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.

TMDSDOCK28035 analog ground

Other Parts Discussed in Thread: TMDSDOCK28035, CONTROLSUITE

Hello all,

I am using C2000 experimenter's kit for a motor control project. I have the open loop control working (motor spins great at low rpm), I have two LEM current sensors connected and I am trying to read them at the ADC pins. The problem I am having is when I bring the signals at the analog pins, there is lot of noise induced. probably from the common analog digital ground I connected. Is there a seperate AGND that I should connect my analog ground to? Appreciate any ideas on this. 

http://www.ti.com/tool/tmdsdock28035

I do not see any schematics for this experiementer's kit, the only schematic I have is the F28035 controlcard.

  • Also, another question. The documentation says, if ADC is operated in internal reference voltage mode, "VREFLO must be tied to ground". Again I do not see where to access this pin. Please kindly help!

  • Hi Sandhya,

    If there is no VREFLO pin on your device, then VREFLO is internally connected to VSSA.

    The device itself definitely has separate digital and analog grounds.  Splitting these may help prevent some digital noise from coupling into the ADC conversions. I don't think the experimenters kit separates these though (FYI, all the development kit schematics are in ControlSUITE in .\TI\controlSUITE\development_kits).  

    Are you sure that the noise is coupling in from the digital side of the device and not from the power stage?  Some thoughts on debugging the source of the noise:

    *Disconnect the power stage and instead of sampling the sensed current, instead sense a good DC voltage from a function generator.  

    *If you get noise above, then the noise is probably coming from the digital side of the device.  Try attaching a scope probe to the ADC input (still with DC voltage) and take an FFT on the scope.  This should tell you what frequency the noise is.  You may be able to correlate this with something else running on the device (e.g. ePWM frequency, communication interface, externally supplied clock, etc.) 

  • Sandhya, here's another tip: while designing the pcb separating  AGND and DGND with a 0R resistance can also reduce some ground noise.Finally if  nothing work, using RC filters always solves such a kind of issue.

    Regards,

    Gautam

  • Hello Devin, thanks a lot for your reply. I have the same opinion that experimenters kit does not separate these. That's a good idea to sense a DC voltage and see if the noise persists, I will test that today. Thanks again, appreciate your comments. 

  • Hello Gautam, 

    Thanks for your response. The ADC signal is already a filtered phase current (filtering the switching frequency), I wonder if further filtering could induce a delay? My goal is to close the current control loop with this signal. 

  • Yup Sandhya, filters would induce some delay. Tuning your control loop according to the filter configuration can do the job.

    Regards,

    Gautam

  • Thanks for all the responses. I was able to eliminate the noise. Instead of using a simple low pass RC filter, I used a differential amplifer to filter and also add the bias (sensor output is +-4V..biased to 1.5V for the ADC input pin). 

    I would still take care of the AGND and DGND when I actually do my own schematic eventually (right now I am using the experimenter's kit for developmental stage)

  • Great work, Sandhya. Good Luck.

    Regards,

    Gautam

  • Thanks Gautam!

    I have another problem related to this. So far, I have got the current feedback to ADC A1 and A2 pins ( sine wave biased at 1.52V). But my Park transformation outputs Id and Iq are NOT DC values like I expected (I am displaying them in Dlog waveforms), they look sinusoidal. I am not sure if my ADC conversion or the dlog display is wrong.

    MTR_FB_PHASE_A_OFFSET = 0.4805;

    MTR_FB_PHASE_B_OFFSET = 0.4805;

    cur.Ia = _IQ15toIQ((AdcResult.ADCRESULT1<<3) - MTR_FB_PHASE_A_OFFSET) << 1;
        cur.Ib = _IQ15toIQ((AdcResult.ADCRESULT2<<3) - MTR_FB_PHASE_B_OFFSET) << 1;

    Could someone explain how the conversion works (from a sine wave phase current signal biased at 1.52 to normalized value -1 to 1 pu in software and displaying in dlog waveforms in Code composer)

    Thanks

    Sandhya

  • Sandhya, I won't be able to assist you on this. But please open a new thread where this question can be answered. (As this thread has already been closed)

    Regards,

    Gautam