Introduction: Tertiarm - 3d Printed Robot Arm

About: I am student and maker from Russia

This is first version of my low cost 3d printed robot arm. It is based on Ikea Tertial lamp. I choose it because it has very good kinematic with using springs to unload servos. So you can use different number of springs to achive diffrent lifting power.

Techinacal specification:

  • 5 DOF.
  • Full lenght: 690mm
  • Lifting power with 4 standart spring: 0.5kg (distance between base and attaching point: 500mm)

You can find some information and download STL files for free at:

Step 1: Let's Get It Started!

First of all you should take a look at BOM file and picture to get information about all components.

Your can find all information about infill and quantity of 3d printed parts there. Because Tertiarm use lamp as base you won't need to print big parts, so I hope it can be printed almost at all 3d printers. When you will be ready to start assembly Tertiarm, you should begin from disassembling lamp. You will need only 4 beam and 4 sping, if you be able to find same beams and springs you can do without buing ikea lamp. After making first prototypes, I have decided to cut all beam to 260mm, but you can choose other lenghth depends on your servo and goals.

  1. Cut all beam to one lenght.
  2. You should mount Tip and ServoTip 3d printed parts, as it shown on picture. Be careful about it you should check position of all elements. You will need to use mallet to fit it in place, it should be very tight, but you can also add screw to fix it.
  3. Fix servo horn on ServoTip.STL with M3 screws (20mm)

Now you are ready to assemble 1 axis.


Step 2: 1 Axis

  1. You will need to insert servo in MainPart.STL. And fix it with 2 scews.
  2. Fix MainPart.STL to some peice of wood with 7 screws.
  3. Insert 6 M3 nuts in BearingTop.STL. If it will be too tight you can heat up nuts.
  4. Assemble axis as shown on picture using 2 M3 screws (30mm).
  5. Insert 6 m3 screw (10mm).
  6. Mount it at MainPart.STL using 6 M4 screws. Make sure you have mount serrvo horn to servo and fix it with m3 screw (30mm) in center hole to servo.
  7. You have assemled 1 axis!

Step 3: 2 Axis

  1. Carefully insert 2 beam into first axis. Check out location of Tip.STL and Servo.Tip STL at the top of 2 beam on picture.
  2. Fix it with 2 M4 screws (at least 35mm) and 4 604zz bearings.
  3. It should look like this.
  4. Mount two SpringMount.STL to 1 Axis with 4 m4 screw. Your can adjust spring tension with them
  5. Mount 2 spring on 2 M4 screw.
  6. Fix servo and 3 604zz bearing on Shoulder3.STL as shown on picture.
  7. Insert 1 604zz bearing in Shoulder2.STL and assemle 2 axis as shown on picture. Fix servo drive shaft in servo horn and tight it with allen key.
  8. Insert M3 screw (25mm) in servo shaft using 623zz bearing.
  9. You have competed 2 axis!

Step 4: 3, 4 and 5 Axis

  1. Insert 2 beam into second axis. Carefully check picture.
  2. Fix them with 4 604zz bearing.
  3. You should assemble it in a shown order to fix springs later.
  4. Mount 2 servo on Elbow2.STL
  5. Join aluminium servo horn, servo and Wrist.STL with M3 screw (10mm).
  6. Fix it with 4 M3 screws (10mm).
  7. Mount servo horn on Wrist.STL with M3 screw (20mm).
  8. Assemble it with 4 623zz bearing. Make sure all servo shaft in their place fix it with 2 M3 screws (25mm) and tight servo horns with allen key.
  9. Axis 3,4 and 5 are completed!

Step 5: Magnet, Arduino Uno Cabin and Springs

  1. Mount electromagnet on Magnet.STL
  2. Fix it on servo with m4 screw.
  3. Use Ikea mount or m4 screw and 3 nuts to fix springs as shown on picture.
  4. You should try different combination of 4 sprins to find best solution for you task.
  5. If you deceid to use Arduino Uno and SensorShield V5 like me, you can make Arduino Uno Cabin. In this case you should mount ArduinoCabin2.STL on axis 2.
  6. Fix ArduinoCabinPlate.STL on ArduinoCabin2.STL with 2 m3 screws (10mm).
  7. Mount ArduinoCabin1.STL on ArduinoCabinPlate.STL with 4 M3 screws (30mm) and 4 M3 nuts.
  8. Now you can fix your arduino on ArduinoCabinPlate.STL.

Step 6: Test Code.

Now after your assemble and fix it on your table your are ready to test Tertiarm.

I recommend your to use VarSpeedServo library by NETLab Toolkit Group. It allows your to change speed of your servo. Your can read more and download it at GitHub. If your will use TertiarmTest.ino don't forget to change all pins to your configuration.

Congratulations! Your have completed Tertiarm! If you have any question or problems feel free to contact me.

Arduino Contest 2016

Participated in the
Arduino Contest 2016

First Time Authors Contest 2016

Participated in the
First Time Authors Contest 2016

Design Now: 3D Design Contest 2016

Participated in the
Design Now: 3D Design Contest 2016