梁帥,楊華,張樹偉,趙尊梅,丁建華,徐敬志,陸永高
(1.青島?,樚胤N裝備科技有限公司,山東 青島 266400;2.青島雙星輪胎工業(yè)有限公司,山東 青島 266400)
輪胎硫化生產(chǎn)中有三個(gè)關(guān)鍵要素,即溫度、壓力、時(shí)間。這三個(gè)要素決定了輪胎硫化的質(zhì)量。為了掌控輪胎硫化質(zhì)量及在輪胎售出后做質(zhì)量追溯,一般輪胎生產(chǎn)廠家都會(huì)記錄并保存這三要素的相關(guān)數(shù)據(jù)。關(guān)于數(shù)據(jù)的記錄方法之前是使用機(jī)械式圓盤記錄儀、打點(diǎn)記錄儀,后來(lái)發(fā)展到智能無(wú)紙記錄儀及上位機(jī)監(jiān)控系統(tǒng)。圓盤曲線是指上位機(jī)監(jiān)控系統(tǒng)中的一個(gè)功能,圓盤曲線可以在一屏同時(shí)顯示24 h的溫度、壓力曲線,可以方便的觀察一天中設(shè)備停機(jī)情況、預(yù)熱時(shí)間、班次產(chǎn)量等信息,在輪胎生產(chǎn)廠家使用過(guò)程中已成為必備功能之一。上位機(jī)監(jiān)控系統(tǒng)的畫面軟件可使用高級(jí)語(yǔ)言編寫,也可使用成熟的組態(tài)軟件實(shí)現(xiàn)。本文將介紹使用WINCC軟件實(shí)現(xiàn)圓盤曲線功能的一種方法,文中的硫化機(jī)控制系統(tǒng)采用西門子S7 1500系列PLC,上位機(jī)采用西門子工控機(jī),監(jiān)控軟件采用西門子WINCC組態(tài)軟件。上位機(jī)與工控機(jī)通過(guò)以太網(wǎng)連接。
SIMATIC WinCC(Windows Control Center)--視窗控制中心,它是西門子最經(jīng)典的過(guò)程監(jiān)視系統(tǒng),已成為市場(chǎng)的領(lǐng)導(dǎo)者,乃至業(yè)界遵循的標(biāo)準(zhǔn)。WinCC能為工業(yè)領(lǐng)域提供完備的監(jiān)控與數(shù)據(jù)采集(SCADA)功能,涵蓋單用戶系統(tǒng)直到支持冗余服務(wù)器和遠(yuǎn)程 Web 服務(wù)器解決方案的多用戶系統(tǒng)。SIMATIC WinCC 是公司垂直集成交換信息的基礎(chǔ),具有良好的開(kāi)放性和靈活性,它采用了工廠智能,助力用戶實(shí)現(xiàn)更大程度的生產(chǎn)過(guò)程透明化。雖然WinCC的功能很強(qiáng)大,但它未對(duì)硫化機(jī)行業(yè)做專門的定制開(kāi)發(fā),未提供圓盤曲線的控件,用戶需自己通過(guò)WinCC腳本系統(tǒng)開(kāi)發(fā)相應(yīng)功能。
WinCC的腳本系統(tǒng)支持C腳本和VBS腳本。腳本本質(zhì)上是一段用C或VB編寫的代碼,用以實(shí)現(xiàn)一些特定的功能。這里,我們簡(jiǎn)單介紹一下C腳本的概念。如圖1所示,為WinCC腳本的分類。
圖1 腳本分類
函數(shù)和動(dòng)作本質(zhì)上都是一段代碼。如圖1所示,函數(shù)分為嵌入函數(shù)和用戶函數(shù)。嵌入函數(shù)用戶只能使用,不能修改;而用戶函數(shù)則可由用戶根據(jù)實(shí)際需要?jiǎng)?chuàng)建和修改,用戶函數(shù)又分為項(xiàng)目函數(shù)、標(biāo)準(zhǔn)函數(shù)和DLL函數(shù)。
動(dòng)作由用戶自己創(chuàng)建,必要時(shí)可以進(jìn)行口令保護(hù),防止未經(jīng)授權(quán)的人對(duì)其進(jìn)行修改和查看。動(dòng)作要想執(zhí)行,必須至少為其分配一個(gè)觸發(fā)器。
動(dòng)作分為全局動(dòng)作和局部(本地)動(dòng)作。在客戶機(jī)-服務(wù)器項(xiàng)目中,全局動(dòng)作在項(xiàng)目中所有計(jì)算機(jī)中都可執(zhí)行;而局部動(dòng)作則只能在對(duì)其進(jìn)行分配的計(jì)算機(jī)上執(zhí)行。當(dāng)創(chuàng)建的是單用戶項(xiàng)目時(shí),全局動(dòng)作和局部動(dòng)作之間就沒(méi)有太大的差別了。
圖2為腳本的執(zhí)行過(guò)程。WinCC腳本的核心是動(dòng)作。動(dòng)作通過(guò)觸發(fā)器觸發(fā)來(lái)實(shí)現(xiàn)相應(yīng)事件或改變畫面中對(duì)象的屬性等。函數(shù)則是一段特定功能的代碼,它本身并不能參與到WinCC的動(dòng)態(tài)響應(yīng)中去,動(dòng)作在需要的時(shí)候,調(diào)用某個(gè)函數(shù)來(lái)實(shí)現(xiàn)既定功能。
圖2 腳本的執(zhí)行過(guò)程
一個(gè)動(dòng)作觸發(fā)后,會(huì)執(zhí)行其對(duì)應(yīng)的代碼,在該代碼中,可能會(huì)調(diào)用到其他C代碼編寫的函數(shù),相當(dāng)于子程序。
觸發(fā)器的類型如圖3所示。一個(gè)動(dòng)作可以由定時(shí)器觸發(fā),也可以用變量觸發(fā)。定時(shí)器觸發(fā)又可分為循環(huán)觸發(fā)和非循環(huán)觸發(fā);而變量觸發(fā)則可以選擇在某一變量值發(fā)生變化的時(shí)候觸發(fā)動(dòng)作,也可以選擇采用"循環(huán)監(jiān)視變量值"的方式。
圖3 觸發(fā)器的類型
一個(gè)動(dòng)作可以同時(shí)分配若干個(gè)觸發(fā)器,任何一個(gè)觸發(fā)器有效了,動(dòng)作就將被執(zhí)行,而且,動(dòng)作要想被執(zhí)行,必須至少分配一個(gè)觸發(fā)器。
利用WinCC自帶的WINCC FunctionTrendContr ol控件,可實(shí)現(xiàn)直角曲線功能,但不能實(shí)現(xiàn)圓盤曲線的顯示。為實(shí)現(xiàn)圓盤曲線功能,我們需要做以下工作:
(1)將記錄的數(shù)據(jù)轉(zhuǎn)換成極坐標(biāo)形式
將一天24個(gè)小時(shí)平均分布到圓盤圖中,然后根據(jù)系統(tǒng)時(shí)間將當(dāng)前時(shí)刻轉(zhuǎn)換為極坐標(biāo)形式。再將PLC讀取的實(shí)時(shí)數(shù)據(jù)轉(zhuǎn)換成對(duì)應(yīng)的當(dāng)前時(shí)刻極坐標(biāo)形式。C腳本如下所示:
(2)將轉(zhuǎn)換完成的變量記錄到數(shù)據(jù)庫(kù)中
用戶歸檔編輯器是WinCC 的一個(gè)附加選件,通過(guò)它可以周期性的把PLC讀取的數(shù)據(jù)保存到數(shù)據(jù)庫(kù)中。 在圖形編輯器中,可以通過(guò)組態(tài) WinCC 用戶歸檔表格元素來(lái)以表格顯示運(yùn)行系統(tǒng)中用戶歸檔的在線數(shù)據(jù)??赏ㄟ^(guò)用戶歸檔的控制變量實(shí)現(xiàn)數(shù)據(jù)的讀取和寫入,而不需要用戶自己寫腳本,使用起來(lái)非常方便。在用戶歸檔編輯器中,可以最多組態(tài) 500 個(gè)歸檔和500 個(gè)視圖。 每個(gè)歸檔最多可創(chuàng)建 500 個(gè)域。歸檔中的數(shù)據(jù)記錄的最大數(shù)目,取決于已組態(tài)列的數(shù)目和歸檔中包含的數(shù)據(jù)記錄。列和數(shù)據(jù)記錄的乘積不能大于320 000。對(duì)于數(shù)據(jù)存儲(chǔ)量不是很大的需求,WinCC用戶歸檔基本上可以滿足。通過(guò)WINCC的歸檔功能,我們可以將轉(zhuǎn)換完成的極坐標(biāo)數(shù)據(jù)周期性的保存進(jìn)數(shù)據(jù)庫(kù)中,如圖4所示。
圖4 WINCC歸檔設(shè)置
(3)設(shè)置WINCC FunctionTrendControl控件屬性,組態(tài)要顯示的曲線,選擇相應(yīng)曲線連接的數(shù)據(jù)源,曲線顯示的Y軸坐標(biāo)等,如圖5所示。
圖5 WINCC FunctionTrendControl控件屬性
(4)編寫查詢曲線用的C腳本,具體腳本如下
最終效果如圖6所示。
圖6 圓盤曲線展示
經(jīng)過(guò)以上工作,我們就可以在WinCC中實(shí)現(xiàn)圓盤曲線功能。該方法操作起來(lái)比較簡(jiǎn)單,適合剛剛?cè)腴T的朋友。如果想要實(shí)現(xiàn)更多功能,可使用高級(jí)語(yǔ)言自己編寫相應(yīng)功能的COM控件,在此筆者不在贅述。謹(jǐn)以此文拋磚引玉,希望能和大家多多交流。