Protocol

From Mech-Center to PLC

Module Data Structures

Control_Output

Bit

Data

7

/

6

/

5

/

4

Command execution complete (Bool)

3

Data ready (Bool)

2

Camera exposure complete (Bool)

1

Trigger Acknowldge (Bool)

0

Heartbeat (Bool)

Status Code

Status code. INT32

Calib_Cam_Status

Calibration status. INT8

Send_Pose_Num

Number of poses sent. INT8

Visual_Point_Index

Position of visual_move in the planned path. INT8

DO List

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

Integer message. INT32

Send_Pose_Type

Type of pose sent. INT8

Target_Pose

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

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

JPS consists of up to 6 joint angles:

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

Byte

Data

0 to 3

X or J1

4 to 7

Y or J2

8 to 11

Z or J3

12 to 15

A or J4

16 to 19

B or J5

20 to 23

C or J6

Target_Label

Label of target point. INT32

Target_Speed

Velocity of target point. sINT32

Ext_Output_Data

Reserved module for other data for transmission.

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

Module Functions

Heartbeat

System heartbeat that flips every 1 second.

Trigger Acknowledge

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

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

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.

..Please see :ref:`` for instructions on using this module.

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.

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 command 102 and 205, only when the last byte of data has been returned will this module’s signal be set to 1.

Status Code

The command execution status code returned from Mech-Center.

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

Calib_Cam_Status

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.

Visual_Point_Index

The position of of the visual_move Task in the planned path.

For example, if the planned path consists of the following move Tasks: move_1, move_2, move_3, visual_move, move_4, then Visual_Point_Index = 4.

DO List

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

Notify Message

The customized integer message sent by a Notify Task/Step named “Standard Interface Notify” from Mech-Viz/Mech-Vision.

Send_Pose_Type

1 means JPS. 2 means TCP.

Target_Pose

Cartesian coodinates and Euler angles, or JPS.

Note

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

Target_Label

Correspoinding non-negative integer labels corresponding to the poses.

Target_Speed

Velocity parameter percentage value of the move Task correpsonding to the target point (pose).

Range: 0 to 100

From PLC to Mech-Center

Module Data Structures

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)

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.

Robot_Pose_Type

Type of robot pose.

Req_Pose_Num

Number of target points requested. INT8

Vision_Proj_Num

Mech-Vision project ID number.

Vision_Recipe_Num

Mech-Vision parameter recipe number.

The identification 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.

Viz_Task_Name

Mech-Viz branching Task name.

Viz_Task_Value

Mech-Viz branching Task out port number.

Req_Pose_Type

Type of target points requested. INT8

Robot_Pose_JPS

JPS includes 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

A TCP 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 moduel takes up 40 bytes (INT32[1: 10], 10 INT32 integers in total).

Module Functions

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.

Trigger

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

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

The upward segment of the signal is considered as 1.

Reset_Exposure

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

Data Acknowledge

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 is for acknowledging having read the data returned by executing command 102 or command 205.

Data Acknowledge can be reset at heartbeat flip or when Data Ready = 0.

Reset Notify

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

Command

The command code.

Calib_Rob_Status

0: Calibration starts, and command 701 is sent.

1: Calibration in progress and the robot moves normally.

Robot_Pose_Type

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.

Req_Pose_Num

Number of vision points to request from Mech-Vision.

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

Vision_Proj_Num

Mech-Vision project ID number.

Vision_Recipe_Num

Mech-Vision parameter recipe numner

Viz_Task_Name

Mech-Viz Task name.

Viz_Task_Value

The value to set in the Mech-Viz Task’s index parameter.

Req_Pose_Type

The pose type to expect Mech-Viz to return,

1: JPS.

2: TCP.

Robot_Pose_JPS

Robot JPS for image capturing.

Please multiply the JPS data by 10000 before setting to the module.

Robot_Pose_TCP (Robot_Pose_Flange)

Robot flang pose for image capturing.

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

Ext_Input_Data

Reserved module for other data for transmission.

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