Constants:
The value will not change during execution
Variables: Symbolic names, to refer points, joints, path, subroutines, etc.
Location Variable:
ROBOT PROGRAMMING DEFINE A1=POINT<x,y,z, α, θ, φ> //Aggregate representation
(Based on INDUSTRIAL ROBOTICS, Ch-9, MP Groover et.al.) // DeYines the position and orientation of point A1, gripper centre
MOTION COMMANDS
Body of any robot programming language has:
Used to deYine movements, path, frame, speed, etc.
Constants, variables, data and objects
MOVE A1 // to take end effector to previously deYined point A1
Motion, end effecter and sensor commands
MOVES A1 // to go to A1 in straight line path
Computation and operation symbols MOVE A1 VIA A2// to go to A1 through another point A2.
//Helps to avoid obstacles, hitting of part
Subroutines
APPRO A1 50 //Approach A1 but keep away 50 mm in Z direction
DEPART 50 // Move back from the current position through 50 mm
DMOVE (1,10) // D for Delta, means increment.
//Change position of joint 1 through 10 mm or 10O
DMOVE (<4,5,6>,<30,-60,90>) //To move joints 4,5 and 6 through
30, -60 and 90 units respectively
Robo+cs-ELE 5/TKMCE 27 Robo+cs-ELE 5/TKMCE 28
Eg. Program: To pick an object from previously deYined point A1
========================================================= FRAME
APPRO A1 50 To deYine local frames be means of axes, deYined by points
OPEN //to open the gripper Helps to repeat a particular path of motion at different locations
MOVES A1 DEFINE FRAME1=FRAME(A1,A2,A3)
SIGNAL 5 // To read signal from port 5. Can be used to close the gripper //A1 is origin, A2 direction of X-axis, A3 is any point on XY plane (deYines
DEPART 50 orientation of XY plane. Automatically, Z axis is perpendicular to XY plane)
========================================================
SPEED 60 IPS //to move arm at speed 60 inches/min
Note: SPEED can also be a MONITOR COMMAND (preparatory command) by
which default speed can be set for the robot
SPEED 75 // to move arm at speed 75% of previously deYined/default speed
HERE A1 //A command for teach pendent method. After taking end effector
to a point, deYine the point as A1 so that the coordinates will be DEFINE ROUTE:FRAME1=PATH(P1,P2,…P6)
stored by the system) //deYines a path through points P1 through P6, w.r.t. FRAME1)
DEFINE PATH1=PATH(A1,A2,A3) // PATH1 is a variable. PATH is a keyword. MOVES ROUTE: FRAME1 //same effect as above statement
// deYine PATH1 through A1, A2 and A3
MOVE PATH1 // to go through PATH1
MOVES PATH1 // to go in straight line path between points A1, A2 & A3
Robo+cs-ELE 5/TKMCE 29 Robo+cs-ELE 5/TKMCE 30
SENSOR COMMANDS END EFFECTOR COMMANDS
WAIT 20, ON // to cause the program to stop until an ‘ON’ OPEN // to open the gripper
signal input is obtained at controller port 20. CLOSE // to close gripper
Eg: Robot need to wait at a station for loading or unloading OPENI // to open the gripper immediately
CLOSEI // to close the gripper immediately
SIGNAL 21, ON // Send signal to a port 21, to implement an CLOSE 40 MM // to keep Yingers 40mm apart while closing
output, to send some signal to some device CLOSE 3.0 LB // to close the gripper and apply force 3 lbs
CENTRE // To align the manipulator automatically to keep
REACT 25, SAFESTOP // to monitor the input pot 25, for any the end effector centre coincident with work piece centre
change in input signal. If a signal is sensed, then stop the main
program and implement the subroutine (may be to stop safely)
Robo+cs-ELE 5/TKMCE 31 Robo+cs-ELE 5/TKMCE 32