您現在的位置:
中斷型結構模式的CNC軟件各級中斷功能介紹(FANUC系統舉例)

中斷型軟件結構的特點是除了初始化程序之外,整個系統軟件的各種功能模塊分別安排在不同級別的中斷服務程序中,整個軟件就是一個大的中斷系統。其管理的功能主要通過各級中斷服務程序之間的相互通訊來解決。

一般在中斷型結構模式的CNC軟件體系中,控制CRT顯示的模塊為低級中斷(0級中斷),只要系統中沒有其他中斷級別請求,總是執行0級中斷,即系統進行CRT顯示。其他程序模塊,如譯碼處理、刀具中心軌跡計算、鍵盤控制、I/O信號處理、插補運算、終點判別、伺服系統位置控制等處理,分別具有不同的中斷優先級別。開機后,系統程序首先進入初始化程序,進行初始化狀態的設置、ROM檢查等工作。初始化后,系統轉入0級中斷CRT顯示處理。此后系統就進入各種中斷的處理,整個系統的管理是通過每個中斷服務程序之間的通信方式來實現的。

1  FANUC-BESK 7CM CNC系統的各級中斷功能

例如FANUC-BESK 7CM CNC系統是一個典型的中斷型軟件結構。整個系統的各個功能模塊被分為八級不同優先級的中斷服務程序,如表1所示。其中伺服系統位置控制被安排成很高的級別,因為機床的刀具運動實時性很強。CRT顯示被安排的級別最低,即0級,其中斷請求是通過硬件接線始終保持存在。只要0級以上的中斷服務程序均未發生的情況下,就進行CRT顯示。1級中斷相當于后臺程序的功能,進行插補前的準備工作。1級中斷有13種功能,對應著口狀態字中的13個位,每位對應于一個處理任務。在進入1級中斷服務時,先依次查詢口狀態字的0~12位的狀態,再轉入相應的中斷服務(表2)。其處理過程見圖1。口狀態字的置位有兩種情況:一是由其他中斷根據需要置1級中斷請求的同時置相應的口狀態字;二是在執行1級中斷的某個口子處理時,置口狀態字的另一位。當某一口的處理結束后,程序將口狀態字的對應位清除。

1  1級中斷各口處理轉換框圖

2級中斷服務程序的主要工作是對數控面板上的各種工作方式和I/O信號處理。3級中斷則是對用戶選用的外部操作面板和電傳機的處理。

4級中斷最主要的功能是完成插補運算。7CM系統中采用了“時間分割法”(數據采樣法)插補。此方法經過CNC插補計算輸出的是一個插補周期T8ms)的F指令值,這是一個粗插補進給量,而精插補進給量則是由伺服系統的硬件與軟件來完成的。一次插補處理分為速度計算、插補計算、終點判別和進給量變換四個階段。

5級中斷服務程序主要對紙帶閱讀機讀入的孔信號進行處理。這種處理基本上可以分為輸入代碼的有效性判別、代碼處理和結束處理三個階段。

6級中斷主要完成位置控制、4ms定時計時和存儲器奇偶校驗工作。

7級中斷實際上是工程師的系統調試工作,非使用機床的正式工作。

中斷請求的發生,除了第6級中斷是由4ms時鐘發生之外,其余的中斷均靠別的中斷設置,即依靠各中斷程序之間的相互通訊來解決。例如第6級中斷程序中每兩次設置一次第4級中斷請求(8ms);每四次設置一次第12級中斷請求。插補的第4級中斷在插補完一個程序段后,要從緩沖器中取出一段并作刀具半徑補償,這時就置第1級中斷請求,并把4號口置1

2  FANUC-BESK 7CM CNC系統1級中斷的13種功能