Gerber 文件格式(一):RS-274X 語法


從《Gerber文件格式簡介》中我們已經知道,Gerber文件的編碼可以是ASCII、EBCDIC、EIA、ISO 碼等。但RS-274X肯定是ASCII碼的,並且是7位ASCII碼。

從某種意義上來說,RS-274X文件(一般后綴為GBX,GBR等)是一種腳本文件,它用於指示光繪機進行各種繪制或運動形為。

對於不同的應用,對RS-274X文件可能需要被轉換成PDF,DXF或BMP等,其中轉換成BMP過程,我們稱之為柵格化,事實上,將RS-274X在屏幕上顯示就是柵格化的過程。

 

一、字符編碼

ASCII 7bit

二、數據塊(Data Blocks)

RS-274X 文件是由數據塊組成的,每個數據塊都是以(*) 結尾,每個數據塊都包括了一個或多個參數,如示例

X0Y0D02*
X10000Y0DO1*

為了增強可讀性,建議相關的數據塊在一行(因為一個數據塊可以在多行),

三、數據類型

數據類型主要包括以下幾種類型,坐標數據(Coordinate Data),功能指令(Function Codes) ,參數(Parameters)

四、坐標數據

坐標數據主要是定義在平面的中點數據,在RS274D的術語中稱為地址。

坐標數據可能是:

1)X和Y坐標定義的點,

2)相對於X,Y方向的便移量數據,稱為I,J數據

FS(Format Specification) 格式定義指示了數字如何被解釋的。

坐標系采用右手坐標系。

坐標是模態(modal) 的,如果一個X被忽略,則X將保留上一次的X坐標值,如果在當前層的第一個X被忽略,因為沒有上一次的X的坐標值,那么X坐標將被視為零。類似地,Y坐標也是這樣處理的。

偏移量不是模態上的,如果I或J被忽略,則缺省值為零。

注意:

GERBER的讀者有時候會錯誤地處理缺省值零。為了清晰和魯棒性,推薦總是顯式地指定第一個坐標(即便就是零,也顯式指定),這樣就不用考慮缺省的零。

示例:

1:  X100Y200* 點 (+100, +200)
2:  Y-300* 點 (+100, -300)
3:  I200J100* 平移 (+200, +100)
4:  X300Y200I150J50* 點(+300, +200) 且 平移(+150, +50)
5:  X+100I-50* 點 (+100, +200) 且 平移 (-50, 0)

 

五、功能指令(Function Codes):

功能指令描述的是如何解析相關聯的坐標數據。如,畫一條線或畫一個圓。(通常,但不是所有,這些代碼是延續已經過時的RS-274D的格式,它們被稱為字(words)或代碼(codes))。

G74*

每個指令都會影響到其后的數據塊,直到遇到另外一個相同類型的代碼或生成新層時結束。我們稱這種持續性的活動為模態(modal)。例如G02指示的是順時針圓弧插補(CCI, clockwise circular interpolation)。在遇到另外一個插補指令或生成新層之前,該指令后的所有坐標數據都被解釋為順時針圓弧插補。指令的細節描述后序再討論。

六、參數 (Parameters)

參數定義了整個圖像或單層的各種特征。它們被用於解釋其他的數據類型,(通常,這些參數被稱為Mass 參數)。控制整個圖像的參數通常會放在文件的開始處。產生新層的參數被放置在文件恰當的位置。參數由兩個字符加一個或多個緊隨其后的可選修改符組成。參數的限定符號為“%”.每個包含在數據塊內的參數必須以“*”結束。並且參數限定符必須立即跟在塊結束符后面,不允許插入空格。

例如:

%FSLAX23Y23*%

參數必須是在成對的參數限定符內,限定符內可以放一個或多個參數,兩個限定符之間最大的字符數為4096個。

例如:

%SFA1.0B1.0*ASAXBY*%

為了提高可讀性,兩個參數間允許換行,如:

%SFA1.0B1.0*

ASAXBY*%

當然,為了簡化和可讀性,推薦每行是只設置一個參數。與參數聯合的所有數值都使用顯式的小數點,如果不使用小數點,數值應當認為是整數。

參數的語法為:

%參數指令<必選修飾符>[可選修飾符]% 

語法 說明
參數指令 (parameter code) 兩個字符的指令,如AD,AM,FS等
必選修飾符(required modifiers) 必須是完整的定義
可選修飾符(optional modifiers) 依賴必選修飾符的定義

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM