複製鏈接
請複製以下鏈接發送給好友

數控語言

鎖定
數控語言是一種專用程序設計語言,它既具有普通程序設計語言的特點,又具有專用性。它的基本運算單位是語句,語句具有説明型的和執行型的。語句的書寫是通過基本符號的各種合法組合來完成。
中文名
數控語言
外文名
NC language
基本運算單位
語句
適用於
數控機牀的自動控制
基本組成
説明、語句和表達式
相關書籍
《計算機應用與應用數學》

數控語言説明

數組説明
數組説明的形式是:
形式
RESRV/數組表
其中數組表是由以逗點分開的數組段組成數組段是由數組標識符,後面接一逗點,再跟以算術表達式或算術變量組成。 [1] 
數控語言僅僅適用於數控機牀的自動控制,不能用來作科學計算或其他目的。
數控語言主要組成部分:説明、語句和表達式。
過程説明
過程説明的形式是:
形式
過程首部
過程體
過程結束符
過程首部的形式是:過程標識符=MACRO/形參表
過程體是:一系列語句
過程結束符是:TERMAC
形參表示形式可以是:(1)空;(2)形參表;(3)形參 [1] 
詞彙表等價説明
詞彙表等價説明的形式是:
形式
SYN/等價表
其中,等價表的形式是:
標識符,詞彙表字,標識符,詞彙表字,...,二標識符,詞彙表字。
標識符和詞彙表字構成一對,在以後源程序中如果出現某一對偶中的標識符,就表示那個標識符的一切作用都和其對偶中的詞彙表字一樣。 [1] 
刀具補償計算説明
(1)刀具規格説明:
形式
CUTTER/r
CUTTER是刀具説明符,r是刀具半徑值。
(2)公差規格説明:
形式
公差説明/數
其中公差説明可以是INTOL、UOTTOL、TOLER,他們分別表示允許刀具切割位置是落在工件裏面、外面的公差和重新建立公差,數是允許的最大公差數。 [1] 

數控語言語句

賦值語句
賦值語句的形式是:
形式1
變量=算術表達式
形式2
變量=幾何表達式
其中,算術表達式與通常算術表達式類似,而幾何表達式是這個語言的獨特部分,它在後面單獨列出。
刀具定位語句
(1)明顯定位語句
形式1
定位動詞/定位方式
形式2
GODLTA/△X△Y
其中,定位動詞有GOTO、FROM,表示刀具控制點走到那個位置和從那一個位置開始。
定位方式是:①幾何表達式②幾何變量③數,指出運動的位置
形式2指出刀具控制點在原來座標、位置上各增加2個改變量△x 和△y,增加改變量後的新座標位置是x+△x,y+△y。
(2)開始連續運動語句
形式1
GO/限定幾何表達式
形式2
GO/限定幾何表達式,限定幾何表達式
限定幾何表達式是下列形式之一:
①刀具接觸説明符 幾何變量
②刀具接觸説明符 幾何表達式
③幾何變量
④幾何表達式
刀具接觸説明符是下列形式之一:
①TO 表示刀具與某線切於內側
②ON 表示刀具在曲線上
③PAST 表示刀具與某線切於外側
④TANTO 表示刀具與某線相切
(3)中間連續運動語句
形式
連續運動字/傳動曲線
其中,連續運動字為:
GO LET (左轉) GO RGT(右轉)
GO UP(向上) GO DOWN (向下)
傳動曲線是幾何變量或幾何表達式之一
(4)結束運動語句
它的形式與中間連續運動語句一樣,只是它的後面除了FINI語句之外再沒有別的語句。FINI表示整個程序的結束。 [1] 
時序控制語句
(1)算術轉向語句
形式1
JUMPTO/標號
形式2
IF(E) 標號1,標號2,標號3
形式1:表示遇到這樣的語句的時候,程序無條件地跳到標號所指地語句去
形式2:表示算術表達式E執行完之後,由其值決定轉移的路線。如果E<0,則轉到標號1;如果E=0,轉到標號2;如果E>0,轉到標號3。
(2)結束語句
形式
FINI
當遇到這個語句時,整個程序結束。
過程語句
形式1
CALL/過程標識符
形式2
CALL/過程標識符,形參=實參,...,形參=實參
其中,第2種形式的形參是過程説明中定義的形參、實參是變量、數或詞彙表中的字。
過程語句是調用同名的過程説明。 [1] 
輸入/輸出語句
形式
輸入/輸出控制字
/設備説明符,I-O表
其中輸入輸出控制字是READ(讀)、PUNCH(穿孔)、PRINT(打印),是用來指明譯備種類,設備説明符指出設備編號,一種設備可以有幾個編號,如同是打印機可以有三台,那它就有三個不同編號。I-O表表示輸入輸出變量標識符,也可用表示全部輸入輸出。 [1] 

數控語言表達式

算術表達式
算術表達式與
類似。
幾何表達式
形式
幾何形式/參數表
幾何形式有:
POINT(點),PLANE(平面),CIRCLE(圓),LINE(線),CYLNDR(圓柱),ELLIPS(橢圓),HYPERS(雙曲),CONE(圓錐),SPHRE(球面),QADRIC(二次曲線)等
參數表是:
數;變量;參數表,修飾字;修飾字,參數表;參數表,參數表;(表達式)等
幾何形式表示幾何元素是什麼類型,由參數表給出幾何形式的位置、大小,以和及其它幾何元素之間的關係。修飾字表示幾何元素和它們之間的關係及其相對位置。 [1] 

數控語言解釋程序

數控程序由一個個程序段組成,一個程序段由若干個指令字組成,每個指令字是控制數控系統的一個具體指令,它由指令字符 (地址符) 和數值組成。指令字和程序段分別如圖 1 和圖 2 所示。 [2] 
圖1 指令字 圖1 指令字
圖2 程序段 圖2 程序段

數控語言文法分析

(1)詞法分析
詞法分析是數控程序解釋流程的第一個階段,其主要任務是從左到右逐個字符地讀入數控程序,對構成數控程序的字符流進行掃描和分解,從而識別出一個個單詞,用於語法分析。 這裏所謂的單詞是指邏輯上緊密相連的一組字符,這些字符具有集體含義,是最小的語法的單位。
(2)語法分析
語法分析的任務是在詞法分析的基礎上將單詞系列分解成各類語法短語 ,並判斷它們的組合是否是數控程序的正確句子。 語法分析所依據的是數控語言的語法規則 ,它是數控語言解釋程序的核心部分。
語法分析的工作原理是採用計算機編譯原理中的 LR(1) 分析法,其實現思想是對輸入符號串從左到右進行掃描,並將輸入符號逐個移入一個後進先出棧中,邊移入邊分析,一旦棧頂符號會呈串形成文法的某個句型的句柄時, (該句柄對應某個產生式的右部),就用該產生式的左部非終結符代替相應右部的符號串,這稱為一步歸約,重複這一過程直到歸約到棧中只剩下文法的開始符號時則為分析成功,即確認輸入串是該文法的一個句子。
(3)語義解釋
語義解釋的任務是將數控語言程序解釋成底層模塊能夠識別的目標程序,它是數控語言解釋程序中具體實現各種數控語句功能的模塊,目標程序的代碼格式由底層模塊指定。 [2] 

數控語言實現

數控語言解釋程序由詞法分析、語法分析、語義解釋、表格管理和出錯處理等部分組成。詞法分析、語法分析和語義解釋前面已經介紹。表格管理的任務是將數控程序的各種信息保存在不同的表格裏,並負責在解釋程序的各個階段查找有關表格。 出錯處理的任務是當發現數控程序的錯誤時,報告錯誤的性質和地點。
在實現過程中,用一個類將數控語言解釋的各個階段模塊封裝起來,實現其總體功能,即把數控程序解釋成底層模塊能夠識別的目標程序。 [2] 
參考資料
  • 1.    焦鳳. 數控語言介紹[J]. 信息與控制, 1979(z1):155-170.
  • 2.    武峯, 陳少艾, 胡學梅. 支持PCNC的數控語言解釋程序研究[J]. 信息技術, 2001(1):26-27.