Hi! I’m working on an arduino project that has a -12v/0v/+12 psu. +12 is fed directly into arduinos voltage regulator, so there’s also a +5v line available. I need to convert a -5v+5v signal to 0v+5v to feed it into arduinos analogue input and I’ve already mocked up a schematic in circuitjs based on an opamp that seems to do what I want. The only problem is that it needs -5v to shift the signal to be unipolar. I know that I can invert +5v using another opamp, but maybe there’s some simpler way? I’d really like to avoid adding another opamp just for this? In this schematic I used simple voltage divider to get the needed voltage, but I guess that’s not the best approach?

TLDR: I have -12v, 0v, +12v and +5v, what’s the easiest way to get -5v?

  • PinkDuck@kbin.socialOP
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    it worked! (at least in the sim)
    thanks a lot!
    I’m not sure I got all the math right, since I get 0 - 5.05V on the output, but it’s not a deal breaker for me.
    I attached the schematics, but not sure that images in comments federate from kbin to lemmy, so if you don’t see it, try opening an original link to this comment.

    • PinkDuck@kbin.socialOP
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      ah, a little bit of thinking helped me realize that I don’t need 1k in inverting loop and then I’ll get 5v instead of 5.05v :) and 100k can also be replaced by 1k

      • grasib@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        edit-2
        1 year ago

        So what should happen if you replace the 1k in the inverting loop by 0 Ohm is, you should get a 5V square wave.

        Is that correct?

        • PinkDuck@kbin.socialOP
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          No, with 0 Ohm I get a perfect 0+5v sine, just as I need. It’s the other way round, it’ll amplify the signal and clip off the top at about + supply voltage when you increase the resistance in the feedback loop, but it’s not exactly square wave, as the bottom part of sine will remain intact. I use clipping schottky diodes to protect the arduino from voltage outside 0+5v range, this way if you increase input signal to say 20v peak to peak, you’ll get more square-ish wave in 0+5v (I’ve attached the schematics)

          • grasib@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            ·
            edit-2
            1 year ago

            You’re right of course. Two more questions if you don’t mind:

              1. what’s the 1k || 100k doing?
              1. if you don’t want more than 5V at the output of the OpAmp, wouldn’t it be easier to just supply the OpAmp with 5V instead of adding a shottky diode which has a forward voltage of around 0.6V? As I understand the screenshot the voltage is 5.4V at that exact point and it could theoretically raise to 5.6V.

            At the moment you’re also mixing up your + input. 10V AC + 5V DC result in 7.5V input in your sim.

            • PinkDuck@kbin.socialOP
              link
              fedilink
              arrow-up
              1
              ·
              1 year ago
              1. it does nothing 😅 I just forgot to remove it from the sim
              2. you mean like power it with 0+5v? I think it won’t work with negative input voltages then, right? and I’m using tl074 and I’m not sure that 0+5v is enough juice for it, and I use remaining 3 opamps for other stuff, so it’s not really an option for me. the sim didn’t have shottky diodes, so this measurements are not 100% accurate, but I used this approach to protect arduino inputs in another project, and it worked well. And yeah, I cranked up the input signal to +/-10v just to check the clipping, it’ll normally stay within +/-5v

              I already ordered PCB for the prototype. I hope it’ll work fine. Thanks a lot for your help :)