国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于嵌入式Web服務器尋星儀監(jiān)控系統(tǒng)的設計

2017-05-02 05:39
計算機技術與發(fā)展 2017年4期
關鍵詞:PC機瀏覽器嵌入式

汪 鵬

(南京郵電大學 通信與信息工程學院,江蘇 南京 210000)

基于嵌入式Web服務器尋星儀監(jiān)控系統(tǒng)的設計

汪 鵬

(南京郵電大學 通信與信息工程學院,江蘇 南京 210000)

現(xiàn)代衛(wèi)星通信和計算機技術發(fā)展迅猛,衛(wèi)星通信業(yè)務的需求也越來越大。嵌入式系統(tǒng)是現(xiàn)代通信網(wǎng)絡技術的重要平臺,越來越多的基于嵌入式Web服務器的監(jiān)控系統(tǒng)被開發(fā)。嵌入式Web服務器監(jiān)控系統(tǒng)具有許多優(yōu)點,如:結構簡單、功耗低等。把嵌入式設備接入互聯(lián)網(wǎng)可以實現(xiàn)方便、實時地通過網(wǎng)絡監(jiān)控設備的工作狀態(tài),再將數(shù)據(jù)以直觀、形象的網(wǎng)頁方式顯示在PC、PDA、Phone等設備上,不需要專門的應用軟件。針對衛(wèi)星尋星儀監(jiān)控系統(tǒng)所使用的ARM9系列芯片,在控制板硬件移植了Linux操作系統(tǒng),在監(jiān)控系統(tǒng)內(nèi)設置合適的應用層Web服務器,并通過Ajax+CGI+Boa的方式實現(xiàn)以網(wǎng)頁監(jiān)控衛(wèi)星尋星儀。實驗結果表明,用戶在終端瀏覽器上輸入網(wǎng)址進行訪問,就可以對便攜式衛(wèi)星尋星儀進行實時、方便的監(jiān)控。

便攜式衛(wèi)星尋星儀;嵌入式Web服務器;B/S架構;Boa

0 引 言

隨著互聯(lián)網(wǎng)[1]的不斷發(fā)展和廣泛應用,人們獲取信息的主要方式也變成了網(wǎng)頁形式,而今許多國內(nèi)外廠商研制的衛(wèi)星尋星儀產(chǎn)品,大多數(shù)都是采用C/S(客戶端/服務器)模式,需要定制專門的監(jiān)控軟件。因此,越來越多的客戶希望通過網(wǎng)頁的方式進行操作,而這種方式正是通常所說的B/S(瀏覽器/服務器)模式。客戶通過終端上瀏覽器,比如:IE、Google、360等。在地址欄輸入URL(統(tǒng)一資源定位符)后連上服務器,提供Web服務的服務器就會將存儲在其上的資源發(fā)送給瀏覽器,瀏覽器將資源以網(wǎng)頁的形式展現(xiàn)出來。

在現(xiàn)代社會中,這種Web服務器[2]模式和美觀的網(wǎng)頁設計技術也在嵌入式系統(tǒng)中得到了廣泛應用,用于對其他設備的管理、監(jiān)視和控制[3]。為此,結合目前廣泛使用的ARM芯片,提出一種衛(wèi)星尋星儀基于嵌入式Web的實現(xiàn)方案。它采用嵌入式Linux操作系統(tǒng),源代碼開放,應用豐富,內(nèi)嵌嵌入式Web服務器,可實現(xiàn)對衛(wèi)星尋星儀狀態(tài)信號的采集、控制。

1 系統(tǒng)平臺

系統(tǒng)為一個攜式衛(wèi)星尋星儀監(jiān)控系統(tǒng)的Web監(jiān)控系統(tǒng),包括Web服務器、數(shù)據(jù)處理單元、傳輸網(wǎng)絡、數(shù)據(jù)庫、監(jiān)控終端等幾個功能模塊[4]。

監(jiān)控終端采用PC或者手機等移動設備,設備上的瀏覽器工作在TCP/IP協(xié)議的應用層,使用Http協(xié)議進行通信。它可以向服務器發(fā)送監(jiān)控命令或者從服務器獲得衛(wèi)星尋星儀的狀態(tài)。數(shù)據(jù)傳輸部分可以采用兩種方式:如果監(jiān)控終端為PC機,將用一根網(wǎng)線將服務器和PC機連接起來,實現(xiàn)點對點通信;如果采用的是手持移動終端,可以利用無線射頻模塊組建的局域網(wǎng),通過Wifi通信來實現(xiàn)數(shù)據(jù)傳輸。數(shù)據(jù)處理模塊采用Atmel AT91SaM9G45微處理器[5],其主要功能是運行伺服控制程序和CGI(Commom Gateway Interface)程序。數(shù)據(jù)庫主要用來存儲對星的參數(shù)。

該系統(tǒng)采用SQLite輕型數(shù)據(jù)庫[6],CGI程序利用它提供的API函數(shù)完成數(shù)據(jù)庫的查詢、插入和修改等常用功能。圖1為系統(tǒng)的工作流程。

圖1 系統(tǒng)工作流程

2 Web服務器的選擇

一般而言,嵌入式設備上的資源都是有限的,并且不能同時處理很多用戶的請求,所以對于嵌入式設備有專門的嵌入式Web服務器。這些服務器自身占用存儲空間都很小并且運行時所占用的空間也非常小,十分適合嵌入式的應用場合。常見的嵌入式Web服務器[7]有:Lighttpd、Thttpd、minihttpd、Shttpd、appweb、mathopd和Boa等。

Lighttpd是由德國人領導的開源Web服務器軟件,其根本目的是提供一個專門針對高性能網(wǎng)站,安全、快速、靈活并且兼容性好的Web Server環(huán)境,并且還具有模塊豐富、內(nèi)存開銷低、CPU占用率低、效能好等特點。Lighttpd是輕量級的Web Server中較為優(yōu)秀的一個,它支持FastCGI,Auth,輸出壓縮,URL重寫,Alias,CGI等功能。

Thttpd是ACME公司設計的一款開源的比較精巧的Web服務器,是一款小巧、簡單、快速、易移植和安全的HTTP服務器;Thttpd也是一個非常小巧的輕量級Web Server,僅僅400 k左右,非常簡單,對于并發(fā)請求不是用fork()來派生子進程處理,而是采用多路復用(Multiplex)技術去實現(xiàn),因此效能很好。此外,Thttpd全面支持HTTP 1.1協(xié)議(RFC 2616)、HTTP基本驗證(RFC2617)、CGI 1.1及大部分的SSI(Server Side Include)功能。

Shttpd也是一個開源的輕量級的Web Server,具有比Thttpd更豐富的功能特性,支持CGI,cookie,SSL,MD5認證,還可以嵌入(embedded)到現(xiàn)有的軟件里,并且不需要配置文件。

Boa[8]是一種非常小巧的Web服務器,其代碼量非常少,可執(zhí)行代碼只有60 kB左右,是一種單任務Web服務器。Boa只能依次完成用戶的請求,而不會fork出新的進程來處理并發(fā)連接請求。支持身份認證和動態(tài)網(wǎng)頁CGI,具有穩(wěn)定,適用性強,功能全面,安全性高等特點。

考慮到嵌入式系統(tǒng)資源和運行能力的限制,該系統(tǒng)采用Boa服務器[9]作為Web服務器。

3 Web服務器Boa的工作流程

Boa工作流程圖如圖2所示。Boa從到達的套接字獲得HTTP[10]請求(存儲在一個request結構中),并將其保存到隊列中。首先,get_request()函數(shù)將從套接字獲取的數(shù)據(jù)全部保存到request→header_line,然后調用process_request()函數(shù)來處理隊列中的每一個請求。根據(jù)request結構體中status所表示的不同狀態(tài) 進行不同處理。如果這個請求符合HTTP協(xié)議,則會調用process_option_line()函數(shù),將一些頭部信息填寫到request結構體中,完成CGI環(huán)境變量的設置,隨后process_header_end()函數(shù)對用戶進行驗證。如果驗證通過,則判斷request結構體中的is_cgi,為非0時是CGI程序,調用init_cgi()函數(shù)進行處理,為0時是靜態(tài)頁面,則調用init_get()函數(shù)進行處理。

圖2 Boa的工作流程圖

4 網(wǎng)頁設計技術簡介

客戶機和服務器之間交互的載體是網(wǎng)頁,網(wǎng)頁中不但有文字,也有圖片,甚至還能將視頻文件嵌入網(wǎng)頁中,網(wǎng)頁能提高用戶體驗。

系統(tǒng)采用的主要網(wǎng)頁設計技術包括HTML、CGI程序、Javascript腳本語言和CSS樣式等,而這些技術綜合起來就是人們常用的Ajax技術。

CGI又叫通用網(wǎng)關接口[11],它是組成WWW技術的一種,運行在服務器端,為HTML文件在服務器端和客戶端提供了更多的交互,使網(wǎng)頁具有了交互功能。CGI僅僅是一種規(guī)范,可以采用多種編程語言來編寫CGI程序,如:C、C++、Perl、VB和C Shell等。該系統(tǒng)采用C語言進行CGI編程。

CGI的處理過程[12]:首先客戶端把用戶請求發(fā)給服務器;服務器接收到客戶端請求后,將它交給相應的CGI程序處理;接著CGI程序把處理結果傳給服務器;最后服務器把結果轉發(fā)給客戶端。

Ajax[13]不僅僅是一種特定的客戶端技術,還是一種設計技巧。對于傳統(tǒng)的網(wǎng)頁(沒有使用Ajax)如果需要更新內(nèi)容,必需重載整個網(wǎng)頁;而采用Ajax的網(wǎng)頁可以只向服務器發(fā)送并取回必需的數(shù)據(jù),通過在后臺與服務器進行少量的數(shù)據(jù)交換,實現(xiàn)網(wǎng)頁的異步更新,即在不刷新整個頁面的前提下更新數(shù)據(jù),允許瀏覽器與服務器進行通信而無需刷新頁面,這使得Web應用程序能夠更加迅捷地回應用戶動作。Ajax與服務器的交互過程一般只需要三步即可完成:首先Javascript腳本創(chuàng)建一個XMLHttpRequest對象;然后利用XMLHttpRequest對象的send()和open()方法向服務器端的CGI程序發(fā)送請求;最后利用XMLHttpRequest對象的responseText或responseXML屬性來獲得服務器的響應。

CSS[14]技術主要針對頁面進行布局,并設計出整潔、美觀的網(wǎng)頁,提供給用戶。

5 頁面設計流程圖

攜式衛(wèi)星尋星儀的頁面總體設計流程如圖3所示。主要包括四個網(wǎng)頁,即登錄頁面、監(jiān)控頁面、參數(shù)設置頁面、數(shù)據(jù)庫頁面。

圖3 頁面總體設計流程圖

6 測試Web服務器Boa

靜態(tài)網(wǎng)頁測試,測試環(huán)境的相關說明。編寫測試代碼index.html,并放在指定文件夾/var/www/html/。用戶使用網(wǎng)線將一臺PC機和便攜式衛(wèi)星尋星儀控制板互聯(lián)。必須確保試驗用PC機和控制板處于同一個網(wǎng)段,所以設置PC機的IP地址為10.10.150.55,子網(wǎng)掩碼設置為255.255.255.0,便攜式衛(wèi)星尋星儀的IP地址設置為10.10.150.180。最后打開PC機的瀏覽器輸入以下網(wǎng)址:http://10.10.150.180,看是否出現(xiàn)需要的網(wǎng)頁,若出現(xiàn)如圖4所示的網(wǎng)頁,則Boa服務器的移植與配置正確。

index.html代碼如下:

圖4 結果驗證圖

7 結束語

為了實現(xiàn)以網(wǎng)頁方式監(jiān)控衛(wèi)星尋星儀,系統(tǒng)采用 Ajax+CGI+Boa的方式完成監(jiān)控。當網(wǎng)頁觸發(fā)事件后,Ajax向服務器發(fā)送數(shù)據(jù)并取回必需的數(shù)據(jù),通過在后臺與服務器中的CGI程序進行少量的數(shù)據(jù)交換,實現(xiàn)網(wǎng)頁的異步更新,即實現(xiàn)對衛(wèi)星尋星儀便捷、實時的監(jiān)控。所建立的嵌入式平臺系統(tǒng)對基于嵌入式Web服務器監(jiān)控系統(tǒng)的開發(fā)有一定的借鑒作用。

[1] 王 興.Linux網(wǎng)絡服務器應用教程[M].北京:清華大學出版社,2007.

[2] 徐春艷.嵌入式WEB服務器的研究與實現(xiàn)[D].南京:南京理工大學,2008.

[3] 謝新民,丁 峰.自適應控制系統(tǒng)[M].北京:清華大學出版社,2006.

[4] 吳士力.嵌入式Linux應用開發(fā)全程解與實戰(zhàn)[M].北京:機械工業(yè)出版社,2010.

[5] INTELSAT SSOG 210.Earthstation verification tests[S].[s.l.]:[s.n.],2000.

[6] Agilent Technologies.User’s/programmer’s reference[M].USA:Agilent,2006.

[7] 呂 鑫.基于ARM和Linux嵌入式Web服務器的設計[D].大慶:大慶石油學院,2008.

[8] 張 勤.Linux服務器配置全程實錄[M].北京:人民郵電出版社,2010.

[9] 吳玉成,侯良偉,冷建筑.嵌入式Linux下Web服務器的設計與實現(xiàn)[J].數(shù)據(jù)通信,2008(6):43-46.

[10] 王麗娜.衛(wèi)星通信系統(tǒng)[M].北京:國防工業(yè)出版社,2006.

[11] Stevens W R,Rago S A.Advanced programming in the UNIX environment[M].北京:人民郵電出版社,2006.

[12] Helstrom C W.Statistical theory of signal detection[M].Oxford:Pergamon Press,1996.

[13] Kraus J D,Marhefka R J.Antennas:for all applications[M].New York:New McGraw-Hill,2001.

[14] Bridge W M.Cross coupling in a five horn monopulse tracking system[J].IEEE Transactions on Antennas and Propaqation,1972,20(4):436-442.

Design of Satellite Finder Monitoring and Control System with Embedded Web Server

WANG Peng

(College of Telecommunications and Information Engineering,Nanjing University of Posts and Telecommunications,Nanjing 210000,China)

Modern satellite communications and computer technology have developed rapidly,so the demands for satellite communications business are becoming larger and larger.Embedded system is an important platform of modern communication network technology,and more monitoring systems based on embedded Web server have been developed which are endowed with diverse advantages,such as simple structure,low power consumption and so on.The embedded devices connected to internet can make real-time monitoring operation of relevant equipment easy convenient by which data can be displayed with PC,PDA,mobile phone and other instruments without special operation software.Linux operating system is embedded on ARM9 chip of the satellite finder monitoring system investigated.The appropriate application layer Web server is installed in the monitoring system,by which satellite finder can be monitored on Web pages via satellite Ajax+CGI+Boa manner.Experimental results indicate that monitoring function can be achieved conveniently and easily after input of URL on browser to access portable satellite finder.

portable satellite star finder;embedded Web server;B/S architecture;Boa

2016-05-23

2016-09-08

時間:2017-03-07

國家自然科學基金資助項目(61271234)

汪 鵬(1990-),男,碩士研究生,研究方向為衛(wèi)星通信技術;導師:謝繼東,博導,研究方向為衛(wèi)星通信技術。

http://kns.cnki.net/kcms/detail/61.1450.TP.20170307.0921.044.html

TP302

A

1673-629X(2017)04-0150-03

10.3969/j.issn.1673-629X.2017.04.033

猜你喜歡
PC機瀏覽器嵌入式
Focal&Naim同框發(fā)布1000系列嵌入式揚聲器及全新Uniti Atmos流媒體一體機
微軟發(fā)布新Edge瀏覽器預覽版下載換裝Chrome內(nèi)核
反瀏覽器指紋追蹤
TS系列紅外傳感器在嵌入式控制系統(tǒng)中的應用
嵌入式PLC的設計與研究
嵌入式單片機在電機控制系統(tǒng)中的應用探討
基于WiFi技術的智能手機雙控視頻小車
VC.NET下實現(xiàn)dsPIC單片機與PC機的通信
單片機與PC機串行數(shù)據(jù)通信的工程實踐
基于單片機與PC機的電氣量采集系統(tǒng)設計