楊清艷 - 張魁榜 - 陳榮娜 - 袁家寶 -
(1. 安徽建筑大學機械與電氣工程學院,安徽 合肥 230601;2. 安徽省六安恒源機械有限公司博士后工作站,安徽 六安 237100;3. 合肥工業大學機械與汽車工程學院,安徽 合肥 230009) (1. College of Mechanical and Electrical Engineering, Anhui Jianzhu University, Hefei, Anhui 230601, China; 2. ThePostdoctoral Workstation of Anhui Province Lu'an Hengyuan Machinery Co., Ltd., Lu’an, Anhui 237100, China; 3. School of Mechanical and Automotive Engineering, Hefei University of Technology, Hefei, Anhui 230009, China)
基于OPC的啤酒巴氏滅菌機PU實時控制系統設計
楊清艷1,2YANGQing-yan1,2張魁榜3ZHANGKui-bang3陳榮娜2CHENRong-na2袁家寶2YUANJia-bao2
(1. 安徽建筑大學機械與電氣工程學院,安徽 合肥 230601;2. 安徽省六安恒源機械有限公司博士后工作站,安徽 六安 237100;3. 合肥工業大學機械與汽車工程學院,安徽 合肥 230009) (1.CollegeofMechanicalandElectricalEngineering,AnhuiJianzhuUniversity,Hefei,Anhui230601,China; 2.ThePostdoctoralWorkstationofAnhuiProvinceLu'anHengyuanMachineryCo.,Ltd.,Lu’an,Anhui237100,China; 3.SchoolofMechanicalandAutomotiveEngineering,HefeiUniversityofTechnology,Hefei,Anhui230009,China)
針對以往啤酒巴氏滅菌機PU控制過程中偶然出現的控制系統與Wincc之間偶爾出現通訊沖突的問題,提出了基于OPC和Wincc的啤酒巴氏滅菌機PU自動控制系統;用VC++ 編寫OPC客戶端,并以Wincc作為OPC服務器,實現Wincc與VC++客戶端的數據交換。為了實現PU的智能控制,首先建立隧道式殺菌機啤酒PU值與噴淋嘴溫度之間的數學模型;并且用高級語言編寫啤酒殺菌過程中的PU控制算法;對經OPC通道傳入PU控制系統的實時數據進行模擬、分析、計算出控制各溫區的噴淋嘴溫度值;最后再將控制數據傳送給底層設備,達到對啤酒殺菌機實時自動控制調節的目的。運行試驗表明,基于OPC和Wincc的啤酒殺菌機PU控制系統能夠有效地對殺菌過程中的噴淋嘴溫度進行控制并提高殺菌準確度,也提高了啤酒殺菌過程中的效益。
隧道殺菌機;VC++;PU;啤酒殺菌;OPC
啤酒生產過程中,巴氏殺菌是不可缺少的一道工序[1-2]。目前多采用隧道式殺菌機對啤酒進行殺菌處理,但殺菌機各溫區噴淋嘴溫度的設定常依靠經驗。如果噴淋嘴的溫度過高,進而使得各溫區溫度過高影響啤酒的口感,使啤酒失去原本的味道,且啤酒顏色比正常色更深,還容易在殺菌過程中出現爆瓶;但是如果殺菌機各溫區溫度過低,會降低殺菌效果,并引起生物混濁。因此殺菌過程中噴淋嘴的溫度控制直接關系到殺菌機中各個啤酒瓶的PU值(巴氏滅菌單位,一個PU值的定義為: 在60 ℃下經歷1 min所引起的滅菌效應為一個巴氏殺菌單位)。而目前殺菌機原本的控制系統未能實現PU的智能調節,需要設計開發第三方的控制系統——PU控制系統,而PU控制系統智能地根據實時的PU值反調節噴淋嘴水溫的關鍵是:PU控制系統與殺菌機之間進行數據的實時交互。
有學者[3-4]采用密切監控噴淋嘴溫度的方法對殺菌機進行結構改進,但難以控制突發情況下的PU值波動。本試驗擬采用C++語言編寫程序對殺菌機啤酒的PU值進行控制,底層設備的控制還是原系統,為解決殺菌過程中PU控制系統與殺菌機控制系統之間數據傳輸出現沖突的問題,提出了用VC++編寫OPC客戶端,以Wincc作為底層設備控制軟件,在其上編寫OPC服務器,通過OPC通道實現PU控制系統與設備控制系統間的數據傳輸。
隧道式殺菌機的啤酒殺菌過程為:啤酒瓶在殺菌機中經歷了11個不同水溫噴淋換熱區(Ⅰ~Ⅺ),其中前7區為噴淋加熱,后4區為噴淋冷卻,其簡化物理模型見圖1。在實際生產過程中,即使是在同一臺殺菌機相同的溫區及噴淋嘴溫度設置值條件下,由于瓶型、環境等的差異都可能造成啤酒最終的PU值不同。因此需要研究殺菌機噴淋嘴溫度設定值與啤酒瓶瓶型、環境、PU值之間的關系,并依據啤酒瓶瓶型、環境、啤酒的PU值反過來設定殺菌機各個溫區噴淋嘴設定溫度。

1. 冷緩沖槽 2. 熱緩沖槽 3. 預緩沖槽 4. 小水箱 5. 冷水泵 6. 熱水泵 7. 換熱器 8. 角座閥
圖1 巴氏殺菌系統結構圖
Figure 1 Pasteurization system structure
衡量隧道式啤酒殺菌機效果的主要參數為殺菌之后的啤酒最高溫度、啤酒PU值以及產量,其中啤酒最高溫度和啤酒PU值是經過殺菌機之后啤酒質量的重要參數。
根據研究者[5-8]有關隧道殺菌機能量模型的研究,Dilay 等[9]將隧道式殺菌系統劃分為N個立體單元。本研究參考文獻[9]將每一個立體單元分為3個系統:由噴淋嘴產生的空氣/水霧系統(系統1)、瓶子系統(系統2)、水系統(系統3),見圖2。
1.1 水霧系統熱力學數學模型
1.1.1 空氣/水霧系統的傳熱計算 根據圖2及熱力學第一定律可以得空氣/水霧系統的熱傳導公式為:

圖2 系統1、2、3示意圖Figure 2 Schematic diagram of systems 1, 2, and 3

(1)
式中:






cwa——水的比熱,J/(kg·K);
cp,f——空氣/水霧在恒定壓力時的比熱,J/(kg·K);
cv,f——空氣/水霧在恒定體積時的比熱,J/(kg·K);
mf——空氣/水霧在體積元的質量,kg;
Tin,wa——進水溫度(Tin,wa=Tset),℃;
Ti——第i個VE的溫度,℃;
Ti+1——第i+1個VE的溫度,℃;
Ti-1——第i-1個VE的溫度,℃。
第i個VE內系統1與外界環境之間的傳熱速率可以計算為:

(2)
式中:
Uw,i——空氣/水霧與環境之間的傳熱系數,W/(m2·℃);
T——外部環境溫度,℃。

(3)
式中:
kw——壁材料的熱傳導系數,W/(m·℃);
δw——壁厚,m;
kins——絕燃材料的熱傳導系數,W/(m·℃);
δ——絕燃材料的壁厚,m;
h——隧道壁外的對流傳熱系數,W/(m2·℃);
hint——空氣/水霧與墻之間的對流傳熱系數,W/(m2·℃)。

(4)

(5)
式中:
ρf——空氣/水霧密度,kg/m3;
As——隧道的垂直面積,由空氣/水霧所占的體積決定,m2。
如果i=1,mi-1=mn;如果i=n,mi+1=m1。
VE之間的ui,通過使用二維域的連續性方程分析估計。

(6)
式中:
v——在垂直方向的空氣/水霧速度,m/s。

(7)

(8)

1.1.2 空氣/水霧系統與瓶子之間的傳熱計算 空氣/水霧系統與瓶子之間的傳熱速率可以計算為:

(9)
式中:
Ab——一個VE里總的外部表面積,m2;
Tb,i——內部瓶子溫度,℃;
αi——空氣/水霧和瓶子之間的對流傳導系數,W/(m2·℃)。
1.2 瓶子系統熱力學模型
1.2.1 啤酒瓶總的傳熱分析 對于瓶子系統,根據熱力學第定律可得其熱傳導公式為:

(10)
式中:
c——整個瓶子的熱傳導系數,J/(kg·K);
mb,i——整個裝啤酒的啤酒瓶質量,kg。
1.2.2 啤酒瓶內部傳熱分析 將一啤酒瓶放入隧道式殺菌機中加熱,啤酒瓶受殺菌機噴淋嘴內噴淋水的加熱作用,熱量從啤酒瓶外表面向中心逐步擴散直至穩定。
圖3顯示了啤酒瓶加熱過程的溫度變化情況。當τ=0時,啤酒瓶處于均勻溫度(t=t0)下,隨著時間()的增加啤酒瓶溫度開始變化,而后中心溫度也逐步升高。當τ→時,啤酒瓶溫度將與環境溫度拉平,非穩態導熱過程結束。根據熱力學定義得出,當物體系統的外熱阻遠大于它的內熱阻時,環境與物體表面間的溫度變化遠大于物體內的溫度變化,可以認為物體內的溫度分布幾乎是均勻一致的。于是可以把物體內熱阻忽略。而對于啤酒瓶,其屬于薄壁件,其內熱阻遠小于外部熱阻,在殺菌機系統內升溫和降溫的過程,根據熱力學定律的計算非穩態導熱的線算圖,可以計算為以下過程。


圖3 啤酒瓶加熱過程示意圖Figure 3 Schematic diagram of heating of beer bottle

圖4 啤酒瓶在殺菌機里的系統示意圖Figure 4 Sketch map of beer bottle in sterilizer

(11)
由于物體的內部熱阻遠小于外部熱阻,將其忽略,可認為溫度與坐標無關,所以式(11)中溫度的二階導數項2t為0。于是將式(11)轉化為:

(12)
式中:

在啤酒瓶表面交換的熱源可以看作是物體的體積熱源,即

(13)
將上式(13)整理代入式(12)中可以得出:

(14)
初始條件為
τ=0,T=Tb,0。
引入過余溫度θ=Tb,i-Ti方程與初始條件變為:

τ=0,θ=θ0。
分離變量積分并代入初始條件得出:

(15)
因此就有:
(16)
式中:
Tb,0——初始溫度,℃。
由式(16)可見物體溫度隨時間的推移逐步趨于環境溫度。
1.3 水系統熱力學數學模型
根據圖2及熱力學第一定律可得水系統熱傳導公式為:
(17)

根據建立的啤酒殺菌過程數學模型,開發基于OPC客戶端的啤酒殺菌機PU自動控制系統,該系統是在VS 2010開發環境中用C++語言編寫。本系統產生啤酒溫度、啤酒PU值以及噴淋嘴設定溫度的方式:通過人機交互界面,輸入啤酒瓶的參數、殺菌機各區參數、殺菌機實時理論PU值、殺菌機運行參數,根據啤酒殺菌工藝模塊算法,經過計算、處理自動生成與啤酒PU值對應的殺菌機各區噴淋嘴溫度設定值,在PU控制系統軟件上計算出整個隧道殺菌機里各個啤酒瓶的理論啤酒溫度、理論啤酒PU值,為了方便顯示將所有的啤酒溫度值和PU值連接為曲線。但需要實時采集現場設備各區的溫度值。該設備依靠S7-300PLC收集數據,通過Wincc的OPC服務器與C++的OPC客戶端進行數據交換。圖5為基于OPC客戶端的啤酒殺菌機PU自動控制總體架構。

圖5 啤酒殺菌機PU自動控制總體架構Figure 5 Automatic control system of PU for beer sterilizer
2.1 基于VC++的OPC客戶端的設計與實現
OPC服務器支持自動化接口和定制接口2種[10]。通過對比兩種接口的優缺點(見表1),優先選擇定制接口。通過該接口能夠發揮OPC服務器的最佳性能[11]。

表1 OPC訪問接口的對比Table 1 Comparison of OPC access interfaces
在VC++平臺上編寫OPC客戶端軟件的一般流程包括服務器的連接、變量組的初始化以及數據項的讀寫操作,見圖6。

圖6 OPC客戶端編程流程Figure 6 OPC client programming flow
具體開發過程中的部分代碼:
(1) 初始化COM庫
HRESULT hr;
// Make sure COM is initialized:
hr = CoInitialize ( NULL );
if (hr !=S_OK)
{ MessageBox(_T("com庫初始化失敗"),_T("提醒"));
opcflag=0;
return}
else
{ MessageBox(_T("com庫已經初始化!),_T("提醒"));
opcflag=1;
}
(2) 連接OPC服務器
hr=CLSIDFromProgID(L"OPCServer.WinCC",&clsid);
if (hr !=S_OK)
{MessageBox(_T("獲取CLSID失敗"),_T("提醒"));
opcflag=0;
CoUninitialize();
return;}
else
{MessageBox(_T("獲取CLSID成功"),_T("提醒"));
opcflag=1;}
hr = CoCreateInstance (clsid, NULL,CLSCTX_SERVER, IID_IOPCServer,(void **)&m_IOPCServer);
if (hr != S_OK)
{ MessageBox(_T("創建OPC服務器失敗"),_T("提醒"));
opcflag=0;
m_IOPCServer=NULL;
CoUninitialize();
return;}
else
{MessageBox(_T("OPC成功"),_T("提醒"));
opcflag=1;
}
(3) 創建OPC組對象
hr=m_IOPCServer->AddGroup(L"grp1",TRUE,500,1,&TimeBias,&PercentDeadband,LOCALE_ID,&m_GrpSrvHandle,&AA,IID_IOPCItemMgt,(LPUNKNOWN*)&m_IOPCItemMgt);
if(hr== OPC_S_UNSUPPORTEDRATE )
{
MessageBox(_T("求的刷新速度與實際的刷新速率不一致"),_T("提醒"));
opcflag=0;
}
else
if (FAILED(hr))
{ MessageBox(_T("不能為服務器添加GREAP 對象"),_T("提醒"));
opcflag=0;
m_IOPCServer->Release();
m_IOPCServer=NULL;
CoUninitialize();
return;
}
(4) 創建OPC數據項對象
OPCTr01[0].szAccessPath =L"";
OPCTr01[0].szItemID =L"R_Move_time" ;//szItemID;
OPCTr01[0].bActive =TRUE;
OPCTr01[0].hClient =1;
OPCTr01[0].dwBlobSize =0;
OPCTr01[0].pBlob =NULL;
OPCTr01[0].vtRequestedDataType =0;
(5) 完成OPC服務器連接、創建OPC組和數據項對象后,OPC客戶端和OPC服務器即可進行數據的讀寫交互操作。
OPCHANDLE *phServer;
HRESULT *pErrors;
VARIANT values[11];
HRESULT r1;
LPWSTR ErrorStr;
CString szOut;
if(m_pErrors[0] != S_OK)
{MessageBox(_T("OPC Item不可用,不能用同步讀功能! "),_T("提醒"));
return;}
phServer= new OPCHANDLE [11];
for(int i=1;i<=11;i++)
{phServer[i-1]=m_ItemResult[i].hServer;}
UpdateData(TRUE);
for (int j=0;j<=9;j++)
{if(writeTflag==0)
{W_T_Zn[j]= SetT[j];
values[j].vt =VT_R8;
values[j].dblVal=W_T_Zn[j];
}
}
2.2 OPC與Wincc的實時通訊
Wincc是西門子公司開發的組態軟件,集成了許多先進技術,如SCADA、組態、OPC、腳本語言等。Wincc的開放性很高,全面支持OPC,用戶可以將Wincc的OPC通道當作OPC Server,通過編寫OPC客戶端,實現Wincc與OPC客戶端的通訊[12-13]。本研究用Wincc作為OPC的服務器,在OPC客戶端中連接服務器,實現數據的實時讀寫操作。Wincc數據組及數據的建立過程見圖7、8。

圖7 Wincc數據組的建立Figure 7 Establishment of data groups on Wincc

圖8 Wincc數據的建立Figure 8 Establishment of data on Wincc
為了驗證系統的運行及OPC數據讀寫的情況,測試了2種不同的情況:① 殺菌機正常運行時,查看OPC客戶端與服務器之間的數據傳輸;② 殺菌機出現異常(停機)時,檢測OPC客戶端對此情況的反應控制,調節噴淋嘴溫度的設定值,以及將此數據通過OPC通道傳給Wincc端,最終達到控制設備的噴淋嘴溫度。圖9為Wincc端控制設備界面圖,此界面為殺菌機控制界面端,PU控制系統將計算出的殺菌機中各個啤酒瓶的實時啤酒溫度和PU值,以及各噴淋嘴的設定溫度通過OPC傳入此系統,另外此系統獲得的各個溫區的噴淋水溫度,通過OPC傳入PU控制系統,通過以上對隧道殺菌機能量模型的建立所推導的數學模型進行實時的啤酒溫度和PU值的計算。

圖9 Wincc端控制設備界面圖Figure 9 Interface diagram of Wincc control device
3.1 測試正常情況下系統軟件運行情況
圖10 為正常情況下數據的傳輸界面圖。圖10(a)中通過OPC通道獲取啤酒PU控制系統中,通過PU數學模型實時計算出的殺菌機中每個啤酒瓶的實時溫度和PU值,并顯示在Wincc設備控制界面上。對比圖10(a)與(b)可知,兩者的數據一致。驗證了OPC通道數據傳輸及PU控制數學模型的正確性。

圖10 正常情況下數據的傳輸Figure 10 Data transmission under normal conditions
3.2 停機狀態下系統軟件實際運行情況
圖11 為停機情況下數據的傳輸界面圖。設備停機時為了避免殺菌機中的啤酒累加PU值造成PU值超過預期值,啤酒PU控制系統會對噴淋嘴溫度的設定值進行調整。由圖11可知,啤酒的實時溫度曲線和PU值曲線一致,說明OPC通道數據傳輸正確。
針對以往依靠經驗來設定殺菌機各個溫區噴淋嘴溫度值的不足,本研究根據熱力學定理構建了殺菌機殺菌過程的數學模型,實現了根據理論啤酒PU值逆向設定殺菌機各溫區噴淋嘴溫度值的自動設定;并結合VC++將所構建啤酒殺菌過程的數學模型,編制為啤酒PU控制智能化系統;最后針對以往的設備控制系統Wincc與PU控制系統之間數據傳輸的沖突問題,用VC++語言開發了OPC客戶端,將Wincc作為OPC服務器,實現了OPC客戶端與服務器的實時通訊。實踐表明,OPC技術能很好地實現本PU控制系統與殺菌機系統的數據通信,系統能夠安全穩定地運行,開發相對簡單,且成本較低,所設計的基于VC++的啤酒殺菌機PU控制系統可以實現對殺菌過程的自動化控制,而且殺菌后啤酒滿足質量要求,降低水資源的浪費,提高了經濟效益。

圖11 停機狀態下的數據傳輸Figure 11 Data transmission under unnormal conditions
[1] LAU M H, TANG J. Pasteurization of pickled asparagus using 915 MHz microwave[J]. Journal of Food Engineering, 2002, 51(4): 283-290.
[2] IBARROLA J J, GUILLEN J G, SANDOVAL J M, et al. Modelling of a High temperature short time pasteurization process[J]. Food Control, 1998, 9(5): 267-277.
[3] 趙方, 鄭曉茜, 祁澤剛. 基于GSM的啤酒巴氏殺菌機溫度遠程監控系統設計[J]. 食品與機械, 2015, 31(5): 121-124.
[4] 陳東, 李國盛, 謝繼紅, 等. 熱泵型間歇式巴氏殺菌機的設計與性能分析[J]. 食品與機械, 2016, 32(2): 60-62.
[5] ROSEN M A, DINCER I. Exergy-cost-energy-mass analysis of thermal systems and processes[J]. Energy Conversion & Management, 2003, 44(10): 1 633-1 651.
[6] SARIMVEIS H K, ANGELOU A S, RETSINA T R, et al. Optimal energy management in pulp and paper mills[J]. Energy Conversion & Management, 2003, 44(10): 1 707-1 718.
[7] TATTIYAKUL J, RAO M A, DATTA A K. Simulation of heat transfer to a canned corn starch dispersion subjected to axial rotation[J]. Chemical Engineering & Processing Process Intensification, 2001, 40(4): 391-399.
[8] VARGAS J V C, STANESCU G, FLOREA R, et al. A numerical model to predict the thermal and psychrometric response of electronic packages[J]. Journal of Electronic Packaging, 2001, 123(3): 200-210.
[9] DILAY E, VARGAS J V C, AMICO S C, et al. Modeling, simulation and optimization of a beer pasteurization tunnel[J]. Journal of Food Engineering, 2006, 77(3): 500-513.
[10] 朱彬, 江愛朋, 姜周曙, 等. 基于OPC的太陽能熱水監測系統數據中心的設計[J]. 現代電子技術, 2014(23): 159-162.
[11] 何西坤, 王運福, 張東. 基于VC++的OPC客戶端的研究與實現[J]. 計算機與網絡, 2013, 39(16): 62-65.
[12] 吳曉蕾, 李逸, 胡國軍, 等. 通過OPC實現VB訪問WINCC數據[J]. 電氣傳動, 2009, 39(12): 63-66.
[13] GAO De-xin, ZHANG Wen-wu, YANG Qing. Dynamic data-exchange between WinCC and supervisory systems by the OPC interfaces[J]. Periodical of Ocean University of China, 2006, 36(4): 677-580.
DesignofPUrealtimecontrolsystemforbeerpasteurizationmachinebasedonOPC
The occasional communication conflict between PU control system and Wincc in the process of PU control for the beer pasteurization machine were investigated in this study. The sterilization machine automatic PU control system were put forward based on OPC and Wincc. Use the C++ to write OPC client and the Wincc as OPC server to realize the data exchange between Wincc and C++ client. In order to realize the intelligent control of PU, the mathematical model between the PU value of the tunnel sterilizer and the temperature of the nozzle was established, and then the PU control algorithm in the process of beer sterilization was written in high-level language. Moreover, the real-time data transmitted to the PU control software by OPC channel to simulate was used to analyze and calculate the temperature of the spray nozzle to control the temperature of each zone for sterilizer. Finally, the control data was transmitted to the bottom equipment, realizing the real-time automatic control and adjustment of the beer sterilizer. The operation test showed that PU OPC and Wincc beer sterilization machine control system could effectively control and improve the accuracy of sterilization, and increase the beer sterilization process benefit.
Sterilization machine; VC++; PU; Beer sterilization; OPC
2016年度第一批校引進人才及博士啟動基金項目(編號:2016-108)
楊清艷,女,安徽建筑大學講師,博士。
張魁榜(1987—),男,合肥工業大學講師,博士。
E-mail:zhangkuibang@qq.com
2017—07—05
10.13652/j.issn.1003-5788.2017.09.024