On Mittwoch, 21. November 2018 02:26:29 CET Nicolin Chen wrote: > === Background === [...] > > === Problem === > Both methods simplify software routine by fixing one factor, which > sacrifices the precision of the hardware measurement results. > > Using ina226 for example, with method A, the current scale was 1mA > and the power scale was 25mA. > > With method B, calibration value is fixed at 2048 so the precision > is decided by shunt resistor value. It sounds reasonable since the > hardware engineers can use a larger shunt resistor when they need > higher resolution. However, they often concern power burning across > the resistor as well, so the resistor usually won't be so large: a > typical value 1000 micro-ohms, which results in a current scale at > 2.5 mA and a power sacle at 62.5 mW. Power loss surely is a concern, but figures should be kept reasonable. 1. You mention 1.8V bus voltage, and currents in the 30mA range. Using the 1mOhm current shunt: U_S = R_S * I_S 1e-3 Ohm * 30e-3 A = 30e-6 V (30uV) P_S = U_S * I_S = 30e-6V * 30e-3 A = 900e-9W = 0.9 uW INA219 Power Supply (Datasheet) Min operating Voltage: 3V Quiescent Current: 0.7mA -> Min power: 2.1mW So the INA219 alone uses 2.1mW, 1000 times more than the shunt. Another concern may be voltage drop over the shunt, but for this case you have a nominal voltage of 1.8V, so 30uV are 0.001%. > When measuring a 1.8v voltage running a small current (e.g. 33 mA), > the power value (that's supposed to be 59.4 mW) becomes inaccurate > due to the larger scale (25mA for method A; 62.5 mA for method B). Another look into the datasheet reveals, even at full gain (PGA=1), the LSB is 40mV / 2^12 = 40mV / 4096 ~ 10uV. So when the current ADC reads out as 3*LSB, this anything between 25mA and 35mA. This is the best case figure. On top of quantisation error, you have the ADC offset voltage (V_OS), which is given as (for PGA=1, best case): (+-) 10uV typical, (+-) 100uV max. So, if you want to have meaningful readouts adjust your shunt to a reasonable value. Even 100 times the current value will have no measurable effect on you system (power loss: 90uW, voltage drop: 3mV). Kind regards, Stefan