v1.0 可编辑可修改 主从应答式读EPC参考流程
相关指令介绍
在介绍流程前,先介绍下相关指令,更详细的介绍请参考《SR系列读写器与上位机数据通讯协议》。
“启动设备”
指令内容: ID号 2字节 说明:该指令用于切换读写器工作模式,使读写器处于运行模式。
应答内容: ID号 2字节
应答长度 2字节 指令码 0CH 操作反馈数据 1字节 指令长度 2字节 指令码 0CH “停止设备”
指令内容: ID号 2字节
说明:该指令使读写器处于参数配置模式,也可以用来停止读EPC指令。
指令长度 2字节 指令码 61H 1
v1.0 可编辑可修改
应答内容: ID号 2字节
应答长度 2字节 指令码 61H 操作反馈数据 1字节 “主从应答式读EPC”
指令内容: ID号 2字节 指令长度 2字节 指令码 A0H 子命令 1字节 说明:该指令主要用于有主从应答式通讯要求的读EPC数据场合,此时读写器EPC数的上传完全受上位机控制,上位机根据需要通过轮询可以很好的控制网络中每个设备的EPC数据上传,特别适合半双工通讯总线,如RS485总线,也适用其他全双工总线使用,此时ID号类似于设备的网络地址。 子命令:定义如下表; 子命令 00H 01H 02H 其他 应答内容:
1) “子命令”字段为00H时 ID号 2字节 2
应答长度 指令码 2字节 A0H 操作反馈数据 子命令 1字节 00H 含义 启动读写器主从应答式读EPC 取读写器中读到的EPC数据 收到读写器EPC数据后的确认应答 暂未定义 v1.0 可编辑可修改 2)“子命令”字段为01H时 ID号 2字节 说明:
操作反馈数据:01H操作成功,表示有数据,包含所有字段;24H表示读写器中当前暂无EPC数据,应答时没有“EPC长度”和“EPC数据”;
EPC长度:表示读取到的EPC数据的长度,单位为字,支持各种不同长度的Gen2标签的操作,如96位标签其EPC长度为6个字;
EPC数据:读取到的标签的EPC数据,长度为单个标签字节数的整数倍,允许同时返回多个标签的数据。
3) “子命令”字段为02H时
上位机发送子命令为02H的指令,用来确认正确接收到读写器中EPC数据; 对该指令读写器不进行应答3。
应答长度 指令码 2字节 A0H 操作反馈数据 子命令 1字节 01H EPC长度 1字节 EPC数据 N字节 流程介绍
主从应答式读EPC流程是为了实现RS-485总线组网而设计的;设备在收到上位机任何指令后都必须在50ms内作出应答。硬件上上位机建议采用有源的RS232/RS485转换器。 下面请结合附录图A理解参考流程: 1) 设备上电后,处于“参数配置”模式。
2) 延时一段时间(50毫秒左右)后,上位机发送“启动设备”指令。 3) 设备成功接收到“启动设备”指令后,进入启动模式。 3
v1.0 可编辑可修改 4) 成功接收到设备应答后,发送“主从应答式读EPC(子命令为00H)”指令。 5) 在“启动”模式下,接收到“主从应答式读EPC(子命令为00H)”后,设备开始工
作读EPC。
6) 当上位机想从设备读取EPC数据时,发送“主从应答式读EPC(子命令为01H)”指
令后等待设备响应。
7) 设备接收到指令后,检测指令帧的ID号是否与自己的一致,如果一致,就发送EPC
数据给上位机,如果此刻缓存中没数据,设备也会在T时间(50毫秒)内返回指令,但指令“反馈信息”值为24H。如果ID不匹配,设备则不给上位机任何反馈。 8) 当上位机在T时间内接收到EPC数据后,会给设备发送“主从应答式读EPC(子命
令为02H)”指令。
9) 如设备在T时间内正确接收到“主从应答式读EPC(子命令为02H)指令”后,就
可以从缓存中删除EPC数据。如果上位机没有及时从设备中取走数据,那么按照标签先进先出的原则,前面读到的标签数据就会丢失,目前缓冲可以存放三张标签(EPC的位数最大为96位)的数据。如果在T时间内没有接收到上位机的反馈,那么设备继续上一次的EPC发送。 如果上位机想让设备停止工作,可以通过发送“停止设备”指令实现; 10)
任何环节如果上位机多次发送指令而设备没有响应,都可以通过发送停止设备
指令将设备转到参数配置模式,从1)重新开始;如果设备多次重复都不响应,上位机可以进行报警,该设备可能毁坏。 4
v1.0 可编辑可修改
附录A 主从应答式读EPC参考流程图
上位机 下位机(读写器)
5