隨著計算機(jī)、通訊技術(shù)的飛速發(fā)展,在工業(yè)控制領(lǐng)域,開放式數(shù)控系統(tǒng)的研究和應(yīng)用是必然趨勢。國家計劃發(fā)展委員會與科技部在1999年7月14日發(fā)布的當(dāng)前國家優(yōu)先發(fā)展的高技術(shù)產(chǎn)業(yè)化重點(diǎn)領(lǐng)域指南(目錄)中第八項(xiàng)“制造”的首項(xiàng)列為:適用、先進(jìn)的數(shù)控機(jī)床及開放式數(shù)控系統(tǒng)(總第112小項(xiàng))可見,國家非常重視開放式數(shù)控系統(tǒng)的研究與開發(fā),因?yàn)樗苯雨P(guān)系到我國制造領(lǐng)域的競爭力水準(zhǔn),并進(jìn)而決定了整個工業(yè)基礎(chǔ)是否牢固。開放式數(shù)制系統(tǒng)以其互操作性、移植性、互換性和伸縮性的優(yōu)良特性,方便了各種控制要求的系統(tǒng)集成和*終用戶的使用。
在開放式數(shù)控系統(tǒng)的研究中,用軟件來實(shí)現(xiàn)控制系統(tǒng)的核心功能已經(jīng)具有可行性??刂葡到y(tǒng)的高度實(shí)時性對操作系統(tǒng)提出了特殊的要求,本文將就全軟件開放式數(shù)控系統(tǒng)的操作系統(tǒng)平臺選用進(jìn)行具體分析,進(jìn)而給出具體應(yīng)用實(shí)現(xiàn)。
1數(shù)控系統(tǒng)的實(shí)時性要求目前的數(shù)控系統(tǒng)結(jié)構(gòu),無論是專用系統(tǒng)還是基于PC機(jī),受計算機(jī)性能和操作系統(tǒng)的限制,都采用軟硬件結(jié)合的體系結(jié)構(gòu)。
與開放式控制系統(tǒng)相對應(yīng)的專用封閉控制系統(tǒng)目前還占據(jù)著相當(dāng)大的一部分市場,包括FANUC、AB和SIEMENS的各種數(shù)控裝置。這些控制系統(tǒng)的硬件結(jié)構(gòu)和控制軟件都是專用設(shè)計,為滿足實(shí)時性要求很高的插補(bǔ)運(yùn)算、位置控制,或者采用專用的硬件實(shí)現(xiàn),或者采用多CPU分別對其服務(wù)?;赑C的數(shù)控系統(tǒng)得益于PC機(jī)獲得了一定程度的開放性,系統(tǒng)建立在通用的操作系統(tǒng)之上,主要米用Wimows+DOS的操作系統(tǒng)平臺,因?yàn)槟壳癢indows的產(chǎn)品不支持實(shí)時性要求很高的實(shí)時任務(wù)的調(diào)度管理,只能用于人機(jī)界面和實(shí)時性弱的任務(wù),而位置控制和插補(bǔ)運(yùn)算則通過硬件插板完成。
由于數(shù)控硬件一般都是專用設(shè)計,靈活性差,制約著數(shù)控系統(tǒng)的開放步伐。相反,全軟件控制系統(tǒng)具有方便,靈活的特點(diǎn),充分利用流行的操作系統(tǒng)平臺作支撐,標(biāo)準(zhǔn)的應(yīng)用開發(fā)環(huán)境,具有較好的互操作性、移植性、互換性和伸縮性展現(xiàn)其良好的開放性能。和傳統(tǒng)的基于PC的結(jié)構(gòu)比較,全軟件數(shù)控系統(tǒng)要解決插補(bǔ)運(yùn)算和位置控制的軟件化問題。而所選用的操作系統(tǒng)對強(qiáng)實(shí)時功能的支持成為全軟件數(shù)控的關(guān)鍵。
數(shù)控系統(tǒng)功能按實(shí)時性可以分為強(qiáng)實(shí)時、弱實(shí)時和非實(shí)時。所謂強(qiáng)實(shí)時,即系統(tǒng)必須在給定的時間范圍內(nèi)結(jié)束控制任務(wù)的處理,否則后果不堪設(shè)想。弱實(shí)時是如果系統(tǒng)不能完全保證在允許的時間內(nèi)對控制要求給出反應(yīng),可以遲一些做出反應(yīng)。非實(shí)時則對系統(tǒng)響應(yīng)時間無嚴(yán)格要求。例如,插補(bǔ)運(yùn)算2ms進(jìn)行一次粗插補(bǔ),位置控制1ms進(jìn)行一次采樣,如果操作系統(tǒng)的調(diào)度管理不能及時對它們響應(yīng),則會出現(xiàn)斷續(xù)加工狀態(tài)。雖然譯碼、刀補(bǔ)和速度計算和插補(bǔ)緊密相關(guān),因?yàn)樵谧詣蛹庸み^程中,它們經(jīng)常等待插補(bǔ)運(yùn)算,因此是弱實(shí)時任務(wù)。人機(jī)界面中的顯示更新則一般考慮到人視覺因素,定為100ms以上,屬于非實(shí)時任務(wù)。
2操作系統(tǒng)實(shí)時性的分析在開放式控制系統(tǒng)中使用操作系統(tǒng),首先要考慮操作系統(tǒng)的應(yīng)用范圍,其次是對實(shí)時任務(wù)的支持程度。
所謂開放,就是被廣泛使用與接受。在以往的實(shí)時控制系統(tǒng)中,大都采用如VxWorks,RTOS和QNX等專用的實(shí)時操作系統(tǒng),不符合開放的趨勢和要求。而目前廣泛使用的是Microsoft的Wm(i)ws和Unix的各種版本(Linux除外)但這些操作系統(tǒng)的各種版本又不能完全支持實(shí)時控制,這就構(gòu)成了矛盾的兩個方面。
等特點(diǎn)被廣泛用于工業(yè)控制中,但僅限于弱實(shí)時要求的控制系統(tǒng)中。對于Windows系統(tǒng),它本身就是通過截取DOS的08H中斷來實(shí)現(xiàn)的一個基于消息驅(qū)動的實(shí)時多任務(wù)操作系統(tǒng)。在Widows的消息中,時鐘消息WM-TIMER被認(rèn)為是不太重要的消息,在消息隊(duì)列總是排在*后,而且當(dāng)消息隊(duì)列中有多條WM-TIMER消息時,Wid(ws系統(tǒng)本身會把所有的WM-TMER消息合并成一條WM-TIMER消息。簡單地依靠Windows系統(tǒng)本身的時鐘消息不能完全滿足控制系統(tǒng)的要求。另5以上的系統(tǒng)中,系統(tǒng)本身對硬件實(shí)現(xiàn)了屏蔽,在用戶應(yīng)用程序中直接訪問硬件會產(chǎn)生異常結(jié)構(gòu)。這就說明在Wimbws平臺下的應(yīng)用程序中,直接對硬件訪問是行不通的,不能獲得所需的時鐘精度。
改造,推出了基于實(shí)時控制的WindowsCE.其中WindowsCE3.0的中斷響應(yīng)速度可達(dá)50us,完全可以滿足硬實(shí)時的要求,但它*大的缺點(diǎn)是只支持1/3的Win32API,不能滿足GUI,網(wǎng)絡(luò)的要求,因此不能完全勝任實(shí)時控制。另外,目前討論很多的Linux也是作為實(shí)時控制操作系統(tǒng)平臺的一個希望。美國新墨西哥礦業(yè)技術(shù)大學(xué)開發(fā)了Real―TimeLinux(RT一Linux)但它也有以下幾個缺點(diǎn):安全性不能完全得到保證;以上這些缺點(diǎn)都限制了Linux在實(shí)時控制系統(tǒng)中的應(yīng)用,但隨著Linux研究的深入和應(yīng)用范圍的不斷擴(kuò)大,它作為實(shí)時控制系統(tǒng)的操作系統(tǒng)平臺還是很有希望的。
成熟。而WindowsNT的實(shí)時擴(kuò)展系統(tǒng)的應(yīng)用確是一個好的發(fā)展方向。許多第三方軟件商針對WindowsNT開發(fā)了相應(yīng)的實(shí)時擴(kuò)展,有RadSys公司的Intime和Ven-tuCom公司的RTX等。它們的解決方案都是利用Win-d(wsNT實(shí)現(xiàn)弱實(shí)時控制任務(wù),充分利用NT強(qiáng)大的圖形界面開發(fā)功能、網(wǎng)絡(luò)和安全等等優(yōu)勢,而實(shí)時任務(wù)則依靠實(shí)時擴(kuò)展來實(shí)現(xiàn)。
3WindowsNT+實(shí)時擴(kuò)展平臺上的應(yīng)用實(shí)現(xiàn)我們認(rèn)為開發(fā)全軟件開放式控制系統(tǒng)應(yīng)采用前后臺結(jié)合多重中斷的軟件結(jié)構(gòu)。前后臺的控制系統(tǒng)結(jié)構(gòu)適用于單機(jī)環(huán)境,多重中斷適合于分布式控制環(huán)境。
但在多數(shù)的前后臺結(jié)構(gòu)中,實(shí)時任務(wù)的定時中斷往往只有一個,即插補(bǔ)運(yùn)算、位置控制和PLC都在一個定時周期內(nèi)完成,這樣處理并不能有效地利用系統(tǒng)資源和提高系統(tǒng)性能。本系統(tǒng)設(shè)計為在單機(jī)環(huán)境下運(yùn)行,采用前后臺的結(jié)構(gòu),針對位置控制、插補(bǔ)運(yùn)算和PLC設(shè)置三個實(shí)時定時中斷,優(yōu)先級遞增,中斷周期遞減,可以達(dá)到合理利用資源和提高系統(tǒng)性能的目的。
WindowsNT實(shí)時擴(kuò)展實(shí)現(xiàn)的主要功能是擴(kuò)充了NT的實(shí)時功能和任務(wù)優(yōu)先級別,并由實(shí)時擴(kuò)展的調(diào)度管理接管了NT的調(diào)度管理,同時增加了一系列的實(shí)時控制函數(shù),包括:定時器、中斷、物理內(nèi)存的管理、I/O的操作和信號燈等。
全軟件數(shù)控系統(tǒng)功能分為兩部分:Win32進(jìn)程和實(shí)時擴(kuò)展進(jìn)程。Win32進(jìn)程負(fù)責(zé)人機(jī)界面、診斷、插補(bǔ)準(zhǔn)備等實(shí)時性弱的任務(wù);實(shí)時擴(kuò)展進(jìn)程負(fù)責(zé)位置控制、插補(bǔ)運(yùn)算和PLC等強(qiáng)實(shí)時性的任務(wù)。它們之間通過實(shí)時擴(kuò)展提供的共享內(nèi)存機(jī)制實(shí)現(xiàn)通訊,見。
強(qiáng)實(shí)時任務(wù)的中斷響應(yīng)速度是全軟件開放式數(shù)控系統(tǒng)的關(guān)鍵所在,必須對系統(tǒng)的實(shí)時性進(jìn)行測試,系全軟件數(shù)控系統(tǒng)結(jié)構(gòu)3)測試。運(yùn)行時間為1小時,可以看出:累計*遲中為25.9.中斷響應(yīng)速度和計算機(jī)主頻有關(guān),所以主頻低的數(shù)值較大,主頻高的數(shù)值較小。測試結(jié)果表明都可以滿足強(qiáng)實(shí)時任務(wù)的要求。
4結(jié)論建立在流行操作系統(tǒng)上的全軟件控制系統(tǒng)具有良好的開放性,擺脫了專用硬件體系結(jié)構(gòu)和專用操作系統(tǒng)的束縛,為*終用戶在維護(hù)、使用和系統(tǒng)升級上帶來方便。