Protocol

From Mech-Center to PLC

From PLC to Mech-Center

From Mech-Center to PLC

Control_Output

Bit

Data

7

/

6

/

5

/

4

Command execution complete (Bool)

3

Data ready (Bool)

2

Camera exposure complete (Bool)

1

Trigger Acknowledge (Bool)

0

Heartbeat (Bool)

Command_Complete

This module is for indicating 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 returned will this module’s signal be set to 1.

Data_Ready

This module is for indicating that new data has been sent from Mech-Center to the PLC, and the PLC can read the data.

This module’s signal is for command 102 or command 205.

Exposure_Complete

When the camera completes the exposure, Exposure Complete will be set to 1, indicating that the object can be moved or the robot working eye-in-hand can move.

Trigger_Acknowledge

Trigger Acknowledge = 1 means Mech-Mind Software Suite has been triggered successfully by the Trigger signal.

Tigger Acknowledge will stay at 1 until the Trigger signal is reset to 0.

Heartbeat

System heartbeat that flips every 1 second.

Status_Code

The command execution status code returned from Mech-Center.

It may be a normal status code or an error code.

Status code. INT32

Calib_Cam_Status

Calibration status. INT

For command 701: calibration.

  • 1 means the calibration is in progress.

  • 0 means the calibration has been completed.

Send_Pose_Num

The number of poses sent by executing the command at the time.

INT8

Visual_Point_Index

Position of visual_move in the planned path. INT8

For example, if the path is composed of Tasks move_1, move_2, visual_move, move_3 sequentially, the position of visual_move is 3.

If in the path there is no visual_move Task, the returned value will be 0.

DO_List

The 64 INT8 DO signals for controlling multiple suction cup sections or array grippers.

Byte

Data

0

DO list 1: signal 0 to 7

1

DO list 2: signal 8 to 15

2

DO list 3: signal 16 to 23

3

DO list 4: signal 24 to 31

4

DO list 5: signal 32 to 39

5

DO list 6: signal 40 to 47

6

DO list 7: signal 48 to 55

7

DO list 8: signal 56 to 63

Notify_Message

The customized integer message sent by a Notify Task/Step from Mech-Viz/Mech-Vision.

Integer message. INT32

Send_Pose_Type

1 means JPs. 2 means TCP.

Type of pose sent. INT8

Target_Pose

Robot pose of the target in either robot TCP or JPs.

Note

The data from this module should be divided by 10000 before use.

A pose in Cartesian coordinates and Euler angles can be represented by:

[X, Y, Z, A, B, C]

JPs consist of up to 6 joint angles:

[J1, J2, J3, J4, J5, J6]

Byte

Data

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

Non-negative integer labels of targets. INT32

Target_Speed

Velocity parameter percentage values of the move-type Tasks of targets. INT32

Ext_Output_Data

Reserved module for other data for transmission.

This module takes up 40 bytes (INT32[1: 10], 10 INT32 integers in total).

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_Notify

If Reset Notify = 1, the content of Notify Message will be cleared.

Data_Acknowledge

Data_Acknowledge is for acknowledging having read the data returned by executing command 102 or command 205.

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_Exposure

If Reset_Exposure = 1, Exposure Complete will be set to 0.

Trigger

If Trigger = 1, Mech-Center will read the command sent and the command will be executed.

Trigger Acknowledge can be reset once Mech-Center receives the Trigger signal.

The upward segment of the signal is considered as 1.

Comm Enable

  • 0: Communication disabled. Mech-Center will ignore the Trigger signal.

  • 1: Communication enabled. The Trigger signal will work and Mech-Center will receive commands.

Command

Command code.

INT32.

Calib_Rob_Status

  • 0: The calibration starts.

  • 1: The robot has normally moved to the last calibration point sent.

  • 2: The robot failed to move to the last calibration point sent.

INT8.

Vision_Proj_Num

Mech-Vision project ID number.

The integer ID number of the Mech-Vision project in Mech-Center, i.e., the number shown on the left of the project path in Deployment Settings ‣ Mech-Vision in Mech-Center. The number can be adjusted by dragging the projects.

INT8.

Vision_Recipe_Num

Mech-Vision parameter recipe number.

The ID number of the parameter recipe to switch to, i.e., the number on the left of the parameter recipe name in Project Assistance ‣ Parameter Recipe ‣ Parameter Recipe Editor in Mech-Vision.

Recipe number range: 1—99.

INT8.

Viz_Task_Name

The Task ID of the Mech-Viz Task involved. It can be read and set in the Task’s parameters.

INT8.

Viz_Task_Value

The value to set in the Mech-Viz Task’s index parameter, or Mech-Viz branching Task exit port number.

INT8.

Req_Pose_Num

Number of targets to request from Mech-Vision.

0: Request all the available vision points from the vision results in Mech-Vision.

INT8.

Req_Pose_Type

Type of targets requested. INT8.

  • 0: No image-capturing robot pose is needed (eye-to-hand mode).

  • 1: The image capturing robot pose sent is in JPs.

  • 2: The image capturing robot pose sent is a flange pose.

INT8.

Robot_Pose_JPS

Robot JPs for image capturing.

Please multiply the JPs data by 10000 before setting it to the module.

JPs include up to 6 joint position data (6 INT32 integers):

[J1, J2, J3, J4, J5, J6]

Byte

Data

0 to 3

J1

4 to 7

J2

8 to 11

J3

12 to 15

J4

16 to 19

J5

20 to 23

J6

Robot_Pose_TCP (will be renamed to Robot_Pose_Flange)

Robot flang pose for image capturing.

Please multiply the pose data by 10000 before setting it to the module.

A flange pose includes Cartesian coordinates (X, Y, Z) and Euler angles (A, B, C), 6 INT32 integers in total.

[X, Y, Z, A, B, C]

Byte

Data

0 to 3

X

4 to 7

Y

8 to 11

Z

12 to 15

A

16 to 19

B

20 to 23

C

Ext_Input_Data

Reserved module for other data for transmission.

This module takes up 40 bytes (INT32[1: 10], 10 INT32 integers in total).