C# & 파이썬 & 아두이노

[아두이노] 조도센서 BH1750

피커 2020. 12. 16. 20:57
728x90
반응형

아두이노 센서 중 유명한 조도센서 하나를 소개해보려 한다.

취미 삼아 만든 아누이 노 프로젝트 중에 주변 밝기를 측정하고 싶어 찾아보고 구매한 BH1750 조도센서이다.

1) 조도-디지털 변환기 내장

2) 넓은 범위 및 고해상도를 지원한다. (1-65535 lx)

3) 전원 차단 기능에 의한 저 전류 기능 지원

4) 50Hz / 60Hz 광 노이즈 제거 기능 지원

5) I2C 버스 인터페이스 (f / s 모드 지원)

6) 외부 추가 부품이 필요 없음

7) I2C 슬레이브 주소는 2 종류 선택이 가능합니다.

8) 최솟값 검출이 가능합니다.

0.11lx, 최대 이 기능을 사용하여 100000 lx 지원

사진

관련 코드는 아래와 같다.

 

// First define the library :
#include <BH1750FVI.h> // Sensor Library
#include <Wire.h> // I2C Library
#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
uint16_t Light_Intensity = 0;
// Call the function

BH1750FVI LightSensor;


void setup() {
    // put your setup code here, to run once:
    Serial.begin(9600);
    lcd.begin(16, 2);

    //  call begin Function so turn the sensor On .
    LightSensor.begin();
    LightSensor.SetAddress(Device_Address_H); //Address 0x5C
    LightSensor.SetMode(Continuous_H_resolution_Mode);
    lcd.setCursor(0, 0);
    lcd.print("BH1750 Sensor");
    lcd.setCursor(1, 1);
    lcd.print("Please wait...");
    delay(3000);
    lcd.clear();

}

void loop() {
    // put your main code here, to run repeatedly:
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print(" Intensity = ");
    lcd.setCursor(5, 1);
    Light_Intensity = LightSensor.GetLightIntensity();
    lcd.print(Light_Intensity);
    lcd.print(" Lux");
    delay(2000);

}

반응형