亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于AISG協(xié)議的嵌入式Web服務器的設計

        2016-04-12 00:00:00劉現(xiàn)鋒鄧春健崔園
        現(xiàn)代電子技術(shù) 2016年2期

        摘 要: 針對電調(diào)傾角天線的遠程控制問題,提出了基于AISG協(xié)議的嵌入式Web服務器設計方案。綜合運用Boa 技術(shù)和CGI 技術(shù),在嵌入式設備上構(gòu)建出基于AISG協(xié)議的專用Web 服務器。分析了AISG協(xié)議通信原理,設計了基于AISG協(xié)議的嵌入式Web服務器的硬件電路,重點介紹Boa 服務器的構(gòu)建,因特網(wǎng)到AISG協(xié)議網(wǎng)關(guān)的實現(xiàn)。測試表明,該方案具有較好的穩(wěn)定性和可操作性,具有較大的參考價值。

        關(guān)鍵詞: 遠程電調(diào)傾角天線; BOA技術(shù); CGI技術(shù); AISG協(xié)議

        中圖分類號: TN911?34 文獻標識碼: A 文章編號: 1004?373X(2016)02?0069?04

        Design of embedded Web server based on AISG protocol

        LIU xianfeng1, DENG chunjian1, CUI yuan2

        (1. School of Computer Science Engineering , University of Electronic Science and Technology of China, Chengdu 611731, China;

        2. School of Computer Engineering ,Zhongshan Institute, University of Electronic Science and Technology of China, Zhongshan 528400, China)

        Abstract: Aiming at the remote control of electrical tilt antennas, a design scheme of embedded Web server based on AISG protocol is presented in this paper. The special Web server based on AISG protocol was built on the embedded equipment by using Boa and CGI technologies. The communication principle of AISG protocol is analyzed in this paper. The hardware circuit of the embedded Web server based on AISG protocol was designed. The establishment of Boa server and realization of gateway from Internet to AISG protocol are introduced emphatically. The testing results show that the method has high stability, operability, and great reference value.

        Keywords: remote electrical tilt antenna; BOA technology; CGI technology; AISG protocol

        0 引 言

        在電調(diào)現(xiàn)象控制系統(tǒng)中,遠程電調(diào)傾角天線的接口標準是AISG(Antenna Interface Standard Group)協(xié)議, AISG協(xié)議規(guī)定在物理層采用RS 485標準,用主從方式對設備進行遠程控制[1?3],這一特點只能使得控制系統(tǒng)維持在RS 485通信距離內(nèi)對有限的設備進行控制,不能夠?qū)崿F(xiàn)更遠距離和更多設備的控制。

        電調(diào)傾角天線設備網(wǎng)絡化是適應這一應用需求的理想解決方案,即通過因特網(wǎng)實現(xiàn)對天線設備的管理和監(jiān)控。該方案實現(xiàn)因特網(wǎng)與基于AISG協(xié)議的天線設備的連接就需要設計具有協(xié)議轉(zhuǎn)換功能的AISG協(xié)議網(wǎng)關(guān)。大量文獻表明,在現(xiàn)有研究成果[4?9]中提出這一具體方案的研究并不多,本文從構(gòu)建嵌入式Web服務器出發(fā),將AISG協(xié)議融入系統(tǒng),實現(xiàn)了具有協(xié)議轉(zhuǎn)換功能的AISG協(xié)議網(wǎng)關(guān)。應用結(jié)果表明,提出的方案具有較好的穩(wěn)定性和可操作性,具有較大的參考價值。

        1 系統(tǒng)分析

        系統(tǒng)結(jié)構(gòu)如圖1所示,系統(tǒng)核心是CCU,它通過RS 485與電調(diào)天線設備連接,系統(tǒng)可以安裝在基站內(nèi)部或者電調(diào)天線設備維護中心。要完成用戶通過瀏覽器實現(xiàn)對電調(diào)天線的遠程控制,系統(tǒng)包括Web服務器、AISG協(xié)議簇、操作系統(tǒng)和硬件等。通過因特網(wǎng)實現(xiàn)對設備的控制,因特網(wǎng)將控制命令傳輸?shù)教炀€設備中,必然涉及網(wǎng)絡控制協(xié)議到AISG協(xié)議的轉(zhuǎn)換。AISG協(xié)議體系非常龐大,在將AISG協(xié)議融入嵌入式Web服務器之前,首先要明確AISG協(xié)議的通信模型。

        AISG協(xié)議的通信模型如圖2所示。AISG協(xié)議分為物理層、數(shù)據(jù)鏈路層和應用層。在應用層和數(shù)據(jù)鏈路層可以看作是采取全雙工的通信方式,而在物理層,實際上采取的是半雙工的通信方式。AISG協(xié)議要求使用RS 485總線,采用主從方式對多個天線設備進行遠程控制,此外,AISG協(xié)議相當于OSI(Open System Interconnect)7層模式的簡化版本,包括第1,2,7層。第1層為總線、天線設備、接口等物理層,規(guī)定了嚴格的電氣特征參數(shù);第2層對數(shù)據(jù)鏈路層的傳輸數(shù)據(jù)封裝和功能進行了充分的描述;第7層對應用層的各種天線設備控制命令進行了詳細的說明,從而可提高靈活性和安全性。

        圖1 系統(tǒng)結(jié)構(gòu)圖

        圖2 AISG協(xié)議通信結(jié)構(gòu)圖

        根據(jù)AISG協(xié)議通信模型,要實現(xiàn)Web服務器到AISG協(xié)議網(wǎng)關(guān)的轉(zhuǎn)換,本文從Web服務器收發(fā)的各種命令信息在AISG協(xié)議第7層實現(xiàn)通信命令信息的轉(zhuǎn)化,進而實現(xiàn)Web服務器與電調(diào)傾角天線設備的通信。

        2 硬件組成

        根據(jù)第1節(jié)分析,要實現(xiàn)支持基于AISG協(xié)議的Web服務器需要操作系統(tǒng)和硬件的支持。在硬件上本文采用的控制核心是ARM CortexTM?A8。如圖3所示,基于AISG協(xié)議的嵌入式Web服務器的整個硬件組成分成6個核心模塊,分別是控制模塊、電源電路模塊、液晶顯示器模塊、RS 485通信模塊、因特網(wǎng)接口模塊和AISG天線接口模塊。

        接通電源情況下,電源電路模塊通過專用調(diào)壓芯片為天線提供12 V和24 V直流電壓,驅(qū)動總線上的各個天線驅(qū)動器,并為控制模塊提供工作電源。用戶通過Web服務器向控制模塊發(fā)送控制命令??刂颇K獲得Web服務器輸入的控制信息,通過RS 485通信模塊將控制信息發(fā)送到總線上的某個驅(qū)動器,并可以通過液晶顯示器模塊輸出控制信息??偩€上的該控制器接收到信息后也可以通過RS 485通信模塊與控制模塊通信,反饋天線的各種狀態(tài)信息,并通過因特網(wǎng)接口顯示給用戶。

        圖3 硬件組成原理圖

        3 嵌入式Web服務器

        嵌入式Web服務器是指將Web服務器引入到現(xiàn)場測試和控制設備中,在相應的硬件平臺和軟件系統(tǒng)的支持下,使傳統(tǒng)的測試和控制設備轉(zhuǎn)變?yōu)榫邆淞艘訲CP/IP為底層通信協(xié)議,Web技術(shù)為核心的基于互聯(lián)網(wǎng)的網(wǎng)絡測試和控制設備。為了有效實現(xiàn)遠程控制電調(diào)天線設備,在上述硬件條件下,本文在Linux系統(tǒng)平臺上采用動態(tài)的嵌入式Web服務器技術(shù)[10?12]。考慮到嵌入式設備資源一般都比較有限,嵌入式Web服務器的設計應盡可能地優(yōu)化,這里專門為嵌入式設備設計特殊用途的Boa服務器。本節(jié)將主要介紹嵌入式Web服務器的分析和Boa服務器的移植。

        3.1 嵌入式Web服務器分析

        在嵌入式Linux 下,主要有Httpd,Thttpd 和Boa等幾種Web 服務器。嵌入式服務器在功能上都能夠完成接收客戶端請求、分析請求、響應請求、向客戶端返回請求結(jié)果等任務。但是Httpd不支持認證和CGI(Common Gateway Interface),是一個靜態(tài)網(wǎng)頁服務器。Thttpd和Boa都支持認證和CGI,但是Thttpd運行時所用的資源較Boa大的多。Boa開放源代碼,性能高,速度快,對CGI的支持效果最佳。Boa是一個單任務的HTTP(HyperText Transfer Protocol)服務器,當Boa服務器接收到請求時,不是啟動多個服務進程并發(fā)處理多個請求,而是在一個進程內(nèi)依次處理所有請求,它產(chǎn)生獨立進程來處理CGI程序,因此占用系統(tǒng)資源比較少。基于Boa的以上優(yōu)勢,本系統(tǒng)采用Boa作為嵌入式服務器的平臺。

        3.2 嵌入式Boa服務器構(gòu)建

        選擇Boa服務器之后,本文將在符合硬件要求的開發(fā)板上實現(xiàn)Boa服務器的構(gòu)建。在嵌入式Linux系統(tǒng)下構(gòu)建Boa服務器的具體步驟如下:

        (1) 獲取Boa服務器源代碼

        從官方網(wǎng)站www.boa.org下載Boa的源代碼,然后導入到PC虛擬機下的Linux系統(tǒng)。執(zhí)行命令#tar?zxvf boa?0.94.13.tar.gz將原代碼解壓。進入解壓后的boa?0.94.13/src目錄,執(zhí)行命令#./configure生成Makefile文件。生成Makefile文件后,執(zhí)行命令#gedit Makefile修改Makefile文件,將文件中的CC=gcc修改為CC=arm?linux?gcc,CPP=gcc?E修改為CPP= arm?linux?gcc?E。然后運行make進行編譯,正常情況下在src目錄下會生成Boa可執(zhí)行文件。

        (2) boa.conf 文件配置

        Boa啟動時,需要用到一個配置文件boa.conf。該文件用于對Boa服務器相應的接口、服務器名稱、相關(guān)文件路徑等進行配置。

        該文件的具體修改如下:

        ① 設置用戶和用戶組,分別修改User nobody為 User 0 ,修改Group nogroup 為 Group 0。

        ② 設置日志文件的目錄:Boa日志分為2部分,Errorlog和AccessLog。根據(jù)自己的情況這里設置日志目錄:這里為/var/log/boa/error_log 和 /var/log/boa/access_log兩個文件。

        ③ 設置html網(wǎng)頁文件的目錄:這里設置為DocumentRoot /var/www。

        ④ 設置默認首頁: DirectoryIndex index.html。

        ⑤ 設置cgi可執(zhí)行腳本文件目錄:這里是將#ScriptAlias /cgi?bin/ /usr/lib/cgi?bin修改為:ScriptAlias /cgi?bin/ /var/www/cgi?bin。

        ⑥ ServerName的設置:這里去掉服務器名稱相關(guān)的注釋,即將#ServerName www.your.org.here/ 修改為:ServerName www.your.org.here/。

        (3) 將Boa服務器移植到開發(fā)板

        默認的根文件系統(tǒng)是只讀文件。在對Boa服務器進行移植前。要先根據(jù)boa.conf配置在文件系統(tǒng)中建立相關(guān)的目錄。然后將虛擬機Linux先編譯好的Boa文件,配置文件boa.conf、可執(zhí)行文件CGI和編輯好的網(wǎng)頁文件(包含一個)分別移植到開發(fā)板對應的目錄,具體做法如下:

        在開發(fā)板文件系統(tǒng)中,執(zhí)行命令#mkdir ?p /var/log/boa創(chuàng)建Boa目錄,執(zhí)行命令#mkdir ?p /var/www /var/www/cgi?bin創(chuàng)建cgi?bin目錄。接著拷貝PC虛擬機中的/etc/mime.types文件到開發(fā)板/etc目錄下,將可執(zhí)行文件Boa復制到/bin目錄下,將靜態(tài)網(wǎng)頁index.html等和img目錄放到/var/www目錄下。

        (4) 測試Boa服務器

        Boa服務器移植到開發(fā)板后,這里要對其構(gòu)建是否成功進行測試。具體測試方法如下:

        通過nfs掛載根文件系統(tǒng),執(zhí)行命令#ifconfig eth0 210.38.235.173設置開發(fā)板IP。運行Boa后在PC機瀏覽器上輸入開發(fā)板的IP。在瀏覽器中看到靜態(tài)網(wǎng)頁index.html,表示Boa服務器已經(jīng)移植成功。

        4 基于AISG協(xié)議的網(wǎng)關(guān)的實現(xiàn)

        上節(jié)實現(xiàn)了嵌入式Boa服務器的構(gòu)建,本節(jié)將描述Web服務器與AISG協(xié)議網(wǎng)關(guān)的實現(xiàn)。為了實現(xiàn)基于AISG協(xié)議電調(diào)天線控制系統(tǒng)的特殊Boa服務器,使用CGI技術(shù)來實現(xiàn)與電調(diào)天線設備的通信。CGI是與Web服務器之間的接口標準,是在CGI程序和Web服務器之間傳遞信息的規(guī)程。CGI規(guī)范允許Web服務器執(zhí)行外部程序,并將它們的輸出發(fā)送給Web瀏覽器,CGI將Web的一組簡單的靜態(tài)超媒體文檔變成一個完整的新的交互式媒體。CGI工作流程如圖4所示。

        圖4 Web服務器工作原理圖

        因特網(wǎng)與AISG協(xié)議網(wǎng)關(guān)的的實現(xiàn)采取調(diào)用CGIC(ANSI C library for CGI Programming)庫的方式。CGIC是C語言CGI庫函數(shù),用于編寫CGI程序。CGIC 主要完成以下功能:對數(shù)據(jù)進行語法分析, 接收以 GET 和 PSOT 兩種方式發(fā)送的數(shù)據(jù) ,把 FORM 中的不同域連接成連續(xù)的串,為檢索 FORM 數(shù)據(jù)而提供字符串、整數(shù)、浮點以及單項和多項選擇功能為數(shù)字字段提供邊界檢測,把CGI環(huán)境變量加載到非空的C 串中為調(diào)試而捕捉 CGI 狀態(tài)。

        接下來說明CGIC的安裝、測試安裝和基于AISG協(xié)議的CGIC的編程實現(xiàn):

        (1) CGIC的安裝使用

        從官方網(wǎng)址http://www.boutell.com/cgic/下載了CGIC庫之后,執(zhí)行命令#tar?zxvf cgic206.tar.gz解開壓縮包,里面有大約10個文件,分別是頭文件 cgic.h,CGIC的源代碼文件cgic.c,用于調(diào)試CGI程序的工具capture.c,CGIC庫的官方提供的一個CGI程序例子和Makefile文件等。

        (2) 測試CGI安裝

        在編寫自己的CGI程序前,先用解壓包的測試程序測試安裝是否成功,進而避免出現(xiàn)配置錯誤。測試方法是直接在安裝解壓包內(nèi)執(zhí)行make命令。目錄中會生成一個cgictest.cgi的可執(zhí)行程序。移植到開發(fā)板cgic?bin目錄下,在命令終端執(zhí)行命令:#chmod 777 cgictest.cgi改變可執(zhí)行程序權(quán)限。在PC瀏覽器中輸入開發(fā)板IP地址比如:210.38.235.173/cgi?bin/cgictest.cgi,正常情況下一個網(wǎng)頁就會展示出來,這表示CGI程序已經(jīng)運行起來。

        (3) 基于AISG協(xié)議的CGIC的編程實現(xiàn)

        對于CCGI編寫的CGI程序,都是先從cgic.c中的代碼進入,在完成了一系列必要操作后才會調(diào)用代碼,即從cgiMain函數(shù)中進入?;贏ISG協(xié)議的CGIC的編程實現(xiàn),必須編寫同時符合cgictes.c格式的文件。根據(jù)AISG協(xié)議的三層通信模型,首先實現(xiàn)AISG三層協(xié)議棧并移植協(xié)議棧到CCGI解壓包內(nèi);然后修改解壓包內(nèi)Makeflie文件,使AISG協(xié)議棧源文件能被編譯成靜態(tài)鏈接庫備用和修改交叉編譯環(huán)境;然后再編寫cgictest.c文件完成動態(tài)網(wǎng)頁設計同時根據(jù)需求對AISG的EP函數(shù)進行調(diào)用;最后通過make編譯成可執(zhí)行文件,按上節(jié)步驟移植到開發(fā)板。用戶通過瀏覽器向服務器發(fā)出請求后,服務器會根據(jù)請求執(zhí)行相應的CCGI可執(zhí)行程序,進而完成網(wǎng)絡數(shù)據(jù)到AISG協(xié)議數(shù)據(jù)的轉(zhuǎn)換,從而實現(xiàn)數(shù)據(jù)協(xié)議網(wǎng)關(guān)的轉(zhuǎn)換,進而實現(xiàn)對電調(diào)傾角天線的遠程控制。

        5 基于AISG協(xié)議的Web服務器系統(tǒng)測試

        以設備掃描實現(xiàn)為例[8],在CCGI壓縮包中把掃描測試程序改成cgictest.c,執(zhí)行make命令會生成一個cgictest.cgi可執(zhí)行程序。將生成的可執(zhí)行文件和對應的測試網(wǎng)頁移植到開發(fā)板上對應的位置。在PC機瀏覽器上輸入開發(fā)板的IP,然后進入設備掃描頁面,如圖5所示。

        圖5 掃描幀發(fā)送數(shù)據(jù)網(wǎng)頁圖

        點擊網(wǎng)頁中發(fā)送掃描控制按鈕。正常情況下Web服務器會執(zhí)行cgictest.cgi程序,生成掃描幀的反饋消息頁面并返回給瀏覽器供用戶瀏覽,結(jié)果如圖6所示。由圖6可以看出經(jīng)過Web服務器發(fā)送掃描請求后,收到來自電調(diào)傾角天線返回的設備相關(guān)信息,返回的消息包括遠程電調(diào)天線的惟一標示符,供應商代碼和模式類型等信息。經(jīng)測試證明網(wǎng)關(guān)轉(zhuǎn)換已經(jīng)實現(xiàn),符合AISG協(xié)議的嵌入式Boa服務器安裝成功。應用結(jié)果表明,該方案具有較好的穩(wěn)定性和可操作性,具有較大的參考價值。

        圖6 掃描幀返回數(shù)據(jù)網(wǎng)頁圖

        6 結(jié) 語

        隨著嵌入式技術(shù),互聯(lián)網(wǎng)技術(shù)和通信技術(shù)的發(fā)展,基于AISG協(xié)議的電調(diào)天線設備通過因特網(wǎng)實現(xiàn)遠程控制是發(fā)展的必然趨勢。本文是在嵌入式設備上實現(xiàn)基于AISG協(xié)議的Boa服務器。

        通過論述該實現(xiàn)方式的必要性和可行性,進行系統(tǒng)分析和講述符合AISG協(xié)議的Boa服務器的硬件組成。在硬件組成的基礎上實現(xiàn)嵌入式Boa服務器的構(gòu)建,最后講述了使用CGI技術(shù)對網(wǎng)關(guān)的實現(xiàn)。該服務器的構(gòu)建實現(xiàn)了對電調(diào)傾角天線的真正遠程控制,對基于AISG協(xié)議的電調(diào)天線控制的遠程控制有著十分重要的應用價值。

        參考文獻

        [1] 呂燚,劉偉.基于AISG 2.0協(xié)議的電調(diào)天線遠程控制單元的設計實現(xiàn)[J].電子技術(shù)應用,2009(11):33?35.

        [2] The Antenna Interface Standards Group. Control interface for antenna line devices: AISG V2.0 [S]. England: AISG Ltd. 2006.

        [3] 高書超,李英祥,周賢至,等.電調(diào)天線嵌入式控制系統(tǒng)AISG協(xié)議棧分析與實現(xiàn)[J].成都信息工程學院學報,2013,28(3):217?222.

        [4] 郭恒哲.基于AISG協(xié)議的手持電調(diào)天線控制器的設計[J].電子設計應用,2008(3):79?82.

        [5] 呂燚,李文生.電調(diào)天線遠程控制單元中AISG協(xié)議的實現(xiàn)[J].儀器儀表用戶,2008,15(4):128?129.

        [6] Lü Yi, LI Wensheng. The realization of RET control unit based on AISG2.0 [J]. Instrument users, 2008, 15(4): 128?129.

        [7] LI Wensheng, Lü Yi, ZHOU Yanming. The design of RET control system based on AISG 2.0 [C]// Proceedings of 2010 International Conference on Computational Intelligence and Software Engineering. Wuhan: IEEE, 2010: 1?4.

        [8] 李文生,羅仁澤,蔡銘昌,等.基于掩碼推進的電調(diào)天線設備樹形掃描算法[J].計算機應用,2011,31(5):1435?1438.

        [9] 劉寶明,雷虎,尹樹華.便攜式數(shù)據(jù)傳送終端設計[J].電訊技術(shù),2015,55(1):99?102.

        [10] 李海東,鄭毅.基于Linux系統(tǒng)嵌入式Web的研究[J].通信世界,2014(10):28?29.

        [11] 黃紅艷,侯彤璞.基于Linux的嵌入式Web服務器設計與應用[J].計算機與數(shù)字工程,2010,38(4):157?159.

        [12] 趙會娟.基于ARM9的嵌入式Linux開發(fā)平臺構(gòu)建與Boa的實現(xiàn)[D].成都:西南交通大學,2008.

        [13] 吳松,葛海平,繆金迪.遙控電調(diào)傾角天線及其在網(wǎng)絡優(yōu)化中的應用[J].電信科學,2007,23(4):91?94.

        [14] 張永.基于ARM9的嵌入式Linux開發(fā)平臺構(gòu)建與應用[D].天津:天津師范大學,2006.

        综合无码一区二区三区四区五区| 男女av免费视频网站| 亚洲精品国产第一区二区| 久久亚洲精品成人av无码网站| 成人h视频在线观看| 免费一区啪啪视频| 国产美女三级视频网站| 亚洲女同性恋第二区av| 男女男精品视频网站免费看| 乱码丰满人妻一二三区| 国产人与禽zoz0性伦| 国内久久婷婷精品人双人| 性感人妻一区二区三区| 成人水蜜桃视频在线观看| 本道天堂成在人线av无码免费 | 日韩中文字幕版区一区二区三区| 亚洲av无码一区二区三区天堂古代 | 国产人妻精品一区二区三区不卡| 国产视频最新| 少妇激情一区二区三区| 国产在线一区二区av| 久久久久人妻精品一区三寸| 免费无码毛片一区二区三区a片| 中文字幕久久精品波多野结百度| 国产精品久久熟女吞精| 日本高清乱码中文字幕| 一本色道久久综合无码人妻| 欧美性xxxx狂欢老少配| 无码AV无码免费一区二区| va精品人妻一区二区三区| 久久久亚洲av波多野结衣| 亚洲色www成人永久网址| 男性一插就想射是因为啥| 亚洲精品中文字幕熟女| 亚洲成在人线视av| 野外少妇愉情中文字幕| 成人无码无遮挡很H在线播放| 中文字幕亚洲综合久久久| 国产人妖乱国产精品人妖| 久久夜色精品国产噜噜亚洲av| 国产目拍亚洲精品一区二区|