摘 要:以開放式軟數控系統為基礎,建立并開發了一個數控系統原理實驗與教學平臺。以模塊化方法建立了開放式軟數控系統的軟件核心,各模塊間通過應用程序接口和共享內存進行交互。通過程序代碼編寫、系統調試、系統運行和實際加工等實驗過程,說明數控系統的開發與運行原理。所建立的實驗教學平臺可作為開放式數控系統開發實踐課程的基礎。
關鍵詞:開放式軟數控;實驗教學;數控技術;模塊化
引言
隨著制造業的不斷發展,數控系統與CAD、CAM系統的數據交互更加頻繁,對數控系統的功能提出了更高的需求,傳統的數控技術存在的問題日益凸顯,已經不能滿足現代制造業和產品生產的需求[1,2]。在目前的數控技術實踐教學中,學生通過實際操作完成手動控制、編寫G代碼和自動運行等實驗內容,了解和掌握數控機床的基本操作方法。開放式軟數控系統具有可互換、可移植、互操作和可擴展等特性,其核心功能全部由軟件實現,學生可以通過編寫源代碼和程序調試等實驗內容,了解數控系統底層的工作原理,例如G代碼解釋、插補計算和總線通信等[3,4]。本文將以開放式軟數控系統為基礎,建立一個用于數控技術實踐教學的實驗平臺,為描述新型數控系統的開發過程與運行原理提供軟硬件支持。
1 開放式數控系統實驗臺設計
1.1 硬件平臺設計
本文以開放式數控系統架構為基礎,采用模塊化體系為結構,建立了開放式數控系統架構,并對各個模塊間的交互與協同工作機制進行了研究。實驗平臺的設計包括硬件平臺與軟件平臺,實驗平臺的硬件主要包括3個部分:
(1)數控系統。數控系統為開放式軟數控系統,可以在通用計算機、工作站和工控機上運行。目前所采用的硬件平臺為艾訊(AXIOMTEK)工業PC機。
(2)伺服驅動系統。伺服系統的主要組成部分是通訊卡、驅動器、IO模塊和電機。系統所采用的運動控制總線為SERCOS總線。系統采用的SERCOS接口卡為Bosch Rexroth公司生產的被動式SERCOS主站卡,型號為PCM-S11.2,主控芯片為SERCON816。
(3)加工設備。加工設備主要包括機床本體、夾具和刀具等。機床本體采用齊齊哈爾第二機床廠生產的XKV715型3軸立式銑床,改造為雙回轉工作臺式5軸數控銑床。夾具和刀具會根據后續研究與實驗需要進行選擇。
1.2 軟件平臺設計
控制系統開發的軟件平臺包括系統軟件和應用軟件,其中最重要的部分是系統軟件。系統軟件是計算機系統最基本的軟件組成部分,主要任務是控制和協調計算機及外部設備,支持應用程序開發和運行,調度、監控和維護計算機運行。系統軟件包括操作系統、程序語言、處理程序、數據庫管理和輔助程序等。
在操作系統方面,本研究選擇了Microsoft公司開發的Windows XP SP2操作系統。Windows系統是目前使用最為廣泛的操作系統,有豐富的Win32應用程序接口和應用程序作為支持,有大量開發人員和終端用戶,因此在控制系統開發平臺領域得到廣泛的應用。
在編程語言方面選擇了應用廣泛的C++,由于SERCOS接口在運行時首先要進行復雜的初始化操作,這增加了使用者的開發難度。SERCANS的開發成本和難度依然較高,因此出現了SoftSERCANS的概念,將SERCANS主控功能移植到軟件抽象層,在Windows操作系統基礎上建立實時擴展子系統,保證SERCOS接口通信的實時性。
1.3 開放式軟數控系統實驗臺軟件模塊開發
本文采用模塊化方法來構建數控系統的軟件內核,將數控系統的功能劃分為不同的功能組,每組功能都由一個軟件模塊來實現??刂破鞯慕Y構包括4個主要模塊,分別為人機界面模塊、譯碼模塊、任務協調模塊和軸組模塊。
人機界面模塊是基于對話框的MFC程序,是系統啟動的入口。人機界面模塊首先完成系統的初始化工作,然后啟動其它相關的模塊。在系統運行時接受操作者的輸入,調用其它模塊的功能對用戶的輸入進行響應。系統協調模塊進程啟動后,會進行初始化進程間通信、加載實時動態鏈接庫、啟動相關線程和設置定時器等工作,在后臺支撐著整個數控系統的運行。軸組模塊是基于RTdll的實時動態鏈接庫,主要功能是完成插補、加減速、前瞻控制和智能控制等功能,將任務生成模塊生成的運動段轉化為一系列以插補周期為間隔的目標點。
2 系統調試與運行
系統調試在VC++ 6.0環境下進行,首先打開4個軟件模塊對應的VC工程,從左側的類視圖與資源視圖中定位具體功能所對應的C++類,然后在右側的代碼窗口中編寫代碼,實現具體的功能。系統共有4個工程,分別為HmiModule、PLCManager、NISTTaskgeneratorModule和AxisGroupModule,對應著4個軟件模塊。代碼編寫完成后,首先進行編譯,確定沒有錯誤和警告后,即可運行。HmiModule編譯后生成一個可執行文件,PLCManager編譯后生成一個實時可執行文件,NISTTaskgeneratorModule編譯后生成一個動態鏈接庫,AxisGroupModule編譯后生成一個實時動態鏈接庫。雙擊HmiModule編譯生成的可執行文件,即可打開人機界面。在界面上依次點擊“啟動SERCOS”、“寫參數”和“運行CNC”按鈕,即可啟動實時進程。之后,分別切換至手動和自動模式,測試相應的系統功能。在自動模式時,點擊“讀G代碼”按鈕,可以打開數控指令文件,之后點擊“送G代碼”按鈕開始傳送,最后點擊“循環”按鈕開始實際加工。
3 結束語
本文為數控技術實踐教學設計了一個基于開放式軟數控系統的實驗平臺,并進行了開發與調試。本實驗臺可完成數控系統源代碼編寫、系統調試、系統運行和實際加工等實驗內容。通過源代碼的編寫、編譯和調試,能夠使學生掌握數控系統底層的運行原理,而實際加工實驗能夠完成傳統數控技術實踐課程的內容。本文所開發的實驗教學平臺具有開放性,可以通過改寫和添加源代碼與軟件模塊的方式增加新的功能,為各種新型數控系統功能的實踐教學提供了基礎。
參考文獻
[1]M. Babb. The Foundation of Open Architecture Control System[J]. Control Engineering,1996,43(1):75-76.
[2]Richard Zurawski. Open System Architecture for Controls within Automation[J].The Industrial Information Technology Handbook,2005(104):1-3.
[3]李霞.開放式軟件化數控系統相關技術的研究與實現[D].哈爾濱工業大學,2005:1-12.
[4]G. Pritschow,Y. Altintas, F. Jovane. Open Controller Architecture-Past,Present and Future. CIRP Annals-Manufacturing Technology,2001,50(2):463-470.
作者簡介:韓德東(1962-),男,黑龍江哈爾濱人,哈爾濱工業大學機電工程學院工程師,學士,研究方向:數控技術、數字化制造、模具CAD/CAM技術等。