Advertisement
noam76

run every x time

Sep 27th, 2021
1,032
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #define pump 6
  2. #define solenoid1 1
  3. #define solenoid2 2
  4.  
  5.  
  6. unsigned long previousMillis, currentMillis;
  7. unsigned long current_pump_time;
  8. unsigned long operation_pump_start;
  9. const unsigned long interval = 30000; // interval time
  10. const unsigned long TIMEOUT = 3000; // interval 3sec
  11.  
  12. void setup() {
  13.     pinMode(pump,OUTPUT);
  14.     pinMode(solenoid1,OUTPUT);
  15.     pinMode(solenoid2,OUTPUT);
  16. }
  17.  
  18. void loop() {
  19.   currentMillis = millis(); // update with every loop
  20.   if (currentMillis - previousMillis >= interval) {
  21.     previousMillis = currentMillis; // new startpoint
  22.     pump_running = true;
  23.     operation_motor_start = millis();
  24.     digitalWrite(pump,HIGH);
  25.     delay(500);
  26.     digitalWrite(solenoid1,HIGH);
  27.     digitalWrite(solenoid2,HIGH);
  28.   }
  29.   // Stop pump after timeout
  30.   if(pump_running == true)
  31.    {
  32.       current_motor_time = millis();
  33.       if(current_pump_time - operation_pump_start > TIMEOUT)
  34.         {
  35.              pump_running = false;
  36.              operation_pump_start = 0;
  37.              digitalWrite(pump,);
  38.              digitalWrite(solenoid1,LOW);
  39.              digitalWrite(solenoid2,LOW);
  40.           }
  41.      }
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement