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.

DRV8300: Current Control in DRV8300

Part Number: DRV8300
Other Parts Discussed in Thread: DRV8320

Hello Team,

   we have developed BLDC driver using DRV8300 and STM microcontroller. the power rating we have kept is 50V/15A.

 we have tested under voltage, over voltage protection and it is working as per requirement , now we want to add current control feature in this.

As per DRV8300EVM reference design we have added all component of current sense including op amp, but here we are sensing pole current of lower leg mosfet, for current control we need total current .

can you guide us how can we implement current controller feature using DRV8300. Do we need to add any other additional circuit and if possible can we implement this feature using hardware change only.

Regards,

Sayali Shinde

  • Hi Sayali,

    Thank you for posting to the Motor Driver's forum!

    I will aim to provide a response by the end of next week.

    Best,

    ~Alicia

  • Hi Sayali,

    In order to get the current for a specific phase, you will need to monitor the current when the low-side of that specific phase is on.

    Best,

    ~Alicia

  • Hello Alicia,

        Thank you for response. We are monitoring phase current of low side Mosfet when it is on, but for current control we need to monitor phase current right.

    we have implemented current sense in our design by taking reference of DRV8300EVM below is snapshot of same. after getting SOA,SOB,SOC value can you guide us how to implement current control mode using DRV8300 and MCU. Or is there any other module or IC which can use this input and give current control operation. If have set current limit value through program e.g 10A even though motor wants to take high current it will not take due to current limit of 10A. 

    Regards,

    Sayali

  • Hi Sayali,

    can you guide us how to implement current control mode using DRV8300 and MCU

    To clarify, are you trying to implement FOC?

    Best,

    ~Alicia

  • Hello Alicia,

             Is it possible to implement without FOC , e.g in DRV8320 we are getting total current from total current we can make current control by software.
    again I can frame my question, with DRV8300 how to calculate total current. what ever circuit we are using current from that we are getting loop current not total current.

    Regards,

    Sayali Shinde

  • Hi Sayali,

    Is it possible to implement without FOC , e.g in DRV8320 we are getting total current from total current we can make current control by software.

    It is possible, I was just asking to help me understand what kind of control mode you are doing.

    what ever circuit we are using current from that we are getting loop current not total current.

    Can you share a waveforms of the currents measurements that you are getting? 

    Best,

    ~Alicia

  • Hello Alicia,

      The current control mode we are looking is like if we set some value lets say 8A in program, driver should not provide more than 8A current to motor, if motor is trying take more current it should reduce the speed to maintain power. We just want to put current limit . for this I think we need to calculate total phase current, but with DRV8300 we are getting individual loop current.

         Below is snapshot of current ISEN. 

    Blue waveform is ISENA, Red is VSENA, Green is Phase current of A

    schematic snapshot is also attached for reference, please let me know if more information or any waveform is needed.

    Regards,

    Sayali Shinde

  • Hi Sayali,

    Alicia is out of office this week, and will get back in office next week. Please anticipate a delayed response. 

    Best Regards, 
    Andrew 

  • Hello Alicia,

       Any update.

    Regards,

    Sayali 

  • Hi Sayali,

    Thank you for your patience.

    for this I think we need to calculate total phase current, but with DRV8300 we are getting individual loop current.

    You would not need to calculate the sum for all of them to implement a motor current limit. What you would need to do is monitor the absolute value of ISENA, ISENB, and ISENC so that if one of them were to exceed the current limit you are trying to set, the system can respond accordingly.

    Best,

    ~Alicia

  • Hello Alicia,

       Thanks for inputs. Please check below snapshot of waveform which contain Blue- ISENA, Red-VSENA ,Green -Phase A current.

    From ISENA waveform can we implement current limit without FOC. If so can you share document which will help us to implement current limit by monitoring ISEN and  without FOC .

    Regards,

    Sayali

  • Hi Sayali,

    You can implement a current limit without FOC. At the moment we unfortunately do not have documentation detailing this, though we are working on releasing the DRV8300EVM firmware, by the end of the summer, which does have a similar implementation with regard to the current limit.

    Best,

    ~Alicia

  • Hello Alicia,

              Thank you for quick revert. whatever waveform we share of ISENA is that correct. Is it possible to you to give some flow or block diagram to implement current limit .what input we need to give microcontroller and how we can validate with waveform that current limit is happening because we cannot wait till end of summer .our whole design is completed only current limit feature is pending

    Regards,

    Sayali

  • Hi Sayali,

    Here is a very rough draft that I quickly made of a flowchart of the current limit implementation:

    Best,

    ~Alicia

  • Hello Alicia,

      thank you for flow chart, this has really helped us.

    Regards,

    Sayali