馬志艷,楊磊,石敏,張徐康
1. 湖北工業(yè)大學(xué)農(nóng)業(yè)機(jī)械工程研究設(shè)計(jì)院(武漢 430068);2. 湖北省農(nóng)業(yè)機(jī)械工程研究設(shè)計(jì)院(武漢 430068)
冷庫作為食品冷鏈物流的節(jié)點(diǎn)與重要組成部分[1],以人工制冷的方式延長食品的保質(zhì)期,被廣泛應(yīng)用于水產(chǎn)、果蔬、肉類等食品的貯藏。隨著冷鏈物流的快速發(fā)展,冷庫需求量逐步增長,我國冷庫自動(dòng)監(jiān)控技術(shù)發(fā)展較晚,造成了大量的變質(zhì)食品、運(yùn)行成本、能源消耗[2-3]。自動(dòng)監(jiān)控下的冷庫能使溫度、壓力等工況數(shù)據(jù)處于安全范圍內(nèi),控制精度更高、食品貯藏質(zhì)量更高、運(yùn)行成本更低、能源消耗更少[4]。傳統(tǒng)的冷庫監(jiān)控方式自動(dòng)化與信息化程度低,人工成本大,而且不利于管理。虛擬儀器技術(shù)因其充分利用計(jì)算機(jī)的處理能力,具有人機(jī)交互界面友好、功能庫豐富等特點(diǎn)[5],為冷庫監(jiān)控技術(shù)提供了很大的便利。
該文在LabVIEW軟件平臺(tái)上開發(fā)了一套小型冷庫監(jiān)控系統(tǒng),實(shí)現(xiàn)了溫度、壓力、流量、耗電量等冷庫運(yùn)行工況數(shù)據(jù)的自動(dòng)顯示、報(bào)警、存儲(chǔ)以及遠(yuǎn)程監(jiān)測等功能的設(shè)計(jì),以電子膨脹閥為例,進(jìn)行了控制方法的改進(jìn)。
試驗(yàn)冷庫的體積為5 m×2.8 m×2.5 m,庫內(nèi)設(shè)計(jì)目標(biāo)溫度為-18 ℃,5個(gè)溫度測點(diǎn)分別為庫內(nèi)溫度、庫外溫度、蒸發(fā)器出口溫度、壓縮機(jī)吸氣溫度、壓縮機(jī)排氣溫度,3個(gè)壓力測點(diǎn)分別為蒸發(fā)器出口壓力、壓縮機(jī)吸氣壓力、排氣壓力,質(zhì)量流量測點(diǎn)為電子膨脹閥出口流量,耗電量測點(diǎn)分別為壓縮機(jī)耗電量、融霜裝置耗電量、冷庫總耗電量,控制的工況數(shù)據(jù)為庫內(nèi)溫度、電子膨脹閥開度。監(jiān)控主機(jī)為研華PPC 3210S工控機(jī),從機(jī)模塊有DAM-PT16溫度采集模塊、DAM-8AI模擬量采集模塊、功率采集模塊、SANHUA 601-R4電子膨脹閥控制器,從機(jī)模塊掛載在RS485集線器的串行總線上,監(jiān)控系統(tǒng)平臺(tái)總成如圖1所示。
監(jiān)控系統(tǒng)基于LabVIEW平臺(tái)開發(fā),監(jiān)控主機(jī)與各從機(jī)模塊按照Modbus協(xié)議[6]進(jìn)行通信,系統(tǒng)不僅能接收用戶指令,如強(qiáng)制寫入電子膨脹閥開度、歷史數(shù)據(jù)查詢等,還能對壓力、溫度、壓力、流量耗電量等工況數(shù)據(jù)進(jìn)行本地采集、顯示、動(dòng)態(tài)曲線分析、存儲(chǔ)、報(bào)警以及自動(dòng)控制電子膨脹閥等。除此之外,工況數(shù)據(jù)還由本地監(jiān)控系統(tǒng)傳輸至OneNET服務(wù)器[7],方便用戶通過電腦、手機(jī)等終端進(jìn)行遠(yuǎn)程監(jiān)測。
為滿足冷庫監(jiān)控系統(tǒng)的功能需求,將監(jiān)控系統(tǒng)軟件劃分為4個(gè)模塊,即工況數(shù)據(jù)采集模塊、本地?cái)?shù)據(jù)庫模塊、遠(yuǎn)程數(shù)據(jù)發(fā)送模塊、電子膨脹閥控制模塊。其中,電子膨脹閥控制模塊內(nèi)嵌于工況數(shù)據(jù)采集模塊。系統(tǒng)的設(shè)計(jì)框架主要采用生產(chǎn)者/消費(fèi)者架構(gòu)[8],生產(chǎn)者為工況數(shù)據(jù)采集模塊、電子膨脹閥控制模塊,消費(fèi)者為本地?cái)?shù)據(jù)庫模塊、遠(yuǎn)程數(shù)據(jù)發(fā)送模塊,模塊之間通過隊(duì)列屬性完成數(shù)據(jù)流的有序傳輸,系統(tǒng)軟件設(shè)計(jì)流程圖如圖2所示。打包并存儲(chǔ)于數(shù)據(jù)庫中,供用戶查詢歷史數(shù)據(jù)。遠(yuǎn)程數(shù)據(jù)發(fā)送模塊對出列的數(shù)組按照MQTT協(xié)議[9]封裝打包,寫入4G DTU模塊串口,發(fā)送至OneNET云平臺(tái),完成冷庫工況數(shù)據(jù)的遠(yuǎn)程監(jiān)測。
工況數(shù)據(jù)采集模塊采用傳輸效率更高的Modbus/RTU傳輸模式,開發(fā)工具為Modbus工具包,相關(guān)函數(shù)能返回十進(jìn)制的寄存器內(nèi)容,無需手動(dòng)進(jìn)行報(bào)文的差錯(cuò)效驗(yàn)。Modbus通信協(xié)議規(guī)定了請求報(bào)文與響應(yīng)報(bào)文的結(jié)構(gòu),如表1和表2所示。監(jiān)控主機(jī)需先向各從機(jī)模塊輪流發(fā)送請求報(bào)文,為滿足一主多從的通信要求以及盡可能減少后面板使用空間,主從通信的實(shí)現(xiàn)放置在層疊式順序結(jié)構(gòu)中。
表2 從機(jī)的響應(yīng)報(bào)文結(jié)構(gòu)
作為生產(chǎn)者的工況數(shù)據(jù)采集模塊、電子膨脹閥控制模塊,實(shí)現(xiàn)主從機(jī)之間輪流通信、解析后,完成實(shí)時(shí)顯示、動(dòng)態(tài)曲線分析、報(bào)警、控制電子膨脹閥等功能,并將數(shù)據(jù)流傳遞給消費(fèi)者。本地?cái)?shù)據(jù)庫模塊對生產(chǎn)者入列的數(shù)組進(jìn)行出列操作后,將工況數(shù)據(jù)按格式
主機(jī)收到從機(jī)模塊的響應(yīng)報(bào)文后,通過數(shù)組索引、符號類型、量程、精度等操作對報(bào)文進(jìn)行解析,并將監(jiān)測點(diǎn)的工況數(shù)據(jù)顯示在前面板,還可以通過圖表控件顯示工況數(shù)據(jù)的動(dòng)態(tài)曲線,以便操作人員進(jìn)行實(shí)時(shí)分析,冷庫本地監(jiān)控系統(tǒng)主界面如圖3所示。利用數(shù)組插入、入列等相關(guān)操作對工況數(shù)據(jù)進(jìn)行數(shù)組入列,將工況數(shù)據(jù)流傳遞給本地?cái)?shù)據(jù)庫模塊與遠(yuǎn)程數(shù)據(jù)發(fā)送模塊。
圖3 本地監(jiān)控系統(tǒng)主界面
考慮到冷庫運(yùn)行工況數(shù)據(jù)異常帶來的不良影響,通過設(shè)置布爾燈的屬性節(jié)點(diǎn)控制布爾燈閃爍,提醒工作人員做出相應(yīng)的調(diào)整措施。布爾燈顯示為綠色,表示工況數(shù)據(jù)正常;布爾燈出現(xiàn)“藍(lán)綠交替閃爍”,表示工況數(shù)據(jù)過低;布爾燈出現(xiàn)“黃綠交替閃爍”,表示工況數(shù)據(jù)過高。
本地?cái)?shù)據(jù)庫模塊使用LabSQL技術(shù),通過Microsoft ADO和SQL語言實(shí)現(xiàn)Access數(shù)據(jù)庫[10]的訪問。工況數(shù)據(jù)寫入數(shù)據(jù)庫前,在平鋪式順序結(jié)構(gòu)依次建立Access數(shù)據(jù)庫路徑、連接數(shù)據(jù)庫、建立表頭,對出列的數(shù)據(jù)經(jīng)過數(shù)組索引、數(shù)據(jù)類型轉(zhuǎn)換、打包后,將數(shù)據(jù)包寫入數(shù)據(jù)庫,某段時(shí)間內(nèi)本地?cái)?shù)據(jù)庫存儲(chǔ)情況如圖4所示。除此之外,為方便用戶查詢歷史數(shù)據(jù),本地?cái)?shù)據(jù)庫模塊還設(shè)計(jì)了歷史數(shù)據(jù)查詢功能,程序框圖如圖5所示。
遠(yuǎn)程數(shù)據(jù)傳輸采用流量消耗少、網(wǎng)絡(luò)質(zhì)量要求低的MQTT通信協(xié)議,遠(yuǎn)程接收端為OneNET開放服務(wù)器。向服務(wù)器發(fā)送數(shù)據(jù)前,本地監(jiān)控系統(tǒng)需向OneNET服務(wù)器發(fā)送連接請求登錄虛擬設(shè)備,連接請求報(bào)文結(jié)構(gòu)包含3部分[11]:固定報(bào)文頭、可變報(bào)文頭、有效負(fù)載,報(bào)文結(jié)構(gòu)如表3所示。其中固定報(bào)文頭包括報(bào)文頭、剩余報(bào)文字節(jié)數(shù),有效負(fù)載包括設(shè)備、產(chǎn)品、鑒權(quán)信息描述,其它為可變報(bào)文頭所含內(nèi)容。
配置好OneNET服務(wù)器的IP與端口號后,在平鋪式順序結(jié)構(gòu)的第一幀,將打包好的連接請求報(bào)文寫入4G DTU模塊的串口,OneNET服務(wù)器接收到連接請求后,將效驗(yàn)設(shè)備、產(chǎn)品、鑒權(quán)信息等相關(guān)信息登錄虛擬設(shè)備。本地監(jiān)控系統(tǒng)接收到OneNET服務(wù)器發(fā)送的登錄成功響應(yīng)報(bào)文后,還需向服務(wù)器發(fā)送數(shù)據(jù)傳輸報(bào)文,數(shù)據(jù)傳輸報(bào)文包含3部分:固定報(bào)文頭、可變報(bào)文頭、有效負(fù)載,如表4所示,其中固定報(bào)文頭包括報(bào)文頭、剩余字節(jié)數(shù),可變報(bào)文頭包括主題信息、報(bào)文標(biāo)識(shí)符、數(shù)據(jù)點(diǎn)類型,其它為有效負(fù)載所含內(nèi)容。
圖4 本地?cái)?shù)據(jù)庫
圖5 歷史數(shù)據(jù)查詢功能程序框圖
表3 連接請求報(bào)文結(jié)構(gòu)
表4 數(shù)據(jù)傳輸報(bào)文結(jié)構(gòu)
在層疊式順序結(jié)構(gòu)的第二幀中,對出列的數(shù)據(jù)進(jìn)行16進(jìn)制轉(zhuǎn)換、封包等處理,將數(shù)據(jù)傳輸報(bào)文寫入4G DTU模塊的串口,OneNET服務(wù)器對報(bào)文進(jìn)行解析后,實(shí)時(shí)刷新數(shù)據(jù)點(diǎn)的狀態(tài)。OneNET開放平臺(tái)提供了可視化工具組件庫,通過設(shè)置數(shù)據(jù)流、刷新頻率、編輯樣式等屬性,用戶在電腦或者移動(dòng)終端對冷庫工況參數(shù)進(jìn)行直觀的監(jiān)測,手機(jī)端OneNET遠(yuǎn)程監(jiān)測界面如圖6所示。
圖6 手機(jī)端OneNET遠(yuǎn)程監(jiān)視界面
冷庫蒸發(fā)器出口處過熱度控制的好壞不僅影響蒸發(fā)器的換熱效率,而且對冷庫制冷系統(tǒng)運(yùn)行的安全性具有重要意義[12]。過熱度是一個(gè)時(shí)變、非線性的被控對象,相較于常規(guī)PID控制,模糊控制在解決此類問題上有一定的優(yōu)勢[13]。電子膨脹閥控制模塊采用Fuzzy control工具包實(shí)現(xiàn),電子膨脹閥控制器提供了寫入開度的功能,可通過Modbus通信協(xié)議調(diào)節(jié)電子膨脹閥開度。蒸發(fā)器出口處過熱度設(shè)定值為6 ℃,模糊控制器的輸入量為過熱度偏差e、偏差變化率ec,電子膨脹閥開度u作為模糊控制器的輸出量,電子膨脹閥開度的變化引起過熱度的變化,從而構(gòu)成過熱度閉環(huán)控制回路。
經(jīng)過反復(fù)試驗(yàn),e和ec的實(shí)際論域分別為[-6,6]和[-1,1],模糊化后的語言變量分別為E和Ec,E和Ec的模糊論域分別為[-3,-2,-1,0,1,2,3]和[-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6],模糊語言集合均為{NB,NM,NS,ZO,PS,PM,PB},隸屬度函數(shù)均選用兩邊S型、中間三角形的隸屬度函數(shù);電子膨脹閥開度u實(shí)際論域?yàn)閇0,100],模糊化后的模糊語言變量為U,模糊論域?yàn)閇0,1,2,3,4,5,6],模糊語言集合為{NB,NM,NS,ZO,PS,PM,PB},采用重心法進(jìn)行去模糊化處理,隸屬度函數(shù)選用兩邊S型、中間三角形的隸屬度函數(shù)。根據(jù)Mandani推理法以及控制規(guī)則的設(shè)計(jì)原則,結(jié)合實(shí)際控制經(jīng)驗(yàn),設(shè)計(jì)了49條控制規(guī)則,如表5所示。為方便操作人員設(shè)計(jì)自己的模糊控制系統(tǒng)文件與現(xiàn)場調(diào)試,將量化因子、比例因子、開度以及字符串格式的模糊控制系統(tǒng)文件名稱作為輸入控件。
表5 模糊控制表
為驗(yàn)證監(jiān)控系統(tǒng)的可靠性與穩(wěn)定性,通過開啟冷庫門的方法進(jìn)行熱負(fù)荷試驗(yàn)。試驗(yàn)前,將庫內(nèi)溫度降至10 ℃,此時(shí)打開冷庫門,保持開門狀態(tài)直至庫內(nèi)溫度降至設(shè)定的-18 ℃,每1 min記錄一次數(shù)據(jù)。圖7為熱負(fù)荷試驗(yàn)下的溫度曲線圖??梢钥闯?,熱負(fù)荷試驗(yàn)下,所有溫度均在正常范圍內(nèi),庫外溫度約為20 ℃,庫內(nèi)溫度從10 ℃降至-18 ℃共約56 min,冷庫門開啟時(shí),庫溫上升約1 ℃,3 min之后一直穩(wěn)步下降,排氣溫度在整個(gè)試驗(yàn)過程中有多次輕微波動(dòng),但整體表現(xiàn)為穩(wěn)步下降,其他溫度一直在穩(wěn)步下降。監(jiān)控系統(tǒng)在試驗(yàn)期間,操作簡單、性能穩(wěn)定,采集后的數(shù)據(jù)便于后續(xù)分析與管理,達(dá)到了設(shè)計(jì)目標(biāo)。
圖7 熱負(fù)荷溫度曲線
介紹了監(jiān)控系統(tǒng)平臺(tái)以及軟件系統(tǒng)總框架,編寫了基于LabVIEW的監(jiān)控系統(tǒng)軟件,設(shè)計(jì)了OneNET服務(wù)器端的遠(yuǎn)程監(jiān)測界面,利用模糊控制對電子膨脹閥進(jìn)行了控制方法的改進(jìn)。在試驗(yàn)期間,系統(tǒng)性能穩(wěn)定,操作方便,人機(jī)界面友好,監(jiān)測及時(shí),能滿足監(jiān)控要求。