FANUC-0i數(shù)控系統(tǒng)PLC在數(shù)控倍率修調(diào)上的應(yīng)用
點(diǎn)擊:1415
A+ A-
所屬頻道:新聞中心
使用數(shù)控機(jī)床自定義面板,利用二進(jìn)制旋轉(zhuǎn)編碼開(kāi)關(guān)和PLC 編程實(shí)現(xiàn)速度倍率修調(diào)。這樣的方法設(shè)計(jì)者就可以根據(jù)實(shí)際需要來(lái)設(shè)計(jì)自己的操作面板而不一定使用FANUC 提供的標(biāo)準(zhǔn)面板,避免標(biāo)準(zhǔn)面板上的某些功能鍵浪費(fèi)和形式繁瑣,降低了成本。
1 進(jìn)給速度倍率信號(hào)
在FANUC數(shù)控系統(tǒng)中,手動(dòng)進(jìn)給速度、切削進(jìn)給速度、快速移動(dòng)速度都是由不同的參數(shù)和信號(hào)來(lái)定義的。以手動(dòng)進(jìn)給為例,其速度由參數(shù)No.1423來(lái)定義,可通過(guò)手動(dòng)進(jìn)給倍率信號(hào)*JV0~*JV15所指定的值進(jìn)行修調(diào)。如設(shè)定機(jī)床某一軸的手動(dòng)速度為3 000 mm/min,而將倍率信號(hào)值設(shè)為50%,則在JOG方式下,所選軸最終將以3 000x50 %=1 500mm/min的速度移動(dòng)。
*JV0~*JV15是16位的二進(jìn)制編碼信號(hào),其接口地址為GO10^-GO11,長(zhǎng)度為兩個(gè)字節(jié)。需要說(shuō)明的是,在FANUC PLC系統(tǒng)中,地址X代表來(lái)自機(jī)床側(cè)的輸入信號(hào),Y代表由PLC輸出到機(jī)床側(cè)的信號(hào),F(xiàn)代表來(lái)自NC系統(tǒng)的PLC信號(hào)輸入,G則代表由PLC輸出到NC系統(tǒng)的信號(hào)。
這里要注意,在FANUC數(shù)控系統(tǒng)中,“*”代表該信號(hào)為低電平“0”有效,因此:
當(dāng)*JV,為1時(shí),V; 0 當(dāng)*JV,為0時(shí),V; to 可以得。
不難看出這相當(dāng)于以倍率值的二進(jìn)制反碼表示。
FANUC系統(tǒng)中規(guī)定,當(dāng)*JV0~*JV15信號(hào)全部為“1”或“0”時(shí),倍率值都為0。因此,JOG進(jìn)給倍率可以0.01%的單位在0%~655.34%的范圍內(nèi)進(jìn)行選擇。
同樣,切削進(jìn)給速度倍率的功能為自動(dòng)運(yùn)行狀態(tài)下,車(chē)由實(shí)際移動(dòng)速度=編程速度x倍率。其信號(hào)*FVO~*FV7,接口地址6012,長(zhǎng)度為1字節(jié),可用下述公式表示:
信號(hào)也是低電平有效,手動(dòng)倍率信號(hào)推導(dǎo)規(guī)律同樣適用于切削進(jìn)給倍率信號(hào),以倍率100%為例。
2 CODB指令
由于JOG進(jìn)給倍率可在0~655.34%,切削進(jìn)給倍率可在0~254%如此寬的范圍內(nèi)修調(diào),僅用二進(jìn)制轉(zhuǎn)換開(kāi)關(guān),硬件上是很難實(shí)現(xiàn)的。這可以通過(guò)軟件PLC編程來(lái)解決。本文介紹PLC功能指令:二進(jìn)制代碼轉(zhuǎn)換CODB。它的優(yōu)點(diǎn)在于配合1個(gè)二進(jìn)制編碼開(kāi)關(guān)便可實(shí)現(xiàn)任意所需倍率設(shè)定的功能(倍率值及倍率數(shù)目都可根據(jù)需要來(lái)設(shè)定,而倍率值與二進(jìn)制編碼開(kāi)關(guān)輸入信號(hào)無(wú)直接關(guān)系)。CODB指令是將轉(zhuǎn)換表中指定的數(shù)據(jù)轉(zhuǎn)換為1字節(jié)、2字節(jié)或4字節(jié)格式的二進(jìn)制數(shù)據(jù),以補(bǔ)碼形式輸出到目標(biāo)地址。
1)控制條件
(1)復(fù)位信號(hào)RST, "0表示不復(fù)位;1表示將錯(cuò)誤輸出W1復(fù)位。
(2)工作指令A(yù)CT, 0表示不執(zhí)行CODB指令;1執(zhí)行CODB執(zhí)行。
2)參數(shù)
(1)指定轉(zhuǎn)換表中數(shù)據(jù)的存儲(chǔ)格式,1表示1個(gè)字節(jié)的二進(jìn)制(byte); 2表示2字節(jié)的二進(jìn)制(word);4表示4字節(jié)的二進(jìn)制(Dword)。
(2)轉(zhuǎn)換表中數(shù)據(jù)的數(shù)量,表中最多可以容納256個(gè)字節(jié)。
(3)轉(zhuǎn)換表數(shù)據(jù)輸入地址,轉(zhuǎn)換表中的數(shù)據(jù)可通過(guò)指定表中的數(shù)據(jù)編號(hào)(第1個(gè)數(shù)據(jù)編號(hào)為0)取出,指定編號(hào)的地址稱(chēng)為轉(zhuǎn)換數(shù)據(jù)輸入地址,長(zhǎng)度占一個(gè)字節(jié)。
(4)轉(zhuǎn)換數(shù)據(jù)輸出地址,存儲(chǔ)輸出數(shù)據(jù)的地址稱(chēng)為轉(zhuǎn)換數(shù)據(jù)輸出地址。長(zhǎng)度為以指定地址開(kāi)始在格式中規(guī)定的連續(xù)字。
3)轉(zhuǎn)換數(shù)據(jù)表,該表編在數(shù)據(jù)輸出地址與錯(cuò)誤輸出W1之問(wèn)。
4)輸出,如果在CODB指令執(zhí)行有異常時(shí),W1輸出為1,表明出錯(cuò)。
利用CODB指令進(jìn)行倍率修調(diào)的原理就是將二進(jìn)制編碼開(kāi)關(guān)的輸入信號(hào)看作轉(zhuǎn)換表的數(shù)據(jù)編號(hào),把所對(duì)應(yīng)的表中數(shù)據(jù)以二進(jìn)制補(bǔ)碼形式輸出到倍率信號(hào)接口地址GO10 ~GO11或6012中去。所設(shè)倍率的數(shù)目由硬件開(kāi)關(guān)的形式和轉(zhuǎn)換表中數(shù)據(jù)的數(shù)量決定;轉(zhuǎn)換表數(shù)據(jù)輸入地址用來(lái)存儲(chǔ)編碼開(kāi)關(guān)的輸入信號(hào)狀態(tài)。表內(nèi)數(shù)據(jù)是如何經(jīng)指令執(zhí)行后輸出為相應(yīng)的倍率信號(hào)的。
3 設(shè)置轉(zhuǎn)換數(shù)據(jù)表
要得到所需的倍率,關(guān)鍵在于如何正確設(shè)置轉(zhuǎn)換數(shù)據(jù)表,這也是使用CODB的核心所在。要弄清設(shè)置規(guī)律,首先說(shuō)明有關(guān)二進(jìn)制碼的兒個(gè)概念。
(1)有符號(hào)數(shù)的二進(jìn)制碼最高位表示符號(hào)位,正數(shù)為0";負(fù)數(shù)為“1 ",
(2)正數(shù)的補(bǔ)碼為其本身;
(3)負(fù)數(shù)的補(bǔ)碼為除去符號(hào)位的各個(gè)位取反加1;
(4)辛卜碼的補(bǔ)碼即為原碼。
以JOG倍率轉(zhuǎn)換表來(lái)說(shuō)明設(shè)置方法。先將所需的倍率轉(zhuǎn)換為對(duì)應(yīng)的倍率信號(hào)*JVO~*JV15,這就是CODB指令輸出的目標(biāo)值。由于CODB轉(zhuǎn)換表中的數(shù)據(jù)是以補(bǔ)碼形式輸出,則對(duì)*JV0^-*JV15所表示的二進(jìn)制數(shù)取補(bǔ)碼,便得到其原碼,即轉(zhuǎn)換表中要設(shè)定的數(shù)據(jù)。
其它類(lèi)推,最終可以得出:
(1)當(dāng)倍率<327.68%,即*JV 15=1,轉(zhuǎn)換數(shù)據(jù)為負(fù)數(shù)時(shí),轉(zhuǎn)換表中的數(shù)據(jù)=-NX 100+1);
(2)當(dāng)倍率)327.68%,即*JV15=0,轉(zhuǎn)換數(shù)據(jù)為正數(shù)時(shí),轉(zhuǎn)換表中的數(shù)據(jù)為: 65535-NX100,其中N為所設(shè)倍率X1000
如倍率150%對(duì)應(yīng)轉(zhuǎn)換表中的數(shù)據(jù)就應(yīng)為: -(150X100+1)=-15001。
同樣可知,在切削進(jìn)給倍率修調(diào)編程中,當(dāng)倍率<128,即*FV7=1,轉(zhuǎn)換數(shù)據(jù)為負(fù)數(shù)時(shí),轉(zhuǎn)換表中的數(shù)據(jù)-((N+1)。當(dāng)倍率)128,即*FV7=0,轉(zhuǎn)換數(shù)據(jù)為正數(shù)時(shí),轉(zhuǎn)換表中的數(shù)據(jù)=255-N。
其中N為所設(shè)倍率+1000
如倍率150%對(duì)應(yīng)轉(zhuǎn)換表中的數(shù)據(jù)就應(yīng)為: 255-150=105。
總結(jié)起來(lái),便是將所要的倍率對(duì)應(yīng)的二進(jìn)制信號(hào)取補(bǔ)碼后再轉(zhuǎn)換為帶符號(hào)十進(jìn)制數(shù),即得CODB轉(zhuǎn)換表中的數(shù)據(jù)。
4 倍率轉(zhuǎn)換的設(shè)計(jì)實(shí)例
現(xiàn)以我公司H401-DJ型數(shù)控專(zhuān)用外圓磨床為例,介紹利用二進(jìn)制編碼旋轉(zhuǎn)開(kāi)關(guān)SA1配合CODB指令實(shí)現(xiàn)JOG進(jìn)給倍率和切削進(jìn)給倍率修調(diào)。
數(shù)控機(jī)床采用FANUC-Oi-TC系統(tǒng)內(nèi)置PLC,型號(hào)為PMC-SB7。我們?cè)谄錂C(jī)床操作面板上配置了1個(gè)4位輸入信號(hào)的二進(jìn)制編碼旋轉(zhuǎn)開(kāi)關(guān),16位置,修調(diào)范圍設(shè)置為0^'150,問(wèn)隔為10 %。
將編碼開(kāi)關(guān)的信號(hào)分配給PLC的4個(gè)輸入(地址X6.4~X6.7,則這些信號(hào)可看作4位二進(jìn)制碼,權(quán)分別為1, 2, 4, 8(地址由低位至高位
分別對(duì)應(yīng)于倍率值0~150%。
根據(jù)機(jī)床所處不同狀態(tài),JOG模式下,進(jìn)行手動(dòng)進(jìn)給速率的修調(diào);AUTO及MDI狀態(tài)下,切換為切削進(jìn)給速率的修調(diào)。
在梯形圖中G8.7為復(fù)位信號(hào)ERS。
F3.2, F3.3及F3.5都為運(yùn)行方式檢查信號(hào),指示當(dāng)前所選的運(yùn)行方式。F3.2 (MJ)表示JOG運(yùn)行,F(xiàn)3.3 (MMDI)表示MDI運(yùn)行,F(xiàn)3.5 (MEM)表示AUTO運(yùn)行。在這里作為手動(dòng)和自動(dòng)倍率切換條件。
R21.0~821.3為中問(wèn)暫存地址,用來(lái)存儲(chǔ)編碼開(kāi)關(guān)輸入信號(hào),再將整個(gè)R21字節(jié)中的值(0-15)作為轉(zhuǎn)換表的數(shù)據(jù)編號(hào)。
轉(zhuǎn)換表的數(shù)據(jù)數(shù)量16對(duì)應(yīng)倍率數(shù)目;表中的數(shù)據(jù)經(jīng)譯碼后便成為相應(yīng)的倍率信號(hào),具體值可根據(jù)前述第3點(diǎn)推導(dǎo)設(shè)置。
例如在JOG方式下,F(xiàn)3.2接通,激活第2個(gè)CODB程序段,進(jìn)行手動(dòng)速度倍率修調(diào)。若將SA1旋至50%(第6個(gè)位置)。
則R21中的值為5 , CODB指令將轉(zhuǎn)換表中編號(hào)為5的數(shù)據(jù)(長(zhǎng)度2字節(jié)),即第6個(gè)數(shù)據(jù)-05001(二進(jìn)制表示:1001001110001001)以補(bǔ)碼形式輸出到手動(dòng)倍率信號(hào)地址中,所以此時(shí)G010~G011中的內(nèi)客。
5 結(jié)語(yǔ)
本文具體闡述了利用二進(jìn)制編碼旋轉(zhuǎn)開(kāi)關(guān)配合CODB指令的PLC編程實(shí)現(xiàn)速度倍率修調(diào)的方法并舉例進(jìn)行了具體說(shuō)明。采用本文提供的方法能夠?qū)崿F(xiàn)較為靈活、高效和寬范圍的倍率修調(diào)。同時(shí)采用該方法能夠根據(jù)實(shí)際要求對(duì)機(jī)床面板進(jìn)行定制和設(shè)計(jì),使得FANUC系統(tǒng)的功能得以充分利用。
(審核編輯: 智匯張瑜)
分享