工業(yè)RFID應(yīng)用之技術(shù)篇(一):RFID讀寫器如何通過Modbus RTU與西門子PLC S7-1200進(jìn)行通信
廣州晨控智能技術(shù)有限公司
參考價(jià): | 面議 |
- 產(chǎn)品型號
- 品牌
- 其他 廠商性質(zhì)
- 所在地
訪問次數(shù):400更新時(shí)間:2021-08-11 11:06:11
如今的工業(yè)生產(chǎn)已經(jīng)向著智能化、自動(dòng)化發(fā)展,因此對設(shè)備之間的通信質(zhì)量要求也越來越高,像是Modbus、Profinet、Canopen、Ethernet都是常用的通信協(xié)議。
而除了這些常用的通訊協(xié)議之外,我們還可以根據(jù)工程項(xiàng)目的需求來自定義協(xié)議(Free Procotol),為什么放著現(xiàn)成的不用而要去自定義呢?
開發(fā)過程中晨控系列高頻RFID讀卡器具備同時(shí)支持Modbus TCP和TCP/IP自定義協(xié)議的功能,使用Modbus TCP協(xié)議的好處是:大部分品牌的PLC都集成了該協(xié)議,用戶不需要關(guān)心底層數(shù)據(jù)結(jié)構(gòu),只需要直接調(diào)用相關(guān)的指令塊就能得到相應(yīng)寄存器的數(shù)據(jù),易連接,易調(diào)試,易維護(hù)。
但是對于一些使用PC開發(fā)上位機(jī)軟件、對自由度要求更高的用戶來說,當(dāng)使用到的RFID數(shù)量不大,數(shù)據(jù)內(nèi)容又比較固定的情況下,使用TCP/IP自定義協(xié)議就能編程更簡單,通訊效率更好,保密性更優(yōu)秀。
用HTTP舉個(gè)簡單的例子,但是由于HTTP本身結(jié)構(gòu)的設(shè)定,你必須將“請求方法"、“HTTP版本",“狀態(tài)碼"以及“header信息"等等一起發(fā)送出去。
這樣子整個(gè)消息加起來可能有幾十個(gè)字節(jié),但實(shí)際對你有用的只有“0x11"這一個(gè)字節(jié)而已,使用Free Procotol就能盡可能的精簡從而節(jié)省帶寬,從而提高數(shù)據(jù)傳輸質(zhì)量。
OSI是標(biāo)準(zhǔn)化組織ISO為了更好地促進(jìn)互聯(lián)網(wǎng)絡(luò)的研究和發(fā)展,制定網(wǎng)絡(luò)互連的七層框架的一個(gè)理論參考模型,稱為開放系統(tǒng)互連參考模型,簡稱OSI。
目前還沒有*合乎OSI的通信協(xié)議問世,而TCP/IP則是我們實(shí)際應(yīng)用泛的一種網(wǎng)絡(luò)的模型。
TCP/IP網(wǎng)絡(luò)模型對應(yīng)OSI參考模型
自定義協(xié)議工作于TCP/IP模型的應(yīng)用層,基于TCP協(xié)議開發(fā),因?yàn)槭÷粤撕芏嗖槐匾臄?shù)據(jù)結(jié)構(gòu),比起其它應(yīng)用層通信協(xié)議更加簡潔,高效,更加滿足RFID高頻讀寫器通訊要求。
OSI和TCP/IP的模型具體細(xì)節(jié)暫且不表,我們先從實(shí)際應(yīng)用來了解自定義協(xié)議
設(shè)備:
晨控CK-FR08-E00高頻讀寫器
PC系統(tǒng)Windows10
CK自由協(xié)議測試工具V1.1
CK-FR08-E00使用M12標(biāo)準(zhǔn)電纜插頭,通過以太網(wǎng)連接到PC或PLC,通訊協(xié)議集成了Modbus TCP和自由協(xié)議(Free Procotol)。
CK高頻讀寫器E00系列在生產(chǎn)中已經(jīng)寫入了我司編寫的自由協(xié)議,用戶在使用時(shí)只需對上位機(jī)組態(tài)即可與RFID高頻讀寫器通訊。為測試方便,現(xiàn)在我們在PC機(jī)上運(yùn)行“自由協(xié)議測試工具V1.1"測試自由協(xié)議是否能夠配合讀寫器正常讀寫數(shù)據(jù)。
CK-FR08-E00對自由協(xié)議命令的支持如下:
0x00---心跳包
0x01---獲取設(shè)備信息
0x02---獲取電子標(biāo)簽UID
0x03---讀電子標(biāo)簽的數(shù)據(jù)區(qū)
0x04---寫電子標(biāo)簽的數(shù)據(jù)區(qū)
電子標(biāo)簽數(shù)據(jù)總線是16位,每次操作必須是2個(gè)字節(jié)并且地址是雙字節(jié)偏移如:0、2、4等,標(biāo)簽的UID碼地址(只讀):0x00、0x02、0x04、0x06,用戶數(shù)據(jù)區(qū)(可讀寫):0x08、0x0A、0x0C、0x0E等。
協(xié)議結(jié)構(gòu):
定義 | 幀頭1 | 幀頭2 | 消息幀序列ID | 消息類型ID | 數(shù)據(jù)長度(16位) | 數(shù)據(jù)內(nèi)容 |
描述 | 0X81 | 0XC0 | 每次發(fā)送加1 | (00 01 02 03 04) |
0x00心跳包:
若是發(fā)送:“81 C0 02 00 01 00 05"則可更改心跳定時(shí)器時(shí)間,“05"表示5秒收不到心跳包(3次收不到)則斷開連接。
上電連接后心跳包默認(rèn)關(guān)閉,連接后上位機(jī)可發(fā)送心跳包打開心跳或調(diào)整心跳包定時(shí)器時(shí)間。
心跳包是上位機(jī)和讀卡器之間確定在線的方式,讀卡器每隔一段時(shí)間向上位機(jī)發(fā)送一個(gè)心跳包,同時(shí)啟動(dòng)一個(gè)定時(shí)器,定時(shí)器結(jié)束前收到上位機(jī)的數(shù)據(jù)回復(fù)則刪除定時(shí)器,否則就斷開與上位機(jī)的連接。
0x01獲取讀卡器信息:
TX數(shù)據(jù)中:讀取讀卡器信息。
RX數(shù)據(jù)中:“43 6B 2D 46 52 30 38 2D 45 30 30 00 00 00 00 00"為產(chǎn)品名字,“56 32 2E 30 00 00 00 00 "為讀寫器軟件版本。
0x02讀取標(biāo)簽UID碼:
TX數(shù)據(jù)中:讀取UID碼。
RX數(shù)據(jù)中:長度為“08 00"個(gè)字節(jié)的UID碼是“ 0A 20 A4 5F 50 01 04 E0"。
0x03讀電子標(biāo)簽的數(shù)據(jù)區(qū):
TX數(shù)據(jù)中:讀取標(biāo)簽起始地址為0x00,長度為0x10=16個(gè)字節(jié)的數(shù)據(jù)區(qū)。
RX數(shù)據(jù)中:讀取到的16個(gè)字節(jié)為“0A 20 A4 5F 50 01 04 E0 11 22 33 44 55 66 00 44 "
0x04寫電子標(biāo)簽的數(shù)據(jù)區(qū):
行的TX數(shù)據(jù)中:將“11 22 33 44 55 66"寫入標(biāo)簽起始地址0x08,長度6個(gè)字節(jié)的數(shù)據(jù)區(qū)。
第二行的RX數(shù)據(jù)中:讀卡器返回?cái)?shù)據(jù)“00 00"表示寫入成功。
第三行的TX數(shù)據(jù)中:讀取標(biāo)簽起始地址0x08開始的6個(gè)字節(jié)。
第四行的RX數(shù)據(jù)中:從標(biāo)簽數(shù)據(jù)區(qū)讀取到的6個(gè)字節(jié)為“11 22 33 44 55 66",數(shù)據(jù)寫入正確。
如果要使用PLC來完成自由協(xié)議的命令發(fā)送,例如西門子可以使用TCON連接上位機(jī)進(jìn)行組態(tài),使用TSEND來發(fā)送數(shù)據(jù),TRCV接收數(shù)據(jù)。
通過TCON指令連接設(shè)備
TCON指令塊“Properties(屬性)"> “Configuration(組態(tài))">“Connection parameter(連接參數(shù))"中設(shè)置連接的Partner地址,TSEND“DATA"用以儲(chǔ)存發(fā)送的數(shù)據(jù),TRCV“DATA"儲(chǔ)存從Partner處收到的數(shù)據(jù)。
通過TSEND通信連接發(fā)送數(shù)據(jù)
通過TRCV通信連接接受數(shù)據(jù)
支持自定義協(xié)議的RFID高頻讀寫器優(yōu)勢:
1、適用性強(qiáng),擴(kuò)展性好:用戶可根據(jù)現(xiàn)場項(xiàng)目需求編寫自定義協(xié)議,針對性完善,調(diào)試方便,語義明確,如果以后需要修改協(xié)議,和老的客戶端兼容性比較好
2、提高通信質(zhì)量,提升生產(chǎn)效率:我們使用自定義的通訊協(xié)議可以減少不必要的數(shù)據(jù)產(chǎn)生,數(shù)據(jù)比較小,速度快,可以減輕通訊的負(fù)擔(dān),性能會(huì)比使用復(fù)雜的通訊協(xié)議更好。
3、安全性好,保密性強(qiáng):非協(xié)議,數(shù)據(jù)通信更安全,如果要分析協(xié)議的漏洞就必須先破譯你的通訊協(xié)議,有效保護(hù)客戶數(shù)據(jù)信息。
更多關(guān)于TCP/IP通訊的技術(shù)和RFID高頻讀寫器的應(yīng)用與問題解決方案請關(guān)注微信公眾號或者登陸晨控查詢,晨控智能期待您的咨詢與合作。