時間:2008-12-10 09:50:24來源:ronggang
摘 要:無協議通信是PLC的一種串行通信方式,可以應用于PLC與上位計算機或其他設備的通信。介紹了歐姆龍PLC與V600系列RFID控制器通信口的連接方式,無協議通信的原理、指令和使用步驟,及其歐姆龍V600系列RFID控制器的命令集和數據傳輸協議。通過歐姆龍PLC和歐姆龍V600系列RFID控制器之間實現無協議通信的實例講述了無協議通信的實現方法。實驗結果表明:無協議通信編程靈活、通信可靠性高,具有一定的實用價值。
關鍵詞:無協議通信,PLC,RFID控制器,數據傳輸協議
Abstract: No-Protocol Communication is a kind of serial communication mode of PLC that can be used in the communications between PLC and host computers or other equipments. The link way of OMRON PLC and V600 serials RFID controller, principles, communication commands and implement steps of No-Protocol Communication, communication commands and data transfer protocol of OMRON V600 serials RFID controller were introduced. The implement method of No-Protocol Communication was explained by the No-Protocol Communication between OMRON PLC and V600 serials RFID controller. The experimental results show that No-Protocol Communication is flexible in programming, credible in communication and valuable in application.
Key words: No-Protocol Communication, PLC, RFID controller, Data Transfer Protocol
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 PLC與RFID控制器接線
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,如圖5所示。
圖5 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
標簽:
上一篇:機車監控系統接口技術
中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.hysjfh.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
相關資訊
產品新聞
更多>2025-05-19
2025-04-30
2025-04-11
2025-04-08
2025-03-31
2025-03-26