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