Wednesday, February 15, 2012

Dalek Cake With Light, Sound and Motion - Insane

This was an extreme cake for a group of elementary and jr. high robotics team members - it's 1/2 cake and 1/2 actual mutant Dalek.

For the cake:
The cake is seven 11x15 layers of cake, with cake boards and dowels between layers 4 and 5. (I made a serious error and used non-stick cake boards, which caused the layers to separate during transport - don't do that!) Buttercream between the layers. Carve the front and back to make the classic Dalek body shape. Crumb coat with buttercream, then frost with buttercream tinted golden yellow (or whatever color you like).

To get a sense of size - this cake required 16 box mixes (8 each chocolate and yellow cake), 4 dozen eggs, 8 cups of oil... plus approximately 8 lbs of powdered sugar for the buttercream along with 16 sticks of butter, 8 sticks of Crisco, 1 full bottle of vanilla... you get the idea! But it had to be big to scale with Greg's top.

For the knobs, I melted white chocolate and molded it using the Wilton "Dessert Domes" candy mold, the middle size dome. Apply these to the cake before the buttercream sets, and use some additional icing to help secure the candy. You need approximately 56 of the domes - 14 rows of 4, for an authentic Dalek. [Note - the mold instructions tell you to freeze the candy, but don't do that - it gets too brittle and the domes crack. Just let them set in the refrigerator.]

To finish, I airbrushed the cake with gold paint - I have a new "Duff's" airbrush machine and used the Duff's gold color paint. Very pleased with this.

Note that this "finished cake" is actually a shadow of what the cake could have been. As mentioned above, I used non-stick cake boards between the layers. I wanted to able to easily separate the layers for serving. I made a critical error, however, in that I doubled the cake boards so it would be non-stick on both sides. When we were moving the cake in the car, the layers slid apart, doing major damage. I had 40 minutes before the party, so I got my Mom (God Bless Mom!) to drive over so Greg could run to the store for canned icing - I reassembled the layers as best I could in the back of his car. I pulled off all the knobs, reiced with vanilla icing (mixed as best I could with the yellow/gold) and replaced the knobs. It was a good save, and the cake was still a hit thanks to Greg's magic top. (But UGH!)

The real magic of this cake is the Dalek top, which Greg built. As one friend noted: "authentic BBC special effects!" (That was meant as a compliment.)

Here is Greg's write-up:

The "brain" of the Dalek is an Arduino Uno microcontroller with an Adafruit Wave Shield added to give it audio capability. The head movement is done with a standard high-torque servo and an added pushbutton triggers activity. The arduino is powered with 8 AA batteries. The arduino can't produce much volume by itself, so the audio goes through a Bump 3.5mm Portable Mini Speaker (which has an internal battery charged over USB.)
The non-cake portion of the Dalek has three components. The top dome is half of an 8" styrofoam ball (covered with masking tape so it can be painted with standard paint). The "ears" are empty glass Testors paint jars with internal LEDs. The eye stalk is a 1/2" cardboard tube with a styrofoam ball (again taped and painted). The blue LED in the center of the eye is hard-wired to a CR2032 battery so that it is always on. The bottom side of the dome has a lego gear with 8 pins that sync with the servo when the dome is set upon the layer below.
The middle part of the Dalek assembly is made of circular pieces of MDF, cut with a Dremel circle cutter. The bottom is solid, middle two boards are only 1" wide rings and the top is a ring with a center bar where the servo is mounted. The layers are spaced with 1" lengths of PVC pipe. All the electronics, batteries and speaker fit inside this assembly. To hide these components, the inside of the ring is lined with thin, dark gray foam that was packing material.
The top and middle component are also linked with wires for the "ear" lights. These lights are synchronized with the audio through a simple circuit that can be found here. The wires just run through the access holes cut in the top ring of the middle element, and the motion of the top is limited so that the wires don't restrict the motion.
The bottom part of the Dalek assembly is a made of a 4" high, 8" diameter styrofoam cylinder glued to a 9" diameter bottom "plate". Onto this assembly are glued trapezoids cut from foam board to create the octagonal sides. Joints are taped and the assembly painted. The Dalek "gun" is a wire whisk with a roll of paper tucked inside, set in a black PVC pipe. The "sucker" is a funnel covered in black tape and mounted in a PVC pipe. Both the gun and sucker fit in holes cut in the foam board and are then shoved into the styrofoam inside.
The controlling software for the Dalek is about 250 lines of C code, mostly derived from an example program provided with the Wave Shield. The approach is pretty simple. At setup time, the program creates a list of all the .WAV files at the top level of the SD card filesystem. Then it enters a loop, waiting for a button press. Upon button press, the code selects an audio file at random and commands the wave shield to start playing it. While the audio file is playing, the code generates a random position value and commands the servo to move to it, delaying for a period of time based upon the distance to be moved so that the servo has time to move. This is done repeatedly until the wave shield indicates that the WAV file is done playing. Then the servo is moved back to the neutral central location and we go back to waiting for the next button press. (Actual code can be provided upon request.)

Also - thanks to my British friend Mark who provided the voice talent for the Dalek's "gracious professionalism" speech! That's the robotics program credo, so a nice finishing touch!

1 comment:

  1. Hi - an amazing cake - and one I've collected the bits for to make for my son's 18th - who we hope is going to uni in September to study robotics. So he and his brother are sorting that side of things - but are a bit stuck with the coding. Could we have the actual coding please? email: