Degrees of Freedom/Number of Axis

This page describes some of the available options for the degrees of freedom of the end effector and will discuss the recommended number of axis for our new arm design.

Defining Degrees of Freedom and Number of Axis

Degrees of freedom describe freedom of movement for an object in 3D space. Any object in 3D space can move up to a maximum of 6 degrees of freedom. These degrees of freedom are described by the translation and rotation across the x, y and z axes and any object with six degrees of freedom are considered as "fully free" objects. 

6 Degrees of Freedom Graphic - CEVA's Experts blog


In the context of robotics, the number of axis for an arm is typically used to describe the degrees of freedom for that arm. So, a three axis robot would have three degrees of freedom (smile). Pretty simple concept, but the terms "DoF" and "axis" may be used interchangeable in the rest of this doc so I Just wanted to clear that up. At minimum, most robotic systems require a minimum of 3 DoF to perform there operation. When trying to figure out the degrees of freedom for a robotic system, you can always count the motors!


Typical Styles of Robots for Each Number of Axis

In the section below, I will cover some examples of robots with different numbers of axes. I'm gonna skip 1-axis and 2-axis systems, as most systems require translation along all three axis as a minimum for required degrees of freedom. All of the systems described below provide freedom of movement when translating across the x, y and z axis however as you move past a 3-axis robot, you begin to gain translation in each of the axis. Most of the information in this section is taken from this website (smile).

3-Axis Robot

A 3-axis of robot can only move it's end effector by translating in the x,y and z axes. These kind of systems are used for simple pick and place operations like the claw machine in arcades or 3D printers. 

4-Axis Robot

A 4-axis robot will also allow for the rotation of the end effector, typically in the z direction as specified in the image below. Common 4-axis robots are scara arms used in assembly lines for industrial operations where the robot needs to grab an object at a specified orientation in the x-y plane, or a desktop cnc where a tool can rotate to drill away material and tranlsate across the x, y and z axes. 

Gantry robot 3 and 4-axes

5-Axis Robot

5-axis robot is probably the minimum baseline for the number of axes we can use for our arm. With a 5-axis robot, an additional axis of rotation is added compared to the 4-axis robot. You can get pretty good control of movement for the object you hold in the end effector, but you still don't have complete control of freedom of movement. Some industrial examples of 5 axis robots are 5 axis CNC milling machines.

6-Axis Robot

A 6-axis robot allows for full freedom of movement for the end effector. Having full freedom of motion really allows the robot arm to perform a wide range of complex movements and typically allow for greater reach of the robot arm. 6-axis robots are quite common in industrial applications where complex movements are required. 

Collaborative Robot 6 Axis Robotic Arm Cobot - Buy Robot,Cobot,Robotic Arm  Product on Alibaba.com


Beyond 6 Degrees of Freedom

Often times, you will hear robot arms that claims to have 7, 8 and 9+ axis/degrees of freedom. What important to note here is that for all of these robots the end effector still only has 6 degrees of freedom as that is the maximum degrees of freedom for an rigid body in 3D space. When people claim there arm has over 6 degrees of freedom, they are describing the total number free axis for all of the linkages on the arm. Technically speaking, when you add another axis to the arm you gain an infinite number of solutions when selecting a movement option (please fact check this). So, when you have more than 6 degrees of freedom on an arm, when solving for a movement command the arm will initiate joint lock procedures to lock the movement of part of the arm, reducing the DoF to 6 to solve the movement option. What's the point of this? Well, adding additional axis on the robot past 6 allows for better optimized pathing of the end effector and lower number of singularities when solving some movements. 

How Many Degrees of Freedom Should Our Arm Have?

This is definitely an opinion piece, but I am a firm believer that our new arm design should be a 6-axis arm. We could get away with using a 5-axis for URC, as the arm's operations aren't super complex. Having a 5 axis design would result in a simpler arm and less room for failure. However, with a a 5-axis arm does not allow for full freedom of movement for the end effector, so we may run into a scenario where we can't properly adjust the end effector to perform a movement task without some jank repositioning of the rover using it's wheels. It would be a lot nicer to be able to manipulate everything as necessary while only using the arm. 5 degrees of freedom also runs higher risk of running into singularities when moving the end effector, and IIRC correctly this could cause the entire code of our arm to stall and die which would be disastrous. 

A 6-axis arm is also a more interesting design and a better learning experience overall for the designers. It will run smoother with controls, and will also be more adaptable to future competitions. Right now, tasks are simple enough to where we can probably use only a 5-axis arm, however if we want to branch out to new competitions or URC adds new arm related tasks, a 6-axis design would be way more adaptable and suitable to be able to perform any new required movements. Majority of top URC arms are currently 6 axis as well. 

TL/DR; fully free end effector manipulation is neato

Extra Resources

https://www.asme.org/topics-resources/content/many-axes-does-robot-need

https://robohub.org/how-many-axes-does-my-robot-need/

https://niryo.com/2017/11/choose-6-axis-robotic-arm/#:~:text=A%20robotic%20arm%20with%206,around%2C%20and%20place%20it%20back