第一篇:數(shù)控車B類宏程序的簡(jiǎn)單入門
數(shù)控車B類宏程序的簡(jiǎn)單入門.一、前言
很多做數(shù)控車的朋友,看著別人都能夠熟練的運(yùn)用宏編程和加工,自己除了羨慕外也曾經(jīng)多少次暗暗下決心決定學(xué)好宏,但苦于沒有老師和實(shí)際的教材(網(wǎng)絡(luò)中的教材大多需要有一定的基礎(chǔ)才能看懂)一次次的被宏拒絕與門外。我寫此文的目的就是希望大家能夠?qū)暧幸粋€(gè)基本的了解并且能夠入門。下面我就通過一些簡(jiǎn)單的例子來引導(dǎo)各位進(jìn)入宏的大門。(文中的宏編程都是以GSK980TDb)
二、宏的簡(jiǎn)單說明
學(xué)習(xí)宏就需要對(duì)宏的語法有一個(gè)簡(jiǎn)單的了解,下面就通過對(duì)宏運(yùn)用實(shí)例的一些簡(jiǎn)單說明來帶領(lǐng)大家學(xué)習(xí)宏。
1.簡(jiǎn)單的賦值語句
#101=300把變量#101初始值定義為300
#102=240把變量#102初始值定義為240
#103=#101+#102#103的值是#101和#102的和
#104=#101-#102#104的值是#101和#102的差
舉例1:
O0001
N010 G97恒轉(zhuǎn)速
N020 G99mm/r
N030 T0101 M03 S500調(diào)用1號(hào)刀具1號(hào)刀補(bǔ)
N040 #101=300把變量#101初始值定義為300
N050 #102=240把變量#102初始值定義為240
N060 G00 X400 Z#102快速定位到X400 Z240的位置
N070 G00 X#101 Z0快速定位到 X300 Z0的位置
N080G01 X-1 F0.2切削到X-1的位置
N090 G00 X#101 Z#102快速定位到 X300 Z240的位置
N100 M30程序結(jié)束并返回程序開始
2.復(fù)雜的賦值語句
N10 #101=100
N20 #101=#101-2
我想剛開始接觸宏且沒有接觸過計(jì)算機(jī)語言的人對(duì)N20那段程序理解吧,很多人會(huì)這樣理解
如果#101=#101-2 那就可以推出 0等于-2,其實(shí)這里”=”并不是等于號(hào),而是賦值號(hào)。
其實(shí)可以這樣理解
N10 #101=100有個(gè)人的名字叫#101他的口袋里有100塊錢
N20 #102=140
N30 #101=#101-5#101買瓶水花掉5塊錢,那么他口袋的錢就只有95塊,也就是說買水前他口袋是100塊,他從口袋里拿出5塊錢付賬,然后把身上的錢又放回袋子里,口袋里是不是就只有95塊了,而口袋還是這個(gè)口袋沒有變,但是錢卻少了,注意是執(zhí)行完這個(gè)動(dòng)作。口袋也可以理解為容器,、容器是用來放東西的,可以放錢、可以方米、可以防水、當(dāng)然也可以放數(shù)值,這個(gè)容器的大小是我們自己定義的,就像我們可以定義為只有一口袋的錢,也可以定位為1屋子的錢。
N40 #102=#102-10在我們數(shù)控系統(tǒng)上是開始#102的初始值是140,但是沒有執(zhí)行前是140,執(zhí)行這個(gè)動(dòng)作后是130。
舉例2;
O0002
N010 G97
N020 G99
N030 T0101 M03 S700
N040 #101=180#101的初始值為180 N050 #102=2#102的初始值為2 N050 #103=-45#103的初始值為-45
G00 X#101 Z#102快速定位到X180 Z2的位置 G01 Z#103 F0.2切削到Z-45的位置
G00 U1.0 Z#102快速定位到X181 Z2的位置 #101=#101-4執(zhí)行完此語句后#101的值為176 G00 X#101 Z#102
G01 Z#103 F0.2
G00 U1.0 Z#102
#101=#101-4
G00 X#101 Z#102
G01 Z#103 F0.2
G00 X200 Z200
M30
網(wǎng)上偷來的快速定位到X176 Z2的位置 切削到Z-45的位置 快速定位到 X177 Z2的位置 執(zhí)行完此語句后#101的值為X172 快速定位到 X172 Z2的位置 切削到Z-45的位置
第二篇:數(shù)控銑床宏程序編程 經(jīng)典
變量
普通加工程序直接用數(shù)值指定G代碼和移動(dòng)距離;例如,GO1和X100.0。使用用戶宏程序時(shí),數(shù)值可以直接指定或用變量指定。當(dāng)用變量時(shí),變量值可用程序或用MDI面板上的操作改變。#1=#2+100 G01 X#1 F300 說明:
變量的表示
計(jì)算機(jī)允許使用變量名,用戶宏程序不行。變量用變量符號(hào)(#)和后面的變量號(hào)指定。例如:#1 表達(dá)式可以用于指定變量號(hào)。此時(shí),表達(dá)式必須封閉在括號(hào)中。例如:#[#1+#2-12]
變量的類型
變量根據(jù)變量號(hào)可以分成四種類型
變量號(hào) 變量類型 功能
#0 空變量 該變量總是空,沒有值能賦給該變量.#1-#33 局部變量局部變量只能用在宏程序中存儲(chǔ)數(shù)據(jù),例如,運(yùn)算結(jié)果.當(dāng)斷電時(shí),局部變量被初始化為空.調(diào)用宏程序時(shí),自變量對(duì)局部變量賦值, #100-#199 #500-#999 公共變量公共變量在不同的宏程序中的意義相同.當(dāng)斷電時(shí),變量#100-#199初始化為空.變量#500-#999的數(shù)據(jù)保存,即使斷電也不丟失.#1000 系統(tǒng)變量 系統(tǒng)變量用于讀和寫CNC運(yùn)行時(shí)各種數(shù)據(jù)的變化,例如,刀具的當(dāng)前位置和補(bǔ)償值.變量值的范圍
局部變量和公共變量可以有0值或下面范圍中的值:-1047到-10-29或-10-2到-1047 如果計(jì)算結(jié)果超出有效范圍,則發(fā)出P/S報(bào)警NO.111.小數(shù)點(diǎn)的省略
當(dāng)在程序中定義變量值時(shí),小數(shù)點(diǎn)可以省略。
例:當(dāng)定義#1=123;變量#1的實(shí)際值是123.000。
變量的引用
為在程序中使用變量值,指定后跟變量號(hào)的地址。當(dāng)用表達(dá)式指定變量時(shí),要把表達(dá)式放在括號(hào)中。
例如:G01X[#1+#2]F#3;被引用變量的值根據(jù)地址的最小設(shè)定單位自動(dòng)地舍入。例如: 當(dāng)G00X#/;以1/1000mm的單位執(zhí)行時(shí),CNC把123456賦值給變量#1,實(shí)際指令值為G00X12346.改變引用變量的值的符號(hào),要把負(fù)號(hào)(-)放在#的前面。例如:G00X-#1 當(dāng)引用未定義的變量時(shí),變量及地址都被忽略。
例如:當(dāng)變量#1的值是0,并且變量#2的值是空時(shí),G00X#1 Y#2的執(zhí)行結(jié)果為G00X0。
雙軌跡(雙軌跡控制)的公共變量
對(duì)雙軌跡控制,系統(tǒng)為每一軌跡都提供了單獨(dú)的宏變量,但是,根據(jù)參數(shù)N0.6036和6037的設(shè)定,某些公共變量可同時(shí)用于兩個(gè)軌跡。
未定義的變量
當(dāng)變量值未定義時(shí),這樣的變量成為空變量。變量#0總是空變量。它不能寫,只能讀。
引用
當(dāng)引用一個(gè)未定義的變量時(shí),地址本身也被忽略。當(dāng)#1=<空> 當(dāng)#1=0 G90 X100 Y#1 G90 X100 G90 X100 Y#1 G90 X100 Y0
(b)運(yùn)算
除了用<空>賦值以外,其余情況下<空>與0相同。
當(dāng)#1=<空>時(shí) 當(dāng)#1=0時(shí)
#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)條件表達(dá)式
EQ和NE中的<空>不同于0。當(dāng)#1=<空>時(shí) 當(dāng)#1=0時(shí)
#1EQ#0 成立 #1EQ#0 不成立
#1 NE #0 成立 #1 NE #0 不成立
#1 GE #0 成立 #1 GE #0 不成立
#1 GT #0 不成立 #1 GT #0 不成立
限制
程序號(hào),順序號(hào)和任選程序段跳轉(zhuǎn)號(hào)不能使用變量。例:下面情況不能使用變量: 0#1;
/#2G00X100.0;N#3Y200.0;
二 算術(shù)和邏輯運(yùn)算
下面表中列出的運(yùn)算可以在變量中執(zhí)行。運(yùn)算符右邊的表達(dá)式可包含常量和或由函數(shù)或運(yùn)算符組成的變量。表達(dá)式中的變量#j和#k可以用常數(shù)賦值。左邊的變量也可以用表達(dá)式賦值。
功能 格式 備注 定義 #i=#j 加法
減法
乘法
除法 #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]/[#k] 角度以度指定,90o30'表示為90.5度。平方根
絕對(duì)值
舍入
上取整
下取整
自然對(duì)數(shù)
指數(shù)函數(shù) #i=SQRT[#j];
#i=ABS[#j];
#i=ROUNG[#j];
#i=FIX[#j];#i=FUP[#j];
#i=LN[#j];
#i=EXP[#j];或
異或
與
#i=#jOR#k;
#i=#jXOR#k;
#i=#jAND#k;邏輯運(yùn)算一位一位地按二進(jìn)制數(shù)執(zhí)行。從BCD轉(zhuǎn)為BIN
從BIN轉(zhuǎn)為BCD #i=BIN[#j];
#i=BCD[#j];用于與PMC的信號(hào)交換。
說明:
角度單位
函數(shù)SIN ,COS,ASIN,ACOS,TAN和ATAN的角度單位是度。如90°30’表示為90.5度。ARCSIN # i= ASIN[#j](1)取值范圍如下:
當(dāng)參數(shù)(NO.6004#0)NAT位設(shè)為0時(shí),270°~90° 當(dāng)參數(shù)(NO.6004#0)NAT位設(shè)為1時(shí),-90°~90°
(2)當(dāng)#j超出-1到1的范圍時(shí),發(fā)出P/S報(bào)警NO.111.(3)常數(shù)可替代變量#j
ARCCOS #i=ACOS[#j] 取值范圍從180°~0° 當(dāng)#j超出-1到1的范圍時(shí),發(fā)出P/S報(bào)警NO.111.常數(shù)可替代變量#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
第三篇:華中數(shù)控宏程序教案
華中數(shù)控宏程序教案.txt人生在世,難敵宿命,沉淪其中。我不愛風(fēng)塵,似被前緣誤!我只為我最愛的人流淚“我會(huì)學(xué)著放棄你,是因?yàn)槲姨珢勰恪壁A了你,我可以放棄整個(gè)世界華中數(shù)控宏程序教案 一.什么是宏程序?
什么是數(shù)控加工宏程序?簡(jiǎn)單地說,宏程序是一種具有計(jì)算能力和決策能力的數(shù)控程序。宏程序具有如下些特點(diǎn):
1.使用了變量或表達(dá)式(計(jì)算能力),例如:(1)G01X[3+5];有表達(dá)式3+5(2)G00X4F[#1];有變量#1(3)G01Y[50*SIN[3]];有函數(shù)運(yùn)算 2.使用了程序流程控制(決策能力),例如:(1)IF#3GE9;有選擇執(zhí)行命令 ?? ENDIF(2)WHILE#1LT#4*5;有條件循環(huán)命令 ?? ENDW 二.用宏程編程有什么好處? 1.宏程序引入了變量和表達(dá)式,還有函數(shù)功能,具有實(shí)時(shí)動(dòng)態(tài)計(jì)算能力,可以加工非圓曲線,如拋物線、橢圓、雙曲線、三角函數(shù)曲線等;
2.宏程序可以完成圖形一樣,尺寸不同的系列零件加工; 3.宏程序可以完成工藝路徑一樣,位置不同的系列零件加工; 4.宏程序具有一定決策能力,能根據(jù)條件選擇性地執(zhí)行某些部分;
5.使用宏程序能極大地簡(jiǎn)化編程,精簡(jiǎn)程序。適合于復(fù)雜零件加工的編程。一.宏變量及宏常量 1.宏變量
先看一段簡(jiǎn)單的程序: G00X25.0 上面的程序在X軸作一個(gè)快速定位。其中數(shù)據(jù)25.0是固定的,引入變量后可以寫成: #1=25.0;#1是一個(gè)變量 G00X[#1];#1就是一個(gè)變量
宏程序中,用“#”號(hào)后面緊跟1~4位數(shù)字表示一個(gè)變量,如#1,#50,#101,??。變量有什么用呢?變量可以用來代替程序中的數(shù)據(jù),如尺寸、刀補(bǔ)號(hào)、G指令編號(hào)??,變量的使用,給程序的設(shè)計(jì)帶來了極大的靈活性。使用變量前,變量必需帶有正確的值。如 #1=25 G01X[#1];表示G01X25 #1=-10;運(yùn)行過程中可以隨時(shí)改變#1的值 G01X[#1];表示G01X-10 用變量不僅可以表示坐標(biāo),還可以表示G、M、F、D、H、M、X、Y、??等各種代碼后的數(shù)字。如: #2=3 G[#2]X30;表示G03X30 例1使用了變量的宏子程序。%1000 #50=20;先給變量賦值 M98P1001;然后調(diào)用子程序 #50=350;重新賦值
M98P1001;再調(diào)用子程序 M30 %1001 G91G01X[#50];同樣一段程序,#50的值不同,X移動(dòng)的距離就不同 M99 2.局部變量
編號(hào)#0~#49的變量是局部變量。局部變量的作用范圍是當(dāng)前程序(在同一個(gè)程序號(hào)內(nèi))。如果在主程序或不同子程序里,出現(xiàn)了相同名稱(編號(hào))的變量,它們不會(huì)相互干擾,值也可以不同。例 %100 N10#3=30;主程序中#3為30 M98P101;進(jìn)入子程序后#3不受影響 #4=#3;#3仍為30,所以#4=30 M30 %101 #4=#3;這里的#3不是主程序中的#3,所以#3=0(沒定義),則:#4=0 #3=18;這里使#3的值為18,不會(huì)影響主程序中的#3 M99 3.全局變量
編號(hào)#50~#199的變量是全局變量(注:其中#100~#199也是刀補(bǔ)變量)。全局變量的作用范圍是整個(gè)零件程序。不管是主程序還是子程序,只要名稱(編號(hào))相同就是同一個(gè)變量,帶有相同的值,在某個(gè)地方修改它的值,所有其它地方都受影響。例 %100 N10#50=30;先使#50為30 M98P101;進(jìn)入子程序
#4=#50;#50變?yōu)?8,所以#4=18 M30 %101 #4=#50;#50的值在子程序里也有效,所以#4=30 #50=18;這里使#50=18,然后返回 M99 為什么要把變量分為局部變量和全局變量?如果只有全局變量,由變量名不能重復(fù),就可能造成變量名不夠用;全局變量在任何地方都可以改變它的值,這是它的優(yōu)點(diǎn),也是它的缺點(diǎn)。說是優(yōu)點(diǎn),是因?yàn)閰?shù)傳遞很方便;說是缺點(diǎn),是因?yàn)楫?dāng)一個(gè)程序較復(fù)雜的時(shí)候,一不小心就可能在某個(gè)地用了相同的變量名或者改變了它的值,造成程序混亂。局部變量的使用,解決了同名變量沖突的問題,編寫子程序時(shí),不需要考慮其它地方是否用過某個(gè)變量名。什么時(shí)候用全局變量?什么時(shí)候用局部變量?在一般情況下,你應(yīng)優(yōu)先考慮選用局部變量。局部變量在不同的子程序里,可以重復(fù)使用,不會(huì)互相干擾。如果一個(gè)數(shù)據(jù)在主程序和子程序里都要用到,就要考慮用全局變量。用全局變量來保存數(shù)據(jù),可以在不同子程序間傳遞、共享、以及反復(fù)利用。
華中數(shù)控宏程序編程實(shí)例(1)宏程序編拋物線車削 %0342 T0101M03S600 G00X20.5Z2 #11=12;B初值
#10=SQRT[2*#11];A初值 WHILE#10LE8 G90G01X[2*#10]Z[12-#11]F200 #10=#10+0.1 #11=#10*#10/2 ENDW G01X16Z[-32+12] Z-28 U4 G00X20.5Z2M05 M30(2)宏程序編正弦線 %3404 M03S600T0101 G92X80Z30 G00X25Z3 G71U0.6R0.6P6Q13X0.8F100 N6G0X17 #11=0 WHILE#11GE-25 #9=#11*PI/10;#10=3.5*SIN[#9] G01X[17-2*#10]Z[#11]F100 #11=#11-0.5 N13ENDW G01X24Z-25 Z-30 X30 G00X80Z30 M30(3)宏程序編拋物線與橢圓 %8002 G92X50Z100 M98P8001A8B5C4U32V40W55 G36G90X50Z0 M30 %8001 G64G37(連續(xù)切削,半徑編程)#10=0#11=0(拋物線起點(diǎn))WHILE#11LE#20 G01X[#10]Z[-#11]F150 #10=#10+0.08(拋物線X增量)#11=#10*#10/#2(計(jì)算拋物線z)ENDW #50=SQRT[#20*#2](拋物線與橢圓交接處半徑)G01X[#50]Z[-#20](拋物線終點(diǎn))G01Z[-#21](直線終點(diǎn))#12=0#13=0(橢圓起點(diǎn))WHILE#13LE#1 #12=#0/#1*SQRT[#1*#1-#13*#13](橢圓X增量)G01X[#50+#0-#12]Z[-#21-#13] #13=#13+0.08(橢圓z增量)ENDW G01X[#50+#0]Z[-#21-#1](橢圓終點(diǎn))Z[-#22] U2 G0X50Z100 M99
第四篇:數(shù)控編程--宏程序教案
華中數(shù)控加工中心編程---宏程序
教案
一、組織教學(xué)
檢查學(xué)生出勤情況
二、復(fù)習(xí)提問
1、畫圖,橢圓怎么加工
2、舉例,一個(gè)任意形狀的工件,如何在邊上倒圓角
三、相關(guān)專業(yè)理論基礎(chǔ)
1、看、畫圖零件
2、加工工藝分析與編寫數(shù)控加工工藝卡
3、裝夾方法與定位方法的分析
4、華中系統(tǒng)編程規(guī)則
5、刀具的選擇
6、檢驗(yàn)方法與檢測(cè)技巧
三、課題訓(xùn)練思路
采用綜合例題方式,按上述要求逐一分組進(jìn)行,加工前教師進(jìn)行加工講評(píng),對(duì)程序驗(yàn)證后進(jìn)行加工,加工完教師進(jìn)行總結(jié)講評(píng),指出加工過程中的錯(cuò)誤和不合格項(xiàng)。
四、課題內(nèi)容 用數(shù)控加工中心銑床加工出如下圖所示零件,材料為鋁,毛坯為75*75mm,按圖樣要求完成零件的加工。
五、新授課
如何使加工中心這種高效自動(dòng)化機(jī)床更好地發(fā)揮效益,其關(guān)鍵之一,就是開發(fā)和提高數(shù)控系統(tǒng)的使用性能。宏程序的應(yīng)用,是提高數(shù)控系統(tǒng)使用性能的有效途徑。下面就宏程序的應(yīng)用。
(一)什么是宏程序?
什么是數(shù)控加工宏程序?簡(jiǎn)單地說,宏程序是一種具有計(jì)算能力和決策能力的數(shù)控程序。宏程序具有如下些特點(diǎn): 1.使用了變量或表達(dá)式(計(jì)算能力),例如:(1)G01X[#3+#5];有表達(dá)式#3+#5(2)G00X4F[#1];有變量#1(3)G01Y[50*SIN[#3]];有函數(shù)運(yùn)算
2.使用了程序流程控制(決策能力),例如:(1)WHILE有條件循環(huán)命令
(二)用宏程編程有什么好處?
1.宏程序引入了變量和表達(dá)式,還有函數(shù)功能,具有實(shí)時(shí)動(dòng)態(tài)計(jì)算能力,可以加工非圓曲線,如拋物線、橢圓、雙曲線、三角函數(shù)曲線等; 2.宏程序可以完成圖形一樣,尺寸不同的系列零件加工; 3.宏程序可以完成工藝路徑一樣,位置不同的系列零件加工; 4.宏程序具有一定決策能力,能根據(jù)條件選擇性地執(zhí)行某些部分; 5.使用宏程序能極大地簡(jiǎn)化編程,精簡(jiǎn)程序。適合于復(fù)雜零件加工的編程。
(三)宏變量及宏常量 1.宏變量
先看一段簡(jiǎn)單的程序: G00X25.0 上面的程序在X軸作一個(gè)快速定位。其中數(shù)據(jù)25.0是固定的,引入變量后可以寫成: #1=25.0;#1是一個(gè)變量 G00X[#1];#1就是一個(gè)變量 宏程序中,用“#”號(hào)后面緊跟1~4位數(shù)字表示一個(gè)變量,如#1,#50,#101,變量有什么用呢?變量可以用來代替程序中的數(shù)據(jù),如尺寸、刀補(bǔ)號(hào)、G指令編號(hào)變量的使用,給程序的設(shè)計(jì)帶來了極大的靈活性。
使用變量前,變量必需帶有正確的值。如 #1=25 G01X[#1];表示G01X25 #1=-10;運(yùn)行過程中可以隨時(shí)改變#1的值 G01X[#1];表示G01X-10 用變量不僅可以表示坐標(biāo),還可以表示G、M、F、D、H、M、X、Y、??等各種代碼后的數(shù)字。如: #2=3 G[#2]X30;表示G03X30 例1使用了變量的宏子程序。%1000#50=20;先給變量賦值 M98P1001;然后調(diào)用子程序 #50=350;重新賦值 M98P1001;再調(diào)用子程序 M30 %1001 G91G01X[#50];同樣一段程序,#50的值不同,X移動(dòng)的距離就不同 M99 2.局部變量
編號(hào)#0~#49的變量是局部變量。局部變量的作用范圍是當(dāng)前程序(在同一個(gè)程序號(hào)內(nèi))。如果在主程序或不同子程序里,出現(xiàn)了相同名稱(編號(hào))的變量,它們不會(huì)相互干擾,值也可以不同。例 %100 N10#3=30;主程序中#3為30 M98P101;進(jìn)入子程序后#3不受影響 #4=#3;#3仍為30,所以#4=30 M30 %101 #4=#3;這里的#3不是主程序中的#3,所以#3=0(沒定義),則:#4=0 #3=18;這里使#3的值為18,不會(huì)影響主程序中的#3 M993.全局變量
編號(hào)#50~#199的變量是全局變量(注:其中#100~#199也是刀補(bǔ)變量)。全局變量的作用范圍是整個(gè)零件程序。不管是主程序還是子程序,只要名稱(編號(hào))相同就是同一個(gè)變量,帶有相同的值,在某個(gè)地方修改它的值,所有其它地方都受影響。例 %100 N10#50=30;先使#50為30 M98P101;進(jìn)入子程序
#4=#50;#50變?yōu)?8,所以#4=18 M30 %101 #4=#50;#50的值在子程序里也有效,所以#4=30 #50=18;這里使#50=18,然后返回 M99 為什么要把變量分為局部變量和全局變量?如果只有全局變量,由變量名不能重復(fù),就可能造成變量名不夠用;全局變量在任何地方都可以改變它的值,這是它的優(yōu)點(diǎn),也是它的缺點(diǎn)。說是優(yōu)點(diǎn),是因?yàn)閰?shù)傳遞很方便;說是缺點(diǎn),是因?yàn)楫?dāng)一個(gè)程序較復(fù)雜的時(shí)候,一不小心就可能在某個(gè)地用了相同的變量名或者改變了它的值,造成程序混亂。局部變量的使用,解決了同名變量沖突的問題,編寫子程序時(shí),不需要考慮其它地方是否用過某個(gè)變量名。什么時(shí)候用全局變量?什么時(shí)候用局部變量?在一般情況下,你應(yīng)優(yōu)先考慮選用局部變量。局部變量在不同的子程序里,可以重復(fù)使用,不會(huì)互相干擾。如果一個(gè)數(shù)據(jù)在主程序和
子程序里都要用到,就要考慮用全局變量。用全局變量來保存數(shù)據(jù),可以在不同子程序間傳遞、共享、以及反復(fù)利用。
(四)常量 PI:圓周率π
角度用弧度表示:1°對(duì)應(yīng) PI/180弧度
(五)運(yùn)算符
1、算數(shù)運(yùn)算符 +-* /
2、條件運(yùn)算符
EQ(=)NE(≠)GT(>)GE(≥)LT(<)LE(≦)
3、邏輯運(yùn)算符
AND(與)OR(或)NOT(異或)
(六)函數(shù)
SIN[正弦] COS[余弦] TAN[正切] EXP[指數(shù)] ATAN[反正切] ABS[絕對(duì)值] INT[取整] FIX[上取整] FUP[下取整] SQRT[開方]
(六)循環(huán)語句(WHILE語句)(七)宏指令編程
%O0001 #1=20(定義a值)#2=10(定義b值)
#4=5(定義刀具補(bǔ)償半徑R值)#5=0(定義步距角初始值)
G90G54G0X0Y0S1500M3 G43X#1Y#2D01 G01Z-5F30 G01Y0F100 WHILE[#5LE360] G01X[#1*COS[#5*PI/180]]Y-[#2*SIN[#5*PI/180]] #5=#5+2 ENDW GOG40Z100 M30 %
六、結(jié)束語
宏程序是數(shù)控加工必不可少的編程方法,只要我們掌握了宏程序的編程原理,對(duì)規(guī)則幾何圖形建立數(shù)學(xué)模型,就能解決實(shí)際加工中各種幾何形狀規(guī)則零件的加工和“疑難雜癥”,同時(shí)宏程序編制簡(jiǎn)單,通用性強(qiáng),加工效率高,在數(shù)控加工中有著廣泛的應(yīng)用。
第五篇:數(shù)控車論文
淺談中職學(xué)?!稊?shù)控車削編程與操作》的教學(xué)策略 內(nèi)容摘要:本文根據(jù)中職學(xué)校學(xué)生的特點(diǎn)與本校具體情況從幫助學(xué)生樹立學(xué)好專業(yè)技能的信心,補(bǔ)差補(bǔ)缺,逐步提高學(xué)生知識(shí)水平,運(yùn)用靈活的教學(xué)手段,精心設(shè)計(jì)教學(xué)內(nèi)容,改進(jìn)教學(xué)方法等方面就如何搞好《數(shù)控車削編程與操作》課程的教學(xué)淺談了一些具體做法。
關(guān)鍵詞:數(shù)控車工、教學(xué)方法、教學(xué)效果
隨著新型工業(yè)化的發(fā)展,數(shù)控加工技術(shù)在機(jī)械制造業(yè)中已廣泛使用,數(shù)控專業(yè)人才是國(guó)家緊缺型人才,目前全國(guó)數(shù)控專業(yè)人才仍有60多萬個(gè)空缺崗位,月薪都在6000多元以上,數(shù)控技能全面的人才年薪達(dá)20萬元,由此,各地中職學(xué)校都在新辦數(shù)控專業(yè),數(shù)控車工技術(shù)作為一門獨(dú)立的新的學(xué)科走進(jìn)了中職學(xué)校的課堂。然而目前一些中職學(xué)校在數(shù)控專業(yè)的教學(xué)方面存在著數(shù)控設(shè)備數(shù)量偏少,生源素質(zhì)良莠不齊,師資力量薄弱等問題。下面就如何根據(jù)中職學(xué)校學(xué)生的特點(diǎn)與本校具體情況,搞好該專業(yè)中的《數(shù)控車床編程與操作》課程的教學(xué),激發(fā)學(xué)生的學(xué)習(xí)積極性與主動(dòng)性,培養(yǎng)學(xué)生創(chuàng)造能力和創(chuàng)新與協(xié)作精神,以適應(yīng)社會(huì)對(duì)數(shù)控技能型人才的迫切需求談一談本人在教學(xué)工作中的幾點(diǎn)具體做法。
一、幫助學(xué)生樹立學(xué)好專業(yè)技能的信心
目前中職學(xué)校的學(xué)生大多出生在上世紀(jì)90年代以后,多數(shù)同學(xué)個(gè)性較強(qiáng),缺乏吃苦耐勞的品格。有的同學(xué)文化基礎(chǔ)較差,怕向老師提問題。原因多是怕提出的問題太簡(jiǎn)單讓人笑話,更怕老師不耐煩說自己笨。所以做為教師具有誨人不倦的耐心,關(guān)心和幫助學(xué)生樹立信心十分重要。我在教學(xué)中常常注意活躍課堂氣氛,搞好和同學(xué)的關(guān)系并經(jīng)常鼓勵(lì)他們,并且還時(shí)常注意對(duì)學(xué)生的敬業(yè)精神、創(chuàng)造能力及創(chuàng)新精神等綜合職業(yè)素質(zhì)的培養(yǎng)。我常告誡學(xué)生“做任何事情有信心不一定能成功,但沒有信心一定要失?。 ?、“知識(shí)改變命運(yùn),學(xué)習(xí)成就未來!”,以此來激發(fā)他們的學(xué)習(xí)信心和勇氣。
二、補(bǔ)差補(bǔ)缺,逐步提高學(xué)生知識(shí)水平
數(shù)控專業(yè)要求學(xué)生有一定的數(shù)學(xué)基礎(chǔ)知識(shí),如三角函數(shù)、平面幾何等,以利于編程時(shí)的節(jié)點(diǎn)計(jì)算等。但是,中職學(xué)校招收的學(xué)生大多數(shù)文化基礎(chǔ)差,有的初中和小學(xué)的知識(shí)都沒弄清楚,數(shù)學(xué)基礎(chǔ)也比較差,面對(duì)著這些學(xué)生,我經(jīng)常深入學(xué)生中為他們補(bǔ)課,以達(dá)到補(bǔ)差補(bǔ)缺,逐步提高的目的。
三、精心設(shè)計(jì)教學(xué)內(nèi)容,改進(jìn)教學(xué)方法
數(shù)控加工技術(shù)中的一些理論十分抽象,多數(shù)學(xué)生由于受文化程度 的影響理解起來非常困難,因此教師在教學(xué)中要精心設(shè)計(jì)教學(xué)內(nèi)容,改進(jìn)教學(xué)方法,才能提高課堂教學(xué)效果;我在教學(xué)中結(jié)合課程特點(diǎn),采用任務(wù)驅(qū)動(dòng)法來組織教學(xué)做過如下設(shè)計(jì): 任務(wù)項(xiàng)目課題:軸類零件的加工
問題分析:在學(xué)習(xí)了數(shù)控編程的基礎(chǔ)理論后,需進(jìn)一步提高學(xué)生的動(dòng)手技能。為使學(xué)生能較快較好的掌握操作技能,按數(shù)控車床中級(jí)工的標(biāo)準(zhǔn)進(jìn)行技能訓(xùn)練。由軸類零件圖,按要求加工出零件。
任務(wù)分析:要完成本次課題,學(xué)生需要做完下面幾項(xiàng)工作:
一、分析零件的圖樣
1、看懂零件圖
2、精度分析:尺寸精度,形位公差,表面粗糙度
二、加工工藝分析
1、編程原點(diǎn)的確定;
2、制定加工方案及加工路線;
3、工件的定位,裝夾與刀具量具的選用;
4、切削用量的選擇
(1)主軸轉(zhuǎn)速(2)進(jìn)給速度
(3)切削深度(背吃刀量)
5、輪廓基點(diǎn)(節(jié)點(diǎn))的計(jì)算;
6、確定加工工藝,填寫數(shù)控加工工藝卡;
三、編寫加工程序及輸入程序
四、工件的加工操作
1、裝夾工件,裝刀、對(duì)刀;
2、加工操作:程序檢測(cè),處理加工過程中出現(xiàn)的問題;
五、工件的檢測(cè)及評(píng)分
按中級(jí)工標(biāo)準(zhǔn)進(jìn)行自評(píng) 相關(guān)知識(shí):普車基本理論與普車技能、數(shù)控基礎(chǔ)理論知識(shí)、機(jī)械加工工藝學(xué)理論知識(shí)、制圖知識(shí)、測(cè)量原理。材料清單:45鋼(毛坯料)
刀具:符合要求的數(shù)控車刀、外圓粗車刀、三角螺紋刀、切斷刀、外圓精車刀。
量具:千分尺、游標(biāo)卡尺、半徑規(guī)等。實(shí)施過程: 第一階段:活動(dòng)開始
討論分析零件圖,提出任務(wù)要求:
1、學(xué)生分成6人一組
2、判斷工作表面,精度要求最高表面,看懂零件圖
3、每一小組按要求加工出零件 第二階段:項(xiàng)目活動(dòng)開展
1、每一小組按要求編寫工藝卡和編寫零件程序
2、操作機(jī)床加工工件,生產(chǎn)出合格零件
3、自我檢測(cè)評(píng)分
4、各小組介紹自己的加工過程,展示成果
5、回答其他小組提問 第三階段:總結(jié)
學(xué)生根據(jù)加工的零件,總結(jié)由圖紙到零件的整個(gè)順序
通過這樣精心設(shè)計(jì)教學(xué)內(nèi)容,采用合理的教學(xué)方法,大大提升了學(xué)生的學(xué)習(xí)興趣以及學(xué)生參與的主動(dòng)性、積極性、收到了良好的教學(xué)效果。
四、貼近生活,引入形象生動(dòng)的實(shí)例來提升學(xué)生學(xué)習(xí)興趣
在項(xiàng)目引入的教學(xué)環(huán)節(jié)中教師應(yīng)在課前進(jìn)行認(rèn)真思考選擇合理的項(xiàng)目。項(xiàng)目的內(nèi)容應(yīng)盡可能選擇日常生活中常見的,并且在教學(xué)過程中能夠完成的零部件。如果無法找到,教師可自行設(shè)計(jì)比較合適的項(xiàng)目。項(xiàng)目設(shè)置中也可適當(dāng)增加可以提升學(xué)生學(xué)習(xí)興趣的項(xiàng)目。例如:我在教學(xué)中以酒杯的制作為例介紹圓弧的編程加工過程。
我在教學(xué)過程中利用問題的設(shè)置引出本次課完成的項(xiàng)目。以生活中一些有趣味的東西,可以使學(xué)生了解相關(guān)知識(shí),又能提高上課積極性。
五、運(yùn)用靈活的教學(xué)手段獲得良好教學(xué)效果
為了提高教學(xué)效果,我根據(jù)學(xué)校具體情況在教學(xué)中打破傳統(tǒng)教學(xué)模式,靈活運(yùn)用多種教學(xué)手段將教學(xué)環(huán)境突破到課堂、仿真實(shí)驗(yàn)室和實(shí)訓(xùn)車間三個(gè)場(chǎng)所。首先,在課堂上進(jìn)行必要的編程理論講解,并多舉些典型實(shí)例讓學(xué)生反復(fù)去練習(xí)和體會(huì)。其次,在仿真實(shí)驗(yàn)室利用數(shù)控仿真軟件對(duì)學(xué)生進(jìn)行系統(tǒng)的編程與操作仿真訓(xùn)練。這一階段一般為四至五周的時(shí)間,應(yīng)使所有同學(xué)都能夠利用仿真軟件加工出中等復(fù)雜程度的零件。最后,深入實(shí)訓(xùn)車間,指導(dǎo)學(xué)生由易到難的去加工四至五個(gè)典型零件。教學(xué)中我還采用多媒體等現(xiàn)代教學(xué)手段讓學(xué)生看加工視頻錄像,帶領(lǐng)學(xué)生到車間實(shí)際參觀,指導(dǎo)學(xué)生將所得的感性認(rèn)識(shí)上升為理性認(rèn)識(shí),激發(fā)和增強(qiáng)了學(xué)生的學(xué)習(xí)興趣,獲得良好的教學(xué)效果。
總之,在教學(xué)過程中,我們教師要結(jié)合中職學(xué)生的需要,采用多種靈活的教學(xué)手段,有效地利用學(xué)校的教學(xué)條件和網(wǎng)絡(luò)資源以及社會(huì)資源來開展教學(xué),從而提高學(xué)生的學(xué)習(xí)興趣,培養(yǎng)學(xué)生數(shù)控編程與操作能力,為學(xué)生今后發(fā)展打下基礎(chǔ)。