1樓:墨汁諾
迴圈巨集程式舉例:
if[#100 ge #101]goto1當#100大於等於#101時跳到n1程式段執行。
if是滿足條件跳出,while是滿足條件執行,掌握乙個就夠了。
#1~#33是區域性變數,區域性變數只能在巨集中使用,以保持操作的結果,關閉電源時,區域性變數被初始化成「空」。巨集呼叫時,自變數分配給區域性變數。
#100~#149(#199)和#500~#531(#999)是公共變數,公共變數可在不同的巨集程式間共享。關閉電源時變數#100~#149被初始化成「空」,而變數#500~#531保持資料。公共變數#150~#199和#532~#999可以選用,但是當這些變數被使用時,紙帶長度減少了8.5公尺。
2樓:匿名使用者
兄弟 別聽他們說的 巨集程式作用大著呢
另外在初學階段 是真的得什麼都用巨集程式編編看 只有這樣才能熟練的掌握他
if goto 跟while do end 的組合其實能實現的作用是一樣的
只不過while組合屬於模組化程式設計 一般計算機程式設計裡面推薦用這個方法
巨集程式的作用是抓住加工過程中重複的有規律的那一部分 進行引數化程式設計 節省因刀具 孔徑 高度等引數變化而修改程式的時間 或者為工具機增加一些你需要經常用到的功能
附上我自己為廠裡一類工件所編的引數化數控程式 裡面既用if goto 也有while
主程式%
o0555
( d12 r0)
m6t3
g0g90g54x0.y90m3s2200
g43h3z100.f1800m09
g65p1234a37.3b14.c1.d12.r3.h0.5q0.5z-7.x0.y0.
g65p1234a23.b14.c3.d12.r3.h0.5q0.5z-7.x-21.5y38.5
g52x100.
g65p1234a37.3b14.c1.d12.r3.h0.5q0.5z-7.x0.y0.
g65p1234a23.b14.c3.d12.r3.h0.5q0.5z-7.x-21.5y38.5
g52x200.
g65p1234a37.3b14.c1.d12.r3.h0.5q0.5z-7.x0.y0.
g65p1234a23.b14.c3.d12.r3.h0.5q0.5z-7.x-21.5y38.5
g52x0.
m5 m9
g91g28z0.
m01( d10 r0)
m6t5
g0g90g54x0.y90m3s2200
g43h5z100.f500m09
g65p1234a37.3b14.2c2.d10.r3.z-7.x0.y0.
g65p1234a23.b14.2c4.d10.r3.z-7.x-21.5y38.5
g52x100.
g65p1234a37.3b14.2c2.d10.r3.z-7.x0.y0.
g65p1234a23.b14.2c4.d10.r3.z-7.x-21.5y38.5
g52x200.
g65p1234a37.3b14.2c2.d10.r3.z-7.x0.y0.
g65p1234a23.b14.2c4.d10.r3.z-7.x-21.5y38.5
m5 m9
g52x0.
g91g28z0.
g91g28y0.
g0g90x80.
m30%
子程式%
o1234
(---------)
if[#1le0.]goto5
if[#2le0.]goto5
if[#7ge#2]goto5
if[#18eq#0]goto5
if[#800ge500.]then#800=500.
if[#11eq#0]then#11=#18
if[#11gt#18]then#11=#18
if[#26gt#11]then#26=#11
#17=abs[#17]
#5=#4109
#6=#5003
#8=[#2-#7]/2
(---------)
if[#3eq1.]goto1
if[#3eq2.]goto3
if[#3eq3.]goto2
if[#3eq4.]goto4
goto5
n1g0g90x#24y#25
z#18
#9=#11
while[#9ge#26]do1
g01z#9f#800
y[#25-#8]
x[#24+#1/2]f#5
g03y[#25+#8]r#8f[#5*0.7]
g01x[#24-#1/2]f#5
g03y[#25-#8]r#8f[#5*0.7]
g01x#24f#5
y#25
/z[#9+0.5]
#9=#9-#17
end1
g0z#6
f#5m99
n2g0g90x#24y#25
z#18
#9=#11
while[#9ge#26]do2
g01z#9f#800
x[#24-#8]
y[#25-#1/2]f#5
g03x[#24+#8]r#8f[#5*0.7]
g01y[#25+#1/2]f#5
g03x[#24-#8]r#8f[#5*0.7]
g01y#25f#5
x#24
/z[#9+0.5]
#9=#9-#17
end2
g0z#6
f#5m99
n3g0g90x[#24-#1/2]y#25
z#18
g01z#26f#800
y[#25-#8]
x[#24+#1/2]f#5
g03y[#25+#8]r#8f[#5*0.7]
g01x[#24-#1/2]f#5
g03y[#25-#8]r#8f[#5*0.7]
g01y#25
g0z#6
f#5m99
n4g0g90x#24y[#25+#1/2]
z#18
g01z#26f#800
x[#24-#8]
y[#25-#1/2]f#5
g03x[#24+#8]r#8f[#5*0.7]
g01y[#25+#1/2]f#5
g03x[#24-#8]r#8f[#5*0.7]
g01x#24
g0z#6
f#5m99
n5#3000=1( error)%
3樓:匿名使用者
舉個簡單例子:100直徑圓周9孔均布。初始角20°,孔均布角40°。
使用迴圈語句while
o1000
g00g90g54x0.y0.
z50.m03s800
#1=20 初始角#2=9 孔數
#3=50 圓周半徑#4=0 孔加工計數器while[#4lt#2]do 1 加工的孔數小於9則繼續加工,否則跳出迴圈。
#5=#1+#4*40 加工孔的角度#6=#3*cos[#5] 加工孔的x值#7=#3*sin[#5] 加工孔的y值g81x#6y#7z-5.r5.f200 加工孔#4=#4+1 計算加工孔數end 1 迴圈體末g80g00z50m05
g91g28z0
m30使用條件轉移語句if[ ] goton
o2000
g00g90g54x0.y0.
z50.m03s800
#1=20 初始角#2=9 孔數
#3=50 圓周半徑#4=1 孔加工計數器n100 #5=#1+#4*40 加工孔的角度#6=#3*cos[#5] 加工孔的x值#7=#3*sin[#5] 加工孔的y值g81x#6y#7z-5.r5.f200
#4=#4+1
if[#4lt#2]goto 100 加工的孔數小於9轉向n100段,否則向下段
g80g00z50m05
g91g28z0
m30給你用了2種迴圈方法,盡量用迴圈語句,系統處理的快。
沿圓周均布的孔加工都可參考,20等分50等分...都行。
20年前我用的是fanuc 6系統,沒有極座標程式設計,經常使用。
有問題經常交流啊!!!
4樓:金慕
其實原理很簡單,巨集程式就是把你的一串g**打包而已,然後可以直接輸入巨集程式名來呼叫。鑽孔的話,它的動作過程是,1.先以g00移動到所指定之(x, y)點2.
以g00下降至所設定的中間點r點。3.以g01下降至相對於目前所鑽深度乙個切削量q的深度4.
以g00向上公升到工件表面 r點。5. 以g00下降至相對於目前所鑽深度上方乙個退刀量 d的深度(引數4002設定)6.
再以g01向下降到相對於目前所鑽深度乙個切削量q的深度7. 以g00向上公升到工件表面 r點。8.
重複上述的鑽孔動作直到到達洞底z點9. 以g00向上公升到初始點(g98)或程式r點(g99)
巨集程式就是把這麼一段過程打包,然後可以直接用乙個g碼來呼叫了。不過正正寫的過程中就不會這麼簡單,要考慮很多東西。
希望對你有用,我也是剛學數控不久。
5樓:wu佳蓉
在初學階段 是真的得什麼都用巨集程式編編看 只有這樣才能熟練的掌握他if goto 跟while do end 的組合其實能實現的作用是一樣的
只不過while組合屬於模組化程式設計 一般計算機程式設計裡面推薦用這個方法巨集程式的作用是抓住加工過程中重複的有規律的那一部分 進行引數化程式設計 節省因刀具 孔徑 高度等引數變化而修改程式的時間 或者為工具機增加一些你需要經常用到的功能
6樓:
暈了 !幹個數控鑽也要學巨集程式?!神啊數控銑加工中心數控鑽學那個沒用!簡單的手編一下複雜的直接cad學個巨集程式毛用?數控車介意學一下
7樓:匿名使用者
老兄。數控的目的就是把複雜變簡單,而你卻把簡單變複雜,至於你說的想挖掘這方面的財富,個人認為 沒有任何財富可言 把簡單複雜化 是沒有任何意義的。於數控行業的初衷背道而馳 當然你是為了個人興趣,也是可以的 我也不會這個,你要是研究會了 還想向你請教下 呵呵
數控車床裡巨集程式程式設計if後面 if[-0.0125le#1ge0.0125]goto100 這個程式段存在問題嗎 求高手解釋
8樓:匿名使用者
有問題,格式錯誤,你可能想表達當#1在某個範圍內執行100程式。
9樓:匿名使用者
這裡面的數看似很矛盾,從來沒有見這樣用過,不知道你的是什麼系統???
字面解釋是:如果-0.0125小於等於變數號#1裡的值,變數號#1裡的值大於等於0.0125時跳到n100段程式
數控加工中心與數控車相比怎麼樣
加工中心操作複雜點,其實也沒有什麼就是多個軸,多個刀庫,具體工資看你加工什麼了 這事你也就是問我,一般人也不知道 計件的當然還是數車,大活精度高,工藝複雜的就看水平定價了,曾經我打了7個孔要人家700,但是就這個7個孔幹了2天,精度要的太高了。高階工到技師,需要有高階工證書後從事相關行業4年後考取預...
數控加工中心(立式的),精鏜孔G76怎麼用
g76是精鏜孔迴圈,以法蘭克系統為例 g98g76 x y r z q f 精鏜孔迴圈的基本過程是 快速定位到鏜孔中心 下刀位置 x y 快速下刀到r點位置,以進給f切削到z深度,主軸定位,刀尖反向退刀q,一般q設為0.05 0.1即可,快速抬刀到r點,快速抬刀到安全高度 注意事項 使用g76精鏜孔...
數控加工中心的鑽頭,銑刀,怎麼磨
一般只有銑平面的銑刀是用手工刃磨的,其它的銑刀都要在萬能工具磨上進行刃磨。如果用手工的方法去磨的話,磨出來的銑刀尺寸會不一致,影響加工零件的尺寸和粗糙度的。銑刀一般設計是3槽的,為了就是增加工作效率。鑽頭如果把頂部折斷,不考慮折斷問題的話,那樣工作效率比較低。對於軋製鑽頭,因為螺旋槽沒有清邊,所以加...