帳號:
密碼:
最新動態
 
產業快訊
CTIMES / 文章 /
Arduino推出支援Elastic的函式庫
 

【作者: 陸向陽】   2023年10月29日 星期日

瀏覽人次:【2045】

對創客而言可能不太清楚何謂Elastic,Elastic NV是一間在荷蘭、美國都有總部的軟體公司,該公司的軟體主要是搜尋引擎Elasticsearch,類似Google的搜尋引擎,但可以讓用戶自行下載安裝該搜尋引擎,用來實現自己的搜尋應用,許多網站都有使用,例如eBay、Netflix、維基百科等,而其軟體是採開放原始碼的方式發展。


除了Elasticsearch外Elastic公司也延伸發展出許多與自家搜尋相互搭配的軟體,如Kibana資料視覺化儀表板、Logstash多來源資料攫取與轉換等,三者合稱ELK Stack,然嚴格而論ELK Stack一詞後續也包含三套之外的更多軟體,如Beats等。



圖1 : Elastic Cloud的視覺化呈現介面(圖片來源:Arduino)
圖1 : Elastic Cloud的視覺化呈現介面(圖片來源:Arduino)

另外用戶可能因為技術或人力的不足,無法自行下載、整合、維護Elasticsearch搜尋引擎,該公司也提供付費使用的SaaS版服務,即Elastic Cloud,Elastic Cloud不僅提供搜尋功能也提供ELK Stack功能,即Kibana、Logstack等也包含在內。


讓Portenta H7與Elastic連線

正因為很多人愛用Elastic軟體或雲端服務,故Arduino、Elastic兩業者技術合作,開發出讓Arduino可以連線Elastic軟體/雲端服務的函式庫(library),稱為Elasticsearch Arduino Client,該函式庫以C++程式語言撰寫成。


也就是說,創客(或稱為開發者)可以在撰寫Portenta H7系統板的控制程式時,選擇呼用(呼叫使用)該函式庫,如此Portenta H7系統板在正式安裝運作後,後端就可以跟Elastic軟體/雲端服務互動,而不再只是跟Arduino Cloud雲端服務互動。


使用Elasticsearch自架伺服器或Elastic Cloud雲端服務的好處是,它的功能豐富度高於Arduino Cloud,單純收容資訊、檢視資訊Arduino Cloud當然沒問題,但更多好的分析功能、呈現功能,依然是Elastic的比較好。簡單說,想要更專業的應用得用Elastic,而基本學習、概念驗證或簡單應用則可用Arduino Cloud。


Portenta H7系統板是屬於Arduino Pro(產業取向的Arduino)的一員,並經常用於實現物聯網中的感測器節點(sensor node)裝置,很明顯是專業應用、實務應用,但其實其他的Arduino系統板也適用,例如MKR WiFi 1010、Nano RP2040等。


實例與相關語法

以物聯網領域中最典型的「上傳溫度數據」應用為例子,簡單說明一下如何建立Elasticsearch互動的設定,首先到Elastic Cloud申請一個登入帳號(不用信用卡號碼),然後建立一個執行個體(instance),取得上傳的URL跟API金鑰,進一步的操作設定可見此。


接著建立上傳所需要的資訊欄位,在此例中包含溫度、日期時間、裝置的地理位置(經緯度)、裝置本身的ID等,HTTP內的語法如下:



圖2
圖2

若要直接使用伺服器端的時間戳來記錄日期時間,即感測器一上傳資訊,伺服器自動填入上傳的日期時間,則語法如下:



圖3
圖3

至於溫度資訊如何上傳,語法如下:



圖4
圖4

在這裡頭,21.45是攝氏21.45度的意思,H7-001是我們的感測器電路板為Portenta H7的第一片,地理位置則是經緯度,格式為浮點數。


除了不斷上傳外,其餘也可以向伺服器端索求資訊,例如某個前端裝置希望知道方圓100公里內所有感測器節點上傳的溫度的平均值,則可用以下語法:



圖5
圖5

圖6 : 感測器節點上傳溫度外,也向伺服器取得方圓百里內的平均溫度值(圖片來源:Arduino)
圖6 : 感測器節點上傳溫度外,也向伺服器取得方圓百里內的平均溫度值(圖片來源:Arduino)

取得方圓100公里內的平均溫度後,可以做為設備調整內部參數的一些參考,而到了真正要撰寫Arduino控制程式時,記得要把函式庫含包括進來才行:


#include “ESClient.h”


#include “elasticsearch_config.h”


另外資料上傳下傳也會用及JSON格式,所以也要含括ArduinoJson.h等。


小結

歸結而言,雖然上傳到Elastic Cloud會比上傳到Arduino Cloud上複雜,但想到Elastic Cloud有更多專業的分析與呈現功能,或許也是值得的。


(本文由VMAKER授權轉載;連結原文網址


相關文章
Raspberry Pi Pico 2主控晶片資安懸賞加時加碼
Arduino Cloud:運用圖像小工具 使 IoT專案更吸睛
Arduino 攝影串流:DIY 簡易操作步驟
2GB、50美元!第五代樹莓派降規降價
不只有人工智慧!導入AR與VR,重塑創客的自造方式
comments powered by Disqus
相關討論
  相關新聞
» 貿澤電子最新電子書探究馬達控制設計的不同挑戰
» 芯動與ROHM簽署車載功率模組戰略合作 推動xEV技術創新
» 台歐共建全球最大6G實驗網 促30家台廠交流享商機
» 蘇姿丰:AMD將在AI的下一階段演進扮演關鍵角色
» 格斯科技與東芝合作打造次世代鈮鈦氧化物鋰離子電池芯


刊登廣告 新聞信箱 讀者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 遠播資訊股份有限公司版權所有 Powered by O3  v3.20.2048.3.236.112.101
地址:台北數位產業園區(digiBlock Taipei) 103台北市大同區承德路三段287-2號A棟204室
電話 (02)2585-5526 #0 轉接至總機 /  E-Mail: webmaster@ctimes.com.tw