欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種面向物聯(lián)網(wǎng)監(jiān)測系統(tǒng)采集節(jié)點的程序無線下載方法與流程

文檔序號:12278875閱讀:436來源:國知局
一種面向物聯(lián)網(wǎng)監(jiān)測系統(tǒng)采集節(jié)點的程序無線下載方法與流程

本發(fā)明涉及物聯(lián)網(wǎng)監(jiān)測系統(tǒng)無線下載領(lǐng)域,具體是一種面向物聯(lián)網(wǎng)監(jiān)測系統(tǒng)采集節(jié)點的程序無線下載方法。



背景技術(shù):

目前,物聯(lián)網(wǎng)監(jiān)測系統(tǒng)廣泛地應(yīng)用在建筑結(jié)構(gòu)健康監(jiān)測、礦山礦井環(huán)境監(jiān)測、農(nóng)業(yè)物聯(lián)網(wǎng)監(jiān)測以及工業(yè)環(huán)境監(jiān)測等領(lǐng)域,目標(biāo)監(jiān)測區(qū)域一般較大且需要部署大量的無線傳感器網(wǎng)絡(luò)節(jié)點,無線傳感器網(wǎng)絡(luò)節(jié)點難以直接與終端用戶進行通信,只能利用中繼節(jié)點通過多層異構(gòu)網(wǎng)絡(luò)與終端用戶進行通信。另外,現(xiàn)有的無線傳感器網(wǎng)絡(luò)節(jié)點的程序無線下載方法很難適用于多層異構(gòu)網(wǎng)絡(luò)的物聯(lián)網(wǎng)監(jiān)測系統(tǒng),且普適性較差,難以適應(yīng)不同領(lǐng)域的監(jiān)測系統(tǒng)。通過對相關(guān)文獻和專利的閱讀可知,已有的無線傳感器網(wǎng)絡(luò)無線下載方法用于物聯(lián)網(wǎng)監(jiān)測系統(tǒng)節(jié)點的程序更新具有一定的局限性,具體如下:

文件1(CN102238603A)所提出的一種無線傳感器網(wǎng)絡(luò)的更新方法,要求互聯(lián)網(wǎng)通信模塊從更新服務(wù)器下載更新數(shù)據(jù)包只能通過FTP方式,而實際物聯(lián)網(wǎng)監(jiān)測系統(tǒng)中的通信模塊下載更新數(shù)據(jù)包的方式有多種方式,并不僅局限于FTP方式。

文件2(CN102665196A)所提出的一種無線傳感器網(wǎng)絡(luò)的在線漸進式程序更新方法,根據(jù)存儲內(nèi)容不同將無線傳感器網(wǎng)絡(luò)節(jié)點的存儲空間劃分為程序存儲空間和數(shù)據(jù)存儲空間,程序存儲空間必須按照節(jié)點不同的功能分為若干離散的功能模塊,并且要求每個功能模塊對應(yīng)程序存儲空間的一個映像文件,這樣雖然可以按照節(jié)點的功能區(qū)分程序之間的邏輯關(guān)系,但也占用了大量的存儲空間,同時現(xiàn)有的物聯(lián)網(wǎng)監(jiān)測系統(tǒng)還難以實現(xiàn)節(jié)點的程序按照功能進行模塊化存儲。

文件3(CN102711095B)所提出的一種對無線傳感器網(wǎng)絡(luò)中的節(jié)點進行無線升級的方法,其步驟1中要求PC機與協(xié)調(diào)器節(jié)點之間采用的是串口連接,而目前的一些物聯(lián)網(wǎng)監(jiān)測系統(tǒng)的監(jiān)測環(huán)境不適合采用串口連接方式,必須采用無線連接方式。并且該方法針對的是含有兩個單片機的待升級節(jié)點進行程序更新,其中一個單片機已限定為CC2430,而現(xiàn)有的物聯(lián)網(wǎng)監(jiān)測系統(tǒng)的待升級節(jié)點一般只含有一個單片機,還有CC2530、CC430等型號,因此該方法并不適用于這樣的系統(tǒng)。



技術(shù)實現(xiàn)要素:

本發(fā)明的目的在于提供一種面向物聯(lián)網(wǎng)監(jiān)測系統(tǒng)采集節(jié)點的程序無線下載方法,以實現(xiàn)物聯(lián)網(wǎng)監(jiān)測系統(tǒng)采集節(jié)點在線更新程序的目的,能夠適用于不同領(lǐng)域的監(jiān)測系統(tǒng),極大地降低采集節(jié)點程序更新的維護成本。

為了達到上述目的,本發(fā)明所采用的技術(shù)方案為:

一種面向物聯(lián)網(wǎng)監(jiān)測系統(tǒng)采集節(jié)點的程序無線下載方法,該物聯(lián)網(wǎng)監(jiān)測系統(tǒng)至少包括一個上位機、一個匯聚節(jié)點、一個中繼節(jié)點和多個采集節(jié)點,且該物聯(lián)網(wǎng)監(jiān)測系統(tǒng)的傳輸層采用的是三層異構(gòu)無線網(wǎng)絡(luò),其特征在于:包括以下步驟:

(1)、下載更新程序前的預(yù)處理過程:

(1.1)、在上位機與匯聚節(jié)點之間建立無線通信網(wǎng)絡(luò)(1)的連接,在匯聚節(jié)點與中繼節(jié)點之間建立無線通信網(wǎng)絡(luò)(2)的連接,在中繼節(jié)點與采集節(jié)點之間建立無線通信網(wǎng)絡(luò)(3)的連接;

(1.2)、上位機通過匯聚節(jié)點、中繼節(jié)點向所有的采集節(jié)點發(fā)送程序更新命令,采集節(jié)點接收到命令后,進入Bootloader;

(1.3)、采集節(jié)點進入Bootloader后,先檢測自身固定存儲區(qū)中程序的版本號,如果采集節(jié)點中程序的版本號低于更新程序的版本號,則采集節(jié)點成為待更新采集節(jié)點,向相應(yīng)的中繼節(jié)點、匯聚節(jié)點、上位機響應(yīng),否則采集節(jié)點繼續(xù)執(zhí)行原程序,不進行程序更新;

(1.4)、當(dāng)上位機、匯聚節(jié)點、中繼節(jié)點收到待更新采集節(jié)點的響應(yīng)時,記錄這些采集節(jié)點的ID號;

(1.5)、上位機通過相應(yīng)的匯聚節(jié)點和中繼節(jié)點向所有待更新采集節(jié)點發(fā)送更新程序;

(2)、上位機通過所述無線通信網(wǎng)絡(luò)(1)向匯聚節(jié)點發(fā)送更新程序的過程:

(2.1)、由于上位機與匯聚節(jié)點之間采用的無線通信網(wǎng)絡(luò)(1)允許傳輸?shù)淖畲髷?shù)據(jù)包長度較大,一般大于更新程序的大小,所以上位機可以將更新程序和相應(yīng)的校驗碼等作為一個數(shù)據(jù)包進行傳輸;

(2.2)、上位機添加數(shù)據(jù)包在所述無線通信網(wǎng)絡(luò)(1)進行通信所需的包頭和包尾,通過所述無線通信網(wǎng)絡(luò)(1)向匯聚節(jié)點發(fā)送所述數(shù)據(jù)包,等待匯聚節(jié)點響應(yīng);

(2.3)、如果匯聚節(jié)點成功接收到該數(shù)據(jù)包且通過校驗碼驗證數(shù)據(jù)是正確的,則進入下一階段,否則上位機向匯聚節(jié)點重新發(fā)送該數(shù)據(jù)包;

(3)、匯聚節(jié)點通過所述無線通信網(wǎng)絡(luò)(2)向相應(yīng)中繼節(jié)點發(fā)送更新程序的過程;

(3.1)、由于匯聚節(jié)點與中繼節(jié)點之間采用的無線通信網(wǎng)絡(luò)(2)允許傳輸?shù)淖畲髷?shù)據(jù)包長度較大,一般大于更新程序的大小,所以匯聚節(jié)點可以將更新程序和相應(yīng)的校驗碼等作為一個數(shù)據(jù)包進行傳輸;

(3.2)、匯聚節(jié)點添加數(shù)據(jù)包在所述無線通信網(wǎng)絡(luò)(2)進行通信所需的包頭和包尾,通過所述無線通信網(wǎng)絡(luò)(2)向與待更新采集節(jié)點相連的中繼節(jié)點發(fā)送所述數(shù)據(jù)包,等待中繼節(jié)點響應(yīng);

(3.3)、如果中繼節(jié)點成功接收到該數(shù)據(jù)包且通過校驗碼驗證數(shù)據(jù)是正確的,則進入下一階段;否則,匯聚節(jié)點向中繼節(jié)點重新發(fā)送該數(shù)據(jù)包;

(4)、中繼節(jié)點通過所述無線通信網(wǎng)絡(luò)(3)向待更新采集節(jié)點發(fā)送更新程序的過程:

(4.1)、由于中繼節(jié)點與采集節(jié)點之間采用的無線通信網(wǎng)絡(luò)(3)允許傳輸?shù)淖畲髷?shù)據(jù)包長度較小,一般遠(yuǎn)小于更新程序的大小,所以中繼節(jié)點不能將更新程序和相應(yīng)的校驗碼等作為一個數(shù)據(jù)包,而是將更新程序拆分成若干程序段;

(4.2)、中繼節(jié)點將更新程序拆分成N個程序段,其中,L表示的是待更新程序的大小,l表示的是待更新程序拆分成程序段的大小,再將每個程序段加上帶有序號的數(shù)據(jù)包頭和帶有相應(yīng)校驗碼的數(shù)據(jù)包尾等組合成一個數(shù)據(jù)包;

(4.3)、中繼節(jié)點添加數(shù)據(jù)包在所述無線通信網(wǎng)絡(luò)(3)進行通信所需的包頭和包尾,通過所述無線通信網(wǎng)絡(luò)(3)向每個待更新采集節(jié)點發(fā)送所述數(shù)據(jù)包,中繼節(jié)點向每個待更新采集節(jié)點按數(shù)據(jù)包序號從小到大的順序依次進行發(fā)送(數(shù)據(jù)包序號是從1到N的);

(4.4)、中繼節(jié)點向相應(yīng)的待更新采集節(jié)點發(fā)送當(dāng)前序號的數(shù)據(jù)包(初始發(fā)送的所述數(shù)據(jù)包序號為1),如果待更新采集節(jié)點成功接收到該數(shù)據(jù)包且通過校驗碼驗證數(shù)據(jù)是正確的,則執(zhí)行(4.5),如果待更新采集節(jié)點未接收到數(shù)據(jù)包或通過校驗碼驗證數(shù)據(jù)是錯誤的,則所述數(shù)據(jù)包的序號不變,重新執(zhí)行(4.4);

(4.5)、每個待更新采集節(jié)點將接收到的數(shù)據(jù)包進行解析,把數(shù)據(jù)包中的程序段寫入到設(shè)定的存儲區(qū)內(nèi),同時每個待更新采集節(jié)點檢驗當(dāng)前接收到的數(shù)據(jù)包的序號是否全為N;

(4.6)、如果待更新采集節(jié)點當(dāng)前接收到的數(shù)據(jù)包的序號不全為N,則接收到數(shù)據(jù)包序號不為N的待更新采集節(jié)點向中繼節(jié)點請求當(dāng)前序號加1的數(shù)據(jù)包,繼續(xù)執(zhí)行(4.4);否則全部的待更新采集節(jié)點下載更新程序成功,下載結(jié)束。

本發(fā)明中,物聯(lián)網(wǎng)監(jiān)測系統(tǒng)是一個至少包括一個上位機、一個匯聚節(jié)點、一個中繼節(jié)點、多個采集節(jié)點在內(nèi)的系統(tǒng)。上位機是可以直接發(fā)出操控命令的計算機,如:PC機、服務(wù)器等;匯聚節(jié)點是能夠接收所有節(jié)點傳輸包的特殊裝置,如協(xié)調(diào)器、路由器等;中繼節(jié)點是一個負(fù)責(zé)信號接收和轉(zhuǎn)發(fā)的裝置,由微處理器和無線射頻模塊等組成;采集節(jié)點是能夠進行數(shù)據(jù)采集和上傳的裝置,由微處理器、無線射頻模塊和傳感器等組成。

物聯(lián)網(wǎng)監(jiān)測系統(tǒng)的傳輸層采用的是三層異構(gòu)無線網(wǎng)絡(luò),即上位機與匯聚節(jié)點之間、匯聚節(jié)點與中繼節(jié)點之間、中繼節(jié)點與采集節(jié)點之間采用不同的無線通信網(wǎng)絡(luò),上位機與匯聚節(jié)點之間通常采用的無線通信網(wǎng)絡(luò),稱之為無線通信網(wǎng)絡(luò)(1),可以選用3G、4G以及WiFi等網(wǎng)絡(luò);匯聚節(jié)點與中繼節(jié)點之間通常采用的無線通信網(wǎng)絡(luò),稱之為無線通信網(wǎng)絡(luò)(2),可以選用WiFi、藍(lán)牙等網(wǎng)絡(luò);中繼節(jié)點與所述采集節(jié)點之間通常采用的無線通信網(wǎng)絡(luò),稱之為無線通信網(wǎng)絡(luò)(3),可以選用ZigBee等網(wǎng)絡(luò)。由于每層的無線通信網(wǎng)絡(luò)采用的傳輸協(xié)議不盡相同,每層網(wǎng)絡(luò)允許傳輸?shù)淖畲髷?shù)據(jù)包長度也不同,無線通信網(wǎng)絡(luò)(1)和無線通信網(wǎng)絡(luò)(2)允許傳輸?shù)淖畲髷?shù)據(jù)包長度較大,而無線通信網(wǎng)絡(luò)(3)允許傳輸?shù)淖畲髷?shù)據(jù)包長度較小。

本發(fā)明提出了一種面向物聯(lián)網(wǎng)監(jiān)測系統(tǒng)采集節(jié)點的程序無線下載方法,工程人員可以通過本發(fā)明對物聯(lián)網(wǎng)監(jiān)測系統(tǒng)采集節(jié)點的程序進行無線下載,該方法適用于不同領(lǐng)域的監(jiān)測系統(tǒng),具有一定的普適性和可移植性,同時能夠大大降低采集節(jié)點的維護成本。

附圖說明

圖1物聯(lián)網(wǎng)監(jiān)測系統(tǒng)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖。

圖2程序拆分及組包的過程示意圖。

圖3面向物聯(lián)網(wǎng)監(jiān)測系統(tǒng)采集節(jié)點的程序無線下載方法的流程圖。

具體實施方式

下面結(jié)合以上本發(fā)明的附圖,對本發(fā)明實施例中技術(shù)方案及特點進行清楚詳細(xì)的描述,顯然,此處所描述的實施例只是本發(fā)明全部的實施例中的一部分,僅僅是用來解釋本發(fā)明,并不限定本發(fā)明。

如圖1所示,在實施例中,物聯(lián)網(wǎng)監(jiān)測系統(tǒng)以建筑結(jié)構(gòu)健康監(jiān)測系統(tǒng)為例,建筑結(jié)構(gòu)健康監(jiān)測系統(tǒng)是一個包括一個上位機C、一個匯聚節(jié)點S、多個中繼節(jié)點R、多個采集節(jié)點N在內(nèi)的系統(tǒng)。在本實施例中上位機C是服務(wù)器,匯聚節(jié)點S是3G-WiFi路由器,中繼節(jié)點R由WiFi模塊和CC2430模塊組成,采集節(jié)點N由CC2430模塊和傳感器組成。

如圖2所示,在實施例中,建筑結(jié)構(gòu)健康監(jiān)測系統(tǒng)在傳輸層采用的是三層異構(gòu)無線網(wǎng)絡(luò),上位機與匯聚節(jié)點之間采用的通信網(wǎng)絡(luò)是3G無線網(wǎng)絡(luò),匯聚節(jié)點與中繼節(jié)點之間采用的通信網(wǎng)絡(luò)是WiFi無線網(wǎng)絡(luò),這兩種網(wǎng)絡(luò)數(shù)據(jù)傳輸速率較大,而中繼節(jié)點與采集節(jié)點之間采用的通信網(wǎng)絡(luò)是ZigBee無線網(wǎng)絡(luò)。

在實施例中,上位機與匯聚節(jié)點、匯聚節(jié)點與中繼節(jié)點之間的無線通信網(wǎng)絡(luò)即3G無線網(wǎng)絡(luò)和WiFi無線網(wǎng)絡(luò)允許傳輸?shù)淖畲髷?shù)據(jù)包長度為64KB,而中繼節(jié)點與采集節(jié)點之間的無線通信網(wǎng)絡(luò)即ZigBee無線網(wǎng)絡(luò)允許傳輸?shù)淖畲髷?shù)據(jù)包長度為128B。

如圖3所示,本發(fā)明提出了一種面向物聯(lián)網(wǎng)監(jiān)測系統(tǒng)采集節(jié)點的程序無線下載方法,在實施例中,下載過程具體分成以下幾個階段:

第一個階段,預(yù)處理過程。

步驟1.1:在上位機與匯聚節(jié)點之間建立3G無線通信網(wǎng)絡(luò)的連接,在匯聚節(jié)點與中繼節(jié)點之間建立WiFi無線通信網(wǎng)絡(luò)的連接、在中繼節(jié)點與采集節(jié)點之間建立ZigBee無線通信網(wǎng)絡(luò)的連接;

步驟1.2:上位機通過匯聚節(jié)點、中繼節(jié)點向所有的采集節(jié)點發(fā)送程序更新命令,采集節(jié)點接收到命令后,進入Bootloader;

步驟1.3:采集節(jié)點進入Bootloader后,先檢測自身固定存儲區(qū)中程序的版本號,如果采集節(jié)點中程序的版本號低于更新程序的版本號,則采集節(jié)點成為待更新采集節(jié)點,向相應(yīng)的中繼節(jié)點、匯聚節(jié)點、上位機響應(yīng),否則采集節(jié)點繼續(xù)執(zhí)行原程序,不進行程序更新;

步驟1.4:當(dāng)上位機、匯聚節(jié)點、中繼節(jié)點收到待更新采集節(jié)點的響應(yīng)時,記錄這些采集節(jié)點的ID號;

步驟1.5:上位機通過相應(yīng)的匯聚節(jié)點和中繼節(jié)點向所有待更新采集節(jié)點發(fā)送更新程序。

第二個階段,上位機通過3G無線通信網(wǎng)絡(luò)向匯聚節(jié)點發(fā)送待更新程序的過程。

步驟2.1:由于上位機與匯聚節(jié)點之間采用的網(wǎng)絡(luò)是3G無線通信網(wǎng)絡(luò),3G無線通信網(wǎng)絡(luò)允許傳輸?shù)淖畲髷?shù)據(jù)包長度為64KB,而更新程序的大小為21.6KB,所以上位機可以將更新程序和相應(yīng)的校驗碼等作為一個數(shù)據(jù)包進行傳輸;

步驟2.2:上位機添加數(shù)據(jù)包在3G無線通信網(wǎng)絡(luò)進行通信所需的包頭和包尾,通過3G無線通信網(wǎng)絡(luò)向匯聚節(jié)點發(fā)送所述數(shù)據(jù)包,等待匯聚節(jié)點響應(yīng);

步驟2.3:如果匯聚節(jié)點成功接收到該數(shù)據(jù)包且通過校驗碼驗證數(shù)據(jù)是正確的,則進入下一階段,否則上位機向匯聚節(jié)點重新發(fā)送該數(shù)據(jù)包。

第三個階段,匯聚節(jié)點通過WiFi無線通信網(wǎng)絡(luò)向相應(yīng)中繼節(jié)點發(fā)送更新程序的過程。

步驟3.1:由于匯聚節(jié)點與中繼節(jié)點之間采用的網(wǎng)絡(luò)是WiFi無線通信網(wǎng)絡(luò),WiFi無線通信網(wǎng)絡(luò)允許傳輸?shù)淖畲髷?shù)據(jù)包長度為64KB,而更新程序的大小為21.6KB,所以匯聚節(jié)點可以將更新程序和相應(yīng)的校驗碼等作為一個數(shù)據(jù)包進行傳輸;

步驟3.2:匯聚節(jié)點添加數(shù)據(jù)包在WiFi無線通信網(wǎng)絡(luò)進行通信所需的包頭和包尾,通過WiFi無線通信網(wǎng)絡(luò)向與待更新采集節(jié)點相連的中繼節(jié)點發(fā)送所述數(shù)據(jù)包,等待中繼節(jié)點響應(yīng);

步驟3.3:如果中繼節(jié)點成功接收到該數(shù)據(jù)包且通過校驗碼驗證數(shù)據(jù)是正確的,則進入下一階段;否則,匯聚節(jié)點向中繼節(jié)點重新發(fā)送該數(shù)據(jù)包。

第四個階段,中繼節(jié)點通過ZigBee無線通信網(wǎng)絡(luò)向待更新采集節(jié)點發(fā)送更新程序的過程。

步驟4.1:由于中繼節(jié)點與采集節(jié)點之間采用的網(wǎng)絡(luò)是ZigBee無線通信網(wǎng)絡(luò),ZigBee無線通信網(wǎng)絡(luò)允許傳輸?shù)淖畲髷?shù)據(jù)包長度為128B,而更新程序的大小為21.6KB,所以中繼節(jié)點不能再將更新程序和相應(yīng)的校驗碼等作為一個數(shù)據(jù)包,而是將更新程序拆分成若干程序段;

步驟4.2:在實施例中,數(shù)據(jù)包的大小定為96B,根據(jù)公式其中,L表示的是待更新程序的大小,l表示的是待更新程序拆分成程序段的大小,計算得將更新程序拆分成231個程序段,再將每個程序段加上帶有序號的數(shù)據(jù)包頭和帶有相應(yīng)校驗碼的數(shù)據(jù)包尾等組合成一個數(shù)據(jù)包;

步驟4.3:中繼節(jié)點添加數(shù)據(jù)包在所述ZigBee無線通信網(wǎng)絡(luò)進行通信所需的包頭和包尾,通過所述ZigBee無線通信網(wǎng)絡(luò)向每個待更新采集節(jié)點發(fā)送所述數(shù)據(jù)包,中繼節(jié)點向每個待更新采集節(jié)點按所述數(shù)據(jù)包序號從小到大的順序依次進行發(fā)送;

步驟4.4:中繼節(jié)點向相應(yīng)的待更新采集節(jié)點發(fā)送當(dāng)前序號的數(shù)據(jù)包(初始發(fā)送的所述數(shù)據(jù)包序號為1),如果待更新采集節(jié)點成功接收到該數(shù)據(jù)包且通過校驗碼驗證數(shù)據(jù)是正確的,則執(zhí)行步驟4.5,如果待更新采集節(jié)點未接收到數(shù)據(jù)包或通過校驗碼驗證數(shù)據(jù)是錯誤的,則所述數(shù)據(jù)包的序號不變,重新執(zhí)行步驟4.4;

步驟4.5:每個待更新采集節(jié)點將接收到的數(shù)據(jù)包進行解析,把數(shù)據(jù)包中的程序段寫入到設(shè)定的存儲區(qū)內(nèi),同時每個待更新采集節(jié)點檢驗當(dāng)前接收到的數(shù)據(jù)包的序號是否全為231;

步驟4.6:如果待更新采集節(jié)點當(dāng)前接收到的數(shù)據(jù)包的序號不全為231,接收到數(shù)據(jù)包序號不為231的待更新采集節(jié)點向中繼節(jié)點請求當(dāng)前序號加1的數(shù)據(jù)包,繼續(xù)執(zhí)行步驟4.4;否則全部的待更新采集節(jié)點下載更新程序成功,下載結(jié)束。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
米脂县| 阜阳市| 宁阳县| 蓬莱市| 微山县| 高唐县| 西林县| 育儿| 信阳市| 福泉市| 武鸣县| 从化市| 桃江县| 连云港市| 西充县| 宜君县| 阿城市| 浦县| 疏附县| 安陆市| 阜康市| 喀什市| 内丘县| 定襄县| 兴隆县| 枣庄市| 夏津县| 天水市| 晋宁县| 增城市| 青海省| 闸北区| 黄陵县| 汝阳县| 武安市| 宾阳县| 新沂市| 施甸县| 林口县| 广宁县| 泗洪县|