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.

TIDA-00913: On the problems of current detection

Part Number: TIDA-00913
Other Parts Discussed in Thread: BOOSTXL-3PHGANINV, C2000WARE, MOTORWARE

Dear team:

This development board is used to detect the output current, and its matching routines are sampled at the following time: 

PWM_setSocAPulseSrc(obj->pwm Handle[PWM_Number_1],PWM_SocPulseSrc_CounterEqualZero);

How is this different from the traditional synovium sampling at "EPwm1Regs.ETSEL.bit.SOCASEL = ET_CTR_PRD;" time using low-end resistance detection?

  • Hello Green,

    thank you for working with TIDA-00913. I assume you are using the equivalent TI EVM, part # BOOSTXL-3PHGANINV 48-V Three-Phase Inverter With Shunt-Based In-Line Motor Phase Current Sensing Evaluation Module. I am mentioning this since there are example projects with the C2000WARE-MOTORCONTROL-SDK Motor Control software development kit (SDK) for C2000 MCUs. After installation search for a project called "boostxl_3phganinv".

    Now to your question.

    This depends, which of the C2000 MCU software packages you use. The latest are the generic C2000WARE  https://www.ti.com/tool/C2000WARE and for motor control the C2000WARE-MOTORCONTROL-SDK.      

              PWM_setSocAPulseSrc(obj->pwm Handle[PWM_Number_1],PWM_SocPulseSrc_CounterEqualZero);

    The above example code is the HAL driver for configuring the ADC start of conversion as provided with for example MOTORWARE: https://www.ti.com/tool/MOTORWARE

    It selects the trigger for a SoCA event, if ePWM timer 1 is zero. In that case your ADC would sample at ePWM timer = 0.

    Your below code example is a struct based driver example from e.g. C2000WARE. It selects the trigger for a SoCA event, if ePWM timer 1 equals the ePWM period. In that case you ADC would sample at ePWM timer = ePWM period. If you have a symmetric PWM (up-down count), the event is center aligned to the PWM, hence different than in the above MOTOWARE code example.

              EPwm1Regs.ETSEL.bit.SOCASEL = ET_CTR_PRD

    When you have further questions on C2000 MCU software and why it was written in object oriented style versus a struct we need experts from the C2000 MCU team to answer that. 

    In that case, could you post to the C2000 MCU E2E here please: https://e2e.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum.

    This ensures your question will be addressed by experts from the C2000 MCU team.

    Thanks. 

    Regards,  Martin Staebler