DS18B20

The DS18S20 and the DS18B20 are temperature sensors. They are both very similar giving the same accuracy and resolution. They only differ in how the data is presented to the user.
The DS18S20 was designed as a drop in replacement of the original DS1820. The 8-bit family code in the ROM code is different for these two devices. The DS18B20 is 28h; the DS18S20 retains the original 10h.
Actually I have used the DS18B20P version which is the parasitic power version of the DS18S20. Looking to buyor find the datasheet. Look here.

You need to wire DS18B20 PIN2 to an arduino digital pin and have a 4.7kOhm pullup on DS18B20 PIN2. Pin1 of the DS18B20 is connected to ground. Pin 3 of the DS18B20 is a No Connect (NC) pin.
The normal version needs 5V and ground. (See datasheets)
The DS18S20 lacks the configuration register that allows the DS18B20 to change resolution. The DS18S20 does have the two additional registers that are needed if greater than 9 bits of resolution is required.
The DS18S20 is factory configured to always perform 12-bit conversions. The 12-bit data is rounded to a 9-bit value and stored in the temperature register. To allow for greater than 9-bit resolution, a value for the Count Remain register is calculated. The Count Per °C register is set by the factory to be 16. Using the Count Remain and the Count Per °C registers and the formula below, up to 12-bit resolution can be obtained with the DS18S20.

I used the arduino digital pins to power the device rather like Todd did with the Nunchuck adapter.
This allows everything to be built onto a small PCB which fits into the digital PINS 0-7 on the arduino.
I will design a small PCB so that everyone can make this easily.

DS18B20 software

To use the power pins the library has to be slightly modified with an extra command to set the Power and Ground pins correctly.
This is quite easy to do as you can see below. I use arduino PIN2 to supply ground and PIN5 to supply 5V.
The code below sets these to ground and +5V respectively.
I use arduino Pin3 to read the DS18B20. This also has been modified in the program.

Here you can download the sketch.
And here the two changed files for using the arduino pins as power supply. file1 & file 2.Below you can see a picture of the breadboard with the DS18B20 and its resistor mounted on it and also the output from the Single.ino program i modified.

This site has the eagle part from which i have designed the small breakout board which plugs straight into the arduino Digital port pins 0-7
I have made a few and these and they are available in the shop now. With the small solder jumper you can select the input to PIN3 of the temperature sensor.
You can leave it unconnected which is the requirement for the DS18S20P or you can select +5V or ground depending which version of the temperature sensor you have.