1. 程式人生 > >基於Linux的考勤機設計方案V1.1(終端軟體部分)

基於Linux的考勤機設計方案V1.1(終端軟體部分)

        Designed by Qtchen001&lcy

       技術交流群 184564382

考勤機作為終端,主動向伺服器傳送連線請求,伺服器可以使用VPN的方式。作為VPN伺服器的計算機有兩個網絡卡,一個連線在區域網中,一個連線在廣域網中。考勤機採用主動方式連線網路,這樣在一個區域網中可以安裝多臺考勤機。

1、考勤機終端:

終端具有的功能除基本的考勤功能外,還需要留足擴充套件介面,以便日後擴充套件。考勤機的擴充套件主要是這樣的擴充套件:

人臉識別,採用攝像頭拍攝照片來進行識別

指紋識別,使用專門的指紋識別模組

2、門禁考勤機主要功能需求:

考勤卡識別功能,讀取考勤卡資訊,檢驗考勤卡合格性,如果合格則記錄考勤、語音提示成功並顯示姓名;如果失敗則語音提示不成功。

對於待考勤人員的識別,需要兩方面做保證:一方面本地記錄了待考勤人員的資訊,姓名和卡號對應,在刷卡時查詢資料庫,驗證;另一方面,在本地驗證失敗時,需要通過網路向伺服器驗證,驗證成功時將驗證資訊下載到本地考勤機並提示成功,失敗時則考勤機提示驗證失敗。

考勤記錄可以存放在本地終端上,也可以通過網路上傳到VPN伺服器上,可以即時上傳或者定時上傳。考勤記錄和卡號-人員對應表等資訊儲存在本地SD卡中。

語音提示,真人發聲提示

通過U盤上傳使用者姓名列表,下載門禁考勤記錄以及照片(當考勤機支援人臉識別時)

考勤機可以獨立使用,無需連線電腦即可以設定考勤機引數,包括人員登記、人臉考勤、儲存記錄等。

支援考勤機本地資訊和伺服器資訊的同步,同步協議需詳細制定。

3、 考勤機軟體總體方案:

1)按鍵設計

1按鍵設計

2)液晶顯示

     

上班介面


3下班介面


4設定介面

3)設定主機IP

如圖4中所示設定伺服器IP和埠(PORT

該流程對應的軟體流程為

5設定IP軟體流程圖

4)匯入批量資訊到終端

新的考勤機結構

6考勤機結構

7上位機批量匯入資訊

5)終端機輸入卡號

通過按鍵設定開始輸入新的卡號

8終端輸入卡號資訊

6)網線供電(POE,Power Over Ethernet

這部分與軟體無關主要是硬體方面的設計

9 POE

7)上班/下班刷卡

我們假設公司設定的上班刷卡時間為7:00—9:00,則在這個時間段內刷卡時不需要按“上班”按鈕,系統預設為將刷卡的員工開始上班,在此時間段之外要刷卡上班時需要先按“上班”按鈕。下班時也是同理。

10刷卡上班/下班流程圖

4、底層開發方案:

基於linux的嵌入式系統開發是一個層次化的結構。Linux作業系統負責嵌入式系統硬體資源的管理,而應用層軟體則負責實現具體功能。Linux系統本身就是一個層次化的系統結構,它由硬體層、裝置驅動層、虛擬檔案系統VFS層和應用層組成。虛擬檔案系統層和裝置驅動層完成底層硬體的抽象。Linux將所有的裝置都當作檔案處理,被稱為裝置檔案。裝置又可以細分為網路裝置、字元裝置和塊裝置。

裝置驅動層需求:

根據應用的需要,系統需要的模組包括如下部分:

USB介面模組

Ethernet模組

SD卡模組

UART模組

MFRC500模組

RTC模組

NandFlash模組

SDRAM介面模組

LCD介面模組

上述這些模組在freesacale提供的支援中很多驅動已經完成,開發需要做的重點是相應模組對應於具體電路板的裁剪、UART介面模組的驅動程式和MFRC500模組的驅動程式。

11整體軟硬體框架圖

1USB擴充套件介面

LinuxUSB具有熱插拔功能,在檢測到有裝置接入USB裝置時,linuxhub驅動就會為插入的裝置查詢驅動;如果在系統中有符合的驅動,則正確配置;否則需要將相應的驅動以模組的形式載入到系統中,使用insmod命令即可載入模組

2UART介面

I.mx2896UART介面,5個高速介面和1個低速介面,低速介面可以用於除錯;採用宿主機-終端機的模式,終端機linux系統的除錯是用串列埠連線到宿主機進行的。

另外有些指紋識別模組的擴充套件介面也是uart介面的,所以需要預留uart介面以備擴充套件。

3Ethernet介面

Ethernet介面用於考勤終端機和遠端伺服器進行通訊,i.mx系列晶片有1~210/100MEthernet介面,乙太網介面驅動程式可以移植官方驅動,稍作修改。使用linux的網路協議棧可以實現網路通訊任務。系統採用C/S結構,終端機作為客戶,需要向伺服器傳送請求,進行連線、資料互動等

4IIS介面

基於擴充套件的功能,考勤機需要擴充套件音訊除錯介面。I.mx系列晶片包含IIS音訊解碼介面,其驅動程式只需稍作修改即可。

5LCD介面

LCD可以作為地址裝置接在系統的資料和地址總線上,這樣系統可以統一定址。LCD介面驅動需要移植linux的帶framebufferplatform型別的驅動程式。

6RTC

RTC整合在晶片內部,直接移植官方驅動即可

7NandFlash

移植官方驅動

8SD/MMC

i.mx3SD/MMC/SDIO介面,demo板包含linux驅動程式。

9MFRC500介面

MFRC500是並行介面,建議將其連線在資料和地址匯流排內,使處理器能夠直接定址。它屬於字元裝置,只要實現其字元裝置驅動程式就可以了,基本的操作是openclosereadwriteioctl,此外還有中斷處理程式。它的編解碼協議執行在使用者許可權下。

 找專案、找人才、買賣軟體/方案,請到同城軟體外包網 www.58witkey.com

相關推薦

基於Linux考勤機設計方案V1.1終端軟體部分

        Designed by Qtchen001&lcy        技術交流群 184564382 考勤機作為終端,主動向伺服器傳送連線請求,伺服器可以使用VPN的方式。作為VPN伺服器的計算機有兩個網絡卡,一個連線在區域網中,一個連線在廣域網中。

沒事,釋出 Simple QQ Login v1.1號碼登入器

  Simple QQ Login v1.1(QQ號碼登入器)釋出時間:2009-4-26開發環境:Visual Studio 2008(C# 2.0)測試環境:XP(.NET Framework 2.

將FPGANios軟體部分程式放在SDRAM裡面跑

加了Nios並在上面跑uCOS的時候,nios裡面的onchip memory已經無法滿足程式的規模了。即使是EP4CE6的,單跑一個帶uCOS的nios cpu也不夠放。所以必須放到板上的SDRAM

Linux學習筆記6_基本命令復習1alias unalias sourse

linuxaliasunaliasalias 查看當前命令的宏定義狀態unalias [command] 取消某命令的宏定義(內存操作,非修改宏定義源文件,重啟失效)若想使用已重命名命令的原始命令,在命令前加“\”反斜杠符號即可,或使用命令的絕對地址調用。例:cp命令,在目的地址有同名文件時,會提示是否覆蓋粘

Linux系統備份還原工具1DD應用實例

環境 mnt 之前 air 更換 ibm grub resize 方法 DD使用教程:http://www.cnblogs.com/EasonJim/p/7442223.html 以下實例沒經過大量測試,可能在一些機器上不會有效。 一般圍繞以下幾點進行設置: 1、dd

Linux九陰真經之九陰白骨爪殘卷1加密和安全

con touch 接收 sock 就是 any bss pan 字節數 CA和證書 1、KPI :公共秘鑰體系 簽證機構:CA 註冊機構:RA 證書吊銷列表:CRL 證書存取庫 509

Android工程架構設計:Base Library基層MVP框架基於EventBus

Base Library部分把App中Application,UI(activity,fragment)公用方法重新封裝成模板方法,並開放對子類的擴充套件。同時融入mvp設計思想,封裝成基於mvp的基層架構體系。 目錄 1,IApplication(介面): 2,BaseAp

基於flask框架設計使用者的登入前後端

基於flask框架設計使用者的登入(前後端) 前端程式碼: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Titl

基於虛擬機器Linux作業系統專案開發日報表2018.10.9

1.學習了fopen、fwrite、fread、fcopy等相關函式和指令。 2.read,write和fread,fwrite的區別:read,write屬於Linux系統呼叫,fread,fwrite屬於C語言標準庫。使用系統呼叫會影響系統的效能,在程式中儘量減少系統呼叫的次數,並且讓每次系統呼叫完成儘可

基於虛擬機器Linux作業系統專案開發日報表2018.10.18

完善後的開發板除錯步驟指令:【1】輸指令檢視地址,板子及虛擬機器都執行。:Ifconfig 。若改地址:Ifconfig eth0 192.168.1.xxx(不大於255,不一樣的數字)。【2】板子及虛擬機器執行匹配:Ping 192.168.1.xxx。【3】【虛擬機器介面:】建立test檔案,並改密碼:

linux bash關閉標準輸出1exec 1<&-後重新開啟

linux bash shell的再次學習。 檔案描述符: stdin,stdout 和 stderr 的檔案描述符分別是 0,1 和 2(一個檔案描述符說白了就是檔案系統為了跟蹤這個開啟的檔案而分配給它的一個數字)   參考:https://www.cnblogs.com/sparkdev

Java--銀行賬戶存取款執行緒設計1互動執行緒

執行緒之間可能無關,也可能互動。 而執行緒的同步機制併發執行的互動執行緒間存在與時間有關的錯誤。 public class account { private String name;

設計模式心得1工廠模式+單例模式+構建器模式+原型模式+介面卡模式

設計模式分類 大致按照模式的應用目標分類,設計模式可以分為建立型模式、結構型模式和行為型模式。 建立型模式,是對物件建立過程的各種問題和解決方案的總結,包括各種工廠模式(Factory、Abstract Factory)、單例模式(Singleton)、構

Flume抽取SQL Server設計方案具體實現觸發器

上一篇將瞭如何使用Flume收集SQL server Board中的新增資料進行處理,如下針對更新的資料進行分析需求:對Board表更新的資料進行處理1.建立一個存更新資料的表Tri_Board_Update,表結構基本和原表機構一樣,但需要新增Update_id(唯一標識列

Linux下自動化部署ASP.NET CORE 3.1Docker+Jenkins+Nginx

1、先配置好Docker阿里雲加速,可以使用阿里雲容器服務 (可自己在阿里雲申請,要不然安裝東西直接很慢)注意:https://XXXX.mirror.aliyuncs.com為阿里雲加速服務分配地址 sudo mkdir -p /etc/docker sudo tee /etc/docker/dae

Linux Unix shell 編程指南學習筆記第四部分

fcm 驗證 () only arguments line div 反饋 sed 第十六章 shell腳本介紹 此章節內容較為簡單,跳過。 第十七章 條件測試 test命令 expr命令 test 格式 test condition 或者 [

sdut 面向對象程序設計上機練習四變量引用

程序設計 調用 void 程序 std content class int esp 面向對象程序設計上機練習四(變量引用) Time Limit: 1000MS Memory limit: 65536K 題目描寫敘述 將變量的引用作為函數形參,實現2個i

《鳥哥的Linux私房菜-基礎學習篇第三版

shell 怎樣學習 track col 網絡基礎 環境的使用 發生 企業網 clas 第2章 Linxu怎樣學習 1. Linux當前的應用角色 當前的Linux常見的應用可略分為企業應用和個人應用雙方面。 首先談了企業

Linux中tty是什麽tty1~7

是什麽 管理 打印機 現在 字符型 發送信息 ctrl+alt ctrl+ 設備 tty:終端設備的統稱。 tty一詞源於Teletypes,或者teletypewriters,原來指的是電傳打字機,是通過串行線用打印機鍵盤通過閱讀和發送信息的東西,後來這東西被鍵盤與顯示

SpringBoot入門-1Hello Word Boot

eas hand running 頁面 .cn tpm 2.3 src size   1、創建一個Maven項目,添加一個parent,代碼如下 <parent> <groupId>org.springframework.boot