華中數(shù)控系統(tǒng)的軟件結(jié)構(gòu)如圖1所示。圖中虛線以下的部分稱為底層軟件,它是華中數(shù)控系統(tǒng)的軟件平臺,其中RTM模塊為自行開發(fā)的實時多任務(wù)管理模塊,負責(zé)CNC系統(tǒng)的任務(wù)管理管理調(diào)度。NCBIOS模塊為基本輸入輸出系統(tǒng),管理CNC系統(tǒng)所有的外部控制對象,包括設(shè)備驅(qū)動程序(I/O)的管理、位置控制、PLC控制、插補計算以及內(nèi)部監(jiān)控等。RTM和NCBIOS兩模塊合起來統(tǒng)稱NCBASE,如圖中雙點畫線框所示。圖中虛線以上的部分稱為過程控制軟件(或上層軟件),它包括編輯程序、參數(shù)設(shè)置、譯碼程序、PLC管理、MDI、故障顯示等與用戶操作有關(guān)的功能子模塊。對不同的數(shù)控系統(tǒng),其功能的區(qū)別都在這一層,系統(tǒng)功能的增減均在這一層進行;各功能模塊通過NCBASE的NCBIOS與底層進行信息交換。
圖1 華中數(shù)控裝置軟件結(jié)構(gòu)
(二)NCBASE的功能
1.實時多任務(wù)的調(diào)度
該功能由RTM模塊實現(xiàn)。調(diào)度核心由時鐘中斷服務(wù)程序和任務(wù)調(diào)度程序組成。如圖2所示。根據(jù)任務(wù)要求的調(diào)度機制(采用優(yōu)先搶占加時間片輪轉(zhuǎn)調(diào)度)和任務(wù)的狀態(tài),調(diào)度核心對任務(wù)實行管理,即決定當(dāng)前哪個任務(wù)獲得CPU的控制權(quán),并監(jiān)控任務(wù)的狀態(tài)。系統(tǒng)中各個任務(wù)只能通過調(diào)度核心才能運行和終止。圖2描述了各個任務(wù)與調(diào)度核心的關(guān)系,圖中的實線表示從調(diào)度核心進入任務(wù)或任務(wù)在一個時間片內(nèi)未能運行完而返回調(diào)度核心的狀態(tài);圖中虛線表示任務(wù)在時間片內(nèi)運行完畢返回調(diào)度核心的狀態(tài)。
圖2 多任務(wù)調(diào)度圖
2.設(shè)備驅(qū)動程序
對于不同的控制對象,如加工中心、數(shù)控銑床、數(shù)控車床、數(shù)控磨床等,硬件的配置可能不同,而不同的硬件模塊其驅(qū)動程序也不同。華中數(shù)控系統(tǒng)就很好的解決了這個問題。在配置系統(tǒng)時,所有的硬件模塊的驅(qū)動程序都要在NCBIOS的NCBIOS.CFG中說明(格式為:DEVICE=驅(qū)動程序名)。系統(tǒng)在運行時,NCBIOS根據(jù)NCBIOS.CFG的預(yù)先設(shè)置,調(diào)入對應(yīng)模塊的驅(qū)動程序,建立相應(yīng)的接口通道。
3.位置控制
位置控制是NCBIOS的一個固定程序,主要是接受插補運算程序送來的位置控制指令,經(jīng)進行螺距誤差補償、傳動間隙補償、極限位置判別等處理后,輸出速度指令值給位置控制模塊。
4.插補器
華中數(shù)控系統(tǒng)為多通道(可為四通道)數(shù)控系統(tǒng),每個通道都有一個插補器,相應(yīng)就創(chuàng)建一個插補任務(wù)。其任務(wù)主要是完成直線、圓弧、螺紋、攻絲及微小直線段(供自由曲線和自由曲面加工用)等插補運算。
5.PLC調(diào)度
PLC調(diào)度的主要任務(wù)是:故障的報警處理;M、S、T處理;急停和復(fù)位處理;虛擬軸驅(qū)動處理;刀具壽命管理;操作面板的開關(guān)處理;指示燈及突發(fā)事件處理等。
6.內(nèi)部監(jiān)控
實現(xiàn)對CNC系統(tǒng)各部分故障的監(jiān)控。










