通信协议
寄存器映射表
字节地址(十进制) | 位地址 | 名称 | 数据类型 | 所占数量 | PLC输入/输出 |
---|---|---|---|---|---|
0 |
CONTROL_OUTPUT |
BITS8 |
1 |
PLC输入,即从视觉系统到PLC,共114个字节或57个字 |
|
0.0 |
HEARTBEAT |
BIT |
1 |
||
0.1 |
TRIGGER _ACKNOWLEDGE |
BIT |
1 |
||
0.2 |
EXPOSURE_COMPLETE |
BIT |
1 |
||
0.3 |
DATA_READY |
BIT |
1 |
||
0.4 |
COMMAND_COMPLETE |
BIT |
1 |
||
0.5 |
/ |
BIT |
1 |
||
0.6 |
/ |
BIT |
1 |
||
0.7 |
/ |
BIT |
1 |
||
1 |
CONTROL_O_RESV |
BITS8 |
1 |
||
2 |
CALIB_CAM_STATUS |
UINT8 |
1 |
||
3 |
SEND_POSE_NUM |
UINT8 |
1 |
||
4 |
SEND_POSE_TYPE |
UINT8 |
1 |
||
5 |
VISUAL_PT_INDEX |
UINT8 |
1 |
||
6 |
DO_LIST |
BITS8 |
8 |
||
14 |
DI_LIST |
BITS8 |
8 |
||
22 |
NOTIFY_MSG |
SINT32 |
1 |
||
26 |
RESV_OUTPUT_1 |
UINT32 |
1 |
||
30 |
RESV_OUTPUT_2 |
UINT32 |
1 |
||
34 |
RESV_OUTPUT_3 |
UINT32 |
1 |
||
38 |
STATUS_CODE |
SINT32 |
1 |
||
42 |
TARGET_POSE |
SINT32 |
6 |
||
66 |
TARGET_LABEL |
SINT32 |
1 |
||
70 |
TARGET_TOOL_ID |
SINT32 |
1 |
||
74 |
EXT_OUTPUT_DATA |
SINT32 |
10 |
||
0 |
CONTROL_INPUT |
BITS8 |
1 |
PLC输出,即从PLC到视觉系统,共118个字节或59个字 |
|
0.0 |
COMM_ENABLE |
BIT |
1 |
||
0.1 |
TRIGGER |
BIT |
1 |
||
0.2 |
RESET_EXPOSURE |
BIT |
1 |
||
0.3 |
DATA_ACKNOWLEDGE |
BIT |
1 |
||
0.4 |
CLEAR_NOTIFY |
BIT |
1 |
||
0.5 |
/ |
BIT |
1 |
||
0.6 |
/ |
BIT |
1 |
||
0.7 |
/ |
BIT |
1 |
||
1 |
CONTROL_I_RESV |
BITS8 |
1 |
||
2 |
CALIB_ROB_STATUS |
UINT8 |
1 |
||
3 |
ROBOT_POSE_TYPE |
UINT8 |
1 |
||
4 |
REQ_POSE_NUM |
UINT8 |
1 |
||
5 |
REQ_POSE_TYPE |
UINT8 |
1 |
||
6 |
VISION_PROJ_NUM |
UINT8 |
1 |
||
7 |
VISION_RECP_NUM |
UINT8 |
1 |
||
8 |
VIZ_TASK_NAME |
UINT8 |
1 |
||
9 |
VIZ_TASK_VALUE |
UINT8 |
1 |
||
10 |
RESV_INPUT_1 |
UINT32 |
1 |
||
14 |
RESV_INPUT_2 |
UINT32 |
1 |
||
18 |
RESV_INPUT_3 |
UINT32 |
1 |
||
22 |
RESV_INPUT_4 |
UINT32 |
1 |
||
26 |
COMMAND |
SINT32 |
1 |
||
30 |
ROBOT_POSE_JPS |
SINT32 |
6 |
||
54 |
ROBOT_POSE_TCP |
SINT32 |
6 |
||
78 |
EXT_INPUT_DATA |
SINT32 |
10 |
从视觉系统到PLC
CONTROL_OUTPUT
Bit 位 | 数据 |
---|---|
7 |
/ |
6 |
/ |
5 |
/ |
4 |
指令执行完成(布尔值) |
3 |
数据已更新(布尔值) |
2 |
相机曝光完成(布尔值) |
1 |
系统触发成功(布尔值) |
0 |
心跳(布尔值) |
VISUAL_POINT_INDEX(简写VISUAL_PT_INDEX)
“视觉移动”步骤目标点在整个路径中的位置。“视觉移动”步骤即移动至视觉点(抓取物体的点)的移动步骤。
比如,如果规划路径由以下步骤组成:“定点移动_1”,“定点移动_2”,“视觉移动”,“定点移动_3”,则“视觉移动”步骤位置为3。
如果路径中无“视觉移动”步骤,则该参数值为 0。
数据类型:INT8
DO_LIST
用于控制多个吸盘分区或阵列夹具的 64 个 INT8 DO 信号。
Byte | Bit 0~7 |
---|---|
0 |
DO 列表 0,信号 0~7 |
1 |
DO 列表 1,信号 8~15 |
2 |
DO 列表 2,信号 16~23 |
3 |
DO 列表 3,信号 24~31 |
4 |
DO 列表 4,信号 32~39 |
5 |
DO 列表 5,信号 40~47 |
6 |
DO 列表 6,信号 48~55 |
7 |
DO 列表 7,信号 56~63 |
TARGET_POSE
机器人 TCP 或 JPs 形式的目标点机器人位姿。
从此模块的读取的数据在使用前应除以 10000。 |
以三维坐标和欧拉角表示的位姿数据结构如下:
X, Y, Z, A, B, C
以机器人关节角 JPs 表示的位姿最多包含 6 个关节角度:
J1, J2, J3, J4, J5, J6
Byte | Bit 0~7 |
---|---|
0~3 |
目标点 X 坐标或 J1 关节角,INT32 |
4~7 |
目标点 Y 坐标或 J2 关节角,INT32 |
8~11 |
目标点 Z 坐标或 J3 关节角,INT32 |
12~15 |
目标点 A 角度或 J4 关节角,INT32 |
16~19 |
目标点 B 角度或 J5 关节角,INT32 |
20~23 |
目标点 C 角度或 J6 关节角,INT32 |
从PLC到视觉系统
Control_Input
Bit 位 | 数据 |
---|---|
7 |
/ |
6 |
/ |
5 |
/ |
4 |
重置消息通知(布尔值) |
3 |
数据确认(布尔值) |
2 |
复位 EXPOSURE_COMPLETE “曝光完成”(布尔值) |
1 |
触发信号(布尔值) |
0 |
通信使能(布尔值) |
DATA_ACKNOWLEDGE
数据确认(布尔值)用于确认已读取执行 102 指令或 205 指令返回的数据。
DATA_ACKNOWLEDGE = 0,表示PLC 还没有从视觉系统读取数据,数据保留在端口。
DATA_ACKNOWLEDGE = 1,表示 PLC 已从视觉系统读取数据,视觉系统可以写入下一轮的数据。
DATA_ACKNOWLEDGE 可以在 HEARTBEAT 翻转或 DATA_READY = 0 时重置。
TRIGGER
触发信号(布尔值)
如果 TRIGGER = 1,视觉系统将读取发送的指令并执行该指令。
一旦视觉系统接收到触发信号,就可以重置 TRIGGER _ACKNOWLEDGE。
信号的上行部分认为是 1。
VISION_RECIPE_NUM(简写VISION_RECP_NUM)
Mech-Vision工程中参数配方的编号,为正整数,取值范围为 1~99。在Mech-Vision窗口右下角,单击
,进入参数配方编辑器,查看配方编号。数据类型:INT8
ROBOT_POSE_JPS
发送给 Mech-Vision/Mech-Viz 的机器人关节角 JPs。
设置模块前请先将 JPs 数据乘 10000。
JPs 包含最多 6 个关节角数据(6 个 INT32 整数):
Byte | Bit 0~7 |
---|---|
0~3 |
机器人 J1 关节角 INT32 |
4~7 |
机器人 J2 关节角 INT32 |
8~11 |
机器人 J3 关节角 INT32 |
12~15 |
机器人 J4 关节角 INT32 |
16~19 |
机器人 J5 关节角 INT32 |
20~23 |
机器人 J6 关节角 INT32 |