This commit is contained in:
GukSang.Jin
2026-06-10 16:52:15 +08:00
parent b7cf3ab0aa
commit 3a9710e6fa

View File

@@ -155,7 +155,8 @@ public sealed class MainWindowViewModel : ObservableObject
SpeedTorqueResetEnabledCoil, SpeedTorqueResetEnabledCoil,
SpeedTorqueResetDoneCoil, SpeedTorqueResetDoneCoil,
AxialResetEnabledCoil, AxialResetEnabledCoil,
AxialResetDoneCoil AxialResetDoneCoil,
NoLoadSpeedRecordCoil
]; ];
private readonly IPlcCoilService _plcCoilService; private readonly IPlcCoilService _plcCoilService;
@@ -3641,15 +3642,27 @@ public sealed class MainWindowViewModel : ObservableObject
private void FinalizeNoLoadSpeedRunIfDue() private void FinalizeNoLoadSpeedRunIfDue()
{ {
if (_activeNoLoadSpeedRun is null if (_activeNoLoadSpeedRun is null
|| !_noLoadCaptureDeadline.HasValue || !_noLoadCaptureDeadline.HasValue)
|| DateTime.Now < _noLoadCaptureDeadline.Value)
{ {
return; return;
} }
// 实际转速达到设定转速的 98%:立即结束
bool speedReached = _parameterConfig.NoLoadSpeedSetting > 0
&& _realtimeSpeed >= _parameterConfig.NoLoadSpeedSetting * 0.98;
// 转速未达标且未超时:继续等待
if (!speedReached && DateTime.Now < _noLoadCaptureDeadline.Value)
{
return;
}
// 转速已达标或已超时:结束测试
AppendLatestSample(_activeNoLoadSpeedRun); AppendLatestSample(_activeNoLoadSpeedRun);
_activeNoLoadSpeedRun.CompletedAt = DateTime.Now; _activeNoLoadSpeedRun.CompletedAt = DateTime.Now;
_activeNoLoadSpeedRun.CompletionStatus = "记录完成"; _activeNoLoadSpeedRun.CompletionStatus = speedReached
? "状态:达到系统转速,记录完成"
: "记录完成";
_activeNoLoadSpeedRun.NoLoadSpeedRpm = _noLoadSpeedRecord; _activeNoLoadSpeedRun.NoLoadSpeedRpm = _noLoadSpeedRecord;
_activeNoLoadSpeedRun.NoLoadSpeedErrorRatePercent = _noLoadSpeedErrorRate; _activeNoLoadSpeedRun.NoLoadSpeedErrorRatePercent = _noLoadSpeedErrorRate;
_completedRuns.Add(_activeNoLoadSpeedRun); _completedRuns.Add(_activeNoLoadSpeedRun);