物聯(lián)網(wǎng)項目需要可靠的基礎(chǔ)設(shè)施,以保持您的設(shè)備連接、安全,理想情況下還可以永久訪問無線固件更新,以支持持續(xù)的維護(hù)和功能開發(fā)——所有這些都可以在您從幾個原型擴(kuò)展到可能數(shù)十萬個單元時完成。
然而,建立和維護(hù)這種基礎(chǔ)設(shè)施是困難的!特別是如果您的專業(yè)領(lǐng)域不是連接和通信,而是嵌入式系統(tǒng)。隨著公司向物聯(lián)網(wǎng)平臺尋求幫助,他們面臨著一個難題:外包所需物聯(lián)網(wǎng)基礎(chǔ)設(shè)施的運(yùn)營有望縮短上市時間,但代價高昂的是將自己鎖定在整個供應(yīng)商和工具生態(tài)系統(tǒng)中,或者至少鎖定在操作系統(tǒng)和編程語言的任務(wù)中。
您的嵌入式軟件工程團(tuán)隊可能會告訴您,在物聯(lián)網(wǎng)軟件架構(gòu)方面,您做出的最重要的決定是圍繞操作系統(tǒng)和編程語言做出的選擇,以編寫設(shè)備端應(yīng)用程序。這種選擇可能會影響您需要的團(tuán)隊的規(guī)模和經(jīng)驗、您必須編寫的新代碼的數(shù)量、雇用新工程師的難易程度,最重要的是,交付項目或產(chǎn)品所需的時間。從歷史上看,這個決定一直是一個重大決定,因為一旦你做出了這個決定,你基本上就會永遠(yuǎn)堅持下去——或者至少在未來改變這個決定是非常困難的。
除了操作系統(tǒng)和語言之外,您可能還需要考慮第三方代碼進(jìn)行集成,或者您可能已經(jīng)為想要重用的傳感器等內(nèi)容預(yù)先存在代碼和驅(qū)動程序。您確實希望能夠選擇您的開發(fā)環(huán)境,而不是將其強(qiáng)加給您。
在本文中,我們將探討一種新的、開放的物聯(lián)網(wǎng)軟件架構(gòu)方法的好處,稱為基于微管理程序的方法。我們將討論為什么自由地以自己的方式編寫代碼如此有價值,以及為什么能夠進(jìn)一步改變方法的靈活性會為您的產(chǎn)品帶來重大好處,并最終為您的團(tuán)隊取得成功帶來重大好處。
面向未來的物聯(lián)網(wǎng)架構(gòu)的重要性
可以公平地說,沒有人愿意最終成為維護(hù)舊產(chǎn)品的團(tuán)隊,不斷耗盡資源(例如閃存和RAM),永遠(yuǎn)優(yōu)化代碼以使其適合,反復(fù)不得不將補(bǔ)丁移植回舊產(chǎn)品,而新產(chǎn)品在更現(xiàn)代的操作系統(tǒng)上并獲得所有新功能。
有時,您甚至可能最終被迫做出錯誤的選擇來妥協(xié)新產(chǎn)品 - “讓我們使用與舊產(chǎn)品相同的操作系統(tǒng)和代碼”以使其保持一致,即使您知道這不是正確的選擇。
作為圍繞要使用的體系結(jié)構(gòu)、操作系統(tǒng)和編程語言決策的一部分,您真的希望確保為“未來的你”提供最大的成功機(jī)會。這通常意味著在做出設(shè)計決策時,不會把你逼到墻角,也不會讓你在以后留下大量的技術(shù)債務(wù)。你可能會覺得你需要一個水晶球來計算未知的未知,你必須在不完全知道未來的情況下這樣做:
你會發(fā)現(xiàn)一個不可預(yù)見的問題,迫使你改變你的計劃嗎?
是否會有具有更多要求的下一個產(chǎn)品版本?
定義 V2 產(chǎn)品時是否需要支持不同的硬件體系結(jié)構(gòu)?
因此,鑒于操作系統(tǒng)和編程語言的選擇是一個很大的選擇,您可以做些什么來為未來提供最廣泛的選擇,并使您的設(shè)備最適合未來并保護(hù)您的軟件團(tuán)隊?
如果您能更輕松地做出此選擇,那不是很好嗎?如果您今天可以選擇一種設(shè)備端方法,讓您能夠根據(jù)當(dāng)前擁有的信息自由地快速、立即地進(jìn)行創(chuàng)新。也許使您能夠盡快推出最小可行產(chǎn)品 (MVP) 或 V1 產(chǎn)品,在此過程中以最有效和最敏捷的方式進(jìn)行開發(fā)。
如果您能夠構(gòu)建在 V1 產(chǎn)品中進(jìn)一步改變方向的能力,確保您永遠(yuǎn)不會面臨舊產(chǎn)品運(yùn)行與新產(chǎn)品不同的環(huán)境的情況,那不是更好嗎?
這種完全的靈活性和控制力就是我所說的“開放方法”,讓您的物聯(lián)網(wǎng)軟件架構(gòu)面向未來,在邊緣運(yùn)行。
以 RUST 作為首選的嵌入式編程語言的出現(xiàn)為例。您今天可能還沒有準(zhǔn)備好在邊緣設(shè)備上采用 RUST 環(huán)境,但您非常確定,很快,您可能會想要這樣做。借助邊緣設(shè)備上的開放式架構(gòu),您可以選擇在像 FreeRTOS 這樣的東西上構(gòu)建用 C 編寫的應(yīng)用程序,因為您知道將來可以輕松地將其切換為基于 RUST 的應(yīng)用程序。您現(xiàn)在可以為您的設(shè)備構(gòu)建“與時俱進(jìn)”的功能。
最終,能夠在時機(jī)成熟時改變您的方法將帶來更好的整體團(tuán)隊和設(shè)備性能,以及更敏捷和高效的開發(fā)過程。這反過來將有助于顯著降低傳統(tǒng)產(chǎn)品的維護(hù)成本,并縮短上市時間。這也意味著您可以立即進(jìn)行優(yōu)化,而無需過多地為未來而煩惱 - 無論是在開發(fā)應(yīng)用程序時優(yōu)化代碼的功能、性能、可靠性還是安全性。今天好的東西不會永遠(yuǎn)好。
微管理程序架構(gòu)如何實現(xiàn)自由選擇
如果您已經(jīng)閱讀了本系列的前幾篇文章,您就會知道微監(jiān)控程序是一種物聯(lián)網(wǎng)方法,它利用微控制器的虛擬機(jī)管理程序,在互聯(lián)網(wǎng)連接的設(shè)備上實現(xiàn)可靠和安全的遠(yuǎn)程操作,例如故障安全的無線固件更新和安全的實時遠(yuǎn)程調(diào)試。它通過利用微控制器內(nèi)的硬件分離(例如意法半導(dǎo)體的STM32U585)在啟動時將其分為兩個部分來實現(xiàn)這一點,例如利用Arm? Trustzone?。
此微管理程序不僅分離了設(shè)備的安全組件(通常是 TrustZone 傳統(tǒng)上可能用于的組件),還分離了連接組件,這意味著您的設(shè)備在線和保持在線所需的一切都是微管理程序本身的屬性。
微管理程序架構(gòu)中的這種拆分意味著,現(xiàn)在只需在您的設(shè)備上使用基于微管理程序的方法,就可以滿足軟件團(tuán)隊的未來需求和產(chǎn)品軟件架構(gòu)的挑戰(zhàn),因為這種方法本質(zhì)上分離了設(shè)備端代碼架構(gòu)決策的持久性,以防止供應(yīng)商或架構(gòu)鎖定。
在基于微管理程序的架構(gòu)中,對嵌入式開發(fā)中使用的操作系統(tǒng)或編程語言沒有任何限制。只要您要使用的操作系統(tǒng)或環(huán)境可以在您的MCU上運(yùn)行(在Twilio微監(jiān)控器的情況下,最初是STM32U585),那么您就可以將其部署在微管理程序世界中。這適用于嵌入式開發(fā)中的任何方法,無論是自定義裸機(jī)方法,還是構(gòu)建在“現(xiàn)成”操作系統(tǒng)(例如 FreeRTOS 或 Azure RTOS)之上。
與傳統(tǒng)物聯(lián)網(wǎng)平臺的方法相比,這種自由和靈活性是新的。很少有完全自由選擇使用什么操作系統(tǒng)和編程語言的情況。使用微管理程序方法,應(yīng)用程序開發(fā)人員和固件工程師不會被鎖定在任何特定的軟件平臺中。開發(fā)人員可以選擇最適合他們的工具,而不是被迫使用特定的平臺方法,因為它是唯一受支持的方法。
在創(chuàng)建面向未來的物聯(lián)網(wǎng)解決方案時,缺乏平臺“鎖定”可能是最大的幫助。即使在最壞的情況下,您的提供商之一可能會倒閉,使用基于微監(jiān)控程序的方法編寫代碼的事實意味著開發(fā)人員不會在特定于平臺的工作上浪費任何時間。您可以輕松地將代碼移植到另一個操作系統(tǒng)或環(huán)境,而不會有太多麻煩,使用微管理程序FOTA功能將此“全新映像”推送到現(xiàn)場的現(xiàn)有設(shè)備,最終用戶甚至不需要知道潛在的災(zāi)難已被避免。
但可以說,最大的好處是,這確實有助于確保您的物聯(lián)網(wǎng)解決方案隨著時間的推移保持適應(yīng)性和面向未來,即使技術(shù)和市場條件發(fā)生變化也是如此。
如何了解有關(guān) Twilio Microvisor 的更多信息?
微管理程序提供了一種強(qiáng)大而靈活的物聯(lián)網(wǎng)方法,使開發(fā)人員能夠構(gòu)建安全、可靠和高效的物聯(lián)網(wǎng)應(yīng)用程序。通過利用硬件分離,微管理程序可以為物聯(lián)網(wǎng)設(shè)備提供額外的安全層,同時支持遠(yuǎn)程調(diào)試、OTA 固件更新,并且至關(guān)重要的是支持具有本機(jī)代碼執(zhí)行的多個操作系統(tǒng)和多種編程語言。憑借其眾多優(yōu)勢和優(yōu)勢,微管理程序有望在物聯(lián)網(wǎng)應(yīng)用的開發(fā)和部署中發(fā)揮越來越重要的作用。
審核編輯:郭婷
-
傳感器
+關(guān)注
關(guān)注
2554文章
51561瀏覽量
757660 -
mcu
+關(guān)注
關(guān)注
146文章
17395瀏覽量
353161 -
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2914文章
45052瀏覽量
378332
發(fā)布評論請先 登錄
相關(guān)推薦
物聯(lián)網(wǎng)開源工具Unik:用Unikernel提高連接安全性
物聯(lián)網(wǎng)應(yīng)用驅(qū)動MCU市場增長
跟資深技術(shù)大牛學(xué)ARM mbed操作系統(tǒng)開發(fā)
采購高手教你如何做好供應(yīng)商管理?
工業(yè)物聯(lián)網(wǎng)技術(shù)
基于智能傳感器的物聯(lián)網(wǎng)應(yīng)用開發(fā)
如何添加供應(yīng)商命令?
簡述eSIM對物聯(lián)網(wǎng)的發(fā)展價值
要建設(shè)一座亮眼的智慧廁所,選好供應(yīng)商才是關(guān)鍵(一)
物聯(lián)網(wǎng)的演變,物聯(lián)網(wǎng)的過去、現(xiàn)在和未來
LTE-M提供面向未來的物聯(lián)網(wǎng)

LTE-M提供面向未來的物聯(lián)網(wǎng)

汽車汽配行業(yè)SRM供應(yīng)商管理系統(tǒng)數(shù)字化管理供應(yīng)商改進(jìn)采購管理流程

評論