DRIVEA
(Statement)
Executes the absolute motion of each axis.
DRIVEA[<Pass start displacement> ] (<Axis number>,<Axis coordinate>)[,(<Axis number>,<Axis number>)...][,<Motion option>][,NEXT]
This statement moves the axis designated by <Axis number> to the angle (DEG) designated by <Axis coordinate>.
To execute this command, it is necessary to get an arm group including a joint(s) to be moved. If a same axis is designated several times the latest designation becomes valid.
The value of <Pass start displacement> is expressed using the radius of the globe with the target position centered. If the motion instruction value is entered, the robot proceeds to the next control. Designate the value in millimeters. This value aims to change the pass start timing, and if the end of the arm enters the globe, the robot does not always proceed to the next control.
If the value is ignored, it is processed as the default value @0.
If the value is @0, the robot moves in the end movement.
If @P, it moves in the pass movement.
If @E, the robot checks the arrival at the target position with the value of the encoder and then proceeds to the next movement.
The SPEED, ACCEL, and DECEL options are available for <Motion option>.
Motion option
|
Meaning
|
---|---|
SPEED (or S)
|
Designates the movement speed. The meaning is the same as the SPEED statement.
|
ACCEL
|
Designates acceleration. The meaning is the same as the ACCEL statement. However, deceleration cannot be designated. Use the DECEL statement to designate deceleration.
|
DECEL
|
Designates deceleration. The meaning is the same as the DECEL statement.
|
If <NEXT option> is added, the robot proceeds to the next no-movement instruction without waiting for movement to finish. However, the following instructions will not be executed until robot movement ends (pass start).
Robot motion instructions (CHANGETOOL, CHANGEWORK, SPEED, JSPEED, ACCEL, JACCEL, DECEL, JDECEL), optimal carrying mass setting library (aspACLD, aspChange), arm movement library (mvSetPulseWidth, etc.)
If this command is used with the movement option, the NEXT option is no longer valid. When <NEXT option> is added and if step stop is executed in the waiting status for the next movement instruction, the robot will stop after movement ends. Care should therefore be exercised since it requires a long distance to stop.
And also, the NEXT option is no valid in the teach check mode.
If a numerical value is set to <@PassStartOffset> for the specified extended-joint, the joint will move in pass motion regardless of the entered value.
Ex1
DEFINT li1, li2, li3
|
|
DEFSNG lf1, lf2, lf3
|
|
DRIVEA (li1, 30)
|
'Moves li1 a distance of 30 degrees (deg).
|
DRIVEA (li1, lf1)
|
'Moves the axis with value li1 to the value of lf1
'from the current position.
|
DRIVEA @P (li1, 0.78RAD), (li2, lf2), (li3, lf3)
|
|
|
'Moves li1 0.78 (rad), li2 by a distance of lf2 and
'li3 by a distance of lf3 from the current position.
|
Ex2
PROGRAM PRO1
|
|
TAKEARM1
|
'Arm Group 1 involves 7th and 8th joints.
|
DRIVEA (7,30),(8,50)
|
'Operate 7th and 8th joints
|
END
|
|
In the above example, to move the 7th and/or 8th extended-joint, the program needs to get Arm Group 1 or Arm Group 2.