Move SX Command
Overview
Move SX Command is the motion command that can help the robot to move along a spline curve path that connects the current position to the target position (the last waypoint in pos_list) via the waypoints of the task space input in pos_list.
The input velocity/acceleration means the maximum velocity/acceleration in the path.
Besides, the constant velocity motion is performed with the input velocity according to the condition if the option for the constant speed motion is selected.
Property
Annotation
You can insert text in the description, unique meaning, or nickname for each Parameter to differentiate with many DRL Components.
Parameters
In Parameter Panel, it will help you create or select your variable to define the parameter of the chosen command.
For detailed DRL description other than parameter, please refer to the following online manual link: https://manual.doosanrobotics.com/help/programming/2.9/publish/en_us/movesx-13682540.html.
Parameter Name | Data Type | Default Value | Description |
pos_list | list (posx) | - | posx list |
vel (v) | float | None | velocity 또는 velocity1, velocity2 |
list (float[2]) | |||
acc (a) | float | None | acceleration 또는 acceleration1, acceleration2 |
list (float[2]) | |||
time (t) | float | None | 도달 시간 [sec] |
ref | int | None | reference coordinate
|
mod | int | DR_MV_MOD_ABS | 이동 기준
|
vel_opt | int | DR_MVS_VEL_NONE | 속도 옵션
|
Example
DRL Code
#CASE 1) Absolute coordinate input (mod= DR_MV_MOD_ABS)
P0 = posj(0,0,90,0,90,0)
movej(P0, v=30, a=30)
x0 = posx(600, 43, 500, 0, 180, 0) # Defines the posx variable (space coordinate/pose) x0.
movel(x0, vel=100, acc=200) # Linear movement to the initial position x0
x1 = posx(600, 600, 600, 0, 175, 0) # Defines the posx variable (space coordinate/pose) x1.
x2 = posx(600, 750, 600, 0, 175, 0)
x3 = posx(150, 600, 450, 0, 175, 0)
x4 = posx(-300, 300, 300, 0, 175, 0)
x5 = posx(-200, 700, 500, 0, 175, 0)
x6 = posx(600, 600, 400, 0, 175, 0)
xlist = [x1, x2, x3, x5, x6] # Defines the list (xlist) which is a set of x1-x6 as the waypoints.
movesx(xlist, vel=[100, 30], acc=[200, 60], vel_opt=DR_MVS_VEL_NONE)
# Moves the spline curve that connects the waypoints defined in the xlist
# with a maximum velocity of 100, 30(mm/sec, deg/sec) and maximum acceleration of 200(mm/sec2) and
# 60(deg/sec2).
movesx(xlist, vel=[100, 30], acc=[200, 60], time=5, vel_opt=DR_MVS_VEL_CONST)
# Moves the spline curve that connects the waypoints defined in the xlist
# with a constant velocity of 100, 30(mm/sec, deg/sec).
#CASE 2) Relative coordinate input (mod= DR_MV_MOD_REL)
P0 = posj(0,0,90,0,90,0)
movej(P0)
x0 = posx(600, 43, 500, 0, 180, 0) # Defines the posx variable (space coordinate/pose) x0.
movel(x0, vel=100, acc=200) # Linear movement to the initial position x0
dx1 = posx(0, 557, 100, 0, -5, 0)
# Definition of relative coordinate dx1 to x0 (Homogeneous transformation of dx1 based in x1= x0)
dx2 = posx(0, 150, 0, 0, 0, 0)
# Definition of relative coordinate dx2 to x1 (Homogeneous transformation of dx2 based in x2= x1)
dx3 = posx(-450, -150, -150, 0, 0, 0)
# Definition of relative coordinate dx3 to x2 (Homogeneous transformation of dx3 based in x3= x2)
dx4 = posx(-450, -300, -150, 0, 0, 0)
# Definition of relative coordinate dx4 to x3 (Homogeneous transformation of dx4 based in x4= x3)
dx5 = posx(100, 400, 200, 0, 0, 0)
# Definition of relative coordinate dx5 to x4 (Homogeneous transformation of dx5 based in x5= x4)
dx6 = posx(800, -100, -100, 0, 0, 0)
# Definition of relative coordinate dx6 to x5 (Homogeneous transformation of dx6 based in x6= x5)
dxlist = [dx1, dx2, dx3, dx4, dx5, dx6]
# Defines the list (dxlist) which is a set of dx1-dx6 as the waypoints.
movesx(dxlist, vel=[100, 30], acc=[200, 60], mod= DR_MV_MOD_REL, vel_opt=DR_MVS_VEL_NONE)
# Moves the spline curve that connects the waypoints defined in the dxlist
# with a maximum velocity of 100, 30 (mm/sec, deg/sec)
# and maximum acceleration of 200(mm/sec2), and 60(deg/sec2) (same motion as CASE-1).