ESP8266 TSL2561 Luminosity Sensor
TSL2561 เป็นเซนเซอร์วัดความเข้มแสงได้หลากหลายในช่วงกว้าง วัดได้ทั้งแสงที่ตามองเห็น และมองไม่เห็น วัดได้ละเอียดในช่วง 0.1-40,000 LUX มีอินเตอร์เฟสแบบ I2C สามารถตั้ง address ได้ 3 ตำแหน่ง ใช้ไฟเลี้ยง 2.7-3.6V
การต่อวงจร ESP8266 TSL2561
- SCL - D1
- SDA - D2
- VCC - 3.3V
- GND - GND

ดาวน์โหลดไลบารีจากที่นี่ http://www.arduinoall.net/arduino-tutor/code/TSL2561.rar โคด Arduino ESP8266
#include
#include "TSL2561.h"
TSL2561 tsl(TSL2561_ADDR_FLOAT);
void setup(void) {
Serial.begin(115200);
if (tsl.begin()) {
Serial.println("Found sensor");
} else {
Serial.println("No sensor?");
while (1);
}
tsl.setGain(TSL2561_GAIN_16X);
tsl.setTiming(TSL2561_INTEGRATIONTIME_13MS); // shortest integration time (bright light)
}
void loop(void) {
uint16_t x = tsl.getLuminosity(TSL2561_VISIBLE);
//uint16_t x = tsl.getLuminosity(TSL2561_FULLSPECTRUM);
//uint16_t x = tsl.getLuminosity(TSL2561_INFRARED);
Serial.println(x, DEC);
uint32_t lum = tsl.getFullLuminosity();
uint16_t ir, full;
ir = lum >> 16;
full = lum & 0xFFFF;
Serial.print("IR: "); Serial.print(ir); Serial.print("\t\t");
Serial.print("Full: "); Serial.print(full); Serial.print("\t");
Serial.print("Visible: "); Serial.print(full - ir); Serial.print("\t");
Serial.print("Lux: "); Serial.println(tsl.calculateLux(full, ir));
delay(100);
}
ข้อมูลเพิ่มเติม https://github.com/adafruit/TSL2561-Arduino-Library
คลิปวีดีโอสอน Arduino ESP8266 TSL2561 Luminosity Sensor : ESP8266 วัดความเข้มแสง