Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Upcoming SlideShare
Arduino Yun 物聯網 Lesson 1
Next
Download to read offline and view in fullscreen.

11

Share

Download to read offline

Arduino Yun 物聯網 Lesson 2

Download to read offline

Arduino Yun 物聯網 Lesson 2。
DHT11 溫溼度感測器。
使用 temboo 服務將感測器資料上傳到 Google Docs 試算表。
使用繼電器來控制電器,本日使用檯燈
使用 REST API 與網路介面來控制繼電器

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Arduino Yun 物聯網 Lesson 2

  1. 1. Arduino Yun物聯網應用 Lesson 2
  2. 2. 本日進度 • 認識DHT11數位溫溼度感測器。 • 將此資料傳送至Google Docs試算表以方 便從任何瀏覽器或是手機應用程式來遠端 存取。 • 自動寄送電子郵件
  3. 3. 範例列表 • EX_1:sensor_test – 顯示感測器值於 Serial Monitor • EX_2:temboo_log – 將資料定期發送到Google Docs 試算表。 • EX_3:temboo_alert – 同EX_2,溫度低於邊界值時,自動寄發電子郵 件
  4. 4. [雲端氣象站]
  5. 5. 所需硬體 • Arduino Yun • 光敏電阻  Arduino A0 • DHT11 數位溫溼度感測器  Arduino D8
  6. 6. DHT11 數位溫溼度感測器 • 測量溫溼度。 • #1 pin 5V • #2訊號Arduino D8 • #4 GNDArduino GND
  7. 7. 光敏電阻 • 根據光的變化而改變本身電阻值。 • 一隻腳:Arduino 5V,另一隻 A0
  8. 8. 接線示意圖 10K 4.7 K
  9. 9. 實體完成
  10. 10. EX_1 抓感測器值 / sensor_test 把DHT11感測器值顯示於 Serial Monitor
  11. 11. 匯入DHT函式庫 • #include "DHT.h“ • 在 <Arduino IDE>/libraries 資料夾中,新 增一個名為 DHT 的資料夾。 • 請把檔案解壓縮,放入 DHT 資料夾即可。
  12. 12. 檢視感測器值
  13. 13. EX_2 傳送資料到Google Doc Yun 需要連網 /temboo_log 透過Temboo服務把資料定時送到 Google Docs 試算表。
  14. 14. 建立Google Docs試算表 • 試算表名稱任意,本範例為 Yun (Line20) • 欄位: Time、Temperature、Humidity和 Light level
  15. 15. 申請Temboo帳號 https://www.temboo.com/
  16. 16. 註冊流程 • 在主頁面中,請輸入您的電子郵件地址來 註冊並點選 Sign up。 • 建立您的第一個應用程式。請記錄以下資 料:應用程式的名稱,還有系統指派給您 的金鑰;本書之後都會用到它們。
  17. 17. ACCOUNT/新增一個 Application • 建立您的第一個應用程式。請記錄以下資 料:應用程式的名稱,還有系統指派給您 的金鑰;本書之後都會用到它們。
  18. 18. ACTIVITY/流量監控畫面
  19. 19. Temboo Choreo 物件 • 用來與指定web service 互動,本範例為 Google Docs • 另外也可用於 Gmail、Twitter等
  20. 20. 在程式中加入Google account • Line 18~20 • const String GOOGLE_USERNAME = "yourGoogleUsername"; • const String GOOGLE_PASSWORD = "yourGooglePass"; • const String SPREADSHEET_TITLE = "Yun";
  21. 21. 在TembooAccount.h中修改 • #define TEMBOO_ACCOUNT "temboo_accout_name" //Temboo 帳號名稱 • #define TEMBOO_APP_KEY_NAME " temboo_app_name " //Temboo app 名稱 • #define TEMBOO_APP_KEY " temboo_api_key " //Temboo app 金鑰
  22. 22. Choreo物件上傳到Google Docs • runAppendRow(lightLevel, temperature, humidity); //Line77 • void runAppendRow() 函式//Line84 • AppendRowChoreo.addInput() – 用來加入各種參數,例如Google username、 spreadsheet title等
  23. 23. 資料格式 • String data = ""; • data = data + timeString + "," + String(temperature) + "," + String(humidity) + "," + String(lightLevel); • AppendRowChoreo.addInput("RowData ", data);
  24. 24. 讀取感測器值 • 濕度:humidity = dht.readHumidity(); • 溫度:temperature = dht.readTemperature(); • 光度:lightLevel = analogRead(A0);
  25. 25. 每10分鐘紀錄一次 • delay(600000); //Line 80 • 請修改為 20000,每20秒紀錄一次。
  26. 26. 檢查Google Docs 有沒有資料進來
  27. 27. 計算總和與製作圖表 • 請自行用 Google Docs 試算表:插入圖 表。選擇您喜歡的圖表格式。
  28. 28. EX_3 自動寄發 email /temboo_alerts 使用 Temboo 的 Gmail 函式庫 溫度低於邊界值就寄信給自己
  29. 29. 溫度邊界值 • temperature_limit = 25.0; //Line61 • 請自行修正,相同的概念可對應到任何感 測器值。
  30. 30. 寄發email • Line 84~87 1. if (temperature < temperature_limit) { 2. if (debug_mode == true) 3. {Serial.println("Sending alert");} 4. sendTempAlert("Temperature is too low!"); 5. }
  31. 31. 設定基本資料 • Line 19~22 • const String GOOGLE_USERNAME:寄件人帳號 • const String GOOGLE_PASSWORD:寄件人密碼 • const String SPREADSHEET_TITLE:試算表名稱(Yun) • const String TO_EMAIL_ADDRESS:收件人帳號
  32. 32. 檢查有沒有收到email
  33. 33. 把溫度值放在 email 裡面 • runAppendRow(lightLevel, temperature, humidity); • String a =""; • a += "The temperature is "; • a += dht.readTemperature(); • // Send email alert ? • if (temperature < temperature_limit) { • if (debug_mode == true){Serial.println("Sending alert");} • sendTempAlert(a); • }
  34. 34. 收到了
  • doremi31618

    Dec. 18, 2017
  • postlofi

    Jul. 28, 2017
  • laiyoujia

    Mar. 20, 2017
  • ssuser749dbc

    Nov. 27, 2016
  • ZhangJing1

    Nov. 13, 2016
  • HelloDanny

    Oct. 28, 2015
  • lishanma3

    Aug. 15, 2015
  • eisenchen

    Jun. 27, 2015
  • lanma

    May. 20, 2015
  • yehlu

    Apr. 11, 2015
  • guojunzeng

    Feb. 23, 2015

Arduino Yun 物聯網 Lesson 2。 DHT11 溫溼度感測器。 使用 temboo 服務將感測器資料上傳到 Google Docs 試算表。 使用繼電器來控制電器,本日使用檯燈 使用 REST API 與網路介面來控制繼電器

Views

Total views

9,255

On Slideshare

0

From embeds

0

Number of embeds

11

Actions

Downloads

225

Shares

0

Comments

0

Likes

11

×