基于RFID与GSM技术的烟酒防伪装置设计
在市场经济飞速发展的今天,为了满足消费者的不同需求,产品种类越来越多,但假冒伪劣产品不断出现,严重损害了正当市场竞争以及消费者利益,尤其是高端烟酒行业,大量的假冒伪劣产品~直充斥着市场。
传统的防伪技术主要有包装防伪和电子防伪。目前,烟酒类市场因为技术的非独占性,导致消费者识别困难而不能很好的发挥作用,给假冒伪劣产品创造了很大的生存空间。
本文将当前迅速发展并应用越来越成熟的射频识别技术(RFID,俗称电子标签)与GSM技术,成功的应用到烟酒业的防伪,设计了相应的防伪装置,实现了对产品的真正防伪的目的。
1 系统设计
电子标签中存放了商品ID、生产厂家、生产地、生产日期、产品批号、产品价格、打折情况等信息,通过研制的防伪装置读取内置在烟酒中的电子标签信息,如果能够成功读取,则说明该产品不是假冒产品,并将电子标签中的有效烟酒信息清0,防止被二次非法使用。为了做到真正防伪,利用GSM将读取到的该商品信息发送给厂家,厂家收到信息经确认后回复产品是否伪劣。系统模型如图1所示。
2 系统设计关键技术
以经济够用为原则,采用C8051F340作为主控制器,该芯片功耗低、性能强,完全满足设计需求。RFID读写器模块选用国民技术公司开发的NZRM710模块,其工作电压为3.3~5 V,有效读取标签距离可以达到6 m。GSM模块选用SIM300利用ZIF连接器外接SIM卡,CPU通过发送AT指令与SIM300进行通信,利用串口进行调试。
本系统设计关键技术有4个方面,分别是电子标签设计、电源设计、显示器模块设计及GSM通信技术的实现。
2.1 电子标签设计
电子标签采用国民技术公司的通用电子标签,标签的尺寸、天线的材质和标签印刷的LOGO均可按用户的要求定制,完全满足标签内置产品包装的设计需求。标签芯片采用
Nz2201,工作频率为840~960 MHz,存储容量为192bit/512bit,最大读取距离可达8米,可在-25~85℃范围内稳定工作,存储器擦写次数高达10万次,支持EPC C1G2/ISO 1800—6C协议。在项目设计时,课题组给每个标签设置唯一的ID号,即产品的身份识别号。电子标签在接收到有效的读取命令后会利用RFID技术自动给防伪装置发送存储器内部存储的产品信息,安全可靠。
根据NZRM710通信协议,结合本项目设计实际需求,设计向电子标签写数据通信协议如表1所示,读电子标签通信协议如表2所示。
表1中,帧头为0x7E 0x81,帧长度为此命令帧的实际长度,帧类型为0x86,访问密码为4个字节长度,MB为信息存放的Bank区,SA为信息存放的起始地址,DL为写入的商品信息的长度,商品信息包含了商品ID号、生产厂家、生产地、生产日期、产品批号、产品价格、打折情况,校验码为1个字节长度,帧尾为0x0D 0x0A。
表2中,帧头为0x7E 0x81,帧长度为此命令帧的实际长度,帧类型为0x84,访问密码、MB、SA、DL以及校验码与表1与表1中设置一致,帧尾为0x0D 0x0A。
当防伪装置发送的读数据帧命令中的访问密码及校验码与表1设置的不一致时,读取标签信息会失败,以此充分保证了系统使用的安全性。
2.2 电源设计
电源的合理设计十分关键,在对功耗控制有很高要求的手持设备中显得尤为重要。本系统电源设计分为2部分,分别是电池充电电路设计与系统工作电源设计。
采用3.7 V锂电池作为系统储能部件,锂电池通过USB充电。选用TLC4065作为锂电池充电控制器。TLC4065是一款专门为在USB电源规范内工作而设计的,用于单节锂离子电池的完整恒定电流/恒定电压线性充电器,尤其适合便携式应用。当充电电流降至其设定值的10%时,引脚将发出指示信号,内部定时器根据电池商提供的产品规格来终止充电操作。PROG引脚为充电电流设置与监视引脚。设计时,将单片机P1.1引脚设置为AD采样电池电量的输入通道,可以将电池的储电情况实时在显示器上显示,以便用户及时充电。P2.3引脚设置为AD采样充电电流的输入通道,可以实时获取电池充电情况,并在显示器上显示,方便用户对电池充电。硬件设计如图2所示。其中VCC5V是USB电压,VCC3.7 V是锂电池输出电压。
在锂电池输出的3.7 V电压的基础上,用两片TPS7A7001分别产生3.3 V与5 V的两路电压,3.3 V作为单片机系统工作电源,5 V作为NZRM710工作电源。电路原理图如图3所示。TPS7A7001是一款高性能的LD0稳压器,设计有使能引脚,方便的关断模式下进一步减少功率耗散。单片机的P0.6与该引脚相连,在系统开启之后,如果连续3次都没有检测到有效的标签信息,则通过程序控制P0.6自动关闭系统,实现充分节能目的。
2.3 显示器模块设计
显示器是专门定制的,需要显示“测试”、“成功”、“失败”、“打折”以及电池图形等信息。
由于单片机I/O口无法直接驱动显示器,需要设计驱动电路。本系统采用段式LCD驱动器CP2400作为驱动芯片,该芯片可以支持多达128段的LCD,支持低功耗闪烁功能,可在1.8~3.3 V低电压下稳定工作。CP2400与单片机通过SPI总线通信。CP2400与单片机及显示器的接口电路设计如图4所示。
2.4 SMS通信技术的实现
本项目中,GSM技术实现需要设计3个程序,分别是GSM网络注册程序设计、单片机识别并处理GSM模块接收来自厂商短信的程序设计、GSM模块向厂商发送信息程序设计。限于篇幅,笔者主要讨论利用GSM模块接收和发送信息。
2.4.1 GSM发送信息
首先需要将预接收短信的号码进行16进制编码。编码的方法是在号码后面加F,然后将相邻奇偶位换位即可。
其次是对欲发送的信息内容进行编码。采用“汉字/Unicode互换工具”进行编码,操作方便,只需要在该软件“双字节汉字”栏中填入如要编码的汉字,然后点击“汉字转
Unicode”,在“Unicode码”这一栏中会自动显示转化后的16进制Unicode码。
再次是进行PDU格式编码。PDU编码格式为001100(前序)+0D(目的号码长度)+91(中国地区接入码)+86(国际接入码)+目的手机号码+0008(发送方式为8bit)+A7(信息保存时间)+信息长度+短信内容(Unicode)。
GSM发送信息软件设计流程图如图5所示。
2.4.2 GSM接收信息
GSM模块在接收到AT指令及厂商发来的确认短信时均会通过串口向单片机发送反馈信息,在程序设计时定义数组gsm_data[]来接收来自GSM的反馈信息。其中,在收到短信的反馈信息中会包含“+CMGS”字符,通过调用strstr(gsm_data,“+CMTI:”)函数即可识别GSM是否接收到短信。然后向GSM发送读取短信的AT指令AT+CMGR=1,gsm_data[]即可接收短信内容。
3 系统整体软件设计
当按下防伪装置的电源按键后,单片机首先检测当前电池电量,并在显示器上显示,如果电亮不足,会自动关机,然后开始利用串口向NZRM710模块发送读标签命令,NZRM 710会利用RFID技术将命令传送给电子标签,电子标签校对命令数据帧中的访问密码、校验码来确定读标签命令是否合法,如合法,则自动将标签内部存储的商品信息发送给NZRM 710,NZRM710再通过串口将采集到的数据交给单片机处理,在单片机的控制下,将商品信息在显示器上予以显示,利用GSM模块向厂商发送商品信息,收到商家的反馈信息后在显示器上显示,同时通过NZRM710将电子标签信息清0。为了节能,在连续3次检测标签失败后,系统会自动关机。软件实现流程图如图6所示。
4 实验结果
根据反复的实验,该系统运行稳定,功耗较低,完全满足手持设备的功耗要求。表3列出了系统待机测试的电流值以及笔者在每间隔1分钟情况下连续测得的系统工作电流值,电流单位为mA。
5 结束语
针对假冒伪劣烟酒扰乱市场,给厂家和消费者带来巨大经济损失,设计了一款基于GPRS与GSM技术的防伪装置,电子标签可回收使用,设计成本低,实验证明该方案可行性高,运营成本低具有很好的应用前景。