巨集程式(MACRO)介紹_第1頁(yè)
巨集程式(MACRO)介紹_第2頁(yè)
巨集程式(MACRO)介紹_第3頁(yè)
巨集程式(MACRO)介紹_第4頁(yè)
巨集程式(MACRO)介紹_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

LeadingNumericalController寶元數(shù)控精密股份(gǔfèn)有限公司寶成集團(tuán)2011.01

巨集程式(chéngshì)(MACRO)介紹1精品資料一般傳統(tǒng)之?dāng)?shù)值程式(chéngshì)語(yǔ)言(NCPROGRAM)有其使用上之限制,無(wú)法作運(yùn)算、無(wú)法有條件判斷等功能,MACRO指令在語(yǔ)法上提供較高階之使用方式,如IF、GOTO、函數(shù)、變數(shù)等功能,提供使用者更大之彈性。當(dāng)系統(tǒng)應(yīng)用時(shí),爲(wèi)了讓使用者使用一簡(jiǎn)單之指令即可呼叫執(zhí)行一連串之常用動(dòng)作簡(jiǎn)介:,在此情況下,可利用此MACRO功能來(lái)發(fā)展所要執(zhí)行之動(dòng)作。

巨集程式(chéngshì)(MACRO)

2精品資料巨集指令(zhǐlìng)呼叫及返回指令(zhǐlìng)巨集指令為獨(dú)立之副程式有其特定(tèdìng)之編號(hào)名稱,主程式呼叫巨集指令後,程式會(huì)轉(zhuǎn)向去執(zhí)行指定的巨集指令程式,而主程式的呼叫敘述中,可定義巨集程式指令的變數(shù)簡(jiǎn)分G65、G66、G67為下列幾種模式:3精品資料G65單純呼叫(hūjiào)指令格式:G65:P___L___A___B___C___.................P___:為巨集指令程式之程式號(hào)碼

A___B___C___........:巨集指令程式變數(shù)之位址,後面要指定相對(duì)於A、B、C…..變數(shù)數(shù)值,即A=#1、B=#2、C=#3…..,例A3.B4.C1.則表示#1=3,#2=4,#3=1。

除了(chúle)上述P及L引數(shù)外,還可透過(guò)其他NC位址(英文字母,除G、L、N、O、P之外)來(lái)傳入引數(shù)無(wú)先後次序之分,這些引數(shù)值對(duì)應(yīng)到所呼叫的巨集程式裡面的區(qū)域變數(shù)。對(duì)應(yīng)表如下:4精品資料NC位址區(qū)域變數(shù)NC位址區(qū)域變數(shù)NC位址區(qū)域變數(shù)A#1I#9T#20B#2J#10U#21C#3K#11V#22D#4M#13W#23E#5Q#17X#24F#6R#18Y#25H#8S#19Z#26G65單純呼叫(hūjiào)5精品資料G65程式(chéngshì)範(fàn)例:O0001;..G65P0008L1A2.0B3.0;..M30;O0008;#3=#1+#2;G00X#3;(等於G00X5.0;)M99;#1=2.0#2=3.0G65單純呼叫(hūjiào)6精品資料在G65單節(jié)中,G65必須撰寫(xiě)在所有引數(shù)之前。G65可作巢狀呼叫,G65和G66的組合最多可到第4層(不包含主程式(chéngshì),主程式(chéngshì)為第0層),且每一層均擁有各自的區(qū)域變數(shù),如下圖所示:G65單純呼叫(hūjiào)7精品資料G66型式(xínɡshì)呼叫G66此種呼叫又稱為持續(xù)性呼叫,G66和G65的差別在於,後者只是呼叫一次巨集程式,但G66所呼叫的巨集程式會(huì)在之後的每一個(gè)移動(dòng)單節(jié)結(jié)束後再被呼叫,一直到用G67來(lái)取消(qǔxiāo)此模式呼叫。指令格式:G66:P___A___B___C___.................G66:為巨集指令程式呼叫指令P___:為巨集指令程式之程式號(hào)碼A___B___C___........:巨集指令程式變數(shù)之位址,其設(shè)定與G65相同。G67:為取消(qǔxiāo)程式呼叫指令。8精品資料O0001;[主程式(chéngshì)]..G66P0008L1A2.0B3.0;G91G00Y10.;Y10.;G67;Y10.;M30;O0008;[副程式]#3=#1+#2;G91G00Z#3;Z-#3;M99;移動(dòng)後,執(zhí)行O0008回O0001移動(dòng)後,執(zhí)行O0008移動(dòng)後,執(zhí)行O0008G66型式(xínɡshì)呼叫9精品資料

在G66單節(jié)中,G66必須撰寫(xiě)在所有引數(shù)之前。與G65相同,G66亦可作巢狀呼叫,G66和G65的組合最多到第4層,(不包含主程式,主程式為第0層),但G66的引數(shù)(對(duì)應(yīng)到巨集程式的區(qū)域變數(shù))只在G66單節(jié)設(shè)定乙次,之後的模式(móshì)呼叫並不會(huì)再重新設(shè)定。巨集指令(zhǐlìng)呼叫及返回指令(zhǐlìng)10精品資料M98:呼叫副程式指令格式:M98P__L__;引數(shù)說(shuō)明:P__:所要呼叫的副程式號(hào)碼(副程式名稱去掉(qùdiào)「O」字母後的4碼數(shù)字),若無(wú)輸入,將觸發(fā)系統(tǒng)警報(bào)【INT3111缺少欲呼叫程式名稱(P位址無(wú)輸入)】。L__:重覆次數(shù)。M98不可以指定引數(shù);G65指令可以指定引數(shù)。M98區(qū)域變數(shù)的層次固定;G65的區(qū)域變數(shù)則依巢狀的深度變化(例如#1在M98前後的意義相同,G65時(shí)則不同)。M98的呼叫層和G65、G66的組合最大爲(wèi)8層;G65、G66的呼叫層數(shù)最大爲(wèi)4層。M98巨集指令(zhǐlìng)呼叫11精品資料利用上述方式來(lái)呼叫(hūjiào)巨集程式O9010~O9012時(shí),同樣可透過(guò)引數(shù)來(lái)傳遞數(shù)值。G碼呼叫(hūjiào)巨集程式參數(shù)編號(hào)巨集檔名P0166O9010P0167O9011P0168O901212精品資料利用上述方式(fāngshì)來(lái)呼叫巨集程式O9001~O9008時(shí),同樣可透過(guò)引數(shù)來(lái)傳遞數(shù)值。M碼呼叫(hūjiào)巨集程式參數(shù)編號(hào)巨集檔名P0146O9001P0147O9002P0148O9003P0161O9004P0162O9005P0163O9006P0164O9007P0165O900813精品資料利用上述(shàngshù)方式來(lái)呼叫巨集程式O9020時(shí),同樣可透過(guò)引數(shù)來(lái)傳遞數(shù)值。T碼呼叫(hūjiào)巨集程式參數(shù)編號(hào)巨集檔名P0169O902014精品資料變數(shù)編號(hào)範(fàn)圍分類(lèi)區(qū)域變數(shù)(LocalVariables):#01~#49:可讀寫(xiě)針對(duì)每一層程式都擁有49個(gè)區(qū)域變數(shù),只要(zhǐyào)結(jié)束此程式變數(shù)便會(huì)清除。但按下RESET鍵由於會(huì)回到主程式層但主程式層的區(qū)域變數(shù)內(nèi)容可用參數(shù)0141號(hào)來(lái)設(shè)定RESET時(shí)是否清除,但若為重新開(kāi)機(jī)則不論再哪一層區(qū)域變數(shù)都會(huì)清空。#00永遠(yuǎn)為空值。

15精品資料

共同變數(shù)(GlobalVariables)@001~@999:可讀寫(xiě)所有階層程式均共用此共同變數(shù),F(xiàn)ANUC稱之為CommonVariables(公共變量),其中@001~@400開(kāi)機(jī)或按下RESET鍵便會(huì)清空(qīnɡkōnɡ),@401~@999則是由參數(shù)0140號(hào)決定是否開(kāi)機(jī)或按下RESET鍵時(shí)清空(qīnɡkōnɡ)數(shù)值。@000永遠(yuǎn)為空值。變數(shù)16精品資料系統(tǒng)變數(shù)(SystemVariables)銑床車(chē)床

「保持」代表按下〈RESET〉鍵、程式重新啟動(dòng)或模式(móshì)切換時(shí),此系統(tǒng)變數(shù)數(shù)值不會(huì)清除,直到新的數(shù)值覆寫(xiě),但重新開(kāi)機(jī)則會(huì)清除。變數(shù)$001~$199 : 唯讀$200~$399 : 唯讀及保持(bǎochí)$400~$599 : 可讀寫(xiě)$600~$799 : 可讀寫(xiě)及保持(bǎochí)$1000~$1999: 唯讀$2000~$2999: 可讀寫(xiě)(軟體版本VER:01.xx.xxx與VER:03.xx.xxx適用)$1 ~ $99 :

唯讀$100 ~ $199 :

唯讀及保持$200 ~ $299 :

可讀寫(xiě)$300 ~ $399 :

可讀寫(xiě)及保持(軟體版本VER:04.xx.xxx適用)$1 ~ $199 :

唯讀$200 ~ $399 :

唯讀及保持$400 ~ $599 :

可讀寫(xiě)$600 ~ $799 :

可讀寫(xiě)及保持17精品資料

開(kāi)放系統(tǒng)變數(shù)分類(lèi)

1.MLCI/O介面信號(hào)OPMLCMLCCBitC100~C115$200~$215OPMLCMLCSBitS100~S115$600~$6152.時(shí)間資訊$190

軸卡中斷累計(jì)數(shù):軸卡每發(fā)一次中斷此數(shù)值便會(huì)加一。$191~$193系統(tǒng)日期(rìqī):由IPCBIOS讀取$191=西元年yyyy$192=月mm$193=日dd如:2002/08/15$191=2002.$192=8.$193=5.18精品資料

開(kāi)放系統(tǒng)變數(shù)分類(lèi)

銑床車(chē)床

$230X軸機(jī)械座標(biāo)$231Y軸機(jī)械座標(biāo)$232Z軸機(jī)械座標(biāo)$233C軸機(jī)械座標(biāo)$240X軸絕對(duì)座標(biāo)$241Y軸絕對(duì)座標(biāo)$242Z軸絕對(duì)座標(biāo)$243C軸絕對(duì)座標(biāo)$250X軸相對(duì)座標(biāo)$251Y軸相對(duì)座標(biāo)$252Z軸相對(duì)座標(biāo)$253C軸相對(duì)座標(biāo)$270G31Skip時(shí)X軸機(jī)械座標(biāo)$271G31Skip時(shí)Y軸機(jī)械座標(biāo)$272G31Skip時(shí)Z軸機(jī)械座標(biāo)編號(hào)說(shuō)明$001群組01的模式G碼$002群組02的模式G碼$003群組03的模式G碼$004群組04的模式G碼$005群組05的模式G碼編號(hào)說(shuō)明$001群組01的模式G碼$002群組02的模式G碼$003群組03的模式G碼$004群組04的模式G碼$005群組05的模式G碼$100X軸機(jī)械座標(biāo)$101Y軸機(jī)械座標(biāo)$102Z軸機(jī)械座標(biāo)$103X軸絕對(duì)座標(biāo)$104Y軸絕對(duì)座標(biāo)$105Z軸絕對(duì)座標(biāo)$106X軸相對(duì)座標(biāo)$107Y軸相對(duì)座標(biāo)$108Z軸相對(duì)座標(biāo)19精品資料變數(shù)表示(biǎoshì)、變數(shù)引用變數(shù)表示:#(#10) (正確)#(#10-1) (正確)#(#6/2) (正確)#(#3-FIX(#2)) (正確)##2 (不正(bùzhènɡ)確)

變數(shù)引用:X#33;(若#33為1.2,等同於X1.2;)Z-#33;(若#33為2.1,等同於Z-2.1;G#33;(若#33為3,等同於G3;)20精品資料MACROCALL時(shí)所有該層之區(qū)域變數(shù)預(yù)清爲(wèi)VACANT。解譯CNC指令時(shí),VACANT值會(huì)被忽略(hūlüè)而不被解出例如:

當(dāng)#1=10,#2=VACANT時(shí)

G00X#1Y#2;相當(dāng)於G00X10;

如此對(duì)MACRO內(nèi)容之寫(xiě)作很有幫助運(yùn)算時(shí),除assign(=)外與0同例如:

若#1=VACANT

#2=#1時(shí)#2=VACANT

#2=#1+#1時(shí)#2=0VACANT值之說(shuō)明示時(shí),除==及!=外與條件表0同例如(lìrú):

若#1=VACANT

#1==#0爲(wèi)真(true)

#1==0爲(wèi)假(false)

#1>=0爲(wèi)真(true)21精品資料(1)替代(Substitution),=#i=#j(2)加法(ADDITION),+#i=#j+#k(3)減法(SUBTRATION),-#i=#j-#k(4)乘法(chéngfǎ)(MULTIPLICATION),*#i=#j*#k(5)除法(QUOTIENT),/#i=#j/#k(6)括?。≒ARENRHESIS),()#i=#j*(#k+#l)數(shù)學(xué)運(yùn)算命令(mìnglìng)22精品資料(1)AND邏輯運(yùn)算,&&#i=#j&&#k2個(gè)1為真(2)OR邏輯運(yùn)算,||#i=#j||#k只要(zhǐyào)有1個(gè)1為真(3)NOT邏輯運(yùn)算,!#i=!#j2個(gè)相同為假邏輯運(yùn)算命令(mìnglìng)23精品資料(1)大於(GT),>#i=#j>#k,如果(rúguǒ)#j大於#k,則敍述爲(wèi)真,#i=1。(2)小於(LT),<#i=#j<#k,如果(rúguǒ)#j小於#k,則敍述爲(wèi)真,#i=1。(3)大於等於(GE),>=#i=#j>=#k,如果(rúguǒ)#j大於等於#k,則敍述爲(wèi)真,#i=1。(4)小於等於(LE),<=#i=#j<=#k,如果(rúguǒ)#j小於等於#k,則敍述爲(wèi)真,#i=1。(5)等於,==#i=#j==#k,如果(rúguǒ)#j等於#k,則敍述爲(wèi)真,#i=1。(6)不等於,!=#i=#j!=#k,如果(rúguǒ)#j不等於#k,則敍述爲(wèi)真,#i=1。比較命令(mìnglìng)24精品資料使用IF~GOTO可以(kěyǐ)控制程式的流程.(1)條件跳躍IF(<Conditionalexpress>)GOTOn說(shuō)明:

如果<Conditionalexpress>條件成立,則跳至序號(hào)爲(wèi)n之區(qū)塊(block)執(zhí)行,否則繼續(xù)下一個(gè)區(qū)塊執(zhí)行。例如:

IF((#1+#2)>3)GOTO10;:N10G01X#3;(2)無(wú)條件跳躍GOTOn說(shuō)明:

直接跳至序號(hào)爲(wèi)n之區(qū)塊執(zhí)行。流程控制(kòngzhì)命令(IF~GOTO)25精品資料使用IF~GOTO可以控制程式(chéngshì)的流程.(2)無(wú)條件跳躍GOTOn說(shuō)明:

直接跳至序號(hào)爲(wèi)n之區(qū)塊執(zhí)行。流程控制(kòngzhì)命令(IF~GOTO)26精品資料(1)SIN函數(shù)#i=SIN(#J)(單位爲(wèi)角度(jiǎodù),degree)(2)COS函數(shù)#i=COS(#j)(單位爲(wèi)角度(jiǎodù),degree)(3)TAN函數(shù)#i=TAN(#j)(單位爲(wèi)角度(jiǎodù),degree)(4)ATAN函數(shù)#i=ATAN(#j,#k)(#j:直角三角形之對(duì)邊,#k:直角三角形之鄰邊)(#i:單位爲(wèi)角度(jiǎodù),degree)(5)SQRT函數(shù)#i=SQRT(#j)(均方根值)函數(shù)27精品資料(6)ABS函數(shù)#i=ABS(#j)(絕對(duì)值)(7)ROUND函數(shù)#i=ROUND(#j)(四捨五入)(8)FIX函數(shù)#i=FIX(#j) (無(wú)條件捨去)(9)GET函數(shù)(銑床)#i=GET(#k,#j)#j:刀具(dāojù)補(bǔ)正號(hào)碼(1~99)#k:1:刀長(zhǎng)補(bǔ)正值

2:刀具(dāojù)半徑補(bǔ)正值函數(shù)(9)GET函數(shù)(車(chē)床)#i=GET(#k,#j)#j:刀具(dāojù)補(bǔ)正號(hào)碼(1~30)#k:1:刀具(dāojù)磨耗補(bǔ)正X值2:刀具(dāojù)磨耗補(bǔ)正Z值3:刀具(dāojù)磨耗補(bǔ)正R半徑值4:刀具(dāojù)外型補(bǔ)正X值5:刀具(dāojù)外型補(bǔ)正Z值6:刀具(dāojù)外型補(bǔ)正R半徑值7:刀具(dāojù)補(bǔ)正型式8:刀具(dāojù)磨耗補(bǔ)正Y值9:刀具(dāojù)外型補(bǔ)正Y值28精品資料註解在"/*"與"*/"符號(hào)之間的輸入皆被捨棄

範(fàn)例:/*test1*/;G00X10./*test2*/;/*test3*/G01Y20.;G01X10.Y20.;/*test29精品資料30N1G90X0N2G90G00X10N3GOTO200;強(qiáng)制跳到N200N4G90G00X0N5M30N200IF(#1==10)GOTO4;如果(rúguǒ)#1=10,條件成立就會(huì)跳到N4#1=#1+1;#1累加一次G91G00X1M99P200;返回N200簡(jiǎn)易範(fàn)例主程式

溫馨提示

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

評(píng)論

0/150

提交評(píng)論