猪肉溯源系统的设计与研究
2019-09-10魏雅
魏雅
摘 要:针对食品质量安全问题,结合目前各地区溯源系统中存在的问题,以猪肉溯源为例,设计了猪肉溯源系统。系统从生猪的养殖、屠宰、加工、运输,最终到零售,进行各环节设计,实现了猪肉全程追踪和溯源功能。重点设计研究了Web平台,二进制树搜索算法,数据库等,最终实现了系统要求的全部功能。
关键词:物联网;溯源系统;通信技术;二进制树搜索算法
随着人们生活水平的提高,对食品质量安全的需求愈加凸显,从国家到地方,都高度重视食品质量安全监管及追溯。猪肉作为人们舌尖上的一道美食,更应该保证其食用安全性。所以建立一套基于物联网的猪肉跟踪与溯源系统,不但能让消费者买得放心、吃得放心,还能加强企业的监管力度,提高国民收入,保障国家安全稳定。本系统在前人研究的基础上稍作改进,在保障猪肉质量和控制猪肉安全方面,具有现实意义。
1 系统功能设计
1.1 系统架构
本系统按照典型的物联网的感知层、网络层、应用层3层模式设计。系统采用B/S架构,围绕着数据库进行系统的构建。
(1)感知层:通过传感器等智能终端,对猪个体、猪肉及物流的信息进行采集,同时,接收上层网络发送来的控制信息,完成相应的执行动作,还可以进行短距离无线通信。
(2)网络层:由互联网、移动通信网、网络管理等组成,是整个物联网的中枢。负责传递和处理感知层获取的信息,使物体能进行远距离、大范围的通信。
(3)應用层:是物联网和用户的接口,用户借助Web客户端和手机端,完成对猪个体及猪肉信息的汇总、分析、查询等功能。用户可根据溯源系统的数据鉴定猪肉质量,实现人机交互功能,为消费者提供放心服务。企业可以对不同环节的数据分析,来调节养殖业和猪肉的供应情况,获取最大利润。
1.2 系统功能模块设计
系统采用强大的物联网技术、射频识别(Radio Frequency IDentification,RFID)技术、常用的二维码技术以及具有跨平台、不受操作系统和开发平台制约的Java语言完成动态Web的开发[1]。详细设计MySQL数据库存储采集到的信息以被溯源查询,采用二进制树搜索算法来提高RFID标签识别效率。开发Android手机平台客户端、PC端,实现猪肉溯源系统的系统管理、信息维护、信息查询模块功能,完成对生猪养殖信息、屠宰加工信息、检疫检验信息、物流仓储信息、销售信息的录入与修改,实现信息查询的功能。系统总体设计如图1所示。
2 系统关键技术
2.1 射频识别技术
射频识别技术是物联网构建的关键技术,其系统由电子标签、天线、读写器和数据处理部分构成。因其有识别迅速、形状大小不受限制、操作性比较强、比较耐用、抗干扰能力较强、存储信息量大、存储信息可以随意修改等优点,被广泛应用于智慧交通、智慧城市、智能图书馆、物流运输、医药及食品生产等行业,且效果显著。RFID在猪肉溯源系统中的应用如图2所示。其中,实线箭头表示追踪过程,虚线箭头表示追溯过程。
2.2 RFID防碰撞算法研究
2.2.1 防碰撞现象
在RFID系统应用中,碰撞分为标签碰撞和读写器碰撞两种。在发送信息和接收信息过程中,本来在特定时间,只能是一个标签与对应阅读器建立通信,但在系统中出现一个终端采集器对应很多个保存有猪个体和猪肉信息的RFID标签,也就是出现了多个标签对单一阅读器信道进行竞争的现象,这种现象被称之为标签碰撞。另外,一个特定的标签反射到读写器的信号很容易被另外读写器发出的信号干扰,特定的标签接收到的信息为两个读写器发射信号的矢量和,是一个未知信号,导致出现了多个读写器对一个标签的干扰,这种现象被称为读写器碰撞。
2.2.2 防碰撞算法的选择
在RFID系统中,可以采用多址复用的方式解决由于读写器信道引起的碰撞问题。通过分析采用时分多址(Time Division Multiple Access,TDMA),即对所有标签,在某个时间内建立唯一的阅读器和标签的通信关系,可以很好地解决标签碰撞问题。标签防碰撞算法有基于TDMA的ALOHA系列的算法和二进制防碰撞系列算法,两种算法只需知道标签的数量,就能很好地发挥其优点。但相比之下二进制树型搜索法更能快速、准确地识别对应的标签[2]。二进制搜索算法的工作流程如图3所示。
从图3可以看出,当标签数为n,标签长度为L时,所有的标签被读取成功所需要的搜索次数:
吞吐率为: (2)
总的传输数据比特数为:
因在识别标签时,读写器要多次发送请求码给标签,浪费时间、效率较低。
2.2.3 改进的二进制树搜索算法
当标签数量较多时,每次都要从头搜索会出现多余数据并浪费时间。这时,只要发生标签碰撞,就把碰撞的最高位设为0,高于该位的数不变,产生新的请求码;再和新的请求码进行比较,每次ID最小的标签应答后,返回父节点的时候,读写器无需每次都要发送最大序列号请求码。这样,识别所有标签需搜索次数t=2×n-1,识别一个标签平均查询次数v=(2×n-1)÷n,则吞吐率为s=n÷(2×n-1)。
经验证,当标签数量较大时,改进后的算法效率更高。因系统中标签数较多,所以系统使用改进后的二进制算法可以提高RFID的工作效率。
2.3 socket 通信
本系统选择了基于传输控制协议/因特网互联协议(Transmission Control Protocol/Internet Protocol,TCP/IP)的socket通信协议,以保证系统通信数据的正确可靠性,确保实时的通信质量。
3 系统关键功能实现
3.1 系统总体工程实现
系统在创建项目前,先设置好端口。选择功能强大、操作简单、运行速度快、占用资源少的Eclipse作为开发工具,应用Java语言完成对应程序的设计并运行,通过系统提供的溯源网址来实现系统的编辑,查询等功能。
3.2 通信及服务器设置
本系统选择了基于TCP/IP协议的socket通信协议,以保证系统通信数据的正确可靠性,确保实时的通信质量。使用Web服务器,当客户端发送请求网址给服务器端时,服务器就转换、翻译.JSP文件,再执行.class文件。
3.3 数据库管理实现
根据数据库设计原则[3]和系统软硬件的实际需求,本系统选用管理方便、操作简单、运行速度高效、成本低的且可靠性高的MySQL数据库。选用Navicat Lite 9.0作为系统数据库的管理软件,实现对数据库里的数据执行增、删、改、查等操作,用它建立的数据库能够在任何网络访问,实现数据共享。
4 结语
系统通过对硬件的选取和软件平台的搭建,使用物联网技术、RFID技术、通信技术、数据库技术,从猪仔的养殖到生猪的屠宰、分割、再经流通,最终到零售超市进行销售的环节设计,实现了猪肉全程追踪和溯源功能。重点研究设计了Web平台,二进制树型搜索算法,数据库设计等,最终实现了利用网页端和手机端完成对系统的监测。
[参考文献]
[1]赵训铭,刘建华.射频识别技术在食品溯源中的应用研究进展[J].食品与机械,2019,35(2):212-216.
[2]王佩玮.无线射频识别标签防碰撞算法比较分析[J].物联网技术,2017,7(4):21-24.
[3]韩雨佟.基于B/S物联网环境监测系统MySQL数据库的设计与实现[D].天津:天津大学,2014.