Nr. 35 – UV-Sensor UVM30

Den UV-Sensor UVM30 mit einem Arduino Mikrocontroller verwenden

Funktionweise

Der UV-Sensor UVM30A ist in der Lage, die Intensität eines gegebenen ultravioletten Lichts zu erfassen und in einen analogen Wert zu wandeln.

Dieser analoge Wert kann anschließend mithilfe des sogenannten UV-Indexes ausgewertet werden.

Das Ziel dieser Anleitung besteht nun darin, den erfassten Wert in diesem UV-Index einzuordnen und den Nutzer so über eventuell erforderliche Schutzmaßnahmen zu unterrichten.

Pinbelegung

Der UV-Sensor UVM30A verfügt über drei Pins.

  • + = Pin für die Spannungsversorgung, anzuschließen an den 5V Pin des Mikrocontrollers
  • OUT = Pin für die Signalübertragung, anzuschließen an den A0 Pin des Mikrocontrollers
  • GND Pin, anzuschließen an den GND Pin des Mikrocontrollers

Schaltplan

Schaltplan für das Modul UVM-30A

Beispielsketch

void setup() 
{
  Serial.begin(9600); // Baudrate des seriellen Monitors
}

void loop() 
{
  int SensorWert;
  SensorWert = analogRead(0); // Sensorwert wird an der Schnittstelle A0 ausgelesen...   
  Serial.println(SensorWer);  // ...und anschließend zur Kontrolle im seriellen Monitor ausgegeben.

  if (SensorWert < 10 )      // Wenn der Sensorwert kleiner als 10 ist...
  {
    Serial.print("Index : 0");   // ... soll diese Meldung...
    Serial.println("Kein Schutz erforderlich.");  // ... im seriellen Monitor erscheinen.
  }
  
  if (SensorWert < 46 & SensorWert > 10 )  // Wenn der Sensorwert kleiner als 46 und größer als 10 ist...
  {
    Serial.print("Index : 1");    // ...soll diese Meldung...
    Serial.println("Kein Schutz erforderlich.");  // ... im seriellen Monitor erscheinen.
  }
  
  if (SensorWert < 65 & SensorWert > 46 )
  {
    Serial.print("Index : 2");
    Serial.println("Kein Schutz erforderlich.");
  }
  
  if (SensorWert < 83 & SensorWert > 65 )
  {
    Serial.print("Index : 3");
    Serial.println("Schutz erforderlich : z.B. Hut, Sonnencreme");
  }
  
  if (SensorWertalue < 103 & SensorWert > 83 )
  {
    Serial.print("Index : 4");
    Serial.println("Schutz erforderlich : z.B. Hut, Sonnencreme");
  }
  
  if (SensorWert < 124 & SensorWert > 103 )
  {
    Serial.print("Index : 5");
    Serial.println("Schutz erforderlich : z.B. Hut, Sonnencreme");
  }
  if (SensorWert < 142 & SensorWert > 124 )
  {
    Serial.print("Index : 6");
    Serial.println("Schutz erforderlich : z.B. Hut, Sonnencreme. Schatten aufsuchen.");
  }
  
  if (SensorWert < 162 & SensorWert > 142 )
  {
    Serial.print("Index : 7");
    Serial.println("Schutz erforderlich : z.B. Hut, Sonnencreme. Schatten aufsuchen.");
  }
  
  if (SensorWert < 180 & SensorWert > 162 )
  {
    Serial.print("Index : 8");
    Serial.println("Aufenthalt im Freien möglichst vermeiden. Schutz erforderlich.");
  }
  
  if (SensorWert < 200 & SensorWert > 180 )
  {
    Serial.print("Index : 9");
    Serial.println("Aufenthalt im Freien möglichst vermeiden. Schutz erforderlich.");
  }
  
  if (SensorWert < 221 & SensorWert > 200 ) 
  {
    Serial.print("Index : 10");
    Serial.println("Aufenthalt im Freien möglichst vermeiden. Schutz erforderlich.");
  }

  if (SensorWertlue > 221 )
  {
    Serial.print("Index : 11");
    Serial.println("Aufenthalt im Freien vermeiden. Schutz DRINGEND erforderlich.");
  }



  
  delay(1000);    /// Delay von einer Sekunde  
}

Funduino - Dein Onlineshop für Mikroelektronik

  • Dauerhaft 10% Rabatt für Schüler, Studenten und Lehrkräfte
  • Mehr als 2.000 Artikel sofort verfügbar!
  • Über 8 Jahre Erfahrung mit Arduino, 3D-Druck und co.
NEU