I am working on a project where I need some 16 bits ADC to retrieve information from a sensor. I also need a small microcontroller such as a PIC, AVR or 8051, and I got surprising quotes for the ADC: Around $5 (qty 1000), which is 5 times more expensive than the controller!
Does anyone have an idea about how I can get some low cost ADC- Controller solution? I need only few dozens of samples per second, so some of you may have nice tricks to do that (op-amps, capacitor charge time stuff and the like).
Take a look at BB ADS1100 that works 16bit @ 8SPS. It has I2C interface (just 3 bytes to retrieve HIGH/LOW word of converted value and the status register) and I think it's around 2/3 euros.
The Texas Instruments MSP430 microcontroller has 16 bit ADC on chip. In quantity, it should be in the $3 to $5 range depending on which version you need. I think Analog Devices has 8051's with 16 bit ADC. You might also look at Maxim. I seem to recall that they have gotten into microcontrollers with high resolution ADCs.
You might see what you can accomplish by using a cheap micro witha 12- bit ADC and a lot of careful filtering (averaging) in software, since your needed sample rate is quite low. It might not get you 16 real bits, but if unit cost is a driver, figuring out if the accuracy it can get you would be enough is probably worth the effort.
You can build a cheap & simple dual slope converter with an external reference (like TL431), MUX (4051), integrator and comparator (standard OP). With an 8051, you can generate the fixed integration time and measure the variable deintegration time with only one of the internal timers, while the signal from the comparator provides the timer gate signal and the EOC interrupt at the same time. (I don't know if other micros also have 16 bit timers with external gate signal that also can generate edge triggered interrupts without additional pin.)
With very cheap standard parts, we have made 15 bit ADCs this way. You also get line frequency suppression by proper selection of the integration time (we tend to use 100 ms to suppress both 50 Hz and 60 Hz, which gives a total conversion time of 200 ms - or sync it to the mains and integrate 16.7 resp. 20 ms), which is often needed for sensor signals.
You can use the other 4051 inputs (or even two or more 4051s) for more input channels, which can be converted sequentially. Slow, but reliable.
Besides, the high performance ADCs and the microcontrollers are the two different technologies. The MCUs with the good ADC/DACs usually contain two separate dies in one package. For that reason they are more expensive then the equvalent micro + equvalent ADC/DAC.
I am wondering of what could be a sensor which requires the ADC with the true 16-bit accuracy. For the sensor application, that sounds unreasonable to me. Especially considering that the rest of application is handled by a small micro. Apparently there is a problem with the concept.
ITYM "monotonic"-- did a spell chequer get you? ;-)
Making a slope-type ADC with ~16 bit resolution isn't all that hard, nor is adding some dither and oversampling with a successive- approximation type converter.
Best regards, Spehro Pefhany
--
"it's the network..." "The Journey is the reward"
speff@interlog.com Info for manufacturers: http://www.trexon.com
Some of the newer microcontrollers such as the MSP430 get around this problem by using very low power operation. Others take their samples while the microcontroller is in sleep mode.
Plenty of sensors are read with 16-bit ADCs. Examples: pressure sensor, strain gauge, position sensors, etc. Just take a look at the Analog Devices app notes.
Yes, but the question is why? That gives a result to 1 part in
65535 over the range, and even if we assign the high order bit to allow overruns by a factor of 2, it is still 1 part in 32767. I find such precision requirements to be extremely rare.
I'm use to processing photosensor data. Photodiodes can be linear over a huge dynamic range - I was told 14 decades but I've only tried six. I typically want 10-bit accuracy, so some of this can be handled with a gain switch.
I've processed temperature sensor data with 0.001°C resolution (but less accuracy), required for good closed loop performance.
Audio data is another that needs good linearity but can tolerate scale errors.
But I would help if the OP explained what he wanted the ADC for so that we can assess what aspects of the system require 16-bitness.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.