[發明專利]一種用于物聯網設備的空中固件升級方法及系統有效
| 申請號: | 201911351606.9 | 申請日: | 2019-12-24 |
| 公開(公告)號: | CN111212121B | 公開(公告)日: | 2021-05-18 |
| 發明(設計)人: | 劉波;陳積明;史治國;賀詩波;李傳武 | 申請(專利權)人: | 浙江大學;瑞立集團瑞安汽車零部件有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08;H04L29/06;H04L12/24;H04L9/32;G06F8/654;G06F8/71 |
| 代理公司: | 杭州求是專利事務所有限公司 33200 | 代理人: | 劉靜 |
| 地址: | 310058 浙江*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 用于 聯網 設備 空中 升級 方法 系統 | ||
1.一種用于物聯網設備的空中固件升級方法,其特征在于,該方法包括以下步驟:
步驟1,研發人員修改軟件代碼后生成新版本固件,通過網絡將該新版本固件上傳至升級服務器,升級服務器為當前新版本固件設定唯一版本號碼,并將該固件存儲于私有云數據庫;
步驟2,升級服務器確定針對物聯網設備終端采用的固件升級方式,包括整包升級方式以及差分升級方式;所述升級服務器利用設備固件更新資源評價方法確定針對物聯網設備終端采用的固件升級方式,具體為:綜合設備端與固件升級過程中涉及到的各項參數,計算當前物聯網設備終端的固件更新資源參數θ:
式中:r表示當前物聯網設備終端具有的空閑RAM資源、f表示當前物聯網設備終端具有的FLASH存儲資源、c表示當前網絡信號強度、k表示當前網絡通信速度,n表示新版本固件大小,o表示舊版本固件大小,t表示當前物聯網設備升級最大時間限制,d表示新舊固件差分包大小;
由上述公式首先計算出差分壓縮效率P,如果差分壓縮效率P小于系統預定壓縮比P1,則采用整包升級方式,否則計算固件網絡傳輸時間T,固件網絡傳輸時間T為新固件包傳輸的時間與升級最大時間限制比值,如果該值大于1,則采用差分升級方式,否則根據固件更新資源參數θ進行選擇,如果θ大于系統預定參數θ1,則采用差分升級方式,否則,采用整包升級方式;
步驟3,物聯網設備終端連接升級服務器,獲取固件升級包,并進行固件升級包的完整性與唯一性校驗,校驗通過后,利用步驟2中確定的固件升級方法對物聯網設備終端軟件進行固件升級,將軟件版本由舊固件版本升級到目標版本;
步驟4,物聯網設備終端升級完成后,向升級服務器發送升級完成通知,升級服務器將升級日志存儲至私有云數據庫。
2.根據權利要求1所述的一種用于物聯網設備的空中固件升級方法,其特征在于,所述整包升級方式通過將完整新版本固件包下發到物聯網設備端完成固件升級操作,具體步驟流程如下:
(1)升級服務器按照設備端資源限制將新版本固件包統一劃分為N個數據包,所有數據包大小及格式均相同,同時為每個數據包計算MD5值,用于進行數據完整性校驗,并啟動升級流程,將每個數據包的MD5值下發到物聯網設備端;
(2)物聯網設備端下載第i數據包,1≤i≤N,并通過計算當前數據包的MD5值與升級服務器下發MD5值比對;
(3)如果MD5值相同,說明數據包完整,轉到步驟(2)獲取下一個數據包,并將當前已經獲取的數據包編號存儲至FLASH;如果MD5值不同,說明數據傳輸出現錯誤,轉到步驟(2)重新獲取當前數據包;
(4)如果已經獲得第N個數據包,說明新版本固件包獲取完成,將該新版本固件包安裝到備份存儲區域,并設置新版本固件包安裝完成標記,然后進行設備重啟操作;
(5)設備重啟后首先判斷固件安裝完成標記是否設置,如果沒有設置,則讀取FLASH中已獲得的固件編號,并轉到步驟(2)中繼續獲取下一個固件數據包;如果固件安裝完成標記已經設置,則通過引導加載程序跳轉到備份存儲區域并進行新版本固件功能測試;
(6)如果功能測試成功,設備將備份存儲區域設置為當前活動分區,并上報升級成功信息;如果功能測試失敗,則重新跳轉回原當前活動分區,即原版本固件代碼所在存儲區域,并上報升級失敗信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江大學;瑞立集團瑞安汽車零部件有限公司,未經浙江大學;瑞立集團瑞安汽車零部件有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911351606.9/1.html,轉載請聲明來源鉆瓜專利網。





