一種智能門禁控制器的軟件設(shè)計
3 軟件的實現(xiàn)
門禁系統(tǒng)的軟件主要由管理中心計算機上的軟件和門禁控制器上的軟件組成. 為敘述方便,以下門禁控制器簡稱為門控器.
在門禁系統(tǒng)中,門控器上的軟件所執(zhí)行的主要功能有建表,添加、更改和刪除表內(nèi)容,對讀卡事件做判斷處理和存儲各種事件. 與門禁系統(tǒng)有關(guān)的任務(wù)有門禁系統(tǒng)任務(wù)(也就是讀卡事件處理任務(wù)) 、網(wǎng)絡(luò)數(shù)據(jù)接收任務(wù)、數(shù)據(jù)存儲任務(wù)、系統(tǒng)間聯(lián)動任務(wù),還有數(shù)據(jù)采集的中斷服務(wù)程序. 另外,還有個根任務(wù),它執(zhí)行硬件設(shè)備的初始化,定義幾個表的結(jié)構(gòu)數(shù)組,創(chuàng)建各任務(wù)、信號量、消息隊列、實時數(shù)據(jù)緩沖池. 根任務(wù)完成這些事情后把自己刪除掉,使當(dāng)前優(yōu)先級最高的就緒任務(wù)進(jìn)入運行態(tài)[3 ] .
3. 1 讀卡事件處理任務(wù)
讀卡事件處理任務(wù)的過程:首先,采集數(shù)據(jù)的中斷服務(wù)程序發(fā)來的事件標(biāo)志激活該任務(wù),從緩沖池中讀取卡號和讀卡器號,或者還有密碼;其次,根據(jù)卡號、讀卡器號和當(dāng)前的讀卡時間,到持卡人信息表、讀卡器表、群組表里去檢索信息;然后,根據(jù)群組表里的門屏蔽字去查門的時段表、門的時段屬性;最后,根據(jù)所得信息執(zhí)行命令并保存事件內(nèi)容、修改使用次數(shù)和人員位置數(shù)據(jù)等. 該任務(wù)的優(yōu)先級為200 ,用獲取信號量的辦法與網(wǎng)絡(luò)接收數(shù)據(jù)任務(wù)互斥開. 因為該任務(wù)涉及到幾個表,數(shù)據(jù)量比較大,所以堆??臻g較大,為500 K.通過發(fā)巡更事件與巡更任務(wù)通信[3 ] . 超級卡程序比普通卡的程序少一項時段判斷的過程,其它的與普通卡程序一樣;維護(hù)卡程序?qū)崿F(xiàn)解除門控器防拆報警使之恢復(fù)正常工作狀態(tài);巡更卡程序發(fā)送巡更標(biāo)志給巡更任務(wù). 關(guān)于是否違反防反傳規(guī)定,要視具體工程和客戶的要求而定.
3. 2 巡更任務(wù)
操作員在監(jiān)控管理中心設(shè)置巡更路線和巡更時間表,而后下傳到門控器上. 巡更任務(wù)通過接收讀卡事件處理任務(wù)發(fā)來的巡更事件標(biāo)志,根據(jù)當(dāng)前時間和巡更時間表,判斷巡更是否到位,并向監(jiān)控管理中心計算機發(fā)送信息,決定是否報警. 巡更站就是讀卡機,在規(guī)定的時刻和誤差范圍內(nèi)讀卡,表示巡更到位,否則表示巡更不到位. 巡更任務(wù)的優(yōu)先級較低, 取100 , 堆棧取6 000 ,該任務(wù)可搶占,時間片為50 ns.
3. 3 網(wǎng)絡(luò)數(shù)據(jù)接收任務(wù)
網(wǎng)絡(luò)數(shù)據(jù)接收任務(wù)的功能為接收管理中心計算機或其它門控器發(fā)來的數(shù)據(jù)和命令,根據(jù)這些命令和數(shù)據(jù),執(zhí)行相應(yīng)的建表、添加、更改、刪除、維護(hù)和讀事件等操作. 該任務(wù)的優(yōu)先級取190 ,堆棧設(shè)為600 K,可搶占. 采用客戶/ 服務(wù)器的通信模式,接受數(shù)據(jù)的門控器為服務(wù)器,發(fā)送數(shù)據(jù)的管理中心計算機為客戶.為了通信方便,我們自己定義了一套數(shù)據(jù)傳輸?shù)母袷?具體格式如下:
因為不能對flash 存儲器進(jìn)行單個字節(jié)的擦除和改寫,只能一個一個模塊整塊擦除,再重新寫,所以門禁控制器上的數(shù)據(jù)表只采用新建和重建兩個命令(flash 的擦除次數(shù)可達(dá)100 萬次) .
3. 4 數(shù)據(jù)存儲任務(wù)和系統(tǒng)間聯(lián)動任務(wù)
數(shù)據(jù)存儲任務(wù)的主要功能是定期把SDRAM 里的事件數(shù)據(jù)保存到flash 存儲器和管理計算機上. 系統(tǒng)間聯(lián)動任務(wù)主要是響應(yīng)其它系統(tǒng)的要求,比如火災(zāi)報警系統(tǒng)報警時要求把有關(guān)的門打開,而安全防范系統(tǒng)在遇盜時,需把有關(guān)的門關(guān)閉. 該任務(wù)的優(yōu)先級要求比較高,取230.
持卡人信息表、群組表、時段屬性表和讀卡器表的數(shù)據(jù)結(jié)構(gòu)定義的程序清單如下
4 結(jié) 語
本文主要闡述了門禁控制器軟件的設(shè)計及實現(xiàn).詳細(xì)說明了門禁控制系統(tǒng)的組成、基本結(jié)構(gòu)、工作方式及功能功述;系統(tǒng)分析了門禁控制系統(tǒng)的工作原理. 門禁控制器系統(tǒng)應(yīng)用于出入口管理系統(tǒng),提供了較高的安防保障,并日益被推廣.
評論