張愛紅
(無錫職業(yè)技術學院,無錫 214121)
隨著制造企業(yè)的發(fā)展,數(shù)控機床與刀具數(shù)量、品種的增加,傳統(tǒng)的機床刀具管理方式已不能滿足企業(yè)信息化、智能化發(fā)展的需要。為了快速、準確的識別刀具、更新刀具偏置值,將射頻設備應用于機床刀具管理已成為機床用戶的新選擇。目前刀具自動識別主要有兩種方式:1)采用PC或PLC與RFID處理器的通信,再由PC或PLC與機床通信交換信息[1,2];2)采用機床與RFID處理器直接通信。相比較而言,后者無需額外配置PC、PLC等設備,具有通信環(huán)節(jié)簡化,成本低等優(yōu)點,是機床用戶的首選方案。文中以巴魯夫處理器與FANUC 0i MD數(shù)控加工中心的直接通信為例,給出了系統(tǒng)硬件組成、總線參數(shù)配置、PMC編程方法,基于此實現(xiàn)了數(shù)控刀具的自動識別與刀偏數(shù)據(jù)的自動錄入,為機床刀具智能化管理提供了新思路。
用于工業(yè)識別的巴魯夫RFID處理器支持Profibus,Profinet,DeviceNet等多種接口,系統(tǒng)設計時選用了支持Pro fi bus DP通信的處理器模塊(BIS M-6002-019-050-03-ST11),將機床配置為通信主站,處理器為從站。讀寫頭與處理器采用電纜連接,可直接讀寫安裝于刀柄中的編碼塊數(shù)據(jù),系統(tǒng)組成如圖1所示。
圖1 系統(tǒng)組成框圖
為了確保數(shù)控機床與外部設備的總線通信,需要正確配置兩者間的通信參數(shù)。與FANUC數(shù)控機床配置為通信從站相比[3],主站配置較為復雜,需設置項包括:總線參數(shù)、子表、子單元參數(shù)、模塊數(shù)據(jù)、輸入輸出緩沖區(qū)、運行方式等。目前有兩種設置方法[4]:一是借助于軟件CNC Setting Tool,二是手動在線設定??紤]到配置方法的通用性,文中以機床側輸入輸出緩沖區(qū)、用戶參數(shù)數(shù)據(jù)的手動設定說明其配置要點。
1)輸入輸出緩沖區(qū)
數(shù)控機床與巴魯夫處理器的數(shù)據(jù)交換是通過機床PMC輸入輸出緩沖區(qū)數(shù)據(jù)傳送來實現(xiàn)的,分為讀寫兩種不同操作。寫數(shù)據(jù)時,PMC將數(shù)據(jù)發(fā)送至輸出緩沖區(qū);讀數(shù)據(jù)則由PMC從輸入緩沖區(qū)取數(shù)據(jù)。配置輸入輸出緩沖區(qū)前需先設定模塊數(shù)據(jù)(MODULE DATA),巴魯夫M60x2處理器設備文件(Bal608EE.gsd)給出了模塊數(shù)據(jù)的范圍:4~128字節(jié),也就是可配置的輸入輸出緩沖區(qū)大小。對于64字節(jié)的輸入輸出模塊,16進制的模塊數(shù)據(jù)為:0x40,0x5F,0x80,0x5F,需將上述數(shù)據(jù)設置到“模塊數(shù)據(jù)”頁面,如圖2(a)所示。設置時先將長度設為4,表示模塊數(shù)據(jù)占用4個字節(jié),再將偏移設為ON,最后輸入模塊數(shù)據(jù):40,5F,80,5F。
根據(jù)模塊數(shù)據(jù)的設置,輸入輸出緩沖區(qū)大小均為64字節(jié),需要連續(xù)編址且不能占用機床已使用的內部繼電器。圖2(b)給出了DP主站側的設置:從站(處理器)總線地址為3,插槽為0,機床PMC側輸入輸出緩沖區(qū)首址設為R1000(DI)與R1100(DO),字節(jié)數(shù)(SIZ)為64,結果輸入緩沖區(qū)配置為R1000~R1063,輸出緩沖區(qū)為R1100~R1163。
圖2 模塊數(shù)據(jù)與DI/DO設置
2)用戶參數(shù)數(shù)據(jù)(USER PRM DATA)
考慮到所選處理器帶兩個讀寫頭,前文配置的64字節(jié)為兩個讀寫頭緩沖區(qū)的總和。讀寫頭1緩沖區(qū)大小由用戶參數(shù)數(shù)據(jù)第6個字節(jié)設定,剩余字節(jié)自動分配給讀寫頭2。用戶參數(shù)數(shù)據(jù)的缺省值為:0x00,0x80,0x00,0x82,0x00,0x02,實際使用時需修改第6字節(jié),為0x10時表示將讀寫頭1的輸入輸出緩沖區(qū)設為16字節(jié),剩余48字節(jié)自動分配給讀寫頭2。系統(tǒng)中只配置了一個讀寫頭,實際用于數(shù)據(jù)傳輸?shù)妮斎刖彌_區(qū)為:R1000~R1015,輸出緩沖區(qū)為:R1100~R1115。緩沖區(qū)的首尾字節(jié)為位頭(Bit Header),用于數(shù)據(jù)傳輸時的節(jié)拍控制。位頭的數(shù)量可由用戶參數(shù)數(shù)據(jù)第4字節(jié)的第8位設定,缺省值為1時表示使用首尾位頭,此時系統(tǒng)可用于數(shù)據(jù)傳送的字節(jié)數(shù)(帶寬)為14。
機床與巴魯夫處理器通信采用對話式的協(xié)議序列,具體如下:1)PMC發(fā)送命令標識碼、數(shù)據(jù)地址與字節(jié)數(shù)等,并置位輸出緩沖區(qū)AV信號,通知處理器輸出數(shù)據(jù)有效、傳送作業(yè)啟動;2)處理器接收到信號后置位AA信號;3)如果雙方傳送的數(shù)據(jù)超出14字節(jié)長,還需使用TI、TO位以及計數(shù)器完成附加數(shù)據(jù)的傳送;4)處理器操作完成后將置位AE信號;5)PMC接受數(shù)據(jù)后將復位AV信號;6)最后處理器復位AA、AE信號,準備后續(xù)作業(yè)的傳送。其中AV、AA、AE、TI、TO等為輸入輸出緩沖區(qū)位頭信號。
1.3.1 輸入輸出緩沖區(qū)位頭信號定義
通過讀寫輸入輸出緩沖區(qū)首尾字節(jié)位信號實現(xiàn)數(shù)據(jù)的傳送控制。輸入緩沖區(qū)的首尾字節(jié)位表示識別系統(tǒng)(BIS)的狀態(tài),輸出緩沖區(qū)首尾字節(jié)位則用于命令控制。根據(jù)系統(tǒng)輸入輸出緩沖區(qū)的設定給出了位頭信號的定義,如表1所示。
1.3.2 編碼塊數(shù)據(jù)讀寫例程
本系統(tǒng)只使用編碼塊前10個字節(jié)存放數(shù)據(jù),編碼順序為:刀具號,刀具直徑,刀具長度,刀具直徑磨損量,刀具長度磨損量,每個數(shù)據(jù)占用兩個字節(jié)。讀操作時,安裝編碼塊的刀柄進入讀寫頭識別區(qū)域時,系統(tǒng)自動讀取刀具數(shù)據(jù),并調用窗口功能將刀具數(shù)據(jù)寫入刀偏表。寫操作時,系統(tǒng)將PMC數(shù)據(jù)表中指定數(shù)據(jù)寫入編碼塊,實現(xiàn)刀具數(shù)據(jù)的快速更新。刀柄編碼塊數(shù)據(jù)的讀、寫控制均通過PMC編程實現(xiàn)。
1)讀取編碼塊數(shù)據(jù)
基于機床與處理器的通信時序要求,讀控制流程如下:(1)將機床面板上的閑置按鍵(例:X0.6)定義為讀操作切換鍵,在識別系統(tǒng)就緒時按下該鍵,使保持型繼電器K11.0置位,K11.1復位,系統(tǒng)處于讀使能狀態(tài);(2)判斷輸入緩沖區(qū)首尾字節(jié)是否一致,一致時將內部繼電器R1410.0置位;(3)編碼塊出現(xiàn)在讀寫頭識別區(qū)時,發(fā)送讀命令碼0x01→R1101,0x00→編碼塊數(shù)據(jù)低位開始地址R1102,0x00→編碼塊數(shù)據(jù)高位開始地址R1103, 0x0a→編碼塊數(shù)據(jù)低位字節(jié)數(shù)R1104,0x00→編碼塊數(shù)據(jù)高位字節(jié)數(shù)R1105;同時置位輸出緩沖區(qū)位頭信號AV、AV2;(4)當AE信號置位時,將輸入信號傳送至數(shù)據(jù)表(如圖3所示);(5)置位讀操作結束信號R1410.5;(6)調用窗口功能指令WINDW,將數(shù)據(jù)寫入刀偏表。
表1 輸入輸出緩沖區(qū)位頭信號
圖3給出了部分輸入信號的傳送過程。程序執(zhí)行結果將輸入緩沖區(qū)R1001~R1002數(shù)據(jù)直接傳送至數(shù)據(jù)寄存器D206~D207,而緩沖區(qū)R1003~R1004數(shù)據(jù)經中間變量D400乘1000后傳送至D210~D213。
圖3 數(shù)據(jù)傳送例程
在調用窗口功能指令前,需定義寫入刀偏的數(shù)據(jù)表。以寫入刀具直徑為例,新增數(shù)據(jù)表的首地址為D200,如圖4(a)所示,數(shù)據(jù)構成如圖4(b)所示。寫入刀具幾何直徑偏置值的功能代碼為14,結束代碼無需設定;考慮到應用數(shù)據(jù)表寫入刀偏量的單位為微米,數(shù)據(jù)長度需占用4字節(jié)。偏置號為讀取的刀具號(10);偏置類型設為1時,表示寫入刀具直徑值。窗口指令執(zhí)行后,數(shù)據(jù)寫入刀偏表。
圖4 PMC數(shù)據(jù)表設置
2)寫入編碼塊數(shù)據(jù)
與讀編碼塊數(shù)據(jù)相比,寫操作無需調用PMC窗口功能,但在數(shù)據(jù)傳送中需要調用TI信號,其控制流程如下:(1)將機床面板上的+X、-X手動按鍵同時按下時定義為寫操作控制鍵,目的使K11.0復位、K11.1置位,系統(tǒng)處于寫使能狀態(tài);(2)接著判斷輸入緩沖區(qū)首尾字節(jié)是否一致,一致時內部繼電器R1410.1接通;(3)編碼塊出現(xiàn)在讀寫頭識別區(qū)時,發(fā)送寫命令碼0x02→R1101,0x00→編碼塊數(shù)據(jù)低位開始地址R1102,0x00→編碼塊數(shù)據(jù)高位開始地址R1103,0x0a→編碼塊數(shù)據(jù)低位字節(jié)數(shù)R1104,0x00→編碼塊數(shù)據(jù)高位字節(jié)數(shù)R1105;同時置位輸出緩沖區(qū)位頭信號AV、AV2;(4)AA狀態(tài)位為1時,將預置數(shù)據(jù)表(例如D300)開始的刀具號、直徑值、長度等傳送至輸出緩沖區(qū);(5)取反TI信號位,數(shù)據(jù)輸出啟動;(6)查詢處理器命令完成信號AE,AE為1時復位AV信號,數(shù)據(jù)傳送結束。
將巴魯夫處理器用于數(shù)控機床刀具的自動識別,可實現(xiàn)刀具數(shù)據(jù)的自動錄入與更新,與人工操作相比,既可縮短數(shù)據(jù)輸入的時間,又可防止手工輸入的誤操作,從而提高了機床的運行效率,是刀具管理自動化與智能化發(fā)展的趨勢。