Professional Documents
Culture Documents
Mô Hình Tự Mở Tắt Đèn Dùng Cảm Biến Cƣờng Độ Ánh Sáng Bh1750fvi
Mô Hình Tự Mở Tắt Đèn Dùng Cảm Biến Cƣờng Độ Ánh Sáng Bh1750fvi
1
NHM 2
MC LC
MC LC
CHNG 1. TNG QUAN V CM BIN BH1750FVI
1.1 KHI NIM CHUNG V CM BIN
1.2 KHI NIM V CNG NH SNG (HAY RI)
1.3 KHI QUT V BH1750FVI
CHNG 2. QU TRNH THC HIN
2.1 CC LINH KIN S DNG
2.2 S LP MCH V M HNH NI DY THC T
2.3 QU TRNH LP TRNH CODE CHO ARDUINO
CHNG 3. KT LUN V NG DNG
TI LIU THAM KHO
2
3
3
3
3
5
5
7
8
13
14
2
NHM 2
INPUT
Cm bin
OUTPUT
Tn hiu
in
MT S V D V RI CA NH SNG :
Bui ti v nh trng : 0 1 lux
Tri nhiu my trong nh : 5 50 lux
Tri nhiu my ngoi tri : 50 500 lux
Tri nng trong nh : 100 1000 lux
4
NHM 2
5
NHM 2
4. Led :
5. Bin tr 10K :
6. in tr : 330 x 2 :
6
NHM 2
Khi ng phn mm
Arduino IDE, trn thanh
cng c chn Sketch
np th vin BH1750FVI.
8
NHM 2
// Sensor Library
// I2C Library
// LCD Library
delay(3000);
lcd.clear();
// Cho 3 giay
// Xoa man hinh LCD
}
void loop() {
lcd.clear();
lcd.setCursor(0, 0);
// Dua con tro LCD den o 1 hang 1
lcd.print("Ev = ");
Light_Intensity = LightSensor.GetLightIntensity(); // Gan ham tinh do anh sang cho bien
lcd.print(Light_Intensity);
// Xuat ra LCD gia tri cuong do anh sang
lcd.setCursor(11, 0);
// Dua con tro LCD den o 12 dong 1
lcd.print("(lux)");
lcd.setCursor(0, 1);
// Dua con tro LCD den o 2 cot 1
lcd.print("Light : ");
digitalWrite(9, LOW);
// Khoi tao mac dinh led tat
if(Light_Intensity < 100) {
lcd.print("ON");
// Thong bao led sang
digitalWrite(9, HIGH);
// Cap nguon 5V cho chan D9 => led sang
}
else {
lcd.print("OFF");
// Thong bao led tat
digitalWrite(9, LOW);
// Ngat nguon 5V cho chan D9 => led tat
}
delay(100);
// Thoi gian gian cach moi lan thay doi cuong do anh sang
}
Th vin BH1750FVI.h
// This library for Digital Light sensor BH1750FVI
#ifndef BH1750FVI_h
#define BH1750FVI_h
#include "Arduino.h"
#include "Wire.h"
#define Device_Address_L 0x23 // Device address when address pin LOW
#define Device_Address_H 0x5C // Device address when address pin LOW
//all command here taken from Data sheet OPECODE Table page 5
#define Power_Down 0x00
#define Power_On 0x01
#define reset 0x07
#define Continuous_H_resolution_Mode 0x10
#define Continuous_H_resolution_Mode2 0x11
#define Continuous_L_resolution_Mode 0x13
#define OneTime_H_resolution_Mode 0x20
10
NHM 2
11
NHM 2
12
NHM 2
13
NHM 2
Code muBH1750FVI
Hng dn lp trnh Arduino t arduino.vn
Datasheet BH1750FVI
Datasheet Arduino Nano (V2.3)
14
NHM 2