Skip to content

Motion Parameter Instruction Set

Setting of motion parameters

This instruction set is used to set and get the linear speed, linear acceleration, angular speed, angular acceleration, and collision stage of the end effector, set the parameter initialization of the robotic arm, set, reset, and get the DH parameters of the robotic arm, and reset the zero offset of joints.

Set the maximum linear speed of the end effector set_arm_max_line_speed

  • Input parameter
ParameterTypeDescription
set_arm_max_line_speedstringSet the maximum linear speed of the end effector.
arm_line_speedintTarget linear speed, in m/s.

WARNING

It is recommended to use the default maximum linear speed. If any changes are required, the ratio of the maximum linear acceleration to the maximum linear speed of the end effector must be ≥3, otherwise, abnormal motion may occur

  • Output parameter
ParameterTypeDescription
arm_line_speedbooltrue: setting succeeded, false: setting failed.
  • Code demo

Input

Execution: Set the maximum linear speed of the end effector to 0.5 m/s, with a resolution of 0.001 m/s.

json
{"command":"set_arm_max_line_speed","arm_line_speed":500}

Output

json
{
    "command": "set_arm_max_line_speed",
    "arm_line_speed": true
}

Set the maximum linear acceleration of the end effector set_arm_max_line_acc

  • Input parameter
ParameterTypeDescription
set_arm_max_line_accstringSet the maximum linear acceleration of the end effector.
arm_line_accintTarget linear acceleration, in m/s2.

WARNING

It is recommended to use the default maximum linear acceleration. If any changes are required, the ratio of the maximum linear acceleration to the maximum linear speed of the end effector must be ≥3, otherwise, abnormal motion may occur

  • Output parameter
ParameterTypeDescription
arm_line_accbooltrue: setting succeeded, false: setting failed.
  • Code demo

Input

Execution: Set the maximum linear acceleration of the end effector to 2 m/s2, with a resolution of 0.001 m/s2.

json
{"command":"set_arm_max_line_acc","arm_line_acc":2000}

Output

json
{
    "command": "set_arm_max_line_acc",
    "arm_line_acc": true
}

Set the maximum angular speed of the end effector set_arm_max_angular_speed

  • Input parameter
ParameterTypeDescription
set_arm_max_angular_speedstringSet the maximum angular speed of the end effector.
arm_angular_speedintTarget angular speed, in rad/s.

WARNING

It is recommended to use the default maximum angular speed. If any changes are required, the ratio of the maximum angular acceleration to the maximum angular speed of the end effector must be ≥3, otherwise, abnormal motion may occur

  • Output parameter
ParameterTypeDescription
arm_angular_speedbooltrue: setting succeeded, false: setting failed.

Input

Execution: Set the maximum angular speed of the end effector to 0.2 rad/s, with a resolution of 0.001 rad/s.

json
{"command":"set_arm_max_angular_speed","arm_angular_speed":200}

Output

json
{
    "command": "set_arm_max_angular_speed",
    "arm_angular_speed": true
}

Set the maximum angular acceleration of the end effector set_arm_max_angular_acc

  • Input parameter
ParameterTypeDescription
set_arm_max_angular_accstringSet the maximum angular acceleration of the end effector.
arm_angular_accintTarget angular acceleration, in rad/s2.

WARNING

It is recommended to use the default maximum angular acceleration. If any changes are required, the ratio of the maximum angular acceleration to the maximum angular speed of the end effector must be ≥3, otherwise, abnormal motion may occur

  • Output parameter
ParameterTypeDescription
arm_angular_accbooltrue: setting succeeded, false: setting failed.

Input

Execution: Set the maximum angular acceleration of the end effector to 4 rad/s, with a resolution of 0.001 rad/s2.

json
{"command":"set_arm_max_angular_acc","arm_angular_acc":4000}

Output

json
{
    "command": "set_arm_max_angular_acc",
    "arm_angular_acc": true
}

Set the parameter initialization of the robotic arm set_arm_init

  • Input parameter
ParameterTypeDescription
set_arm_initstringSet the parameter initialization of the robotic arm.
  • Output parameter
ParameterTypeDescription
arm_initbooltrue: setting succeeded, false: setting failed.

Input

Execution: Set the parameter initialization of the robotic arm, and the end effector parameters will be restored to defaults.

Linear speed: 0.25 m/s; linear acceleration: 1.6 m/s2
Angular speed: 0.6 rad/s; angular acceleration: 4 rad/s2

json
{ "command": "set_arm_init" }

Output

json
{
    "command": "set_arm_init",
    "arm_init": true
}

Set the collision stage set_collision_stage

  • Input parameter
ParameterTypeDescription
set_collision_stagestringSet the collision stage of the robotic arm.
collision_stageintStage: 0−8.
  • Output parameter
ParameterTypeDescription
collision_statebooltrue: setting succeeded, false: setting failed.

Input

Execution: Set the collision stage of the robotic arm to 1, the higher the stage, the more sensitive the collision detection.

json
{"command":"set_collision_stage","collision_stage":1}

Output

json
{
    "command": "set_collision_state",
    "collision_state": true
}

Get the collision stage get_collision_stage

  • Input parameter
ParameterTypeDescription
get_collision_stagestringGet the collision stage of the robotic arm.
  • Output parameter
ParameterTypeDescription
collision_stageintStage: 0−8.
  • Code demo

Input

Execution: Get the collision stage of the robotic arm.

json
{ "command": "get_collision_stage" }

Output

json
{
    "state": "get_collision_stage",
    "collision_stage": 5
}

Reset the DH parameters set_DH_data

TIP

  • This command must be used in conjunction with a measuring device to perform absolute precision compensation calculations. Configuration can only be done based on the calculation results; otherwise, it will lead to incorrect robotic arm parameters!
  • Please refer to the DH parameter table of the corresponding series of robotic arms for settings. Parameters with a value of 0 cannot be modified. For the detailed parameter table, please refer to Parameter Description.
  • Please note that for this product, the Z-axis of each joint is defined as the upward direction from the bottom of the corresponding joint.
  • Input parameter
ParameterTypeDescription
set_DH_dataintReset the DH parameters of the robotic arm.
  • Output parameter
ParameterTypeDescription
set_statebooltrue: setting succeeded, false: setting failed.
  • Code demo

Input

Execution: Set four sets of data for each joint, representing alpha, a, d, and offset.
In the demo, they are 1°, 0.002 m, 0.003 m, and 4° respectively.

6-DoF robotic arm:

json
{"command":"set_DH_data","joint_1":[1000,2000,3000,4000],"joint_2":[1000,2000,3000,4000],"joint_3":[1000,2000,3000,4000],"joint_4":[1000,2000,3000,4000],"joint_5":[1000,2000,3000,4000],"joint_6":[1000,2000,3000,4000]}

7-DoF robotic arm:

json
{"command":"set_DH_data","joint_1":[1000,2000,3000,4000],"joint_2":[1000,2000,3000,4000],"joint_3":[1000,2000,3000,4000],"joint_4":[1000,2000,3000,4000],"joint_5":[1000,2000,3000,4000],"joint_6":[1000,2000,3000,4000],"joint_7":[1000,2000,3000,4000]}

Output

json
{
    "command": "set_DH_data",
    "set_state": true
}

Get the DH parameters get_DH_data

  • Input parameter
ParameterTypeDescription
get_DH_datastringGet the DH parameters of the robotic arm.
  • Output parameter
ParameterTypeDescription
joint_1arrayEach joint has four sets of data, representing alpha, a, d, and offset. In the demo, they are 1°, 0.002 m, 0.003 m, and 4° respectively.
  • Code demo

Input

Execution: Get the DH parameters of the robotic arm.

json
{ "command": "get_DH_data" }

Output

6-DoF robotic arm:

json
{
  "command": "get_DH_data",
  "joint_1": [1000, 2000, 3000, 4000],
  "joint_2": [1000, 2000, 3000, 4000],
  "joint_3": [1000, 2000, 3000, 4000],
  "joint_4": [1000, 2000, 3000, 4000],
  "joint_5": [1000, 2000, 3000, 4000],
  "joint_6": [1000, 2000, 3000, 4000]
}

7-DoF robotic arm:

json
{
  "command":"get_DH_data",
  "joint_1":[1000,2000,3000,4000],
  "joint_2":[1000,2000,3000,4000],
  "joint_3":[1000,2000,3000,4000],
  "joint_4":[1000,2000,3000,4000],
  "joint_5":[1000,2000,3000,4000],
  "joint_6":[1000,2000,3000,4000],
  "joint_7":[1000,2000,3000,4000]
}

Reset the DH parameters of the robotic arm to defaults set_DH_data_default

  • Input parameter
ParameterTypeDescription
set_DH_datastringReset the DH parameters of the robotic arm to defaults.
  • Output parameter
ParameterTypeDescription
set_statebooltrue: setting succeeded, false: setting failed.
  • Code demo

Input

Execution: Reset the DH parameters of the robotic arm to defaults.

json
{ "command": "set_DH_data_default" }

Output

json
{
    "command": "set_DH_data_default",
    "set_state": true
}

Reset the zero offset of joints set_joint_zero_offset

Reset the zero offset of the joint angle to correct the absolute positioning accuracy.

  • Input parameter
ParameterTypeDescription
set_joint_zero_offsetintReset the zero offset of the joint angle.

WARNING

This command cannot be used directly by the user. It is used only with the measuring equipment for absolute accuracy compensation, otherwise the parameter error of the robotic arm will occur.

  • Output parameter
ParameterTypeDescription
set_statebooltrue: setting succeeded, false: setting failed.
  • Code demo

Input

Execution: Set the zero offset of joints, with an accuracy of 0.001° as follows: zero offset of joints 1−6: 1°, -2°, 3°, -4°, 5°, and -6°.

json
{"command":"set_joint_zero_offset","offset":[1000,-2000,3000,-4000,5000,-6000]}

Output

json
{
    "command": "set_joint_zero_offset",
    "set_state": true
}

Getting of motion parameters

This instruction set is used to get the maximum linear speed, linear acceleration, angular speed, and angular acceleration of the end effector.

Get the maximum linear speed of the end effector get_arm_max_line_speed

  • Input parameter
ParameterTypeDescription
get_arm_max_line_speedstringGet the maximum linear speed of the end effector.
  • Output parameter
ParameterTypeDescription
arm_max_line_speedintReturn the maximum linear speed of the end effector.
  • Code demo

Input

Execution: Get the maximum linear speed of the end effector.

json
{ "command": "get_arm_max_line_speed" }

Output

Return 0.5 m/s, with a resolution of 0.001 m/s as the maximum linear speed of the end effector.

json
{
    "state": "arm_max_line_speed",
    "arm_line_speed": 500
}

Get the maximum linear acceleration of the end effector get_arm_max_line_acc

  • Input parameter
ParameterTypeDescription
get_arm_max_line_accstringGet the maximum linear acceleration of the end effector.
  • Output parameter
ParameterTypeDescription
arm_max_line_accintReturn the maximum linear acceleration of the end effector.
  • Code demo

Input

Execution: Get the maximum linear acceleration of the end effector.

json
{ "command": "get_arm_max_line_acc" }

Output

Return 0.2 m/s2, with a resolution of 0.001 m/s2 as the maximum linear acceleration of the end effector.

json
{
    "state": "arm_max_line_acc",
    "arm_line_acc": 200
}

Get the maximum angular speed of the end effector get_arm_max_angular_speed

  • Input parameter
ParameterTypeDescription
get_arm_max_angular_speedstringGet the maximum angular speed of the end effector.
  • Output parameter
ParameterTypeDescription
arm_max_angular_speedintReturn the maximum angular speed of the end effector.
  • Code demo

Input

Execution: Get the maximum angular speed of the end effector.

json
{ "command": "get_arm_max_angular_speed" }

Output

Return 1 rad/s, with a resolution of 0.001 rad/s as the maximum angular speed of the end effector.

json
{
    "state": "arm_max_angular_speed",
    "arm_angular_speed": 1000
}

Get the maximum angular acceleration of the end effector get_arm_max_angular_acc

  • Input parameter
ParameterTypeDescription
get_arm_max_angular_accstringGet the maximum angular acceleration of the end effector.
  • Output parameter
ParameterTypeDescription
arm_max_angular_accintReturn the maximum angular acceleration of the end effector.
  • Code demo

Input

Execution: Get the maximum angular acceleration of the end effector.

json
{ "command": "get_arm_max_angular_acc" }

Output

Return 10 rad/s2, with a resolution of 0.001 rad/s2 as the maximum angular acceleration of the end effector.

json
{
    "state": "arm_max_angular_acc",
    "arm_angular_acc": 10000
}