VNC与工控机接口协议规范.docx
- 文档编号:25985189
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:24
- 大小:23.93KB
VNC与工控机接口协议规范.docx
《VNC与工控机接口协议规范.docx》由会员分享,可在线阅读,更多相关《VNC与工控机接口协议规范.docx(24页珍藏版)》请在冰豆网上搜索。
VNC与工控机接口协议规范
1.说明
1.1.通讯方式
1.工控机和VNC采用RS232异步通信协议。
2.通讯参数:
数据位
停止位
起始位
奇偶校验位
波特率
8
1
1
无
19200
3.超时时间:
最长应答时间不超过1000毫秒,工控机收到VNC指令以后,在100毫秒
内必须应答,超时应答无效。
4.指令发起方式:
指令只能由VNC发起,工控机进行应答。
如果工控机有配置下发或者
需要进行出货,则可以通过对POLL指令的应答返回信息。
这样的情况下VNC需要再
返回一个ACK或者NAK。
1.2.注意事项
1.如果用户已经投入硬币或者插入纸币,必须交易结束后(找零或退币)后才能接收工控机的出货指令。
2.为了避免出货冲突,VNC只能在3秒内出货一次。
3.如果VNC与工控设备连续10秒交互失败,则需要重新签到。
4.门由打开状态变为关闭状态后,VNC重新进入初始状态,需要重新签到。
5.用户输入货道编号后,VNC将此货道的信息发送工控机。
连续通知4-5秒,直到收到
工控机的ACK。
如果此货道不能出货(无货或者料道故障、暂停营业、门打开)则都不需要上报给工控机,相当于没有选择;如果按键对应了多个料道,则返回一个能出
货的料道。
2.报文说明
2.1.VNC报文结构
帧格式
指令
特征字
数据
校验位
1(byte)
3(bytes)
N(bytes)
1(byte)
描述:
字段
描述
指令
标明具体交互指令。
特征字
OxEF、OxEE、OxFE,如果报文没有数据,则不需要特征字。
、、亠
注意:
1、VNC回复的ACK或NAK报文没有特征字节。
2、POLL指令应答报文中也没有特征字节。
数据
父互数据。
校验位
和校验。
22数据类型
符号
描述
N或n
数字数据,N1或n1表示是数字数据且长度为Ibyte。
A或a
字母表数据,A2或a2表示是字母表数据且长度为2bytes。
B或b
1.二进制数据:
金额、数量、商品序号等信息。
女口:
0xFF即255,高位在前低位在后。
2.BCD码:
帐号、日期、时间等。
数据为0-F,可以将两位压缩成1位,女口“A7压缩成0xA7;如月份
“6”月压缩成月份为0x06。
例如:
2015年5月13日,则BCD码为:
0x20150513。
例如:
14点30分28秒,则BCD码为:
0x143028。
3.B1或b1表示是二进制数据且长度为1byte。
23VNC指令
指令
值
描述
货柜连接信息
0x74
1、货柜的连接信息表示哪些货柜连接上了。
2、签到后发送。
3、有货柜连接上或者断开后发送。
货道设置信息
0x75
1、货道的设置信息。
2、签到后发送。
3、货道改变后发送。
POLL轮询
0x76
VNC每隔300ms秒发送此指令到工控机,这里面包括收到货币的情况以及用户输入商品的信息。
同时工控机如果有配置需要下发或者是需要出货的时候,将数据放到回复
POLL指令的ACK报文中。
签到
0x78
1、VNC初始阶段发送,直到成功应答后才发送其他指令。
2、在门由开启变为关闭状态时需要重新签到。
3、主柜类型改变后需要重新签到。
4、扩展柜类型有添加或者移除需要重新签到。
5、签到后各个帧的发送序列为(每帧间隔500ms):
a)
货柜连接信息。
b)货道设置信息。
c)货道价格信息(按照货柜编号依次发送)。
d)货道故
障信息(按照货柜编号依次发送)。
e)机器运行信息。
f)系统配置信息。
货道故障(有货无货)信息
0x79
1、各个货道故障或(有货无货)信息。
2、签到后发送。
3、一个货道从故障(非故障)变为非故障(故障)后发送。
VNC配置信息
0x7A
1、相关系统配置设置参数。
2、签到后发送。
3、相应参数改变后发送。
商品销售汇总信息
0x7B
1、商品销售汇总信息,按货道进行统计。
2、POLL帧里主动请求获取销售数据后发送。
出货
0x7C
VNC出货结束后,将出货的信息发送到工控机。
机器运行(故障)信息
0x7D
1、售货机运行(故障)状态。
2、签到后发送。
间隔30秒钟发送。
货道价格信息
0x7F
1、各个货道的价格信息。
2、签到后发送。
3、货道价格设置完成后发送。
4、货道价格由外部(如遥控器,手柄)改变后发送。
POS机状态信息
0x81
1、POS机的状态信息。
2、POS机状态发生改变后发送。
货道优惠信息
0x82
1、各个货道的优惠信息。
2、优惠信息设置完成后发送。
3、货道优惠信息或者价格信息改变后发送。
4、签到后发送。
2.4.应答报文
1.ACK报文
报文的正文只有一个字节0x00,这个就是ACK报文,一般表示收到指令的确认。
指令
数据
校验和
1(byte)
0x00(1byte)
1(byte)
2.NAK报文
报文的正文只有一个字节0x15,这就是NAK报文,一般用于表示收到指令但执行失败,
般原因是报文的内容不符合规范。
指令
数据
校验和
1(byte)
0x15
1(byte)
3.轮询应答报文
轮询应答报文是VNC发送轮询指令到工控机,工控机需要发送配置或者是出货的时候,回复此报文(没有配置和不需要出货时候则直接回复ACK报文)。
指令
数据
校验和
1(byte)
交易码1
(byte)
N(bytes)
1(byte)
在数据字段中,第一位是交易码。
表示工控机要执行的动作。
交易码
名称
描述
0x02
设置系统时间
设置VNC的系统时间。
0x03
出货请求
通知VNC出货。
0x04
设置货道价格信息
设置货道的价格。
0x05
设置系统配置信息
制冷、加热等系统配置信息。
0x06
清除销售统计
清除销售统计。
0x07
获取销售信息
获取销售信息。
0x08
开始设置货道价格
开始设置货道价格。
通知VNC要开始设置货道的价格。
不支持此功能可以忽略此帧,回复ACK即可。
0x09
货道价格设置完成
设置货道价格完成。
通知VNC货道价格设置完成。
不支持此功能可以忽略此帧,回复ACK后在一定时间内
需时上报货道价格信息。
0x0A
设置货道优惠信息
设置货道优惠信息。
2.5.指令应答流程说明
1.一般流程
说明:
VNC发送(除POLL指令)指令,工控机直接回复ACK报文,不附带任何数据。
VNC
工控机
VNC指令
ACK
2.POLL指令工控机有数据下发流程说明:
VNC发出POLL指令,工控机附带数据响
应,VNC回应成功或者失败。
注意:
工控机有数据响应时,报文中不需要携带特征字。
VNC■VNC指令「工控机
工控机响应(携带数据)
ACK或NAK
注意:
VNC收到工控机的POLLACK旨令以后,如果发现报文有问题或者校验不成功则回复NAK报文,否则回复ACK报文。
3.VNC指令
3.1.签到
字段
属性
描述
主控板版本号
B2
主控板版本号。
驱动板版本号
B2
驱动板版本号。
VNC协议版本号
B1
协议版本号,1-255。
V1.3协议版本号是1;此协议是
V1.4,版本号为2。
依次累加。
售货机编号
B4
BCD码,八位数字压缩码。
时间
B7
BCD码,YYYYMMDDHHMMSS14位VNC时间压缩码。
主柜类型
B1
货柜的类型:
0x01—:
料机,0x02-综合机(综合机包括弹簧机和履带机),0x03-格子机。
注意:
1、如果主柜是综合机则扩展柜里面不允许有饮料机;
2、如果主柜是格子机则扩展柜只能是格子机。
3、主柜的货柜编号为0。
主柜货道数
B1
主柜的货道数。
16个扩展柜信息
B32
1、表示1-16货柜信息,货柜编号次为1-16。
2、每两个byte表示一个柜的信息,如果没有则为0。
3、货柜类型:
0x01饮料机,0x02综合机(综合机包括弹簧机和履带机),0x03-格子机。
Byte1:
表示货柜1的类型。
Byte2:
表示货柜1货道的数量。
Byte3:
表示货柜2的类型。
Byte4:
表示货柜2货道的数量。
二佔
:
表小贝柜yte3i
16的类型。
Byte32:
表示货柜16货道的数量。
注意:
属性中B2,就表示数据是2进制,两个字节。
工控机应答ACK。
3.2.POLL指令
字段
属性
描述
用户投入现金金额
B6
此信息每次都要发送。
Byte1-2:
接收的总金额,0-65535,以分为单位,比如1005表示10.5兀。
Byte3-4:
纸币器接收金额。
Byte5-6:
硬币器接收金
额。
键盘输入货道
B4
Byte1:
货柜编号。
Byte2:
货道编号。
(没有按键为0x00)。
Byte3-4:
商品价格0-65535。
以分为单位。
工控机应答ACK或其它数据。
33出货
字段
属性
描述
货柜编号
B1
货柜编号:
0-16。
货道编号
B1
货道编号:
1-100。
售卖金额
B2
0-65535,以分为单位。
支付方式
B1
支付方式定义如下:
1、04--现金支付。
2、05刷卡。
3、其他非本地支付方式由工控机发送出货请求中填充。
如:
出货请求中支付方式为1,则这里的支付方式为1。
出货状态
N1
1.0--出货成功。
2.1--该货道无货或者故障。
3.2--其他原因没有出货。
4.3-报文信息不正确。
5.4支付失败。
流水号
B3
由工控机发起的出货请求,在发送出货帧时候由工控机填充,否则主控板在此基础上自动累加这个值。
工控机应答ACK
3.4.货柜连接信息
字段
属性
描述
货柜连接信息
B3
BitO:
表示主机(货柜0)是否连接。
Bitl:
表示货柜1是否连接。
Bit2:
表示货柜2是否连接。
Bit16表示货柜16是否连接。
货柜是否支持设置价格到VNC
B3
BitO:
表示主机(货柜0)是否支持设置价格。
Bit1:
表示货柜1是否支持设置价格。
Bit2:
表示货
柜2是否支持设置价格。
Bit16表示货柜16是否支持设置价格。
3.5.货道设置信息
字段
属性
描述
货柜编号
B1
货柜编号:
0-16。
货道设置信息
B13
表示1-100货道是否设置(这里的设置表示VNC是否支持
该货道)。
各子节相应位0表示未设置,1表示设置。
比如:
弹簧机货道编号从10开始,贝yBytel为;s。
Byte2
的第0个Bit也为0,第1个Bit代表10货道设置。
Byte1:
1-8货道。
Byte2:
9-16货道。
Byte3:
17-24货道。
Byte4:
25-32
货道。
Byte5:
33-40货道。
Byte6:
41-48货道。
Byte7:
49-56货道。
Byte8:
57-64
货道。
Byte9:
65-72货道。
Byte10:
73-80货道。
Byte11:
81-88
货道。
Byte12:
89-96货道。
Byte13:
97-104货道。
工控机应答ACK。
36货道故障(有货无货)信息
字段
属性
描述
货柜编号
B1
货柜编号:
0-16。
货道是否故障
B13
表示1-100货道的故障(有货无货)信息。
饮料机各字节相应位0表示有货,1表示故障或者是无货。
综合机或格子机各字节相应位0表示正常,1表示故障。
如果格子机可以检测到有货没货则0表示有货,1表示没货。
Byte1:
1-8货道。
Byte2:
9-16货道。
Byte3:
17-24货道。
Byte4:
25-32
货道。
Byte5:
33-40货道。
Byte6:
41-48货道。
Byte7:
49-56货道。
Byte8:
57-64
货道。
Byte9:
65-72货道。
Byte10:
73-80货道。
Byte11:
81-88
货道。
Byte12:
89-96货道。
Byte13:
97-104货道。
工控机应答ACK
3.7.机器运行信息
字段
属性
描述
运行状态
B1
BIT2:
0主控板模式按钮没有按下;1按下模式按钮(控
制板上默认门打开,并且按下模式按钮,可进行菜单中参数设置),注意:
无此功能该位置位0.
Bitl:
0--门关,1--门开。
BitO:
0营业,1--暂停营业。
售货机状态
B1
Bit7:
读卡器无应答。
Bit6:
红外模块故障。
Bit5:
右室温度异常。
Bit4:
左室温度异常。
Bit3:
右室温度传感器故障。
Bit2:
左室温度传感器故障。
Bit1:
系统时钟不正常。
Bit0:
驱动板无应答。
纸币器状态
B1
Bit7:
保留。
Bit6:
纸币堵塞(纸币器口)。
Bit5:
纸币器钱相满(钱相)。
Bit4:
纸币器钱箱被取走(钱箱)。
Bit3:
纸币器ROM校验错。
Bit2:
纸币器传感器故障。
Bit1:
纸币器驱动马达故障。
Bit0:
纸币器无应答。
硬币器状态
B1
Bit7:
硬币器1兀缺币(钱币)。
Bit6:
硬币器1分缺币(钱币)。
Bit5:
硬币支出堵塞(硬币口)。
Bit4:
硬币接收堵塞(硬币口)。
Bit3:
硬币器ROM校验错。
Bit2:
硬币器传感器故障。
Bit1:
硬币器工作电压低(警告)。
Bit0:
硬币器无应答。
硬币器检测到硬币数量
B4
Byte1-2:
0.5元个数。
Byte3-4:
1元个数。
纸币数量
B2
纸币数量(VNC计算所得)。
工控机应答ACK
3.8.系统配置信息
字段
属性
描述
照明状态
B1
0x00:
自动,0x01:
常闭,0x02:
常亮。
日光灯时间
B4
米用BCD码,不支持则为0x99,0x99,0x99,0x99。
Byte1-2:
开灯时间HHMM压缩。
Byte3-4:
停止时间HHMM压缩。
温控状态
B1
0x00:
制冷,0x01:
制热,0x02:
关闭(常温),0x99:
不支持。
如果售货机分左室和右室则分别控制左室和右室的温度。
节能时间
B4
米用BCD码。
不支持则为0x99,0x99,0x99,0x99。
Byte1-2:
节能开启时间,HHMM压缩。
Byte3-4:
节能关闭时间,HHMM压缩。
制冷温度
B1
制冷设定温度。
Bit7:
0正值,1啖值。
B1
制冷实际温度。
Bit7:
0正值,1-负值。
加热温度
B1
加热设定温度。
Bit7:
0正值,1-负值。
B1
加热实际温度。
Bit7:
0正值,1-负值。
工控机应答ACK
3.9.货道价格信息
字段
属性
描述
货柜编号
B1
货柜编号:
0-16。
货道价格信息
B200
1-100货道的价格信息,每2个byte表示一个货道的价格。
以分为单位:
如0x01表示0.01元;0xFF表示2.55元;0xFFFF
表示
655.35元。
工控机应答ACK
3.10.商品销售汇总信息
字段
属性
描述
货柜编号
B1
货柜编号:
0-16。
货道销售总数量
B200
1-100货道销售商品总数,每2个byte表示一个货道销售商
品总量。
时间
B7
BCD码。
YYYYMMDDHHMMSS此出的时间是清零时间不是发送时间。
工控机应答ACK。
3.11.POS状态信息
字段
属性
描述
POS机状态
N1
POS机器的状态信息
1、0--等待刷卡
2、1--认证中。
3、2--授权成功。
4、3--
授权失败。
说明:
当接收到POS机授权成功的消息后,用户如果是通过按钮选的商品则VNC直接扣款s出货,否则工控机当以当前屏幕选择的商品发送出货指令;VNC通过POS机扣款出货后只需要
将出货的信息上报给工控机。
不支持此功能可以忽略此帧。
工控机应答ACK。
3.12.货道优惠信息
字段
属性
描述
货柜编号
B1
货柜编号:
0-16。
货道优惠信息
B200
1-100货道的优惠信息。
每2个byte表示一个货道的优惠
金额,单位分。
工控机应答ACK。
4.工控机应答
4.1.设置系统时间
字段
属性
描述
交易码
B1
0x02。
时间
B7
BCD码,YYYYMMDDHHMMSS14位时间压缩码。
VNC应答ACK
4.2.出货请求
字段
属性
描述
交易码
B1
0x03。
货柜编号
B1
货柜编号:
0-16。
货道编号
B1
货道编号:
1-100。
变价出货
B1
是否变价出货,变价出货为1,否则为0。
如果是移动支付
方式则应该设置变价出货,本地支付则不变价出货。
售卖金额
B2
0-65535以分为单位。
如果是移动支付则售卖金额是否则原价。
0,
支付方式
B1
支付方式定义如下:
1、04--现金支付。
2、05刷卡。
3、其他取值为(1-3,6-255)。
流水号
B3
注意:
两次相连的流水号不能重复。
1、在门打开或者是暂停营业的状态,是不能进行出货的。
2、VNC应答ACK
43设置货道价格信息
字段
属性
描述
交易码
B1
0x04。
货柜编号
B1
货柜编号:
0-16。
货道编号
B1
货道编号:
1-100。
商品价格
B2
以分为单位,如:
0x01表示0.01兀;OxFFFF表示655.35兀。
1、货道信息只有在商品信息更新以后才进行下发。
2、信息下发到VNC后,VNC更新存储。
3、如果有多个货道需要更新则依次下发(不能一次性下发)
4、VNC应答ACK
4.4.设置系统配置信息
字段
属性
描述
交易码
B1
0x05。
照明状态
B1
0x00:
自动,0x01:
关闭,0x02:
常亮,0x99:
不支持该功
台匕
冃匕。
日光灯时间
B4
米用BCD码,不支持则为:
0x99,0x99,0x99,0x99。
Byte1-2:
开灯时间HHMM。
Byte3-4:
停止时间HHMM。
控温状态
B1
0x00:
制冷,0x01:
制热,0x02:
关闭,0x99:
不支持此功
台匕
匕匕。
节能时间
B4
米用BCD码,不支持则:
0x99,0x99,0x99,0x99。
Byte1-2:
节能开始时间HHMM压缩。
Byte3-4:
节能关闭时间HHMM压缩。
制冷温度
B1
制冷温度设定
Bit7:
0表示正值,1表示负值。
加热温度
B1
加热温度设定
Bit7:
0表示正值,1表示负值。
VNC应答ACK
4.5.清除销售统计
字段
属性
描述
交易码
B1
0x06。
货柜编号
B1
清除该货柜的销售信息,货柜编号是示清除所有柜的销售信息。
0-16。
如果为255则表
VNC应答ACK。
4.6.获取货柜销售信息
字段
属性
描述
交易码
B1
0x07。
货柜编号
B1
货柜编号:
0-16。
VNC应答ACK。
4.7.开始设置货道价格
字段
属性
描述
交易码
B1
0x08。
VNC应答ACK。
4.8.货道价格设置完成
字段
属性
描述
交易码
B1
0x09。
4.9.设置货道优惠信息
字段
属性
描述
交易码
B1
0x0A。
货柜编号
B1
货柜编号:
0-16。
货道编号
B1
货道编号:
1-100。
优惠金额
B2
优惠金额,
0-65535,单位分。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VNC 工控机 接口 协议 规范
![提示](https://static.bdocx.com/images/bang_tan.gif)