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