現(xiàn)實中Cura和Simplify3D是我們使用得最多的兩款切片軟件,而這類型的切片軟件會從CAD模型中“自動”生成G代碼, 所以大部分用戶沒見過或編寫過單行代碼。但是,如果我們想要對3D打印有更深的理解,清楚G-code這種程序語言是很有必要的! 聽起來是不是很有趣?下面讓我們一起來看看如何看懂并理解G代碼、如何自己編寫代碼并在線測試、如何使用切片的G代碼預(yù)覽功能來解決復(fù)雜的版畫~
一、什么是G代碼?
從專業(yè)術(shù)語角度,G代碼是一種數(shù)控編程語言。對于那些知道如何編程的人來說,G代碼是一種簡單的編程語言。這是最基本的代碼,沒有先進(jìn)的結(jié)構(gòu)比如可變因素、條件結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。 當(dāng)屏幕上布滿著密密麻麻的G代碼時,乍一看還蠻令人頭暈?zāi)垦5?。但?dāng)你一行一行細(xì)細(xì)地去思考時,會發(fā)現(xiàn)這些代碼還是挺簡單的!如: - G1 X9.2 Y-5.42 Z0.5 E0.0377
復(fù)制代碼那么我們應(yīng)該如何理解呢?其實G代碼的每一行以命令開頭。在這個例子中,命令是G1,而命令后面出現(xiàn)的代碼段稱為參數(shù)。 每個參數(shù)告訴打印機如何執(zhí)行命令。參數(shù)以英文字母開頭,然后指定一個值。例如,X-9.2意味著終點X坐標(biāo)- 9.2。F3000.0意味著進(jìn)給速度(F)是3000。E0.0377意味著擠出率(E)是0.0377。 你在G代碼中遇到的每一個英文字母都有特定的意義。例如,G表示幾何命令,M表示非幾何命令,x表示x坐標(biāo),y表示y坐標(biāo),f表示進(jìn)給速度等。其實在G-M代碼中有時候還會摻雜一些其它字母標(biāo)示參數(shù)意義,比如T、S、F、P等,具體意義見下表。 (ps:表中 nnn 表示的是數(shù)字)
三、一些常用的G代碼命令
1、G0(快速移動) 執(zhí)行此命令時,噴嘴不會擠壓任何材料。這個命令通常用于將噴嘴迅速地送到打印開始或打印時所需的坐標(biāo)處。 G1命令讓打印頭以指定的速度從當(dāng)前位置移動到由命令指定的協(xié)調(diào)位置,其中速度由進(jìn)給速度參數(shù)F指定。打印頭將以協(xié)調(diào)的方式移動,使得兩個軸同時完成路徑。 3、G17/G18/G19(選擇平面) 4、G20/G21(單位設(shè)置) G21意味著“迅速移動到x = 7毫米和Y = 18毫米”。 G28命令讓機器返回參考點,如返回初始位置: 絕對值指令讓機器將坐標(biāo)解釋為絕對坐標(biāo),這意味著一個命令:將機器頭移動到坐標(biāo)x = 10。 增量值指令與絕對值指令相反,它讓機器將坐標(biāo)解釋為相對坐標(biāo)。如果機器當(dāng)前是x = 10,則以下命令是告訴機器從當(dāng)前位置向X方向移動10個單位。在操作結(jié)束時,機器頭將位于坐標(biāo)x = 20處。 G2讓機器從其當(dāng)前位置開始順時針移動,端點由坐標(biāo)X和Y指定。旋轉(zhuǎn)中心由參數(shù) I 確定,它表示旋轉(zhuǎn)中心的當(dāng)前位置的X偏移量。J表示旋轉(zhuǎn)中心的當(dāng)前位置的Y偏移量。 就像G2命令,G3命令創(chuàng)建一個圓周運動,但它是逆時針方向。 現(xiàn)實中的G代碼文件,除了G代碼命令和參數(shù),它還包含用淺顯的英語寫的別的東西。 其實“;”后面的內(nèi)容為解釋性語句,即注釋,固件會忽略其內(nèi)容。為了減少通信量,可以把注釋信息都去掉。 大多數(shù)的G代碼程序包含三個重要部分。第一部分打印過程中初始化打印機。第二部分指示打印機打印模型。第三部分在打印完成后將打印機重置為默認(rèn)配置。具體如下 在打印開始之前需要執(zhí)行某些任務(wù)。例如,我們需要加熱打印床,加熱擠出機,清洗噴嘴,將噴嘴移動到起始位置等。這些任務(wù)是所有程序的第一部分。 第一行將坐標(biāo)設(shè)置為絕對坐標(biāo)。第二行設(shè)置擠出機的擠出率為絕對值。第三行打開風(fēng)扇,但設(shè)置速度為0,這基本上意味著風(fēng)扇關(guān)閉。第四行設(shè)置床溫為100度。第五行是指,在這種情況下,打印機等待床溫達(dá)到期望值100℃。 2、打印階段 因此,打印階段包括在X-Y平面移動(印刷一層),然后在Z方向移動(移動到下一層)隨后在X Y平面再移動(打印下一層)。具體如下: 最后,當(dāng)打印結(jié)束時,最后的一些G代碼行會將打印機重置到默認(rèn)狀態(tài)。例如,噴嘴回到原點,加熱關(guān)閉(無論是熱床或是擠出機)和電機禁用。
六、輸入和輸出
當(dāng)你點擊您的計算機上的“打印”按鈕時,3D打印軟件開始發(fā)送指令到打印機,一次一行。打印機執(zhí)行指令并反饋給計算機。如果反饋的指示沒有錯誤,則計算機將發(fā)送要執(zhí)行的下一行代碼。打印機的反饋通常遵循以下格式: • ok 意味著沒有檢測到錯誤。這提示計算機發(fā)送的G代碼的下一行到打印機。 • 兩個感嘆號(?。。┮馕吨布e誤。在這種情況下,機器立即關(guān)閉,打印作業(yè)中止。 其中:T表示擠出機溫度,B表示床層溫度。如果機器沒有溫度傳感器,則-273將作為一個值被返回。對M114和M117(查看文末附錄二可查看每一個G代碼命令的意義)命令坐標(biāo)反饋,反饋的格式會是: 在復(fù)雜的3D模型打印中,成功與失敗的關(guān)鍵在于是否會利用G代碼預(yù)覽功能。一般來說,當(dāng)你想打印一個復(fù)雜的三維模型時,我們最好是使用G代碼查看器,檢查每一步的打印步驟。 附錄1:兼容性說明 當(dāng)然,我們可以通過聯(lián)機的方式來處理這個問題~ 附錄2:G代碼命令的意義
|
全部評論5
你可能喜歡
T-code:3D打印下一代編程語言,G代碼的升
南方科技大學(xué)開發(fā)高性能MRC-SMP材料 推進(jìn)DL
硅膠3D打印的最新進(jìn)展
創(chuàng)想三維K2 Plus測評:完美進(jìn)化,值得稱贊
推薦課程
神奇的3D打印
SLA3D打印工藝全套培訓(xùn)課程 - 軟件篇
3D打印月球燈視頻教程 包括完整貼圖建模流
nTopology從入門到精通全流程系統(tǒng)課程