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.

ADC Signal Conditioning

Other Parts Discussed in Thread: TMS320F28021

Hi All,

For or certain DC-DC converter application, i am using TMS320F28021 MCU. All the 13 ADCs available in that are being used by us.

But for measurement purpose of the parameters, sometimes i happen to collect the samples where the noise spikes are there. So to neglect those spikes, and to set a dead band where the signal is stable, to get the sample from that stable signal, how should i set the modules or algorithm so that i succeed to get the clear samples while neglecting the spikes out of the signal??
is there any module or register in ADC or ePWM sub modules which i can set to achieve stable samples??

Help is appreciated! :)

Thanks

Vivek Chaudhary 

  • Hi Vivek,

    how should i set the modules or algorithm so that i succeed to get the clear samples while neglecting the spikes out of the signal?? is there any module or register in ADC or ePWM sub modules which i can set to achieve stable samples??

    Getting rid of noise in ADC signal is itself a huge task. Here are few easy techniques to get descent ADC signals:

    YOU CAN

    1. Use a RC filter to filter out spikes and noise.

    2. Increase ADC Acquisition samples/time (ACQPS)

    3. Implement software filters (by using control system's PI loop technique)

    4. Take averages of 32/64 ADC samples (this in-turn would eliminate spiked values)

    Regards,

    Gautam

  • Hi Gautam,

    Thanks for your reply!

    I am already doing averaging, for about 50 or 100 samples (tried doing both). Implemented Bubble sort as well to eliminate a few samples stored. But still sometimes, ADC happens to store spike samples and reflect in the calculation. Also, it will increase the time response for taking action for any protection.

    So for that reason only, i want to get , if anyhow i can get the sample for calculation from the microsecond stable duration?

    I have set the ACQPS as 25 right now, which in turn takes 950 ns of time for the channel to convert.

    RC filters are already being used in H/W.

    So i just want to set a dead band for the ADC to capture samples so that i can avoid capturing samples from the glitchs, and end the conversion for that duration?

    Its a loaded thing although, but if could get a faster conversion with stable samples for a better calculation. 

    Thanks

    Vivek

  • Vivek, are these spikes periodic or random?

  • Gautam, Because SOC is triggered whenever ePWM reaches it period in upcount mode, the spikes are periodic at the rising and falling edge of PWM.   

  • You can set CMPA/CMPB value to avoid the spike value. Did you check with that?

  • Of-course CMPA values are being set up to provide the desired duty cycle for DC-DC converter, that time only ADC is being triggered ,as soon as it reaches its period value, so do we observe Spikes at the rising and falling edge of the pwm. After that in the off duration, there is stability in the signal for sometime, this is the time where i want to capture the samples, while neglecting the samples at the edges of trigger.  

  • Hi Vivek,

    It seems like the issue is primarily one of triggering the ADC samples at the desired time?  Do you have a spare ePWM that you can sync to the ePWM that is setting the DC-DC duty cycle, such that the compares of the other ePWM can be placed with some offset from the ePWM transitions which are causing the noise?