張 瑜
(日照廣播電視大學,山東 日照 276826)
考勤辦公管理系統是企事業單位的一個重要的組成部分,它對提高本單位的工作效率,展現本單位的現代管理風貌起了很大的作用.近幾年,隨著射頻識別技術(Radio Frequency Identification,RFID)的發展,考勤、公告等辦公系統也需要不斷研發新的功能才能適應企業發展的要求.為此筆者設計了一個基于射頻卡的考勤辦公系統.該系統易學易用,權限分明,數據安全.能簡易方便的管理員工考勤、請假等方面的事務.
系統整體框架圖如圖1所示.
圖中基于射頻識別技術的多個刷卡器通過刷卡分別獲得卡號,通過485通訊方式上傳給PC,PC正確接收后,發送確認信息給各個刷卡器,并在刷卡器上出現相應的聲光反應.PC機將卡號和上班時間通過考勤系統計入數據庫進行考勤信息管理.

圖1 系統總體框架
本系統中刷卡器采用了8052兼容單片機華邦78E52為控制核心,其功能是讀取ID卡的卡號,并將該卡號通過RS485串口發送給上位機.刷卡器可以分為電源、晶振、復位電路、TTL-485轉換電路、ID卡讀取電路以及其他電路等單元模塊[1-2].
電源電路設計采用了7805電源芯片,該芯片允許的最大輸入電壓為35V,滿足大多數電源適配器的輸出電壓,適應范圍比較廣.只需簡單的外圍電路就能實現5V的穩壓輸出,輸出電壓的誤差不會超過4%,即4.8-5.2V;峰值電流最大為2.2A;內置短路電流限制電路和溫度過熱保護電路,如果出現過熱或者過流,芯片會自動降低輸出電流甚至關斷輸出以保護芯片不被燒毀,可靠性比較高,是一款應用比較廣泛的電源芯片.7805的封裝類型有TO-220和D-PAK,本設計采用的是TO-220封裝形式.為了避免將錯誤極性的電源加到7805電源芯片上而燒壞芯片,該設計中采用的1N4007是一款快速恢復整流二極管軸線引線式封裝.保險絲主要是實現過流保護.
該設計中的電解電容和電感都是濾波的作用.其中的小電容104(0.1μF)是去耦電容,用來消除高頻干擾.電源電路如圖2示.

圖2 電源電路
射頻ID卡與刷卡器的通訊[2-3]設計采用長春力得公司的LD001-W射頻讀卡模塊,該模塊讀卡距離在80~120mm;模塊封裝類似DIP28,工作頻率為125kHz,適用的卡片類型為uEM4001及兼容芯片,該卡片采用曼徹斯特編碼,而該模塊與單片機的通訊接口采用該公司的韋根26協議[1-3],電路連接如圖3所示.

圖3 射頻卡通訊電路
圖3中引腳1:DATA0和引腳2:DATA1與單片機通過韋根協議進行通訊,將卡號傳輸給單片機,3號引腳CS與單片機的INT0引腳相連,每個位的傳輸都會引起單片機的外部中斷,并在其中斷服務程序中將該位的數據存到單片機的緩存區中.15號和16號引腳接外部的感應線圈.
設計采用的LD001-W模塊與單片機的通訊采用的是韋根26協議,該協議是長春力得公司在標準韋根26協議的基礎上改進而來.該協議的基本內容為:
(1)韋根數據輸出的基本概念
DATA0為低電平,DATA1為高電平時,當前傳輸的位為0,而DATA0為高電平,DATA1為低電平時,當前傳輸的位為1.
(2)韋根26位輸出格式
第一位是2-13位的偶校驗位;第二十六位是14-25位的奇校驗位.
(3)韋根26的接收格式
韋根的接收對時間的實時性要求比較高,如果用查詢的方法接收會出現丟幀的現象:假設查詢到DATA0為0,DATA1為1時,主程序正在指向其他任務,等主程序執行完該任務時DATA0變成1,DATA1變成0了,這樣讀出的卡號肯定奇偶校驗通不過,所以表現出CPU接收不到ID模塊發送的卡號了.唯一的辦法是在外部中斷里接收每個位[4].
(4)奇偶校驗
奇偶校驗是一種校驗代碼傳輸正確性的方法,是所有校驗算法中最簡單的方式.根據被傳輸的一組二進制代碼的數位中“1”的個數是奇數或偶數來進行校驗.采用奇數的稱為奇校驗,反之,稱為偶校驗.采用何種校驗是事先規定好的.通常專門設置一個奇偶校驗位,用它使這組代碼中“1”的個數為奇數或偶數.若用奇校驗,則當接收端收到這組代碼時,校驗“1”的個數是否為奇數,從而確定傳輸代碼的正確性.
ID卡的讀取程序流程如圖4所示.

圖4 ID卡讀卡流程圖
上位機軟件是本系統的重要實現平臺,本設計采用DELPHI編程環境實現上位機軟件的編寫、調試.分為兩大部分[2-5]:
(1)監控軟件.主要面向系統管理員使用,實現對刷卡情況的監控,并將卡號寫入數據庫.
(2)數據庫軟件.實現考勤信息的錄入,修改,刪除,請假管理等.
上位機軟件從技術方面主要分為兩大部分.
(1)數據庫操作部分.本設計采用的數據庫是SQL server 2000,主要操作是數據庫的連接、查詢、刪除、編輯、請假管理等.
(2)串口通訊部分.這部分實現與刷卡器的通訊,獲得卡號及考勤時間.
本文著重介紹與485串口刷卡器的通訊.
由于PC機是RS232串口,在進行RS485通訊時,首先要進行RS232與RS485轉換,設計采用了STM485S型號的轉換器.
實現485通訊的前提是制定通訊協議,考慮到多個刷卡器與PC機通訊的及時性,因此,在制定通訊協議時,基于MODBUS協議進行了適當的修改.
主從式485通訊協議數據格式[6]:
長度+分機號+命令碼+幀數據+XOR
長度:1字節,為除校驗字節的所有數據長度(包括自身),
分機號:1字節,分機的地址;
命令碼:1字節,命令格式:
0x00:從機沒有數據;
0xFF:從機有數據;
0x01:數據接收成功;
0x02:重復簽退;
0x03:卡號異常;
0x04:未注冊手機;
0x05:無數據;
0xF1:數據地址錯誤,結束;
0xF2:校驗錯誤,重試;
0xF3:校驗錯誤,結束;
幀數據:n字節,幀數據可以為空;
XOR:1字節,異或校驗位;
主從式485通訊協議:
從機正常狀態應處于接收地址狀態(SM=1);
主機發送地址幀(MARKPARITY);
主機進入數據接收狀態(SP_PARITY);
所有從機收到地址幀,地址核對正確的從機進入接收數據狀態(SM=0);并根據數據格式,發送信息到主機;
主機收到返回數據時:
如果校驗錯誤,返回校驗錯誤命令(0xF2);
如果校驗成功,進一步判斷地址是否正確,若地址錯誤則返回地址錯誤命令(0xF1);否則有數據讀取卡號返回(0x01或0x02或0x03或0x04),無數據返回(0x05);
從機收到返回數據時:
如果校驗錯誤,要求重新刷卡.
如果校驗正確,當命令字為(0xF2)時,保存數據.否則,本次通訊結束.
功能測試界面如圖5、圖6所示.

圖5 請假處理界面

圖6 統計報表界面
本文設計的基于485通訊的射頻卡刷卡考勤系統,能與多個刷卡器通訊,實現了考勤信息的自動化管理.且該系統具有準確快捷、易于擴展等特點.
[1]蔣皓石,張成,樸嘉宇.無線射頻識別技術及其應用和發展趨勢[J].電子技術應用,2005(5):56-58.
[2]桑靜.基于射頻識別卡的學生考勤系統的設計與實現[D].蘇州:蘇州大學,2007.
[3]徐麗華.射頻識別卡讀寫模塊的設計與應用[D].蘇州:蘇州大學,2005.
[4]李錦濤,郭俊波.射頻識別技術及其應用[J].信息技術快報,2004,5(11):88-90.
[5]凌國平.如何提高測控系統中RS485通信的可靠性[J].儀器儀表學報,2005(8):470-471.
[6]劉錚,章兢,劉建漢.非接觸式IC卡在公共汽車自動售票系統中的應用[J].微型電腦應用,2002,18(5):21-23.