There are different ways in which robots can be programmed to perform their tasks. Each of the main methods are explained below:
This is by far the most popular standard method of programming a robot. The teach pendant is the interface between the operator / programmer and the robot, and the robot is manually driven to the required positions and paths in turn to create the program. To aid the ease of programming, the robot can be moved using different coordinate systems:
The robot joints are driven independently of each other in the required direction. This will require multiple moves of each axis / joint to achieve the position and orientation of the tool in relation to the workpiece.
The tool centre point of the robot can be driven along the X, Y or Z axes of the robot’s global axis system. Rotations of the tool around these axes can also be performed easily using this coordinate system. In this definition, the robot’s global coordinate system is usually defined at the base of the robot.
Similar to the global co-ordinate system but in this coordinate system, the axes of the robot are “attached” to the centre point of the tool (TCP) and therefore move with it. This system is especially useful when the robot is required to move at angles, which can easily be achieved by rotating the axis to the desired angle, and then initiating a straight line move along that axis
In many instances, it is also possible to define the coordinate system as a point in space within the working envelope of the robot. An example of where this would be beneficial might be where the robot is working between different work pieces and tools which may be moving such as a pallet conveyor or external manipulator. Other potential examples where this might be of use are where the robot is required to move in an arc of specific radius or where multiple work tools are available for use in the robot system.
The teach method of programming is often simple and relatively intuitive to use; however. for complex parts or operations, it can be a time-consuming process. In addition to programming the robots path and positions, the operator will also use the teach method to set specific logic actions at different points in the program, such as setting outputs or looking for input signals to confirm a part is present.
The traditional teach method may still be appropriate where robots are being programmed to perform the same task on just one or two part variants; however, other methods, such as off-line programming are becoming much more popular, especially where a wide range of different parts or tasks need to be processed.
This system of programming was initially popular with some early robot types; however, its use has declined over time, becoming the preserve of some painting applications in the main. In this scenario, the robot is programmed by being physically moved through the task by an operator, defining points etc. along the way. The disadvantages of this method include the fact that any errors or inaccuracies introduced by the operator cannot be easily rectified. Although no longer a mainstream method of programming industrial robots, many collaborative robots or “Cobots” have this function available as a teaching option and it can be retrofitted to industrial robots where there is a need to do so.
Offline programming allows robots or programmers to create program and path data directly from CAD models of the parts being processes. Typically, Off-line Programming methods are most beneficial in complex applications that would require extended periods of time for manual programming. These instances may include applications where parts are large or complex or in production environments where there are a high number of different part types and a low volume of each. Off-line Programming allows production to continue uninterrupted, and in most cases, only minor adjustments will be required to the program once downloaded to the robot, saving significant amounts of time when setting up to produce new part types. Various approaches to off-line programming from simple path generation to full system design, programming and commissioning within a virtual environment.