基于Profibus-DP的智能IC卡收費控制系統研究
文章出處:http://botanicstilllife.com 作者: 人氣: 發(fā)表時間:2012年03月18日
摘 要:文章介紹了智能IC卡,分析了其存在的缺陷,采 用了PROFIBUS-DP網絡技術對收費系統實現分布式控制,真正實現了一卡多用,集收費、管理 和銀行建立統一支付接口于一身,極大提高了管理和工作效率。
關鍵詞:智能IC卡;EEPROM;COS;收費控制系統;PROFIBUS-DP
中圖分類號:TP23 文獻標識碼:A 文章編號:1007—6921(2010)05—0107—04
隨著信息產業(yè)的日異革新以及網絡的迅猛發(fā)展,智能IC卡技術已被社會的各行各業(yè)所接受并 應用,其中非接觸式智能IC卡因其“一卡通”,技術的先進、使用的便利、保密安全等特性 越來越廣泛地應用在各個領域,政府機關、辦公大樓、智能小區(qū)、大型企業(yè)、商業(yè)消費、高 速公路收費、校園、醫(yī)院等,身份識別、停車場管理、門禁、通道控制、考勤、會議簽到、 訪客管理、人事資料、保安巡更、資源管理/電梯控制、消費/POS、圖書管理、能源控制等 是最常用的功能。
城市交通是實現現代社會完成再生產各個環(huán)節(jié)之間的紐帶,是生產和消費之間的橋梁,是保 證人與貨物流通,維持城市生機的關鍵;因而,城市交通也成了城市賴于生存和發(fā)展的基本 條件之一。本文基于交通收費系統的重要性,將非接觸式智能IC卡應用在高速公路的收費系 統當中提高高速公路收費站的車輛流通的速度和提高交通系統的調度和監(jiān)控效率。
PROFIBUS是德國20世紀90年代初制定的國家工業(yè)現場總線協議標準,代號DIN19245。PROFIBU S于1996年成為歐洲標準EN50170,1999年底成為國際標準IEC61158的組成部分,已被全世界 接受。PROFIBUS根據應用特點可分為PROFIBUS-DP,PROFIBUS-FMS,PROFIBUS-PA三個兼容版 本。其中PROFIBUS-DP:經過優(yōu)化的高速、廉價的通信連接,專為自動控制系統和設備級分 散I/O之間通信設計,使用PROFIBUS-DP模塊可取代價格昂貴的24V或0~20mA并行信號線,用 于分布式控制系統數據傳輸。PROFIBUS-DP在速度和控制方面的優(yōu)點正好保障收費控制系統 的穩(wěn)定和數據控制。
筆者通過交通IC卡的收費系統實例進行驗證和總結。
1 非接觸式智能IC卡
本文采用Mifare 1 IC智能卡.它的核心是Philips 公司的Mifare 1 IC S50(-01,-02,-03 ,-04)系列微模塊(微晶片)。它確定了卡片的特性以及卡片讀寫器的諸多性能,從而利 用收費系統的管理和一卡多用及保證數據的安全。
整個卡片包含了兩個部分,RF射頻接口電路和數字電路部分。
1.1 RF射頻接口電路
在RF射頻接口電路中,主要包括有波形轉換模塊。它可將卡片讀寫器上的13.56MHz的無線電 調制頻率接收,一方面送調制/解調模塊,另一方面進行波形轉換,將正弦波轉換為方波, 然后對其整流濾波,由電壓調節(jié)模塊對電壓進行進一步的處理,包括穩(wěn)壓等,最終輸出供給 卡片上的各電路。
POR模塊主要是對卡片上的各個電路進行POWER-ON-RESET(上電復位),使各電路同步啟動工 作。
1.2 數字電路模塊
1.2.1 ATR模塊:Answer to Request(“請求之應答”)。當一張Mifare 1卡片處在卡片讀寫器的天線的工作范圍之內時,程序員控制讀寫器向卡片發(fā) 出REQUEST all(或REQUEST std) 命令后,卡片的ATR將啟動,將卡片Block 0 中的卡片類型 (TagType)號共2個字節(jié)傳送給讀寫器,建立卡片與讀寫器的第一步通信聯絡。
如果不進行第一步的ATR工作,讀寫器對卡片的其他操作(Read/Write等)將不會進行。
卡片的類型(TagType)號共2個字節(jié),可能為:0004H
1.2.2 AntiCollision模塊:防止(卡片)重疊功能。如果有多張Mifare 1卡片處在卡片讀寫器的天線的工作范圍之內時,AntiCollision模塊的 防重疊功能將被啟動工作。在程序員控制下的卡片讀寫器將會首先與每一張卡片進行通信, 取得每一張卡片的系列號。由于Mifare 1卡片每一張都具有其唯一的系列號,決不會相同, 因此卡片讀寫器根據卡片的序列號來識別,區(qū)分已選的卡片,卡片讀寫器中的MCM中的AntiC ollision防重疊功能配合卡片上的防重疊功能模塊,由程序員來控制讀寫器,根據卡片的序 列號來選定一張卡片。被選中的卡片將直接與讀寫器進行數據交換,未被選擇的卡片處于等 待狀態(tài),隨時準備與卡片讀寫器進行通信。
AntiCollision模塊(防重疊功能)啟動工作時,卡片讀寫器將得到卡片的序列號 Serial Num ber。
序列號Serial Numbe r存儲在卡片的Block 0中,共有5個字節(jié),實際有用的為4個字節(jié) ,另一個字節(jié)為序列號Serial Number的校驗字節(jié),這在以后章節(jié)中詳細論述,包括對序列 號Serial Number的校驗方法等。
序列號Serial Number中實際有用的4個字節(jié),可能為:007e0a42h。
1.2.3 Select Application 模塊:主要用于卡片的選擇。當卡片與讀寫器完成了上述的二個步驟,程序員控制的讀寫器要想對卡片進行讀寫操作,必 須對卡片進行“Select”操作。以使卡片真正地被選中。
被選中的卡片將卡片上存儲在Block 0中的卡片的容量“Size”字節(jié)傳送給讀寫器。
當讀寫器收到這一字節(jié)后,將明確可以對卡片進行深一步的操作了。例如,可以進行密碼驗 證等等。
讀寫器收到的“Size”字節(jié)可能為:88h
1.2.4 Authentication & Access Control 模塊:認證及存取控制模塊。在確認了上述的三個步驟,確認已經選擇了一張卡片時,程序員對卡片進行讀寫操作之前, 必須對卡片上已經設置的密碼進行認證,如果匹配,則允許進一步的Read/Write操作。
Mifare 1 卡片上有16個扇區(qū),每個扇區(qū)都可分別設置各自的密碼,互不干涉。因此每個扇 區(qū)可獨立地應用于一個應用場合。整個卡片可以設計成“一卡通”形式來應用。
三遍認證:如圖所示為三遍認證的令牌原理框圖。
認證過程是這樣進行的:
(A)環(huán):由Mifare 1卡片向讀寫器發(fā)送一個隨機數據RB;
(B)環(huán):由讀寫器收到RB后向Mifare 1卡片發(fā)送一個令牌數據TOKEN AB,其中包含了讀寫 器發(fā)出的一個隨機數據RA;
(C)環(huán):Mifare 1卡片收到 TOKEN AB 后,對TOKEN AB 的加密的部分進行解 密,并校驗第 一次由(A)環(huán)中Mifare 1卡片 發(fā)出去的隨機數RB是否與(B)環(huán)中接收到的TOKEN AB中的RB相 一致。
(D) 環(huán):如果(C)環(huán)校驗是正確的,則Mifare 1卡片 向讀寫器 發(fā)送令牌TOKEN BA給讀寫器 ;
(E)環(huán):讀寫器 收到令牌TOKEN BA后,讀寫器將對令牌TOKEN BA中的RB(隨機數)進行解密; 并校驗第一次由(B)環(huán)中讀寫器發(fā)出去的隨機數RA是否與(D)環(huán)中接收到 的TOKEN BA中的RA 相一致;
如果上述的每一個環(huán)都為“真”,都能正確通過驗證,則整個的認證過程將成功。讀寫器 將能對剛剛認證通過的卡片上的這個扇區(qū)可以進入下一步的操作(READ/WRITE等操作)。
卡片中的其他扇區(qū)由于有其各自的密碼,因此不能對其進行進一步的操作。如想對其他扇 區(qū)進行操作,必須完成上述的認證過程。
認證過程中的任何一環(huán)出現差錯,整個認證將告失敗。必須從新開始。
如果事先不知卡片上的密碼,則由于密碼的變化可以極其復雜,因此靠猜測密碼而想打開 卡片上的一個扇區(qū)的可能性幾乎為零。
這里提醒一下程序員和卡片的使用者,必須牢記卡片中的16個扇區(qū)的每一個密碼,否則, 遺忘某一扇區(qū)的密碼,將使該扇區(qū)中的數據不能讀寫。沒有任何辦法可以挽救這種低級錯誤 。但是,卡片上的其他扇區(qū)可以照樣使用。
上述的敘述已經可以充分地說明了Mifare 1 卡片的高度安全性,保密性,及卡片的應用場 合多樣性,一卡多用(一卡通)。
1.2.5 Control & Arithmetic Unit 控制及算術運算單元。這一單元是整個卡片的控制中心,是卡片的“頭腦”。它主要進行對整個卡片的各個單位 進行微操作控制,協調卡片的各個步驟;同時它還對各種收/發(fā)的數據進行算術運算處理, 遞增/遞減處理,CRC運算處理,等等。是卡片中內建的中央微處理機(MCU)單元。
1.2.6 RAM/ROM單元。RAM主要配合控制及算術運算單元,將運算的結果進行暫時存儲,如果某些數據需要 存儲到EEPROM,則由控制及算術運算單元取出送到EEPROM存儲器中;如果某些數據需要傳送 給讀寫器,則由控制及算術運算單元取出,經過RF射頻接口電路的處理,通過卡片上的天線 傳送給卡片讀寫器。RAM中的數據在卡片失掉電源后(卡片離開讀寫器天線的有效工作范圍 內)將被清除。
同時,ROM中還固化了卡片運行所需要的必要的程序指令,由控制及算術運算單元取出去對 每個單元進行微指令控制。使卡片能有條不紊地與卡片的讀寫器進行數據通信。
1.2.7 Crypto Unit 數據加密單元。該單元完成對數據的加密處理及密碼保護。加密的算法可以為DES標準算法或其他。
1.2.8 EEPROM INTERFACE/ EEPROM MEMORY EEPROM 存儲器及其接口電路。該單元主要用于存儲數據。EEPROM中的數據在卡片失掉電源后(卡片離開讀寫器天線的有效 工作范圍內)仍將被保持。用戶所要存儲的數據被存放在該單元中。Mifare 1卡片中的這一 單元容量為8196bit(1 Kbyte)。分為16個扇區(qū)。
2 Profibus-DP的設計
在高速公路收費系統中,由于控制的復雜性、現場多種設備相互之間存在干擾以及系 統可靠性要求高等特點,所以在實際應用中常采用高可靠性的中央控制器如PLC和現場總線 技術如PROFIBUS。在智能IC卡收費系統中就是采用SIMATIC S7-200 CPU224進行控制,并通 過PROFIBUS-DP現場總線由工控機(或PC機)進行監(jiān)控。
Profibus-DP設計圖,本系統是由PROFIBUS-DP構成的單主站系統,具有簡單設備一級的高速 數據傳輸特性。系統組成如圖2所示。
①整個控制系統連接在兩路PROFIBUS-DP總線上,每路總線包含一個總站和 20個DP從站,兩 個總站和開票機構成局域網,主站和從站之間為主從關系。②兩個工控機主站和收費站主機 通過TCP/IP協議,組成局域網。③系統以SIMATIC工控機作為DP類型2主站,通過現場總線接 口卡CP5611使工控機與PROFIBUS-DP總線相連,能完成組態(tài)、運行、操作等功能。主站上的 應用程序與CP5611的信息傳遞采用OPC通用接口服務軟件實現。④每個從站完成對兩路收費 卡口系統的監(jiān)控和控制,采用SIMATIC S7-200系列CPU224模塊,通過EM 277擴展模塊以DP從 站形式接入PROFIBUS-DP網絡,按主/從模式向上位機發(fā)送數據。
第1頁第2頁 |