2019-05-18

2019-05-18  本文已影响0人  CMPEAX

ESD闸机上位机与下位机通讯协议

## 协议中都要携带一个token,token为一个随机值,作为当前通讯的标记/代号。
token 时效性为当前次操作

协议内容

功能代号 对应功能
0x00 上位机 广播IP地址 (暂时保留)
0x01 在下位机上录入人员信息
0x02 下位机修改人员权限验证方式
0x03 下位机修改参数设置后
0x04 上位机修改某一闸机的参数设置
0x05 上位机获取下位机参数设置信息
0x06 上位机进行人员录入或修改信息
0x07 下位机(通过/没通过)验证
0x08 异常推送
0x09 下位机请求数据同步 (批量数据)
0x0A 下位机向上位机 上传离线录入数据(批量数据)
0x0B 上位机向下位机 上传离线录入数据(批量数据)
0x0C 通讯心跳包(20秒)

0x00:广播地址

大概5秒 发送一次,下位机接收到后,若无和服务端连接,则开始进行连接.


0x01:在下位机(闸机)上录入人员信息

️说明:

  • 验证类型字段中,对应值如下

    对应内容
    0 密码
    1 IC卡
    2 指纹
    3 刷脸
    4 二维码
  • 上位机收到后,如果没有数据,则新增。

  • 如果有数据,则更新,更新对应项


0x02:下位机(闸机)修改人员权限验证方式

️说明:

  • 权限验证字段 结构如下表格所示
    byte 0 1 2 3 4 5
    位数 密码 IC卡 指纹 刷脸 二维码 测量方式
  • 第0~4位如表格所示 ,该位设置值为1则是采用该验证方式,0为不采用

  • 第5位为四种测量方式,如下图表格

    代码 情况
    0 免测通过
    1 仅测手腕带
    2 仅测防静电鞋
    3 全测

    example: 验证方式为刷脸验证和IC卡验证,测量方式为全测时,该值为010103


0x03:下位机(闸机)修改参数设置后

️说明:

  • 这条信息在于 下位机告诉上位机,它的设置信息已经更新,让上位机去重新请求该下位机的设置参数信息.
  • 上位机收到后 将会发一条0x05信息向下位机请求参数设置信息。

0x04:上位机修改某一闸机的参数设置

️说明:

  • 出闸方式 对应值如下:

    对应功能
    0 免验证出闸
    1 按开关出闸
    2 刷卡出闸
  • 指示箭头灯 对应值如下:

    对应功能
    0 横向跑马灯
    1 横向静止灯
    2 45度斜跑马灯
    3 45度斜静止灯

0x05:上位机获取下位机参数设置信息

️说明:

  • 出闸方式 对应值如下:

    对应功能
    0 免验证出闸
    1 按开关出闸
    2 刷卡出闸
  • 指示箭头灯 对应值如下:

    对应功能
    0 横向跑马灯
    1 横向静止灯
    2 45度斜跑马灯
    3 45度斜静止灯

0x06:上位机进行人员录入或修改信息

大小 4字节 1字节 8字节 20字节 20字节 8k 10字节 10字节 20字节 10字节 10字节 6字节 10字节
内容 0x06 0 员工编号 员工姓名 所在部门 采集头像数据 密码值 IC卡卡号 人脸相关值 指纹值 二维码 *权限验证字段 通讯标记
大小 4字节 1字节 10字节
内容 0x06 1 通讯标记

️说明:

  • 权限验证字段 结构如下表格所示
    bit 0 1 2 3 4 5
    位数 二维码 刷脸验证 IC卡验证 指纹验证 密码验证 测量方式
  • 第0~4位如表格所示 ,该位设置值为1则是采用该验证方式,0为不采用

  • 第5位为四种测量方式,如下图表格

    代码 情况
    0 免测通过
    1 仅测手腕带
    2 仅测防静电鞋
    3 全测

    example: 验证方式为刷脸验证和IC卡验证,测量方式为全测时,该值为011003


0x07:下位机(通过/没通过)验证

大小 4字节 1字节 8字节 20字节 20字节 1字节 1字节 10字节 10字节 10字节 10字节 10字节
内容 0x07 0 员工编号 员工姓名 所在部门 *是否允许通行 *验证类型 左手测量值 右手测量值 左脚测量值 右脚测量值 通讯标记
大小 4字节 1字节 10字节
内容 0x07 1 通讯标记

️说明:

  • 是否允许通行 字段对应内容如下:

    对应内容
    0 不通过
    1 通过
  • 验证类型 字段对应内容如下:

    对应内容
    0 密码
    1 IC卡
    2 指纹
    3 刷脸
    4 二维码

0x08:异常推送

大小 4字节 1字节 8字节 50字节 10字节
内容 0x08 0 *错误代码 错误具体内容 通讯标记
大小 4字节 1字节 10字节
内容 0x08 1 通讯标记

️说明:

  • 错误代码错误具体内容 稍后定义

0x09 下位机请求数据同步 (批量数据)

大小 4字节 1字节 10字节
内容 0x09 0 通讯标记
大小 4字节 1字节 10字节
内容 0x09 1 通讯标记
大小 4字节 1字节 10字节 8字节 n
内容 0x09 2 通讯标记 数据长度 对应用户数据

️说明:

  • 每个 对应用户数据 格式如下:
大小 8字节 20字节 20字节 8k 10字节 10字节 20字节 10字节 10字节 6字节
内容 员工编号 员工姓名 所在部门 采集头像数据 密码值 IC卡卡号 人脸相关值 指纹值 二维码 *权限验证字段
  • 权限验证字段 结构如下表格所示
    byte 0 1 2 3 4 5
    位数 密码 IC卡 指纹 刷脸 二维码 测量方式
  • 第0~4位如表格所示 ,该位设置值为1则是采用该验证方式,0为不采用
  • 第5位为四种测量方式,如下图表格
    代码 情况
    0 免测通过
    1 仅测手腕带
    2 仅测防静电鞋
    3 全测


  • 对应用户数据8114 字节.

  • 对应用户数据 数组 就是 n 个 对应用户数据拼接起来。

    格式如下:

    byte 8114 字节 8114 字节 8114 字节 8114 字节 8114 字节 8114 字节
    位数 用户数据A 用户数据B 用户数据C 用户数据D 用户数据E 用户数据F

0x0A 下位机向上位机 上传离线录入数据(批量数据)

  • 场景:

    主要用于下位机与上位机脱机连接时,下位机进行录入操作,待下位机重新和上位机通讯后,下位机将数据发送给上位机。

大小 4字节 1字节 10字节
内容 0x0A 0 通讯标记
大小 4字节 1字节 10字节
内容 0x0A 1 通讯标记
大小 4字节 1字节 10字节 8字节 n
内容 0x0A 2 通讯标记 数据长度 对应用户数据 数组

️说明:

  • 每个 对应用户数据 格式如下:
大小 8字节 20字节 20字节 8k 10字节 10字节 20字节 10字节 10字节 6字节
内容 员工编号 员工姓名 所在部门 采集头像数据 密码值 IC卡卡号 人脸相关值 指纹值 二维码 *权限验证字段
  • 权限验证字段 结构如下表格所示
    byte 0 1 2 3 4 5
    位数 密码 IC卡 指纹 刷脸 二维码 测量方式
  • 第0~4位如表格所示 ,该位设置值为1则是采用该验证方式,0为不采用
  • 第5位为四种测量方式,如下图表格
    代码 情况
    0 免测通过
    1 仅测手腕带
    2 仅测防静电鞋
    3 全测


  • 对应用户数据8114 字节.

  • 对应用户数据 数组 就是 n 个 对应用户数据拼接起来。

    格式如下:

    byte 8114 字节 8114 字节 8114 字节 8114 字节 8114 字节 8114 字节
    位数 用户数据A 用户数据B 用户数据C 用户数据D 用户数据E 用户数据F

0x0B 上位机向下位机 上传离线录入数据(批量数据)

  • 场景:

    主要用于下位机与上位机脱机连接时,上位机进行录入操作,待下位机重新和上位机通讯后,上位机将数据发送给下位机。

大小 4字节 1字节 10字节
内容 0x0B 0 通讯标记

| 大小 | 4字节 | 1字节 | 10字节 |
| -- | -- | -- | -- | -- |
| 内容 | 0x0B | 1 | 通讯标记 |

大小 4字节 1字节 10字节 8字节 n
内容 0x0B 2 通讯标记 数据长度 对应用户数据 数组

️说明:

  • 每个 对应用户数据 格式如下:
大小 8字节 20字节 20字节 8k 10字节 10字节 20字节 10字节 10字节 6字节
内容 员工编号 员工姓名 所在部门 采集头像数据 密码值 IC卡卡号 人脸相关值 指纹值 二维码 *权限验证字段
  • 权限验证字段 结构如下表格所示
    byte 0 1 2 3 4 5
    位数 密码 IC卡 指纹 刷脸 二维码 测量方式
  • 第0~4位如表格所示 ,该位设置值为1则是采用该验证方式,0为不采用
  • 第5位为四种测量方式,如下图表格
    代码 情况
    0 免测通过
    1 仅测手腕带
    2 仅测防静电鞋
    3 全测


  • 对应用户数据8114 字节.

  • 对应用户数据 数组 就是 n 个 对应用户数据拼接起来。

    格式如下:

    byte 8114 字节 8114 字节 8114 字节 8114 字节 8114 字节 8114 字节
    位数 用户数据A 用户数据B 用户数据C 用户数据D 用户数据E 用户数据F

0x0C 通讯心跳包

  • 场景:

    上位机隔一段时间发送心跳包给下位机 下位机收到后作出应答。以此来判断在线或者离线状态。

大小 4字节 1字节 10字节
内容 0x0C 0 通讯标记
大小 4字节 1字节 10字节
内容 0x0C 1 通讯标记
上一篇 下一篇

猜你喜欢

热点阅读