5.  MOTION INSTRUCTION

5.1.  Overview

A motion instruction directs the robot to move in a specified way to a specific location in the workcell using a specified speed. A motion instruction includes:

  • Motion type - How the robot moves to the position

  • Position indicator symbol - Indicates that the robot is at the taught position

  • Positional information - Where the robot moves

  • Termination type - How the robot ends the move to the position

  • Speed - How fast the robot moves to a position

  • Motion options - Additional commands that perform specific tasks during robot motion

A typical example motion instruction is shown in Figure 2, " Typical Motion Instruction Example " .

Figure 2.  Typical Motion Instruction Example

Typical Motion Instruction Example

Note

Wrist Joint (W/JNT) is a motion option that allows the robot to move only in Linear or Circular.

5.2.  Motion Type

Motion type defines how the robot will move to the destination position. There are three motion types:

  • Joint

  • Linear

  • Circular

Joint Motion

J P[2] 50% FINE

Joint motion

  • Causes the robot to move all required axes to the destination position simultaneously. The motion of each axis starts and stops at the same time.

  • Is programmed at the destination position.

  • Speed is specified as a percentage of the total default speed, or in seconds. The actual speed of the move is dependant on the speed of the slowest axis. Refer to Section 5.7, " Speed " .

Figure 3, " Joint Motion Type " shows an example of joint motion.

Figure 3.  Joint Motion Type

Joint Motion Type

Linear Motion

L P[2] 100mm/sec FINE

Linear motion

  • Causes the robot to move the tool center point in a straight line from the start position to the destination position.

  • Is programmed at the destination position.

  • Speed is specified in millimeters per second, centimeters per second, inches per minute, degrees per second, or seconds. Refer to Section 5.7, " Speed " .

During a linear move, the orientation of the tool changes gradually as the robot moves from the start position to the destination position, depending on how the destination position is programmed.

Figure 4, " Linear Motion Type " shows an example of linear motion.

Figure 4.  Linear Motion Type

Linear Motion Type

Linear motion type can also be used to rotate about the tool center point while maintaining that position. The speed for this type of motion is in degrees per second. Figure 5, " Linear Motion Type Used to Rotate About the Tool Center Point " shows an example of linear motion used for rotation about the tool center point.

Figure 5.  Linear Motion Type Used to Rotate About the Tool Center Point

Linear Motion Type Used to Rotate About the Tool Center Point

Circular Motion

C P[2] P[3] 100mm/sec FINE

Circular motion

  • Causes the robot to move the tool center point in an arc from the start position through an intermediate to the destination position.

  • Is programmed at the intermediate position.

  • Speed is specified in inches per minute, millimeters per second, and centimeters per minute. Refer to Section 5.7, " Speed " .

When you add a motion instruction that has circular motion type, the following appears on the screen:

C P[2] P[3] 100 mm/sec FINE

The first position, P[2] in the example, is theintermediate position. The intermediate position is automatically recorded as the current robot position when you add the motion instruction. The second position, P[3] in the example, is the destination position. You must record the destination position, after you add the circular motion instruction, using the TOUCHUP function key, F5.

If you change an existing point to "C", that position becomes the "via" or intermediate position.

To program a complete circle, add two circular motion instructions, which will generate two intermediate positions and two destination positions. The circular motion instructions can be added by:

  • Inserting a line.

  • Returning to DEFAULT

  • Selecting [INST].

  • Editing a default instruction to add the circular motion instruction.

  • Teaching a point with the current default and then modifying the line to become a circular motion statement.

Circular Orientation Control at Intermediate (Via) Point

Circular orientation control at the intermediate "via" point ensures that the robot will go through the "via" point at the taught orientation point. Orientation is smoothly changed between the start, via, and end points.

Figure 6, " Circular Motion Type " shows an example of circular motion.

Figure 6.  Circular Motion Type

Circular Motion Type

Restart of Circular Motion

In Figure 7, " Restart of Circular Motion Instruction " a single-step stop occurs at the destination position of a circular motion instruction. You can then jog the robot.

Figure 7.  Restart of Circular Motion Instruction

Restart of Circular Motion Instruction

In Figure 8, " Restart of Circular Motion Instruction " when program execution is restarted after a single-step stop and jogging, the robot moves, using linear motion to the end point of the previous circular motion.

Figure 8.  Restart of Circular Motion Instruction

Restart of Circular Motion Instruction

5.3.  Positional Information

Positional information describes the location, orientation, and configuration of the tool center point when a motion instruction is added to a program. Positional information is recorded when the motion instruction is added to the program. Refer to the “Planning and Creating a Program” chapter in the Setup and Operations Manual for more information on adding motion instructions.

Positional information is made up of seven components, as shown in Figure 9, " Positional Information " . These components are represented by theposition command, P[n].

Figure 9.  Positional Information

Positional Information

  • Location components, (x,y,z), describe the three-dimensional location of the position.

  • Orientation components, (w,p,r), describe rotation about x, rotation about y, and rotation about z.

  • Theconfiguration component describes the condition of the axes when the robot arrives at the destination position. Orientation of the wrist axes at the destination position remains the same, but the orientation of the other axes might change.

In the motion instruction, positional information is represented as a position command, P[n], orposition register, PR[x]. The n is the position number. The x is the position register number. A position command stores positional information with the motion instruction in the program. A position register stores positional information in a storage location separate from the motion instruction. Refer to Section 19, " POSITION REGISTER INSTRUCTIONS " .

The position number identifies the position. Position numbers are automatically assigned when a motion instruction is added to a program. The first number assigned is [1], the second [2], and so forth.

If you add a position before an already existing position, the position number is incremented from the last numbered position regardless of its place in the program. You can request that positions be renumbered so that the position numbers are sequential in your program.

When you delete positions, all other taught positions keep their current numbers unless you request that they be renumbered.

Positions can also have comments of one to 16 characters. You specify these when you add or modify positional information.

Refer to the “Planning and Creating a Program” chapter in the Setup and Operations Manual for more information on modifying the positions in your program.

5.4.  Position Confirmation

Position Confirmation provides a visual indicator (an @ symbol) on a motion line when the robot is near the position. To configure the Position Confirmation feature, set the system variable $MNDSP_POSCF using a setting in Table 3, " $MNDSP_POSCF Configuration Settings " .

Table 3.  $MNDSP_POSCF Configuration Settings

$MNDSP_POSCF Description Example Program
0 (Disabled) The “@” symbol is not displayed in the editor.
1:J P[1] 100% FINE
2:J P[2] 40% FINE        
 :  Arc Start E1[1]
3:L P[3] WELD_SPEED FINE
 :  Arc End E1[3]
4:J P[1] 100% FINE     
1 (Multiple @) The "@" symbol is displayed next to all positions if the robot is currently near those positions.
1:J @P[1] 100% FINE          
2:J  P[2] 40% FINE
 :  Arc Start E1[1]
3:L  P[3] WELD_SPEED FINE
 :  Arc End E1[3]
:J @P[1] 100% FINE        
2 (Single @) The "@" symbol is displayed next to the position of the current line if the robot is near that position.
1:J @P[1] 100% FINE
2:J  P[2] 40% FINE
 Arc Start E1[1]
3:  P[3] WELD_SPEED FINE
 :  Arc End E1[3]
4:J  P[1] 100% FINE        

5.5.  Motion Status Display

The teach pendant editor can display motion status information on each motion line. The example program shown in Figure 10, " An Example Program in Display Mode 1 " displays the distances from all the positions in the program to the current tool center point (TCP) in millimeters.

Figure 10.  An Example Program in Display Mode 1

An Example Program in Display Mode 1

The distances are updated continuously as the robot moves. This feature can be helpful while teaching or testing programs. This is display mode number 1. In this mode, the distance from the position to the TCP is displayed on multiple lines. Other display modes are available. The other modes display data only on the current motion line.

This feature is enabled and configured by setting the system variable $MNDSP_MST. After the feature is enabled and configured, it can easily be toggled ON or OFF by selecting the “Motion info” entry in the list of EDCMD commands. See Figure 11, " Motion Info is Toggled ON and OFF with EDCMD " .

Figure 11.  Motion Info is Toggled ON and OFF with EDCMD

TEST                         JOINT  10 %
                                    1/5 
   1:J @P[1] 100% FINE__________________
   2:J  P[2] 40% FINE | 1 Insert       |
    :  Arc Start[1]   | 2 Delete       |
   3:L  P[3] WELD_SPEE| 3 Copy         |
    :  Arc End[1]     | 4 Find         |
   4:J @P[1] 100% FINE| 5 Replace      |
[End]                 | 6 Renumber     |
                      | 7 Comment      |
                      | 8 Undo         |
                      | 9 Motion info  |
                      ----------+     +-

Setup

The behavior of the motion status display feature can be adjusted using the following fields in the system variable $MNDSP_MST. Refer to the System Reference Manual for more information about $MNDSP_MST.

$disp_enable turns the motion status display ON or OFF in the Editor. It is toggled by the motion status element in the EDCMD menu.

$disp_edcmd enables the display of the motion status menu choice in the EDCMD pullup menu.

$disp_inauto enables the motion status display during AUTO mode. $disp_enable must also be TRUE.

$disp_is_on indicates the motion status is displayed in the editor.

$disp_rsmdis enables display of the resume distance in the editor.

$mode_grp[1..7] is the display mode for each group. Valid modes are listed in Table 4, " Display Modes " . See Table 5, " Display Mode Examples " for an example program display for each mode.

Table 4.  Display Modes

Mode Description Header
1 Distance on ONE line P[mm to TCP G1]
2 Distance on Multiple lines P[mm to TCP G1]
3 COMMAND PERCENT P[Cmnd % G1]
4 COMMAND TIME P[Cmnd Time G1]
5 COMMAND DISTANCE P[Cmnd Dist G1]
6 COMMAND DISTANCE UP P[Cmnd D UP G1]
7 COMMAND DISTANCE DOWN P[Cmnd D DN G1]
8 COMMAND PROGRESS P[Cmnd PBar G1]
9 COMMAND PERCENT AND DISTANCE UP P[Cmnd % UP G1]
10 COMMAND PERCENT AND DISTANCE DOWN P[Cmnd % DN G1]
11 COMMAND PERCENT AND TIME P[Cmnd % T G1]
19 Travel Angle in degrees P[Travel dg G1]
20 Work Angle in degrees P[WorkXZ dg G1]
21 Current X location in world frame P[X (1) mm G1]
22 Current Y location in world frame P[Y (2) mm G1]
23 Current Z location in world frame P[Z (3) mm G1]
24 Current W orientation in world frame P[W (4) deg G1]
25 Current P orientation in world frame P[P (5) deg G1]
26 Current R orientation in world frame P[R (6) deg G1]

Comments

Positions can have comments up to 16 characters in length. When the motion status is displayed, only the first 10 characters of the comments will be visible.

Multiple Groups

When a system has multiple groups, the motion status display can display information for any of the groups. The group number is displayed in the header with a short description of the display mode. To change the selected group number, use the FCTN menu entry CHANGE GROUP. If the selected group is not in the program group mask, the lowest group number in the mask is selected for display. Each group can display data in a different mode. You can set the mode for each group using the array $mndsp_mst.$mode_grp[1..6].

Resume Distance

When a running program pauses the robot stops and the position of the robot is recorded. If the robot is moved from the recorded stop position it may return to this position when the program is resumed, depending on what options are installed. The distance the robot has moved from the stop position can be displayed in the upper left corner of the editor if the variable $mndsp_mst.$disp_rsmdis = TRUE.

Figure 12.  Resume Distance Display

Resume Distance Display

Distance Modes

Modes 1 and 2 display the distance between the program positions and the robot tool center point. The distance is along a straight line, not along the programmed path. The actual distance traveled by the robot could be greater if it involves Joint or Circular motion.

Motion Command Modes

The motion command modes 3 – 11 display the output from the motion system as it executes the current line. The timing of this data slightly precedes the actual robot position. The times and distances displayed reflect the motion command, not the real time feedback data from the motor encoder. When a motion is paused the data will remain displayed. When a motion is resumed the data displayed will reflect the motion from the stop position to the destination position.

Note

Modes 3 - 11 only display distance information for L, C, and A motion types. In modes 3 - 11, Joint motions will display an increasing percentage and total time like Mode 11.

Table 5.  Display Mode Examples

Mode Example Description
0
      P[Inv. Mode G1]
\\\1:J @P[1:          ] 100% FINE
   2:  P[2:          ] 40% FINE
    :  Arc Start[1]
   3:L  P[3:          ] WELD_SPEED FINE
    :  Arc End[1]
   4:J @P[1:          ] 100% FINE 

No motion status displayed. This is an invalid mode for this group.

In this example, group 1 is selected for display. The display mode for group 1 is specified in $MNDSP_MST.$MODE_GRP[1]. If the mode is 0, or some other mode not listed in this table, the header will indicate "Invalid Mode," and data will not be displayed in the motion lines.

1
      P[mm to TCP G1]
\\\1:J @P[1:      .000] 100% FINE
   2:J  P[2:          ] 40% FINE
    :  Arc Start[1]
   3:L  P[3:          ] WELD_SPEED FINE
    :  Arc End[1]
   4:J @P[1:          ] 100% FINE

The distance of this position from the TCP is displayed, for this line only.

In this example, $MNDSP_MST.$MODE_GRP[1] = 1. The cursor is on line 1 and the robot is at P[1]. The distance from P[1] to the robot Tool Center Point (TCP) in millimeters is displayed as 0.000. If you jog the robot away from P[1], the distance to the tool will be displayed dynamically.

2
        P[mm to TCP G1]
\\\1:J @P[1:      .000] 100% FINE
   2:J  P[2:    26.795] 40% FINE
    :  Arc Start[1]
   3:L  P[3:    11.520] WELD_SPEED FINE
    :  Arc End[1]
   4:J @P[1:      .000] 100% FINE

Distance on MULTIPLE lines.

Mode 2 is similar to mode 1. In mode 2 a distance is displayed in all the motion lines, not just the cursor line. The distance is from the recorded position to the current tool center point.

3
        P[Cmnd %    G1]
\\\3:L  P[3: 28%      ] WELD_SPEED FINE
    :  Arc End[1]                      

COMMAND PERCENT

Mode 3 displays the percentage of the motion completed while the move progresses. It is updated dynamically. If you pause execution before reaching the position and continue, the percentage will be reset to 0 and then increase to reflect the remaining motion.

4
        P[Cmnd Time G1]
\\\3:L  P[3:      2.9s] WELD_SPEED FINE
:  Arc End[1]

COMMAND TIME

Mode 4 displays the total time required for the motion to complete. If does not change dynamically, unless the speed override is changed. If the speed override is changed, the time is updated to reflect the total time for the entire motion at the new override, not the remaining time.

5
        P[Cmnd Dist G1]
\\\3:L  P[3:     24.19] WELD_SPEED FINE
    :  Arc End[1] 

COMMAND DISTANCE

Mode 5 displays the total move distance. It does not change during the motion. If you pause execution and then resume the display will change to show the distance to P[3] from the pause position.

6
        P[Cmnd D UP G1]
\\\3:L  P[3:     6.758] WELD_SPEED FINE
    :  Arc End[1]                       

COMMAND DISTANCE UP

Mode 6 is similar to mode 3. It is dynamic. It shows the distance increasing (UP) while moving to P[3]. If you pause and resume, the distance is reset to zero. If single step is active, stepping through the entire motion on line 3 to P[3], without stopping, will result in the total move distance displayed when the robot reaches P[3].

7
        P[Cmnd D DN G1]
\\\3:L  P[3:     17.43] WELD_SPEED FINE
    :  Arc End[1]                       

COMMAND DISTANCE DOWN

Mode 7 is just like mode 6 except the distance is shown decreasing (DN - down) to zero.

8
        P[Cmnd PBar G1]
\\\3:L  P[3:--        ] WELD_SPEED FINE
    :  Arc End[1]                      

COMMAND PROGRESS

Mode 8 displays a progress bar. It behaves just like the percentage of Mode 3, only graphically.

9
        P[Cmnd % UP G1]
\\\3:L  P[3: 28% 6.758] WELD_SPEED FINE
    :  Arc End[1]

COMMAND PERCENT and DISTANCE UP

Mode 9 displays both the increasing percentage of Mode 3 and the increasing distance of Mode 6.

10
        P[Cmnd % DN G1]
\\\3:L  P[3: 28% 17.43] WELD_SPEED FINE
:  Arc End[1]                      

COMMAND PERCENT and DISTANCE DOWN

Mode 10 displays both the increasing percentage of Mode 3 and the decreasing distance of Mode 7.

11
        P[Cmnd % T  G1]
\\\3:L  P[3: 28%  2.9s] WELD_SPEED FINE 
:  Arc End[1]

COMMAND PERCENT and TIME

Mode 11 displays both the increasing percentage of Mode 3 and the total time of Mode 4.

19
        P[Travel dg G1]
\\\1:J @P[1:   —10.277] 100% FINE       

Travel Angle in degrees

A negative number indicates a push angle. A positive number indicates a drag angle.

20
        P[WorkXZ dg G1]
\\\1:J @P[1:  36.832 R] 100% FINE       

Work Angle in degrees

The header WorkXZ indicates the work angle is relative to the XZ plane. WorkXY means relative to the XY plane. The letter L or R after the angle indicates the torch is to the left or right of vertical.

21
        P[X (1) mm  G1]
\\\1:J @P[1:  2070.261] 100% FINE       

Current X location in world frame

22
        P[Y (2) mm  G1]
\\\1:J @P[1:    25.242] 100% FINE

Current Y location in world frame

23
        P[Z (3) mm  G1]
\\\1:J @P[1:  1226.707] 100% FINE

Current Z location in world frame

24
        P[W (4) deg G1]
\\\1:J @P[1:    -2.027] 100% FINE     

Current W orientation in world frame

25
        P[P (5) deg G1]
\\\1:J @P[1:    19.972] 100% FINE     

Current P orientation in world frame

26
        P[R (6) deg G1]
\\\1:J @P[1:     2.375] 100% FINE     

Current R orientation in world frame


Limitations

  • Joint motions do not display distances for the Command Distance modes. Percentage and time are displayed instead.

  • Command times and distances are approximate.

  • Incremental motions do not display distance properly for modes 1 and 2.

  • Not all motion options and formats are supported.

  • The units for distance are always mm and cannot be changed.

  • Extended axes are not supported.

5.6.  Frame Number of Positional Data

The User Frame (UF) and User Tool frame number (UT) are displayed at the top of the Position Detail screen. See the following screen for an example.

P[1]  UF:0 UT:1  CONF: N 00
X    100.000    mm  W     12.555    deg
Y    100.000    mm  P      3.123    deg
Z    100.000    mm  R       .014    deg

These fields indicate the current frame number.

UF: User Frame number

  • 0 = world coordinate

  • 1-10 = normal UFRAME number

  • F = current $MNUFRAMENUM

UT: User Tool frame number

  • 0 = not valid

  • 1-10 = normal UTOOL number

  • F = current $MNUTOOLNUM

    Note

    These values cannot be modified directly from the teach pendant.

    Note

    The position register screen has UF and UT in the same area, and this value is always "F" for both.

5.7.  Speed

Speed defines how fast the robot moves to a position.

The motion type used determines the units of speed. Depending on the motion type you want, you can specify speed in millimeters per second, centimeters per minute, inches per minute, rotational degrees per second, or seconds.

When a program is running, you can change the speed override using the +% and -% keys on the teach pendant. The value ranges from .01% (very fine) to 100 percent of the programmed speed. Programmed speed is the speed specified in the program.

Note

The programmed speed cannot exceed the capability of the robot. If programmed speed cannot be met, an error will occur.

Joint motion uses

  • A percentage (%) of the total default speed. Joint motion speed can have a value of 1% to 100% of the maximum joint speed limit.

    J P[1] 50% FINE
    
  • Seconds (sec), the length of time the motion lasts. Seconds can have a value of .1 to 3200. This is used for motion that requires an exact time span. If a program is paused and then resumed during execution of motion that uses seconds, the controller will be held in a busy and running state until the portion of time that had been executed elapses again. Then, the robot will complete the motion using the remaining amount of time. See Figure 13, " Example of the Sec Speed Feature " .

    J P[1] 2 sec FINE
    
    L P[2] 2 sec FINE
    

    Figure 13.  Example of the Sec Speed Feature

    Example of the Sec Speed Feature


Linear and circular motions use

  • Millimeters per second (mm/sec), with a range of values from 1 to 2000 millimeters per second.

  • Centimeters per minute (cm/min), with a range of values from 1 to 12000 centimeters per minute.

  • Inches per minute (inch/min), with a range of values from 0.1 to 4724.41 inches per minute.

  • Seconds (sec), the length of time the motion lasts. This is used for motion that requires an exact time span. If a program is paused and then resumed during execution of motion that uses seconds, the controller will be held in a busy and running state until the portion of time that had been executed elapses again. The robot will then complete the motion using the remaining amount of time. See Figure 13, " Example of the Sec Speed Feature " .

    L P[1] 100mm/sec FINE
    

    or

    C P[1] 100mm/sec FINE
    

    Warning

    If you change the motion type of a positional instruction from linear to joint, the speed value can change from mm/sec to a default value as high as 100%. Be sure to check the speed value before you execute the instruction; otherwise, you could injure personnel or damage equipment.

    Note

    When the speed is specified in mm/sec, cm/min, or inch/min, then the value entered will represent the speed at the tool center point.

Rotational control of axes around the tool centerpoint uses rotational degrees per second (deg/sec), with a default range of values from 1 to 500 degrees per second.

L P[1] 90 deg/sec FINE

Variable Motion Speed

You can specify motion speed by using a register in a motion instruction. The value of the specified register defines motion speed. This is called variable motion speed.

Warning

Before you run a program, make sure you are aware of any register values used to set speed in a motion instruction. Otherwise, unexpected motion could occur that could injure personnel or damage equipment.

Note

A program will stop pre-execution of subsequent instructions when it reaches a motion instruction with the register speed type. This ensures the motion instruction uses the register speed type value. See Figure 14, " Variable Motion Speed Program Execution Example " .

Figure 14.  Variable Motion Speed Program Execution Example

Variable Motion Speed Program Execution Example

This feature is enabled when the system variable $RGSPD_PREXE = FALSE. You can disable this feature by setting $RGSPD_PREXE = TRUE. However, the robot will not be able to move at the speed specified by the register value.

The following examples show various motion type instructions that take their speed value from a register (R[ ]).

  • Joint motion type

    J P[2] R[1]% CNT100
    
  • Linear motion type

    L P[1] R[2]mm/sec FINE
    
  • Circular motion type

    C P[2] P[3] R[3]cm/min FINE
    
  • Palletizing

    PALLETIZING-B_1
    L PAL_1[A_1] R[4]mm/sec CNT100 
    L PAL_1[BTM] R[4]mm/sec FINE 
    L PAL_1[R_1] R[4]mm/sec CNT100
    

The following features are changed to accommodate variable motion speed:

  • Default motion instructions include an instruction that uses variable motion speed.

  • The Motion Modify screen, displayed when you select REPLACE for a motion instruction on the [EDCMD] menu, includes items for specifying variable motion speed.

  • Specific motion speed values are valid for variable motion speed. Refer to Table 6, " Range of Register Values to Specify a Variable Motion Speed " for valid variable motion speed values. If the specified register value is not a valid speed value (exceeds the speed limit or is out-of-range), an error will occur during the execution of the motion instruction.

    Table 6.  Range of Register Values to Specify a Variable Motion Speed

    Unit

    Range of Register Values

    %

    1 to 100

    Integer type

    sec

    0.1 to 3200.0

    Float type (*1)

    mm/sec

    1 to 2000

    Integer type (*2)

    cm/min

    1 to 12000

    Integer type (*2)

    inch/min

    0.1 to 4724.41

    Float type (*3)

    deg/sec

    1 to 500

    Integer type (*4)


*1 : Valid one decimal point.

*2 : The speed limit is the value of $MRR_GRP.$SPEEDLIM.

*3 : Valid one decimal point. The limit is the value of $MRR_GRP.$SPEEDLIM/25.4 * 60.

*4 : The limit is the value of $MRR_GRP.$ROTSPEEDLIM * 180/3.141.

See Figure 15, " Syntax for Changing the Motion Speed " for the syntax for changing the motion speed from a specific motion speed value to a variable (register) speed value or for changing the motion speed from a variable (register) speed value to a specific motion speed value.

Figure 15.  Syntax for Changing the Motion Speed

Syntax for Changing the Motion Speed

Use Replacing Speed Values (using Motion Modify in [EDCMD] REPLACE) to replace speed values using the Motion Modify screen in [EDCMD] REPLACE.

Procedure 1.  Replacing Speed Values (using Motion Modify in [EDCMD] REPLACE)

Conditions

  • You are currently editing a teach pendant program that contains motion instructions.

Steps

  1. Move the cursor to the line number of the instruction in which you want to replace speed values and press F5, [EDCMD].

  2. Select Replace.

    Select Replace menu 1
     Register          5 Motion modify 
    2 Call             6 
    3 I/O              7 
    4 JMP/LBL          8
    

  3. Select Motion modify. See the following screen for an example.

    Modify motion menu
    1 Replace speed     5 
    2 Replace term      6 
    3 Insert option     7 
    4 Remove option     8
    

  4. Select Replace speed. See the following screen for an example.

    Select interpolate
    1 Unspecified type  5 
    2 J                 6 
    3 L                 7 
    4 C                 8 
    RSR0001                             10% 
       1: L P[1] 20.0sec FINE 
    2: L P[2] 500mm sec FINE 
    3: L P[3] R[1]mm sec FINE 
    Select source type
    

  5. Specify the interpolation type (motion type) of the motion instruction for which you want to search:

    • Unspecified type - searches for joint, linear, and circular motion instructions

    • Joint - searches for joint motion instructions only

    • Linear - searches for linear motion instructions only

    • Circular - searches for circular motion instructions only

  6. Specify the speed type of the motion instruction you want to search for:

    • All type - searches for motion instructions that use a speed value, a variable (register) value, or an indirect variable (register) speed value.

    • Speed value - searches only for motion instructions that use a speed value.

    • R[ ] - searches only for motion instructions that use a variable (register) speed value.

    • R[R[ ]] - searches only for motion instructions that use an indirect variable (register) speed value.

      See the following screen for an example.

      Speed type menu
      1 All type          5
      2 Speed value       6
      3 R[ ]              7
      4 R[R[ ]]           8
       
      
  7. Specify the units of the replacement motion instruction.

    See the following screen for an example.

    Select motion item
    1 %                 5 deg/sec
    2 mm/sec            6 sec
    3 cm/min            7
    4 inch/min          8
     
    
  8. Select the speed type of the replacement motion instruction:

    • Speed value - changes the speed of the found (searched) motion instruction to a speed value.

    • R[ ] - changes the speed of the found (searched) motion instruction to a variable (register) speed value.

    • R[R[ ]] - changes the speed of the found (searched) motion instruction to an indirect variable (register) speed value.

      See the following screen for an example.

      Select motion item
      1 Speed value       5
      2 R[ ]              6
      3 R[R[  ]]          7
      4                   8
      
  9. If you selected R[ ] or R[R[ ]], type a register number.

  10. Select how you want the found motion instruction to be replaced:

    • F2, ALL - changes all found motion instructions below the current line to the specified speed type and value.

    • F3, YES - changes only the found motion instruction on the current line to the specified speed type and value.

    • F4, NEXT - skips the found motion instruction on the current line and searches the next motion instruction.

    • F5, EXIT - ends the motion modify operation.

      See the following screen for an example.

      RSR0001
      Modify OK ?
      
  11. Continue the search and replace operations as desired.

  12. When you are finished with all search and replace operations, press F5, EXIT.

LP[1] WELD_SPEED CNT100

Motion instructions used during welding use the WELD_SPEED parameter. WELD_SPEED is defined in the weld schedule specified by an ArcStart instruction.

You can use WELD_SPEED only for linear or circular motion. If you change the motion type of an instruction that uses WELD_SPEED from circular or linear to joint, the speed will change to 100%.

When a motion instruction that contains WELD_SPEED is executed, the speed used depends on certain conditions:

  • If the Arc START instruction is executed before executing the WELD_SPEED motion instruction, the weld speed defined in the corresponding weld schedule is used.

  • If the Arc Start instruction is not executed before executing the WELD_SPEED motion instruction, the default weld speed is used as the value of WELD_SPEED. The default weld speed is defined on the SETUP Weld System screen.

  • If the program is resumed from a WELD_SPEED motion instruction, the WELD_SPEED in effect when the program was paused is used.

  • If the following sequence is executed while the program is paused and then the program is restarted, the default weld speed is used:

    1. You step the program backward through some instructions.

    2. You move the cursor to another line in the program.

    3. You abort the program.

5.8.  Termination Type

Termination type defines how the robot ends the move in the motion instruction. The following termination types are available:

  • Fine

  • Continuous

  • Corner Region — available only if you have the constant path motion option and corner region option

  • Corner Distance — available only if you have the constant path motion option and corner distance control option

The fine and continuous termination types are described in this section. Refer to Section 6.2, " Advanced Constant Path " for information on the corner region termination type. Refer to Section 6.6, "Corner Distance Control Option" for information on the corner distance termination type.

Fine Termination Type

J P[1] 50%
FINE

Fine termination type causes the robot to stop at the destination position before moving to the next position.

Figure 16, " Robot Motion with Fine Termination Type " shows how the robot will move when you specify the fine termination type.

Figure 16.  Robot Motion with Fine Termination Type

Robot Motion with Fine Termination Type

Continuous Termination Type

J P[1] 50%
CNT50

Continuous termination type allows the robot to decelerate as it approaches the destination position but does not stop at it before it accelerates toward the next position. A value from 0 to 100 defines how close the robot comes to the destination position. At CNT0 the robot is closest, with maximum deceleration. At CNT100 the robot is farthest, with minimum deceleration.

Note

Programming certain instructions, such as WAIT, causes the robot to stop at the destination position and execute the instruction before it executes the next instruction.

Figure 17, " Robot Motion with Continuous Termination Type " shows how the robot will move with different continuous termination type values.

Figure 17.  Robot Motion with Continuous Termination Type

Robot Motion with Continuous Termination Type