更新
This commit is contained in:
@@ -19,6 +19,7 @@ namespace TabletTester2025
|
||||
private async void SettingsWindow_Loaded(object sender, RoutedEventArgs e)
|
||||
{
|
||||
await LoadHardnessPressureAsync();
|
||||
await LoadHardnessSpeedAsync();
|
||||
await LoadHardnessDamageThresholdAsync();
|
||||
|
||||
// 脆碎度
|
||||
@@ -69,6 +70,7 @@ namespace TabletTester2025
|
||||
};
|
||||
p.HardnessTestCount = int.Parse(HardnessCountBox.Text);
|
||||
double hardnessPressure = ParseFiniteDouble(HardnessPressureBox.Text, "加压压力");
|
||||
double hardnessSpeed = ParsePositiveDouble(HardnessSpeedBox.Text, "加压速度");
|
||||
double hardnessDamageThreshold = ParsePositiveDouble(HardnessDamageThresholdBox.Text, "硬度破损判定");
|
||||
double friabilityRpm = ParseFiniteDouble(FriabilityRpmBox.Text, "脆碎度转速");
|
||||
p.FriabilityTargetRpm = friabilityRpm;
|
||||
@@ -86,6 +88,7 @@ namespace TabletTester2025
|
||||
|
||||
ValidateParameters(p);
|
||||
await WriteHardnessPressureAsync(hardnessPressure);
|
||||
await WriteHardnessSpeedAsync(hardnessSpeed);
|
||||
await WriteHardnessDamageThresholdAsync(hardnessDamageThreshold);
|
||||
await WriteFriabilityRpmAsync(friabilityRpm);
|
||||
await WriteDisintegrationTimeAsync(disintegrationTimeMin);
|
||||
@@ -202,6 +205,38 @@ namespace TabletTester2025
|
||||
return App.PlcConfig.HardnessPressure != 0 ? App.PlcConfig.HardnessPressure : (ushort)1480;
|
||||
}
|
||||
|
||||
private async Task LoadHardnessSpeedAsync()
|
||||
{
|
||||
ushort registerAddress = ResolveHardnessSpeedRegister();
|
||||
if (registerAddress == 0)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
float value = await App.PlcService.ReadFloatAsync(registerAddress);
|
||||
if (float.IsFinite(value) && value > 0)
|
||||
HardnessSpeedBox.Text = value.ToString("0.###");
|
||||
}
|
||||
catch
|
||||
{
|
||||
HardnessSpeedBox.Text = "";
|
||||
}
|
||||
}
|
||||
|
||||
private static async Task WriteHardnessSpeedAsync(double value)
|
||||
{
|
||||
ushort registerAddress = ResolveHardnessSpeedRegister();
|
||||
if (registerAddress == 0)
|
||||
throw new InvalidOperationException("加压速度PLC寄存器地址未配置。");
|
||||
|
||||
await App.PlcService.WriteFloatAsync(registerAddress, (float)value);
|
||||
}
|
||||
|
||||
private static ushort ResolveHardnessSpeedRegister()
|
||||
{
|
||||
return App.PlcConfig.HardnessSudu != 0 ? App.PlcConfig.HardnessSudu : (ushort)300;
|
||||
}
|
||||
|
||||
private async Task LoadHardnessDamageThresholdAsync()
|
||||
{
|
||||
ushort registerAddress = ResolveHardnessDamageThresholdRegister();
|
||||
|
||||
Reference in New Issue
Block a user