Introduction: How to Build a Claude Shannon Juggling Machine
Claude Shannon was a brilliant engineer/mathematician who created information theory and basically blessed us with the digital world. He was a juggler and unicyclist and he created the first juggling machine. I decided to build a juggling machine based on his design though he didn't leave us any specifications for constructing one. By watching the video of his machine and two other university built machines I came up with a working machine. I want to share the specifications of my machine in the hope that someone with real machinest skills will build a much nicer working machine. Now the machine that I built functions surprisingly well considering it is made out of mostly junk I had lying around or parts from other projects, has a little motor gear backlash, is mounted on a frame that just rests on some textbooks on the floor, and has a motor that sometimes decides to speed up or slow down on its own.
Please check out the video. The following steps will show the basic construction, the specifications, and how to adjust the ball throwing arm strength and placement.
Notice too in my video starting at around 0:40, the bouncing balls trace the infinity symbol. Interesting.
I challenge anyone to build a really nicely machined juggle machine with metal or even 3D print one. I have seen a few requests on the internet for a working juggling machine but no one seems to have one available.
Another option would be to simulate a working machine on Matlab or some simulation software.
If anyone has any knowledge of the whereabouts of Claude Shannon's juggling machine, I would greatly appreciate that. I regret that he did not publish any details of his design. And a few photographs of his machine would speak volumes.
Finally, I just want to express a big thanks to Claude Shannon for providing the foundation for our digital world.
Here is a video of Claude Shannon and his juggling machine: Claude Shannon Jugging
Step 1: The Basic Juggling Machine Structure
Framework: the frame is just a couple of bamboo cutting boards which are relatively heavy and a good mount for the other parts. You can use anything but realize you may have to move the motor mount around a bit.
Main bearing: the main bearing is a bicycle axle that is housed in two bearing mounts. I bought them separately but they fit perfectly and there is absolutely no play. Don't thing you can beat this bearing.
Main cup arm: I used carbon fiber fishing rod poles for the cup arm. I used a smaller piece that fit perfectly on the bicycle axle, then epoxied it inside a hole in the main cup arm. Very stiff and works great.
Cups: the cups or hands are just some sponge foam (computer packing foam) hotglued to cardboard triangle. Inside the cardboard is a vinyl triangle made from a vinyl notebook. The harder surface of the vinyl holds and releases the steel ball more consistently than the cardboard. You can probably figure out better cups but it was all I had around. I thought that perhaps cut up ping pong paddles would work best but they are kind of heavy. Need to keep the cups light as possible.
Motor mount: I mount the motor on the bamboo board with an aluminum motor mount. You will have to move it around so a movable mount is ideal but I didn't have a good way to do that. So I just had to unscrew it all, move it, screw it back in. Takes time. But the mount isn't too critical - just keep it basically under where the long motor arm is attached to the main cup arm.
Motor axle adapter: you need some way to attach the motor axle to the short arm. I found these 5mm adapters that were perfect.
Small motor arm: the short arm is a piece of flat aluminum. Easy to drill holes in and you will probably drill several until you find the ideal adjustment point.
Large motor arm: two turn-buckles (8mm) with threaded rod between them allows good adjustment. You will spend a lot of time adjusting this arm.
Step 2: Specifications
There are about 9 critical arm lengths, attachment points, and other specifications that must be considered in getting this machine to work. I actually calculated the permutations for just the possible adjustments I can make on my machine and it came out to around 60,000. Of those, I don't know how many would actually work.
Looking at the diagram above, I will explain each measurement .
1. The distance between the pockets of the two cups (or hands) in my case is 54 centimeters. Placing the two cups too close will not allow enough space for the ball to bounce, and placing them too far apart will bounce the ball too short to be caught in the other cup. But the arm should be adjustable and I did this by placing the two cups on two inside fishing pole sections that slide inside the larger main pole. Then I hot glued the smaller ones in place.
2. The motor is attached to two arms, a short one and a longer one. The longer one is attached to the cup supporting arm about 7.3 cm from the main bearing on which the main cup arm rotates.
3. The main bearing is about 24 cm from the ground or surface that the ball will bounce on. In my case I add or subtract a textbook that the machine frame is resting on. Not an ideal setup. Really the frame needs to be either really heavy or attached to the floor in some manner. When my machine is running it actually rocks a little bit and that kind of play is not a good idea as it affects the timing of the machine,
4. The distance from the main bearing to the motor axle is about 15 cm.
5. The distance from the vertical alignment of the main bearing and the motor axle is 10 cm. This distance doesn't seem to be real critical.
6. The distance from the the motor axle to the longer arm attachment point on the shorter arm is 4.5cm. This arm is critical to adjusting the highest and lowest points of both cups. If you need the ball to be thrown farther, then lengthen the distance on the short arm. If you need both cups to throw less forcefully, then shorten it.
7. The longer motor arm is probably the most adjusted point on the machine. That is why I made it easily adjusted using two turn-buckles and a threaded rod. It is the only point at which you can differentially change the cups throwing height and power. By lengthening this arm, the right cup will go higher and throw farther, and the left arm will go lower and throw shorter. By shortening this arm you get the opposite affect. It is the equalizer adjustment point for the two cups.
A couple of other variables factor into the proper working of the machine. One is the size of the ball. I used a 15 mm steel ball. A smaller or larger ball will require all the other variables to be changed. A second variable is the motor speed. You will need an adjustable power supply or motor controller to control the rpm of the motor. In my case I used a variable 12 volt wall wart.
My calculations of permutations of machine adjustments:
1 2 3 4 5 6 7 8 9
4 * 4 * 4 * 4 * 4 * 4 * 10 * 2 * 4 = 327,680 (much higher than my original estimate where I gave only 3 adjustment points to each arm or distance) Not sure how many of those would work.
Step 3: Some Adjustment Tips...
Once the machine is built then it is time to get it working. I started by just trying to get one ball thrown and caught by the other cup. I start by setting the rpm around 80 rpm. The ball should be thrown such that it arcs up and then falls just before the center of the long cup rod (or the main bearing attachment point). It then bounces on the floor on the side closest to the catching cup. If the ball is thrown too far then likely the cups are rising too high and need to be lowered by shortening the short motor arm attachment points. If the ball is not being thrown far enough then the short motor arm attachments need to be lengthened. Another way to make these adjustments is to change the long arm attachment point on the main cup arm (see spec 2 in the previous step).
If one cup is throwing the ball too far and the other isn't throwing it far enough then you address this differential by adjusting the long motor arm. (see spec 7 in the previous step).
At some point you may need to increase or decrease the distance between the main bearing and the floor to change the ball dwell time, or how much time the ball spends in the air. This is when it really becomes art and not so much science so you just have to play with it.
Motor speed: my machine runs optimally at about 80 rpm. This is also dependent on the other adjustments so you need some way to vary the motor rpm. If the rpm is too fast then the ball doesn't have time to get seated into the pocket of the cups and it just bounces around in the cup and then gets thrown erratically. If the rpm is too slow, the ball doesn't get thrown far enough or the receiving cup is not in a position to catch the bouncing ball.
Bouncing surface: you need a surface to bounce the ball on. I use the ceramic tile floor in my apartment because a steel ball bounces really well on it. I tried the snare drum and it just wouldn't return bounce high enough (and it was super noisy.)
Step 4: Final Notes...
Challenge 1: someone build this in a machine shop using professional tools. I had only a hacksaw and hand drill.
Challenge 2: build a small one using 3D printer to use 10mm ball. That would be cool but don't know what bounce surface you could use other than a ceramic or cement floor.
Challenge 3: find out where Claude Shannon's original juggling machine is and tell the rest of us. Make a video of it in operation. At the very least take closeup photos of details of his machine. My mouth waters at the prospect.
Note: did find the above photo of Claude Shannons machine which is a little enlightening but not detailed enough to show specifics of arm attachments and bearings and what kind of motor he used. Not sure where this picture was taken. MIT, his home, Michigan?
Above all have fun and thank Claude Shannon for sharing his brilliance!