PLC與RFID控制器的無協議通信
Fig.3 commands of No-Protocol Communication本文引用地址:http://www.cqxgywz.com/article/158164.htm
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字節,包括開始代碼、結束代碼)。
V600系列RFID控制器擁有豐富的指令系統,共23條,可以非常靈活的應用于各種場合,其中包括通信命令、一般的通信子命令、主機命令等[3]。通信命令多用于執行與RFID標簽的通信,例如,對靜止或者是移動的RFID標簽進行讀寫等。通信子命令一般用于取消某個命令的執行,而主機命令則用于主機設備控制 RFID控制器。在上位機與RFID 控制器通信過程中用到最多的是通信命令,常用通信命令的代碼及其功能如表1。
表1 RFID常用通信命令表
Table.1 common commands of RFID
在1:1的通信模式下,通信過程中不計算校驗碼,因此,只能通過響應代碼來判斷通信結果的正確性。圖4給出了上位機與RFID控制器之間傳輸數據的格式。從上位機發送到RFID控制器的數據塊為命令幀,反過來,從RFID控制器發送到上位機的數據塊為響應幀。每個幀以指令代碼開始,以結束符結束,響應幀中還包括反應執行結果的響應碼。上位機與RFID 控制器之間可以傳送十六進制或ASCII形式的數據,每一幀最大允許傳送數據為271個字符。
如果傳送的數據大于271個字符,可以將數據分成起始幀、若干中間幀、結束幀進行傳送。起始幀必須包含命令碼,讀/寫頭號,開始地址等,否則通信的過程中將會有錯誤發生。上位機每發送完一幀時,在收到RFID 控制器返回的分界符(即“L”)后再發送下一幀,只有當結束幀數據發送完畢時才返回響應代碼。

圖4 RFID控制器1:1數據傳輸格式
Fig.4 1:1 data transfer format of RFID controller
4.1 CP1H通信端口設置
PLC與RFID控制器之間使用RS-422方式進行通信。根據RFID控制器通信規格要求,使用歐姆龍編程軟件CX-Programmer7.1將CP1H串口1模式設置為“RS-232C”,通信波特率設置9600,數據格式為7、2、E,如圖5所示
圖5 CP1H通信端口設置
Fig.5 the communication port setting of CP1H









評論