=====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 [[https://learn.adafruit.com/adafruit-si1145-breakout-board-uv-ir-visible-sensor/what-is-the-uv-index|hier]] nachgelesen werden.
[[https://learn.adafruit.com/adafruit-si1145-breakout-board-uv-ir-visible-sensor/what-is-the-uv-index|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:[[https://github.com/adafruit/Adafruit_SI1145_Library|SI1145-Bibliotheken download]]
==== Verkabelung ====
Verkable den SI1145 UV-Sensor folgendermaßen:
Ground -> Raspiground \\
Vin -> 3V3 \\
SDA -> GPIO2 \\
SCL -> GPIO3 \\
[[https://i0.wp.com/www.pibits.net/wp-content/uploads/2019/01/pi-and-Si1145_bb.jpg?w=690|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 [[https://cdn-learn.adafruit.com/downloads/pdf/adafruit-si1145-breakout-board-uv-ir-visible-sensor.pdf|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)