omron — Motion Control Instructions

Motion Control Instructions The following instructions always cause eV+ to suspend program execution until the robot stops (see the eV+ Language Reference Guide for detailed information on these instructions): BREAK CLOSEI CPOFF DETACH (0) HALT OPENI PAUSE RELAXI TOOL Also, the robot decelerates to a stop when the BRAKE (not to be confused with BREAK) instruction is executed (by any program task), and when the reaction associated with a REACTI instruction is triggered. These events could happen at any point within a motion segment.

(Note that these events can be initiated from a different program task.) The robot also decelerates and comes to a stop if no new motion instruction is encountered before the current motion completes. This situation can occur for a variety of reasons: l A WAIT or WAIT.EVENT instruction is executed and the wait condition is not satisfied before the robot motion completes. l A PROMPT instruction is executed and no response is entered before the robot motion completes. l The eV+ program instructions between motion instructions take longer to execute than the robot takes to perform its motion.

Procedural Motion The ability to move in straight lines and joint-interpolated arcs is built into the basic operation of eV+. The robot tool can also move along a path that is prerecorded, or described by a mathematical formula. Such motions are performed by programming the robot trajectory as the robot is moving. Such a program is said to perform a procedural motion. A procedural motion is a program loop that computes many short motions and issues the appropriate motion requests. The parallel execution of robot motions and non-motion instructions allows each successive motion to be defined without stopping the robot.

The continuous-path feature of eV+ automatically smoothes the transitions between the computed motion segments. Procedural Motion Examples Two simple examples of procedural motions are described below. In the first example, the robot tool is moved along a trajectory described by locations stored in the array path. (The LAST function is used to determine the size of the array.) SPEED 0.75 IPS ALWAYS FOR index = 0 TO LAST(path[]) MOVES path[index] END eV+Language User's Guide, v2.x, 18318-000 Rev A Page 119