(文章底部可以評(píng)論,歡迎對(duì)文章進(jìn)行點(diǎn)評(píng)和知識(shí)補(bǔ)充)
數(shù)控編程教學(xué)
訂單 | 技術(shù) | 干貨 | 編程
關(guān)注可加入機(jī)械行業(yè)群
(本文由鄒軍老師原創(chuàng),在沒(méi)有人指引你的時(shí)候,你靠自己的能力,或者靠自己一點(diǎn)點(diǎn)去打通去積累,是很慢的,如果別人把自己的經(jīng)驗(yàn)傾囊相授,你可以少走很多彎路?!靖u軍學(xué)數(shù)控編程】,讓你成為經(jīng)驗(yàn)豐富的編程高手。想學(xué)習(xí)《UG編程》,《宏編程》,學(xué)習(xí)加微信:Yuki7557)
很多從事CNC的人,想學(xué)宏程序,在網(wǎng)上尋找了好多資料,不少人也在書(shū)店購(gòu)買了這方面的書(shū)籍,感覺(jué)宏程序還是比較比較難學(xué)的。
其實(shí)市面上很多這方面的資料和書(shū),把簡(jiǎn)單知識(shí)講解復(fù)雜了。其實(shí)宏程序并不難,只要你會(huì)普通程序,我都能讓你100%學(xué)會(huì)數(shù)控宏程序。
相信大家見(jiàn)過(guò)宏程序的朋友,你們一定會(huì)見(jiàn)到很多的猶如#1、#2、#3....#149等宏變量以及一些IF [#1LE#3]GOTO 100 等之類的宏語(yǔ)句,其實(shí)用諸如用#1、#2等變量編寫(xiě)的程序就叫宏程序。
《跟鄒軍學(xué)數(shù)控宏程序編程》
將引領(lǐng)大家一步一個(gè)腳印,從零到提高
下面我們進(jìn)入正題。學(xué)宏之前先搞懂變量
我們回想下手工編程很重要的一點(diǎn)是:計(jì)算零件圖紙的“點(diǎn)位”值。這些數(shù)值相對(duì)于坐標(biāo)原點(diǎn)是固定的數(shù)值
而變量,它不是一個(gè)固定的數(shù)值,它是會(huì)變化的量,所以我們用符號(hào)來(lái)表示變量。FUNC系統(tǒng)是用#1,#2等等符號(hào)來(lái)表示變量的。*(機(jī)床系統(tǒng)不同表示的方式也不同,在這我以FUNC系統(tǒng)為例)
FUNC系統(tǒng)是用#1,#2等等來(lái)表示變量的。即“#”和“數(shù)字”組成的。如#1,#2……#33等。這些#后面的數(shù)子1,2,3等等有什么含義嗎?其實(shí)它只是宏變量的代號(hào)而已。
舉個(gè)最簡(jiǎn)單的例子:如果有三個(gè)人,他們的名字叫小李、小李、小李。那么當(dāng)你呼叫小李的時(shí)候,會(huì)發(fā)生一個(gè)問(wèn)題,這三個(gè)人都會(huì)回答,但你其實(shí)只想喊其中的一個(gè)。這就分不清了。
同理,#1#1 #1,如果后面的數(shù)字都是一樣,當(dāng)系統(tǒng)使用#1的時(shí)候,它也會(huì)發(fā)生糊涂,到底讓我用哪個(gè)呢?所以為了區(qū)分它們,就把后面的數(shù)字寫(xiě)成不同的,比如#1,#2,#3。此時(shí)如果系統(tǒng)使用#1,就不會(huì)發(fā)生混亂了.
變量只是一個(gè)宏代號(hào)而已,并沒(méi)有實(shí)際的意義,好比一張銀行卡,里面沒(méi)有存錢,這張卡就沒(méi)多大意義。那么變量沒(méi)有去給它賦值,也就沒(méi)有多大意義。
這所謂賦值,我們可以這么理解,比如把#1這個(gè)變量當(dāng)做的銀行卡,你往卡里存了多錢,那么這些卡里就有多了錢。
比如往#1里面存了500元,這么一個(gè)過(guò)程就叫變量賦值。如果你不在往“#1“里面存錢,或取錢,那么#1就相當(dāng)于500.也就是說(shuō)#1不發(fā)生運(yùn)算的情況下就是500.如果有這么一個(gè)程序段G0X#1,也就等同于此程序段G0X500.
關(guān)于變量的賦值,機(jī)床有格式要求的(以FUNC系統(tǒng)為例)
變量=表達(dá)式
什么意思呢,也就是說(shuō)右邊的表達(dá)式運(yùn)算后的結(jié)果賦值給左邊的變量。
比如:#1=1+2 也就是說(shuō)右邊1+2這個(gè)表達(dá)式運(yùn)算的結(jié)果賦值給左邊的變量 #1
比如:#3=6*COS30 右邊6*COS3這個(gè)表達(dá)式運(yùn)算的結(jié)果賦值給左邊的變量 #3
比如:#101=100 右邊100這個(gè)數(shù)值賦值給左邊的變量 #101
小結(jié):變量=表達(dá)式
表達(dá)式的結(jié)果賦值給變量,這個(gè)表達(dá)式可以是具體數(shù)值(如10,30.5等數(shù)值),也可以是運(yùn)算式如300-20,還可以是變量與數(shù)值的運(yùn)算 (如#2+160),以及變量與變量之間的運(yùn)算在賦值給變量(如#1=#10/#3)等。
在機(jī)床上運(yùn)行下列程序,檢查變量數(shù)值以及機(jī)床動(dòng)作
上面諸如ABS、ROUND、FUP、FIX等其實(shí)是些函數(shù)
比如ROUND這個(gè)函數(shù) ,它的含義是去掉小數(shù)點(diǎn),并對(duì)小數(shù)點(diǎn)后面的值四舍五入,使整個(gè)數(shù)值結(jié)果為整數(shù)。
如:#1=1.234
那么#2=ROUND [#1]
#2的結(jié)果就是1
如:#1=1.6
那么#2=ROUND [#1]
#2的結(jié)果就是2 (小數(shù)點(diǎn)后面的值 四舍五入)
這些函數(shù)對(duì)我們編程有什么意義?或者說(shuō)編程的時(shí)候哪些地方需要用這些函數(shù)?
別急,上面僅僅是變量的講解,萬(wàn)丈高樓,需要扎實(shí)的地基。因此我為數(shù)控愛(ài)好者以及希望提升技能的朋友原創(chuàng)了一套源于一線的實(shí)戰(zhàn)數(shù)控宏程序編程教程。
把每個(gè)知識(shí)點(diǎn)給你講透,讓你玩熟,,一步一個(gè)腳印帶著你提高,讓你學(xué)到絕活!
聯(lián)系客服