張海霞
ZHANG Hai-xia
(南通紡織職業(yè)技術學院 機電系,南通 226007)
刀具磨損情況監(jiān)測有多種方法,直接法有利用傳感器監(jiān)測法,間接法有利用機床功率或電流監(jiān)測法、聲發(fā)射監(jiān)測法和放射性元素監(jiān)測法[1-3]。對開放式數(shù)控系統(tǒng)而言,利用機床電機功率和電流進行監(jiān)測基本不需要增加新硬件,相對于其它幾種方法具有明顯優(yōu)勢。因為在加工條件是相同時,通過監(jiān)測實際加工的電流和功率,并與標準參考加工電流、功率曲線的對比獲得之間的差別,在諸多帶來差別的影響因素中最大的變化因素是刀具的磨損,據(jù)此差別來反映刀具磨損情況,從而能實現(xiàn)對刀具磨損的監(jiān)測。
本文以臺達變頻器為例,介紹了開放數(shù)控環(huán)境下,變頻器數(shù)據(jù)的采集、傳輸過程,以及通過VB調(diào)用Winsock控件采集機床電機功率和電流實現(xiàn)刀具磨損監(jiān)控的具體過程,為相關企業(yè)的監(jiān)控提供參考。
變頻器作為數(shù)控控制鏈中的關鍵部件,其內(nèi)部信息運行與狀態(tài)息息相關,對于其數(shù)據(jù)的采集具有很重要的作用?,F(xiàn)代變頻器多采用微計算機數(shù)字控制技術構(gòu)成,并提供標準的工業(yè)RS485通訊接口和內(nèi)置協(xié)議,為變頻器的計算機遠程監(jiān)控管理提供了必要的基礎。以臺達VFD-M系列變頻器為例,串行通信協(xié)議采用的是ASCII(American Standard Code for Information Interchange)模式,在這種模式中每個字節(jié)的8位是由兩個ASCII碼來表示。如單字節(jié)十六進制數(shù)64Hex是由‘6’(36Hex)和‘4’(34Hex)組合而成。數(shù)據(jù)傳遞也采用的是此公司自定的通訊協(xié)議,具體如下:
協(xié)議符號的含義:
表1 臺達變頻器通訊格式表
STX:通信起始字節(jié),ASCII碼為02Hex;
ADR(1,0):由兩個ASCII碼組成的變頻器通信地址,如ADR1=0、ADR0=1代表與地址為01的變頻器進行通信;
CMD(1,0):由兩個ASCII碼組成的一個字節(jié)命令指令,如CMD1=0,CMD0=9為讀出變頻器的狀態(tài);
Datacharacters:為指令的具體參數(shù)或操作對象,由2N個ASCII碼組合而成,N≤26;
EXT:通信結(jié)束字節(jié),ASCII碼為03Hex;
CHK(1,0):是由兩個ASCII碼組合成的一個校驗字節(jié)。
變頻器的每次通信都是按照表1的格式,以特定的ASCII碼作為起始標志,變頻器在接到計算機發(fā)來的命令后首先檢查信息中的起始標志,然后檢查命令中的棧地址是否與自己的棧地址相符,如果不一致,說明計算機是與其它變頻器進行通信,從而忽略該命令;如果一致,就響應該命令,將執(zhí)行結(jié)果回送到計算機,并結(jié)束這次通信。按此通訊原理,可以通過命令讀出變頻器的每個設置參數(shù)和狀態(tài)信息,例如:STX(02H)010849ETX(03H)39命令可以讀取P73參數(shù),該參數(shù)包含了變頻器目前的故障記錄。此外,VFD-M系列變頻器還提供了一個特別的命令STX(02H)0109ETX(03H) CD,變頻器將返回字符串STX(02H)0109 + 34 Data Characters + ETX(03H)+ CHK(1,0),其中34個Data Characters即34個十六進制字符包含了大部分我們要采集的數(shù)據(jù),具體如下:
字符1-2:表示當前故障錯誤代碼,根據(jù)它可以查找當前故障含義;
字符3-4:表示當前變頻器控制面板的LED狀態(tài);
字符5-8:表示數(shù)控系統(tǒng)指令頻率,為4位16進制數(shù),轉(zhuǎn)換為10進制后除以100就能得到數(shù)控系統(tǒng)的指令頻率;
字符9-12:表示變頻器實際輸出頻率,轉(zhuǎn)換同上;
字符13-16:表示變頻器輸出電流,為4位16進制數(shù),轉(zhuǎn)換為10進制后除以10就能得到變頻器的輸出電流;
字符21-24:表示變頻器輸出電壓,轉(zhuǎn)換同上。
由此可見,在應用程序中定時向變頻器發(fā)送STX(02H)0109ETX(03H) CD命令,就能夠?qū)崿F(xiàn)對變頻器的實時數(shù)據(jù)采集,再通過應用程序中其他模塊對這些數(shù)據(jù)的調(diào)用,實現(xiàn)變頻器的故障診斷和遠程監(jiān)測[4]。
機床狀態(tài)數(shù)據(jù)傳輸是指將客戶端監(jiān)測到的數(shù)據(jù)傳輸?shù)竭h程監(jiān)測診斷中心,這些數(shù)據(jù)傳輸依靠HTTP協(xié)議很難做到,因為HTTP連接是靜態(tài)的,即當客戶端提出請求時,客戶端與服務器建立起連接,當服務器完成客戶端的請求后,連接立即斷掉,這顯然不能滿足動態(tài)監(jiān)測的要求,應該尋求其它協(xié)議支持。Windows操作系統(tǒng)為Internet提供了Winsock標準接口,可以為兩個或多個Internet節(jié)點建立連接并交換數(shù)據(jù)。Winsock接口是在應用程序和TCP/IP及硬件之間提供標準的API接口,它為不同的網(wǎng)絡硬件提供了標準的函數(shù),使各個廠商所開發(fā)的不同的TCP/IP應用程序或硬件可以在相同的平臺上工作。
在使用WinSock控件時,首先會考慮使用什么協(xié)議。可以使用的協(xié)議包括TCP和UDP。兩種協(xié)議之間的重要區(qū)別在于它們的連接狀態(tài):TCP協(xié)議控件是基于連接的協(xié)議(stream socket),與電話通信系統(tǒng)類似,在開始數(shù)據(jù)傳輸之前,用戶必須先建立連接;UDP協(xié)議是一種無連接協(xié)議(datagram socket),之間的通信傳輸類似于傳遞郵件:消息從一臺計算機發(fā)送到另一臺計算機時兩者之間沒有明確的連接,而單次傳輸?shù)淖畲髷?shù)據(jù)量則取決于具體的網(wǎng)絡。
圖1 遠程數(shù)據(jù)傳輸監(jiān)測服務器與客戶端的連接
選擇哪一種協(xié)議是由需要創(chuàng)建的應用程序的功能來決定,通常可根據(jù)以下幾種情況來選擇[5]:
1)在收發(fā)數(shù)據(jù)的時候,應用程序是否需要得到客戶端或者服務器的確認信息。如果需要,則使用TCP協(xié)議,在收發(fā)數(shù)據(jù)之前先明確建立的連接。
2)數(shù)據(jù)量是否特別大(如圖像與聲音文件)。連接建立后,TCP協(xié)議將會維護連接并確保數(shù)據(jù)的完整性。顯然,這種連接需要占用更多的計算機資源。
3)數(shù)據(jù)發(fā)送是間歇的,還是在一個會話內(nèi)。如果應用程序在任務完成的時候需要通知某個計算機,UDP協(xié)議則更合適。
使用兩種協(xié)議的明顯區(qū)別是在數(shù)據(jù)傳送之前是否先建立連接。在本系統(tǒng)中,由于對數(shù)據(jù)的準確性和實時性要求比較高,數(shù)據(jù)量不是太大,因此考慮采用TCP協(xié)議來進行數(shù)據(jù)傳輸。即使用面向連接的套接口編程技術,利用VB6.0所提供的編程環(huán)境,設計程序流程如圖1所示[6]。
1)客戶端實時監(jiān)測功能實現(xiàn)
設計完成的界面如圖2所示。將整個服務界面分為7個區(qū)域,它們分別為:變頻器狀態(tài)、變頻器參數(shù)、變頻器故障、手動命令及返參、圖表顯示、工作效率統(tǒng)計和按鈕區(qū)域,圖中的由于屏幕顯示的原因,最右側(cè)的一系列按鈕及工作效率統(tǒng)計的區(qū)域都沒有顯示出來。圖中變頻器狀態(tài)顯示單元中運行和正傳的指示燈為綠色,其它幾個指示燈都為黑色,表示主軸正在正傳運行;電流曲線和功率曲線顯示窗口中各顯示紅色和藍色兩條曲線,綠色的柵格則是曲線有坐標參考。
圖2 變頻器監(jiān)測診斷客戶端界面
機床實時監(jiān)測主要包括變頻器的狀態(tài)和變頻器參數(shù)的實時顯示,中間的繪圖顯示區(qū)域則是將實時采集的數(shù)據(jù)以曲線的形式顯示出來,并實現(xiàn)對比功能。圖中紅色的曲線是標準參考曲線,是從實驗中的得到的理想的加工曲線,另一種是藍色曲線,這是加工實時采集數(shù)據(jù)的繪制的曲線。這兩種曲線對比,最直接反映的就是加工狀態(tài)的變化,由此推測刀具磨損情況。
變頻器在線監(jiān)測診斷實現(xiàn)過程的部分關鍵代碼是:
(a)初始化程序:
2)服務器端遠程監(jiān)測功能實現(xiàn)
遠程監(jiān)測模塊的功能是接收客戶端傳來的數(shù)據(jù)進行顯示,使遠程診斷中心的工作人員能夠?qū)h程設備的運行狀態(tài)有一個直觀地認識,進而對機床狀態(tài)進行分析和故障預測,因此該功能模塊在界面設計上基本與現(xiàn)場監(jiān)測畫面保持一致。對應于客戶端的變頻器在線監(jiān)測診斷,設計出相應的變頻器遠程監(jiān)測服務器端界面如圖3所示。圖中的顯示的曲線基本與客戶端同步。
圖3 變頻器監(jiān)測診斷服務器端界面
變頻器遠程監(jiān)測模塊的界面設計和代碼編寫均是在VB6.0 DHTML編程環(huán)境中進行,電流曲線顯示、數(shù)據(jù)處理和數(shù)據(jù)庫查詢在程序編寫與“變頻器客戶端監(jiān)測診斷”類似,其部分關鍵程序代碼如下。
需要一提的是,雙方連接上后,可通過服務器或客戶端調(diào)用close方法來關閉socket連接,但是通過客戶端關閉連接,再與服務器端連接就連接不上了,必須退出重新進入才能再次連接上。因此在實際應用中,應通過服務器來關閉socket連接。
本文介紹了在開放式數(shù)控系統(tǒng)中,利用間接測量法對刀具磨損情況進行監(jiān)控,通過采集變頻器的實時運行數(shù)據(jù),然后與標準參考數(shù)據(jù)進行顯示與對比、分析差異,進而推測出刀具磨損狀況,間接地實現(xiàn)對刀具磨損情況監(jiān)測。
[1]M Ebrahimi and J L Victory.Web-based machine tool cond ition monitoring,Network Intelligence:Internet-based Manufacturing.
[2]馬旭,陳捷.數(shù)控機床刀具磨損監(jiān)測方法研究[J].機械,2009(36)3:70-73.
[3]歐陽惠斌.基于功率變化率的刀具磨損在線監(jiān)測系統(tǒng)[J].儀表技術,2003(2):20-21.
[4]張承陽.基于Web的開放式數(shù)控系統(tǒng)遠程監(jiān)測及診斷技術研究[D].南京理工大學,2005.
[5]Microsoft Corp.MSDN Library Visual Studio 6.0.HTML Help Control Version 4.74.
[6]王云霞,等.基于Internet的數(shù)控機床遠程服務系統(tǒng)[J].制造業(yè)自動化.2003(6).