?

一種低成本的嵌入式門禁控制器

2021-06-28 08:50金鑫朱金濤朱中旭
電子測試 2021年1期
關鍵詞:輪詢門鎖原理圖

金鑫,朱金濤,朱中旭

(湖北文理學院物理與電子工程學院,湖北襄陽,441053)

0 引言

隨著電子信息與計算機技術,特別是RFID等技術的發展,電子門鎖的應用越來越廣泛;這些電子門鎖應用便捷、安全性較高[1][2]。部分電子門鎖僅核對卡信息并控制門鎖開關,而很少存儲用戶開啟門鎖的時間。同時,還有部分電子門鎖不提供聯網功能,其數據無法共享,使得整個門禁系統的管理也受到局限。

門禁系統利用門禁控制器,將分散的電子門鎖聯網,為建筑物內的各類通道口提供安全的智能門禁功能。這種系統不僅可以利用人員身份卡對出入口進行控制,還可以記錄出入時間以實現更多管理服務[3]。

目前門禁系統中常用的門禁控制器,多是由PC機或者工控機來實現,功能較為強大、同時價格較高。本文討論了一種基于STM32的、提供簡單Web服務的、低成本的嵌入式門禁控制器。

1 基于STM32的門禁控制器整體設計

本文設計的門禁控制器,采用STM32F407微處理器為核心,利用LAN8720A作為PHY芯片提供以太網接入功能,利用MAX3486提供485總線訪問功能,實現了網絡化門禁管理??刂破鞑捎幂p量級的LWIP網絡協議棧提供TCP/IP服務,采用HTML語言,設計了門禁信息查詢平臺的交互頁面,并采用SSI技術以提供服務器的信息交互[4]。系統主要功能模塊結構圖如圖1所示。

圖1 系統主要模塊結構圖

控制器利用485模塊,輪詢485總線上的電子門鎖,利用以太網模塊,輪詢局域網內的電子門鎖,以驗證各個電子門鎖的正常在線;同時,各門鎖的開門信息可以通過總線或者網絡發送至門禁控制器。作為PHY芯片, LAN8720A模塊的原理圖如圖2所示。

圖2 LAN8720A模塊原理圖

為保存這些門禁信息,控制器在SD卡中實現了FatFs文件系統。SD模塊的原理圖如圖3所示。

圖3 SD模塊原理圖

系統在初始化完畢后,利用中斷完成各項功能。主要功能模塊初始化過程如圖4所示。

圖4 主要功能模塊初始化過程圖

2 門禁控制器通信設計

為安全起見,門禁控制器設計為僅采集各電子門鎖的在線信息、開門信息等,并不控制各門鎖的開關操作??紤]到應用的兼容性,門禁控制器支持485總線通信與以太網局域網通信。

2.1 通信協議數據格式

在具體實現中,控制器記錄的電子門鎖動作時間設計為該信息到達控制器的時間??紤]到485總線為半雙工工作方式,為了保證輪詢的正常進行,輪詢期間電子門鎖不能主動上傳開關信息。為了保證電子門鎖的實際動作時間與控制器對該動作的記錄時間的誤差可控,輪詢時間需盡量短。為此,系統采用自定義通信協議數據格式,如圖5所示。

圖5 門禁通信協議數據格式

其中,各域均為1個字節長。頭域為AAH,表示數據開始。類型域為0、1、2、3,分別表示在線輪詢電子門鎖、電子門鎖信息上報、控制器命令下發、上位機信息查詢等,其中命令下發的實現涉及安全,部分電子門鎖不支持。尾域為55H,表示數據結束。

當類型域為0時,表示在線輪詢;地址域為被輪詢的電子門鎖地址,信息域為該電子門鎖的當前狀態。當類型域為1時,表示信息上報;地址域表示發送信息的電子門鎖地址,信息域表示開啟門鎖的用戶編號。為保證安全,信息上報時用戶卡號并不會發送給門禁控制器,發送的是該用戶在本門鎖中的用戶編號。

2.2 通信過程

通過修改配置,可以設定門禁控制器的輪詢時間間隔,如設定為1分鐘輪詢一次。在每一輪的輪詢中,首先進行的是對485總線上的電子門鎖的輪詢,然后是對以太網上的電子門鎖的輪詢。輪詢時通訊方式為主從應答,門鎖處于等待接收狀態,不發送通訊數據,接收數據并進行處理;當收到控制器發送的對本地址的通信后,返回一幀應答數據;當收到控制器發送的對非本地址的通信后,拋棄該數據。被輪詢的門鎖對輪詢進行回應,控制器收到回應后輪詢下一門鎖;當控制器輪詢超時后將不回應的門鎖視為不在線,并輪詢下一門鎖。

485總線通訊設置如下:采用異步串行通訊,半雙工方式。速率9600(4800)bps,1位起始位,1位停止位,8位數據位,無校驗位,lsb在前。輪詢超時為發送時間的4倍時間。當速率為9600bps時,在不多于32部門鎖的情況下,485總線輪詢總時間不超過1秒。

當485總線、以太網均輪詢完畢后,各電子門鎖可以實時上報發生的開門信息,也可以上報在輪詢周期內未上報的開門信息,控制器需對收到的信息進行回應。當485總線上的電子門鎖上報發生的開門信息時,其余門鎖檢測到后,在發送時間的5倍時間內禁止上報信息,以防產生沖突。若兩門鎖同時發送各自的上報信息,總線上將產生沖突,其余門鎖檢測到沖突后,在發送時間的5倍時間內禁止上報信息,以防擴大沖突;控制器因校驗錯誤,將不回應;發生沖突的門鎖在超時時間內未收到控制器回應,將隨機延遲一段時間并再次發送其上報信息。

3 門禁控制器嵌入式Web服務設計

門禁控制器利用LWIP網絡協議棧提供TCP/IP網絡服務,從支持TCP/IP的電子門鎖中獲取門禁信息;上位機從控制器中讀取其存儲的門禁信息,讀取當前的門鎖狀態??刂破鲀冉╓ebServer,提供簡單的Web頁面訪問服務,操作人員可以通過瀏覽器登錄控制器并獲取各門鎖狀態與門禁信息。

在完成LAN8720A驅動程序移植、LWIP協議棧移植之后,系統采用HTML語言編寫web網頁,利用makefsdata.exe生成fsdata.c文件、編譯鏈接進系統程序;并采用SSI技術通過Httpd_cgi_ssi.c文件中的函數來實現與網頁的數據交互。

4 結束語

本文以STM32F407微處理器為核心,設計了一款低成本的門禁控制器,該控制器可以通過485總線、以太網與各個電子門鎖進行通信,獲取門鎖狀態和開門信息。系統移植了LWIP網絡協議棧,采用HTML語言設計了網頁,并利用SSI技術實現了與網頁的信息交互。該門禁控制器與電子門鎖構成的門禁系統具有穩定性較好、安全性較強、便于二次開發等特點,能夠支持上位機進行更多功能擴展。

猜你喜歡
輪詢門鎖原理圖
2011款別克凱越車中控門鎖失靈
一種簡易氣門鎖夾安裝設備
淺談STM32核心板原理圖設計
電路原理圖自動布圖系統的設計與實現
基于Protel DXP 2004層次原理圖的設計
6款熱門智能門鎖推薦
基于等概率的ASON業務授權設計?
依托站點狀態的兩級輪詢控制系統時延特性分析
利用時間輪詢方式操作DDR3實現多模式下數據重排
關于EDA教學中Quartus II原理圖輸入法的探討
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合