星期六, 4月 17, 2010

FANUC從MARO中取得PMC資料

一般我們常用FANUC MACRO I/O機能來取得PMC側的I/O資料,而相對應的變數為
#1000~#1015 為從PMC取得信號傳到MACRO中(逐位元讀)

#1032       為一次從PMC中取得16bits資料

#1100~#1115 為從MACRO寫入資料至PMC中(逐位元寫)

#1132       為從MACRO一次寫入16bits資料至PMC中

#1133       為從MACRO一次寫入32bits資料至PMC中
但是這樣逐位元的傳送或是接收資料是很沒有效率的,尤其在傳送資料頻繁時更增加了
等待時間,還要在程式中不斷的檢測是否資料已經傳送成功。

因為如此所以FANUC還有另外一種更有效的辦法來讓兩者可以溝通,即用D、R、T值來
做溝通。一個資料大小4BYTES可用資料為R、K、T、D、C。
下面表格說明定址方法:
■TIMER(T)
T位址=(變數#12XX– 1200)×4+(80×#1991)
■K RELAY(K)
K位址=(變數#12XX– 1220)×4+(20×#1992)
■計數器(C)
C位址=(變數#12XX– 1225)×4+(80×#1993)
■DATA(D)
D位址=(變數#12XX– 1245)×4+(1000×#1994)
■R RELAY(R)
R位址=(變數#17XX– 1710)×4+(1000×#1995)
#1994的值由0~7變化、使得D0000~D7999皆可取出。


變數#1200~#1219 (T) :呼叫用引數#1991

變數#1220~#1224 (K) :呼叫用引數#1992

變數#1225~#1244 (C) :呼叫用引數#1993

變數#1245~#1709 (D) :呼叫用引數#1994

變數#1710~#1959 (R) :呼叫用引數#1995

/**注意不同機型,位址不同
                                                                             update : 2010/3/26

1 則留言:

  1. 施先生,您好:

     掛網時進到您的網站,冒昧地向您請教問題,尚祈不吝賜教,謝謝。

     18i的銑床,廠商內建關於刀長補正的程式,其中一行:#107 =[#1032 AND 65280.] / 256.,#107會得到主軸目前刀號,能幫忙解釋該邏輯運算式嗎?又,FANUC有無直接對應主軸刀號的變數?

     另外,已知#5023是Z軸的機械座標值;#5043是Z軸的絕對坐標值,請問對應Z軸相對坐標的變數?

    我的名字是沈世榮
    我的E-mial:rung_su@kimo.com

    回覆刪除