Hello
I need to make a current limiting device that senses current and depending on the value of it is controlling the duty cycle of a PWM signal.
My though is to use a differential amplifier or an instrumentation to sense the voltage drop across the sense resistor. Then the output of the amplifier will go to a gain amplifier for amplification. Finally the signal will go to an ADC, the FPGA will read ADC and with some calculation it will produce the PWM signal
Requirements
Common voltage voltage 200volts
Amps sense between 1A and 10A, accuracy is not of top priority
For differential amplifier I’m thinking of using an INA149
The part has max input offset of 1.1mV, so with 1A across a 0.01Ω resistor that’s 10% error, correct? When the Amps increase the error will reduce
The other important parameter is CMRR I have to look at. How can I calculate it for different common voltages?
I have made a draft circuit and I will start building the details later. I want to hear your opinions and suggestions for correct implementation
The Vin will be around 150 Volts not 10
Konstantinos,
The INA149 is well-suited for high-side current sensing with very high common mode voltages just as in your application. As you noted the CMRR of the part will affect the accuracy of your measured current. Here is an example calculation using the minimum CMRR spec at DC (over temperature) given in the INA149 datasheet for a 200V common mode:
As you can see, this offset value will need to be considered in your error budget. However, because you are following the INA149 with a second amplifier stage, you might consider applying a small negative voltage to the non-inverting input of U2 in order to null the offset.
There is also a frequency dependent component of CMRR that may affect your system because you are using a PWM signal. It may be wise to include some low-pass filtering after the INA149 to remove the PWM signal from the current measurement.
Two other comments I had about your circuit:
1. Be sure to power the INA149 from +/-11V supplies or greater as the common mode range of the part is dependent upon the power supply voltage:
2. You might want to consider a PMOS instead of an NMOS for M1 as this will make driving the gate much simpler.
John Caldwell
Analog Applications Engineer
PA Linear Apps
Thanks for the suggestions John
May I ask some additional information to proceed?
I took some ideas from the following paper
http://e2e.ti.com/cfs-file.ashx/__key/CommunityServer-Components-PostAttachments/00-00-40-09-40/7a_2D00_-Curr-Meas-Apps.doc
The circuit in figure 7 shows a current measurement circuit for 200V CMV. It’s using th OPA277 as a preamp to reduce the error of the INA117 which is a good idea. I wonder how it’s connecting the OPA277 across 150V since it’s not designed for such a high CMV. Maybe this has to do with the isolated power supply? Can you explain that?
I imagine in my case I cannot do that and I have to put the gain opamp after INA149. You suggested to use small negative voltage to reduce the error of the INA149. As far as i understand that i have to put -6mv along with the resistors for gain 10 at the inverting output to remove the 6mv error of the INA149 but then at higher currents where the error is much smaller i would have a bigger errors. Do i understand something wrong?
For low pass filter i'm thinking a simple RC filter at the output of INA149 in order to take advantage of the high impedance input of the gain opamp. What do you think?
Notice that the COM terminal on the isolated supply is driven by the common mode voltage. Therefore, the +/-15V terminals on this side of the isolated supply are not +/-15V with respect to ground, they are +/-15V with respect to the common mode, thus for a common mode voltage of 150V, the power supply voltage is actually 165V and 135V with respect to ground. Now we can consider the common-mode voltage of 150V as being mid-supply and the opamp functions exactly as it would for a 0V common-mode and +/- 15V supplies. The output of the OPA277 will still have an offset of 150V, which is why the INA117 is necessary to remove this offset. I don't see anything in your application that prevents you from using this approach, but you would have to include the isolated power supply.
The suggestion in my previous post was a topology as shown below:
Potentiometer P1 allows you to apply an offset voltage to the non-inverting terminal of the opamp following the INA149 in order to remove the error caused by the common-mode. The amount of negative voltage necessary will depend on the gain of the opamp as the voltage at the non-inverting terminal will be amplified by 1+ R3/R2 (reference designators in the above schematic). For high gains in the opamp, this approach may not be practical as it would require extremely small voltages for offset correction.
Thanks for suggestions John.
If I understand correctly you suggest to substract a negative voltage from the INA output in order to remove the error. In other words a zero drift like approach? But if the error is not a constant value?
Something that I noticed from some data I collected is that the output of the INA is not linear. I give you some readings I took
Amp
mv shunt
mv INA
Difference
0,5
11,56
8,98
2,58
1
22,58
18,6
3,98
1,5
34,16
28,22
5,94
2
45,85
37,94
7,91
2,5
56,85
47,53
9,32
3
69,08
57,4
11,68
3,5
81,6
66,89
14,71
4
91,18
76,25
14,93
4,5
102,74
86,15
16,59
5
116,1
95,63
20,47
5,5
126,8
105,1
21,7
6
138,42
114,65
23,77
6,5
149,8
124,14
25,66
7
163,31
133,85
29,46
As you can see the difference is increasing with the voltage drop at the shunt. Any speculations why is this happening? I haven't included an RC resistor like in figure 46 of the datasheet because Rshunt is 23mOhm
The ina voltage was +-13 and the voltage at the shunt was 13
Your data makes me believe that the INA149 is not operating properly as there should not be that large of a difference between the shunt voltage drop and the output of the INA149 (especially with a common mode voltage of only 13V). One thing you should verify is that both REF A and REF B are connected to a good low-impedance ground point. If there is any resistance in either of these "legs" of the circuit it will degrade the CMRR of the part. Would you mind attaching a schematic for the circuit you are using for your current shunt measurements?
And the board
U1 is INA and U2 is the filter and amplifier. The bottom layer is GND and the top is isolated copper. Do you think there is a problem with the layout?
Some notes.
For Load i used a dummy load. 2 mosfets driven from an opamp and i was adjusting the current that they drew using a 10 pot trimmer. I was not using a common ground between the dummy load and the INA circuit (i joined commons but i didn't notice any significant variations on the data, i will give you some other data later in the day)
The second data i measured. This time with 1 Rshunt of 0.1Ω +-5%
Again i notice the same kind of variations when the load is increasing
I'm hitting a brick wall with that INA129, changed the IC with a new one and still facing the same issues. Also tried to make it single supply with +20V , by connecting pin4 to GND and REFA & REFB together. I applied 9,978Volts to both REF's through a voltage divider from 20V supply and i got the following readings
The difference is worst that dual supply
I just want to verify that you are measuring mV INA directly at the output of the INA149 as the filter circuit you have drawn with the OPA2171 has the potential to add significant offset. Also, rather than measuring the shunt voltage at the shunt itself, measure the voltage directly at the pins of the INA149, this is a good way to determine if the PCB layout is affecting the measurement.
Exactly what i was thinking. My plan was to remove the resistor and measure the output at the INA149 to see what is wrong. I will make new measurments today and reply
I changed the layout of the PCB and now it's working as it should. The voltage at the shunt and INA had a big difference with the previous layout. As it turns out the filter didn't make any real difference
Take a look at the data
Thanks for the tips John