Robot Programming Techniques
Robot Programming Techniques
The robot is along certain trajectories through the two conducted manually with
the both the robot and its movement and other devices in the robot cell monitored
closely.
Teach-in Process:
Features:
- To enable long cable to a good view
- Emergency stop switch
- Enabling switch
- Selection of TCP (Tool Center Point) function
- Selection of the coordinate
- Range of motion mode
- Selection of the speed of movement
- Status Display
Control Equipment
Types of robot-Program:
Source: ABB
Source: RIKO
Global Co-ordinates
The tool center 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.
Tool Co-ordinates
Similar to the global co-ordinate system but in this coordinate system, the axes of the robot are “attached” to the center 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
Workpiece Co-ordinates
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.
8
Teach Pendant
Advantages of Teach Pendant Programming
•The teach pendant is right next to the robot so it is very handy.
•It comes packaged with the robot so no extra hardware is required.
•As the software is developed by the manufacturer, it will make use of the robot’s more “obscure”
functionality.
Lead-through is the simplest of all robot teaching methods. With the servo controls turned off, the
operator can manually move the robot arm to its desired path. Significant points can be saved for
later use when the robot travels along the path taught.
A smaller model of the robot communicating with the real one and its robot controller is another
type of lead-through programming. This method is used if the robot does not have free movement
mode and the servo controls can be turned off.
Although lead-through is a low-precision method, the operator may have editing options to improve
precision once the robot has been taught its desired path. Lead-through programming promotes
skilled workers who know how to do the job manually with high precision rather than technical
skills and thus does not require workers to have any knowledge of computer programming.
10
There are two ways of accomplishing lead through programming:
1.Powered lead through
2.Manual lead through
The powered lead through method makes use of a teach pendant to control the various joint motors, and to
power drive the robot arm and wrist through a series of points in space.
Each point is recorded into memory for subsequent play back during the work cycle. The teach pendant is
usually a small handheld control box with combinations of toggle switches, dials, and buttons to regulate the
robot’s physical movements and programming capabilities.
A large number of industrial robot applications consist of point-to-point movements of the manipulator. These
include part transfer tasks, machine loading and unloading, and spot welding.
The manual lead through method (also sometimes called the ‘walkthrough’ method) is more readily used for
continuous-path programming where the motion cycle involves smooth complex curvilinear movements of the
robot arm. In the manual lead through method, the programmer physically grasps the robot arm (and end
effector) and manually moves it through the desired motion cycle.
The most common example of this kind of robot application is spray painting, in which the robot’s wrist, with
the spray painting gun attached as the end effector, must execute a smooth, regular motion pattern in order to
apply the paint evenly over the entire surface to be coated.
11
Advantages
•It is quicker and removes the need for multiple button pressing, allowing the operator to simply
move the robot to the desired position.
•It is more intuitive because the task is programmed like a human operator. This simplifies the
learning process for operators.
•It requires no knowledge of programming concepts or familiarity with 3D CAD environments.
Disadvantages
•Since this method uses the physical robot for programming, it does not reduce downtime.
•It is more difficult to move the robot to precise coordinates.
There is no way of entering a numerical value, and it is not so good for tasks that are
“algorithmic” in nature.
•Moving the robot by hand would be difficult and inaccurate for such a task.
12
Robot Programming Languages
Different languages can be used for robot programming, and their purpose is to instruct the robot in how to perform
these actions. Most robot languages implemented today are a combination of textual and teach-pendant
programming.
Some of the languages that have been developed are:
WAVE , AML , MCL, IRL, SINGLA, VAL, RAIL, TL- 10, APL, VAL II, RPL, AL
WAVE, developed at Stanford, demonstrated a robot hand—eye coordination while it was implemented in a
machine vision system. Trajectory calculations through coordination of joint movements, end-effector positions
and touch sensing were some of the new features of WAVE. But the algorithm was too complex and not
userfriendly. They could not be run in real-time and on-line. On the other hand, trajectory calculations are possible
at compile time and they can be modified during run time.
AML (A Manufacturing Language) is a high level language based on sub routine, which is mainly implemented
to manage RS / 1 Assembly Robot, End Effectors Active Force Feedback, and Cartesian Arm with hydraulic
motors. The RS / 1 assembly robot incorporates a mini – computer (IBM Series/1), 192 KB memory, matrix
printer, disk drive, display terminals, and keyboard. AML was developed by IBM Corporation for robot
programming. An important reason for creating this language is to offer simple subsets and as well as powerful
base language.
13
MCL (Manufacturing Control Language)
US Air force ICAM project led to the development of another manufacturing control language known as MCL by McDonnel—
Douglas. This is a modification of the popular APT (Automatically Programmed Tooling) language used in CNC machine tools
as many similar commands are used to control.
14
VAL
VAL (Variable Assembly Language) Robot Programming Language is adopted mainly for Unimation Robots. As this language
is designed with simple syntax, it is capable of illustrating the robot functions very easily. It includes two major tasks such as:
• Program instructions are used to provide VAL programs in order to manage the robot functions.
• Monitor commands are used to execute the user written programs.
RAIL will be a best language for controlling two major tasks such as the manipulation and vision system. It is a high – level
robot language based on Pascal, and it will implement a Motorola–68000 central processor, teach pendant, and terminal. This
language was designed by Automatix for arc welding and inspection purposes.
RAIL comes with three different kinds of systems, namely:
• Hitachi Process Robot – Arc Welding
• Cartesian Arm – Assembly functions
• Vision system without arm
15
TL-10 (Toyoto Robot Language-10) is a BASIC-like robot language. It has functions that define locations and subroutine
parameters, which are useful in the accumulation and the transference of robot applied technology. It also has functions to
communicate with other computers such as those for vision systems.
APL (A Programming Language) is a programming language developed in the 1960s by Kenneth E. Iverson. Its central
datatype is the multidimensional array. It uses a large range of special graphic symbols to represent most functions and
operators, leading to very concise code. It has been an important influence on the development of concept modeling,
spreadsheets, functional programming, and computer math packages.
16
VAL (Variable Assembly Language) II
• It is one of the most commonly used and easily learned languages.
• It is a computer-based control system and language designed for the industrial robots at Unimation, Inc.
• The VAL II instructions are clear, concise, and generally self explanatory.
• The language is easily learned.
• VAL II computes a continuous trajectory that permits complex motions to be executed quickly, with efficient use of system
memory and reduction in overall system complexity.
• The VAL if system continuously generates robot commands and can simultaneously interact with a human operator, permitting
on-line program generation and modification.
• A convenient feature of VAL If is the ability to use libraries of manipulation routines. Thus, complex operations can be easily
and quickly programmed by combining predefined subtasks.
RPL (Robot Programming Language) makes the improvement, checking, and correction of control algorithms very easy. It
can be done even by an unskilled programmer like line foreman, production engineers, etc. The RPL programs are translated to
interpretable code with the help of a compiler in SRI Robot Programming System. The programs are typically written in BLISS
– 11 and run in RT – 11. The DECPDP – 10 is cross compiled into the LSI – 11 or PDP – 11. This robot language was designed
in SRI International.
AL robot language was developed in Artificial Intelligence Lab at Stanford University. It is the second generation language based
on simultaneous Pascal. The programs are written and executed on PDP – 10. If the program is developed with high level code,
then it should be written in Stanford Artificial Intelligence Language (SAIL). The AL system includes a big mainframe computer,
and it generally runs on PDP 11/45. The PDP 11/45 implements one terminal, 128 KB RAM memory, and floating point processor.
This language has got the capability to control two Stanford Scheinman and two PUMA 600 arms simultaneously. 17