李紅 平頂山學院 信息工程學院 河南平頂山 467000
?
基于ARM9的環境監控系統在基站中的應用
李紅平頂山學院信息工程學院河南平頂山467000
【文章摘要】
針對日前基站環境監控系統的應用狀況,提出了一種在ARM嵌入式平臺上實現基站環境監控系統的方法。本文選用S3C2440為硬件控制核心,通過對嵌入式Linux操作系統的移植以及相關應用程序開發,實現了一種基于Boa服務器的基站環境監控系統。為今后嵌入式監控系統在基站中的應用打下了堅實的基礎。
【關鍵詞】
嵌入式Linux;S3C2440;系統移植;監控系統
本文的設計內容為基站環境監控系統,最終的目標是實現一種應用于基站的環境監控系統,該系統可以在服務器主頁上實時顯示基站的溫度、濕度、粉塵濃度,并且能夠通過主頁對基站各處的燈光進行控制。
本課題最終使用天祥電子推出的TX2440A開發板作為硬件設備,運用嵌入式Linux作為終端操作系統,本課題主要進行了終端操作系統的移植、應用程序驅動設計和移植以及服務器主網頁制作等工作,下面進行具體的介紹。
1.1U-boot的移植
U-boot作為通用的 Bootloader 可以方便地移植到其他的硬件平臺上。且此次研究使用較為穩定的1.1.6版本,且交叉編譯工具使用的是3.2.2版本,移植的具體操作步驟如下:
首先在對頂層Makefile文件進行修改后,由于主控芯片相似,故現將smdk2410的相關文件都更改為TX2440。然后進入頂層目錄,測試能否編譯成功 。最終還需對SDRAM的相關文件進行配置包括lowlevel_init.S、speed. c等。
1.2Linux內核的移植
Linux的內核移植步驟具體如下:⑴、修改Linux目錄頂層Makefile,指定系統硬件架構與交叉編譯器。
⑵、修改arch/arm/mach-s3c2440/ mach-smdk2440.c。⑶、配置內核:#make menuconfig <—進入圖形化配置界面,導入S3C24XX系列開發板板級支持包(BSP)。
在完成上述操作后,內核能正常在目標板上運行并完成最基本的功能。之后可根據相關需求增加相應功能。
1.3構建根文件系統
根文件系統是存放 Linux 系統所必須的各種工具軟件、庫文件、腳本、配置文件和其他特殊文件的地方, 也可以包括各種軟件包。根文件系統一般包括如下內容:1)基本的文件系統結構, 包含一些必須的目錄, 比如:⑴、/dev, /proc, /bin, /etc, /lib, /usr, /tmp。⑵、基本程序運行所需的庫函數, 如:Glibc/uC- libc。⑶、基本的系統配置文件。⑷、必要的設備支持文件。⑸、基本的應用程序等。
2.1數字溫度采集模塊驅動設計
該系統使用DS18B20溫度傳感器對基站機房內部溫度進行采集,用戶能夠通過以太網對目標板Boa服務器進行訪問,通過服務器主頁所顯示的遠端基站實時溫度。溫度傳感器DS18B20采集溫度的工作流程如圖1所示:

圖1 DS18B20采集溫度的工作流程
以上提及到的函數都是在DS18B20模塊的驅動中實現的。溫度傳感器在Linux操作系統dev目錄下,可調用函數fd=open(“/dev/ TX2440-dsl8b20”,0),打開Linux操作系統中的溫度傳感器DS18B20。其中,fd是傳感器設備開啟后返回的文件描述符。關閉溫度傳感器 DS18B20的函數為close(fd)。
2.2ADC數字轉換模塊驅動設計
該系統使用兩個可調阻值電阻RP1、RP2對基站機房內的濕度、粉塵濃度進行模擬采集。通過RP1、RP2電阻值的改變,模擬出濕度與粉塵濃度的實時變化。ADC工作流程圖如圖2所示:

圖2 ADC工作流程
在嵌入式Linux操作系統中,要打開ADC設備則需要調用fd = open("/dev/TX2440-adc",0)實現。使用ret = ioctl(fd, ch, 0)實現ADC轉換通道的選擇。其中,關閉ADC轉換的函數close(fd)。 2.3 創建嵌入式web服務器
Boa 是一款單任務的 HTTP 服務器,它會為 CGI 程序創建新的進程。同時它還具有自動生成目錄、自動解壓文件等功能, 因此, Boa具有很高的 HTTP 請求處理速度和效率, 在嵌入式系統中具有很高的應用價值。
Boa的具體移植步驟過程如下:⑴、使用4.1.2交叉編譯器編譯Boa服務器,并對Boa服務器的源碼所支持的構架進行設置,使其支持嵌入式平臺。⑵、 配置boa的相關目,主要是對Boa.conf文件進行相應的配置。
環境監控系統主頁面實現分為兩部分,第一部分包括登陸部分使用logic.c實現以及主頁面的實時監控部分,其中分別包括LED、ADC、溫度傳感器等程序來進行實現。第二部分是對頁面的制作,包括登陸界面以及主控界面的編寫。環境監控主頁面如圖3所示:

圖3 主頁面效果圖
本次課題基本完成最初的既定目標,完成了一個基于嵌入式的基站遠程監控系統。遠程客戶端可以通過以太網登陸嵌入式服務器。對遠端基站環境工況得到實時的監控。并對未來進一步完善應用于基站的環境工況數據系統,打下了一定技術基礎。
【參考文獻】
[1] 葉培順 嵌入式Linux在s3c2440上的移植 電子設計工程2011.8第15期
[2] 邵長彬 李洪亮 用 Busybox 制作嵌入式Linux 根文件系統 《微計算機信息》(嵌入式與 SOC)2007年第 23 卷 第 10-2 期
[3] 玉海超,王紅蕾.基于ARM的智能網絡家居系統的設計與實現[J]. 信息技術, 2012(4):162-165.
[4] 劉曉彤.嵌入式智能家居遠程監控系統的設計與實現[D].北京:交通大學碩士學位論文, 2009.
[5] 陸永健 王 萍 吳 佳 張永力 嵌入式 Web服務器 Boa 的移植及其應用 河海大學常州分校學報 2005.12第 19 卷 第 4 期.