日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

宏程序開發(fā)循環(huán)代碼系列之啄式鉆孔循環(huán)

 昵稱62419094 2019-02-26
?宏程序開發(fā)循環(huán)代碼系列
啄式鉆孔循環(huán)

本文中的宏程序源代碼由微信網友“吳下阿蒙”開發(fā)(微信號:17686124772)

在我們的編程過程中常常會用到一些循環(huán)代碼,比如數控車床中G71、G72、G76和數控銑床中的G81、G82、G83等等,通過這些循環(huán)代碼可以極大的簡化我們的編程,降低程序出錯的概率,隨著數控系統(tǒng)版本的不端升級這些循環(huán)代碼也越來越豐富,但是對于一些版本較低的系統(tǒng),一些新的循環(huán)代碼在系統(tǒng)中是不可以使用的,面對這種情況,有時我們不得不采用最原始的方法,也就是G1和G0的方式來編程,這樣無形中增加了我們編程的復雜度,所要編制的程序段也要特別長,出錯的概率也要成倍增加。那么有沒有一種方法來簡化我們的編程呢,今天就向大家推出一個代碼開發(fā)的系列,這個系列包括,利用宏程序模態(tài)調用開發(fā)循環(huán)代碼;非模態(tài)調用開發(fā)循環(huán)代碼;G代碼開發(fā);M代碼開發(fā)。通過這些循環(huán)代碼對我們版本較低的系統(tǒng)進行升級改造。

今天就先和大家分享一個利用宏程序非模態(tài)調用開發(fā)循環(huán)代碼之啄式鉆孔循環(huán)。這個循環(huán)程序集成了間斷進給的各個動作和錯誤輸入的報警提示信息。


(主程序O0001 示例程序)
G99 G97 T101
M3 S555
G0 X0 Z1 M8
G65 P9983 L1 X0 Z-55 S100 Q30000 R0.1   F0.15 J1
G0 Z100
M30

主程序注釋

G99 G97 T101(模態(tài)信息,刀具號和刀偏號)
M3 S555(主軸正轉,S根據實際需要自行設定)
G0 X0 Z1 (快速定位到起點,這里的起點即是循環(huán)開始的起點,也是循環(huán)結束的終點)
G65 P9983 L1 X0 Z-55 S100 Q30000 R0.1   F0.15 J1(非模態(tài)調用9983號宏程序1次,并將宏變量傳輸到宏程序;Z-55鉆孔的Z向終點;S100,孔低暫停100毫秒,注意這里的S是暫停時間;Q30000間斷進給的每次進給量選取最小輸入增量30000等于3mm;  R0.1間斷進給的每次退刀量0.1mm; F0.15進給速度每轉0.15mm;J1或J0,J1模式下退回到循環(huán)起點可以說成是排銷模式,J0模式下,每次進給一個Q值,然后退回一個R值,然后繼續(xù)循環(huán),直到循環(huán)終點可以說成是斷銷模式)
G0 Z100(退刀)
M30(程序結束)



(子程序O9983 啄式鉆孔循環(huán)源代碼)
#10 = #5043
#17 = #17/10000
#12 = #10
#15 = 0.5()
#13 = 100()
N1 G0 Z#12
IF[#10 LE#26] GOTO100
IF[#18 GE#17] GOTO101
IF[#9 GE#15] GOTO102
IF[#5 LT0] GOTO103
IF[#5 GT1] GOTO104
IF[#5 EQ0] GOTO2
IF[#5 EQ1] GOTO3
N2 WHILE[#10 GT#26] DO1
#10 = #10-#17
IF[#10 LE#26] THEN#10 = #26
G1 Z#10 F#9
IF[#10 GT#26] GOTO20
IF[#10 EQ#26] GOTO21
N20 #14 = #10+#18
G0 Z#14
END1
N21 G4 P#19
G0 Z#12
M99
N3 WHILE[#10 GT#26] DO1
#10 = #10-#17
IF[#10 LE#26] THEN#10 = #26
G1 Z#10 F#9
IF[#10 GT#26] GOTO30
IF[#10 EQ#26] GOTO31
N30 G0 Z#12
G4 P#13
#14 = #10+#18
G0 Z#14
END1
N31 G4 P#19
G0 Z#12
M99
N100 G65 H99 P15(/報警信息 Z軸終點位置和起點不匹配)
N101 G65 H99 P15(/報警信息 每次進給量和退刀量不匹配)
N102 G65 H99 P15(/報警信息 每轉進給速度超出限制值)
N103 G65 H99 P15(/報警信息 指令位參數J錯誤,只能是0或1)
N104 G65 H99 P15(/報警信息 指令位參數J錯誤,只能是0或1)

子程序注釋
#10 = #5043(讀取系統(tǒng)變量5043當前Z軸絕對坐標值,并對變量10賦值)
#17 = #17/10000(最小輸入增量單位轉換)
#12 = #10(讀取10號變量,對12號變量賦值)
#15 = 0.5(安全變量,限制進給量最大每轉0.5mm)
#13 = 100(J1模式下Z軸換向暫停時間,單位毫秒)
N1 G0 Z#12
IF[#10 LE#26] GOTO100
IF[#18 GE#17] GOTO101
IF[#9 GE#15] GOTO102
IF[#5 LT0] GOTO103
IF[#5 GT1] GOTO104
IF[#5 EQ0] GOTO2
IF[#5 EQ1] GOTO3
N2 WHILE[#10 GT#26] DO1
#10 = #10-#17
IF[#10 LE#26] THEN#10 = #26
G1 Z#10 F#9
IF[#10 GT#26] GOTO20
IF[#10 EQ#26] GOTO21
N20 #14 = #10+#18
G0 Z#14
END1
N21 G4 P#19
G0 Z#12
M99
N3 WHILE[#10 GT#26] DO1
#10 = #10-#17
IF[#10 LE#26] THEN#10 = #26
G1 Z#10 F#9
IF[#10 GT#26] GOTO30
IF[#10 EQ#26] GOTO31
N30 G0 Z#12
G4 P#13
#14 = #10+#18
G0 Z#14
END1
N31 G4 P#19
G0 Z#12
M99
N100 G65 H99 P15(/報警信息 Z軸終點位置和起點不匹配)
N101 G65 H99 P15(/報警信息 每次進給量和退刀量不匹配)
N102 G65 H99 P15(/報警信息 每轉進給速度超出限制值,限制值由變量#15指定)
N103 G65 H99 P15(/報警信息 指令位參數J錯誤,只能是0或1)
N104 G65 H99 P15(/報警信息 指令位參數J錯誤,只能是0或1)


    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多