專利名稱:基于消費(fèi)總線的嵌入式家庭網(wǎng)關(guān)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種消費(fèi)總線(CEBus)家電網(wǎng)絡(luò)系統(tǒng)的網(wǎng)絡(luò)(Internet)接入方案,具體說是基于消費(fèi)總線的嵌入式家庭網(wǎng)關(guān)。
背景技術(shù):
家電按功能可以分為以下幾種系統(tǒng)照明系統(tǒng),如各種電燈、開關(guān);環(huán)境控制(HVAC)系統(tǒng),包括空調(diào)、風(fēng)扇、取暖器等;家庭多媒體系統(tǒng),包括電視機(jī)、機(jī)頂盒、DVD、音響等;通訊系統(tǒng),如電話、傳真機(jī)等;安防系統(tǒng),如各種傳感器、報警器、攝像頭等。作為單個的設(shè)備或獨(dú)立子系統(tǒng),它們都比較完善,但是作為一個整體就顯得缺乏智能和協(xié)調(diào),主要表現(xiàn)為首先,各個電器自成體系,而相互之間缺乏聯(lián)系,甚至?xí)嗷ジ蓴_;第二,各種電器協(xié)調(diào)工作的自動化程度不夠;第三,用戶的操作界面不統(tǒng)一;第四,各個設(shè)備的功能有冗余;第五,控制器與執(zhí)行器之間的對應(yīng)關(guān)系比較固定,缺乏柔性和可擴(kuò)展性。
如果將電器設(shè)備聯(lián)成網(wǎng)絡(luò),使設(shè)備之間互相操作,就能在家電單體自動化的基礎(chǔ)上聯(lián)網(wǎng)以實現(xiàn)家電系統(tǒng)的綜合自動化。因此所構(gòu)建的網(wǎng)絡(luò)一般稱為家庭自動化控制網(wǎng)絡(luò),或簡稱為家電網(wǎng)絡(luò)(見ZL02126052.4)。消費(fèi)總線(CEBus)作為一種較新和較完備的家電網(wǎng)絡(luò)標(biāo)準(zhǔn),是目前家電網(wǎng)絡(luò)領(lǐng)域的一個主流協(xié)議。
隨著Internet逐漸融入人們的日常生話,人們對家電連接到Internet的需求也越發(fā)迫切,用戶希望通過Internet可以從戶外對家電網(wǎng)絡(luò)進(jìn)行遠(yuǎn)程監(jiān)控和操作。
發(fā)明內(nèi)容
針對上述需求,本發(fā)明的目的是提供一種基于消費(fèi)總線的嵌入式家庭網(wǎng)關(guān),它是一種連接于家電網(wǎng)絡(luò)和Internet之間的嵌入式設(shè)備,使得用戶可以方便地在Internet上從遠(yuǎn)端對家中的符合CEBus協(xié)議的家電設(shè)備進(jìn)行監(jiān)控和管理,同時也使得遠(yuǎn)程設(shè)備維護(hù)和集成設(shè)備管理成為可能,還可以使設(shè)備主動地通過Internet獲取信息或發(fā)送信息。
為達(dá)到上述目的,本發(fā)明的技術(shù)解決方案是基于消費(fèi)總線的嵌入式家庭網(wǎng)關(guān),包括主控器模塊,雙絞線通訊模塊,存儲器模塊,網(wǎng)絡(luò)控制模塊,人機(jī)接口模塊,其中存儲器模塊與主控器模塊的數(shù)據(jù)總線和地址總線相連,雙絞線通訊模塊、網(wǎng)絡(luò)控制模塊和人機(jī)接口模塊分別與主控器模塊的I/O口相連;網(wǎng)絡(luò)控制模塊與Internet相連;雙絞線通訊模塊通過雙絞線與接于消費(fèi)總線的家電相連。
本發(fā)明的優(yōu)點(diǎn)是1)用戶操作界面友好,非常便于用戶使用;2)雙絞線通訊模塊采用家庭控制片上系統(tǒng)芯片,成本低,可靠性強(qiáng);3)該系統(tǒng)是一個開放性系統(tǒng),可擴(kuò)展性強(qiáng);4)利用互聯(lián)網(wǎng)技術(shù)、移動通信技術(shù)可方便的對家電進(jìn)行遠(yuǎn)程控制,為家庭用戶提供更完美的服務(wù)。
圖1是基于消費(fèi)總線的嵌入式家庭網(wǎng)關(guān)的構(gòu)成框圖;圖2是雙絞線通訊模塊的結(jié)構(gòu)框圖;圖3是家庭網(wǎng)關(guān)的軟件框圖;圖4是家庭網(wǎng)關(guān)狀態(tài)機(jī)模型。
具體實施例方式
家庭網(wǎng)關(guān)是為家電內(nèi)部網(wǎng)和外部的Internet建立連接用的,通過家庭網(wǎng)關(guān)實現(xiàn)智能家居的Internet接入功能。網(wǎng)關(guān)支持標(biāo)準(zhǔn)的10M以太網(wǎng)接入方式,可以通過Internet使用瀏覽器以可視化圖形界面的方式,與家電網(wǎng)絡(luò)中的家電建立快速可靠的連接。
參照圖1,本發(fā)明的基于消費(fèi)總線的嵌入式家庭網(wǎng)關(guān),包括主控器模塊1,雙絞線通訊模塊2,存儲器模塊3,網(wǎng)絡(luò)控制模塊4,人機(jī)接口模塊5,其中存儲器模塊3與主控器模塊的數(shù)據(jù)總線和地址總線相連,雙絞線通訊模塊2、網(wǎng)絡(luò)控制模塊4和人機(jī)接口模塊5分別與主控器模塊的I/O口相連;網(wǎng)絡(luò)控制模塊4通過網(wǎng)線與Internet相連;雙絞線通訊模塊2通過雙絞線與接于消費(fèi)總線的家電相連,如洗衣機(jī)、冰箱、電視機(jī)、微波爐等。
在圖1所示的具體實例中,主控器模塊1采用ARM芯片S3C2410;存儲器模塊3采用64MB的FLASH芯片K9F5608U0C;網(wǎng)絡(luò)控制模塊4采用CS8900芯片;人機(jī)接口模塊5采用液晶顯示屏和USB鼠標(biāo);雙絞線通訊模塊2采用了家電網(wǎng)絡(luò)控制SoC(片上系統(tǒng))芯片HN600,該芯片內(nèi)部結(jié)構(gòu)如圖2所示,其以增強(qiáng)型的8位MCS-51為內(nèi)核,擴(kuò)展有3通道10位ADC、串行LCD控制器、SPI主控制器、EIA-600(CEBus)數(shù)據(jù)鏈路層、11位DAC、I2C主控制器、PCA(可編程控制陣列)、中斷控制器、P0口、P1口、P2口、P3口、1K字節(jié)啟動程序存儲單元(BootRAM)、4K字節(jié)數(shù)據(jù)RAM和256字節(jié)的數(shù)據(jù)RAM。
本發(fā)明的基于消費(fèi)總線的嵌入式家庭網(wǎng)關(guān)運(yùn)行在嵌入式操作系統(tǒng)ARM-Linux上。軟件采用模塊化設(shè)計方法,主要包括以下模塊CEBus數(shù)據(jù)幀解析模塊、事務(wù)控制模塊、總控模塊、網(wǎng)絡(luò)傳輸模塊,如圖3所示。
CEBus數(shù)據(jù)幀解析模塊主要由三部分組成,包括消息處理模塊、CEBus協(xié)議棧和語義分析模塊?,F(xiàn)以CEBus信息至Internet的傳輸過程為例,首先CEBus總線上傳輸過來的協(xié)議數(shù)據(jù)單元(PDU),借助CEBus協(xié)議棧,通過語義分析模塊進(jìn)行語義分析。該協(xié)議棧是基于CEBus數(shù)據(jù)幀和通訊機(jī)制的基礎(chǔ)上建立的。然后在消息處理模塊生成可以為后面的事務(wù)控制模塊使用的,本網(wǎng)關(guān)特有的中間層語言——消息,最后將消息發(fā)送到后繼模塊。Internet信息至CEBus的過程則正好與前述過程相反。
事務(wù)控制模塊其主要作用是向上提供一個可靠的雙向連接,稱之為一個事務(wù)。為了保證連接的可靠性,使用了重發(fā)、定時器、事務(wù)標(biāo)識符三種機(jī)制,并且為了實現(xiàn)本網(wǎng)關(guān)的高效性,進(jìn)行了如下抽象1)將事務(wù)的處理抽象為一個有限狀態(tài)機(jī);2)在CEBus數(shù)據(jù)幀解析模塊中對CEBus數(shù)據(jù)幀,或者說PDU進(jìn)行解析而得到的數(shù)據(jù),以中間語言的形式抽象為消息;3)將事務(wù)的所有活動抽象為一系列的狀態(tài);4)把事務(wù)在各種狀態(tài)間的轉(zhuǎn)換條件抽象為一系列規(guī)則。
所謂狀態(tài)機(jī)模型是一個描述狀態(tài)變遷的方法,它總是將一個狀態(tài)向另一個狀態(tài)的變遷視為由輸入消息激勵所產(chǎn)生的結(jié)果。對于家電網(wǎng)絡(luò)來說,各設(shè)備間的通訊建立過程就是一個典型的有限狀態(tài)數(shù)之間的狀態(tài)變遷過程。事務(wù)處理模塊可以根據(jù)輸入的事務(wù)消息和當(dāng)前狀態(tài),確定狀態(tài)如何變遷。
這樣,每當(dāng)一個事務(wù)產(chǎn)生都可以用有限狀態(tài)機(jī)的不同狀態(tài)來對它進(jìn)行描述和管理。而每當(dāng)消息促使事務(wù)需要作出某種操作時,有限狀態(tài)機(jī)中的當(dāng)前狀態(tài)也隨之而改變。而這種改變是根據(jù)預(yù)先制定好的規(guī)則來實現(xiàn)的。要做到這一點(diǎn),首先要認(rèn)真分析事務(wù)所有可能的狀態(tài),及在該狀態(tài)下可能存在的狀態(tài)轉(zhuǎn)換規(guī)則。
最終設(shè)計出的有限狀態(tài)機(jī)如圖4所示。從圖中可以看到,網(wǎng)關(guān)所描述的事務(wù)具有系統(tǒng)監(jiān)聽、等待事務(wù)標(biāo)示符分配、等待調(diào)用響應(yīng)、等待事務(wù)處理和等待處理結(jié)果5個狀態(tài),13個狀態(tài)轉(zhuǎn)換規(guī)則(如圖中箭頭所示)。其中1到4的狀態(tài)轉(zhuǎn)換負(fù)責(zé)實際的事務(wù)處理,5到8的狀態(tài)轉(zhuǎn)換則主要進(jìn)行出錯處理,9到13主要是進(jìn)入消息等待。在具體的實現(xiàn)過程中,創(chuàng)建一個Hash(哈希)表作為狀態(tài)匹配的主要數(shù)據(jù)結(jié)構(gòu),采用了當(dāng)前狀態(tài)和消息觸發(fā)的事件作為索引。在同一索引值下,建立單向鏈表以存放不同的轉(zhuǎn)換規(guī)則。由于Hash表在查詢和匹配上的高效性,可使有限狀態(tài)機(jī)在狀態(tài)間實現(xiàn)高速轉(zhuǎn)換,提高了系統(tǒng)整體性能。
另外,為了提高效率,支持多事務(wù)的并發(fā)處理,以事務(wù)標(biāo)識符為索引,創(chuàng)建了另一個Hash表來存放當(dāng)前存在的所有事務(wù)。一旦有新的消息到來,即可根據(jù)事務(wù)標(biāo)識符將對應(yīng)事務(wù)激活,提交給系統(tǒng)處理。這樣就可以使用單個線程來完成多事務(wù)并行處理了。
整個模塊運(yùn)行機(jī)制如下1)初始化,接收來自CEBus數(shù)據(jù)幀解析模塊的消息,并創(chuàng)建消息隊列。
2)從隊列中提取需要處理的消息。
3)根據(jù)消息的事務(wù)標(biāo)識符對Hash表進(jìn)行查詢,激活相應(yīng)事務(wù)。如果事務(wù)不存在,則新建一個事務(wù)在狀態(tài)機(jī)中進(jìn)行狀態(tài)轉(zhuǎn)移。
4)確定事務(wù)在狀態(tài)機(jī)中當(dāng)前狀態(tài)。
5)根據(jù)狀態(tài)機(jī)的當(dāng)前狀態(tài)和消息種類,通過查詢Hash表找到相應(yīng)入口。
6)通過入口進(jìn)入對應(yīng)的單向規(guī)則鏈表,依次對比,直到找到合適的規(guī)則為止。如果沒有合適的規(guī)則匹配,則返回一個錯誤信息。
7)根據(jù)找到的規(guī)則,轉(zhuǎn)入相應(yīng)的處理程序,同時更新狀態(tài)機(jī)中事務(wù)的當(dāng)前狀態(tài)。
8)從消息隊列中獲取新的消息,重復(fù)上述過程。
總控模塊如果說CEBus數(shù)據(jù)幀解析模塊、事務(wù)控制模塊、網(wǎng)絡(luò)傳輸模塊是整個系統(tǒng)實現(xiàn)的功能器官,那么總控模塊就是整個系統(tǒng)的心臟。它負(fù)責(zé)處理整個網(wǎng)關(guān)各個模塊的初始化工作并協(xié)調(diào)它們的運(yùn)行與中止。另外,在這個模塊中利用ARM S3C2410的優(yōu)秀性能,采用了多線程技術(shù),最大限度的利用了微處理器的工作能力,使各個模塊能夠并行操作,提高了整個網(wǎng)關(guān)的運(yùn)行效率。
網(wǎng)絡(luò)傳輸模塊在網(wǎng)絡(luò)傳輸模塊將網(wǎng)絡(luò)控制芯片CS8900搭載于ARMS3C2410系統(tǒng)之上,可提供非常優(yōu)秀的網(wǎng)絡(luò)互聯(lián)功能。在其協(xié)助下可創(chuàng)建一個網(wǎng)絡(luò)(HTTP)服務(wù)器,并支持CGI(通用網(wǎng)關(guān)接口)。使得用戶可以通過Web方式來提交事務(wù),配置相應(yīng)參數(shù),實現(xiàn)家電網(wǎng)絡(luò)的可視化訪問與操作。用戶對網(wǎng)絡(luò)家電的遠(yuǎn)程訪問與監(jiān)控將會像瀏覽網(wǎng)頁一般輕松,大大簡化了操作,方便了使用。
該網(wǎng)絡(luò)服務(wù)器服務(wù)器采用事件驅(qū)動的方法,將用戶對家電網(wǎng)絡(luò)的訪問、監(jiān)控轉(zhuǎn)化為網(wǎng)絡(luò)家電的事件,把相關(guān)消息發(fā)送到事務(wù)管理模塊。通過事務(wù)管理,其所對應(yīng)事務(wù)進(jìn)行狀態(tài)轉(zhuǎn)換,并處理相關(guān)操作。
網(wǎng)關(guān)對HTTP的支持是建立在底層完備的TCP/IP協(xié)議棧的基礎(chǔ)上的。由網(wǎng)絡(luò)傳輸模塊結(jié)構(gòu)圖可見,HTTP服務(wù)運(yùn)行在應(yīng)用層,傳輸層使用了TCP以保證控制信息傳輸?shù)目煽啃?,其下由網(wǎng)絡(luò)層的IP協(xié)議提供尋址、路由、數(shù)據(jù)損壞檢測和更正等功能。TCP/IP協(xié)議棧的使用是通過特殊的應(yīng)用編程界面(API)socket編程來實現(xiàn)的。其主要程序設(shè)計思路如下1)采用socket_init()函數(shù),初始化系統(tǒng)網(wǎng)絡(luò)接口;2)構(gòu)造套接字類型tcp_socket對象作為服務(wù)器端套接字;3)調(diào)用socket_listen()函數(shù)開啟網(wǎng)絡(luò)監(jiān)聽;4)調(diào)用socket_wait_established()函數(shù)以等待連接建立;5)使用socket_mode()函數(shù)設(shè)置數(shù)據(jù)流格式;6)調(diào)用socket_gets()函數(shù)、sock_puts()函數(shù)來收發(fā)數(shù)據(jù);7)使用socket_tick()函數(shù)來進(jìn)行客戶端與服務(wù)器端的套接字通訊;8)通訊結(jié)束,調(diào)用socket_close()函數(shù)關(guān)閉套接字,斷開雙方連接。
基于消費(fèi)總線的嵌入式家庭網(wǎng)關(guān)在工作時,其典型應(yīng)用過程如下1)用戶通過網(wǎng)頁瀏覽器來提交對某個網(wǎng)絡(luò)電器的訪問請求;2)HTTP服務(wù)器接收該請求,將它轉(zhuǎn)化為相應(yīng)的網(wǎng)絡(luò)家電事件;3)事務(wù)管理模塊接收到對應(yīng)消息,在Hash表中查詢相應(yīng)事務(wù),如沒有則建立之;4)通過狀態(tài)機(jī)進(jìn)行狀態(tài)轉(zhuǎn)換,將結(jié)果以事件的方式返回;5)網(wǎng)絡(luò)服務(wù)器識別該事件,并將結(jié)果顯示在用戶的網(wǎng)頁瀏覽器上。
在整個過程中,本發(fā)明為用戶提供了一個較為友好的界面,使用方便。用戶不需對家電網(wǎng)絡(luò)有太多了解,甚至無需具備太多計算機(jī)、網(wǎng)絡(luò)通訊方面的專業(yè)知識就能實現(xiàn)網(wǎng)絡(luò)家電經(jīng)CEBus與Internet的相互訪問,遠(yuǎn)程監(jiān)控等。這符合家電網(wǎng)絡(luò)易用性的開發(fā)目標(biāo)。
權(quán)利要求
1.基于消費(fèi)總線的嵌入式家庭網(wǎng)關(guān),其特征是包括主控器模塊(1),雙絞線通訊模塊(2),存儲器模塊(3),網(wǎng)絡(luò)控制模塊(4),人機(jī)接口模塊(5),其中存儲器模塊(3)與主控器模塊(1)的數(shù)據(jù)總線和地址總線相連,雙絞線通訊模塊(2)、網(wǎng)絡(luò)控制模塊(4)和人機(jī)接口模塊(5)分別與主控器模塊的I/O口相連;網(wǎng)絡(luò)控制模塊(4)與Intemet相連;雙絞線通訊模塊(2)通過雙絞線與接于消費(fèi)總線的家電相連。
2.根據(jù)權(quán)利要求1所述的基于消費(fèi)總線的嵌入式家庭網(wǎng)關(guān),其特征在于主控器模塊(1)是ARM芯片S3C2410。
3.根據(jù)權(quán)利要求1所述的基于消費(fèi)總線的嵌入式家庭網(wǎng)關(guān),其特征在于雙絞線通訊模塊(2)是芯片HN600。
4.根據(jù)權(quán)利要求1所述的基于消費(fèi)總線的嵌入式家庭網(wǎng)關(guān),其特征在于網(wǎng)絡(luò)控制模塊(4)是CS8900芯片。
全文摘要
本發(fā)明公開了一種基于消費(fèi)總線的嵌入式家庭網(wǎng)關(guān),其包括主控器模塊,雙絞線通訊模塊,網(wǎng)絡(luò)控制模塊,存儲器模塊,人機(jī)接口模塊,其中存儲器模塊與主控器模塊的數(shù)據(jù)總線和地址總線相連,雙絞線通訊模塊,網(wǎng)絡(luò)控制模塊和人機(jī)接口模塊分別與主控器模塊的I/O口相連;網(wǎng)絡(luò)控制模塊與Internet相連;雙絞線通訊模塊通過雙絞線與接于消費(fèi)總線的家電相連。本發(fā)明的優(yōu)點(diǎn)是用戶操作界面友好,非常便于用戶使用;雙絞線通訊模塊采用家庭控制片上系統(tǒng)芯片,成本低,可靠性強(qiáng);該系統(tǒng)是一個開放性系統(tǒng),可擴(kuò)展性強(qiáng);利用互聯(lián)網(wǎng)技術(shù)、移動通信技術(shù)可方便的對家電進(jìn)行遠(yuǎn)程控制,為家庭用戶提供更完美的服務(wù)。
文檔編號H04L12/28GK1870608SQ20061005218
公開日2006年11月29日 申請日期2006年6月29日 優(yōu)先權(quán)日2006年6月29日
發(fā)明者倪彬斌, 吳明光 申請人:浙江大學(xué)