0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

通過利用Web服務(wù)器實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)

電子設(shè)計(jì) ? 來源:郭婷 ? 作者:電子設(shè)計(jì) ? 2019-05-14 08:07 ? 次閱讀

隨著計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)通信技術(shù)的飛速發(fā)展,人們?nèi)粘I詈?a target="_blank">工業(yè)生產(chǎn)等方面對(duì)基于以太網(wǎng)進(jìn)行遠(yuǎn)程通信和控制的要求日益強(qiáng)烈。如今嵌入式技術(shù)發(fā)展迅速,嵌入式處理器的性能不斷提高,基于嵌入式的控制系統(tǒng)得到廣泛應(yīng)用??紤]到嵌入式系統(tǒng)高性能、低成本、低功耗等諸多特點(diǎn),這里通過32位嵌入式處理器和以太網(wǎng)控制器構(gòu)建了嵌入式Web服務(wù)器,實(shí)現(xiàn)設(shè)備遠(yuǎn)程控制。

ARMAdvanced RISC Machines)是微處理器行業(yè)的一家知名企業(yè),設(shè)計(jì)了大量高性能、廉價(jià)、耗能低的RISC處理器、相關(guān)技術(shù)及軟件。技術(shù)具有性能高、成本低和能耗省的特點(diǎn)。適用于多種領(lǐng)域,比如嵌入控制、消費(fèi)/教育類多媒體、DSP和移動(dòng)式應(yīng)用等。這次遠(yuǎn)程控制系統(tǒng)有ARM公司設(shè)計(jì)的。

1 系統(tǒng)總體設(shè)計(jì)

本文采用基于嵌入式Web服務(wù)器的遠(yuǎn)程控制。系統(tǒng)直接在普通32位微處理器上實(shí)現(xiàn)嵌入式服務(wù)器,通過嵌入式Web服務(wù)器將被控制設(shè)備接入Intemet,用戶可以通過標(biāo)準(zhǔn)瀏覽器對(duì)被控設(shè)備實(shí)現(xiàn)遠(yuǎn)程控制。

2 遠(yuǎn)程控制系統(tǒng)的硬件結(jié)構(gòu)

基于嵌入式Web服務(wù)器的遠(yuǎn)程控制系統(tǒng)主要由嵌入式Web服務(wù)器以及被控制的現(xiàn)場設(shè)備組成。服務(wù)器通過交換機(jī)或調(diào)制解調(diào)器與Intemet互聯(lián)網(wǎng)連接,用戶端只需在已聯(lián)網(wǎng)的計(jì)算機(jī)上通過網(wǎng)頁瀏覽器訪問該遠(yuǎn)程服務(wù)器的IP地址,即可使用該服務(wù)器并實(shí)現(xiàn)對(duì)設(shè)備的遠(yuǎn)程控制。遠(yuǎn)程控制系統(tǒng)的結(jié)構(gòu)如圖1所示。

通過利用Web服務(wù)器實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)

該嵌入式web服務(wù)器采用三星公司的S3C44B0X器件作為整個(gè)系統(tǒng)的處理器,該器件是以ARM7TDMI為內(nèi)核的RISC處理器,是一種性價(jià)比較高的嵌入式32位處理器。系統(tǒng)的Flash選用AMD公司的容量為2MB,NOR Flash型AM29LVl60存儲(chǔ)器,SDRAM選用現(xiàn)代公司的容量為8 MB的HY57V641620HGT存儲(chǔ)器。圖2為該硬件系統(tǒng)設(shè)計(jì)框圖。

通過利用Web服務(wù)器實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)

3 遠(yuǎn)程控制系統(tǒng)的軟件結(jié)構(gòu)

系統(tǒng)軟件主要包括操作系統(tǒng)的選取、網(wǎng)頁服務(wù)器的配置、網(wǎng)頁的編輯、驅(qū)動(dòng)程序和服務(wù)器應(yīng)用程序的配置移植,軟件層次如圖3所示。

由于該處理器不具有MMU(存儲(chǔ)器管理單元)且需要完備以太網(wǎng)協(xié)議構(gòu)建網(wǎng)頁服務(wù)器,故選擇開源的嵌入式μClinux操作系統(tǒng)。其中功能最簡單的是httpd.不支持認(rèn)證、CGI。Thttpd和BOA服務(wù)器都支持認(rèn)證、CGI(Common Gateway Interface,公共網(wǎng)關(guān)接口)等,但由于Thttpd服務(wù)器需要的資源比BOA大得多,故該系統(tǒng)最終采用BOA服務(wù)器作為遠(yuǎn)程控制的網(wǎng)頁服務(wù)器。

3.1 BOA服務(wù)器的配置

BOA是一個(gè)單任務(wù)的http服務(wù)器,安全性高、源代碼開放、性能高。在μClinux的發(fā)行版中,在主目錄下的user目錄里,有BOA服務(wù)器的目錄,在example子目錄中,有2個(gè)文件boa.conf和mime.types,這里需要修改配置boa.conf文件,它是BOA服務(wù)器的參數(shù)配置文件,配置如下:

通過利用Web服務(wù)器實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)

另外該系統(tǒng)將src目錄下的defines.h頭文件SERVER_ROOT宏定義設(shè)置為home目錄,即服務(wù)器目錄,配置操作系統(tǒng)時(shí),boa.conf和mime-.typs都必須復(fù)制到此服務(wù)器目錄下,從而完成服務(wù)器的配置。

3.2 服務(wù)器與客戶端動(dòng)態(tài)交互的實(shí)現(xiàn)

在動(dòng)態(tài)網(wǎng)頁交互設(shè)計(jì)中,主要有CGI(Common Gateway Interface),PHP(Personal Home Page),ASP(Active Server Page)和JSP(Java Server Page)4種技術(shù)。CGI程序的編寫可以采用任何編程語言,只要這種語言具有標(biāo)準(zhǔn)輸入、輸出和環(huán)境變量。由于C語言具有較強(qiáng)的平臺(tái)無關(guān)性,因此該系統(tǒng)采用C語言來編寫CGI程序。

動(dòng)態(tài)網(wǎng)頁是通過網(wǎng)頁內(nèi)嵌表單的方式進(jìn)行信息傳遞的。該系統(tǒng)首先采用網(wǎng)頁編輯軟件Dreamweaver編輯登陸界面index.html及遠(yuǎn)程控制界面remote.html。在編輯表單選項(xiàng)時(shí)由action屬性指向相應(yīng)CGI程序路徑,由method屬性決定提交數(shù)據(jù)的方式是GET方式還是POST方式??蛻舳藗魉偷椒?wù)器的數(shù)據(jù)采用URL編碼的方式傳送,例如參數(shù)采用name=value的形式,每對(duì)之間用”&”連接。特殊字符用”%”加一個(gè)十六進(jìn)制數(shù)字編碼,輸入的空格用”+”來表示等,所以服務(wù)器端的CGI在接收數(shù)據(jù)時(shí)需經(jīng)過解碼操作。

環(huán)境變量在CGI程序設(shè)計(jì)中很重要,客戶端和服務(wù)器端都將信息存儲(chǔ)在某些變量中,環(huán)境變量有3類:與服務(wù)器相關(guān)的環(huán)境變量、與客戶端相關(guān)的環(huán)境變量以及與請(qǐng)求相關(guān)的環(huán)境變量。其中最常用的環(huán)境變量有REQUEST_METHOD記錄請(qǐng)求方式,QUERY_STRING存儲(chǔ)傳遞的數(shù)據(jù),CO-NTENT_LENGTH傳遞數(shù)據(jù)的長度。

編程時(shí)先創(chuàng)建數(shù)據(jù)結(jié)構(gòu)entry,用來記錄要使用的變量和變量名。

通過利用Web服務(wù)器實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)

當(dāng)采用POST方法傳遞信息時(shí),可使用如下代碼獲得傳輸?shù)臄?shù)據(jù):

通過利用Web服務(wù)器實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)

通過利用Web服務(wù)器實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)

3.3 嵌入式Web服務(wù)器體系結(jié)構(gòu)

嵌入式Web服務(wù)器的體系結(jié)構(gòu)如圖1所示。其中,客戶端和Web服務(wù)器之間的通信協(xié)議采用HTTP 1.1;嵌人式實(shí)時(shí)多任務(wù)操作系統(tǒng)提供TCP/IP協(xié)議支持;Web服務(wù)器與數(shù)據(jù)庫服務(wù)器間的交互接口為CGI(Common Gateway Interface)。

客戶端使用Web瀏覽器與Web服務(wù)器進(jìn)行通信。Web服務(wù)器中使用HTTP協(xié)議,HTTP(超文本傳輸協(xié)議)為標(biāo)準(zhǔn)WWW傳輸協(xié)議,使用可靠的TCP連接,通常采用端口80。這些數(shù)據(jù)可來自靜態(tài)主頁和文件,也可以根據(jù)請(qǐng)求動(dòng)態(tài)產(chǎn)生

3.4 驅(qū)動(dòng)程序和應(yīng)用程序設(shè)計(jì)

設(shè)備驅(qū)動(dòng)程序是是一種可以使計(jì)算機(jī)和設(shè)備通信的特殊程序,可以說相當(dāng)于硬件的接口,操作系統(tǒng)只能通過這個(gè)接口,才能控制硬件設(shè)備的工作,假如某設(shè)備的驅(qū)動(dòng)程序未能正確安裝,便不能正常工作,它為應(yīng)用程序屏蔽了硬件的細(xì)節(jié),在應(yīng)用程序看來,硬件設(shè)備已抽象為設(shè)備文件,可以像操作普通文件一樣對(duì)硬件設(shè)備進(jìn)行操作。

編寫CGI應(yīng)用程序時(shí),只需打開相應(yīng)的設(shè)備文件,就可通過調(diào)用驅(qū)動(dòng)中的命令控制接口實(shí)現(xiàn)對(duì)端口的控制。

通過利用Web服務(wù)器實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)

然后可通過ioctl系統(tǒng)調(diào)用實(shí)現(xiàn)對(duì)端口的控制,程序結(jié)束時(shí)再調(diào)用close(fd)關(guān)閉設(shè)備。

在配置BOA服務(wù)器時(shí),這里設(shè)定CGI程序的目錄是/home/www/cgi-bin/目錄,使用交叉編譯工具生成CGI程序并放入此目錄下,然后對(duì)整個(gè)操作系統(tǒng)內(nèi)核進(jìn)行配置裁剪,最終生成的系統(tǒng)鏡像中就可以包含編寫的程序功能,實(shí)現(xiàn)對(duì)設(shè)備的遠(yuǎn)程控制。圖4為遠(yuǎn)程控制界面。

通過利用Web服務(wù)器實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)

通過測試該遠(yuǎn)程控制系統(tǒng),實(shí)現(xiàn)了對(duì)外部設(shè)備的遠(yuǎn)程控制,只需對(duì)CGI程序進(jìn)行適當(dāng)修改即可實(shí)現(xiàn)較復(fù)雜系統(tǒng)的控制。

4 結(jié)束語

隨著計(jì)算機(jī)、通信、嵌入式和互聯(lián)網(wǎng)等技術(shù)的飛速發(fā)展,傳統(tǒng)基于現(xiàn)場總線的控制系統(tǒng)已不能滿足遠(yuǎn)程控制的要求,而基于以太網(wǎng)的控制系統(tǒng)正逐漸成為遠(yuǎn)程控制的首選。本文利用ARM內(nèi)核的32位處理器及以太網(wǎng)控制器搭建硬件平臺(tái),移植了μClinux嵌入式操作系統(tǒng),配置了BOA服務(wù)器,通過編寫設(shè)備驅(qū)動(dòng)程序和CGI程序,實(shí)現(xiàn)了遠(yuǎn)程控制系統(tǒng),具有廣闊的應(yīng)用前景。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 控制系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    6642

    瀏覽量

    110724
  • Web
    Web
    +關(guān)注

    關(guān)注

    2

    文章

    1266

    瀏覽量

    69570
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    12

    文章

    9255

    瀏覽量

    85754
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于web遠(yuǎn)程控制系統(tǒng)

    基于web遠(yuǎn)程控制系統(tǒng),我最近就在做這個(gè)東西,所以拿出來跟大家分享,有興趣的可以看看呀!{:soso_e100:}
    發(fā)表于 10-07 18:27

    通過Web服務(wù)器查看VI程序遠(yuǎn)程前面板

    通過Web服務(wù)器查看和控制遠(yuǎn)程前面板(1)功能描述:  連接到LabVIEW內(nèi)置的Web
    發(fā)表于 09-30 14:11

    Web服務(wù)器怎么提高系統(tǒng)性能?

    進(jìn)行遠(yuǎn)程監(jiān)測、遠(yuǎn)程控制遠(yuǎn)程維護(hù)和管理。內(nèi)嵌于設(shè)備的Web服務(wù)器可以提供統(tǒng)一的基于瀏覽方式的操
    發(fā)表于 08-02 08:19

    基于Linux的WEB服務(wù)器增加了哪些功能?

    嵌入式 WEB服務(wù)器的主要設(shè)計(jì)思想就是將嵌入式系統(tǒng)WEB技術(shù)結(jié)合起來,將 WEB技術(shù)引入到現(xiàn)場測量和
    發(fā)表于 09-03 06:13

    基于ZigBee無線組網(wǎng)技術(shù)和嵌入式Web服務(wù)器

    監(jiān)測廚房煙霧濃度是否超標(biāo),人體紅外感應(yīng)模塊實(shí)現(xiàn)家庭安防。并且通過紅外技術(shù)控制空調(diào)和加濕器或熱水的打開或關(guān)閉,從而實(shí)現(xiàn)對(duì)溫度和濕度的調(diào)節(jié),對(duì)
    發(fā)表于 04-27 07:48

    怎么實(shí)現(xiàn)基于Internet/Intranet的錄像機(jī)遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)?

    本文以錄像機(jī)為目標(biāo),設(shè)計(jì)一個(gè)基于Internet/Intranet的錄像機(jī)遠(yuǎn)程控制系統(tǒng)。設(shè)計(jì)以MOTOROLA的8位微控制芯片為核心的控制器,通過RS232與基于PC機(jī)的
    發(fā)表于 06-01 06:35

    基于Web服務(wù)器遠(yuǎn)程控制系統(tǒng)該如何去實(shí)現(xiàn)?

    一種基于嵌入式Web服務(wù)器遠(yuǎn)程控制系統(tǒng)實(shí)現(xiàn)
    發(fā)表于 06-03 06:28

    基于串口服務(wù)器的變頻遠(yuǎn)程控制系統(tǒng)

    基于串口服務(wù)器的變頻遠(yuǎn)程控制系統(tǒng).pdf維普資訊2006年第5期·控制與檢測 ·文章編號(hào) :1001—2265(2006)()5—0043—03基于串13
    發(fā)表于 09-03 07:22

    如何實(shí)現(xiàn)對(duì)嵌入式WEB服務(wù)器系統(tǒng)控制設(shè)計(jì)

    簡單設(shè)計(jì)。本設(shè)計(jì)利用ARM 自帶的WEB服務(wù)器技術(shù),來實(shí)現(xiàn)對(duì)嵌入式WEB服務(wù)器
    發(fā)表于 11-09 08:47

    基于InternetIntranet 的錄像機(jī)遠(yuǎn)程控制系統(tǒng)設(shè)

    介紹一種基于Internet/Intranet 的錄像機(jī)遠(yuǎn)程控制系統(tǒng)系統(tǒng)主要由錄像機(jī)(VCR)、VCR控制器、Web 服務(wù)器以及
    發(fā)表于 05-13 16:08 ?29次下載

    基于因特網(wǎng)的智能遠(yuǎn)程控制系統(tǒng)的設(shè)計(jì)

    本文首先介紹了基于因特網(wǎng)的智能遠(yuǎn)程控制系統(tǒng)的體系結(jié)構(gòu)和使用于系統(tǒng)中的網(wǎng)絡(luò)數(shù)據(jù)庫關(guān)鍵技術(shù),對(duì)多用戶同時(shí)操作問題、Web 客戶端/服務(wù)器端動(dòng)態(tài)交互的實(shí)現(xiàn)
    發(fā)表于 05-26 10:42 ?13次下載

    基于通信控制器遠(yuǎn)程控制系統(tǒng)的設(shè)計(jì)

    本文設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)基于通信控制器遠(yuǎn)程控制系統(tǒng),該系統(tǒng)通過使用中央空調(diào)機(jī)組控制器、GSM/GPRS 通信
    發(fā)表于 06-01 10:43 ?20次下載

    基于因特網(wǎng)的智能遠(yuǎn)程控制系統(tǒng)的設(shè)計(jì)

    本文首先介紹了基于因特網(wǎng)的智能遠(yuǎn)程控制系統(tǒng)的體系結(jié)構(gòu)和使用于系統(tǒng)中的網(wǎng)絡(luò)數(shù)據(jù)庫關(guān)鍵技術(shù),對(duì)多用戶同時(shí)操作問題、Web 客戶端/服務(wù)器端動(dòng)態(tài)交互的實(shí)現(xiàn)
    發(fā)表于 06-19 10:20 ?13次下載

    智能電表遠(yuǎn)程控制系統(tǒng)

     智能電表遠(yuǎn)程控制系統(tǒng)是指基于云服務(wù)平臺(tái)和物聯(lián)網(wǎng)技術(shù),對(duì)智能電表進(jìn)行遠(yuǎn)程監(jiān)控和控制系統(tǒng)。該系統(tǒng)通過
    發(fā)表于 04-07 15:27 ?7402次閱讀

    基于嵌入式Web服務(wù)器遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《基于嵌入式Web服務(wù)器遠(yuǎn)程控制系統(tǒng)設(shè)計(jì).pdf》資料免費(fèi)下載
    發(fā)表于 10-18 11:17 ?0次下載
    基于嵌入式<b class='flag-5'>Web</b><b class='flag-5'>服務(wù)器</b>的<b class='flag-5'>遠(yuǎn)程控制系統(tǒng)</b>設(shè)計(jì)