基于ARM面向校園的綜合簽到管理系統(tǒng)
引 言
隨著大學教育的普及,大學生的數(shù)量大大增加,同時因90后、95后受互聯(lián)網(wǎng)等新媒體自由化思想的影響,大學普遍面臨著到課率不高,逃課、缺課人數(shù)增加的困境,這是擺在教務管理人員面前的一道難題,拋開課堂互動性不高等問題, 簽到系統(tǒng)的薄弱也是導致這種情況發(fā)生的原因之一,傳統(tǒng)的簽到無非是用紙簽到或者點名,這兩種方式無一例外的會占用同學、老師大量的時間。以200300人同時授課的校公共課為例,如果采用傳統(tǒng)的點名方式,即使在學生能夠完美配合老師的情況下,每個人仍需要10秒,即需要5分鐘以上才能完成, 因此,在很多情況下,老師沒有足夠的時間點名,從而導致這些課變成了逃課、缺課的重災區(qū)[1]。綜上所述,一套行之有效的能夠公平、高效地記錄出勤情況的簽到管理系統(tǒng)是大學普遍渴望配備的,通過新簽到系統(tǒng)的使用,配合有力的獎懲措施, 能夠在很大程度上減少逃課、缺課現(xiàn)象的發(fā)生,提升到課率。
1 功能分析
作為一款校園考勤系統(tǒng),系統(tǒng)的典型用戶有學生、授課教師和教務管理人員。對于學生,需要在上課前(或者下課后) 在簽到機上簽到;對于教師,需要能夠很方便地查看某一天的考勤情況 ;對于教務人員,需要能夠快捷的在所有考勤機上增加或刪除一個學生的信息,并且在一個考勤機損壞的情況下,能夠快速更換,并不影響其它考勤機的正常工作 [2]。
分析傳統(tǒng)的指紋簽到設備,我們發(fā)現(xiàn),傳統(tǒng)的指紋簽到設備主要面向企業(yè)市場,強調(diào)打卡時間、排班、計時等企業(yè)管理所需要的功能,并且其考勤數(shù)據(jù)只記錄在考勤機內(nèi),這意味著只能夠單機考勤,對于幾十名同學需要在課間 20 分鐘內(nèi)集體從一個教室離開,到另一個教室簽到的學生來說,只有一個考勤機是不夠的。通過對比,發(fā)現(xiàn)傳統(tǒng)考勤機的功能與校園簽到系統(tǒng)需求不符,因此需要一個專門針對校園考勤的系統(tǒng), 該系統(tǒng)應具有如下功能與特性 [3] :
1 能夠快速簽到,識別速度快,識別準確率高。
2 能夠適應同一個學生不同時間在不同教室上課這一使用場景。
3 能夠?qū)崿F(xiàn)多機考勤,學校可在大教室里設置24個考勤機,小教室設置12個。
4 能夠在網(wǎng)頁端查看實時的簽到數(shù)據(jù)。
5 在考勤機發(fā)生損壞時,能夠便捷替換。
2 硬件組成
硬件部分總體上分為考勤控制機和指紋識別終端兩部分,考勤機采用基于ARM Cortex-A7 的樹莓派,運行服務端程序,向下控制指紋識別終端,采集,存儲數(shù)據(jù),向上提供Web 管理接口。
2.1 基于樹莓派的教室考勤控制機
鑒于需要存儲指紋這種安全而敏感的信息,同時服務器不需要進行大規(guī)模的計算和存儲,因此本地服務器采用處理器基于ARM Cortex-A7 的樹莓派, 運行基于 Linux 的raspbain 操作系統(tǒng)[4],并且安裝MySQL 數(shù)據(jù)庫服務和TCP 服務端。服務器接入學校局域網(wǎng),可由學校網(wǎng)絡中心統(tǒng)一維護, 學生指紋庫和簽到情況等存儲在服務器數(shù)據(jù)庫中,系統(tǒng)通過TCP 服務與上層軟件通訊,被授權(quán)的教務管理人員能夠隨時查看服務器上記錄的簽到情況并修改服務器端學生的信息。同時樹莓派通過nRF24L01+ 芯片與下位多個指紋錄入與識別設備無線通訊,實時獲取各機的簽到數(shù)據(jù)并加以處理和整合。
2.2 nRF24L01+ 無線傳輸模塊
nRF24L01是由NORDIC公司出品的工作在 2.42.5GHz的ISM頻段的單片無線收發(fā)器芯片。無線收發(fā)器包括頻率發(fā)生器、增強型 SchockBurst模式控制器、功率放大器、晶體振蕩器、調(diào)制器和解調(diào)器[5]。輸出功率頻道選擇和協(xié)議的設置可以通過SPI 接口進行設置[6]。幾乎可以連接到各種單片機芯片,并完成無線數(shù)據(jù)傳送工作。它具有極低的電流消耗。當工作在發(fā)射模式下發(fā)射功率為 0 dBm 時,電流消耗為11.3 mA,接收模式時為12.3 mA,掉電模式和待機模式下電流消耗更低,其適合嵌入式設備使用。
2.3 基于STM32的指紋識別終端
本系統(tǒng)采用的指紋錄入比對設備是微雪UART Fingerprint Reader,這是一款專用于二次開發(fā)集成應用的新型指紋開發(fā)模塊,具有高速度、識別快、高穩(wěn)定性等特點。
微雪 UARTFingerprintReader模塊以 STM32F205高速數(shù)字處理器為核心,結(jié)合商用指紋算法,高精度光學傳感器, 同時具有指紋錄入、圖像處理、特征值提取、模板生成、模板儲存、指紋比對和搜索等功能,在指紋采集方面,該模塊采用高精度光路和成像元件,使用時只需要手指輕輕一點,就能快速識別[7]。在識別比對方面,該模塊采用STM32F205高級數(shù)字處理芯片作為處理器,低功耗,快速穩(wěn)定,可滿足教學樓人流量大、單位時間簽到需求人數(shù)高的要求。
2.4 12864液晶顯示模塊
簽到機與用戶的交互模塊為一塊 12864 液晶屏,待機時顯示當天的日期,星期,時間,教室號等信息,當用戶將手按上指紋模塊時,激活指紋模塊,同時在液晶屏上顯示出對比結(jié)果,例如:識別成功,XXX,歡迎您 ,簽到失敗,請重試! , 未到考勤時間,禁止簽到! 之類的提示,方便用戶使用。
3 軟件系統(tǒng)設計
3.1 樹莓派端的設計
樹莓派端設計主要由Web 服務部分,數(shù)據(jù)庫部分和無線傳輸服務部分組成。Web 服務部分通過服務器端運行的Web 服務,使教務管理人員能夠便捷地通過 Web 瀏覽器管理,統(tǒng)計簽到數(shù)據(jù)。數(shù)據(jù)庫部分采用SQLlite 數(shù)據(jù)庫存儲同學們的各種信息,包括課程信息和指紋數(shù)據(jù)(或者指紋特征點數(shù)據(jù)) 等。無線傳輸模塊通過使能樹莓派系統(tǒng)自帶的 SPI 總線,參考 nRF24L01+ 的參考手冊配置無線模塊的地址,實現(xiàn) 1 對多通訊,即一個樹莓派控制機控制數(shù)個指紋錄入比對設備。
3.2 指紋錄入與識別設備的設計
指紋錄入與識別設備也是主要由無線通訊模塊、顯示輸出模塊和指紋錄入及識別模塊組成,與上節(jié)中的無線傳輸服務部分類似,這里的無線通訊模塊也采用nRF24L01+,通過STM32 使能自身的SPI 總線,參考 nRF24L01+ 參考手冊,配置無線模塊的地址,唯一與上一節(jié)不同的是,這里配置為多對 1通訊[8],即多個錄入比對設計對應一個上層樹莓派。顯示輸出方面,設備通過I/O口采用 8位并行傳輸方式控制 12864 液晶屏,輸出所需要的文字和圖像,滿足交互需求。在指紋錄入和識別模塊,采用完整的微雪 UARTFingerprintReader 模塊的UART串口通訊,通過產(chǎn)品說明書提供的串口API,控制模塊進行識別、對比,上傳指紋圖片,上傳特征點等操作。
4 系統(tǒng)測試
為了檢測該簽到系統(tǒng)的可行性,對系統(tǒng)進行了指紋識別系統(tǒng)和樹莓派控制系統(tǒng)的測試。我們以一個班級(33 人)為測試對象,采用一個控制機控制兩個簽到機,3 分鐘內(nèi)完成了簽到過程,經(jīng)檢測,該系統(tǒng)達到了預期效果,系統(tǒng)的軟件和硬件都運行正常,能夠完成指紋注冊、比對、刪除等功能;同時能夠完成服務器通過控制多個樹莓派,進而調(diào)取并傳送不同教室的數(shù)據(jù)庫內(nèi)容。系統(tǒng)穩(wěn)定可靠,通過率高。
5 結(jié) 語
文章采用UART Fingerprint Reader 指紋識別模塊和基于ARM Cortex-M3 處理器的 STM32 單片機以及基于ARM Cortex-A7 處理器的樹莓派[9],設計了一款指紋識別簽到系統(tǒng)。該簽到系統(tǒng)簡單、實用、便攜、識別精準,支持多機聯(lián)合考勤。通過無線模塊能夠快速、穩(wěn)定收發(fā)數(shù)據(jù),并可實時傳送到服務器,達到人員出席的考核。實驗結(jié)果表明系統(tǒng)的硬件和軟件都運行正常,達到了預期目標。此外,該指紋簽到系統(tǒng)預留了I/O 擴展接口,并能夠根據(jù)用戶的需求將其不斷完善,相信不久的將來,基于ARM 嵌入式微處理器的考勤控制管理系統(tǒng)將會有很好的前景。





