TCP及IP接口#

机器人在上电状态下会作为TCP Server监听端口:2000和2001的连接。端口2000可接收对机器人的控制命令及返回状态。端口2001会以10Hz的频率向外部发送机器人当前的状态信息。

2000端口#

2000端口采用请求-响应式的应答机制,可以接受系统指令。 Client和Server间的通讯协议如下:

接收的指令

返回值

说明

run(程序名) 或

run(程序名 ,

速度百分比)

开始时反馈:run start

执行失败反馈:run fail

机器人会执行相应程序,不设置速度百分比或者

速度百分比参数无效时,使用当前速度运行。

speed(速度百分比)

执行成功反馈:set success

执行失败反馈:set fail

可修改程序运行的速度百分比。参数范围在(0,100],

若修改成功,会返回set success,若不成功,

会返回set fail

stop

执行成功反馈:stop success

执行失败反馈:stop fail

机器人会停止当前执行的指令。停止后会发送stop

success回执。若机器人处于非运行状态,接收到

stop命令后会发送stop fail回执

pause

执行成功反馈:pause success

执行失败反馈:pause fail

机器人会暂停当前执行的指令。停止时会发送pause

success回执。若机器人处于非运行状态,接收到

pause命令后会发送pause fail回执。

resume

执行成功反馈:resume success

执行失败反馈:resume fail

机器人在暂停时会继续运行,程序运行时会发送resume

success回执。若机器人不在暂停状态,接收到resume

命令后会发送resume fail回执

poweron

执行成功反馈:poweron success

执行失败反馈:poweron fail

机器人上电,若上电成功,建立通讯链接,返回

poweron success若失败返回poweron fail,若当

前是已上电状态,返回already poweron

poweroff

执行成功反馈:poweroff success

执行失败反馈:poweroff fail

机器人下电,若下电成功,返回poweroff success,

若失败返回poweroff fail,若当前是下电状态,返回

already poweroff

enable

执行成功反馈:enable success

执行失败反馈:enable fail

机器人上使能,若上使能成功,返回enable success

若失败返回enable fail,若当前是使能状态,

返回already enable

disable

执行成功反馈:disable success

执行失败反馈:disable fail

机器人下使能,若下使能成功,返回disable success

若失败返回disable fail,若当前是已上电且未使能

状态,返回already disable

shutdown

执行成功反馈:shutdown success

执行失败反馈:shutdown fail

机器人已处于poweroff状态,机器人系统会自动关闭,

返回shutdown success回执。若机器人未

下电,返回shutdown fail回执

state

反馈各系统状态机,格式(1): (2)

: (3):(4)注:(1) 机器人状态机,

  1. 机器人程序运行状态, (3)安

全监控状态,(4)机器人操作模式

各状态机以数字形式返回。每个数字所代表的状态。

请参考2001端口,地址1448-1451

isprogfinish

反馈程序是否运行结束,结

束反馈字符1,未结束反馈字符0

getlasterror

反馈机器人最后一次报错的

详细错误信息,格式

error_id:error_messagen

错误码返回为16进制

getsysteminfo

反馈机器人的系列号、型

号、SN号、软固件版本号

等信息

2001端口#

端口2001会以10Hz的频率向外部发送机器人当前的状态信息,数据总长度1468个字节。

数据

类型

数量

字节大小

地址

注释

关节实际位置

float

7

28

0-27

6关节各自实际位置,第7位预留。

单位为rad

关节实际速度

float

7

28

28-55

6关节各自实际速度,第7位预留.

单位为rad/s

关节实际加速度

float

7

28

56-83

6关节各自实际加速度,第7位预留.

单位为rad/

关节实际力矩

float

7

28

84-111

6关节各自实际力矩,第7位预留。

单位为Nm

关节期望位置

float

7

28

112-139

6关节各自设定位置,第7位预留。

单位为rad

关节期望速度

float

7

28

140-167

6关节各自设定速度,第7位预留。

单位为rad/s

关节期望加速度

float

7

28

168-195

6关节各自设定加速度,第7位预留。

单位为rad/

关节期望力矩

float

7

28

196-223

6关节各自设定力矩,第7位预留。单位为Nm

单位为Nm

关节实际温度

float

7

28

224-251

7关节各自实际温度。数据预留

关节实际电流

float

7

28

252-279

6关节各自实际电流,第7位预留。

单位为额定电流千分比。

伺服驱动错误id

uint

7

28

280-307

6关节伺服驱动错误id,第7位预留。

伺服驱动状态字

uint

7

28

308-335

6关节伺服驱动状态字,第7位预留

预留

byte

32

32

336-367

TCP实际位置

float

6

24

368-391

末端笛卡尔空间实际位姿。 TCP

相对基坐标系的值。数据定义:X ,

Y, Z,Rx,Ry,Rz, 单位为m ,rad

TCP实际速度

float

6

24

392-415

末端笛卡尔空间实际速度。 TCP

相对基坐标系的值。数据定义:X ,

Y, Z,Rx,Ry,Rz, 单位为m ,rad/s

TCP实际加速度

float

6

24

416-439

末端笛卡尔空间实际位姿。 TCP

相对基坐标系的值。数据定义:X ,

Y, Z,Rx,Ry,Rz, 单位为m/s2, rad/s2

法兰实际外力

float

6

24

440-463

机器人末端法兰受到的外力,当

配置末端力矩传感器时,该值

为传感器数据在机器人末端法兰面下的力描述。

据定义:X , Y, Z,Rx,Ry,Rz, 单位为N ,Nm

TCP期望位置

float

6

24

464-487

末端笛卡尔空间实际位姿。 TCP

相对基坐标系的值。数据定义:X ,

Y, Z,Rx,Ry,Rz, 单位为m ,rad

TCP期望速度

float

6

24

488-511

末端笛卡尔空间实际速度。 TCP

相对基坐标系的值。数据定义:X ,

Y, Z,Rx,Ry,Rz, 单位为m/s ,rad/s

TCP期望加速度

float

6

24

512-535

末端笛卡尔空间实际速度。 TCP

相对基坐标系的值。数据定义:X ,

Y, Z,Rx,Ry,Rz, 单位为m/s2 ,rad/s2

法兰理论外力

float

6

24

536-559

机器人末端法兰在当前运动状态下,理论

收到的外力大小。数据定义:X , Y, Z,Rx,Ry,Rz,

单位为N ,Nm

基座实际外力

float

6

24

560-583

底座实际受力在机器人基座下的力描述。当配置底座力矩

传感器时,该值为力矩传感器测量值,数据定

义:X , Y, Z,Rx,Ry,Rz, 单位为N ,Nm

基座理论外力

float

6

24

584-607

在当前运动状态下,底座理论受力在机器人

基座下的力描述。数据定义:X , Y, Z,Rx,Ry,Rz,

单位为N ,Nm

当前激活的工 具坐标系

float

6

24

608-631

数据定义:X , Y, Z,Rx,Ry,Rz, 单位为m ,rad

当前激活的工件

坐标系

float

6

24

632-655

不包含当前工具坐标系偏移量.数据

定义:X , Y, Z,Rx,Ry,Rz, 单位为

m ,rad

合线速度

float

1

4

656-659

末端合线速度,单位为m/s

全局速度

byte

1

1

660

全局速度百分比

Jog速度

byte

1

1

661

Jog速度百分比

预留

byte

58

58

662-719

功能数字IO输入

byte

8

8

720-727

以一个byte表示一个bool量。

True=1,false=0。对应硬件FDI1-FDI8

功能数字IO输出

byte

8

8

728-735

以一个byte表示一个bool量。

True=1,false=0。对应硬件FDO1-FDO8

数字IO输入

byte

16

16

736-751

对应DI接口普通DI输入1-16。

对应硬件DI1-DI16

数字IO输出

byte

16

16

752-767

对应DO接口普通DO输出1-

16。对应硬件DO1-DO16

模拟量输入

float

8

32

768-799

8个模拟量输入,前4路为电流、后4路为电压。

对应硬件AI_C1-AI_C4,AI_V1-AI_V4。

取值范围详见硬件说明书。

模拟量输出

float

8

32

800-831

预留

float寄存器输入

float

32

128

832-959

可通过modbus、Profinet等外部接口修改

float寄存器输出

float

32

128

960-1087

可通过脚本函数修改

功能bool寄存器输入

byte

16

16

1088-1103

可通过modbus、Profinet等外部接口修改

功能bool寄存器输出

byte

16

16

1104-1119

可通过脚本函数修改

bool寄存器输入

byte

64

64

1120-1183

可通过modbus、Profinet等外部接口修改

bool寄存器输出

byte

64

64

1184-1247

可通过脚本函数修改

word寄存器输入

char

32

64

1248-1311

可通过modbus、Profinet等外部接口修改

word寄存器输出

char

32

64

1312-1375

可通过脚本函数修改

预留

byte

32

31

1376-1406

仿真/真机

byte

1

1

1407

机器人仿真/真机模式

工具IO输入

byte

8

8

1408-1415

工具数字输入(1-2末端输入,3-8预留)。

对应硬件工具IO数字输入1-2

工具IO输出

byte

8

8

1416-1423

工具数字输出(1-2末端输出,3-8预留)。

对应硬件工具IO数字输出1-2

工具模拟量输入

float

2

16

1424-1431

工具末端电压模拟量输入。取值范围0V-10V

工具模拟量输出

float

2

16

1432-1439

预留

工具按钮状态

byte

2

2

1440-1441

以一个byte表示一个bool量。True=1,false=0。地址

1440表示S键的状态,地址1441表示T键的状态。

预留

byte

6

6

1442-1447

机器人操作模式

char

1

1

1448

0:kManual,1:kAuto,2:kRemote,

机器人状态

char

1

1

1449

0:SR_Start,1:SR_Initialize,2:SR_Logout,

3:SR_Login,4:SR_PowerOff,5:SR_Disable/SR_

PowerOn(上电未使能状态)6:SR_Enable

机器人程序运行状态

char

1

1

1450

0:SP_Stopped,1:SP_Stopping,2:SP_Running,

3:SP_Paused,4:SP_Pausing5:SP_TaskRunning

安全监控状态

char

1

1

1451

0:SS_INIT2:SS_WAIT3:SS_CONFIG

4:SS_POWER_OFF5:SS_RUN6:SS_RECOVERY

7:SS_STOP28:SS_STOP19:SS_STOP0

10:SS_MODEL12:SS_REDUCE13:SS_BOOT

14:SS_FAIL15:SS_UPDATE

碰撞检测触发信号

char

1

1

1452

为1表示触发碰撞检测

碰撞轴

char

1

1

1453

返回值为数字。1~6表示发生碰撞的关节,

11~16表示基于底座力传感器碰撞发生的方向。

顺序为 X , Y, Z,Rx,Ry,Rz .20表示基于末

端力传感器碰撞发生

预留

byte

2

2

1454-1455

机器人错误代码

uint

1

4

1456-1459

机器人最新报错的错误代码,当同时出现多个错误时,

可能返回其中的任何一个错误代码。

预留

byte

8

8

1460-1467