Instructables
Picture of Cheap Arduino Controled Yogurt Maker
These days I was reading an interesting post on how to make yogurt "by the gallon" (http://www.instructables.com/id/Yogurt-By-The-Gallon/). One thing needed was to maintain a rather constant temperature of 43ºC (110°F), so the bacteria can grow properly. Though you can buy commercial yogurt makers, they aren't big enough for a gallon of yogurt. Besides, it's cheaper (and way more fun) to build one yourself.

This is what you'll need:

- Styrofoam box big enough to fit your yogurt jar
- 8 Ohm 25W power resistor (USD 3.80 at aliexpress)
- 12V 2A power supply (got mine from an old laptop)
- Arduino Nano board (USD 11 at dealextreme)
- 12V relay module for Arduino (USD 3.40 at dealextreme)
- DS18B20 thermometer (USD 2.50 at dealextreme)
- 4.7k 1/4W resistor
- Heat sink or piece of scrap metal
- Some wiring

Since I got the Styrofoam box and power supply for free, the total amount I spent on this was less than 21 bucks!
 
Remove these adsRemove these ads by Signing Up

Step 1: Wiring the box

When you apply 12V to the 8 ohm resistor you get a current of 1.5A, wich in turn gives you 18W of heat. This is what's going to keep our yogurt warm!

In order to better dissipate this heat I screwed the resistor to a piece of scrap metal sheet I had lying around. A better option would be a heat sink+fan from an old computer, but I don't have one right now...

One wire from the resistor connects to the negative of the power supply, the other one connects to the C (center) connector of the relay. The NO (normally open) connects to the 12V of the power supply.

The 12V relay module has 3 pins: Vin goes to the 12V, GND to the negative and data goes to Arduino pin 3. This module has an optocoupler, which protects the Arduino from any interference from the relay.

The Dallas DS18B20 thermometer also has 3 pins (look for the data sheet). All 3 connect to the Arduino: 1 goes to GND pin, 2 to pin 2 and 3 to +5V pin. Use some thin wire, soldering and heat shrinking tube to connect the thermometer to the Arduino. Note that you need to solder a pull up resistor (4.7K) between pin 2 and 3. Position the thermometer in the box with some tape.
what do the kp, ki and kd variables do? Do these adjust when the relay switches on or off?
mschutze (author)  instructa-frank1 month ago
These are tuning parameters for the PID function. They adjust how long in the working cycle (which I set to 1min) the heat is on and off to obtain the target temperature with minimum variation. You can find more info on their actual meaning on Wikipedia's article about the PID controller.

Ok... But what would they individually do in this project?

lazyNinja1 year ago
If you want to smooth out your temp, you could try the Arduino PID Library.
http://playground.arduino.cc/Code/PIDLibrary