隨著現(xiàn)代化生產(chǎn)的高速發(fā)展,工業(yè)設(shè)備良好的狀況能提高生產(chǎn)效率,降低成本,獲得更好的經(jīng)濟(jì)效益,因此對(duì)工業(yè)生產(chǎn)中的設(shè)備進(jìn)行有效的監(jiān)測(cè)是必不可少的。作為實(shí)時(shí)監(jiān)測(cè)系統(tǒng),設(shè)備數(shù)據(jù)信號(hào)的采集和處理是首要環(huán)節(jié),特別是提取有效的信號(hào)是實(shí)現(xiàn)實(shí)時(shí)監(jiān)測(cè)的基礎(chǔ)。
目前,為了獲取設(shè)備的數(shù)據(jù)信號(hào),多數(shù)系統(tǒng)中使用了數(shù)據(jù)采集設(shè)備,例如數(shù)據(jù)采集卡,信號(hào)采集器,信號(hào)放大器等。這些數(shù)據(jù)采集設(shè)備有配套軟件,但是其軟件功能有一定的局限性,難以滿足用戶需求,因此需要在已有的數(shù)據(jù)采集器軟件上進(jìn)行二次開發(fā)。
在監(jiān)測(cè)系統(tǒng)中米集的數(shù)據(jù)量較大,使用Windows消息機(jī)制易于在數(shù)據(jù)采集器軟件上進(jìn)行簡(jiǎn)單的二次開發(fā)和功能的擴(kuò)充,有利于對(duì)數(shù)據(jù)進(jìn)行靈活地處理。
依據(jù)Windows消息機(jī)制,可以實(shí)現(xiàn)在應(yīng)用程序的進(jìn)程間傳遞數(shù)據(jù),使得對(duì)已有軟件的二次開發(fā)成為可能。
本文采用這種方法,在某煉鋼廠的風(fēng)機(jī)實(shí)時(shí)監(jiān)測(cè)系統(tǒng)中,對(duì)數(shù)據(jù)采集器軟件進(jìn)行了二次開發(fā),實(shí)現(xiàn)了風(fēng)機(jī)狀態(tài)的實(shí)時(shí)監(jiān)測(cè),取得了良好的效果。
行,并造成巨大經(jīng)濟(jì)損失,因此掌握風(fēng)機(jī)的實(shí)時(shí)工作狀態(tài)具有重大意義,對(duì)風(fēng)機(jī)設(shè)備的工作狀況進(jìn)行實(shí)時(shí)監(jiān)測(cè)是保證風(fēng)機(jī)系統(tǒng)正常運(yùn)行的一項(xiàng)有力措施。
為某煉鋼廠的除塵風(fēng)機(jī)系統(tǒng)結(jié)構(gòu)示意圖,該系統(tǒng)由風(fēng)機(jī)、液力耦合器、電機(jī)等組成,風(fēng)機(jī)處于長(zhǎng)期旋轉(zhuǎn)運(yùn)行狀態(tài)。
煉鋼廠除塵風(fēng)機(jī)系統(tǒng)的結(jié)構(gòu)原有的風(fēng)機(jī)檢測(cè)系統(tǒng)為點(diǎn)備方式,由技術(shù)人員不定時(shí)地采用便攜式的簡(jiǎn)易檢測(cè)儀器,對(duì)風(fēng)機(jī)中的特定位置(即檢測(cè)點(diǎn))的振動(dòng)狀況進(jìn)行采樣。對(duì)采樣的數(shù)據(jù)進(jìn)行人工記錄,并根據(jù)歷史經(jīng)驗(yàn)判斷故障。這種人工檢測(cè)方法工作量較大,自動(dòng)化程度較低,檢測(cè)結(jié)果極易受人為因素的影響,降低了故障判斷的準(zhǔn)確性,并且存在隱藏的安全性問題。
2.2風(fēng)機(jī)實(shí)時(shí)監(jiān)測(cè)系統(tǒng)的硬件組成技術(shù)創(chuàng)新2風(fēng)機(jī)實(shí)時(shí)監(jiān)測(cè)系統(tǒng)的硬件實(shí)現(xiàn)除塵風(fēng)機(jī)是高速旋轉(zhuǎn)設(shè)備,屬于煉鋼生產(chǎn)線上的重要設(shè)備,若發(fā)生故障,將直接影響到高爐的正常運(yùn)本文所述風(fēng)機(jī)實(shí)時(shí)監(jiān)測(cè)系統(tǒng)包括振動(dòng)信號(hào)采集、數(shù)據(jù)提取和保存、數(shù)據(jù)傳輸和數(shù)據(jù)處理等四個(gè)工作程序,硬件設(shè)備由壓電傳感器、數(shù)據(jù)采集器和工業(yè)控制計(jì)算機(jī)等組成,如所示。壓電傳感器采集風(fēng)機(jī)監(jiān)測(cè)點(diǎn)的振動(dòng)信號(hào),通過數(shù)據(jù)采集器轉(zhuǎn)換為數(shù)據(jù)信號(hào),夏天:碩士研究生并由PCI接□傳遞給下位機(jī),下位機(jī)使用FTP協(xié)議將基金項(xiàng)目:“國家科技攻關(guān)計(jì)劃,(2005BA102C)數(shù)據(jù)傳給上位機(jī)進(jìn)行分析處理,實(shí)現(xiàn)實(shí)時(shí)監(jiān)測(cè)。
已有的程序獲得風(fēng)機(jī)振動(dòng)的數(shù)據(jù)信號(hào),然后數(shù)據(jù)信號(hào)采集程序進(jìn)行數(shù)據(jù)提取和保存,數(shù)據(jù)信號(hào)分析程序?qū)?shù)據(jù)進(jìn)行分析處理,由人機(jī)界面進(jìn)行顯示,從而實(shí)現(xiàn)狀態(tài)實(shí)時(shí)監(jiān)測(cè)。
4.1數(shù)據(jù)信號(hào)采集程序的實(shí)現(xiàn)風(fēng)機(jī)實(shí)時(shí)監(jiān)測(cè)系統(tǒng)中,數(shù)據(jù)采集器的自帶應(yīng)用程序完成振動(dòng)信號(hào)獲取和轉(zhuǎn)換。由于其轉(zhuǎn)換后的數(shù)字信號(hào)為特有格式,故必須進(jìn)行二次開發(fā),才能實(shí)現(xiàn)數(shù)字信號(hào)的保存和其他操作。在Windows應(yīng)用程序中,使用WMCOPYDATA消息,可以在應(yīng)用程序的進(jìn)程間進(jìn)行數(shù)據(jù)交換,完成數(shù)字信號(hào)的處理。
運(yùn)用WMCOPYDATA消息實(shí)現(xiàn)進(jìn)程間的數(shù)據(jù)交換,是一種非常簡(jiǎn)單的方法,極大地降低了開發(fā)中代碼的重用率,減少了開發(fā)周期和開發(fā)費(fèi)用。這種方法應(yīng)用于windows系統(tǒng),有利于底層的數(shù)據(jù)通信,為數(shù)據(jù)采集提供了方便。
?。?)風(fēng)機(jī)監(jiān)測(cè)系統(tǒng)中數(shù)據(jù)采集的實(shí)現(xiàn)WMCOPYDATA消息的實(shí)現(xiàn)需要發(fā)送方和接收方,發(fā)送方在將數(shù)據(jù)傳遞給接收方以前,先按照Windows標(biāo)準(zhǔn)正確的輸入COPYDATASTRUCT數(shù)據(jù)結(jié)構(gòu),然后發(fā)送WMCOPYDATA消息,接收方在接至IJ WMCOPYDATA消息后,進(jìn)入相應(yīng)的消息處理程序,從而獲取相應(yīng)的數(shù)據(jù)并實(shí)現(xiàn)進(jìn)一步的處理。
在風(fēng)機(jī)實(shí)時(shí)監(jiān)測(cè)系統(tǒng)中,WMCOPYDATA消息的具體實(shí)現(xiàn),程序流程圖如:程序流程圖⑵在頭文件中說明用戶自定義消息類型和數(shù)據(jù)信號(hào)信息的結(jié)構(gòu)體風(fēng)機(jī)實(shí)時(shí)監(jiān)測(cè)系統(tǒng)以Windows為平臺(tái)的應(yīng)用程序一般是以事件為驅(qū)動(dòng)的。一個(gè)事件的發(fā)生,通過消息傳遞到相應(yīng)的事件處理過程,然后由該過程進(jìn)行處理。消息是Windows系統(tǒng)將系統(tǒng)中所發(fā)生的操作傳遞給相應(yīng)處理過程的信息,是由Windows系統(tǒng)或應(yīng)用程序產(chǎn)生的,而消息的傳遞與處理是所有Windows應(yīng)用程序的核心。
Windows系統(tǒng)的消息可以分為二類:標(biāo)準(zhǔn)windows消息,控件通知消息和命令消息。標(biāo)準(zhǔn)Windows消息與窗口的內(nèi)部運(yùn)作有關(guān),控件通知消息是控件傳遞給父窗口的消息,而命令消息是包含來自用戶界面對(duì)象的WMCOMMAND通知消息。
Windows系統(tǒng)把消息發(fā)送給相應(yīng)的事件處理窗口過程,窗口過程需要四個(gè)參數(shù):窗口句柄、消息標(biāo)識(shí)及其兩個(gè)32位值的消息參數(shù)。Windows系統(tǒng)利用窗口句柄確定向哪里一個(gè)窗口過程發(fā)送消息。消息標(biāo)識(shí)是一個(gè)常量,由它來標(biāo)識(shí)消息的目的。兩個(gè)32位值的消息參數(shù)用于表示消息的其它信息。
Windows消息包含一個(gè)MSG的消息結(jié)構(gòu)體,其定義如下:消息結(jié)構(gòu)體MSG中窗口句柄hwnd用于檢索消息;如果此參數(shù)為0(NULL),則可以檢索所有駐留在消息隊(duì)列中的消息。消息值message,由windows.h內(nèi)的宏來識(shí)別。包含有關(guān)消息附加信息的wParam和IParam,此信息隨message的值而改變。time傳遞消息發(fā)送到消息隊(duì)列的時(shí)間。pt傳遞消息發(fā)送時(shí)屏幕的光標(biāo)參數(shù)。
Windows消息產(chǎn)生后,應(yīng)用程序通過調(diào)用CWnd::SendMessageG函數(shù)來直接發(fā)送消息給窗口過程,或通過調(diào)用CWnd::postMessage()函數(shù)來把消息發(fā)送到消息隊(duì)列中排隊(duì)等候。在應(yīng)用程序的執(zhí)行期間,應(yīng)用程序?qū)ο筮B續(xù)不斷地查詢消息隊(duì)列中的消息并進(jìn)行處理。
時(shí)監(jiān)測(cè)系統(tǒng)軟件實(shí)現(xiàn)風(fēng)機(jī)實(shí)時(shí)監(jiān)測(cè)系統(tǒng)的應(yīng)用程序由數(shù)據(jù)信號(hào)的采集程序和數(shù)據(jù)信號(hào)的分析程序組成。通過數(shù)據(jù)采集器技術(shù)創(chuàng)新下位機(jī)pc號(hào)-信數(shù)數(shù)據(jù)采集器號(hào)士|口振壓電傳感器您的論文得到兩院院士關(guān)注控制系統(tǒng)數(shù),WMADBUFFERFULL表示數(shù)據(jù)緩沖區(qū)寫滿;數(shù)據(jù)信號(hào)信息的結(jié)構(gòu)體包含了采集數(shù)據(jù)的具體信息,例如起始通道,結(jié)束通道,采樣頻率等,其結(jié)構(gòu)體如下:typedefstructPARAMINFOcharTestName;//試驗(yàn)名稱發(fā)送方應(yīng)用程序使用SendMessage函數(shù)發(fā)送這個(gè)消息,接收方應(yīng)用程序獲取該消息。在WMCOPY-DATA消息中涉及到的兩個(gè)參數(shù),其中wParam=(WPARAMXHWND;)hwid為發(fā)送數(shù)據(jù)應(yīng)用程序窗體的句柄,lParam=(LPARAM)(PCOPYDATASTRUCT)pcds為指向COPYDATASTRUCT數(shù)據(jù)結(jié)構(gòu)的指針,包含被傳遞的數(shù)據(jù),其數(shù)據(jù)結(jié)構(gòu)如下:參數(shù)指向的數(shù)據(jù)的大?。ㄒ宰止?jié)計(jì)),lpData指向被應(yīng)用程序傳送數(shù)據(jù)的指針,可以為NULL.附加消息的類型。
的dwData數(shù)據(jù)成員的消息類型,來判斷所獲取的數(shù)據(jù),并進(jìn)行相應(yīng)的處理。
指針讀取實(shí)際數(shù)據(jù)信號(hào)的相關(guān)信息。
實(shí)際數(shù)據(jù)信號(hào)的相關(guān)信息是一個(gè)結(jié)構(gòu)體的形式定義的即PARAMINFO,包括數(shù)據(jù)采集的起始通道,結(jié)束通道和采集頻率等重要的數(shù)據(jù)信息。
據(jù)緩沖區(qū)寫滿了,此時(shí)lpData指針指向的是實(shí)際采集的數(shù)據(jù)信號(hào),而cbData說明了數(shù)據(jù)緩存的大小。
應(yīng)用程序在獲取指針后按照需要的數(shù)據(jù)類型,將所采集的數(shù)據(jù)保存起來(或者寫成數(shù)據(jù)文件,或者寫入數(shù)據(jù)庫)。
⑷調(diào)用數(shù)據(jù)處理傳輸函數(shù),利用FTP協(xié)議,傳輸數(shù)據(jù)文件4.2數(shù)據(jù)信號(hào)分析程序的實(shí)現(xiàn)數(shù)據(jù)信號(hào)分析程序?qū)?shù)據(jù)信號(hào)進(jìn)行分析處理,提取數(shù)據(jù)信號(hào)的狀態(tài)特征,例如速度信號(hào)的有效值(均方根值);利用FFT變換,對(duì)數(shù)據(jù)信號(hào)的時(shí)間和頻率關(guān)系進(jìn)行分析。
數(shù)據(jù)信號(hào)分析程序?qū)崿F(xiàn)實(shí)時(shí)信號(hào)的圖形顯示,分析提取信號(hào)特征繪制趨勢(shì)圖,對(duì)設(shè)備運(yùn)行狀態(tài)進(jìn)行判斷等功能。通過數(shù)據(jù)信號(hào)分析程序,完成了人機(jī)界面的交互,達(dá)到了風(fēng)機(jī)實(shí)時(shí)監(jiān)測(cè)的目的。
5結(jié)論在風(fēng)機(jī)實(shí)時(shí)監(jiān)測(cè)系統(tǒng)中,利用Windows應(yīng)用程序的消息機(jī)制,在已有數(shù)據(jù)采集器軟件上進(jìn)行二次開發(fā),通過WMCOPYDATA消息的傳遞和響應(yīng),借助應(yīng)用程序的進(jìn)程間通訊的方法,準(zhǔn)確而有效地實(shí)現(xiàn)了數(shù)據(jù)信號(hào)的采集。
通過在某煉鋼廠的運(yùn)行調(diào)試,整個(gè)監(jiān)測(cè)系統(tǒng)獲得了穩(wěn)定可靠的數(shù)據(jù),實(shí)現(xiàn)了風(fēng)機(jī)實(shí)時(shí)監(jiān)測(cè)的功能。利用Windows消息機(jī)制,實(shí)現(xiàn)了數(shù)據(jù)采集器軟件數(shù)據(jù)信號(hào)處理功能的擴(kuò)充。
本文作者創(chuàng)新點(diǎn):⑴利用Windows消息機(jī)制,在已有數(shù)據(jù)采集器軟件上進(jìn)行二次開發(fā),減少了開發(fā)周期,降低了開發(fā)成本;現(xiàn)了應(yīng)用程序進(jìn)程間數(shù)據(jù)的傳遞,有效地獲取了監(jiān)測(cè)系統(tǒng)的數(shù)據(jù)信號(hào);⑶將監(jiān)測(cè)系統(tǒng)的數(shù)據(jù)信號(hào)按照分析處理的需要進(jìn)行保存,為后續(xù)監(jiān)測(cè)系統(tǒng)的數(shù)據(jù)分析和故障診斷提供了依據(jù)。