李丙林,雷 強(qiáng),李 派,孫宏亮,譚春雨,邵 勇
(1.長春工業(yè)大學(xué)電氣與電子工程學(xué)院,吉林 長春 130012;2.長春市市政工程設(shè)計(jì)研究院,吉林 長春 130000)
隨著信息化和工業(yè)化的深度融合,射頻識(shí)別 (radio frequency identification,RFID)技術(shù)已經(jīng)融入工業(yè)生產(chǎn)的各個(gè)環(huán)節(jié)。RFID技術(shù)是自動(dòng)識(shí)別技術(shù)的一種,通過無線射頻的方式實(shí)現(xiàn)非接觸式的數(shù)據(jù)通信,是物聯(lián)網(wǎng)技術(shù)中的一項(xiàng)關(guān)鍵技術(shù)[1]。在汽車生產(chǎn)中,車門生產(chǎn)線是至關(guān)重要的一部分,在生產(chǎn)中需要實(shí)現(xiàn)對殘品次品的精確定位。以往的人工數(shù)據(jù)傳遞、管理方式已經(jīng)不能適應(yīng)車門生產(chǎn)線的工作需求,存在諸多技術(shù)弊端,例如:因零件未安裝或安裝出錯(cuò)而無法追溯其源頭;生產(chǎn)智能化程度較低。
針對上述問題,本文設(shè)計(jì)了基于RFID技術(shù)的動(dòng)態(tài)數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)利用應(yīng)用于過程控制的對象連接與嵌入(object linking and embedding for process control,OPC)技術(shù)和RFID技術(shù)分別與西門子S7-1200進(jìn)行實(shí)時(shí)通信,并利用上位機(jī)對現(xiàn)場設(shè)備實(shí)施監(jiān)控。該系統(tǒng)集OPC技術(shù)、RFID技術(shù)和工業(yè)自動(dòng)化技術(shù)于一身,只需要對每一組車門賦予一個(gè)底盤號(hào),即可通過上位機(jī)對底盤號(hào)的位置進(jìn)行實(shí)時(shí)監(jiān)控。如果后期發(fā)現(xiàn)殘品、次品,可利用上位機(jī)軟件找到該車門對應(yīng)的底盤號(hào),并根據(jù)監(jiān)控界面的信息查出問題。該系統(tǒng)具有操作簡便、省時(shí)以及生產(chǎn)效率高的優(yōu)點(diǎn)。
車門生產(chǎn)線一共有五個(gè)工位。一工位和五工位各安裝了一個(gè)RFID讀寫器和一個(gè)傳感器。傳感器安裝在RFID讀寫器的后面,可以保證傳感器檢測到位時(shí),標(biāo)簽在RFID讀寫器的正上方。
車門生產(chǎn)線數(shù)據(jù)采集系統(tǒng)硬件包括可編程邏輯控制器(programmable logic controller,PLC) S7-1200、V680S-HMD64-ETN讀寫器、上位機(jī)(計(jì)算機(jī))等。PLC S7-1200主要用于控制RFID讀寫器對標(biāo)簽的讀寫,并實(shí)現(xiàn)與上位機(jī)之間的數(shù)據(jù)傳輸。傳感器主要用于檢測車門是否到位。上位機(jī)安裝了Kepserver軟件和數(shù)據(jù)采集系統(tǒng),不僅能夠?qū)崿F(xiàn)Kepserver與PLC之間的數(shù)據(jù)傳輸,還可以實(shí)時(shí)監(jiān)控車門的位置。系統(tǒng)硬件結(jié)構(gòu)如圖1所示。

圖1 系統(tǒng)硬件結(jié)構(gòu)
基于圖1結(jié)構(gòu)設(shè)計(jì)的系統(tǒng)結(jié)構(gòu)如圖2所示。

圖2 系統(tǒng)結(jié)構(gòu)框圖
該系統(tǒng)的工作流程如下。車門從一工位到五工位依次前進(jìn)。當(dāng)車門經(jīng)過一號(hào)工位傳感器時(shí),開始清數(shù)據(jù)。清數(shù)據(jù)操作結(jié)束后,上位機(jī)發(fā)出一個(gè)準(zhǔn)備寫入信號(hào),同時(shí)給PLC一個(gè)底盤號(hào),由PLC把該底盤號(hào)寫入標(biāo)簽。當(dāng)車門經(jīng)過五工位傳感器時(shí),PLC控制讀寫器讀取標(biāo)簽中的數(shù)據(jù),并實(shí)時(shí)將數(shù)據(jù)傳給上位機(jī);數(shù)據(jù)采集平臺(tái)會(huì)把返回的數(shù)據(jù)與之前寫入的數(shù)據(jù)進(jìn)行對比,從而判斷出是否寫入失敗或者出現(xiàn)串車現(xiàn)象。每次讀寫操作完成后,都要獲取診斷信息,根據(jù)診斷信息的數(shù)據(jù)判斷讀寫操作是否異常。
OPC協(xié)議是應(yīng)用層的數(shù)據(jù)協(xié)議,把采集數(shù)據(jù)以一定格式傳輸給客戶端。在網(wǎng)絡(luò)的底層,其傳輸過程是基于傳輸控制協(xié)議/網(wǎng)際協(xié)議(transmission control protocol/internet protocol,TCP/IP)實(shí)現(xiàn)的[2-3]。本系統(tǒng)采用的是Kepserver OPC與S7-1200之間的通信。基于Kepserver OPC服務(wù)器技術(shù),可完成上位機(jī)與西門子PLC之間的通信。其操作重點(diǎn)是實(shí)現(xiàn)服務(wù)器和客戶端端口的對應(yīng)關(guān)系并完成通信連接[4]。因此,需要在Kepserver EX中建立一個(gè)OPC服務(wù)器。PLC將數(shù)據(jù)傳送到OPC服務(wù)器。OPC服務(wù)器將數(shù)據(jù)轉(zhuǎn)換成上位機(jī)軟件可識(shí)別的格式,并通過上位機(jī)軟件對OPC服務(wù)器進(jìn)行訪問,從而實(shí)現(xiàn)數(shù)據(jù)的交互。
一個(gè)完整的RFID系統(tǒng)是由標(biāo)簽、讀寫器、主機(jī)(上位機(jī)、工控機(jī)、服務(wù)器、PLC)組成的[5]。本系統(tǒng)由標(biāo)簽、讀寫器、PLC(S7-1200)和上位機(jī)組成。其工作原理是:標(biāo)簽進(jìn)入磁場后,接收RFID讀寫器發(fā)出的射頻信號(hào),憑借感應(yīng)電流所獲得的能量發(fā)送出存儲(chǔ)在芯片中的底盤號(hào)[6-7]。
本文設(shè)計(jì)選用歐姆龍RFID讀寫器V680S。該設(shè)備中配備了控制器、放大器、天線,使用13.56 MHz的頻帶與射頻(radio frequency,RF)通信,支持Modbus/TCP協(xié)議。RFID讀寫器與PLC之間的控制指令均為一次性執(zhí)行,V680S讀寫器的上位通信協(xié)議依照Modbus/TCP。Modbus通信過程一般是由主設(shè)備向從設(shè)備發(fā)出請求,再由從設(shè)備對主設(shè)備的請求進(jìn)行分析和響應(yīng),并向主設(shè)備發(fā)送結(jié)果。如果通信過程中出現(xiàn)了異常,設(shè)備會(huì)反饋一個(gè)異常代碼[8-9]。在該系統(tǒng)中:主設(shè)備為PLC;從設(shè)備為歐姆龍V680S;PLC設(shè)備發(fā)送至RFID讀寫器的指令稱為詢問;RFID讀寫器反饋的信息稱為響應(yīng)[10]。詢問和響應(yīng)的傳輸格式如表1所示。

表1 詢問和響應(yīng)的傳輸格式
異常響應(yīng)的格式如表2所示。

表2 異常響應(yīng)的格式
例如,當(dāng)進(jìn)行讀取數(shù)據(jù)操作時(shí),PLC向讀寫器發(fā)出讀取指令。從字地址0000Hex讀取4個(gè)字節(jié)大小的數(shù)據(jù)時(shí),XX 0000 0006 FF 03 0000 0004命令執(zhí)行完成,讀寫器響應(yīng)為000000000013FF03(成功)101111222233334444或000000000003FF83(失敗)06。
當(dāng)進(jìn)行寫入數(shù)據(jù)操作時(shí),PLC向讀寫器發(fā)送寫數(shù)據(jù)指令。從RF標(biāo)簽的字地址0000Hex寫入4個(gè)字節(jié)大小的數(shù)據(jù)“1111000000004444”時(shí),詢問格式00000000000FFF1000000004081111000000004444命令執(zhí)行完成,讀寫器響應(yīng)為000000000006FF10(成功)00000004或000000000006FF90(失敗)06。
該系統(tǒng)使用PLC的型號(hào)為1214C與歐姆龍V680S讀寫器進(jìn)行Modbus通信。在TIA Patal中包含了通信指令MB_CLIENT。MB_CLIENT模塊調(diào)用如圖3所示。

圖3 MB_CLIENT模塊調(diào)用
在配置MB_CLIENT的參數(shù)時(shí)IP地址與歐姆龍的地址要一致,與計(jì)算機(jī)地址要在同一個(gè)網(wǎng)段。MODE中:0為讀;1為寫。DATA_ADDR為由MB_CLIENT指令所訪問數(shù)據(jù)的起始地址。DATA_LEN為數(shù)據(jù)長度。依據(jù)現(xiàn)場要求,新建全局?jǐn)?shù)據(jù)塊DB3和DB4。DB3用于儲(chǔ)存讀寫器要寫入的數(shù)據(jù)。DB4用于儲(chǔ)存讀寫器讀取的數(shù)據(jù)。在DB3中有5個(gè)變量,分別為clean data、 empty data_1、cs write data、rfid write data和feedback 1。各個(gè)變量的數(shù)據(jù)地址如圖4所示。

圖4 數(shù)據(jù)地址
clean data的地址DB3.DBB0.0~DB3.DBB21.0共22個(gè)字節(jié)(數(shù)據(jù)類型為String)。其中:前2個(gè)字節(jié)分別代表字符串的最大長度和字符串的實(shí)際長度;剩余的20個(gè)字節(jié)表示清數(shù)據(jù)時(shí)寫入標(biāo)簽的數(shù)據(jù)。empty data_1的地址DB3.DBB22.0~DB3.DBB43.0表示空車時(shí)寫入標(biāo)簽的數(shù)據(jù)。cs write data的地址DB3.DBB44.0~DB3.DBB65.0表示上位機(jī)傳給PLC的底盤號(hào)。rfid write data的地址DB3.DBB66.0~DB3.DBB87.0表示需要寫入標(biāo)簽中的數(shù)據(jù)(底盤號(hào))。當(dāng)讀寫數(shù)據(jù)出現(xiàn)異常時(shí),用戶要獲取最新的通信診斷信息。feedback 1即存儲(chǔ)診斷信息的地址。這時(shí),對應(yīng)的寄存器編號(hào)為CA00,獲取的通信診斷信息的字?jǐn)?shù)為14個(gè)字節(jié)。所獲取的數(shù)據(jù)存放在DB3.DBB88.0~DB3.DBB118.0。
在設(shè)計(jì)系統(tǒng)PLC程序時(shí),以順序控制為原則,根據(jù)控制要求,將系統(tǒng)工作過程劃分為若干階段。這些階段稱為“步”。步的轉(zhuǎn)移條件是由當(dāng)前步到下一步轉(zhuǎn)移的條件。當(dāng)條件滿足時(shí),程序自動(dòng)從當(dāng)前步跳到下一步。這種設(shè)計(jì)方法縮短了設(shè)計(jì)周期,使程序修改、調(diào)試、監(jiān)控更加容易,大大提高了效率。PLC程序流程如圖5所示。

圖5 PLC程序流程圖
上位機(jī)監(jiān)控界面主要包括功能菜單、實(shí)時(shí)車序列(顯示當(dāng)前五個(gè)工位當(dāng)前的底盤號(hào))、工作日志、通信狀態(tài),失敗列表等,實(shí)現(xiàn)了全面監(jiān)控,故障報(bào)警等功能,可以實(shí)時(shí)監(jiān)控系統(tǒng)的運(yùn)行狀態(tài)和車門所在的位置。
基于RFID技術(shù)的動(dòng)態(tài)數(shù)據(jù)采集系統(tǒng)測試主要觀察RFID讀寫器對標(biāo)簽是否讀寫成功。當(dāng)數(shù)據(jù)塊中的變量feedback 1為0時(shí),其他變量有數(shù)據(jù)顯示,則說明讀寫器對標(biāo)簽讀寫成功。當(dāng)feedback 1不為0時(shí),則說明讀寫器對標(biāo)簽讀寫失敗。通過監(jiān)控界面也可以觀察到數(shù)據(jù)是否讀寫成功,即對比寫入和讀取的數(shù)據(jù)是否一致。如果讀寫數(shù)據(jù)一致時(shí),監(jiān)控界面正常顯示。當(dāng)讀寫數(shù)據(jù)不一致時(shí),監(jiān)控界面中不一致的數(shù)據(jù)背景會(huì)變成綠色,同時(shí)彈出“標(biāo)簽寫入失敗”窗口。現(xiàn)場測試當(dāng)車門經(jīng)過RFID讀寫器時(shí),PLC對標(biāo)簽讀寫正常,數(shù)據(jù)傳輸無錯(cuò)誤,監(jiān)控界面顯示正常。根據(jù)測試要求,本文現(xiàn)場模擬了標(biāo)簽不在范圍內(nèi)的情況。此時(shí),PLC收到一組錯(cuò)誤代碼,代表標(biāo)簽不在范圍內(nèi)。通過現(xiàn)場多次測試,驗(yàn)證了本文設(shè)計(jì)的系統(tǒng)運(yùn)行穩(wěn)定、容錯(cuò)率小。
本文通過RFID技術(shù),設(shè)計(jì)了車門生產(chǎn)線動(dòng)態(tài)數(shù)據(jù)采集系統(tǒng)。系統(tǒng)分為兩個(gè)部分:一部分是通過OPC協(xié)議,實(shí)現(xiàn)了Kepserver軟件與PLC之間的數(shù)據(jù)傳輸;另一部分是通過Modbus/TCP協(xié)議,實(shí)現(xiàn)了歐姆龍V680S與PLC S7-1200之間的通信。
目前,基于RFID技術(shù)的動(dòng)態(tài)數(shù)據(jù)采集系統(tǒng)已經(jīng)在某汽車車門生產(chǎn)線上投入使用。實(shí)際的使用結(jié)果表明,該系統(tǒng)運(yùn)行狀態(tài)良好,不僅能夠?qū)崿F(xiàn)數(shù)據(jù)的采集,還能夠達(dá)到追溯的目的,大幅度地提高了車門生產(chǎn)線的生產(chǎn)效率和工業(yè)生產(chǎn)的自動(dòng)化水平,減少了生產(chǎn)線上工作人員的工作量。