trying to get started

And don’t know where to start.
Don’t know which forum I should be starting out posting in.

When I search the forums I don’t see much by way of:
“So you never wrote a line of code and don’t know what a resistor is?” Section to baby-step people into it sufficiently to get them up to speed.
So, like the proletariat, I have nothing to lose but misconceptions.

I want to automate a brewery.
I know pretty much every aspect of my brewery. It is in design and early construction phase.

I started out wanting PIDS and have decided that a more sophisticated automation may be the better path. I was liking the BCS 460, (it’s cheap enough) but I am not enamored of having to log on to the internet so that the BCS unit can phone home each time I brew.

ERGO: Arduino.

But my initial foray into this site has left me uninformed. For example, I can’t figure out how many SSRs I can control with one Duemilanove unit (see list of questions below).

I’ll have a slew of SSRs controlling power to things like: Switching power supplies (ATX) for Peltier units, Water heater elements, two Pumps, - Really very basic stuff. lots of on and off based on thermal input from Thermocouples and time.

I want to tell the Duemilanove to flip the power based on feed back from a Thermocouple (TC) .
However I don’t know how to make the TC and the Duemilanove talk to each other nor do I know what types of TCs or Thermistors work and play well with the Duemilanove.
Essentially I am at zero with no clear path forward.

My first blush threshold issues are
(a) what a Duemilanove can and can not do?
(b) how many SSRs can be controlled by one Duemilanove?
(c) hot to make it work and play well with a TC?
(d) I want to use a PC to drive everything and need to understand the interface.
(e) Can the Duemilanove take the TC feed back and display that on my PC monitor? If not how do I get that date to display in real time?
(f) I will want to use PWM technology to ramp the DC down to my my peltier’s over some period bringing them to idle before turning them off so that all the residual thermal energy from the hot side does not migrate into the fermentor. Can a Duemilanove do that? how?
(g) Can the Duemilanove tell time? more to the point: Can it control a process based on time elapsed?
(h) Can the Duemilanove track and log and display to a PC monitor, in real time, the things it’s done over what time periods?

These are threshold matters for me. I can’t get in the door until I have a handle on them.

Any guidance would be appreciated.
milli grazie

Other things I'd prolly like to know about are what other software works and plays well with Arduino and the Duemilanove. For example there's a site: http://processing.org/ where they have Gooey interfaces. I'd be looking for things like Temperature and Time Gooeys that wold let me change and monitor processes.

This is a most interesting posting! Just let me say 5 things. 1. The Arduino is not really a construction set with easy building blocks. There are many breakout boards available (best look at sparkfun.com!), but not for everything. Especially the TCs will need special amplifiers and extent software... 2. "How many" it not the best question. The correct question is "how many AND how fast". With little and cheap external hardware hundreds of transistors or SSR can be handled, but not on a 100 microsecond basis. This in fact will make the ballance: Use a Mega-Arduino (really enough lines?) ? Use the much better supported standard Arduino (+ hardware extensions)? 3. Though the first steps are simple it will need more and more expertise when you drive the Arduino to its limits. I am sure you know more than you have admitted, but I doubt that you can cope with the involved software issues. This is not so much a matter of knowing or learning, but of practical experience... 4. You might need a robust and hardened board; luckily one of our forum members here has such a thing.. 5. The Arduino concept, when applied with discretion, will be the best price-performance relation I can think of; where I do not only consider the hardware but also the programming efforts and community support...

Obviously this is just my personal opinion.... Much luck!

(a) what a Duemilanove can and can not do?

Errr…broad question. It can do logical control of external devices/sensors, interfacing with the PC over a USB port (as a serial device), and that’s about it. Though that’s quite a lot. Do not intend to use it for high-speed or high-power numerical computation.

(b) how many SSRs can be controlled by one Duemilanove?

The board has 20 I/O pins, though 2 are reserved for communicating with the PC. Of the remaining 18 pins, 6 can be used as analog inputs or as digital inputs/outputs. Now, each digital output can be used to control an SSR.

(c) hot to make it work and play well with a TC?

You will need a thermocouple amplifier like the AD595.

(d) I want to use a PC to drive everything and need to understand the interface.

The basic interface looks like a serial port on both the PC and the Arduino. Look through some of the sample sketches for plenty of examples.

(e) Can the Duemilanove take the TC feed back and display that on my PC monitor? If not how do I get that date to display in real time?

Yes. The TC data can be acquired, sent over the serial port to the PC, and a program running on the PC can read the data from the serial port and display it on the screen.

(f) I will want to use PWM technology to ramp the DC down to my my peltier’s over some period bringing them to idle before turning them off so that all the residual thermal energy from the hot side does not migrate into the fermentor. Can a Duemilanove do that? how?

Yes, some of the digital I/O pins are dedicated as PWM pins and the duty cycle controlled with the analogWrite() function. You will need interface electronics to take the low-voltage (0V-5V) low-current (<20mA) output of the microcontroller and amplify it enough to drive the peltier modules.

(g) Can the Duemilanove tell time? more to the point: Can it control a process based on time elapsed?

Yes, the millis() function gives you a running count of how many milliseconds have elapsed since power was applied or the microcontroller was reset.

(h) Can the Duemilanove track and log and display to a PC monitor, in real time, the things it’s done over what time periods?

Yes, by transferring data using the serial port as described above.


Check out our new shield: http://www.ruggedcircuits.com/html/gadget_shield.html

There have been brewing projects discussed in the past that might have useful info.

http://www.google.com/search?ie=UTF-8&oe=UTF-8&q=brewing&domains=http%3A%2F%2Fwww.arduino.cc&sitesearch=http%3A%2F%2Fwww.arduino.cc%2Fcgi-bin%2Fyabb2%2F

My first blush threshold issues are (a) what a Duemilanove can and can not do?

Well it can't nit your socks. ;) This is just too general a question to have a good answer. The Arduino is a small general purpose micro controller and can run programs up to it's speed/memory limitations. (b) how many SSRs can be controlled by one Duemilanove?

Up to the number of output pins available. Most SSR inputs will work with about 10ma of +5v signal, so that is compatible with the chip total 200ma spread over it's 19 possible output pins. (c) hot to make it work and play well with a TC?

TC have very low millivolt levels and are non-linear. So they require external circuitry to be able to interface with an Arduino. These can be costly depending on how many TC points you require. A better method or temperature sensor might be more coming if you could define the number of temperature points required and their min/max operating range. (d) I want to use a PC to drive everything and need to understand the interface.

A Arduino board communicates via USB connection as a simple comm port to the PC. So any PC based application or programming language that can access comm ports, can be made to work with an Arduino. (e) Can the Duemilanove take the TC feed back and display that on my PC monitor? If not how do I get that date to display in real time?

Yes, with the proper program in the Arduino it can send any information it has to a PC. (f) I will want to use PWM technology to ramp the DC down to my my peltier's over some period bringing them to idle before turning them off so that all the residual thermal energy from the hot side does not migrate into the fermentor. Can a Duemilanove do that? how?

The Arduino has analogWrite commands that output a PWM signal. This is a simple TTL output signal and would have to work with an external switching transistor to be able to control a high current device like a peltier device. This is the same method that a Arduino can be used to PWM control DC motors and high power lights. (g) Can the Duemilanove tell time? more to the point: Can it control a process based on time elapsed?

Yes, but this is best done with a small module connected to the Arduino called a real time clock. However seeing that the application has a full time PC attached to it, it is possible with proper programming on the PC and Arduino for the Arduino to get time/date information from the PC and use it in it's program decisions. (h) Can the Duemilanove track and log and display to a PC monitor, in real time, the things it's done over what time periods?

Well the Arduino does have limited memory resources, so logging of sensor data over time is best done on the PC side as long as there is already going to be a full time connection. The rest as said before is simply the Arduino reading it's inputs and passing the values to the PC for display/logging, a common application. The run duration would be the size of file storage on the PC, so almost unlimited for practical purposes.

Lefty

And of course this recently posted project may be of interest to you. Always better to steal solutions then to start from scratch. ;)

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1241337653

Well it can't nit your socks. ;)

Wanna bet? I think I just found my next project. :D

Have you checked out the Arduino based BrewTroller yet?

http://www.brewtroller.com/wiki/doku.php

WOW~!! Thanks for the cogent responses. That was a fair bit of information.

I'm going to spend some time on the Brew Troller site to see if I can make that work for me. Apparently they have a mode they call PID mode which works sort of like a light dimmer by clipping the voltage with a variable dwll between bursts of power which may work as a PWM - though truly I'd rather reduce the volts not clip them

There are reasons to prefer switching over amplification/attenuation… Tune in again when you have made up your mind. And good luck!