Interface Communication Command Specification
|
Port 5700
Automation Communication Protocol - Epic Pro acts as the server (Port 5700).

Single Commands
Action |
Command |
Response |
||
---|---|---|---|---|
Capture Photo |
110,cameraID 110,cameraID1,cameraID2… (If only 110 is provided, the first camera is used by default) |
Success: 110,cameraID Failure: 000,errorCode,cameraID |
||
Detection |
Normal Detection: 120,requestedPoseCount,0 Grab Path Planning Only: 120,grabPathCount,0 With Retreat Path Planning: 120,grabPathCount,retreatPathCount |
Success: CommandCode=120 Case 1 (Normal Detection/Collision Detection): commandCode,poseType(Cartesian 0/Joint 1),sentPoseCount(n),objectWithGrabCount,totalGrabPointCount,currentSpaceID,currentObjectID,currentGrabPointIndex(index of current grab point in all grab points list),currentGrabPointSeq(sequence number in grab point editing tool),reservedProStatus(0 if not available),0,0,pose*n Case 2 (Path Planning): commandCode,poseType(Cartesian 0/Joint 1),sentPoseCount(n),objectWithGrabCount,totalGrabPointCount,currentSpaceID,currentObjectID,currentGrabPointIndex(index of current grab point in all grab points list),currentGrabPointSeq(sequence number in grab point editing tool),reservedProStatus(0 if not available),0,0,pose*n The interface point cloud updates; for collision detection or path planning, the robot state also changes.
Failure: 000,Robot Status Code |
||
Switch Object in Space |
130,spaceID,objectID |
Success: 130 Failure: 000,Robot Status Code |
||
Robot Photo Pose (Eye-on-Hand) |
140,cameraID,X,Y,Z,orientation (Quaternion parsed in the order W,X,Y,Z) |
Success: 140,cameraID Failure: 000,Robot Status Code |
||
Restart Vision Software |
307 |
Command Received: 307 |
||
Shut Down Industrial PC |
886 |
Command Received: 886 |
Shortcut Commands
Action |
Command |
Return Information |
---|---|---|
Photo + Detection |
Normal detection: 220,pick point count,0 Pick path planning only: 220,pick path point count,0 With retract path planning: 220,pick path point count,retract path point count |
Success: Command code=220 Case 1 (Normal detection/Collision detection): Command code,pose type (Cartesian 0/Joint 1),number of poses sent n,number of objects with pick points,total number of detected pick points,current space ID,current object ID,current pick point index (index of current pick point in all pick points list),current pick point sequence number (sequence number displayed in pick point editing tool),reserved ProStatus status information (fill with 0 if no information),0,0,pose*n Case 2 (Path planning): Command code,pose type (Cartesian 0/Joint 1),number of poses sent n,number of objects with pick points,total number of detected pick points,current space ID,current object ID,current pick point index (index of current pick point in all pick points list),current pick point sequence number (sequence number displayed in pick point editing tool),reserved ProStatus status information (fill with 0 if no information),0,0,pose*n Interface point cloud changes, if collision detection and path planning, robot will also change Failure: 000,robot status code returned Robot Status Code Returned. |
Photo + Robot photo pose |
240,camera ID,X,Y,Z,pose |
Success: 240,camera ID Failure: 000,Robot Status Code Returned. |
Photo + Robot photo pose + Detection |
Normal detection: 250,camera ID,X,Y,Z,pose,pick point count,0 Pick path planning only: 250,camera ID,X,Y,Z,pose,pick path point count,0 With retract path planning: 250,camera ID,X,Y,Z,pose,pick path point count,retract path point count |
Success: Command code=250 Case 1 (Normal detection/Collision detection): Command code,pose type (Cartesian 0/Joint 1),number of poses sent n,number of objects with pick points,total number of detected pick points,current space ID,current object ID,current pick point index (index of current pick point in all pick points list),current pick point sequence number (sequence number displayed in pick point editing tool),reserved ProStatus status information (fill with 0 if no information),0,0,pose*n Case 2 (Path planning): Command code,pose type (Cartesian 0/Joint 1),number of poses sent n,number of objects with pick points,total number of detected pick points,current space ID,current object ID,current pick point index (index of current pick point in all pick points list),current pick point sequence number (sequence number displayed in pick point editing tool),reserved ProStatus status information (fill with 0 if no information),0,0,pose*n Interface point cloud changes, if collision detection and path planning, robot will also change Failure: 000,Robot Status Code Returned. |
Switch space object + Photo |
310,space ID,object ID,camera ID1,camera ID2… (Default uses first camera if camera ID not included) |
Success: 310,camera ID Failure: 000,Robot Status Code Returned. |
Switch space object + Photo + Detection |
Normal detection: 320,space ID,object ID,camera ID1,camera ID2…,pick point count,0 Pick path planning only: 320,space ID,object ID,camera ID1,camera ID2…,pick path point count,0 With retract path planning: 320,space ID,object ID,camera ID1,camera ID2…,pick path point count,retract path point count (Default uses first camera if camera ID not included) |
Success: Command code=320 Case 1 (Normal detection/Collision detection): Command code,pose type (Cartesian 0/Joint 1),number of poses sent n,number of objects with pick points,total number of detected pick points,current space ID,current object ID,current pick point index (index of current pick point in all pick points list),current pick point sequence number (sequence number displayed in pick point editing tool),reserved ProStatus status information (fill with 0 if no information),0,0,pose*n Case 2 (Path planning): Command code,pose type (Cartesian 0/Joint 1),number of poses sent n,number of objects with pick points,total number of detected pick points,current space ID,current object ID,current pick point index (index of current pick point in all pick points list),current pick point sequence number (sequence number displayed in pick point editing tool),reserved ProStatus status information (fill with 0 if no information),0,0,pose*n Interface point cloud changes, if collision detection and path planning, robot will also change Failure: 000,Robot Status Code Returned. |
Switch space object + Photo + Robot photo pose |
340,space ID,object ID,camera ID,X,Y,Z,pose |
Success: 340,camera ID Failure: 000,Robot Status Code Returned. |
Switch space object + Photo + Robot photo pose + Detection |
Normal detection: 350,space ID,object ID,camera ID,X,Y,Z,pose,pick point count,0 Pick path planning only: 350,space ID,object ID,camera ID,X,Y,Z,pose,pick path point count,0 With retract path planning: 350,space ID,object ID,camera ID,X,Y,Z,pose,pick path point count,retract path point count |
Success: Command code=350 Case 1 (Normal detection/Collision detection): Command code,pose type (Cartesian 0/Joint 1),number of poses sent n,number of objects with pick points,total number of detected pick points,current space ID,current object ID,current pick point index (index of current pick point in all pick points list),current pick point sequence number (sequence number displayed in pick point editing tool),reserved ProStatus status information (fill with 0 if no information),0,0,pose*n Case 2 (Path planning): Command code,pose type (Cartesian 0/Joint 1),number of poses sent n,number of objects with pick points,total number of detected pick points,current space ID,current object ID,current pick point index (index of current pick point in all pick points list),current pick point sequence number (sequence number displayed in pick point editing tool),reserved ProStatus status information (fill with 0 if no information),0,0,pose*n Interface point cloud changes, if collision detection and path planning, robot will also change Failure: 000,Robot Status Code Returned. |
Combined Commands
Basic Principles:
-
Combine individual instructions with each other, separated by a semicolon (;)
-
For eye-in-hand, ensure that the camera ID for taking photos is consistent with the camera ID for sending the photo point pose, and trigger the camera with the corresponding ID to take a photo before sending the photo point.
-
Instruction sequence:
Command Sequence
Example Commands
Eye-to-Hand: Switch Space Gripper → Capture → Detect
130,1,1; 110,1; 120,1,0
Eye-in-Hand: Switch Space Gripper → Capture → Current Camera Capture Point → Detect
130,1,1; 110,1; 140,1,0,0,0,0,0,0; 120,1,0
Stitched Eye-in-Hand: Switch Space Gripper → Camera 1 Capture → Camera 2 Capture → Detect
130,1,1; 110,1; 110,2; 120,1,0
Stitched Eye-to-Hand: Switch Space Gripper → Camera 1 Capture → Current Camera 1 Capture Point → Camera 2 Capture → Current Camera 2 Capture Point → Detect
130,1,1; 110,1; 140,1,0,0,0,0,0,0; 110,2; 140,2,0,0,0,0,0,0; 120,1,0
Simple Examples:
Action |
Command |
Response |
---|---|---|
Capture Photo + Detection |
110,cameraID1,cameraID2…;120,1,0 or 110;120,1,0 (If no cameraID is provided, the first camera is used by default) |
Refer to the response details in the tables above |
Capture Photo + Robot Photo Pose |
110,cameraID;140,cameraID,X,Y,Z,orientation |
Refer to the response details in the tables above |
Capture Photo + Robot Photo Pose + Detection |
110,cameraID;140,cameraID,X,Y,Z,orientation;120,1,0 |
Refer to the response details in the tables above |
Return Status Codes
All commands must pass through HOOK for return values, and all have responses. |
Success Status Codes
Status Code |
Description |
Remarks |
---|---|---|
2001 |
Configuration Switch Successful |
|
2002 |
Camera Switch Successful |
|
2003 |
Robot Photo Pose Set Successfully |
|
2004 |
Photo Capture Successful |
|
2005 |
Detection Successful |
Includes normal detection and collision detection success |
2006 |
Path Planning Successful |
Error Status Codes
Status Code |
Description |
Remarks |
---|---|---|
3001 |
Current Operation in Progress, Please Try Again Later |
Cannot perform other operations while exiting a plan or in a waiting state |
3002 |
Command Parsing Failed, Please Check Format |
|
3003 |
Incorrect Number of Requested Parameters |
|
3004 |
Invalid Photo Pose Format |
|
3005 |
Requested Path Point Count Does Not Meet Requirements |
|
3006 |
Requested Grab Point Count Does Not Meet Requirements |
|
3007 |
Failed to Switch Grab Space |
|
3008 |
Failed to Switch Grab Configuration |
|
3009 |
Failed to Switch Camera |
|
3010 |
Failed to Set Camera Parameters |
|
3011 |
Current Robot Photo Pose Not Received |
|
3012 |
No Photo Data Available When Setting Camera Photo Pose |
|
3013 |
Failed to Set Current Robot Photo Pose |
|
3014 |
Last Robot Photo Pose Not Sent, Please Recapture and Send Corresponding Pose |
|
3015 |
Photo Capture Failed |
|
3016 |
Missing Detection Input Data |
Missing data before requesting ATOM: hand-eye calibration result or eye-on-hand photo point data |
3017 |
Failed to Set ATOM Parameters |
Includes runtime parameters and mapping parameters |
3018 |
ATOM Detection Exception |
Error or exception in ATOM execution (null result or caught exception) |
3019 |
Detection Exception |
120 command exception (excluding ATOM exceptions) |
3020 |
No Detection Result |
No target detected: 1. ATOM detection result is empty 2. ATOM result is non-empty but all points collide 3. ATOM result is non-empty but no grab points planned |
3021 |
No Available Grab Points |
Grab results exist, but all points have been grabbed, prompting "No available grab points" on subsequent requests |
3022 |
Epic Pro Exception |
Communication and hooks executed but unhandled hook exception |
Port 5800
Real-Time Robot Data Acquisition (Default Port 5800)
// Note: SN naming convention updated to VendorName-ModelName-RobotName
// VendorName follows the same naming convention as the motion_plan module
// RobotName can be 001, 002, 003, etc.
// Send Cartesian Space Pose
{"SN":"Abb-001","C":"[269.91,3.84,910.26,0.0353839,0.705059,0.0673907]"}
// Send Joint Angles
{"SN":"Abb-001","J":"[2.03,-48.87,50.83,-0.06,85.19,0.91]"}