標籤:

MATLAB和物聯網連載2: Thingspeak Tutorial 1

All comments and opinions expressed on Zhihu are mine alone and do not necessarily reflect those of my employers, past or present.

本文內容所有內容僅代表本人觀點,和Mathworks無關

什麼是Thingspeak ?

Thingspeak是Mathworks在物聯網(Internet of Things)大潮下的一個產品線,它是物聯網的數據收集和數據分析的雲平台。大多數使用Thingspeak的用戶都是Maker,也叫做創客,他們有工程和硬體方面的經驗,開發和使用可聯網的硬體收集數據,並把數據傳向雲端,Thingspeak扮演的角色是物聯網的後端,即 免費 存儲硬體所收集的數據,以及提供 免費的在線使用MATLAB 分析這些數據的功能。

Thingspeak能為我們做什麼 ?

收集可聯網的硬體發出的數據並且分析這些數據,這個功能聽起來很抽象。我們舉幾個簡單的例子: 比如你可以用Particle Photon + 溫度,濕度,風向探測儀來構造屬於自己的天氣觀測站; 使用NodeMCU + 土壤濕度檢測儀來監視你的植物盆中土壤的含水量;使用ArduinoYun + 聲納檢測器打造家庭防盜安全系統等等。 (註:Particle Photon,NodeMCU和ArduinoYun均可以在淘寶上購買到,樹莓派皆可以代替上述的Microcontroller)。

另一方面的例子:由於Thingspeak提供了 免費的在線MATLAB ,所以這個雲平台可以幫助你定時的執行一些MATLAB的」小程序」,所謂的小程序: 它們大多功能簡單,涉及一些網路相關的工作:比如網路爬蟲;比如使用Thingspeak來記錄知乎上MATLAB專欄的訂閱者的隨時間的增長.

MATLAB的Thingspeak工具箱可以讓把這些小程序的執行結果保存在Thingspeak的頻道當中。這些程序功能看上去簡單,但是都是有雲端的服務自動幫你執行,你甚至不需要在本地安裝MATLAB。從這個角度來看,Thingspeak把MATLAB從一個語言,轉成了一種服務。

如何直接用Browser向Thingspeak推送數據

在Mathwork的官方網站上有Thingspeak的幫助文檔, MATLAB和物聯網連載中的 第一篇 也提供了詳盡的介紹。

這裡我們先用最簡單的瀏覽器的地址欄來測試Thingspeak的功能,步驟如下:

先使用瀏覽器的地址欄來驗證一下Thingspeak的數據收集功能,比如在地址欄中輸入(把如下的YourAPIKey換成實際的API KEY):

https://api.thingspeak.com/update.json?api_key=YourAPIKey&field1=73

因為api_key和剛剛創建的Channel有一一對應的關係,該HTTP Request把數據73推送到了由api_key對應的Channel的field1中,發送成功之後,瀏覽器中返回一個JSON String.

{"channel_id":102467,"field1":"73","field2":null,"field3":null,"field4":null,"field5":null,"field6":null,"field7":null,"field8":null,"created_at":"2016-03-23T18:47:12Z","entry_id":1,"status":null,"latitude":null,"longitude":null,"elevation":null}

再試一次,這下把field1的值改成74

https://api.thingspeak.com/update.json?api_key=YourAPIKey&field1=74

所以目前為止,Thingspeak的該channel中就應該有兩個數據點了。回到public view tab中,可以看到確實如此,並且Thingspeak已經自動把兩個數據點畫了出來.

在這個簡單的例子中,我們使用瀏覽器完成了向頻道中推送數據的工作,實際工作流程中,這對應的是利用Thingspeak在雲端存儲計算的結果。

推薦閱讀:

Matlab如何製作屬於自己的縮寫詞典
MATLAB 的符號計算原理是什麼,為什麼不能編譯為 C?
APPs(005)旋轉,跳躍,我要擬合線
MATLAB圖像處理:把照片變成動漫風格
為什麼很多計算機專業碩士生論文編程都是用MATLAB做的,僅僅是科學計算方面的優勢嗎?

TAG:MATLAB | 物联网 |