6 de maig 2015

Sensor de llum



El sensor de llum TSL2561 ens permet conèixer la quantitat de llum que arriba al sensor. Té un diàmetre de menys de 14 mm (menor que una moneda d'un cèntim) i un gruix inferior als 2 mm. Això facilita el seu us incorporant-los a elements tèxtils.

Avís: En el moment d'escriure aquesta pàgina no es podien compilar les llibreries d'aquest sensor en les plaques Gemma.

Aquest sensor es connecta amb la placa del microcontrolador fent servir una comunicació i2c que ens permet transferir la informació fent servir només dos fils (més els dos d'alimentació). Cada placa de microcontrolador només pot tenir connectat un sensor TSL2561 però sí admet altres elements i2c coexistint amb ell. Per això, la placa del sensor té duplicades les connexions i2c de manera que sigui fàcil encadenar els dispositius.
LSM303


Per fer servir aquest sensor cal connectar el born 3V (inferior a la foto) al born 3,3 V de la placa del microcontrolador (ATENCIÓ: No al born VBATT), el born gnd (superior a la foto) al negatiu de l'alimentació i els borns SDA i SCL amb els del mateix nom de la placa del microcontrolador. A la placa del sensor aquests dos borns hi apareixen dos cops de manera que podem triar la disposició que ens sigui més còmoda.

Per a fer servir el sensor ens caldrà la Adafruit TSL2561 Light Sensor Driver i també la Adafruit Unified Sensor Driver.

Un cop ja tinguem la llibreria, podem fer els nostres programes. A la part inicial, hem de carregar les llibreries corresponents. A la part de declaració de variables, hem de crear un objecte Adafruit_TSL2561_Unified. El número 12345 pot ser qualsevol però han de ser diferents per a cada sensor. En aquest cas l'objecte s'anomena tsl. En la inicialització del programa, cal inicialitzar el sensor. D'aquesta manera el nostre microcontrolador hi estableix connexió i convé preveure que la connexió no sigui possible.
També cal configurar-lo; per exemple amb els valors més bàsics.

En el programa cal definir un objecte del tipus sensors_event_t i cridem a la funció que llegeix els valors indicant-li que guardi els valors a l'event corresponent. El signe & indica que el que posem no és un paràmetre de la funció sinó la variable on ha de guardar els resultats. El valor llegit ens quedarà a la variable event.light (amb el nom d'event que hem definit abans).

A continuació hi ha un programa de prova. En aquest cas, obrim també un canal sèrie que ens permeti veure si la connexió ha anat bé i les lectures del sensor al monitor sèrie. El nostre programa de prova llegirà el valor llegit pel sensor i el mostrarà.

Programa

Per poder comparar quan feu proves, a continuació teniu una taula amb els valors recomanats per a alguns espais:

Espai Il·luminació recomanada (lux)
Passadissos 100
Aules i laboratoris 400
Biblioteques i sales d'estudi 500
Treballs amb poques necessitats visuals 300
Treballs amb necessitats visuals significatives 750
Treballs de precisió visuals 1500
Escales 150
Oficines 500
Botigues 500
Cuines i banys 150
Dormitoris 150
Sales d'estar 300

En aquesta pàgina podeu trobar més informació sobre el sensor.

Cap comentari:

Publica un comentari a l'entrada

Deixa el teu comentari