ESD闸机上位机与下位机通讯协议
## 协议中都要携带一个token,token为一个随机值,作为当前通讯的标记/代号。
token 时效性为当前次操作
协议内容
功能代号 |
对应功能 |
0x00 |
上位机 广播IP地址 (暂时保留) |
0x01 |
在下位机上录入人员信息 |
0x02 |
下位机修改人员权限验证方式 |
0x03 |
下位机修改参数设置后 |
0x04 |
上位机修改某一闸机的参数设置 |
0x05 |
上位机获取下位机参数设置信息 |
0x06 |
上位机进行人员录入或修改信息 |
0x07 |
下位机(通过/没通过)验证 |
0x08 |
异常推送 |
0x09 |
下位机请求数据同步 (批量数据) |
0x0A |
下位机向上位机 上传离线录入数据(批量数据) |
0x0B |
上位机向下位机 上传离线录入数据(批量数据) |
0x0C |
通讯心跳包(20秒) |
0x00:广播地址
- 上位机通过udp广播自身地址
大小 |
4字节 |
15字节 |
端口号 |
10字节 |
内容 |
0x00 |
IP地址 |
端口号 |
通讯标记 |
大概5秒 发送一次,下位机接收到后,若无和服务端连接,则开始进行连接.
0x01:在下位机(闸机)上录入人员信息
- 下位机录入后发送给上位机
大小 |
4字节 |
1字节 |
8字节 |
20字节 |
8k字节 |
1字节 |
10字节 |
10字节 |
内容 |
0x01 |
0 |
员工编号 |
员工姓名 |
员工头像数据(176*218) |
*验证类型 |
对应验证类型的值 |
通讯标记 |
- 上位机完成操作后应答下位机
大小 |
4字节 |
1字节 |
10字节 |
内容 |
0x01 |
1 |
通讯标记 |
️说明:
-
验证类型
字段中,对应值如下
值 |
对应内容 |
0 |
密码 |
1 |
IC卡 |
2 |
指纹 |
3 |
刷脸 |
4 |
二维码 |
-
上位机收到后,如果没有数据,则新增。
-
如果有数据,则更新,更新对应项
0x02:下位机(闸机)修改人员权限验证方式
-
下位机录入后发送给上位机
大小 |
4字节 |
1字节 |
8字节 |
6字节 |
10字节 |
内容 |
0x02 |
0 |
员工编号 |
*权限验证字段 |
通讯标记 |
-
上位机完成操作后应答下位机
大小 |
4字节 |
1字节 |
10字节 |
内容 |
0x02 |
1 |
通讯标记 |
️说明:
-
权限验证字段
结构如下表格所示
byte |
0 |
1 |
2 |
3 |
4 |
5 |
位数 |
密码 |
IC卡 |
指纹 |
刷脸 |
二维码 |
测量方式 |
0x03:下位机(闸机)修改参数设置后
- 下位机发送给上位机
大小 |
4字节 |
1字节 |
10字节 |
内容 |
0x03 |
0 |
通讯标记 |
- 上位机收到后应答下位机
大小 |
4字节 |
1字节 |
10字节 |
内容 |
0x03 |
1 |
通讯标记 |
️说明:
- 这条信息在于 下位机告诉上位机,它的设置信息已经更新,让上位机去重新请求该下位机的设置参数信息.
- 上位机收到后 将会发一条
0x05
信息向下位机请求参数设置信息。
0x04:上位机修改某一闸机的参数设置
-
上位机修改某闸机信息后下发给下位机
大小 |
4字节 |
1字节 |
15字节 |
12字节 |
2字节 |
10字节 |
10字节 |
15字节 |
10字节 |
10字节 |
10字节 |
10字节 |
10字节 |
10字节 |
1 字节 |
1字节 |
10字节 |
内容 |
0x04 |
0 |
设备IP地址 |
设备固定ID信息 |
本机机号 |
公司名字 |
管理员密码 |
本地IP |
手腕带单手上限值 |
手腕带单手下限值 |
手腕带双手上限值 |
手腕带双手下限值 |
防静电鞋上限值 |
防静电鞋下限值 |
*出闸方式 |
*指示箭头灯设置 |
通讯标记 |
-
下位机收到后应答上位机
大小 |
4字节 |
1字节 |
10字节 |
内容 |
0x04 |
1 |
通讯标记 |
️说明:
-
出闸方式
对应值如下:
值 |
对应功能 |
0 |
免验证出闸 |
1 |
按开关出闸 |
2 |
刷卡出闸 |
-
指示箭头灯
对应值如下:
值 |
对应功能 |
0 |
横向跑马灯 |
1 |
横向静止灯 |
2 |
45度斜跑马灯 |
3 |
45度斜静止灯 |
0x05:上位机获取下位机参数设置信息
-
上位机发送请求指令给下位机
大小 |
4字节 |
1字节 |
10字节 |
内容 |
0x05 |
0 |
通讯标记 |
-
下位机收到信息后发送给上位机
大小 |
4字节 |
1字节 |
15字节 |
12字节 |
2字节 |
10字节 |
10字节 |
15字节 |
10字节 |
10字节 |
10字节 |
10字节 |
10字节 |
10字节 |
1 字节 |
1字节 |
10字节 |
内容 |
0x05 |
1 |
设备IP地址 |
设备固定ID信息 |
本机机号 |
公司名字 |
管理员密码 |
本地IP |
手腕带单手上限值 |
手腕带单手下限值 |
手腕带双手上限值 |
手腕带双手下限值 |
防静电鞋上限值 |
防静电鞋下限值 |
*出闸方式 |
*指示箭头灯设置 |
通讯标记 |
-
上位机接收到处理后作应答.
大小 |
4字节 |
1字节 |
10字节 |
内容 |
0x05 |
2 |
通讯标记 |
️说明:
-
出闸方式
对应值如下:
值 |
对应功能 |
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卡验证 |
指纹验证 |
密码验证 |
测量方式 |
0x07:下位机(通过/没通过)验证
大小 |
4字节 |
1字节 |
8字节 |
20字节 |
20字节 |
1字节 |
1字节 |
10字节 |
10字节 |
10字节 |
10字节 |
10字节 |
内容 |
0x07 |
0 |
员工编号 |
员工姓名 |
所在部门 |
*是否允许通行 |
*验证类型 |
左手测量值 |
右手测量值 |
左脚测量值 |
右脚测量值 |
通讯标记 |
大小 |
4字节 |
1字节 |
10字节 |
内容 |
0x07 |
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 |
全测 |
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 |
全测 |
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 |
全测 |
0x0C 通讯心跳包
大小 |
4字节 |
1字节 |
10字节 |
内容 |
0x0C |
0 |
通讯标记 |
大小 |
4字节 |
1字节 |
10字节 |
内容 |
0x0C |
1 |
通讯标记 |
网友评论