Variable digital resistor

Discussion in 'Digital Circuit Design' started by bradfernandez, Jun 11, 2019.

  1. bradfernandez

    Thread Starter New Member

    May 28, 2019
    15
    0
    Hello everybody,
    I have run into an issue that I have been unable to figure out on my own with only the internet as my partner. So I thought I would give All About Circuits a try. I would like to simulate a PT100 RTD output. Which for us comes down to basically needing to be able to control a resistance via a micro-controller from zero to 100ohm. So far I have tried a physical pot to verify I could control a pt100 amplifier in the way I thought it worked. And that did work well. Next I tried an optoisolator which also worked fairly well. Gave me good control and a decent resolution. But they are not very consistent from sensor to sensor. So not exactly ideal for outputting an accurate temp from device to device without a lot of calibration. Next i'm thinking of using a quad digital 1k potentiometer in a 4 way parallel configuration. That only gets me down to 250 ohms of adjustment in 256 steps. This would probably work decently well but still doesn't give me the best resolution. I have read about a resistor network and digital switches\relays possibly working but I'm not sure what combination would work for this. Any other ideas how I can solve this are very welcome. Any input would be greatly appreciated. Please let me know if I am even logically close to being correct about how i'm approaching this. Thanks everyone! Brad
     
  2. drc_567

    AAC Fanatic!

    Dec 29, 2008
    639
    92
    ... another idea, something that may or may not work out.
    There is a class of potentiometers that are designed for dynamic performance. They generally have better precision and linearity than ordinary potentiometers, and are made to withstand repeated motion and changing. So in order to utilize one of these for your application, you could attach a stepper motor to the control shaft, then use a micro-controller to increment or decrement by a given number of motor steps.
    An example part is linked here, however you may want to search for one with a lower total resistance ... maybe 500 Ω full scale, if you can find one.
    https://www.alliedelec.com/product/...V0quWCh1BEwauEAQYBSABEgIQpfD_BwE&gclsrc=aw.ds
     
  3. bradfernandez

    Thread Starter New Member

    May 28, 2019
    15
    0
    I guess I should have mentioned I am a bit space constrained. So a stepper motor and potentiometer isn't an easily fit solution.
     
  4. bradfernandez

    Thread Starter New Member

    May 28, 2019
    15
    0
    And steppers as small as I would need would be pretty expensive.
     
  5. OBW0549

    Distinguished Member

    Mar 2, 2015
    2,855
    2,618
    There are a couple of things you need to consider regarding digital pots:

    First, ALL digital pots have limitations on the voltages that can be applied to the potentiometer terminals (i.e., the two ends and the wiper), and for most of them these voltages absolutely MUST lie within the supply voltage range-- usually between 0 volts and 5 volts. Applying any voltage outside that range will result in malfunction and/or possible destruction of the device. Your application circuit must satisfy that requirement.

    Second, all digipots have a wiper series resistance that cannot be eliminated. When used in a potentiometric fashion this is not normally a problem; but if the digipot is used as a rheostat the wiper series resistance can be a significant contributor to the total resistance. Beware the wiper series resistance.

    And third, in many digital pots the resistance is VERY temperature-sensitive. Again, when used in a potentiometric fashion this may not present any problem, but when acting as a rheostat the resistance temperature coefficient can cause big errors if the temperature is changing. Choose a digipot with low resistance tempco.
     
  6. CharlesWMcDonald

    Member

    May 16, 2019
    135
    39
    Here is a circuit from the LM13700 data sheet that may work. It has a control voltage that sets the resistance value, I would use a digital potentiometer to set the control voltage. You will have to check the circuit to determine if the resistance range can be set low enough.


    upload_2019-6-11_16-1-24.png
     
  7. crutschow

    Expert

    Mar 14, 2008
    22,045
    6,373
    The voltage DAC output from a micro should also work to generate an accurate voltage.

    Can the circuit simulated resistance be referenced to ground if required for the TS's purpose?
     
  8. CharlesWMcDonald

    Member

    May 16, 2019
    135
    39
    A DAC would be a great solution.
    Since the circuit uses +- 15 volt supplies I believe one side can be referenced to ground with no problem.
     
  9. Kjeldgaard

    Member

    Apr 7, 2016
    350
    126
    OBW0549 likes this.
  10. danadak

    Distinguished Member

    Mar 10, 2018
    2,913
    630
    Something like this -

    upload_2019-6-12_8-10-5.png


    Cypress PSOC, one chip, low cost board ($10), component catalog attached ( a component is
    an onchip resource).

    https://www.cypress.com/documentati...oc-5lp-prototyping-kit-onboard-programmer-and

    [​IMG]

    With onboard processor could easily build a transform table, use least squares
    function fit, power curve, to generate a linear V to Ohms converter.

    Note design shows RTD emulated grounded, depending on common mode environment
    could also be done floating, further environmentals needed to determine this.


    Regards, Dana.
     
    Last edited: Jun 12, 2019
  11. bradfernandez

    Thread Starter New Member

    May 28, 2019
    15
    0
    No the resistor needs to be floating. I need a Terminal A and a Wiper. Also just a reminder the PT100 sensors use a vary low voltage. I am measuring around .25 volts. I don't think a DAC directly is going to give me a usable resolution.(Though I could be wrong.)
     
  12. bradfernandez

    Thread Starter New Member

    May 28, 2019
    15
    0
    The limit of our current circuit is 5 volts.
     
  13. CharlesWMcDonald

    Member

    May 16, 2019
    135
    39
    Unless you absolutely need to use the same power source as the RTD circuit, the resistor simulation could use different voltages.
     
  14. bradfernandez

    Thread Starter New Member

    May 28, 2019
    15
    0
    I don't need the same power as the RTD circuit. I just currently have only 5 volts from my micro. I would like to avoid building an additional power supply if at all possible. But if not possible I may have to bite a bullet and add in one.
     
  15. CharlesWMcDonald

    Member

    May 16, 2019
    135
    39
    I've thought of another way to create the resistor and I am in the process of simulating it in LTSpice. Unfortunately I'm not at home and do not have access to show a schematic. I'll get it out tonight when I get home.
    It would require a negative voltage but the current and voltage requirements are low. You could use a charge pump inverter to create the negative supply. They are cheap and easy to use. Here is a good example: https://www.analog.com/en/products/ltc1983.html#product-overview
     
  16. OBW0549

    Distinguished Member

    Mar 2, 2015
    2,855
    2,618
    Why 0 to 100Ω? Even as low as -100°C, the resistance of a 100Ω RTD drops only to 60Ω; do you really need to go lower than that? Also, if your upper resistance limit is 100Ω, that only takes you as high as 0°C. Is that only as high as you need to go? It would be helpful to know what temperature range you need to simulate, rather than simply picking arbitrary resistance values.

    It would also be helpful to know what this is for, and how it will be used. Is it to be part of some sort of test apparatus to verify the operation of Pt100 interface circuits? Or to simulate the operation of a temperature sensor in a temperature control loop? It isn't clear what you're trying to do.

    It's also unclear why the concern about resolution; do you really need to vary the simulated Pt100 resistance in very small steps? Or would a few discrete values suffice?

    For testing the RTD signal conditioning circuits I've designed, I use a very simple setup for calibration and test: a 100.00Ω 0.01% precision resistor to represent 0°C, and for 100°C I add a parallel combination of 50.00Ω, 250.0Ω and 500.0Ω (all 0.01%) in series with that, yielding 138.5Ω. A toggle switch with low-resistance contacts selects either the 100Ω resistor or the entire string.

    I've never needed anything more complex than that.

    It would really help if we knew more about what you're trying to achieve; implemented the way you've described, you've got a VERY difficult design challenge if you're trying to get good accuracy.
     
  17. bradfernandez

    Thread Starter New Member

    May 28, 2019
    15
    0
    Could I do this with a DAC and a resistor divider. I just tested that and while i'm in the wrong temp range if I change some resistors around I should be able to get it to the correct range.
     
  18. bradfernandez

    Thread Starter New Member

    May 28, 2019
    15
    0
    Firstly thank you very much for taking the time to answer this beginners questions. So basically we have a sensor system that is controlled by a wifi microcontroller the particle photon. In some cases our customers only have one port into there tanks that is currently filled with a PT100 temp sensor. What I would like to do is remove the PT100 and replace it with our sensor. To prevent the customer from losing said temp sensor from there control panel I would like to output a "PT100" signal so that there control system can still see a temp. We only need positive temps from around 30 - 100 degrees, So we can have a base of 100 ohms and just adjust the upper 100 ohms.Because this is going into a control system I would like a reasonable resolution so that the customer doesn't suddenly only see big steps in there control system.
     
  19. Janis59

    Active Member

    Aug 21, 2017
    699
    107
    RE: Brad - isnt this a case where better to "take bigger hammer". Just Octopart shows the plenty of 16 bit ADC, many 24 bit ADC and few even 32 bit ADC. Well half of em are able to give a serial data straight to Your Arduino or whatsever a 8 bit portions or any else. The operational never will give anything hear even the 10 bits, just inaccuracies there are sure too big except a 100 USD wunderwaffles. ADC are nowadays relatively cheap, sure beyound a 10 USD and maybe even under 3...4 USD.
     
  20. OBW0549

    Distinguished Member

    Mar 2, 2015
    2,855
    2,618
    In that case, I think the best approach is the one suggested by @Kjeldgaard in post #9, which is the circuit posted here.
     
Loading...