數控宏程序編程入門_第1頁
數控宏程序編程入門_第2頁
數控宏程序編程入門_第3頁
數控宏程序編程入門_第4頁
數控宏程序編程入門_第5頁
已閱讀5頁,還剩7頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、宏程序大家都在問宏程序其實說起來宏就是用公式來加工零件的,比如說橢圓,如果沒有宏的話,我們要逐點算出曲線上的點,然后慢慢來用直線逼近,如果是個光潔度要求很高的工件的話,那么需要計算很多的點,可是應用了宏后,我們把橢圓公式輸入到系統中然后我們給出Z坐標并且每次加10um那么宏就會自動算出X坐標并且進行切削,實際上宏在程序中主要起到的是運算作用.宏一般分為A類宏和B類宏.A類宏是以G65 Hxx P#xx Q#xx R#xx的格式輸入的,而B類宏程序則是以直接的公式和語言輸入的和C語言很相似在0i系統中應用比較廣.由于現在B類宏程序的大量使用很多書都進行了介紹這里我就不再重復了,但在一些老系統中,

2、比如法蘭克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就是變量號,關于變量號是什么意思再不知道的的話我也就沒治了,不過還是教一下吧,變量號就是把數值代入到一個固定的地址中,固

3、定的地址就是變量,一般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做為例子,應用的時候別把

4、他們當格式就行,基本指令: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 R10G65 H02 P#101 Q10 R#103G65 H02 P#101 Q10 R20上面4個都是加指令的格式都是把Q后面的數值或變量號內的數值加上R后面的數值或變量號內的數值然后等于到P后面的變量號中.H03減指令;格式G65 H03 P#101 Q#102 R#1

5、03,把#102的數值減去#103的數值賦予#101 G65 H03 P#101 Q#102 R10G65 H03 P#101 Q10 R#103G65 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 R10G65 H04 P#101 Q10 R#103G65 H04 P#101 Q20 R10上面4個都是乘指令的格式都是把Q后面的數值

6、或變量號內的數值乘上R后面的數值或變量號內的數值然后等于到P后面的變量號中.H05除指令;格式G65 H05P#101 Q#102 R#103,把#102的數值除以#103的數值賦予#101 G65 H05 P#101 Q#102 R10G65 H05 P#101 Q10 R#103G65 H05 P#101 Q20 R10上面4個都是除指令格式都是把Q后面的數值或變量號內的數值除以R后面的數值或變量號內的數值然后等于到P后面的變量號中.(余數不存,除數如果為0的話會出現112報警三角函數指令:H31 SIN正玄函數指令:格式G65 H31 P#101 Q#102 R#103;含義Q后面的#1

7、02是三角形的斜邊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 H

8、21 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程序段,如果不

9、符合就繼續執行下面的程序段.用戶宏程序能完成某一功能的一系列指令像子程序那樣存入存儲器,用一個總指令來它們,使用時只需給出這個總指令就能執行其功能。l 所存入的這一系列指令用戶宏程序l 調用宏程序的指令宏指令l 特點:使用變量一.變量的表示和使用(一變量表示#I(I=1,2,3,或#<式子>例:#5,#109,#501,#1+#2-12(二變量的使用1.地址字后面指定變量號或公式格式:<地址字>#I<地址字>-#I<地址字><式子>例:F#103,設#103=15 則為F15Z-#110,設#110=250 則為Z-250X#24+#

10、18*COS#12.變量號可用變量代替例:#30,設#30=3 則為#33.變量不能使用地址O,N,I例:下述方法下允許O#1;I#2 6.00×100.0;N#3 Z200.0;4.變量號所對應的變量,對每個地址來說,都有具體數值范圍例:#30=1100時,則M#30是不允許的5.#0為空變量,沒有定義變量值的變量也是空變量6.變量值定義:程序定義時可省略小數點,例:#123=149MDI鍵盤輸一.變量的種類1. 局部變量#1#33一個在宏程序中局部使用的變量例:A宏程序B宏程序#10=20 X#10 不表示X20斷電后清空,調用宏程序時代入變量值2. 公共變量#100#149,#

11、500#531各用戶宏程序內公用的變量例:上例中#10改用#100時,B宏程序中的X#100表示X20#100#149 斷電后清空#500#531保持型變量(斷電后不丟失3. 系統變量固定用途的變量,其值取決于系統的狀態例:#2001值為1號刀補X軸補償值#5221值為X軸G54工件原點偏置值入時必須輸入小數點,小數點省略時單位為m一.運算指令運算式的右邊可以是常數、變量、函數、式子式中#j,#k也可為常量式子右邊為變量號、運算式1.定義#I=#j2.算術運算#I=#j+#k#I=#j-#k#I=#j*#k#I=#j/#k3.邏輯運算#I=#JOK#k#I=#JXOK#k#I=#JAND#k4

12、.函數#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 BCDBIN(二進制#I=BCN#j BINBCD1.說明1 角度單位為度例:90度30分為90.5度2 ATAN函數后的兩個邊長要用“1”隔開例:#1=ATAN1/-1時,#1為了35.03 ROUND用于語句中的地址,按各地址的最小設定單位進行四舍五入例:設#1=1.2345,#2=2.3456,設定單位1mG91 X-#1;X-1.235X-#

13、2 F300;X-2.346X#1+#2;X3.580未返回原處,應改為XROUND#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.05 指令函數時,可只寫開頭2個字母例:ROUNDROFIXFI6 優先級函數乘除(*,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=1N1 IF #2 GT10 GOTO 2#1=#1+#2;#2=#2+1;GOTO 1N2 M301.循環格

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論