乐陵中回 - 回弹仪蓝牙通信交流

470 阅读4分钟

乐陵中回 - 回弹仪蓝牙操作说明

一、中回数字回弹仪通信协议

本协议为中回无线蓝牙数字回弹仪公开协议,各个友商可根据本协议配合开发相关应用。涉及到蓝牙通讯的回弹仪,目前 ZC225-B 型回弹仪采用的是蓝牙 4.0 SPP协议蓝牙,联系方式请登陆乐陵市回弹仪厂官网 www.hty.cn 查看。

本协议仅针对中回系列回弹仪产品:ZC225-B 型蓝牙云回弹仪 。

1.指令格式

起始符 + 命令识别码 + 数据帧 + 校验码<crc> + 结束符 + \r\n

1.1 命令起始符和结束符

$:起始符

#:结束符

1.2 数据帧

数据帧:前后以 ASCII 字符 " 标识,多个内容以 ASCII 字符, 隔开。(发送或应答可不包含数据帧)

在数据帧中,ASCII 字符 T 代表是、真、开启、合格等信息,ASCII 字符 F代表非、假、关闭、不合格。字符空格 null 代表本型号设备不包含此项功能或无效的数据,所有数据内容均采用 ASCII 字符型数据。

1.3 校验码

校验码:单字节累加和,占用一个字节(不含起始符和结束符,仅含命令识别码和数据帧),如下示例中的校验码全用代替。

1.4 命令识别码

1)上下位机通用命令

OK:接收成功

ERR:接收错误

2)上位机(APP 端)主模式发送

如下命令是上位机发送给回弹仪的命令。

① RDI:读取设备信息(Read device information)

② RUI:读取仪器使用信息(Read usage information)

③ RSI:读取系统设置信息(Read setting information)

④ MSI:修改系统设置信息(Modify system settings)

⑤ SRS:开启回弹采样(Start rebound sampling)

⑥ ERS:结束回弹采样(End rebound sampling)

⑦ RCI:读取仪器率定信息(Read calibration information)

⑧ MCI:修改仪器率定信息(Modify calibration information)

3)上位机(APP 端)接收

如下命令是回弹仪发送给 APP 的命令或信息。

RRD:实时回弹值数据(Receive rebound data)

2. 命令说明及示例

#### 	**2.1 读取设备信息:**

上位机发送:$RDI#\r\n

下位机返回:$RDI+"设备名称,设备编号,系统版本"+#\r\n

举例:$RDI"ZC3-B,20040701,V1.00"#\r\n

注:返回内容不正确或超时(500ms)可重新发送指令

2.2 读取仪器使用信息:

上位机发送:$RUI#\r\n

下位机返回:$RUI+"设备开机次数,弹击次数,按键按压次数"+#\r\n

 举例:$RUI"00000001,00000001,00000001"#\r\n

注:返回内容不正确或超时(500ms)可重新发送指令

   2.3 读取系统设置信息:

上位机发送:$RSI#\r\n

下位机返回:$RSI+"回弹上限,回弹下限,回弹初值,休眠延时(秒),关机延时(分钟),语音开关,蓝牙开关"+#\r\n

 举例:$RSI"99,15,08-31-64,30,30,F,T"#\r\n

注:返回内容不正确或超时(500ms)可重新发送指令

2.4 修改系统设置信息:

上位机发送:$MSI+"回弹上限,回弹下限,回弹初值"+#\r\n

  举例:$MSI"99,15,08-31-64"#\r\n

下位机返回:OK#\r\n 或 ERR#\r\n

 举例:$RUI"00000001,00000001,00000001"#\r\n

注:返回内容不正确、超时(500ms)或者为 ERR 可重新发送指令ZC225-B 回弹上下限固定为 99 和 15,不可修改,配置其他值无效,如需限制回弹上下限,可在软件端限制。

**2.5 开启回弹采样:**

对于 ZC3-B 有效,可用 APP 连接蓝牙云回弹仪,发送此指令表示需开启回弹采样,以实现云回弹功能。

上位机发送:$SRS#\r\n

下位机返回:OK#\r\n 或 ERR#\r\n

注:返回内容不正确、超时(500ms)或者为 ERR 可重新发送指令

2.6 开启回弹采样:

对于 ZC3-B 有效,可用 APP 连接蓝牙云回弹仪,在回弹采样完成后,发送此指令表示结束采样。

上位机发送:$ERS#\r\n

下位机返回:OK#\r\n 或 ERR#\r\n

注:返回内容不正确、超时(500ms)或者为 ERR 可重新发送指令

 2.7 结束回弹采样:

对于 ZC3-B 有效,可用 APP 连接蓝牙云回弹仪,在回弹采样完成后,发送此指令表示结束采样。

上位机发送:$ERS#\r\n

下位机返回:OK#\r\n 或 ERR#\r\n

注:返回内容不正确、超时(500ms)或者为 ERR 可重新发送指令

 2.8 ZC3-B 发送回弹采样值:

该命令是 ZC3-B 蓝牙云回弹仪的有效命令,在接收到上位机(APP)的“开 启回弹采样”命令后,回弹仪每弹击采样一次,就通过蓝牙端口发送一个采样值 给 APP。当回弹仪接收到上位机(APP)的“结束回弹采样”命令后,就停止发 送采样值给 APP。

下位机返回:$RRD+"回弹值"+#\r\n

 举例:$RRD"30"#\r\n (表示此次回弹采样值为 30)

   上位机接收正确发送:$OK#\r\n (超时代表接收正确)

上位机接收错误发送:$ERR#\r\n (下位机可重新发送)

 2.9 读取仪器率定信息:

上位机发送:$RCI#\r\n

下位机返回:$RCI+"率定值,率定结果"+#\r\n

   举例:$RCI"80,T"#\r\n

注:返回内容不正确或超时(500ms)可重新发送指令

 2.10 修改仪器率定信息:

上位机发送:$MCI+"率定值"+#\r\n

  举例:$MCI"80"#\r\n

下位机返回:OK#\r\n 或 ERR#\r\n

  注:返回内容不正确、超时(500ms)或者为 ERR 可重新发送指令

二、回弹仪通信操作说明

1.联机流程

  1. 扫描 BLE 设备,通过蓝牙名称筛选出博远 HT225S 回弹仪设备
  1. 连接设备,枚举 service ,枚举 characteristic,开启更新通知(连接后设备中蓝色的灯亮起)
  1. 写 characteristic 以发送指令,等待 characteristic 可读通知,读 characteristic 以接收回应
  1. 重复3步骤
  1. 断开连接

2.属性值说明

名称数值
蓝牙名称(仪器序列号)ZC3-T/ZC3-U(测试机名称)(以ZC3开头进行判断回弹仪类型)
Service UUID49535343-FE7D-4AE5-8FA9-9FAFD205E455
Characteristic UUID49535343-ACA3-481C-91EC-D85E28A60318

3.命令语句说明

当前提供的技术对接文档中演示的命令语句使用的是Ascli编码进行数据读写操作,因保障和之前对接蓝牙设备需求相同需使用Hex(16进制)进行数据读写操作。

【实际案例举例:】

下位机发送回弹仪采样值:24 52 52 44 22 “实际回弹值” 22 “校验码” 23 0D 0A
开启回弹仪采样:24 53 52 53 F8(校验码)23 0D 0A
结束回弹仪采样:24 45 52 53 EA(校验码)23 0D 0A
获取设备信息:24 52 44 49 DF(校验码) 23 0D 0A

项目中实际对接需命令类型,以实际业务为准。其中重点为校验码的生成,开发人员需注意上述生成方式。

【在线工具】

CRC - 和校验工具:https://www.23bei.com/tool-8.html
字符串和16进制互转工具:https://zixuephp.net/tool-str-hex.html

【iOS选手注意,注意,注意】    

iOS在对接时,中回技术对接反馈蓝牙读写的特征值是分开的,需在特征值1写入操作命令,在特征值2中会接收到相应的通知值。具体特征值如图: