物聯傳媒 旗下網站
登錄 注冊
RFID世界網 >  技術文章  >  其他  >  正文

PLC與RFID控制器的無協議通訊

作者:工控家
來源:RFID世界網
日期:2018-08-29 17:05:43
摘要:無協議通訊是PLC的一種串行通訊方式,可以應用于PLC與上位計算機或其他設備的通訊。先容了歐姆龍PLC與V600系列RFID控制器通訊口的連接方式,無協議通訊的原理、指令和使用步驟,及其歐姆龍V600系列RFID控制器的命令集和數據傳輸協議。通過歐姆龍PLC和歐姆龍V600系列RFID控制器之間實現無協議通訊的實例講述了無協議通訊的實現方法。實驗結果表明:無協議通訊編程靈活、通訊可靠性高, 具有一定的實用價值。   關鍵詞:無協議通訊,PLC,RFID控制器,數據傳輸協議

 

  0. 引言

  在大型生產線上,為了實現流水線自動化,PLC與RFID技術結合的應用不斷增加。PLC作為一種高可靠性的控制裝置,與RFID進行數據通訊,不但可以實現對每一個生產過程的控制與治理,而且可以進步自動化生產流水線的生產效率。

  歐姆龍公司的CPM2A/2C、CQM1H、C200Hα、CP1、CJ1及CS1等系列PLC都可以支持無協議通訊功能。利用TXD和RXD等指令,通過串行通訊端口,PLC與計算機之間、PLC與PLC之間、PLC與各種通訊設備之間(如變頻器、條形碼讀進器和串行打印機等)可以進行數據交換,實現通訊[1]。本文選用歐姆龍CP1H型PLC,實現與與歐姆龍的V600系列RFID控制器的無協議通訊。PLC作為上位機,RFID控制器作為下位機。

  1. 系統結構

  上位PLC與下位RFID控制器之間有1:1和1:N兩種鏈接模式,1臺PLC (上位機)只能連接32臺RFID(下位機),本文先容1:1鏈接模式。系統中PLC與RFID控制器之間通過RS-422總線連接。上位機與RFID控制器通訊時,使用專用的SYSWAY通訊協議,上位機優先發送通訊指令,RFID控制器接收后,首先分析來自主機的命令,然后對RFID標簽進行讀寫。通訊結束后,RFID 控制器返回一個響應代碼到主機。SYSWAY通訊協議支持1:1和1:N通訊。當主機與RFID控制器是1對1連接時,采用1:1方式通訊;當連接主機的RFID控制器超過一個時,采用1:N方式通訊。在1:N通訊模式下,可以通過對RFID控制器設置來實現主機與RFID控制器的1:1通訊。

  主機CP1H作為上位機,由于PLC與RFID控制器之間選用RS-422方式進行通訊,所以CP1H端口1選用插件CP1W-CIF11,為RS-422/485型。RFID(由V600-CA5D02 RFID控制器、V600-H07天線及V600-D23P66N無源標簽三部分組成)作為下位機,V600-CA5D02 RFID控制器的機體上分別帶有一個RS-232C與RS-422/485串行通訊口,都支持與計算機、PLC等主機設備之間的通訊。PLC與RFID控制器的接線如圖1所示。

1

  圖1 PLC與RFID控制器接線

  Fig.1 the connection of PLC and RFID controller

  CP1W-CIF11有一組DIP開關,共有8個,SW1表示是否使用終端電阻;SW2、SW3表示通訊的連接方式:422或485;SW4為空;SW5、SW6表示通訊時有無RS控制。在使用其之前,根據通訊的要求對DIP開關進行設定:SW1為ON,使用終端電阻;SW2、SW3為OFF,使用422連接方式;SW5、SW6為任意。

  2. 無協議通訊及其指令

  無協議通訊,即不使用重試處理、不經過數據格式的轉換處理及具有對應接收的數據進行處理分支等的順序通訊協議。在無協議且無轉換的條件下,通過通訊端口的輸進輸出指令(TXD,RXD)發送和接收數據。無協議通訊過程十分簡單,只需在PLC系統設定中將串行端口的串行通訊模式設定為無協議通訊。根據無協議通訊,PLC就可以與帶有RS-232端口或者RS-422/485端口的外部設備,按照TXD和RXD指令進行單方的發送(數據流從PLC到通用外部設備)和接收數據(數據流從通用外部設備到PLC)[2]。無協議通訊的實現步驟如圖2所示。

  圖2 無協議通訊的實現步驟

  

  使用無協議通訊發送和接收消息時,開始代碼及結束代碼之間的數據用TXD指令來發送,或者是將要插進開始代碼及結束代碼之間的數據用RXD指令來接收。使用TXD指令發送數據時,應先將數據從I/O存儲器讀取后發送,使用RXD指令接收數據時,順序恰恰相反。TXD/RXD一次發送和接收的最大數據量為256個字節。無協議通訊時,發送和接收的數據的開始代碼和結束代碼由用戶在PLC系統設定中指定。圖3為歐姆龍CP1H型PLC無協議通訊的指令結構。

  圖3 無協議通訊指令

  

  TXD指令根據由S指定的發送數據開頭CH編號,對由N指定的發送字節長度的數據進行無變換操縱。隨著PLC系統設定為無順序模式時的開始代碼/結束代碼的指定,由C的位8~11輸出到指定的串行通訊選裝件版的串行端口(無順序模式)。但是只能在發送預備標志(串行端口1:A392.13、串行端口2:A392.05)為ON時才能發送。能發送字節數最大為259字節(數據部最大256字節,包括開始代碼、結束代碼)。

  RXD指令在串行通訊選裝件板的串行端口(無順序模式)中,從由D指定的接收數據保存開頭CH編號開始,輸出由N指定的相當于保存字節長度的接收結束數據。當接收結束數據不滿由N所指定的保存字節長度時,輸出實際存在的接收結束數據。但是當接收結束標志(串行端口1:A392.14、串行端口2:A392.06)為ON時,執行本指令來接收(來自接收緩沖器的)數據。接收可能字節數最大為259字節(數據部最大256字節,包括開始代碼、結束代碼)。

  3. RFID控制器及其命令集和數據傳輸協議

  V600系列RFID控制器擁有豐富的指令系統,共23條,可以非常靈活的應用于各種場合,其中包括通訊命令、一般的通訊子命令、主機命令等[3]。通訊命令多用于執行與RFID標簽的通訊,例如,對靜止或者是移動的RFID標簽進行讀寫等。通訊子命令一般用于取消某個命令的執行,而主機命令則用于主機設備控制 RFID控制器。在上位機與RFID 控制器通訊過程中用到最多的是通訊命令,常用通訊命令的代碼及其功能如表1。

  表1 RFID常用通訊命令表

  

  在1:1的通訊模式下,通訊過程中不計算校驗碼,因此,只能通過響應代碼來判定通訊結果的正確性。圖4給出了上位機與RFID控制器之間傳輸數據的格式。從上位機發送到RFID控制器的數據塊為命令幀,反過來,從RFID控制器發送到上位機的數據塊為響應幀。每個幀以指令代碼開始,以結束符結束,響應幀中還包括反應執行結果的響應碼。上位機與RFID 控制器之間可以傳送十六進制或ASCII形式的數據,每一幀最大答應傳送數據為271個字符。

  假如傳送的數據大于271個字符,可以將數據分成起始幀、若干中間幀、結束幀進行傳送。起始幀必須包含命令碼,讀/寫頭號,開始地址等,否則通訊的過程中將會有錯誤發生。上位機每發送完一幀時,在收到RFID 控制器返回的分界符(即“↙”)后再發送下一幀,只有當結束幀數據發送完畢時才返回響應代碼。

  圖4 RFID控制器1:1數據傳輸格式

 

  4. PLC與RFID控制器無協議通訊的實現

  4.1 CP1H通訊端口設置

  PLC與RFID控制器之間使用RS-422方式進行通訊。根據RFID控制器通訊規格要求,使用歐姆龍編程軟件CX-Programmer7.1將CP1H串口1模式設置為“RS-232C”,通訊波特率設置9600,數據格式為7、2、E。

  Fig.5 the communication port setting of CP1H

  4.2 RFID控制器參數設置

  RFID控制器通訊參數設置應與PLC通訊端口參數一致:波特率9600,偶校驗方式,7位數據位,2位停止位。DIP開關SW6為ON,表示使用終端電阻。

  4.3 通訊舉例

  通過PLC與RFID控制器之間的通訊,編程實現從RFID標簽地址0100H開始的通道內讀取四個數據,讀取的數據存儲到PLC的DM區內。根據通訊數據傳輸格式,要發送的數據為RDA1001004*。將要發送的數據轉化為16進制數“524441313030313030342A0D” ,存放到DM0開始的6個通道內。這6個通道對應值分別為:DM0:5244;DM1:4131;DM2:3030;DM3:3130;DM4:3034;DM5:2A0D。

  PLC與RFID控制器無協議通訊程序如圖6所示。A392.13為發送答應標志位,當PLC的串口1預備好時,A392.13自動為ON,發送數據指示100.00變亮,則PLC可以通過此端口發送數據。當0.00為ON時,將DM0開始的6個通道的數據發送出往,RFID控制器接收到指令后做出響應。A392.14為接收答應標志位。串口預備好后,A392.14自動為ON,接收數據指示100.07變亮。PLC開始自動接收RFID控制器返回的響應數據,并自動存儲到DM100開始的5個通道內。執行程序后查看從DM100開始的5個通道的內容,分別為:DM100:5244;DM101:3030;DM102:3131;DM103:3131;DM104:2A0D。所以接收的數據為:RD001111*,根據數據傳輸響應幀數據格式,可知從RFID標簽讀出的四個數為:1111。

  圖6 PLC與RFID控制器通訊程序

  

  5. 結束語

  無協議通訊是一種簡便易行的通訊方式,歐姆龍的CPM2A和CP系列等小型機都可以實現[4]。這種通訊方式編程靈活,通訊可靠性高,是一種比較理想的低本錢通訊方式。

  參考文獻:

  [1] 徐世許.可編程序控制器應用指南—編程·通訊·聯網[M].北京:電子產業出版社,2007: 278-285

  [2] OMRON. CP1H/CP1L CPU UNIT PROGRAMMING MANUAL[K]. Shanghai: OMRON, 2007

  [3] OMRON. RFID System V600 Series OPERATION MANUAL[K]. Shanghai: OMRON, 2003

  [4] 王鳳杰,洪云.歐姆龍PLC無協議通訊功能研究[J].產業控制計算機,2008,21(5): 45-47