一種面向mc1321x的無線傳感器網絡wsn重編程方法
2023-08-09 01:27:56
一種面向mc1321x的無線傳感器網絡wsn重編程方法
【專利摘要】本發明提出一種面向MC1321X的開銷無線重編程方法WSN_OTAR。該方法在對比WSN無線節點中新舊MCU方機器碼差異程度的基礎上,進行增量式的代碼迭代更新,從而有效地減少了WSN中更新代碼的傳輸量,提高了無線重編程的正確性及可靠性。該方法不依賴於具體硬體平臺,主要依靠軟體實現,具有低開銷、高可靠、低延遲和低存儲等特點。
【專利說明】—種面向MC1321X的無線傳感器網絡WSN重編程方法
【技術領域】
[0001]本發明屬於WSN(wireless sensor network,無線傳感器網絡)領域,具體涉及一種面向MC1321X的無線傳感器網絡WSN重編程方法。
【背景技術】
[0002]無線重編程技術已經成為目前WSN研究的熱點。目前,國內外對代碼遠程更新已經具有一定的研究,已有的代碼分發協議主要包括Deluge、MOAP和Elon等。
[0003]Deluge是較早提出的一種多跳代碼分發協議,它已經成為嵌入式作業系統TinyOS的一種代碼更新標準協議。該協議依賴於TinyOS系統,並且在對目標節點進行代碼更新時需要更新整個TinyOS的鏡像文件。因而,對無線網絡中節點的傳輸負載量較大。
[0004]MOAP是對WSN中一些選中的節點進行代碼更新,而不是洪泛至所有節點。對傳輸中丟失的數據包,其採用了滑動窗口機制,當節點處於等待丟失數據包重傳狀態時,允許重傳。
[0005]Elon是基於TinyOS組件的代碼分發協議,在更新時需要以組件為單位進行傳輸和重組。因此,該協議不僅和Deluge —樣依賴於TinyOS作業系統,而且還包含了很多無關的冗餘代碼,增加了更新時的傳輸開銷。
[0006]根據這些協議的更新模式、MAC層協議、更新範圍和跳步方式,對這些協議進行分類,詳細見表1。
[0007]表1幾種代碼分發協議的分析對比
[0008]
【權利要求】
1.一種面向MC1321X的無線傳感器網絡WSN重編程方法,其特徵在於: 將每行機器碼校驗和作為代碼快速比較的索引值,逐行遍歷S19文件,按照校驗和、FLASH地址、長度和代碼數據建立二級映射的MC1321X機器碼管理列表; 在機器碼管理列表的一級列表中將新舊程序的一級列表中每個單元值進行異或運算比較,確定具有差異的S記錄行; 通過計算MCU FLASH地址,確定具有差異的S記錄行代碼位於MC1321X中Flash的頁號和頁內偏移,將計算出的頁號、頁內偏移和S19文件的其他屬性填入MC1321X差異代碼管理雙向鍊表中; 根據MC1321X差異代碼管理雙向鍊表確定需更新的MCU方機器碼; 將需更新的MCU方機器碼分成若干個代碼摘要或代碼段,每個代碼摘要或代碼段由一個序號來標識; 對於每個代碼摘要或代碼段數據幀,判斷幀位示圖,決定是否進行接收流程並轉發此幀並通過幀位示圖來判斷是否重複轉發相同數據幀。
2.根據權利要求1所述的面向MC1321X的無線傳感器網絡WSN重編程方法,其特徵在於,差異代碼管理雙向鍊表節點的先後按照FLASH地址大小排列。
3.根據權利要求1所述的面向MC1321X的無線傳感器網絡WSN重編程方法,其特徵在於,使用一個計時器t來表示每個代碼摘要或代碼段數據幀在節點中的生命周期,當節點第一次接收到該數據幀時開始計時,選擇一個時間閾值TIME,當t大於TIME時判斷幀位示圖,決定是否進行接收流程並轉發此幀。
4.根據權利要求1所述的面向MC1321X的無線傳感器網絡WSN重編程方法,其特徵在於,數據幀號為8個BH。
【文檔編號】H04W84/18GK104199661SQ201410437526
【公開日】2014年12月10日 申請日期:2014年8月29日 優先權日:2014年8月29日
【發明者】王宜懷, 胡宗棠, 凌雲 申請人:蘇州大學