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.

How to measure the phase current on the drv8313 evm

Other Parts Discussed in Thread: DRV8313EVM, DRV8313, DRV8312

Hi

I'm using drv8313 evm with an external control signal from an ezdspF28335 in order to control a 3 phase brushless motor, and i'm developping my own control algorithm to control it 

i have seen in the literature, that i need to measure the phase current and use this measurement to adjust the duty cycle for the pwm used to fed the motor phases

my question is about the TP8 (IDC_SENSE )pin on the board , is this pin made for phase current sensing? and can i put this signal directly on the adc module of the dsp ? and what about the TP11(ADC_A) TP12(ADC_B) TP13(ADC_C)  ? 

Best regards

  • No, you don't need to measure phase current. You do need to measure rotor angle position, which can be obtained by either using hall sensor, encoder, or measuring phase current.

    In DRV8313EVM, rotor position is measured via hall sensor, and afaik, it doesn't provide onboard phase current monitoring. It has total current monitoring (indicated by TP8). TP11, TP12, TP13 are phase voltage measurement point.

    If you need to measure phase current, you can use external shunt resistor on each output. You need to use shunt monitor op-amp because they have relatively high and variable common voltage beyond uC input range.
    Using low side shunt current monitor would be easier.

  • Hi 

    Yes, i understand, and that'a what i'm doing, in fact, i read the hall sensor on the ezdsp f28335 then depending on the hall sensor combination, the program generate the right commutation signal for the drv control inputs , the motor is running and i can change the speed by changing the duty cycle of the pwm but i'm only controlling the speed ! in case i want to put some load n the motor and control the torque i need to use the current feedback ? right ?

    so i wanted to know if i can acces to this signal on the board

    thanks   

  • Sadok,

    if you are going to develop trapezoidal control or 120 deg commutation, than total DC return current as sensed in DRV8313 evm (via Idc-sesne TP) is sufficient for purpose.

    If you are looking for vector control or field oriented control, than you have to go for motor phase current measurement. With DRV8313evm it’s not straightforward; you have to hook-up external circuit. DRV8312 EVM kit (with C200 control card)  is right platform for this development as it provides phase current as encoder/hall interface, basically everything required  for this type of control.

    Best Regards

    Milan

  • Hi Milan 

    Thanks for the reply

    I'm developing 'Hall-effect sensor based trapezoidal commutation' algorithm, so i'm using only the feed back from hall sensors, and i'm not taking int account any current or phase voltage because i'm only trying to have a good control of the position while taking care of the required torque  so is this enough for a good control ? or i should use The DC return current as an obligation not as an option ? 

    because i'm using variable DC power supply and i have the possibility to limit the output current as much as the maximum needed and even with a big load on the motor, the current will not rise more than the limited value ? so is my understanding correct ?  

    Please advise me on the different type of control architecture which can help me achieve the required position as well as maintaining the required torque 

    Best regards  

     

  • Sadok,

    Using current PI (proportional +Integral) control or not, is religious debate. It really depends what exactly needed by end application or system requirement? With Hall-sensor based trapezoidal control, you can opt from 3 basic choices:

    1. Just go ahead with open loop speed control. Speed is controlled, by varying the duty cycle in open loop. For certain application such as fans/pumps, which do not need fast dynamic speed response (acceleration/deceleration) and speed accuracy, this simple control would be sufficient.  Note that in this case, motor speed will vary as load or input power supplies voltage changes.
    2. If you want to make speed constant at different load/input conditions, you can add Speed PI controller, in which speed error will decide the duty cycle. So you will get constant speed at different load and inputs conditions. However, here it will still not provide fast dynamic responses because current control is missing. If you try to tune your Speed PI gains too aggressively to get fast response, you will in turn inject high duty cycle which may smoke out your 3-phase inverter circuit, in worst case motor windings too. For example, let say in starting, you give step input to speed PI to reach 50% or 90%  of speed, the Speed PI output will apply almost 100% duty cycle in beginning and since motor is at rest, there is no back-emf, current will to very high value as it is limited  only by resistance/inductance of stator, which is pretty much dead short condition.  To get balance, you will have to apply ramp type of input speed reference and will have to tune PI gains also quite optimally; all these will slow down the response.
    3. Caseded control loop architecture , speed PI followed by current PI will avoided above mentioned issue, as now the duty cycle will be decided by current error . As soon as current reaches the required level as set by speed PI, duty cycle will automatically control. Provided both the loops properly tuned, you will be able to get the fastest possible response from your system. There in one more subtle fact here, in terms of control system design, adding current PI simplifies the over-all system transfer function,  as current PI cancel out one pole related to motor electric time constant (L/R), it helps in easy design of speed control loop.

        I hope above explanation gives good idea of 3-appoaches, As mentioned already choosing between ttem will really depend upon what exactly required by end application.

    Best Regards

    Milan

  • Hi Milan 

    so concerning the application, in fact , the brush less motor is used to displace a linear actuator, the linear actuator will have a displacement range of +-5 mm , the speed is not too important, what is important for us is position, we need to have accurate position control, and for the load, the maximal load estimated is 25 mNm, and the constant torque for my motor is 24.1mNm/A so i hope the current will not be more than 1 or 1.2 A in maximum load condition .

    So my question is if we limit the current output of the DC power supply volatge at 2 or 3 A (the supply fed the drv8313 evm ) and i try only to have one closed loop for position control (the  position feedback will be delivred from an LVDT sensor, the error between this value and the reference value will give a value, this value will determine the duty cycle of the pwm signal used to fed the motor) , will this loop be enough ?and my motor will it be protected from over current ?

    i have attached the installation circuit of my application, please have a look on it and advice

    thank you in advance 3326.installation circuit (1).pdf    

  • My friend,

    The answer to your second question is quite easy, and it is yes, limiting the current of DC power supply will protect motor from over-current.

    Is single loop enough? I’m afraid that I can’t give exact answer to this question. Well its both yes or no, depend upon what are performance spec you are looking for. Like you said, speed is not so important and it’s ok even if actuator moves very slowly to reach commanded position that means no hard specs get fast acceleration time, yes then single loop can be enough, provided you are able to stablize the loop with minimum-over-shoots.

    However, things start getting complicated when these specs become important to move the target to commanded position in minimum possible time and minimum over-shoot. It is as this juncture control theory proposes to have cascaded PI loop to get best possible out of given system.

    I hope this clarifies your queries.

    Best Regards

    Milan-Motor Application Team