Hardware compatibility

Added by Ben Barnett over 11 years ago

If we don't have "black-box" spec's for the proposed hardware, should we collect them now? If we have detailed spec's, where do I find them.

I have been sniffing around the Arduino page fpr a couple of hours and have not yet determined if the Uno needs additional hardware to deal with the DS2670's "1 wire" interface protocol. The "1 wire" interface is actually 3 wires being V+, Common, and Data. The "Data" line is a bi-directional serial communication line using a single Master, and one or more slave devices.

Does the Arduino Uno have a built-in "1 wire" interface, or does it need additional hardware (like a transistor and 2 resistors) to perform the "1-wire" master hardware function. Who has the software for the "1 wire" protocol?


Replies (4)

RE: Hardware compatibility - Added by J. Simmons over 11 years ago


I did some searching of my own and found the following technical info about the Arduino and One Wire protocol.

Oh, I have a question for you, Ben. Do you have some particular One Wire devices in mind for the project? If so, could you post some links?

RE: Hardware compatibility (1-Wire) - Added by Ben Barnett over 11 years ago

The reason for the 1-wire question was that the proposed thermocouple interface uses a "1-Wire" serial communications interface. I have not yet found its detailed spec's.

The answer to the original question is "Yes, additional hardware is required". To this old analog hardware guy, analog signal conditioning is looking a lot easier than the addition of a 1-Wire controller with the additional software requirement. Wouldn't it be easier to just add a couple of op-amps and have a DC voltage ready for the Arduino analog input any time it wants to read it? Why waste the UART's Rx pin and its associated interrupt, when it only takes a couple of op-amps to use an analog input with all of the timing controlled by the Arduino?

Sorry, to me analog is simple, while digital communication protocols and interrupts just make things more complicated.


RE: Hardware compatibility - Added by J. Simmons over 11 years ago

Oh, I somehow missed the thermocouple interface under discussion was "1-wire". The only time I have used a thermocouple, we just plugged it into an analog input on an ADC and read the values. Of course, this was for a class, and none of us on the project knew enough to even add signal conditioning. Anyway, that's a long way of saying I just assumed we would plug the thermocouple into one of the Arduino's analog inputs and read the values off the appropriate pin.

If I understand correctly, that is still essentially the analog option, with the added caveat that we should be conditioning the signal before reading it. For those of us not so good with analog signals, can you post a link to some good intro material on conditioning or post a brief explanation of how it works?


RE: Hardware compatibility - Added by Ben Barnett over 11 years ago

Thermocouple output voltage is only about 50mV @ 1200 C, so a gain of 20-50 would be needed to "fill" the analog input of the Arduino's A/D. (I will need to study the Arduino more with regard to the useful range of the "Analog Reference voltage". At first glance it looked like it might be nominally 2.5V. Thermocouple reference:
The Omega web site is a great place to look for all kinds of sensors and signal conditioning. It is mostly O-T-S, but might not be cheap.

Analog signal conditioning is not so easy. The basic concept is to use Operational Amplifiers as building blocks to perform amplification and compensate offset. National Semiconductor, and Analog Devices are the best sources for good application doc's. I could spend a whole semester teaching analog circuit design and only get through the basic concepts. Just for a start:
I dunno if this will help, or just add to the confusion. Maybe the best place for digital folks to start with analog measurement technology is the Omega home page.
Look down the left side of the page and pick a parameter...