注意:当 doNum>0 时,才支持此功能,doNum可在此页的info信息中查看

符号 数值 描述
DO_CTRL 101 DO控制,控制指令在info中
DO_CTRL_SUCCEED 102 DO控制成功
DO_CTRL_FAIL 103 DO控制失败
DO_CTRL_CMD_ERR 104 DO控制指令错误
DO_READ 105 读取DO状态,查询指令的内容放在info中
DO_READ_SUCCEED 106 读取DO状态成功
DO_READ_FAIL 107 读取DO状态失败
DO_STATUS 108 返回的DO状态数据
DO_DLY_CTRL 109 DO延时控制,当 doNum>1 时,才支持此功能
DO_DLY_CTRL_SUCCEED 110 DO延时控制成功
DO_DLY_CTRL_FAIL 111 DO延时控制失败
DO_DLY_CTRL_CMD_ERR 112 DO延时控制指令错误

1、DO控制
  • 客户端发送
    1. {
    2. "userKey":"AAAAABBBBBCCCCCDDDDD",
    3. "msgCode":101,
    4. "info":{
    5. "requestId":"xxxxxxxx",
    6. "devSn":"ltC2luw5LXbmeoAx6fLM",
    7. "ch":1,
    8. "sta":1
    9. }
    10. }
    info信息说明如下:
数据名 数据类型 必选 描述
requestId String 由二次开发端添加的requestId,最大长度不要超过40位字符串,可随机生成
devSn String 当要对某个设备进行控制时,填上设备的devSn信息,
当要对当前开发者账号下所有设备时,此值为空即可
ch int 0为当前设备的所有通道,>0时,1即通道1,2即通道2,依此类推
sta int 0 - 自锁关,关闭后状态长保持,参数dlyTime、waitTime和times可忽略。查看示例
1 - 自锁开,开启后状态长保持,参数dlyTime、waitTime和times可忽略。查看示例
2 - 点动关,关闭后延时dlyTime时间再开启,参数waitTime和times可忽略。查看示例
3 - 点动开,开启后延时dlyTime时间再关闭,参数waitTime和times可忽略。查看示例
4 - 互锁延时,互锁通道关闭,本通道等待waitTime时间后开启,dlyTime固定为 100000,参数times可忽略。查看示例
5 - 互锁点动,互锁通道关闭,本通道等待waitTime时间后开启,开启后延时dlyTime时间再关闭,参数times可忽略。查看示例
6 - 循环,开启后延时dlyTime时间再关闭,关闭后等待waitTime时间再开启,循环次数达到times次后停止。查看示例
7 - 翻转,当前状态取反,开启转关闭,关闭转开启,参数dlyTime、waitTime和times可忽略。查看示例
:互锁通道固定为 1 和 2,3 和 4,5 和 6
dlyTime int 时间单位为秒或 100 毫秒,可通过 AT+DLYUNIT 指令设置,默认为秒
1…99999 - 点动关、点动开、互锁点动和循环模式的取值范围
100000 - 自锁关、自锁开、互锁延时和翻转模式固定为此值
waitTime int 时间单位为秒或 100 毫秒,可通过 AT+DLYUNIT 指令设置,默认为秒
0…99999 - 互锁延时和互锁点动模式的取值范围
1…99999 - 循环模式的取值范围
100000 - 自锁关、自锁开、点动关、点动开和翻转模式固定为此值
times int 1…999999 - 循环模式的循环次数
1000000 - 循环模式时此值为无限循环,非循环模式时固定为此值
  • 以下为8种不同控制模式的示例,以单设备的通道1控制进行举例

    • 自锁关
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":101,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "ch":1,
      8. "sta":0
      9. }
      10. }
    • 自锁开
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":101,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "ch":1,
      8. "sta":1
      9. }
      10. }
    • 点动关:5秒
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":101,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "ch":1,
      8. "sta":2,
      9. "dlyTime":5
      10. }
      11. }
    • 点动开:5秒
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":101,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "ch":1,
      8. "sta":3,
      9. "dlyTime":5
      10. }
      11. }
    • 互锁延时:延时3秒开启
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":101,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "ch":1,
      8. "sta":4,
      9. "waitTime":3
      10. }
      11. }
    • 互锁点动:延时3秒开启,开启5秒后关闭
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":101,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "ch":1,
      8. "sta":5,
      9. "dlyTime":5,
      10. "waitTime":3
      11. }
      12. }
    • 循环:5秒延时,循环10次
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":101,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "ch":1,
      8. "sta":6,
      9. "dlyTime":5,
      10. "times":10
      11. }
      12. }
    • 翻转
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":101,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "ch":1,
      8. "sta":7
      9. }
      10. }
  • 服务端响应示例,以设备通道1自锁关为例

    • 返回成功:此状态只有硬件响应OK时,才会返回,所以有一定的等待时间,一般在1秒内,客户端可以设置3秒超时
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":102,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "ch":1,
      8. "sta":0
      9. }
      10. }
    • 返回失败
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":103,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "ch":1,
      8. "sta":0
      9. }
      10. }
    • 返回指令错误
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":104,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "ch":1,
      8. "sta":6, #缺少其他参数
      9. "times":10
      10. }
      11. }

2、读取DO状态,只能读取设备的某个通道或设备的所有通道
  • 客户端发送,以读取设备的通道1为例
    1. {
    2. "userKey":"AAAAABBBBBCCCCCDDDDD",
    3. "msgCode":105,
    4. "info":{
    5. "requestId":"xxxxxxxx",
    6. "devSn":"ltC2luw5LXbmeoAx6fLM",
    7. "ch":1 #如果需要读取整个设备的所有通道,此值为0即可
    8. }
    9. }
  • 服务端响应
    • 读取成功
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":106,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "ch":1
      8. }
      9. }
    • 读取失败
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":107,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "ch":1
      8. }
      9. }

3、DO状态信息
  • 服务端响应
    1. {
    2. "userKey":"AAAAABBBBBCCCCCDDDDD",
    3. "msgCode":108,
    4. "info":[
    5. {
    6. "devSn":"ltC2luw5LXbmeoAx6fLM",
    7. "ch":1,
    8. "val":1,
    9. "dlyTime":5,
    10. "times":10
    11. },
    12. {
    13. "devSn":"ltC2luw5LXbmeoAx6fLM",
    14. "ch":2,
    15. "val":0,
    16. "dlyTime":3,
    17. "times":6
    18. }
    19. ]
    20. }
    info信息说明如下:
数据名 数据类型 描述
devSn String 设备条码
ch int 当前通道号
val int 当前通道状态值,0为断开,1为吸合
dlyTime int 延时时间
times int 循环剩余次数

4、DO的延时控制

说明:当 doNum>1 时,才支持此功能。目前只支持延时自锁关、延时自锁开及退出延时控制

  • 延时自锁关:示例为通道1到通道4,每通道间隔5秒执行自锁关
    • 客户端发送
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":109,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "en":1,
      8. "stCh":1,
      9. "endCh":4,
      10. "interval":5,
      11. "sta":0
      12. }
      13. }
    • 服务端响应
      • 返回成功
        1. {
        2. "userKey":"AAAAABBBBBCCCCCDDDDD",
        3. "msgCode":110,
        4. "info":{
        5. "requestId":"xxxxxxxx",
        6. "devSn":"ltC2luw5LXbmeoAx6fLM",
        7. "en":1,
        8. "stCh":1,#
        9. "endCh":4,
        10. "interval":5,
        11. "sta":0
        12. }
        13. }
      • 返回失败
        1. {
        2. "userKey":"AAAAABBBBBCCCCCDDDDD",
        3. "msgCode":111,
        4. "info":{
        5. "requestId":"xxxxxxxx",
        6. "devSn":"ltC2luw5LXbmeoAx6fLM",
        7. "en":1,
        8. "stCh":1,
        9. "endCh":4,
        10. "interval":5,
        11. "sta":0
        12. }
        13. }
      • 返回指令错误
        1. {
        2. "userKey":"AAAAABBBBBCCCCCDDDDD",
        3. "msgCode":112,
        4. "info":{
        5. "requestId":"xxxxxxxx",
        6. "devSn":"ltC2luw5LXbmeoAx6fLM",
        7. "en":1,
        8. "stCh":1,
        9. "endCh":1,#结束通道号必须大于起始通道号
        10. "interval":5,
        11. "sta":0
        12. }
        13. }
        info信息说明
数据名 数据类型 描述
requestId String 由二次开发端添加的id,最大长度不要超过40位字符串,可随机生成
devSn String 当要对某个设备进行控制时,填上设备的devSn信息,
当要对当前开发者账号下所有设备时,此值为空即可
en int 0退出延时控制,1启动延时控制
stCh int 起始通道号
endCh int 结束通道号,结束通道号必须大于起始通道号
interval int 相邻通道的动作间隔时间
sta int 0为自锁关,1为自锁开


  • 延时自锁开:示例为通道1到通道4,每通道间隔5秒执行自锁开
    • 客户端发送
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":109,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "en":1,
      8. "stCh":1,
      9. "endCh":4,
      10. "interval":5,
      11. "sta":1
      12. }
      13. }
    • 服务端响应
      查看上述返回
  • 退出延时控制
    • 客户端发送
      1. {
      2. "userKey":"AAAAABBBBBCCCCCDDDDD",
      3. "msgCode":109,
      4. "info":{
      5. "requestId":"xxxxxxxx",
      6. "devSn":"ltC2luw5LXbmeoAx6fLM",
      7. "en":0 #为0即为退出
      8. }
      9. }
    • 服务端响应
      查看上述返回
文档更新时间: 2025-06-09 09:26   作者:wky