System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及物聯網,特別是涉及物聯網終端的遠程升級方法及系統。
技術介紹
1、隨著物聯網技術的快速發展,物聯網終端的數量和種類不斷增加,物聯網終端通常部署在不同的場景中,環境復雜,并且經常需要進行軟件更新以改進物聯網終端的性能、修復漏洞或引入新的功能。
2、傳統的物聯網終端進升級時,通常需要借助人工進行現場操作,對于物聯網終端進行大規模部署和分布廣泛的情況,這種方式需要投入更多的人力和物力資源,增加了升級的時間和成本,另外許多物聯網終端在進行物聯網終端升級操作時,通常需要進入boot模式或燒錄模式,這就意味著在升級時物聯網終端需要暫停正常運行,直到升級完成并重新啟動方可繼續進行工作。這段停機時間可能會對物聯網終端的正常運行和生產流程造成影響。特別是對于關鍵物聯網終端或需要實時運行的物聯網終端,停機時間過長可能會導致生產中斷、數據丟失或造成其他不良影響。
3、雖然現有技術中一定程度上可以實現遠程升級,但是在遠程升級過程中難以保證升級過程的安全性、完整性、可靠性、靈活性以及簡單有效性,也難以進行故障恢復,會出現升級失敗的情況,從而還需要借助人工到現場完成。
技術實現思路
1、本專利技術提供一種物聯網終端的遠程升級方法及系統,用以解決現有技術中技術人員難以保證升級過程的安全性、完整性、可靠性、靈活性以及簡單有效性,也難以進行故障恢復,會出現升級失敗的情況,從而還需要借助人工到現場完成的問題,實現保證升級過程的安全性、完整性、可靠性、靈活性以及簡單有效性,即使出現
2、一種物聯網終端的遠程升級方法,應用于物聯網終端,所述方法包括:響應于對目標固件的版本升級請求,將預編譯好的待升級版本目標固件下載至固件下載flash分區;其中,所述預編譯好的待升級版本目標固件的編譯過程中包括為目標固件配置5個flash分區的過程;其中,所述5個flash分區包括:引導程序flash分區、運行固件存儲flash分區、固件備份flash分區、固件下載flash分區,以及固件升級信息flash分區;所述固件升級信息flash分區中包括固件的大小、固件描述信息、固件版本號集合、ota升級標志位、升級過程錯誤日志和跳轉成功標志位;所述固件版本號集合中包括所述運行固件存儲flash分區中固件對應的版本號;基于所述ota升級標志位,確定是否進行目標固件升級,并在確定固件升級的情況下,基于所述預編譯好的待升級版本目標固件、所述運行固件存儲flash分區、固件備份flash分區和固件下載flash分區進行目標固件的版本升級,并根據升級情況修改ota升級標志位的值;根據目標固件版本升級是否成功,調整所述跳轉成功標志位的值,并在版本升級失敗的情況下,進行版本回退;將升級成功后運行固件存儲flash分區中固件對應的版本號上報物聯網平臺;或,將版本回退后運行固件存儲flash分區中固件對應的版本號和升級過程錯誤日志,上報物聯網平臺。
3、在其中一個實施例中,所述基于所述ota升級標志位,確定是否進行目標固件升級,并在確定固件升級的情況下,基于所述預編譯好的待升級版本目標固件、所述運行固件存儲flash分區、固件備份flash分區和固件下載flash分區進行目標固件的版本升級,并根據升級情況修改ota升級標志位的值,包括:行目標固件對應的引導程序,并基于所述引導程序和所述ota升級標志位,確定是否進行目標固件升級;在確定進行目標固件升級的情況下,先將運行固件存儲flash分區中的當前版本目標固件復制到固件備份flash分區中,其次將所述固件下載flash分區中的待升級版本目標固件搬移至運行固件存儲flash分區,然后將所述目標固件對應的ota升級標志位置為0,最后跳轉至運行固件存儲flash分區,并確定是否跳轉成功;或,在確定不進行目標固件升級的情況下,跳轉至運行固件存儲flash分區,并確定是否跳轉成功。
4、在其中一個實施例中,所述根據目標固件版本升級是否成功,調整所述跳轉成功標志位的值,并在版本升級失敗的情況下,進行版本回退,包括:在確定跳轉成功的情況下,將跳轉成功標志位置為1;或,在確定跳轉不成功的情況下,將運行固件存儲flash分區中的待升級版本目標固件轉移至所述固件下載flash分區中,并將固件備份flash分區中的當前版本目標固件復制到運行固件存儲flash分區后,跳轉到運行固件存儲flash分區,并將跳轉成功標志位置0。
5、在其中一個實施例中,在所述響應于對目標固件的版本升級請求,將預編譯好的待升級版本目標固件下載至固件下載flash分區之前,所述方法還包括:向物聯網平臺上報當前版本目標固件的版本號;所述當前版本目標固件的版本號用于物聯網平臺確定物聯網終端的固件版本;接收來自物聯網平臺的對目標固件的版本升級請求以及待升級版本目標固件的屬性信息,所述版本升級目標固件的屬性信息中包括:待升級版本目標固件的大小和版本信息。
6、在其中一個實施例中,在所述向物聯網平臺上報當前版本目標固件的版本號之前,所述方法還包括:運行存儲在引導程序flash分區中的引導程序,基于所述引導程序確定運行固件存儲flash分區中是否包含當前版本目標固件;在確定運行固件存儲flash分區中包含當前版本目標固件的情況下,跳轉到所述運行固件存儲flash分區;或,在確定運行固件存儲flash分區中不包含當前版本目標固件的情況下,通過iap的方式將預編譯好的當前版本目標固件,燒錄到對應的運行固件存儲flash分區中;燒錄完成后,跳轉到運行固件存儲flash分區中,并基于mqtt的登錄信息登錄到物聯網平臺。
7、在其中一個實施例中,固件升級過程中通過api調用方式調用模塊化flash操作,所述模塊化flash操作包括:flash的初始化、讀、寫、擦除和拷貝。
8、在其中一個實施例中,應用于物聯網平臺,所述方法包括:接收來自至少一個物聯網終端上報的當前版本號;響應于用戶對flash分區的配置操作,編譯所述至少一個物聯網終端中的目標物聯網終端中的待升級版本固件,并上傳編譯后的待升級版本固件;所述用戶對flash分區的配置操作過程中包括配置5個flash分區以被物聯網終端用于應用程序固件升級;其中,所述5個flash分區包括:引導程序flash分區、運行固件存儲flash分區、固件備份flash分區、固件下載flash分區,以及固件升級信息flash分區;所述固件升級信息flash分區用于存儲固件的描述信息以及固件升級信息,所述固件升級信息flash分區中包括固件的大小、固件描述信息、固件版本號集合、ota升級標志位、升級過程錯誤日志和跳轉成功標志位;響應于用戶對所述編譯后的待升級版本固件的固件升級操作,向所述目標物聯網終端發送固件升級請求以及待升級版本目標固件的屬性信息;所述固件請求以及待升級版本目標固件的屬性信息,均被物聯網終端用于確定并進行所述編譯后的待升級版本固件的升級;接收來自目標物聯網終端上本文檔來自技高網...
【技術保護點】
1.一種物聯網終端的遠程升級方法,其特征在于,應用于物聯網終端,所述方法包括:
2.根據權利要求1所述的物聯網終端的遠程升級方法,其特征在于,所述基于所述OTA升級標志位,確定是否進行目標固件升級,并在確定固件升級的情況下,基于所述預編譯好的待升級版本目標固件、所述運行固件存儲FLASH分區、固件備份FLASH分區和固件下載FLASH分區進行目標固件的版本升級,并根據升級情況修改OTA升級標志位的值,包括:
3.根據權利要求2所述的物聯網終端的遠程升級方法,其特征在于,所述根據目標固件版本升級是否成功,調整所述跳轉成功標志位的值,并在版本升級失敗的情況下,進行版本回退,包括:
4.根據權利要求1所述的物聯網終端的遠程升級方法,其特征在于,在所述響應于對目標固件的版本升級請求,將預編譯好的待升級版本目標固件下載至固件下載FLASH分區之前,所述方法還包括:
5.根據權利要求4所述的物聯網終端的遠程升級方法,其特征在于,在所述向物聯網平臺上報當前版本目標固件的版本號之前,所述方法還包括:
6.根據權利要求1所述的物聯網終端的
7.一種物聯網終端的遠程升級方法,其特征在于,應用于物聯網平臺,所述方法包括:
8.根據權利要求7所述的物聯網終端的遠程升級方法,其特征在于,所述響應于用戶對所述編譯后的待升級版本固件的固件升級操作,向所述目標物聯網終端發送固件升級請求,包括:
9.根據權利要求7所述的物聯網終端的遠程升級方法,其特征在于,在所述接收來自至少一個物聯網終端上報的當前版本號之前,所述方法還包括:
10.一種物聯網終端的遠程升級系統,其特征在于,包括:物聯網終端和物聯網平臺,所述物聯網終端用于執行權利要求1至6任一項所述的方法,所述物聯網平臺用于執行權利要求7至9任一項所述的方法。
...【技術特征摘要】
1.一種物聯網終端的遠程升級方法,其特征在于,應用于物聯網終端,所述方法包括:
2.根據權利要求1所述的物聯網終端的遠程升級方法,其特征在于,所述基于所述ota升級標志位,確定是否進行目標固件升級,并在確定固件升級的情況下,基于所述預編譯好的待升級版本目標固件、所述運行固件存儲flash分區、固件備份flash分區和固件下載flash分區進行目標固件的版本升級,并根據升級情況修改ota升級標志位的值,包括:
3.根據權利要求2所述的物聯網終端的遠程升級方法,其特征在于,所述根據目標固件版本升級是否成功,調整所述跳轉成功標志位的值,并在版本升級失敗的情況下,進行版本回退,包括:
4.根據權利要求1所述的物聯網終端的遠程升級方法,其特征在于,在所述響應于對目標固件的版本升級請求,將預編譯好的待升級版本目標固件下載至固件下載flash分區之前,所述方法還包括:
5.根據權利要求4所述的物聯網終端的遠程升級方法,其特征在于,在所述...
【專利技術屬性】
技術研發人員:王國柱,劉偉超,黃琛,句秋月,杜婉婧,畢志勇,
申請(專利權)人:浙江省北大信息技術高等研究院,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。