|
@ -63,14 +63,14 @@ void DrainLiquidService::startDraining() { |
|
|
while (!thisThread.getExitFlag()) { |
|
|
while (!thisThread.getExitFlag()) { |
|
|
int32_t nowvolume = m_deviceIoControlService->getDisinfectantVolume_g(); |
|
|
int32_t nowvolume = m_deviceIoControlService->getDisinfectantVolume_g(); |
|
|
logger->info("draining remain {} g", nowvolume); |
|
|
logger->info("draining remain {} g", nowvolume); |
|
|
if (!volumeReachZeroFlag && nowvolume == 0) { |
|
|
|
|
|
|
|
|
if (!volumeReachZeroFlag && nowvolume <= 0) { |
|
|
volumeReachZeroTime = zsteady_clock().now(); |
|
|
volumeReachZeroTime = zsteady_clock().now(); |
|
|
volumeReachZeroFlag = true; |
|
|
volumeReachZeroFlag = true; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if (volumeReachZeroFlag) { |
|
|
if (volumeReachZeroFlag) { |
|
|
logger->info("stopDraining after {} s", 30 - zsteady_clock().elapsedTimeS(volumeReachZeroTime)); |
|
|
|
|
|
if (zsteady_clock().elapsedTimeS(volumeReachZeroTime) > 30) { |
|
|
|
|
|
|
|
|
logger->info("stopDraining after {} s", 8 - zsteady_clock().elapsedTimeS(volumeReachZeroTime)); |
|
|
|
|
|
if (zsteady_clock().elapsedTimeS(volumeReachZeroTime) > 8) { |
|
|
break; |
|
|
break; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|