Skip to content

Status

Collision Detection Status

Query Collision Detection Status

Command Word: 0x3200

FieldTypeDescription
clearintWhether to clear the difference between theoretical torque and actual torque, range [0, 1]
json
{
  "clear": 0
}

Controller Response

Command Word: 0x3201

FieldTypeDescription
Difference_torqdouble[]Difference between theoretical and feedback values, length 7
actual_torqdouble[]Torque feedback value list, length 7
detect_torqdouble[]Collision detection threshold list, length 7
max_torqdouble[]Interpolation peak list, length 7
target_torqdouble[]Torque theoretical value list, length 7
json
{
  "Difference_torq": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "actual_torq": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "detect_torq": [50.0, 50.0, 50.0, 50.0, 50.0, 50.0, 0.0],
  "max_torq": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "target_torq": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
}

Command Execution Percentage

Query Motion Command Completion Percentage

Command Word: 0x3202

  • No data needs to be sent

Controller Response

Command Word: 0x3203

FieldTypeDescription
completionRatiodoubleExecution percentage, range [0, 1], maximum value is 1
json
{
  "completionRatio": 0.11
}

Current Position

Query Robot Coordinate Position

Command Word: 0x3210

FieldTypeDescription
coordintQuery current coordinate position, range [0, 4]: 0 Joint, 1 Cartesian, 2 Tool, 3 User, 4 Motor
robotintCurrent robot number, range [1, 4]
json
{
  "coord": 0,
  "robot": 1
}

Controller Response

Command Word: 0x3212

FieldTypeDescription
configurationintCurrent position posture value, range [0, 8]
coordintCurrent position coordinate type, range [0, 4]: 0 Joint, 1 Cartesian, 2 Tool, 3 User, 4 Motor
posdouble[]Current position information in radians
posDegdouble[]Current position information in degrees
robotintCurrent robot number, range [1, 4]
json
{
  "configuration": 8,
  "coord": 0,
  "pos": [0.8047034822, 0.0, 0.0, 0.033915260824, 0.0, -0.008860939141, 0.0],
  "posDeg": [0.8047034822, 0.0, 0.0, 0.033915260824, 0.0, -0.008860939141, 0.0],
  "robot": 1
}

Controller Response

Command Word: 0x3213

FieldTypeDescription
coordintCurrent position coordinate type, range [0, 4]: 0 Joint, 1 Cartesian, 2 Tool, 3 User, 4 Motor
isDegintWhether in degrees, range [0, 1]
positiondouble[]Current position information in radians
positionDegdouble[]Current position information in degrees
postureintCurrent position posture value, range [0, 8]
robotintCurrent robot number, range [1, 4]
json
{
  "coord": 0,
  "isDeg": 0,
  "position": [0.8047034822, 0.0, 0.0, 0.033915260824, 0.0, -0.008860939141, 0.0],
  "positionDeg": [0.8047034822, 0.0, 0.0, 0.033915260824, 0.0, -0.008860939141, 0.0],
  "posture": 8,
  "robot": 1
}

Note: Controller replies to host computer with robot coordinate position (0x3211)

Query Robot Coordinate Position in Dual-Robot Collaboration

Command Word: 0x3214

FieldTypeDescription
coord1intCoordinate type for getting robot 1 position, range [0, 3]: 0 Joint, 1 Cartesian, 2 Tool, 3 User
coord2intCoordinate type for getting robot 2 position, range [0, 3]: 0 Joint, 1 Cartesian, 2 Tool, 3 User
robot1intFirst robot number in dual-robot collaboration, range [1, 4], default 1
robot2intSecond robot number in dual-robot collaboration, range [1, 4], default 2
json
{
  "coord1": 1,
  "coord2": 1,
  "robot1": 1,
  "robot2": 2
}

Controller Response

Command Word: 0x3215

FieldTypeDescription
coord1intCoordinate type for robot 1 position, range [0, 3]
coord2intCoordinate type for robot 2 position, range [0, 3]
pos1double[]Robot 1 coordinates in radians
pos1Degdouble[]Robot 1 coordinates in degrees
pos2double[]Robot 2 coordinates in radians
pos2Degdouble[]Robot 2 coordinates in degrees
robot1intFirst robot number in dual-robot collaboration, default 1
robot2intSecond robot number in dual-robot collaboration, default 2
json
{
  "coord1": 0,
  "coord2": 0,
  "pos1": [-0.0, 0.0, 3.077931758984, -0.0, 0.0, -0.0, 0.0],
  "pos1Deg": [-0.0, 0.0, 3.077931758984, -0.0, 0.0, -0.0, 0.0],
  "pos2": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "pos2Deg": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "robot1": 1,
  "robot2": 2
}

Motor Load Value

Query Robot Motor Torque Overload Value

Command Word: 0x3220

FieldTypeDescription
robot_numintQuery robot number, range [1, 4]
json
{
  "robot_num": 1
}

Controller Response

Command Word: 0x3221

FieldTypeDescription
torq_limit_enableboolMotor overload protection enable
torq_limit_min_ensure_timedoubleMotor overload protection minimum confirmation time, range [10, 9999], unit ms
torq_limit_robotdouble[]Motor torque overload value list, unit ‰, length is the number of axes of the current robot
torq_limit_syncdouble[]External axis motor torque overload value list, unit ‰, length is the number of external axes bound to the current robot
json
{
  "torq_limit_enable": false,
  "torq_limit_min_ensure_time": 10,
  "torq_limit_robot": [800.0, 1400.0, 1000.0, 1200.0, 800.0, 700.0],
  "torq_limit_sync": [-0.0, -0.0, 0.0, 0.0, -0.0]
}

Axis Speed

Query Robot Axis Speed

Command Word: 0x3230

FieldTypeDescription
robotintCurrent robot number, range [1, 4]
json
{
  "robot": 1
}

Controller Response

Command Word: 0x3231

FieldTypeDescription
actualLineVeldoubleRobot end current linear velocity, unit mm/s
axisActualVeldouble[]Robot each axis current speed list, unit °/s, length 7
axisActualVelSyncdouble[]Robot external axis each axis current speed list, unit °/s, length 5
maxActualLineVeldoubleRobot end maximum linear velocity, unit mm/s
maxAxisActualVeldouble[]Robot each axis maximum speed list, unit °/s, length 7
maxAxisActualVelSyncdouble[]Robot external axis each axis maximum speed list, unit °/s, length 5
robotintCurrent robot number, range [1, 4]
json
{
  "actualLineVel": 0.0,
  "axisActualVel": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "axisActualVelSync": [0.0, 0.0, 0.0, 0.0, 0.0],
  "maxActualLineVel": 0.0,
  "maxAxisActualVel": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "maxAxisActualVelSync": [0.0, 0.0, 0.0, 0.0, 0.0],
  "robot": 1
}

Fude Servo Temperature

Exclusive feature for Fude servo

Query Whether Fude Servo Temperature Exists

Command Word: 0x3250

FieldTypeDescription
robotintCurrent robot number, range [1, 4]
json
{
  "robot": 1
}

Controller Response

Command Word: 0x3251

FieldTypeDescription
IsExistboolWhether Fude servo temperature exists
json
{
  "IsExist": false
}

Controller Sends Delay Time Response to Teach Pendant

Command Word: 0x3252

FieldTypeDescription
delaytimedoubleDelay time, unit s
robotintCurrent robot number, range [1, 4]
json
{
  "delaytime": 4,
  "robot": 1
}

Motor Status

Motor parameter query; servo temperature is only available when Fude servo temperature exists

Query Robot Motor Speed

Command Word: 0x3260

FieldTypeDescription
robotintCurrent robot number, range [1, 4]
json
{
  "robot": 1
}

Controller Response

Command Word: 0x3261

FieldTypeDescription
maxVeldouble[]Robot maximum motor speed list, unit rpm, length 7
maxVelSyncdouble[]Robot external axis maximum motor speed list, unit rpm, length 5
robotintCurrent robot number, range [1, 4]
veldouble[]Robot current motor speed list, unit rpm, length 7
velSyncdouble[]Robot external axis current motor speed list, unit rpm, length 5
slave_veldouble[][]Robot master and slave axis motor speed list, unit rpm, 7 elements each containing 4 elements (1st: master axis, 2-4: slave axes)
slave_max_veldouble[][]Robot master and slave axis maximum motor speed list, unit rpm
slave_vel_syncdouble[][]Robot external axis master and slave axis motor speed list, unit rpm, 5 elements each containing 4 elements
slave_max_vel_syncdouble[][]Robot external axis master and slave axis maximum motor speed list, unit rpm
json
{
  "maxVel": [0, 0, 0, 0, 0, 0, 0],
  "maxVelSync": [0, 0, 0, 0, 0],
  "robot": 1,
  "vel": [0, 0, 0, 0, 0, 0, 0],
  "velSync": [0, 0, 0, 0, 0],
  "slave_vel": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_max_vel": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_vel_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_max_vel_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
}

Query Robot Motor Torque

Command Word: 0x3262

FieldTypeDescription
robotintCurrent robot number, range [1, 4]
json
{
  "robot": 1
}

Controller Response

Command Word: 0x3263

FieldTypeDescription
maxTheoTorqdouble[]Robot maximum motor theoretical torque list, unit ‰, length 7
maxTorqdouble[]Robot maximum motor torque list, unit ‰, length 7
maxTorqSyncdouble[]Robot external axis maximum motor torque list, unit ‰, length 5
robotintCurrent robot number, range [1, 4]
theoTorqdouble[]Robot current motor theoretical torque list, unit ‰, length 7
torqdouble[]Robot current motor torque list, unit ‰, length 7
torqSyncdouble[]Robot external axis current motor torque list, unit ‰, length 5
slave_torqdouble[][]Robot master and slave axis motor torque list, unit ‰, 7 elements each containing 4 elements (1st: master axis, 2-4: slave axes)
slave_max_torqdouble[][]Robot master and slave axis motor maximum torque list, unit ‰
slave_torq_syncdouble[][]Robot external axis master and slave axis motor torque list, unit ‰, 5 elements each containing 4 elements
slave_max_torq_syncdouble[][]Robot external axis master and slave axis maximum motor torque list, unit ‰
json
{
  "maxTheoTorq": [0, 0, 0, 0, 0, 0, 0],
  "maxTorq": [0, 0, 0, 0, 0, 0, 0],
  "maxTorqSync": [0, 0, 0, 0, 0],
  "robot": 1,
  "theoTorq": [0, 0, 0, 0, 0, 0, 0],
  "torq": [0, 0, 0, 0, 0, 0, 0],
  "torqSync": [0, 0, 0, 0, 0],
  "slave_torq": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_max_torq": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_torq_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_max_torq_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
}

Query Robot Motor Load Rate

Command Word: 0x3264

FieldTypeDescription
robotintCurrent robot number, range [1, 4]
json
{
  "robot": 1
}

Controller Response

Command Word: 0x3265

FieldTypeDescription
externalOverloaddouble[]Robot external axis current motor load list, unit ‰, length 5
robotintCurrent robot number, range [1, 4]
robotOverloaddouble[]Robot current motor load list, unit ‰, length 7
slave_motor_rbt_over_loaddouble[][]Robot master and slave axis motor load list, unit ‰, 7 elements each containing 4 elements (1st: master axis, 2-3: slave axes)
slave_motor_sync_over_loaddouble[][]Robot external axis master and slave axis motor load list, unit ‰, 5 elements each containing 4 elements
json
{
  "externalOverload": [0.0, 0.0, 0.0, 0.0, 0.0],
  "robot": 1,
  "robotOverload": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "slave_motor_rbt_over_load": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_motor_sync_over_load": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
}

Query Robot Encoder Position

Command Word: 0x3266

FieldTypeDescription
robotintCurrent robot number, range [1, 4]
json
{
  "robot": 1
}

Controller Response

Command Word: 0x3267

FieldTypeDescription
realitydouble[]Robot encoder position actual value list, length 7
realitySyncdouble[]Robot external axis encoder position actual value list, length 5
robotintCurrent robot number, range [1, 4]
targetdouble[]Robot encoder position target value list, length 7
targetSyncdouble[]Robot external axis encoder position target value list, length 5
slave_realitydouble[][]Robot master and slave axis encoder position actual value list, 7 elements each containing 4 elements
slave_targetdouble[][]Robot master and slave axis encoder position target value list
slave_reality_syncdouble[][]Robot external axis master and slave axis encoder position actual value list, 5 elements each containing 4 elements
slave_target_syncdouble[][]Robot external axis master and slave axis encoder position target value list
json
{
  "reality": [0, 0, 0, 0, 0, 0, 0],
  "realitySync": [0, 0, 0, 0, 0],
  "robot": 1,
  "target": [0, 0, 0, 0, 0, 0, 0],
  "targetSync": [0, 0, 0, 0, 0],
  "slave_reality": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_target": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_reality_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_target_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
}

PDO Operation

Note: 5 elements represent the robot's 5 external axes; each element contains 4 sub-elements, 1st: master axis, 2-4: slave axes

Host Sends Write PDO

Command Word: 0x2056

FieldTypeDescription
axisNumuintSlave station number
indexuintCommand word code
subindexuintSub-command code
sizeuintNumber of bits
value-Value to write
json
{
  "axisNum": 1,
  "index": 0x0006,
  "subindex": 0,
  "size": 16,
  "value": 6
}

Motor Current Query

Query Robot Motor Current

Command Word: 0x3268

  • No data needs to be sent

Controller Response

Command Word: 0x3269

FieldTypeDescription
currentdouble[]Robot motor current list, unit ‰, length 7
max_currentdouble[]Robot maximum motor current list, unit ‰, length 7
robotintCurrent robot number, range [1, 4]
sync_currentdouble[]Robot external axis motor current list, unit ‰, length 5
sync_max_currentdouble[]Robot external axis maximum motor current list, unit ‰, length 5
slave_currentdouble[][]Robot master and slave axis motor maximum current list, 7 elements each containing 4 elements
slave_max_currentdouble[][]Robot external axis master and slave axis motor current list, 7 elements
slave_sync_max_currentdouble[][]Robot external axis master and slave axis motor maximum current list, 5 elements
json
{
  "current": [0,0,0,0,0,0,0],
  "max_current": [0,0,0,0,0,0,0],
  "robot": 1,
  "sync_current": [0,0,0,0,0],
  "sync_max_current": [0,0,0,0,0],
  "slave_current": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
  "slave_max_current": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
  "slave_sync_max_current": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]]
}

Motor Temperature Query

Query Robot Motor Temperature

Command Word: 0x326A

  • No data needs to be sent

Controller Response

Command Word: 0x326B

FieldTypeDescription
temperaturedouble[]Robot motor temperature list, unit °C, length 7
maxTemperaturedouble[]Robot maximum motor temperature list, unit °C
temperatureSyncdouble[]Robot external axis motor temperature list, unit °C
maxtemperatureSyncdouble[]Robot external axis maximum motor temperature list, unit °C
slave_temperaturedouble[][]Robot master and slave axis servo temperature list, 7 elements
slave_temperature_maxdouble[][]Robot master and slave axis servo maximum temperature list, 7 elements
slave_temperature_sync_outdouble[][]Robot external axis master and slave axis servo temperature list, 5 elements
slave_temperature_sync_out_maxdouble[][]Robot external axis master and slave axis servo maximum temperature list, 5 elements
json
{
  "temperature": [0.0,0.0,0.0,0.0,0.0,0.0,0.0],
  "maxTemperature": [0.0,0.0,0.0,0.0,0.0,0.0,0.0],
  "temperatureSync": [0.0,0.0,0.0,0.0,0.0],
  "maxtemperatureSync": [0.0,0.0,0.0,0.0,0.0],
  "slave_temperature": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
  "slave_temperature_max": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
  "slave_temperature_sync_out": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
  "slave_temperature_sync_out_max": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]]
}