技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國(guó)傳動(dòng)網(wǎng) > 技術(shù)頻道 > 應(yīng)用方案 > 一文解析FreeRTOS的OTA特性使用技巧與訣竅

一文解析FreeRTOS的OTA特性使用技巧與訣竅

時(shí)間:2018-08-02 11:46:11來源:網(wǎng)絡(luò)轉(zhuǎn)載

導(dǎo)語(yǔ):?AmazonFreeRTOS可幫助開發(fā)人員簡(jiǎn)化將物聯(lián)網(wǎng)(IoT)設(shè)備連接到云的過程。然而,即使有更簡(jiǎn)單的云連接,許多開發(fā)人員面臨的一個(gè)主要障礙仍然是如何現(xiàn)場(chǎng)升級(jí)其設(shè)備的固件。

AmazonFreeRTOS可幫助開發(fā)人員簡(jiǎn)化將物聯(lián)網(wǎng)(IoT)設(shè)備連接到云的過程。然而,即使有更簡(jiǎn)單的云連接,許多開發(fā)人員面臨的一個(gè)主要障礙仍然是如何現(xiàn)場(chǎng)升級(jí)其設(shè)備的固件。

固件升級(jí)常常利用引導(dǎo)程序完成;基于設(shè)備架構(gòu)和可用的通信外設(shè),引導(dǎo)程序可能有多種不同形式。引導(dǎo)程序很普遍,幾乎所有嵌入式系統(tǒng)中都有包括,因此開發(fā)人員需要利用現(xiàn)有解決方案,而不是從頭開始開發(fā)。這樣,他們可以將更多時(shí)間投入到產(chǎn)品的差異化和特性上。

本文將探討開發(fā)人員如何利用內(nèi)置于AmazonFreeRTOS(a:FreeRTOS)中的引導(dǎo)程序功能(常被稱為空中升級(jí)(OTA)),來快速實(shí)現(xiàn)在其物聯(lián)網(wǎng)設(shè)備上運(yùn)行引導(dǎo)程序解決方案。

AmazonFreeRTOS的OTA升級(jí)概述 

AmazonFreeRTOS是一種實(shí)時(shí)操作系統(tǒng),其中包含了輕松連接AmazonWebServices(AWS)所需的全部庫(kù)。AmazonFreeRTOS本質(zhì)上是FreeRTOS內(nèi)核,現(xiàn)已包含連接和安全庫(kù),以方便與AWS進(jìn)行安全通信。OTA特性包含在單獨(dú)的OTA庫(kù)中,必須單獨(dú)配置才能包含在a:FreeRTOS下載中。

a:FreeRTOSOTA升級(jí)服務(wù)包含必要的軟件以便開發(fā)人員可以執(zhí)行如下操作:

部署前對(duì)固件進(jìn)行數(shù)字簽名和加密

將新固件映像安全地部署到單一設(shè)備、設(shè)備組或整個(gè)設(shè)備集群

當(dāng)設(shè)備加入組中、重新啟動(dòng)或重新配置時(shí),將固件部署到設(shè)備中

將新固件部署到設(shè)備后驗(yàn)證其真實(shí)性和完整性

監(jiān)視部署進(jìn)度

調(diào)試失敗的部署

這些特性通過運(yùn)行各種AWS服務(wù)來提供,例如:

OTA管理器服務(wù)

AWSIoT作業(yè)服務(wù)

串流服務(wù)

AmazonFreeRTOS代碼簽名服務(wù)

OTA庫(kù)和代理

對(duì)開發(fā)人員而言,讓所有這些部分協(xié)同工作所需的步驟是相當(dāng)多的,無法在一篇文章中詳細(xì)說明。本文將重點(diǎn)介紹如何入門,以及關(guān)于在實(shí)驗(yàn)室中成功設(shè)置a:FreeRTOS的一些經(jīng)驗(yàn)教訓(xùn)和訣竅。

選擇OTA測(cè)試硬件

a:FreeRTOS目前支持多種開發(fā)板。它支持的開發(fā)套件包括:

TexasInstruments的SimpleLinkWi-FiCC3220SFWirelessLaunchPad開發(fā)套件

MicrochipTechnology的PIC32MZEFCuriosity開發(fā)套件

STMicroelectronics的STM32L4Discovery套件IoT節(jié)點(diǎn)

NXPSemiconductors的LPC54018IoT模塊

EspressifSystems的ESP32-DEVKITC開發(fā)套件

圖1:TexasInstruments的CC3220SF-LaunchXL是一個(gè)可以啟動(dòng)AmazonFreeRTOSOTA的全集成解決方案。該微控制器集成一個(gè)Wi-Fi模塊,最大限度地減小了物理尺寸并降低能耗。

出于多方面原因,本文將重點(diǎn)介紹SimpleLinkWi-FiCC3220SF。首先,CC3220SF是目前唯一集成了Wi-Fi模塊的a:FreeRTOS微控制器。雖然其他開發(fā)板具有板載Wi-Fi模塊,但CC3220SF通過將控制器和Wi-Fi功能集成在單一芯片中,節(jié)省了電路板空間和能耗。

其次,CC3220SF的外部存儲(chǔ)設(shè)備可以存儲(chǔ)固件映像并在引導(dǎo)過程中恢復(fù)映像,因此其安全特性很有意義且更為復(fù)雜。如果讀者能夠在CC3220SF上成功設(shè)置OTA,那么在其他平臺(tái)上將不會(huì)有任何問題。

最后,CC3220SF是OTA演示應(yīng)用支持的第一款處理器,因此設(shè)計(jì)人員可以放心,處理器在CC3220SF上已經(jīng)過全面審查。

圖2:J-LinkUltra+是一款全功能專業(yè)調(diào)試器,其特性包括無限制斷點(diǎn),以及極快的SWO和接口時(shí)鐘速率。開發(fā)人員可以利用J-LinkUltra+執(zhí)行應(yīng)用跟蹤,以便了解OTA示例如何工作。

除了選擇開發(fā)板之外,開發(fā)人員可能還需放棄板載編程器,而使用專業(yè)編程器,例如SeggerMicrocontrollerSystems的J-LinkUltra+。專業(yè)編程器會(huì)降低程序速度并提供額外的調(diào)試功能,例如應(yīng)用跟蹤和RTOS感知調(diào)試,這對(duì)理解黑盒應(yīng)用非常重要。開發(fā)人員也可利用Tag-Connect的TC201510引腳釘式插頭,輕松將編程器連接到目標(biāo)板。調(diào)試器上可能需要TC2050-ARM201020引腳適配器來轉(zhuǎn)接TC2050,以便連接板側(cè)電纜。

圖3:Tag-Connect的TC2050-IDC10引腳釘式插頭(左)是一種適配器電纜,可將開發(fā)板或生產(chǎn)電路板上的連接器基底面減到最小。與SEGGERJ-LINK一起使用時(shí),可能需要TC2050-ARM201020引腳適配器來轉(zhuǎn)接TC2050。

配置AmazonFreeRTOS以實(shí)現(xiàn)OTA升級(jí)

默認(rèn)情況下,OTA庫(kù)未包含在預(yù)配置的a:FreeRTOS包中。開發(fā)人員必須手動(dòng)配置這些庫(kù)和應(yīng)用。首先,應(yīng)登錄AWSIoT控制臺(tái)并進(jìn)入AmazonFreeRTOS菜單。然后,開發(fā)人員可以點(diǎn)擊“Createnew(新建)”按鈕開始創(chuàng)建自定義配置(圖4)。

圖4:在AWSIoT控制臺(tái)中,通過單擊軟件配置菜單中的“Createnew(新建)”按鈕可以自定義a:FreeRTOS設(shè)備軟件。

在配置過程中,開發(fā)人員只需要設(shè)置幾項(xiàng)就能配置OTA特性。其中包括:

選擇硬件

選擇所包含的a:FreeRTOS庫(kù)

設(shè)置配置名稱

對(duì)于本例,開發(fā)人員選擇CC3220SF-LAUNCHXL(圖5)。以這種方式選擇硬件平臺(tái)將會(huì)引入所有特定于電路板的文件,包括驅(qū)動(dòng)程序。但是,選擇電路板并不會(huì)自動(dòng)引入OTA特性。在庫(kù)部分,開發(fā)人員需要添加OTA庫(kù)(如圖6所示)。這將包含所有OTA庫(kù),包括開發(fā)人員可以參考或采納的演示示例。

圖5:選擇將要配合a:FreeRTOSOTA特性使用的硬件配置。

圖6:將OTA升級(jí)庫(kù)添加到a:FreeRTOS配置中。

完成此操作后,開發(fā)人員便可創(chuàng)建配置并下載,然后將aws_demo項(xiàng)目導(dǎo)入代碼調(diào)試器。

設(shè)置OTA示例代碼

一旦導(dǎo)入aws_demosOTA示例,便需要執(zhí)行若干任務(wù)。首先,配置終端、證書和安全密鑰。這可以按照a:FreeRTOS入門指南中的步驟完成。遵循該指南并按原樣運(yùn)行aws_demos項(xiàng)目,以便確認(rèn)已連接到AWS,然后再執(zhí)行其他操作。

接下來,修改OTA演示非常簡(jiǎn)單。打開aws_demo_runner.c模塊,找到位于模塊末尾的DEMO_RUNNER_RunDemos函數(shù)。應(yīng)對(duì)vStartMQTTEchoDemo調(diào)用添加注釋,而vStartOTAUpdateDemoTask調(diào)用則取消注釋。然后進(jìn)行快速編譯以構(gòu)建項(xiàng)目,在引導(dǎo)程序功能啟用的情況下,項(xiàng)目便可執(zhí)行。

圖7:將OTA演示任務(wù)添加到aws_demos應(yīng)用中。

配置AmazonWebServices以實(shí)現(xiàn)OTA

對(duì)嵌入式軟件開發(fā)人員而言,要運(yùn)行OTA示例,進(jìn)行到這一步驟時(shí)將涉及到云端。為了成功運(yùn)行OTA示例,開發(fā)人員需要根據(jù)OTA先決條件指南配置AWS。這要求開發(fā)人員:

創(chuàng)建AmazonS3存儲(chǔ)桶

授予AWS帳戶OTA升級(jí)權(quán)限

創(chuàng)建OTA服務(wù)角色

創(chuàng)建OTA用戶策略

授予訪問代碼簽名服務(wù)的權(quán)限

完成這些操作后,依照最終的用戶指南說明運(yùn)行OTAa:FreeRTOS示例。

AmazonFreeRTOS的OTA特性使用技巧與訣竅

使用a:FreeRTOS中包含的引導(dǎo)程序功能時(shí),為盡量減少潛在問題,開發(fā)人員可以采用以下幾點(diǎn)技巧和訣竅。其中包括:

閱讀“使用AmazonFreeRTOS連接到云”以獲取關(guān)于如何使用FreeRTOS的一般技巧和信息。

通讀AmazonOTA說明文檔(詳見此處)。

在開發(fā)過程中,購(gòu)買六片開發(fā)板并將它們分成三組,每組兩片。這樣便可試驗(yàn)現(xiàn)場(chǎng)升級(jí)設(shè)備和組可采用的不同方法。

首先將固件升級(jí)部署到較小的設(shè)備組,以確保固件升級(jí)沒有問題,然后才升級(jí)整個(gè)設(shè)備集群。

利用AWSAmazonCertificateManager創(chuàng)建證書并給固件簽名??梢允褂玫谌秸J(rèn)證機(jī)構(gòu),但如果全部在AWS內(nèi)完成,該過程會(huì)比較簡(jiǎn)單。

考慮將PIC32MZEFCuriosity板用于OTA實(shí)驗(yàn),因?yàn)樗堑诙钪С諳TA測(cè)試版演示的a:FreeRTOS開發(fā)套件。

總結(jié)

AmazonFreeRTOS生態(tài)系統(tǒng)為開發(fā)人員提供了一個(gè)現(xiàn)場(chǎng)升級(jí)固件的范例。對(duì)于可能有不同需求或系統(tǒng)配置的開發(fā)人員,此范例可以輕松擴(kuò)展。利用現(xiàn)有引導(dǎo)程序可為開發(fā)人員節(jié)省大量開發(fā)時(shí)間,以便其專注于產(chǎn)品差異化和價(jià)值主張。

如本文所述,AmazonFreeRTOS的確可提供空中升級(jí)解決方案,該方案目前用于TexasInstrumentsCC3220,而未來無疑將可用于其他AmazonFreeRTOS產(chǎn)品。

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:一文了解提高儀器的精度和保...

下一篇:PLC在天車變頻控制系統(tǒng)中的應(yīng)用

中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(www.treenowplaneincome.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡(jiǎn)介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

中國(guó)傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購(gòu)咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權(quán)所有 粵ICP備 14004826號(hào) | 營(yíng)業(yè)執(zhí)照證書 | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)