自定义协议控制方法

USB-485模块接线

连接夹爪端的 24V,GND, 485_A(T/R+,485+) , 485_B(T/R-,485-)共 4 根线,电源为24V直流稳压电源,将模块的 USB 插口插入到电脑的 USB 接口

485A 接入 485 转 USB 模块 A+;
485B 接入 485 转 USB 模块 B-;
24V 接入 24V 直流稳压电源正极;
GND 接入 24V 直流稳压电源负极

串口调试助手调试

用户可用UartAssist串口调试助手,参考下图发送相应的夹爪指令,CRC校验码无需填写,UartAssist串口调试助手会自动生成。

夹爪串口默认配置

  • 夹爪 ID:14
  • 波特率:115200
  • 数据位:8
  • 停止位:1
  • 校验位:无校验位

协议使用说明

夹爪采用自定义协议,一条指令由帧头(2byte),长度(1byte),地址码 ID(1byte),功能码(1byte),寄存器地址(2byte),寄存器数据(2byte),校验码(2byte),我们以读取夹爪角度为例

帧头 长度 ID 功能码 寄存器地址 寄存器数据/参数 CRC-16MODBUS校验码
Fe Fe 08 0e 03 00 0C 00 00 B1 C0

帧头:254 254

长度:指令长度 08

ID: 0E,可以在设备中修改,默认 ID 为 14 ,0E 代表夹爪当前 ID 为 14

功能码:识别指令是设置还是获取功能,06(对寄存器进行写操作)/03(对寄存器进行读操作)。

寄存器地址:00 0c 夹爪功能对应寄存器地址

寄存器参数:00 00,读取指令中不需要参数,可以给 00 00,在设置指令中为参数对夹爪地址写入数据。

CRC 校验:B1 C0,保证终端设备不去响应那些在传输过程中发生改变的数据,保证系统的安全性和效率,CRC 校验采用 16 位的循环余方法 。将帧头,长度,功能码,寄存器地址,寄存器参数所有16进制直接进行校验得到 B1 C0 校验码。

命令总览

  • 读取固件主版本号

    指令:fe fe 08 0e 03 00 01 00 00 72 51

    功能码:03 读操作

    参数:无

    返回:fe fe 08 0e 03 00 01 00 01 B2 90

    标注:数据返回 00 01,返回版本号为 1

  • 读取固件次版本号

    指令:FE FE 08 0E 03 00 02 00 00 72 A1

    功能码:03 读操作

    参数:无

    返回:FE FE 08 0E 03 00 02 00 01 B2 60

    标注:数据返回 00 01,表示返回版本号为 1

  • 设置/读取设备 ID 号

    • 设置

      指令:FE FE 08 0E 06 00 03 00 0E 76 BD

      功能码:06 写操作

      参数:00 0E,ID 设置范围(1-254)

      返回:FE FE 08 0E 06 00 03 00 01 72 FD

      标注:成功返回 00 01,失败返回 00 00,设备 ID 修改后,指令中的 ID 也需要修改 成一样才可以通信

    • 读取

      指令:FE FE 08 0E 03 00 04 00 00 73 41

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 04 00 0E B7 C0

      标注:数据返回 00 0E,表示当前夹爪 ID 号

  • 设置/读取 485 波特率

    • 设置

      指令:FE FE 08 0E 06 00 05 00 00 73 1D

      功能码:06 写操作

      参数:参数 00 00,0-115200,1-1000000,2-57600,3-19200,4-9600,5-4800, 如设置为 1000000,参数改为 00 01

      返回:FE FE 08 0E 06 00 05 00 01 72 FD

      标注:成功返回 00 01,失败返回 00 00

    • 读取

      指令:FE FE 08 0E 03 00 06 00 00 B3 E0

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 06 00 00 B3 E0

      标注:返回数据 00 00,与设值参数对应波特率的值

  • 设置夹爪使能状态

    指令:FE FE 08 0E 06 00 0A 00 00 B0 EC

    功能码:06 写操作

    参数:00 00, 00 表示断使能, 00 01 表示使能

    返回:FE FE 08 0E 06 00 0A 00 01 70 2D

    标注:成功返回 00 01,失败返回 00 00

  • 设置/读取夹爪角度

    • 设置

      指令:FE FE 08 0E 06 00 0B 00 64 9B BC

      功能码:06 写操作

      参数:参数 00 64,设置角度为全开

      返回:FE FE 08 0E 06 00 0B 00 01 B0 7C

      标注:成功返回 00 01,失败返回 00 00

    • 读取

      指令:FE FE 08 0E 03 00 0C 00 00 B1 C0

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 0C 00 64 5A C1

      标注:返回数据 00 64,表示当前角度为 100,全开状态

  • 设置夹爪零位

    指令:FE FE 08 0E 06 00 0D 00 00 71 5D

    功能码: 06 写操作

    参数:无

    返回:FE FE 08 0E 06 00 0D 00 01 B1 9C

    标注:成功返回 00 01,失败返回 00 00

    注意:设置零位时夹爪会自行运动,若运动过程中有物体阻碍会导致设置失败,设置前请检查夹爪周围是否有阻碍物

  • 读取夹爪夹持状态

    指令:FE FE 08 0E 03 00 0E 00 00 71 61

    功能码:03 读操作

    参数:无

    返回:FE FE 08 0E 03 00 0E 00 01 B1 A0

    标注:00 01,返回数据 0为正在运动 ,1为停止运动,未检测到夹到物,2为停止运动,检测到夹住物体,3为检测到夹住物体,物体掉落

  • 设置/读取夹爪 P 值

    • 设置

      指令:FE FE 08 0E 06 00 0F 00 64 5A FD

      功能码:06 写操作

      参数:参数 00 64,设置 P 值为 100,设置范围(1-150)

      返回:FE FE 08 0E 06 00 0F 00 01 71 3D

      标注:成功返回 00 01,失败返回 00 00

    • 读取

      指令:FE FE 08 0E 03 00 10 00 00 77 01 功能码:03 读操作 参数:无 返回:FE FE 08 0E 03 00 10 00 64 9C 00 标注:返回数据 00 64,表示当前 P 值为 100

  • 设置/读取夹爪 D 值

    • 设置

      指令:FE FE 08 0E 06 00 11 00 64 5C 9D

      功能码:06 写操作

      参数:参数 00 64,设置 D 值为 100,设置范围(1-150)

      返回:FE FE 08 0E 06 00 11 00 01 77 5D

      标注:成功返回 00 01,失败返回 00 00

      若夹爪出现抖动,可适当增大 D 值

    • 读取

      指令:FE FE 08 0E 03 00 12 00 00 B7 A0

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 12 00 64 5C A1

      标注:返回数据 00 64,表示当前 D 值为 100

  • 设置/读取夹爪 I 值

    • 设置

      指令:FE FE 08 0E 06 00 13 00 00 77 3D

      功能码:06 写操作

      参数:参数 00 00,设置 I 值为 0,设置范围(1-150)

      返回:FE FE 08 0E 06 00 13 00 01 B7 FC

      标注:成功返回 00 01,失败返回 00 00

    • 读取

      指令:FE FE 08 0E 03 00 14 00 00 B6 40

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 14 00 00 B6 40

      标注:返回数据 00 00,表示当前 I 值为 0

  • 设置/读取夹爪顺时针可运行误差

    • 设置

      指令:FE FE 08 0E 06 00 15 00 01 B6 1C

      功能码:06 写操作

      参数:参数 00 01,设置值为 1,设置范围(0-16)

      返回:FE FE 08 0E 06 00 15 00 01 B6 1C

      标注:成功返回 00 01,失败返回 00 00

    • 读取

      指令:FE FE 08 0E 03 00 16 00 00 76 E1

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 16 00 01 B6 20

      标注:返回数据 00 01,表示当前值为 1

  • 设置/读取夹爪顺时针可运行误差

    • 设置

      指令:FE FE 08 0E 06 00 17 00 01 76 BD

      功能码:06 写操作

      参数:参数 00 01,设置值为 1,设置范围(0-16)

      返回:FE FE 08 0E 06 00 17 00 01 76 BD

      标注:成功返回 00 01,失败返回 00 00

    • 读取

      指令:FE FE 08 0E 03 00 18 00 00 B5 80

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 18 00 01 75 41

      标注:返回数据 00 01,表示当前值为 1

  • 设置/读取夹爪最小启动力

    • 设置

      指令:FE FE 08 0E 06 00 19 00 18 7F 1D

      功能码: 06 写操作

      参数:00 18

      返回:FE FE 08 0E 06 00 19 00 01 B5 DC

      标注:成功返回 00 01,失败返回 00 00

    • 读取

      指令:FE FE 08 0E 03 00 1A 00 00 75 21

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 1A 00 18 7F 21

      标注:返回数据 00 18,表示当前值为 24

  • 设置/读取扭矩

    • 设置

      指令:FE FE 08 0E 06 00 1B 00 64 F8 BC

      功能码: 06 写操作

      参数:00 64 设置扭力为 100,参数范围(0-100)

      返回:FE FE 08 0E 06 00 1B 00 01 75 7D

      标注:成功返回 00 01,失败返回 00 00

    • 读取

      指令:FE FE 08 0E 03 00 1C 00 00 74 C1

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 1C 01 2C 39 C1

      标注:返回数据 01 2C,表示当前值为 300,扭力越大电流也会增大,夹爪力度 也会增大

  • io 输出设置

    指令:FE FE 08 0E 06 00 1D 00 10 78 5D

    功能码:06 写操作

    参数:00 10 设置 IO 输出为 10,参数范围(00,01,10,11)

    返回:FE FE 08 0E 06 00 1D 00 01 74 9D

    标注:成功返回 00 01,失败返回 00 00

  • 设置 io 张开角度

    • 设置

      指令:FE FE 08 0E 06 00 1E 00 32 61 2D

      功能码: 06 写操作

      参数:00 32 设置 IO 张开角度为 50,参数范围(0-100)

      返回:FE FE 08 0E 06 00 1E 00 01 74 6D

      标注:成功返回 00 01,失败返回 00 00

    • 读取 指令:FE FE 08 0E 03 00 22 00 00 B8 A0

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 22 00 32 6D 21

      标注:00 32 数据返回为 50 度

  • 设置 io 闭合角度

    • 设置 指令:FE FE 08 0E 06 00 1F 00 00 74 FD

      功能码: 06 写操作

      参数:00 32 设置 IO 闭合角度为 0,参数范围(0-100)

      返回:FE FE 08 0E 06 00 1F 00 01 B4 3C

      标注:成功返回 00 01,失败返回 00 00

    • 读取

      指令:FE FE 08 0E 03 00 23 00 00 78 F1

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 23 00 00 78 F1

      标注:00 00 数据返回为 0 度

  • 设置/读取夹爪速度

    • 设置

      指令:FE FE 08 0E 06 00 20 00 32 AD 4C

      功能码: 06 写操作

      参数:00 32 设置速度为 50,参数范围(1-100)

      返回:FE FE 08 0E 06 00 20 00 01 B8 0C

      标注:成功返回 00 01,失败返回 00 00

    • 读取

      指令:FE FE 08 0E 03 00 21 00 00 B8 50

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 21 00 32 6D D1

      标注:00 32 数据返回为 50

  • 设置绝对角度

    指令:FE FE 08 0E 06 00 24 00 64 52 8D

    功能码: 06 写操作

    参数:00 64 设置绝对角度为 100,参数范围(0-100)

    返回:FE FE 08 0E 06 00 24 00 01 79 4D

    标注:成功返回 00 01,失败返回 00 00

    由于响应时间长,用户一直发送这个指令将会被放入队列中逐条指令执行, 绝对角度会等待夹爪运动到指定位置后才返回指令,如果运动过程中有物体阻 碍运动使得夹爪无法运动到指定位置等待超时后返回失败指令

  • 暂停运动

    指令:FE FE 08 0E 06 00 25 00 00 79 DD

    功能码: 06 写操作

    参数:无

    返回:FE FE 08 0E 06 00 25 00 01 B9 1C

    标注:成功返回 00 01,失败返回 00 00

    暂停运动作用于设置绝对角度,发送该指令后将不会从队列中执行绝对角度 指令

  • 恢复运动

    指令:FE FE 08 0E 06 00 26 00 00 79 2D

    功能码: 06 写操作

    参数:无

    返回:FE FE 08 0E 06 00 26 00 01 B9 EC

    标注:成功返回 00 01,失败返回 00 00

    恢复运动作用于设置绝对角度,该指令可以恢复绝对角度队列执行

  • 停止运动

    指令:FE FE 08 0E 06 00 27 00 00 B9 7C

    功能码: 06 写操作

    参数:无

    返回:FE FE 08 0E 06 00 27 00 01 79 BD

    标注:成功返回 00 01,失败返回 00 00

    停止运动作用于绝对角度,该指令会清除绝对指令队列

  • 获取当前队列的数据量

    指令:FE FE 08 0E 03 00 28 00 00 BA 80

    功能码:03 读操作

    参数:无

    返回:FE FE 08 0E 03 00 28 00 00 BA 80

    标注:00 00,表示绝对角度队列中的指令个数为 0

    该指令作用于设置绝对角度,该指令可以获取绝对角度队列中的指令个数

  • 设置舵机虚位数值

    • 设置

      指令:FE FE 08 0E 06 00 29 00 08 BC 1C

      功能码: 06 写操作

      参数:00 08 设置夹爪位置误差范围,参数范围(0-254)

      返回:FE FE 08 0E 06 00 29 00 01 BA DC

      标注:成功返回 00 01,失败返回 00 00

    • 读取

      指令:FE FE 08 0E 03 00 2A 00 00 7A 21

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 2A 00 08 BC 20

      标注:00 08 数据返回 8

      默认数值为 8,虚位设置越大,夹爪位置判定精准度也会相应降低

  • 设置/读取夹持电流

    • 设置

      指令:FE FE 08 0E 06 00 2B 00 FE 3A 3D

      功能码: 06 写操作

      参数:00 FE 设置夹持电流为 254,参数范围(0-254)

      返回:FE FE 08 0E 06 00 2B 00 01 7A 7D

      标注:成功返回 00 01,失败返回 00 00

    • 读取

      指令:FE FE 08 0E 03 00 2C 00 00 7B C1

      功能码:03 读操作

      参数:无

      返回:FE FE 08 0E 03 00 2C 00 FE FB 40

      标注:00 FE 数据返回 254,设置扭矩时夹持物体电流会随之适配,这条指令可 以自行设置夹持电流

results matching ""

    No results matching ""