Skip to content

Commit

Permalink
fix bug, up perfomance
Browse files Browse the repository at this point in the history
  • Loading branch information
TheK4n committed Sep 21, 2021
1 parent 9b52482 commit 270b93a
Showing 1 changed file with 41 additions and 18 deletions.
59 changes: 41 additions & 18 deletions firmware/pump_encoder/pump_encoder.ino
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@


// ====Consts====
#define DEBUG 0
#define MIN_PRESSURE 60
#define MAX_PRESSURE 800

Expand All @@ -26,7 +27,7 @@

int pressure, pressure_low, pressure_high;
bool is_on_pump, is_on_display, display_cur_pressure;
unsigned long last_time1, last_time2, last_time3;
unsigned long last_time1, last_time2, last_time3, last_time_pressure;


EncButton<EB_TICK, S1, S2, KEY> enc;
Expand All @@ -44,7 +45,17 @@ int get_constrained_pressure_high(int pressure_high_local) {
}

void setup() {
// Serial.begin(9600);
if (DEBUG) {
Serial.begin(9600);
Serial.print("pressure");
Serial.print(',');
Serial.print("low");
Serial.print(',');
Serial.print("high");
Serial.print(',');
Serial.println("status");
}


pinMode(relay_port, OUTPUT);

Expand Down Expand Up @@ -126,22 +137,34 @@ void loop() {
}
}

// Если текущее давление ниже нижнего порога - включить насос
if (pressure < pressure_low) {
if (!is_on_pump) {
digitalWrite(relay_port, HIGH);
is_on_pump = true;
}
// измерение каждые 700 мс
if (millis() - last_time_pressure > 700) {
last_time_pressure = millis();

// Если текущее давление ниже нижнего порога - включить насос
if (pressure < pressure_low) {
if (!is_on_pump) {
digitalWrite(relay_port, HIGH);
is_on_pump = true;
}

}
// Иначе если давление выше верхнего порога - выключить насос
else if (pressure > pressure_high) {
if (is_on_pump) {
digitalWrite(relay_port, LOW);
is_on_pump = false;
}
}
}
// Иначе если давление выше верхнего порога - выключить насос
else if (pressure > pressure_high) {
if (is_on_pump) {
digitalWrite(relay_port, LOW);
is_on_pump = false;
}
}
// Serial.print(pressure_low);
// Serial.print(',');
// Serial.println(pressure_high);
if (DEBUG) {
Serial.print(pressure);
Serial.print(',');
Serial.print(pressure_low);
Serial.print(',');
Serial.print(pressure_high);
Serial.print(',');
Serial.println(is_on_pump*100);
}
}

0 comments on commit 270b93a

Please sign in to comment.