


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