I recently designed a Geneva Mechanism that I will be using in my Lego Laser Scanner. The Geneva Mechanism takes smooth rotary motion and converts it to intermittent rotary motion. One can think of it in electronics terms as changing the duty cycle of the oscillation.
Geneva mechanisms were invented in Switzerland for use in clockwork so that the hands of a clock would snap rapidly to their new positions rather than move smoothly across the face of the clock. They are also used to advance film in film projectors. They are responsible for that clicking noise that film projectors make.

Above is an image of my design rendered using the Lego CAD LDraw tools that I discussed in earlier posts.
I have been practicing with animating Lego designs, and I have figured it out. Below is an animated GIF of my Geneva Mechanism. It is a pretty big file, so it may take some time to download. Notice that I cheated a little and included just enough frames to rotate the wheel 90 degrees, since it is mostly 4-fold symmetric (but not exactly).

The animation was challenging in that there are three moving parts: the rotating arm, the latch, and the wheel. I designed each of the pieces in MLCAD and made sure that they were positioned so that the origin of the three pieces was centered on the axis that I wished to rotate the image about. The rotating arm simply rotates a single rate described by 155-clock, where the clock is a variable in the ray-tracing program POV-Ray that I have set to cycle from 0 to 360. One can see that when clock equals zero, the arm starts at 155 degrees.
The arm is only able to rotate the wheel over a 50 degree range, while the wheel rotates a full 90 degrees. This lead to the following equation that I used the describe the motion of the wheel:

Note that the wheel starts turning when the rotating arm gets to 310 degrees, and moves almost twice as fast (9:5 ratio) so that it turns 90 degrees while the clock which controls the rotating arm counts only 50 degrees.
The latch was especially difficult as it is pushed outward by a cam, and I did not have the details of the shape of the Lego cam, nor did I have the patience to measure it myself. The latch arm moves slowly at first away from the wheel and then slows down as it approaches the limit of its motion. My first approximation was a cosine:

Note that the latch does not start moving until the clock is at 237 degrees. At this point, the argument of the cosine is zero, and its value is 1 giving a angular position of -20 degrees. The cosine picks up speed and slows down again as it approaches 30 degress. Once the cam is out of the way, a rubber band (not shown in the illustration) rapidly snaps the latch back into place. To describe this, I merely treated its motion as an acceration:
, where I have implemented the square by multiplying twice. The result is a more realistic motion.
Enjoy,
Kevin Knuth
Albany NY
Posted under Lego, NXT, Robotics, Solutions
This post was written by drknuth on April 14, 2007
Tags: animation, CAD, computer, generated, Geneva, Lego, mechanism, Mindstorms, MLCAD, NXT, render