AWS IOT 入門(一) FreeRTOS

AWS IOT和azure IOT相似,都是由現場設備收集數據發送到雲端,只不過不一樣組件叫不一樣名字而已。html

架構圖android

6a934582665c43bbb6ebccb0320ef044

邊緣軟件ios

邊緣計算將計算能力下降到數據源,而沒必要將其所有帶回雲端。AWS IoT 邊緣能夠爲從傳感器到風力渦輪機的小型和大型設備提供動力。AWS IoT 設備能夠安全地收集數據,保持設備數據同步,並在仍使用雲進行管理、分析和持久存儲的同時相互通訊。git


Amazon FreeRTOSgithub

Amazon FreeRTOS 是一款適用於微控制器的操做系統,可以讓您輕鬆地對低功耗的小型邊緣設備進行編程、部署、安全保護、鏈接和管理。 編程

Amazon FreeRTOS 經過軟件庫對 FreeRTOS 內核(一款適用於微控制器的常見開源操做系統)進行擴展,從而讓您能夠輕鬆地將小型低功耗設備安全鏈接到 AWS IoT Core 等 AWS 雲服務或運行 AWS IoT Greengrass 的功能更強大的邊緣設備。windows

微控制器 (MCU) 是一種單芯片,其中包含一個經常使用於電器、傳感器、健身跟蹤器、工業自動化和汽車等衆多設備的簡單處理器。許多此類小型設備均可以經過鏈接到雲或鏈接到本地的其餘設備而獲益。例如,智能電錶須要鏈接到雲來報告使用狀況,大樓安全系統須要進行本地通訊,在您使用身份識別卡進門時將門解鎖。微控制器具備有限的計算能力和內存容量,一般執行簡單的功能任務。微控制器運行的操做系統每每沒有支持鏈接到本地網絡或雲的內置功能,從而使 IoT 應用程序成爲一項挑戰。Amazon FreeRTOS 能夠幫助解決這個問題,它不只提供核心操做系統來運行邊緣設備,還提供軟件庫來支持輕鬆安全地鏈接到雲(或其餘邊緣設備),讓您能夠從中爲 IoT 應用程序收集數據並執行操做。安全

6ee0509a387f45acbfde04feb1a45d5f

Amazon FreeRTOS 架構

Amazon FreeRTOS 設計用於嵌入式微控制器。它一般做爲單個已編譯映像,與設備應用程序所需的全部組件一塊兒,刷入到設備。此映像中結合了嵌入式開發人員針對該應用程序編寫的功能、Amazon 提供的軟件庫、FreeRTOS 內核,以及適用於硬件平臺的驅動程序和板卡支持程序包 (BSP)。不論使用的是何種微處理器,對於 FreeRTOS 內核和全部 Amazon FreeRTOS 軟件庫,嵌入式應用程序開發人員都可以採用相同的標準化接口。網絡

afrchitecture.png

開始使用 Amazon FreeRTOS架構

要快速開始使用,您能夠從 AWS Partner Device Catalog 選擇支持 Amazon FreeRTOS 功能的硬件。若是您想快速開始使用,但沒有硬件,可使用 Amazon FreeRTOS Windows 模擬器

接下來,您可使用 Amazon FreeRTOS 控制檯,經過選擇與使用案例相關的庫來自定義下載操做系統。控制檯將引導您完成這一過程,以便您能夠當即開始開發。

您還能夠在 GitHubSourceForgeFreeRTOS.org 上找到 Amazon FreeRTOS。控制檯將包含全部庫和硬件特定的移植層,您能夠根據您的使用案例,在下載以後選擇性地包含或移除這些層。您也能夠經過任何這些渠道訪問獨立的 FreeRTOS 內核。對於低功耗藍牙 (BLE),您能夠從 Amazon FreeRTOS GitHub 存儲庫中下載源代碼以及從 GitHub 中下載 AndroidiOS 配套軟件開發工具包。

Amazon FreeRTOS 是開源的,所以您能夠隨意擴展、修改或刪除任何源代碼庫。

藉助這些簡單的入門指南得到實踐經驗。


git 下載

https://github.com/aws/amazon-freertos


開始使用 FreeRTOS Windows 仿真器

https://docs.aws.amazon.com/zh_cn/freertos/latest/userguide/getting_started_windows.html


winpcap下載

https://www.winpcap.org/install/default.htm


Visual Studio 2017下載

https://visualstudio.microsoft.com/zh-hans/downloads/?rr=https%3A%2F%2Fdocs.aws.amazon.com%2Fzh_cn%2Ffreertos%2Flatest%2Fuserguide%2Fgetting_started_windows.html


最終配置好網卡以後

0 0 [None] FreeRTOS_IPInit 1 0 [None] vTaskStartScheduler 1. rpcap://\Device\NPF_{AD01B877-A0C1-4F33-8256-EE1F4480B70D} (Network adapter 'Intel(R) Ethernet Connection (4) I219-LM' on local host) 2. rpcap://\Device\NPF_{337F7AF9-2520-4667-8EFF-2B575A98B580} (Network adapter 'Microsoft' on local host) The interface that will be opened is set by "configNETWORK_INTERFACE_TO_USE" which should be defined in FreeRTOSConfig.h Attempting to open interface number 1.

生成並運行 Amazon FreeRTOS 演示項目

將 Amazon FreeRTOS 演示加載到 Visual Studio 中

  1. 在 Visual Studio 中,從 File (文件) 菜單,選擇 Open (打開)。選擇 File/Solution (文件/解決方案),導航到 <BASE_FOLDER>\demos\pc\windows\visual_studio\aws_demos.sln,而後選擇 Open (打開)。
  2. 從 Build (生成) 菜單,選擇 Build Solution (生成解決方案),確保解決方案已生成且沒有錯誤或警告。

運行 Amazon FreeRTOS 演示

  1. 從新生成 Visual Studio 項目以接受在標頭文件中所作的更改。
  2. 登陸 AWS IoT 控制檯
  3. 在導航窗格中,選擇測試以打開 MQTT 客戶端。
  4. 在訂閱主題中,輸入 freertos/demos/echo,而後選擇訂閱主題。
  5. 從 Visual Studio 中的 Debug (調試) 菜單,選擇 Start Debugging (開始調試)。

AWS IoT 控制檯 中,MQTT 客戶端顯示從 FreeRTOS Windows 仿真器收到的消息。


3個demo

低功耗藍牙演示應用程序(測試版)

https://docs.aws.amazon.com/zh_cn/freertos/latest/userguide/ble-demo.html

安全套接字 Echo 客戶端演示

https://docs.aws.amazon.com/zh_cn/freertos/latest/userguide/secure-sockets-demo.html

設備影子演示應用程序

https://docs.aws.amazon.com/zh_cn/freertos/latest/userguide/shadow-demo.html

相關文章
相關標籤/搜索