Communication Protocol
From Mech-Center to PLC
Control_Output
Bit | Data |
---|---|
7 |
/ |
6 |
/ |
5 |
/ |
4 |
Command execution complete (Bool) |
3 |
Data ready (Bool) |
2 |
Camera capturing complete (Bool) |
1 |
Trigger acknowledge (Bool) |
0 |
Heartbeat (Bool) |
Command_Complete
This module indicates that the execution of a command has been completed, and the data returned by the command can be read. For commands 102 and 205, only when the last byte of data has been sent will this module’s signal be set to 1.
Data_Ready
This module indicates that new data has been sent, and the PLC can read the data. This module’s signal is dedicated for command 102 or command 205 when multiple sets of robot pose data are expected.
Exposure_Complete
When the camera completes image capturing, this module’s signal is set to 1. This module is used to indicate whether the object can be moved, or whether the robot in an eye-in-hand application can move from the image-capturing position.
Trigger_Acknowledge
Trigger Acknowledge = 1 means that the vision system has been triggered successfully by the Trigger signal. Tigger Acknowledge will stay at 1 until the Trigger signal is reset to 0.
Status_Code
The status code, INT32.
The execution status code sent by the vision system to indicate normal and erroneous statuses.
Calib_Cam_Status
Calibration status, INT8.
This module’s signal is dedicated for command 701. 0: The calibration is in progress. 1: The calibration is completed.
Send_Pose_Num
The number of sent poses, INT8. The number of poses sent this time of command execution.
Visual_Point_Index
The position of the “Vision Move” waypoint in the entire planned path. The “Vision Move” waypoint is the one where the robot performs the picking.
For example, if the planned path consists of waypoints “Fixed-Point Move_1”, “Fixed-Point Move_2”, “Vision Move”, and “Fixed-Point Move_3” sequentially, the position of “Vision Move” is 3.
If the path does not contain any “Vision Move”, the value of this parameter is 0.
Data type: INT8
DO_List
The 64 INT8 DO signals for controlling multiple suction cup sections or array grippers.
Byte | Bit 0~7 |
---|---|
0 |
DO list 0: signals 0 to 7 |
1 |
DO list 1: signals 8 to 15 |
2 |
DO list 2: signals 16 to 23 |
3 |
DO list 3: signals 24 to 31 |
4 |
DO list 4: signals 32 to 39 |
5 |
DO list 5: signals 40 to 47 |
6 |
DO list 6: signals 48 to 55 |
7 |
DO list 7: signals 56 to 63 |
Notify_Message
The customized message sent by the “Notify” Step of the Mech-Viz / Mech-Vision project.
The message should be an integer, INT32.
Target_Pose
The robot poses of the waypoints in the form of joint positions or TCP.
The data from this module should be divided by 10000 before use. |
A TCP contains Cartesian coordinates and Euler angles:
X, Y, Z, A, B, C
A set of joint positions contains 6 joint angles:
J1, J2, J3, J4, J5, J6
Byte | Bit 0~7 |
---|---|
0 to 3 |
X or J1, INT32 |
4 to 7 |
Y or J2, INT32 |
8 to 11 |
Z or J3, INT32 |
12 to 15 |
A or J4, INT32 |
16 to 19 |
B or J5, INT32 |
20 to 23 |
C or J6, INT32 |
Target_Label
The labels corresponding to the sent poses. The values should be non-negative integers.
Data type: INT32
From PLC to Mech-Center
Control_Input
Bit | Data |
---|---|
7 |
/ |
6 |
/ |
5 |
/ |
4 |
Reset Notify (Bool) |
3 |
Data Acknowledge (Bool) |
2 |
Reset Exposure_Complete (Bool) |
1 |
Trigger (Bool) |
0 |
Comm Enable (Bool) |
Reset_Exposure
Reset Exposure_Complete (Bool)
If Reset_Exposure = 1, Exposure Complete will be set to 0.
Data_Acknowledge
Data_Acknowledge is used for acknowledging that the data returned by command 102 or command 205 has been read.
If Data_Acknowledge = 0, the PLC has not read the data from Mech-Center and the data are kept at the port.
If Data_Acknowledge = 1, the PLC has read the data from Mech-Center and Mech-Center can write the data of the next round.
Data_Acknowledge can be reset at heartbeat flip or when Data_Ready = 0.
Reset_Notify
Reset Notify (Bool)
If Reset Notify = 1, the content of Notify_Message will be cleared.
Trigger
Trigger (Bool)
If Trigger = 1, Mech-Center will read the sent command execute it.
Trigger Acknowledge can be reset once Mech-Center receives the Trigger signal.
The upward segment of the signal is considered as 1.
Comm_Enable
Comm Enable (Bool)
0
: Communication disabled. Mech-Center will ignore the Trigger signal.
1
: Communication enabled. The Trigger signal will work and Mech-Center will receive commands.
Calib_Rob_Status
-
0
: The calibration starts. -
1
: The robot has moved to the last calibration point sent. -
2
: The robot failed to move to the last calibration point sent.
Data type: INT8
Vision_Proj_Num
Mech-Vision project ID, which can be viewed before the project name in the Project List panel in Mech-Vision.
Data type: INT8
Vision_Recipe_Num
The ID of the parameter recipe in the Mech-Vision project. The ID is a positive integer in the range of 1 to 99. To view the parameter recipe ID, in the lower right of Mech-Vision, click
.Data type: INT8
Viz_Task_Name
The Step ID of the Mech-Viz Step involved. The Step ID can be viewed in the parameters of the Step.
Data type: INT8
Viz_Task_Value
The exit port number of the Mech-Viz “Branch by Msg” Step, or the value to be set to the Current Index parameter of a Mech-Viz Step.
Data type: INT8
Req_Pose_Num
The number of vision points to be requested from Mech-Vision.
0
: Request all available vision points in the vision result of Mech-Vision.
Data type: INT8
Req_Pose_Type
Expected type of waypoint pose to be returned from Mech-Viz.
-
1
: joint positions -
2
: TCP
Data type: INT8
Robot_Pose_JPS
Robot joint positions to be sent to Mech-Vision / Mech-Viz.
Please multiply the joint position data by 10000 before setting it to the module.
A set of joint positions contains 6 joint angles (6 INT32 integers):
Byte | Bit 0~7 |
---|---|
0 to 3 |
Robot J1 joint angle, INT32 |
4 to 7 |
Robot J2 joint angle, INT32 |
8 to 11 |
Robot J3 joint angle, INT32 |
12 to 15 |
Robot J4 joint angle, INT32 |
16 to 19 |
Robot J5 joint angle, INT32 |
20 to 23 |
Robot J6 joint angle, INT32 |
Robot_Pose_TCP
The current robot flange pose to be sent to Mech-Vision / Mech-Viz.
Please multiply the pose data by 10000 before setting it to the module.
A flange pose contains Cartesian coordinates (X, Y, Z) and Euler angles (A, B, C), 6 INT32 integers in total.
Byte | Bit 0~7 |
---|---|
0 to 3 |
X of current robot flange pose, INT32 |
4 to 7 |
Y of current robot flange pose, INT32 |
8 to 11 |
Z of current robot flange pose, INT32 |
12 to 15 |
A of current robot flange pose, INT32 |
16 to 19 |
B of current robot flange pose, INT32 |
20 to 23 |
C of current robot flange pose, INT32 |