Because of the holidays, TI E2E™ design support forum responses will be delayed from Dec. 25 through Jan. 2. Thank you for your patience.

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.

TMS320F28377D: Calculation logic between svgen1.Ta and CMPA

Part Number: TMS320F28377D
Other Parts Discussed in Thread: CONTROLSUITE

Hello,

We purchased the DesignDRIVE Development Kit IDDK v2.2.1 and I have a question on the  IDDK_PM_Servo_F2837x project.

With reference to the IDDK_PM_Servo_F2837x project, the file of IDDK_PM_Servo_F2837x.c contains the following statements in the interrupt function of MotorControlISR(void):

// ------------------------------------------------------------------------------
//  Computed Duty and Write to CMPA register
// ------------------------------------------------------------------------------
 EPwm1Regs.CMPA.bit.CMPA = (INV_PWM_HALF_TBPRD*svgen1.Ta)+INV_PWM_HALF_TBPRD;
 EPwm2Regs.CMPA.bit.CMPA = (INV_PWM_HALF_TBPRD*svgen1.Tb)+INV_PWM_HALF_TBPRD;
 EPwm3Regs.CMPA.bit.CMPA = (INV_PWM_HALF_TBPRD*svgen1.Tc)+INV_PWM_HALF_TBPRD;

WIth respect to the statements listed above, I cannot figure out the calculation logic between svgen1.Ta and CMPA.

It seems to be aqssociated with a symmetric switching scheme.

Please inform me some TI document that I can refer to in order to figure out the calculation logic between svgen1.Ta and CMPA.

Thank you for guidance.

G. Kim

  • You can find some information in

    C:\ti\controlSUITE\libs\app_libs\motor_control\math_blocks\v4.3\~Docs\DMC MATH_v13.1.pdf

    This is not comprehensive though, Ta, Tb and Tc are the preferred instantaneous sine value at the output of inverter terminals A, B and C in pu (-1 to +1). Since the inverter is a unipolar two level inverter, the math you see here converts the bipolar signal into unipolar by level shifting to the middle of dc bus voltage.

    Vcmpa = Vdc*0.5 * (1+Ta)

    Since Ta can be only inbetween -1 and +1, Vcmpa can vary between 0 and Vdc.

    Hope it clarifies.