国产成人综合亚洲,欧美成人亚洲国产精品,二区在线视频,国产成人在线综合

使用快速啟動(dòng)平臺加速傳感器到云端的連接

發(fā)布時(shí)間:2017-06-10      點(diǎn)擊:

傳感器是物聯(lián)網(wǎng) (IoT) 的眼睛和耳朵,提供分析和大數據應用需要的信息,幫助用戶(hù)做出明智的決策。 盡管有許多方法可以連接多個(gè)無(wú)線(xiàn)傳感器來(lái)執行該分析,但連接到云端仍然具有挑戰性。 在空間、功率和成本以及配置和管理所有傳感器的同時(shí)又要確保強大的安全性方面尤其如此。

為了縮短開(kāi)發(fā)周期,有些開(kāi)發(fā)套件兼具傳感器節點(diǎn)開(kāi)發(fā)和云連接功能。 開(kāi)發(fā)人員無(wú)需就如何將云服務(wù)集成到最終用戶(hù)體驗中做出架構決策(包括系統將執行的操作以及哪些操作會(huì )觸發(fā)設備的特定功能),即可使用這些“開(kāi)箱即用”套件相對較快地啟動(dòng)并運行具有傳感器功能的設計。

本文將介紹 STMicroelectronics 的 STM32 Nucleo 開(kāi)發(fā)板和 X-NUCLEO 擴展板,它們集成了實(shí)現所選應用專(zhuān)門(mén)功能所需的組件。閃存 Nucleo 傳感器節點(diǎn) 文中還將說(shuō)明如何使用 FP-CLD-BLUEMIX1 擴展軟件包,通過(guò)幾個(gè)簡(jiǎn)單的步驟來(lái)發(fā)出 Nucleo 傳感器節點(diǎn)信號并將 Nucleo 電路板連接到 IBM Watson IoT 云平臺。1

Nucleo 平臺和軟件

STM32 Nucleo 開(kāi)發(fā)板為工程師提供了一種靈活的方式來(lái)嘗試新的概念,并使用 STMicroelectronics STM32 微控制器構建原型。 這種開(kāi)發(fā)板具有在所有 Nucleo 電路板上通用的擴展針座,因此很容易添加擴展模塊。

Nucleo 開(kāi)發(fā)板集成了 ST-LINK / V2-1 調試器/編程器,因此支持 Arduino 作為其開(kāi)放生態(tài)系統方法的一部分,并且不需要單獨的探頭。 開(kāi)發(fā)板隨附 STM32 軟件庫以及各種封裝軟件示例。

包括 Arduino 在內,有多種不同的盾板可以使用。 使用 STMicroelectronics 的 Morpho 針座的開(kāi)發(fā)板可用于所有應用類(lèi)型的盾板擴展,包括射頻、工業(yè)和家庭自動(dòng)化盾板應用。 此外,還提供藍牙 LE、Wi-Fi 和視聽(tīng)應用的盾板。

庫支持涵蓋用于 STM32 的標準庫,以及對 ARM? 免費在線(xiàn) mbed 的支持。ARM? mbed 是一個(gè) IoT 設備平臺,提供操作系統、工具和開(kāi)發(fā)人員生態(tài)系統,使設計人員能夠評估并開(kāi)始使用 Nucleo 開(kāi)發(fā)板。

為了幫助形成從傳感器到云端的連接,STMicroelectronics 還提供了 FP-CLD-BLUEMIX1,這是一種可在 STM32 微控制器上運行、用于 STM32Cube 的 IoT 節點(diǎn)擴展軟件包,可從 STMicroelectronics 的網(wǎng)站獲取。2 STM32Cube 的主要目標是使開(kāi)發(fā)應用的過(guò)程變得更容易。 為此,該擴展軟件包包含了 STM32CubeMX 和 STM32Cube 嵌入式軟件庫(圖 1)。

 

使用快速啟動(dòng)平臺加速傳感器到云端的連接

 

圖 1: FP-CLD-BLUEMIX1 提供了完整的中間件來(lái)構建基于 Wi-Fi 連接的應用,并將STM32 Nucleo 開(kāi)發(fā)板鏈接到基于云的服務(wù)。 (圖片來(lái)源: STMicroelectronics)

STM32CubeMX 從圖形用戶(hù)界面生成 STM32 MCU 的初始化 C 代碼。 STM32MX 還生成 IDE 就緒型項目,提供功耗計算器,并允許直接從 st.com 導入 STM32Cube 嵌入式軟件庫。

每個(gè) STM32 產(chǎn)品系列都有一個(gè) STM32Cube 嵌入式軟件包。 該嵌入式軟件庫包括用于 STM32 外圍設備的硬件抽象層 (HAL) 和低層 (LL) 應用編程接口 (API),以及基于 STMicroelectronics 開(kāi)發(fā)或開(kāi)源組件的一組中間件(RTOS、USB、TCP/IP、圖形等)。 初始化代碼、中間件元器件、HAL 和 LL API 與所有 STM32 編譯器兼容。

就其本身而言,FP-CLD-BLUEMIX1 軟件包通過(guò)為 Wi-Fi、NFC 和傳感器擴展板提供板級支持包 (BSP) 來(lái)擴展 STM32Cube。 其作用是實(shí)現與 IBM Bluemix 云的連接來(lái)傳輸傳感器數據并從云應用接收命令。 該軟件包本質(zhì)上有助于快速啟動(dòng)端到端 IoT 開(kāi)發(fā),以便您可以專(zhuān)注差異化設計。

連接傳感器

提供了一個(gè)軟件界面,用于訪(fǎng)問(wèn) Nucleo 開(kāi)發(fā)板的溫度和濕度傳感器 (HTS221)、壓力傳感器 (LPS25HB)、運動(dòng)傳感器(LIS3MDL 和 LSM6DS0)以及寫(xiě)入和讀取 RFID / NFC 標簽。 X-NUCLEO-IKS01A1 包含所有這些傳感器(圖 2)。

 

使用快速啟動(dòng)平臺加速傳感器到云端的連接

 

圖 2: X-NUCLEO-IKS01A1 是一種運動(dòng) MEMS 和環(huán)境傳感器評估板系統。 (圖片來(lái)源: STMicroelectronics)

IKS01A1 與 Arduino UNO R3 連接器布局兼容,圍繞 STMicroelectronics 的 LSM6DS0 3 軸加速計 + 3 軸陀螺儀、LIS3MDL 3 軸磁力儀、HTS221 濕度和溫度傳感器以及 LPS25HB 壓力傳感器設計而成。

IKS01A1 還包括實(shí)現 MQ 遙測傳輸 (MQTT) 協(xié)議的中間件包,以促進(jìn) STM32 Nucleo 開(kāi)發(fā)板與 IBM Bluemix Cloud 服務(wù)之間的交互。 該軟件包括用于查看傳感器數據以及通過(guò) IBM Bluemix 控制設備的示例。

除了中間件堆棧,還提供了一個(gè)用于測試與 IBM Watson IoT 平臺連接的示例應用。 它用于建立端到端 IoT 應用的原型。 在 IBM Bluemix 云服務(wù)中注冊 STM32 Nucleo 微系統后,該微系統即可用于傳輸實(shí)時(shí)傳感器數據。 使用 NFC 動(dòng)態(tài)標簽時(shí),用戶(hù)還可以自動(dòng)打開(kāi) IBM 提供的試用網(wǎng)頁(yè),并將 STM32 Nucleo 開(kāi)發(fā)板上所有傳感器生成的數據可視化。

為了將 STM32 Nucleo 微系統與 IBM Bluemix 云進(jìn)行連接,STMicroelectronics 移植了 MQTT 應用級網(wǎng)絡(luò )協(xié)議的開(kāi)源實(shí)現。 MQTT 是一種機器到機器 (M2M) IoT 連接協(xié)議,用于通過(guò)少量的代碼連接遠程設備,特別是在網(wǎng)絡(luò )帶寬有限的情況下。 消息傳遞協(xié)議是輕型的,因此節省了電力,這使其特別適合用于嵌入式系統中的傳感器數據遙測和實(shí)現。 在 FP-CLD-BLUEMIX1 中,MQTT 作為中間件庫集成到 STM32 軟件包中。

功能包中提供了將 X-NUCLEO-IKS01A1、X-NUCLEO-IDW01M1 和 XNUCLEO-NFC01A1 擴展板與 NUCLEO-F401RE 板一起使用的示例應用。 此應用從溫度、濕度、壓力、加速計、磁力儀和陀螺儀傳感器讀取數據值,并通過(guò) Wi-Fi 將其傳輸到 IBM Bluemix。

此應用默認配置為僅針對數據可視化目的在快速啟動(dòng)模式下運行。 但很容易修改為在 IBM Bluemix 中注冊和控制設備(需要 IBM Bluemix 帳戶(hù))。

注冊 IBM Bluemix 帳戶(hù)

在 IBM Bluemix 云服務(wù)中注冊 STM32 Nucleo 微系統后,該微系統即可用于建立端到端 IoT 應用的原型,并開(kāi)始傳輸實(shí)時(shí)傳感器數據。

登錄或創(chuàng )建 Bluemix 帳戶(hù)(請參見(jiàn)“參考資料 1”中的完整說(shuō)明)即可開(kāi)始。 注冊時(shí)必須提供幾個(gè)屬性和參數,如下所示:

OrganizaTIon ID (i.e., “1w8a05”)。

Device type (i.e.: “stm32_nucleo”)。

UM2007 FP-CLD-BLUEMIX1 software descripTIon

DocID028875 Rev 2 13/23

AuthenTIcaTIon Method (only “use-token-auth” supported)。

Authentication token (i.e., “uUURNRbeQQaX+Fvi&8”)。

將設備屬性復制到位于源代碼文件 IBM_Bluemix_Config.c 中的 Config_MQTT_IBM 函數中。 該文件位于 FP-CLD-BLUEMIX1 軟件包的 Projects/Multi/Applications/MQTT_IBM/Src 文件夾中。

然后,ibm_mode 變量需要設置為 “REGISTERED”,如下所示(代碼列表):

Void Config_MQTT_IBM (MQTT_vars * mqtt_ibm_setup , uint8_t *macadd):

/* Default Configuration for QUICKSTART. REGISTERED mode requires account on Bluemix */

mqtt_ibm_setup-》ibm_mode = REGISTERED

然后,需要將 IBM Bluemix 中提供的設備屬性復制到名為 IBM_Bluemix_Config.c 的源代碼文件中的 Config_MQTT_IBM 函數中。 該文件位于 Projects/Multi/Applications/MQTT_IBM/Src 文件夾中。

程序執行中途將顯示:

/* REGISTERED DEVICE */

/* Need to be customized */

完成后第四到第八行將顯示如下:

strcpy ((char*)mqtt_ibm_setup-》username,”use-token-auth); //customize

strcpy ((char*)mqtt_ibm_setup-》password,” uUURNRbeQQax+Fvit&8”);

strcpy ((char*)mqtt_ibm_setup-》hostname,”1w8a05.messaging.internetofthings.ibmcloud.com);

strcpy ((char*)mqtt_ibm_setup-》device_type, “stm32_nucleo”);

strcpy ((char*)mqtt_ibm_setup-》org_id, “1w8a05”);

代碼列表:IBM 設備注冊和屬性插入要求。 完成注冊后,STM32 Nucleo 微系統將能夠向 IBM Watson IoT 應用發(fā)送信息并從其接收信息。 (來(lái)源:STMicroelectronics)

FP-CLD-BLUEMIX1 軟件包示例應用包含默認配置,以根據設備的 MAC 地址在 IBM Quickstart 網(wǎng)頁(yè)3 上查看傳感器數據。 URL 頁(yè)面也被寫(xiě)入 NFC 標簽中。 一旦 STM32Nucleo 開(kāi)發(fā)板連接到 Wi-Fi 接入點(diǎn),就會(huì )自動(dòng)與 IBM Bluemix 交互并開(kāi)始傳輸傳感器數據。 Wi-Fi 擴展板的 MAC 地址和 IBM Quickstart URL 打印在串行終端接口中。

要查看實(shí)時(shí)傳感器數據,可以將 Quickstart URL 復制并粘貼到 Web 瀏覽器中。 使用支持 NFC 的移動(dòng)設備時(shí),將設備靠近 NFC 標簽可以更容易打開(kāi)網(wǎng)頁(yè)。 為了實(shí)現連接狀態(tài)視覺(jué)指示,一旦 Nucleo 連接到 IBM Bluemix,STM32 Nucleo 開(kāi)發(fā)板上的綠色 LED2 將變?yōu)?“ON”。 每次傳輸傳感器數據樣本時(shí),就會(huì )閃爍。

FP-CLD-BLUEMIX1 包本身帶有一個(gè) STM32 層, 其中包括一組簡(jiǎn)單的與上層應用、庫和堆棧交互的通用多實(shí)例 API。 這些通用和擴展 API 基于一個(gè)通用框架。 這讓它們構建的任意層(例如中間件層)可以實(shí)現其功能,而無(wú)需具備既定 MCU 的特定硬件信息。 此結構提高了庫代碼的可重用性,并確??奢p松移植于其他設備。

軟件包的“Documentation”文件夾中的編譯 HTML 文件中為用戶(hù)提供了完整描述 API 函數和參數的詳細技術(shù)信息。

IBM 樣本使用的主要 API 有:

· ·void Config_MQTT_IBM(MQTT_vars * mqtt_ibm_setup , uint8_t * macadd);配置用于 IBM 云連接的 MQTT 參數,指定 Wi-Fi 擴展板的 MAC 地址。

· int spwf_socket_create(Network* net, uint8_t * hostname, uint32_t port_number,uint8_t * protocol);打開(kāi)套接字,指定主機名、端口號和協(xié)議類(lèi)型(TCP 或 TLS)。 返回成功或失敗結果以及網(wǎng)絡(luò )結構中的套接字 ID。

· ·void MQTTClient(Client* c, Network* network, unsigned intcommand_timeout_ms, unsigned char* buf, size_tbuf_size, unsigned char* readbuf, size_treadbuf_size);配置客戶(hù)端結構,指定輸入參數。

· int MQTTConnect(Client* c, MQTTPacket_connectData* options);連接 IBM MQTT 代理,指定客戶(hù)端和 MQTTPacket_connect 數據結構中的參數。 返回成功或失敗結果。

· int MQTTSubscribe(Client* c, const char* topicFilter, enumQoSqos, messageHandlermessageHandler);訂閱數據結構客戶(hù)端中定義的 MQTT 主題。 返回成功或失敗結果。

總結

對分析數據不斷增長(cháng)的需求以及簡(jiǎn)化組織獲得數據訪(fǎng)問(wèn)權限的需要,凸顯了無(wú)線(xiàn)傳感器及其相關(guān) MCU 必須連接到云的重要意義。

本文探討了一個(gè)具體實(shí)現選項,以及最近發(fā)布的硬件開(kāi)發(fā)套件和相關(guān)軟件如何使傳感器與云端的連接變得容易。 用戶(hù)不僅可以借此監控對象的當前狀態(tài)和特定參數,還可以使用云服務(wù)來(lái)進(jìn)行預測性分析。

上一篇:臺積電自曝3nm工藝:首選臺灣 其次美國
下一篇:聯(lián)手百度進(jìn)軍車(chē)聯(lián)網(wǎng) 現代汽車(chē)在CES ASIA搞出大動(dòng)
友情鏈接
地址:湖北省黃石市經(jīng)濟技術(shù)開(kāi)發(fā)區汪仁鎮鵬程大道東98號
馬先生:18665832855 / 18938939330
Email:sales@hsestar.com
鄂ICP備17013134號-1 網(wǎng)站建設:黃石網(wǎng)站建設-博強科技