賈冠偉 韓秋實 彭 浩 陳雨暉
(①北京信息科技大學機電工程學院,北京 100192;②北京第二機床廠有限公司,北京 100165)
目前,有些數控凸輪軸磨床使用西門子840D數控系統(tǒng),840D系統(tǒng)具有優(yōu)越的動態(tài)品質和控制精度,適用于各種復雜加工任務的控制,但840D系統(tǒng)封閉且OEM監(jiān)測軟件昂貴價格。為了方便用戶使用、降低成本,及開發(fā)自主知識產權的840D數控系統(tǒng)的實時監(jiān)測系統(tǒng),本文重點研究開發(fā)了在西門子840D數控系統(tǒng)中基于DDE技術實現數據的采集,并利用VB6.0軟件實現凸輪加工實時采集數據并同步將圖形有效顯示在控制界面內,同時保存采集的多組數據以備分析使用。此方法不需要增加額外的物理數據采集裝置,僅通過軟件控制都能實現,簡單易行,節(jié)約成本。數據的動態(tài)圖形顯示為數據分析提供了一個動態(tài)、直觀的印象,是數據分析的重要環(huán)節(jié),在實際的加工應用中取得了良好的效果。
SINUMERIK 840D是西門子公司20世紀90年代末推出的用于各種復雜加工的新一代高性能全數字式數控系統(tǒng)。SINUMERIK 840D與SINUMERIK_611數字驅動系統(tǒng)和SIMATIC可編程控制器一起,構成全數字控制系統(tǒng),它適于各種復雜加工任務的控制,具有優(yōu)于其他系統(tǒng)的動態(tài)品質和控制精度。
SINUMERIK 840D的突出之處在于其不斷擴展的特性和強大的網絡功能,使其突現現代化管理成為可能。為機床的自動化提供了全方位的解決方案:全數字化的系統(tǒng)、革新的系統(tǒng)結構、更高的控制品質、更高的系統(tǒng)分辨率以及更短的采樣時間,確保工件質量。SINUMERIK 840D強大的系統(tǒng)功能還可以實現許多特殊的NC功能,如:各種同步功能、多種補償功能、齒輪排隙功能。在SINUMERIK 840D數控系統(tǒng)的控制器中,本文要用到數據通訊接口服務器程序NCDDE(Numerical Control Dynamic Data Exchange)。NCDDE服務端是一種處理變化響應和實時程序數據交換服務的輔助程序。DDE是關于窗口應用程序和NCDDE服務端的動態(tài)數據交換過程。根據這種通訊方式的統(tǒng)一的接口規(guī)范,通過VB6.0編寫DDE客戶端通訊程序,客戶可讀取NCK中的各種變量和數據。如圖1所示。
DDE動態(tài)數據交換(Dynamic Data Exchange)是Windows操作系統(tǒng)應用內部DDE通信協(xié)議為兩個不同的Windows程序提供通信服務。DDE技術可實現應用程序間彼此交換數據和發(fā)送指令,使用共享內存實現進程間的數據交換,使用協(xié)議達到傳遞數據的同步。如圖2所示DDE工作原理與結構圖。通過DDE方式鏈接起來的Server/Client兩個客戶端程序,一旦Client和Server建立了鏈接關系,當Server中的數據發(fā)生變化后就會馬上通知Client。通過DDE方式建立的數據連接通道是雙向的,即Client不但能夠讀取Server中的數據,而且可以通過其進行修改。
為了與DDE服務器建立起鏈接,客戶端必須建立以下識別信息:應用程序名(Application)、主題名(Topic)和數據項(Item)。應用程序名為 DDE中Server/Client雙方的名稱,如SINUMERIK 840D數控系統(tǒng)中的應用程序名“NCDDE”。主題名規(guī)定了服務器應用程序會話的主題內容,Server應用程序可支持1個或多個主題名。數據項名確定了具體通信傳輸的詳細內容,可以為字符串或數據,每個主題名可擁有1個或多個項目名。
建立DDE鏈接后,客戶端應用程序和服務端應用程序通過以下3種鏈接方式進行數據的交換和傳輸,分別為:冷鏈接(Cold Link)、溫鏈接(Warm Link)和熱鏈接(Hot Link)。冷鏈接:Client應用程序申請數據,Server應用程序馬上給客戶應用程序發(fā)送數據,Server應用程序處于主動地位。溫鏈接:Server應用程序通知Client應用程序數據項發(fā)生了變化,但并沒有將已改變的值發(fā)送給Client應用程序。熱鏈接:當數據項發(fā)生變化時,Server應用程序立即把變化后的值發(fā)送給Client應用程序,Server應用程序處于主動地位。
本文使用了Visual Basic6.0開發(fā)了客戶應用程序,此客戶應用程序將以DDE方式從NCDDE服務器端讀取NCU的各種變量數據,顯示圖形并備份數據,實現了在線監(jiān)測系統(tǒng)的開發(fā)。圖3為監(jiān)測系統(tǒng)流程圖。
在VB6.0提供的標準控件欄中,使用 MSChart、TxtBox、Lable還有 Form 具有動態(tài)數據的交換功能。通過這些控件可以實現數據的發(fā)送和接受??蛻舳说膽贸绦驅崿F方式有以下步驟:
(1)新建一個窗體;
(2)向窗體中加入相應的控件并命名和改變屬性,例 如 MSChart、 TxtBox、Lable、Command、Timer 控件;
(3)編寫代碼并運行測試;
(4)將運行測試成功的程序,編譯生成可執(zhí)行文件在840D上進行運行測試。
本文以VB6.0為客戶應用程序編寫軟件,在Form窗體中,添加TxtBox控件命名為TxtCCmdPos(角度C的命令值),并將通過DDE方式從Server端NCDDE中讀取的CCmdPos數據,動態(tài)地顯示在TxtBox中,同時也將圖形顯示于MSChart控件內;添加2個Command控件,分別命名為Connect和End;添加Timer控件,分別設置其屬性并編寫相應的代碼:建立DDE鏈接;斷開鏈接并關閉保存數據的文件;設置Timer控件并將數據寫入文件保存;在Form中設置MSChart控件的屬性并打開保存數據文件。
編寫完以上的控件程序后,將其編譯成可執(zhí)行文件EXE,再將此文件復制粘貼到SINUMERIK 840D數控系統(tǒng)的Windows操作系統(tǒng)中。當840D數控系統(tǒng)啟動時,進行相應的操作可以進入Windows操作系統(tǒng),啟動HMI即可獲得當前數控系統(tǒng)加工程序中角度C的理論位置信息,同時還有X軸的理論位置信息、C-X實際加工位置信息、C軸加工位置的跟隨誤差CError、X軸加工位置的跟隨誤差XError。這些數據顯示于TxtBox內,并實時傳輸給MSChart控件畫出C-X的位置關系圖。同時也可以將實際加工的C-X對應的關系圖、CError圖和 XError圖分別顯示于不同 MSChart控件內,形成兩條對比曲線。程序結束時,數據采集文件也保存了實際采集的數據,為以后的分析奠定基礎。監(jiān)測系統(tǒng)界面圖如圖4所示。
通過此程序可以進一步開發(fā)840D數控系統(tǒng)其他方面的監(jiān)測軟件。例如,監(jiān)測數控系統(tǒng)其他坐標的位置信息、R參數、8位的PLC狀態(tài)變量等。此過程只需對原有監(jiān)測系統(tǒng)進行相應的參數改動即可實現。
在使用西門子840D數控系統(tǒng)凸輪加工過程中采集數據的困難,可通過DDE方式設計的西門子840D數控監(jiān)測系統(tǒng)來解決。降低了可視開發(fā)數控監(jiān)測系統(tǒng)的難度,根據實際監(jiān)測對象進行數值和圖形的實時顯示。同時根據840D中的NCDDE可以更好地進行數據監(jiān)測系統(tǒng)的開發(fā),同時也為使用840D系統(tǒng)的其他種類機床的監(jiān)測系統(tǒng)的開發(fā)提供了有效的手段。結合DDE方式可以更加有效地對數控系統(tǒng)中的凸輪軸加工過程中的各種數據進行讀取、分析和優(yōu)化,可及時提高和改進機床的整體性能,提高加工質量。
[1]裴暢貴,白培康.凸輪軸制造工藝及國內外發(fā)展趨勢[J].新技術新工藝,2009(3).
[2]徐潔蘭.西門子數控系統(tǒng)概述[J].制造技術與機床,2005(2):100-102.
[3]楊斌.西門子SINUMERIK 840D數控系統(tǒng)介紹[J].現代制造,2004(6):87-89.
[4]宗瑜婷.利用DDE技術實現組態(tài)軟件與應用程序的數據通信[J].電腦編程技巧與維護,2008(8):48,72.
[5]SINUMERIK?Documentation.SINUMERIK840D/840Di/810DRPC SINUMERIK computer link[Z],2005.
[6]楊家榮,徐志明,王浩林,等.基于DDE技術的機床遠程診斷技術研究[J].裝備機械,2010(2):26-29.
[7]鄭阿奇,曹弋.Visual Basic使用教程[M].2版.北京:電子工業(yè)出版社,2004.
[8]明日科技.Visual Basic程序開發(fā)范例寶典[M].2版.北京:人民郵電出版社,2009.