Part Number: TMDSHVMTRPFCKIT
Tool/software: Code Composer Studio
Hello to TI TMDSHVMTRPFCKIT group,
I will implement my induction motor speed control using TMDSHVMTRPFCKIT with tms320f28035 control card, but i have some complexity related to ADC(how to measure lower side inverter two phase current and dc bus voltage). we have the calculation based on TMDSHVMTRPFCKIT
for DC BUS VOLTAGE ADC A7 PIN sensed input voltage= DC BUS VOLT*(9.09/(9.09+820+300)), lets assume DC BUS VOLT=200V then we get 1.61v in ADC A7 pin, I i want to lower this value to 0.5v i want to read this from AdcResult.ADCRESULT7 register.
My question is based on HVACI_Sensorless.c
your code written as volt1.DcBusVolt = _IQ12toIQ(AdcResult.ADCRESULT7); // DC Bus voltage meas. can i modify/write this code like this
ADCINA7=AdcResult.ADCRESULT7;
VDC= (ADCINA7*(1/3))*(1.5/1.65); // this line gives me the voltage between 0&1 depend on the DC BUS VOLTAGE, please correct me if am I wrong (according to 200v it i will get ~0.48v)
//////////////////////////////////////////////////////////////
For two phase current measurements
// ------------------------------------------------------------------------------
// Measure phase currents, subtract the offset and normalize from (-0.5,+0.5) to (-1,+1).
// Connect inputs of the CLARKE module and call the clarke transformation macro
// ------------------------------------------------------------------------------
clarke1.As = _IQmpy2(_IQ12toIQ(AdcResult.ADCRESULT1)-offsetA); // Phase A curr.
clarke1.Bs = _IQmpy2(_IQ12toIQ(AdcResult.ADCRESULT2)-offsetB); // Phase B curr.
CLARKE_MACRO(clarke1)
also can i write the above code like this shown below, i do not consider offset and IQ IN my case
also we have the calculation for the current sensor
vout=-8.25*vin+1.65;// vout=Ifb_U&V is input to pin A1&B1; vin=VSH_U&V is the lower side voltage value
VSH_U=Rshunt(0.02)*IphaseU. MAX value of VSH_U=0.02V
// sensed current from lower side inverter after OPA2350
ADCINA1=AdcResult.ADCRESULT1;
ADCINB1=AdcResult.ADCRESULT2;
SCALING AND OFFSET adjustment(between -1 &1 )
ia = ADCINA1*(2/3);// not in between (-1&1)
ib = ADCINB1*(2/3);
ia1 = (ia-(0.995*1.65/1.5))*(1.5/1.65);// this makes between (-1 & 1)
ib1 = (ib-(0.995*1.65/1.5))*(1.5/1.65);//this makes between (-1 & 1)