【教學】邁向AI之前哨站:收集LinkIt 7697數據至Google 表單

源起是因為依照某次而且隔天就要辦研習營的老師許願池,老師的需求是否可以將LinkIt7697感測器的數據上傳至Google表單。後來同事就傳給我花蓮曾希哲老師做成功的影片,解法是,利用IFTTT的平台來解,這樣就可以跳過惱人的Google sheet API,因為有一堆步驟要申請權杖和金鑰,而且API還會更新…,重點是IFTTT設定還不用寫程式!

所以IFTTT太強大了,真是感謝IFTTT,讚嘆IFTTT!

作者/攝影   許鈺莨
時間   一小時內
難度

★★☆☆☆

材料表

IFTTT是甚麼呢?這是一種「網路自動連結」服務,如字面上意思,「如果(IF)  下雨(This) 則(Then)  通知我回家收衣服(That)」,簡單來說 “如果下雨這件事發生,就會收到通知要回去收衣服”的一種網路服務。在這個服務裡可以有上百個平台的可以串接,我最常用的是當有影片YOUTUBER上傳最新的影片時,我的Line就會接收到通知。

嗯,我喜歡看『木曜X超玩』,我剛好用這舉例,沒業配喔!

我將Youtube和Line串在一起,這作法稱為「菜單」或稱「配方(Recipe)」,有了上百種服務,你就可以自訂自己的配方喔。

回歸本專題,如果某個條件觸發後,感測器數值由LinkIt7697接上溫濕度模組上傳至IFTTT,中間就需要靠Webhook來做連接 。

現在就開始手把手教學,分為幾個步驟:

  • Step1. IFTTT 網站註冊
  • Step2. 申請Webhook
  • Step3. 和Google 表單連動
  • Step4. Webhook和Google 表單連動測試
  • Step5. 撰寫LinkIt 7697 程式
  • Step6. LinkIt 7697和溫溼度感測器接線

 

Step1. 到IFTTT註冊:

請到網址: https://ifttt.com/ 註冊,可以自行設定Email作為帳號,亦可以用Google或FB申請登入。

Step2. 申請Webhook:

如已經註冊完畢,則按頭像後再按「Create」。

選「This」服務。

寫入「Webhook」,則有Webhook的選項出現。

點選觸發方式,也只有一個選項可以選

接著要自己定義事件名稱,可以任意填寫,但是要記住,因為後面的步驟會用到此名稱,最後點選「Create triggrer」。

Step3. 和Google 表單連動:

如果Webhook設定好,會有圖示出現。接著點選「That」。

在搜尋欄寫入「googlesheet」,並點選其圖示。

再來會出現「Add row to spreadsheet」的選項,並點選。

接下來要填入Google 表單的一些參數。

第一欄位為google 表單的標題名稱,可以任意填寫,也可以和Event Name不同。第二欄位為上傳至Google 表單的數值欄位,LinkIt 7697會透過此欄位來更新數值,分別為時間戳記,也就是上傳數值至Google 表單的時間、事件名稱、數值1、數值2、數值3。

這欄位我是預設,不更動,最後點選「Create action」。

按下「Finish」,即兩個平台服務串接設定成功,再來做連動測試。

Step4. Webhook和Google 表單連動測試:

這個是接LinkIt 7697之前的測試,作法是開啟Webhook的網站上輸入Event Name和任意數值,測試成功時會在雲端裡自動建立名為IFTTT的資料夾,而該資料夾內有7697_to_googlesheet表單,所以要先開啟Webhook資訊網站(紅框處)。

開啟後,會看見有使用過Webhook的所有服務,再來在左上角有「Documentation」後按下。

接下來最重要的一點,就是測試!  依照下圖指示,第1點就是Webhook的金鑰,第2點填入Event Name,跟之前建立Webhook的trigger 名稱一致,之後程式內也會用到,第3點可任意寫入,如英文或數字,最後第4點按下測試。

按下測試後,會在「我的雲端硬碟」中看見「IFTTT」的資料夾,資料夾中會新增「7697_to_googlesheet」名稱的表單,就表示測試已經連動成功,最後一步就是寫LinkIt 7697的IFTTT程式。

Step 5. 撰寫LinkIt 7697 程式:

這邊的程式撰寫很簡單,為了保證程式觸發,所以寫只要溫度大於0,並每2秒上傳一次到IFTTT就好。

Step 6. LinkIt 7697和溫溼度感測器接線:

將溫溼度感測器DHT11接至擴充版D2腳位,接線圖出處: https://cavedu.gitbook.io/cavedu/rk001/module_ui/linkit7697_dht11

如果成功,會像下圖一樣。A欄位為時間戳記,B欄位為Event Name,這兩個欄位都是寫在Webhook網頁的預設值,C、D、E欄位為LinIt 7697 WIFI的IP位址和感測器數值。

 

相關文章:

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *