UHF电子标签读写器UHFReader18用户手册v20.docx

上传人:b****3 文档编号:5268402 上传时间:2022-12-14 格式:DOCX 页数:58 大小:40.16KB
下载 相关 举报
UHF电子标签读写器UHFReader18用户手册v20.docx_第1页
第1页 / 共58页
UHF电子标签读写器UHFReader18用户手册v20.docx_第2页
第2页 / 共58页
UHF电子标签读写器UHFReader18用户手册v20.docx_第3页
第3页 / 共58页
UHF电子标签读写器UHFReader18用户手册v20.docx_第4页
第4页 / 共58页
UHF电子标签读写器UHFReader18用户手册v20.docx_第5页
第5页 / 共58页
点击查看更多>>
下载资源
资源描述

UHF电子标签读写器UHFReader18用户手册v20.docx

《UHF电子标签读写器UHFReader18用户手册v20.docx》由会员分享,可在线阅读,更多相关《UHF电子标签读写器UHFReader18用户手册v20.docx(58页珍藏版)》请在冰豆网上搜索。

UHF电子标签读写器UHFReader18用户手册v20.docx

UHF电子标签读写器UHFReader18用户手册v20

 

UHF一体机电子标签读写器

用户手册v2.0

 

RFID改变识别的距离

 

杭州恒竣科技有限公司

一、通讯接口规格4

二、协议描述4

三、数据的格式5

1.上位机命令数据块5

2.读写器响应数据块5

四、操作命令总汇6

1.EPCC1G2(ISO18000-6C)命令6

2.18000-6B命令7

3.读写器自定义命令7

五、命令执行结果状态值8

六、电子标签返回错误代码12

七、标签存储区及需要注意的问题12

八、操作命令详细描述13

8.1命令概述13

8.2EPCC1G2命令13

8.2.1询查标签13

8.2.2读数据14

8.2.3写数据15

8.2.4写EPC号16

8.2.5销毁标签17

8.2.6设定存储区读写保护状态18

8.2.7块擦除20

8.2.8读保护设置(根据EPC号设定)21

8.2.9读保护设定(不需要EPC号)21

8.2.10解锁读保护22

8.2.11测试标签是否被设置读保护22

8.2.12EAS报警设置23

8.2.13EAS报警检测24

8.2.14user区块锁24

8.2.15询查单张标签25

8.2.16块写命令26

8.318000-6B命令27

8.3.1寻查命令(单张)27

8.3.2按条件寻查标签27

8.3.3读数据28

8.3.4写数据29

8.3.5锁定检测29

8.3.6锁定30

8.4读写器自定义命令30

8.4.1读取读写器信息30

8.4.2设置读写器工作频率31

8.4.3设置读写器地址32

8.4.4设置读写器询查时间32

8.4.5设置串口波特率32

8.4.6调整功率33

8.4.7声光控制命令33

8.4.8韦根参数设置命令34

8.4.9工作模式设置命令34

8.4.10读取工作模式参数36

8.4.11EAS检测精度设置37

8.4.12Syris响应偏置时间设置37

8.4.13触发延时设置38

 

一、通讯接口规格

读写器通过RS232或者RS485接口与上位机串行通讯,按上位机的命令要求完成相应操作。

串行通讯接口的数据帧为一个起始位,8个数据位,一个停止位,无奇偶校验位,缺省波特率57600。

在串行通讯过程中,每个字节的最低有效位最先传输。

二、协议描述

通讯过程由上位机发送命令及参数给读写器,然后读写器将命令执行结果状态和数据返回给上位机。

读写器接收一条命令执行一条命令,只有在读写器执行完一条命令后,才能接收下一条命令。

在读写器执行命令期间,如果向读写器发送命令,命令将丢失。

上位机发送过程如下:

上位机

数据传递方向

读写器

命令数据块

说明:

上位机发送的数据流中,每两个相邻字节之间的发送时间间隔必须小于15ms。

在上位机的命令数据流发送过程中,如果相邻字符间隔大于15ms,则之前接收到的数据均被当作无效数据丢弃,然后从下一个字节开始,重新接收。

读写器接收到正确命令后,在不超过询查时间的范围内(不包括数据发送过程,仅仅是读写器执行命令的时间),会返回给读写器一个响应。

读写器发送过程如下:

读写器

数据传递方向

上位机

响应数据块

说明:

读写器发送响应数据期间,相邻字节之间的发送时间间隔小于15ms

完整的一次通讯过程是:

上位机发送命令给读写器,并等待读写器返回响应;读写器接收命令后,开始执行命令,然后返回响应;之后上位机接收读写器的响应。

一次通讯结束。

三、数据的格式

1.上位机命令数据块

Len

Adr

Cmd

Data[]

LSB-CRC16

MSB-CRC16

数据各部分说明如下:

长度(字节)

说明

Len

1

命令数据块的长度,但不包括Len本身。

即数据块的长度等于4加Data[]的长度。

Len允许的最大值为96,最小值为4。

Adr

1

读写器地址。

地址范围:

0x00~0xFE,0xFF为广播地址,读写器只响应和自身地址相同及地址为0xFF的命令。

读写器出厂时地址为0x00。

Cmd

1

命令代码。

Data[]

不定

参数域。

在实际命令中,可以不存在。

LSB-CRC16

1

CRC16低字节。

CRC16是从Len到Data[]的CRC16值

MSB-CRC16

1

CRC16高字节。

2.读写器响应数据块

Len

Adr

reCmd

Status

Data[]

LSB-CRC16

MSB-CRC16

数据各部分说明如下:

长度(字节)

说明

Len

1

响应数据块的长度,但不包括Len本身。

即数据块的长度等于5加Data[]的长度。

Adr

1

读写器地址。

reCmd

1

指示该响应数据块是哪个命令的应答。

如果是对不可识别的命令的应答,则reCmd为0x00。

Status

1

命令执行结果状态值。

Data[]

不定

数据域,可以不存在。

LSB-CRC16

1

CRC16低字节。

CRC16是从Len到Data[]的CRC16值。

MSB-CRC16

1

CRC16高字节。

CRC16的C语言算法:

#definePRESET_VALUE0xFFFF

#definePOLYNOMIAL0x8408

unsignedintuiCrc16Cal(unsignedcharconst*pucY,unsignedcharucX)

{

unsignedcharucI,ucJ;

unsignedshortintuiCrcValue=PRESET_VALUE;

for(ucI=0;ucI

{

uiCrcValue=uiCrcValue^*(pucY+ucI);

for(ucJ=0;ucJ<8;ucJ++)

{

if(uiCrcValue&0x0001)

{

uiCrcValue=(uiCrcValue>>1)^POLYNOMIAL;

}

else

{

uiCrcValue=(uiCrcValue>>1);

}

}

}

returnuiCrcValue;

}

pucY是要计算CRC16的字符数组的入口,ucX是字符数组中字符个数。

上位机收到数据的时候,只要把收到的数据按以上算法进行计算CRC16,结果为0x0000表明数据正确。

四、操作命令总汇

1.EPCC1G2(ISO18000-6C)命令

序号

命令

功能

1

0x01

询查标签

2

0x02

读数据

3

0x03

写数据

4

0x04

写EPC号

5

0x05

销毁标签

6

0x06

设定存储区读写保护状态

7

0x07

块擦除

8

0x08

根据EPC号设定读保护设置

9

0x09

不需要EPC号读保护设定

10

0x0a

解锁读保护

11

0x0b

测试标签是否被设置读保护

12

0x0c

EAS报警设置

13

0x0d

EAS报警探测

14

0x0e

user区块锁

15

0x0f

询查单标签

16

0x10

块写

2.18000-6B命令

序号

命令

功能

1

0x50

询查命令(单张)。

这个命令每次只能询查一张电子标签。

不带条件询查。

2

0x51

条件询查命令(多张)。

这个命令根据给定的条件进行询查标签,返回符合条件的电子标签的UID。

可以同时询查多张电子标签。

3

0x52

读数据命令。

这个命令读取电子标签的数据,一次最多可以读32个字节。

4

0x53

写数据命令。

写入数据到电子标签中,一次最多可以写32个字节。

5

0x54

检测锁定命令。

检测某个存储单元是否已经被锁定。

6

0x55

锁定命令。

锁定某个尚未被锁定的电子标签。

3.读写器自定义命令

序号

命令

功能

1

0x21

读取读写器信息

2

0x22

设置读写器工作频率

3

0x24

设置读写器地址

4

0x25

设置读写器询查时间

5

0x28

设置读写器的波特率

6

0x2F

调整读写器输出功率

7

0x33

声光控制命令

8

0x34

韦根参数设置命令

9

0x35

工作模式设置命令

10

0x36

读取工作模式参数命令

11

0x37

EAS测试精度设置命令

12

0x38

设置Syris485响应偏执时间

13

0x3b

设置触发有效时间

 

五、命令执行结果状态值

响应数据块

Status含义

说明

Len

Adr

reCmd

Status

Data[]

CRC16

5+Data[]部分的长度

0xXX

0xXX

0x00

……..

LSB+MSB

操作成功

当成功执行命令后返回给上位机的状态值。

Data[]包含了所要信息

5+Data[]部分的长度

0xXX

0x01

0x01

……..

LSB+MSB

询查时间结束前返回

上位机发出询查G2标签命令时,读写器询查电子标签时,如果在设定的询查时间内返回信息给上位机,则返回此状态值

5+Data[]部分的长度

0xXX

0x01

0x02

……..

LSB+MSB

指定的询查时间溢出

上位机发出询查G2标签命令时,当询查时间溢出时,读写器还没有完成询查操作时返回给上位机的状态值

5+Data[]部分的长度

0xXX

0x01

0x03

……..

LSB+MSB

本条消息之后,还有消息

上位机发出询查G2标签命令时,如果询查命令读到的标签数量无法在一条消息内传送完,将分多次发送。

5+Data[]部分的长度

0xXX

0x01

0x04

……..

LSB+MSB

读写器存储空间已满

上位机发出询查G2标签命令时,如果询查到的电子标签太多,超过了读写器的存储容量,则读写器返回读到的电子标签EPC号,同时,也将返回此状态值

5

0xXX

0xXX

0x05

无此项

LSB+MSB

访问密码错误

当读写器执行需要密码才能执行的操作,而命令中给出的密码是错误的密码时返回给上位机的状态值

5

0xXX

0x05

0x09

无此项

LSB+MSB

销毁标签失败

当向G2标签进行销毁操作时,如果销毁密码错误,或是读写器与标签通讯不畅,则将返回此状态值

5

0xXX

0x05

0x0a

无此项

LSB+MSB

销毁密码不能为全0

销毁标签时,销毁密码为0的标签是无法销毁的

5

0xXX

0xXX

0x0b

无此项

LSB+MSB

电子标签不支持该命令

G2协议中的某些可选命令,及一些厂商的特定命令,可能某些标签不支持这些命令,此时返回此状态值

5

0xXX

0xXX

0x0c

无此项

LSB+MSB

对该命令访问密码不能为全0

对NXPUCODEEPCG2X标签设置读保护及设置EAS报警时,访问密码不能为全0,若为全0,将返回此状态值

5

0xXX

0x0a

0x0d

无此项

LSB+MSB

电子标签已经被设置了读保护,不能再次设置

对已经被设置了读保护的NXPUCODEEPCG2X标签,在解除读保护之前,不能再次设置。

此情况下返回这个状态值

5

0xXX

0x0a

0x0e

无此项

LSB+MSB

电子标签没有被设置读保护,不需要解锁

对NXPUCODEEPCG2X标签解锁,如果标签没有被锁定,将返回此状态值,对不支持读保护设定命令的标签发送此命令,也将返回此状态值

5

0xXX

0x53

0x10

无此项

LSB+MSB

有字节空间被锁定,写入失败

在向6B标签写入数据时,因为有字节空间被锁定,使得写入数据失败时,返回此状态值

5

0xXX

0x55

0x11

无此项

LSB+MSB

不能锁定

当6B标签出现不能被锁定的情况,返回此状态值

5

0xXX

0x55

0x12

无此项

LSB+MSB

已经锁定,不能再次锁定

对已经锁定的6B标签进行再次锁定时,返回此状态值

5

0xXX

0xXX

0x13

无此项

LSB+MSB

参数保存失败,但设置的值在读写器断电前有效

对于某些需要保存的参数,如果保存失败,则返回此状态值

5

0xXX

0xXX

0x14

无此项

LSB+MSB

无法调整

调整功率的时候,在某些情况下,如果出现功率无法调整的错误,则返回此状态值

5+Data[]的长度

0xXX

0x51

0X15

……..

LSB+MSB

询查时间结束前返回

上位机发出询查6B标签命令时,读写器询查电子标签时,如果在设定的询查时间内返回信息给上位机,则返回此状态值

5+Data[]的长度

0xXX

0x51

0x16

……..

LSB+MSB

指定的询查时间溢出

上位机发出询查6B标签命令时,当询查时间溢出时,读写器还没有完成询查操作时返回给上位机的状态值

5+Data[]的长度

0xXX

0x51

0x17

……..

LSB+MSB

本条消息之后,还有消息

上位机发出询查6B标签命令时,如果询查命令读到的标签数量无法在一条消息内传送完,将分多次发送。

5+Data[]的长度

0xXX

0x51

0x18

……..

LSB+MSB

读写器存储空间已满

上位机发出询查6B标签命令时,如果询查到的电子标签太多,超过了读写器的存储容量,则读写器返回读到的电子标签UID号,同时,也将返回此状态值

5

0xXX

0xXX

0x19

无此项

LSB+MSB

电子标签不支持该命令或者访问密码不能为0

当设置电子标签的EAS报警时,在通信正常的情况下,如果标签无法设置,则可能是电子标签不支持该命令,也可能是电子标签的访问密码不能为0

5

0xXX

0xXX

0xF9

无此项

LSB+MSB

命令执行出错

命令执行出错

5

0xXX

0xXX

0xFA

无此项

LSB+MSB

有电子标签,但通信不畅,操作失败

当检测到有效范围内存在可操作的电子标签,但读写器与电子标签之间的通讯质量不好,而无法完成整个通讯过程时返回给上位机的信息

5

0xXX

0xXX

0xFB

无此项

LSB+MSB

无电子标签可操作

当读写器对电子标签进行操作时,有效范围内没有可操作的电子标签时返回给上位机的状态值

6

0xXX

0xXX

0xFC

Err_code

LSB+MSB

电子标签返回错误代码

电子标签返回错误代码时,错误代码由Err_code返回给上位机

5

0xXX

0xXX

0xFD

无此项

LSB+MSB

命令长度错误

当上位机输入的命令的实际长度和它应当具有的长度不同时,返回该状态

5

0xXX

0x00

0xFE

无此项

LSB+MSB

不合法的命令

当上位机输入的命令是不可识别的命令,如不存在的命令、或是CRC错误的命令

5

0xXX

0xXX

0xFF

无此项

LSB+MSB

参数错误

上位机发送的命令中的参数不符合要求时,返回此状态

六、电子标签返回错误代码

EPCC1G2(ISO18000-6C)电子标签错误代码:

错误代码支持

错误代码

错误代码名称

错误描述

特定错误代码

0x00

其它错误

全部捕捉未被其它代码覆盖的错误

0x03

存储器超限或不被支持的PC值

存储位置不存在或标签不支持的PC值

0x04

存储器锁定

存储位置锁定或永久锁定,且不可写入

0x0b

电源不足

标签电源不足,无法执行存储写入操作

非特定错误代码

0x0f

非特定错误

标签不支持特定错误代码

七、标签存储区及需要注意的问题

A.EPCC1G2标签(简称G2标签)

G2标签分4个区:

保留区(又称密码区),EPC区,TID区和User区。

保留区:

保留区4个字。

前两个字是销毁密码,后两个字是访问密码。

可读可写,保留区的两个密码区的读写保护特性可以分别设置。

EPC区:

标签EPC号存储在该区,其中第0个字是PC值和标签EPC号的CRC16。

第1个字是PC值,该值指示标签EPC号长度,从第2个字开始才是标签的EPC号数据。

可读可写。

TIC区:

该区存储的数据是由标签生产商设定的ID号。

可读不可写。

User区:

是用户数据区。

可读可写。

G2命令中很多地方要求给出数据长度,这里要注意字与字节的区别。

1个字等于2个字节。

有些命令需要访问密码,如果没有密码设置,则用0填充密码区,而不能为空。

B.18000-6B标签

6B标签只有一个存储空间,最低8个字节是标签的UID,并且不能被改写。

后面的字节都是可改写的,也可以被锁定,但是一旦锁定后,则不能再次改写,也不能解锁。

八、操作命令详细描述

8.1命令概述

操作命令有三大类,一类是协议相关的;另一类是读写器相关的;还有一类是标签自定义命令。

如果上位机输入的命令是不可识别的命令,如不存在的命令、或是CRC错误的命令,则返回值如下:

Len

Adr

reCmd

Status

CRC-16

0x05

0xXX

0x00

0xFE

LSB

MSB

如果命令的长度不对,则返回信息如下:

Len

Adr

reCmd

Status

CRC-16

0x05

0xXX

0xXX

0xFD

LSB

MSB

有两种命令读写器不会响应:

1.如果输入的命令的地址出错(地址不是0xFF,也不是读写器地址),读写器不会有任何响应。

2.如果输入的命令是不完整的,即命令的Len域指示的命令长度大于实际的命令长度,则读写器将不会做出任何响应。

8.2EPCC1G2命令

8.2.1询查标签

询查命令的作用是检查有效范围内是否有符合协议的电子标签存在。

想要对未知EPC的新标签进行别的操作,应先通过询查命令来得到标签的EPC号。

在运行询查命令之前,用户可以根据需要先设定好该命令的最大运行时间(询查时间)。

读写器在询查时间规定的范围内必须给上位机一个结果,如果读写器尚未读完有效范围内的所有标签,而询查时间已到,则读写器不再询查其它标签,而是直接把已经询查到得标签返回给上位机,并提示上位机还有标签未读完。

然后等待下一个命令。

询查时间的缺省值是1s,用户可以通过运行读写器自定义命令设定询查时间命令来修改。

允许的范围是:

3*100ms~255*100ms(实际的响应时间可能会比设定的值大0~75ms)。

询查时间如果设定的过短,可能会出现在规定时间内询查不到电子标签的情况。

命令:

Len

Adr

Cmd

Data[]

CRC-16

AdrTID

LenTID

0xXX

0xXX

0x01

0xXX

0xXX

LSB

MSB

参数解析:

AdrTID:

询查TID区的起始字地址。

LenTID:

询查TID区的数据字数。

LenTID取值为0~15,若为其它参数将返回参数错误信息。

注:

当AdrTID、LenTID为空时表示询查标签EPC,否则询查TID。

TID询查功能仅当读写器固件V2.36及以上版本有效。

应答:

Len

Adr

reCmd

Status

Data[]

CRC-16

Num

EPCID

0xXX

0xXX

0x01

0xXX

0xXX

EPC-1,EPC-2,EPC-3…

LSB

MSB

参数解析:

Status是应答的状态,其代表的意义如下表所述:

Status

说明

0x01

命令执行结束,同时返回询查到的电子标签数据

0x02

询查时间结束,命令执行强制退出,同时返回已询查到的标签数据

0x03

如果读到的标签数量无法在一条消息内传送完,将分多次发送。

如果Status为0x03,则表示这条数据结束后,还有数据。

0x04

还有电子标签未读取,电子标签数量太多,读写器的存储区已满,返回此状态值,同时返回已询查到得电子标签数据。

Num:

本条命令中包含的电子标签的EPC/TID的个数。

EPCID:

读到的电子标签的EPC/TID数据,EPC-1是第一张标签的EPC/TID长度+第一张标签的EPC号或TID数据,依此类推。

每个电子标签EPC号或TID数据高字(EPCC1G2中数据以字为单位)在前,每一个字的高字节在前。

EPC/TID长度以一个字节表示。

8.2.2读数据

这个命令读取标签的保留区、EPC存储区、TID存储区或用户存储区中的数据。

从指定的地址开始读,以字为单位。

命令:

Len

Adr

Cmd

Data[]

CRC-16

0xXX

0xXX

0x02

——

LSB

MSB

Data参数如下:

Data[]

ENum

EPC

Mem

WordPtr

Num

Pwd

MaskAdr

MaskLen

0xXX

变长

0xXX

0xXX

0xXX

4Byte

0xXX

0xXX

参数解析:

ENum:

EPC号长度,以字为单位。

EPC的长度在15个字以内,不能为0。

超出范围,将返回参数错误信息。

EPC:

要读取数据的标签的EPC号。

长度根据所给的EPC号决定,EPC号以字为单位,且必须是整数个长度。

高字在前,每个字的高字节在前。

这里要求给出的是完整的EPC号。

Mem:

一个字节。

选择要读取的存储区。

0x00:

保留区;0x01:

EPC存储区;0x02:

TID存储区;0x03:

用户存储区。

其他值保留。

若命令中出现了其它值,将返回参数出错的消息。

WordPtr:

一个字节。

指定要读取的字起始地址。

0x00表示从第一个字(第一个16位存储区)开始读,0x01表示从第2个字开始读,依次类推。

Num:

一个字节。

要读取的字的个数。

不能设置为0x00,否则将返回参数错误信息。

Num不能超过120,即最多读取120个字。

若Num设置为0或者超过了120,将返回参数出错的消息。

Pwd:

四个字节,这四个字节是访问密码。

32位的访问密码的最高位在Pwd的第一字节(从左往右)的最高位,访问密码最低位在Pwd第四字节的最低位,Pwd的前两个字节放置访问密码的高字。

只有当读保留区,并且相应存储区设置为密码锁、且标签的访问密码为非0的时候,才需要使用正确的访问密码。

在其他情况下,Pwd为零或正确的访问密码。

MaskAdr:

一个字节,掩模EPC号的起始字节地址。

0x00表

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1