Benutzer-Werkzeuge

Webseiten-Werkzeuge


wetterstation:si1145

SI1145 UV-Sensor

Diese Seite ist in Entwicklungsphase

Allgemeines zum SI1145

Der SI1145-Sensor gibt die UV-Strahlung (Ultraviolettstrahlung) an.
Die UV-Strahlung gibt die Intensität des Sonnenlichtes wieder. Sie wurde von der World Health Organization festgelegt, denn eine zu lange Zeit an der Sonne schlecht für die Gesundheit ist, daher ist es unteranderem wichtig ein solchen Sensor in einer professionelen Wetterstation zu integrieren.

Der UV Index und die UV-Skala, die den Sensor angibt, kann hier nachgelesen werden.

Hier auch noch mal ein Link zur Erklärung.

Raspberry Pi Konfiguration

Um den PI1145 Sensor nutzen zu können, müssen folgende Einstellungen vorgenommen werden.

1. Aktualisiere dein System und Python:

sudo apt update; sudo apt dist-upgrade
sudo pip3 install --upgrade setuptools

2. Für den UVSensor werden die GPIO-Module benötigt. Zuerst ist eine Aktivierung im Raspberry Pi notwendig. Dafür müssen folgende Befehle im Terminal ausgeführt werden:

sudo raspi-config
# unter Interfacing Options muss GPIO aktiviert werden
# NICHT neu starten!

3. Installiere die si1145-Bibliotheken:

Download:SI1145-Bibliotheken download

Verkabelung

Verkable den SI1145 UV-Sensor folgendermaßen:

Ground → Raspiground
Vin → 3V3
SDA → GPIO2
SCL → GPIO3

Hier ein Beispiel mit dem Raspi zero, die Pins-Platzierungen sind dieselben mit jeden Raspi, die Verkablung ist also dieselbe.

Es ist möglich noch eine IR-LED an dem LED-Pin zu verbinden, um einen basic proximity sensor capability zu integrieren, da der SI1145 Sensor dieses auch unterstützt.

Bei Unsicherheiten überprüfe die Pins des Raspis mit:

pinout

Alle weiteren möglichen physischen als auch technischen Informationen zum Adafruit SI1145 Breakout Board - UV index / IR / Visible Sensor können auch hier nachgeschaut werden.

Code

Hier ist eine Möglichkeit für einen Code, das die UV Strahlung angibt, nach der UV-Skala siehe oben. Es wird alle drei Sekunden aktualisiert.

import time
import SI1145
 
sensor = SI1145.SI1145()
 
while True:
    vis = sensor.readVisible()
    IR = sensor.readIR()
    UV = sensor.readUV()
    uvIndex = UV / 100.0
    print("Vis:" + str(vis))
    print("IR:" + str(IR))
    print("UV Index:" + str(uvIndex))
 
    time.sleep(3)
wetterstation/si1145.txt · Zuletzt geändert: 2020/12/03 14:16 von benjamin