相關(guān)鏈接: 中國安全網(wǎng) 中國質(zhì)量網(wǎng) 中國論文網(wǎng) 中國資訊網(wǎng)
張 彪 楊永杰 許 鵬
(南通大學電子信息學院,江蘇南通226019)
摘要:針對現(xiàn)有的電子考勤系統(tǒng)在實時性和準確性方面的不足,設(shè)計并實現(xiàn)了一款基于局域網(wǎng)的電子考勤系統(tǒng)。系統(tǒng)以STC12單片機為控制核心,配以高性能的非接觸式IC卡讀寫芯片MF RC522和系統(tǒng)時鐘芯片,借助WiF1232 -B無線通信模塊和液晶模塊,完成了考勤人員的實時數(shù)據(jù)錄入和無線傳輸,同時給出了系統(tǒng)各模塊的具體軟硬件設(shè)計。中天科技車間員工的現(xiàn)場測試表明,該考勤系統(tǒng)具有準確性高、實時性強和數(shù)據(jù)傳輸可靠等優(yōu)點,具有很好的市場應用前景。
關(guān)鍵詞:考勤系統(tǒng)STC12 WiFi MF RC522數(shù)據(jù)交互無線通信RFID TCP
中圖分類號:TH - 39;TP274 DOI:10. 16086/j.cnki. issnl000 - 0380. 201603013
0引言
考勤系統(tǒng)是企業(yè)信息與智能化進程中不可或缺的一部分,它主要用來輔助企業(yè)的人力資源管理,提高工作效率,從而降低企業(yè)的投入產(chǎn)出比。目前在大多數(shù)企業(yè)中,針對三班制工人的考勤系統(tǒng)主要是預先將員工的工作計劃存人數(shù)據(jù)庫,考勤終端負責將考勤員工的身份信息送服務器。在服務器上,以身份信息接收的時間作為實際考勤時間,再與工作計劃中正常上下班時間作比較,最終獲得考勤處理結(jié)果。
此類考勤系統(tǒng)的不足之處在于:需要事先將考勤員工的工作計劃(例如工作的班種信息等)存人數(shù)據(jù)庫,增加了人力資源管理者的工作量,也增加了服務器的工作量;服務器上的考勤處理流程通常是在數(shù)據(jù)匯總時才執(zhí)行,具有一定的滯后性;考勤處理結(jié)果未及時回送考勤終端顯示,考勤員工不清楚自己的考勤結(jié)果,容易出現(xiàn)本人預期與人力資源部門階段考勤匯總不一致的情況,從而導致糾紛與矛盾。此外,員工實際考勤時間與服務器端的接收時間也存在偏差,例如,正好準點上班考勤的員工可能由于服務器端接收時間的滯后,而被誤判為遲到。
本文介紹的考勤系統(tǒng)有兩個創(chuàng)新點:一是將傳統(tǒng)的考勤終端向服務器單向數(shù)據(jù)傳送模式轉(zhuǎn)變成考勤終端與服務器雙向數(shù)據(jù)交互模式,對系統(tǒng)部件的功能進行了調(diào)整,將考勤處理流程從服務器端移植到了考勤終端,大大減少了服務器端的工作量,服務器端只需要進行簡單的存儲操作即可,并采用了結(jié)合歷史考勤數(shù)據(jù)的考勤自動處理方法;二是本考勤系統(tǒng)特別針對三班制員工的考勤特點設(shè)計了相應的算法,所以特別適用于對三班制員工進行考勤。
1 系統(tǒng)結(jié)構(gòu)
本系統(tǒng)是一種基于局域網(wǎng)的員工電子考勤系統(tǒng),它不僅可用于常日班員工的考勤,更適用于對三班制(早班、中班、晚班)員工的考勤。系統(tǒng)包括與局域網(wǎng)相連的多個考勤終端和一個數(shù)據(jù)服務器,系統(tǒng)整體結(jié)構(gòu)示意圖如圖1所示。考勤終端包括微處理器、RFID數(shù)據(jù)采集模塊、系統(tǒng)時鐘模塊、無線通信模塊和顯示模塊;服務器不僅運行有數(shù)據(jù)庫系統(tǒng),還運行有雙向的數(shù)據(jù)接口模塊。該接口模塊一端以TCP方式通過局域網(wǎng)與所述考勤終端進行數(shù)據(jù)交互,另一端使用數(shù)據(jù)庫組件訪問數(shù)據(jù)庫系統(tǒng)。
2 系統(tǒng)硬件設(shè)計
系統(tǒng)的硬件包括考勤終端和服務器,這里主要介紹考勤終端的硬件設(shè)計?记诮K端的硬件結(jié)構(gòu)框圖如圖2所示。它主要包括微處理器、RFID數(shù)據(jù)采集模塊、無線通信模塊、顯示模塊和系統(tǒng)時鐘模塊。微處理器在無線通信模塊的輔助下,將RFID數(shù)據(jù)采集模塊采集的員工信息與系統(tǒng)時鐘模塊提供的時間信息進行處理,并將處理結(jié)果送到顯示模塊進行實時顯示和送到服務器中進行存儲。
2.1微處理器
本文設(shè)計的電子考勤系統(tǒng)將考勤處理流程從服務器端移植到了考勤終端,所以對考勤終端微處理器的程序處理能力有較高的要求,它應具備在短時間內(nèi)完成復雜程序快速處理的能力。因為是車間員工的日?记,所以它的抗干擾能力和穩(wěn)定性要強。本系統(tǒng)主要應用于工業(yè)化生產(chǎn)線,所以微處理器的性價比和功耗也要考慮在內(nèi)。
本系統(tǒng)選用的微處理器是STC生產(chǎn)的STC12C5A60S2。STC12C5A60S2是高速、低功耗、超強抗干擾的新一代8051單片機,內(nèi)置看門狗( WDT)功能,售價與傳統(tǒng)8051單片機相差不多,所以性價比也很高。
2.2 RFID數(shù)據(jù)采集模塊
RFID數(shù)據(jù)采集模塊在整個考勤系統(tǒng)中具有很重要的位置,考慮到車間的工作環(huán)境,選擇芯片時首先要考慮它的抗干擾能力和穩(wěn)定性。因為是員工考勤,保密性就顯得尤為重要。為了方便考勤,選擇非接觸式IC卡作為考勤卡,所以數(shù)據(jù)采集模塊對非接觸式IC的讀卡距離也要能滿足應用的要求。
RFID數(shù)據(jù)采集模塊選用的是MFRC522高度集成的非接觸式(13. 56 MHz)讀寫卡芯片,可以與兼容IS0 14443A/MIFARE的卡進行非接觸式通信,通信距離達到8 cm。每位員工都配備一張MiFare one識別卡,并事先將對應的員工卡號寫入卡中。RFID數(shù)據(jù)采集模塊與微處理器之間采用SPI方式進行通信,微處理器將卡內(nèi)信息通過無線通信模塊發(fā)送至服務器。
MF RC522的硬件電路圖如圖3所示。圖3中,SDA是從機選擇端,SCK是數(shù)據(jù)時鐘輸出端,MOSI是數(shù)據(jù)輸出端,MISO是數(shù)據(jù)輸入端,RST用于模塊的休眠控制。
2.3無線通信模塊
因為考勤結(jié)果要送到服務器進行存儲,且考慮到車間的特殊環(huán)境,在選擇無線通信模塊時,對它的信號傳輸穩(wěn)定性、抗干擾能力都具有較高的要求。
系統(tǒng)選用的無線通信模塊是WiFi232 -X系列的WiFi232 -B芯片,它可以實現(xiàn)串口到WiFi數(shù)據(jù)包的雙向透明轉(zhuǎn)發(fā),具有穩(wěn)定、信號好、抗干擾能力強的優(yōu)點。用戶無需關(guān)心具體細節(jié),通過簡單設(shè)置即可指定工作細節(jié)。硬件電路圖如圖4所示。圖4中,RXD為數(shù)據(jù)接收端;TXD為數(shù)據(jù)發(fā)送端;D1為網(wǎng)絡(luò)連接指示燈;S1用于復位,使模塊恢復到默認設(shè)置。
2.4顯示模塊
表1為考勤處理結(jié)果顯示字的格式。表1中,員工卡號為具體的某6位數(shù)字;上下班狀態(tài)中0表示下班,1表示上班;工作班種中0表示早班,1表示中班,2表示晚班;考勤狀態(tài)中ZC表示正常,CD表示遲到,ZT表示早退?记跁r間即為員工刷卡時當前的實時時間。
由顯示字的格式可以看出,顯示模塊選用字符型液晶LCD1602就能滿足要求,硬件電路圖如圖5所示。圖5中,R7用于調(diào)節(jié)液晶的顯示亮度。
2.5系統(tǒng)時鐘模塊
當前大多數(shù)企業(yè)的考勤系統(tǒng)以服務器端接收到考勤員工身份信息的時間作為該員工的實際考勤時間,再與工作計劃進行比較分析得出考勤處理結(jié)果。但是如果服務器本身的時間不準確,或因為網(wǎng)絡(luò)阻塞等原因使得來自考勤終端的考勤員工身份信息延遲了一段時間才被服務器接收,那么員工實際考勤時間就會出錯,導致考勤處理結(jié)果出錯,從而引發(fā)不必要的勞資糾紛。
為了彌補上述的不足,本文設(shè)計的考勤系統(tǒng)在考勤終端增設(shè)了具有精度高、穩(wěn)定性好、性能強等優(yōu)點的SD2405AL時鐘芯片模塊,硬件電路圖如圖6所示。圖6中,P20和P21通過模擬I2C接口來讀寫時間數(shù)據(jù)。
3 系統(tǒng)軟件設(shè)計
本系統(tǒng)可借助局域網(wǎng)實現(xiàn)對員工的現(xiàn)場考勤、自動判定和實時顯示存儲的功能。在考勤終端上采集完員工身份信息后,就立即運行考勤處理流程,并將考勤結(jié)果存儲與顯示,提高了考勤系統(tǒng)的實時性。此外,還在考勤終端中增設(shè)了系統(tǒng)時鐘模塊,提高了考勤系統(tǒng)的準確性。圖7所示為該考勤系統(tǒng)考勤過程示意圖。
員工考勤時,考勤終端執(zhí)行考勤識別流程701:以系統(tǒng)時鐘模塊的時間數(shù)據(jù)作為本次考勤時間,并將員工身份與本次考勤時間,再加相應識別符組幀為考勤查詢數(shù)據(jù)包,經(jīng)局域網(wǎng)送服務器。
服務器的數(shù)據(jù)接口模塊從TCP端口接收數(shù)據(jù),根據(jù)數(shù)據(jù)包中的識別符確定為考勤查詢數(shù)據(jù)包,先執(zhí)行異常判定流程702:計算服務器系統(tǒng)時間與數(shù)據(jù)包中的本次考勤時間的差異值,如果差異值大于3 min,認定考勤終端的系統(tǒng)時間異常,直接以相應識別符組幀為時間異常數(shù)據(jù)包經(jīng)局域網(wǎng)回送考勤終端;如果差異值不大于3 min,則認定考勤終端的系統(tǒng)時間正常,此時執(zhí)行數(shù)據(jù)庫查詢流程703。
①數(shù)據(jù)庫查詢流程703:使用數(shù)據(jù)庫組件用SELECT語句查詢同一身份員工的上次考勤時間、上下班狀態(tài)和工作班種信息;再計算上次考勤時間與本次考勤時間的偏差值,如果所述偏差值小于5 min,則認定是同一員工的重復刷卡情況,直接以相應識別符組幀為考勤重刷數(shù)據(jù)包經(jīng)局域網(wǎng)回送考勤終端;如果所述偏差值大于5 min,則認定刷卡正常,此時將上次考勤時間、上下班狀態(tài)和工作班種信息,加上相應識別符組幀為考勤歷史數(shù)據(jù)包經(jīng)局域網(wǎng)回送考勤終端。
②考勤終端接收數(shù)據(jù)包后,執(zhí)行異常驗證流程704:根據(jù)數(shù)據(jù)包的識別符判定接收的數(shù)據(jù)包的種類,如果收到時間異常數(shù)據(jù)包,則直接執(zhí)行結(jié)果顯示流程707,顯示時間異常警告,并結(jié)束本次考勤過程;如果收到考勤重刷數(shù)據(jù)包,也直接執(zhí)行結(jié)果顯示流程707,顯示已考勤,無需重復刷卡,并結(jié)束本次考勤過程。如果收到考勤歷史數(shù)據(jù)包,則執(zhí)行考勤處理流程705。
③考勤處理流程705:以考勤歷史數(shù)據(jù)包中的信息結(jié)合本次考勤時間完成考勤處理流程,并清除顯示信息,再將本次考勤的員工身份、考勤時間、考勤結(jié)果存入暫存區(qū),并加相應識別符組幀為考勤判定數(shù)據(jù)包,第二次經(jīng)局域網(wǎng)送服務器。
服務器的數(shù)據(jù)接口模塊從TCP端口接收數(shù)據(jù),根據(jù)數(shù)據(jù)包中的識別符確定為考勤判定數(shù)據(jù)包后,執(zhí)行數(shù)據(jù)庫存儲流程706:使用數(shù)據(jù)庫組件用INSERT語句將本次考勤的員工身份、考勤時間和考勤結(jié)果存人數(shù)據(jù)庫中,并以相應識別符組幀為考勤完成數(shù)據(jù)包,第二次經(jīng)局域網(wǎng)回送考勤終端。
考勤終端接收數(shù)據(jù)包后,執(zhí)行結(jié)果顯示流程707:根據(jù)數(shù)據(jù)包的識別符確定為考勤完成數(shù)據(jù)包后,將暫存區(qū)的考勤結(jié)果顯示,并清空暫存區(qū),完成本次考勤過程。
考勤處理流程第一種算法流程如圖8所示。
上述考勤處理流程705采用了以歷史考勤數(shù)據(jù)與本次考勤時間相結(jié)合的方法,能夠自動判定考勤結(jié)果。實際應用中,我們根據(jù)需求為考勤處理流程705設(shè)計了2種算法。
在實現(xiàn)考勤處理流程705的第一種算法中,考勤終端設(shè)置了各個工作班種(早班、中班、晚班)的標準考勤時段且互不重疊,各班種員工刷卡時間點應該在對應班種的標準考勤時段內(nèi)。
在實際情況中,員工還可能會出現(xiàn)下班遺忘考勤的情況,如果根據(jù)考勤處理流程第一種算法來考勤判定,將會導致該員工下次上班的考勤被錯判為下班狀態(tài),并且錯判工作狀態(tài)的情況將一直延續(xù)下去。為避免上述情況的出現(xiàn),我們又設(shè)計了實現(xiàn)考勤處理流程705的第二種算法。
在實現(xiàn)考勤處理流程705的第二種算法中,考勤終端不僅設(shè)有工作班種的標準考勤時段,還設(shè)有最長工作時間值。在實際場合中,結(jié)合勞動法相關(guān)要求,三班制最長工作時間為連續(xù)做兩班,一般該值可設(shè)定為16 h。實現(xiàn)考勤處理流程705的第二種算法流程圖如圖9所示。
與第一種算法不同,在第二種算法的開始部分,增加了判定本次考勤時間與上次考勤時間的差值是否大于最長工作時間值。當出現(xiàn)大于的情況,可認定為下班遺漏考勤的情況,從而直接判定本次考勤為上班狀態(tài)。
綜上可見,該電子考勤系統(tǒng)能夠借助局域網(wǎng)另一端服務器中的數(shù)據(jù)庫歷史信息,直接在考勤終端上完成對員工的考勤處理流程,因此不再需要在服務器上事先存人員工的工作計劃,大大減少了人力資源管理者和服務器的工作量,考勤處理也從事后處理變成了現(xiàn)場處理。其實時性與準確性都顯著提高,較好地解決了現(xiàn)有電子考勤系統(tǒng)的上述技術(shù)問題。
4測試結(jié)果
根據(jù)中天科技車間員工管理制度的要求,早班上班刷卡時間段為6:45~7:15,如果不在此時間段內(nèi)刷卡,就判定為早班上班遲到。同理,中班上班刷卡時間段為14:45~15:15,晚班上班刷卡時間段為22:45~23:15。與此對應,設(shè)定早班下班刷卡時間段為15:45~ 23:00,如果在15:45之前刷卡就判定為早班下班早退。同理,中班下班刷卡時間段為23:45~8:00,晚班下班刷卡時間段為7:45~ 16:00。
表2為數(shù)據(jù)庫顯示字格式。表2中,stime表示系統(tǒng)時間,即員工實際刷卡時間;s - id表示考勤終端的編號;work -id表示員工的卡號;w - flg表示上下班狀態(tài)(0表示下班,1表示上班);c - flg表示工作班種(0表示早班,1表示中班,2表示晚班);s - flg表示考勤狀態(tài)(0表示正常,1表示遲到,2表示早退)。
我們從數(shù)據(jù)庫隨機調(diào)取了一名卡號為001586的員工的近一個星期的考勤處理數(shù)據(jù),分析數(shù)據(jù)可知,該員工在2014年8月24號這天刷卡時間為上午07:07,在早班上班刷卡時間段06:45~07:15內(nèi),所以考勤處理結(jié)果應該是早班上班正常。數(shù)據(jù)庫中w - flg的值為1,c – f lg的值為0,s- flg的值為0,所以考勤處理結(jié)果正確。該員工在2014年8月29號這天刷卡時間為下午16:14,不在中班上班刷卡時間段14:45~15:15內(nèi),所以考勤處理結(jié)果應該是中班上班遲到。數(shù)據(jù)庫中w – f lg的值為1,c-flg的值為1,s - flg的值為1,所以考勤處理結(jié)果正確。由上述分析可以看出,本款電子考勤系統(tǒng)非常適用于對三班制員工的考勤,且準確率高。
5結(jié)束語
本文介紹了一種信息預處理電子考勤系統(tǒng)的實現(xiàn),尤其可用于對三班制員工的考勤,并且提出和設(shè)計了一款基于三班制考勤的算法。系統(tǒng)包括與局域網(wǎng)相連的多個考勤終端和一個服務器?记诮K端不僅包括微處理器、RFID考勤采集模塊、無線通信模塊和顯示模塊,還增設(shè)了系統(tǒng)時鐘模塊。服務器不僅運行有數(shù)據(jù)庫系統(tǒng),還運行有數(shù)據(jù)接口模塊以實現(xiàn)雙向通信。本考勤系統(tǒng)將傳統(tǒng)的從考勤終端向服務器單向數(shù)據(jù)傳送模式轉(zhuǎn)變成考勤終端與服務器雙向數(shù)據(jù)交互模式,對系統(tǒng)部件的功能進行了調(diào)整,將考勤處理流程從服務器端移植到考勤終端,并采用了結(jié)合考勤歷史數(shù)據(jù)的考勤自動處理方法,達到了提高考勤系統(tǒng)實時性,準確性和智能性的目的。目前該電子考勤系統(tǒng)在中天科技的車間流水線運行良好,驗證了上述優(yōu)點,具有廣泛的應用前景和推廣價值。