來源:Digikey 作者:Kenton Williston 在工業(yè)自動(dòng)化和醫(yī)療保健等應(yīng)用領(lǐng)域,大部分現(xiàn)有基礎(chǔ)設(shè)施都以 Windows 為基礎(chǔ)。開發(fā)人員若要為這些領(lǐng)域開發(fā)低功耗、低成本邊緣設(shè)備,Windows onArm® 就是一個(gè)顯而易見的選擇,原因是該系統(tǒng)可將 Windows 平臺引入高效的 Arm 架構(gòu)。 然而,在 Arm 系統(tǒng)上創(chuàng)建 Windows 時(shí),一個(gè)主要挑戰(zhàn)是缺乏合適的開發(fā)套件。盡管操作系統(tǒng) (OS) 早已應(yīng)用于各種板級物聯(lián)網(wǎng) (IoT) 和嵌入式計(jì)算系統(tǒng),但在開始編碼之前,這些產(chǎn)品通常需要大量的硬件工程。 開發(fā)人員需要一種盒式 PC 型解決方案,其中預(yù)裝了 Windows on Arm 并集成了應(yīng)用程序開發(fā)工作所需的全部組件。這樣將減少設(shè)置時(shí)間和復(fù)雜性,讓開發(fā)人員能夠?qū)W⒂趹?yīng)用程序開發(fā)和測試,而不必?fù)?dān)心初始軟件安裝和配置。 本文說明了促使采用 Windows for Arm 的操作系統(tǒng)選擇標(biāo)準(zhǔn),并回顧了可供考慮的不同 Windows 版本。文中隨后介紹了 Advantech 的 EPC-R3720IQ-AWA12 Windows on Arm 開發(fā)套件,并說明其如何提供無縫環(huán)境來加速開發(fā)。其中包括入門提示并指出可與該套件配合使用的 Microsoft 工具。 為什么使用 Windows 而不是 Linux 或 RTOS? 在選擇操作系統(tǒng)時(shí),開發(fā)人員有很多選擇,包括 Linux 和各種實(shí)時(shí)操作系統(tǒng) (RTOS)。至于為何選擇 Windows 而不是這些替代方案,一個(gè)常見原因是 Windows 提供了大量的軟件和庫。對于使用傳統(tǒng) Windows 基礎(chǔ)設(shè)施的環(huán)境來說,這是一個(gè)至關(guān)重要的考慮因素。 此外,Windows 還提供了一個(gè)成熟的開發(fā)生態(tài)系統(tǒng),以及 Visual Studio 和 .NET 框架等全面的工具和應(yīng)用程序編程接口 (API)。程序員可以從 C++、Python 和 Node.js 等廣泛的編程語言中進(jìn)行選擇,還可以訪問 Microsoft Azure 的各種服務(wù),快速構(gòu)建復(fù)雜的功能。 Linux 也提供一些上述優(yōu)勢,但配置和維護(hù) Linux 構(gòu)建版本可能需要付出巨大努力。此外,Linux 發(fā)行版本可能存在很大差異,從而給開發(fā)過程帶來了挑戰(zhàn)。 與 Windows 和 Linux 不同,實(shí)時(shí)操作系統(tǒng) (RTOS) 則強(qiáng)調(diào)效率。它們通常缺少高級功能,例如全功能操作系統(tǒng)提供的豐富圖形用戶界面 (GUI) 和廣泛的生態(tài)系統(tǒng)。 歸根結(jié)底,如果開發(fā)人員需要的是一個(gè)穩(wěn)健、功能豐富、安全且擁有成熟開發(fā)生態(tài)系統(tǒng)的操作系統(tǒng),那么 Windows 就是一個(gè)極具吸引力的選擇。不過,Windows 提供多種形式,了解個(gè)中差異至關(guān)重要。 了解 Windows 選項(xiàng) Microsoft 提供多種不同的 Windows 系統(tǒng)。表 1 顯示了不同版本之間的一些主要區(qū)別。對于 EPC-R3720IQ-AWA12,Advantech 選擇了 Windows IoT Enterprise。Windows IoT Enterprise 的優(yōu)勢之一是兼容觸摸屏友好的通用 Windows 平臺 (UWP) 和傳統(tǒng)的 Win32 應(yīng)用程序。有了這種靈活性,開發(fā)人員便可以選擇最適合其需求的應(yīng)用程序模型。 表 1:不同版本的 Windows 支持獨(dú)特用例。(表格來源:Kenton Williston,基于 Microsoft 信息提供) 此外,Windows IoT Enterprise 還提供了高級安全功能來提高可靠性: · 設(shè)備鎖定功能允許管理員限制設(shè)備只能運(yùn)行授權(quán)的應(yīng)用程序。 · 安全啟動(dòng)可確保設(shè)備僅使用受信任的軟件啟動(dòng)。 · BitLocker 加密技術(shù)有助于保護(hù)敏感數(shù)據(jù)。 該操作系統(tǒng)還提供企業(yè)級管理工具,可為部署的設(shè)備提供集中化支持。這些工具簡化了大規(guī)模物聯(lián)網(wǎng)部署的維護(hù)工作和安全性。 上述許多功能在更緊湊的 Windows IoT Core 中并不受支持。該版本適用于資源有限的輕型單用途設(shè)備。其中取消了圖形用戶界面等功能,也不支持傳統(tǒng) Win32 應(yīng)用程序,因此更適合作為復(fù)雜設(shè)備的配套操作系統(tǒng)。 相反,標(biāo)準(zhǔn) Windows Pro 提供豐富的功能集,但無法針對物聯(lián)網(wǎng)部署進(jìn)行定制。此外,標(biāo)準(zhǔn)版也不對長壽命設(shè)備提供 LTSC 支持。 為何要使用 Windows on Arm? 過去,Windows 操作系統(tǒng)依附于 x86 架構(gòu)。如今,該操作系統(tǒng)也可以在 Arm 處理器上運(yùn)行,而這種選擇開辟了新的設(shè)計(jì)可能性。 Windows on Arm 的主要優(yōu)勢在于效率。Arm 處理器以低功耗著稱,因此非常適合電池供電設(shè)備和熱管理要求較高的應(yīng)用。基于 Arm 的系統(tǒng)還傾向于強(qiáng)調(diào)成本效益,使其成為大規(guī)模物聯(lián)網(wǎng)部署的一個(gè)極具吸引力的選擇。 Windows on Arm 開發(fā)套件快速入門 如上所述,Windows on Arm 的缺點(diǎn)之一是缺少現(xiàn)成可用的硬件。EPC-R3720IQ-AWA12 通過提供預(yù)裝 Windows 10 IoT 的盒式 PC 解決了這一問題。 如圖 1 所示,該開發(fā)套件封裝在一個(gè) 174 x 108 x 25 mm 的堅(jiān)固外殼中。這個(gè)外殼可容納安裝支架,并且能根據(jù)需要進(jìn)行現(xiàn)場部署。 圖 1:EPC-R3720IQ-AWA12 是一款由 Arm 處理器驅(qū)動(dòng)的緊湊型盒式 PC,該處理器可運(yùn)行 Windows 10 IoT。(圖片來源:Advantech) 該開發(fā)套件的核心是 NXP Semiconductors 的 MIMX8ML8DVNLZAB 片上系統(tǒng) (SoC),這個(gè)系統(tǒng)基于四核 Arm Cortex-A53 處理器,運(yùn)行頻率為 1.8 Ghz(在 EPC-R3720IQ-AWA12 上的運(yùn)行頻率為 1.6 GHz)。該 SoC 配備了 2.3 TOPS 的神經(jīng)處理單元 (NPU),非常適合邊緣的人工智能 (AI) 和機(jī)器學(xué)習(xí) (ML) 工作負(fù)載。 該開發(fā)套件具有 6 GB 內(nèi)存和 16 GB 存儲空間,并可通過 Mini-PCIe、M.2、Micro SD 和 Nano SIM 卡插槽進(jìn)行擴(kuò)展。在連接性方面,該開發(fā)套件提供雙千兆位以太網(wǎng) (GbE) 端口、一個(gè) USB 2.0 端口、一個(gè) USB 3.2 Gen 1 端口、一個(gè) HDMI 端口和一個(gè)支持 CAN FD 的串行端口。 設(shè)置開發(fā)套件 EPC-R3720IQ-AWA12 開發(fā)套件的設(shè)置過程非常簡單。下面將從基本設(shè)置開始羅列出關(guān)鍵步驟: 1、顯示器、鍵盤和網(wǎng)絡(luò)應(yīng)分別通過 HDMI、USB 和以太網(wǎng)端口進(jìn)行連接。 2、該開發(fā)套件會在首次啟動(dòng)時(shí)自動(dòng)啟動(dòng) Windows 10 IoT 設(shè)置流程。此操作完成后,用戶將看到 Windows 桌面環(huán)境。 3、用戶必須從 Microsoft 網(wǎng)站下載并安裝 Visual Studio,以設(shè)置開發(fā)環(huán)境。在安裝過程中,用戶必須選擇開發(fā) Windows IoT 應(yīng)用程序和任何其他必要工作負(fù)載(如 .NET 或 UWP)所需的組件。 4、任何所需的軟件開發(fā)套件 (SDK) 和運(yùn)行時(shí)均應(yīng)進(jìn)行安裝。例如,如果需要 .NET 6 或 .NET 7,應(yīng)從 Microsoft 開發(fā)人員門戶網(wǎng)站或通過 Visual Studio 的安裝程序下載相應(yīng)的運(yùn)行時(shí)。 5、安裝必要的工具后,應(yīng)針對 Windows IoT 開發(fā)配置 Visual Studio,確保安裝了正確版本的 Windows SDK 和工具。 根據(jù)應(yīng)用需要,可能還需要其他配置: 1、如果需要無線網(wǎng)絡(luò),應(yīng)將天線連接到開發(fā)套件的內(nèi)置連接器上。為實(shí)現(xiàn)蜂窩連接,應(yīng)配置并安裝 SIM 卡。 2、通過 M.2 插槽或其他 I/O 端口連接的任何外設(shè)均應(yīng)進(jìn)行測試,確保為這些外設(shè)安裝了必要的驅(qū)動(dòng)程序和軟件。 3、如果應(yīng)用程序涉及云連接,則必須配置相應(yīng)的 Azure IoT Hub 或其他云服務(wù)。這包括設(shè)置 Azure 賬戶、使用 Azure 創(chuàng)建資源以及配置開發(fā)套件以與這些資源通信。 現(xiàn)在,用戶可以繼續(xù)進(jìn)行應(yīng)用程序開發(fā)和部署。若要進(jìn)行開發(fā),首先可以通過在 Visual Studio 中創(chuàng)建一個(gè)新項(xiàng)目或打開一個(gè)現(xiàn)有項(xiàng)目。應(yīng)用程序可以直接在設(shè)備上進(jìn)行開發(fā)、運(yùn)行和測試。 如果用戶計(jì)劃從開發(fā) PC 遠(yuǎn)程調(diào)試應(yīng)用程序,則應(yīng)設(shè)置遠(yuǎn)程調(diào)試。這包括在開發(fā)套件和 PC 上配置遠(yuǎn)程調(diào)試工具。 總結(jié) Windows on Arm 為復(fù)雜的物聯(lián)網(wǎng)設(shè)備提供了許多引人注目的優(yōu)勢。EPC-R3720IQ-AWA12 開發(fā)套件為開發(fā)人員提供了一種為該操作系統(tǒng)創(chuàng)建應(yīng)用程序的快速途徑,并且在某些情況下,硬件還可以直接用于部署。如本文所述,開發(fā)套件的入門過程非常簡單,開發(fā)人員只需進(jìn)行最少的設(shè)置,即可開始應(yīng)用程序開發(fā)。 |