Sensore di luce GY-49 MAX44009 – Arduino

Il modulo GY-49 basato sul sensore di luce ambientale MAX44009 della Analogo Device in grado di trasformare l’intensità della luce, compresa in un range da 0,045 a 188.000 lux, in un segnale digitale disponibile tramite interfaccia I²C.
Per informazioni relative ad altri sensori di luce vedere l’articolo Panoramica dei moduli sensori di luce

Sensore luce GY-49 MAX44009

Misurazione dell’illuminamento

Il sensore presentato in questo articolo, fornisce il valore in lux della luce che lo colpisce. Il lux (simbolo lx) è l’unità di misura per l’illuminamento.
Un lux è pari a un lumen su metro quadrato. Potremmo quindi definire il lux come il flusso luminoso per unità di superficie.
È un’unità di misura relativa alla luce visibile, e pertanto dipendente dalle caratteristiche dell’occhio umano, attraverso la curva di sensibilità dell’occhio alla radiazione luminosa.
Alcuni dati di illuminamento per dare un’idea di quanto vale un lux:

  • la luce riflessa della Luna piena è pari a circa 1 lx;
  • la luce del Sole mediamente varia tra i 32 000 lx  e i 100 000 lx ;
  • sotto i riflettori degli studi televisivi si hanno circa 1 000 lx ;
  • in un campo di calcio (illuminazione notturna per riprese tv) tra i 500 lx e i 1200 lx;
  • in un ufficio luminoso si hanno circa 400 lx;
  • la luce di una stella luminosa è soltanto 0,00005 lx .

Descrizione del sensore MAX44009

Il sensore di luce ambientale MAX44009  (vedere datasheet) è dotato di un’uscita digitale I2C. Con una corrente operativa inferiore a 1 µA, è il sensore di luce ambientale a potenza più bassa del settore e presenta un intervallo dinamico ultra ampio a 22 bit da 0,045 lux a 188.000 lux.
La risposta spettrale del fotodiodo su chip è ottimizzata per imitare la percezione della luce ambientale da parte dell’occhio umano e incorpora capacità di blocco IR e UV.
Il blocco del guadagno adattivo seleziona automaticamente la gamma di lux corretta per ottimizzare i conteggi/lux.
L’IC è progettato per funzionare con un intervallo di tensione di alimentazione da 1,7 V a 3,6 V e consuma solo 0,65 µA a pieno regime. È disponibile in un piccolo package UTDFN-Opto da 2 mm x 2 mm x 0,6 mm.

Sensore luce GY-49 MAX44009

Circuito elettrico del modulo sensore GY-49 MAX44009

Per facilitare l’utilizzo del sensore Sensore luce  MAX44009 è disponibile uno specifico modulo  Breakout denominato GY-49.
Nello schema, oltre al sensore U1 tipo MAX44009 U1 (datasheet), troviamo il regolatore U4 tipo CMOS a basso dropout tipo 662K (datasheet) con relativi condensatori che fornisce l’alimentazione a 3.3V, quando il modulo viene alimentato dal pin VCC magari con la tensione 5V fornita da Arduino.
Il regolatore può fornire una corrente di uscita di 250 mA e consentire una tensione di ingresso fino a 6,5 V.
Per traslare i livelli sulla linea I2C 3,3V-5V sono utilizzati due transistor FET contenuti all’interno di IC3.
Il sensore permette di modificare il suo indirizzo, collegando opportunamente il pin A0 (S1) .  Se collegato a +3.3V l’indirizzo sarà 1001 011x, se collegato a GND l’indirizzo sarà 1001 010x.

Sensore luce GY-49 MAX44009

Impostazione dell’indirizzo del sensore

Sensore luce GY-49 MAX44009 Sensore luce GY-49 MAX44009

Caratteristiche del sensore

Range di misura  (Lux): da 0,045 a 188.000
Alimentazione: da 3 VDC a 5 VDC
Consumo: 1 μA
Temperatura di funzionamento: da -40°C a +85°C
Dimensioni (mm): 13×10,7×3,5 (connettori esclusi)

PINOUT del modulo sensore GY-49

  • VIN: ingresso alimentazione  2,7-5,5 VDC
  • GND: massa alimentazione
  • SCL: pin clock I2cC
  • SDA: pin DATA I2C

 

Sensore luce GY-49 MAX44009 Sensore luce GY-49 MAX44009

Dove trovare il sensore?

Il Breakout GY-49 con sensore MAX44009  può essere acquistato presso il sito FUTURA ELETTRONICA, il codice prodotto è 8300-YXB235.
Il suo costo, al momento della pubblicazione di questo articolo è di 3,90 €.

Libreria di gestione del sensore

Per facilitare l’uso del sensore luce GY-49 MAX44009 è disponibile un’apposita libreria; questa funzione in unione alla libreria Wire.h è già presente come libreria standard dell’IDE di Arduino che permette l’utilizzo del protocollo I2C.
Per il caricamento occorre aprire sotto il menù Sketch, #include libreria, “Gestione Librerie..”

Nel campo ricerca si inserirà “MAX44009”,  trovata la libreria  realizzata da Dan Tudose , premendo su “More info..” apparirà il tasto “Installa” cliccare il tasto, la libreria verrà installata

Per altre informazioni vedere anche l’articolo Arduino – Tutorial, come installare una libreria

Collegamento di base del sensore

Vediamo prima di tutto il collegamento di base del sensore, in questo caso leggeremo i valori forniti dal sensore tramite il monitor seriale dell’IDE.

Sensore luce GY-49 MAX44009

Materiale occorrente

Il materiale per realizzare il nostro Luxmetro è formato da:

Sensore luce GY-49 MAX44009

Programma/codice sorgente

Di seguito è riportato il codice sorgente di base per la lettura del sensore.  I valori potranno essere letti tramite il monitor seriale dell’IDE. In questo caso dovreste visualizzare una schermata simile a questa.
Le misure sono riferite al sensore posto sotto una luce da tavolo, i valori più elevati sono dovuti all’accensione del led della torcia dello smartphone.

Sensore luce GY-49 MAX44009

Mancato riconoscimento del sensore

Se ci fossero dei problemi di collegamento, invece, potreste vedere la schermata sotto. Provate a verificare se il modulo è correttamente collegato. Provare ad invertire i cavi SDA e SCL. Verificare se il ponticello di settaggio dell’indirizzo è presente.

Codice del programma