基于RFID技術的預付費電度表
1 概述
我國電力市場化的進程十分迅速,電能是商品、先買后用的觀念逐步深入人心?,F(xiàn)已出現(xiàn)了各類預收費電度表,它使收費從過去繁瑣的人工抄表、手工計價轉變?yōu)橛脩舫挚ㄙ忞?實現(xiàn)了電費收繳管理自動化。非接觸式IC 卡(又稱射頻卡) 是國外近幾年發(fā)展起來的新技術,它成功地將RFID(Radio Frequency Identification ,射頻識別) 技術和IC 卡技術結合起來,解決了無源和免接觸難題。射頻卡無需專門的供電電源;它與讀寫模塊間無機械接觸,避免了接觸故障,能夠防止惡意攻擊;它的表面無裸露芯片,可防水,且不易產(chǎn)生靜電擊穿及彎曲損壞等問題;射頻卡在使用時無正反面。
2 射頻識別部分工作原理
2. 1 Mifare非接觸式IC卡簡介
本系統(tǒng)采用的是Philps 公司Mifare 卡系列S50 卡,該卡遵守ISO/ IEC 14443A 協(xié)議,工作在13. 56MHz 下。S50 存儲器容量為1 K 字節(jié),卡片的存儲區(qū)分為16 個扇區(qū)(Sector) ,每個扇區(qū)分為4 個段(Block) ,而每個段有16 個字節(jié)的存儲區(qū)。對于第0 扇區(qū),只有3 個實際可用的數(shù)據(jù)段,第0 段為卡的序列號等廠商信息,為只讀。每個扇區(qū)的段3 ,即扇區(qū)尾存放該扇區(qū)的兩個密鑰(各6 字節(jié)) 和存取控制字 。
2. 2 Mifare 非接觸式IC卡讀寫模塊簡介
非接觸式IC 卡系統(tǒng)由讀寫模塊和非接觸式IC 卡兩部分組成。應用系統(tǒng)通過讀寫模塊對卡進行操作;讀卡器通過射頻信號同步進行近距離通訊,并為卡上芯片提供能量;非接觸式IC 卡響應讀寫模塊的指令,并報告處理的結果。非接觸式IC卡通過連接IC 芯片的線圈在特定交變磁場中耦合獲得高壓能量,非接觸式IC 卡的讀寫模塊通過天線發(fā)射交變強磁場,為IC 卡提供能量;并且通過磁場的斷、續(xù)編碼向IC 卡寫入或讀取數(shù)據(jù)。
為了節(jié)省電表主MCU 的接口資源,本系統(tǒng)采用了自行設計開發(fā)的射頻模塊,該模塊利用異步串口跟主MCU 通訊。該模塊由Philips 公司的MFRC500 讀寫基站芯片、AT89C52 和相關的外圍電路構成。可完成讀寫模塊與IC 卡之間的各種交互功能,包括調制/ 解調、加密/ 解密、認證、讀寫、加/ 減等,并具有同微處理器的接口。非接觸式IC 卡與讀寫模塊的通信內容包括復位應答、防沖突、選擇卡片、相互認證、對數(shù)據(jù)塊的操作和中止等操作。
3 預付費電度表的系統(tǒng)結構
預收費電度表可分為電子式和機電式兩種,它們的區(qū)別在于電能變換元件不同。前者將電壓、電流進行A/D轉換,再將采樣值相乘并累計,得到用戶消耗的電度數(shù); 后者借用原感應式電度表的機芯,通過光電傳感器讀取轉盤數(shù)據(jù)數(shù)得到用戶消耗的電度數(shù)。本系統(tǒng)采用當今流行的電子式方案。非接觸式IC卡預收費電度表的硬件電路原理示意圖如圖1 所示。
圖1 硬件電路原理
系統(tǒng)采用TI公司16位超低功耗單片機MSP430F413 ,作為系統(tǒng)主MCU。內部有8K flash , 具有16 位RISC 結構,CPU 中的16 個寄存器和函數(shù)發(fā)生器使MSP430 微控制器能達到最高的代碼效率;靈活的時鐘源;數(shù)字控制的DCO 可使器件從低功耗迅速喚醒;可以將能量直接轉換成脈沖信號,同時結合電量計量專用芯片AD7755 ,使電表硬件部分大為簡化,而且很方便實現(xiàn)智能控制。
主機完成對用戶用電量的記錄、累加、顯示、通信和控制功能。配上一塊非接觸式IC 卡模塊,完成從供電管理部門到用戶間的幣度轉換和電度數(shù)量的信息傳遞。系統(tǒng)配有紅外和RS-485總線接口可以方便地進行數(shù)據(jù)抄收。另外,系統(tǒng)還含有串行EEPROM ,可以配合電源管理芯片來實現(xiàn)對電量數(shù)據(jù)的可靠備份。
4 系統(tǒng)的工作原理
(1) 用戶持IC 卡到供電部門交款購電時,供電部門把用戶的IC 卡放在與PC 機相連的讀寫模塊上,由寫卡程序在IC 卡上寫入與用戶交款數(shù)相符的一定電度數(shù)。
(2) 用戶把IC 卡帶回,將卡掠過預收費電度表,卡中電度數(shù)被主機讀出,與預收費電度表中來剩余的電度數(shù)相加。由于機內采用備用電池,掉電后不會失去數(shù)據(jù)。另外系統(tǒng)還有串行EEPROM ,用來實現(xiàn)數(shù)據(jù)備份。
(3)隨著用戶對電的使用,主MCU 將內存中的電量扣除相應的數(shù)值,并及時備份到EEPROM中。
(4) 單片機隨時監(jiān)測內存中剩余電度數(shù)是否小于15 度。如是,則點亮預告用電量將盡的發(fā)光二極管指示器,提示用戶持卡到供電部門重新購電。
(5) 當單片機發(fā)現(xiàn)用戶電表中剩余電量完全用完時,控制繼電器切斷用戶供電電源。
(6) 電卡按一表一卡配置,內存有相應的的卡號和用戶編號,以及IC 卡的傳輸密鑰。當用戶IC卡放在供電部門的讀寫模塊上時,PC 機在為用戶寫入所購電度數(shù)的同時,記錄該卡的卡號、日期和相應的款數(shù),并寫入數(shù)據(jù)庫,使得供電部門可隨時在PC 機上查詢用戶購電情況,實現(xiàn)了供電管理部門的管理現(xiàn)代化。
5 系統(tǒng)軟件設計
本非接觸式IC 卡預收費電度表的程序采用了模塊化的設計,整個系統(tǒng)由用戶端電度表計費程序和供電部門管理程序兩部分組成。每部分程序又由單片機系統(tǒng)程序和VB 用戶接口程序兩部分組成,單片機程序和VB 程序之間采用VB 的通訊控件MSComm 通過RS-485 進行通訊,通訊協(xié)議使用基于ASCII 碼的查詢命令、中斷收發(fā)字符。微機通過協(xié)議對單片機實現(xiàn)控制,單片機通過判斷微機發(fā)來的不同字符,執(zhí)行不同的單片機子程序。
5. 1 用戶端電度表計費程序
(1) 讀取有效的非接觸式IC 卡功能。對卡進行防沖突、密碼認證、卡號認證等操作,并讀出卡中存儲的數(shù)據(jù),然后將卡清零、???。
(2) 完成電度表的預收費功能。將從IC 卡中讀出的電度數(shù)與單片機內存剩余的電度數(shù)相加,并存回內存。
(3) 顯示功能。系統(tǒng)周期性地掃描,動態(tài)顯示機內剩余的電度數(shù)。此外,當讀寫IC 卡發(fā)生錯誤時,顯示出錯信號。
(4) 串行通訊中斷功能。當微機向單片機發(fā)出一個采集命令時,單片機執(zhí)行串行通訊中斷服務子程序,通過用戶編號認證后,向微機發(fā)回用戶的用電量及剩余電度數(shù),然后中斷返回。
(5) 電度計數(shù)功能。
(6) 報警斷電功能。當機內剩余電度數(shù)小于15 度時,點亮預告用電量將盡的發(fā)光二極管指示器,提示用戶持卡到供電部門重新購電。而當用戶電表中剩余電量完全用完時,控制繼電器切斷用戶供電電源。用戶只有再次存入電度數(shù)后,才能繼續(xù)供電。
單片機系統(tǒng)程序由主監(jiān)控程序、IC 卡處理子程序、電度計數(shù)子程序、串行中斷服務子程序等組成。
6 結束語
本系統(tǒng)將非接觸式IC 卡技術與計算機技術相結合,采用RFID 技術研制的非接觸IC 卡已成功應用于智能預付費電度表。研究結果表明:非接觸式IC 卡具有可靠性高、安全性好、使用方便、操作速度快等特點。系統(tǒng)實現(xiàn)了用電收費的電子化,促進了用電計量、收費的安全科學化管理,具有良好的應用前景。