Error Budget Analysis
Part 2 - Gain Errors
INTRO
In Part 1, the Error Budget Analysis was introduced by finding the
Offset Errors of the Digital Voltmeter..
Here in Part 2, we'll apply the same Key Concepts to find the
Gain Errors of the DVM. You may find calcuating the Gain
Sensitivities a bit more interesting and challenging.
Back to Design Series
OFFSET AND GAIN ERRORS
- Ideal Amplifier with Gain K
- Actual Amplifier with errors
- Vo = Vin* (K+∆K)
+ ∆Voffset
- ∆K - Gain Error
- change in Gain from ideal (K).
- also called Slope, Span error
- ∆Voffset - Offset Error
- change in offset from ideal (0V)
- also called Intercept, Zero Error
- Combined error
- Error = ±∆Voffset
+ ( ±∆K x Reading )
MAX BUDGET
- Max allowable error from requirements.
- 4V: ∆Voffset = 15mV, ∆K = 1.5% of Reading
- 20V: ∆Voffset = 75mV, ∆K = 1.5% of Reading
CIRCUIT WITH ERRORS
Here's a view of the instrument's Offset and Gain errors. We'll meed to
find the errors for both the 4V and 20V Ranges.
ATTENUATOR GAINS
- 4V: SW1 On, SW2 Off
Kdiv = 1.0
- 20V: SW1 Off, SW2 On
Kdiv = R2/(R1+R2)
=200k/(800k+200k)
= 0.2
ERROR SOURCES
Offset Errors | Value |
ADC Offset (Zero) Error |
2 LSBs |
ADC Resolution Error |
1/2 LSBs |
SW1 Off-State Leakage Current |
1nA |
SW2 Off-State Leakage Current |
1nA |
Gain Errors | Value |
R1 Tolerance |
1% |
R2 Tolerance |
1% |
ADC Gain (Span) Error |
2 LSBs |
Voltage Reference Error |
50mV |
R1 TOLERANCE
Typically, you'll see Resistor Tolerances (∆R/R) and Gain Errors
(∆K/K) expressed as normalized
ratios
- Identify Error Source
- Choose Analysis Node - a convenient location to
calculate the error's impact on
Gain.
- Node: v1
- Gain: K = v1 / vin
- Calculate Sensitivty - how does error impact Gain to Analysis Node?
- 4V: S = (∆K/K) / (∆R/R) = 0
- 20V: S = (∆K/K) / (∆R/R) = +0.8
(see Sensitivty Calc below)
- Calculate Error
- 4V: ∆K/K = R1_Tol x S
=
1% x 0
= 0%
- 20V: ∆K/K = R1_Tol x S
= 1% x 0.8
= 0.8%
- No RTI error calc needed! Because Gain Errors are
multiplicative, they cause the same equivalent error at any node in
signal path.
R2 TOLERANCE
- Identify Error Source
- Choose Analysis Node - a convenient location to
calculate the error's impact on
Gain.
- Node: v1
- Gain: K = v1 / vin
- Calculate Sensitivty - how does error impact Gain to Analysis Node?
- 4V: S = (∆K/K) / (∆R/R) = 0
- 20V: S = (∆K/K) / (∆R/R) = -0.8
(see Sensitivty Calc
details below)
- Calculate Error
- 4V: ∆K/K = R2_Tol x S
=
1% x 0
= 0%
- 20V: ∆K/K = R2_Tol x S
= 1% x 0.8
=
-0.8%
- No RTI error calc needed as stated for R1.
ADC GAIN ERROR
- Identify Error Source
- ADC Gain Error: 2 LSBs, 10 Bits (Arduino)
- Kadc = 1024 / Vref
- ∆Kadc = 2 LSB / Vref
- ∆Kadc / Kadc = 2 LSB / 1024 x 100% = 0.2%
- Choose Analysis Node - a convenient location to
calculate the error's impact on
Gain.
- Node: ADCword
- Signal Gain: K = ADCword / vadc
- Calculate Sensitivty - how does error impact Gain to Analysis Node?
- S = (∆K/K) / (∆Kadc/Kadc) = 1.0
(see Sensitivty Calc
details below)
- Calculate Error
- ∆K/K = ∆Kadc/Kadc x S
= 0.2% x 1.0
=
0.2%
- No RTI error calc needed as stated for R1.
VREF (ADC) ERROR
- Identify Error Source
- Arduino VREF (VCC): ∆Vref = 0.050V
- Choose Analysis Node - a convenient location to
calculate the error's impact on
Gain.
- Node: ADCword
- Signal Gain: K = ADCword / vadc = (1024 / Vref)
- Calculate Sensitivty - how does error impact Gain to Analysis Node?
- S = (∆K/K) / (∆Vref) = -0.2
(see Sensitivty Calc
details below)
- Calculate Error
- ∆K/K = ∆Vref x S
= 0.050V x -0.2
x 100%
=
-1.0%
- No RTI error calc needed as stated for R1.
GAIN SENSITIVITY CALCS
A walk-through of calculations below showcases the simple,
yet powerful Difference Method for calculating Sensitvities!
NOTE! Sensitivities can also be calculated by the Derivative (Calculus) Method
by deriving the partial derivatives. However, the formulas become
so unwiedly (even for smmple circuits)
that the marginal accuracy gained is not worth the time or risk of mistakes
/ typos.
R1 TOLERANCE
Find the Gain Sensitivity
- Analysis Node: v1
- Gain: K = v1/vin = R2/(R1+R2)
- Sensitivity Equation (Delta Method)
- Pick any small value of ∆R1/R1 (0.01, 0.001, ...) to find S.
- How does the gain change for, say, a 1% change in R1?
- ∆K = K' - K
- K = R2 / (R1+R2)
- K' = R2 / (R1*1.01 + R2)
- Evaluate S for R1 = 800k, R2 = 200k, ∆R1/R1 = 0.01
- K = 200k/(800k+200k) = 0.200
- K' = 200k/(800k*1.01+200k) = 0.198
- S = (∆K/K) / (∆R1/R1)
= ( (0.198
- 0.200)/0.200 ) / (0.01)
= -0.8
- This tells us that for any R tolerance Tol, the Gain
Error will be Tol x -0.8.
R2 TOLERANCE
Find the Gain Sensitivity
- Analysis Node: v1
- Gain: K = v1/vin = R2/(R1+R2)
- Sensitivity Equation (Delta Method)
- Pick any small value of ∆R2/R2 (0.01, 0.001, ...) to find S.
- How does the gain change for a 1% (for example) change in R2?
- ∆K = K' - K
- K = R2 / (R1+R2)
- K' = R2*1.01 / (R1 + R2*1.01)
- Evaluate S for R1 = 800k, R2 = 200k, ∆R2/R2 = 0.01
- K = 200k/(800k+200k) = 0.200
- K' = 200k*1.01/(800k+200k*1.01) = 0.204
- S = (∆K/K) / (∆R2/R2)
= ( (0.202
- 0.200)/0.200 ) / (0.01)
= +0.8
- This tells us that for any R tolerance Tol, the Gain
Error will be Tol x +0.8.
ADC GAIN ERROR
Find the Gain Sensitivity
- Analysis Node: ADCword
- Signal Gain: K = ADCword / vadc
- Sensitivity (by inspection)
- S = (∆K/K) / (∆Kadc/Kadc) = 1.0
- No calculation needed. By definition, the ADC Gain Error
directly scales the slope of ADCword versus vadc.
VREF (ADC) ERROR
Find the Gain Sensitivity
- Analysis Node: ADCword
- Signal Gain: K = ADCword/vadc = (1024/Vref)
- Sensitivity Equation (Delta Method)
- Pick any small value of ∆Vref (0.01, 0.001, ...) to find S.
- How does the gain change for a 0.001V (for example) change in Vref?
- ∆K = K' - K
- K = 1024 / Vref
- K' = 1024 / (Vref + 0.001)
- Evaluate S
- K = 1024 / 5.0 = 204.80
- K' = 1024 / (5.0+0.001) = 204.76
- S = (∆K/K) / (∆Vref)
= ( (204.76
- 204.8) / 204.8 ) / (0.001)
= -0.2
- This tells us that for any ∆Vref, the Gain
Error will be ∆Vref x -0.2.
TOTAL GAIN ERRORS
Worst Case Analysis estimates the total error under the most unfavoable
conditions: all errors at their maximum limit AND in the same
polaritiy.
- WCA = | ∆K1/K1 | + | ∆K2/K2 | + ...
= |Gain_Err_R1| + |Gain_Err_R2| + |Gain_Err_ADC| + |Gain_Err_Vref|
- 4V: WCA = | 0% | + | 0% | + | 0.2% | + | -1.0% |
= 1.2%
- 20V: WCA = | -0.8% | + | 0.8% | + | 0.2% | + | -1.0%
|
= 2.8%
Does the Total Error fly under the Error Budget (Requirements)?
- 4V: WCA = 1.2% < 1.5%?
Yes - PASS!
- 20V: WCA = 2.8% < 1.5%?
No - FAIL!
The GOOD News - We've completed the Gain Error
Analysis, congratulations!
The BAD News (that's really GOOD News) - We've
uncovered that the design does NOT MEET SPEC on the 20V Range!
HANDS-ON REDESIGN
Play in the Excel file - modify values, see what happens!
Redesign 20V Range
- Ask yourself - which are the biggest gain error
contributors to the 20V Gain Range?
- Looks like the R1 and R2 tolerances (1%) standout above the
others.
- The next highter precision grades are 0.5%, 0.1% and 0.05%.
Which precision grade is needed to meet the Gain
Error Spec?
- Open the Excel file above and choose a new tolerance for R1, R2
to get the total Gain Error < 1.5%.
NEXT UP
We completed the Hardware Design, so now let's tackle the Sofware
Design.
Back to Design Series