Introduction: Linear Motion by Cam Mechanism

A cam mechanism is one of several mechanisms that can generate a linear motion. Build a simple linear mechanical movement and adapt it into your own kinetic craft. I used cardboard with other craft materials.

Step 1: Things You Need

  • Arduino Uno (or RedBoard)
  • A continuous servo motor
  • 3 wires
  • Cardboard (or formboard): I used recycled box cardboard to build the model.
  • Paper: Any type of paper bigger than 282x30 mm (11.1x1.2")
  • A wood skewer: I used it to make a cam follower. A bag of 100 wood skewers costs $1-$2 from supermarkets or craft stores.
  • A plastic bottle cap : to make a bottom for a cam follower
  • A used coin battery (or coins) : to add weight to the bottom of a cam follower
  • A laser cutter: to cut parts (if you don’t have a laser cutter, you can just use a razor knife or box cutter)
  • A razor knife: ( such as an X-acto® knife ) to cut paper
  • A wire cutter: to trim a skewer (you can also use a knife or a small saw)
  • A ruler: to help accurate measurement and cutting
  • Duct tape: to attach servo motors to the case.
  • A glue gun and glue sticks: to attach gear layers and assemble parts.

My instruction is divided into two parts. Part A (step 2, 3) shows how to control a servo motor, and part B (step 4~9) shows how to build a linear movement using servo motors. If you’re familiar with electronics (servo motor control), you may skip part A. If you’re not familiar with playing with servo motors with the Arduino controller, start from part A.

Step 2: Build a Circuit

There are two types of servo motors: one rotates 180 degrees back and forth (reciprocating movement) and the other one rotates continuously. I used a (standard size) continuous rotation servo motor.

Here you can see the big picture of Arduino family products: Arduino guide

As long as a product includes PWM (“Pulse Width Modulation”) pins, common to all members of the Arduino family, it can drive a servo motor and you can program it. If you’re not interested in investigating further functions that each advanced product provides, the Arduino Uno (or the Sparkfun Redboard) is a good place to start.

You need to use three jumper wires to connect the power, ground and signal of your servo motor to your controller.

Step 3: Program to Run Servo Motors

Here you can see how to control servo motors using an Arduino:

In controlling a continuous servo, the same Arduino command that sets the angle of a 180° servo motor (e.g.,ServoName.write(60)) instead sets the speed of a continuous servo. So, given a range of values from 0 to 180, a value near 90 stops the continuous servo motor, a value of 0 sets the motor full-speed in one direction (“reverse”) and 180 sets the servo to full-speed in the other direction (“forward”).

Now you’re ready to have fun with servo motors. Let’s move on to mechanical construction.

Step 4: Cut the Parts

To start with, I cut the parts using a laser cutter (Epilog Helix 40Watt). The settings were:

  • power: 70, speed: 100, frequency: 500: to cut parts for the case (cardboard)

If you’re going to cut by hand, you can print out the parts, attach the print to cardboard, and then cut the parts using a razor knife.

You can also follow along with the instructions in the video.

Step 5: Setting a Guide on the Case

First, we need to mount a guide onto the case. The guide will function as a constraint to prevent the cam-follower falling off the mechanism as the cam turns.

Insert the T-shaped parts (part #4 in the diagram above) through the smaller rectangle hole on the body case (part #1), and glue one onto each side.

Then, to strengthen the front side, set part #5 between part #4, right behind the hole. Glue both sides a little to attach the part.

Step 6: Setting a Servo Motor on the Case

Attach a continuous servo motor to the body of the case using duct tape. Make sure to attach the motor on the correct side.

Step 7: Setting a Cam Gear

Print the attached file or draw two paper sticks following the measurement: 282x15 mm (~ 11.1x0.6")

Select the shape of the cam you want to make and glue the edge of the cam and attach the paper stick.

Then attach a motor part. This part can be anything from the motor package as long as it’s smaller than the cam itself.

Step 8: Setting a Cam Follower

Now let’s make a cam follower. Insert the wood skewer to part #6 and glue the connection. Trim it if it’s too long.

Then in order to make the bottom of the cam follower heavier, put a used coin battery or coins (I’m suggesting them only because they perfectly fits into the standard size of the plastic bottle cap. So, if you have any idea for some additional weight, feel free to change objects). Then glue the circular outline of the part #6 and attach with the bottle cap.

Step 9: Combining All Together

Let’s combine the parts now. Pass the skewer through the guide to position the follower and attach the prepared cam gear to the motor.

Finally, make it stand using the legs (part #2). Then connect the motor to your Arduino and see how it works.

Step 10: Build Your Own Kinetic Craft

Now you have a fully-assembled cam mechanism so it’s time to adapt the movement into your own story. I made the instructables robot wearing a red hat and a dog with a cookie. What’s yours?

You can also explore other mechanisms at: