Integrate relays, improve logging
This commit is contained in:
@@ -30,31 +30,28 @@ void tickSimulation() {
|
||||
|
||||
simulatedPressure += pressureDelta;
|
||||
lastTick = millis();
|
||||
|
||||
Serial.print("Simulated pressure: ");
|
||||
Serial.println(simulatedPressure);
|
||||
}
|
||||
}
|
||||
|
||||
void measurePressure(float &pressureValue, int pin) {
|
||||
void measurePressure(float &pressureValue) {
|
||||
if (simulating) {
|
||||
float adjusted = simulatedPressure + (random(-100, 100) / 100.0);
|
||||
adjusted *= offsetMultiplier;
|
||||
pressureValue = 0.99 * pressureValue + 0.01 * adjusted;
|
||||
} else {
|
||||
int sensorValue = analogRead(pin);
|
||||
int sensorValue = analogRead(PRESSURE_SENSOR_PIN);
|
||||
float adjusted = 0.098 * sensorValue - 16.56 + 3.58;
|
||||
pressureValue = 0.99 * pressureValue + 0.01 * adjusted;
|
||||
}
|
||||
}
|
||||
|
||||
void resamplePressure(float &pressureValue, int pin) {
|
||||
void resamplePressure(float &pressureValue) {
|
||||
if (simulating) {
|
||||
float adjusted = simulatedPressure + (random(-100, 100) / 100.0);
|
||||
adjusted *= offsetMultiplier;
|
||||
pressureValue = adjusted;
|
||||
} else {
|
||||
int sensorValue = analogRead(pin);
|
||||
int sensorValue = analogRead(PRESSURE_SENSOR_PIN);
|
||||
float adjusted = 0.098 * sensorValue - 16.56 + 3.58;
|
||||
pressureValue = adjusted;
|
||||
}
|
||||
@@ -64,11 +61,20 @@ void setSoleniod(int solenoidState) {
|
||||
if (solenoidState == SOLENOID_STOP) {
|
||||
pressureChangeRate = 0.0;
|
||||
offsetMultiplier = 1.0;
|
||||
|
||||
digitalWrite(RELAY1_PIN, HIGH);
|
||||
digitalWrite(RELAY2_PIN, HIGH);
|
||||
} else if (solenoidState == SOLENOID_INFLATE) {
|
||||
pressureChangeRate = inflatePSIPerSecond;
|
||||
offsetMultiplier = inflateOffsetMultiplier;
|
||||
|
||||
digitalWrite(RELAY1_PIN, LOW);
|
||||
digitalWrite(RELAY2_PIN, HIGH);
|
||||
} else if (solenoidState == SOLENOID_DEFLATE) {
|
||||
pressureChangeRate = -deflatePSIPerSecond;
|
||||
offsetMultiplier = deflatePSIPerSecond;
|
||||
|
||||
digitalWrite(RELAY1_PIN, HIGH);
|
||||
digitalWrite(RELAY2_PIN, LOW);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user