#include #include SoftwareSerial mySerial (2,3); LiquidCrystal_I2C lcd(0x27,20,4); #define SENSOR_PIN_A A1 #define SENSOR_PIN_D 7 int ThermistorPin = A0; int Vo; float R1 = 10000; // value of R1 on board float logR2, R2, T; float c1 = 0.001129148, c2 = 0.000234125, c3 = 0.0000000876741; //steinhart-hart coeficients for thermistor int ana11=11; int ana10=10; int ana9=9; int i=0; int v; int D; void setup() { Serial.begin(9600); mySerial.begin(38400); pinMode(SENSOR_PIN_D, INPUT); pinMode(ana9,OUTPUT); lcd.init(); lcd.backlight(); lcd.clear(); for (int x=0; x<10; x++) { int v = analogRead(SENSOR_PIN_A); delay(10); } } void loop() { // ----------------------------------------------------------- D=digitalRead(SENSOR_PIN_D); delay(0); // Serial.println(D); delay(10); //----------------------------------------------------------------------------------------------------------------- Vo = analogRead(ThermistorPin); R2 = R1 * (1023.0 / (float)Vo - 1.0); //calculate resistance on thermistor logR2 = log(R2); T = (1.0 / (c1 + c2*logR2 + c3*logR2*logR2*logR2)); // temperature in Kelvin T = T - 273.15; //convert Kelvin to Celcius // T = (T * 9.0)/ 5.0 + 32.0; //convert Celcius to Farenheit /* Serial.print("Temperatur: "); Serial.print(T); Serial.println(" C"); */ delay(10); if(T<35 && D==0){ noTone(9); analogWrite(ana11,0); analogWrite(ana10,255); analogWrite(ana9,0); mySerial.println("Kein Problem erkannnt!"); delay(100); lcd.clear(); lcd.setCursor(0,0); lcd.print("Kein Problem "); lcd.setCursor(0,1); lcd.print("erkannt!"); delay(10); } if(T>35&&T<45 && D==0){ noTone(9); analogWrite(ana11,255); analogWrite(ana10,100); analogWrite(ana9,0); mySerial.println("Erhöhte Warnstufe!"); delay(100); lcd.clear(); lcd.setCursor(0,0); lcd.print("Erhöhte "); lcd.setCursor(0,1); lcd.print("Warnstufe!"); delay(10); } if(T>45 || D==1){ analogWrite(ana11,255); analogWrite(ana10,0); mySerial.println("Hohe Warnstufe!"); delay(100); lcd.clear(); lcd.setCursor(0,0); lcd.print("Hohe"); lcd.setCursor(0,1); lcd.print("Warnstufe!"); for(i=550;i<1400;i++){ tone(9,i); delay(2); } for(i=1400;i>550;i--){ tone(9,i); delay(2); } delay(10); } }