Compare commits
1 Commits
a14aa0dab8
...
96b84d3124
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
96b84d3124 |
@@ -1281,25 +1281,6 @@ class MachineGroup {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Skip abort + redispatch when the demand hasn't changed beyond a
|
|
||||||
// small tolerance. PS ticks every 1 s and re-fires the same demand
|
|
||||||
// while the basin level evolves slowly; without this guard, every
|
|
||||||
// PS tick aborted in-flight pump moves before they could finish
|
|
||||||
// (move duration ~0.4 s, abort cycle 1 s, but each abort
|
|
||||||
// immediately re-issued the same setpoint, so pumps got stuck
|
|
||||||
// ramping from the same starting position to the same target
|
|
||||||
// forever). Tolerance is 0.5 % — small enough that real demand
|
|
||||||
// changes still propagate, big enough to filter PS hysteresis
|
|
||||||
// float jitter.
|
|
||||||
const prev = this._lastDemandQ;
|
|
||||||
const unchanged = Number.isFinite(prev)
|
|
||||||
&& Math.abs(demandQ - prev) < Math.max(0.5, Math.abs(prev) * 0.005);
|
|
||||||
if (unchanged) {
|
|
||||||
this.logger.debug(`Demand ${demandQ} unchanged from ${prev}; skipping abort+redispatch`);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
this._lastDemandQ = demandQ;
|
|
||||||
|
|
||||||
//abort current movements
|
//abort current movements
|
||||||
await this.abortActiveMovements("new demand received");
|
await this.abortActiveMovements("new demand received");
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user