国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

射頻卡讀寫器與PLC通信的實(shí)現(xiàn)

2016-01-18 05:46王向東袁金云宋大雷王冬青
自動(dòng)化與儀表 2016年8期
關(guān)鍵詞:功能塊讀寫器字節(jié)

王向東 ,袁金云,宋大雷,王冬青

(1.中國海洋大學(xué) 工程學(xué)院,青島266100;2.青島大學(xué) 自動(dòng)化工程學(xué)院,青島 266071)

在電子支付領(lǐng)域,為了實(shí)現(xiàn)自動(dòng)支付管理,射頻卡讀寫器與各種控制器相結(jié)合的技術(shù)應(yīng)用不斷增加。隨著可編程邏輯控制器PLC(programmable logic controller)技術(shù)在工業(yè)上的應(yīng)用越來越廣泛,PLC與射頻卡讀寫器相結(jié)合進(jìn)行數(shù)據(jù)通信進(jìn)入自動(dòng)化控制裝置領(lǐng)域可減少人工參與,提高自動(dòng)化程度及工作效率。近年來,國內(nèi)外許多學(xué)者對(duì)此作了相關(guān)研究。文獻(xiàn)[1-2]對(duì)Mifare系列射頻卡讀寫器進(jìn)行了研制;文獻(xiàn)[3]對(duì)基于RFID技術(shù)的鐵路客票系統(tǒng)做了深入研究;文獻(xiàn)[4-5]對(duì)射頻技術(shù)的讀寫器設(shè)計(jì)及其安全性進(jìn)行了研究。以上研究內(nèi)容主要是針對(duì)射頻識(shí)別技術(shù)和相應(yīng)的讀寫器的研究。文獻(xiàn)[6]利用協(xié)議宏實(shí)現(xiàn)了歐姆龍PLC與V600系列RFID讀寫器之間的通信;文獻(xiàn)[7]研究了三菱FX3u PLC與Siemens RF260讀寫器的通信;文獻(xiàn)[8]進(jìn)行了基于Siemens PLC與IC卡讀寫器的干混奶粉配送控制系統(tǒng)的設(shè)計(jì);文獻(xiàn)[9]對(duì)射頻識(shí)別技術(shù)作了分析,將Siemens PLC與射頻識(shí)別裝置的串行通訊應(yīng)用在焦?fàn)t爐號(hào)識(shí)別中。可見,多數(shù)文獻(xiàn)介紹了Siemens PLC控制器與射頻卡讀寫器的通信。而在工業(yè)過程中ABB PLC占有不可或缺的地位,本文研究ABB公司PLC與射頻卡讀寫器的通信。選用ABB公司的PM564-TP-ETH型PLC與廣州思騰公司的ST-RF04系列桌面型射頻卡讀寫器通過ASCII通訊協(xié)議實(shí)現(xiàn)通信。ASCII串行通訊協(xié)議硬件連接簡單,協(xié)議簡單可靠,易于實(shí)現(xiàn)。

1 系統(tǒng)結(jié)構(gòu)

射頻卡讀寫器與PLC的通信系統(tǒng)由射頻卡、射頻卡讀寫器、PLC控制器組成,通信系統(tǒng)結(jié)構(gòu)如圖1所示。其中射頻卡存放卡號(hào)、數(shù)據(jù)等,射頻卡讀寫器直接與PLC控制器上的RS485串行通信端口相連,完成射頻卡讀寫器與PLC控制器之間的數(shù)據(jù)交換。由PLC控制器根據(jù)控制的需求,通過讀寫器對(duì)射頻卡片內(nèi)的信息進(jìn)行讀或者寫操作。下文對(duì)系統(tǒng)的主要部分進(jìn)行介紹。

圖1 通信系統(tǒng)結(jié)構(gòu)Fig.1 Structure diagram of communication system

1.1 射頻卡

非接觸式 IC(integrated circuit card)卡通過射頻感應(yīng)從讀寫器獲取能量,交換數(shù)據(jù),故非接觸式IC卡又叫射頻卡。目前我國主要應(yīng)用的射頻卡有PHILIPS公司的Mifare卡和ATMEL公司的Temic卡[10]。Mifare 1 S50卡是Mifare卡經(jīng)典的型號(hào),也是市面上的主流產(chǎn)品。Mifare 1 S50卡的容量為1 KB的 E2PROM,共有 16個(gè)扇區(qū)(0~15),每個(gè)扇區(qū)有 4塊(塊0~塊3),每一塊有16個(gè)字節(jié),S50卡片以塊為存取單位,每個(gè)扇區(qū)都具有獨(dú)立的一組密碼及訪問控制。

1.2 射頻卡讀寫器

射頻卡讀寫器模塊一般是由PHILIPS公司的MCM200和MCM500兩種核心芯片制成。本系統(tǒng)中的射頻卡讀寫器選用廣州思騰公司的ST-RF04系列桌面型射頻卡讀寫器,它是以MCM500為基礎(chǔ)來設(shè)計(jì)的,同時(shí)支持S50、S70非接觸IC卡,具有485通信接口,操作距離可達(dá)100 mm。射頻讀寫器通過RS485串行通信將接收到的數(shù)據(jù)傳送至PLC控制器。

1.3 PLC控制器

AC500-eCo是ABB公司推出的一款高性能的緊湊型PLC,可擴(kuò)展性強(qiáng)、安裝方便、應(yīng)用靈活,是小型工業(yè)控制系統(tǒng)和機(jī)械設(shè)備中的不二選擇,可以完美地滿足客戶需求。AC500-eCo的CPU模塊有PM554和PM564兩種型號(hào),本文PLC控制器選用PM564-TP-ETH CPU,集成有COM1接口、12路數(shù)字輸入/輸出、4路模擬量輸入/輸出,擁有128 KB程序內(nèi)存。

2 讀寫器的命令集及通訊協(xié)議

ST-RF04讀寫器指令系統(tǒng)相當(dāng)豐富,可以應(yīng)用于多種工業(yè)控制場(chǎng)合。在與PLC通訊過程中常用到的通信命令代碼及其功能如表1所示。

表1 射頻卡讀寫器部分命令表Tab.1 Part command of the RFID card reader

ST-RF04讀寫器的內(nèi)部含有微處理器芯片,能夠完成對(duì)射頻卡的讀取、寫入、通訊的任務(wù)。它的通訊端口為RS485串行接口,可以方便地與PLC的COM2串行端口進(jìn)行數(shù)據(jù)通信,ST-RF04讀寫器的具體通訊參數(shù)設(shè)置如下:

*波特率:9600 b/s

*奇偶校驗(yàn):無

*數(shù)據(jù)位:8

*停止位:1

射頻卡讀寫器與PLC之間以ASCII(美國標(biāo)準(zhǔn)信息交換代碼)模式的報(bào)文格式傳送數(shù)據(jù)。數(shù)據(jù)以字節(jié)為單位進(jìn)行傳送,每一報(bào)文最大允許傳送的數(shù)據(jù)大小為256個(gè)字節(jié)。因此,當(dāng)通信傳送的數(shù)據(jù)超過256個(gè)字節(jié)時(shí),可以將數(shù)據(jù)分多次進(jìn)行傳送。當(dāng)一次通信過程中傳送的數(shù)據(jù)少于256個(gè)字節(jié)時(shí),通信格式如表2所示。ST-RF04射頻卡讀寫器發(fā)送報(bào)文的第一個(gè)字節(jié)通常是起始符A7,發(fā)送報(bào)文還包括報(bào)文的數(shù)據(jù)長度、命令字和異或校驗(yàn),每條發(fā)送報(bào)文以異或校驗(yàn)字節(jié)結(jié)束。

表2 發(fā)送報(bào)文通訊格式Tab.2 Send message communication format

當(dāng)發(fā)送報(bào)文發(fā)送完所有數(shù)據(jù)后,射頻卡讀寫器返回接收?qǐng)?bào)文至PLC。接收?qǐng)?bào)文以起始符A7開頭,包括數(shù)據(jù)長度、狀態(tài)字、命令字、接收數(shù)據(jù)和異或校驗(yàn),其通訊格式如表3所示。接收?qǐng)?bào)文一次性最多可以接收256個(gè)字節(jié)的有效數(shù)據(jù)。

表3 接收?qǐng)?bào)文通訊格式Tab.3 Receive message communication format

3 射頻卡讀寫器與PLC硬件連接

PM564-TP-ETH PLC集成有COM1和COM2(可選)2個(gè)串行通信接口[11],且均支持ASCII通訊協(xié)議。本系統(tǒng)選用COM2口使用RS485屏蔽雙絞線與射頻卡讀寫器相連接。PM564-TP-ETH CPU模塊的COM2接口內(nèi)部集成了1個(gè)上拉電阻和1個(gè)下拉電阻,需通過短接COM2的端子1-2和3-4將其激活。射頻卡讀寫器與PLC控制器通信時(shí)采用ASCII通訊方式,傳輸速率為9600 b/s。本文所設(shè)計(jì)的射頻卡讀寫器與PLC通訊端口接線如圖2所示。

圖2 射頻卡讀寫器與PLC接線Fig.2 Connection between RFID card reader and PLC

4 PLC程序設(shè)計(jì)及通信實(shí)現(xiàn)

4.1 程序流程

在充電樁收費(fèi)管理系統(tǒng)中,管理人員首先通過射頻卡讀寫器將空白射頻卡升級(jí)為充電卡,然后對(duì)充電卡進(jìn)行充值后才可應(yīng)用到充電樁收費(fèi)管理系統(tǒng)中。當(dāng)用戶通過裝有射頻卡讀寫器的充電樁消費(fèi)時(shí),PLC控制器在最后會(huì)扣除相應(yīng)費(fèi)用并寫入到用戶相應(yīng)的射頻卡卡片中。用戶刷卡消費(fèi)過程的程序流程如圖3所示。

圖3 用戶刷卡消費(fèi)程序流程Fig.3 Flow chart of user payment management

程序的編寫包括通訊參數(shù)設(shè)置和編寫梯形圖程序兩部分,下面具體介紹通訊參數(shù)的設(shè)置和程序流程中的扣款部分程序的編寫。

4.2 通訊參數(shù)設(shè)置

硬件連接好后,要實(shí)現(xiàn)射頻卡讀寫器與PLC之間的通信,雙方必須采用統(tǒng)一的通訊參數(shù),如相同的波特率、數(shù)據(jù)位、停止位和校驗(yàn)方式等。PLC的通訊方式和基本通訊參數(shù)在PLC的編程軟件的組態(tài)中設(shè)定[12]。

在編程軟件設(shè)備界面下雙擊設(shè)備樹中COM2-ASCII,右側(cè)出現(xiàn)ASCII參數(shù)設(shè)置界面,對(duì)于RS485通信方式,RTS控制器必須設(shè)置為 “報(bào)文”(Telegram);報(bào)文尾綴選擇設(shè)置為字符超時(shí);檢查和設(shè)置為XOR。其他與通訊有關(guān)的參數(shù)如波特率、奇偶性、數(shù)據(jù)位、停止位與射頻卡讀寫器的通訊參數(shù)一致,分別設(shè)置為 9600 b/s、無、8、1,具體的通訊參數(shù)配置如圖4所示。

圖4 系統(tǒng)通訊參數(shù)配置Fig.4 System communication parameter configuration

4.3 編寫梯形圖程序

根據(jù)上述通信連接的硬件選擇,在基于串口的ASCII通訊過程中,需要編制數(shù)據(jù)發(fā)送和接收程序。AC500為用戶提供了2個(gè)ASCII通訊功能庫ASCII_AC500_V10.LIB:COM_SEND和COM_REC,功能塊COM_SEND用于通過串行口發(fā)送數(shù)據(jù),功能塊COM_REC用于通過串行口接收數(shù)據(jù)。

在充電樁收費(fèi)管理系統(tǒng)中,為了保證能夠正常順利地發(fā)送數(shù)據(jù),一次所發(fā)數(shù)據(jù)功能塊的長度不超過256個(gè)字節(jié)。報(bào)文較長的數(shù)據(jù),使用了多個(gè)COM_SEND功能塊逐個(gè)發(fā)送,而不考慮各自的DONE輸出狀態(tài)。由于使用了多個(gè)COM_REC功能塊,為了避免數(shù)據(jù)信息的丟失、錯(cuò)誤處理或者無法處理,只能讓一個(gè)COM_REC功能塊在同一時(shí)間接收完報(bào)文,并且發(fā)出接收過程結(jié)束的信號(hào)之后下一個(gè)COM_REC功能塊才能被啟用,而且在一個(gè)COM_REC功能塊工作的時(shí)候,其余所有功能塊應(yīng)處于非激活狀態(tài)。COM_REC功能塊能接收的數(shù)據(jù)長度最多為256個(gè)字節(jié)。

在充電樁收費(fèi)管理系統(tǒng)中,軟件程序采用梯形圖語言進(jìn)行編寫。PLC根據(jù)COM_SEND功能塊控制字,由EN上升沿觸發(fā)串口通訊,向射頻卡讀寫器發(fā)送數(shù)據(jù)讀取請(qǐng)求報(bào)文。當(dāng)發(fā)送數(shù)據(jù)完全結(jié)束后,EN上升沿觸發(fā)串口通訊,對(duì)射頻卡讀寫器發(fā)出回傳數(shù)據(jù)的接收命令,COM_REC功能塊工作,將接收數(shù)據(jù)存放在相應(yīng)數(shù)組中。當(dāng)PLC接收到從系統(tǒng)傳來的扣款金額數(shù)據(jù)時(shí),PLC控制器執(zhí)行向射頻卡讀寫器發(fā)送扣款指令并按照程序流程向下一步步執(zhí)行。如果電子錢包扣款并寫入射頻卡E2PROM成功,則表明系統(tǒng)從射頻卡中扣款成功,否則扣款不成功,扣款部分程序結(jié)束。若想再一次扣款,需重新刷卡并對(duì)卡片進(jìn)行驗(yàn)證。

射頻卡讀寫器與PLC通信的過程實(shí)際上是多組收發(fā)功能塊問答的過程,射頻卡與讀寫器的問答必須在每步執(zhí)行成功后才能執(zhí)行下一步。發(fā)送終止卡操作命令后,想再次對(duì)該卡進(jìn)行讀寫,必須先將該卡移出感應(yīng)區(qū)后再放入感應(yīng)區(qū)。在同一扇區(qū)內(nèi),可多次對(duì)該扇區(qū)內(nèi)的數(shù)據(jù)進(jìn)行讀寫,若在完成對(duì)一個(gè)扇區(qū)的讀寫后,想再對(duì)另一個(gè)扇區(qū)進(jìn)行操作,必須重新對(duì)該卡進(jìn)行認(rèn)證。

5 結(jié)語

本文通過分析Mifare 1 S50卡的電氣特點(diǎn)及特性和射頻卡讀寫器的指令集和通訊協(xié)議,設(shè)計(jì)了一種基于射頻卡讀寫器與PLC控制器的充電樁收費(fèi)管理通信系統(tǒng),根據(jù)PLC控制器的特點(diǎn)及射頻卡讀寫器的通訊方式,采用RS485異步半雙工通信模式,運(yùn)用ASCII通訊協(xié)議,實(shí)現(xiàn)了基于射頻卡讀寫器與PLC的通信。測(cè)試結(jié)果表明本文所提出的通信方法可以實(shí)現(xiàn)PLC控制器通過射頻卡讀寫器讀取射頻卡中的卡號(hào)、余額、數(shù)據(jù)等信息,并能把電子金額加款或減款到射頻卡中。該通信方法對(duì)以后ABB PLC與射頻卡讀寫器的通信控制程序的編寫有一定的參考價(jià)值,且在PLC的實(shí)際應(yīng)用中具有一定的指導(dǎo)意義。

[1]李建軍,周曉中,桂衛(wèi)華.Mifare系列射頻卡讀寫器的研制[J].電氣應(yīng)用,2006(1):117-121.

[2]曾孝平,任家峪,熊東.基于RFID的非接觸式IC卡讀寫器設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2010,18(10):2357-2359.

[3]沈騫.基于RFID技術(shù)的鐵路客票系統(tǒng)研究[D].北京:北京交通大學(xué),2008.

[4]高麗霞,包勇.基于射頻技術(shù)的讀寫器設(shè)計(jì)及其安全性研究[J].自動(dòng)化與儀器儀表,2008(2):23-26.

[5]王戰(zhàn)林,孫波,謝亞南,等.東北師大校園身份識(shí)別卡系統(tǒng)的設(shè)計(jì)與實(shí)踐[J].現(xiàn)代圖書情報(bào)技術(shù),2004(4):21-23.

[6]王偉,王鳳杰.使用協(xié)議宏實(shí)現(xiàn)PLC與RFID之間的通信[J].電氣時(shí)代,2008(3):13-15.

[7]雷翔霄,唐小梅.三菱FX3u PLC與Siemens RF260通信的實(shí)現(xiàn)[J].長沙民政職業(yè)學(xué)院學(xué)報(bào),2014,21(3):136.

[8]韓金枝,張勇,李方濤,等.基于PLC和IC卡的干混奶粉配送控制系統(tǒng)[J].寧波職業(yè)技術(shù)學(xué)院學(xué)報(bào),2010,14(5):5-7.

[9]鄧志輝,呂洋,汪琴芳,等.射頻識(shí)別裝置與PLC之間的串行通訊在焦?fàn)t爐號(hào)識(shí)別中的應(yīng)用[J].安徽工業(yè)大學(xué)學(xué)報(bào),2006,23(4):433-436.

[10]陽春華,闕秋根.非接觸式e5551讀寫器的開發(fā)[J].電子技術(shù)應(yīng)用,2003,29(8):15-18.

[11]北京ABB電氣傳動(dòng)系統(tǒng)有限公司.AC500-eCo使用手冊(cè)[M].北京:ABB(中國)電氣傳動(dòng)系統(tǒng)有限公司,2011.

[12]Matthias Seitz.可編程序控制器應(yīng)用教程[M].2版.北京:機(jī)械工業(yè)出版社,2009.

猜你喜歡
功能塊讀寫器字節(jié)
No.8 字節(jié)跳動(dòng)將推出獨(dú)立出口電商APP
No.10 “字節(jié)跳動(dòng)手機(jī)”要來了?
基于IEC61131-3標(biāo)準(zhǔn)運(yùn)動(dòng)控制器的設(shè)計(jì)與應(yīng)用*
輕量級(jí)分組密碼Midori64的積分攻擊
Ovation系統(tǒng)FIRSTOUT和FIFO跳閘首出比較
自定義功能塊類型在電解槽聯(lián)鎖中的應(yīng)用
RFID技術(shù)中防碰撞算法的改進(jìn)
基于視頻抓拍讀寫器的高速公路防倒卡研究
PLCopen運(yùn)動(dòng)控制功能塊的研究與開發(fā)
基于隨機(jī)時(shí)隙的RFID讀寫器防沖突方法
枣强县| 陇川县| 大安市| 西峡县| 阳泉市| 江陵县| 西宁市| 上饶市| 锦屏县| 新民市| 如皋市| 施甸县| 盘山县| 宿松县| 鹤峰县| 平南县| 自贡市| 昭平县| 河源市| 台山市| 衡阳市| 麻城市| 竹山县| 金溪县| 额济纳旗| 东乌| 红原县| 龙山县| 手游| 潼南县| 钦州市| 盘锦市| 荥经县| 盐池县| 雷山县| 武川县| 贵阳市| 额敏县| 和政县| 阿拉尔市| 榆林市|