element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Experts, Learning and Guidance
  • Technologies
  • More
Experts, Learning and Guidance
Ask an Expert Forum Differential amplifier problem
  • Blog
  • Forum
  • Documents
  • Leaderboard
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Experts, Learning and Guidance to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Verified Answer
  • Replies 38 replies
  • Answers 15 answers
  • Subscribers 301 subscribers
  • Views 9804 views
  • Users 0 members are here
Related
See a helpful answer?

Be sure to click 'more' and select 'suggest as answer'!

If you're the thread creator, be sure to click 'more' then 'Verify as Answer'!

Differential amplifier problem

Andrew J
Andrew J over 5 years ago

I'm working with a DAC and experimenting with removing the zero scale error - the actual output at a zero input code.  I'm on a breadboard so it isn't particularly accurate but the ZSE is 5mV to 11mV.

 

I set up a differential amplifier as follows - image is copied from a website, but I've confirmed and re-confirmed that my setup matches:

image

So, I have the following inputs:

V1 = 0.005mV

V2 = DACoutput

R = 100K.  All of them.

Opamp is an LM741 which is all I have on-hand, V+ = 5V, V- = ground .  It has a max offset voltage of 6mV.

 

Given that, I would expect Vout = V2 - V1.  Vout is connected to a 1K resistor to ground.

 

So the reality is that the R values are not perfectly 100K but are within the 10% spec.  Thus I wouldn't expect Vout to be an exact difference, but 'more-or-less'.

 

This is what I'm measuring:

DACout (V2) = 4.06V, Vout = 4.04V

DACout (V2) = 0.011V, Vout = 3.6V

 

I've tried working out why with a low DACout I'm still getting a large Vout.  Measuring the resistors and plugging them into the gain formula:

 

Vout = -0.005 * (99.03/99.5) + 0.011 * (99.21/(99.05+99.21)) * ((99.5+99.03)/99.5)

Vout = (-0.005 * 0.995) + (0.011 * 0.500 * 1.995)

Vout = -0.005 + 0.011 = 0.006

 

So, essentially, my calculation confirms what I would expect the amplifier to do with a -0.005mV and 0.011mV input.

 

I can't figure out where I've gone wrong, can anyone give me some pointers?

Attachments:
2477.LM741.asc.zip
  • Sign in to reply
  • Cancel

Top Replies

  • michaelkellett
    michaelkellett over 5 years ago +5 verified
    What power do you have connected to the 741 - it's not rail to rail capable it needs positive and negative supplies, +/- 10V is the minimum recommended. The input common mode range is +/- 12V when running…
  • michaelkellett
    michaelkellett over 5 years ago in reply to Andrew J +5 suggested
    If you want to sink any current at 0V you need a negative supply. You could consider using +/- 5V supplies (+/- 10 if you stick with the 741 ) You can do a lot of this without spending money by using a…
  • Jan Cumps
    Jan Cumps over 5 years ago in reply to Andrew J +4 suggested
    Yes, we're doing it the naive way. That's why I hope that analog / DAC experts chime in and show the shining path to real world solutions. In the eLoad we made, things like OpAmp offset, quiescent current…
Parents
  • michaelkellett
    0 michaelkellett over 5 years ago

    What power do you have connected to the 741 - it's not rail to rail capable it needs positive and negative supplies, +/- 10V is the minimum recommended.

    The input common mode range is +/- 12V when running with +/- 15V supplies - that means that the amp won't work properly if either input is closer to a supply rail than 3V.

     

    The LM741 was designed (by David Fullagar at  Fairchild) in 1968 - 52 years ago - we have better parts now image

     

    Just seen your photo - single rail supply ?

     

    The poor old 741 can't work like that, but you won't get any (even rail to rail IO types) op amp to do get the output right down to zero.

     

    MK

    • Cancel
    • Vote Up +5 Vote Down
    • Sign in to reply
    • Verify Answer
    • Reject Answer
    • Cancel
Reply
  • michaelkellett
    0 michaelkellett over 5 years ago

    What power do you have connected to the 741 - it's not rail to rail capable it needs positive and negative supplies, +/- 10V is the minimum recommended.

    The input common mode range is +/- 12V when running with +/- 15V supplies - that means that the amp won't work properly if either input is closer to a supply rail than 3V.

     

    The LM741 was designed (by David Fullagar at  Fairchild) in 1968 - 52 years ago - we have better parts now image

     

    Just seen your photo - single rail supply ?

     

    The poor old 741 can't work like that, but you won't get any (even rail to rail IO types) op amp to do get the output right down to zero.

     

    MK

    • Cancel
    • Vote Up +5 Vote Down
    • Sign in to reply
    • Verify Answer
    • Reject Answer
    • Cancel
Children
  • Andrew J
    0 Andrew J over 5 years ago in reply to michaelkellett

    Wolfgang/Michael,

     

    it's using 5V+, 0V- so no -ve supply rail; I could run it from a 12V+ which would keep DACout max well below that limit.  I did wonder about a -Ve supply rail originally, but as I wasn't asking it to output a -ve voltage I didn't think it would matter.

     

    The LM741 is all I have to hand and was something I got hold of when I first started out learning this stuff.  I'm prototyping ideas at the moment before getting a prototype PCB made up.  One of my ideas involves buffering an ADC input so I had sort of settled on getting a OP388 for that and I'd thought if this zero code error compensation worked I would get another (OP4388) for that purpose.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Verify Answer
    • Reject Answer
    • Cancel
  • Andrew J
    0 Andrew J over 5 years ago in reply to michaelkellett

    Michael, if I understand what you are saying, trying to use an OpAmp of any sort to get rid of a, say, 5mV ZSE is not going to be possible?  My thought was a theoretical 0mV should be <1mV (uV in other words) rather than an actual 0V.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • michaelkellett
    0 michaelkellett over 5 years ago in reply to Andrew J

    If you want to sink any current at 0V you need a negative supply. You could consider using +/- 5V supplies (+/- 10 if you stick with the 741 image)

     

    You can do a lot of this without spending money by using a simulator - LTSpice is free and good - (from www.analog.com)

     

    The OP388 parts are interesting but they are chopper amps which means that they bring their own special problems and they are not that cheap.

     

    One (of many) things to be concerned about is that the DAC will be non linear at low outputs if its a single rail part !

     

    If you really want to play with actual parts rather than simulate then get some Microchip op amps (because some come in DIL packages).

     

    MCP6002 are dirt cheap, rail to rail IO, not too fast so won't be too hard to handle on bread board. Single rail max supply 6V.

    Offsets not that good but bias current is tiny.

    1292245 from Farnell at £0.26 for a dual op amp means you won't be too sad when you blow one.

     

    I'm not sure what your goal with this work is - if you can explain a bit more I might be able to offer more useful suggestions.

     

    MK

    • Cancel
    • Vote Up +5 Vote Down
    • Sign in to reply
    • Verify Answer
    • Reject Answer
    • Cancel
  • michaelkellett
    0 michaelkellett over 5 years ago in reply to Andrew J

    The problem is this:

     

    Suppose you use an MCP4822 dual 12 bit DAC, the output offset max at zero code is +/- 1% of full scale = 20.48mV or 41 bits.

     

    A typical rail to rail input amplifier will have a common mode range that goes down to maybe 0.3V below ground (although performance may not be well specified there.)

     

    Your diff amp will be OK - the voltage on the positive input will be max 10mV to -10mV. To null that you'll need + or - 10mV on the other pin but there is a flaw in this reasoning !

     

    It won't work - think about that weasel spec, the code is zero and the offset is -20mV or -41 bits . But the DAC only has 0 - 5V supply rails - its output can't go negative !!

     

    So if you set any code in between 0 and 41 the DAC output just sits at 0V - so you can't null the zero offset of a single rail DAC.

     

    MK

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • Verify Answer
    • Reject Answer
    • Cancel
  • wolfgangfriedrich
    0 wolfgangfriedrich over 5 years ago in reply to Andrew J

    I was going the same route as Michael, he already gave the correct hint in his question. image

     

    This is the relevant datasheet section for a +-15V supply:

    image

    And the 741 could not be run with +5V/0V at all:

    image

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • Verify Answer
    • Reject Answer
    • Cancel
  • Andrew J
    0 Andrew J over 5 years ago in reply to michaelkellett

    Basically, I'm having a play around with DACs and ADCs creating my own version of Jan' and Peter's Boost board for their eload.  Ultimately, I'll probably add a DC load onto this as well but right now, I'm just trying to get a better understanding of these devices and how I might improve the output.  That's fairly simplistic because I am trying to make a control board with other things as well, but here is what I'm trying to do specifically with the DAC / ADC side of things.

     

    The 12-bit DAC, with a 4.096 external reference, I have is 'ok' - pretty cheap, not highly accurate and I will change it for another shortly - and I can measure it's output as 5mV to around 4.080V.  So there is a Zero Scale Error of around 5mV and a Full Scale Error of 26mV.  Sticking with the ZCE: what this means is that if I try and output codes 0 to 5 I get 5mV, 6 I get 6mV etc.  My idea was to use a differential amplifier with a 0.005mV input on the inverting side to 'subtract' this from the output of the DAC on the non-inverting side.

     

    The 16-bit ADC isn't too bad and I know that will come with its own errors.  I had thought I would buffer the ADC inputs with a simple RC filter on the buffer output to filter any noise.  For this, I had thought to use an OP388 as TI promote it for such a purpose:

    "The OPAx388 (OPA388, OPA2388, and OPA4388) series of precision operational amplifiers are ultra-low noise, fast-settling, zero-drift, zero-crossover devices that provide rail-to-rail input and output operation. These features and excellent ac performance, combined with only 0.25 μV of offset and 0.005 μV/°C of drift over temperature, makes the OPAx388 a great choice for driving high-precision, analog-to-digital converters (ADCs) or buffering the output of high- resolution, digital-to-analog converters (DACs). This design results in excellent performance when driving analog-to-digital converters (ADCs) without degradation of linearity."

     

    There are things that I don't yet understand but that's why I'm doing it - for fun and learning, so I don't mind spending a bit of money to work things out.  I'm trying some things I can do on a breadboard first and then reading around potential solutions for what I'm seeing.  At some point I want to actually produce a PCB because it's as cheap to do that as to get DIL adapters for the ICs!

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • Verify Answer
    • Reject Answer
    • Cancel
  • Andrew J
    0 Andrew J over 5 years ago in reply to michaelkellett

    I had realised that I couldn't get rid of that 0 to 41 code range by software compensation; the output is never 0mV (or -ve) with this type of delta-sigma DAC, it's always positive in some form (as I understand from how these types of DACs work.)  The MCP4728 I use doesn't state a ZSE in the datasheet but the Offset error is 5mV (typical) to 20mV (max.)  At this point, I was looking at reducing it through the diff. amp such that, to take your example, 0 to 41 is 0mV, 42 becomes 1mV, 43 becomes 2 and so on.  I realise this is taken the full scale range further below where it currently sits because it will subtract 5mV from all output values.  In my actual case, that zero scale error was 5mV (or 11mV it's not always so stable on the breadboard) so I was trying to 'subtract' 5mV thus a code of 0 to 5 become 0V, 6 becomes 1mV and so on. 

     

    I'm not sure yet whether this is possible or not given what you've said, perhaps I'm still misunderstanding something?  Clearly I need something better than the op amp I have so thanks for clearing that up, that's been really useful.  I'll have a play around in LTSpice and see what I come up with.

     

    Thanks for the input.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Andrew J
    0 Andrew J over 5 years ago in reply to wolfgangfriedrich

    Dammit, I know this!  All the past experiments I've run with this op amp have been at a higher input voltage.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Jan Cumps
    0 Jan Cumps over 5 years ago in reply to Andrew J

    ultra-low noise, fast-settling, zero-drift, zero-crossover

    This is where jc2048 advice is welcome, because another player is the current on both OpAmp input sides.

    They have impact on behaviour, and on the resistors you (can) choose to define input impedance and feedback ..

    A lovely subject. It can be analysed without a breadboard, by using a simulator (as suggested by michaelkellett). But if you have the hardware you can see the effects for real too.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • michaelkellett
    0 michaelkellett over 5 years ago in reply to Andrew J

    What DAC are you using (and planning to use) - precision non audio DACs are almost never delta sigma types.

     

    (I'm going home now so won't see any more till tomorrow.)

     

    MK

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube