王運生 黃澈 吳瀛 王愿 陳蘊
摘要:針對當前糧食受到環(huán)境影響而發(fā)生霉變,變質的問題,以及現(xiàn)有糧庫測控系統(tǒng)控制節(jié)點少、功能單一、不能進行遠程控制等問題。系統(tǒng)采用Delphi開發(fā)語言,以ARM處理器為主控制器,利用多個霍尼韋爾傳感器采集數(shù)據(jù),結合超遠距離無線傳輸技術和云技術,實現(xiàn)糧情監(jiān)測、通風控制、大范圍儲糧管理等功能,從而提高糧庫管理的信息化、智能化。
關鍵詞:糧情檢測;Delphi;霍尼韋爾;云技術
一 前言
近年來,國家糧食局和全國各地區(qū)單位積極探索以數(shù)字糧庫為主要內容的糧食行業(yè)信息化建設,全國糧食行業(yè)提高了政府宏觀調控能力和安全保障水平,為全面推進糧食行業(yè)信息化發(fā)展奠定了基礎。但是,大部分糧倉庫仍為人工監(jiān)控管理,如降倉溫通風是倉房日常管理中,尤其是低溫儲糧管理中的一項操作較為頻繁、辛苦的工作,為此需要大量的人力物力進行維持,并且依靠人工監(jiān)測也會出現(xiàn)監(jiān)測結果不準的結果1。
本系統(tǒng)充分利用ARM處理器的I/O口,部署到單個倉房內的單分機最大可實現(xiàn)64路輸入和64路控制輸出,可以有效管理每個倉房內的所有設備;系統(tǒng)信號傳輸采用SX1278超遠距離無線串口模塊,可實現(xiàn)10KM無障礙信號傳輸,能滿足當前國內規(guī)模糧庫的通信需要。
二 總體結構
(一)總體設計方案
根據(jù)每個倉房存儲物的不同以及不同的存儲溫度要求,運用“分布控制、集中管理”的原理,系統(tǒng)由客戶端,云控制系統(tǒng),通信系統(tǒng),終端設備四部分組成。下位機完成溫濕度數(shù)據(jù)的采集并通過網(wǎng)絡模塊將數(shù)據(jù)發(fā)送到服務器端;云主機需要進行初始化并處理大量從分布式傳感器采集到的信息并做出有效決策;客戶端負責實時監(jiān)測和控制,以保持上位機與下位機的通信。總體結構方框圖如圖1所示:
基于B/S架構的傳統(tǒng)網(wǎng)絡控制系統(tǒng)可能會出現(xiàn)丟失或者延遲等不可獲知的變化干擾,在實時控制方面有時候難以達到用戶的需求。基于云控制的糧庫測控系統(tǒng)是在原有網(wǎng)絡控制系統(tǒng)的基礎上結合云計算技術的優(yōu)勢以及深度學習等智能算法的智能控制系統(tǒng)。云端后臺是網(wǎng)頁版登陸,你可以在任何地點,使用任何一個智能聯(lián)網(wǎng)設備,都可以連入云服務器。將整個系統(tǒng)的控制功能遷移到云上,在控制器和用戶端之間采用網(wǎng)關服務器,而網(wǎng)關作為云服務器的客戶端,需要創(chuàng)建Socket客戶端設計,,用來連接服務器。連接后創(chuàng)建讀寫線程以實現(xiàn)云服務器的收發(fā)數(shù)據(jù)2。
(二)系統(tǒng)硬件架構
硬件系統(tǒng)主要由主控服務器,通風控制板以及溫濕度傳感器等,通過通訊電纜把他們連在一起形成測控網(wǎng)絡。整體框架圖如圖2所示。
(三)數(shù)據(jù)庫設計
在本系統(tǒng)中采用了SQL Server數(shù)據(jù)庫,我們需要在系統(tǒng)啟動和關閉時,對數(shù)據(jù)進行初始化和保存,以便數(shù)據(jù)庫存儲當前及歷史溫度數(shù)據(jù)。通過Delphi中TADOConnection1控件,然后設置它的連接字符串ConnectionString,在Source Of Connection對話框下選擇Use ConnectionString設置為:
Provider=Microsoft.Jet.OLEDB.4.0;DataSource=ALLDATA.mdb;Persist Security Info=False。然后再窗體上放置ADOQuery控件,并設置它的Connection屬性指向TADOConnection1,這時就可以用ADOQuery1通過SQL語句對數(shù)據(jù)庫進行操作了。
數(shù)據(jù)庫部分主要按照測溫數(shù)據(jù)管理部分,報警管理部分,通風設置部分等設計數(shù)據(jù)表。
此表是用來記錄糧庫的溫濕度及有關操作信息。我們將字段名設置為中文名的首字母,此表顯示各個列名的屬性,糧庫編號數(shù)據(jù)類型設置為varchar型;操作時間以及檢測時間的數(shù)據(jù)類型設置為DataTime型;溫濕度數(shù)據(jù)類型設為Numeric型;分機號和通道號設為int型。根據(jù)糧庫的現(xiàn)有情況其字段長度都要擴大一點,以備以后進行擴展。
此表是用來記錄風機的狀態(tài)和相關信息。設備名稱和設備類型設置為varchar型;設備功率設置為int型;路徑設置為int型;可根據(jù)糧倉的大小進行擴展。
其中字符型使用varchar型,varchar型存儲非統(tǒng)一編碼型字符數(shù)據(jù),數(shù)據(jù)類型為變長,要指定該列的最大長度,存儲的長度不是列長,而是數(shù)據(jù)的長度。糧倉管理軟件完成對數(shù)據(jù)庫的更新,由于糧倉溫濕度變化幅度不是太大,并且有利于數(shù)據(jù)庫的管理維護,所以將溫濕度巡檢時間設置為半小時,并上傳至數(shù)據(jù)庫。
三 軟件設計
(一)云聯(lián)網(wǎng)軟件
云主機可以看做是連入云端的管理軟件平臺。云主機包含了計算,存儲,網(wǎng)絡三大核心因素,云主機作為整個系統(tǒng)的一環(huán),起著重要橋梁的作用,同時在上位機與下位機之間起到協(xié)議轉換的作用。云具有虛擬化,通用性,高可靠性,可拓展性等特點。
系統(tǒng)在云計算技術和HTML平臺的基礎上構建云端模塊,云端模塊集成了網(wǎng)絡接入單元實現(xiàn)無線的云端接入。系統(tǒng)與云技術的結合消除了只能在本地PC端進行控制的弊端,實現(xiàn)了跨地區(qū)遠程操作,減少維護成本;也能支持多個軟件應用同時運行,并在云端建立一個數(shù)據(jù)處理平臺,實現(xiàn)糧情數(shù)據(jù)的共享,方便拓展維護。
(二)主要功能
糧倉云平臺旨在通過物聯(lián)網(wǎng),互聯(lián)網(wǎng),大數(shù)據(jù),自動化控制,信息采集等,打造區(qū)域性,開放性,一體性綜合服務平臺。
系統(tǒng)采用Delphi10.1進行設計成集成控制與管理功能的軟件平臺,可以通過上位機軟件實時查看現(xiàn)場情況。而上位機按其功能劃分為糧庫管理軟件平臺,糧情監(jiān)測系統(tǒng),通風控制系統(tǒng),熏蒸控制系統(tǒng);可實現(xiàn)自動報警、自動降溫除濕、自動熏蒸、出入庫管理系統(tǒng)等控制功能:
2.2.1 糧庫管理軟件平臺:采用SQL SERVER數(shù)據(jù)庫的實時糧情測控軟件,實現(xiàn)的功能有:
①接收并利用云主機實現(xiàn)糧庫數(shù)據(jù)的云端存儲糧情監(jiān)測子系統(tǒng)的數(shù)據(jù);一方面保證了數(shù)據(jù)存儲的可靠性,同時可以隨時為移動終端提供糧情信息3。
②對溫濕度異常情況進行定位并提示報警信息;根據(jù)報警信息并結合設定的參數(shù),自動啟動相應的通風控制子系統(tǒng)設備,進行降溫除濕;
③建立糧情信息專家分析系統(tǒng)。對采集和存儲的糧情信息進行分析,預測出糧情信息的發(fā)展趨勢,及時為糧食的變質提前采取相應的措施。
2.2.2 糧情監(jiān)測系統(tǒng):采用DS18B20溫度傳感器和霍尼韋爾(AM2301)濕度傳感器,實時監(jiān)測糧庫存糧的溫濕度變化4。
2.2.3 通風控制系統(tǒng):糧庫管理軟件平臺在發(fā)現(xiàn)溫濕度異常情況后,根據(jù)設定的溫度控制參數(shù)及相應設備的通信參數(shù),生產(chǎn)通風控制指令后,通過無線方式發(fā)送到發(fā)生異常情況倉房的分機上,分機得到指令后開啟相應的設備進行通風,并將實時動作狀態(tài)反饋到糧庫管理軟件平臺。當經(jīng)過一段時間通風,溫濕度恢復正常后,由糧庫管理軟件平臺發(fā)出相應指令,關閉通風設備。
2.2.4 環(huán)流熏蒸控制系統(tǒng):糧庫管理軟件平臺根據(jù)設定發(fā)送控制指令后,控制板上通過繼電輸出開關量控制風機的交流接觸器,實現(xiàn)環(huán)流熏蒸,并將實時動作狀態(tài)傳送到糧庫管理軟件平臺進行。
2.2.5 出入庫管理系統(tǒng):針對糧食出人庫作業(yè)效率不高,嚴重缺乏監(jiān)管的現(xiàn)狀,綜合使用RFID、傳感器、智能圖像識別通過車輛稱重,自動采集出入庫糧食重量,上傳糧庫管理軟件平臺處理,保證糧庫出人庫數(shù)量信息的準確性。
(三)軟件操作頁面
在糧情測控系統(tǒng)中,為了防止非法用戶進入,通過用戶名和密碼進行驗證(如圖5),以此明確使用者的身份和權限,讓接入互聯(lián)網(wǎng)的設備在經(jīng)過授權后都可以進行訪問操作。軟件運行后,整個頁面將會直觀的顯示出來,檢測完成后可以選擇不同的倉庫,不同的倉儲類型,即彈出顯示窗口。如圖6,圖7所示。圖6可以查看當前倉庫的詳細信息,也可以選擇不同的倉庫進行查看。圖7顯示當前倉的設備不同層和不同列的信息。
在登錄頁面使用的異或函數(shù)對字符進行加密。部分代碼如下圖5所示:
四 通信協(xié)議
所有控制程序都部署在主控服務器上,主控服務器與通風控制板的通訊構成主從式網(wǎng)絡,由于在線進行數(shù)據(jù)傳輸時,可能會受到干擾導致數(shù)據(jù)失真,系統(tǒng)需要自定義通訊協(xié)議,從而保證系統(tǒng)傳輸穩(wěn)定性和有效性。
串口端口號:波特率為:9600;通信方式:一問一答;通信間隔:> 4.5-6秒;主叫碼以輪詢的方式進行呼叫,如測量1號通道的1號分機的溫度,則發(fā)一次碼;測1號通道的2號分機的溫度,再發(fā)一次碼;兩次發(fā)送主叫碼之間要間隔5秒鐘,主要用于分機進行溫度測量,并把數(shù)據(jù)發(fā)回給主機。
在通信協(xié)議設計時必須在有效數(shù)據(jù)前添加協(xié)議頭,并且在有效數(shù)據(jù)的最后設置CRC8校驗碼,通過這種方式來保證傳輸數(shù)據(jù)的有效性。
1:同步頭
當無數(shù)據(jù)傳輸時標記該狀態(tài)為邏輯 1。發(fā)送端發(fā)送信息時,必須要先發(fā)送一個低電平信號,即邏輯 0 信號,也就是起始位。而當起始位傳送到接受端時,接受設備識別邏輯低電平后將開始準備接受數(shù)據(jù)位信號。通信雙方在進行數(shù)據(jù)通信之前必須要設置同步頭,數(shù)據(jù)的發(fā)送都是以同步頭0x2B開始的,以最后的CRC校驗字節(jié)結束。
2:功能碼
功能碼的作用就是判斷所傳數(shù)據(jù)的類型,分機溫度主叫碼和應答碼的功能碼為0x13;分機濕度主叫碼和應答碼的功能碼為0x14;設備通風控制的功能碼設置為0x15。
3:路由點數(shù)和路由指針
路由點數(shù)和路由指針數(shù)據(jù)長度設置為4位。路由點數(shù)表示中間有多少個路由點;路由指針表示當前數(shù)據(jù)是從幾號路徑點發(fā)來。
4:路徑0xxx
其中路徑0代表主機地址(目標地址),其他路徑數(shù)據(jù)長度設置為255,以備以后擴展備用。
5:分機和通道
分機數(shù)據(jù)長度設置為255,通道數(shù)據(jù)長度設置為20;在應答碼中,數(shù)據(jù)塊前兩個兩位十六進制數(shù)為溫度值(溫度值直接轉換成整數(shù)即可),之后每4位為一個點的溫度數(shù)據(jù),前兩位為高八位,后兩位為低八位,相加后乘以0.0625即為溫度值。在設備控制中,每位16進制數(shù)控制8個繼電器(1:高0:低),每兩位控制一個設備,高位為方向(1是向外,0是向內);低位為開關(1是開,0是關)。
6:校驗碼
校驗碼是在有效數(shù)據(jù)發(fā)送之后進行的。為了判斷接收的數(shù)據(jù)是否正確,避免一些干擾以及在接收端的對讀取的數(shù)據(jù)進行判斷是否接受的是真實的數(shù)據(jù),這時我們就要加上校驗數(shù)據(jù)(即CRC8校驗碼)。
以溫度數(shù)據(jù)為例,請求數(shù)據(jù)包和應答數(shù)據(jù)包如下圖:
五 結語
該系統(tǒng)完成了對糧情監(jiān)測的上位機頁面設計,能夠實時的監(jiān)測糧庫的溫濕度情況,并且測量精度高,針對有線方式布線工程量大,并且對糧庫智能化程度不高的弊端在設計方案上有很大的改進。同時在“互聯(lián)網(wǎng)+”的環(huán)境下,云技術可以使糧庫各級人員通過授權對分布在不同位置的糧庫數(shù)據(jù)進行處理,實現(xiàn)了數(shù)據(jù)的共享,云技術的應用更是全面建設數(shù)字化糧庫的必然要求,使得系統(tǒng)能夠大幅提升糧食倉儲管理的信息化水平和管理反應能力,實現(xiàn)糧食存儲的自動化和智能化,逐步達到管理現(xiàn)代化。
參考文獻:
[1] 金曉龍,閆鈿. 糧庫管理系統(tǒng)上位機的設計[J]. 遼寧工業(yè)大學學報(自然科學版),2009,29(3):160-162.
[2] 程亞萍. 糧情測控系統(tǒng)中云平臺服務器的設計與實現(xiàn)[D]. 安徽大學,2016.
[3] 常春波. 基于物聯(lián)網(wǎng)和云平臺技術的超低功耗全無線糧情測控系統(tǒng)[C]// 中國糧油學會儲藏分會成立30周年學術交流會. 2015.
[4] 馮雨寧. 基于無線傳感器網(wǎng)絡的多參數(shù)糧庫糧情監(jiān)測節(jié)點裝置設計[D]. 南京理工大學,2012.
[5] 董月信. 糧倉溫濕度監(jiān)測系統(tǒng)的上位機設計[D]. 河北大學,2014
[6] 鐘志杰. 基于“云外包”模式的糧情測控系統(tǒng)設計與實現(xiàn)[D]. 安徽大學,2014.
[7] Bin Qin,Xuanang Mao,Junda Zhao,et a1.Design of Remote Data Acquisition System Based on 3G[C].Intelligent Control and Automation(WCICA),2012 10m World Congress.2012:898-902.
[8] 高吉娥.基于嵌入式Intemet的環(huán)境無線遠程監(jiān)測系統(tǒng)【D】.寧夏:寧夏大學,2015
[9] 段天浩. 糧情無線監(jiān)測系統(tǒng)的設計與研究[D]. 安徽大學,2016.
[10] 蔣軍勝.基于Intemet的糧情測控系統(tǒng)的設計與實現(xiàn)【D】.西安:西安工業(yè)大學,2013.
作者簡介:
王運生(1993-),安徽淮北人,碩士研究生,主要研究方向:建筑物聯(lián)網(wǎng)。
黃澈(1992-),安徽安慶人,碩士研究生,主要研究方向:建筑信息獲取機器人研究
陳蘊(1958-),安徽阜陽人,教授,主要研究方向:智能樓宇與物聯(lián)網(wǎng)技術,嵌入式系統(tǒng)。