手工程式設計是指程式設計的各個階段均由人工完成✘✘·。利用一般的計算工具╃☁✘✘☁,透過各種三角函式計算方式╃☁✘✘☁,人工進行刀具軌跡的運算╃☁✘✘☁,並進行指令編制✘✘·。
這種方式比較簡單╃☁✘✘☁,很容易掌握╃☁✘✘☁,適應性較大✘✘·。
下面我們瞭解一下數控程式設計步驟及需用到的程式碼₪☁₪◕•:
1. 程式設計步驟
01•₪•·、人工完成零件加工的數控工藝
02•₪•·、分析零件圖紙
03•₪•·、制定工藝決策
04•₪•·、確定加工路線
05•₪•·、選擇工藝引數
06•₪•·、計算刀位軌跡座標資料
07•₪•·、編寫數控加工程式單
08•₪•·、驗證程式
09•₪•·、手工程式設計
10•₪•·、刀軌模擬
2. 準備功能字G
準備功能字G是使數控機床建立起某種加工方式的指令╃☁✘✘☁,如插補•₪•·、刀具補償•₪•·、固定迴圈等✘✘·。G功能字由地址符G和其後的兩位數字組成╃☁✘✘☁,從G00—G99共100種功能✘✘·。
G00 定位或快速移動
G01 直線插補(進給速度)
G02 順時針圓弧插補/螺旋線插補
G03 逆時針圓弧插補/螺旋線插補
G04 停留時間或延時時間
如₪☁₪◕•:G04 X1000;G04 P1000
G09 準確停止或精確停止檢查(檢查是否在目標範圍內)
G10 可程式設計資料輸入
G17 選擇XY平面
G18 選擇XZ平面
G19 選擇YZ平面
G20 英寸輸入
G21 毫米輸入
G27 返回並檢查參考點
G28 返回參考點檢測
如₪☁₪◕•:G91/(G90) G28 X___ Y___ Z___
(經過中間點X___ Y___ Z___返回參考點)
G29 從參考點返回
如₪☁₪◕•:G91/(G90) G29 X___ Y___ Z___
(從起始點經過參考點返回到目標點X___ Y___ Z___的指令)
G30 返回第2,3,4參考點
如₪☁₪◕•:G91/(G90) G30 P2 X___ Y___ Z___(返回第2參考點)
G40 刀具半徑補償取消
G41 左側刀具半徑補償(沿進給方向刀具在左邊)
G42 右側刀具半徑補償(沿進給方向刀具在右邊)
G43 刀具長度補償+方向
G44 刀具長度補償-方向
G49 取消刀具長度補償
G50 取消比例縮放
G51 比例縮放
如₪☁₪◕•:ON G51 X___ Y___ Z___ P___;
OFF G50
(X___ Y___ Z___ 設定縮放中心位置)
(P₪☁₪◕•:縮放比例╃☁✘✘☁,範圍是1-999999╃☁✘✘☁,不能是小數╃☁✘✘☁,如果P800代表縮放比例是0.8)
G52 設定區域性座標系
G53 選擇機床座標系
G54 選用1號工件座標系
G55 選用2號工件座標系
G56 選用3號工件座標系
G57 選用4號工件座標系
G58 選用5號工件座標系
G59 選用6號工件座標系
G60 單方向定位╃☁✘✘☁,消除傳動間隙(代替G00)╃☁✘✘☁,過目標位置後回頭至目標位置
G61 準停檢查方式╃☁✘✘☁,切削進給接近目標位置時減速並檢查位置公差範圍
G62 自動拐角倍率
G63 攻牙方式
G64 正常切削方式╃☁✘✘☁,切削進給接近目標位置時不減速╃☁✘✘☁,以及切削段與段之間不減速
G65 宏程式呼叫
G66 模態宏程式呼叫
G67 模態宏程式呼叫取消
G68 座標旋轉
如₪☁₪◕•:G17: G68 X___ Y___ R___
G69 座標旋轉取消
G73 多級鑽削迴圈
G74 攻左旋螺紋迴圈
G76 精鏜迴圈
G80 取消固定迴圈
G81 單級鑽削迴圈
G82 單級鑽削迴圈(實現孔底停留或延時)
G83 多級鑽削迴圈
G84 攻右旋螺紋
G85 鏜削固定迴圈
G86 鏜削固定迴圈
G87 反鏜固定迴圈
G88 鏜削固定迴圈
G89 鏜削固定迴圈
G90 絕對指令
G91 相對指令
G92 工件零點設定
G98 固定迴圈返回初始點
G99 固定迴圈返回R點
3. 座標功能字
座標功能字(又稱尺寸字)用來設定機床各座標的位移量✘✘·。它一般使用X•₪•·、Y•₪•·、Z•₪•·、U•₪•·、V•₪•·、W•₪•·、P•₪•·、Q•₪•·、R•₪•·、A•₪•·、B•₪•·、C•₪•·、D•₪•·、E等地址符為首╃☁✘✘☁,在地址符後緊跟“+”(正)或“-”(負)及一串數字╃☁✘✘☁,該數字一般以系統脈衝當量(指數控系統能實現的最小位移量╃☁✘✘☁,即數控裝置每發出一個脈衝訊號╃☁✘✘☁,機床工作臺的移動量╃☁✘✘☁,一般為0.0001~0.01mm)為單位╃☁✘✘☁,不使用小數點✘✘·。一個程式段中有多個尺寸字時╃☁✘✘☁,一般按上述地址符順序排列✘✘·。
4. 進給功能字F
該功能字用來指定刀具相對工件運動的速度✘✘·。其單位一般為mm/min✘✘·。當進給速度與主軸轉速有關時╃☁✘✘☁,如車螺紋•₪•·、攻絲等╃☁✘✘☁,使用的單位為mm/r✘✘·。進給功能字以地址符“F”為首╃☁✘✘☁,其後跟一串數字程式碼✘✘·。
5. 主軸功能字S
該功能字用來指定主軸速度╃☁✘✘☁,單位為r/min╃☁✘✘☁,它以地址符“S”為首╃☁✘✘☁,後跟一串數字✘✘·。
6. 刀具功能字T
當系統具有換刀功能時╃☁✘✘☁,刀具功能字用以選擇替換的刀具✘✘·。它以地址符“T”為首╃☁✘✘☁,其後一般跟二位數字╃☁✘✘☁,代表刀具的編號✘✘·。
7. 輔助功能字M
輔助功能字M是用於指定主軸的旋轉方向•₪•·、啟動•₪•·、停止•₪•·、冷卻液的開關╃☁✘✘☁,工件或刀具的夾緊和鬆開╃☁✘✘☁,刀具的更換等功能✘✘·。輔助功能字由地址符M和其後的兩位數字組成╃☁✘✘☁,M程式碼從M00-M99共100種✘✘·。
M00 程式停止
M01 計劃結束
M02 程式結束
M03 主軸順時針轉動
M04 主軸逆時針轉動
M05 主軸停止
M06 換刀
M07 2號冷卻液開
M08 1號冷卻液開
M09 冷卻液關
M10 夾緊
M11 鬆開
M12 不指定
M13 主軸順時針╃☁✘✘☁,冷卻液開
M14 主軸逆時針╃☁✘✘☁,冷卻液開
M15 正運動
M16 負運動
M17 不指定
M18 不指定
M19 主軸定向停止
M20-M29 永不指定
M30 紙帶結束
M31 互鎖旁路
M32-M35 不指定
M36 進給範圍1
M37 進給範圍2
M38 主軸速度範圍1
M39 主軸速度範圍2
M40-M45 齒輪換檔
M46-M47 不指定
M48 登出M49
M49 進給率修正旁路
M50 3號冷卻液開
M51 4號冷卻液開
M52-M54 不指定
M55 刀具直線位移╃☁✘✘☁,位置1
M56 刀具直線位移╃☁✘✘☁,位置2
M57-M59 不指定
M60 更換工作
M61 工件直線位移╃☁✘✘☁,位置1
M62 工件直線位移╃☁✘✘☁,位置2
M63-M70 不指定
M71 工件角度位移╃☁✘✘☁,位置1
M72 工件角度位移╃☁✘✘☁,位置2
M73-M89 不指定
M90-M99 永不指定
8. 常用算術
加法₪☁₪◕•:#i=#j+#k
減法₪☁₪◕•:#i=#j-#k
乘法₪☁₪◕•:#i=#j*#k
除法₪☁₪◕•:#i=#j/#k
正弦₪☁₪◕•:#i=SIN[#j]
反正弦₪☁₪◕•:#i=ASIN[#j]
餘弦₪☁₪◕•:#i=COS[#j]
反餘弦₪☁₪◕•:#i=ACOS[#j]
正切₪☁₪◕•:#i=TAN[#j]
反正切₪☁₪◕•:#i=ATAN[#j]
平方根₪☁₪◕•:#i=SQRT[#j]
絕對值₪☁₪◕•:#i=ABS[#j]
舍入₪☁₪◕•:#i=ROUND[#j]
上取整₪☁₪◕•:#i=FIX[#j]
下取整₪☁₪◕•:#i=FUP[#j]
自然對數₪☁₪◕•:#i=LN[#j]
指數函式₪☁₪◕•:#i=EXP[#j]
或₪☁₪◕•:#i=#jOR#k
異或₪☁₪◕•:#i=#jXOR#k
與₪☁₪◕•:#i=#AND#k
從BCD轉為BIN₪☁₪◕•:#i=BIN[#j]
從BIN轉為BCD₪☁₪◕•:#i=BCD[#j]
9. 邏輯運算子
EQ₪☁₪◕•:等於
NE₪☁₪◕•:不等於
GT₪☁₪◕•:大於
GE₪☁₪◕•:大於或等於
LT₪☁₪◕•:小於
LE₪☁₪◕•:小於或等於
10. 程式轉移和迴圈
無條件轉移₪☁₪◕•:GOTO
條件轉移₪☁₪◕•:IF [條件表示式]
IF [條件表示式] GOTO n╃☁✘✘☁,如果條件滿足╃☁✘✘☁,則跳轉至程式段n
IF [條件表示式] THEN╃☁✘✘☁,如₪☁₪◕•:IF [#I=#J] THEN #K=0
迴圈語句
WHILE [條件表示式] Dom (m=1,2,,3)
…
ENDm
如果條件滿足則執行Dom至ENDm之間的程式(直到條件不滿足)╃☁✘✘☁,否則轉而執行ENDm後面的程式✘✘·。