<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于嵌入式WEB的AllLightSYS系統的設計

基于嵌入式WEB的AllLightSYS系統的設計

作者: 時(shí)間:2007-08-22 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要HTTP協(xié)議是目前流行的Web技術(shù)的主要協(xié)議,是Web瀏覽器和Web服務(wù)器之間進(jìn)行通信的基礎。本文首先對從整體上進(jìn)行了簡(jiǎn)析,說(shuō)明了不同于通用型計算機的特點(diǎn)和系統應用的廣泛性。然后從協(xié)議的角度出發(fā)論述了HTTP協(xié)議。最后介紹了一個(gè)嵌入式Web技術(shù)的系統的與實(shí)現,重點(diǎn)闡述嵌入式服務(wù)器軟硬件部分的思想和體系架構,并對關(guān)鍵技術(shù)進(jìn)行了詳細的介紹。
關(guān)鍵詞:嵌入式Web服務(wù)器;HTTP協(xié)議;系統

1 引言

21世紀是嵌入式計算系統時(shí)代,人們日常生活和工作中所接觸的儀器與設備中,都將嵌入具有強大計算能力的微處理器。嵌入式系統是任意包含一個(gè)可編程計算機的設備,但是這個(gè)設備不是作為通用計算機而的。即嵌入式計算系統是嵌入在其他設備中,起智能控制作用的專(zhuān)用計算機系統。一臺通用個(gè)人電腦不能稱(chēng)為嵌入式計算系統,盡管有時(shí)會(huì )把它嵌入到某些設備中,而一臺包含有微處理器的打印機、數碼相機就可以算嵌入式計算系統。嵌入式計算系統已經(jīng)廣泛地應用到工業(yè)控制設備系統、信息家電、智能家庭設備等眾多領(lǐng)域中。隨著(zhù)因特網(wǎng)的迅速發(fā)展,Web應用程序的應用也越來(lái)越廣泛,它廣泛地用于各種監控系統、通信設備等領(lǐng)域。嵌入式系統日益與Internet技術(shù)和 WWW技術(shù)結合起來(lái)發(fā)展為嵌入式Web或嵌入式Internet技術(shù)。嵌入式設備與Internet的結合將代表著(zhù)嵌入式技術(shù)的真正未來(lái)。下文介紹一種嵌入式智能家庭遠程監控系統,它是在Microchip公司提供硬件的基礎,在功能實(shí)現上獨立完成了TCP/IP協(xié)議、HTTP協(xié)議的編寫(xiě),并在此基礎上加載了實(shí)際的應用。

2 HTTP協(xié)議

HTTP是超文本傳輸協(xié)議的縮寫(xiě),用于傳送WWW方式的數據。HTTP協(xié)議采用了請求/響應模型??蛻?hù)端向服務(wù)器發(fā)送一個(gè)請求,請求頭包含請求的方法、URI、協(xié)議版本、以及包含請求修飾符、客戶(hù)信息和內容類(lèi)似于MIME的消息結構。服務(wù)器以一個(gè)狀態(tài)行作為響應,相應的內容包括消息協(xié)議的版本,成功或者錯誤編碼加上包含服務(wù)器信息、實(shí)體元信息以及可能的實(shí)體內容。通常HTTP消息包括客戶(hù)機向服務(wù)器的請求消息和服務(wù)器向客戶(hù)機的響應消息。這兩種類(lèi)型的消息由一個(gè)起始行,一個(gè)或者多個(gè)頭域,一個(gè)頭域結束的空行和可選的消息體組成。在Internet上,HTTP通訊通常發(fā)生在TCP/IP連接之上。缺省端口是TCP80,但其它的端口也是可用的。但這并不預示著(zhù)HTTP協(xié)議在Internet或其它網(wǎng)絡(luò )的其它協(xié)議之上才能完成。HTTP只預示著(zhù)一個(gè)可靠的傳輸。HTTP協(xié)議的客戶(hù)/服務(wù)器模式的信息交換過(guò)程,它分四個(gè)過(guò)程,建立連接、發(fā)送請求信息、發(fā)送響應信息、關(guān)閉連接。WWW服務(wù)器運行時(shí),一直在TCP80端口監聽(tīng),等待連接的出現。

3 嵌入式遠程監控系統的設計與實(shí)現

31 功能概要

這里所提及的系統,它的芯片類(lèi)型是由Microchip公司提供的PIC18F6722。該機器是通過(guò)AllLight System和Internet相連,從而對住所內的電器進(jìn)行遠程控制的Interface單元。它是通過(guò)Modem,Rote連接到Internet,使用手機的瀏覽器訪(fǎng)問(wèn)AllLight系統來(lái)遠程控制空調、電燈等電器的開(kāi)和關(guān),只要在手機的瀏覽器上輸入該系統的URL后,在該登陸頁(yè)面上輸入遠程操作的AllLight的ControlUnit的編號,從而對登錄 I/F UNIT的用戶(hù)進(jìn)行認證,經(jīng)過(guò)認證的用戶(hù)可以繼續,認證不通過(guò)的轉到認證錯誤畫(huà)面。同時(shí)可以啟動(dòng)該系統的防盜監視功能時(shí),當有入侵者打開(kāi)被監視的電器設備時(shí),就可以向用戶(hù)手機(計算機終端)發(fā)送郵件進(jìn)行提醒。這里最多可以控制的AllLightControlUnit數是32臺。 (如圖)

在手機的WEB瀏覽器上輸入WEB I/F UNIT的URL后,為了防止非法登錄,一旦用戶(hù)登錄3次失敗以后,外部的登錄將失效,WEB I/F UNIT將通過(guò)HTTP協(xié)議向AllLight服務(wù)器發(fā)送非法登錄的警告信號。警告信息中包含了WEB I/F UNIT的MAC地址(為了和用戶(hù)的郵件地址關(guān)聯(lián))。AllLight專(zhuān)用服務(wù)器根據WEB I/F UNIT傳送警告信息中的MAC地址數據,將警告郵件發(fā)送到與MAC對應的用戶(hù)手機上。外部登錄的失效解除,是通過(guò)WEB I/F UNIT的外部登錄無(wú)效解除按鈕來(lái)實(shí)行的。

該系統還可以對和WEB I/F UNIT直接相連的AllLight Control Unit(Local Port連接)的回路進(jìn)行監視。監視回路和檢測狀態(tài)(ON/OFF)是通過(guò)在WEBPAGE設定的,根據設定的內容對回路監視。如果是檢測到防盜信息,向AllLight專(zhuān)用服務(wù)器發(fā)送警告信號,AllLight專(zhuān)用服務(wù)器向用戶(hù)發(fā)送郵件。防盜監視機能的開(kāi)和關(guān)是通過(guò)手機登陸頁(yè)面中的一個(gè)功能鍵來(lái)控制的。通過(guò)“外部接點(diǎn)”,可以對WEB I/F UNIT的防盜監視機能進(jìn)行設定。因為只能在屋內通過(guò)開(kāi)關(guān)解除防盜監視機能,回路狀態(tài)上的“有入侵者”通過(guò)回路狀態(tài)和設定的數據(監視回路,監視狀態(tài))是否一致來(lái)判斷?;芈凡灰恢碌那闆r下,在一定時(shí)間內,如果沒(méi)有解除“防盜監視機能”,判斷為“有入侵者”;如果在這段時(shí)間內,解除了“防盜監視機能”,判斷為“無(wú)入侵者”。上述的“一定時(shí)間”,是可以設定的數據。另外,當通過(guò)外部接點(diǎn)打開(kāi)“防盜監視機能”時(shí),為了避免屋內操作電器的誤判為“有入侵者”,設計了延時(shí)。

另外,在A(yíng)llLightSystem設計了和PC機的Interface。和計算機的Interface是通過(guò)Ethernet實(shí)現的。將AllLightSystem的通信協(xié)議數據轉換成計算機使用的通信協(xié)議。只能在Local內使用。計算機和WEB I/F UNIT是靠Socket進(jìn)行通信的。在WEB I/F UNIT中封裝Sokect的通信服務(wù),連接端口通過(guò)設定機能設定。計算機發(fā)出連接請求后,建立連接。連接建立后,如果Sokect存在,進(jìn)行以下處理。如果是從AllLightSystem發(fā)來(lái)數據包,收到的數據包加上TCP協(xié)議的包頭,向計算機發(fā)送。如果是從計算機發(fā)來(lái)的數據包,從收到的數據包(TCP數據包)中取出AllLight數據包,向AllLightSystem發(fā)送AllLight數據包。

通過(guò)外部接點(diǎn)(AllLight的配套機器:SX)的操作,在A(yíng)llLightSystem的管理下,可以將電燈,空調等電器全關(guān)閉。

3.2 軟件實(shí)現

l 軟件構成圖

l HTTP服務(wù)處理

接收從手機、計算機發(fā)送過(guò)來(lái)的HTTP數據包,通過(guò)HTTP服務(wù)將HTTP數據解析。將接收到的HTTP請求解析,根據請求的內容(WEBPAGE請求或CGI請求),發(fā)送WEBPAGE的內容或進(jìn)行CGI處理。生成客戶(hù)端請求的WEBPAGE,將該WEBPAGE送到客戶(hù)端。如果,設定模式的數據限制了該客戶(hù)端請求的WEBPAGE,將錯誤頁(yè)面發(fā)送到客戶(hù)端。如果外部登錄FLAG是有效的,進(jìn)行HTTP協(xié)議解析;如果外部登錄FLAG是無(wú)效的,為了禁止從Internet的登陸,檢查HTTP請求的IP協(xié)議的發(fā)包IP和WEB I/F UNIT的IP,子網(wǎng)掩碼是否是同一個(gè)網(wǎng)段,如果是同一個(gè)網(wǎng)段,進(jìn)行HTTP協(xié)議解析,不是同網(wǎng)段,返回錯誤頁(yè)面。根據HTTP請求的CGI種類(lèi)可以進(jìn)行各種請求,例如,進(jìn)行用戶(hù)認證處理是通過(guò)手機、計算機實(shí)行用戶(hù)認證,和登錄在WEB I/F UNIT上的內容進(jìn)行一致性檢查。(用戶(hù)ID,PASSWORD)如果一致則認證失敗計數=0,將“主菜單”畫(huà)面的HTTP數據發(fā)送到客戶(hù)端。如果不一致則認證失敗計數+1,“登錄失敗”畫(huà)面的HTTP數據發(fā)送到客戶(hù)端。如果連續登錄3次不一致,外部登錄無(wú)效。進(jìn)行防盜監視設定處理是將防盜監視機能FLAG設定成有效無(wú)效,控制SL的LED(有效:紅燈ON,無(wú)效:綠燈ON),更新“主菜單”畫(huà)面的防盜監視狀態(tài)。處理后,將“主菜單”畫(huà)面的HTTP送到客戶(hù)端。

這里需要說(shuō)明的是,由于WEB I/F UNIT的GlobalIP地址是動(dòng)態(tài)分配的,所以必須構建AllLight的專(zhuān)用服務(wù)器,并且在該服務(wù)器上將WEB I/F UNIT的GlobalIP登錄。GlobalIP的登錄需要定期執行,在A(yíng)llLight專(zhuān)用服務(wù)器上,是將WEB I/F UNIT的IP地址和MAC地址綁定的,因此,WEB I/F UNIT必須將自己的MAC地址通過(guò)HTTP協(xié)議傳送到AllLight專(zhuān)用服務(wù)器上。

l AllLight響應的接收處理

通過(guò)PIC的UART機能,接收AllLightSystem發(fā)出的數據包。只響應AllLight ControlUnit發(fā)出的數據。(其它數據忽略。)如果遠程操作機能FLAG,防盜監視機能FLAG有效,根據接收到的數據更新WEB I/F UNIT的回路狀態(tài)數據。如果PC I/F機能FLAG有效,由于發(fā)送的數據是有AllLight協(xié)議的信息,為了使接受的數據能夠進(jìn)行PC I/F處理,除去AllLight協(xié)議的報文頭。

l AllLight指令發(fā)送處理

遠程操作機能如果FLAG有效,實(shí)行有效回路檢查。有效回路設定數據Check,如果指令控制的回路遠程操作有效,實(shí)行指令發(fā)送處理。根據手機發(fā)出的要求,將“ON”,“OFF”指令轉換成AllLight協(xié)議數據發(fā)送。如果是通過(guò)PC I/F處理,去掉TCP數據的報頭,將取出的數據加上AllLight協(xié)議的報頭,發(fā)送數據包。

4 結論

本文介紹了一個(gè)對嵌入式Web技術(shù)的家庭遠程操作監控系統的設計與實(shí)現,主要實(shí)現通過(guò)手機或電腦對自己家用電器進(jìn)行監控和遠程操作,極大地保證了家庭的安全,也方便了人們的生活。本文作者的創(chuàng )新點(diǎn)就是:服務(wù)器的設計基于嵌入式WEB技術(shù),支持動(dòng)態(tài)IP,可以直接進(jìn)入以太網(wǎng),用戶(hù)無(wú)需使用專(zhuān)用的操作系統和軟件,可以直接通過(guò)瀏覽器進(jìn)行操作,通過(guò)HTTP與嵌入式WEB進(jìn)行通信。通過(guò)這次項目的完成,相信隨著(zhù)網(wǎng)絡(luò )監控技術(shù)的發(fā)展,基于嵌入式WEB的遠程操作系統必將有良好的發(fā)展前景。

參考文獻:

1、Terry H.Ess, T.H.E.Solution LLC,Greer,SC, Accessing Devices Using a Web Service”, Proceedings IEEE SoutheastCon 2002
2、嚴麗平,曾輝,宋凱,甘嵐.嵌入式智能家庭網(wǎng)關(guān)的研究與設計,微計算機信息,2005年,第12-2期,14-16頁(yè)
3、嵌入式系統設計原理及應用/符意德編著(zhù).―北京:清華大學(xué)出版社,2004.11
4、張曦煌,柴志雷.嵌入式Web服務(wù)器中CGI的特點(diǎn)及實(shí)現.[J]小型微型計算機系統.Vol24,No11(2003)2046-20482003
5、Rich Bowen,Ken Coar等著(zhù),羅四維等譯,Apache Server實(shí)用全書(shū),電子工業(yè)出版社,北京,2001.

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>