計算機數控雕刻控制軟件現狀數控雕刻控制系統是典型的實時系統,系統必須對多種任務進行實時控制。開放體系結構的計算機數控(CNC)雕刻控制系統,為了實現軟件結構的模塊化、可重用性,用戶的易操作性,都采用通用的操作系統。目前,可選用的通用操作系統有很多,如DOS、WINDOWS95/98/NT、OS/2、XWINDOWS界面的UNIX等,而國內流行于PC機的主要操作系統是DOS和WINDOWS95/98兩種。所以,當前的計算機數控(CNC)雕刻控制軟件可分為基于DOS的雕刻控制軟件和基于WINDOWS的雕刻控制軟件。
DOS是單任務的操作系統,這就決定了基于DOS的雕刻控制軟件的單任務特性。當該雕刻控制軟件控制雕刻機進行雕刻時,獨占整個系統資源,用戶無法再利用該機器進行雕刻圖形編輯排版等工作,從而導致效率低下。而且大部分的基于DOS的雕刻控制軟件不支持鼠標操作,使軟件的易操作性大大降低。
WINDOWS95/98是32位無優先級搶先式多任務的操作系統。這就決定了基于WINDOWS的雕刻控制軟件可以和其他應用程序同時工作,而不影響雕刻的精度和效果,大大提高了生產率。同時,基于圖形界面的雕刻控制軟件是WINDOWS的標準軟件,這使得它對用戶來說更加友善和易操作。但WINDOWS下的實時控制一直是個難題,這是因為所有的WINDOWS應用程序都在系統虛擬機環境中運行。調度程序控制WINDOWS程序中每個線程的運行,在WINDOWS95/98中,控制調度有兩種方法:一是它自己內部的方法。這種方法努力提高一個平穩的多任務環境,以便每個線程能同等享有處理器時間。在這種方法下,用戶除了編制良好的線程程序以保證不讓某線程占用太多的處理器時間,別無他法。另一種就是直接調用可能由VxD提供的系統服務。而VxD,中文意義是虛擬設備驅動程序(VirtualDeviceDriver),是按照硬件驅動程序的格式或相類似標準編寫的一種虛擬硬件優先級的設備驅動程序。因為操作系統廣泛地使用VxD來控制多任務操作,這些服務允許VxD查詢有關當前調度環境方面的內容:優先級、時間和VM焦點等,并且可以調節它們。在WINDOWS中,虛擬機調度程序(VMM)和VxD是在Ring0上運行。一般的用戶程序是在Ring3上運行,而Ring3的級別*低,系統可能不支持一些操作。通過編制VxD,改變WINDOWS的Ring0的運行機制,可以解決計算機數控(CNC)雕刻系統的高實時性的要求。
面向對象技術在CNC軟件中的應用面向對象技術簡述面向對象技術是一種與傳統軟件工程的功能方法完全不同的、以對象為中心的方法,它不僅是一種程序設計技術,更重要的是體現了一種思維方法。面向對象編程是一種試圖模仿現實世界模型方法的程序設計技術,它將世界看成是由一組彼此相關并能相互間通信的實體即對象組成。為了在程序中建立對象,必須先說明類。
類是對一組性質相同的對象的程序描述,它由概括了一組對象共同性質的數據和函數組成。在程序運行時通過類建立對象。封裝性、繼承性、多態性是類*重要的幾個特點。
封裝,是把數據和對數據的操作結合形成數據類型,從而較好地實現了數據的抽象。通過封裝,使對象的內部數據得到了保護。繼承,在對象繼承結構上,下層對象繼承上層對象的特征(屬性和操作),因而面向對象方法便于軟件的演化和增量式擴充。多態性,相同的函數調用為不同的對象接受時,可導致完全不同的行為,這種現象稱為多態性。利用多態性,程序中只需進行一般形式的函數調用。函數的實現細節留給接受函數調用的對象。
CNC的面向對象編程CNC軟件的界面編程,用C為CNC編寫界面程序是一件非常痛苦的事情,而做出漂亮的界面就更是難上加難了。用面向對象技術可以輕松的完成這個工作。在VisualC環境下,用它提供的MFC類庫可以在很短的時間里作出非常漂亮的界面。通過對MFC類的繼承,還可進一步擴展其功能,做出風格迥異的界面。更重要的是,通過運用面向對象技術可以達到軟件重用的效果,使CNC軟件的開放性大大提高。所謂軟件重用,在軟件開發中,表現為在環境和功能發生變化時,可以通過一些局部的修改或軟件的重組,以適應新的要求,減少軟件開發中重復開發的問題,提高軟件的生產率。在面向對象的軟件開發方法中,軟件系統由對象組成,而對象又是實現問題本質實體的完整的抽象和反映。面向對象的程序設計的對象、類及類的繼承,對產生可重用軟件設計和實現具有極大的優越性。面向對象的程序設計方法使軟件開發人員擺脫了具體的數據格式與過程,集中精力去研究所處理的對象。這為軟件可重用提供了基礎。
面向對象數控雕刻軟件設計本系統是和一控制卡配合使用,通過計算機來控制雕刻機動作的。該雕刻機是一套基于通用PC的開放式計算機數控雕刻系統,即PCNC.進一步說,屬于全軟件型PCNC模式,CNC的全部功能處理工作全由通用PC的CPU進行,并通過插在PC擴展槽中的控制卡對電機進行控制動作。它的工作過程大致是這樣的:雕刻控制軟件讀入標準數控代碼文件(可以是軟件自動生成,也可以是手工完成),系統在分析該文件后,將該數控代碼文件描述的加工圖形以合適的比例顯示在計算機顯示器上。對于某些細節,用戶也可通過放大工具進行放大顯示,運用縮小工具用戶可看到整個圖形的概貌。如果是三維浮雕,用戶還可用旋轉、平移等工具從各個角度進行觀看。
通過仿真,用戶可以非常清楚地看到雕刻效果,哪些達到了要求,哪些沒有達到要求(欠刻、過刻等等),從而及時調整數控代碼文件,避免廢、次品產生。當用戶對仿真效果感到滿意后,即可進入雕刻控制階段。系統將數控代碼轉化為具體的控制命令,發送到控制卡上,從而控制步進電機動作,完成相應的雕刻工作。用戶也可跳過仿真階段直接進入控制雕刻階段,進行雕刻加工。為了提高生產率,降低廢、次品率,本雕刻控制軟件還提供一個選擇模塊進行修補性選擇加工,主要用于雕刻過程中由于刀具磨損或其他偶然因素造成的欠刻現象。用戶可以通過鼠標在顯示圖形上選定一個區域進行選擇雕刻,避免了整體返工或報廢的情況,大大提高了生產率,具有極強的實用性。
本系統采用前后臺結構,前臺完成插補、步進電機控制、實時監控等實時性要求很強的功能,后臺任務則包括數控代碼分析、雕刻圖形顯示、雕刻數據分析等實時性較差的功能。
結論本系統作為商品化產品數控雕刻系統的雕刻控制軟件部分,經過了大量的實際運行,效果良好,運行穩定,操作簡便明了。在本系統中,引入了面向對象技術,整個系統建立在類的基礎上,所以通過類的繼承,使程序具有很強的繼承性和可擴展性,也使程序具有很好的可維護性。在國內,本系統首次將實用的數控雕刻控制軟件運行在WINDOWS95/98操作系統之上,改變了數控雕刻控制軟件運行于DOS平臺上的傳統布局,使數控雕刻控制軟件的效率和易操作性得到了很大提高。