Robots & Automation – MFET 445
Robots & CNC in Integrated
Manufacturing – MFET 685
Agenda
• Motion Control
• Robot Programming
• Programming Methods
• Programming Languages
• Types of Programming
2
Motion Control
Robots can be classified according to their pattern of motion.
The three classifications of motion are:
Pick-and-place
Point-to-point
Continuous path
https://www.you
Pick-and-Place Motion tube.com/watch?v
=QfbdVboVNUM
Pick-and-Place motions is
often used in manufacturing
processes to perform work
that is repetitive and does not
require many complicated
movements to accomplish a
task.
Such as picking up a part at
one location and placing it in
another location
2 positions per axis
Hard Automation
https://www.youtub
e.com/watch?v=hCu
YuwdV-Rs
5
Point-to-Point Motion
PTP motion involves the movement of a robot through a
number of points in space.
Point-to-point control means individual robot positions are
recorded in the memory.
These positions include both mechanical stops for each joint,
and the set of values that represent locations in the range of
each joint.
Feedback control is used to confirm that the individual joints
achieve the specified locations in the program.
The path of motion is a series of straight lines between the
points. May also use speed control.
Point-to-Point Motion
Continuous-Path Motion
CP motion is an extension of point to point motion.
The difference is that continuous path motion can involve several
thousand points.
Continuous path control refers to a control system capable of
continuous simultaneous control of two or more axes.
The following advantages are noted with this type of playback
control: greater storage capacity—the number of locations that
can be stored is greater than in point-to-point; and interpolation
calculations may be used, especially linear and circular
interpolations.
Since more points are used, the distance between each point can
be extremely close.
Continuous-Path Motion
https://www.
youtube.com/
watch?v=LKsE
qKX6FvY
Robot programming
Robot Programming is the defining of desired motions so
that the robot may perform them without human
intervention.
Most industrial robot comes in different languages, however
all of them uses the same pseudo language.
Programming Methods
Robots can be programmed manually, by means of a teach
pendant, by walking them through a tasks, or by means of a
computer terminal.
The various programming methods are best suited for only
particular types of motion control.
Four types of programming methods:
Manual
Teach Pendant
Walk-Through
Computer Terminal
https://www.youtub
e.com/watch?v=K9y
Manual Programming 13ooQcCU
Manual programming can be best described as a type of machine
setup.
An operator adjusts the necessary end stops, switches, cams,
electric wires to setup the sequence.
This type of programming is quite limited and are suited for pick-
and-place applications.
Manual programming is simple and does not require an operator
skilled in the use of computers.
Capital investment and maintenance costs for manually
programmed robots are low.
Provides high operating speeds, good accuracy and repeatability.
However, it lacks in flexibility since most manual robots are
limited to only two or three DOF.
https://www.youtube.c
Using a Teach Pendant om/watch?v=T5hN0N4
J6yA
In teach pendant programming, the operator leads the robot
through the various positions involved in an operation.
The user moves the robot to the desired location using the teach
pendant to record the robot’s position. The recorded positions
are stored in the memory.
The teach pendant is a popular method of programming
because it is convenient, simple to learn and suitable for
programming many tasks found in industry.
However, complex tasks such as reaching extreme tight
tolerances may involve a lengthy programming time.
The robot must be operation while programming (ON) as the
program cannot be entered into the teach pendant while robot
is off-line (OFF).
https://www.you
tube.com/watch?v
Walk-Through Programming =mIlkWKciz68
Walk-through programming is used for continuous path
robots.
A skilled and experienced operator physically moves the end-
effector through the desired motions.
Some robot manufacturers name it as the “Free” movement
of the robot while teaching points.
Walk-through programming does not require computer
experience.
However, the person programming the robot must be highly
skilled in the precise motion required by the task.
The robot must be operating (ON) while programming using
the walk-through method.
https://www.you
tube.com/watch?v
Walk-Through Programming =mIlkWKciz68
Using a Computer Terminal
Programming a robot using a computer can be done on-line (at
the robot’s console) or off-line (away from the robot).
Testing the robot program is done at the job site.
Computer programming provides greater flexibility. It is not
necessary to take a robot out of operation while the program is
being written and debugged, so productivity is not affected.
High-level computer languages allow programming of more
complex operations.
However, the operator must be experienced in the use of
computer, high level languages and programming logic.
Robot programming (IRL)
Programming Languages
Different robot manufacturers offers different languages for
their equipment.
Common programming Languages:
Robotics Programming Language Originator
SAIL (Stanford Artificial Intelligence Stanford University
Language)
AL (Assembly Language) Stanford University
MCL (Manufacturing Control Language) McDonnell Douglas Corp.
VAL (Variable Assembly Language) Unimation
V+ Adept Technology
Karel FANUC Robotics
AML (A Manufacturing Language) IBM
RAIL Automatrix
RPL Hewlett Packard
RobotBASIC Intelledex Inc.
Magik GE Energy
SCORBASE Intellitek
Ralph-3 CRS-Technology
Types of Programming
The majority of robots in industry today use hierarchical
control programming.
However, task-level programming simplifies the
programming task and is growing in popularity.
Relationship
20
Gear Manufacturing
Fixed automation: Programmable automation:
https://www.youtube.com/watc https://www.youtube.com/w
h?v=ZpJOEj-kX_o atch?v=x8SXT9iMY1U
21
Hierarchical Control Programming
Hierarchical control programming, each level accepts
commands from the level above and responds by generating
simplified commands for the level below.
This system uses sensory feedback, to close control loops.
Hierarchical Control Programming
Task-Level Programming
In task-level programming, the user specifies the goals of
each tasks rather than the motions required to achieve those
goals.
Instructions are entered using simple English-like terms.
(Next slide) Displays the architecture for a typical custom
work cell.
Four separate controllers are used.
A motion control system runs the robot, while the PLC
(Programmable Logic Controller) provides work cell logic.
The vision system is for inspection and robot guidance.
The computer is included for UI (User Interface).
Task-level Programming
Task-Level Programming
Another example of task-level programming:
One controller and one program system are needed to work
with multiple technologies.
The operator can focus attention on the task instead of writing
programming code.
Task-level Programming
CIM Wheel
28
Flexible Manufacturing System
https://www.yout
ube.com/watch?v=
8cr0nDBRt3c
29
https://www
.youtube.com
/watch?v=iy
AWaIYDyZU
30
Robots and
CNC within the
CIM
Architecture
31
Hierarchical Control Programming
KAREL
TP
BG
Fanuc TP Robot Programming
Fanuc Robot Programming
Fanuc Robot Programming
Define work coordinate framework
Fanuc Robot Programming
Define tool offsets
Fanuc Robot Programming
P3: idle
P1:start
P2: finish
Use teach pendant to define operating points
Fanuc Robot Programming
CNT motion – no stopping
May be less precise
Larger number (CNT100 vs CNT1) means
less precision, less slowdown at each
point
FINE motion – pauses at each point exactly
OUTPUTS
Type of output dictates capacity
• Large Mechanical relay – LOTS
• Small mechanical relay – some
• SSR – quite a bit
• TTL – very little
Outputs may consist of a contact
closure, TTL/CMOS (logic high/low)
or transistor PNP (high signal) or NPN
(low signal).
Might also be set up for AC vs. DC
INPUTS
Type of input dictates robustness and current
draw
• relay – durable, high current
• TTL/CMOS – delicate but very little
current draw
• Optoisolated – durable, low current
Outputs may require high signal,
grounded wire, or AC or DC
Fanuc Robot Programming
Fanuc Robot Programming
Program Flow
Control Label
Fanuc Robot Programming
Work
Coordinate
System
Fanuc Robot Programming
Tool
Coordinate
System
Fanuc Robot Programming
Joint Motion
Control
Fanuc Robot Programming
Digital Output
Fanuc Robot Programming
Timeout for
Digital Input
Interrupt
Fanuc Robot Programming
Digital Input
Interrupt
Fanuc Robot Programming
Comment
Fanuc Robot Programming
Register
Conditional
Branch
Fanuc Robot Programming
Register
Conditional
Branch
Fanuc Robot Programming
Program
Termination
Fanuc Robot Programming
Macro Call
Fanuc Robot Programming
Send Text
message to
pendant or
terminal output
Fanuc Robot Programming
End of Program
Karel Programming
Fanuc Karel Programming
Fanuc Karel Programming
Fanuc Karel Programming
Fanuc Karel Programming
Fanuc Karel Programming
Fanuc Karel Programming