TEMT600 Luminosità

Ho trovato questo programma su internet per la luminosità in LUX.

/*
 Demonstration sketch for TEMT6000 light sensor.
 
 Reads light level (lux) and prints results to I2C LCD.
*/
 
#include <TEMT6000.h>
#include <LCD.h>
#include <Wire.h>
 
// TEMT6000 light sensor pin
#define    TEMT6000_PIN    A1
 
// Create object
TEMT6000 light_sensor;
 
// Default I2C address for LCD is 0
LCD lcd;
 
void setup() {
  lcd.begin(20, 4);
  
  light_sensor.init(TEMT6000_PIN);
   
  lcd.clear();
  lcd.print("TEMT6000 test");
}
 
void loop() {
  
  // Basic readout test, just print the level as an int and float
  lcd.setCursor(0,1);
  lcd.print("Level: ");
  lcd.print(light_sensor.get_lux_int());
  lcd.print("%");
  
  lcd.setCursor(0,2);
  lcd.print("Level: ");
  lcd.print(light_sensor.get_lux_float());
  lcd.print("%");
  
  delay(1000);
}

Purtroppo non trovo la libreria TEMT6000.h

Qualcuno sa dove posso trovarla?

Credo che tutte le informazioni, libreria e quant'altro la puoi trovare a partire da qui : Davide Gironi: A library to measure light intensity (lux) using TEMT6000 on AVR Atmega

In particolare, il dowload del codice si fa da qui : Google Code Archive - Long-term storage for Google Code Project Hosting.

Guglielmo

Mi converrebbe fare più con una fotoresistenza o con questo dispositivo per ottenere una luminosità in LUX?

Mah, guarda, ho dato un'occhiata a quei link ...
... a me sembra che la sola cosa che ti serve è questa funzione che puoi benissimo implementarti da solo all'interno del TUO codice (... ovviamnete adattandola) senza includere quella libreria :

/*
 * get lux from voltage
 */
double temt6000_getlux(double vol) {
	//suppose we read the voltage from the emitter of temt6000, with a 10k pulldown resistor connected to gnd
	//V[V] = I[A]*R[ohm] = I[uA] * 1[A]/1000000[µA] * 10000[ohm] = I[uA] * 1[A]/1[uA] * 0.01[ohm]
	//1[uA] = V[V] / 0.01[ohm] = 100 * V[V/ohm]
	//the curve from datasheet seems y=2x+0, so lux = 2 * I[uA] = 2 * 100 * V[V/ohm]
	return 2*(100*vol);
}

... in fin dei conti, misurata una tensione all'ingresso (che arriva dal TEMT6000 collegato con una resistenza di pulldown da 10K) non fa altro che fare un paio di banali moltiplicazioni :wink:

Guglielmo