本發(fā)明屬于智能家居領(lǐng)域,更具體的說(shuō)涉及一種智能家居控制總線的設(shè)備沖突解決方法。
背景技術(shù):
現(xiàn)有智能家居行業(yè)的rs485總線上的設(shè)備,要正常工作,都必須基于所有設(shè)備的id地址具備唯一性,所以在設(shè)備上會(huì)有個(gè)地址開(kāi)關(guān)(例如撥碼開(kāi)關(guān)作為id地址),需要安裝工人(需要進(jìn)行額外的培訓(xùn))在安裝前,通過(guò)地址開(kāi)關(guān)設(shè)定不同的id地址。
但在很多情況下,設(shè)備安裝后,才會(huì)去通電,此時(shí)若發(fā)現(xiàn)某個(gè)預(yù)設(shè)的id設(shè)備因?yàn)閕d非唯一而未能正常通訊,要想去查找是哪個(gè)設(shè)備出了問(wèn)題,例如地址不對(duì)或撥碼開(kāi)關(guān)故障,是非常困難,往往需要拆卸設(shè)備進(jìn)行驗(yàn)證,而大多數(shù)情況下,地址開(kāi)關(guān)是隱藏安裝的。
以上對(duì)現(xiàn)有技術(shù)的描述中存在兩個(gè)困難:
1.安裝工人往往不懂設(shè)備id,需要增加相應(yīng)的培訓(xùn);
2.假設(shè)安裝工人,保證地址開(kāi)關(guān)無(wú)誤,但在地址開(kāi)關(guān)故障或沒(méi)有撥到位等情況下,產(chǎn)生了設(shè)備id地址沖突。等到技術(shù)人員,在安裝完成上電后再去一一去核實(shí),查找哪個(gè)設(shè)備地址有誤,將會(huì)帶來(lái)額外成本。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明為解決的安裝工人在不懂設(shè)備id的情況下,無(wú)法確定各個(gè)設(shè)備的地址是否有誤的技術(shù)問(wèn)題是而提供的一種可以遠(yuǎn)程識(shí)別id地址沖突并對(duì)其進(jìn)行修改的一種智能家居控制總線的設(shè)備沖突解決方法。
為了解決上述技術(shù)問(wèn)題,本發(fā)明的技術(shù)方案為:一種智能家居控制總線的設(shè)備沖突解決方法,包括以下步驟:
步驟一:將主設(shè)備和從設(shè)備之間通過(guò)rs485進(jìn)行連接,使用pc客戶端通過(guò)net與主設(shè)備相連;
步驟二:通過(guò)pc客戶端檢測(cè)從設(shè)備id地址是否具備唯一性,并通過(guò)pc客戶端顯示各個(gè)從設(shè)備的id地址;
步驟三:若檢測(cè)到所有從設(shè)備id地址都具備唯一性,則表示各個(gè)從設(shè)備id地址未沖突;若檢測(cè)到從設(shè)備id地址不具備唯一性,則通過(guò)pc客戶端通過(guò)net對(duì)id地址相同的從設(shè)備的id地址進(jìn)行修改,直至所有從設(shè)備id地址都具備唯一性為止。
通過(guò)pc客戶端檢測(cè)各個(gè)從設(shè)備的id地址是否具有唯一性,并且通過(guò)pc客戶端的面板顯示各個(gè)從設(shè)備的id地址,未沖突則檢測(cè)完畢,整條總線正常使用,若是出現(xiàn)沖突,id地址相同的從設(shè)備顯示到pc端的控制面板上,并且通過(guò)pc客戶端對(duì)id地址相同的從設(shè)備進(jìn)行修改,直至所有從設(shè)備id地址都具備唯一性為止,即可以確定每個(gè)從設(shè)備的id地址都準(zhǔn)確無(wú)誤,使得總線可以正常工作;這樣設(shè)計(jì)實(shí)現(xiàn)了遠(yuǎn)程識(shí)別id地址沖突并對(duì)其進(jìn)行修改的目的。
作為優(yōu)選,在步驟二中,主設(shè)備依次向從設(shè)備發(fā)送請(qǐng)求報(bào)文,所有從設(shè)備接收到主設(shè)備請(qǐng)求報(bào)文后,并對(duì)主設(shè)備進(jìn)行響應(yīng),當(dāng)主設(shè)備只向其中一個(gè)id地址的從設(shè)備發(fā)送請(qǐng)求報(bào)文后,但同時(shí)收到多個(gè)從設(shè)備的響應(yīng)報(bào)文時(shí),則說(shuō)明存在從設(shè)備id地址沖突;當(dāng)主設(shè)備只向其中一個(gè)id地址的從設(shè)備發(fā)送請(qǐng)求報(bào)文后,同時(shí)只收到一個(gè)從設(shè)備的響應(yīng)報(bào)文時(shí),則從設(shè)備不存在id地址沖突。
主設(shè)備從第一個(gè)開(kāi)始依次發(fā)送請(qǐng)求報(bào)文,從設(shè)備回復(fù)響應(yīng)報(bào)文,通過(guò)當(dāng)主設(shè)備發(fā)送一個(gè)請(qǐng)求報(bào)文時(shí)收到的響應(yīng)報(bào)文的個(gè)數(shù)來(lái)判斷是否有從設(shè)備id地址沖突,即只收到一個(gè)時(shí),不存在沖突,當(dāng)收到多個(gè)時(shí),則表明存在沖突。
作為優(yōu)選,當(dāng)主設(shè)備向一個(gè)id地址的從設(shè)備發(fā)送請(qǐng)求報(bào)文后,收到多個(gè)id地址相同的從設(shè)備的響應(yīng)時(shí),若多個(gè)從設(shè)備的響應(yīng)報(bào)文是先后順序到達(dá)主設(shè)備時(shí),則根據(jù)先后順序可判定存在id地址沖突;若多個(gè)響應(yīng)報(bào)文重疊時(shí),通過(guò)報(bào)文crc校驗(yàn)進(jìn)行識(shí)別,并判斷是否存在id地址沖突,當(dāng)主設(shè)備檢測(cè)到從設(shè)備id地址存在沖突的情況,則發(fā)送特殊模式報(bào)文給存在id沖突的從設(shè)備,id地址沖突的從設(shè)備接收到該報(bào)文后,進(jìn)入特殊模式。
在存在沖突這種情況下,即當(dāng)主設(shè)備發(fā)送一個(gè)請(qǐng)求報(bào)文時(shí)收到多個(gè)響應(yīng)報(bào)文時(shí),若是多個(gè)響應(yīng)報(bào)文兩者不疊加,可以輕松判斷有多個(gè)響應(yīng)報(bào)文,而當(dāng)有多個(gè)響應(yīng)報(bào)文重疊時(shí),通過(guò)報(bào)文crc校驗(yàn)進(jìn)行識(shí)別,來(lái)判斷是否存在id地址沖突,以及有幾個(gè)地址沖突;主設(shè)備檢測(cè)到從設(shè)備id地址存在沖突的情況,則發(fā)送特殊模式報(bào)文給存在id沖突的從設(shè)備,id地址沖突的從設(shè)備接收到該報(bào)文后,進(jìn)入特殊模式。
作為優(yōu)選,在特殊模式下,主設(shè)備將發(fā)送推測(cè)報(bào)文,所述推測(cè)報(bào)文包括推測(cè)序號(hào)tid和推測(cè)位數(shù)n,所述推測(cè)序號(hào)tid與從設(shè)備序列號(hào)sid的長(zhǎng)度等長(zhǎng),從設(shè)備接收到推測(cè)報(bào)文時(shí),根據(jù)推測(cè)公式
作為優(yōu)選,對(duì)于id地址沖突的從設(shè)備,在特殊模式下的推測(cè)過(guò)程中,當(dāng)且僅當(dāng)只有一臺(tái)從設(shè)備響應(yīng)推測(cè)報(bào)文時(shí),主設(shè)備即可獲得到對(duì)應(yīng)的從設(shè)備的序列號(hào)sid,主設(shè)備通過(guò)sid號(hào)與從設(shè)備進(jìn)行降級(jí)通訊,使其退出特殊模式。
作為優(yōu)選,當(dāng)主設(shè)備識(shí)別出對(duì)應(yīng)沖突設(shè)備的sid后,通過(guò)sid進(jìn)行降級(jí)通訊,發(fā)送修改報(bào)文,修改沖突從設(shè)備的id地址。
從設(shè)備收到推測(cè)報(bào)文時(shí),并獲取推測(cè)序號(hào)tid,根據(jù)推測(cè)位數(shù)n,與自身序列號(hào)sid進(jìn)行計(jì)算,公式如下:
case1:當(dāng)result為0時(shí),從設(shè)備將發(fā)送推測(cè)反饋報(bào)文給主設(shè)備,告知推測(cè)準(zhǔn)確。推測(cè)反饋報(bào)文如7所示,主設(shè)備收到推測(cè)反饋報(bào)文中的ack(可能會(huì)收到多個(gè)從設(shè)備的ack),將n值加1,并進(jìn)入下一輪推測(cè)。
case2:當(dāng)result非0時(shí),從設(shè)備不反饋任何信息,主設(shè)備會(huì)在超過(guò)等待時(shí)間后,將tid的n位進(jìn)行翻轉(zhuǎn),n值保持不變,并進(jìn)入下一輪推測(cè)(等待時(shí)間根據(jù)傳輸介質(zhì)所定)。
作為優(yōu)選,在重復(fù)特殊模式下的推測(cè)過(guò)程中,當(dāng)且僅當(dāng)只有一臺(tái)從設(shè)備響應(yīng)推測(cè)報(bào)文時(shí),主設(shè)備即可獲得到對(duì)應(yīng)的從設(shè)備的序列號(hào)sid,主設(shè)備通過(guò)sid號(hào)與從設(shè)備進(jìn)行降級(jí)通訊,使其退出特殊模式。
若還有剩余從設(shè)備id地址沖突,可以重復(fù)使用以上方法,識(shí)別出對(duì)應(yīng)沖突設(shè)備的sid。
作為優(yōu)選,當(dāng)主設(shè)備識(shí)別出對(duì)應(yīng)沖突設(shè)備的sid后,通過(guò)sid進(jìn)行降級(jí)通訊,發(fā)送修改報(bào)文,修改沖突從設(shè)備的id地址。
當(dāng)主設(shè)備識(shí)別出對(duì)應(yīng)沖突設(shè)備的sid后,通過(guò)sid進(jìn)行降級(jí)通訊,發(fā)送修改報(bào)文,修改沖突從設(shè)備的id地址。
本發(fā)明的有益效果是:本發(fā)明可以不依賴類(lèi)似地址開(kāi)關(guān),進(jìn)行設(shè)備id地址的區(qū)分,因?yàn)槠骷邆湟欢ǖ墓收下?;?dāng)id地址沖突時(shí),可以通過(guò)遠(yuǎn)程進(jìn)行識(shí)別,并遠(yuǎn)程直接修改,而無(wú)需拆卸或者額外操作。本發(fā)明不僅減少了相關(guān)器件的成本,也大大降低了人力成本的投入,從而提高了系統(tǒng)的可用性。
附圖說(shuō)明
圖1為本發(fā)明中主設(shè)備和從設(shè)備的系統(tǒng)結(jié)構(gòu)圖;
圖2為id地址沖突示意圖;
圖3為id沖突修改示意圖;
圖4為請(qǐng)求報(bào)文格式的結(jié)構(gòu)示意圖;
圖5為特殊模式報(bào)文格式的結(jié)構(gòu)示意圖;
圖6為推測(cè)報(bào)文格式的結(jié)構(gòu)示意圖;
圖7為推測(cè)反饋報(bào)文格式的結(jié)構(gòu)示意圖;
圖8為修改報(bào)文格式的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式作進(jìn)一步說(shuō)明。在此需要說(shuō)明的是,對(duì)于這些實(shí)施方式的說(shuō)明用于幫助理解本發(fā)明,但并不構(gòu)成對(duì)本發(fā)明的限定。此外,下面所描述的本發(fā)明各個(gè)實(shí)施方式中所涉及的技術(shù)特征只要彼此之間未構(gòu)成沖突就可以相互組合。
一種智能家居控制總線的設(shè)備沖突解決方法,包括以下步驟:
步驟一:將主設(shè)備和從設(shè)備之間通過(guò)rs485進(jìn)行連接,使用pc客戶端通過(guò)net與主設(shè)備相連;
步驟二:通過(guò)pc客戶端檢測(cè)從設(shè)備id地址是否具備唯一性,并通過(guò)pc客戶端顯示各個(gè)從設(shè)備的id地址;
步驟三:若檢測(cè)到所有從設(shè)備id地址都具備唯一性,則表示各個(gè)從設(shè)備id地址未沖突;若檢測(cè)到從設(shè)備id地址不具備唯一性,則通過(guò)pc客戶端通過(guò)net對(duì)id地址相同的從設(shè)備的id地址進(jìn)行修改,直至所有從設(shè)備id地址都具備唯一性為止。
作為優(yōu)選,在步驟二中,主設(shè)備依次向從設(shè)備發(fā)送請(qǐng)求報(bào)文,所有從設(shè)備接收到主設(shè)備請(qǐng)求報(bào)文后,并對(duì)主設(shè)備進(jìn)行響應(yīng),當(dāng)主設(shè)備只向其中一個(gè)id地址的從設(shè)備發(fā)送請(qǐng)求報(bào)文后,但同時(shí)收到多個(gè)從設(shè)備的響應(yīng)報(bào)文時(shí),則說(shuō)明存在從設(shè)備id地址沖突;當(dāng)主設(shè)備只向其中一個(gè)id地址的從設(shè)備發(fā)送請(qǐng)求報(bào)文后,同時(shí)只收到一個(gè)從設(shè)備的響應(yīng)報(bào)文時(shí),則從設(shè)備不存在id地址沖突。
作為優(yōu)選,當(dāng)主設(shè)備向一個(gè)id地址的從設(shè)備發(fā)送請(qǐng)求報(bào)文后,收到多個(gè)id地址相同的從設(shè)備的響應(yīng)時(shí),若多個(gè)從設(shè)備的響應(yīng)報(bào)文是先后順序到達(dá)主設(shè)備時(shí),則根據(jù)先后順序可判定存在id地址沖突;若多個(gè)響應(yīng)報(bào)文重疊時(shí),通過(guò)報(bào)文crc校驗(yàn)進(jìn)行識(shí)別,并判斷是否存在id地址沖突,當(dāng)主設(shè)備檢測(cè)到從設(shè)備id地址存在沖突的情況,則發(fā)送特殊模式報(bào)文給存在id沖突的從設(shè)備,id地址沖突的從設(shè)備接收到該報(bào)文后,進(jìn)入特殊模式。
作為優(yōu)選的,在特殊模式下,主設(shè)備將發(fā)送推測(cè)報(bào)文,所述推測(cè)報(bào)文包括推測(cè)序號(hào)tid和推測(cè)位數(shù)n,所述推測(cè)序號(hào)tid與從設(shè)備序列號(hào)sid的長(zhǎng)度等長(zhǎng),從設(shè)備接收到推測(cè)報(bào)文時(shí),根據(jù)推測(cè)公式
作為優(yōu)選的,當(dāng)推測(cè)結(jié)果result為0時(shí),從設(shè)備將推測(cè)反饋報(bào)文反饋給主設(shè)備,告知推測(cè)準(zhǔn)確,所述推測(cè)反饋報(bào)文內(nèi)包括有ack,主設(shè)備收到ack時(shí),將推測(cè)位數(shù)n的值加1,并進(jìn)行下一輪推測(cè);當(dāng)推測(cè)結(jié)果result非0時(shí),從設(shè)備不作應(yīng)答,主設(shè)備在超過(guò)等待時(shí)間后,將推測(cè)序號(hào)tid的推測(cè)位數(shù)n位進(jìn)行翻轉(zhuǎn),n值保持不變,并進(jìn)入下一輪推測(cè)。
作為優(yōu)選的,對(duì)于id地址沖突的從設(shè)備,特殊模式下的推測(cè)過(guò)程中,當(dāng)且僅當(dāng)只有一臺(tái)從設(shè)備響應(yīng)推測(cè)報(bào)文時(shí),主設(shè)備即可獲得到對(duì)應(yīng)的從設(shè)備的序列號(hào)sid,主設(shè)備通過(guò)sid號(hào)與從設(shè)備進(jìn)行降級(jí)通訊,使其退出特殊模式。
作為優(yōu)選的,當(dāng)主設(shè)備識(shí)別出對(duì)應(yīng)沖突設(shè)備的sid后,通過(guò)sid進(jìn)行降級(jí)通訊,發(fā)送修改報(bào)文,修改沖突從設(shè)備的id地址。
根據(jù)圖1部署圖對(duì)系統(tǒng)進(jìn)行安裝。主要操作流程分三步驟,具體如下:
步驟一:其中主設(shè)備與從設(shè)備之間通過(guò)rs485進(jìn)行連接;
步驟二:技術(shù)人員使用pc通過(guò)net與主設(shè)備相連,并通過(guò)pc端工具,遠(yuǎn)程檢測(cè)設(shè)備id是否具有唯一性,當(dāng)設(shè)備id地址沖突時(shí),如圖2所示,圖2中,從設(shè)備e和從設(shè)備f的id地址均為5,表示id地址沖突,(以當(dāng)兩個(gè)設(shè)備沖突為例,當(dāng)三個(gè)甚至多個(gè)時(shí)為同樣原理)。
步驟三:若要使總線能夠正常運(yùn)行,可以通過(guò)工具遠(yuǎn)程進(jìn)行設(shè)備id地址修改。如圖3所示;
將從設(shè)備f的id地址改為6,以保證設(shè)備id地址的唯一性,直到所有設(shè)備id地址具備唯一性為止。
在步驟二中,當(dāng)從設(shè)備e與從設(shè)備f的id地址沖突(id地址同為5)時(shí)。主設(shè)備對(duì)從設(shè)備進(jìn)行數(shù)據(jù)請(qǐng)求,發(fā)送請(qǐng)求報(bào)文,請(qǐng)求報(bào)文格式如圖4所示;
兩個(gè)沖突的從設(shè)備即:從設(shè)備e和從設(shè)備f接收到來(lái)自主設(shè)備的請(qǐng)求,請(qǐng)求報(bào)文中的設(shè)備id地址與自身id一致,都會(huì)進(jìn)行處理,并對(duì)主設(shè)備的請(qǐng)求進(jìn)行響應(yīng),此時(shí)主設(shè)備會(huì)同時(shí)收到從設(shè)備e和從設(shè)備f的響應(yīng)報(bào)文,存在兩種情況:
情況一:主設(shè)備先后收到兩個(gè)從設(shè)備的響應(yīng)報(bào)文,則判定存在從設(shè)備id沖突;
情況二:從設(shè)備應(yīng)答報(bào)文重疊,會(huì)導(dǎo)致總線報(bào)文錯(cuò)誤,主設(shè)備經(jīng)過(guò)crc校驗(yàn),可以判斷存在報(bào)文疊加錯(cuò)誤,則判定從設(shè)備存在id地址沖突。
以上兩種情況下,主設(shè)備將會(huì)發(fā)送特殊模式報(bào)文,如圖5所示;
id沖突的從設(shè)備接收到該報(bào)文后,都進(jìn)入特殊模式。因設(shè)備都擁有sid號(hào)(序列號(hào),出廠時(shí)具備唯一性),為了方便闡釋,我們假設(shè)序列號(hào)為8位的二進(jìn)制數(shù)據(jù)表示,即1字節(jié)長(zhǎng)度。
在特殊模式下,主設(shè)備將發(fā)送推測(cè)報(bào)文,如圖6所示,圖6中,推測(cè)序號(hào)tid與序列號(hào)sid長(zhǎng)度等長(zhǎng),初始值為0b00000000(二進(jìn)制)開(kāi)始推測(cè);
從設(shè)備收到推測(cè)報(bào)文時(shí),并獲取推測(cè)序號(hào)tid,根據(jù)推測(cè)位數(shù)n,與自身序列號(hào)sid進(jìn)行計(jì)算,公式如下:
case1:當(dāng)result為0時(shí),從設(shè)備將發(fā)送推測(cè)反饋報(bào)文給主設(shè)備,告知推測(cè)準(zhǔn)確。推測(cè)反饋報(bào)文如7所示,主設(shè)備收到推測(cè)反饋報(bào)文中的ack(可能會(huì)收到多個(gè)從設(shè)備的ack),將n值加1,并進(jìn)入下一輪推測(cè)。
case2:當(dāng)result非0時(shí),從設(shè)備不反饋任何信息,主設(shè)備會(huì)在超過(guò)等待時(shí)間后,將tid的n位進(jìn)行翻轉(zhuǎn),n值保持不變,并進(jìn)入下一輪推測(cè)(等待時(shí)間根據(jù)傳輸介質(zhì)所定)。
重復(fù)特殊模式下的推測(cè)過(guò)程,只有一臺(tái)從設(shè)備應(yīng)答推測(cè)報(bào)文時(shí),主設(shè)備即可獲得到對(duì)應(yīng)的從設(shè)備的sid號(hào),主設(shè)備可以通過(guò)sid號(hào)與從設(shè)備進(jìn)行降級(jí)通訊,讓其退出特殊模式。
若還有剩余從設(shè)備id地址沖突,可以重復(fù)使用以上方法,識(shí)別出對(duì)應(yīng)沖突設(shè)備的sid。
在步驟三過(guò)程中,通過(guò)sid進(jìn)行通訊,并修改沖突從設(shè)備的id地址,發(fā)送修改報(bào)文,報(bào)文格式示例如圖8所示,修改完成后,即可使用唯一的id地址,進(jìn)行正常通訊。
通過(guò)id地址沖突解決方法,提高了產(chǎn)品的可用性,降低了施工的要求,減少了人力成本投入,提高了產(chǎn)品效益。
以上結(jié)合附圖對(duì)本發(fā)明的實(shí)施方式作了詳細(xì)說(shuō)明,但本發(fā)明不限于所描述的實(shí)施方式。對(duì)于本領(lǐng)域的技術(shù)人員而言,在不脫離本發(fā)明原理和精神的情況下,對(duì)這些實(shí)施方式進(jìn)行多種變化、修改、替換和變型,仍落入本發(fā)明的保護(hù)范圍內(nèi)。