futurecar 发表于 2012-3-30 00:01

TI PMSM 例程中的电流检测模块中的电流怎么没有标幺化呢

TI PMSM 例程中的电流检测模块中的电流怎么没有标幺化呢

主程序里的iq id 都标幺了啊
// Global variables used in this system
float VdTesting = 0;            // Vd testing (pu)
float VqTesting = 0.25;         // Vq testing (pu)
float IdRef = 0;                // Id reference (pu)
float IqRef = 0.2;            // Iq reference (pu)
float SpeedRef = 0.2;         // Speed reference (pu)
float T = 0.001/ISR_FREQUENCY;   // Samping period (sec), see parameter.h


但在这里 ImeasA ImeasB VdcMeas为什么没有标幺?只是转成有符号数然后补偿下
void F281X_ileg2_dcbus_drv_read(ILEG2DCBUSMEAS *p)
{
       int16 DatQ15;
       int32 Tmp;

      // Wait until ADC conversion is completed
      while (AdcRegs.ADCST.bit.SEQ1_BSY == 1)
      {};

      DatQ15 = AdcRegs.ADCRESULT0^0x8000;       // Convert raw result to Q15 (bipolar signal)
      Tmp = (int32)p->ImeasAGain*(int32)DatQ15; // Tmp = gain*dat => Q28 = Q13*Q15
      p->ImeasA = (int16)(Tmp>>13);             // Convert Q28 to Q15
      p->ImeasA += p->ImeasAOffset;             // Add offset
      p->ImeasA *= -1;                                       // Positive direction, current flows to motor

      DatQ15 = AdcRegs.ADCRESULT1^0x8000;             // Convert raw result to Q15 (bipolar signal)
      Tmp = (int32)p->ImeasBGain*(int32)DatQ15; // Tmp = gain*dat => Q28 = Q13*Q15
      p->ImeasB = (int16)(Tmp>>13);             // Convert Q28 to Q15
      p->ImeasB += p->ImeasBOffset;             // Add offset
      p->ImeasB *= -1;                                     // Positive direction, current flows to motor

      DatQ15 = (AdcRegs.ADCRESULT2>>1)&0x7FFF;   // Convert raw result to Q15 (unipolar signal)
      Tmp = (int32)p->VdcMeasGain*(int32)DatQ15; // Tmp = gain*dat => Q28 = Q13*Q15
      if (Tmp > 0x0FFFFFFF)                      // Limit Tmp to 1.0 in Q28
         Tmp = 0x0FFFFFFF;
      p->VdcMeas = (int16)(Tmp>>13);             // Convert Q28 to Q15
      p->VdcMeas += p->VdcMeasOffset;            // Add offset

      p->ImeasC = -(p->ImeasA + p->ImeasB);      // Compute phase-c current

      AdcRegs.ADCTRL2.all |= 0x4040;             // Reset the sequence

}
页: [1]
查看完整版本: TI PMSM 例程中的电流检测模块中的电流怎么没有标幺化呢