[AmpeROSE] Initial Calibration

Good evening everyone!

In this long overdue post I will talk a little bit about one of the two main subjects I have worked on these past two weeks: The calibration method.

In a perfect world the whole initial calibration method would not be needed, but we live in the real world, so here goes…


We have gone to great lengths to get the components most suitable for our purposes. That said, the components of our measurement circuits are far from perfect: they present a number of errors we have to tend to.


These are the most important errors that must be corrected if we are to obtain meaningful results from AmpeROSE:

  1. Shunt errors:
    1. Precision error on Shunt resistor values
    2. Added resistance of the switch transistor with each Shunt resistor
    3. Leakage current of said transistors when blocking
    4. Input bias current of the buffers after the Shunt stage
  2. Amplification errors:
    1. Gain error of the operational amplifier in use
    2. Offset voltage of said amplifier


1.4. AKA the input bias current of the buffers is negligible. Note that we added the buffers to reduce this leak current, which was before that of the Op Amp.


Now for the calibration method. Our calibration will run as iterations of a 2-step process:

  1. Consider the Shunts perfect and calibrate the Amplification stage
  2. Consider the Amplification stage perfect and calibrate the Shunts

For step 1, we will apply a zero voltage difference on the input of the Op Amp, but we will get a non-zero output. this is a static error, the amplified input offset voltage of the Op Amp. We will measure this value, using our ADC, and save it. We will the apply very specific non-zero inputs to the amplification stage. From each output we get, we subtract the static error. in the end, we approximate the slope of the output line. (Of course we will take care not to saturate the Op Amp.) Now, also through software, we can correct values we get from the amplifier.

Now for step 2, we will use a current sink (discussed in a different post) to force a very specific, and well known current to pass through each Shunt branch. And… You guessed it… We will not measure the value we’re supposed to measure, due to the errors discussed above. Then we use these values to shift our measurement scales, in the software.

We will repeat these steps until we reach a fixed point. This calibration may also be performed when AmpeROSE heats up, because component characteristics change with heat. Also, non-linear errors are a nuisance we will have to endure.

So, to wrap this up, you might have noticed that we’re gonna need some extra components to be able to accomplish these calibrations. Thankfully those will not affect the measures themselves… We’re going to add a current sink to our circuit, as well as switches to cut it clean from the Supply of the DUT.

1 comment to [AmpeROSE] Initial Calibration

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>