While waiting for my current and temperature sensors to arrive, I thought it might be a good time to look at a few devices for interfacing a computer to the real world. Basically we need something to convert the signals from our various sensors and transducers to the computer.

This is usually handled by a device called a analog to digital converter or ADC. There are MANY different types of ADCs used for converting all kinds of signals to the digital world. The differences and choices could fill a whole set of books, but for our discussion, I’ll try to keep it short.

There are a lot of choices in the home automation arena that provide this function as well, but I really wanted a more flexible solution that I could build on and that didn’t tie me into a specific solution.

A few things we need to concern ourselves with when choosing the correct ADC are resolution, input levels, and sample frequency, and input voltage range.

Resolution

– Basically the number of levels representing the input signal range (in volts). The number of levels are measured in bits. Since it’s a binary scale, the different input resolutions are 8, 10, 12, 14, 16, 24, etc. An 8 bit ADC, would provide 256 different levels and a 24 bit ADC would provide 2^24 or 16,777,216 levels! Generally the higher the resolution, the more expensive the ADC, so we need to find a ADC that will provide enough discrete levels for our needs.

Number of Inputs

– For each sensor we want to use, we will need one input (for now I’m not going to cover single-ended or differential inputs). Again, prices go up with more inputs, so for now, I’m looking for a cheap low-count input ADC.

Input voltage range

– This is simply the maximum voltage the ADC will accept. A higher number here doesn’t mean a better ADC, you just need to determine what input voltage range suits your purposes and find a ADC that fits that range.

There are a ton of other properties when discussing ADCs, but not here, not now. If your interested in more details about ADC, check this Wikipedia article out.

Okay, so after fully reading the Wikipedia article you probably know more about ADCs than me. But suffice to say, I still need to determine what type of resolution I need. Let’s start with an 8 bit ADC.

For 8 bits and lets say a voltage range of 0-5 volts, that would be 5V divided by 256 levels or  .02 volts per level. Also, let’s say we need to measure a temperature sensor that provides a voltage range between 0 and 5 volts for a temperature range of 256°F (-40 to 216°F to make the math easier). That would give a maximum temperature resolution of 256°/256 levels or 1° per level. This is under perfect conditions and generally I would expect to lose half that resolution for all kinds of reasons I’m not going explain here. That means the smallest temperature change we could detect is 2°F

I think we can do better than that. Let’s see what a 12 bit ADC can give us for a resolution? For 12 bits we get 4,096 levels! From the math (256°F/4,096 levels) we get a maximum resolution of .06°F per bit. Even half of that is around .1°F. That seems more reasonable and I think I’ll stick with that. So now that we’ve chosen 12 bits as guide, lets find a few ADCs that will work for the needs of this project.

12 Bit Analog to Digital Converters:

  • MeasurementComputing – These guys handle all kinds of test and measurement equipment, but for out purposes, I found this little gem (miniLab 1008) that isn’t too expensive ($129.00). It has 8 single-ended or 4 differential analog 12 bit inputs.

  • DataQ Intsturments – Again, another company that carries many types of measurement and testing equipment. They also have a similar 12 bit ADC with 4 differential inputs (DI-158U). Currently it’s listed at $99.00.

DI-158U USB Data Acquisition Starter Kit

 

  • Labjack – Looks like a smaller company that really focuses on AD conversion. Their products even look cool. The one that seems to work for this project is the U3-LV pictured here at $108.00

image 

I’m not sure which one these I’ll be getting to prototype some sensor measurement, but I’ll be making a decision fairly soon. If anyone would like to comment on these or similar ADCs I would really appreciate it.

Like this post? Subscribe to my RSS feed and get loads more!