999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

用Node-RED讓物聯網數據可視化

2019-06-25 01:50:46謝作如林淼焱
中國信息技術教育 2019年11期
關鍵詞:圖表可視化功能

謝作如 林淼焱

在本欄目上一期的文章中,我們利用SIoT軟件建立了物聯網(MQTT)服務器,結合開源硬件掌控板實時采集溫濕度的數據,然后對采集到的數據進行相關分析。但是,這些不斷變換的實時數據,在普通人眼里看起來可能枯燥無味,很難吸引學生的注意力。

要讓物聯網數據有趣一些,就自然要研究數據可視化技術。數據可視化的主要目的是通過圖形化手段進行生動形象的信息傳遞。數據可視化將數據設計成炫目華麗的畫面并不是僅僅為了追求“美”,而是為了有效地傳達信息。不同方式呈現的數據,往往會給用戶帶來完全不同的感知體驗。因而常常有人說,我們現在已經進入了一個“讀圖”的時代,用“圖”來呈現“數”,是很有價值的研究。

● 物聯網數據可視化的幾種方式

數據可視化與信息圖形、信息可視化、科學可視化和統計圖形有密切的關系。數據形象化呈現的方式多種多樣,工具也很多,用Excel畫出圖表就是其中最常見的一種。但物聯網數據是動態變化的,用Excel做的圖表則是靜態不變的,肯定不合適。為此,我們研究了多種方式來做物聯網數據的可視化。

1.利用物聯網平臺的自帶圖表功能

絕大多數的物聯網平臺都提供了簡單的圖表功能,能將服務器上的數據顯示在圖表中,可以根據時間查詢具體時段的數據,以折線圖的方式顯示在網頁上(如圖1)。SIoT軟件雖然功能很簡潔,也提供了類似的圖表來呈現動態數據,但是這種方法只能為用戶提供最基礎的功能,不能對數據進行個性化呈現。

2.用編程的方式繪制動態圖表

Python有一個專門用于圖像繪制的庫叫做Matplotlib,能夠完成常見的繪圖功能(如圖2)。結合MQTT庫,用Python代碼可以畫出實時變化的圖表。以繪畫為特色的編程語言Processing,也有團隊為其提供了相應的庫文件,二者結合可以畫出特別酷炫的可視化效果。但是,編程畫圖表的方式對沒有代碼基礎的初學者來說門檻較高。

3.利用Node-RED繪制個性化圖表

使用Node-RED軟件獲取MQTT服務器的數據,然后結合圖形化模塊Dashboard對數據進行可視化呈現(如圖3)。Node-RED具備簡單的圖形化編程和豐富的功能節點,不僅能夠完成數據可視化,還能夠實時對數據進行相應的處理。相對來說,Node-RED的門檻較低。

● Node-RED軟件簡介和安裝

Node-RED是IBM開發的一個開源項目,本來是為了滿足工程師快速連接硬件和設備到Web服務和其他軟件的需求。Node-RED因為編程簡單、流程清晰得到好評,并很快發展成為一種通用的物聯網編程工具。它與Scratch的編程思想相近,通過節點塊(Node)完成基礎代碼的編寫,而節點間數據的傳遞則通過連線來創建數據流(Flows)。

Node-RED提供了一系列支持服務器及物聯網的接口,能在傳感器、服務器、路由器等設備間建模大量應用程序功能,簡化了整體項目的開發。只需要簡單修改節點中的參數,就能夠讓學生搭建出一個小有規模的客戶端。

1.Node-RED的安裝

Node-RED是基于Node開發的,所以要先安裝Node環境,再通過命令安裝Node-RED。詳細的安裝過程可以參考一些網絡教程,或者“虛谷物聯”項目的官方文檔(地址:https://github.com/vvlink/SIoT)。

Node-RED安裝成功后,在CMD窗口中輸入node-red即可啟動服務器(如圖4)。在瀏覽器中輸入“http://127.0.0.1:1880/”,就能進入編程環境。

需要強調的是,在使用Node-RED的過程中不能關閉命令窗口。可以通過IP地址加端口號的形式,通過其他的計算機瀏覽器來訪問Node-RED,如“http:// 192.168.102.101:1880”。

2.用Node-RED連接MQTT服務器

Node-RED的主界面共有三個部分,從左到右分別為擁有各種功能的節點欄、放置各種編程節點的流程欄、用于提供節點幫助和調試信息的信息欄(如圖5)。

在Node-RED中簡單地輸出一串字符,需要用到左側的inject節點和debug節點,按住鼠標左鍵將節點拖至流程圖中,發現節點的名字發生了改變,這是由于節點被實例化,代表了某個具體的數值。我們可以通過修改節點的名稱屬性來改變其在流程圖中的名字,并不影響整個流程中的其他數據。

MQTT是物聯網應用的核心協議,EasyIoT、SIoT都是一個典型的MQTT服務器。在Node-RED中,我們只需要將MQTT輸入節點拖出,雙擊修改其中參數(如圖6),設置好IP地址、用戶名密碼和Topic等信息,就可以接收到從MQTT服務器傳來的數據了。

完成節點的拖動與信息的修改后,點擊右上方的“部署”,就可以在右側的調試窗口中看到信息了(如上頁圖7)。

● 利用Dashboard模塊呈現MQTT數據

在Node-RED中,有許多的第三方控件可以供我們使用。如果需要圖表功能,則要使用Dashboard控件。通過右上角設置菜單的“節點管理”,輸入Dashboard即可安裝。成功安裝后會看到左側的列表中出現了新的節點。

將已經設置好參數的MQTT輸入與折線圖控件連接起來,點擊右上角的部署,保存當前節點,在瀏覽器中輸入地址http://localhost:1880/u,或點擊圖中右上角框選部分(如上頁圖8),就能得到一張圖表(如圖9)。

想要完成圖表的個性化顯示也十分簡單,當我們想要顯示圖表中每個系列的對應名稱,或修改其線條顏色時,只需要設置節點中的Legend參數,以及選擇相應的色塊即可修改(如圖10)。

在整個程序中,儀表盤的布局主要取決于Tab和Group參數。每個Tab都是獨立的區域,可以供用戶自行切換。當我們要在頁面中添加多個圖表時,可以調整每張圖表的大小,其思路類似于Html語言中div的放置——提供一個大的方框(Tab),再根據其中方塊(group)的大小進行排列,最后在每個方塊中放置不同大小的圖表。

我們在學校創客空間外面,利用掌控板和SIoT搭建了一個溫濕度采集系統。通過上述的操作,很快就設計出一個數據可視化的頁面(如圖11)。用各種儀表盤顯示溫度和濕度,加上實時更新的折線圖,是不是比單一的數據要生動得多?

● Node-RED的拓展應用

當然,用Dashboard呈現物聯網數據,僅僅是Node-RED的眾多功能之一。作為物聯網的一種粘合劑,Node-RED能夠完成很多工作。例如,可以利用Node-RED監控物聯網數據的傳輸情況,當傳感器出現故障或者某個傳感器數據達到閾值后,發送郵件提醒用戶;可以使用簡單的代碼,按照既定的條件篩選比較數據,收集每日的溫濕度峰值等;也可以根據數據的閾值,實時給某個Topic發送信息,實現物聯網控制的功能。簡而言之,Node-RED是一款值得學習的物聯網工具,入門簡單而功能強大,期待和更多的老師一起研究。

猜你喜歡
圖表可視化功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運行動態分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
基于CGAL和OpenGL的海底地形三維可視化
“融評”:黨媒評論的可視化創新
傳媒評論(2019年4期)2019-07-13 05:49:14
關于非首都功能疏解的幾點思考
雙周圖表
足球周刊(2016年14期)2016-11-02 10:54:56
雙周圖表
足球周刊(2016年15期)2016-11-02 10:54:16
雙周圖表
足球周刊(2016年10期)2016-10-08 18:30:55
圖表
世界博覽(2016年16期)2016-09-27 18:25:26
主站蜘蛛池模板: 亚洲综合第一区| 国产欧美日韩va另类在线播放| 亚洲天堂777| 91午夜福利在线观看| 国产在线精品99一区不卡| 久久夜夜视频| 54pao国产成人免费视频| 国产精品女人呻吟在线观看| 麻豆精选在线| 国产午夜一级毛片| 狠狠色丁婷婷综合久久| 亚洲欧美一区二区三区蜜芽| 国产麻豆福利av在线播放| 亚洲国产无码有码| 亚洲成人黄色在线| 91系列在线观看| 国产在线高清一级毛片| 午夜久久影院| 亚洲色图综合在线| 精品夜恋影院亚洲欧洲| 视频二区欧美| 国产成人无码综合亚洲日韩不卡| 日本精品一在线观看视频| www.99在线观看| 91成人在线观看| 亚洲第七页| 免费国产福利| 久久国产高清视频| 熟女成人国产精品视频| 澳门av无码| 欧洲熟妇精品视频| 日韩黄色在线| 国产一级毛片网站| 免费播放毛片| 米奇精品一区二区三区| 久久久精品无码一二三区| 亚洲色无码专线精品观看| 91青青视频| 无码免费视频| 欧美成人免费一区在线播放| 日本草草视频在线观看| 无遮挡国产高潮视频免费观看| 精品人妻无码区在线视频| 欧美黄网站免费观看| 亚洲综合精品第一页| 亚洲欧美日韩天堂| 亚洲欧美不卡视频| 激情午夜婷婷| 亚洲天堂网在线观看视频| 国产无人区一区二区三区| 91成人试看福利体验区| 亚洲美女一区| 欧美日韩一区二区在线播放| 人妻丰满熟妇αv无码| 久久a毛片| 成AV人片一区二区三区久久| 中文字幕 91| 蝴蝶伊人久久中文娱乐网| 99热国产在线精品99| 亚洲午夜福利在线| 久久这里只精品热免费99| 亚洲精品第一页不卡| 国产综合欧美| 黄色一级视频欧美| 99热免费在线| 永久免费无码日韩视频| 免费人成视频在线观看网站| 欧美精品H在线播放| 亚洲精品另类| 国产成人调教在线视频| 欧洲高清无码在线| 专干老肥熟女视频网站| 在线精品亚洲国产| 欧美在线视频不卡第一页| 国产亚洲精品91| 国产aⅴ无码专区亚洲av综合网| 毛片a级毛片免费观看免下载| a亚洲天堂| 99视频精品在线观看| 成人福利在线视频免费观看| 在线高清亚洲精品二区| 人人爽人人爽人人片|