專利名稱:用于家用設(shè)備的網(wǎng)絡(luò)控制系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種網(wǎng)絡(luò)控制裝置和方法,尤其涉及一種用于家用設(shè)備的網(wǎng)絡(luò)控制系統(tǒng)。
背景技術(shù):
目前,用于在家庭或一個遠(yuǎn)程位置自動控制家用設(shè)備的家庭自動化基本上已經(jīng)商業(yè)化了。在家庭自動化的最初階段,各個家用設(shè)備在彼此互不連接的情況下通過使用電話或紅外線被獨立地控制?,F(xiàn)在,使用一種通信手段在設(shè)備之間組建了一個網(wǎng)絡(luò),并提供了一個用于控制網(wǎng)絡(luò)的控制器以集中管理各設(shè)備。
應(yīng)用于這些設(shè)備的微型計算機(jī)具有一個內(nèi)置的串行通信功能,并且可以與其它微型計算機(jī)或設(shè)備進(jìn)行通信。這種微型計算機(jī)根據(jù)設(shè)備的特性具有各種尺寸的可被用于通信的資源,比如存儲器。在多媒體產(chǎn)品,如個人計算機(jī)(PC)、電視接收機(jī)(TV)、音頻設(shè)備等的情況下,采用高性能的硬件標(biāo)準(zhǔn)來執(zhí)行各種基本功能,并且需要用于高速處理大量數(shù)據(jù)的通信標(biāo)準(zhǔn)。
相反,在電冰箱、洗衣機(jī)、微波爐、燈、毒氣報警器、臺燈、蒸煮器等的情況下,它們的功能與上述PC或多媒體產(chǎn)品相比非常簡單,因此一般使用8比特或更少比特的低性能微型計算機(jī)。在采用低性能微型計算機(jī)的家用設(shè)備的情況下,操作狀態(tài)的基本遙控或監(jiān)視是通信的主要目的,因此需要使用小尺寸微型計算機(jī)資源的通信標(biāo)準(zhǔn)。
但是,為了在設(shè)備之間進(jìn)行通信,在當(dāng)前正在使用或進(jìn)行的通信協(xié)議的情況下,獨立的通信模塊如調(diào)制解調(diào)器被額外地安裝到各個設(shè)備中,以便按照原樣使用應(yīng)用于PC或多媒體設(shè)備的高性能通信標(biāo)準(zhǔn),或者對高性能通信標(biāo)準(zhǔn)進(jìn)行部分修改。
傳統(tǒng)的家用設(shè)備采用應(yīng)用于PC或多媒體設(shè)備的高性能通信標(biāo)準(zhǔn),因此由于在每一個設(shè)備中將額外安裝一個獨立的硬件通信模塊如調(diào)制解調(diào)器,采用了高于它們的實際功能的不必要的通信標(biāo)準(zhǔn),從而具有效率低和成本高的問題。
發(fā)明內(nèi)容
因此,本發(fā)明的一個目的是解決現(xiàn)有技術(shù)中存在的問題,并且提供一種用于家用設(shè)備的網(wǎng)絡(luò)控制系統(tǒng),對于當(dāng)前使用的采用低性能微型計算機(jī)的設(shè)備,滿足低成本和高效率的特性。
為了實現(xiàn)上述目的,本發(fā)明提供了一種用于家用設(shè)備的網(wǎng)絡(luò)控制系統(tǒng),所述家用設(shè)備提供有具有串行通信功能的低性能微型計算機(jī),所述網(wǎng)絡(luò)控制系統(tǒng)對于各個設(shè)備定義一個主/從類型的通信結(jié)構(gòu);根據(jù)所述通信結(jié)構(gòu),確定由應(yīng)用層、數(shù)據(jù)鏈路層和物理層組成的通信標(biāo)準(zhǔn);通過經(jīng)由所述串行通信功能連接各個設(shè)備來構(gòu)建一個網(wǎng)絡(luò);以及如果產(chǎn)生了一個預(yù)定的通信事件,使各設(shè)備可以根據(jù)通信結(jié)構(gòu)和通信標(biāo)準(zhǔn)以特定分組為單位彼此進(jìn)行通信。
通過結(jié)合附圖對本發(fā)明的優(yōu)選實施例進(jìn)行詳細(xì)描述,本發(fā)明的上述和其他特性和優(yōu)點將會變得更加清楚,并且在其中圖1是描述家用設(shè)備網(wǎng)絡(luò)的視圖。
圖2是描述根據(jù)本發(fā)明的主/從類型設(shè)備之間的通信結(jié)構(gòu)的視圖。
圖3是描述根據(jù)本發(fā)明的主/從類型通信結(jié)構(gòu)的詳細(xì)結(jié)構(gòu)視圖。
圖4是描述根據(jù)本發(fā)明的半雙工類型通信結(jié)構(gòu)的視圖。
圖5是描述一請求/一響應(yīng)類型的通信周期的視圖。
圖6是描述當(dāng)產(chǎn)生分組錯誤時的通信周期的視圖。
圖7是描述一請求/多響應(yīng)類型的通信周期的視圖。
圖8是描述一請求的通信周期的視圖。
圖9是描述通信層的分層類型的視圖。
圖10是描述各層間的分組通信結(jié)構(gòu)的視圖。
圖11是描述整個分組結(jié)構(gòu)的視圖。
圖12是描述請求/通知分組的視圖。
圖13是描述響應(yīng)分組的結(jié)構(gòu)的視圖。
圖14是描述地址結(jié)構(gòu)的視圖。
圖15是描述網(wǎng)絡(luò)代碼分組方法的視圖。
圖16是描述根據(jù)產(chǎn)品類型的組地址的視圖。
圖17是描述根據(jù)安裝位置的組地址的視圖。
圖18是描述根據(jù)安裝位置和產(chǎn)品類型的組地址視圖。
圖19是描述事件文件的信頭結(jié)構(gòu)的視圖。
圖20是描述事件文件的主體結(jié)構(gòu)的視圖。
圖21是描述當(dāng)產(chǎn)生錯誤時響應(yīng)分組的結(jié)構(gòu)的視圖。
具體實施例方式
現(xiàn)在將參考附圖,根據(jù)本發(fā)明的優(yōu)選實施例對用于家用設(shè)備的網(wǎng)絡(luò)控制系統(tǒng)進(jìn)行詳細(xì)描述。
首先,如圖1所示,根據(jù)本發(fā)明的網(wǎng)絡(luò)可以包括通過連接到外部因特網(wǎng)的網(wǎng)關(guān)連接到一個音頻/視頻(A/V)網(wǎng)絡(luò)的多媒體設(shè)備,比如電視接收機(jī)(TV)、音頻設(shè)備等等;連接到個人計算機(jī)(PC)網(wǎng)絡(luò)的PC低端設(shè)備,如打印機(jī)、掃描儀、PC照相機(jī)等等;以及通過一個網(wǎng)絡(luò)管理器連接到生活網(wǎng)絡(luò)的低端設(shè)備,如電冰箱、空調(diào)、洗衣機(jī)、清潔器、微波爐、加濕器、燈、臺燈、毒氣報警器等等。
現(xiàn)在將解釋根據(jù)本發(fā)明的用于家用設(shè)備的網(wǎng)絡(luò)控制系統(tǒng)。
本發(fā)明采用主/從設(shè)備系統(tǒng)。也就是說,所有的通信周期從一個主設(shè)備開始,并且結(jié)束于一個主設(shè)備。任何設(shè)備都可以是主設(shè)備,但是為此它應(yīng)該具有控制通信線路上的數(shù)據(jù)流的功能、關(guān)于連接到網(wǎng)絡(luò)的設(shè)備的信息和控制代碼。根據(jù)應(yīng)用于較低性能標(biāo)準(zhǔn)的家用設(shè)備之間的網(wǎng)絡(luò)的本發(fā)明,只有一個設(shè)備具有用戶接口功能,如具有所有主設(shè)備的功能的PC,以及其它設(shè)備只能作為具有有限功能,如與某個預(yù)定從設(shè)備進(jìn)行通信或使用一個簡單的控制代碼進(jìn)行通信的主設(shè)備。
并且,本發(fā)明定義了一種在其中主設(shè)備和從設(shè)備在邏輯上共存的設(shè)備,這樣在保持基本的主設(shè)備/從設(shè)備通信系統(tǒng)的同時,可以進(jìn)行設(shè)備間的直接通信,如對等通信。即,如圖2所示,定義了一個設(shè)備(以后被稱為P2P設(shè)備),其是一個物理設(shè)備,但邏輯上被分為獨立的主設(shè)備和從設(shè)備。
所有連接到網(wǎng)絡(luò)的產(chǎn)品基本上都是P2P設(shè)備,但是如圖3所示,根據(jù)產(chǎn)品的硬件特性,它們可以被定義為主設(shè)備、從設(shè)備、專用發(fā)送設(shè)備和專用接收設(shè)備。
具體地,在主設(shè)備的情況下,為了開始一個新的通信周期,如果最終用戶產(chǎn)生了一個通信開始事件或由于設(shè)備的內(nèi)部狀態(tài)變化,主設(shè)備開始并結(jié)束與對應(yīng)從設(shè)備的通信。
在從設(shè)備的情況下,它總是處于接收的待機(jī)狀態(tài),并且不能自己請求與其它設(shè)備進(jìn)行通信。
P2P設(shè)備是一個其中主設(shè)備和從設(shè)備在邏輯上共存的設(shè)備,并且如果最終用戶產(chǎn)生了一個通信開始事件或由于設(shè)備的內(nèi)部狀態(tài)變化,它就作為主設(shè)備來引導(dǎo)通信周期。相應(yīng)的通信結(jié)束后,P2P設(shè)備作為從設(shè)備處于接收的待機(jī)狀態(tài)。
專用發(fā)送設(shè)備是一個根據(jù)它的硬件特性只用于發(fā)送的設(shè)備,可以是一個遙控器。
專用接收設(shè)備是一個根據(jù)其硬件特性只用于接收的設(shè)備,可以是一個具有紅外射線接收器并靠干電池運行的產(chǎn)品。
如圖4中所示,根據(jù)本發(fā)明的用于家用設(shè)備的網(wǎng)絡(luò)控制系統(tǒng)使用總線執(zhí)行半雙工類型的信號傳輸。
具體地,在發(fā)送的情況下,設(shè)備不接收從其它設(shè)備發(fā)送的數(shù)據(jù),而在接收的情況下,設(shè)備不向其它設(shè)備發(fā)送數(shù)據(jù)。這是為了最小化用于通信的存儲器,同時為了適應(yīng)由一條使用串行通信功能的總線構(gòu)成的網(wǎng)絡(luò),如根據(jù)本發(fā)明的用于家用設(shè)備的網(wǎng)絡(luò)。
因此,在主設(shè)備或從設(shè)備的情況下,可以共享用于發(fā)送和接收的存儲器,在P2P設(shè)備的情況下,由于主設(shè)備和從設(shè)備不能同時運行,也可以共享用于發(fā)送和接收的存儲器。因此,不需要中斷所有的發(fā)送/接收處理,這增強(qiáng)了對產(chǎn)品的功能進(jìn)行編程的自由度。
下面,根據(jù)本發(fā)明的用于家用設(shè)備的網(wǎng)絡(luò)控制系統(tǒng)執(zhí)行一個周期型的通信。一個周期型可被分為,1請求/1響應(yīng)型、1請求/多響應(yīng)型和1請求型。
此時,如圖5中所示,根據(jù)1請求/1響應(yīng)型通信,主設(shè)備向從設(shè)備發(fā)送一個分組,響應(yīng)于此,從設(shè)備向主設(shè)備發(fā)送一個分組來結(jié)束這次通信。如圖7所示,根據(jù)1請求/多響應(yīng)型通信,主設(shè)備向多個從設(shè)備發(fā)送一個分組,響應(yīng)于此,各個從設(shè)備向主設(shè)備發(fā)送一個分組。主設(shè)備連續(xù)等待該響應(yīng),如果預(yù)定的最大等待時間超時,則主設(shè)備終止通信。同時,如圖8所示,根據(jù)1請求型通信,主設(shè)備發(fā)送對于一個從設(shè)備或多個從設(shè)備的一個請求,然后結(jié)束通信而不等待響應(yīng)。此時,如果發(fā)送由多個分組組成的數(shù)據(jù),主設(shè)備將數(shù)據(jù)分成具有與相應(yīng)從設(shè)備匹配的尺寸的分組,并且以分組為單位向從設(shè)備發(fā)送數(shù)據(jù)。圖6示出了如果在從設(shè)備中產(chǎn)生了一個響應(yīng)錯誤,則主設(shè)備重新發(fā)送請求,并且接收相應(yīng)響應(yīng)來結(jié)束通信的通信類型。
然后,根據(jù)本發(fā)明的用于家用設(shè)備的網(wǎng)絡(luò)控制系統(tǒng)具有由物理層、數(shù)據(jù)鏈路層和應(yīng)用層組成的協(xié)議。
在TCP/IP協(xié)議當(dāng)前被用作因特網(wǎng)協(xié)議的情況下,其通信層被分為應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、數(shù)據(jù)鏈路層和物理層。在該協(xié)議被用于其它家用設(shè)備或工廠自動化的情況下,它基本上具有應(yīng)用層、數(shù)據(jù)鏈路層和物理層,額外的還具有傳輸層或網(wǎng)絡(luò)層。但是,由于本發(fā)明是用于處理關(guān)于低性能標(biāo)準(zhǔn)的家用設(shè)備的上述通信類型,它具有僅由物理層、數(shù)據(jù)鏈路層和應(yīng)用層組成的通信層。同樣,根據(jù)本發(fā)明,物理層和數(shù)據(jù)鏈路層被最大程度地簡化,用于運行該產(chǎn)品的很多部分被分配給應(yīng)用層,以便最小化微型計算機(jī)的負(fù)載,從而匹配主/從類型和半雙工類型。
如圖9所示,在從設(shè)備的情況下,通信層包括由應(yīng)用軟件區(qū)、消息構(gòu)建區(qū)、消息執(zhí)行區(qū)、消息組合區(qū)及消息冗余校驗區(qū)組成的應(yīng)用層;由分組構(gòu)建區(qū)、分組傳輸區(qū)、CSM/CD區(qū)、分組校驗區(qū)、地址校驗區(qū)及分組數(shù)據(jù)接收區(qū)組成的數(shù)據(jù)鏈路層;及由UART組成的物理層。此時,該物理層可包括一個當(dāng)采用電源線通信時選擇的適配器。
在主設(shè)備的情況下,通信層包括由應(yīng)用軟件區(qū)、消息劃分區(qū)和消息組合區(qū)組成的應(yīng)用層;由分組構(gòu)建區(qū)、分組傳輸確認(rèn)區(qū)、CSM/CD區(qū)、分組校驗區(qū)、地址校驗區(qū)及分組數(shù)據(jù)接收區(qū)組成的數(shù)據(jù)鏈路層;及由UART組成的物理層。主設(shè)備的該物理層也可包括當(dāng)采用電源線通信時選擇的適配器。
此時,該物理層用于接收通信線路上的比特信號以構(gòu)成分組,或者攜帶從數(shù)據(jù)鏈路層接收的關(guān)于比特信號的分組,以通過通信線路轉(zhuǎn)發(fā)該比特信號。
數(shù)據(jù)鏈路層使用從應(yīng)用層接收的數(shù)據(jù)構(gòu)成分組并發(fā)送該分組至物理層,或處理從物理層接收的分組并轉(zhuǎn)發(fā)該分組至應(yīng)用層。主設(shè)備的數(shù)據(jù)鏈路層的作用與從設(shè)備的有些不同。主設(shè)備的數(shù)據(jù)鏈路層包括確保分組傳輸至物理層的處理。在用作從設(shè)備的產(chǎn)品中,物理層和數(shù)據(jù)鏈路層具有相同的結(jié)構(gòu)。
應(yīng)用層包括消息集,并用于分析和處理消息。在用作從設(shè)備的產(chǎn)品中,消息包括負(fù)載控制或存儲控制方法,以及主設(shè)備用于使用從設(shè)備的消息處理結(jié)果來管理從設(shè)備或者控制整個網(wǎng)絡(luò)。因此,對于每個產(chǎn)品應(yīng)用層包括不同的內(nèi)容。主設(shè)備的應(yīng)用層還用作傳輸層,如果將被發(fā)送的數(shù)據(jù)大于一個分組,則將數(shù)據(jù)分為多個分組,以發(fā)送分割后的分組,或如果收到分割后的分組,則組合并處理該分割后的分組。傳輸層并不獨立而是被包括在應(yīng)用層中的原因是,分組的分割及組合僅對于特定的消息執(zhí)行,而不對于所有的數(shù)據(jù)。
圖10示出了通信層間的分組通信結(jié)構(gòu)。應(yīng)用層和數(shù)據(jù)鏈路層之間的接口以消息為單位執(zhí)行,而數(shù)據(jù)鏈路層和物理層之間的接口以一個完整的分組為單位執(zhí)行。在數(shù)據(jù)鏈路層和物理層之間,不需要單獨組建分組,而是以整個分組為單位執(zhí)行通信,因此可以依原樣使用分組。但是,由于在應(yīng)用層不知道添加到數(shù)據(jù)鏈路層和物理層的信頭的長度,很難以整個分組為單位連接數(shù)據(jù),而是以消息為單位從應(yīng)用層向數(shù)據(jù)鏈路層傳輸數(shù)據(jù)。分組應(yīng)該包括所有要進(jìn)行通信的信息,并具有與后面的通信功能的擴(kuò)展相適應(yīng)的結(jié)構(gòu)。
如圖11所示,分組基本上包括由分組頭字段和用于分組功能的以后增加的字段組成的信頭區(qū);由消息頭字段、用于分組功能的以后增加的字段以及消息字段組成的主體區(qū);和信尾區(qū)。
另外,如圖12所示,用在主設(shè)備中的請求/通知分組最少包括17字節(jié),最大包括255字節(jié),并包括8比特的用于分類構(gòu)建網(wǎng)絡(luò)的家庭的家庭代碼(HC),16比特的用于指示接收設(shè)備的接收設(shè)備地址(RA),16比特的用于指示發(fā)送設(shè)備的發(fā)送設(shè)備地址(SA),8比特的用于指示分組長度的分組長度(PL),3比特的用于指示傳輸優(yōu)先級的訪問優(yōu)先級(AP),5比特的用于指示分組頭長度的分組頭長度(PHL),8比特的用于指示協(xié)議版本的協(xié)議版本(PV),4比特的用于指示分組類型的分組類型(PT),2比特的用于指示重傳數(shù)目的重傳計數(shù)(RC),2比特的用于指示一個新分組的傳輸?shù)姆纸M號(PN),8比特的消息長度(ML),8比特的消息頭長度(MHL),8比特的端口號(PO),8比特的命令代碼(CC),可變比特數(shù)的變元(ARG),16比特的循環(huán)冗余校驗,以及8比特的用于指示分組結(jié)束的正文結(jié)束(ETX)。
另外,如圖13所示,用在從設(shè)備中的響應(yīng)分組與請求/通知分組相同,除了其主體區(qū)包括一個8比特的ACK/NAK。
此時,家庭代碼(HC)用于在邏輯上對在其中構(gòu)建網(wǎng)絡(luò)的家庭進(jìn)行分類。尤其是在各家庭間的傳輸線如電源線沒有被分類的情況下,0x03~0xFE范圍內(nèi)的十六進(jìn)制值被用于分類各家庭。
位于發(fā)送設(shè)備地址(SA)前的接收設(shè)備地址(RA)用于當(dāng)收到分組時,提早判斷接收設(shè)備是否連續(xù)接收該分組或是忽略它。前2比特用于指示網(wǎng)絡(luò)的類型,接著的6比特用于分類具有獨立的功能的產(chǎn)品如洗衣機(jī)、電冰箱等。后8比特被分配用于在存在同類的幾個設(shè)備的情況下分類這些設(shè)備。
分組長度(PL)由1個字節(jié)構(gòu)成,用于存儲指示分組長度的數(shù),該分組長度是以字節(jié)為單位從家庭代碼到分組的ETX而計算的。在收到分組長度(PL)數(shù)據(jù)值后,接收設(shè)備僅接收與該分組長度數(shù)據(jù)值一樣多的數(shù)據(jù),然后執(zhí)行隨后的處理。因此,分組長度(PL)值被用于提前識別接收緩沖器的大小,以及用于檢測接收的分組數(shù)據(jù)的錯誤。也就是說,讀出分組的最后一個字節(jié),如果它不是ETX,則判斷分組錯誤。
訪問優(yōu)先級(AP)字段用于指示給予如緊急消息、由于傳輸失敗而將被重傳的分組、或不如一般通信消息重要的消息的消息的傳輸優(yōu)先級,這樣物理層可以根據(jù)該給定的優(yōu)先級執(zhí)行CSMA/CD功能。該字段在執(zhí)行CSMA/CD功能的適配器能夠根據(jù)傳輸優(yōu)先級傳輸消息時是很重要的,否則可以忽略。根據(jù)各個通信的訪問優(yōu)先級值如下0在由于碰撞或處于緊急狀態(tài)而進(jìn)行重傳的情況下1在通過消息分組進(jìn)行數(shù)據(jù)的大規(guī)模傳輸?shù)那闆r下2在正常通信情況下3在報告網(wǎng)絡(luò)連接狀態(tài)的情況下(在碰撞的情況下,優(yōu)先級也保持為3)分組頭長度(PHL)字段用于擴(kuò)展分組頭。如果在當(dāng)前的分組頭添加一個擴(kuò)展字段,該分組頭長度相應(yīng)改變。在沒有改變的情況下,它是9字節(jié),最大可擴(kuò)展至32字節(jié)。
協(xié)議版本(PV)是1字節(jié)的字段,用于指示所采用協(xié)議的版本。版本和子版本以其更新順序采用0~15的值。
分組類型(PT)由4比特構(gòu)成,當(dāng)發(fā)送分組時確定,并分為請求分組、響應(yīng)分組及通知分組。響應(yīng)分組進(jìn)一步被分為成功響應(yīng)和失敗響應(yīng)。主設(shè)備確定請求分組,從設(shè)備確定響應(yīng)分組。如果設(shè)備只作為從設(shè)備運行,則它只處理請求分組。響應(yīng)分組分為兩種響應(yīng)類型的原因是,如果分組頭中的分組類型(PT)字段指示失敗響應(yīng),分組并不發(fā)送至應(yīng)用層,而是被立即重發(fā),即使消息的內(nèi)容并不為數(shù)據(jù)鏈路層所知。通知分組表示分組不請求響應(yīng)。當(dāng)以高的傳輸速率發(fā)送大規(guī)模的數(shù)據(jù)文件時,一個陣列分組被用于分組并發(fā)送所有的數(shù)據(jù),而無需任何對于各個分組的響應(yīng),其十六進(jìn)制數(shù)值如下0請求分組1~3保留4成功的響應(yīng)分組5失敗的響應(yīng)分組6~7保留8廣播通知分組9陣列分組10陣列數(shù)據(jù)的結(jié)束分組11~15保留重傳計數(shù)(RC)是一個2比特字段,用于當(dāng)產(chǎn)生通信錯誤時防止同一消息的重復(fù)處理。如果在收到的響應(yīng)分組中包含一個CRC錯誤,則收到的分組包含CRC錯誤,或者當(dāng)接收字節(jié)時間已過,主設(shè)備最多可以重傳分組三次,而從設(shè)備只能發(fā)送一次。
分組號(PN)也是一個2比特字段,用于當(dāng)產(chǎn)生通信錯誤時防止同一消息的重復(fù)處理。只要發(fā)送一個新的分組,主設(shè)備將分組號增加1,并在重傳同一分組的情況下,主設(shè)備保持前一分組號。因此,從設(shè)備存儲前一消息的分組號和傳輸?shù)刂?,并且如果再次收到同一消息時,忽略該重復(fù)的消息。如果收到的消息與前一消息不同,從設(shè)備處理該消息。當(dāng)從設(shè)備響應(yīng)接收的消息時,從設(shè)備復(fù)制收到的消息的分組號并構(gòu)造響應(yīng)分組。
由于消息字段的長度是可變的,消息長度(ML)是用于識別消息字段的長度的信息。因此,應(yīng)用層通過該消息長度識別消息字段的長度。
消息頭長度(MHL)字段用于以后擴(kuò)展消息字段,并在編碼消息字段、改變應(yīng)用協(xié)議等的情況下,可包括另外一個消息頭。
端口號(PO)字段用于擴(kuò)展消息集,該消息集可針對每一端口進(jìn)行分類。對于消息集的改訂或與其它應(yīng)用協(xié)議的兼容,該消息集可設(shè)置在每一端口中。
消息包括用于主設(shè)備向從設(shè)備請求執(zhí)行功能的命令代碼,執(zhí)行該命令所需的輸入因子,和在從設(shè)備執(zhí)行該命令后發(fā)送至主設(shè)備的因子。另外,應(yīng)該構(gòu)建和定義所述消息以利于在8比特微型計算機(jī)中進(jìn)行編程。特別的,即使消息被校正,也應(yīng)該被模塊編程,這樣可以容易地反映消息的校正。為此,所有的消息分別具有獨立的功能。這意味著所有的消息不包括任何相應(yīng)的低級別消息,在軟件執(zhí)行過程中各例程間不存在因果關(guān)系。如果消息具有彼此獨立的功能,可以通過合并消息擴(kuò)展用于控制和監(jiān)視設(shè)備的功能。如果從設(shè)備已經(jīng)正常地執(zhí)行了命令,傳送至主設(shè)備的因子是{ACK+返回變元},否則,因子是{NAK+錯誤代碼}。每個設(shè)備中最多可包括256個命令。根據(jù)該命令代碼來確定輸入變元和返回變元的存在/不存在及字節(jié)數(shù)。
此時,變元的數(shù)據(jù)類型如下布爾值1字節(jié)字符,無符號字符1字節(jié)整數(shù),無符號整數(shù),短整數(shù),無符號短整數(shù)2字節(jié)長數(shù),無符號長數(shù)4字節(jié)字符串包含NULL的發(fā)送/接收另外,為了分類該命令代碼,提出以下概念。
雖然所有的產(chǎn)品獨立使用0x00~0xFF范圍內(nèi)的256個命令代碼,公共代碼仍然被用作在所有產(chǎn)品中公用的命令。由于包含了通用結(jié)構(gòu)產(chǎn)品的功能,因此方便了項目的校正。所有的命令代碼分為必要命令代碼和可選命令代碼。必要命令是用于設(shè)備的基本信息的命令及進(jìn)行通信所需要的命令。它們又分為臨時命令(標(biāo)記為I)和程序命令(標(biāo)記為P)。當(dāng)從設(shè)備收到臨時命令時可立即執(zhí)行該臨時命令,程序命令則需要用于執(zhí)行命令的指示。并沒有對于所有產(chǎn)品由標(biāo)準(zhǔn)代碼指定算法區(qū)中的命令代碼。由于同一類的產(chǎn)品能夠根據(jù)它們的型號或制造者采用不同的算法彼此通信,它們能夠使用相同的命令代碼執(zhí)行不同的功能。因此,該區(qū)中的所有命令代碼應(yīng)該被分配固有的產(chǎn)品型號,并被包括作為因子。而且,當(dāng)主設(shè)備利用用于處理應(yīng)用層中的消息的協(xié)議發(fā)送消息時的消息結(jié)構(gòu),與當(dāng)從設(shè)備響應(yīng)于主設(shè)備時的消息結(jié)構(gòu)不同。當(dāng)從主設(shè)備發(fā)送消息時,該消息由一個命令代碼和用于執(zhí)行該命令代碼的輸入因子也就是變元(ARG)構(gòu)成。因子的數(shù)量和數(shù)據(jù)類型根據(jù)命令代碼而不同。當(dāng)分組錯誤或執(zhí)行從主設(shè)備接收的命令代碼時,由從主設(shè)備接收一個分組的從設(shè)備發(fā)送的消息的結(jié)構(gòu)被分為兩種,一種具有錯誤,另一種沒有錯誤。如果從主設(shè)備接收的分組沒有錯誤,則正常執(zhí)行命令代碼,消息結(jié)構(gòu)包括一個命令代碼、ACK和從命令代碼的執(zhí)行產(chǎn)生的因子(ARG)。產(chǎn)生的因子的數(shù)量和數(shù)據(jù)類型根據(jù)命令代碼而不同。如果在從主設(shè)備收到的分組中產(chǎn)生了錯誤,則消息包括一個命令代碼、NAK和分組錯誤代碼。如果分組正常,但在命令代碼的執(zhí)行期間產(chǎn)生了一個錯誤,則消息包括一個命令代碼、NAK和錯誤代碼。
CRC值用于檢測收到的分組的錯誤或使接收設(shè)備檢測傳輸期間的分組錯誤。該CRC由16比特構(gòu)成,使用從ETX到恰好在CRC字段前的字節(jié)的數(shù)據(jù)產(chǎn)生CRC的值或檢測錯誤。
ETX(0x03)是一個表示分組結(jié)束的通信字,提供了一種在接收期間無需采用CRC和分組長度字段而檢測分組錯誤的方法。也就是說,當(dāng)收到與分組長度一樣長的字節(jié)數(shù)據(jù)時,如果最后的字節(jié)不是ETX,就可以判斷分組錯誤,此時,可以省略利用CRC進(jìn)行的分組錯誤校驗。
下面將詳細(xì)介紹上述分組結(jié)構(gòu)的地址。
網(wǎng)絡(luò)上的每個主設(shè)備或從設(shè)備被識別為一個地址。各系統(tǒng)具有被分配的2字節(jié)的地址,可以通過分配的地址向相應(yīng)對方發(fā)送分組。如圖14所示,地址分為物理地址和邏輯地址,該物理地址由3比特的網(wǎng)絡(luò)代碼和5比特的產(chǎn)品代碼組成,當(dāng)產(chǎn)品發(fā)出時該物理地址保持不變,以及8比特的邏輯地址被用于分類同類產(chǎn)品或作為一個組地址,并通過通信是可變的。
家庭的網(wǎng)絡(luò)可被簡單分成PC組、A/V組和生活組,也就是家用設(shè)備組,以及3比特的網(wǎng)絡(luò)代碼被用于這種分類。即使家用設(shè)備網(wǎng)絡(luò)與家庭中的其它子網(wǎng)在通信協(xié)議上不同,網(wǎng)絡(luò)分類字段對于與PC組或A/V組產(chǎn)品的通信也是必需的。網(wǎng)絡(luò)代碼分類的一個例子如圖15所示。
根據(jù)該網(wǎng)絡(luò)代碼,5比特被分配用于產(chǎn)品代碼,即產(chǎn)品名稱(如洗衣機(jī)、電冰箱、保健產(chǎn)品、燈、安全產(chǎn)品等),以及8比特被分配用于分類同類的產(chǎn)品。這是考慮到客棧、旅館等的條件。
用于分類同類產(chǎn)品的8比特字段也用作根據(jù)產(chǎn)品的安裝位置而分類的組地址。當(dāng)網(wǎng)絡(luò)管理員在網(wǎng)絡(luò)上注冊產(chǎn)品時,用戶輸入產(chǎn)品的安裝位置。
此時,以兩種方式來確定產(chǎn)品組。根據(jù)第一組地址,通過分別將各字段的值填寫為“1”來確定對應(yīng)于低字段的所有對象。此時,組意味著屬于同一類或同一網(wǎng)絡(luò)的產(chǎn)品。例如,如果網(wǎng)絡(luò)代碼值為“111”,它代表所有的家庭網(wǎng)絡(luò),如果產(chǎn)品代碼值為“1111”,代表相應(yīng)網(wǎng)絡(luò)的所有產(chǎn)品。如圖16所示,根據(jù)組地址選擇指定類的產(chǎn)品組,如果組地址值為“11111111”,它代表對應(yīng)網(wǎng)絡(luò)的所有產(chǎn)品和產(chǎn)品代碼。根據(jù)第二組地址,如圖17所示,該地址選擇一個指定位置的產(chǎn)品組。此時,產(chǎn)品代碼為“11111”以指定所有的產(chǎn)品,根據(jù)安裝的位置來指定該邏輯地址值。如果網(wǎng)絡(luò)代碼為“111”,以及產(chǎn)品代碼為“11111”,邏輯地址字段代表位置代碼。另外,如圖18所示,可通過指定組地址來選擇位于一個指定位置處的指定產(chǎn)品組。
接下來將描述即插即用處理,由此設(shè)備通過網(wǎng)絡(luò)進(jìn)行連接,確定分配給設(shè)備的初始家庭代碼和地址及通信環(huán)境。
為了通過網(wǎng)絡(luò)連接的設(shè)備彼此進(jìn)行通信,所有的設(shè)備被確定具有相同的通信速度,并在物理網(wǎng)絡(luò)中分配它們的唯一地址。此時,主設(shè)備應(yīng)該具有一個所有設(shè)備的名稱和地址的數(shù)據(jù)庫。而且,在各家庭間的傳輸線沒有如電源線般被分類的情況下,各家庭應(yīng)該被分類。為此,負(fù)責(zé)即插即用處理的網(wǎng)絡(luò)管理器在電源剛開始提供時,確定用于分類各家庭的家庭代碼。確定家庭代碼后,在設(shè)備被首次連接至網(wǎng)絡(luò)時,網(wǎng)絡(luò)管理器接收來自用戶的在設(shè)備上的信息輸入,并執(zhí)行發(fā)現(xiàn)和尋址處理,用于向相應(yīng)設(shè)備分配地址。處理完之后,執(zhí)行一個預(yù)請求處理,用來改變諸如型號或通信狀態(tài)下的設(shè)備的控制器版本的設(shè)備信息、用于分組構(gòu)建的緩沖器的大小、或通信速度。該預(yù)請求過程不總是必要的,但要按需執(zhí)行。設(shè)備信息對于識別所連接設(shè)備的名稱是必要的,為了主設(shè)備發(fā)送大量的數(shù)據(jù)至從設(shè)備而確定分組大小時,執(zhí)行對于緩沖器大小的請求。當(dāng)大量數(shù)據(jù)被發(fā)送/接收,或數(shù)據(jù)的發(fā)送/接收結(jié)束時,主設(shè)備向從設(shè)備請求改變速度。預(yù)請求處理結(jié)束后,執(zhí)行一個通用通信模式??紤]到用戶的位置,應(yīng)該在電源輸入至設(shè)備后無需用戶額外安裝或輸入工作而立即執(zhí)行該即插即用處理。但是,在設(shè)備連接到網(wǎng)絡(luò)上后,關(guān)于設(shè)備的信息被輸入至網(wǎng)絡(luò)管理器,考慮將電源線用作網(wǎng)絡(luò)介質(zhì)。在電源線的情況下,相鄰用戶間的傳輸線不被分類。因此,在設(shè)備被連接到網(wǎng)絡(luò)上的狀態(tài)下,如果網(wǎng)絡(luò)管理器也被安裝在鄰近的房子中,鄰近房子中的網(wǎng)絡(luò)管理器可以向設(shè)備分配地址。為了解決這個問題,網(wǎng)絡(luò)管理器首先以設(shè)備向網(wǎng)絡(luò)管理器輸入設(shè)備信息的方式向設(shè)備請求地址注冊。
根據(jù)上述的家庭代碼確定處理,網(wǎng)絡(luò)管理器在初始電源輸入階段向所有的設(shè)備發(fā)送一個家庭代碼確認(rèn)消息,以確定用于分辨各家庭的固有家庭代碼。此時,因子是產(chǎn)生的作為0x00~0xFF范圍內(nèi)的特定家庭代碼的值。如果沒有收到響應(yīng),網(wǎng)絡(luò)管理器確定相應(yīng)家庭代碼作為它自己的家庭代碼,因為該家庭代碼在網(wǎng)絡(luò)管理器所連接的物理網(wǎng)絡(luò)中是唯一的。如果接收到響應(yīng),意味著相應(yīng)家庭代碼不是唯一的值,網(wǎng)絡(luò)管理器再次產(chǎn)生一個特定家庭代碼以重復(fù)上述處理。由于當(dāng)網(wǎng)絡(luò)管理器決定各產(chǎn)品的地址時,對于各設(shè)備同時確定上述家庭代碼,同一家庭代碼被分配給同一家庭中的產(chǎn)品,使得各家庭被分類。
然而,包括家庭代碼的與地址相關(guān)的信息被存儲在各產(chǎn)品的非易失存儲器中,因此如果用戶在各產(chǎn)品的地址分配之后變化他/她的住處,這可能成為一個問題。具體地,如果任意其它連接在同一物理網(wǎng)絡(luò)中的家庭與移出家庭使用同一家庭代碼,則由于家庭代碼沖突各家庭不能被分類。因此,在移動的情況下,應(yīng)該通過在提供給其它設(shè)備的電源全部被切斷的狀態(tài)下,僅對網(wǎng)絡(luò)管理器輸入電源,而在初始家庭代碼確定時,重復(fù)確認(rèn)家庭代碼沖突。如果沒有發(fā)生沖突,不改變家庭代碼,仍按原樣使用,如果發(fā)生沖突,所有產(chǎn)品的家庭代碼應(yīng)該被復(fù)位,然后重新確定。此時,為了辨別其家庭代碼存在沖突的家用產(chǎn)品,一個用戶ID被用作一個因子。當(dāng)設(shè)備被首次連接至網(wǎng)絡(luò)時通過網(wǎng)絡(luò)管理器輸入用戶ID。
接下來,在發(fā)現(xiàn)和尋址處理中,用戶向能夠管理網(wǎng)絡(luò)的網(wǎng)絡(luò)管理器輸入產(chǎn)品名稱、產(chǎn)品的數(shù)量、安裝位置以及當(dāng)設(shè)備被初始連接至網(wǎng)絡(luò)時供給電源的設(shè)備的用戶ID。然后,網(wǎng)絡(luò)管理器要求初始連接到網(wǎng)絡(luò)上的設(shè)備的注冊,并且如果從設(shè)備收到臨時地址注冊信息,則分配地址。此時,即使存在同一類的多個產(chǎn)品,網(wǎng)絡(luò)管理器為各產(chǎn)品指定新地址以防止任何地址沖突。輸入產(chǎn)品數(shù)量的理由是,當(dāng)同類的幾個設(shè)備被同時連接到網(wǎng)絡(luò)上時,需要網(wǎng)絡(luò)管理器識別是否從所有連接的產(chǎn)品收到注冊消息。而且,輸入安裝位置的理由是,通過出現(xiàn)在網(wǎng)絡(luò)管理器的屏幕上的產(chǎn)品的位置信息,用戶能夠容易地識別產(chǎn)品。用戶ID是用于在上述的家庭代碼復(fù)位期間確認(rèn)產(chǎn)品。網(wǎng)絡(luò)管理器的地址被固定為0x00,無論電源的開/關(guān)狀態(tài)。但是,其它設(shè)備,可能是主設(shè)備,也可能是從設(shè)備,當(dāng)電源切斷時,具有設(shè)備發(fā)送時給定的代表產(chǎn)品地址。網(wǎng)絡(luò)管理器使用被稱為“加入請求”的命令,確定可由設(shè)備來選擇的一個附加地址區(qū),并請求通過用戶的輸入沒有指定地址的設(shè)備(即指定為代表產(chǎn)品地址)利用臨時地址進(jìn)行注冊。在空調(diào)的情況下,0x20被選擇作為接收設(shè)備的號,附加地址具有范圍在0x21~0x2E內(nèi)的因子?!凹尤胝埱蟆泵顑H能夠識別其地址沒有被確定的產(chǎn)品。所述的設(shè)備通過運行隨機(jī)數(shù)發(fā)生器來隨意選擇附加地址,來確定它們的地址(即臨時地址),并且將它們的地址值通知網(wǎng)絡(luò)管理器。如果從0x21~0x2E中選擇了0x25,則該值被發(fā)送到網(wǎng)絡(luò)管理器。臨時地址用作相應(yīng)產(chǎn)品的地址一直到網(wǎng)絡(luò)管理器或主設(shè)備使用一個“地址改變”命令改變它,或?qū)τ谠摦a(chǎn)品的電源關(guān)閉。網(wǎng)絡(luò)管理器使用“地址改變”命令分別復(fù)位產(chǎn)品的重復(fù)地址為代表地址,并且決定具有按附加地址的順序不重復(fù)的臨時地址的產(chǎn)品的地址,以再次呼叫相應(yīng)產(chǎn)品。此時,網(wǎng)絡(luò)管理器通過發(fā)送它自己的家庭代碼和用戶輸入的用戶ID,確定相應(yīng)產(chǎn)品的家庭代碼及用戶ID。如果不重復(fù)的臨時地址是0x2A,0x25和0x23,并且附加地址位于0x21~0x2E的范圍內(nèi),臨時地址為0x23,0x25和0x2A的產(chǎn)品的地址分別被確定為0x21,0x252,和0x23。如果存在重復(fù)的臨時地址,上述處理被重復(fù)。上述的發(fā)現(xiàn)和尋址處理對于所有各類產(chǎn)品重復(fù)14次(即0x01~0x0F)。
如上所述,發(fā)現(xiàn)和尋址處理完成后,設(shè)備的名稱、地址、安裝位置已經(jīng)被存儲在網(wǎng)絡(luò)管理器的數(shù)據(jù)庫中。連接到網(wǎng)絡(luò)管理器的設(shè)備在由網(wǎng)絡(luò)管理器完全指定其地址后,第一次開始作為主設(shè)備或從設(shè)備運行。此時,作為主設(shè)備的設(shè)備從網(wǎng)絡(luò)管理器的數(shù)據(jù)庫中讀出設(shè)備的名稱和地址,并將其存儲在自己的存儲器中,并開始與從設(shè)備通信。在地址分配前,所有的設(shè)備僅能作為從設(shè)備。分配了它們的地址的設(shè)備周期性地廣播一個消息來通知它們的存在,因為可以控制各個設(shè)備的主設(shè)備應(yīng)該知道設(shè)備是否被連接在網(wǎng)絡(luò)上。如果不區(qū)分連接的設(shè)備和斷開的設(shè)備,則很難發(fā)現(xiàn)不能通信是由于斷電引起的還是由于設(shè)備故障引起的。同樣,斷開的設(shè)備以一種非激活狀態(tài)顯示在網(wǎng)絡(luò)管理器的屏幕上以通知用戶。所有分配了地址的設(shè)備都周期性地廣播運行消息以通知它們的存在,此時需要調(diào)整周期。如果設(shè)備的數(shù)目很小,這沒有關(guān)系,但是如果設(shè)備的數(shù)目很多,太短的周期會導(dǎo)致太多的要發(fā)送的運行消息,從而惡化了網(wǎng)絡(luò)性能。將初始周期確定為很長,然后根據(jù)設(shè)備數(shù)目按比例進(jìn)行調(diào)整。也就是說,如果設(shè)備數(shù)目少,則將周期定短,而設(shè)備數(shù)據(jù)多時,則將周期定長,這樣可以保持網(wǎng)絡(luò)的性能。此時,網(wǎng)絡(luò)管理器確定周期,各個設(shè)備廣播它自己的周期作為運行消息的因子。網(wǎng)絡(luò)管理器接收各個設(shè)備的運行消息,如果收到的運行消息與網(wǎng)絡(luò)管理器確定的周期不同,則網(wǎng)絡(luò)管理器確定相應(yīng)設(shè)備的周期作為它自己的周期。
下面將描述產(chǎn)生設(shè)備的通信狀態(tài)的事件。
事件意味著在設(shè)備中產(chǎn)生了特定狀態(tài)改變的情況,并且根據(jù)產(chǎn)生源可以被分成下列5類。它們是用戶事件,當(dāng)用戶通過一個按鍵直接命令設(shè)備時產(chǎn)生此事件;周期事件,它是在預(yù)定間隔自動產(chǎn)生的事件(例如,從網(wǎng)絡(luò)管理器發(fā)送的預(yù)定周期的運行通知消息);狀態(tài)事件,它是在監(jiān)視系統(tǒng)狀態(tài)的過程中由于設(shè)備的自發(fā)狀態(tài)變化而產(chǎn)生的(例如,溫度、濕度、洗滌周期的變化等等);出錯事件,它是當(dāng)與系統(tǒng)操作相關(guān)的錯誤出現(xiàn)時產(chǎn)生的事件;以及外部事件,它是當(dāng)從系統(tǒng)的外部如網(wǎng)絡(luò)服務(wù)器等請求時產(chǎn)生的(例如,當(dāng)網(wǎng)絡(luò)管理器作為家庭服務(wù)器時,來自一個遠(yuǎn)程位置的通信請求)。
具有一個用戶接口如鍵盤、鼠標(biāo)和監(jiān)視器的設(shè)備可以通過所有的5種事件執(zhí)行與所有設(shè)備的對等通信。但是,為了用戶接口不足的設(shè)備來執(zhí)行對等通信,影響通信的條件應(yīng)該被預(yù)先確定,或者只可能通過由于設(shè)備的內(nèi)部因素產(chǎn)生的事件來進(jìn)行對等通信。
根據(jù)本發(fā)明,如果產(chǎn)生了一個事件,則相應(yīng)設(shè)備通過使用通知分組向所有設(shè)備通知它自己的狀態(tài)變化來執(zhí)行通信。為何事件具有重要的意義的原因在于,在用戶監(jiān)視設(shè)備狀態(tài)的情況下,由設(shè)備來通知它自己的狀態(tài)變化比每次當(dāng)用戶想要知道設(shè)備的狀態(tài)時,他/她請求設(shè)備的狀態(tài)值要有效得多。同樣,由于設(shè)備故障或錯誤出現(xiàn)應(yīng)該在它一出現(xiàn)就立即被通知,所以需要當(dāng)事件產(chǎn)生時立即通知狀態(tài)變化的處理。
由1字節(jié)的事件代碼來表示由各個設(shè)備實現(xiàn)的事件,并且被分成在所有設(shè)備中一般都實現(xiàn)的公共事件和為每一個產(chǎn)品實現(xiàn)的專用事件。作為代碼分類,由于可以加在后面的代碼的數(shù)目對每一項都是不同的,所以使用區(qū)域分類而不是字段分類。
公共事件可被進(jìn)一步分為與用戶操作相關(guān)的事件區(qū)和通用于所有設(shè)備的錯誤事件區(qū)。與用戶操作相關(guān)的事件可以是一個按鍵或撥號輸入、門打開/關(guān)閉、負(fù)載輸入等等,并且具有0x11~0x2F的事件代碼值。公共事件可以是操作中的門打開等,且具有0x30~0x4F的事件代碼值。專用事件可以被分為用于每一產(chǎn)品的錯誤事件和用于每一個產(chǎn)品的狀態(tài)事件。用于每一產(chǎn)品的錯誤事件表示每個產(chǎn)品的固有錯誤狀態(tài)或故障狀態(tài),且具有0x70~0xAF的事件代碼值。操作狀態(tài)事件是在產(chǎn)品的操作中一旦產(chǎn)品的狀態(tài)改變時產(chǎn)生的事件,且具有0xB0~0xFF的事件代碼值。
事件代碼可以被分類為所有設(shè)備基本上都實現(xiàn)的基本事件代碼(例如,故障事件代碼)和設(shè)備可選實現(xiàn)的可選事件代碼。當(dāng)事件產(chǎn)生時,基本事件代碼使得狀態(tài)改變被廣播作為通知分組,因此另一個設(shè)備可以監(jiān)視狀態(tài)變化。此時,使用的命令代碼是通知命令,并且具有1字節(jié)的事件代碼和4字節(jié)的事件代碼狀態(tài)值作為因子。如果在一個設(shè)備內(nèi)產(chǎn)生了一個事件,可以簡單地通過廣播通知分組來通知該事件,但是它命令另一個設(shè)備的操作。例如,當(dāng)洗衣機(jī)的洗滌周期結(jié)束時,它命令走廊的燈打開,或者它命令空調(diào)顯示一個文本消息。為此,一旦產(chǎn)生了事件代碼,每一個設(shè)備應(yīng)該存儲關(guān)于地址、操作命令代碼和進(jìn)行通信的設(shè)備因子的信息。但是,因為根據(jù)用戶的喜好這些信息是不同的,應(yīng)該通過網(wǎng)絡(luò)管理器來確定當(dāng)在各個設(shè)備中產(chǎn)生事件時的通信狀態(tài)。此時,在不僅命令另一個設(shè)備操作并且廣播消息的情況下,用戶應(yīng)該確定這些選項。當(dāng)確定事件通信狀態(tài)時另一個要考慮的是用于通知事件的時間間隔。如果確定事件通信的溫度狀態(tài)或傳感器狀態(tài)被快速改變,則由于過多的事件通信分組,網(wǎng)絡(luò)的性能可能會惡化,這樣需要一個最小事件產(chǎn)生間隔。因此,當(dāng)用戶通過網(wǎng)絡(luò)管理器確定對于所產(chǎn)生事件的通信狀態(tài)時,他/她應(yīng)當(dāng)確定事件代碼、進(jìn)行通信的設(shè)備、事件產(chǎn)生的最小間隔、通信消息等等。
事件通信狀態(tài)作為一個事件文件被存儲在各個設(shè)備的非易失存儲器中,該文件包括一個圖19的信頭和圖20的主體。用戶可以通過網(wǎng)絡(luò)管理器重新確定事件通信狀態(tài)。在初始確定的情況下,在通過一個緩沖器大小讀取命令確認(rèn)設(shè)備的非易失存儲器的大小是否足夠后,用戶確定事件通信狀態(tài)。同樣,由于非易失存儲器的大小是有限的,關(guān)于非必要事件通信狀態(tài)的信息應(yīng)該被刪除。用于此目的的消息同樣存在,用戶可以使用這個消息(即一個事件代碼刪除命令代碼)來刪除非必要的事件通信狀態(tài)。
為了執(zhí)行事件代碼,從存儲在非易失存儲器中的事件文件的信頭中讀出將被執(zhí)行的事件的總數(shù)(total_event_no)和事件代碼。如果在操作中定義的變量的狀態(tài)改變了,系統(tǒng)主程序在相應(yīng)存儲器中存儲這個信息。事件代碼執(zhí)行程序,通過將系統(tǒng)狀態(tài)值和從事件文件中讀出的事件代碼進(jìn)行比較來判斷是否執(zhí)行。當(dāng)系統(tǒng)的各個狀態(tài)同時改變時,為了防止由于持續(xù)執(zhí)行事件代碼而使得微型計算機(jī)的資源被占用,事件代碼執(zhí)行例程一次只執(zhí)行一個事件代碼。
下面將解釋一種控制各種各樣的錯誤的方法。
通信錯誤被分類為,由于通信線路噪聲而引起的數(shù)據(jù)比特錯誤、由不同通信頻率引起的錯誤、由于數(shù)據(jù)碰撞而引起的數(shù)據(jù)比特錯誤、當(dāng)線路和設(shè)備之間的阻抗不匹配時由傳輸信號衰減引起的錯誤、以及盡管沒有產(chǎn)生數(shù)據(jù)比特錯誤,由于接收設(shè)備不能處理數(shù)據(jù)的發(fā)送/接收而引起的錯誤。通信線路的噪聲引起接收方物理層的幀錯誤,即UART幀錯誤,或者改變了數(shù)據(jù)值。如果發(fā)送/接收設(shè)備的通信頻率不同,UART幀錯誤很可能產(chǎn)生在接收方。當(dāng)多個設(shè)備同時進(jìn)行發(fā)送時,UART幀錯誤很可能產(chǎn)生在接收方。當(dāng)線路和設(shè)備之間的阻抗不匹配時,在接收方收不到信號。
如果主設(shè)備向從設(shè)備發(fā)送了一個請求分組,從設(shè)備接收該分組并檢測定義的錯誤。如果從設(shè)備從收到的數(shù)據(jù)比特中檢測到了錯誤,則從設(shè)備向主設(shè)備發(fā)送一個響應(yīng)分組,該響應(yīng)分組包括在發(fā)送方檢測到的錯誤的代碼值,如圖21所示,然后主設(shè)備根據(jù)該錯誤代碼執(zhí)行重傳或者錯誤處理功能。
此時,錯誤代碼包括1字節(jié),并且被分為分配給由所有設(shè)備通用的0x00~0x9F區(qū)的公共錯誤代碼,和分配給由設(shè)備獨立使用的0xA0~0xFF區(qū)的故障代碼。該公共錯誤代碼表示通信錯誤的值,該故障代碼表示用于診斷各個設(shè)備如傳感器與通信功能分離的固有功能的故障的值。每個設(shè)備具有96個代碼,被分類為分組錯誤、接收設(shè)備錯誤、錯誤命令、非法變元、非法訪問和故障代碼。它們的詳細(xì)信息如下。
首先,分組錯誤被分為接收分組的CRC錯誤、1字節(jié)的接收超時和響應(yīng)等待超時。
當(dāng)主設(shè)備或從設(shè)備的接收分組中包括的CRC值與計算出的CRC值不同時,產(chǎn)生接收分組的CRC錯誤。如果在從設(shè)備接收的響應(yīng)分組中產(chǎn)生CRC錯誤,則從設(shè)備向主設(shè)備發(fā)送包含CRC錯誤值的響應(yīng)分組。如果主設(shè)備收到該響應(yīng)分組,則分組最多被重傳三次。
當(dāng)由于通信線路上的噪音或其它原因,收到的字節(jié)之間的時間間隔從2BTU(如,最小時間3秒9600bps基礎(chǔ))偏離時,產(chǎn)生1字節(jié)的接收超時錯誤。但是,此時,即使是分組長度字段也應(yīng)該在接收方被接收。如果在收到分組長度字段之前,字節(jié)時間間隔變得大于預(yù)定值,則忽略收到的數(shù)據(jù)。如果產(chǎn)生了1字節(jié)接收超時錯誤,接收設(shè)備停止接收,將分組接收緩沖器的剩余區(qū)域用0填充,并向上層發(fā)送這個分組。結(jié)果,在接收設(shè)備中產(chǎn)生CRC錯誤。如果當(dāng)主設(shè)備向從設(shè)備發(fā)送請求分組時,由于線路的噪聲而在從設(shè)備中產(chǎn)生了錯誤,包括CRC錯誤的響應(yīng)分組被發(fā)送給主設(shè)備。如果主設(shè)備正常地收到了該響應(yīng)分組,則分組最多被重傳3次。如果盡管從設(shè)備正常地收到了請求分組并發(fā)送了一個正常的響應(yīng)分組,而在主設(shè)備中產(chǎn)生了1字節(jié)接收超時錯誤,主設(shè)備也最多重傳分組3次。盡管字節(jié)接收超時既可以產(chǎn)生在主設(shè)備又可以產(chǎn)生在從設(shè)備中,錯誤代碼只在各個通信層中是必要的,并且關(guān)于1字節(jié)接收超時錯誤的信息并不給發(fā)送設(shè)備。也就是,字節(jié)接收時間錯誤是一個用于設(shè)備內(nèi)的處理的值,并不在主設(shè)備和從設(shè)備之間傳輸。接收超時的時間限制與忙檢測相關(guān)。根據(jù)本發(fā)明,由于發(fā)送/接收是以分組為單位執(zhí)行的,字節(jié)傳輸?shù)臅r間間隔應(yīng)該被縮短以便在忙檢測期間由另一個設(shè)備通知總線占用。如果接收超時的時間期限很大,則在一個分組的傳輸期間可能出現(xiàn)時延。此時,另一個試圖傳輸?shù)脑O(shè)備可能在忙檢查中判斷當(dāng)前狀態(tài)為空閑狀態(tài),并立刻開始傳輸而導(dǎo)致發(fā)生數(shù)據(jù)碰撞。
當(dāng)主設(shè)備發(fā)送了請求分組后沒有接收到數(shù)據(jù)時產(chǎn)生響應(yīng)等待超時錯誤。也就是,當(dāng)沒有進(jìn)行通信的從設(shè)備存在時產(chǎn)生。主設(shè)備的物理層最大等待5秒,如果沒有收到數(shù)據(jù),它準(zhǔn)備并向數(shù)據(jù)鏈路層發(fā)送一個包括響應(yīng)等待超時代碼的分組。數(shù)據(jù)鏈路層向應(yīng)用層發(fā)送一個消息,這樣應(yīng)用層認(rèn)識到相應(yīng)設(shè)備不存在。
下面,接收設(shè)備錯誤被分成存儲器不足、通信拒絕、遙控拒絕、通信協(xié)議不匹配和消息端口不匹配。
當(dāng)主設(shè)備向從設(shè)備發(fā)送一個如存儲器寫、LCD寫、EEPROM寫等等的命令代碼時,如果從設(shè)備沒有空閑的存儲器用于寫接收的數(shù)據(jù),則產(chǎn)生存儲器不足錯誤。
盡管從設(shè)備正常地從主設(shè)備收到了請求分組,當(dāng)從設(shè)備想要優(yōu)先執(zhí)行通信外的另一個功能時,則產(chǎn)生通信拒絕錯誤。收到通信拒絕錯誤的主設(shè)備可以在最小5秒(即主設(shè)備的最大等待時間)之后再試一次。
當(dāng)從設(shè)備在從設(shè)備的遙控是不可能的狀態(tài)下收到一個控制命令消息時,產(chǎn)生遙控拒絕錯誤。
下面,錯誤命令被分為不能被執(zhí)行的命令代碼和不能被執(zhí)行的因子值。
在從設(shè)備正常地收到請求分組,但請求分組包括一個從設(shè)備無法執(zhí)行的命令代碼的情況下,產(chǎn)生不能被執(zhí)行的命令代碼錯誤。
在收到可以被執(zhí)行的命令代碼并且確定因子值處于一個定義的范圍內(nèi),但是設(shè)備不能執(zhí)行該值的情況下,產(chǎn)生不能被執(zhí)行的因子值錯誤。例如,在一個微波爐的負(fù)載開/關(guān)命令的情況下,如果輸入值與機(jī)罩風(fēng)扇相關(guān),但是微波爐沒有機(jī)罩風(fēng)扇,那么產(chǎn)生不能被執(zhí)行的因子值錯誤。
下面,非法變元被分成因子數(shù)目與定義的數(shù)目不同的因子數(shù)目錯誤和超范圍錯誤。
在從設(shè)備正常地從主設(shè)備收到請求分組,但是用于執(zhí)行命令代碼的輸入因子的數(shù)目與消息集中定義的數(shù)目不同的情況下,產(chǎn)生因子數(shù)目與定義的數(shù)目不同的因子數(shù)目錯誤。此時,因子的數(shù)目是字節(jié)的數(shù)目。如果輸入因子被定義為一個“無符號整型”變量,則輸入因子的數(shù)目為2,因為每一個因子由2字節(jié)組成。
在從設(shè)備正常地從主設(shè)備收到請求分組,但是用于執(zhí)行命令代碼的輸入因子值偏離了消息集中定義的范圍,則產(chǎn)生超范圍錯誤。
下面,在從設(shè)備正常地從主設(shè)備收到請求分組,但是用于執(zhí)行命令代碼的輸入因子值指定了一個禁止的存儲器區(qū)域或一個禁止控制的負(fù)載的情況下,產(chǎn)生由禁止動作的檢測引起的非法訪問錯誤。
下面將解釋故障代碼。
所有設(shè)備除了通信外還具有它們固有的功能,這些功能的任何故障都可以被遠(yuǎn)程診斷。當(dāng)設(shè)備的功能處于故障中時,故障代碼被包括在要發(fā)送給主設(shè)備的響應(yīng)分組中。例如,當(dāng)從設(shè)備收到包括用于從溫度傳感器讀取值的命令代碼的響應(yīng)分組時,如果溫度傳感器被判斷處于故障,則從設(shè)備將溫度傳感器的故障代碼值和‘NAK’一起包括在響應(yīng)分組中,以向主設(shè)備發(fā)送包括故障代碼的響應(yīng)分組。所有的設(shè)備使用公共區(qū)域來確定故障代碼的值。
如果組成分組的數(shù)據(jù)比特處于故障中,也就是,如果產(chǎn)生了接收設(shè)備地址錯誤、發(fā)送設(shè)備地址錯誤、發(fā)送/接收地址錯誤和分組長度錯誤,本發(fā)明將它們作為CRC錯誤處理。其中的詳細(xì)內(nèi)容如下。
首先解釋接收設(shè)備地址錯誤。
如果在接收設(shè)備地址字段的比特中產(chǎn)生了一個錯誤,則未被呼叫的設(shè)備收到了分組。此時,由于接收設(shè)備地址字段的比特中的錯誤,設(shè)備檢測到CRC錯誤。首先,如果錯誤分組由一個主設(shè)備A發(fā)送給一個從設(shè)備A,另一個從設(shè)備B也收到了該錯誤分組,從設(shè)備B向主設(shè)備A發(fā)送一個包括CRC錯誤值的響應(yīng)分組。從從設(shè)備B收到響應(yīng)分組的主設(shè)備A忽略發(fā)送設(shè)備的地址,并且認(rèn)為是最初呼叫的從設(shè)備A響應(yīng)的,盡管不是從設(shè)備A而是另一個設(shè)備響應(yīng)的。具體地,主設(shè)備認(rèn)為主設(shè)備發(fā)送一個分組后收到的一個數(shù)據(jù)分組是來自被呼叫設(shè)備的響應(yīng)分組。收到響應(yīng)分組的主設(shè)備A向從設(shè)備A最多重發(fā)三次分組。其次,如果由于接收設(shè)備地址字段的錯誤,另一個從設(shè)備B收到了由從主設(shè)備A收到了請求分組的從設(shè)備A發(fā)送給主設(shè)備A的響應(yīng)分組,則從設(shè)備B向從設(shè)備A發(fā)送包括CRC錯誤的響應(yīng)分組。此時,如果不存在分組錯誤,從設(shè)備A可以根據(jù)分組類型字段值識別出響應(yīng)分組,并這樣忽略收到的分組。主設(shè)備A最大連續(xù)等待來自從設(shè)備A的響應(yīng)分組10秒。10秒過后,在不通過從設(shè)備執(zhí)行任何命令代碼的情況下,開始于從主設(shè)備A發(fā)送給從設(shè)備A的請求分組的通信被終止。
下面將解釋發(fā)送設(shè)備地址錯誤。
如果在發(fā)送設(shè)備地址字段的比特中產(chǎn)生了錯誤,由發(fā)送設(shè)備呼叫的設(shè)備接收分組,并檢測到由于發(fā)送設(shè)備地址字段的比特中的錯誤引起的CRC錯誤。首先,當(dāng)主設(shè)備A向從設(shè)備A發(fā)送請求分組時,如果在發(fā)送設(shè)備地址字段中產(chǎn)生了一個錯誤,則收到分組的從設(shè)備A向發(fā)送設(shè)備地址字段中的地址值的設(shè)備(即從設(shè)備或主設(shè)備)發(fā)送響應(yīng)分組。如果這個響應(yīng)分組被無錯誤的發(fā)送,并且另一個從設(shè)備B收到該響應(yīng)分組,則從設(shè)備B可以根據(jù)分組類型字段值識別該響應(yīng)分組,并這樣忽略收到的分組。如果另一個主設(shè)備B收到這個響應(yīng)分組,該主設(shè)備B根據(jù)1分組發(fā)送/1分組接收規(guī)則忽略收到的分組,因為它并沒有發(fā)送請求分組。主設(shè)備A最大連續(xù)等待來自從設(shè)備A的響應(yīng)分組10秒。10秒過去后,從設(shè)備并不執(zhí)行任何命令代碼,通信被終止。其次是主設(shè)備A正常向從設(shè)備A發(fā)送了請求分組,而在從設(shè)備A向主設(shè)備A發(fā)送的響應(yīng)分組的發(fā)送設(shè)備地址字段中產(chǎn)生了一個錯誤的情況。在此情況下,如果響應(yīng)分組被無錯誤地發(fā)送,則另一個從設(shè)備B收到了該響應(yīng)分組,從設(shè)備B可以根據(jù)分組類型字段值識別該響應(yīng)分組,并忽略收到的分組。如果另一個主設(shè)備B收到了該響應(yīng)分組,該主設(shè)備B根據(jù)1分組發(fā)送/1分組接收規(guī)則忽略收到的分組,因為它并沒有發(fā)送請求分組。主設(shè)備A最大連續(xù)等待來自從設(shè)備A的響應(yīng)分組10秒。10秒過去后,從設(shè)備并不執(zhí)行任何命令代碼,通信被終止。
下面解釋發(fā)送/接收地址錯誤。
如果在接收設(shè)備地址字段和發(fā)送設(shè)備地址字段的比特中產(chǎn)生了一個錯誤,則另一個未被發(fā)送設(shè)備呼叫的設(shè)備收到了該分組,但是檢測到CRC錯誤。在此情況下,設(shè)備之間的通信被以接收設(shè)備地址字段錯誤和發(fā)送設(shè)備地址字段錯誤相同的順序被執(zhí)行,然后被終止。
最后將解釋分組長度錯誤。
接收設(shè)備使用與分組長度字段的值相同數(shù)目的字節(jié)來構(gòu)建接收分組緩沖器。首先,在分組長度字段值大于實際值的情況下,接收設(shè)備持續(xù)等待數(shù)據(jù),盡管接收設(shè)備已經(jīng)收到了實際分組。如果收不到更多字節(jié),而字節(jié)之間的接收時間限制超時,則產(chǎn)生超時錯誤,接收設(shè)備將接收分組緩沖器的剩余部分填充為特定數(shù)據(jù),引起產(chǎn)生CRC錯誤。因此,主設(shè)備最多重傳分組三次。其次,在分組長度字段值小于實際值的情況下,接收設(shè)備同樣檢測到CRC錯誤。
由上述描述易知,根據(jù)本發(fā)明的網(wǎng)絡(luò)控制系統(tǒng)具有下列作用。
首先,根據(jù)本發(fā)明,使用主設(shè)備/從設(shè)備類型、1周期類型和半雙工類型的通信系統(tǒng)和利用簡單和標(biāo)準(zhǔn)協(xié)議在家用設(shè)備中使用的低性能微型計算機(jī)的串口通信來構(gòu)建網(wǎng)絡(luò),這樣可以實現(xiàn)一個用于家用設(shè)備的低成本和優(yōu)化的網(wǎng)絡(luò)。
第二,根據(jù)本發(fā)明,由于連接在網(wǎng)絡(luò)上的家用設(shè)備中的一個設(shè)備的操作狀態(tài)的改變可以通過另一設(shè)備通知給用戶,并且可以由用戶來選擇通信狀態(tài)和進(jìn)行通信的設(shè)備,可以最大化用戶便利性。
第三,根據(jù)本發(fā)明,由于電源線可以被用作通信介質(zhì),通過將家用設(shè)備的電源插頭連到插座上而使網(wǎng)絡(luò)連接成為可能,不需要任何進(jìn)一步的操作。
權(quán)利要求
1.一種用于家用設(shè)備的網(wǎng)絡(luò)控制系統(tǒng),所述家用設(shè)備提供有具有串行通信功能的低性能微型計算機(jī),該系統(tǒng)被構(gòu)建以定義一種關(guān)于各個設(shè)備的主/從類型的通信結(jié)構(gòu);根據(jù)所述通信結(jié)構(gòu),確定由應(yīng)用層、數(shù)據(jù)鏈路層和物理層組成的通信標(biāo)準(zhǔn);通過串行通信功能連接設(shè)備來構(gòu)建一個網(wǎng)絡(luò);以及如果產(chǎn)生了一個預(yù)定的通信事件,根據(jù)所述通信結(jié)構(gòu)和通信標(biāo)準(zhǔn),使設(shè)備以特定分組為單位彼此進(jìn)行通信。
2.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),還包括一個連接在外部因特網(wǎng)上的網(wǎng)絡(luò)管理器,用于通過遠(yuǎn)程用戶接口或直接用戶接口控制連接在網(wǎng)絡(luò)上的家用設(shè)備。
3.如權(quán)利要求2所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述網(wǎng)絡(luò)管理器包括一個個人計算機(jī)。
4.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述通信結(jié)構(gòu)被分類為主設(shè)備、從設(shè)備、組合主/從設(shè)備、專用發(fā)送設(shè)備以及專用接收設(shè)備,并根據(jù)相應(yīng)家用設(shè)備的硬件特性被定義。
5.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述通信結(jié)構(gòu)被定義為一個組合主/從設(shè)備,除相應(yīng)家用設(shè)備的硬件特性既不滿足發(fā)送設(shè)備的條件,又不滿足接收設(shè)備的條件外。
6.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,如果產(chǎn)生了預(yù)定的通信事件,則通信結(jié)構(gòu)中的主設(shè)備開始與相應(yīng)從設(shè)備的通信,并且如果實現(xiàn)了預(yù)定的通信狀態(tài),則結(jié)束與從設(shè)備的通信。
7.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述通信結(jié)構(gòu)中的從設(shè)備總是處于接收的待機(jī)狀態(tài),如果主設(shè)備請求通信則可以通信。
8.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,如果產(chǎn)生了預(yù)定的通信事件,則所述通信結(jié)構(gòu)中的組合主/從設(shè)備作為主設(shè)備指導(dǎo)與相應(yīng)從設(shè)備的通信,如果通信結(jié)束,則作為從設(shè)備來保持接收的待機(jī)狀態(tài)。
9.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述通信結(jié)構(gòu)中的專用發(fā)送設(shè)備被定義為只能執(zhí)行發(fā)送的設(shè)備。
10.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述通信結(jié)構(gòu)中的專用接收設(shè)備被定義為只能執(zhí)行接收的設(shè)備。
11.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,包括定義在通信結(jié)構(gòu)中的主設(shè)備的設(shè)備僅具有與預(yù)定從設(shè)備或根據(jù)預(yù)定控制代碼進(jìn)行通信的功能。
12.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述通信結(jié)構(gòu)的主設(shè)備具有一個通信標(biāo)準(zhǔn),包括應(yīng)用層,包括應(yīng)用軟件區(qū)、消息構(gòu)建和分組區(qū)以及消息組合區(qū);數(shù)據(jù)鏈路層,包括分組構(gòu)建區(qū)、分組傳輸確認(rèn)區(qū)、CSM/CD區(qū)、分組校驗區(qū)、地址校驗區(qū)和分組數(shù)據(jù)接收區(qū);以及物理層,包括一個UART。
13.如權(quán)利要求12所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述物理層還包括一個用于電源線通信的適配器。
14.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述通信結(jié)構(gòu)的從設(shè)備具有一個通信標(biāo)準(zhǔn),包括應(yīng)用層,包括應(yīng)用軟件區(qū)、消息構(gòu)建區(qū)、消息執(zhí)行區(qū)、消息組合區(qū)和消息冗余檢驗區(qū);數(shù)據(jù)鏈路層,包括分組構(gòu)建區(qū)、分組傳輸區(qū)、CSM/CD區(qū)、分組校驗區(qū)、地址校驗區(qū)和分組數(shù)據(jù)接收區(qū);以及物理層,包括一個UART。
15.如權(quán)利要求14所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述物理層還包括一個用于電源線通信的適配器。
16.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,各個設(shè)備之間的發(fā)送和接收是同時進(jìn)行的。
17.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述通信事件包括用戶事件、周期性事件、狀態(tài)事件、錯誤事件和外部事件。
18.如權(quán)利要求17所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述用戶事件是通過用戶對相應(yīng)設(shè)備的按鍵直接進(jìn)行操作而產(chǎn)生的。
19.如權(quán)利要求17所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述周期性事件是在預(yù)定時間間隔自動產(chǎn)生的。
20.如權(quán)利要求17所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述狀態(tài)事件是根據(jù)相應(yīng)設(shè)備的狀態(tài)變化而產(chǎn)生的。
21.如權(quán)利要求20所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述狀態(tài)變化包括溫度、濕度和操作狀態(tài)的變化。
22.如權(quán)利要求17所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述外部事件是當(dāng)從設(shè)備的外部向相應(yīng)設(shè)備請求通信時產(chǎn)生的。
23.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,當(dāng)產(chǎn)生通信事件時,相應(yīng)設(shè)備將它自己的狀態(tài)變化信息發(fā)送給所有連接在網(wǎng)絡(luò)上的設(shè)備。
24.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述通信結(jié)構(gòu)中的主設(shè)備共享用于發(fā)送和接收的存儲器。
25.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述通信結(jié)構(gòu)中的從設(shè)備共享用于發(fā)送和接收的存儲器。
26.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述通信結(jié)構(gòu)中的組合主/從設(shè)備共享用于發(fā)送和接收的存儲器。
27.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述分組包括一個分組頭區(qū),包括一個分組頭字段和一個用于以后增加分組功能的字段;一個主體區(qū),包括一個消息頭字段、一個用于以后增加消息功能的字段和一個消息字段;以及一個分組尾區(qū)。
28.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述分組具有17~255字節(jié)的大小。
29.如權(quán)利要求27所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述分組頭字段包括一個由8比特組成的家庭代碼(HC),用于對在其中構(gòu)建網(wǎng)絡(luò)的家庭進(jìn)行分類;一個由16比特組成的接收設(shè)備地址(RA),用于指示接收設(shè)備;一個由16比特組成的發(fā)送設(shè)備地址(SA),用于指示發(fā)送設(shè)備;一個由8比特組成的分組長度(PL),用于指示分組的長度;一個由3比特組成的訪問優(yōu)先級(AP),用于指示傳輸?shù)膬?yōu)先級;一個由5比特組成的分組頭長度(PHL),用于指示分組頭的長度;一個由8比特組成的協(xié)議版本(PV),用于指示協(xié)議版本;一個由4比特組成的分組類型(PT),用于指示分組的類型;一個由2比特組成的重傳計數(shù)(RC),用于指示重傳的數(shù)目;以及一個由2比特組成的分組號(PN),用于指示一個新分組的傳輸。
30.如權(quán)利要求29所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述家庭代碼使用范圍為0x03~0xFE的十六進(jìn)制值。
31.如權(quán)利要求29所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述接收設(shè)備地址總是位于所述發(fā)送設(shè)備地址的前面。
32.如權(quán)利要求29所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述接收設(shè)備地址包括一個2比特的網(wǎng)絡(luò)代碼、6比特的產(chǎn)品代碼和用于對同類產(chǎn)品進(jìn)行分類的8比特代碼。
33.如權(quán)利要求29所述的網(wǎng)絡(luò)控制系統(tǒng),其中,在由于數(shù)據(jù)碰撞或緊急狀態(tài)而重傳的情況下,所述訪問優(yōu)先級被確定為‘0’,在通過消息分組而大量傳輸數(shù)據(jù)的情況下,所述訪問優(yōu)先級被確定為‘1’,在正常通信情況下,所述訪問優(yōu)先級被確定為‘2’,以及在報告網(wǎng)絡(luò)連接狀態(tài)的情況下,所述訪問優(yōu)先級被確定為‘3’。
34.如權(quán)利要求29所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述協(xié)議版本包括4比特的版本和4比特的子版本,并以更新的順序采用范圍為0~15的值。
35.如權(quán)利要求29所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述分組類型分別在十六進(jìn)制值‘0’的情況下指示由主設(shè)備請求的分組,‘4’的情況下指示成功的響應(yīng)分組,‘5’的情況下指示失敗的響應(yīng)分組,‘8’的情況下指示已知分組,‘9’的情況下指示陣列分組,‘10’的情況下指示陣列數(shù)據(jù)的最后一個分組。
36.如權(quán)利要求29所述的網(wǎng)絡(luò)控制系統(tǒng),其中,當(dāng)發(fā)送一個新分組時,所述分組號增加1,當(dāng)發(fā)送同一個分組時所述分組號保持不變。
37.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,如果分組是來自一個從設(shè)備的響應(yīng)分組,將一個8比特的ACK/NAK添加到分組的主體區(qū)的消息字段。
38.如權(quán)利要求27所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述消息分組頭字段包括8比特的消息長度(ML)、8比特的消息頭長度(MHL)和8比特的端口號(PO)。
39.如權(quán)利要求27所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述消息字段包括8比特的命令代碼(CC)和比特數(shù)目可變的變元(ARG)。
40.如權(quán)利要求27所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述分組尾區(qū)包括16比特的錯誤校驗(CRC)和用于指示分組的結(jié)尾的8比特ETX。
41.如權(quán)利要求32所述的網(wǎng)絡(luò)控制系統(tǒng),其中,在多媒體設(shè)備的情況下網(wǎng)絡(luò)代碼分配‘1’,在PC相關(guān)設(shè)備的情況下分配‘2’,在多媒體設(shè)備和PC相關(guān)設(shè)備以外的設(shè)備的情況下分配‘0’,‘3~6’作為預(yù)留代碼,‘7’用于選擇是否使用組尋址。
42.如權(quán)利要求32所述的網(wǎng)絡(luò)控制系統(tǒng),其中,用于對同類產(chǎn)品進(jìn)行分類的代碼根據(jù)網(wǎng)絡(luò)代碼值被用作組尋址代碼。
43.如權(quán)利要求42所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述組尋址代碼被分成一個根據(jù)產(chǎn)品類型的組地址和一個根據(jù)產(chǎn)品的安裝位置的組地址。
44.如權(quán)利要求42所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述組尋址代碼可以通過網(wǎng)絡(luò)管理器按用戶的需要來改變。
45.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述主/從類型通信結(jié)構(gòu)根據(jù)1請求/1響應(yīng)通信周期、1請求/多響應(yīng)通信周期和1請求通信周期中的一個執(zhí)行通信,其中,在1請求/1響應(yīng)通信周期的情況下,主設(shè)備向從設(shè)備發(fā)送一個分組,對此響應(yīng),從設(shè)備向主設(shè)備發(fā)送一個分組以結(jié)束通信;在1請求/多響應(yīng)通信周期的情況下,主設(shè)備向多個從設(shè)備發(fā)送一個分組,對此響應(yīng),各個從設(shè)備向主設(shè)備發(fā)送一個分組,主設(shè)備連續(xù)等待響應(yīng),如果預(yù)定的最大等待時間超時,則主設(shè)備結(jié)束通信;以及在1請求通信周期的情況下,主設(shè)備發(fā)送關(guān)于一個從設(shè)備或多個從設(shè)備的一個請求,然后并不等待響應(yīng)就結(jié)束通信。
46.如權(quán)利要求45所述的網(wǎng)絡(luò)控制系統(tǒng),其中,在所述各個通信周期中給定一個預(yù)定的延遲時間。
47.如權(quán)利要求46所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述延遲時間被確定以使得除了正在執(zhí)行通信的主設(shè)備外的另一主設(shè)備試圖執(zhí)行通信。
48.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,如果產(chǎn)生了所述通信事件,相應(yīng)設(shè)備至少向一個目標(biāo)設(shè)備發(fā)送至少一個預(yù)定操作命令。
49.如權(quán)利要求48所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述操作命令和目標(biāo)設(shè)備由用戶來確定。
50.如權(quán)利要求1所述的網(wǎng)絡(luò)控制系統(tǒng),其中,如果從主/從類型通信結(jié)構(gòu)中的主設(shè)備所發(fā)送的分組中檢測出一個錯誤,則從設(shè)備向相應(yīng)主設(shè)備發(fā)送一個包括錯誤代碼的響應(yīng)分組。
51.如權(quán)利要求50所述的網(wǎng)絡(luò)控制系統(tǒng),其中,所述錯誤代碼包括分組錯誤、接收設(shè)備錯誤、錯誤命令、非法變元、非法訪問和故障代碼。
52.如權(quán)利要求51所述的網(wǎng)絡(luò)控制系統(tǒng),其中,在接收分組的CRC錯誤、1字節(jié)接收超時和響應(yīng)等待超時的情況下,產(chǎn)生所述分組錯誤。
53.如權(quán)利要求51所述的網(wǎng)絡(luò)控制系統(tǒng),其中,在存儲器不足、通信拒絕、遙控拒絕、不匹配協(xié)議版本和不匹配消息端口的情況下,產(chǎn)生所述接收設(shè)備錯誤。
54.如權(quán)利要求51所述的網(wǎng)絡(luò)控制系統(tǒng),其中,在包括不能被執(zhí)行的命令代碼和不能被執(zhí)行的因子值的情況下,產(chǎn)生所述錯誤命令。
55.如權(quán)利要求51所述的網(wǎng)絡(luò)控制系統(tǒng),其中,在因子數(shù)目與定義的數(shù)目不同和超范圍的情況下,產(chǎn)生所述非法變元。
56.如權(quán)利要求51所述的網(wǎng)絡(luò)控制系統(tǒng),其中,當(dāng)檢測到一個禁止的操作命令時產(chǎn)生所述非法訪問。
全文摘要
公開了一種用于家用設(shè)備的網(wǎng)絡(luò)控制系統(tǒng),對于當(dāng)前使用的采用低性能微型計算機(jī)的設(shè)備,滿足低成本和高效率的特性。本系統(tǒng)被構(gòu)造以定義一種關(guān)于各個設(shè)備的主/從類型的通信結(jié)構(gòu);通過串行通信功能來連接設(shè)備以構(gòu)建一個網(wǎng)絡(luò);并且如果產(chǎn)生了一個預(yù)定的通信事件,則使得設(shè)備可以彼此通信。根據(jù)本系統(tǒng),可以實現(xiàn)用于家用設(shè)備的優(yōu)化網(wǎng)絡(luò),并且通過設(shè)備間的協(xié)調(diào)操作顯示各個設(shè)備的運行狀態(tài),從而最大化用戶的便利性。
文檔編號H04L12/26GK1533519SQ01823466
公開日2004年9月29日 申請日期2001年7月5日 優(yōu)先權(quán)日2001年5月30日
發(fā)明者河三 , 河三喆, 白承勉, 李君石, 林定鉉, 崔桓鐘, 具滋仁, 金大雄, 姜成煥 申請人:Lg電子株式會社