微宏新材料(湖州)有限公司 徐 晟
精餾設備在化工生產中用途廣泛,對于大型的生產設備,多用PLC采集數據和控制參數,并用組態軟件在上位機上進行數據的采集匯總處理和控制。一般的數據采集,都是在固定的周期內,對參數進行定期的歸檔。但精餾設備在多數的時候處于停止狀態,采集的數據并不是生產參數,占用資源,并且容易誤導統計。根據實際情況,通過Siemens公司的WINCC V6.0組態軟件,實時監控,并用WINCC自帶的VBS腳本編輯器,編寫程序,使數據采集變成條件觸發啟停。上位機為普通dell電腦和19’顯示器,下位機為一臺Siemens的PLC-300型CPU,上位機與下位機通過MPI通信。
用WinCC做上位機監控軟件,要求在精餾塔開啟時,進行變量記錄和歸檔,精餾結束,自動關閉變量記錄。
根據實際情況,精餾塔加熱采用再沸器形式,媒介為熱油,加熱產品至汽化。因要去除產品中的雜質,需加熱至100°C以上,所以,可將再沸器溫度100°C作為數據采集的閥值。
首先創建需要歸檔的變量,在“變量管理”下的“SIMATIC S7 PROTOCOL SUITE”中,選擇“MPI”通信方式,輸入連接的名稱,控制器的站地址、機架號、插槽號等。在建立的連接中添加需要監控的外部變量和變量組。
在“變量記錄”編輯器中,創建歸檔“changya”,在其下添加需要記錄的變量。采集類型設定為“周期-連續”,歸檔/顯示周期5分鐘。
在“變量管理”編輯器中,新建兩個二進制內部變量,“changya_start”“changya_stop”,作為事件的起始變量和終止變量。
在“變量記錄”編輯器中,右鍵點擊各個變量,選擇“屬性”,在“事件”選項卡下選擇事件起始變量為“changya_start”,事件終止變量為“changya_stop”。
在WINCC項目管理器瀏覽樹中選擇“全局腳本→VBS編輯器”,右鍵打開,選擇“動作”選項卡,右鍵單擊“新建”選擇“動作”,自動打開編輯區。在編輯區中輸入如下程序:
Option Explicit
Function action
Dim changya_start
Set changya_start=HMIRuntime.Tag(“changya_start”)
Dim changya_stop
Set changya_stop=HMIRuntime.Tag(“changya_stop”)
Dim T101reboiler_temp
Set T101reboiler_temp=HMIRuntime.Tag(“T101reboiler_temp”)
T101reboiler_temp.Read
If T101reboiler_temp.Value > 100.0 Then
changya_start.Read
changya_start.Write 1
changya_stop.Read
changya_stop.Write 0
Else
changya_stop.Read
changya_stop.Write 1
changya_write.Read
changya_write.Write 0
End If
End Function
右鍵單擊新建的動作,選擇“信息/觸發器”,設定動作的觸發方式,這里選擇定時周期性觸發,周期為10秒。每隔10秒觸發一次VBS腳本動作,對再沸器溫度進行判定,大于100度,繼續記錄歸檔,小于100度,則停止記錄。
在圖形編輯器中,加入ActiveX控件“Wincc Online Table Control”,以表格的形式顯示已歸檔的過程變量的歷史值和當前值。
記錄結果顯示,當再沸器溫度超過100度時,每隔5分鐘對監控數據執行歸檔記錄,直至再沸器溫度低于100度,變量歸檔停止。
通過使用VBS全局腳本,對變量記錄的條件可以進行靈活的調整,使監控變得更加合理。其實,在wincc原有控件的基礎上,靈活運用VBS腳本和C腳本,可以實現很多復雜的功能。
[1]劉華波.組態軟件WinCC及其應用[M].機械工業出版社,2009.
[2]蘇昆哲.深入淺出西門子WinCC V6[M].北京航空航天大學出版社,2004.