Advertisement
Guest User

Untitled

a guest
Feb 20th, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.66 KB | None | 0 0
  1. int su = 2; // schwimmer unten
  2. int so = 3;// schwimmer oben
  3. int pump = 8; // Pumpe
  4. int led = 13; //Ledpin
  5. int storung = 0;// hilfsvariable
  6. long szeit= 9000;// Sicherheitszeit 15 min
  7. void setup()
  8. {
  9.  pinMode (su, INPUT_PULLUP); // Input und pullup
  10.  pinMode (so, INPUT_PULLUP);// Input  und pullup
  11.  
  12.  pinMode (pump, OUTPUT);
  13.  pinMode (led, OUTPUT);
  14. Serial.begin (115200);
  15. Serial.println("Überwachung");
  16. }
  17.  
  18. void loop()
  19. {
  20. delay(50);
  21.  
  22.   if (digitalRead (so)&& digitalRead (su)) //schwimmer abfragen
  23.     {
  24.     Serial.println("Füllvorgang");
  25.     unsigned long zeit  = millis() + szeit; // "zeit setzen"
  26.     while(digitalRead (so)) // so lange schwimmer oben nicht schwimmt
  27.       {  
  28.       if (zeit < millis() && digitalRead (so)) //zeit überschritten und schwimmer schwimmt noch nicht
  29.         {
  30.         digitalWrite (pump,LOW);
  31.         storung =1;
  32.         Serial.println("Störung : Zeitüberlauf");
  33.         digitalWrite (led,HIGH);
  34.         delay (5000);
  35.         }
  36.       if (storung ==0) //wenn keine Störung vorliegt
  37.         {
  38.         digitalWrite (pump,HIGH);
  39.         digitalWrite (led,HIGH);
  40.         delay (500);
  41.         digitalWrite (led,LOW);
  42.         delay (500);
  43.         }
  44.       else {Serial.println("Störungssicherung noch aktiv... bitte reseten...");}
  45.       }
  46.     if (storung == 1) {storung=0; Serial.println("Störungsstatus durch obere Schwimmerbetätigung aufgehoben");}
  47.     else {Serial.println("Oberer Schwimmer meldet Aufgefüllt");}
  48.     Serial.println("Überwachung erneut gestartet");  
  49.     }
  50. else //alles andere
  51.   {
  52.     digitalWrite (pump,LOW);
  53.     digitalWrite (led,HIGH);
  54.     delay(100);
  55.     digitalWrite (led,LOW);
  56.   }
  57.  
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement