秦建華,冉井旺,戴 滔
(重慶煙草工業(yè)公司黔江分廠,重慶 409000)
目前,在煙草行業(yè)制絲生產(chǎn)線上,當(dāng)生產(chǎn)線設(shè)備運(yùn)行出現(xiàn)異常時(shí),一般都是通過聲光報(bào)警和監(jiān)控畫面的文字警示方式來提示操作人員。因此,在集中監(jiān)控系統(tǒng)中主要存在一些問題:一是聲光報(bào)警形式單一,內(nèi)容籠統(tǒng),無法描述具體的故障信息;二是當(dāng)有多個(gè)監(jiān)控畫面時(shí),沒有被切換為當(dāng)前監(jiān)控畫面的報(bào)警信息通常是無法顯示的;三是操作人員長時(shí)間的注視監(jiān)控畫面,極易產(chǎn)生疲勞,影響工作和身心健康;四是操作人員的精力如果不夠完全集中,很容易忽略掉一些報(bào)警信息,從而可能造成一些質(zhì)量事故發(fā)生。
語音報(bào)警是將報(bào)警內(nèi)容用語音的形式播放出來[1],能及時(shí)準(zhǔn)確地表達(dá)出發(fā)生異常的部位、名稱等詳細(xì)信息,當(dāng)操作人員聽到報(bào)警后,能及時(shí)地作出相應(yīng)處理,從而減少了質(zhì)量事故的發(fā)生率,穩(wěn)定了產(chǎn)品質(zhì)量。
大多數(shù)煙草行業(yè)都是采用的西門子WinCC(Windows ControlCenter)監(jiān)控軟件,西門子視窗控制中心SIMATIC WinCC是一款優(yōu)秀的HMI/SCADA軟件,廣泛地應(yīng)用于各個(gè)工業(yè)控制領(lǐng)域,在WinCCV6.0以上版本中[2],系統(tǒng)增加了Horn選件,Horn是PCS7OS系統(tǒng)中的聲音報(bào)警組件,當(dāng)系統(tǒng)產(chǎn)生的報(bào)警信息符合設(shè)定的條件時(shí),Horn可以通過PC上的聲卡發(fā)出報(bào)警聲音。另外,WinCC提供了一種廣泛的API(應(yīng)用程序編程接口),這是一種供應(yīng)用程序訪問,WinCC項(xiàng)目本身中也可使用的WinCCAPI的函數(shù),可以通過WinCC的腳本語言創(chuàng)建項(xiàng)目函數(shù),調(diào)用Windows的聲音播放函數(shù)來實(shí)現(xiàn)語音報(bào)警功能[3]。
根據(jù)語音報(bào)警的工作原理,當(dāng)在生產(chǎn)過程中出現(xiàn)故障時(shí),通過語音的形式提示操作人員,使其能更快更準(zhǔn)確地做出反應(yīng)。因此,首先是要把需要語音提示的信息羅列出來,將其制作成聲音文件,再通過程序設(shè)計(jì),在條件滿足時(shí)觸發(fā)相應(yīng)的聲音文件,當(dāng)操作人員確認(rèn)報(bào)警后停止聲音報(bào)警,否則只有等到故障消除后聲音報(bào)警自動(dòng)停止。其程序流程如圖1所示。
圖1 程序設(shè)計(jì)流程
1.編輯報(bào)警文件
WinCC支持波形文件,即為“*.wav”格式的聲音文件,因此首先是把需要報(bào)警的信息編輯成波形聲音文件,其方法一般有兩種形式:一是通過錄音設(shè)備進(jìn)行錄制,保存為波形文件;二是通過專業(yè)軟件將報(bào)警內(nèi)容直接轉(zhuǎn)換為波形聲音文件。
2.用Horn組件設(shè)計(jì)語音報(bào)警
1)Horn組件的安裝。一般情況下,在WinCC的安裝過程中,Horn組件是不會(huì)自動(dòng)安裝的,需要在選項(xiàng)中進(jìn)行選擇。其步驟是:“選擇安裝或卸載的組件”→“基本過程控制”。
2)用Horn組件設(shè)計(jì)語音報(bào)警。在WinCC項(xiàng)目中,打開Horn組件,如圖2所示。
圖2 WinCC編輯界面
第一步,設(shè)置過濾條件。Horn組態(tài)工具第一個(gè)頁面“消息分配”用于設(shè)置聲音報(bào)警的觸發(fā)條件,在組態(tài)表格的“變量”欄中,輸入故障觸發(fā)變量,其他都采用系統(tǒng)默認(rèn)值,如圖3所示。
圖3 Horn組態(tài)界面1
第二步,設(shè)置報(bào)警聲音。觸發(fā)變量設(shè)置完成之后,需要把觸發(fā)變量和一個(gè)報(bào)警聲音關(guān)聯(lián)起來,在Horn組態(tài)的第二個(gè)頁面“信號分配”中設(shè)置。
在“報(bào)警器確認(rèn)”中選擇“按以下確認(rèn)變量進(jìn)行多次確認(rèn)”,在該項(xiàng)中添加確認(rèn)變量;在“播放聲音”中選擇“同時(shí)播放聲音的限制數(shù)目”,將該項(xiàng)設(shè)為1;在“變量”一列中雙擊,選擇第一步中設(shè)置的觸發(fā)變量;在“聲音”一列中雙擊,選擇一個(gè)聲音文件,完成報(bào)警聲音的關(guān)聯(lián),如圖4所示。
圖4 Horn組態(tài)界面2
當(dāng)符合條件的報(bào)警產(chǎn)生時(shí),觸發(fā)變量被置位,相應(yīng)的報(bào)警聲音被觸發(fā),就會(huì)通過計(jì)算機(jī)聲卡發(fā)出聲響。
在此需要說明的是,故障變量和聲音確認(rèn)變量都要在WinCC中組態(tài),要與對應(yīng)的PLC程序聯(lián)系起來,因這一步較為簡單,故此省略。
3.用WindowsAPI設(shè)計(jì)語音報(bào)警
WinCC項(xiàng)目可以使用所有的WindowsAPI,其設(shè)計(jì)主要包括兩個(gè)部分,一是在全局腳本里創(chuàng)建新的動(dòng)作,并編寫程序代碼;二是設(shè)計(jì)動(dòng)作的觸發(fā)條件。
1)編寫腳本代碼。打開全局腳本編輯器,用C語言進(jìn)行程序設(shè)計(jì),其部分程序清單如下:
在此程序中集成了WindowsDLLwinmm,由于只需要DLL的一個(gè)函數(shù),因此直接聲明了該函數(shù)。我們還應(yīng)用了windowsAPI函數(shù) sndPlaySoundA(char*szWave,DWORD dwFlag),其中char*szWave是聲音文件的路徑,DWORD dwFlag是標(biāo)識常量(0x0:播放完WAV文件后將控制轉(zhuǎn)移回到應(yīng)用程序中;0x1:播放WAV文件,然后將控制立即轉(zhuǎn)移到應(yīng)用程序中,而不管對WAV文件的播放是否結(jié)束;0x8:循環(huán)播放WAV文件)。
2)觸發(fā)條件。當(dāng)全局腳本程序編寫完成后,就要設(shè)計(jì)觸發(fā)動(dòng)作執(zhí)行的條件,其步驟是在全局腳本的當(dāng)前畫面中,點(diǎn)擊“信息/觸發(fā)”按鈕,打開如圖5所示的畫面,然后將報(bào)警變量添加進(jìn)去編譯并保存即可。
圖5 觸發(fā)器設(shè)計(jì)
當(dāng)完成語音報(bào)警功能設(shè)計(jì)后,就可以在監(jiān)控系統(tǒng)中運(yùn)行了。一旦生產(chǎn)異常,音響就會(huì)發(fā)出聲音報(bào)警。比如葉片加料系統(tǒng)發(fā)生異常,當(dāng)前加料流量跟不上設(shè)定流量,于是,語音系統(tǒng)就會(huì)不斷播出“葉片加料故障請注意”的語音信息,當(dāng)操作工聽到了報(bào)警聲,就能作出及時(shí)、準(zhǔn)確的判斷處理,減少了質(zhì)量事故的發(fā)生率,穩(wěn)定和提高了產(chǎn)品質(zhì)量,達(dá)到了我們的預(yù)期設(shè)計(jì)目標(biāo)。
在煙草行業(yè)的生產(chǎn)線上,聲光報(bào)警應(yīng)用較為普遍,但語音報(bào)警的應(yīng)用幾乎還是空白,語音報(bào)警與傳統(tǒng)的報(bào)警方式相比,具有無法比擬的突出優(yōu)點(diǎn),因此,將語音報(bào)警應(yīng)用到生產(chǎn)實(shí)際中,能極大地豐富報(bào)警信息,有利于我們更及時(shí)地控制生產(chǎn)。而且,設(shè)計(jì)語音報(bào)警較為簡單,具有很強(qiáng)的實(shí)用價(jià)值和推廣價(jià)值。
[1]殷福瑞,孟憲明.“人聲語音報(bào)警”系統(tǒng)的應(yīng)用[J].安全、健康和環(huán)境,2008(4):20.
[2]蘇昆哲.深入淺出西門子WinccV6[M].北京:北京航空航天大學(xué)出版社,2006.
[3]許志軍.工業(yè)控制組態(tài)軟件及應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2005.