Dallas Semiconductor DS18B20 One-Wire 12 bit temperature sensor?

  • Active since 1995, Hearth.com is THE place on the internet for free information and advice about wood stoves, pellet stoves and other energy saving equipment.

    We strive to provide opinions, articles, discussions and history related to Hearth Products and in a more general sense, energy issues.

    We promote the EFFICIENT, RESPONSIBLE, CLEAN and SAFE use of all fuels, whether renewable or fossil.
Status
Not open for further replies.
I need an interpretor for this thread. Put off reading till now. Seems like good info for those that unerstand. Keep up the good work guys.Let us know when there is a turnkey plug and play affordable system available. :)
Will
 
I mentioned this before but may have been missed. This free software has alot of functionality, just need a leftover PC running linux and some time to configure it.

http://www.klein.com/thermd/

A one wire controller such as this one can support up to 100 1 wire sensors, all kinds of different types. THis one costs about $150 but is nice.

http://www.embeddeddatasystems.com/..._Code=HA7Net&Category_Code=HA&Product_Count=0


Another controller I found that was cheaper and works with the Klein software is TEMP08, costs $75. Check out the software website, he lists all the devices the software works with.

http://midondesign.com/TEMP08/TEMP08.html
 
Is Linux the only option? Plenty of extra windows machines around here, and I don't want to have to learn another operating system...
 
I mentioned this before but may have been missed. This free software has a lot of functionality, just need a leftover PC running linux and some time to configure it.
Thanks for the links. looks like something and ordinary guy like me could use.
Will
 
Very good discussion.I would like add following links I found on subject of 1-wire network. Hope someone can figure out a way to use these sensors effectively for HVAC control.If someone can write software for TIA-8558 1-wire 4 Relay board it will be very useful to control HVAC.I use it to turn thermostat on/off from my windows machine.

I have some links for HVAC Software (all support 1-wire network) :

http://jhomenet.sourceforge.net/index.html ( I am using this software to monitor my temp sensors in rooms)

http://welserver.com/ ( I would use it if it allows controlling HVAC)

http://misterhouse.sourceforge.net/ ( I am using it for monitoring)

http://klein.com/thermd/ (Looks promising )

http://owfs.sourceforge.net/ ( Very good but I am not linux literate)

http://diy-zoning.sourceforge.net/ ( I think new developement is stalled - he is building new HVAC system)

I use following hardware for monitoring and control of HVAC :

http://datasheets.maxim-ic.com/en/ds/DS18B20.pdf ( 30 Very reliable temperature sensor)

http://www.aagelectronica.com/aag/index.html ( 1 TIA-8558 1-wire 4 Relay board)

http://www.aagelectronica.com/aag/index.html (1 HA7NET 1-wire ethernet interface)

http://www.aagelectronica.com/aag/index.html (1 TIA-8590 1-wire LCD interface)

http://www.aagelectronica.com/aag/index.html (1 DS9490R 1-wire usb interface)

http://www.aagelectronica.com/aag/index.html ( 1 DS9097U-S09 1-Wire serial adaptor)
 
I was discussing this thread with my future SIL who is a programmer. He suggested I look into AMX. He uses it to control his house and will be setting it up to be controlled by weather from the internet. Specifically he wants temp and humidity for AC operation but said heating is not much different. Easy to write code for too. Here is the link http://www.amx.com/
Anybody have any experience with this set up ?

Will
 
nofossil said:
free75degrees said:
nofossil said:
I could do it in software, but that ties up the CPU to do the required timing. I need the CPU for other cool stuff like serving the web page.

Interfacing the sensor directly with the arm DOES require taking over all of the CPU time for the duration of the query, but it is still pretty quick. Reading one sensor without using the ROM (which necessitates using one one sensor per IO) takes somewhere on the order of 150ms. If there are 6 sensors that you want to read every couple minutes then the impact is about 1 second every two minutes. With these numbers the impact to a web server will be very small. In the off chance that you happen to hit the server during a sensor reading, you would get at most a 1 second delay.

I read all 16 analog inputs every second. There are some control functions where I want pretty quick response, and I don't want to compromise on speed for at least those values. I also log all inputs and outputs every 30 seconds (to an SQL database), so I'd need to sample all inputs at least that often.

For people who aren't quite as obsessive, every minute would probably be fine. How quickly does outside or storage temperature change, after all?

One other issue - to make the timing work, the temp sensor task would have to disallow preemption by the operating system task switcher. If the task crashed, it would then take the operating system with it.

Have you looked at an SX28 from Parallax? They are very high speed PIC clones that run one instruction per clock and run 50+MHz (I've run some at ~100MHz).


http://www.sxlist.com/techref/parallax/sxb/sxb/1-wire_ex.htm?key=1-wire&from;=

You can get a free assembler/BASIC compiler for the SX chips from www.parallax.com. The BASIC compiler has builtin support for one wire.

I use the SX chips when I need to glue different comms speeds or protocols together.

Aaron
 
Aaron Pasteris said:
Have you looked at an SX28 from Parallax? They are very high speed PIC clones that run one instruction per clock and run 50+MHz (I've run some at ~100MHz).


http://www.sxlist.com/techref/parallax/sxb/sxb/1-wire_ex.htm?key=1-wire&from;=

You can get a free assembler/BASIC compiler for the SX chips from www.parallax.com. The BASIC compiler has builtin support for one wire.

I use the SX chips when I need to glue different comms speeds or protocols together.

Aaron

Welcome to the forum! We could use a few more techies.

I've looked at a bunch of things, including the SX28, the HC11, and so on. Much as I love figuring out how to get things working, it seems like a big job by the time you look at all of it. For the SX28, the 1-wire support in their BASIC is cool, but how am I going to communicate with my controller? By the time I build a board with an ethernet / serial / USB interface and the requisite software, I've spent a lot of time and money. I think I'd be trying to make a functional equivalent of this, and I'm not sure I could do it for a lot less money.

While I suppose I could control my system with an SX28 based controller, I'd hate to give up the multitasking operating system with web server, remote filesystem, SQL, telnet, and all the associated goodies. The TS7260 has a lot of features going for it as a controller platform for software geeks like me.
 
If you're hooking the system up to a PC, just use serial, FTDI serial to USB, or Microchips SPI Ethernet.

Also, you do not need to have the processor held up for the entire 1-wire comms cycle. A decent RTI routine on a ~5uS trip time could easily handle the comms with little overhead.

The only real problem is lack of RAM to store the 56 bit ROM ID (you can calculate the 8 bit CRC) - even eight devices would eat up half the RAM on an SX28

Aaron
 
Aaron Pasteris said:
If you're hooking the system up to a PC, just use serial, FTDI serial to USB, or Microchips SPI Ethernet.

Also, you do not need to have the processor held up for the entire 1-wire comms cycle. A decent RTI routine on a ~5uS trip time could easily handle the comms with little overhead.

The only real problem is lack of RAM to store the 56 bit ROM ID (you can calculate the 8 bit CRC) - even eight devices would eat up half the RAM on an SX28

Aaron

I'm not hooking it to a PC - there are no PCs anywhere in my system. My controller is based on the Technologics TS7260 - a tiny single board computer that draws only a couple of watts. I poked around a bit a while back looking at options for interfacing with smart sensors like the 1-wire and didn't end up with a good solution that played nice with my controller.

If there's a simple Ethernet interface for a simple SX28 board that doesn't involve me writing my own TCP/IP stack and setting network parameters with a ROM burner, I'd be interested. I'll admit that I haven't investigated in depth. Perhaps I'm too easily discouraged.
 
Maxim makes 1-wire bus masters that convert to I2C and Serial (5v rs-232) but they are all SOICs. Hook up directly to your SBC

If you can't mount a SOIC-8, let me know as I have access to a PCB router and could mount a sample to an adapter board for you


Aaron
 
Status
Not open for further replies.