Trajectory Planning
Prof. Ashish Dutta
Professor and Head
Dept. of Mechanical Engg
IIT Kanpur, Kanpur 208016, INDIA
Robot Programming
Dr. Ashish Dutta
Professor and Head
Dept. of Mechanical Engineering
Coordinator, Center for Mechatronics
IIT Kanpur, INDIA
General structure of robot
hardware
Mechanical hardware : arms, motion
transmission, gripper.
Robot Control unit: robot controller, motors,
sensors, power amplifiers, ADC/DAC.
Central controller for interfacing robot with
other machines etc.
Using a robot:
Teach pendent: used to manually teach
different points that are recorded in the robots
memory. These points can then be played
back. e.g. tasks requiring human skills e.g.
welding, etc.
Program based control:The desired task is
written as a sequence of motions in a
language such as VAL. These motions can
then be played back.
Three generations of programming
languages
First generation: Simple commands for pick and
place operations, with limited interaction with limit
switches (ON/OFF), stops etc.
Second generation: Interaction with the
environment using force, touch, ADC/DAC, etc.
Third generation: Intelligence capability to
understand general commands e.g. ‘tighten a nut’
Examples of a few programming
languages:
VAL : Victors Assembly Language (1960).
Developed by Unimation for the PUMA robot.
AML : Developed by IBM for manufacturing
automation systems (1960).
RPL : based on FORTRAN Language (1960).
Basic commands in VAL II
Constants, variables, data objects
Motion control commands.
Robot Hand control.
Program control and input/output control.
Variables, Motion Control
POINT P1 = 3, 4, 5, 30, 45, 50
(x, y, z, Ɵ, α, Ɣ)
MOVE P1
MOVES P1
DRAW 45, 56, 60
APPRO P1 50 (along z axis)
DEPART P1 50 (along z axis)
APPROS or DEPARTS APPRO or DEPART
MOVE and MOVES
Straight line motion between two points
requires more energy ?
• Energy required is
proportional to the number
of joints that move to take
the end effector from one
point to another.
Hand Control
OPEN and CLOSE
OPENI and CLOSEI
CLOSEI 75 in VAL
Why two commands OPEN and
OPENI?
Speed control, Pause
SPEED 60 IPS
DEFINE PATH1=PATH(A1,A2,A3)
PAUSE Time (milli secs)
In – line robot cell
Pick from conveyor and place on table
Table : Parts to be placed in each
square : INDEXING
Robot centered cell –
sequencing - dead lock
Communication with Simple ON/OFF
sensors
Proximity : ultrasonic, hall effect, conductive
sensors.
Limit switches.
ON +5 V
OFF 0 V
Program Control, Interlock Commands and
GOTO 20
GOSUB and RETURN
IF THEN ELSE
PAUSE
PROCEED
ON/OFF Type communication based on high (+5V) / low (0V)signals
SIGNAL 2,-3
IFSIG 2,-3 THEN
WAIT SIG (-1, 2)
RESET turns off all external signals
ON 2
OFF 3
RESET
What Is Data Acquisition?
What Is Data Acquisition?
The process by which phenomenon in the
real world can be translated and manipulated
by a computer-readable signals.
This physical phenomenon could be the force
applied to an object, temperature of a room,
the pressure inside a chamber and many
other things.
There are some components to be
considered when building a basic
DAQ system
• Transducers and sensors
• Signals
• Signal conditioning
• DAQ hardware
• Driver and application software
Sensors/Transducers
A sensor is a device that responds to a physical
stimulus (as pressure, temperature, light, sound, or
a particular motion) and transmits a resulting
impulse (a signal relating to the quantity being
measured). A sensor normally also has some
signal conditioning circuit.
A transducer is a device that is actuated by power
from one system and supplies power usually in
another form to a second system. For example a
loudspeaker.
Analog Signals
• An analog signal is a continuous signal that can
be at any value with respect to time.
e.g. analog signals include voltage,
temperature, pressure, sound, and load.
• The three primary characteristics of an analog
signal include level, shape, and frequency.
· level
· shape
· frequency
Digital Signals
• An analogue signal sampled at a particulate
frequency results in a digital signal.
• A digital signal has values only at certain
instants of time (at which it is being sampled).
ON/OFF type of digital signal
ADC / DAC
ADC : Analogue to digital converters.
Temperature, force signal converted to digital
signal for a computer to read.
DAC : Digital to analogue converters.
Digital voltage converted to analogue voltage.
Robots use ADC to convert forces, distance,
etc from analogue to digital value.
Input / output control
IOPUT and IOGET
SIGNAL
ADC / DAC
ADC1= SENSOR 1
DAC1= CONST
DAC1= 3 + CONST
VAR 1 = ADC (1)
Computation and operations
SIN(A)
COS(A)
SQRT(A)
EQ, NE, GT …
Using a robot:
Teach pendent: used to manually teach
different points that are recorded in the robots
memory. These points can then be played
back. e.g. tasks requiring human skills e.g.
welding, etc.
Program based control:The desired task is
written as a sequence of motions in a
language such as VAL. These motions can
then be played back.
Computer integrated
manufacturing
Lead through teaching
Program
example
PROGRAM DEPALLET 1
REMARK CORNER AND CHUTE LOCATIONS ARE TAUGHT
SETI MAXCOL=4
SETI MAXROW=3
SETI ROW =1
SETI COLUMN=1
SET PICK =CORNER
SHIFT PICK BY 20.00,-20.00, 60.00
OPENI
10 MOVE PICK
DRAW 0, 0, - 25.00
CLOSEI
DRAW 0, 0, 25.00
MOVE CHUTE
OPENI
GOSUB PALLET
IF ROW LE MAXROW THEN 10
END
Program Contd.
PROGRAM PALLET
SETI COLUMN = COLUMN + 1
IF COLUMN GT MAXCOL THEN 20 SETI COLUMN = 1
SHIFT PICK BY 50.00, 0.00, 0.00 30 RETURN
GO TO 10
20 SETI ROW = ROW + 1
IF ROW GT MAXROW THEN 30
SHIFT PICK BY – 150.00, -30.00, 0.00
In – line robot cell
Pick from conveyor and place on table
Table : Parts to be placed in each
square : INDEXING