Electrical – Low side current sensing

brushless-dc-motorcurrent-sensing

Iā€™m making a BLDC motor controller application. The motor control IC (Allegro A4931) uses low side current sensing (R7,R8,R9) for controlling the motor. Unfortunately the motor IC does not output a amplified version of the SENSE voltage. I would like my MCU to measure the current with the use of the same resistor. Is there anyone that can help me pick out the right components to do so? I would like the MCU ADC to measure 0V at 0A and Vcc (3.3V) at 5A through the resistors. There is no need for a super accuracy (+-0.25A is ok).

Thanks!

enter image description here

Best Answer

Just need a basic non-invetering opamp cct to amplify the voltage between top of R7-9 and GND. This is an very basic circuit that you can find all over the interwebs. Tweak R1/R2 to change the gain.

I set it so 5A gives you just under 3.3V as you requested, but you actually probably want some more margin in case it goes over. You probably also want some filtering the signal as BLDC circuits generate a lot of noise, which will throw off your measurements.

Hit simulate, DC sweep. Sweep I1 from 0 to the max current, and readback VOUT.

schematic

simulate this circuit ā€“ Schematic created using CircuitLab

EDIT: Added C1 for low pass filtering. You really ought to put the footprint in at the very least. Its going to be really noisy, and you will want to get rid HF stuff.

Related Topic