3串口多串口雙串口以及2串口轉WiFi多跳通訊實現三
——網關發現協議
串口轉WiFi在工業控制領域廣泛的應用,工業控制領域通常距離比較遠環境比較復雜。所以就有超遠距離通訊的需求,通常我們使用多跳的方式實現WiFi遠距離傳輸。即如果實現遠距離的A與C進行通訊,我們可以在A與C之間增加一個模塊B,這樣,B充擔中繼的作用。以下以simpleWiFi的S2W-M02以及S2W-M03中所實現的多跳機制進行描述。S2WM02、S2WM03已經穩定的運用到了很多超長距離通訊環境,該算法穩定性以及大量現場驗證。并且該系列串口轉WiFi模塊可以實現2串口、雙串口、3串口和多串口的通訊,各個通訊相互完全獨立,可以同時支持多個串口設備進行數據通訊。
本節主要描述多跳路由算法:
- 網關發現協議
- 協議概述
該網關發現協議依附 “Hello”報文,在報文后增加了extension type,type格式定義為4,length為5,extension內容中前4個字節為網關IP地址,最后一個字節為節點到網關的跳數。網關節點廣播的Hello報文跳數始終為0。

如上圖所示,網關節點G進入Adhoc網絡后,廣播的Hello報文中攜帶了網關extension域,其鄰居節點A首先收到該Hello幀,經過解析處理后,發現網關G,并建立到網關G的路由;到網關G的路由建立成功后,更新其Hello幀,在Hello幀的最后需要添加網關extension域(前4個字節為網關G的IP地址,最后1個字節表示到網關的跳數為1);接著,節點B會收到A廣播的Hello,經過解析處理后,發現網關G,并建立到網關G的路由;路由建立成功后,更新Hello幀,在Hello幀的最后需要添加網關extension域(前4個字節為網關G的IP地址,最后1個字節表示到網關的跳數為2);依次類推,節點C和D隨后也建立了到網關的路由。
上述算法已經大量的應用到了現場,能夠實現穩定的多跳通訊。參考simpleWiFi的S2W-M02多串口2串口3串口雙串口以及三串口的通訊模塊。后續文章會詳細介紹多跳路由保持實現。
|