2019年6月9日 星期日

用wemos d1 mini 玩物聯網(4)-2x16LCD顯示器

一、課程目標:

  1. 學習使用I2C 2X16 lcd
  2. i2c為一種通訊界面,2x16代表lcd為二行,每行可以顯示16個字母。

二、接線圖

  • Wemos Mini LCD1602
  • GND GND
  • 3v3 VCC
  • D2 SDA
  • D1 SCL





圖片來源http://www.esp8266learning.com/wemos-bmp180-readings-oled-display-simple-project.php

三、程式碼
#include <Wire.h>
#include <esp_LiquidCrystal_I2C.h>

esp_LiquidCrystal_I2C mylcd(0x27, 16, 2);
void setup()
{
  mylcd.init();
  mylcd.backlight();
  mylcd.setCursor(0, 0);
  mylcd.print("Welcome to");
  mylcd.setCursor(0, 1);
  mylcd.print("wemos d1 mini");
}


void loop()
{

}
四、執行結果


伍、參考資料

2019年3月9日 星期六

用SensorBoard 玩 Arduino (9) 伺服馬達的使用(servo motor)

一、接線圖
我們使用為SG-90伺服馬達,可以自行設轉動角度,有三條線,電源(紅色)、接地(黑或棕色)、訊號線(白、黃、橘、藍,甚至是黑色),將其接在D3
底下是Tower Pro SG90的規格:
重量:9g
尺寸:23*12.2*29mm
工作電壓:4.8V
轉矩:1.8kg-cm,當工作電壓為4.8V時
運轉速度:0.1秒 ∕ 60度 ,當工作電壓為4.8V時
脈衝寬度範圍:500~2400µs
死頻帶寬度(dead band width):10µs。




二、程式碼

1.可以直接指訂轉動角度,接在D3,以下將轉動90度





2.配合可變電阻(A0),將其值0-1023轉成0-180度。  其中 1023/180約5.68


三、學生作業:
1.請配合DHT11溫度感測器,設定一個指針型的溫度計。

2019年1月14日 星期一

用SensorBoard 玩 Arduino (8) IFTTT 的介紹與基本使用

一、IFTTT簡介

FTTT 簡單來說就是 當 什麼 發生時 就做 什麼 事, 這 2 個「什麼」就是「服務」, 讓不同的平台、服務可以整合在一起。

二、使用方法
(1)註冊 官網:https://ifttt.com/  ,請點選 Sign Up 註冊帳號,  或是直接按Sign In ,可以利用GMAIL帳號作同步認證作登入






(2)登入後,點選個人帳號,再點選New Applet,將會有一系列的步驟來協助建立。

再點選 「+this」



步驟1.Choose a service, 我們選擇 webhook進行篩選,再點選藍色方塊,進入下個步驟。

        所謂的webhook的利用傳送一段網址給ifttt, 來觸發程式。


步驟2.Choose trigger(選擇觸發器),將你的「事件」命名,我們 命名為tt123  ,是利用「收到網絡請求」的方式來進行。


步驟3. 接下來設定系統要做什麼事情,點選「+that」

    選擇一個行動的服務,我們選擇用「email」來通知該事件被觸發,也就是事件觸發後立即發信。內建信箱是登入的email, 當然也可以選擇line,

步驟4 .點選,send me a email 藍色方塊,進行設定




步驟5 建立通知email的內容格式設定,有支援中文。
(1) evenName:代表觸發器名稱,以本例為tt123

(2)OccurredAt 代表發生時間

(3)Value1 , Value2, Valu3代表要傳送的資料

用兩個大括號,前後夾,代表它是一個變數,不要去動到。






步驟6 完成後,點選下 Receive notifications when this Applet runs 即可完成啟動。


步驟 7
接下來進行 尋找觸發的網址格式,我們直接進到以下網址 
https://ifttt.com/maker_webhooks,選擇右上角的「Document」

觸發器名稱:tt123
your key=系統會給您一串文字

填入觸發器的名稱,按下「Test It!」即可進行測試。

也可以直接打入以下網址:
即可以試驗,其中value1=a代表會傳遞a
https://maker.ifttt.com/trigger/tt123/with/key/your key?valu1=a&value=b&value=c


二、程式碼

範例1.簡單測試,填入 觸發器名稱(事件名稱),與key,即可執行。並傳送a,b,c三個值


執行結果,可以收到email如下


範例2.利用迴圈每30秒測量目前光度值,並傳送到email. 





參考資料





2018年10月4日 星期四

用SensorBoard 玩 Arduino (7) 超音波模組(HC-SR04)

一、接線圖:

超音波模組(HC-SR04) 是一個利用超音波來測量距離,

可以探測的距離為 2cm-400cm,精度為 0.3 cm,感應角度為 15 度


HC-SR04
Arduino
Vcc
+5V
Trig (控制端)
7
Echo (接收端)
8
GND
GND


用SensorBoard 外接腳位圖


我們需要用到傳2個資料腳位,一個是trig 端,另一個是echo 端。
其中trig 接在D7  echo 接在D8



二、執行Transformer


三、程式碼


先進行測試,執行後如果有看到數值代表感測器正常運作。






每一秒測量一次,並顯示所測量的距離於lcd的第二列上。

四、學生作業
1.請利用此裝置設計一個倒車雷達,當距離小於50cm,發出Do 的音20ms 3次。51~80發出Do的音 500ms 1次。

2.請利用此裝置設計一個倒車雷達,可以利用可變電阻(A0)來調整「設定值」當測量的距離< 設定值,發Mi 的音20ms 1次, 並閃紅燈2次。