基于A(yíng)RM9與Linux的門(mén)禁監控系統軟件設計
2 門(mén)禁控制器硬件設計
本系統采用ATMEL公司的AT91RM9200(以下簡(jiǎn)稱(chēng)9200)作為MCU,該處理器基于ARM920T內核,工作主頻為180MHz,性能可達到200 MI/S,系統采用開(kāi)源的LINUX OS。內核版本為2.6.25,系統采用1片Nor-Flash,容量為64 MB,2片SDRAM,容量分別為32 MB。如圖2所示,本門(mén)禁控制器以ARM9200為核心,同時(shí)連接的還有LCD控制器,可連接顯示屏,方便用戶(hù)調試。另外,本門(mén)禁系統最多可連接256臺讀卡器及對應攝像頭。系統硬件組成示意圖如圖2所示。本文引用地址:http://dyxdggzs.com/article/150895.htm
3 系統軟件架構設計
整個(gè)系統分為前后臺兩部分,后臺監控程序會(huì )時(shí)刻監控讀卡器是否有刷卡信息,并對刷卡信息作出響應,前臺則通過(guò)boa服務(wù)器調用CGI服務(wù)程序響應客戶(hù)端訪(fǎng)問(wèn)請求。系統功能模型如圖3所示。
3.1 前臺設計
系統前臺主要由運行在門(mén)禁控制器上的boa Server服務(wù)器和CGI服務(wù)程序構成,boa server會(huì )時(shí)刻監視是否有遠程用戶(hù)的訪(fǎng)問(wèn),當有客戶(hù)端訪(fǎng)問(wèn)請求到達后,會(huì )通過(guò)boa server配置文件到相應目錄下去調用對應的CGI服務(wù)程序,在處理完成后,boa server將處理結果返回給客戶(hù)端。
3.1.1 CGI簡(jiǎn)介及工作原理
CGI全稱(chēng)是“通用網(wǎng)關(guān)接口”(Colnnlon Gateway Interface),是一種基于瀏覽器的輸入并在Web服務(wù)器上運行的程序方法。
CGI的工作原理,首先瀏覽器通過(guò)HTML表單或超鏈接請求指上一個(gè)CGI應用程序的URL。服務(wù)器接收收到請求后,執行所指定的CGI應用程序。CGI應用程序執行所需要的操作(通常是基于瀏覽者輸入的內容),并把結果格式化為網(wǎng)絡(luò )服務(wù)器和瀏覽器能夠理解的文檔(通常是HTML網(wǎng)頁(yè))。最后,網(wǎng)絡(luò )服務(wù)器把結果返回到瀏覽器中。
3.1.2 嵌入式服務(wù)器boa server
boa Server是一種小型單任務(wù)嵌入式服務(wù)器,支持CGI,可執行代碼只有60 kB左右,體積小,速度快,安全性好,能夠滿(mǎn)足本項目的開(kāi)發(fā)。boa服務(wù)器需要交叉編譯為可在A(yíng)RM平臺下運行的程序。在pc環(huán)境下,運用交叉編譯器arm-linux-gcc對boa server進(jìn)行交叉編譯后,需要修改其配置文件boa.conf,關(guān)鍵配置有創(chuàng )建日志文件所在目錄,創(chuàng )建HTML文檔的主目錄,將靜態(tài)網(wǎng)頁(yè)存入該目錄下,創(chuàng )建CGI腳本所在目錄,將cgi的腳本存放在該目錄下。
評論