Loading ...
Sorry, an error occurred while loading the content.

79662Re: OPI-ONE cables again...

Expand Messages
  • rtstofer
    Dec 14, 2012
    • 0 Attachment
      --- In Electronics_101@yahoogroups.com, chuck merja <chuckm@...> wrote:
      >
      > I'm not sure I understand your comments. There are a maximum of 8
      > sensor wires and one ground wire in the cable. I'm not sure how this
      > all occurs, but I guess that each of the sensor leads has a diode at the
      > end of it and the other side of each diode is then tapped into the
      > common ground cable. If this is true, then I definitely need to read
      > these cables one at a time.
      >
      > But given that wiring, does your comment still apply, or do I just need
      > up a single 8 channel mux?
      >
      > And can I dump the output of that 8 channel mux into one analog port on
      > the arduino and read it there? We are talking about low end reading 0.4
      > ish to 0.6 volts high end so a "full range" of 0.2 volts, is that going
      > to be a problem in the arduino?
      >
      > C


      Yes, one way or another you need an 8 input MUX. The reader you are using has just such a MUX.

      Stefan and I were discussing using 8 of the IC solutions I posted earlier instead of a MUX and, under normal I2C bus circumstances, that would be a great solution. Except that the I2C chips I linked aren't addressable in the normal way.

      As I pointed out earlier, your existing reader is using an op amp and I bet it's arranged to scale and offset. Again, that's probably what the 6 band resistors are all about. Precision resistors for precision scaling.

      You can do the math as well as anybody. I showed you earlier. 5V / 1024 counts means each count is about 0.005V so your entire range is just 40 counts. Is that good enough? Is that enough resolution? Go back and get the temperatures at each voltage end point and figure how many degrees they span. Then divide by 40 and that's what each count is worth in degrees.

      As a first approximation of the diode drop, figure 2.6 mV per degree C. So, about the best you can measure directly when using the Arduino A/D is every 2 degrees C. Is that good enough?

      Without knowing exactly what is in your reader, it's not possible to know how they accounted for other error factors. They may have figured that the reader would never get very cold or very hot.

      I kind of like the chip solutions to measuring the diode drop and rescaling.

      One thing the single chip solutions do is measure the voltage drop with 2 bias currents about a factor of 10 apart. In this way they can eliminate some of the possible error factors. Here is a good discussion of the process:
      http://www.latticesemi.com/documents/TN1115.pdf

      For the cost of a single op amp and 4 resistors, you can spread that 0.2V change across the entire 5V range of the A/D. Then 0.2V / 1024 implies that you can measure to 0.1 degree C - somewhere around 13 counts per degree C.

      An advanced topic related to the calculations above is the use of a precision external Vref for the A/D converter. Why would you want to use one? First of all, it rescales the A/D! If you use an external 2.5V reference, all of a sudden the full scale is 2.5V and with 2.5V / 1024 you are measuring in terms of 0.002V per count. That will get you down to about 1 degree C per count. Next, the reference can be precision, not just whatever Vcc happens to be doing. The ATmegas also have an internal Vref but it doesn't come anywhere close to precision.

      But one thing that is going to happen is that this device will be exposed to the environment long enough for the internals to change temperature. This is going to be a problem. I suggested earlier that you come up with a heater and temp controller to keep the inside of the enclosure warm. Something around 100 degrees F comes to mind. So, you will want to insulate the box to keep the energy costs down.

      Build up something as an experiment. Put the probe in boiling water and then in ice water. This will give you the 0-100 degree span on the input. Then put your electronics in an over heated to 100 degrees F and in an ice chest full of melting ice (I have no idea how to get the internals down into the cold water). You can put the box in the freezer overnight I suppose. This will give you some indication about the accuracy of the device over temperature.

      Richard


      Richard
    • Show all 25 messages in this topic