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.

TMS320F280039C: DRV8353

Part Number: TMS320F280039C
Other Parts Discussed in Thread: C2000WARE, DRV8350

Hello,

We are planning to use the TMS320F280039C and DRV8353H for a new BLDC motor control project and have a couple of other questions related to circuit design

  • The DRV8353H offers control modes viz 6*PWM, 1-PWM & 3-PWM.  Given our requirement (i.e. drive a BLDC motor) which option is the best ? If we are to use the 1-PWM - which is the best way to control the state inputs  - 1*PWM Simple Controller ( State inputs from MCU_GPIO) or 1*PWM- Hall Sensor (state inputs connected to the hall sensor digital outputs). We understand that the 1*PWM- Hall Sensor (state inputs connected to the hall sensor digital outputs) offload the processing requirements from the CPU and reduce the GPIO pin requirements. Are there any other pros and cons that we should be aware of? 
  • In the DRV8353H EVM , the Hall sensor inputs are also routed to the MCU. What's the best way to interface Hall sensor input to the F280039C? Can we configure the GPIOs as eCAP input for hall sensors? (The output voltage of the hall sensor is 5V and we are level shifting it to 3.3V before routing to the F280039C)
  • We are also using an incremental encoder, its output voltage is 5V and we are level shifting it to 3.3V before routing to the F280039C. Can we interface the level shifted signals (A, B & Index) to the  eQEP's A, B & index?  
Thanks 
-Najma 
  • Hello Najma,

    I'll answer each of your questions in turn.

    • I would say that the method I would use would be 6 PWM, admittedly somewhat due to the fact that the C2000Ware Motor Control SDK example Universal Motor Control Lab (UMCL) utilizes this mode, meaning there is an incredibly comprehensive example implementation available for reference. This mode also allows for the most control. 3xPWM is very similar. (Note that the UMCL user's guide is not yet updated to reflect the use of the F280039C specifically, but the actual lab is available in the Motor Control SDK)
      • I would try and avoid using 1x PWM mode for the same reason that I would personally try and either avoid or supplement HALL-based motor control with other control methods like FAST- compared to a more comprehensive control method, it's incredibly coarse, and making real-time adjustments could prove difficult to do while avoiding accidental fault conditions. It's also more difficult to notice and adjust for incorrectly set parameters.
    • The best way to interface with HALL sensors is going to be the eCAP input, as you suggested.
      • The UMCL function HAL_setupCAPs() (HALL predefine, not CMD_CAP predefine) can be used as a quick reference for eCAP configuration for a HALL sensor. The UMCL overall can be a great example on motor control with the F280039C!
      • Also refer to the eCAP section of the device Technical Reference Manual for more details.
    • The eQEP is explicitly designed to interface with incremental encoder output signals.
      • Refer to the eQEP section of the device Technical Reference Manual for more details.

    Regards,
    Jason Osborn
    Note: Key takeaways from this post are bolded.

    References:

    1. TMS320F28003x Real-Time Microcontrollers Technical Reference Manual link
    2. C2000Ware Motor Control SDK link
  • Thanks Jason.

    I tried testing the DRV835x sensored operation using the DRV8350 EVM . I was able to test the 6*PWM sensored operation, but couldn't get the 1*PWM mode to work. 

    I have posted a question here https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1263086/drv8350h-evm-drv8350-evm

    Would be great if you could take a look. 

    thanks

    Najma