fix(TC): 修正DataTrace中找不到PM.Temp.Inner/Middle/Outer数据的问题。

优化IoTC中的温度数据注册路径,保持和之前版本数据路径兼容。
This commit is contained in:
SL 2024-05-11 17:46:38 +08:00
parent e2625462e3
commit 0abd925c0e
1 changed files with 15 additions and 24 deletions

View File

@ -454,41 +454,32 @@ namespace Aitex.Core.RT.Device.Devices
ScOuterTempValue = SC.GetStringValue($"PM.{Module}.TempSensor.OuterTemp");
ScInnerTempValue = SC.GetStringValue($"PM.{Module}.TempSensor.InnerTemp");
ScOuterTempValue = SC.GetStringValue($"PM.{Module}.TempSensor.OuterTemp");
ScInnerTempValue = SC.GetStringValue($"PM.{Module}.TempSensor.InnerTemp");
ScMiddleTempValue = SC.GetStringValue($"PM.{Module}.TempSensor.MiddleTemp");
SC.RegisterValueChangedCallback($"PM.{Module}.TempSensor.OuterTemp", (obj) => { ScOuterTempValue = obj.ToString(); });
SC.RegisterValueChangedCallback($"PM.{Module}.TempSensor.InnerTemp", (obj) => { ScInnerTempValue = obj.ToString(); });
SC.RegisterValueChangedCallback($"PM.{Module}.TempSensor.MiddleTemp", (obj) => { ScMiddleTempValue = obj.ToString(); });
SC.RegisterValueChangedCallback($"PM.{Module}.TempSensor.OuterTemp",
(obj) => { ScOuterTempValue = obj.ToString(); });
SC.RegisterValueChangedCallback($"PM.{Module}.TempSensor.InnerTemp",
(obj) => { ScInnerTempValue = obj.ToString(); });
SC.RegisterValueChangedCallback($"PM.{Module}.TempSensor.MiddleTemp",
(obj) => { ScMiddleTempValue = obj.ToString(); });
var v1 = ScOuterTempValue.Split('.')[1];
var v2 = ScInnerTempValue.Split('.')[1];
var v3 = ScMiddleTempValue.Split('.')[1];
if (_isDBSaveTemp)//TC1中完成数据注册TC2配置的是不需要重复保存的
if (Name == "TC1")
{
if (!ScOuterTempValue.Contains("Disabled"))
{
//按照原有注册方式PM名+测温硬件名+ Outer/Inner/Middle
DATA.Subscribe($"{Module}.{ScOuterTempValue.Split('.')[1]}.Outer", () => OuterTemp);//SC存储的配置转化为Temp.AKunTemp.t3,拆分后取数组1编号即可拆分出硬件的名字
DATA.Subscribe($"{Module}.Temp.Outer", () => OuterTemp);//上层调用按照固定Outer Inner Middle
}
if (!ScInnerTempValue.Contains("Disabled"))
{
DATA.Subscribe($"{Module}.{ScInnerTempValue.Split('.')[1]}.Inner", () => InnerTemp);
DATA.Subscribe($"{Module}.Temp.Inner", () => InnerTemp);
}
if (!ScMiddleTempValue.Contains("Disabled"))
{
DATA.Subscribe($"{Module}.{ScMiddleTempValue.Split('.')[1]}.Middle", () => MiddleTemp);
DATA.Subscribe($"{Module}.Temp.Middle", () => MiddleTemp);
}
DATA.Subscribe($"{Module}.Temp.Outer", () => OuterTemp);
DATA.Subscribe($"{Module}.Temp.Inner", () => InnerTemp);
DATA.Subscribe($"{Module}.Temp.Middle", () => MiddleTemp);
}
return true;
}
#region RatioSetPoint
public bool RecipeSetRatio(string selecetedLoop, float ratio, int time)
{