LORA自組網(wǎng)系統(tǒng)簡介
充分利用LORA的點(diǎn)到點(diǎn)長距離通訊的特點(diǎn),利用高速的LORA通訊模塊,組建自動中繼、自動重組路由的MESH通訊網(wǎng)絡(luò)。該網(wǎng)絡(luò)包含一個(gè)集抄節(jié)點(diǎn)和若干末端的子節(jié)點(diǎn),在開始運(yùn)行時(shí),由集抄節(jié)點(diǎn)發(fā)出建立路由命令,經(jīng)由一套智能空間樹狀分析算法,可以根據(jù)節(jié)點(diǎn)之間各自通聯(lián)的可能性,自動組織路由,自動生成最佳通訊匹配的LORA射頻MESH通訊網(wǎng)絡(luò)。
特點(diǎn):
? 自動生成多層組網(wǎng)結(jié)構(gòu),各層節(jié)點(diǎn)之間自動匹配成隸屬關(guān)系,自動中繼,無需額外中繼設(shè)備。
? 通訊過程中能實(shí)現(xiàn)自愈運(yùn)行,自動判斷節(jié)點(diǎn)投退,自動排除離線節(jié)點(diǎn),自動接入在線節(jié)點(diǎn)。
? 自動約束層限,盡可能將通訊節(jié)點(diǎn)約束在淺層,以保證通訊的高效率。
? 支持自動節(jié)點(diǎn)地址分配(全球唯一地址),減少了現(xiàn)場設(shè)置的麻煩。
? 采用了自動空間碰撞檢測回避技術(shù),支持重要數(shù)據(jù)的緊急主動上傳。
? 優(yōu)化空間傳輸結(jié)構(gòu),支持長報(bào)文多層傳輸,采取了多級全方位的防誤措施,避免各種干擾和異常狀況對網(wǎng)絡(luò)結(jié)構(gòu)的影響。
? 未來可支持跳頻傳輸,防止同頻干擾,節(jié)省信道資源。
功能:
? 支持多種信息傳遞方式,包括全網(wǎng)節(jié)點(diǎn)遍歷輪詢、針對節(jié)點(diǎn)地址層間節(jié)點(diǎn)多跳查詢等。
? 數(shù)據(jù)類型可以包括雙向的短報(bào)文傳遞、開關(guān)量傳遞、模擬量傳遞等。
? 自動分割長報(bào)文,以短片傳遞,以防止干擾,增強(qiáng)LORA傳輸?shù)目煽啃浴?/p>
? 這種自動組網(wǎng)、自動重組路由的組網(wǎng)方式用在臺區(qū)分散的末端設(shè)備感知的數(shù)據(jù)傳輸,充分利用了LORA點(diǎn)到點(diǎn)通信距離遠(yuǎn)的特點(diǎn),避免了星型LORA傳輸網(wǎng)的集抄器與末端節(jié)點(diǎn)直線距離易被遮斷的困擾,與目前存在于末端感知通訊中其他通訊方式相比具有較大優(yōu)勢,是目前物聯(lián)網(wǎng)的有效和理想的實(shí)現(xiàn)方式。
一種用于變電臺區(qū)設(shè)備LoRa通訊的MESH自組網(wǎng)方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種無線自組網(wǎng)構(gòu)成和傳輸方法,具體涉及一種LoRa通訊的MESH組網(wǎng)傳輸方法,屬于通信控制技術(shù)領(lǐng)域。
技術(shù)背景
在現(xiàn)有的變電臺區(qū)LoRa星型組網(wǎng)傳輸技術(shù)中,往往會因?yàn)榫嚯x、遮擋、干擾等原因,造成主節(jié)點(diǎn)不能收集所有子節(jié)點(diǎn)的信息,大量的這種子節(jié)點(diǎn)將會離線,造成丟失數(shù)據(jù),嚴(yán)重影響了通訊的可靠性。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是:針對變電臺區(qū)現(xiàn)有星型組網(wǎng)技術(shù)存在的問題,提供一種適用于變電臺區(qū)的MESH組網(wǎng)結(jié)構(gòu)的LoRa無線通訊系統(tǒng),能夠做到自動多級中繼主節(jié)點(diǎn)不能直連的遠(yuǎn)方節(jié)點(diǎn),自適應(yīng)修復(fù)離線子節(jié)點(diǎn)路由結(jié)構(gòu),自動接入新增節(jié)點(diǎn)等功能。
本發(fā)明解決其技術(shù)問題的技術(shù)方案如下:
一種適用于變電臺區(qū)的MESH組網(wǎng)結(jié)構(gòu)的LoRa組網(wǎng)方法的實(shí)現(xiàn)包括以下步驟:
S1:組建一個(gè)包括一個(gè)主節(jié)點(diǎn)和N個(gè)子節(jié)點(diǎn)的LoRa組網(wǎng)系統(tǒng),主節(jié)點(diǎn)為信息匯聚點(diǎn)。子節(jié)點(diǎn)為信息采集點(diǎn)。主節(jié)點(diǎn)通過多層的路由結(jié)構(gòu)連接N個(gè)子節(jié)點(diǎn),每個(gè)子節(jié)點(diǎn)都由相應(yīng)的12字節(jié)唯一ID表示,用做組網(wǎng)子節(jié)點(diǎn)標(biāo)識,這個(gè)ID來自于通訊所用的MCU的全球唯一ID號。
S2:通訊實(shí)現(xiàn)時(shí),先進(jìn)行系統(tǒng)內(nèi)子節(jié)點(diǎn)ID檔案收集過程,由主節(jié)點(diǎn)(邏輯節(jié)點(diǎn)號為0)發(fā)出廣播求號幀COM16,子節(jié)點(diǎn)群A集合(i=1…a)將收到該報(bào)文。子節(jié)點(diǎn)在未匹配狀態(tài)表現(xiàn)為接收COM16報(bào)文狀態(tài),每間隔100ms循環(huán)一次,利用中斷回調(diào)函數(shù)接收該LORA報(bào)文,在收到COM16以后,利用隨機(jī)函數(shù)計(jì)算一個(gè)在0-3秒鐘隨機(jī)的時(shí)間ts,不同的響應(yīng)子節(jié)點(diǎn)在ts時(shí)間以后帶12字節(jié)標(biāo)識碼回復(fù)主節(jié)點(diǎn),其他待接入節(jié)點(diǎn)處于監(jiān)聽狀態(tài),發(fā)現(xiàn)空中有報(bào)文則推遲自身發(fā)送。主節(jié)點(diǎn)在收到這些標(biāo)識碼以后,按照先后的順序?qū)⑵渚幪?,排入?jié)點(diǎn)檔案列表。規(guī)定時(shí)間到以后,主節(jié)點(diǎn)按照收到的檔案標(biāo)識碼列表查詢一遍,并確定邏輯地址,稱為定序過程。之后,主節(jié)點(diǎn)再問一遍COM16,定序邏輯地址成功的子節(jié)點(diǎn)不再回復(fù),剩余的未定序子節(jié)點(diǎn)同樣依隨機(jī)函數(shù)確定的時(shí)間回復(fù)。依次執(zhí)行,直到不再有未定序節(jié)點(diǎn)加入。
S3:第一層形成以后,主節(jié)點(diǎn)將擁有M個(gè)在線節(jié)點(diǎn),依照同樣過程采用令牌輪換(父節(jié)點(diǎn)需要向子節(jié)點(diǎn)送出已定序的邏輯節(jié)點(diǎn)范圍),分別將各在線節(jié)點(diǎn)作為主節(jié)點(diǎn),依次形成和得到各在線節(jié)點(diǎn)的第二層、第三層……的子節(jié)點(diǎn)的路由結(jié)構(gòu)和ID檔案并定序相應(yīng)的邏輯節(jié)點(diǎn)。各層在線子節(jié)點(diǎn)在得到各自的子節(jié)點(diǎn)的ID檔案列表以后,向其路由表中的上層父節(jié)點(diǎn)匯報(bào)所得到的的路由結(jié)構(gòu)、子節(jié)點(diǎn)ID檔案號及其相應(yīng)的邏輯節(jié)點(diǎn)定序號。層層上報(bào),直到主節(jié)點(diǎn)擁有所有各層子節(jié)點(diǎn)的12字節(jié)ID檔案號及其相關(guān)的邏輯地址編號(1,……,N)。
如果可以在主節(jié)點(diǎn)人工輸入建立所有的臺區(qū)內(nèi)子節(jié)點(diǎn)的ID檔案列表,則無需S2和S3過程。每個(gè)子節(jié)點(diǎn)的邏輯地址只在每次組網(wǎng)中有效。
S4:正常通訊過程前,主節(jié)點(diǎn)先實(shí)現(xiàn)建立路由的過程,由主節(jié)點(diǎn)依照所存子節(jié)點(diǎn)的ID檔案,對于所有離線節(jié)點(diǎn),依次發(fā)出COM5命令LoRa報(bào)文,該報(bào)文包含相關(guān)節(jié)點(diǎn)的12字節(jié)ID檔案號以及報(bào)文發(fā)出時(shí)對其所分配的邏輯地址編號。子節(jié)點(diǎn)收到COM5報(bào)文時(shí),與自身的ID序號進(jìn)行比對,如果一致,則接受配對,并向上層返回COM2報(bào)文。在一輪COM5發(fā)完后,主節(jié)點(diǎn)將返回COM2報(bào)文的子節(jié)點(diǎn)作為自身的局部在線節(jié)點(diǎn)。在這個(gè)過程中,主節(jié)點(diǎn)將形成局部路由表和二級路由表結(jié)構(gòu)。
S5:接著以局部在線節(jié)點(diǎn)作為主節(jié)點(diǎn)依次輪流重復(fù)S4過程,直到建立多層的MESH路由網(wǎng)絡(luò)結(jié)構(gòu)。
S6:在MESH路由結(jié)構(gòu)建成以后,將進(jìn)入正常通訊過程,在正常通訊過程中,由主節(jié)點(diǎn)向各子節(jié)點(diǎn)依照所匹配的邏輯地址發(fā)出COM11報(bào)文,該報(bào)文包含所需要傳遞的內(nèi)容報(bào)文信息,該報(bào)文可能只經(jīng)歷一層(即主節(jié)點(diǎn)的局部在線節(jié)點(diǎn)),也可能經(jīng)由中間子節(jié)點(diǎn)跨越多層路由結(jié)構(gòu)(利用每個(gè)節(jié)點(diǎn)的二級路由表),中間子節(jié)點(diǎn)在收到該報(bào)文以后,將按照路由表結(jié)構(gòu)轉(zhuǎn)發(fā)到下一層,目標(biāo)子節(jié)點(diǎn)在收到該報(bào)文以后,將把所需要回復(fù)主節(jié)點(diǎn)的內(nèi)容報(bào)文信息打包成COM12報(bào)文返回上一層節(jié)點(diǎn),依照路由表層層上傳,直到返回主節(jié)點(diǎn)。
S7:在正常通訊中,一旦通訊收到干擾,則相應(yīng)父節(jié)點(diǎn)重問三次,三次都無返回,則將其置為離線,并層層上報(bào),重組局部路由,無需全局重組路由。
S8:如果系統(tǒng)內(nèi)存在離線節(jié)點(diǎn),如果為發(fā)出查詢的源地址為主節(jié)點(diǎn),則發(fā)出包含離線節(jié)點(diǎn)ID檔案號和分配邏輯地址的COM5報(bào)文,查是否該離線節(jié)點(diǎn)是否能成為局部在線節(jié)點(diǎn)。否則則由各層節(jié)點(diǎn)在每次COM11總招報(bào)文中依次包含需要查詢的離線節(jié)點(diǎn)ID檔案以及匹配的邏輯地址,如果相關(guān)離線節(jié)點(diǎn)收到了COM11 報(bào)文中包含著的與自身ID相同的ID檔案號,則搶在報(bào)文中的目標(biāo)地址子節(jié)點(diǎn)回復(fù)COM12之前,第一時(shí)間向目標(biāo)地址發(fā)出COM2報(bào)文,目標(biāo)子節(jié)點(diǎn)在收到該COM2報(bào)文以后,立刻將該離線節(jié)點(diǎn)納入到本節(jié)點(diǎn)的局部在線節(jié)點(diǎn)中,并隨COM12報(bào)文上報(bào)路由,形成離線節(jié)點(diǎn)的局部修復(fù)機(jī)制。
S9:在主節(jié)點(diǎn)的輪詢總招過程中,經(jīng)常會發(fā)生某些子節(jié)點(diǎn)有緊急的高優(yōu)先級事件需要打破常規(guī)緊急組成報(bào)文上送,這樣必須終止目前的常規(guī)輪詢總招過程。比如子節(jié)點(diǎn)K有需要緊急上送的事件,此時(shí)它組成包含事件內(nèi)容信息的COM7報(bào)文(同時(shí)做好緩存?zhèn)浞?,立刻發(fā)出,它的發(fā)出將會使當(dāng)前所有的正常輪詢過程立刻終止,如果一次不能終止,則會重復(fù)發(fā)出COM7,直到清空無線空間,COM7報(bào)文會層層上送,直到主節(jié)點(diǎn)收到,主節(jié)點(diǎn)收到后,立刻組織一條返回確認(rèn)報(bào)文,依照路由層層發(fā)到節(jié)點(diǎn)K,節(jié)點(diǎn)K收到后,立刻清除緩存?zhèn)浞?,否則,子節(jié)點(diǎn)K在一段時(shí)間內(nèi)如果沒有收到該確認(rèn)報(bào)文,則隔一段時(shí)間會將緩存的緊急事件報(bào)文重發(fā)。
S10:在正常總招過程中,還會發(fā)生由于停電等原因造成的大批量子節(jié)點(diǎn)的緊急事件需要緊急上報(bào)的情況,這就不能依靠S9的過程來實(shí)現(xiàn)了。此時(shí)需要采取卷積上傳的方式,將所有需要發(fā)出緊急事件的子節(jié)點(diǎn)以有序的方式主動批量上送到主節(jié)點(diǎn)。具體過程為:任何一個(gè)此類事件的子節(jié)點(diǎn)發(fā)COM7報(bào)文(其中有標(biāo)識該類事件的特殊標(biāo)識)層層發(fā)到主節(jié)點(diǎn),作為信使報(bào)文,主節(jié)點(diǎn)收到該報(bào)文以后,向最小在線邏輯地址子節(jié)點(diǎn)發(fā)出一幀COM8報(bào)文,該節(jié)點(diǎn)收到該報(bào)文以后,如果自身是終端節(jié)點(diǎn)(葉節(jié)點(diǎn)),則向主節(jié)點(diǎn)則向上層父節(jié)點(diǎn)返回包含事件信息的COM9報(bào)文,而如果本節(jié)點(diǎn)是中間節(jié)點(diǎn)(枝節(jié)點(diǎn)),則接著向自己的下層的局部在線節(jié)點(diǎn)依次發(fā)出COM8報(bào)文,依次類推,各子節(jié)點(diǎn)都重復(fù)該過程,各子節(jié)點(diǎn)在收齊了下層上送的各子節(jié)點(diǎn)相關(guān)信息之后,層層上報(bào),直到送到主節(jié)點(diǎn)。此過程稱為卷積過程。主節(jié)點(diǎn)將一個(gè)或多個(gè)分支的卷積信息收齊,可以避免比較耗時(shí)的逐次多層分別的輪詢總招,以最快的速度把多個(gè)同時(shí)發(fā)生緊急事件子節(jié)點(diǎn)的信息收集齊整。
S11:LoRa報(bào)文收發(fā)過程中,每個(gè)節(jié)點(diǎn)都監(jiān)聽空間的LoRa報(bào)文,自己報(bào)文的發(fā)出是在空中空閑的時(shí)刻發(fā)出,這樣就避免了可能發(fā)生的相互干擾,以及不可控的事件的發(fā)生。
S12:臺區(qū)標(biāo)識碼是每一幀報(bào)文中包含的一個(gè)特殊信息,相鄰臺區(qū)可以由主節(jié)點(diǎn)設(shè)置為不同的編碼,以避免相鄰臺區(qū)同頻段設(shè)置情況下的無線通訊干擾(需與S11結(jié)合應(yīng)用)。
S13:多類型子節(jié)點(diǎn)設(shè)備可以共享LoRa通訊資源,在主節(jié)點(diǎn)中,設(shè)立設(shè)備類型層,不同類型的設(shè)備賦予相應(yīng)類型編碼,通訊時(shí)每幀報(bào)文中包含類型信息,類型信息由子節(jié)點(diǎn)上送,這樣主節(jié)點(diǎn)可以根據(jù)收到的類型編碼做相應(yīng)的處理。主節(jié)點(diǎn)可以根據(jù)子節(jié)點(diǎn)編碼類型信息在主節(jié)點(diǎn)構(gòu)成多種處理子系統(tǒng),例如若干個(gè)子節(jié)點(diǎn)屬于漏電監(jiān)察系統(tǒng),若干個(gè)子節(jié)點(diǎn)屬于三相不平衡系統(tǒng)等等,各子系統(tǒng)包含各自不同的處理邏輯,在主節(jié)點(diǎn)中,常規(guī)節(jié)點(diǎn)與各子系統(tǒng)的處理,采用令牌進(jìn)行切換。
S14:對于一些不參與組網(wǎng)的特殊子節(jié)點(diǎn),采用了與組網(wǎng)傳輸兼容的非組網(wǎng)報(bào)文接收機(jī)制,需要對其規(guī)約進(jìn)行必要解析,一旦收到相關(guān)報(bào)文,則以非組網(wǎng)報(bào)文看待,收入主節(jié)點(diǎn),并發(fā)向所連設(shè)備框架。
S15:對于需要保存時(shí)間信息的子節(jié)點(diǎn),保留對時(shí)機(jī)制,主節(jié)點(diǎn)收到所連設(shè)備發(fā)來的對時(shí)信息,在更新和維持自身的年月日時(shí)分秒時(shí)鐘系統(tǒng)后,隨時(shí)以COM17向所屬各層子節(jié)點(diǎn)發(fā)出對時(shí)命令,子節(jié)點(diǎn)在收到對時(shí)命令后,向主節(jié)點(diǎn)發(fā)出確認(rèn)報(bào)文COM18。
S16:在平時(shí)沒有LORA報(bào)文收發(fā)的期間,系統(tǒng)自動進(jìn)入網(wǎng)絡(luò)維護(hù)通訊階段,將由主節(jié)點(diǎn)發(fā)出輪詢短報(bào)文,遍歷所有各層在線子節(jié)點(diǎn),并將離線節(jié)點(diǎn)賦予每個(gè)輪詢報(bào)文中進(jìn)行核查,隨時(shí)接入可以接入的任何離線節(jié)點(diǎn),并將任何脫網(wǎng)的節(jié)點(diǎn)剔除出系統(tǒng),進(jìn)行局部的網(wǎng)絡(luò)重組優(yōu)化。