I need to connect a sensor system that outputs 0–5 VDC to a data-acquisition system (DAQ) that accepts inputs of ±0.1 VDC (it is designed for a different type of sensor, but I need to repurpose it in this application). (The signals are primarily DC, but there may be AC components. The ranges are the same.) This scenario presents two obvious problems:

  1. The 5 VPP output range of the sensor system needs to be attenuated significantly in order to be compatible with the 0.2 VPP input range of the DAQ.

    Naively, I figure this could be achieved with a simple voltage divider, performing a 50-times reduction.

  2. The sensor system has a unipolar voltage output, whereas the DAQ is designed to work with bipolar voltage inputs.

    This could be simply ignored, if I were willing to sacrifice the loss of half the DAQ's input range (and thus resolution), but given how much the input signal must be attenuated, I think that is not a reasonable approach.

    Therefore, I came up with the idea to use a differential amplifier as a simple way to convert the 0–5 V output of the sensor system to a ±5 V output.

The complete design for the "conversion" circuit is the following:


simulate this circuit – Schematic created using CircuitLab

Note that the sensor system (which generates the input) is modeled here as a waveform generator (far left). It's not actually going to be generating a constant output (in fact, precisely the opposite, or it'd be a terrible sensor), but this is sufficient for simulating the circuit.

According to the CircuitLab simulation, it works, achieving exactly what I want. But I am not an electrical engineer by training, so I'm looking for some expert guidance/review. Is this a reasonable design? Are there any hidden flaws or "gotchas" that I am overlooking?

Is the two-stage design—starting with the differential amplifier to do the unipolar-to-bipolar conversion, followed by the voltage divider to attenuate the bipolar signal to the desired range—correct? Is there a better way of doing this?

Precise and repeatable measurements are important here, to the extent it is reasonably possible. (Obviously, since this is all designed to allow sampling from sensors, the idea is to be able to quantify real-world phenomena as precisely and accurately as possible.) If there's a relatively simple design that would be more precise than this one while achieving equivalent results, then I would be interested in hearing about it. I say "relatively simple" because this is a retrofit/hack. If I have to design a simple PCB that will be inserted as an adapter/converter, then so be it, but both systems (the sensor system and the DAQ) are already existing and can't be easily modified.

  • \$\begingroup\$ How much precision or accuracy in the conversion do you require? By precision, I mean something you can calibrate out for each device. By accuracy, I mean something that is traceable back to NIST or DIN standards. Your circuit uses at least two resistor dividers and these are notorious for variations. And that's not counting your voltage reference issues. \$\endgroup\$
    – jonk
    Aug 14, 2022 at 6:52
  • \$\begingroup\$ There are no applicable standards for accuracy, @jonk, but precision is extremely important. I can't quantify exactly how much; only say that the more precise and repeatable it is, the better. The purpose is to accurately and precisely measure the voltage output of the sensor system so real-world phenomena can be estimated. The less precision lost in the measurement and conversion process, the better the final results will be (obviously). If there's a relatively simple design that can achieve higher precision, I would be interested in hearing about it. \$\endgroup\$ Aug 14, 2022 at 6:54
  • \$\begingroup\$ Well, let's leave the 'accuracy' part for individual calibration steps that take place at some later stage. That repeatable precision is the key. Resistors are specified with varying initial accuracy with respect to their specified values. These are accuracy specs, not precision. But they drift with time and temperature and... well... pretty much anything including the phase of the moon. Over time, stuff changes. Even shelving them doesn't protect you. Given enough time, they will drift. And we haven't even begun to discuss voltage rails, yet. You need to say more about what goals you have. \$\endgroup\$
    – jonk
    Aug 14, 2022 at 7:01
  • \$\begingroup\$ As you dig deeper into this stuff, it just gets increasingly painful. See this link for some discussion at a high level. I've had little but lots of pain here. It's very, very hard to create high precision devices that can be repeatably manufactured over and over again. Just saying. This is hard. If you can achieve high precision across devices, then you are in good shape to calibrate for accuracy. But getting high precision across devices is a work all of its own. One winds up having to re-calibrate every so often to get accuracy. \$\endgroup\$
    – jonk
    Aug 14, 2022 at 7:04
  • \$\begingroup\$ Thanks, @jonk. I do have some (limited) background in this area, as my company builds high-precision data-acquisition systems, and we have to consider all of these concerns constantly. This is one of those cases where we just need to hack it together to make it work as best as we can make it work, since we don't have the budget to build a de novo, correct system. I completely understand that there is no ideal solution here. I am more looking for "is this reasonable?" and "is there something better that is not into the realm of prohibitively complex/expensive?" I know that's hand-wavy; sorry. \$\endgroup\$ Aug 14, 2022 at 7:08

3 Answers 3


Level Translator

Precision resistors required, this circuit uses standard values.

Precision op amp required.

Op amp doesn't need to be rail to rail input because voltage swing at op amp's inputs is quite small.

In an amplifier the offset at the output due to the input offset voltage is equal to the input offset voltage multiplied by the non-inverting gain = Vio( 1+(R5/R2)). In this design R5/R2 is quite small (0.04) and so the offset at the output due to the input offset voltage can only be a maximum of slightly larger than the input offset voltage itself. This is a good thing.

If the op amps input bias currents were equal to each other (which they never are) then the offset at the output resulting from the input bias currents would be almost zero because the impedance seen looking out from each op amp's input is the same = R5//R2 = R3//R4. In reality the impedance seen by the op amp's inputs will not be quite equal to each other because of the output resistance of the sensor adding to the effective resistance of R4, so there will be a small output offset due to that impedance mismatch. In fact the output resistance of the sensor also induces another source of error by forming a potential divider with the combination of R3 and R4, and so there will be a small voltage drop in the output voltage of the sensor when it is connected up to R4, the input of the circuit. With any luck the output resistance of your sensor will be quite small in value compared to R3+R4, minimising these errors.

If the output resistance of the sensor is significant compared to the value of R3+R4 (78k) then you could put a unity gain buffer in between the sensor and R4 to remove the resulting voltage drop. Another option, to remove the error, would be to reduce the value of R4 by an amount equal to the output resistance of the sensor.

I mentioned that the size of the input bias currents is not important (assuming they have the same value) because the impedance seen by the op amp's inputs is almost the same as each other (assuming a low sensor output resistance). What is important in this design is a data sheet parameter called "input offset current" which is a measure of how different the size of the input bias currents can be to each other. When the impedances seen looking out from the op amp's inputs are equal to each other then the source of error is due to the difference in the sizes of the input bias currents.

  • \$\begingroup\$ wouldn't it also work without the reference circuit? Input into R2 and input return (0 V) into R4. Output signal will be inverted though. \$\endgroup\$
    – tobalt
    Aug 14, 2022 at 9:42
  • \$\begingroup\$ +1, reasonable values, what's not to like? Choose op-amp and resistors for drift specifications, if drift is important to your application. \$\endgroup\$
    – Neil_UK
    Aug 14, 2022 at 9:44
  • \$\begingroup\$ Thanks for the suggestion. It does seem like this has some significant advantages, like not requiring the ±15 V (or ±12 V) supplies for the op-amp, since, as you said, the voltage at the op-amp's inputs is already small. Also, it looks like this is a better design that reduces impedance offset and better balances resistors, so it should be lower noise. I am struggling a bit to understand the function of R1. I was going to try to choose precision resistors (10k and 200 ohms should work, I think) and run a simulation with this design to confirm, but that change breaks it b/c I don't consider R1. \$\endgroup\$ Aug 16, 2022 at 9:22
  • \$\begingroup\$ Note for future reference (if only just for myself): CircuitLab doesn't directly support a shunt voltage regulator like the TL431 for simulation purposes, but I found this model (which is based on the equivalent circuit in the datasheet) that can be copy-pasted in. \$\endgroup\$ Aug 16, 2022 at 9:24
  • \$\begingroup\$ @CodyGray Ratio of resistors has to be equal to input range/output range = 5/200mV = 25 = 75k/3k. All R1 does is provide current to the TL431 to enable it to work and bias its cathode to 2.5 V. \$\endgroup\$
    – user173271
    Aug 16, 2022 at 10:09

A lot depends on your requirements for accuracy and stability. But leaving that aside for the moment, your circuit won't work because the OP177 is not an ideal op-amp. It's actually a very good op-amp (much better than most RRIO op-amps) but it has limitations.

With +/-5V supplies it can handle inputs of +/-3V and deliver outputs of maybe +/-3.5V into a load of \$\ge\$ 10k\$\Omega\$. It's not characterized for other than +/-15V supplies.

If you increase the supplies to +/-15V (or +/-12V) then it will function (assuming you come up with a 5V reference voltage). I'm not sure why you would use such high divider resistor values on the output, I would go down by a couple orders of magnitude (eg. more like 10K/200 ohms). Depending on the input impedance and bias current of your +/-100mV input the resistor values could have a significant effect on accuracy. You might even have to add an op-amp buffer.

Using the supply voltage as a reference is generally a bad thing if accuracy matters. If you use +/-15V supplies then you can use a 'canned' reference IC, however note that the reference is called upon to sink current so some series references will be unsuitable without at least some added components (like maybe a resistor to -15V and a Schottky diode for protection). Here is a kind of series 5.00V +/-0.1% or better and low-drift reference that is nominally suitable since it can sink as well as source current (but of course error budget and so on should be considered for your particular case).

  • \$\begingroup\$ Err, good point about the OP177. It was a semi-arbitrary selection from the options on CircuitLab to do the simulation, not meant to imply the actual op-amp that would be used in the circuit, but I should have been more careful. And your feedback on that is valuable either way. Yeah, either a different op-amp would need to be selected that is specified for +/-5 V inputs (I assume one exists), or I'd need to supply this one with +/- 15 V while using 5 V as reference. The buffering of the input should be taken care of by the DAQ; it has an op-amp buffer built in. \$\endgroup\$ Aug 14, 2022 at 7:49
  • \$\begingroup\$ Good point about a separate reference; I agree that's a good idea. Ideally, the actual reference that is used by the sensor system (Vsensor/Vin) would be used, but I'm not sure if that's physically feasible. Otherwise, yeah, I'll need to pick a good off-the-shelf reference IC. So if a quality 5 V reference is chosen, and this OP177 is powered by +/- 15 V as required, then the circuit design seems reasonable and should work exactly as the simulation implies? \$\endgroup\$ Aug 14, 2022 at 7:49
  • \$\begingroup\$ Even a perfect op-amp can't get quite to the supply rails so more than +/-5V is called for unless you relax your specification to something less at the op-amp output. Yes, it should function as is. You should have power supply bypass capacitors. \$\endgroup\$ Aug 14, 2022 at 7:52
  • \$\begingroup\$ Would you normally show the bypass capacitors in a simple circuit drawing like this? I am aware that these are critical in all designs, but I guess I assumed that they were implied by the schematic representation of a voltage source that CircuitLab provides. Maybe that sort of assumption is dangerous though. :-) I think I otherwise understand all of your feedback, and I have adjusted my design sketch (not the original in question, of course, but my own private copy) accordingly. Thanks for all of your advice/suggestions, and for following up with my comments. Really appreciate it!! \$\endgroup\$ Aug 16, 2022 at 9:26
  • \$\begingroup\$ @CodyGray Well, it depends on the intent of the sketch or drawing and the audience whether you show details or not. Perhaps not everyone reading this in the future knows that they are expected. Sometimes they clutter things up when you're just trying to get an idea across, but leaving them out could lead to avoidable frustration for a beginner. So I left them out, but mentioned them when you asked about 'exactly' as the simulation. \$\endgroup\$ Aug 16, 2022 at 9:43

You have need high-precision resistors.

Why don't use some high common voltage op-amp as INA149?
Already in and well "paired".

enter image description here

  • \$\begingroup\$ I don't quite understand how this solves my problem. Looking at the datasheet, I suppose I power it with 5 V (V+ = 5 V; V- = 0V), which would give me an input voltage range of -20 to 25 V (common-mode) and an output voltage range of 1.5 to 3.5 V. That doesn't seem like what I want. And this IC only provides half of the solution anyway (the differential amplifier). I would still need to combine this with a resistive voltage divider to drop the output, right? Maybe you can add more explanation about what the advantage? Just eliminating need for separate high-precision resistors? \$\endgroup\$ Aug 16, 2022 at 7:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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