摘? 要:物聯(lián)網(wǎng)技術(shù)的快速發(fā)展和廣泛應(yīng)用,為農(nóng)產(chǎn)品共享式信息化管理系統(tǒng)的實(shí)現(xiàn)提供了技術(shù)支持。文章以農(nóng)產(chǎn)品質(zhì)量安全為出發(fā)點(diǎn),對(duì)農(nóng)產(chǎn)品全過程管理模式進(jìn)行探索,基于物聯(lián)網(wǎng)射頻識(shí)別技術(shù)構(gòu)建了農(nóng)產(chǎn)品質(zhì)量安全管理系統(tǒng),為監(jiān)管部門、企業(yè)和公眾提供一個(gè)農(nóng)產(chǎn)品全過程監(jiān)管記錄、查詢和追溯的平臺(tái)。該平臺(tái)致力于完善農(nóng)產(chǎn)品全程監(jiān)督管理機(jī)制,實(shí)現(xiàn)農(nóng)產(chǎn)品質(zhì)量的可視化和可追溯,有效提升我國農(nóng)產(chǎn)品管理水平,使農(nóng)產(chǎn)品的質(zhì)量安全更加有保障。
關(guān)鍵詞:RFID;物聯(lián)網(wǎng)技術(shù);農(nóng)產(chǎn)品質(zhì)量安全;Django
中圖分類號(hào):TP311? 文獻(xiàn)標(biāo)識(shí)碼:A? 文章編號(hào):2096-4706(2023)17-0160-05
Design and Implementation of an Internet of Things Agricultural Product Quality Safety Management System Based on RFID Technology
TAN Yan
(Suzhou Polytechnic Institute of Agriculture, Suzhou? 215008, China)
Abstract: The rapid development and widespread application of Internet of Things technology have provided technical support for the implementation of shared informatization management systems for agricultural products. This paper takes the quality safety of agricultural products as the starting point, explores the entire process management mode of agricultural products, and constructs an agricultural product quality safety management system based on the Internet of Things radio frequency identification technology. It provides a platform for regulatory authorities, enterprises, and the public to record, query, and trace the entire process of agricultural product supervision. This platform is committed to improving the entire process supervision and management mechanism of agricultural products, achieving visualization and traceability of agricultural product quality, effectively improving the management level of agricultural products in China, and making the quality safety of agricultural products more guaranteed.
Keywords: RFID; Internet of Things technology; agricultural product quality safety; Django
0? 引? 言
近年來,農(nóng)產(chǎn)品安全事件時(shí)有發(fā)生,引發(fā)了人們對(duì)農(nóng)產(chǎn)品安全問題的極大關(guān)注,但目前農(nóng)產(chǎn)品質(zhì)量安全監(jiān)管主體單一,政府監(jiān)管占據(jù)絕對(duì)地位,公眾受制于知識(shí)、手段等困擾,參與較少[1]。農(nóng)產(chǎn)品質(zhì)量安全不僅與人民群眾的健康息息相關(guān),同時(shí)關(guān)系著國家農(nóng)業(yè)經(jīng)濟(jì)的發(fā)展,因此,保障農(nóng)產(chǎn)品質(zhì)量安全對(duì)于國家的發(fā)展尤為重要。2022年9月,十三屆全國人大常委會(huì)通過了新修訂的《農(nóng)產(chǎn)品質(zhì)量安全法》,該法案要求確保農(nóng)產(chǎn)品從生產(chǎn)環(huán)節(jié)到加工、倉儲(chǔ)、消費(fèi)環(huán)節(jié)的全過程質(zhì)量監(jiān)管。促進(jìn)農(nóng)業(yè)信息化快速發(fā)展,建立真正有效的質(zhì)量安全追溯體系是現(xiàn)代農(nóng)業(yè)發(fā)展的重要方向,也是世界現(xiàn)代農(nóng)產(chǎn)品和食品生產(chǎn)的發(fā)展趨勢(shì)[2]。
近年來,隨著計(jì)算機(jī)技術(shù)、電子技術(shù)、通信技術(shù)的迅速發(fā)展,物聯(lián)網(wǎng)技術(shù)也得到了快速發(fā)展和廣泛應(yīng)用,為農(nóng)產(chǎn)品安全質(zhì)量監(jiān)管系統(tǒng)的實(shí)現(xiàn)提供了技術(shù)保障。借助物聯(lián)網(wǎng)中的傳感器、RFID(射頻識(shí)別)等信息感知設(shè)備,可實(shí)現(xiàn)農(nóng)產(chǎn)品的識(shí)別、數(shù)據(jù)采集、定位、監(jiān)控和管理。通過構(gòu)建基于物聯(lián)網(wǎng)技術(shù)的農(nóng)產(chǎn)品安全管理體系,健全農(nóng)產(chǎn)品全程監(jiān)督管理協(xié)作機(jī)制,實(shí)現(xiàn)農(nóng)產(chǎn)品從田間地頭到百姓餐桌的全過程、全鏈條監(jiān)管,可以有效提升我國農(nóng)產(chǎn)品安全管理水平。
1? 系統(tǒng)功能需求分析
基于物聯(lián)網(wǎng)技術(shù)構(gòu)建的農(nóng)產(chǎn)品質(zhì)量安全管理系統(tǒng),將RFID標(biāo)簽作為農(nóng)產(chǎn)品的唯一標(biāo)識(shí),對(duì)農(nóng)產(chǎn)品從生產(chǎn)生長到加工、物流和銷售、售后等環(huán)節(jié)進(jìn)行全過程監(jiān)管,為用戶提供方便快捷的農(nóng)產(chǎn)品信息記錄、查詢和追溯的平臺(tái)。追溯農(nóng)產(chǎn)品的來源和流動(dòng)方向,召回問題產(chǎn)品,為政府監(jiān)管、企業(yè)和公眾提供農(nóng)產(chǎn)品信息監(jiān)管通道和追溯查詢便利。
農(nóng)產(chǎn)品類型多且復(fù)雜,質(zhì)量參差不齊,有些農(nóng)產(chǎn)品保鮮期短,對(duì)儲(chǔ)存、運(yùn)輸有較高要求[3],如在生產(chǎn)過程中不合理使用化肥、農(nóng)藥,會(huì)導(dǎo)致農(nóng)藥殘留、重金屬超標(biāo)和含激素等問題。本文結(jié)合農(nóng)產(chǎn)品的特點(diǎn),以及流通過程和追溯的實(shí)際需求,設(shè)計(jì)各環(huán)節(jié)中需要存儲(chǔ)的基本數(shù)據(jù)和關(guān)鍵數(shù)據(jù)。系統(tǒng)分成前臺(tái)和后臺(tái)兩個(gè)部分,前臺(tái)為普通用戶提供查詢、投訴和追溯等功能;后臺(tái)為管理員提供數(shù)據(jù)查詢、錄入、管理、追溯等功能,實(shí)現(xiàn)對(duì)農(nóng)產(chǎn)品各環(huán)節(jié)關(guān)鍵數(shù)據(jù)的記錄和管理。
1.1? 前臺(tái)功能
系統(tǒng)前臺(tái)包括首頁、相關(guān)法律、投訴建議、追溯查詢四個(gè)頁面。首頁中設(shè)置了導(dǎo)航、管理員登錄模塊等?!跋嚓P(guān)法律”頁面展示關(guān)于農(nóng)產(chǎn)品安全的法律法規(guī)信息?!巴对V建議”頁面為注冊(cè)用戶提供了投訴問題產(chǎn)品的功能。在“追溯查詢”頁面中,注冊(cè)用戶可通過輸入產(chǎn)品外包裝上的流通碼,追溯產(chǎn)品流通中各環(huán)節(jié)的信息。
1.2? 后臺(tái)功能
管理員通過驗(yàn)證后,即可登錄到后臺(tái)界面。后臺(tái)界面包括了農(nóng)產(chǎn)品流通的全過程,每個(gè)環(huán)節(jié)對(duì)應(yīng)一個(gè)模塊,總共包括七個(gè)模塊,功能結(jié)構(gòu)如圖1所示。
在銷售前的模塊中,生長管理模塊主要對(duì)農(nóng)產(chǎn)品生長和生產(chǎn)階段的相關(guān)數(shù)據(jù)進(jìn)行管理和操作,該模塊授權(quán)系統(tǒng)管理員和生長管理員進(jìn)行訪問,用于管理員錄入管理基地和地塊的相關(guān)信息、農(nóng)產(chǎn)品在生長和生產(chǎn)過程中的施肥和施藥信息。加工管理模塊對(duì)加工環(huán)節(jié)的相關(guān)信息進(jìn)行管理,該模塊授權(quán)系統(tǒng)管理員和加工管理員進(jìn)行訪問和操作。物流管理模塊對(duì)物流環(huán)節(jié)的相關(guān)數(shù)據(jù)進(jìn)行記錄和管理。銷售管理模塊主要管理銷售階段的相關(guān)數(shù)據(jù),而投訴管理模塊對(duì)前臺(tái)提交過來的投訴信息進(jìn)行管理,包括投訴人信息和產(chǎn)品投訴信息。銷售后的模塊包括追溯管理、投訴管理。追溯管理模塊的主要功能是利用產(chǎn)品的流通碼或EPC碼,對(duì)產(chǎn)品從生長到銷售各環(huán)節(jié)信息進(jìn)行追溯和查詢,該模塊授權(quán)系統(tǒng)管理員和所有類別的管理員進(jìn)行訪問和操作。用戶管理模塊中,可對(duì)所有用戶的信息和角色進(jìn)行操作,僅授權(quán)權(quán)限最高的系統(tǒng)管理員進(jìn)行角色分配,包括查看角色、添加角色、刪除角色、設(shè)置角色、取消角色五種功能。
2? 系統(tǒng)設(shè)計(jì)
農(nóng)產(chǎn)品質(zhì)量安全管理系統(tǒng)使用Python 3.7作為開發(fā)語言,采用PyCharm軟件在Win 10環(huán)境下進(jìn)開發(fā)和測(cè)試,基于Python 3.10和Django 4.1.3開發(fā)框架,聯(lián)合數(shù)據(jù)庫MySQL Server 5.7進(jìn)行開發(fā),系統(tǒng)的Web服務(wù)器采用Django自帶的服務(wù)器。
2.1? B/S架構(gòu)
系統(tǒng)采用B/S(Browser/Server)架構(gòu)進(jìn)行開發(fā),B/S架構(gòu)是一個(gè)三層框架,如圖2所示,根據(jù)“高內(nèi)聚,低耦合”的原則,將整個(gè)業(yè)務(wù)應(yīng)用劃分為表現(xiàn)層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層。B/S架構(gòu)模式統(tǒng)一了客戶端,客戶端只需要安裝一個(gè)瀏覽器,即可通過互聯(lián)網(wǎng)訪問Web服務(wù)器和數(shù)據(jù)庫,極大地減輕了客戶機(jī)的性能要求,B/S架構(gòu)可有效減少系統(tǒng)的開發(fā)、維護(hù)成本。受疫情和時(shí)代發(fā)展影響,多地協(xié)同辦公的分布式辦公模式成為一種常態(tài),因此使用B/S架構(gòu)的系統(tǒng)是一種更優(yōu)的選擇。
2.2? Django框架
農(nóng)產(chǎn)品質(zhì)量安全管理系統(tǒng)基于Python語言開發(fā),Python作為一種高級(jí)腳本語言,結(jié)合了可解釋性、可編譯性、交互性和面向?qū)ο?,具有良好的跨平臺(tái)性[4]。而Django是一種基于Python的開源Web應(yīng)用框架,同時(shí)包含了許多功能強(qiáng)大的第三方插件,可方便快捷地創(chuàng)建高品質(zhì)、易維護(hù)、數(shù)據(jù)庫驅(qū)動(dòng)的Web應(yīng)用程序,本系統(tǒng)設(shè)計(jì)采用的是Django 2.2版本。
Django采用MTV(模型-模板-視圖)模式來開發(fā)應(yīng)用程序,其中Model指的是數(shù)據(jù)模型,該層為數(shù)據(jù)存取層,提供在數(shù)據(jù)庫中管理和查詢記錄的機(jī)制;Template為模板,該層為表現(xiàn)層,用于處理頁面的顯示,所有與頁面呈現(xiàn)相關(guān)的內(nèi)容都由該層處理;View為視圖,該層為業(yè)務(wù)邏輯層,負(fù)責(zé)接收用戶請(qǐng)求,進(jìn)行業(yè)務(wù)處理并返回響應(yīng),以及調(diào)用Model和Template[5]。
2.3? 數(shù)據(jù)庫設(shè)計(jì)
系統(tǒng)采用MySQL數(shù)據(jù)庫來存儲(chǔ)數(shù)據(jù),MySQL是一個(gè)開源、輕量級(jí)、應(yīng)用得非常廣泛的數(shù)據(jù)庫管理系統(tǒng),它具有速度快、跨平臺(tái)、安全性高等特點(diǎn)。Django框架中集成了ORM(對(duì)象-關(guān)系-映射),具有強(qiáng)大的數(shù)據(jù)操作功能,使業(yè)務(wù)代碼更簡潔、高效,大大減少開發(fā)人員的編碼量。
設(shè)計(jì)并建立農(nóng)產(chǎn)品質(zhì)量安全管理系統(tǒng)數(shù)據(jù)庫,首先確定所有數(shù)據(jù)類型及特征,制定地塊編號(hào)等表達(dá)規(guī)范使其與農(nóng)產(chǎn)品信息唯一對(duì)應(yīng),然后對(duì)數(shù)據(jù)進(jìn)行測(cè)試、優(yōu)化與維護(hù)[6]。根據(jù)系統(tǒng)的功能模塊分析,MySQL數(shù)據(jù)庫中主要包括基地信息、地塊信息、品類信息、施肥信息、施藥信息、加工廠信息等25張數(shù)據(jù)表。以投訴信息表為例,表結(jié)構(gòu)如表1所示。
3? 系統(tǒng)實(shí)現(xiàn)
3.1? 數(shù)據(jù)庫操作
基于ORM的映射功能,數(shù)據(jù)模型的操作不需要依賴于SQL語句來操作數(shù)據(jù)庫,通過簡單的配置即可連接數(shù)據(jù)庫,通過模板頁面進(jìn)行數(shù)據(jù)操作內(nèi)容:
1)在項(xiàng)目配置文件settings.py中配置數(shù)據(jù)庫連接信息。
2)在MySQL中,通過SQL語句創(chuàng)建農(nóng)產(chǎn)品數(shù)據(jù)庫,名稱為produce。
3)在models.py中定義多個(gè)模型類,都繼承自models.Model,根據(jù)數(shù)據(jù)表的結(jié)構(gòu),編寫模型類的字段名、字段類型和約束。
4)根據(jù)模型的定義、字段更改等信息生成遷移文件。
5)使用命令,應(yīng)用遷移文件,在MySQL數(shù)據(jù)庫完成數(shù)據(jù)遷移操作。
6)在模板頁面中,利用模型類對(duì)數(shù)據(jù)表進(jìn)行添加、刪除、修改、查詢等操作。
3.2? 前臺(tái)頁面
系統(tǒng)的首頁中有前臺(tái)四個(gè)頁面的導(dǎo)航,所有用戶可以瀏覽首頁上的信息。首頁上設(shè)置了后臺(tái)系統(tǒng)的登錄入口,登錄模塊采用用戶名和密碼的機(jī)制進(jìn)行驗(yàn)證。在界面設(shè)計(jì)方面,由于前臺(tái)四個(gè)頁面的布局、導(dǎo)航和風(fēng)格完全一致,為了提高代碼的可重用性,采用了相同的模板文件layout.html。以投訴頁為例,對(duì)頁面功能的實(shí)現(xiàn)進(jìn)行說明:
1)首先在templaes文件夾下創(chuàng)建complaint.html頁面,頁面中通過代碼{% extends "layout.html" %}繼承模板layout.html。利用表格對(duì)表單進(jìn)行布局,設(shè)置表單的提交方式為POST。
2)配置路由。修改文件url.py,設(shè)置投訴頁的URL和視圖函數(shù)的映射關(guān)系。代碼為path('complaint/', views.complaint)。
3)修改views.py文件,添加視圖函數(shù)complaint。該函數(shù)的業(yè)務(wù)邏輯是:首先判斷頁面的request方法,如果為“GET”,則打開投訴頁面,如果為“POST”,則接收表單傳遞過來的數(shù)據(jù),然后操作投訴表模型類Complaint,通過Complaint.objects.create()方法,向表1中的complaint數(shù)據(jù)表添加一行記錄,即可將頁面中的投訴信息保存在數(shù)據(jù)表中。
實(shí)現(xiàn)后的投訴頁面如圖3所示,用戶可在該頁面中錄入問題產(chǎn)品的編碼、銷售公司、產(chǎn)品品種、購買時(shí)間、投訴時(shí)間、不良反應(yīng)、問題描述、投訴人、聯(lián)系電話等數(shù)據(jù)。
用戶通過點(diǎn)擊“追溯查詢”導(dǎo)航打開如圖4所示追溯查詢頁面,在搜索框中輸入產(chǎn)品外包裝上的流通碼,點(diǎn)擊“查詢”按鈕,即可查看到對(duì)應(yīng)產(chǎn)品在各流通環(huán)節(jié)中的公共信息。
3.3? 后臺(tái)頁面
后臺(tái)頁面包含了生長管理等七個(gè)模塊,分別對(duì)應(yīng)了具體的數(shù)據(jù)操作頁面。在界面設(shè)計(jì)方面,由于后臺(tái)界面的菜單基本相同,因此創(chuàng)建layout2.html作為后臺(tái)頁面的父模板,所有后臺(tái)頁面都繼承自layout2.html。在業(yè)務(wù)邏輯方面,由于后臺(tái)模塊較多,創(chuàng)建了一個(gè)專門存放視圖函數(shù)的文件夾views,在該文件夾下添加各模塊的視圖文件。與前臺(tái)頁面的步驟類似,同樣在視圖函數(shù)中通過模型類對(duì)數(shù)據(jù)表添加、修改和刪除等操作,查詢數(shù)據(jù)后將數(shù)據(jù)渲染到對(duì)應(yīng)的模板頁面上。
以加工管理模塊為例,該模塊下設(shè)置了加工廠信息頁面、進(jìn)廠信息頁面等四個(gè)類別頁面。實(shí)現(xiàn)后的進(jìn)廠信息頁面如圖5所示,在該頁面中,可對(duì)進(jìn)廠產(chǎn)品的EPC碼、加工廠編號(hào)、入廠時(shí)間、重量、檢測(cè)結(jié)果、責(zé)任人等數(shù)據(jù)進(jìn)行查詢、添加、編輯和刪除等操作。同時(shí),頁面還設(shè)置了搜索功能,輸入關(guān)鍵字后,可以篩選得到結(jié)果,方便管理員進(jìn)行數(shù)據(jù)管理。
追溯管理模塊主要通過產(chǎn)品的流通碼或EPC碼,對(duì)產(chǎn)品各環(huán)節(jié)信息進(jìn)行追溯和查詢,以流通碼追溯頁面為例,可查看產(chǎn)品的生長信息、加工信息、物流信息、銷售信息、投訴信息以及匯總信息六類。實(shí)現(xiàn)后的流通碼追溯頁面如圖6所示,在圖中文本框內(nèi)輸入某產(chǎn)品流通碼,并選擇加工信息時(shí),可查詢到該產(chǎn)品在流通過程中與加工相關(guān)的所有信息,如加工廠名稱、入廠檢驗(yàn)結(jié)果、檢驗(yàn)人、出廠日期等。
4? 結(jié)? 論
本文對(duì)農(nóng)產(chǎn)品全過程的信息化管理模式進(jìn)行了初步探索,構(gòu)建了一個(gè)基于RFID技術(shù)的物聯(lián)網(wǎng)農(nóng)產(chǎn)品質(zhì)量安全管理系統(tǒng),為用戶提供了從農(nóng)產(chǎn)品生長環(huán)節(jié)到加工、物流和銷售、售后等全過程監(jiān)管的記錄、查詢和追溯平臺(tái),可有效提升農(nóng)產(chǎn)品質(zhì)量安全管理水平。經(jīng)過測(cè)試和運(yùn)行,系統(tǒng)功能完善,界面美觀大方,操作快捷方便,在一定程度上為監(jiān)管部門、企業(yè)和公眾了解農(nóng)產(chǎn)品的信息提供了便利。目前,農(nóng)產(chǎn)品質(zhì)量安全管理系統(tǒng)的測(cè)試數(shù)據(jù)還不夠全面,另一方面,功能模塊還可以再進(jìn)一步擴(kuò)展,后期將增加測(cè)試數(shù)據(jù)量,細(xì)化模塊功能,使系統(tǒng)功能更加完善。
參考文獻(xiàn):
[1] 葉耿.構(gòu)建大數(shù)據(jù)支撐下的農(nóng)產(chǎn)品質(zhì)量安全監(jiān)管體系研究 [J].工業(yè)微生物,2022,52(6):55-66.
[2] 白春艷,劉石鑫,程曉宇,等.農(nóng)產(chǎn)品和食品質(zhì)量安全追溯平臺(tái)研究進(jìn)展 [J].現(xiàn)代農(nóng)業(yè)科技,2022(19):193-196.
[3] 張馨予.電子商務(wù)環(huán)境下農(nóng)產(chǎn)品質(zhì)量安全監(jiān)管問題分析 [J].現(xiàn)代食品,2022,28(16):152-154.
[4] 劉艷雯,吳濤,沈彬,等.基于Django的施工數(shù)據(jù)共享平臺(tái)設(shè)計(jì)與實(shí)現(xiàn) [J].現(xiàn)代計(jì)算機(jī),2022,28(2):117-120.
[5] 施宸昊.基于Django的水果銷售系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) [J].麗水學(xué)院學(xué)報(bào),2022,44(2):16-19.
[6] 謝曉偉,包琦.基于Django與Vue的農(nóng)產(chǎn)品質(zhì)量追溯管理平臺(tái) [J].電子技術(shù)與軟件工程,2022(12):246-249.
作者簡介:譚彥(1985—),女,漢族,廣西桂林人,講師,碩士,研究方向:計(jì)算機(jī)應(yīng)用、物聯(lián)網(wǎng)。