15.4.21 末端工具指令
15.4.21.1 JodellGripInit — 钧舵电爪初始化
说明: 钧舵电爪的初始化指令。
定义:
JodellGripInit(ID, wait_time);
-
ID:数据类型:Int 变量 ,建立通信,初始化钧舵电爪,参数 ID。 -
wait_time:数据类型:Int 变量,等待初始化完成,等待时间阈值,超时报错,单位:s。
15.4.21.2 JodellGripMove — 控制钧舵电爪运动
说明: 钧舵电爪的运动指令。
定义:
JodellGripMove(ID, Pos, Vel, Trq);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。 -
Pos:数据类型:Int,目标位置,无单位,设置范围 0-255。 -
Vel:数据类型:Int,电爪运行的速度,无单位,设置范围 0-255。 -
Trq:数据类型:Int,电爪运行检测的力,无单位,设置范围 0-255。
15.4.21.3 JodellGripStatus — 获取钧舵电爪状态
说明: 获取钧舵电爪的状态。
定义:
JodellGripStatus(ID, Pos, Vel, Trq, Contact);
-
ID:数据类型:Int 变量,获取电爪运动状态的电爪ID。 -
Pos:数据类型:Int 变量,获取电爪当前位置,无单位,数据范围 0-255。 -
Vel:数据类型:Int 变量,获取电爪运行的速度,无单位,数据范围 0-255。 -
Trq:数据类型:Int 变量,获取电爪运行的力矩,无单位,数据范围 0-255。 -
Contact:数据类型:Int 变量,获取电爪运行的状态字,无单位,数据范围 0-255,其中 bit6-7 表示电爪是否检测到物体的状态。
Bit |
名称 |
值/说明 |
0 |
gAct |
0 表示电动夹爪复位中,1 表示电动夹爪处于使能状态 |
2 |
gMode |
0 表示处于参数控制模式,1 表示处于无参数控制模式 |
3 |
gGTO |
0 表示停止,1 表示正在向目标位置运动 |
4-5 |
gSTA |
0 电动夹爪处于复位或巡检状态,1 表示正在激活,2 表示未使用,3 表示激活完成 |
6-7 |
gOBJ |
0 表示手指正在指定位置移动;1 表示手指在张开达到指定位置时,由于接触到物体停止;2 表示手指在闭合达到指定位置时,由于接触到物体停止;3 手指到达指定的位置,但没有检测到对象。 |
15.4.21.4 JodellSuckInit — 初始化钧舵吸盘
说明: 钧舵吸盘的初始化指令。
定义:
JodellSuckInit(ID);
-
ID:数据类型:Int 变量,初始化此 ID 的吸盘,检测是否正确连接此 ID 的吸盘。
15.4.21.5 JodellSuckSet — 设置钧舵吸盘
说明: 钧舵吸盘工作的指令,下发此指令后,吸盘立刻按照设定参数开始工作。
定义:
JodellSuckSet(ID, CH1_enable, CH1_VacMin, CH1_VacMax, CH1_Waittime, CH2_enable, CH2_VacMin, CH2_VacMax, CH2_Waittime);
-
ID:数据类型:Int 变量,控制吸盘工作的吸盘 ID。 -
CH1_enable:数据类型:Int 变量,吸盘第一个通道是否工作,1 表示工作,0 表示不工作。 -
CH1_VacMin:数据类型:Int 变量,吸盘第一个通道最小真空度设置值,范围 0-255,0 表示纯真空,大于 100 表示吸盘释放;当实际真空度低于此阈值时停止抽气; -
CH1_VacMax:数据类型:Int 变量,吸盘第一个通道最大真空度设置值,范围 0-255,0 表示纯真空,大于 100 表示吸盘释放;当实际真空度高于此阈值时开始抽气; -
CH1_Waittime:数据类型:Double 变量,吸盘第一个通道超时设置值; -
CH2_enable:数据类型:Int 变量,吸盘第二个通道是否工作,1 表示工作,0 表示不工作。 -
CH2_VacMin:数据类型:Int 变量,吸盘第二个通道最小真空度设置值,范围 0-255,0 表示纯真空,大于 100 表示吸盘释放;当实际真空度低于此阈值时停止抽气; -
CH2_VacMax:数据类型:Int 变量,吸盘第二个通道最大真空度设置值,范围 0-255,0 表示纯真空,大于 100 表示吸盘释放;当实际真空度高于此阈值时开始抽气; -
CH2_Waittime:数据类型:Double 变量,吸盘第二个通道超时设置值。
15.4.21.6 JodellSuckStatus — 获取钧舵吸盘状态
说明: 获取钧舵吸盘的状态。
定义:
JodellSuckStatus(ID, Vac1, Contact1, Time_Err1, Vac2, Contact2, Time_Err2);
-
ID:数据类型:Int 变量,获取吸盘状态的吸盘 ID。 -
Vac1:数据类型:Int 变量,获取的吸盘通道一当前的实际真空度,数据范围 0-100。 -
Contact1:数据类型:Int 变量,获取的吸盘通道一当前的状态信息数据,数据范围 0-255,其中 bit6-7 表示是否检测到物体,具体的状态信息含义见下表。
Bit |
名称 |
值/说明 |
0 |
gAct |
0 表示电动吸盘未使能,1 表示电动吸盘已使能 |
2 |
gMode |
0 表示处于自动控制模式,1 表示处于高级控制模式 |
3 |
gGTO |
0 表示停止调节,1 表示正在调节压力或真空度 |
4-5 |
gSTA |
0 电动吸盘处于未激活状态,1 和 2 未使用,3 表示吸盘已激活 |
6-7 |
gOBJ |
0 表示气压已低于最低气压;1 表示检测到工件,最低压力值已经达到;2 表示检测到工件,最高压力值已达到;3 表示没有检测到对象,物体已丢失或脱落。 |
-
Time_Err1:数据类型:Int 变量,获取的吸盘通道一是否超时报警。 -
Vac2:数据类型:Int 变量,获取的吸盘通道二当前的实际真空度,数据范围 0-100。 -
Contact2:数据类型:Int 变量,获取的吸盘通道二当前的状态信息数据,数据范围 0-255,其中 bit6-7 表示是否检测到物体,具体的状态信息含义与上表相同。 -
Time_Err2:数据类型:Int 变量,获取的吸盘通道二是否超时报警。
15.4.21.7 RMRGMGripInit — 初始化增广RMRGM电爪
说明: 增广电爪 RMRGM 系列的初始化指令。
定义:
RMRGMGripInit(ID);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。
15.4.21.8 RMCGripInit — 初始化增广RMC电爪
说明: 增广电爪 RMC 系列的初始化指令。
定义:
RMCGripInit(ID);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。
15.4.21.9 RMRGMGripPosMove — 控制增广RMRGM电爪位置运动
说明: 增广电爪 RMRGM 系列的位置模式的运动指令。
定义:
RMRGMGripPosMove(ID, Pos, Vel, Acc, PCheck);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。 -
Pos:数据类型:Double 变量,目标位置,单位 mm,设置范围 -2000 .0-2000.0。 -
Vel:数据类型:Double 变量,电爪运行的速度,单位 mm/s,设置范围 001-1000.0。 -
Acc:数据类型:Double 变量 ,电爪运行加速度,单位 mm/s^2,设置范围 0.01-2000.0。 -
PCheck:数据类型:Double 变量,定位范围,单位 mm,设置范围 0.01-10.0。
15.4.21.10 RMCGripPosMove — 控制增广RMC电爪位置运动
说明: 增广电爪 RMC 系列的位置模式的运动指令。
定义:
RMCGripPosMove(ID, Pos, Vel, Acc, PCheck);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。 -
Pos:数据类型:Double 变量,目标位置,单位 mm,设置范围 -2000 .0-2000.0。 -
Vel:数据类型:Double 变量,电爪运行的速度,单位 mm/s,设置范围 001-1000.0。 -
Acc:数据类型:Double 变量 ,电爪运行加速度,单位 mm/s2,设置范围 0.01-2000.0。 -
PCheck:数据类型:Double 变量,定位范围,单位 mm,设置范围 0.01-10.0。
15.4.21.11 RMRGMGripTrqMove — 增广RMRGM电爪力矩运动
说明: 增广电爪 RMRGM 系列的力矩模式的运动指令。
定义:
RMRGMGripTrqMove(ID, Pos, Vel, Acc, Trq, PCheck, TCheck);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。 -
Pos:数据类型:Double 变量,目标位置,单位 mm,设置范围 -2000 .0-2000.0。 -
Vel:数据类型:Double 变量,电爪运行的速度,单位 mm/s,设置范围 001-1000.0。 -
Acc:数据类型:Double 变量,电爪运行加速度,单位 mm/s2,设置范围 0.01-2000.0。 -
Trq:数据类型:Double 变量,电爪运行检测的力,单位 Nm,设置范围 0.01-100.0。 -
PCheck:数据类型:Double 变量,定位范围,单位 mm,设置范围 0.01-10.0。 -
TCheck:数据类型:Double 变量,时间范围,单位 ms,设置范围 0.01-1000.0。
15.4.21.12 RMCGripTrqMove — 增广RMC电爪力矩运动
说明: 增广电爪 RMC 系列的力矩模式的运动指令。
定义:
RMCGripTrqMove(ID, Pos, Vel, Acc, Trq, PCheck, TCheck);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。 -
Pos:数据类型:Double 变量,目标距离,单位 mm,设置范围 -2000 .0-2000.0。 -
Vel:数据类型:Double 变量,电爪运行的速度,单位 mm/s,设置范围 001-1000.0。 -
Acc:数据类型:Double 变量,电爪运行加速度,单位 mm/s2,设置范围 0.01-2000.0。 -
Trq:数据类型:Double 变量,电爪出力力矩,单位 Nm,设置范围 0.01-100.0。 -
PCheck:数据类型:Double 变量,定位范围,单位 mm,设置范围 0.01-10.0。 -
TCheck:数据类型:Double 变量,时间范围,单位 ms,设置范围 0.01-1000.0。
15.4.21.13 RMRGMGripStatus — 获取增广RMRGM电爪状态
说明: 增广电爪 RMRGM 系列的获取状态指令。
定义:
RMRGMGripStatus(ID, Pos, Vel, Trq, Reach, Err);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。 -
Pos:数据类型:Double 变量,目标位置,单位 mm。 -
Vel:数据类型:Double 变量,电爪运行的速度,单位 mm/s。 -
Trq:数据类型:Double 变量,电爪出力力矩,单位 Nm。 -
Reach:数据类型:Bool 变量,电爪是否到位。 -
Err:数据类型:Int 变量,电爪的错误代码。
15.4.21.14 RMCGripStatus — 获取增广RMC电爪状态
说明: 增广电爪 RMC 系列的获取状态指令。
定义:
RMCGripStatus(ID, Pos, Vel, Trq, Reach, Err);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。 -
Pos:数据类型:Double 变量,目标位置,单位 mm。 -
Vel:数据类型:Double 变量,电爪运行的速度,单位 mm/s。 -
Trq:数据类型:Double 变量,电爪出力力矩,单位 Nm。 -
Reach:数据类型:Bool 变量,电爪是否到位。 -
Err:数据类型:Int 变量,电爪的错误代码。
15.4.21.15 RMRGMResetErr — 重置增广RMRGM电爪错误
说明: 增广电爪 RMRGM 系列的复位电爪错误指令。
定义:
RMRGMResetErr(ID);
-
ID:数据类型:Int 变量,需要复位电爪的 ID。
15.4.21.16 RMCResetErr — 重置增广RMC电爪错误
说明: 增广电爪 RMC 系列的复位电爪错误指令。
定义:
RMCResetErr(ID);
-
ID:数据类型:Int 变量,需要复位电爪的 ID。
15.4.21.17 RobotiqGripInit — 初始化Robotiq电爪
说明: Robotiq 电爪 2F_85 系列的初始化指令。
定义:
RobotiqGripInit(ID);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。
15.4.21.18 RobotiqGripGetStatus — 获取Robotiq电爪状态
说明: Robotiq 电爪 2F_85 系列的获取状态指令。
定义:
RobotiqGripGetStatus(ID, Pos, gOBJ, Err);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。 -
Pos:数据类型:Int 变量,电爪的位置,范围 0-255。 -
gOBJ:数据类型:Int 变量,电爪的接触状态。0 表示电爪运动中,未接触物体;1 表示在电爪打开的过程中接触物体;2 表示在电爪闭合的过程中接触物体;3 表示电爪到达指定位置,但未接触物体。 -
Err:数据类型:Int 变量,电爪的错误码。
15.4.21.19 RobotiqGripMove — 控制Robotiq电爪运动
说明: Robotiq 电爪 2F_85 系列的运动指令。
定义:
RobotiqGripMove(ID, Pos, Vel, Trq);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。 -
Pos:数据类型:Int 变量,电爪位置,设置范围 3-227。 -
Vel:数据类型:Int 变量,电爪运行的速度,设置范围 0-255。 -
Trq:数据类型:Int 变量 ,电爪出力的力矩,设置范围 0-255。
15.4.21.20 DhGripInit — 初始化大寰电爪
说明: 大寰电爪 PGI-140-80 系列的初始化指令。
定义:
DhGripInit(ID, Time_wait);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。 -
Time_wait:数据类型:double 变量,单位 s,设置范围 0-10。
15.4.21.21 DhGripGetStatus — 获取大寰电爪状态
说明: 大寰电爪 PGI-140-80 系列的获取状态指令。
定义:
DhGripGetStatus(ID, Pos, gOBJ);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。 -
Pos:数据类型:Int 变量,电爪的位置,范围 0-1000。 -
gOBJ:数据类型:Int 变量,电爪的接触状态,:0:运动中;1:到达位置;2:夹住物体;3:物体掉落;4、当前 id 未初始化成功。
15.4.21.22 DhGripMove — 控制大寰电爪运动
说明: 大寰电爪 PGI-140-80 系列的运动指令。
定义:
DhGripMove(ID, Pos, Vel, Trq);
-
ID:数据类型:Int 变量,控制电爪运动的电爪 ID。 -
Pos:数据类型:Int 变量,电爪位置,设置范围 0-1000。 -
Vel:数据类型:Int 变量,电爪运行的速度,设置范围 1-100。 -
Trq:数据类型:Int 变量,电爪出力的力矩,设置范围 20-100。
15.4.21.23 XPRS485Init
说明: 初始化 xPanel 末端 RS485 通信参数(波特率、校验位、停止位)。AR 机型设置完毕后需重启生效。
定义:
XPRS485Init(baud, check_bit, stop_bit);
-
baud:数据类型:Int,末端 RS485 通信波特率。不同机型支持的波特率集合不同:-
AR:4800、9600、19200、38400、57600、115200、2500000;
-
其他机型:9600、19200、38400、57600、115200、230400、460800、1000000、2000000。
-
-
check_bit:数据类型:String,校验位,支持"none"(无校验)、"odd"(奇校验)、"even"(偶校验)。 -
stop_bit:数据类型:String,停止位,支持"stopbit1"(1 个停止位)、"stopbit2"(2 个停止位)。
15.4.21.24 XPRS485Overtime
说明: 设置 xPanel 末端 RS485 通信超时时间。
定义:
XPRS485Overtime(overtime_ms);
-
overtime_ms:数据类型:Int,RS485 通信超时时间,单位 ms,设置范围 50~10000。
15.4.21.25 XPRWCoil
说明: 通过 xPanel 末端 RS485 读写 Modbus 线圈或离散输入。
定义:
XPRWCoil(slave_addr, fun_cmd, coil_addr, num, data_array [, if_crc_reverse]);
-
slave_addr:数据类型:Int,末端连接设备(从站)地址,范围 0~65535。 -
fun_cmd:数据类型:Int,功能码,有效值:0x01、0x02、0x05、0x0F,其他值无效。 -
coil_addr:数据类型:Int,线圈或离散输入起始地址,范围 0~65535。 -
num:数据类型:Int,连续读写个数;功能码为 0x05 时无效。取值范围:-
CR/ER/SR:末端固件版本 < 301 时为 [1,48];≥ 301 时为 [1,944];
-
AR:[1,432]。
-
-
data_array:数据类型:Bool 数组,读写缓冲。功能码为 0x05 时仅使用数组的[0];其他功能码时,数组长度须与num一致,否则报错。 -
if_crc_reverse:数据类型:Bool,可选参数,是否反转 CRC 校验高低位,默认false。一般设备保持默认即可;部分设备需反转 CRC 高低位,否则通信失败。
15.4.21.26 XPRWRegister
说明: 通过 xPanel 末端 RS485 读写 Modbus RTU 寄存器(读保持/输入寄存器,或写保持寄存器)。
定义:
XPRWRegister(slave_addr, fun_cmd, reg_addr, data_type, num, data_array [, if_crc_reverse]);
-
slave_addr:数据类型:Int,末端连接设备(从站)地址,范围 0~65535。 -
fun_cmd:数据类型:Int,功能码,有效值:0x03、0x04、0x06、0x10,其他值无效。 -
reg_addr:数据类型:Int,寄存器起始地址,范围 0~65535。 -
data_type:数据类型:String,支持的数据类型:"int16"、"uint16"、"int32"、"uint32"。 -
num:数据类型:Int,一次操作连续寄存器个数;功能码为 0x06 时无效。取值范围:-
CR/ER/SR:末端固件版本 < 301 时,16 位为 [1,3],32 位为 1;≥ 301 时,16 位为 [1,59],32 位为 [1,29];
-
AR:16 位为 [1,27],32 位为 [1,13]。
-
-
data_array:数据类型:数值数组,具体类型由data_type决定。功能码为 0x06 时仅使用数组的[0];其他功能码时,数组长度须与num一致,否则报错。 -
if_crc_reverse:数据类型:Bool,可选参数,是否反转 CRC 校验高低位,默认false。一般设备保持默认即可;部分设备需反转 CRC 高低位,否则通信失败。
15.4.21.27 XPRS485RWData
说明: 通过 xPanel 末端 RS485 直接收发 RTU 协议裸数据(非 Modbus 封装)。
定义:
XPRS485RWData(send_byte_len, send_data, rev_byte_len, rev_data, ret);
-
send_byte_len:数据类型:Int,待发送数据的字节数。最大字节数随 xPanel 类型变化:CR/ER/SR 系列末端固件版本 ≥ 301 时支持 128 字节,此前版本支持 16 字节;非定制版本 AR 系列支持 64 字节。 -
send_data:数据类型:Byte 数组,待发送的十进制裸数据,长度须与send_byte_len一致,否则参数非法。 -
rev_byte_len:数据类型:Int,期望接收数据的字节数,取值范围与发送字节数限制相同。 -
rev_data:数据类型:Byte 数组,接收数据缓冲,调用前长度须与rev_byte_len一致。 -
ret:数据类型:Int,返回值:-1 表示传输失败;0 表示传输成功。
15.4.21.28 XPCANInit
说明: 初始化 xPanel 末端 CAN 通信波特率参数。目前仅支持 AR 机型,设置完毕后需重启生效。
定义:
XPCANInit(arbitration_baud, data_baud);
-
arbitration_baud:数据类型:Int,仲裁波特率,有效值:1000000(1M)、500000(500k)、250000(250k)、125000(125k)。 -
data_baud:数据类型:Int,数据波特率,有效值:5000000(5M)、4000000(4M)、2000000(2M)、1000000(1M)。
15.4.21.29 CANReceiveData
说明: 通过 xPanel 末端接收 CAN 协议裸数据。超时未收到数据时指令失败。
定义:
CANReceiveData(timeout_ms, data_type, frame_id, frame_format, frame_type, data, frame_valid_length);
-
timeout_ms:数据类型:Int,接收超时时间,单位 ms。 -
data_type:数据类型:String,接收数据类型,支持"int16"、"uint16"、"uint8"。 -
frame_id:数据类型:Int,接收到的 CAN 帧 ID。 -
frame_format:数据类型:Int,接收到的帧格式:0 表示标准帧(STANDARD),1 表示扩展帧(EXTENDED)。 -
frame_type:数据类型:Int,接收到的帧类型:经典 CAN、CANFD、CANFD 加速。 -
data:数据类型:Int 数组,接收到的 CAN 帧数据,由data_type解释为对应类型。 -
frame_valid_length:数据类型:Int,有效数据长度(元素个数),须与data数组长度一致。
15.4.21.30 CANSendData
说明: 通过 xPanel 末端发送 CAN 协议裸数据。
定义:
CANSendData(data_type, frame_id, frame_format, frame_type, data, frame_valid_length);
-
data_type:数据类型:String,发送数据类型,支持"int16"、"uint16"、"uint8"。 -
frame_id:数据类型:Int,待发送 CAN 帧 ID。 -
frame_format:数据类型:Int,帧格式:0 表示标准帧(STANDARD),1 表示扩展帧(EXTENDED)。 -
frame_type:数据类型:Int,帧类型:经典 CAN、CANFD、CANFD 加速。 -
data:数据类型:Int 数组,待发送的 CAN 帧数据,长度须等于frame_valid_length。 -
frame_valid_length:数据类型:Int,有效数据长度(元素个数)。合法范围与帧类型、data_type相关:-
经典 CAN +
uint8:[1,8]; -
经典 CAN +
int16/uint16:[1,4]; -
CANFD / CANFD 加速 +
uint8:[1,8],或 12/16/20/24/32/48/64; -
CANFD / CANFD 加速 +
int16/uint16:[1,4],或 6/8/10/12/16/24/32。
-