[ MediaTek ] LinkIt Smart 7688 傳送感測資訊到 Google Spreadsheet 教學

與 IoT 相關的雲端服務為數眾多,例如:ThingSpeakWoT.CityAWSIBM BluemixMediaTek MCS 等,並在透過這些雲端服務可在對資料進行資料視覺化、資料分析與其它的應用,本文描述如何使用 Google Spreadsheet 接收 LinkIt Smart 7688 的感測資訊。


學習目標

  • Google Developers Console 設定
  • LinkIt Smart 7688 讀取感測資訊
  • 傳送感測資訊至 Google Spreadsheet

情境


執行步驟


前置準備作業

  1. 一台可上網的電腦

  2. LinkIt Smart 7688 Duo

  3. Arduino Breakout for LinkIt Smart 7688 Duo

  4. Grove - Temperature&Humidity Sensor

  5. Micro-USB Cable

  6. 將 LinkIt Smart 7688 與 Arduino Breakout for LinkIt Smart 7688 Duo 組裝、Grove - Temperature&Humidity Sensor 裝到 A0 的位置並將 Micro-USB Cable 連接至電腦與 LinkIt Smart 7688

  7. 電腦端相關設定 - 請參考 LinkIt Smart 7688 / 7688 Duo 基礎教學 文章

  8. Google 帳號


連接圖

感謝 【 Anker Taiwan 】 提供拉不斷的 Micro USB Cable


Google Developers Console 端

Step 1. 到 Google Developers Console 頁面

❖ 1.1  開啟瀏覽器並輸入下方網址
       https://console.developers.google.com/


Step 2. 建立專案

❖ 2.1  點選畫面左上角的【 請選取專案 】


❖ 2.2  點選畫面右上角的【 + 】


❖ 2.3  ① 輸入專案名稱,e.g., LinkIt Smart 7688
       ② 再點選【 建立 】


❖ 2.4  ① 點選右上角的【 鈴鐺 】的圖示
       ② 剛剛的專案已建立完成


❖ 2.5  ① 點選畫面左上角的【 請選取專案 】


❖ 2.6  ① 選取剛剛所建立的專案


❖ 2.7  ① 原本畫面左上角的【 請選取專案 】已變成剛剛所選取的專案名稱


❖ 2.8  ① 在【 搜尋所有 API 】的欄位中輸入【 google drive 】
       ② 再點選下方【 Google Drive API 】


❖ 2.9  ① 點選上方的【 啟用 】按鈕


❖ 2.10  ① 點選右邊的【 建立憑證 】按鈕


❖ 2.11  ① 在【 API 的呼叫來源為何? 】選擇【 網路伺服器 (例如 node.js、Tomcat) 】
        ② 在【 您需要存取什麼資料? 】選擇【 應用程式資料 】
        ③【 您要使用 Google App Engine 還是 Google Compute Engine? 】選擇【 否,我並未使用任何一項服務 】
        ④ 點選【 我需要那些憑證 ? 】按鈕


❖ 2.12  ① 在【 服務帳戶名稱 】欄位輸入名稱,e.g., 輸入自已的英文名稱
        ② 在【 角色 】欄位選擇【 Project 】➙【 編輯者 】
        ③ 在【 金鑰類型 】欄位選擇【 JSON 】
        ④ 點選【 繼續 】,隨後會下載憑證檔


Step 3. 設定 Google Spreadsheet

❖ 3.1  透過瀏覽器開啟 【 雲端硬碟 】


❖ 3.2  點選左上角 【 新增 】按鈕 ➙【 新增資料夾 】再輸入資料名稱,e.g., 感測資訊


❖ 3.3  ① 點選左上角 【 新增 】按鈕 ➙【 Google 試算表 】
       ② 點選右邊 【 共享 】按鈕


❖ 3.4  ① 在【 無標題的試算表 】欄位輸入名稱,e.g., sensingData
       ② 點選【 儲存 】按鈕


❖ 3.5  ① 在【 使用者 】欄位輸入剛剛下載的憑證中 【 client_email 】欄位後面的資訊
       ② 點選【 可以編輯 】按鈕
       ③ 再點選【 傳送 】按鈕

㊟ 憑證中【 client_email 】欄位後面的資訊如下所示


❖ 3.6  ① 在 A1 的欄位輸入【 Temperature 】
       ② 在 B1 的欄位輸入【 Humidity 】


❖ 3.7  ① 刪除多餘的列,從第 2 到第 1000 列
       ② 將頁籤的名字從【 工作表1 】更名為【 DHT 】


LinkIt Smart 7688 端

Step 1. 匯入溫溼度 Library

1.1  匯入溫溼度 Library  
     ❖ 在 Arduino Sketch 中點選【 草稿碼 】➙【 匯入程式庫 】 ➙ 【 Manage Libraries 】


1.2  搜尋 DHT Library  
     ❖ 在右上角搜尋欄位輸入【 dht 】


1.3  安裝 DHT Library  
     ❖ 選擇【 DHT sensor library by Adafruit 】的 【 Version 1.2.3 】的版本並按裝


Step 2. 撰寫 Arduino 程式取得感測資料

2.1  下載 【 getDHT_Bridge.ino 】 的程式碼  
     ❖ 請到下方 URL 中的程式碼複制到 Arduino IDE 
 https://github.com/ArcherHuang/Linkit_Smart_7688/blob/master/IoT%20Cloud/Arduino/getDHT_Bridge/getDHT_Bridge.ino


Step 3. 燒錄程式

     ❖ 點選 【 草稿碼 】➙ 【 上傳 】

     ❖ 上傳成功


Step 4. 透過 Python 傳送感測資訊到 Google Spreadsheet

4.1  下載 【 linkit_Smart_7688_googleSpreadSheet.py 】 的程式碼  
     ❖ 請到下方 URL 中的程式碼複制到 IDE
https://github.com/ArcherHuang/Linkit_Smart_7688/blob/master/IoT%20Cloud/Python/linkit_Smart_7688_googleSpreadSheet.py  


4.2  修改程式中的相關資訊  
     ① 將【 from_json_keyfile_name 】後面的 【 ooo.json 】改成憑證的名稱

4.3  將上一步驟的 Python 與憑證傳送到 LinkIt Smart 7688  

請參考【 傳送檔案與登入到開發板 】 教學文章


4.4  遠端登入到 LinkIt Smart 7688  

請參考【 傳送檔案與登入到開發板 】 教學文章


4.5  執行下方指令  
     ① opkg update
     ② uci set yunbridge.config.disabled=0
     ③ uci commit
     ④  reboot
     ⑤  pip install gspread oauth2client

4.6  執行 Python  
     python linkit_Smart_7688_googleSpreadSheet.py


Step 5. 開啟 Google Spreadsheet 查看感測資料


Reference
GitHub
List of blogs
感謝

Archer

Having being a full stack engineer. Experience with C, Python, Go, Swift, JavaScript, Node.js, LinkIt 7697, LinkIt Smart 7688, Raspberry Pi, ARM mbed, IoT solutions. Contact us : [email protected]

ALL RIGHTS RESERVED. COPYRIGHT © 2016. Designed and Coded by Makee.io