軟件大小:
軟件語言:
瀏覽人數:352人
軟件類型:
授權方式:
用戶評分:
更新時間:2023-11-07
軟件分類:Mac系統
運行環境:
技術領域
本發明屬于總線形式的有線控制網絡領域,具體涉及智能家居控制網絡。通過不需要MAC地址的高效網絡自動配置方案,實現有線控制網絡的即插即用。
背景技術
總線形式的控制網絡通過統一的傳輸線(如電力線、雙絞線等)作為總線,將各種電氣設備和子系統連接起來,形成網絡系統,并在
總線上采用統一通信協議,實現內部資源的互通,通過網關與外部網絡(如ISDN等)互聯,實現信息交換。智能家居網絡一般采用總線形式的控制網絡作為控制子網,實現家用電器與各種傳感器的互聯互通。
采用即插即用()技術,為加入系統的硬件設備或網絡節點自動分配相應的資源,實現自動配置,建立設備之間的通信關聯,從而省去用戶配置的麻煩。但是,即插即用
技術一般應用于計算機網絡,而目前的控制網絡基本不支持即插即用,因為大多數控制
工業中使用的網絡由專業人員配置和維護,工控網絡結構相對穩定,因此對即插即用的需求不大。此外,工控網絡節點的資源非常有限,難以實現即插即用。一方面,家庭用戶普遍不具備專業知識,繁瑣的網絡配置過程會給用戶帶來極大的不便,影響家庭網絡產品的推廣;另一方面,家庭控制網絡節點模塊具有更高的智能化程度,其結構更容易改變,因此對即插即用技術的需求更大。
此外,目前所有即插即用技術都依賴于預先寫入模塊的固定MAC地址。依賴MAC地址的即插即用需要向監管機構申請地址空間或對模塊進行預配置,這對控制網絡的生產和使用提出了額外的要求,限制了中小企業的發展。同時,由于需要MAC地址的設備越來越多,MAC地址容易被重寫,導致MAC地址空間耗盡,容易發生MAC地址沖突,使網絡節點無法正常運行。
發明內容
本發明主要針對上述問題,提出一種即插即用的技術,即插即用,以總線的形式用于有線控制網絡,無需MAC地址,從而最大程度簡化家庭網絡的安裝、配置和維護。
本發明的特征在于:當該方法在采用載波監聽機制的家庭有線控制網絡中運行時,按順序包括以下步驟:
步驟 (1) 初始化
自根據
啟動器分類,識別所有常用的智能電子設備,即在所述家庭有線控制網絡的控制總線上實現即插即用,然后根據所述每個電子設備的類別設置不同的軟件模塊,并統一進行功能描述編號,所述軟件模塊包括用戶命令模塊, 傳感命令模塊和執行模塊,在所述各模塊的非易失性存儲介質上,設置兩位二進制數來標記其配置狀態:總分未配置、已自動配置、三個已手動配置,同時每個模塊內置總線接口單元,實現命令或執行器與總線的接口用戶命令模塊由用戶
發起,設置在與用戶交互的每個電子設備上,包括開關面板,并根據用戶的要求發出命令
傳感命令模塊由傳感器啟動,并且
模塊設置在包括紅外傳感器在內的每個家用自動檢測裝置上,并根據傳感器指令發出命令
執行模塊由用戶命令模塊或傳感命令模塊啟動,所述模塊
設置在包括封裝多路繼電器和線性調解電路在內的各執行器上,接收用戶命令模塊或傳感命令模塊,并發送命令
按以下格式統一確定所述各類模塊的功能描述編號,并將所屬編號固化在相應的各類模塊上,函數編號共32位,4個字節,每個字節為8位,其中含義:
第一個字節是模塊的配置信息,
位于第六位和第七位,表示模塊的類型:11代表用戶命令模塊,10代表傳感命令模塊,01代表執行模塊,第二到第五位代表該類型的模塊數量,最多16個,最后兩位數字是優先級的標志位, 分為四個優先事項
第二個字節是模塊的通信類型字節,當任何一個家用智能電子設備作為總線的通信對象實現即插即用時,一個通信對象值
即用于表示電子設備實際運行狀態的電子設備,同時設置通信對象值的組地址:用戶命令模塊的組地址以111開頭,傳感命令模塊以110開頭,執行模塊以10開頭, 然后u是子組地址,表示電子設備的實際組地址,共有16位,但在第二個字節中,其中上面的四位代表通信對象的類型值,后面的四位代表與該類模塊相關的具有相應功能的電子產品的代碼
這
第三、第四字節為系統編號,由此類模塊的制造商和購買者培育,使家庭有線控制網絡中的網關便于識別和下載;
這
網關是一個中心控制節點,運行控制網絡總線的監控程序,同時動態維護通過網絡總線通信的所有通信對象的組地址表;步驟
(2)依次實現即插即用的步驟:
步驟(2.1)中,所述家用智能電子產品與所述總線掛鉤,網關的監控程序自動監控該電子設備的配置標志位置系統有線mac地址沖突,并根據檢測結果,分別按照以下步驟進行處理;
步驟 (2.2
),如果尚未配置,則執行步驟(2.3);
步驟(2.3),網關向電子設備發送消息,進入即插即用的配置程序;
步驟 (
2.4),在收到步驟(2.3)中描述的消息后;電子產品向總線發送地址配置的請求報文,其目的地址為廣播地址;
步驟(2.5)如果傳輸成功,網關向電子設備發送消息,等待接收下一個網關地址配置報文;步驟(
2.6),電子產品收到步驟(2.5)所述的消息后,向網關發送包含功能號的配置請求包,并附上地址配置后完成地址;步驟(
2.7)系統有線mac地址沖突,網關在收到步驟(2.6)中的請求報文后,從組地址中選擇一個尚未注冊的地址,通過回復報文將其分配給電子設備;
步驟 (
2.8)、收到步驟(2.7)中描述的應答報文后,配置一個地址,在后續配置請求報文中包含功能描述編號,根據新地址向網關發送后續配置請求;
步驟 (
2.9)、網關收到步驟(2.8)中描述的后續配置請求報文后,解析功能描述編號,根據電子設備編號提供的信息生成相應的標準配置信息,然后依次通過應答報文廣播給總線;
步驟 (
2.10),根據步驟(2.9)中描述的標準配置信息對電子設備進行配置,從而配置相應的功能;
步(
2.11)、根據步驟(2.1)的結果,如果已經自動配置,則電子設備只有在確定網關有配置更新時才下載配置更新信息,然后進行相應的配置;步驟(
2.12),根據步驟(2.1)的結果,如果已經手動配置,則自行執行其他初始化步驟;
當至少兩個或兩個以上的電子設備同時上電并發送配置請求數據包時,根據總線控制網絡本身的沖突檢測和避免沖突機制來區分發送配置請求數據包的順序。
本發明的優點主要在于,利用總線式家庭有線控制網絡的沖突檢測和防沖突機制,提出了一種不依賴預設MAC地址的家庭有線控制網絡即插即用方法,最大程度簡化了繁瑣的配置過程,實現了資源的自動分配和獲取, 提高智能家電競爭力,同時避免MAC地址沖突導致的系統崩潰問題。
附圖說明
圖 1 顯示了功能描述編號的逐位含義。圖
2 是系統配置的流程圖。
圖 3 顯示了智能家居有線控制網絡的典型結構。
怎么做
本發明主要針對智能家居控制網絡中常用的模塊,通過對模塊的功能進行分類,并用編號進行描述,然后通過上電初始化時的配置檢測、配置請求、總線控制網絡中的載波監聽沖突規避機制,完成不需要MAC地址的模塊的即插即用。
本發明首先對常用模塊進行分類和標識,如表1所示。模塊
類型:啟動器、即插即用、需求命令、收發、應用、實體用戶命令、模塊、用戶需要配置的模塊,如開關、面板等,與用戶交互,傳感命令、模塊、傳感器等,以發出紅外傳感器等自動檢測裝置,執行模塊、命令模塊、模塊等,模塊需要配置接收多路繼電器、線性調節模塊、執行器、電源等,無需
配置,不參與供電、繼電器模塊、EIB網關、中控設備等
表1 控制網絡模塊類型分類
從表中可以看出,根據功能劃分,需要配置的模塊主要有前三類模塊:用戶命令模塊、傳感命令模塊和執行模塊。
在這種分類的基礎上,可以為模塊分配一個功能描述編號,該編號不是模塊的唯一標識符,而是為模塊的配置提供的必要信息。此外,功能描述編號由應用模塊根據自身的模塊功能確定,并固化在模塊中。該數字總共為 32 位,4 個字節,每個人的含義如圖 1 所示。
根據圖中的數字序列,第一個字節是模塊的配置信息,其第六位和第七位代表模塊的類別。第二位到第五位數字表示模塊中總共包含多少個相同的功能模塊,最多十六個,例如,一個十二位繼電器根據圖中的公式應具有11的值。最低兩位數字是優先級標志。第二個字節為通信類型字節,其中上四位表示通信對象值的類型,下四位表示模塊的一個功能塊需要關聯幾個對應的功能塊(例如,命令模塊對應的功能模塊為執行模塊)。第 3 個和第 4 個字節是系統編號,根據模塊的制造商和購買者設置,用于方便生產者管理產品和驅動程序。
為了實現即插即用,總線上需要有一個中央控制節點,用于存儲各種模塊配置信息,并可以解析模塊編號,一般使用網關來完成此功能。此外,還利用控制網絡的沖突檢測和沖突規避機制,實現不依賴MAC地址的網絡地址分配。具體即插即用方案如下:
1、當一個附著在總線模塊上的功能模塊上電時,系統初始化器會自動監控智能模塊單片機中的一個特定標志,該標志有三種狀態,表示模塊尚未配置、模塊已自動配置、模塊已手動配置。
2.如果系統
初始化器檢測到模塊尚未配置,系統程序將進入即插即用配置程序。
3.系統程序會先向總線發送一個帶有地址配置的請求報文,報文的目的地址為廣播地址。
4、如果兩個或兩個以上功能模塊同時上電并發送配置請求報文(發生這種情況的概率很小),則需要依靠總線控制網絡本身的沖突檢測和防沖突機制來區分發送配置請求報文的順序。
5、通過沖突檢測和沖突規避,需要回避的模塊會記錄狀態信息,忽略網關響應的下一個配置回復報文。發送配置應答報文后,重新發送配置請求報文。
6、對于成功發送配置請求報文的節點,系統程序將進入配置等待階段,等待網關返回的地址配置回復報文。
7. 將
網關將從地址池中選擇一個尚未注冊使用的地址,并通過回復數據包將其分配給網絡節點。
8.收到地址配置包后,成功發送地址配置請求
的網絡節點會配置地址并在后續配置請求包中包含功能描述編號,并將后續配置請求發送給網關,網關采用網關分配的新地址。
9. 收到配置請求報文后
,網關首先對功能描述編號進行解釋,根據功能模塊編號提供的信息生成相應的標準配置信息,然后依次通過配置將應答報文廣播給總線。
10.此時,報文的節點將收到配置應答報文,并自行配置相應的功能。
其節點模塊程序的流程圖如圖2所示。
為了在即插即用過程中不依賴MAC地址,本發明采用以下設計方案和思想。
首先,您需要明確MAC地址在網絡配置中的作用。MAC地址本身的內容沒有任何意義,它只是作為節點標識符,在初始化階段或通信過程中唯一標識節點的身份,節點身份總是需要的,但問題是,是否有必要在硬件中固化這個節點身份?如果網絡在節點加入網絡時能夠自動為節點分配一個全網唯一的節點ID,就可以擺脫對MAC地址的依賴。事實上,這是可以做到的。
在一般網絡中,很難為網絡節點分配網絡地址
即通過管理設施(如網關)完全無法識別,關鍵難點在于由于沒有區分信息系統有線mac地址沖突,沒有標識的網絡節點無法判斷管理設施分配的網絡地址是針對自身還是針對其他節點。但是,對于使用載波監聽(CSMA)機制的基于總線的有線網絡,可以巧妙地利用載波監聽沖突檢測機制來實現網絡地址的明確分配,如下所示:
1)載波攔截沖突檢測機制本身保證了總線網絡上只有一個節點有話語權,當多個身份不明的網絡節點同時申請一個網絡地址時,只有一個網絡節點可以成功發送請求;
2)成功發送應用請求的網絡節點將進入
等待回復報文,而其他未成功發送應用請求的網絡節點將不會進入此狀態。
3)當網關發送應答報文時,只有網絡節點在”
for Reply state“將接收到應答報文,使得只有一個網絡節點(即成功發送應用的節點)收到應答報文并正確設置自己的網絡地址;
4) 網關維護一個可用地址池,并且
記錄每個地址的分配狀態,網關會定期對地址池中的地址進行心跳檢測,連續兩次沒有回復心跳的地址將被回收。當網絡節點申請網絡地址時,網關會查詢地址池,找到未使用的地址,并回復該節點完成地址分配。
經過上述配置過程后,
應用模塊可以獲取所需的配置信息,從而實現即插即用。從配置過程中可以看出,MAC地址不需要提前配置,從而擺脫了一般即插即用技術對MAC地址的依賴。本發明的優點是大大簡化了總線控制網絡的配置過程,有效降低了總線控制網絡產品的安裝、配置和維護成本,在方便用戶的同時也有效降低了相關產品的營銷阻力。同時,利用總線式有線控制網絡固有的載波監聽沖突檢測機制,實現了不依賴MAC地址的網絡地址分配和即插即用,避免了MAC地址的管理、維護、應用和分配帶來的額外開銷,也避免了潛在的MAC地址沖突導致的網絡節點故障和網絡功能異常等問題。
本發明的實現是基于智能家庭總線控制網絡,并具有通信功能
該控制網絡的實現是基于組地址和通信對象,每個功能模塊根據其功能包括一些通信對象,通信對象是完成通信功能的主體。每個通信對象
都有一個通信對象值,并與某個組地址相關聯,通信對象值為由通信對象控制的實際功能塊
的狀態表示,而組地址是功能塊之間實現通信和控制的關聯地址。例如,當交換機節點按下某個按鈕時,系統程序改變該按鈕的相應通信對象的值,然后通信對象使用其關聯的組地址向總線發送相應的消息。與地址組關聯的所有收件人都將根據郵件內容更新其地址值。通信對象值的變化將由系統程序反映在與通信對象關聯的功能塊上。這樣就完成了開關按鈕的遠程控制操作。
以上是最簡單的例子,通過類似的方法,還可以實現模塊陣列控制、模塊實時狀態顯示、遠程查詢等一系列更復雜的操作。該控制系統的基本結構如圖3所示。
圖中的中控節點是網關,是一個基于ARM9的Linux嵌入式系統。網關運行一個控制網絡總線的監控程序,該程序接收總線上廣播的配置請求報文,通過總線監控器對報文中包含的功能描述編號進行解釋,生成相應的標準配置報文,然后以配置應答報文的形式廣播給總線。這是中央控制節點提供的配置服務,無需MAC地址即可即插即用。
控制網絡中的其他節點通過組地址進行通信,以完成其不同的功能。控制網絡中的組地址具有固定的結構,對于常規的組地址,其結構如表2所示
網絡組地址結構如表2所示常規組地址
的第一位數字必須為0,最后15位為實際組地址,可分為兩部分,第一部分是主組地址,共4位,第二部分是子組地址,共11位,分層結構便于配置管理。通用組地址由在控制網絡方面具有一定知識和專業技能的工程師配置。
為了實現即插即用,需要為模塊配置一個組地址。即插即用中配置的組地址的第一步是 1,這樣就不會影響手動配置的組地址通信。
當網關
獲取功能描述編號,網關可以通過查看對應的位來判斷該模塊是用戶命令模塊、感知命令模塊還是執行模塊。對于不同的模塊類型,分配不同地址段的組地址,從用戶命令模塊的111開始,傳感命令模塊的110開始,執行模塊的地址從10開始。同時,網關維護一個活動的組地址表,其中包含總線正在使用的以 1 開頭的組地址。網關每 5 分鐘通過心跳檢測組地址是否仍在使用中(具體時間為 5 分鐘加一個隨機數,以防止總線上的數據在特定時間突發),并發送探測報文檢測心跳。對于連續兩個沒有檢測信號響應的組地址,網關會將其從活動組地址表中刪除。
例如,當用戶命令模塊成功發送配置請求報文時,網關首先檢查活動組地址表,如果有以 10 開頭的組地址匹配不充分,網關首先將匹配度不夠的組地址關聯到模塊,否則自動從從 111 開頭的組地址空間中從小到大找到對應數量的組地址并關聯他們與模塊。感知命令模塊和執行模塊也按照相同的分配原理與組地址相關聯,但感知命令模塊自動分配一個以110開頭的組地址,執行模塊自動分配一個以10開頭的組地址。
對于分配的組地址,網關會將其添加到活動組地址表中,并指示是否有足夠的匹配,足夠的匹配中缺少多少,以及命令模塊和執行模塊之間有多少對。經過這樣的配置后,命令模塊和執行模塊可以依次匹配對應的組地址,完成組地址分配功能。