This is a 2DOF Palletizer Robot, and well known for a robot manipulator in manufacturing process. Basically, this robot configuration has 4DOF at least for a minimum requirement to do some object manipulation, like pick-place or rotate object’s z-axis. But in our case, I designed it to have only two degree of freedom, so it can only move it XZ plane. The reason is, we are going to use this arm as camera-lifting device on an avatar robot. So the operator can get much more camera view rather than a fixed camera. The rover of avatar robot can provide the yaw (z-axis rotation) movement, so that’s why I removed redundant motor on the base of robot arm out and use the rover motion instead.

This camera-lifting arm is operating much faster than a traditional ball screw linear actuator and also the weight is much lighter. We can upgrade the arm for much stiffer for avoiding a sway motion, but for prototyping and proof-of-concept, this should be enough. 


  • 2x ROBOTIS Dynamixel Servo XM540-W270-R
  • ROBOTIS U2D2 converter
  • carbon plate and aluminum parts as shown above
  • camera (I chose GOPRO HERO 9)
  • joystick (for manual control)
  • ATCart (for the future as avatar robot, no need for now)

The design of this arm is pretty simple and easy to make. In the future, if we want to expand more degree-of-freedom like regular robot arm, it’s just need to change some few part and add on the new servo. 

Kinematics and Working Range

The left image above is shown the basic geometry and constraint dimension to compute an inverse and forward kinematics. The right image is shown the working range of the robot and it is limited by the angle γ and λ that will cause the linkage collides. The inverse kinematics of this robot is pretty simple because it’s just 2DOF planar robot. For more detail please check on my code on this Github repo.