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.

TMDSHVMTRPFCKIT: ADC offset calibration and conversion

Part Number: TMDSHVMTRPFCKIT
Other Parts Discussed in Thread: TMDSCNCD28335, CONTROLSUITE

Hi,

Could you please provide me a detailed explanation on how you achieved ADC offset (calibration) and how you convert ADC results in HVPM_Sensorless_2833x?

I am trying hard to understand it, but it is very hard for me to grasp especially with the per-unit system used. I am using TMDSHVMTRPFCKIT with TMDSCNCD28335 controlCARD.

Thanks,

  • The source code could be clear and easy to understand the process in the project. On TMDSHVMTRPFCKIT board, the phase current of the motor will be ZERO if the PWM duty is 50% or all pwm output are OFF, and the output of the current sampling circuit is 1.65V if the phase current is ZERO. To sample multi times (such as 5000 times) 3-phase current and use a low pass filter to get an average offset value during the power-up or re-started process. The offset value will be subtracted from the sampling result to get the real current of the running motor since the current is bidirectional. 

  • Great! I understood it with your clear explanation.

    Would you please let me know how the conversion happened as well? For example, in the code, we have the following for phase A current:

             clarke1.As=((AdcMirror.ADCRESULT1)*0.00024414-offsetA)*2*0.909; // Phase A curr.

    ADC result is multiplied to 1/(2^12) and offset is subtracted from it which I do understand! However, I don't get it why it is multiplied by 2 and 0.909. What has happened to the gain of 8.25 of the current sensing amplification system?

    Thanks, 

  • As replied to you in another post, the 0.909 is equal to 3.0/3.3 since the ADC input range is 3.0V for F28335, but the scale of the current sampling circuit is designed to 3.3V on the h/w board. Convert the scale from -0.5~0.5 to -1.0~1.0 by multiplying 2.

  • Thank you. I don't know how your system works, but I think there is a glitch in the system. I created another post which you are referring to because I could find this post (somehow not showing up in my profile).

  • OK, I have replied to you in another thread also. Please be noted, all the motor control projects in controlSUITE, the sampling current/voltage values are scaled by the maximum sampling current/voltage of ADC.