Benutzer-Werkzeuge

Webseiten-Werkzeuge


projekte:schimmelsensor

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
projekte:schimmelsensor [2017-01-16 20:55] – angelegt gamecompilerprojekte:schimmelsensor [2017-01-16 20:57] gamecompiler
Zeile 16: Zeile 16:
  
 ==== CODE ==== ==== CODE ====
 +<code c>
 +//SENSOR
 +#include <Wire.h>
 +#include <AM2320.h>
  
-<source lang="php"> +AM2320 th; 
-<?php + 
-    $v = "string";    // Beispielcode +//DISPLAY 
-?> +#include <LiquidCrystal.h> 
-HTML-Text +LiquidCrystal lcd(12, 11, 5, 4, 3, 2); 
-<? + 
-    echo $v        // Ende des PHP-Codes +//REFERENZEN !!!!! 
-?+//https://www.wetterochs.de/wetter/feuchte.html 
-</source>+//Vielen Dank an den Wetterochsen für seine nahezu perfekte Annäherung zu berechnung des Taupunktes. 
 + 
 + 
 +void setup() { 
 +  Serial.begin(9600); 
 +  Wire.begin(); 
 +  Serial.print("Start"); 
 +  lcd.begin(20, 4); 
 +  lcd.setCursor(0,0); 
 +  lcd.print("Luftfeuchte: "); 
 +  lcd.setCursor(0,1); 
 +  lcd.print("Temperatur: "); 
 +  lcd.setCursor(0,2); 
 +  lcd.print("Abs. Feuchte: "); 
 +  lcd.setCursor(0,3); 
 +  lcd.print("Taupunkt: "); 
 +   
 +
 + 
 +unsigned long previousMillis = 0; 
 +void loop() { 
 +  if (millis() - previousMillis >= 1000) { 
 +    previousMillis millis(); 
 +    switch(th.Read()) { 
 +    case 2: 
 +      Serial.println("CRC failed"); 
 +      break; 
 +    case 1: 
 +      Serial.println("Sensor offline"); 
 +      break; 
 +    case 0: 
 +      Serial.print("humidity: "); 
 +      Serial.print(th.h); 
 +      lcd.setCursor(14,0); 
 +      lcd.print(th.h); 
 + 
 +       
 +       
 +      Serial.print("%, temperature: "); 
 +      Serial.print(th.t); 
 +      Serial.println("*C"); 
 + 
 +      if(th.t >= 0) { 
 +        lcd.setCursor(13,1); 
 +        lcd.print(" "); 
 +        lcd.setCursor(14,1); 
 +        lcd.print(th.t); 
 +      } 
 +      else  { 
 +        lcd.setCursor(13,1); 
 +        lcd.print(th.t); 
 +      } 
 +       
 +       
 +      double T = th.t; 
 +      double r = th.h; 
 +      double a = 0; 
 +      double b = 0; 
 +       
 +      if(T >= 0)  { 
 +        a = 7.5; 
 +        b = 237.3; 
 +      } 
 +      else  { 
 +        a = 7.6; 
 +        b = 240.7; 
 +      } 
 +      double SDD = 6.1078 * pow(10,((a*T)/(b+T))); 
 +      double DD = r/100 * SDD; 
 +      double v = log10(DD/6.1078); 
 +      double TD = b*v/(a-v); 
 +      lcd.setCursor(14,3); 
 +      lcd.print(TD); 
 + 
 +      double TK = T + 273.15; 
 +      double mw = 18.016; //Molekulargewicht des Wasserdampfes 
 +      double R = 8314.3; //J/(kmol*K) (universelle Gaskonstante) 
 +      double AF = pow(10,5) * mw / R * DD / TK; 
 +      lcd.setCursor(14,2); 
 +      lcd.print(AF); 
 + 
 +      if(AF >= 0) { 
 +        lcd.setCursor(13,2); 
 +        lcd.print(" "); 
 +        lcd.setCursor(14,2); 
 +        lcd.print(AF); 
 +      } 
 +      else  { 
 +        lcd.setCursor(13,2); 
 +        lcd.print(AF); 
 +      } 
 + 
 +      lcd.setCursor(19,0); 
 +      lcd.print((char)223); //Degree symbol 
 +      lcd.setCursor(19,1); 
 +      lcd.print((char)223);  
 +      lcd.setCursor(19,2); 
 +      lcd.print("%");  
 +      lcd.setCursor(19,3); 
 +      lcd.print((char)223);  
 +      break; 
 +  } 
 +     
 +  } 
 +   
 + 
 +   
 +} 
 +</code>