0
\$\begingroup\$

Every voltage regulator IC has atleast a variation of 2% or something. This can make the ADC reading way inaccurate if it fluctuates to those levels. What is a robust and common solution to this problem?

\$\endgroup\$
  • \$\begingroup\$ Remember that the reference voltage is not the only source of error. In addition to such gain errors, there are also linearity errors. If you are using an ADC built-in to a microcontroller you can't expect a very high level of accuracy. \$\endgroup\$ – Elliot Alderson Jan 30 at 12:37
2
\$\begingroup\$

You use an external "reference". You can use anything from a few-penny LM431 to much more sophisticated references, depending on your requirements for accuracy and stability as well as noise

LM4040 is a commonly used shunt reference for moderate accuracy and low cost, but there are many others, do a parametric search based on your actual requirements. They come in two basic types- series and shunt. The series type is like a more accurate and stable type of voltage regulator, the shunt type is like a zener diode that requires some series resistance to establish a bias current.

In some cases, for the best accuracy, you may need to buffer the reference output in order to drive the ADC reference input.

\$\endgroup\$
  • \$\begingroup\$ Okay, understood. But is there a way to use a generic voltage reference without that much accuracy and compensate the error in software? I understand that there is an internal reference and that is calibrated by ST during production by using a 3.3V supply with a -+10mV variation. Is it possible to recalibrate these values with a different voltage reference supply? Like the TL431 for instance. – \$\endgroup\$ – sixter Jan 30 at 10:28
  • 2
    \$\begingroup\$ If you add the particular section of the datasheet to your question and your actual requirements it might be possible to answer, but this seems way too hypothetical. Generally if you have a better reference it's probably best to use it directly rather than to try to correct a lousy reference. It's certainly possible to do a calibration using an external reference (for example a bench top instrument) and store a correction factor in EEPROM, but if it drifts around with temperature, time etc. it may be no better than the ST calibration, with added risk. \$\endgroup\$ – Spehro Pefhany Jan 30 at 10:32
  • 1
    \$\begingroup\$ There is initial accuracy (a good reference could be 0.1% or 0.01%) and stability (could be 100ppm/°C or 1ppm/°C), time stability and noise. There's not much point in calibrating a reference that drifts wildly with time and temperature to 0.01% because it will be different 10 minutes from now. \$\endgroup\$ – Spehro Pefhany Jan 30 at 10:34
  • \$\begingroup\$ The thing is my reference has an error of 2%. My question now is how exactly can that calibration be performed in code? I'll have a regulator connected to another ADC pin so that the values can be read and calibration performed periodically. There does not seem to be a lot of info on this. \$\endgroup\$ – sixter Jan 30 at 10:42
  • 2
    \$\begingroup\$ If everything is perfect, you can measure the known voltage, maybe average many readings to get a number x. Then multiply measurements by x'/x where x' is the expected number. That assumes no offset error, which is usually pretty good, but you can also correct for that by measuring 0V and subtracting that averaged reading from subsequent measurements etc. But, and I cannot emphasize this too strongly, if the underlying hardware is bad, software isn't going to make it magically better. \$\endgroup\$ – Spehro Pefhany Jan 30 at 10:45
0
\$\begingroup\$

There are parts made for this purpose, called voltage references rather than voltage regulators, ADR421ARZ is one such example with good noise specs.

\$\endgroup\$
-2
\$\begingroup\$

I once asked someone if there was an absolute truth, and they said "no". They did not realized that they were contradicting themselves -- they were saying, "there is no absolute truth", which translates to "there is only ONE absolute truth, which is that there is NO absolute truth", which is a contradiction. I take this to mean that there exist absolute truths. So, then, the search for truth is the first foundation.

Then, there is the field of metrology, the study of measurement. This answers the question, "it says 6 volts -- how do I really KNOW that it is 6 volts?" In other words, HOW true is it? The following is taken from the Wikipedia page on Metrology, and states that Metrology is divided into three sub-fields:

Metrology is divided into three basic overlapping activities. The first being the definition of units of measurement, second the realisation of these units of measurement in practice, and last traceability, which is linking measurements made in practice to the reference standards. These overlapping activities are used in varying degrees by the three basic sub-fields of Metrology. The sub-fields are scientific or fundamental metrology, which is concerned with the establishment of units of measurement, Applied, technical or industrial metrology, the application of measurement to manufacturing and other processes in society, and Legal metrology, which covers the regulation and statutory requirements for measuring instruments and the methods of measurement.

So, then, studying at least the existence of metrology, and realizing that your multimeter is specified to have a certain degree of accuracy, contributes to the eventual solution. This is because there are standards that have been qualified to have a certain degree of accuracy and stability, as it shows here, on the wikipedia page for Crystal Ovens, in the section on Comparison of the Crystal Oven with other frequency standards.

Finally, my answer is, get a chip (as described in other answers), read its specifications for the required temperature range, and then make sure that it is actually operating in the specified temperature range, creating the basics of a temperature-controlled oven. After you have that, then you will have the confidence to say that the chip should meet its specifications. Then, take out your multimeter, and its manual, and measure the voltage thus created, and read in the multimeter manual about that particular range, and what ACCURACY it has, the plus or minus percent part, then actually add the plus or minus to VERIFY the voltage standard by your own metrology-supported measurement device. Without knowing what temperature range you are operating within, you may not be able to provide the reference voltage with the required degree of confidence.

Finally, realize that your multimeter, and the chip you depend on to produce the voltage standard, have been qualified by a hierarchy of ever-more-precise standards so that everybody right down the line can say with confidence that... the frequency, voltage, current, resistance, etc. has been specified with a particular degree of accuracy.

The underlying knowledge is somewhat important to have first. THEN you can go get the chip and use it properly. May all your instruments be properly calibrated. ;-)

\$\endgroup\$

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.