㈠ Cnc編程指令代碼。如G00快速定位。M00程序停止。寫全就最好了。謝謝
快速定位(G00或G0) 刀具以點位控制方式從當前所在位置快速移動到指令給出的目標位置。
指令格式:G00 X(U) Z(W) ;
(2)直線插補(G01或G1)
指令格式:G01 X(U) Z(W) F ;
G02 順時針圓弧插補
G03 逆時針圓弧插補
G04 停頓
G17 選擇XY平面
G18 選擇XZ平面
G19 選擇YZ平面
G20 英制
G21 公制
G28 返回參考點
G29 返回第二參考點
G30 跳步功能
G40 取消刀具半徑補償
G41 刀具半徑左補償
G42 刀具半徑右補償
G43 刀具長度補償
G49 取消刀具長度補償
G50 取消比例縮放功能
G51 比例縮放功能
G51.1 鏡像
G50.1 取消鏡像
G53 選擇機床坐標系
G54 選擇第一工件坐標系
G55 選擇第二工件坐標系
G56 選擇第三工件坐標系
G57 選擇第四工件坐標系
G58 選擇第五工件坐標系
G59 選擇第六工件坐標系
G65 宏程序及宏程序調用
G68 坐標旋轉指令
G69 坐標旋轉指令取消
G70 精加工循環(車)
G71 外圓粗車固定循環(車)
G72 端面車削固定循環
G73 深孔鑽削循環(銑床)
G73 成型加工復式循環(車)
G74 攻螺紋循環(銑床)
G74 端面深孔加工循環(車)
G75 外圓、內圓切槽循環(車)
G80 取消鑽孔模式
G81 鑽孔
G83 啄鑽
G84 攻絲
G90 絕對坐標(銑床)
G90 車端面循環(車)
G91 相對坐標
G92 設定工件坐標系(銑床)
G92 車螺紋(車)
M00 暫停
M01 選擇性暫停
M02 程序結束
M30 程序結束並返回程序頭
M03 啟動主軸轉速
M04 主軸停止
M05 主軸停轉
M06 換刀
M08 切削液開
M09 切削液關
M19 主軸定位
M98 調子程序
M99 子程序結束
以上都是比較常用的,還有一些不常用的,你再看看說明書吧,希望能幫到你!
㈡ CNC三菱系統 命令大全
CNC編程代碼很多 這些G、M代碼都是三菱 法蘭克系統都能用的 如:G00快速定位
G01直線切削
G02順時針方向圓弧切削
G03逆時針方向圓弧切削
G04暫停指令 (有的系統為延時)
G09正確停止檢測
G10補正設定
G12順時針方向圓周切削
G13逆時針方向圓周切削
G15極座標系統取消
G16極座標系統設定
G17XY平面設定
G18XZ平面設定
G19YZ平面設定
G20英制單位設定
G21公制單位設定
G22軟體極限設定
G23軟體極限設定取消
G27機械原點復歸檢測
G28自動經中間點復歸機械原點
G29自動從參考點復歸
G30自動復歸到第二原點
G40刀具半徑補正取消
G41刀具半徑偏左補正
G42刀具半徑偏右補正
G43刀具長度沿正向補正
G44刀具長度沿負向補正
G49刀具長度補正取消
G45刀具位置補正增加
G46刀具位置補正減少
G47刀具位置補正兩倍增加
G48刀具位置補正兩倍減少
G50比例功能取消OFF
G51比例功能設定ON
G52回復到基本座標系統
G53回復到機械座標系統
G54第一工件座標系統
G55第二工件座標系統
G56第三工件座標系統
G57第四工件座標系統
G58第五工件座標系統
G59第六工件座標系統
G60 外部補正
G70圓周等分段 循環
G71圓周分段 循環
G72直線分段 循環
G73高速喙鑽循環
G74左旋牙切削循環G76精搪孔循環
G77反面搪孔循環
G80固定循環取消
G81鑽孔循環
G82沉頭孔加工循環
G83啄鑽循環
G84右旋牙切削循環
G85搪孔循環
G86搪孔循環
G87搪孔循環
G88搪孔循環
G89搪孔循環
G90絕對指令座標值設定
G91增量指令座標值設定
G92絕對程式零點設定
G94每分鍾進給量設定mm/min
G95每轉進給給設定mm/rev
G98固定循環,刀具復歸到起始點
G99固定循環,刀具復歸到R點 M03主軸正轉
M04主軸逆時針旋轉 (通常不會用到反轉)
M05主軸停止
M06刀具交換
M07霧化冷卻液開啟
M08冷卻液開啟
M09冷卻液關啟
M10工作台(B軸)鎖住
M11工作台(B軸)松開
M13主軸順時針轉動及加切削液
M14主軸逆時針轉動及加切削液
M15正方向運動
M16負方向運動
M19主軸定位
M30程式結束記憶體回歸 M98子程序調用m99子程序取消
㈢ 數控車床宏程序怎麼寫最好帶步驟解說
數控車床宏程序是非常靈活且因情況而異的,所以數控車床宏程序編程掌握以下參數即可:
普通加工程序直接用數值指定G代碼和移動距離;例如,GO1和X100.0。使用用戶宏程序時,數值可以直接指定或用變數指定。當用變數時,變數值可用程序或用MDI面板上的操作改變。
例如:#1=#2+100;G01X#1F300。
量的表示:計算機允許使用變數名,用戶宏程序不行。變數用變數符號(#)和後面的變數號指定。例如:#1,表達式可以用於指定變數號。
此時,表達式必須封閉在括弧中。例如:#[#1+#2-12]。
變數根據變數號可以分成四種類型:#0空變數,該變數總是空,沒有值能賦給該變數。#1-#33局部變數,局部變數只能用在宏程序中存儲數據,例如,運算結果。當斷電時,局部變數被初始化為空。調用宏程序時,自變數對局部變數賦值。
#100-#199、#500-#999公共變數,公共變數在不同的宏程序中的意義相同。當斷電時,變數#100-#199初始化為空。變數#500-#999的數據保存,即使斷電也不丟失。#1000---系統變數。系統變數用於讀和寫CNC運行時各種數據的變化,例如,刀具的當前位置,補償值。
局部變數和公共變數可以有0值或下面范圍中的值:-1047到-10-29或-10-2到-1047,如果計算結果超出有效范圍,則發出P/S報警NO.111。
當在程序中定義變數值時,小數點可以省略。例:當定義#1=123;變數#1的實際值是123.000。
為在程序中使用變數值,指定後跟變數號的地址。當用表達式指定變數時,要把表達式放在括弧中。例如:G01X[#1+#2]F#3;
被引用變數的值根據地址的最小設定單位自動地舍入。例如:當G00X#/;以1/1000mm的單位執行時,CNC把123456賦值給變數#1,實際指令值為G00X12346.改變引用變數的值的符號,要把負號(-)放在#的前面。
例如:G00X-#1當引用未定義的變數時,變數及地址都被忽略。例如:當變數#1的值是0,並且變數#2的值是空時,G00X#1Y#2的執行結果為G00X0。
(3)cnc宏命令全表擴展閱讀:
數控宏程序編程是用變數的方式進行數控編程的方法,數控宏程序分為A類和B類宏程序,其中A類宏程序比較老,編寫起來也比較費時費力,B類宏程序類似於C語言的編程,編寫起來也很方便。
不論是A類還B類宏程序,它們運行的效果都是一樣的。
編寫一些大批相似零件的時候,可以用宏程序編寫,這樣只需要改動幾個數據就可以了,沒有必要進行大量重復編程。
㈣ cnc84系統鑽孔機指令
CM : 清除鑽孔文件
CA : 清除工藝參數及刀庫位置的設定
CLT: 清除工藝參數(當前計數B除外)
CLM : 清除刀庫位置設定及當前計數B
CBRK: 清除斷刀記錄表的記錄
CD : 清除默認刀具參數表
COMM ,N : 不下拉顯示以前輸入過的命令
T *** : 取某刀(***代表數字)
T : 把主軸上的刀退回原位置
P : 機器到泊車位
R : 機器運動到光柵尺零位
CT M***: 強行把主軸上的刀放於M***指定的刀庫位
H***..***: 更改起鑽位H值
H : 主軸運動刀起鑽位H
Z***.*** : 更改終鑽位即更改鑽板深度
M22: 壓力腳上升
M23: 壓力腳下降
M26: 機械手上升
M27 : 機械手下降
M34: 機械手指張開
M35: 機械手指合攏
M36: 進入手動換刀模式
FP**** : 切換鑽孔文件格式(****代表的鑽孔文件格式有4205 4215 4220 4210 等
FV * : 切換鑽孔加工時的文件象限(1—8個象限)
DMAG* : 切換刀庫的顯示象限(HANS-F6L機為DMAG8即第8象限不可亂改)
FAX***.***FAY***.***:輸入零位偏移值
FAIX***.***FAIY***.***:修改零位偏移值(相對於原零位)
NOMO:關閉所有伺服電機
NOMO**:關閉由**指定的伺服電機(列如**可以為XYZ1Z2Z3Z4Z5Z6)
MO:開啟伺服電機
LENK:開啟刀具檢測器的檢測使能來量刀長刀徑(NOLENK則為關閉此功能)
TOTO:開啟導電的模式的斷刀檢測功能(NOTOTO關閉此功能)
BROK:開啟斷刀檢測記錄功能(NOBROK則關閉此功能)
TC-D:關閉直徑超差報警功能(TCD則為打開直徑超差報警功能)
TC-L:關閉長度超差報警功能(TCL則為打開長度超差報警功能)
TC-R:關閉偏擺超差報警功能(TCR則為打開偏擺超差報警功能)
METR:自動換算機器坐標顯示為公制模式(注意必須先用CM清空內存里的鑽帶才能轉換
INCH:自動換算機器坐標顯示為英制模式(自動換算機器坐標顯示為公制模式
TMET:自動換算刀具參數等信息為公制形式顯示(隨時根據需要都可換算)
TIN:自動換算刀具參數等信息為英制形式顯示(隨時根據需要都可換算)
QUIK***.***(開啟快鑽功能並設離開板面的高度即快鑽高度為***.***,NOQUIK為關閉快鑽功能
Ctrl+ALT+S: 切換成中文顯示
CTRL+ALT+E:切換成英文顯示 1| 評論(3)
等待您來回答
CM : 清除鑽孔文件
CA : 清除工藝參數及刀庫位置的設定
CLT: 清除工藝參數(當前計數B除外)
CLM : 清除刀庫位置設定及當前計數B
CBRK: 清除斷刀記錄表的記錄
CD : 清除默認刀具參數表
COMM ,N : 不下拉顯示以前輸入過的命令
T *** : 取某刀(***代表數字)
T : 把主軸上的刀退回原位置
P : 機器到泊車位
R : 機器運動到光柵尺零位
CT M***: 強行把主軸上的刀放於M***指定的刀庫位
H***..***: 更改起鑽位H值
H : 主軸運動刀起鑽位H
Z***.*** : 更改終鑽位即更改鑽板深度
M22: 壓力腳上升
M23: 壓力腳下降
M26: 機械手上升
M27 : 機械手下降
M34: 機械手指張開
M35: 機械手指合攏
M36: 進入手動換刀模式
FP**** : 切換鑽孔文件格式(****代表的鑽孔文件格式有4205 4215 4220 4210 等
FV * : 切換鑽孔加工時的文件象限(1—8個象限)
DMAG* : 切換刀庫的顯示象限(HANS-F6L機為DMAG8即第8象限不可亂改)
FAX***.***FAY***.***:輸入零位偏移值
FAIX***.***FAIY***.***:修改零位偏移值(相對於原零位)
NOMO:關閉所有伺服電機
NOMO**:關閉由**指定的伺服電機(列如**可以為XYZ1Z2Z3Z4Z5Z6)
MO:開啟伺服電機
LENK:開啟刀具檢測器的檢測使能來量刀長刀徑(NOLENK則為關閉此功能)
TOTO:開啟導電的模式的斷刀檢測功能(NOTOTO關閉此功能)
BROK:開啟斷刀檢測記錄功能(NOBROK則關閉此功能)
TC-D:關閉直徑超差報警功能(TCD則為打開直徑超差報警功能)
TC-L:關閉長度超差報警功能(TCL則為打開長度超差報警功能)
TC-R:關閉偏擺超差報警功能(TCR則為打開偏擺超差報警功能)
METR:自動換算機器坐標顯示為公制模式(注意必須先用CM清空內存里的鑽帶才能轉換
INCH:自動換算機器坐標顯示為英制模式(自動換算機器坐標顯示為公制模式
TMET:自動換算刀具參數等信息為公制形式顯示(隨時根據需要都可換算)
TIN:自動換算刀具參數等信息為英制形式顯示(隨時根據需要都可換算)
QUIK***.***(開啟快鑽功能並設離開板面的高度即快鑽高度為***.***,NOQUIK為關閉快鑽功能
Ctrl+ALT+S: 切換成中文顯示
CTRL+ALT+E:切換成英文顯示 1| 評論(3)
等待您來回答
㈤ 高分求CNC數控G、M代碼(指令)大全
G代碼:
G00 定位(快速移動)
G01 直線插補(進給速度)
G02 順時針圓弧插補
G03 逆時針圓弧插補
㈥ 求CNC(FANCU)系統變數明細表,如#5201,知道的師傅可以教教我怎麼用嗎越詳細越好的,我在學宏程序
大家都在問宏程序~其實說起來宏就是用公式來加工零件的,比如說橢圓,如果沒有宏的話,我們要逐點算出曲線上的點,然後慢慢來用直線逼近,如果是個光潔度要求很高的工件的話,那麼需要計算很多的點,可是應用了宏後,我們把橢圓公式輸入到系統中然後我們給出Z坐標並且每次加10um那麼宏就會自動算出X坐標並且進行切削,實際上宏在程序中主要起到的是運算作用..宏一般分為A類宏和B類宏.A類宏是以G65 Hxx P#xx Q#xx R#xx的格式輸入的,而B類宏程序則是 以直接的公式和語言輸入的和C語言很相似在0i系統中應用比較廣.由於現在B類宏程序的大量使 用很多書都進行了介紹這里我就不再重復了,但在一些老系統中,比如法蘭克OTD系統中由於它的MDI鍵盤上沒有公式符號,連最簡單的等於號都沒有,為此如果應用B類宏程序的話就只能在計算機上編好再通過RSN-32介面傳輸的數控系統中,可是如果我們沒有PC機和RSN-32電纜的話怎麼辦呢,那麼只有通過A類宏程序來進行宏程序編制了,下面我介紹一下A類宏的引用; A類宏是用G65 Hxx P#xx Q#xx R#xx或G65 Hxx P#xx Qxx Rxx格式輸入的xx的意思就是數值,是以um級的量輸入的,比如你輸入100那就是0.1MM~~~~~.#xx就是變數號,關於變數號是什麼意思再不知道的的話我也就沒治了,不過還是教一下吧,變數號就是把數值代入到一個固定的地址中,固定的地址就是變數,一般OTD系統中有#0~~~#100~#149~~~#500~#531關閉電源時變數#100~#149被初始化成「空」,而變數#500~#531保持數據.我們如果說#100=30那麼現在#100地址內的數據就是30了,就是這么簡單.好現在我來說一下H代碼,大家可以看到A類宏的標准格式中#xx和xx都是數值,而G65表示使用A類宏,那麼這個H就是要表示各個數值和變數號內的數值或者各個變數號內的數值與其他變數號內的數值之間要進行一個什麼運算,可以說你了解了H代碼A類宏程序你基本就可以應用了,好,現在說一下H代碼的各個含義: 以下都以#100和#101和#102,及數值10和20做為例子,應用的時候別把他們當格式就行, 基本指令: H01賦值;格式:G65H01P#101Q#102:把#102內的數值賦予到#101中 G65H01P#101Q#10:把10賦予到#101中 H02加指令;格式G65 H02 P#101 Q#102 R#103,把#102的數值加上#103的數值賦予#101 G65 H02 P#101 Q#102 R10 G65 H02 P#101 Q10 R#103 G65 H02 P#101 Q10 R20 上面4個都是加指令的格式都是把Q後面的數值或變數號內的數值加上R後面的數 值或變數號內的數值然後等於到P後面的變數號中. H03減指令;格式G65 H03 P#101 Q#102 R#103,把#102的數值減去#103的數值賦予#101 G65 H03 P#101 Q#102 R10 G65 H03 P#101 Q10 R#103 G65 H03 P#101 Q20 R10 上面4個都是減指令的格式都是把Q後面的數值或變數號內的數值減去R後面的數 值或變數號內的數值然後等於到P後面的變數號中. H04乘指令;格式G65 H04 P#101 Q#102 R#103,把#102的數值乘上#103的數值賦予#101 G65 H04 P#101 Q#102 R10 G65 H04 P#101 Q10 R#103 G65 H04 P#101 Q20 R10 上面4個都是乘指令的格式都是把Q後面的數值或變數號內的數值乘上R後面的數 值或變數號內的數值然後等於到P後面的變數號中. H05除指令;格式G65 H05P#101 Q#102 R#103,把#102的數值除以#103的數值賦予#101 G65 H05 P#101 Q#102 R10 G65 H05 P#101 Q10 R#103 G65 H05 P#101 Q20 R10 上面4個都是除指令格式都是把Q後面的數值或變數號內的數值除以R後面的數 值或變數號內的數值然後等於到P後面的變數號中.(余數不存,除數如果為0的話會出現112報警) 三角函數指令: H31 SIN正玄函數指令:格式G65 H31 P#101 Q#102 R#103;含義Q後面的#102是三角形的斜邊R後面的#103內存的是角度.結果是#101=#102*SIN#103,也就是說可以直接用這個求出三角形的另 一條邊長.和以前的指令一樣Q和R後面也可以直接寫數值. H32 COS余玄函數指令:格式G65 H32 #101 Q#102 R#103;含義Q後面的#102是三角形的斜邊 R後面的#103內存的是角度.結果是#101=#102*COS#103,也就是說可以直接用這個求出三角形的 另一條邊長.和以前的指令一樣Q和R後面也可以直接寫數值. H33和H34本來應該是TAN 和ATAN的可是經過我使用得數並不準確,希望有知道的人能夠告訴我是為什麼? 開平方根指令: H21;格式G65 H21 P#101 Q#102 ;意思是把#102內的數值開了平方根然後存到#101中(這個指令是非常重要的如果在車橢圓的時候沒有開平方跟的指令是沒可能用宏做到的. 無條件轉移指令: H80;格式:G65 H80 P10 ;直接跳到第10程序段 有條件轉移指令: H81 H82 H83 H84 H85 H86 ,分別是等於就轉的H81;不等於就轉的H82;小於就轉的H83;大於就轉的H84;小於等於就轉的H85;大於等於就轉的H86; 格式:G65 H8x P10 Q#101 R#102;將#101內的數值和#102內的數值相比較,按上面的H8x的碼帶入H8x中去,如果條件符合就跳到第10程序段,如果不符合就繼續執行下面的程序段. 用 戶 宏 程 序 能完成某一功能的一系列指令像子程序那樣存入存儲器,用一個總指令來它們,使用時只需給出這個總指令就能執行其功能。 l 所存入的這一系列指令——用戶宏程序 l 調用宏程序的指令————宏指令 l 特點:使用變數 一. 變數的表示和使用 (一) 變數表示 #I(I=1,2,3,…)或#[<式子>] 例:#5,#109,#501,#[#1+#2-12] (二) 變數的使用 1. 地址字後面指定變數號或公式 格式: <地址字>#I <地址字>-#I <地址字>[<式子>] 例:F#103,設#103=15 則為F15 Z-#110,設#110=250 則為Z-250 X[#24+#18*COS[#1]] 2. 變數號可用變數代替 例:#[#30],設#30=3 則為#3 3. 變數不能使用地址O,N,I 例:下述方法下允許 O#1; I#2 6.00×100.0; N#3 Z200.0; 4. 變數號所對應的變數,對每個地址來說,都有具體數值范圍 例:#30=1100時,則M#30是不允許的 5. #0為空變數,沒有定義變數值的變數也是空變數 6. 變數值定義: 程序定義時可省略小數點,例:#123=149 MDI鍵盤輸一. 變數的種類 1. 局部變數#1~#33 一個在宏程序中局部使用的變數 例: A宏程序 B宏程序 … … #10=20 X#10 不表示X20 … … 斷電後清空,調用宏程序時代入變數值 2. 公共變數#100~#149,#500~#531 各用戶宏程序內公用的變數 例:上例中#10改用#100時,B宏程序中的 X#100表示X20 #100~#149 斷電後清空 #500~#531保持型變數(斷電後不丟失) 3. 系統變數 固定用途的變數,其值取決於系統的狀態 例:#2001值為1號刀補X軸補償值 #5221值為X軸G54工件原點偏置值 入時必須輸入小數點,小數點省略時單位為μm 一. 運算指令 運算式的右邊可以是常數、變數、函數、式子 式中#j,#k也可為常量 式子右邊為變數號、運算式 1. 定義 #I=#j 2. 算術運算 #I=#j+#k #I=#j-#k #I=#j*#k #I=#j/#k 3. 邏輯運算 #I=#JOK#k #I=#JXOK#k #I=#JAND#k 4. 函數 #I=SIN[#j] 正弦 #I=COS[#j] 餘弦 #I=TAN[#j] 正切 #I=ATAN[#j] 反正切 #I=SQRT[#j] 平方根 #I=ABS[#j] 絕對值 #I=ROUND[#j] 四捨五入化整 #I=FIX[#j] 下取整 #I=FUP[#j] 上取整 #I=BIN[#j] BCD→BIN(二進制) #I=BCN[#j] BIN→BCD 1. 說明 1) 角度單位為度 例:90度30分為90.5度 2) ATAN函數後的兩個邊長要用「1」隔開 例:#1=ATAN[1]/[-1]時,#1為了35.0 3) ROUND用於語句中的地址,按各地址的最小設定單位進行四捨五入 例:設#1=1.2345,#2=2.3456,設定單位1μm G91 X-#1;X-1.235 X-#2 F300;X-2.346 X[#1+#2];X3.580 未返回原處,應改為 X[ROUND[#1]+ROUND[#2]]; 4) 取整後的絕對值比原值大為上取整,反之為下取整 例:設#1=1.2,#2=-1.2時 若#3=FUP[#1]時,則#3=2.0 若#3=FIX[#1]時,則#3=1.0 若#3=FUP[#2]時,則#3=-2.0 若#3=FIX[#2]時,則#3=-1.0 5) 指令函數時,可只寫開頭2個字母 例:ROUND→RO FIX→FI 6) 優先順序 函數→乘除(*,1,AND)→加減(+,-,OR,XOR) 例:#1=#2+#3*SIN[#4]; 7) 括弧為中括弧,最多5重,園括弧用於注釋語句 例:#1=SIN[[[#2+#3]*#4+#5]*#6];(3重) 一. 轉移與循環指令 1.無條件的轉移 格式: GOTO 1; GOTO #10; 2.條件轉移 格式: IF[<條件式>] GOTO n 條件式: #j EQ#k 表示= #j NE#k 表示≠ #j GT#k 表示> #j LT#k 表示< #j GE#k 表示≥ #j LE#k 表示≤ 例: IF[#1 GT 10] GOTO 100; … N100 G00 691 X10; 例:求1到10之和 O9500; #1=0 #2=1 N1 IF [#2 GT10] GOTO 2 #1=#1+#2; #2=#2+1; GOTO 1 N2 M301.循環 格式:WHILE[<條件式>]DO m;(m=1,2,3) … … … ENDm 說明:1.條件滿足時,執行DOm到ENDm,則從DOm的程序段 不滿足時,執行DOm到ENDm的程序段 2.省略WHILE語句只有DOm…ENDm,則從DOm到ENDm之間形成死循環 3.嵌套 4.EQ NE時,空和「0」不同 其他條件下,空和「0」相同 例:求1到10之和 O0001; #1=0; #2=1; WHILE [#2LE10] DO1; #1=#1+#2; #2=#2+#1; END1; M30;㈦ 數控編程宏程序的指令
宏程序編程
一 變數
普通加工程序直接用數值指定G代碼和移動距離;例如,GO1和X100.0。使用用戶宏程序時,數值可以直接指定或用變數指定。當用變數時,變數值可用程序或用MDI面板上的操作改變。
#1=#2+100
G01 X#1 F300
說明:
變數的表示
計算機允許使用變數名,用戶宏程序不行。變數用變數符號(#)和後面的變數號指定。
例如:#1
表達式可以用於指定變數號。此時,表達式必須封閉在括弧中。
例如:#[#1+#2-12]
變數的類型
變數根據變數號可以分成四種類型
變數號
變數類型
功能
#0
空變數
該變數總是空,沒有值能賦給該變數.
#1-#33
局部變數
局部變數只能用在宏程序中存儲數據,例如,運算結果.當斷電時,局部變數被初始化為空.調用宏程序時,自變數對局部變數賦值,
#100-#199
#500-#999
公共變數
公共變數在不同的宏程序中的意義相同.當斷電時,變數#100-#199初始化為空.變數#500-#999的數據保存,即使斷電也不丟失.
#1000
系統變數
系統變數用於讀和寫CNC運行時各種數據的變化,例如,刀具的當前位置和補償值.
變數值的范圍
局部變數和公共變數可以有0值或下面范圍中的值:
-1047到-10-29或-10-2到-1047
如果計算結果超出有效范圍,則發出P/S報警NO.111.
小數點的省略
當在程序中定義變數值時,小數點可以省略。
例:當定義#1=123;變數#1的實際值是123.000。
變數的引用
為在程序中使用變數值,指定後跟變數號的地址。當用表達式指定變數時,要把表達式放在括弧中。
例如:G01X[#1+#2]F#3;
被引用變數的值根據地址的最小設定單位自動地舍入。
例如:
當G00X#/;以1/1000mm的單位執行時,CNC把123456賦值給變數#1,實際指令值為G00X12346.
改變引用變數的值的符號,要把負號(-)放在#的前面。
例如:G00X-#1
當引用未定義的變數時,變數及地址都被忽略。
例如:當變數#1的值是0,並且變數#2的值是空時,G00X#1 Y#2的執行結果為G00X0。
雙軌跡(雙軌跡控制)的公共變數
對雙軌跡控制,系統為每一軌跡都提供了單獨的宏變數,但是,根據參數N0.6036和6037的設定,某些公共變數可同時用於兩個軌跡。
未定義的變數
當變數值未定義時,這樣的變數成為空變數。變數#0總是空變數。它不能寫,只能讀。
引用
當引用一個未定義的變數時,地址本身也被忽略。
當#1=
當#1=0
G90 X100 Y#1
G90 X100
G90 X100 Y#1
G90 X100 Y0
(b) 運算
除了用賦值以外,其餘情況下與0相同。
當#1=時
當#1=0時
#2=#1
#2=
#2=#1
#2=0
#2=#*5
#2=0
#2=#*5
#2=0
#2=#1+#1
#2=0
#2=#1+#1
#2=0
(c)條件表達式
EQ和NE中的不同於0。
當#1=時
當#1=0時
#1EQ#0 成立
#1EQ#0 不成立
#1 NE #0 成立
#1 NE #0 不成立
#1 GE #0 成立
#1 GE #0 不成立
#1 GT #0 不成立
#1 GT #0 不成立
限制
程序號,順序號和任選程序段跳轉號不能使用變數。
例:下面情況不能使用變數:
0#1;
/#2G00X100.0;
N#3Y200.0;
二 算術和邏輯運算
下面表中列出的運算可以在變數中執行。運算符右邊的表達式可包含常量和或由函數或運算符組成的變數。表達式中的變數#j和#k可以用常數賦值。左邊的變數也可以用表達式賦值。
說明:
角度單位
函數SIN ,COS,ASIN,ACOS,TAN和ATAN的角度單位是度。如90°30'表示為90.5度。
ARCSIN # i= ASIN[#j]
(1)取值范圍如下:
當參數(NO.6004#0)NAT位設為0時,270°~90°
當參數(NO.6004#0)NAT位設為1時,-90°~90°
(2)當#j超出-1到1的范圍時,發出P/S報警NO.111.
(3)常數可替代變數#j
ARCCOS #i=ACOS[#j] 取值范圍從180°~0° 當#j超出-1到1的范圍時,發出P/S報警NO.111. 常數可替代變數#j
三 程序舉例
銑橢圓:
軌跡:
橢圓程序代碼如下:
N10 G54 G90 G0 S1500 M03
N12 X0 Y0 Z20.
N14 G0 Z1
N16 G1 Z-5. F150.
N18 G41 D1
N20 #1=0
N22 #2=34
N24 #3=24
N26 #4=#2*COS[#1]
N28 #5=#3*SIN[#1]
N30 #10=#4*COS[45]-#5*SIN[45]
N32 #11=#4*SIN[45]+#5*COS[45]
N34 G1 X#10 Y#11
N36 #1=#1+1
N38 IF [#1 LT 370] GOTO26
N40 G40 G1 X0 Y0
N42 G0 Z100
N44 M30
銑矩形槽:
銑矩形槽代碼如下:
#102=0.
N3#100=0.
#101=0.
#103=200.
#104=400.
G91G28Z0.
G0G90G54X0.Y0.
G43H1Z20.
M3S2000.
N4G0X#100Y#101
G01Z#102F200.
#102=#102-2.
IF[#102EQ-50.]GOTO1
GOTO2
N2
N4X#104F500.
Y#103
X#100
Y#101
#100=#100+10.
#101=#101+10.
#103=#103-10.
#104=#104-10.
IF[#100EQ100.]GOTO3
GOTO4
N3
N1
M5
M9
G91G28Z0.
G28Y0.
M30
銑傾斜3度的面:
軌跡:
銑傾斜3度的面的代碼如下:
O0001
#[#1+1*2]=1
G65P9012L1A0B0.1C4I100J3K0
M30
宏程序O9012代碼如下:
G54 G90 G00 X[#3] Y0 Z100
S500 M3
G01 Z0 F300
WHILE[#1LE10]DO1
#7= #1/TAN[#5]+#3
G1Z-#1 X#7
#8=#6/2-ROUND[#6/2]
IF[#8EQ0]GOTO10
G1Y0
GOTO20
N10 Y#4
N20#1=#1+#2
#6=#6+1
END1
G0
Z100
銑半球:
軌跡:
銑半球代碼如下:
G90G0G54X-10.Y0M3S4500
G43Z50.H1M8
#1=0.5
WHILE[#1LE50.]DO1
#2=50.-#1
#3=SQRT[2500.-[#2*#2]]
G1Z-#1F20
X-#3F500
G2I#3
#1=#1+0.5
END1
G0Z50.M5
M30
銑喇叭:
銑喇叭代碼如下:
M03 S500
M06 T01
#1=0
#2=0
G0 Z15
X150 Y0
N11
#2=30*SIN[#1]
#3=30+30*[1-COS[#1]]
G01 Z-#2 F40
G41 X#3 D01
G03 I-#3
G40 G01 X150 Y0
#1=#1+1
IF [#1 LE 90] GOTO 11
G0 Z30
M30
㈧ Cnc編程指令代碼怎麼寫
M29
M30 M63 M64 M80 M81 M82 M83 M85 M98 M99剛性攻螺紋 程序結束並返回 排屑啟動 排屑停止 ,刀庫前進 ,刀庫後退 ,刀具松開 ,刀具夾緊 ,刀庫旋轉 ,調用子程序 ,調用子程序結束並返回 ,後指令, 單獨程序段 ,後指令注。
在一個程序段中只能有指令一個 M
指令,如果在一個程序中出現兩個或兩個以上的 M 指令時, 則只有最後一個 M 指令有效,其餘無效,其他指令。
(1)F—進給速度指令 F
及後面的若干數字表示,當指令為 G94 單位是 mm/min,當指令為 G95 單位是 mm/r。
(2)S—主軸轉速指令 S 及後面的若干數字表示,單位是 r/min。
(3)T—刀具指令 T 及後面的三位數字表示,表示刀號。
(4)H 和 D—刀具長度補償值和刀具半徑補償值 H 和 D 及其後面的三位數字表示,該三位數字為存放刀具補償量地存儲器地址(番號)。