Grove - Sunlight Sensor

Auf dem Sunlight Sensor Grove befindet sich der SI1145 Sensor von SiLabs. Dieser misst das Licht und kann den UV-Index intern berechnen. Wir haben ihn in einem ersten Test etwas näher betrachtet.

Die Bestimmung des UV-Index ist wichtig, da es sich dabei um ein standardisiertes Maß für die sonnenbrandwirksame solare Bestrahlungsstärke handelt. Daraus lassen sich zum Beispiel Rückschluss auf den nötigen Sonnenschutzfaktor ziehen.

Technische Details

Obwohl der Sensor den UV-Index berechnen kann, basiert dieser nicht auf dem im UV Bereich gemessenen Licht. Anders als vermutet, kann der Sensor das Licht nur im IR- und im sichtbaren Bereich messen und errechnet daraus über spezielle Algorithmen, wie hoch der UV-Index ist.

Eigenschaften:

  • Sensor: SI1145 von SiLabs
  • Betriebsspannung: 3.3V oder 5V
  • Schnittstelle: I2C

Inbetriebnahme

Zu erst muss die Datei Grove_Sunlight_Sensor-master.zip aus dem Repository https://github.com/SeeedDocument/Grove-Sunlight_Sensor/ heruntergeladen werden. Anschließend das ZIP-Archiv entpacken und bei dem entpackten Ordner das "-master" im Namen entfernen. Danach kann der Ordner in das Bibliotheks-Verzeichnis der Arduino IDE kopiert werden.

Für einen ersten Test kann dann das mitgelieferte Programm auf den Mikrocontroller übertragen werden. In unserem Fall verwenden wir den Seeeduino Nano V1.0

/*
    This is a demo to test Grove - Sunlight Sensor library

*/

#include <Wire.h>

#include "Arduino.h"
#include "SI114X.h"

SI114X SI1145 = SI114X();

void setup() {

  Serial.begin(115200);
  Serial.println("Beginning Si1145!");

  while (!SI1145.Begin()) {
    Serial.println("Si1145 is not ready!");
    delay(1000);
  }
  Serial.println("Si1145 is ready!");
}

void loop() {
  Serial.print("//--------------------------------------//\r\n");
  Serial.print("Vis: "); Serial.println(SI1145.ReadVisible());
  Serial.print("IR: "); Serial.println(SI1145.ReadIR());
  //the real UV value must be div 100 from the reg value , datasheet for more information.
  Serial.print("UV: ");  Serial.println((float)SI1145.ReadUV()/100);
  delay(1000);
}

Nachdem das Programm erfolgreich übertragen wurde, können über den "Serial Monitor" die Messwerte ausgelesen werden.

Erste Messung

Alle Messungen erfolgten im August in Deutschland auf ca. 400m ü. NN

Messung Vis IR UV
Mittag, klarer Himmel, im Freien, horizontal ausgerichtet 1967 15496 9.16
Mittag, klarer Himmel, im Freien, auf Sonne gerichtet 2149 17770 10.14
Mittag, klarer Himmel, hinter zweifach Verglasung, horizontal ausgerichtet 1249 7820 5.32
Abend kurz vor Sonnenuntergang, klarer Himmer, im Freien, horizontal ausgerichtet 431 3840 0.93
Abend kurz vor Sonnenuntergang, klarer Himmer, im Freien, auf Sonne gerichtet 765 8424 2.72

Leider fehlt ein geeichtes Referenzgerät, daher kann zur Genauigkeit keine direkte Aussage getroffen werden. Gemeldet war von verschiedenen Wetterdiensten ein UV-Index von 7. Festgestellt werden kann weiterhin, dass sich die Messergebnisse je nach Standort und Ausrichtung zur Sonne unterscheiden.

Weitere Informationen können der Wikipedia Seite zum "UV-Index" entnommen werden. So ist der von Wetterdiensten angegebene UV-Index der pro Tag maximal zu erwartende 30 minütige durchschnittswert.

Fazit

Der Sensor ist durchaus interessant und nach dem aktuellen Kenntnisstand für Hobby Projekte geeignet, jedoch ist ist vom Einsatz in professionellen Projekten eher abzuraten. Beim Einsatz sollte auf alle Fälle darauf geachtet werden, dass die verwendete Abdeckung bzw. das verwendete Gehäuse das Licht gut und in allen Spektren ungedämpft durchlässt. Nur so kann eine möglichst genaue Messung durchgeführt werden.

Vor dem Einsatz ist es auch sehr zu empfehlen sich mit dem Thema UV-Index und der Messung von Licht insgesammt zu beschäftigen, um dann die Werte auch richtig zu interpretieren.

Bilder

Links

Verwandte Artikel