系統(tǒng)開(kāi)發(fā)
1.1系統(tǒng)組成
用于工業(yè)識(shí)別的巴魯夫RFID處理器支持Profibus,Profinet,DeviceNet等多種接口,系統(tǒng)設(shè)計(jì)時(shí)選用了支持ProfibusDP通信的處理器模塊(BISM-6002-019-050-03-ST11),將機(jī)床配置為通信主站,處理器為從站。讀寫(xiě)頭與處理器采用電纜連接,可直接讀寫(xiě)安裝于柄中的編碼塊數(shù)據(jù),系統(tǒng)組成如圖1所示。
1.2現(xiàn)場(chǎng)總線(xiàn)通信參數(shù)配置
為了確保數(shù)控機(jī)床與外部設(shè)備的總線(xiàn)通信,需要正確配置兩者間的通信參數(shù)。與FANUC數(shù)控機(jī)床配置為通信從站相比[3],主站配置較為復(fù)雜,需設(shè)置項(xiàng)包括:總線(xiàn)參數(shù)、子表、子單元參數(shù)、模塊數(shù)據(jù)、輸入輸出緩沖區(qū)、運(yùn)行等。目前有兩種設(shè)置方法[4]:一是借助于軟件CNCSettingTool,二是手動(dòng)在線(xiàn)設(shè)定??紤]到配置方法的通用性,文中以機(jī)床側(cè)輸入輸出緩沖區(qū)、用戶(hù)參數(shù)數(shù)據(jù)的手動(dòng)設(shè)定說(shuō)明其配置要點(diǎn)。1)輸入輸出緩沖區(qū)數(shù)控機(jī)床與巴魯夫處理器的數(shù)據(jù)交換是通過(guò)機(jī)床PMC輸入輸出緩沖區(qū)數(shù)據(jù)傳送來(lái)實(shí)現(xiàn)的,分為讀寫(xiě)兩種不同操作。寫(xiě)數(shù)據(jù)時(shí),PMC將數(shù)據(jù)發(fā)送至輸出緩沖區(qū);讀數(shù)據(jù)則由PMC從輸入緩沖區(qū)取數(shù)據(jù)。配置輸入輸出緩沖區(qū)前需先設(shè)定模塊數(shù)據(jù)(MODULEDATA),巴魯夫M60x2處理器設(shè)備文件(Bal608EE.gsd)給出了模塊數(shù)據(jù)的范圍:4~128字節(jié),也就是可配置的輸入輸出緩沖區(qū)大小。對(duì)于64字節(jié)的輸入輸出模塊,16進(jìn)制的模塊數(shù)據(jù)為:0x40,0x5F,0x80,0x5F,需將上述數(shù)據(jù)設(shè)置到“模塊數(shù)據(jù)”頁(yè)面,如圖2(a)所示。設(shè)置時(shí)先將長(zhǎng)度設(shè)為4,表示模塊數(shù)據(jù)占用4個(gè)字節(jié),再將偏移設(shè)為ON,后輸入模塊數(shù)據(jù):40,5F,80,5F。根據(jù)模塊數(shù)據(jù)的設(shè)置,輸入輸出緩沖區(qū)大小均為64字節(jié),需要連續(xù)編址且不能占用機(jī)床已使用的內(nèi)部繼電器。圖2(b)給出了DP主站側(cè)的設(shè)置:從站(處理器)總線(xiàn)地址為3,插槽為0,機(jī)床PMC側(cè)輸入輸出緩沖區(qū)首址設(shè)為R1000(DI)與00(DO),字節(jié)數(shù)(SIZ)為64,結(jié)果輸入緩沖區(qū)配置為R1000~R1063,輸出緩沖區(qū)為00~63。2)用戶(hù)參數(shù)數(shù)據(jù)(USERPRMDATA)考慮到所選處理器帶兩個(gè)讀寫(xiě)頭,前文配置的64字節(jié)為兩個(gè)讀寫(xiě)頭緩沖區(qū)的總和。讀寫(xiě)頭1緩沖區(qū)大小由用戶(hù)參數(shù)數(shù)據(jù)第6個(gè)字節(jié)設(shè)定,剩余字節(jié)自動(dòng)分配給讀寫(xiě)頭2。用戶(hù)參數(shù)數(shù)據(jù)的缺省值為:0x00,0x80,0x00,0x82,0x00,0x02,實(shí)際使用時(shí)需修改第6字節(jié),為0x10時(shí)表示將讀寫(xiě)頭1的輸入輸出緩沖區(qū)設(shè)為16字節(jié),剩余48字節(jié)自動(dòng)分配給讀寫(xiě)頭2。系統(tǒng)中只配置了一個(gè)讀寫(xiě)頭,實(shí)際用于數(shù)據(jù)傳輸?shù)妮斎刖彌_區(qū)為:R1000~R1015,輸出緩沖區(qū)為:00~15。緩沖區(qū)的首尾字節(jié)為位頭(BitHeader),用于數(shù)據(jù)傳輸時(shí)的節(jié)拍控制。位頭的數(shù)量可由用戶(hù)參數(shù)數(shù)據(jù)第4字節(jié)的第8位設(shè)定,缺省值為1時(shí)表示使用首尾位頭,此時(shí)系統(tǒng)可用于數(shù)據(jù)傳送的字節(jié)數(shù)(帶寬)為14。
1.3機(jī)床PMC通信編程機(jī)床與巴魯夫處理器通信采用對(duì)話(huà)式的協(xié)議序列,具體如下:1)PMC發(fā)送命令標(biāo)識(shí)碼、數(shù)據(jù)地址與字節(jié)數(shù)等,并置位輸出緩沖區(qū)AV信號(hào),通知處理器輸出數(shù)據(jù)有效、傳送作業(yè)啟動(dòng);2)處理器接收到信號(hào)后置位AA信號(hào);3)如果雙方傳送的數(shù)據(jù)超出14字節(jié)長(zhǎng),還需使用TI、TO位以及計(jì)數(shù)器完成附加數(shù)據(jù)的傳送;4)處理器操作完成后將置位AE信號(hào);5)PMC接受數(shù)據(jù)后將復(fù)位AV信號(hào);6)后處理器復(fù)位AA、AE信號(hào),準(zhǔn)備后續(xù)作業(yè)的傳送。其中AV、AA、AE、TI、TO等為輸入輸出緩沖區(qū)位頭信號(hào)。1.3.1輸入輸出緩沖區(qū)位頭信號(hào)定義通過(guò)讀寫(xiě)輸入輸出緩沖區(qū)首尾字節(jié)位信號(hào)實(shí)現(xiàn)數(shù)據(jù)的傳送控制。輸入緩沖區(qū)的首尾字節(jié)位表示識(shí)別系統(tǒng)(BIS)的狀態(tài),輸出緩沖區(qū)首尾字節(jié)位則用于命令控制。根據(jù)系統(tǒng)輸入輸出緩沖區(qū)的設(shè)定給出了位頭信號(hào)的定義,如表1所示。1.3.2編碼塊數(shù)據(jù)讀寫(xiě)例程本系統(tǒng)只使用編碼塊前10個(gè)字節(jié)存放數(shù)據(jù),編碼順序?yàn)椋壕咛?hào),具直徑,具長(zhǎng)度,具直徑磨損量,具長(zhǎng)度磨損量,每個(gè)數(shù)據(jù)占用兩個(gè)字節(jié)。讀操作時(shí),安裝編碼塊的柄進(jìn)入讀寫(xiě)頭識(shí)別區(qū)域時(shí),系統(tǒng)自動(dòng)讀取具數(shù)據(jù),并調(diào)用窗口功能將具數(shù)據(jù)寫(xiě)入偏表。寫(xiě)操作時(shí),系統(tǒng)將PMC數(shù)據(jù)表中指定數(shù)據(jù)寫(xiě)入編碼塊,實(shí)現(xiàn)具數(shù)據(jù)的快速更新。柄編碼塊數(shù)據(jù)的讀、寫(xiě)控制均通過(guò)PMC編程實(shí)現(xiàn)。1)讀取編碼塊數(shù)據(jù)基于機(jī)床與處理器的通信時(shí)序要求,讀控制流程如下:(1)