2018年1月19日 星期五

Arduino學習180120.自製照度計


Arduino學習180120.自製照度計

準備以下硬體並安裝
Arduino UNO
照度計模塊GY-30
IIC1602螢幕
18650電池*2
接線

先參考學習262及610,了解螢幕及照度計模塊的使用,
將照度計模塊接在A4和A5,將螢幕接在SDA和SCL,
先安裝在麵包板上,並上傳程式,無誤後由18650電池供電,


#include <Wire.h>
#include <LiquidCrystal_I2C.h> //務必先安裝資料庫
#include <BH1750.h>

LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); //設定位址或0x27或0x20或0x38
BH1750 lightMeter;

void setup() {
  Serial.begin(9600); //通訊速率
  lcd.begin(16, 2); //初始化16字元2行
  lightMeter.begin();

  for(int i = 0; i < 3; i++) {
    lcd.backlight();
    delay(250);
    lcd.noBacklight();
    delay(250);
  }
  lcd.backlight(); //閃爍三次後點亮背光
}

void loop() {
  uint16_t lux = lightMeter.readLightLevel();
  Serial.println(lux);
  lcd.clear();
  lcd.print(lux);
  delay(1000);
}

測試無誤後將電路移裝到塑膠板上,電池裝在板後加上開關


在無雲太陽照射下測得照度在6000Lux以上,
室內約只300Lux以下,