|
|
@@ -15,6 +15,7 @@ using System;
|
|
|
using System.Collections;
|
|
|
using System.Collections.Generic;
|
|
|
using System.Diagnostics;
|
|
|
+using System.Threading.Tasks;
|
|
|
using System.Xml;
|
|
|
|
|
|
namespace FurnaceRT.Equipments.PMs.Devices
|
|
|
@@ -51,10 +52,7 @@ namespace FurnaceRT.Equipments.PMs.Devices
|
|
|
//var setpoint = Scale != 0 ? (float)(value * _maxScale / Scale) : value;
|
|
|
if (_isFloatAioType)
|
|
|
{
|
|
|
- if (SC.ContainsItem($"{Module}.MFC.{Name}.DelayTime") && SC.GetValue<double>($"{Module}.MFC.{Name}.DelayTime") > 0)
|
|
|
- _aoFlow.SetPulseValue((float)value, TimeSpan.FromSeconds(SC.GetValue<double>($"{Module}.MFC.{Name}.DelayTime")));
|
|
|
- else
|
|
|
- _aoFlow.FloatValue = (float)value;
|
|
|
+ _aoFlow.FloatValue = (float)value;
|
|
|
|
|
|
}
|
|
|
else
|
|
|
@@ -430,8 +428,17 @@ namespace FurnaceRT.Equipments.PMs.Devices
|
|
|
ramp = (float)_scN2Scale.DoubleValue * ramp;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
- SetPoint = setpoint;
|
|
|
+ if (SC.ContainsItem($"{Module}.MFC.{Name}.DelayTime") && SC.GetValue<double>($"{Module}.MFC.{Name}.DelayTime") > 0)
|
|
|
+ {
|
|
|
+ Task.Delay(TimeSpan.FromSeconds(SC.GetValue<double>($"{Module}.MFC.{Name}.DelayTime"))).ContinueWith(a =>
|
|
|
+ {
|
|
|
+ SetPoint = _setpoint;
|
|
|
+ });
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ SetPoint = _setpoint;
|
|
|
+ }
|
|
|
if (_aoRamp != null)
|
|
|
{
|
|
|
_aoRamp.FloatValue = ramp;
|
|
|
@@ -473,7 +480,17 @@ namespace FurnaceRT.Equipments.PMs.Devices
|
|
|
|
|
|
}
|
|
|
|
|
|
- SetPoint = setpoint;
|
|
|
+ if (SC.ContainsItem($"{Module}.MFC.{Name}.DelayTime") && SC.GetValue<double>($"{Module}.MFC.{Name}.DelayTime") > 0)
|
|
|
+ {
|
|
|
+ Task.Delay(TimeSpan.FromSeconds(SC.GetValue<double>($"{Module}.MFC.{Name}.DelayTime"))).ContinueWith(a =>
|
|
|
+ {
|
|
|
+ SetPoint = setpoint;
|
|
|
+ });
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ SetPoint = setpoint;
|
|
|
+ }
|
|
|
_ramping = ramp;
|
|
|
if (_aoRamp != null)
|
|
|
_aoRamp.FloatValue = ramp;
|
|
|
@@ -504,7 +521,19 @@ namespace FurnaceRT.Equipments.PMs.Devices
|
|
|
float ramp = 0;
|
|
|
if (paras.Length > 1)
|
|
|
float.TryParse(paras[1].ToString(), out ramp);
|
|
|
- _setpoint = setpoint;
|
|
|
+
|
|
|
+
|
|
|
+ if (SC.ContainsItem($"{Module}.MFC.{Name}.DelayTime") && SC.GetValue<double>($"{Module}.MFC.{Name}.DelayTime") > 0)
|
|
|
+ {
|
|
|
+ Task.Delay(TimeSpan.FromSeconds(SC.GetValue<double>($"{Module}.MFC.{Name}.DelayTime"))).ContinueWith(a =>
|
|
|
+ {
|
|
|
+ _setpoint = setpoint;
|
|
|
+ });
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ _setpoint = setpoint;
|
|
|
+ }
|
|
|
_ramping = ramp;
|
|
|
if (_aoRamp != null)
|
|
|
_aoRamp.FloatValue = ramp;
|