摘要:通過對RFID電子標簽無線通信場強值的檢測,可使RFID標簽作為一種定位傳感技術應用于工業控制中,從而拓展其應用方式。本文主要介紹RFID作為定位傳感器使用時,MODBUS協議在RFID電子標簽主控芯片MSP430中的移植,從而實現PLC與RFID電子標簽基于MODBUS協議的通信。實踐證明,將此通信協議應用于列車自動裝卸控制系統,大大的提高了系統通信的可靠性,使列車自動裝卸定位準確無誤。
關鍵詞:RFID電子標簽;場強值;MSP430;MODBUS協議
中圖分類號:TP277 文獻標識碼:A
1引言目前,鐵路罐車主要通過機械式碰撞的方式來實現自動裝卸,具有噪聲大、易磨損、維護工作量大等缺點。文獻[1]提出了一種通過跟蹤RFID接收最大場強值進行定位的方式,其定位精度可滿足罐車自動裝卸的需要,從而開拓了RFID的應用方式,即將RFID用作位置傳感器。該方式將無線通信、有線通信、位置識別于一體,極大地簡化了列車自動裝卸系統的結構。該方法由地面閱讀器作位置信標,當移動的標簽最接近閱讀器時,標簽接收場強最大,通過跟蹤此最大場強,可知標簽當前的位置。由于每個地面定點閱讀器的信標信息不一樣,因此,標簽可隨時獲取到達位置的信息,并將此信息通過RS485發送給PLC控制器,完成指定的裝卸動作。該控制方式提高了灌裝流動貨物裝卸的自動化程度,使鐵路貨場裝卸技術裝備水平得到提高。在文獻中[1]]中,PLC與RFID電子標簽通信采用基于RS485接口的自定義通信協議,該協議采用多對一的方式,雖然通過合理安排,完成該系統的通信任務沒有問題,但理論上存在數據傳輸不可靠的缺點,尤其是在將來進行應用拓展,定點位置比較密集,定位點比較多的情況下,其隱患會更加突出。
基于此控制系統中的不足,本文對基于MODBUS協議的PLC與RFID電子標簽通信方式進行了研究。MODBUS協議是目前工業中普遍使用的通信標準,該協議的可靠性進過了實踐驗證,其輪詢工作方式不僅可以避免通信過程中數據丟失情況的發生,同時也便于該技術在定位點距離更密集,定位點更多情況下的應用,使該系統的控制更可靠,通用性更強。
計算技術與自動化2013年6月
第32卷第2期嚴政新等:基于MODBUS協議的PLC與RFID電子標簽通信方式的研究
2通信方式總體方案設計
PLC與RFID電子標簽通信方式原理:在RFID電子標簽中移植MODBUS協議,PLC通過MODBUS協議讀取RFID電子標簽的狀態,并通過RS485接口與PLC進行數據傳輸。
3.1MODBUS總線協議
MODBUS總線協議是應用于電子控制器上的一種通用語言。MODBUS協議[9]完全公開、實現簡單、硬件要求低、可靠性好等特點,可使不同廠商生產的控制設備連成工業網絡,進行集中監控,所以在工業控制領域中得到了廣泛應用[2]。
MODBUS協議通信使用主從技術,即僅一設備(主設備)能初始化,查詢其它設備(從設備),從設備根據主設備發送的數據請求作出相應應答。MODBUS協議建立了主設備查詢的格式:設備地址、功能代碼、所有要發送的數據、錯誤檢測域。從設備的回應消息也由MODBUS協議數據包構成,包括確認要行動的域、任何要返回的數據、和一個錯誤檢測域。如果在消息接收過程中發生錯誤,或從設備不能執行其命令,從設備將建立一個錯誤消息并把它作為回應發送出去[3]。
3.2MODBUS協議在MSP430單片機中的移植
MSP430系列單片機是一種超低功耗的混合信號控制器。具有16位RISC結構,有著豐富的片內資源[4][5]。符合MODBUS協議移植要求。所謂移植就是根據MODBUS協議標準在MSP430上編程實現。圖2為MODBUS協議移植程序流程圖。MSP430單片機上電,完成時鐘、串口、定時器、I/O口初始化,開串口中斷,然后等待接收MODBUS協議信息幀,接收完并作CRC校驗碼匹配,CRC校驗匹配正確則解析該數據包,提取相應的數據,否則返回一帶異常碼的數據,對這些響應的數據做CRC計算,合成為響應的MODBUS協議信息幀,然后發送給主機,進入下一個MODBUS協議信息幀的等待接收狀態。
4PLC與RFID電子標簽通信機制
MODBUS協議采用輪詢工作機制[10],在MSP430單片機上移植了MODBUS協議后,主站PLC對RFID電子標簽進行狀態查詢,完成兩者基于MODBUS協議的輪詢工作。圖3為具體的工作機制原理圖,該輪詢機制可詳述為:將3個RFID電子標簽分別設置為電子標簽1,電子標簽2,電子標簽3。輪詢工作開始后,PLC發送MODBUS協議信息幀到電子標簽1,電子標簽1根據接收到的數據請求,提取數據之后,組成一帶校驗碼的MODBUS協議信息幀返回給PLC;PLC收到信息幀后,接著發送下一MODBUS協議信息幀到電子標簽2,電子標簽2也根據接收到的數據請求,提取數據之后,打包成一帶校驗碼的MODBUS協議信息幀返回給PLC;PLC收到信息幀后,同樣發送一MODBUS協議信息幀到電子標簽3,電子標簽3也根據接收到的數據請求,提取數據之后,也組成一帶校驗碼的MODBUS協議信息幀返回給PLC,就此就完成了一次輪詢。一次輪詢完成后,然后開始下一次輪詢[6]。PLC依據多次輪詢的結果進行數據分析,并作出相應的動作控制。該輪詢機制極大的改善了數據丟失的情況,多次輪詢使得整個控制系統的準確度也有了極大的提高。
5實驗結果
實驗中,將三個RFID電子標簽的ID號分別定義為01,02,03。3個閱讀器的編號定義為1,2,3,當各RFID電子標簽與各閱讀器之間的位置發生改變時,3個RFID電子標簽通過接收主站的信息,將感應到場強值(RSSI值)的變化和定點位置的變化;RFID電子標簽相應RSSI值寄存器會隨之發生改變,從接收到的信息可知是哪個定點位置。PLC通過MODBUS協議去輪詢RFID電子標簽的RSSI值寄存器和閱讀器編號,并進行數據分析,然后作出相應的的動作控制[1]。圖4是使用串口調試助手采集到的數據。采集的數據為完整的MODBUS協議信息幀,其中“01”為RFID電子標簽1的ID號,“03”為MODBUS協議讀寄存器功能碼,“02”為返回數據的長度,“FF 94”為RSSI值的十六進制,“FB 1B”為CRC校驗碼[8]。相應的“02 03 02 FF 8F FC 10”為RFID電子標簽2返回的MODBUS協議信息幀,“03 03 02 FF 92 01 D9”為RFID電子標簽3返回的MODBUS協議信息幀。通過采集到的數據可以看出,PLC和RFID電子標簽之間完成了輪詢的工作機制,其中第一排數據為第一次輪詢,第二排數據為第二次輪詢。為簡化實驗,定義:當RFID電子標簽與閱讀器處在同一垂直位置時,兩者之間的距離為0(即到達指定位置);當RFID電子標簽在閱讀器左邊位置時,兩者之間的距離為負;當RFID電子標簽在閱讀器的右邊位置時,兩者之間的距離為正。表1是PLC對RFID電子標簽多次輪詢得到的數據,根據數據可以看出,當3個RFID電子標簽和3個相應的閱讀器都處于同一垂直位置時,即兩者之間距離為0,此時RSSI值最強。通過輪詢三個場強值,就可以準確定位出兩者之間相應的位置,然后依據相應的位置就可以進行準確的PLC I/O控制,從而實現各種所需動作的控制。
6結束語
本文研究的基于MODBUS協議的PLC與RFID電子標簽的通信方式,運用到列車自動裝卸系統中,不僅規范了系統的通信協議,而且解決了通信過程中數據丟失和系統通用性等問題。輪詢機制可以實現數據后臺處理,通過修改相關參數來完成系統的修正工作,相當大的提高了系統調試的方便性,是系統能更有效地實現罐車的準確定位和自動裝卸。
參考文獻
[1]吳利清,王英健.基于RFID技術的車輛行程定位系統[J].計算機技術與自動化,2011,30(1):39-44.
[2]張錚,劉曉偉.基于PLC的MODBUS通信協議的實現[J].湖北工業大學學報,2010,25(4):20-22.
[3]孟華,王鵬達.基于MODBUS協議的觸摸屏與PIC單片機的通信實現[J].儀表技術與傳感器,2009,10:58-61.
[4]謝楷,趙建.MSP430系列單片機系統工程設計與實踐[M].北京:機械工業出版社,2009.
[5]胡大可.MSP430系列單片機C語言程序設計與開發[M].北京:北京航空航天大學出版社,2001.
[6]舒凱.基于MODBUS-RTU協議的PLC多路數據采集系統[J].水電自動化與大壩監測,2008,32(2):66-69.
[7]張琦,張英.PC機與MSP430單片機串行通信的實現方法[J].中國工程機械學報,2007,5(1):22-25.
[8]馮向科,鄧瑩.基于MODBUS RTU通信協議下CRC算法實現技術[J].電腦知識與技術(學術交流),2006(3).
[9]Modbus協議[S/OL].http://www.modicon.com.
[10]Siemens.CP340/341/440/441[M].通訊及編程,2007.