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.

Current sensing in DRV8313 for driving solenoid

Other Parts Discussed in Thread: DRV8313EVM, DRV8313

Hi,

I am using DRV8313 to drive 3 different solenoids with different current requirements. I have tested my circuit on the DRV8313EVM and it work. However, I am not able to implement current sensing on the eval board as reference to comparator is connected to GND.

This is why I am designing a new board that will implement current sensing. For the same, I am planning to use the following circuit.

Following are the conditions for operation of the circuit

1. At any point of time, only one solenoid is ON.
2. Each solenoid can have different maximum control current - viz. 2A, 1.5A, 800mA, 600mA etc.

The plan is this - for COMPN, give PWM input from microcontroller so that I can vary voltage according to solenoid max current. COMPP is connected to Rsense.
My actual questions are these

1. Will this work? (It's vague but any reason why it should not work?)

2. Assuming this works, and I set max current to 500mA, the voltage across Rsense will be max 25mV. This is very low for the comparator and might be affected by noise. Is this right?

Cheers

Shashank

  • Hi Shashank,

    Why you have to apply PWM to COMPN? You can control the IN inputs with PWM and regulate the current for each load. For the current sense you can use it as a protection when coils get partly shorted and set the level higher than the MAX one's current.

    The comp will have +/- 7mV input offset, so the 25mV sensing voltage may be too small to get accurate result.

    Best regards,
  • Hi Wilson,

    I am doing exactly the same. I am giving PWM input to DRV to regulate current. But in case the load on Solenoid is more and it demands more current, DRV will still be able to provide it right? This is why I need overcurrent protection

    Cheers
    Shashank
  • Hi Shashank,

    The Solenoid current will change if the flux changed. Is it an electromagnet you want to drive? The current will not change even if the load changed but no movement of the armature.

    Also you can always get the MAX current by Im = VM*PWM_duty/R_coil. Only when the coil is shorted, we need to protect the driver from the short current.

    Best regards,
  • So, as I understand it, you mean to say that when using PWM as input to DRV, current sensing is not necessary.
    But what if the solenoid is a proportional valve?

    Also when I give 100% PWM to DRV, will the output current be the max current that DRV can provide (2.5A peak according to datasheet) OR the maximum control current of solenoid?
  • Hi Shashank,

    The MAX current of the solenoid is Im=VM/R. If this Im < I_max_drv, you can go with 100% PWM. There is another scenario that maybe one of the solenoids is named 12V but you have the 24V supply, then, you can set the MAX duty to 50% when driving this solenoid.

    Best regards,
  • Thanks Wilson for the reply.

    I have got most of the doubts cleared.

    I am actually using 12V solenoid with a 24V power supply. So setting 50% duty cycle will work for me.