This commit is contained in:
GukSang.Jin
2026-01-30 20:09:16 +08:00
parent df14e3d16a
commit 24bbf847e0
2 changed files with 89 additions and 0 deletions

View File

@@ -1411,6 +1411,27 @@ namespace COFTester.Services
_config.SlaveId, _config.ForceProtectionRegister, 2);
parameters.ForceProtection = ConvertRegistersToFloat(forceProtRegs, 0);
// === 讀取基本測試參數(新增)===
// D370 水平測試速度
var hTestSpeedRegs = await _modbusMaster.ReadHoldingRegistersAsync(
_config.SlaveId, _config.HorizontalTestSpeedRegister, 2);
parameters.HorizontalTestSpeed = ConvertRegistersToFloat(hTestSpeedRegs, 0);
// D380 水平測試位移
var hTestDispRegs = await _modbusMaster.ReadHoldingRegistersAsync(
_config.SlaveId, _config.HorizontalTestDisplacementRegister, 2);
parameters.HorizontalTestDisplacement = ConvertRegistersToFloat(hTestDispRegs, 0);
// D330 升降測試速度
var vTestSpeedRegs = await _modbusMaster.ReadHoldingRegistersAsync(
_config.SlaveId, _config.VerticalTestSpeedRegister, 2);
parameters.VerticalTestSpeed = ConvertRegistersToFloat(vTestSpeedRegs, 0);
// D340 升降測試位移
var vTestDispRegs = await _modbusMaster.ReadHoldingRegistersAsync(
_config.SlaveId, _config.VerticalTestDisplacementRegister, 2);
parameters.VerticalTestDisplacement = ConvertRegistersToFloat(vTestDispRegs, 0);
System.Diagnostics.Debug.WriteLine($"[ModbusTCP] 所有參數讀取完成:");
System.Diagnostics.Debug.WriteLine($" === 基本測試參數 ===");
System.Diagnostics.Debug.WriteLine($" 滑塊質量: {parameters.SledMass} g");
@@ -1427,6 +1448,11 @@ namespace COFTester.Services
System.Diagnostics.Debug.WriteLine($" 水平極限: {parameters.HorizontalLimit} mm");
System.Diagnostics.Debug.WriteLine($" 拉力系數: {parameters.ForceCoefficient} N/V");
System.Diagnostics.Debug.WriteLine($" 拉力保護: {parameters.ForceProtection} N");
System.Diagnostics.Debug.WriteLine($" === 基本測試參數(新增)===");
System.Diagnostics.Debug.WriteLine($" 水平測試速度: {parameters.HorizontalTestSpeed} mm/min");
System.Diagnostics.Debug.WriteLine($" 水平測試位移: {parameters.HorizontalTestDisplacement} mm");
System.Diagnostics.Debug.WriteLine($" 升降測試速度: {parameters.VerticalTestSpeed} mm/min");
System.Diagnostics.Debug.WriteLine($" 升降測試位移: {parameters.VerticalTestDisplacement} mm");
return parameters;
}
@@ -1932,7 +1958,33 @@ namespace COFTester.Services
_config.SlaveId, _config.ForceProtectionRegister, 2);
parameters.ForceProtection = ConvertRegistersToFloat(forceProtRegs, 0);
// === 讀取基本測試參數(新增)===
// D370 水平測試速度
var hTestSpeedRegs = await _modbusMaster.ReadHoldingRegistersAsync(
_config.SlaveId, _config.HorizontalTestSpeedRegister, 2);
parameters.HorizontalTestSpeed = ConvertRegistersToFloat(hTestSpeedRegs, 0);
// D380 水平測試位移
var hTestDispRegs = await _modbusMaster.ReadHoldingRegistersAsync(
_config.SlaveId, _config.HorizontalTestDisplacementRegister, 2);
parameters.HorizontalTestDisplacement = ConvertRegistersToFloat(hTestDispRegs, 0);
// D330 升降測試速度
var vTestSpeedRegs = await _modbusMaster.ReadHoldingRegistersAsync(
_config.SlaveId, _config.VerticalTestSpeedRegister, 2);
parameters.VerticalTestSpeed = ConvertRegistersToFloat(vTestSpeedRegs, 0);
// D340 升降測試位移
var vTestDispRegs = await _modbusMaster.ReadHoldingRegistersAsync(
_config.SlaveId, _config.VerticalTestDisplacementRegister, 2);
parameters.VerticalTestDisplacement = ConvertRegistersToFloat(vTestDispRegs, 0);
System.Diagnostics.Debug.WriteLine($"[ModbusRTU] 所有參數讀取完成");
System.Diagnostics.Debug.WriteLine($" === 基本測試參數(新增)===");
System.Diagnostics.Debug.WriteLine($" 水平測試速度: {parameters.HorizontalTestSpeed} mm/min");
System.Diagnostics.Debug.WriteLine($" 水平測試位移: {parameters.HorizontalTestDisplacement} mm");
System.Diagnostics.Debug.WriteLine($" 升降測試速度: {parameters.VerticalTestSpeed} mm/min");
System.Diagnostics.Debug.WriteLine($" 升降測試位移: {parameters.VerticalTestDisplacement} mm");
return parameters;
}
@@ -2417,7 +2469,33 @@ namespace COFTester.Services
_config.SlaveId, _config.ForceProtectionRegister, 2);
parameters.ForceProtection = ConvertRegistersToFloat(forceProtRegs, 0);
// === 讀取基本測試參數(新增)===
// D370 水平測試速度
var hTestSpeedRegs = await _modbusMaster.ReadHoldingRegistersAsync(
_config.SlaveId, _config.HorizontalTestSpeedRegister, 2);
parameters.HorizontalTestSpeed = ConvertRegistersToFloat(hTestSpeedRegs, 0);
// D380 水平測試位移
var hTestDispRegs = await _modbusMaster.ReadHoldingRegistersAsync(
_config.SlaveId, _config.HorizontalTestDisplacementRegister, 2);
parameters.HorizontalTestDisplacement = ConvertRegistersToFloat(hTestDispRegs, 0);
// D330 升降測試速度
var vTestSpeedRegs = await _modbusMaster.ReadHoldingRegistersAsync(
_config.SlaveId, _config.VerticalTestSpeedRegister, 2);
parameters.VerticalTestSpeed = ConvertRegistersToFloat(vTestSpeedRegs, 0);
// D340 升降測試位移
var vTestDispRegs = await _modbusMaster.ReadHoldingRegistersAsync(
_config.SlaveId, _config.VerticalTestDisplacementRegister, 2);
parameters.VerticalTestDisplacement = ConvertRegistersToFloat(vTestDispRegs, 0);
System.Diagnostics.Debug.WriteLine($"[ModbusASCII] 所有參數讀取完成");
System.Diagnostics.Debug.WriteLine($" === 基本測試參數(新增)===");
System.Diagnostics.Debug.WriteLine($" 水平測試速度: {parameters.HorizontalTestSpeed} mm/min");
System.Diagnostics.Debug.WriteLine($" 水平測試位移: {parameters.HorizontalTestDisplacement} mm");
System.Diagnostics.Debug.WriteLine($" 升降測試速度: {parameters.VerticalTestSpeed} mm/min");
System.Diagnostics.Debug.WriteLine($" 升降測試位移: {parameters.VerticalTestDisplacement} mm");
return parameters;
}

View File

@@ -100,6 +100,12 @@ namespace COFTester.ViewModels
ConfigParams.ForceCoefficient = deviceParams.ForceCoefficient;
ConfigParams.ForceProtection = deviceParams.ForceProtection;
// 更新基本測試參數(新增)
ConfigParams.HorizontalTestSpeed = deviceParams.HorizontalTestSpeed;
ConfigParams.HorizontalTestDisplacement = deviceParams.HorizontalTestDisplacement;
ConfigParams.VerticalTestSpeed = deviceParams.VerticalTestSpeed;
ConfigParams.VerticalTestDisplacement = deviceParams.VerticalTestDisplacement;
// 通知 UI 更新
OnPropertyChanged(nameof(ConfigParams));
@@ -119,6 +125,11 @@ namespace COFTester.ViewModels
System.Diagnostics.Debug.WriteLine($" 水平極限: {deviceParams.HorizontalLimit} mm");
System.Diagnostics.Debug.WriteLine($" 拉力系數: {deviceParams.ForceCoefficient} N/V");
System.Diagnostics.Debug.WriteLine($" 拉力保護: {deviceParams.ForceProtection} N");
System.Diagnostics.Debug.WriteLine($" === 基本測試參數(新增)===");
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
{