OP-BT/BTS 客户命令参考手册
本文档列出了 OP-BTS / OP-BT 蓝牙光电探头的所有通信命令。
通讯测试软件:sscom32
手机蓝牙连接软件:蓝牙调试软件均可
蓝牙:安卓系统要求使用SPP方式通讯,iOS则使用BLE方式通讯
目录
1. 命令使用说明
命令使用文本格式,通过蓝牙连接设备成功后发送。
对于Windows系统,请使用文本编辑器将命令复制到剪贴板,然后使用串口调试工具连接设备后将剪贴板中的命令发送给设备。
对于android和ios系统,请使用文本编辑器将命令复制到剪贴板,然后使用蓝牙调试工具连接设备后将剪贴板中的命令发送给设备。
命令格式为:命令名\r\n
命令中的<参数>是一定要有的参数。[参数]是可以选的
1. 查询电池电压
功能说明
查询设备当前电池电压值,用于监控设备电源状态。
- 命令:
GetBatteryVolt\r\n - 返回:
V=3912\r\n - 说明:
- 返回值为电池电压,单位为毫伏(mV)
- 例如:
V=3912表示电池电压为 3912mV(约3.9V)
使用示例
示例1:查询电池电压
发送: GetBatteryVolt\r\n
返回: V=3912\r\n
说明: 当前电池电压为3912毫伏(3.912伏)
示例2:使用串口工具发送命令
在windows串口调试工具(如sscom32)中:
- 选择正确的串口号和波特率
- 在发送框中输入:
GetBatteryVolt - 点击发送(确保发送时包含回车换行符
\r\n) - 接收区显示:
V=3912
示例3:通过蓝牙发送命令
在蓝牙调试软件中:
2. 发送命令:GetBatteryVolt\r\n
3. 接收返回:V=3912\r\n
电压参考值
- 正常电压范围: 3400mV - 4200mV
注意事项
- 命令格式: 必须包含回车换行符
\r\n - 实时查询: 此命令返回的是实时电压值,每次查询都会获取最新状态
3. 开启IEC自动波特率功能
功能说明
临时开启IEC自动波特率功能,使设备能够自动检测并切换到正确的通信波特率。此设置仅在运行时有效,设备重启后会恢复为开机时的默认状态。
设备固件版本必须大于V4.41版本
命令格式
- 命令:
OPIECAUTOON\r\n - 返回:
OK\r\n - 说明:
- 成功开启IEC自动波特率功能
- 此设置仅在运行时有效,重启后恢复为开机状态
- 如需永久生效,请使用OP系列命令
{"IECAutoFlag":true}并保存配置
使用示例
示例1:开启IEC自动波特率功能
发送: OPIECAUTOON\r\n
返回: OK\r\n
说明: 成功开启IEC自动波特率功能,设备现在可以自动检测并切换波特率
示例2:使用场景
场景:需要临时启用自动波特率功能来测试不同波特率的电表
步骤1: 发送开启命令
发送: OPIECAUTOON\r\n
返回: OK\r\n
步骤2: 开始与电表通信,设备会自动检测并切换到正确的波特率
步骤3: 设备重启后,此设置会恢复为默认状态
示例3:与关闭命令配合使用
// 开启自动波特率
发送: OPIECAUTOON\r\n
返回: OK\r\n
// 进行通信测试...
// 关闭自动波特率
发送: OPIECAUTOOFF\r\n
返回: OK\r\n
注意事项
- 临时设置: 此命令的设置在设备重启后会失效,恢复为开机时的默认状态
- 命令格式: 必须包含回车换行符
\r\n - 应用场景: 适用于需要临时测试或调试自动波特率功能的场景
4. 关闭IEC自动波特率功能
功能说明
临时关闭IEC自动波特率功能,使设备使用固定的波特率进行通信。此设置仅在运行时有效,设备重启后会恢复为开机时的默认状态。
设备固件版本必须大于V4.41版本
命令格式
此命令使用文本格式,通过串口或蓝牙发送。
- 命令:
OPIECAUTOOFF\r\n - 返回:
OK\r\n - 说明:
- 成功关闭IEC自动波特率功能
- 此设置仅在运行时有效,重启后恢复为开机状态
- 如需永久生效,请使用OP系列命令
{"IECAutoFlag":false}并保存配置
使用示例
示例1:关闭IEC自动波特率功能
发送: OPIECAUTOOFF\r\n
返回: OK\r\n
说明: 成功关闭IEC自动波特率功能,设备将使用固定波特率进行通信
示例2:使用场景
场景:需要固定波特率进行通信,避免自动切换
步骤1: 发送关闭命令
发送: OPIECAUTOOFF\r\n
返回: OK\r\n
步骤2: 使用固定波特率与电表通信
步骤3: 设备重启后,此设置会恢复为默认状态
示例3:与开启命令配合使用
// 关闭自动波特率
发送: OPIECAUTOOFF\r\n
返回: OK\r\n
// 使用固定波特率进行通信...
// 重新开启自动波特率
发送: OPIECAUTOON\r\n
返回: OK\r\n
注意事项
- 临时设置: 此命令的设置在设备重启后会失效,恢复为开机时的默认状态
- 命令格式: 必须包含回车换行符
\r\n - 应用场景: 适用于需要固定波特率通信或精确控制通信参数的场景
5. 设置光电头波特率参数
功能说明
设置光电头(OP)的串口通信参数,包括波特率、校验位、数据位和停止位。此命令用于配置设备与电表之间的通信参数。
固件版本必须大于V4.3版本
命令格式(OP系列)
此命令使用文本格式,通过串口或蓝牙发送。
- 命令:
<BaudOp>,<baudrate>,<parity>,<datalen>,<stopbit>[,]\r\n - 返回:
OK\r\n
同样类似的命令还有(固件版本需要大于V4.5版本):
BaudAlt:设置光电头串口参数,对应BaudOp功能,返回统一的"OK\r\n"BaudStart:打开IEC自动波特率功能并设置初始IEC波特率,默认为300E71,返回统一的"OK\r\n"BaudMid:设置IEC中间波特率,如果设置,则在跳转时强制使用该波特率,不设置,则根据系统自动识别,返回统一的"OK\r\n"
参数说明
| 参数 | 说明 | 取值范围 | 示例 |
|---|---|---|---|
baudrate |
波特率 | 300-115200 | 9600, 19200, 38400 |
parity |
校验位 | N, E, O | N=无校验, E=偶校验, O=奇校验 |
datalen |
数据位长度 | 5, 6, 7, 8 | 8 |
stopbit |
停止位 | 0, 1, 2 | 0或1=1位停止位, 2=2位停止位 |
常用波特率配置
| 波特率 | 校验位 | 数据位 | 停止位 | 命令示例 |
|---|---|---|---|---|
| 9600 | 无校验 | 8 | 1 | BaudOp,9600,N,8,1\r\n |
| 19200 | 无校验 | 8 | 1 | BaudOp,19200,N,8,1\r\n |
| 300 | 偶校验 | 7 | 1 | BaudOp,300,E,7,1\r\n |
| 2400 | 偶校验 | 7 | 1 | BaudOp,2400,E,7,1\r\n |
| 4800 | 无校验 | 8 | 1 | BaudOp,4800,N,8,1\r\n |
| 38400 | 无校验 | 8 | 1 | BaudOp,38400,N,8,1\r\n |
| 57600 | 无校验 | 8 | 1 | BaudOp,57600,N,8,1\r\n |
| 115200 | 无校验 | 8 | 1 | BaudOp,115200,N,8,1\r\n |
使用示例
示例1:设置9600波特率,无校验,8数据位,1停止位
发送: BaudOp,9600,N,8,1\r\n
返回: OK\r\n
说明: 成功设置光电头波特率为9600,无校验,8数据位,1停止位
示例2:设置300波特率,偶校验,7数据位,1停止位(IEC标准)
发送: BaudOp,300,E,7,1\r\n
返回: OK\r\n
说明: 成功设置光电头波特率为300,偶校验,7数据位,1停止位(符合IEC 62056-21标准)
示例3:设置19200波特率,无校验,8数据位,1停止位
发送: BaudOp,19200,N,8,1\r\n
返回: OK\r\n
说明: 成功设置光电头波特率为19200,无校验,8数据位,1停止位
示例4:完整通信流程
步骤1: 设置波特率参数
发送: BaudOp,9600,N,8,1\r\n
返回: OK\r\n
步骤2: 开始与电表通信
(发送电表协议命令)
步骤3: 如需切换波特率,重新发送设置命令
发送: BaudOp,300,E,7,1\r\n
返回: OK\r\n
参数格式说明
波特率(baudrate)
- 范围: 300-115200
- 常用值: 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200
- 说明: 通信速率,单位:位/秒
校验位(parity)
- N: 无校验(None)
- E: 偶校验(Even)
- O: 奇校验(Odd)
- 说明: 用于检测数据传输错误
数据位(datalen)
- 范围: 5-8位
- 常用值: 7(IEC标准), 8(标准ASCII)
- 说明: 每个字符的数据位数
停止位(stopbit)
- 0 或 1: 1位停止位
- 2: 2位停止位
- 说明: 用于标识字符结束
注意事项
-
命令格式:
- 必须包含
BaudOp,前缀 - 参数之间用逗号分隔
- 末尾可选逗号,但建议不添加
- 必须包含回车换行符
\r\n
- 必须包含
-
参数匹配: 设置的参数必须与电表设备的通信参数完全匹配,否则无法正常通信
-
IEC标准配置:
- IEC 62056-21标准通常使用:300波特率,偶校验,7数据位,1停止位
- 命令示例:
BaudOp,300,E,7,1\r\n
-
实时生效: 设置后立即生效,无需重启设备
-
设备类型:
- 返回:
OK\r\n
- 返回:
-
与自动波特率的关系:
- 如果启用了IEC自动波特率功能,设备可能会自动调整波特率
- 如需固定波特率,请先关闭自动波特率功能:
OPIECAUTOOFF\r\n
附录
命令协议说明
OP运行时系列命令
- 格式: 文本格式
- 要求: 无需进入命令模式,可直接发送
- 结束符: 必须包含
\r\n(回车换行符)
通信方式
串口通信
- windows下使用串口调试工具(如sscom32)- 选择正确的串口号和波特率
- 发送命令时确保包含正确的结束符
蓝牙通信
- 安卓系统:使用蓝牙调试工具通过SPP或BLE方式通讯
- iOS系统:使用蓝牙调试工具通过BLE方式通讯
常见问题
Q1: 为什么发送命令后没有返回?
- 检查是否进入了命令模式(OP系列命令)
- 检查命令格式是否正确,特别是结束符
\r\n - 检查串口或蓝牙连接是否正常
Q2: 设置后重启设备,配置丢失了?
- OP运行时系列命令(OPIECAUTOON/OFF)是临时设置,重启后失效
Q3: 如何确认当前波特率设置?
- 使用OP专用配置系列命令查询
- 或查看设备菜单中的波特率设置
Q4: 自动波特率和固定波特率如何选择?
- 自动波特率:适用于不确定电表波特率的场景,设备会自动检测
- 固定波特率:适用于已知电表波特率,需要精确控制的场景
版本信息
- 文档版本: 1.0
- 更新日期: 2025-12-03
- 适用设备: OP-BT系列、OP-BTS系列