Monthly Archives: February 2014

Dinner as a Service – Electronics

This post is part of a project I’m calling ‘Dinner As A Service.’
Posts:
Overview
Electricity Costs
Electronics 

(This post is entirely on the hardware side of things so if you only care about my software ramblings, these are not the droids you are looking for.)

Since physical computing is an area I really have no deep background in, as with most of my projects that involve it, I owe quite a bit of credit to others.  Here are most if not all of the sources I used:

The build started like any self respecting build would…. as a prototype in a fishing tackle box!

High voltage! Don't Touch!

High voltage! Don’t Touch!

Surprisingly enough, once the kinks were worked out this worked pretty darn well.   Believe it or not, I cooked about 5 meals like this.  A fire extinguisher was near by.

The prototype consisted of:

Now that I’m writing this ex post facto, the high voltage bits are WAY FREAKING overkill for this implementation with my current slow cooker. (25A SSR?!? I think the later bits I added are bout 10A capable…)  See the last post on electricity usage for more on that.   What’s good is, assuming I didn’t make any huge errors (which may be a leap) I’ll be able to use this with much more powerful heating elements like a heat stick to brew beer…. we’ll see…..

*I’ll post a wiring diagram here* from EAGLE once I figure it out.  It’s not the most intuitive application.

Now this prototype worked great, but I wanted some bling.  I’ve never built anything with much bling to date so this was quite the learning experience.  Via the Awesomeness that is Adafruit, I found the 7 Segment display.  I’m in love:

So retro. So cool. I MUST HAVE THESE.

So retro. So cool. I MUST HAVE THESE.

I scrapped my first idea of just using a LCD text display, and went with two of these days.   Partly this decision was because I was having stability issues with the LCD i first tested with gibberish eventually always showing up, but also because I don’t need to display much text at all.  I wanted to keep this build purpose built and not add bells and whistles (like speakers and pandora functions like I originally spec’ed!).  So target temp, current temp and some sort of status indicators is all I need.    I wanted to include some timer displays to help with the cooking process but the lack of a real time clock in the rPi gave me some headache so I scrapped that idea.  Maybe i’ll revisit with either the add on board or a beagle bone.

I ordered a number of bits up from Adafruit and Digikey.  Found a case at the hardware store (which probably was a mistake….need to do more research on cases next time…).  And dove in…   Slowly I started adding bits.  First a 7segment LCD:

Hey look bitcoin used to be a bit higher

Hey look bitcoin used to be a bit higher

I read somewhere it really helps when cutting cases to use painters tape on top to draw your lines and keep the edges clean.   Yeah i doubt that helped my absolute hack job:

If i get cancer this is why.

If i get cancer this is why.

Progress was made pretty quickly, as I started getting time pressure to move on to other projects.

Hey look I call that progress.

Hey look I call that progress. Look at that LEGIT heat shrink wire!

And started cutting the ports for the power in & out:

Again. This case decision sucked. Anyone want to fund a 3d printer for me please?

Again. This case decision sucked. Anyone want to fund a 3d printer for me please?

And there she is. Fully working and how she looks today (with a slightly corrected label that someone on Facebook wouldn’t let go).   Notice all the empty space on the bottom half which may some day be used for some timer displays.

Yay. Blinky things.

Yay. Blinky things.

And on her maiden voyage, she cooked us up quite possibly the most tasty meal yet.  Tenderloin Steaks with Morel Cream.   As Ferris Bueller said, “If you have the means, I highly recommend picking one up.”

omgomgomg nommers.

omgomgomg nommers.

And here she is, mostly finished (TM).

May or may not burn your house down, make the dogs run away, make the child cry (TM)

May or may not burn your house down, make the dogs run away, make the child cry (TM)

Parts added for the final build:

If I was to continue development on this, the items on my list are:

  • Add timers
  • Add audible alerts
  • Add on/off switch
  • Add detachable temperature probe
  • Better case
  • Currently the rPI uses power from an external USB source due to lack of space for the transformer within the case.  This should be wired in.

There you have it.  Now I don’t really need feedback on everything I did wrong here.  No I don’t have a fuse wired into the box, I’m relying on the GCFI that I plug into, etc..   This is more or less a proof of concept that is sticking a round a while.   If I keep using it, as it seems like I am, I really am considering going legit with one of these store bought monsters.

Tagged , ,

Dinner as a Service – Electricity Costs

This post is part of a project I’m calling ‘Dinner As A Service.’
Posts:
Overview
Electricity Costs
Electronics  

I was recently looking at a sous vide recipe that says to cook for 72 hours.  SEVEN-TY TWO HOURS.  Holy crap that’s a long time.   I don’t care how tender that meat would be after that – that is a long freaking time. The wife had the same thought I did…..what would THAT cost?!

heating01

Interesting thought – how economical is this frankenCooker I built?   After some calculations, surprisingly efficient I found!   I’ll be the first to admit these were somewhat quick numbers, and I may be WAY off in one or more areas but after triple checking it looks right to me.  This post is going to explore these numbers, so if you are only reading for the fun VMware stuff you should skip this post.

The electric company bills me metered by a unit of kilowatt hours (kWh). My bill for the current time of the year totals to about 0.09$/kWh.   According to this site, kWh =  (watts * time) / 1000.  So that’s what that means.    I picked up a basic Kill A Watt that measures amps, watts, etc.   I measured the usage of the system at full power heating capacity and found the slow cooker I’m using uses WAY less power than I thought.  In total about 360 to 363 watts.     That’s interesting, and I can calculate would it would cost to run at full power over time but the cooker doesn’t constantly run when the meat is cooking, it only kicks on when needed.   Luckily, the Kill A Watt has a way of  keeping track of time since you turned it on and calculates kWh for you.

So here’s what I did.  As a test I started the cooker just as I would for real.  I filled it with hot tap water that cooled to about 109f by the time I got everything ready.   I set the target to 140f and made note of the time.  44 minutes later I got the notification we hit the target.  Awesome, so I can calculate the cost to warm (I used by own calculations for this part, not the kill-a-watt)  362 watts * (44/60) = 265.4666 Watt hours,  convert to kWh and we get 0.2655 kWh,  times the 0.09 $/kWh and it cost $0.024 to heat.

Next I unplugged the kill a watt (to reset the time, I used the basic device that doesn’t have any advanced functionality), plugged it back in and made note of the time.  I came back an hour later and checked what the meter said: 0.08 kWh.   In other words, in that hour the slow cooker (and other electronics) only used 0.08 kWh.  That’s way less than the constant full power on to heat which is expected.

2014-02-12_Calculations_final

Let’s say I wanted to cook the 72hour BBQ.   We could estimate the cost by (0.08 kWh * 0.09$/kWh) * 72 hours…. Something like just under a dollar  ($0.962).   Well how about that.  Again, assuming I didn’t make any errors (which I more than likely did), this thing really doesn’t cost much to run.   Way less than it would cost in propane or wood to do it on a grill or smoker I’m sure.   And this test was done without the space blanket looking wrap I use to retain heat!

Tagged , ,

JAAS Project Lake Placid – Dinner as a Service – Overview

This post is part of a project I’m calling ‘Dinner As A Service.’
Posts:
Overview
Electricity Costs
Electronics 

This project has been a while in the making as it’s the most elaborate I’ve attempted to date. To fully document this one it is going to span multiple posts so be patient and check back over time if you are interested in these weird projects of mine.

To summarize, this project starts with VMware vCAC 6.0 where one orders ‘dinner’ and ends with the food being cooked in a Sous Vide water bath. Over engineered, over kill, and quite eccentric but hey it’s fun. And I learned a lot along the way in ever area.

Software:
VMware vCloud Automation Center
VMware vCenter Orchestrator
Raspibrew

Hardware:
Raspberry Pi
Solid State Relay
Pi Cobbler
2 x 7 Segment LCD
Temperature sensor
LED, Case, other bits..
Slow Cooker
(we’ll expand on the parts and builds later…)

First lets start with the basics – What Is Sous Vide? According to Wikipedia:

In other words – food awesomeness using self service, automation & electronics.   Here’s a site I got most of my information from.  They make a pricey, but off the shelf cooker.

What is a good application automation? Electronics and vCO! In truth the software part really just kicks it off (though I did add in some functionality that makes picking your temperature easier). The special sauce is in the electronics and the script on the Raspberry Pi, but we’ll get to that.

End to end (or menu to plate?), here is how it all works:

0. In the beginning, there was meat.   The wife and I joke that we know a guy and buy meat out of the back of a truck.  It’s actually not far from the truth however.   Check these guys out if you are in Colorado.  They deliver to locations all over the front range.
raw_01

1. The project starts with the menu. We’re using vCloud Automation Center 6 (vCAC) here as the front end. The main reason was so that I could learn more about the internals of it, but also because this sort of thing is right up it’s ally. Well, not cooking food – but a frontend for the automation of services.

Menu

2. Let’s say I want to cook up a nice steak tonight. I choose beef and I am given the choice of how I want the meat cooked. This is big advantage to using this front end – I don’t know off the top of my head what each temperature range is so associating it this way with a label is great. I’m going to pick Medium here (140d F) since my other/better half doesn’t like it any redder.

Steak_02

3. Yay!

Steak_03
4. Some magic happens in the background (via vCenter Orchestrator) and I get a notification to my phone that the temperature has been set.

Pushover_iOS_01_smaller

5. Because I’m a super nerd, I also get it to my watch. In truth, it’s actually really handy.

Pebble_01

6. On the Raspberry Pi, there is a python daemon running called Raspibrew (some guy built this for homebrewing beer! Awesome!). I used this because it has PID intelligence built in (so I didn’t have try to learn to code one…) and it has a REST api (which before I realized was included had already written one in node.js…ahwell….)

Raspibrew:RaspiBrew

7. The rPI is housed tentatively-permanently in a project case along with the rest of the electronics. Most important is the temperature sensor, and the solid state relay. When we hit our target temperature, the relay shuts off power to the outlet the slow cooker is plugged into.

heating01

8. We wait for it to heat up. Usually when I’ve been cooking I wrap the slow cooker in this heat shielding since it appeared I have a pretty crappy cooker that looses heat fast and has a weak heating element. Getting it high enough for vegatables was almost impossible without this.

Space_Blanket

9. Also as an aside, during this whole heating and cooking process I have a separate python script I made that writes the temperature readings out to Xively (previously Cosm) for historical tracking. This has been useful for when I was studying the temperature swings to see how much I needed to tune the PID values.

Xively_01

10. When we get to our target temperature another alert is sent out letting me know. This has been really useful so I can go mill around doing other things and not watch it. (either preface with why it says 50, or do this screenshot again for real)

Pushover_ios_done_01

Pushover_pebble_done_01

11. Drop the meat in!

raw_033

12. Now this is the part I have not done any further automation on. The rPI’s PID algorithm is still in charge of tweaking power to the slow cooker when it thinks it needs it, but I have not set up any timers yet. I wanted to add another 7-segment display with a countdown, and prompt for this in vCAC but the box got crowded with other bits and I had trouble figuring out how to reliably do a countdown timer on a rPI without a real time clock. Feature request!

13. When our cooking time elapses, we continue on the cooking process. Sous Vide is an awesome way to get super tender meat, but isn’t great on the eye candy front. Browning in a hot pan or using a torch for a bit works wonders.

Pull it out of the bath.  It’s really ugly when cooked this way, but oh so tasty.

Done_01

Brown the meat.  (During this cook I really should have gotten a much better crust going.  I was just excited to be using this steak sauce for the first time in a long long time….!)

Done_02

14. Finish up whatever sauces and sides are in order for the day and boom…. Dinner!

Done_04

Done_03

I’ll follow this post up more info on the hardware, software, and other bits.   Stay tuned..

Tagged , , , , ,