李久林等
摘要:提出基于二维码的蔬菜溯源信息管理平台,在对QR码纠错编码算法、QR码掩膜分析的基础上,利用PHP进行开发,系统整体采用Linux+Apache+MySQL+PHP实现,设计并实现了平台的表现层、业务逻辑层、数据层3层。
关键词:二维码;蔬菜;溯源;信息管理平台
中图分类号: S126文献标志码: A文章编号:1002-1302(2015)02-0403-03
收稿日期:2014-09-16
基金项目:河北省科技厅建设项目(编号:14967417D)。
作者简介:李久林(1988—),女,河北张家口人,硕士研究生,主要从事智能检测与自动控制研究。E-mail:780409623@qq.com。
通信作者:高亮,教授,主要从事农业工程研究。蔬菜产业在我国农业生产中占有重要地位,蔬菜质量不仅关系到人民群众的身体健康与生命安全,而且对农业发展、社会稳定具有重大影响。要实现蔬菜的优质生产,治本之策是要建立完善的蔬菜安全生产追溯平台,确保蔬菜生产信息透明化,实现“从田间地头到餐桌”的全程质量监控。追溯平台记录并存储产品供应过程中各种相关信息,有助于质量控制。20世纪90年代,在疯牛病事件的影响下,欧盟开始了对追溯系统的研究[1-3]。近年来,随着食品工业的不断发展及人们对食品安全的重视,许多国家都开始重视食品追溯系统建设,我国已建立了一些产品追溯平台:如农业部产业化办公室、农业部农村研究中心主办的“中国农产品质量追溯网”;江苏省宜兴市丁蜀镇人民政府建立的“农产品质量安全追溯平台”;浙江省杭州市建立的“肉类蔬菜流通追溯管理平台”等。这些追溯平台大多内容陈杂、使用繁复、针对性弱、技术陈旧[4]。本研究提出基于二维码的蔬菜溯源信息管理平台,使用信息容量大、高速全方位识读、纠错能力强的二维码作为载体,平台对生产者、加工者、销售者组成的蔬菜供应链实行线上线下同步监控,消费者通过二维码与平台可以清楚地追溯到蔬菜的详细信息,旨在为保障我国蔬菜产业健康发展提供依据。
1二维码技术
二维码技术是针对一维条形码数据容量小、需要后台数据库支持等缺点产生的。二维码可表示文字、图像、音频等各种信息,将蔬菜所有阶段信息汇总后形成二维码,码图生成方便,无需硬件设备。
1.1二维码编码
二维码分为40个尺寸(1~40),官方称版本Version。二维码尺寸公式:(V-1)×4+21(V是版本号),版本1的大小就是(1-1)×4+21=21,21×21最小的正方形,其二维码图如图1所示。
根据二维码国家标准,二维码编码流程如图2所示。根据数据流确定数据编码的数据类型,选择L/M/Q/H纠错等级,将这些信息编码成数据块,填充到功能图的相应位置,添加掩膜,最后将格式与版本信息加到功能图中形成完整二维码。QR码作为二维码中的1种,是为追踪汽车零件而设计的,由于其具有超高速识读、全方位识读、能存储汉字等优点,被广泛应用于各个领域。
1.2QR码加密算法
为了提高QR码信息的安全性,采用DES、RSA 2种加密算法的混合算法对二维码进行加密。DES加密算法是将信息分组,分组后的信息再加密。RSA算法是1种公开的密钥算法,它能产生2把密钥,1把用来加密,1把用来解密。本研
究结合两者的优缺点,设计了DES-RSA混合加密算法。 运用DES算法对二维码明文信息加密,再用RSA加密DES的密钥(图3)。
1.3QR码纠错编码算法
QR码在生产流通中会出现破损、污染等问题,对二维码识别产生直接影响,因此选择好的纠错算法极其重要。本研究设计的平台应用RS(reed solomon)错误控制码,在QR中利用纠错能力极强的RS码最高可以纠错30%的错误码。以q作为素数的有限伽罗华域(galois field,GF)记作GF(q),若a满足aq-1=1,a作为GF(q)的本原元,组成循环群G(a):a0,a1,a2,…,aq-1。那么如果纠正k个错误的RS码生成多项式为g(x)=(x-a)(x-a2)(x-a3)…(x-a2k),信息码的多项式为d(x)=d0+d1x1+d2x2+d3x3+…+dn-1xn-1。RS编码后的多项式为h(x)=x2kd(x)+x2kd(x)modg(x),式中x2kd(x)是原始码部分,x2kd(x)modg(x)是纠错码的部分。
1.4QR码掩膜
QR码的掩膜就是对QR码做Masking操作,主要是针对码图出现大面积的空白或黑块、点不均衡导致扫描识别码图困难的问题,这里的Mask操作是对生成的图做XOR(异或)操作。二维码Mask过程如图4所示。
2系统设计
2.1总体框架
蔬菜溯源信息管理平台的设计目标是实现蔬菜土地、种植户、农资、加工、质检等信息的信息化,并将其数据集成,生成二维码溯源标签,消费者用手机扫描二维码查询蔬菜信息,通过平台同样可以查询。该平台的建立增强了蔬菜从种植到最终消费这一过程中各个环节的关联性及数据共享能力,利用信息化手段使得蔬菜信息更加透明化。系统功能流程图如图5所示。
2.2系统结构设计
系统应用B/S 3层架构,即表现层、业务逻辑层、数据访问层[5-7]。各层间互相分离,最低限度降低了功能模块间的耦合性,如果变更业务需求,无需对所有代码进行修改,只需对业务逻辑层进行调整。系统应用UML进行统一建模。信息管理平台层次结构如图6所示。
2.2.1表现层设计表现层面向用户,用于显示数据及接收用户输入的数据,为用户提供可操作的、友好的、可见的功能界面。系统利用laravel框架提供的丰富界面模板进行设计。用户输入请求后,将显示结果通过客户端显示给用户。通过用户接口,为政府、企业内部用户提供信息管理系统,用于政府监管及蔬菜生产企业实现信息管理。endprint
2.2.2业务逻辑层设计业务逻辑层对表现层发过来的数据请求进行处理,通过HTTP/HTTPS协议与表示层通信,而且可以与数据库连接,分为控制层、服务层、访问层3个子层次。业务逻辑层是整个系统的核心,主要是业务对象的位置以及应用于业务对象的规则。它的任务是接受表现层的请求,根据业务规则处理请求,与数据库进行交互,将结果传回表现层。从业务功能上,系统分为蔬菜生产者档案管理子系统、蔬菜溯源查询子系统、蔬菜安全健康生产技术标准化子系统、政府监管子系统4个子系统。平台功能结构图如图7所示。
2.2.3数据访问层设计数据层主要负责管理数据,也就是
对数据进行分类、组织、编码、存储、检索、维护等,数据库系统是数据层的核心,通过数据访问接口与表现层、逻辑层进行交互,即数据库服务器处理完成后将库中数据反馈给业务逻辑层,业务逻辑层完成处理后,将结果发送到表现层显示给用户。
3蔬菜溯源信息管理平台的实现
蔬菜溯源信息管理平台应用PHP进行开发,选择apache作为WEB应用服务器,选择Mysql作为数据库服务器,采用B/S架构部署实现交互,利用HTTP实现用户与服务器之间的通信协议,敏感数据采用HTTPS进行通信。平台包含了蔬菜全面的安全生产信息,并且对这些数据进行管理、提供安全保障。应用二维码技术使得人们可以方便快捷地查询蔬菜信息。本平台不仅为政府对监管蔬菜提供了技术手段支持,而且规范了企业生产经营行为,还保障了消费者权益。平台的主要界面如图8所示。
4结论
本研究探讨QR码的纠错码算法及掩膜方法,采用B/S 3层架构,结合laravel框架构建了系统的表现层、业务逻辑层、数据访问层结构,初步构建了蔬菜“从田间到餐桌”的信息溯源管理平台,对蔬菜从土地、种植户、农资、加工到质检等信息实现了统一管理与储存,通过信息容量大的QR二维码,实现了对蔬菜生产信息的追溯。
参考文献:
[1]杨信廷,钱建平. 蔬菜安全生产管理及质量追溯系统设计与实现[J]. 农业工程学报,2008,24(3):162-166.
[2]刘英,陈历程. 欧盟及美国的“溯源性”:牛肉生产系统简介[J]. 食品科学,2003(8):182-184.
[3]Opara L U. Traceability in agriculture and food supply chain:A review of basic concepts,technological implications,and future prospects[J]. Journal of Food Agriculture & Environment,2003,1(1):101-106.
[4]鲁洪军. 浅谈二维码识别在防伪系统中的应用[J]. 计算机光盘软件与应用 2012(22):127,16.
[5]何祖军,尚明玲. 基于DES和RSA的组合加密技术在综合船桥系统中的研究[J]. 科学技术与工程 2009,7(9):1729-1733.
[6]徐秀敏,郝赫,曹占峰,等. 基于三层B/S的规划计划信息管理平台[J].计算机系统应用,2013,22(4):51-54,78.
[7]陈丽,刘彤. 通用物联网综合信息管理平台的技术架构[J].物联网技术 2013(2):52-54,58.梁文东,蒋益敏. 基于MATLAB的玉米果穗颗粒统计方法[J]. 江苏农业科学,2015,43(2):406-408.endprint