Data Structures
1 xCoreSDK Error Code ErrorCode
int value_ # Error code value
String^ message_ # Error message
2 Robot Basic Information, Loaded After Establishing Robot Connection Info
String^ id # Robot uid, can be used to distinguish connected robots
String^ mac # Mac address
String^ version # Controller version
String^ type # Robot model name
Int32 joint_num # Number of axes
3 Coordinate System Frame
array<double>^ trans # Translation [X, Y, Z], unit: meters
array<double>^ rpy # Euler angles [Rx, Ry, Rz], unit: radians
4 Cartesian Point CartesianPosition
Type type # Offset type
Frame^ frame # Offset relative to specified tool/workpiece coordinate system
double elbow # Elbow angle, applicable to 7-axis robots, unit: radians
List<int>^ confData # Axis configuration data, [cf1, cf2, cf3, cf4, cf5, cf6, cf7, cfx]
List<double>^ external # External joint values, unit: radians|meters. Rail unit is meters
5 Joint Point JointPosition
List<double>^ joints # Joint angle values, unit: radians
List<double>^ external # External joint values, unit: radians|meters. Rail unit is meters
6 Non-real-time Motion Command MoveCommand
CartesianPosition^ cartTarget # Target Cartesian point
JointPosition^ jointTarget # Target joint point
CartesianPosition^ auxPoint # Auxiliary point
double speed # Robot end maximum linear speed, unit mm/s. See setDefaultSpeed
double jointSpeed # Effective when >=0; when <0, still use joint speed percentage calculated from speed, used for joint type commands, range [0, 1].
double rotSpeed # Effective when >=0; when <0, rotation speed defaults to 200°/s spatial rotation speed, used for end type commands, unit rad/s.
double zone # Turn zone radius size, unit mm. See setDefaultZone
String^ customInfo # Custom information, can be returned in motion information feedback
List<double>^ args # Other motion command parameters
7 Load Information Load
double mass # Load mass, unit: kilograms
array<double>^ cog # Center of mass [x, y, z], unit: meters
array<double>^ inertia # Inertia [ix, iy, iz, ixy, ixz, iyz], unit: kg·m²
8 State List StateList
JointPosition^ jointPos # Joint position
CartesianPosition^ cartPos # Cartesian position
List<bool>^ di # Digital input signals
List<bool>^ do # Digital output signals
List<double>^ ai # Analog input signals
List<double>^ ao # Analog output signals
OperateMode opMode # Operation mode
PowerState pwrState # Power state
OperationState opState # Operation state
StopLevel stopLevel # Stop level
float speedRatio # Speed ratio
float curJntSpeed # Current joint speed
array<double>^ jointVel # Joint velocities
array<double>^ jointTorque # Joint torques
array<double>^ extJoints # External joint positions
array<double>^ extJointsVel # External joint velocities
array<double>^ extJointsTorque # External joint torques
9 Tool/Workpiece Set Toolset
WorkToolInfo^ tool # Tool information
WorkToolInfo^ wobj # Workpiece information
10 Coordinate System Calibration Result FrameCalibrationResult
Frame^ frame # Calibration result
array<double>^ error # Calibration error
11 Log Information LogInfo
LogInfo::Level level # Log level
String^ message # Log message
String^ timestamp # Timestamp
12 RL Project Information RLProjectInfo
String^ name # Project name
List<String^>^ tasks # Task names in project
13 Tool/Workpiece Information WorkToolInfo
String^ name # Name
Frame^ frame # Coordinate system
Load^ load # Load information
bool isHeld # true - Handheld | false - External