家庭網(wǎng)關(guān)是將計(jì)算機(jī)互聯(lián)網(wǎng)與自主構(gòu)建的家庭網(wǎng)絡(luò)連接在一起的智能網(wǎng)絡(luò)。它能夠?qū)崿F(xiàn)家庭終端的統(tǒng)一智能化管理,用戶只需通過(guò)GUI界面進(jìn)行簡(jiǎn)單的操作就能實(shí)時(shí)調(diào)取家電的工作狀態(tài)信息,并能控制家庭終端;同時(shí)智能家庭網(wǎng)關(guān)還有自動(dòng)控制功能,能夠處理一些無(wú)需人工操作的工作。
項(xiàng)目研究目的如下
要實(shí)現(xiàn)的基本功能為:
通過(guò)外部網(wǎng)訪問(wèn)家庭網(wǎng)關(guān),可以遠(yuǎn)程控制家庭終端設(shè)備。
智能家庭網(wǎng)關(guān)有一定的自主處理能力,可以自動(dòng)控制一些無(wú)需人工干預(yù)的終端設(shè)備的操作。
預(yù)期在項(xiàng)目之后可擴(kuò)展實(shí)現(xiàn)的功能為:
制作成功簡(jiǎn)易低成本的智能家庭網(wǎng)關(guān)產(chǎn)品,網(wǎng)關(guān)包括嵌入式操作系統(tǒng),界面友好,可以作為所有外部網(wǎng)接入到家庭網(wǎng)的物理接口。
智能家庭網(wǎng)關(guān)為家庭內(nèi)部的設(shè)備分配內(nèi)部專用的唯一的IP地址,并且具有路由功能和網(wǎng)絡(luò)地址翻譯(NAT)功能。
智能家庭網(wǎng)關(guān)可以在家庭網(wǎng)絡(luò)內(nèi)部傳輸音頻、視頻流,支持視頻點(diǎn)播(VOD),視頻共享等,營(yíng)造友好舒適的多媒體環(huán)境。
加入無(wú)線控制模塊,各種終端設(shè)備無(wú)需使用傳輸線與網(wǎng)關(guān)相連,而是采用無(wú)線控制,增強(qiáng)靈活性。
項(xiàng)目研究意義
家庭網(wǎng)關(guān)在家庭網(wǎng)絡(luò)中扮演著重要角色,借助現(xiàn)有的計(jì)算機(jī)網(wǎng)絡(luò)技術(shù),將家庭內(nèi)部各種家電和設(shè)備連網(wǎng),通過(guò)網(wǎng)絡(luò)為人們提供各種豐富、多樣化、個(gè)性化、方便、舒適、安全和高效的服務(wù)。在家電控制方面,用戶可以根據(jù)自己的需求來(lái)配置家電,從而方便地對(duì)家電進(jìn)行遠(yuǎn)程控制;在視頻監(jiān)控方面,通過(guò)遠(yuǎn)程調(diào)取安裝在家里的監(jiān)控設(shè)備所拍攝到的視頻信息,用戶可以及時(shí)清楚地了解家里的情況,一旦出現(xiàn)異常情況,及時(shí)報(bào)警;在多媒體接入方面,通過(guò)家庭數(shù)字機(jī)頂盒,用戶不僅可以觀看到高清的數(shù)字節(jié)目,還可以互動(dòng)點(diǎn)播節(jié)目和瀏覽網(wǎng)頁(yè),真正實(shí)現(xiàn)多媒體在家庭中的應(yīng)用;在信息服務(wù)方面,通過(guò)將智能家庭網(wǎng)絡(luò)與其他網(wǎng)絡(luò)系統(tǒng)互連,用戶可以及時(shí)得到諸如商品售后、健康等方面的服務(wù)。家庭網(wǎng)關(guān)已成為人們?nèi)粘I钪胁豢扇鄙俚囊徊糠郑虼耍瑢?duì)低成本、安全性好、可靠性高的家庭網(wǎng)關(guān)進(jìn)行研究,具有重要的意義。
項(xiàng)目應(yīng)用前景和學(xué)術(shù)價(jià)值
隨著人們生活質(zhì)量的提高,家庭內(nèi)部的電子產(chǎn)品越來(lái)越多,采用智能家庭網(wǎng)關(guān)進(jìn)行集中控制管理,將給人們的生活帶來(lái)極大的方便。因此,家庭網(wǎng)關(guān)的應(yīng)用將會(huì)是大量的。以前家庭內(nèi)部出現(xiàn)的小型網(wǎng)絡(luò)路由器的功能有限,其應(yīng)用是在家庭內(nèi)多個(gè)PC同時(shí)共享一個(gè)寬帶網(wǎng)絡(luò)接入。它只能控制PC終端,對(duì)于其他如冰箱、空調(diào)等家電就無(wú)能為力了。智能家庭網(wǎng)關(guān)則不僅能夠提供寬帶接入,而且可以控制管理家庭內(nèi)部的各種電器。例如,在網(wǎng)絡(luò)應(yīng)用方面,家中的小孩可以接入Web來(lái)學(xué)習(xí)學(xué)校的課程,同時(shí)另外一個(gè)家庭成員可以進(jìn)行網(wǎng)上購(gòu)物。多個(gè)人可以同時(shí)進(jìn)行網(wǎng)絡(luò)操作,而不需要等待其他人完成操作;在多媒體應(yīng)用方面,家庭網(wǎng)關(guān)不僅管理高速I(mǎi)nternet的接入,而且對(duì)日益豐富的多媒體應(yīng)用,如視頻點(diǎn)播(VOD),視頻共享,混合視頻和音頻信息流的可視電話,以及其它交互形式的娛樂(lè)服務(wù),如網(wǎng)絡(luò)游戲等提供更加人性化的管理服務(wù);此外,在家庭電子終端的控制管理方面,家庭網(wǎng)關(guān)可以智能化控制家電,視頻監(jiān)控家庭情況,與小區(qū)物業(yè)聯(lián)網(wǎng)便于接收即時(shí)服務(wù)信息,智能化抄寫(xiě)電表、水表等,為日常生活提供極大的便利。因此,其應(yīng)用前景將是十分廣泛的。
智能家庭網(wǎng)關(guān)的研究在我國(guó)正在逐步走向成熟,但相對(duì)國(guó)外來(lái)說(shuō),在這方面還是比較落后。具體體現(xiàn)在技術(shù)設(shè)備落后,制造成本較高。目前很多家庭網(wǎng)關(guān)產(chǎn)品是采用PC機(jī)作為服務(wù)器或以單片機(jī)作為核心芯片的技術(shù)方案,功耗及成本較高,而且靈活性不夠。通過(guò)設(shè)計(jì)低成本、安全和可靠的智能家庭網(wǎng)關(guān),參與目前家庭網(wǎng)關(guān)的研究發(fā)展討論,熟悉和掌握UDP協(xié)議內(nèi)容、數(shù)據(jù)的加解密算法、網(wǎng)絡(luò)地址轉(zhuǎn)化(NAT)以及GUI用戶交互式界面的設(shè)計(jì),真正理解整個(gè)家庭網(wǎng)關(guān)的工作流程,也可以為其他設(shè)計(jì)者及廠商提供一些技術(shù)借鑒。
現(xiàn)有研究基礎(chǔ)、條件
項(xiàng)目研發(fā)的技術(shù)基礎(chǔ):
①UDP協(xié)議是主要傳輸協(xié)議之一。采用改進(jìn)的UDP協(xié)議,一定程度上提高數(shù)據(jù)傳輸可靠性,滿足智能家庭網(wǎng)關(guān)的傳輸需要;
②數(shù)據(jù)加解密算法采用RC4算法,可以有效提高數(shù)據(jù)信息的安全性;
③運(yùn)用網(wǎng)絡(luò)地址轉(zhuǎn)化(NAT)可以將內(nèi)網(wǎng)地址與外網(wǎng)地址進(jìn)行轉(zhuǎn)化,使得家庭網(wǎng)關(guān)成為連接計(jì)算機(jī)互聯(lián)網(wǎng)和家庭內(nèi)部網(wǎng)絡(luò)的橋梁;
④GUI界面的設(shè)計(jì),使得用戶操作簡(jiǎn)單、明了、方便。
(2)項(xiàng)目團(tuán)隊(duì)的工作基礎(chǔ)
①C、C++語(yǔ)言的熟練掌握,有一定嵌入式的開(kāi)發(fā)經(jīng)驗(yàn);
②在UDP傳輸協(xié)議方面有一定的基礎(chǔ)。
研究目標(biāo)
在項(xiàng)目預(yù)期時(shí)限內(nèi),完成智能家庭網(wǎng)關(guān)基本功能的設(shè)計(jì)及測(cè)試,即能夠通過(guò)外部網(wǎng)發(fā)送控制信息,管理家庭內(nèi)部終端設(shè)備;同時(shí)完成家庭網(wǎng)關(guān)的自動(dòng)控制功能,即完成不需人工控制管理的應(yīng)用,自動(dòng)協(xié)調(diào)家庭電器設(shè)備的開(kāi)、關(guān)及其他調(diào)節(jié)。
在完成基本功能后,如有時(shí)間,則繼續(xù)完成擴(kuò)展功能,包括路由地址轉(zhuǎn)換,操作系統(tǒng)移植,視頻點(diǎn)播及共享以及實(shí)現(xiàn)無(wú)線控制。
要解決的關(guān)鍵問(wèn)題是要對(duì)每個(gè)家庭終端設(shè)備分配唯一的地址,并實(shí)現(xiàn)路由功能,以便使用網(wǎng)關(guān)控制不同的設(shè)備。
擬采取的研究方法、技術(shù)路線及可行性分析
縱觀國(guó)內(nèi)外在智能家庭網(wǎng)關(guān)領(lǐng)域的發(fā)展,有三種技術(shù)方案代表著智能網(wǎng)關(guān)不同發(fā)展時(shí)期的技術(shù)特點(diǎn):PC架構(gòu)的智能控制系統(tǒng)出現(xiàn)在中國(guó)智能家庭網(wǎng)關(guān)的萌芽階段,基本上停留在向使用者展示智能家庭網(wǎng)關(guān)的概念階段,實(shí)用性并不強(qiáng),屬于第一代;目前很多國(guó)內(nèi)外智能家庭網(wǎng)關(guān)廠商研制的機(jī)遇單片機(jī)架構(gòu)的智能控制系統(tǒng)在實(shí)用性、易用性和專業(yè)性方面有了很大程度上的提高,屬于第二代;而基于嵌入式系統(tǒng)的家庭智能系統(tǒng)在國(guó)內(nèi)的發(fā)展也處于初級(jí)階段,隨著嵌入式技術(shù)更加廣泛的應(yīng)用,成本逐步降低,中國(guó)的智能家庭網(wǎng)關(guān)最終將走向嵌入式。
本設(shè)計(jì)采用基于改進(jìn)UDP協(xié)議的智能家庭網(wǎng)關(guān)技術(shù)方案,采用單片機(jī)PIC來(lái)控制以太網(wǎng)模塊,無(wú)需操作系統(tǒng)支持,以適合項(xiàng)目預(yù)期及低成本、低功耗、實(shí)時(shí)性好、擴(kuò)展性強(qiáng)的要求。
項(xiàng)目基本功能的實(shí)現(xiàn)是在兩個(gè)主要控制芯片PIC單片機(jī)和Ethernet網(wǎng)絡(luò)接口,采用改進(jìn)的UDP協(xié)議,完成大部分的控制信息的傳輸。
項(xiàng)目硬件設(shè)計(jì)
單片機(jī)PIC主要負(fù)責(zé)對(duì)Etnernet網(wǎng)絡(luò)接口進(jìn)行讀寫(xiě)及復(fù)位控制。Ethernet是一個(gè)高度集成的以太網(wǎng)芯片,能簡(jiǎn)單的實(shí)現(xiàn)即插即用并兼容NE2000、掉電等特性。它將封裝好的以太網(wǎng)幀進(jìn)行處理并通過(guò)網(wǎng)絡(luò)接口和雙絞線進(jìn)行傳輸。Ethernet有復(fù)位及讀寫(xiě)控制管腳,需要通過(guò)相應(yīng)的地址端口和數(shù)據(jù)端口對(duì)Ethernet中的寄存器進(jìn)行配置,實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)的發(fā)送和接收。在實(shí)際硬件連接中,將P0.8-P0.12作為地址端口,P0.16-P0.23作為數(shù)據(jù)端口,P0.7作為復(fù)位引腳對(duì)RTL8019進(jìn)行復(fù)位,P0.13作為讀引腳控制以太網(wǎng)模塊從相應(yīng)數(shù)據(jù)端口讀數(shù)據(jù),P0.14作為寫(xiě)引腳控制以太網(wǎng)模塊往相應(yīng)數(shù)據(jù)端口寫(xiě)數(shù)據(jù)。
項(xiàng)目軟件設(shè)計(jì)
軟件的設(shè)計(jì)是在Agilent公司的ADS1.2開(kāi)發(fā)環(huán)境下進(jìn)行的。最重要的部分就是完成UDP包的發(fā)送、處理及接收。由于采用UDP數(shù)據(jù)包的內(nèi)容作為控制信息,因此需要對(duì)數(shù)據(jù)包的數(shù)據(jù)部分進(jìn)行重新定義。定義如下:
其中,操作類型占用1個(gè)字節(jié),00h代表初始化建立握手請(qǐng)求,01h代表初始化建立握手應(yīng)答,02h代表發(fā)送請(qǐng)求,03h代表發(fā)送響應(yīng),其他值默認(rèn)保留。操作對(duì)象占用2個(gè)字節(jié),在服務(wù)器端,它接收到的UDP數(shù)據(jù)報(bào)內(nèi)容中的操作對(duì)象即為對(duì)應(yīng)客戶端的端口號(hào);在客戶端,它接收到的UDP數(shù)據(jù)報(bào)內(nèi)容中的操作對(duì)象則為自身的端口號(hào)。操作內(nèi)容即為具體的實(shí)現(xiàn)操作,占用40個(gè)字節(jié)。
針對(duì)數(shù)據(jù)內(nèi)容的安全性問(wèn)題,采用了RC4算法對(duì)數(shù)據(jù)內(nèi)容進(jìn)行加密解密。它是一個(gè)可變密鑰長(zhǎng)度、面向字節(jié)操作的流密碼,其基本思想為:首先初始化一個(gè)長(zhǎng)度為256的S數(shù)組:依次對(duì)S[0],S[1],…,S[255]賦0到255的8位數(shù)值,輸入可變長(zhǎng)度密鑰,根據(jù)密鑰內(nèi)容及長(zhǎng)度建立臨時(shí)數(shù)組T。然后根據(jù)數(shù)組T的內(nèi)容置換S數(shù)組;最后將S數(shù)組按一定的方式轉(zhuǎn)化成密鑰流q。在發(fā)送端,依據(jù)密鑰流q對(duì)原始數(shù)據(jù)“data”進(jìn)行異或,即加密。在接收端,輸入與發(fā)送端一樣的密鑰,運(yùn)用和發(fā)送端同樣的算法生成相同的密鑰流對(duì)已加密的數(shù)據(jù)“datam”進(jìn)行異或,即完成數(shù)據(jù)解密。
數(shù)據(jù)包的封裝過(guò)程如圖所示。層(1)表示UDP數(shù)據(jù)報(bào)。需要給每個(gè)終端設(shè)定不同的端口號(hào)作為源端口號(hào),目標(biāo)端口號(hào)都固定為服務(wù)器的端口號(hào),消息長(zhǎng)度為數(shù)據(jù)長(zhǎng)度加UDP報(bào)頭長(zhǎng)度,校驗(yàn)和是偽IP頭和從UDP頭和數(shù)據(jù)得來(lái)的校驗(yàn)之和,數(shù)據(jù)為加密后的數(shù)據(jù)。層(2)表示為UDP數(shù)據(jù)報(bào)經(jīng)過(guò)一次封裝后轉(zhuǎn)化成IP數(shù)據(jù)報(bào),其中需要為每個(gè)終端分配一個(gè)IP地址,協(xié)議類型設(shè)置為UDP協(xié)議,長(zhǎng)度為IP報(bào)頭長(zhǎng)度加UDP數(shù)據(jù)報(bào)長(zhǎng)度。層(3)表示為IP數(shù)據(jù)報(bào)再經(jīng)過(guò)最后一次封裝轉(zhuǎn)化為以太網(wǎng)幀。
數(shù)據(jù)包的解析過(guò)程是封裝的逆過(guò)程,系統(tǒng)接收到以太網(wǎng)數(shù)據(jù)幀后,首先檢驗(yàn)它的校驗(yàn)和,如果校驗(yàn)和出現(xiàn)錯(cuò)誤就丟棄該數(shù)據(jù)包,命令發(fā)送方重新發(fā)送。否則繼續(xù)判斷數(shù)據(jù)包的類型,確定是IP數(shù)據(jù)報(bào)后,根據(jù)數(shù)據(jù)報(bào)的格式進(jìn)行進(jìn)一步檢驗(yàn),最后再經(jīng)過(guò)一次拆包獲取UDP數(shù)據(jù)報(bào)的內(nèi)容來(lái)決定下一步的工作,并發(fā)送一個(gè)確認(rèn)數(shù)據(jù)包。
項(xiàng)目的軟件整體設(shè)計(jì)流程如圖4所示。其中,發(fā)送端應(yīng)用層數(shù)據(jù)處理部分是從終端采集的數(shù)據(jù)按規(guī)定的數(shù)據(jù)格式進(jìn)行處理后再加密。數(shù)據(jù)封裝部分定義了put_ether(),put_ip(),put_udp()三個(gè)函數(shù),功能分別是封裝以太網(wǎng)幀、IP數(shù)據(jù)報(bào)和UDP數(shù)據(jù)報(bào)。網(wǎng)絡(luò)驅(qū)動(dòng)部分需要通過(guò)單片機(jī)PIC控制Ethernet以太網(wǎng)模塊來(lái)完成,將以太網(wǎng)幀發(fā)送到接收端。接收端接收到以太網(wǎng)幀后,進(jìn)行數(shù)據(jù)拆包。數(shù)據(jù)拆包部分分別定義了get_ether(),get_ip(),get_udp()三個(gè)函數(shù),實(shí)現(xiàn)了檢驗(yàn)和解析以太網(wǎng)幀、IP數(shù)據(jù)報(bào)、UDP數(shù)據(jù)報(bào)的功能。最后再將數(shù)據(jù)在應(yīng)用層進(jìn)行解密,來(lái)控制終端。
項(xiàng)目可行性分析
本項(xiàng)目采用當(dāng)前最新的智能家庭網(wǎng)關(guān)技術(shù)方案,并對(duì)方案適當(dāng)裁剪,以減小復(fù)雜性和成本。如項(xiàng)目的硬件平臺(tái)采用單片機(jī)PIC和Ethernet以太網(wǎng)模塊,價(jià)格低,功耗小且完全可以滿足系統(tǒng)處理需要;軟件設(shè)計(jì)是對(duì)UDP協(xié)議進(jìn)行改進(jìn),避免使用復(fù)雜的TCP協(xié)議,數(shù)據(jù)加密、封裝及拆包流程清晰簡(jiǎn)單,且使用UDP協(xié)議增加了信令及數(shù)據(jù)信息傳輸?shù)膶?shí)時(shí)性。
項(xiàng)目的創(chuàng)新之處
本項(xiàng)目的創(chuàng)新之處在于對(duì)UDP協(xié)議進(jìn)行了改進(jìn),使其更適合于傳輸信令信息。并采用RC4算法對(duì)數(shù)據(jù)進(jìn)行加密,一定程度保障了數(shù)據(jù)傳輸?shù)陌踩W詈蟮贸隽说统杀尽⒌凸摹⒌蛷?fù)雜性、高安全性的控制方案,設(shè)計(jì)出的家庭網(wǎng)關(guān)適合用于普通家庭住宅。具體說(shuō)來(lái),將UDP包的數(shù)據(jù)部分進(jìn)一步劃分,定義不同的數(shù)據(jù)格式、類型以控制不同的終端設(shè)備。同時(shí),網(wǎng)關(guān)還有自動(dòng)控制功能,能夠自動(dòng)、及時(shí)處理一些不需要人工干預(yù)的操作,增加了易用性。
評(píng)論
查看更多