# What factors determine the number of joints in a robotic arm?

I am starting studying robotics from tomorrow. This is my first question to get started with robotics. Pardon me if this question is too naive.

What factors determine the number of joints in a robotic arm?

For instance, suppose, I am going design a robotic arm for, say, a bicycle industry.

How can I determine the number of joints needed in robotic arm for that specific task?

First you must study the tasks that the robot is to perform. If you can describe them mathematically that is even better. For some tasks, you might only care about the position of the tool, and not its orientation. In that case, you would need at most three degrees of freedom (for example, x, y, and z). But you may find that all of the motions of the task are contained in a single plane, in which case the number of degrees of freedom can reduce to two. If all task positions are along a line, you would need only one. Look for coordinates which are changing during the execution of the task, coordinates which are constant can be usually disregarded.

Add to the positional requirements any task needs that relate to the orientation of the tool. Worst-case is that you need three positional degrees of freedom, plus three degrees of orientation. You might refer to this as (x, y, z, roll, pitch, yaw), although other ways of modelling orientation are also possible. Just like with position requirements, you may be able to reduce the number of orientation degrees of freedom - for example, if you do not care about the rotation of the tool about its main axis (such as with a pen-holding tool), then you may only need two orientation degrees of freedom.

You add up the position and orientation degrees of freedom to arrive at the degrees of freedom needed for the task.

The robot design would then need to ensure that all of the required task degrees of freedom can be achieved by the kinematics of the mechanism. Don’t get bogged down by controls, or dynamics, or simulations yet, until you can first determine that the task motions can be accomplished by the mechanism.

• Comments are not for extended discussion; this conversation has been moved to chat. Commented Mar 6, 2019 at 17:27
• On stack exchange, comments are not intended for extended discussions, they are for helping to improve questions and answers. Comments are distracting, so we try to keep them to a minimum. They should be considered ephemeral, any comment which no longer actively helps to improve a question or answer may be deleted at any time to tidy up a post. For extended discussion on a question or answer, please use Robotics Chat. Commented Mar 6, 2019 at 17:29
• it is a good answer, I just missed that part being explicitly formulated.
– 50k4
Commented Mar 7, 2019 at 0:52

There are two extremes available. The first one is a robot arm with only one joint. This is equal to a pinball machine in which the paddle is controlled by a single motor. In contrast, a snake manipulator contains of many degree of freedoms and can move very flexible.

The human body has surprisingly a high number of joints. Humans and snake manipulators have both a high amount of joints. This allows the human arm to reach unusual places in the 3d space. What medical doctors are using as a robotic endoscope looks the same. The number of joints is high and ultra-high. The reason why such robots are expensive is because the software control of a snake manipulator is complicated. The solver provides more than a single solution and moving the arm into a goal position is similar to play a realtime strategy game. The minimum requirement in doing so goes beyond simple differential equations and is equal to a full flown blackboard system with multi-agent communication which are scheduling different hierarchies and constraints at the same time.

The amount of joints which are available in a robot depends on the background knowledge of the programming team to realize complicated kinematic chains. If the skills are on the beginner level, the number of joints will be lower. Controlling a one joint or a two joint robotic arm is not that hard. It can be realized sometimes with a simple pid controller and no further software is needed.

In a comment user366312 asked:

Can you recommend any study resource?

Google Scholar is the only resource available which provides reliable information about robotic manipulators. To get the needed information there are some tricks needed. For example, the user needs to know the exact search string, it make sense to write some sourcecode by it's own to verify the results and it's important to make notes. But that are only fine tuning techniques to request Google Scholar more efficient.

• Can you recommend any study resource? Commented Mar 5, 2019 at 18:37
• literally any robotics textbook Commented Mar 5, 2019 at 18:50