Since I’ll being using a BeagleBone Black (rev C) board to run the brewery, I thought I should just give an overview of what it is, and why I chose this board over, say, the Raspberry Pi or Arduino.
The BeagleBone Black is a complete micro computer running the Linux (Debian out of the box) operating system — with the following specs:
- AM335x 1GHz ARM® Cortex-A8 processor
- 512MB DDR3 RAM
- 4GB 8-bit eMMC on-board flash storage
- 3D graphics accelerator
- NEON floating-point accelerator
- 2x PRU 32-bit microcontrollers
- 1 USB port (for peripherals)
- 1 mini-USB port (for client communication and power supply)
- 1 Ethernet port
- 1 HDMI port (plug a monitor or TV right in)
- 2x 46 pin headers, with:
- 65 possible Digital I/Os (ins and outs), with both 3.3V and 5V
- 8 PWMs (Pulse Width Modulations – used to control analog circuits with digtal outs)
- 4 Timers
- 7 Analog Inputs, rated at 1.8V
- 4 UARTs (Universal asynchronous receiver/transmitter, used to translate data between parallel and serial forms)
- 2 I2C ports
- 2 SPI (Serial peripheral interface) ports
- 25 PRU (programmable real-time units) low-latency I/Os
Obviously, it has a lot going on.
In contrast, the Arduino is not a complete computer. It’s only part of a computer, a microcontroller. It’s great at running processes and such. However, if you want to run a web server so you can control it via a web interface (like what I’m doing), it’s not quite what I need.
The Raspberry Pi on the other hand, like the BeagleBone Black (BBB), is a full computer, also running Linux by default. It’s quite a nice unit, with more USB ports than the BeagleBone Black. So why did I pick the BBB? The main reason is that it has analog inputs (needed for the PT100 RTD temperature sensors I’ll be using) — something lacking on the Raspberry Pi (though admittedly, an external circuit can solve this). The other advantages of the BBB over the Pi is a slightly faster processor, 2 GB of on-board storage (the Pi requires an SD card), and a lot more GPIOs (general purpose ins and outs) — though the latest Pi, release just a couple months ago is catching up in the GPIO category.
Keep in mind the comparisons may not be accurate as new versions of the BBB and the Pi are released.
The BBB in this project, which I’m currently calling MechaBrew (can you picture a giant monster made of kegs fighting Godzilla?), will be the brains of the whole brewing operation. It will control the RIMS system (pump, heating element, thermometer), and the heating and temperature setting of the HLT and boil kettle.
I just got my temperature probe today, so I need to get the RIMS tube set up and start coding the software PID and UI.
My next post will be about connecting the PT100 RTD temperature sensor to the BBB. It’s not just a question of connecting some wires. I’ll need to apply a voltage to the temperature sensor and create a circuit to protect the BBBs analog inputs.
And, by the way, Adafruit is a great place to get started with a BeagleBone Black and accessories. I got the whole starter kit. I also bought a USB WiFi antennae so the BBB won’t always have to be near a router.