高柱明
(中山市技師學院,廣東中山,528400)
隨著科技的快速發展以及社會經濟的持續增長,安全問題日益突顯,如何有效地實現出入口的安全防范管理成了一個亟待解決的問題。為此,智能門禁控制系統應運而生,在工作環境安全、人事考勤管理等行政管理工作中發揮著巨大的作用。然而,當前市場上的智能門禁控制系統種類繁多,各有優缺點。因此,針對安全要求較高的環境,有必要研究一種基于嵌入式技術,以SEP4020 為核心的智能門禁系統,通過SQL 數據庫進行數據組織、存儲和管理的能力。在滿足安全要求的同時,該系統還具有良好的可擴展性,可根據不同的通訊方式選擇性地實現裝置和網絡的通信控制。
SEP4020 處理器是一款高性能、低功耗的嵌入式處理器,廣泛應用于各種智能設備中。由于其出色的性能和穩定性,SEP4020 處理器在智能門禁系統設計中具有重要價值。表1 展示了SEP4020 處理器與其他常見處理器的性能對比。從表中可見,SEP4020 處理器在主頻、內核數量和功耗方面與其他處理器相比具有顯著優勢。在智能門禁系統設計中,SEP4020 處理器可以實現高性能的運算處理和低功耗的穩定運行。此外,該處理器還具備豐富的外設接口,方便與其他模塊進行通信與擴展。

表1 SEP4020處理器性能情況
微機自動識別技術是利用計算機輔助識別和處理各種類型的數據,如條形碼、二維碼、生物特征等,從而實現自動化管理。在智能門禁系統中,微機自動識別技術可以有效地實現身份識別、權限驗證等功能。表2 給出了幾種常見的微機自動識別技術及其特點。

表2 常見微機自動識別技術及特點
本文在SEP4020 系統的基礎上,對該系統的硬件進行了詳細的設計,具體包括:設定與啟動處理器有關參數;設計復位電路和外部遙控喚醒的電路;與RTC 時鐘同步有關的設定;設計并優化JTAG 的調試接口電路;設計“看門狗”電路,提高了整體電路的靈敏度;擴展通訊電路,在原來485 通訊方式的基礎上,加入了以太網通訊方式,使整個門禁系統在功能上增強擴展性能;標準的SDRAM 與NANDFLASH 接口電路的設計,使其具有更大的內存容量,更大的運算容量;采用PWM 技術設計了蜂鳴器電路,實現了語音功能;設計了電源模塊,為系統提供了12V、5V、3.3V的電壓。硬件結構圖如圖1 所示。

圖1 系統硬件設計結構圖
本設計的控制器和上位機的通信方式支持和以太網兩種接口通信方式。RS485 接口電路采用MAX3485CSA 半雙工通信驅動芯片,利用主芯片上的PD4485 引腳同時與485驅動芯片的RE 和DE 芯片來控制數據是接收還是發送。芯片上的 485RXD2 代表接收器輸出,當A 引腳的電壓大于 B 引腳的電壓200 毫安的時候,數據接收端為高電平,否則為低,分別在接收器和驅動器的旁路并聯TVS 瞬態抑制二極管,可以有效地保護芯片電路。門禁控制系統除了RS485 通信方式以外,還支持以太網通信接口方式,理論上只需要phy 芯片就可以實現通信,設備也能夠正常工作,但是傳輸距離受到了限制,利用HR611206 網絡變壓器首先可以解決距離傳輸問題,其次,如果接受不同電平的信號,可以保證彼此設備不受影響,最后,使PHY 芯片與外部隔離,能夠提高信號的抗干擾性,這樣就可以很好地保護芯片。
SEP4020 處理器芯片上電管腳的引腳數,分別是0、1、2 這三個管腳,其目的是完成該系統的外部起動,其起動選擇如表3 所示。

表3 處理器啟動外部引腳配置
通過外部的專用引腳nRESET 來完成處理器的硬件復位,其復位時間為2 ms 以上,一方面,使用者可以選擇簡單的RC 延遲電路,或外部專門的復位電路,對處理器進行上電復位;另一方面,也可以使用按鍵來完成按鍵的復位。此外,該芯片還具有在“睡眠”時的遙控喚醒功能,使用者只需在外界按下按鈕即可啟動對應的緊急喚醒,使得該芯片由“睡眠”恢復至“緩慢”,繼而恢復至“正?!惫ぷ?,具體的工作原理見圖2。

圖2 外部簡易RC 上電復位電路
在本次設計中,所用到的PT7M7823 數字芯片,完成對整個電路系統的復位。PT7M7823 是一款5 管腳的處理器監測電路芯片,該芯片還具有手工復位和看門狗定時器功能,使用者可以利用它和外面的看門狗復合電路,共同完成對處理器的電源檢測和上電復位,詳細設計如圖3 所示。

圖3 外部電復位電路
備用電池為RTC 的計時器供電,當發生故障時,保證可以設置時間停止。在設定時刻與現在時刻一致時,實時鐘表會自動停止,從而為日歷計時,達到分鐘級精度。該方法采用了兩種不同的時鐘信號,其中一種為RTC 電路,工作速率為32.768 kHz,見圖4(a);另外一個是系統時鐘頻率,需要2~5 MHz 時鐘才能進行工作,建議用戶在主頻中使用4 MHz 的時鐘頻率,具體情況如圖4(b)所示。除此之外,本設計在SDRAM 的時鐘信號引腳(SDCLK)上,增加了1.5 kΩ 的下拉電阻,具體情況如圖4(c)所示,其目標是要與外界時鐘阻抗相匹配,從而提高系統穩定性。

圖4 RTC 模塊時鐘電路
看門狗電路功能是在系統出現異常運行時,控制器系統會自行進行再啟動,從而增加了系統的可靠性。另外,如果軟件出現異常狀況,比如電壓過高、靜電過大等,則由看門狗線路啟動,使軟件重新啟動,以保證軟件安全。如圖5所示,利用PT7M7823 電路監督芯片和三態輸出總線緩沖器閘(SN74LVC125A)的合作,來完成門禁系統的看門狗,即利用該緩沖器閘來控制電路是否進行復位。為了使得緩沖器開關可以正確的操作,SN74LVC125A 的啟動端子(WDCTL(PB9))在高電平信號的情況下,需要維持在High,而在WDI (PB8)為低電平信號時,輸出在Low。

圖5 看門狗電路
本設計所采用的開發平臺是在虛擬機下安裝的LINUX系統,該系統版本為Fedora7,內核版本為LINUX2.6.16,并在LINUX 操作系統環境下建立與GCC、數據庫和U-BOOT等編譯工具。門禁控制裝置的燒寫軟件是由博芯電子公司提供的一種特殊系統燒寫軟件完成,該軟件操作便捷,可以對啟動文件U-BOOT、內核鏡像和文件系統進行燒寫,使用的燒寫器是ARM 公司的一種特殊的調試工具J-LINK。本次研制的驅動程序主要包括:電鎖的繼電器控制驅動程序、報警繼電器控制驅動程序、SEP4020 芯片單個引腳的驅動程序、按鈕驅動程序刷卡器驅動程序和 PWM 語音驅動程序。
在基于嵌入式技術的智能門禁系統設計中,選擇合適的操作系統對于保證系統穩定性和實現多任務處理至關重要。在眾多嵌入式操作系統中,Linux 具有開源、穩定、可定制等優點,適用于多種應用場景。因此,本文選擇Linux 操作系統作為基本平臺。為適應智能門禁系統的特點和需求,需要對Linux 操作系統進行定制和移植。首先,針對SEP4020處理器的特性和資源限制,對Linux 內核進行裁剪和優化,移除不必要的驅動和功能模塊,降低系統資源占用。其次,根據識別模塊、控制模塊、通訊模塊等的實際需求,添加相應的硬件驅動和接口支持,確保各模塊之間的正常協同工作。
驅動程序是操作系統與硬件設備之間的橋梁,負責實現設備的控制和數據傳輸。在基于嵌入式技術的智能門禁系統設計中,針對各個硬件模塊如識別模塊、控制模塊、通訊模塊等,需要開發相應的驅動程序以確保系統的正常運行。識別模塊驅動:根據所選用的微機自動識別技術(如條形碼、二維碼、指紋識別、面部識別等),開發相應的驅動程序,實現對識別設備的控制和數據采集??刂颇K驅動:針對SEP4020 處理器和其他控制器硬件,開發驅動程序以實現對鎖控制、報警等硬件設備的操作。具體對應的驅動文件名如表4 所示。

表4 驅動程序名稱對應表
針對SEP4020 的U-Boot 操作流程,主要包括以下操作方法和命令:
(1)啟動U-Boot:將目標板上電,通過串口連接至上位機。開發人員可以在上位機上使用串口終端軟件(如PuTTY、minicom 等)以進行操作。在串口終端中配置好相應的波特率、數據位、停止位和奇偶校驗后,可以看到U-Boot 的啟動信息。
(2)驅動系統中U-Boot 命令:
help:顯示可用的U-Boot 命令列表和簡短說明。
version:顯示U-Boot 版本信息。
printenv:顯示當前環境變量的值。
setenv:設置環境變量的值。
saveenv:將環境變量保存到持久存儲介質(通常為NOR/NAND Flash)。
loadb:通過串口下載二進制文件。
tftp:通過TFTP 協議從網絡服務器下載文件。
nand read/write/erase:對NAND Flash 進行讀取、寫入和擦除操作。
fatload:從FAT 文件系統中加載文件。
bootm:從指定內存地址啟動內核映像。
(3)下載和燒寫內核映像:使用tftp 或loadb 命令將內核映像下載到目標板的指定內存地址,然后使用nand write 命令將內核映像燒寫至NAND Flash 中。燒寫完成后,可以使用nand read 命令進行校驗。
(4)啟動操作系統:配置好U-Boot 的環境變量(如bootcmd、bootargs 等),并使用saveenv 命令保存。之后,通過bootm 命令從指定的內存地址啟動內核映像,加載并運行操作系統。
在基于嵌入式技術的智能門禁系統中,數據庫設計是關鍵環節之一,負責系統數據的組織、存儲和管理。本文采用SQL 數據庫作為數據存儲方案,根據系統需求設計了以下幾個主要數據表:
(1)用戶信息表(UserInfo):用于存儲用戶的基本信息,如用戶ID、姓名、部門、權限等級等。通過設置合適的權限策略,實現對不同用戶的門禁控制。
(2)訪問記錄表(AccessLog):記錄用戶通過門禁系統的時間、地點和結果等信息。便于管理員進行查詢、分析和考勤管理。
(3)設備信息表(DeviceInfo):存儲門禁系統設備的信息,如設備ID、位置、狀態等,方便進行設備管理和維護。
(4)報警記錄表(AlarmLog):記錄門禁系統發生的異常事件和報警信息,幫助管理員快速定位和處理問題。
在 QT 開發的基礎上,本文將該系統的管理軟件劃分為:控制器設定部分、信息中心部分、權限設定部分。在圖6的系統軟件功能拓撲圖中,對訪問管理裝置和高層的功能模塊進行了詳細的分類和劃分。

圖6 管理軟件功能拓撲結構圖
(1)登錄設置
當登陸時,賬戶名稱和口令將被設定為:使用者名稱Admin 口令為空。可以通過“權限管理”菜單來設定或修改相應使用者名稱及密碼。點擊“增加”,在信息中設置了名字、等級、密碼等信息,然后 “保存”后就可以加入了。從菜單欄中的“系統管理”中,選擇“參數設定”,視窗內所顯示的是讀取IC 寫卡編號和讀取IC 寫卡編號。選擇「讀IC卡寫卡數」這個選項,當刷 IC卡時,將會讀出 IC卡的卡數,而 IC 卡除了自身序號外,還可以再寫一次。而“讀卡序號”這個選項,可以讀取 IC 卡或者 ID 卡的序號。
(2)控制器設置
在現代工業生產中,控制器是不可或缺的設備之一。控制器的作用是控制設備的運行,以達到生產線的自動化、高效化。首先,對控制器進行相關設置時,主要是對設備進行管理。對于手動增加控制器,需要填寫相關控制器信息,如設備序列號、設備名稱、通信IP 地址、通信網關和子網掩碼的設定。其次,在控制器的管理軟件中,可以對不需要的控制器設備進行刪除,也可以對控制器的網絡參數進行修改,這樣可以保證控制器的網絡設置是符合實際需要。
管理軟件也支持自動搜索到當下網絡環境中的控制器,控制器出廠初始IP 地址默認為192.168.0.8。如果用戶不知道控制器的實際IP 地址,可以通過搜索功能來查找控制器。點擊“開始搜索”按鈕即可發送廣播信號,將同一局域網中的控制器都能夠搜索到列表中。搜索過程中,需要耐心等待,直到搜索完成。搜索完成后,可以將搜索的結果添加到數據庫中。這樣可以方便用戶以后更快地找到控制器。在使用控制器時,需要根據實際需要對控制器進行相關設置。這樣可以保證控制器的正常使用,提高生產效率。
(3)高級功能
門禁系統的主要功能是控制出入門的開放,保障機構內部安全。而在門禁系統中,卡片管理是至關重要。以下是門禁系統中卡片管理的關鍵點。首先,門禁系統中卡片設置,首長卡設置優先級比緊急設置低,響應互鎖規則,但上傳能夠成功。這意味著,如果同時存在多個設置,系統會優先響應首長卡設置。即使其他設置具有更緊急性質,系統也會按照首長卡設置進行操作,以保證安全性。同時,該設置不會影響上傳的成功。其次,門禁系統中的首長卡適用于管理者使用,可實現相應的門動作。因此,該卡片使用范圍比較有限,只能被特定的管理者使用。而且,該卡片可以直接控制門的動作,具有較高權限。
門禁系統中的管理卡可以設置常開、常閉,有效日期不受限。這意味著管理卡的使用范圍比較廣泛,可以被更多人使用,可以長期使用。同時,該卡片還可以設置常開、常閉狀態,方便使用者根據需要進行門的控制。
報警輸入種類包括報警信號報警、脅迫報警、非法卡報警等,用戶可自定義。門禁系統中的報警輸入種類比較豐富,可以包括多種類型的報警信號。同時,客戶也可以根據自己需要進行自定義設置,以更好地保障安全。解除報警信號只能解除當前的報警信號,設置依然存在。在門禁系統中,解除報警信號只能解除當前的報警信號,不能直接取消設置。因此,即使報警信號已經解除,相關的設置依然存在,仍然會影響到后續的使用。
最后,門禁系統中的定時任務設定,可以在特定時間段設置門狀態或開門方式。這意味著,用戶可以根據需要進行靈活的門控制。而且,該設置可以在特定的時間段進行,例如在夜間進行特定的門控制,以保障安全。門禁系統中的實時任務的受控方式包括首卡開門、首卡常開、僅首長卡開門。實時任務的受控方式比較多樣化,可以根據用戶的需要進行選擇。例如,可以選擇使用首卡開門方式,或者僅允許特定的首長卡進行開門,以保障安全。
本文以SEP4020 為核心,設計了一套滿足高安全要求的智能門禁系統,系統涵蓋了硬件電路設計、操作系統選擇與移植、驅動程序開發、數據庫設計等關鍵環節,實現了信息存儲、處理、保存和通訊中樞等功能。本設計方案具有較高的可擴展性,可根據不同場景和需求進行優化和定制。隨著技術的不斷發展,未來智能門禁系統將具備更多高級功能,如多模態生物識別、人工智能分析、物聯網集成等。在實際應用中,智能門禁系統將在工作環境安全、人事考勤管理等行政管理工作中發揮更大作用。