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