工業PC機軟、硬件資源的豐富使得數控系統的開發更加方便快捷,系統的開發也不再受內存大小等硬件資源的限制。但就目前而言,這些優勢均是以犧牲控制系統的實時性為代價的,因為在多數情況下,以工業PC機目前的速度是不能兼顧或很好地完成系統維護及實時控制這兩項任務的。針對以上矛盾,許多開發商采取了一種折衷的方案,即采用基于雙CPU的數控系統。在該種類型的數控系統中,上位機即工業PC機完成系統維護、加工代碼讀取、譯碼,刀補、刀具位置顯示等任務;下位機是一種連接于系統擴展槽內、能夠與上位機進行實時通訊、獨立控制的微機,用于實現對系統實時加工的控制。這樣,數控系統兼顧了系統維護及實時控制兩個方面,滿足了數控系統的要求,也實現了數控系統的開放化。
本文將簡單介紹一下基于這種思想而開發的熱切俐機數控軟件系統,即上位機軟件系統的構成及開發。
1 控制系統的組成
數控熱切割機床是數控機床的一種,它具有一般數控機床的特點,能根據數控加工程序,自動完成從點火一預熱一通切割氣體一切割一熄火一返回原點的整套切割過程。但熱切割機床又有別于一般數控金屬切削機床,它是利用氣體的高溫火焰把鋼板割縫加熱到熔融狀態,用高壓氧吹透鋼板實現切割,而不象金屬切削機床那樣,用金屬切削工具與工件剛性接觸來進行切削加工。
本文所研究的數控熱切割機系統采用上、下位機控制的形式。控制系統的組成見圖1。
系統中,上位機實現系統的各種維護任務并負責將加工數據傳送到指定的端口或內存范圍;下位機根據上位機的加工數據控制電機實現實時的加工控制。在本系統中,下位機采用深圳市摩信科技有限公司開發的MCT8000S4系列控制器,上位機獲取加工數據后將其輪流放入特定的兩個結構相同的內存空間,下位機實時地讀取該空間中的加工數據,這些數據直接應用于電機運動的控制。該系列的控制卡已經將插補功能內置,只需要上層提供相應的刀補后的加工數據和控制數據即可。
上位機的控制系統是基于PC機和Windom平臺的。其具有全中文的人性化操作界面,可以進行任意形狀的圖形加工,還可以根據用戶需要,配置自動調高、自動預熱、自動點火、自動穿孔、自動噴粉劃線CAD自動編輯套料等功能,開發平臺采用VC++。
2 任務的劃分
數控火焰切割機的任務分為實時任務及非實時任務陌種。實時任務又分為實時隨機任務和實時周期任務;非實時任務分為非實時隨機任務和非實時周期任務。實時任務是和加工的實時控制密切相關的任務,尤其是實時周期任務;非實時任務是系統管、維護及輔助的任務。
上位機的非實時隨機任務有:參數輸入任務、命令輸入任務、程序解釋及刀具半徑補償任務、程序預處理任務,文件服務任務、系統設置任務。系統幫助任務,故障診斷任務及輸人事件處理任務。這些任務的產生及處理是非實州的,也是隨機的。這些任務由Windovcs系統提供的消息映射機制來完成。
上位機的實時周期任務有:控制參數顯示任務,加工動態顯示任務、加工參數顯示任務、加工程序顯示任務及加工數據送人任務。這些任務主要是由系統定義一系列的不同優先級的線程實現,對訪問有次序的線程采取制約機制,限制運行次序及訪問權限。
熱切割機數控系統上位機軟件結構見圖2。
圖2 熱切割機數控系統上位機軟件結構
3 數據流程
數控火焰切割機的數控系統和一般的數控系統一樣。必須完成譯碼(加工代碼解釋)、代碼預處理(刀補等)、插補準備,插補等兒個基本過程來實現加工。由于該系統采用了標準的運動控制卡,插補功能由運動控制卡的硬件電路來完成,所以上位機軟件系統只需要提供相應的加工數據即可,如圖3所示。下面簡要說明一下其數據的流程:零件的加丁程序在經過丁NC程序準備后,以ISo標準格式放人NC程序緩沖區中,首先經過NC程序的譯碼操作,將代碼中的加工及控制信息提取出來,以約定的格式存放于預刀補緩沖存儲區BS中;刀補后的數據放人刀補工作緩沖區AS中,然后將AS的內容置為可直接用于下位機讀取的數據后放人刀補輸出緩沖區OS中,下位機會循環檢測該區域的數據是否準備好,準備好后讀取數據控制電機及相關設備運行。在沒有刀補的情況下,將BS區中的軌跡信息經過簡單處理后直接放人刀補工作緩沖區AS中。
在有刀補處理的情況下,只用一個BS緩沖區不能夠滿足實際刀具中心軌跡計算的需要,因此在BS區和AS區之間設立刀補緩沖區CS。BS、CS和AS各自包含一個計算區域,這樣,在系統啟動后,第一段加工程序先被讀人BS,經過刀補任務處理后,在BS經過數據計算的第一段編程軌跡被送到CS中暫存。接著代碼解釋任務又將下一段加工程序讀人13,5中。由刀補任務計算出第二段程序的編程軌跡。接著。對第一、二兩段編程軌跡的連接方式進行判別,根據判別的結果,對Cs中的第一段編程軌跡做相應修正。修正結束后,順序地將修正后的第一段編程軌跡由CS送入AS,第二段編程軌跡由Bs送人CS。隨后,由插補準備任務將AS的內容處理成可直接用于插補的數據送到OS區。
在讀入加工程序控制數據的同時,系統還要求讀人界面上用戶對系統的設置,這些設置構成了系統的另一個控制參數表。這些控制參數中,需要在系統啟動時進行總體設置,也可以在程序運行期間零件加工完成后進行設置,如軟件限位、最高速度等。
4 系統模塊的劃分
上位機的控制系統按用戶的需要,共分為豐框架、界而、譯碼。刀補。幽形庫、仿真幾個模塊。
主框架是控制系統軟件本身的構架,它不但包含軟件本身的框架類、數據處理類,視圖類以及框架本身生成的必要資源(工具條,邊框等),還承載了系統后加入的各種資源以及動態連接庫。系統的開發是分成幾個模塊進行的。這樣消啟、的轉接收和調用功能只能分配到各個功能實現類的管理框架中去。系統的維護采用了集中的原則,即只要主框架可以處理的消息和任務就要盡量集中到主框架中去處理。例如,屬性框、對話等資源又是一種規模較小的框架,他們不但負責數據讀入的一系列處理,還負責將相應的消息發送到主框架中去并啟動主框架的新任務,以便主框架進行正確的處理。這樣做的好處是系統結構清晰、分配有序、便于二次開發。該系統開發了十個界面:即主界面、手工移動界面、定程移動界面,極限移動界面、鋼板準直界面、程序編輯界面、多件加工界面、自動加工界面、系統設置界面及診斷界面,并實現了各界面內部切換功能、相應工具條的顯示隱藏(系統消息及自定義消息結合)及對應功能的調用。
譯碼模塊是對加工數據進行處理的第一個模塊。譯碼數據的正確與否直接關系到系統能否正常運行。譯碼模塊處理的是標準的G代碼,該模塊中集成了對數控代碼的讀人、錯誤檢查、加工軌跡參數的讀取與規范。控制參數的讀取與存儲等功能。該模塊中的加工及控制信息均存在于~個全局的模板中,便于后繼的處理及訪問。
刀補模塊采用c功能的刀具半徑補償算法,因c刀補基于矢量的計算原理。所以能夠很好地解決工作輪廓加工過程中兩程序段間的轉接過渡問題。這種補償技術通過計算和判斷轉接類型(伸長型,插入型、縮短型)、曲線連接形式及刀補狀態,再加上譯碼的數據來實現數據的處理。
圖形庫是數控火焰切割機必不可少的組成部分,在圖形庫中存在大量的標準工件。這些標準工件為相同及相似工件的加工提供了便利。圖形庫還具有編輯套料功能,能對標準件的尺寸、數量、位置等進行編輯,還可以將不同的標準件臺并在同一個鋼板中,并自動生成加工代碼,功能十分強大。
仿真模塊是在不啟動電機的情況下而實現加工過程模擬的繪圖模塊。浚模塊與主框架的說類密切聯系。是由具體繪圖函數、尺寸計算函數以及插補運竹函數組成戰的。該模塊的實現原理是:在土捱架的視類中定義一塊視圖區域,該區域以外的視圖均不允獲得繪制圖形,按照一定的算法,根據譯碼后的數姑來獲得當前鋼板零件的大小;按照鋼板的人小及繪圖區域大小設定比例尺;由編譯后加工及移動數據,經譯碼運算后,將各曲線按照插補方式分成小直線段,再按一定速度有序地繪出,最終繪圖的結果即為所加工的鋼板,繪圖次序即為加工次序。
5 系統功能的定義
該數控系統具有手動控制、程序編輯、自動加工、零件選項。套料、系統設置、監控診斷機系統幫助等功能。
手動控制中實現了點動、連續移動,定長移動、回零等功能。用于系統定位及實現簡單加工。程序編輯中實現了加工程序的打開、新建、編輯、存儲及圖形預顯等功能,用于對G代碼文件的編輯處理。
自動加工功能對程序編輯處理后的G代碼文件實現加工,它也包含了一些對主軸的控制,如停止加工、暫停加工、斷點記憶功能等。
零件選項主要是針對經程序編輯處理后文件的圖形進行排列和轉動,并可以形成新的G代碼文件。
套料功能中實現了不同零件間的組合、拆分、相對轉動,排列和切割順序的定義等。
系統設置中實現對系統一些全局參數的設置,其中包括系統運行需要的參數和系統調試需要的參數兩類,只有這兩類參數的正確設置才能夠保證系統的正常運行。
監控診斷包含了對系統全部硬件端口,傳感器和電機的檢測功能,另外,還具有一些系統維護的必要軟件工具,如殺毒程序等。
6 結論
本文介紹了一種基于PC機和Windows平臺,用于火焰切割、等離子切割和激光切割的開放式熱切割數控系統的有關構成、上位機任務的劃分、加工數據內容。該控位機系統的開發已接近尾聲。本系統的研制成將提升切割機的整機性能,提高切割機的性能價格比,增強其在市場上的競爭實力。
(審核編輯: 智匯胡妮)
分享