@@ -635,63 +635,18 @@ namespace COFTester.ViewModels
|
|||||||
OnPropertyChanged(nameof(IsConnected));
|
OnPropertyChanged(nameof(IsConnected));
|
||||||
OnPropertyChanged(nameof(ConnectionButtonText));
|
OnPropertyChanged(nameof(ConnectionButtonText));
|
||||||
|
|
||||||
// 连接成功后立即检查M31状态并读取参数
|
// 连接成功后立即检查M31状态
|
||||||
if (_daqService is ModbusServiceBase modbusService)
|
if (_daqService is ModbusServiceBase modbusService)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
// 读取M31状态
|
|
||||||
_m31Status = await modbusService.ReadTestStatusAsync();
|
_m31Status = await modbusService.ReadTestStatusAsync();
|
||||||
System.Diagnostics.Debug.WriteLine($"[ViewModel] 连接后M31状态: {(_m31Status ? "1 (测试中)" : "0 (停止)")}");
|
System.Diagnostics.Debug.WriteLine($"[ViewModel] 连接后M31状态: {(_m31Status ? "1 (测试中)" : "0 (停止)")}");
|
||||||
UpdateCanStartTest();
|
UpdateCanStartTest();
|
||||||
|
|
||||||
// 从寄存器读取参数并更新 Parameters
|
|
||||||
System.Diagnostics.Debug.WriteLine("[ViewModel] 正在从寄存器读取参数...");
|
|
||||||
var deviceParams = await modbusService.ReadManualControlParametersAsync();
|
|
||||||
|
|
||||||
if (deviceParams != null)
|
|
||||||
{
|
|
||||||
// 更新基本测试参数
|
|
||||||
Parameters.SledMass = deviceParams.SledMass;
|
|
||||||
Parameters.TestSpeed = deviceParams.TestSpeed;
|
|
||||||
Parameters.TestDuration = deviceParams.TestDuration;
|
|
||||||
Parameters.TestStroke = deviceParams.TestStroke;
|
|
||||||
Parameters.SamplingRate = deviceParams.SamplingRate;
|
|
||||||
|
|
||||||
// 更新手动控制参数
|
|
||||||
Parameters.HorizontalManualSpeed = deviceParams.HorizontalManualSpeed;
|
|
||||||
Parameters.HorizontalManualDisplacement = deviceParams.HorizontalManualDisplacement;
|
|
||||||
Parameters.VerticalManualSpeed = deviceParams.VerticalManualSpeed;
|
|
||||||
Parameters.VerticalManualDisplacement = deviceParams.VerticalManualDisplacement;
|
|
||||||
Parameters.VerticalLimit = deviceParams.VerticalLimit;
|
|
||||||
Parameters.HorizontalLimit = deviceParams.HorizontalLimit;
|
|
||||||
Parameters.ForceCoefficient = deviceParams.ForceCoefficient;
|
|
||||||
Parameters.ForceProtection = deviceParams.ForceProtection;
|
|
||||||
|
|
||||||
// 更新基本测试参数(新增)- SettingsPage 显示用
|
|
||||||
Parameters.HorizontalTestSpeed = deviceParams.HorizontalTestSpeed;
|
|
||||||
Parameters.HorizontalTestDisplacement = deviceParams.HorizontalTestDisplacement;
|
|
||||||
Parameters.VerticalTestSpeed = deviceParams.VerticalTestSpeed;
|
|
||||||
Parameters.VerticalTestDisplacement = deviceParams.VerticalTestDisplacement;
|
|
||||||
|
|
||||||
// 通知 UI 更新
|
|
||||||
OnPropertyChanged(nameof(Parameters));
|
|
||||||
|
|
||||||
System.Diagnostics.Debug.WriteLine("[ViewModel] 参数读取成功并已更新到 UI");
|
|
||||||
System.Diagnostics.Debug.WriteLine($" 水平测试速度: {deviceParams.HorizontalTestSpeed} mm/min");
|
|
||||||
System.Diagnostics.Debug.WriteLine($" 水平测试位移: {deviceParams.HorizontalTestDisplacement} mm");
|
|
||||||
System.Diagnostics.Debug.WriteLine($" 升降测试速度: {deviceParams.VerticalTestSpeed} mm/min");
|
|
||||||
System.Diagnostics.Debug.WriteLine($" 升降测试位移: {deviceParams.VerticalTestDisplacement} mm");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
System.Diagnostics.Debug.WriteLine("[ViewModel] 从寄存器读取参数失败,使用默认值");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
System.Diagnostics.Debug.WriteLine($"[ViewModel] 读取设备参数失败: {ex.Message}");
|
System.Diagnostics.Debug.WriteLine($"[ViewModel] 读取M31状态失败: {ex.Message}");
|
||||||
// 读取失败不影响连接,继续使用默认参数
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user