Skip to main content
Skip table of contents

movel()

Features

The robot moves along the straight line to the target position (pos) within the task space.

Parameters

Parameter Name

Data Type

Default Value

Description

pos

posx

-

posx or

position list

list (float[6])

vel (v)

float

None

velocity or

velocity1, velocity2

list (float[2])

None

acc (a)

float

None

acceleration or

acceleration1, acceleration2

list (float[2])

None

time (t)

float

None

Reach time [sec]

  • If the time is specified, values are processed based on time, ignoring vel and acc.

radius (r)

float

None

Radius for blending

ref

int

None

reference coordinate

  • DR_BASE: base coordinate
  • DR_WORLD: world coordinate
  • DR_TOOL: tool coordinate
  • user coordinate: user defined

mod

int

DR_MV_MOD_ABS

Movement basis

  • DR_MV_MOD_ABS : Absolute
  • DR_MV_MOD_REL : Relative

ra

int

DR_MV_RA_DUPLICATE

Reactive motion mode

  • DR_MV_RA_DUPLICATE: duplicate
  • DR_MV_RA_OVERRIDE: override

app_type

int

DR_MV_APP_NONE

Application mode

  • DR_MV_APP_NONE: No application related
  • DR_MV_APP_WELD: Welding application related

Note

  • Abbreviated parameter names are supported. (v:vel, a:acc, t:time, r:radius)
  • _global_velx is applied if vel is None. (The initial value of _global_velx is 0.0 and can be set by set_velx.)
  • _global_accx is applied if acc is None. (The initial value of _global_accx is 0.0 and can be set by set_accx.)
  • If an argument is inputted to vel (e.g., vel=30), the input argument corresponds to the linear velocity of the motion while the angular velocity is determined proportionally to the linear velocity.
  • If an argument is inputted to acc (e.g., acc=60), the input argument corresponds to the linear acceleration of the motion while the angular acceleration is determined proportionally to the linear acceleration.
  • If the time is specified, values are processed based on time, ignoring vel and acc.
  • If the time is None, it is set to 0.
  • If the radius is None, it is set to the blending radius in the blending section and 0 otherwise.
  • _g_coord is applied if the ref is None. (The initial value of _g_coord is DR_BASE, and it can be set by the set_ref_coord command.)
  • If ‘app_type’ is ‘DR_MV_APP_WELD’, parameter ‘vel’ is internally replaced by the speed setting entered in app_weld_set_weld_cond(), not the input value of ‘vel’.
  • If a new motion (following motion) is executed before the motion being executed (previous motion) is completed, the previous motion and the following motion are smoothly connected (Motion Blending). It is possible to set the option ra, which can determine whether to maintain or cancel the target of the previous motion, for the following motion. (Maintain: ra=DR_MV_RA_DUPLICATE / Cancel: ra=DR_MV_RA_OVERRIDE) For example, in the figure below, if the following motion is executed at the “2nd motion event” point of a previous motion with the target, “Target#1,” and if the option ra=DR_MV_RA_DUPLICATE is set for the following motion, the motion will follow the orange trajectory, as the motion maintains the target of the previous motion, and if option ra=DR_MV_RA_OVERRIDE is set for the following motion, the motion will follow the green trajectory, as it cancels the target of the previous motion.

Caution

If the following motion is blended with the conditions of ra=DR_MV_RA_DUPLICATE and radius>0, the preceding motion can be terminated when the following motion is terminated while the remaining motion time determined by the remaining distance, velocity, and acceleration of the preceding motion is greater than the motion time of the following motion. Refer to the following image for more information.

  • In versions below SW V2.8, if the blending radius exceeds 1/2 of the total moving distance, the motion is not operated because it affects the motion after blending, and the running task program is terminated when a blending error occurs
  • In SW V2.8 or later, if the blending radius exceeds 1/2 of the total moving distance, the blending radius size is automatically changed to 1/2 of the total moving distance, and the change history can be checked in the information log message.

Return

ValueDescription

0

Success

Negative value

Failed

Exception

ExceptionDescription

DR_Error (DR_ERROR_TYPE)

Parameter data type error occurred

DR_Error (DR_ERROR_VALUE)

Parameter value is invalid

DR_Error (DR_ERROR_RUNTIME)

C extension module error occurred

DR_Error (DR_ERROR_STOP)

Program terminated forcefully

Example

PY
P0 = posj(0,0,90,0,90,0)
movej(P0, v=30, a=30)
P1 = posx(400,500,800,0,180,0)
P2 = posx(400,500,500,0,180,0)
P3 = posx(30,30,30,0,0,0)
movel(P1, vel=30, acc=100)        
	# Moves to the P1 position with a velocity of 30(mm/sec) and acceleration of 100(mm/sec2).
movel(P2, time=5)                       
	# Moves to the P2 position with a reach time of 5 sec.
movel(P3, time=5, ref=DR_TOOL, mod=DR_MV_MOD_REL) 
	# Moves the robot from the start position to the relative position of P3 in the tool coordinate system
	# with a reach time of 5 sec.
movel(P2, time=5, r=10) 
	# Moves the robot to the P2 position with a reach time of 5 seconds, 
	# and the next motion is executed when the distance from the P2 position is 10mm.

Related commands

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.