Update from svn.

This commit is contained in:
DESKTOP-GPE37UV\THINKAPD 2023-03-29 10:28:55 +08:00
parent e1ed8596d5
commit 9162745567
32 changed files with 942 additions and 581 deletions

View File

@ -18,6 +18,7 @@ using System.Data;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;
using System.Threading.Tasks;
using System.Windows;
@ -481,7 +482,6 @@ namespace MECF.Framework.UI.Client.CenterViews.DataLogs.DataHistory
return false;
}
/// <summary>
/// 根据DataLog界面左侧项目树中选择的项目查询数据
/// </summary>
@ -503,46 +503,28 @@ namespace MECF.Framework.UI.Client.CenterViews.DataLogs.DataHistory
if (module.ChildNodes.FirstOrDefault(x => (bool)x.HasTerminalSelected) == null)
continue;
string tblNameWithoutDay;
if (module.Name.StartsWith("IO"))
if (module.ToString() != "IO")
{
tblNameWithoutDay = $"{module.Name}";
}
else if (module.Name.StartsWith("PM"))
{
tblNameWithoutDay = $"{module.Name}";
// 如果不是IO节点则根节点名即为数据库名=
var dt = SearchSingleDbTable(module, dateRange, cancellation, progressReporter);
if (dt != null)
ds.Tables.Add(dt);
}
else
{
tblNameWithoutDay = $"System";
}
// 如果节点名是IO则使用其下一级节点查询因为数据具体保存在哪个表中需要用下一级节点判断。
var subNodes = module.ChildNodes;
if (module.Name.StartsWith("IO"))
{
foreach (var subIo in module.ChildNodes)
foreach (var subNode in subNodes)
{
if (!subIo.HasTerminalSelected)
if (subNode.ChildNodes.FirstOrDefault(x => (bool)x.HasTerminalSelected) == null)
continue;
tblNameWithoutDay = subIo.Name;
// 如果不是IO节点则根节点名即为数据库名=
var dt = SearchSingleDbTable(tblNameWithoutDay, subIo, dateRange, cancellation, progressReporter);
var dt = SearchSingleDbTable(subNode, dateRange, cancellation, progressReporter);
if (dt != null)
ds.Tables.Add(dt);
}
}
else
{
if (module.ChildNodes.FirstOrDefault(x => (bool)x.HasTerminalSelected) == null)
continue;
var dt = SearchSingleDbTable(tblNameWithoutDay, module, dateRange, cancellation,
progressReporter);
if (dt != null)
ds.Tables.Add(dt);
}
}
}
@ -557,7 +539,7 @@ namespace MECF.Framework.UI.Client.CenterViews.DataLogs.DataHistory
/// <param name="cancellation"></param>
/// <param name="progressReporter"></param>
/// <returns></returns>
private static DataTable SearchSingleDbTable(string tableName, TreeNode module, DateRangeHelper dateRange,
private static DataTable SearchSingleDbTable(TreeNode module, DateRangeHelper dateRange,
CancellationTokenSource cancellation = null,
IProgress<ProgressUpdatingEventArgs> progressReporter = null)
{
@ -570,27 +552,53 @@ namespace MECF.Framework.UI.Client.CenterViews.DataLogs.DataHistory
var ts = dateRange.Diff;
for (var day = 0; day <= ts.Days; day++)
{
var tblName = $"{dateRange.Start.AddDays(day):yyyyMMdd}.{tableName}";
var tblNameDatePart = $"{dateRange.Start.AddDays(day):yyyyMMdd}";
var tblName = "";
var m = Regex.Match(module.FullName, @"^IO.(\S+)$");
// 如果节点名称以IO起头先检查有没有"IO."开头的表,
// 如果没有则使用PMx表查询。
if (m.Success)
{
tblName = $"{tblNameDatePart}.{module}";
if (CheckTableExists(tblName) == false) // 检查数据表是否存在,不存在则换名字查询
{
LOG.Error($"{tblName} does not exist in database.");
// 更换表名尝试。
tblName = $"{tblNameDatePart}.{m.Groups[1].Value}";
if (CheckTableExists(tblName) == false)
{
LOG.Error($"{tblName} does not exist in database.");
break;
}
}
}
else
{
tblName = $"{tblNameDatePart}.{module}";
if (CheckTableExists(tblName) == false)
{
LOG.Error($"{tblName} does not exist in database.");
break;
}
}
// 检查表名是否存在否则SQL执行出错。
if (CheckTableExists(tblName))
sql.Append("select \"time\" AS InternalTimeStamp");
var selectedParams = module.Flatten(true)
.Where(x => x.IsSelected == true);
// 添加待查询的列
foreach (var item in selectedParams)
{
sql.Append("select \"time\" AS InternalTimeStamp");
var selectedParams = module.Flatten(true)
.Where(x => x.IsSelected == true);
// 添加待查询的列
foreach (var item in selectedParams)
{
sql.Append("," + $"\"{item}\"");
}
sql.Append($" from \"{tblName}\" ");
if (day < ts.Days)
sql.Append(" UNION ");
sql.Append("," + $"\"{item}\"");
}
sql.Append($" from \"{tblName}\" ");
if (day < ts.Days)
sql.Append(" UNION ");
}
// 所有表名不可用,可能是日期范围错误

View File

@ -233,6 +233,8 @@ namespace MECF.Framework.UI.Client.CenterViews.Maitenances.IO3
bool value = true;
if (value is T)
{
if (item[i].Description.Contains("Visibility.Hidden"))
continue;
da.Add(new IOItem<T>()
{
Index = item[i].Index,
@ -258,6 +260,8 @@ namespace MECF.Framework.UI.Client.CenterViews.Maitenances.IO3
bool value = true;
if (value is T)
{
if (item[i].Description.Contains("Visibility.Hidden"))
continue;
da.Add(new IOItem<T>()
{
Index = item[i].Index,
@ -281,6 +285,8 @@ namespace MECF.Framework.UI.Client.CenterViews.Maitenances.IO3
List<NotifiableIoItem> item = (List<NotifiableIoItem>)diList;
for (int i = 0; i < item.Count; i++)
{
if (item[i].Description.Contains("Visibility.Hidden"))
continue;
da.Add(new IOItem<T>()
{
Index = item[i].Index,
@ -313,6 +319,8 @@ namespace MECF.Framework.UI.Client.CenterViews.Maitenances.IO3
for (int i = 0; i < item.Count; i++)
{
{
if (item[i].Description.Contains("Visibility.Hidden"))
continue;
da.Add(new AOItemFloat()
{
Index = item[i].Index,

View File

@ -166,6 +166,7 @@ namespace Mainframe.Buffers
{
//Error
AnyStateTransition(MSG.Error, FsmOnError, STATE.Error);
AnyStateTransition(FSM_MSG.ALARM, FsmOnError, STATE.Error);
Transition(STATE.Error, MSG.Reset, FsmReset, STATE.Idle);
EnterExitTransition<STATE, FSM_MSG>(STATE.Error, FsmEnterError, FSM_MSG.NONE, FsmExitError);
@ -231,6 +232,11 @@ namespace Mainframe.Buffers
private bool FsmReset(object[] param)
{
if (FsmState == (int)STATE.Error)
{
EV.ClearAlarmEvent();
}
if (!_isInit)
{
PostMsg(MSG.ToInit);

View File

@ -36,24 +36,40 @@
</WcfPlcs>
<IoSensors>
<IoSensor id="TMLidClosed" module="TM" display="" schematicId="" unit="" di="DI_TMLidClosed" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="LLLidClosed" module="TM" display="" schematicId="" unit="" di="DI_LLLidClosed" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="BufferLidClosed" module="TM" display="" schematicId="" unit="" di="DI_BufferLidClosed" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="PreHeatStationLidClosed" module="TM" display="" schematicId="" unit="" di="DI_PreHeatStationLidClosed" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="ForelineBasePressureReady" module="TM" display="" schematicId="" unit="" di="DI_ForelineBasePressureReady" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="LLDoorClosedFB" module="TM" display="" schematicId="" unit="" di="DI_LLDoorClosed" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="LLDoorOpenFB" module="TM" display="" schematicId="" unit="" di="DI_LLDoorOpened" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="PM1DoorClosed" module="TM" display="" schematicId="" unit="" di="DI_ReactorADoorClosed" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="PM1DoorOpenFB" module="TM" display="" schematicId="" unit="" di="DI_ReactorADoorOpened" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="PM2DoorClosedFB" module="TM" display="" schematicId="" unit="" di="DI_ReactorBDoorClosed" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="LoaderLidLocked" module="TM" display="" schematicId="" unit="" di="DI_LoaderLidLocked" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="LoaderLidUnLocked" module="TM" display="" schematicId="" unit="" di="DI_LoaderLidUnLocked" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="PreHeatDoorClosed" module="TM" display="" schematicId="" unit="" di="DI_PreHeatStationDoorClosed" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="LLWaferPresence" module="TM" display="" schematicId="" unit="" di="DI_LLWaferPresence" textOutTrigValue="true" warningText="" alarmText="" />
<IoSensor id="BufferWaferPresence" module="TM" display="" schematicId="" unit="" di="DI_BufferWaferPresence" textOutTrigValue="true" warningText="" alarmText="" />
</IoSensors>
<IoSensor id="LLDoorClosedFB" module="TM" display="" schematicId="" unit="" di="DI_LLDoorClosed" textOutTrigValue="true" infoText ="Information1 Load Lock Door Opened [TDI-0]" warningText="" alarmText=""/>
<IoSensor id="LLDoorOpenFB" module="TM" display="" schematicId="" unit="" di="DI_LLDoorOpened" textOutTrigValue="true" infoText ="Information2 Load Lock Door Closed [TDI-1]" warningText="" alarmText=""/>
<IoSensor id="PreHeatDoorClosed" module="TM" display="" schematicId="" unit="" di="DI_PreHeatStationDoorClosed" textOutTrigValue="true" infoText ="Information3 PreHeat Station Door Opened [TDI-2]" warningText="" alarmText=""/>
<IoSensor id="PreHeatStationDoorOpened" module="TM" display="" schematicId="" unit="" di="DI_PreHeatStationDoorOpened" textOutTrigValue="true" infoText ="Information4 PreHeat Station Door Closed [TDI-3]" warningText="" alarmText=""/>
<IoSensor id="ReactorADoorClosed" module="TM" display="" schematicId="" unit="" di="DI_ReactorADoorClosed" textOutTrigValue="true" infoText ="Information5 ReactorA.Door.Opened [TDI-4]" warningText="" alarmText=""/>
<IoSensor id="ReactorADoorOpened" module="TM" display="" schematicId="" unit="" di="DI_ReactorADoorOpened" textOutTrigValue="true" infoText ="Information6 ReactorA.Door.Closed [TDI-5]" warningText="" alarmText=""/>
<IoSensor id="ReactorBDoorClosed" module="TM" display="" schematicId="" unit="" di="DI_ReactorBDoorClosed" textOutTrigValue="true" infoText ="Information7 ReactorB.Door.Opened [TDI-6]" warningText="" alarmText=""/>
<IoSensor id="DReactorBDoorOpened" module="TM" display="" schematicId="" unit="" di="DI_ReactorBDoorOpened" textOutTrigValue="true" infoText ="Information8 ReactorB.Door.Closed [TDI-7]" warningText="" alarmText=""/>
<IoSensor id="TMLidClosed" module="TM" display="" schematicId="" unit="" di="DI_TMLidClosed" textOutTrigValue="false" infoText="" warningText="" alarmText="Alarm1 TM Lid Opened [TDI-12]"/>
<IoSensor id="LLLidClosed" module="TM" display="" schematicId="" unit="" di="DI_LLLidClosed" textOutTrigValue="false" infoText="" warningText="" alarmText="Alarm2 Load Lock Lid Opened [TDI-13]"/>
<IoSensor id="BufferLidClosed" module="TM" display="" schematicId="" unit="" di="DI_BufferLidClosed" infoText="" textOutTrigValue="false" warningText="" alarmText="Alarm3 Buffer Lid Opened [TDI-14]"/>
<IoSensor id="PreHeatStationLidClosed" module="TM" display="" schematicId="" unit="" di="DI_PreHeatStationLidClosed" infoText="" textOutTrigValue="true" warningText="" alarmText="Alarm4 PreHeat Station Lid Opened [TDI-15]"/>
<IoSensor id="TMatATM" module="TM" display="" schematicId="" unit="" di="DI_TMatATM" textOutTrigValue="true" infoText ="Information9 TM at ATM [TDI-16]" warningText="" alarmText=""/>
<IoSensor id="LoadLockAtATM" module="TM" display="" schematicId="" unit="" di="DI_LoadLockAtATM" textOutTrigValue="true" infoText ="Information10 Load Lock At ATM [TDI-17]" warningText="" alarmText=""/>
<IoSensor id="TMUnderVac" module="TM" display="" schematicId="" unit="" di="DI_TMUnderVac" textOutTrigValue="true" infoText ="Information11 TM Under Vac [TDI-18]" warningText="" alarmText=""/>
<IoSensor id="LoadLockUnderVAC" module="TM" display="" schematicId="" unit="" di="DI_LoadLockUnderVAC" textOutTrigValue="true" infoText ="Information12 Load Lock Under VAC [TDI-19]" warningText="" alarmText=""/>
<IoSensor id="DI_RobotOnBackPos" module="TM" display="" schematicId="" unit="" di="DI_RobotOnBackPos" textOutTrigValue="true" infoText ="Information13 Robot On Back Pos [TDI-31]" warningText="" alarmText=""/>
<IoSensor id="ReactorAVACSW" module="TM" display="" schematicId="" unit="" di="DI_ReactorAVACSW" textOutTrigValue="true" infoText ="Information14 ReactorA VAC [TDI-32]" warningText="" alarmText=""/>
<IoSensor id="ReactorAATMSW" module="TM" display="" schematicId="" unit="" di="DI_ReactorAATMSW" textOutTrigValue="true" infoText ="Information15 ReactorA ATM [TDI-33]" warningText="" alarmText=""/>
<IoSensor id="ReactorBVACSW" module="TM" display="" schematicId="" unit="" di="DI_ReactorBVACSW" textOutTrigValue="true" infoText ="Information16 ReactorB VAC [TDI-34]" warningText="" alarmText=""/>
<IoSensor id="ReactorBATMSW" module="TM" display="" schematicId="" unit="" di="DI_ReactorBATMSW" textOutTrigValue="true" infoText ="Information17 ReactorB ATM [TDI-35]" warningText="" alarmText=""/>
<IoSensor id="TMFastRoughingClosed" module="TM" display="" schematicId="" unit="" di="DI_TMFastRoughingClosed" textOutTrigValue="true" infoText ="Information18 TM Fast Roughing Closed [TDI-40]" warningText="" alarmText=""/>
<IoSensor id="LLFastRoughingClosed" module="TM" display="" schematicId="" unit="" di="DI_LLFastRoughingClosed" textOutTrigValue="true" infoText ="Information19 LoadLockFastRoughing.Closed [TDI-41]" warningText="" alarmText=""/>
<IoSensor id="ForelineBasePressureReady" module="TM" display="" schematicId="" unit="" di="DI_ForelineBasePressureReady" textOutTrigValue="true" infoText ="Information20 Foreline Base Pressure Ready [TDI-42]" warningText="" alarmText=""/>
<IoSensor id="DryPumpAlarm" module="TM" display="" schematicId="" unit="" di="DI_DryPumpAlarm" textOutTrigValue="false" infoText ="" warningText="" alarmText="Alarm5 Dry Pump Alarm [TDI-43]"/>
<IoSensor id="DI_DryPumpRuning" module="TM" display="" schematicId="" unit="" di="DI_DryPumpRuning" textOutTrigValue="true" infoText ="Information21 Dry Pump Not Runing [TDI-44]" warningText="" alarmText=""/>
<IoSensor id="LLWaferPresence" module="TM" display="" schematicId="" unit="" di="DI_LLWaferPresence" textOutTrigValue="true" infoText="Information22 LoadLockWafer.Presence [TDI-45]" warningText="" alarmText="" />
<IoSensor id="BufferWaferPresence" module="TM" display="" schematicId="" unit="" di="DI_BufferWaferPresence" textOutTrigValue="true" infoText="Information23 BufferWafer.Presence [TDI-46]" warningText="" alarmText="" />
<IoSensor id="DI_DryPumpWarning" module="TM" display="" schematicId="" unit="" di="DI_DryPumpWarning" textOutTrigValue="true" infoText ="" warningText="Waring1 Dry Pump Warning [TDI-49]" alarmText=""/>
<IoSensor id="LLTemp" module="TM" display="" schematicId="" unit="" ai="AI_LLTemp" textOutTrigValue="true" infoText ="" warningText="" alarmText="Alarm6 LoadLock Temp High [TAI-6]"/>
<IoSensor id="BufferTemp" module="TM" display="" schematicId="" unit="" ai="AI_BufferTemp" textOutTrigValue="true" infoText ="" warningText="" alarmText="Alarm7 Buffer Temp High [TAI-7]"/>
</IoSensors>
<IoPumps classType="Mainframe.Devices.IoPump" assembly="Mainframe">
<IoPump id="TMPump" module="TM" display="Pump1" schematicId="TMPump" unit="" diRunning="DI_DryPumpRuning" diAlarm="DI_DryPumpAlarm" diWarning="DI_DryPumpWarning"/>

View File

@ -19,12 +19,12 @@
<DI_ITEM Index="18" Name="DI_TMUnderVac" BufferOffset="18" Addr="18" Description=""/>
<DI_ITEM Index="19" Name="DI_LoadLockUnderVAC" BufferOffset="19" Addr="19" Description=""/>
<DI_ITEM Index="20" Name="DI_CDAPressureSWReady" BufferOffset="20" Addr="20" Description=""/>
<DI_ITEM Index="21" Name="DI_WaterFlowSWReady" BufferOffset="21" Addr="21" Description=""/>
<DI_ITEM Index="22" Name="DI_ArPressureSWReady" BufferOffset="22" Addr="22" Description=""/>
<DI_ITEM Index="23" Name="DI_VacRobotNotExtendToReactorA" BufferOffset="23" Addr="23" Description=""/>
<DI_ITEM Index="24" Name="DI_VacRobotNotExtendToReactorB" BufferOffset="24" Addr="24" Description=""/>
<DI_ITEM Index="27" Name="DI_VacRobotNotExtendToPreHeaterStation" BufferOffset="27" Addr="27" Description=""/>
<DI_ITEM Index="28" Name="DI_VacRobotNotExtendToLoadLock" BufferOffset="28" Addr="28" Description=""/>
<DI_ITEM Index="21" Name="DI_WaterFlowSWReady" BufferOffset="21" Addr="21" Description="Visibility.Hidden"/>
<DI_ITEM Index="22" Name="DI_ArPressureSWReady" BufferOffset="22" Addr="22" Description="Visibility.Hidden"/>
<DI_ITEM Index="23" Name="DI_VacRobotNotExtendToReactorA" BufferOffset="23" Addr="23" Description="Visibility.Hidden"/>
<DI_ITEM Index="24" Name="DI_VacRobotNotExtendToReactorB" BufferOffset="24" Addr="24" Description="Visibility.Hidden"/>
<DI_ITEM Index="27" Name="DI_VacRobotNotExtendToPreHeaterStation" BufferOffset="27" Addr="27" Description="Visibility.Hidden"/>
<DI_ITEM Index="28" Name="DI_VacRobotNotExtendToLoadLock" BufferOffset="28" Addr="28" Description="Visibility.Hidden"/>
<DI_ITEM Index="31" Name="DI_RobotOnBackPos" BufferOffset="31" Addr="31" Description=""/>
<DI_ITEM Index="32" Name="DI_ReactorAVACSW" BufferOffset="32" Addr="32" Description=""/>
<DI_ITEM Index="33" Name="DI_ReactorAATMSW " BufferOffset="33" Addr="33" Description=""/>
@ -119,7 +119,7 @@
<DO_ITEM Index="64" Name="DO_LLLeakCheckRoutineRunning" BufferOffset="64" Addr="64" Description=""/>
<DO_ITEM Index="65" Name="DO_LLPumpDownRoutineRunning" BufferOffset="65" Addr="65" Description=""/>
<DO_ITEM Index="66" Name="DO_LLVentUpRoutineRunning" BufferOffset="66" Addr="66" Description=""/>
<DO_ITEM Index="67" Name="DO_PM1LidClosed" BufferOffset="67" Addr="67" Description=""/>
<DO_ITEM Index="67" Name="DO_PM1LidClosed" BufferOffset="67" Addr="67" Description="Visibility.Hidden"/>
</Dig_Out>

View File

@ -209,6 +209,7 @@ namespace Mainframe.LLs
{
//Error
AnyStateTransition(MSG.Error, FsmOnError, STATE.Error);
AnyStateTransition(FSM_MSG.ALARM, FsmOnError, STATE.Error);
Transition(STATE.Error, MSG.Reset, FsmReset, STATE.Idle);
EnterExitTransition<STATE, FSM_MSG>(STATE.Error, FsmEnterError, FSM_MSG.NONE, FsmExitError);
@ -229,9 +230,9 @@ namespace Mainframe.LLs
Transition(STATE.PrepareTransfer, FSM_MSG.TIMER, FsmMonitorTask, STATE.Idle);
Transition(STATE.PrepareTransfer, MSG.Abort, FsmAbortTask, STATE.Idle);
//Online
Transition(STATE.Idle, MSG.SetOnline, FsmStartSetOnline, STATE.Idle);
Transition(STATE.Idle, MSG.SetOffline, FsmStartSetOffline, STATE.Idle);
////Online
//Transition(STATE.Idle, MSG.SetOnline, FsmStartSetOnline, STATE.Idle);
//Transition(STATE.Idle, MSG.SetOffline, FsmStartSetOffline, STATE.Idle);
//Pump
Transition(STATE.Idle, MSG.Pump, FsmStartPump, STATE.Pump);
@ -321,8 +322,8 @@ namespace Mainframe.LLs
return CheckToPostMessage((int)MSG.Abort);
});
OP.Subscribe($"{Module}.SetOnline", (string cmd, object[] args) => CheckToPostMessage((int)MSG.SetOnline));
OP.Subscribe($"{Module}.SetOffline", (string cmd, object[] args) => CheckToPostMessage((int)MSG.SetOffline));
OP.Subscribe($"{Module}.SetOnline", (string cmd, object[] args) => PutOnline());
OP.Subscribe($"{Module}.SetOffline", (string cmd, object[] args) => PutOffline());
}
private void InitData()
@ -391,6 +392,11 @@ namespace Mainframe.LLs
private bool FsmReset(object[] param)
{
if (FsmState == (int)STATE.Error)
{
EV.ClearAlarmEvent();
}
if (!_isInit)
{
PostMsg(MSG.ToInit);
@ -718,14 +724,31 @@ namespace Mainframe.LLs
return true;
}
public void InvokeOffline()
private bool PutOnline()
{
PostMsg((int)MSG.SetOffline);
IsOnline = true;
return true;
}
public void InvokeOnline()
private bool PutOffline()
{
PostMsg((int)MSG.SetOnline);
IsOnline = false;
return true;
}
public override void InvokeOffline()
{
PutOffline();
}
public override void InvokeOnline()
{
PutOnline();
}
public override bool CheckLidClose()
{
return _llDevice.CheckLidClosed();
}
}
}

View File

@ -51,6 +51,11 @@ namespace Mainframe.LLs
public abstract int InvokePump();
public abstract int InvokePurge();
public abstract void InvokeOnline();
public abstract void InvokeOffline();
public abstract bool CheckAcked(int entityTaskToken);
public abstract bool CheckLidClose();
}
}

View File

@ -284,6 +284,7 @@ namespace Mainframe.LLs
_trigNoWafer.RST = true;
}
if (_trigNoWafer.Q)
{
if (WaferManager.Instance.CheckHasWafer(ModuleName.LoadLock, 0))

View File

@ -133,6 +133,7 @@ namespace Mainframe.PreHeats
{
//Error
AnyStateTransition(MSG.Error, FsmOnError, STATE.Error);
AnyStateTransition(FSM_MSG.ALARM, FsmOnError, STATE.Error);
Transition(STATE.Error, MSG.Reset, FsmReset, STATE.Idle);
EnterExitTransition<STATE, FSM_MSG>(STATE.Error, FsmEnterError, FSM_MSG.NONE, FsmExitError);
@ -194,6 +195,11 @@ namespace Mainframe.PreHeats
private bool FsmReset(object[] param)
{
if (FsmState == (int)STATE.Error)
{
EV.ClearAlarmEvent();
}
if (!_isInit)
{
PostMsg(MSG.ToInit);

View File

@ -165,20 +165,6 @@ namespace Mainframe.TMs
{
get
{
int count = 0;
var alarms = EV.GetAlarmEvent();
foreach (var alarm in alarms)
{
if (alarm.Level == EventLevel.Alarm && (alarm.Source == Name || alarm.Source == "System"))
count++;
}
_alarmTrig.CLK = count > 0;
if (_alarmTrig.Q)
{
InvokeError();
}
return FsmState == (int)STATE.Error;
}
}
@ -380,6 +366,7 @@ namespace Mainframe.TMs
{
//Error
AnyStateTransition(MSG.Error, FsmOnError, STATE.Error);
AnyStateTransition(FSM_MSG.ALARM, FsmOnError, STATE.Error);
Transition(STATE.Error, MSG.Reset, FsmReset, STATE.Idle);
EnterExitTransition<STATE, FSM_MSG>(STATE.Error, FsmEnterError, FSM_MSG.NONE, FsmExitError);
@ -696,7 +683,11 @@ namespace Mainframe.TMs
private bool FsmReset(object[] param)
{
EV.ClearAlarmEvent();
if (FsmState == (int)STATE.Error)
{
EV.ClearAlarmEvent();
}
if (!_isInit)
{
PostMsg(MSG.ToInit);

View File

@ -245,149 +245,187 @@
</DoSensors>
<IoSensors classType="SicPM.Devices.IoSensor" assembly="SicPM">
<IoSensor id="SensorPMATMSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PMATMSW" infoText="Information1 PM At ATM [DI-4]" warningText="" alarmText=""/>
<IoSensor id="SensorChamAtSafeProcessPressSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamAtSafeProcessPressSW" infoText="Information2 Chamber At Safe Process Press [DI-5]" warningText="" alarmText=""/>
<IoSensor id="SensorDORPressATMSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_DORPressATMSW" infoText="Information3 DOR Press ATM [DI-7]" warningText ="" alarmText=""/>
<IoSensor id="SensorHeaterTempBelow900CSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_HeaterTempBelow900CSW" infoText="Information4 Heater Temp Below 900C [DI-11]" warningText="" alarmText=""/>
<IoSensor id="SensorConfinementRingUp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ConfinementRingUp" infoText="Information5 Confinement Ring At Up Position [DI-12]" warningText="" alarmText=""/>
<IoSensor id="SensorSusceptorAtSafeSpeed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SusceptorAtSafeSpeed" infoText="Information6 Susceptor At Safe Speed [DI-13]" warningText="" alarmText=""/>
<IoSensor id="SensorTMN2FlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_TMN2FlowSW" infoText="Information7 TM N2 Flow Abnormity [DI-34]" warningText ="" alarmText=""/>
<IoSensor id="SensorChamLidPushButtonLocal" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamLidPushButtonLocal" infoText="Information8 Chamer Lid Push Button On Local Mode [DI-49]" warningText="" alarmText=""/>
<IoSensor id="SensorConfinementRingDown" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ConfinementRingDown" infoText="Information9 Confinement Ring At Down position [DI-50]" warningText="" alarmText=""/>
<IoSensor id="SensorChamMoveBodyUp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ChamMoveBodyUp" infoText="Information10 Cham Move Body Up [DI-96]" warningText="" alarmText =""/>
<IoSensor id="SensorChamMoveBodyUpLatchFW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ChamMoveBodyUpLatchFW" infoText="Information11 Cham Move Body Up LatchFW [DI-97]" warningText="" alarmText =""/>
<IoSensor id="SensorChamMoveBodyDown" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ChamMoveBodyDown" infoText="Information12 Cham Move Body Down [DI-98]" warningText="" alarmText =""/>
<IoSensor id="SensorChamMoveBodyFront" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ChamMoveBodyFront" infoText="Information13 Cham Move Body Front [DI-99]" warningText="" alarmText =""/>
<IoSensor id="SensorChamMoveBodyEnd" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ChamMoveBodyEnd" infoText="Information14 Cham Move Body End [DI-100]" warningText="" alarmText =""/>
<IoSensor id="SensorChamMoveBodyEndLatchBW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ChamMoveBodyEndLatchBW" infoText="Information15 Cham Move Body End LatchBW [DI-101]" warningText="" alarmText =""/>
<IoSensor id="SensorSHGasConnectorLoosen" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SHGasConnectorLoosen" infoText="Information16 SH Gas Connector Loosen [DI-102]" warningText="" alarmText =""/>
<IoSensor id="SensorSHGasConnectorTighten" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SHGasConnectorTighten" infoText="Information17 SH Gas Connector Tighten [DI-103]" warningText="" alarmText =""/>
<IoSensor id="SensorSHLidLoosen1" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SHLidLoosen1" infoText="Information18 SH Lid Loosen [DI-104]" warningText="" alarmText =""/>
<IoSensor id="SensorSHLidTighten1" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SHLidTighten1" infoText="Information19 SH Lid Tighten [DI-105]" warningText="" alarmText =""/>
<IoSensor id="SensorSHLidSwingLock" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SHLidSwingLock" infoText="Information20 SH Lid Swing Lock [DI-107]" warningText="" alarmText =""/>
<IoSensor id="SensorSHLidSwingUnlock" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SHLidSwingUnlock" infoText="Information21 SH Lid Swing Unlock [DI-108]" warningText="" alarmText =""/>
<IoSensor id="SensorMiddleLidLoosen1" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MiddleLidLoosen1" infoText="Information22 Middle Lid Loosen [DI-118]" warningText="" alarmText =""/>
<IoSensor id="SensorMiddleLidTighten1" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MiddleLidTighten1" infoText="Information23 Middle Lid Tighten [DI-119]" warningText="" alarmText =""/>
<IoSensor id="SensorMiddleLidSwingLock" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MiddleLidSwingLock" infoText="Information24 Middle Lid Swing Lock [DI-121]" warningText="" alarmText =""/>
<IoSensor id="SensorMiddleLidSwingUnlock" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MiddleLidSwingUnlock" infoText="Information25 Middle Lid Swing Unlock [DI-122]" warningText="" alarmText =""/>
<IoSensor id="SensorLocalChamMoveBodyUpSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_LocalChamMoveBodyUpSW" infoText="Information26 Cham Move Body Latch Local [DI-123]" warningText="" alarmText =""/>
<IoSensor id="SensorServoReady" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ServoReady" infoText="Information27 Servo Not Ready [DI-288]" warningText="" alarmText =""/>
<IoSensor id="SensorPSUInnerTempLAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSUInnerTempLAlarm" infoText="Information28 PSU Inner Temp Low [DI-308]" warningText="" alarmText =""/>
<IoSensor id="SensorPSUMiddleTempLAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSUMiddleTempLAlarm" infoText="IInformation29 PSU Middle Temp Low [DI-309]" warningText="" alarmText =""/>
<IoSensor id="SensorPSUOuterTempLAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSUOuterTempLAlarm" infoText="Information30 PSU Outer Temp Low [DI-310]" warningText="" alarmText =""/>
<IoSensor id="SensorPMATMSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PMATMSW" infoText ="Information2 PM At ATM [DI-4]" warningText="" alarmText=""/>
<IoSensor id="SensorChamAtSafeProcessPressSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ChamAtSafeProcessPressSW" infoText ="Information3 Chamber At Safe Process Press [DI-5]" warningText="" alarmText=""/>
<IoSensor id="SensorHeaterTempBelow900CSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_HeaterTempBelow900CSW" infoText ="Information4 Heater Temp Below 900C [DI-11]" warningText="" alarmText=""/>
<IoSensor id="SensorConfinementRingUp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ConfinementRingUp" infoText ="Information5 Confinement Ring At Up Position [DI-12]" warningText="" alarmText=""/>
<IoSensor id="SensorSusceptorAtSafeSpeed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SusceptorAtSafeSpeed" infoText ="Information6 Susceptor At Safe Speed [DI-13]" warningText="" alarmText=""/>
<IoSensor id="SensorChamLidPushButtonLocal" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ChamLidPushButtonLocal" infoText ="Information7 Chamer Lid Push Button On Local Mode [DI-49]" warningText="" alarmText=""/>
<IoSensor id="SensorConfinementRingDown" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ConfinementRingDown" infoText ="Information8 Confinement Ring At Down position [DI-50]" warningText="" alarmText=""/>
<IoSensor id="SensorChamCabDoorClosed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamCabDoorClosed" infoText="" warningText ="Warning1 Chamber Cab Door Not Closed [DI-3]" alarmText=""/>
<IoSensor id="SensorDORPressATMSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_DORPressATMSW" infoText="" warningText ="Warning2 DOR Press ATM [DI-7]" alarmText=""/>
<IoSensor id="SensorGBDoorClosed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_GBDoorClosed" infoText="" warningText ="Warning3 Gas Box Door Not Closed [DI-33]" alarmText=""/>
<IoSensor id="SensorTMN2FlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_TMN2FlowSW" infoText="" warningText ="Warning4 TM Pump N2 Flow Error [DI-34]" alarmText=""/>
<IoSensor id="SensorReactorWaterLeakSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ReactorWaterLeakSW" infoText="" warningText ="Warning5 Reactor Water Leak [DI-48]" alarmText=""/>
<IoSensor id="SensorTMFlow1SW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_TMFlow1SW" infoText="" warningText ="Warning6 TM Cooling Water Low Flow -U13 [DI-51]" alarmText=""/>
<IoSensor id="SensorGBWaterLeakSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_GBWaterLeakSW" infoText="" warningText ="Warning7 Gas Box Water Leak [DI-60]" alarmText=""/>
<IoSensor id="SensorDryPump1Warning" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_DryPump1Warning" infoText="" warningText ="Warning8 DryPump1 Warning [DI-67]" alarmText=""/>
<IoSensor id="SensorPRWaterLeakSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PowerRackWaterLeakSW" infoText="" warningText ="Warning9 Power Rack Water Leak [DI-77]" alarmText=""/>
<IoSensor id="SensorSHLidClosed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_SHLidClosed" infoText="" warningText ="Warning10 SH Lid Opened [DI-106]" alarmText=""/>
<IoSensor id="SensorTopLidClosed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_TopLidClosed" infoText="" warningText ="Warning11 Top Lid Opened [DI-113]" alarmText=""/>
<IoSensor id="SensorMiddleLidClosed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_MiddleLidClosed" infoText="" warningText ="Warning12 Middle Lid Opened [DI-120]" alarmText=""/>
<IoSensor id="SensorPSU1Status" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PSU1Status" infoText="" warningText ="Warning13 PSU1 Status Is Off[DI-296]" alarmText=""/>
<IoSensor id="SensorPSU2Status" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PSU2Status" infoText="" warningText ="Warning14 PSU2 Status Is Off[DI-297]" alarmText=""/>
<IoSensor id="SensorPSU3Status" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PSU3Status" infoText="" warningText ="Warning15 PSU3 Status Is Off[DI-298]" alarmText=""/>
<IoSensor id="SensorSCR1Status" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_SCR1Status" infoText="" warningText ="Warning16 SCR1 Status Is Off[DI-302]" alarmText=""/>
<IoSensor id="SensorSCR2Status" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_SCR2Status" infoText="" warningText ="Warning17 SCR2 Status Is Off[DI-303]" alarmText=""/>
<IoSensor id="SensorSCR3Status" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_SCR3Status" infoText="" warningText ="Warning18 SCR3 Status Is Off[DI-304]" alarmText=""/>
<IoSensor id="SensorPSUInnerTempHAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSUInnerTempHAlarm" infoText="" warningText ="Warning19 PSU Inner.Temp High [DI-305]" alarmText=""/>
<IoSensor id="SensorPSUMiddleTempHAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSUMiddleTempHAlarm" infoText="" warningText ="Warning20 PSU Middle.Temp High [DI-306]" alarmText=""/>
<IoSensor id="SensorPSUOuterTempHAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSUOuterTempHAlarm" infoText="" warningText ="Warning21 PSU Outer.Temp High [DI-307]" alarmText=""/>
<IoSensor id="SensorSCRUpperTempHAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SCRUpperTempHAlarm" infoText="" warningText ="Warning22 SCR Upper TempHigh [DI-311]" alarmText=""/>
<IoSensor id="SensorSCRMiddleTempHAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SCRMiddleTempHAlarm" infoText="" warningText ="Warning23 SCR Middle TempHigh [DI-312]" alarmText=""/>
<IoSensor id="SensorSCRLowerTempHAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SCRLowerTempHAlarm" infoText="" warningText ="Warning24 SCR Lower TempHigh [DI-313]" alarmText=""/>
<IoSensor id="SensorSHFlowTempU1OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SHFlowTempU1OT" infoText="" warningText ="Warning25 SH Cooling Water Temp Over Temp -U1 [DI-401]" alarmText=""/>
<IoSensor id="SensorChamTopFlowTempU2OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ChamTopFlowTempU2OT" infoText="" warningText ="Warning26 Chamber Top Cooling Water Over Temp -U2 [DI-402]" alarmText=""/>
<IoSensor id="SensorChamMiddleFlow1TempU3OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ChamMiddleFlow1TempU3OT" infoText="" warningText ="Warning27 Chamber Middle1 Cooling Water Over Temp -U3 [DI-403]" alarmText=""/>
<IoSensor id="SensorChamMiddleFlow2TempU4OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ChamMiddleFlow2TempU4OT" infoText="" warningText ="Warning28 Chamber Middle2 Cooling Water Over Temp -U4 [DI-404]" alarmText=""/>
<IoSensor id="SensorChamBottomFlowTempU5OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ChamBottomFlowTempU5OT" infoText="" warningText ="Warning29 Chamber Bottom Cooling Water Over Temp -U5 [DI-405]" alarmText=""/>
<IoSensor id="SensorBottomPlateFlowTempU6OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_BottomPlateFlowTempU6OT" infoText="" warningText ="Warning30 Bottom Plate Cooling Water Over Temp -U6 [DI-406]" alarmText=""/>
<IoSensor id="SensorPowerRodFlow1TempU7OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PowerRodFlow1TempU7OT" infoText="" warningText ="Warning31 Power Rod1 Cooling Water Over Temp -U7 [DI-407]" alarmText=""/>
<IoSensor id="SensorPowerRodFlow2TempU8OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PowerRodFlow2TempU8OT" infoText="" warningText ="Warning32 Power Rod2 Cooling Water Over Temp -U8 [DI-408]" alarmText=""/>
<IoSensor id="SensorForelineColdTrapFlowTempU9OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ForelineColdTrapFlowTempU9OT" infoText="" warningText ="Warning33 Foreline.ColdTrap Cooling Water Over Temp -U9 [DI-409]" alarmText=""/>
<IoSensor id="SensorInSituFlowTempU10OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_InSituFlowTempU10OT" infoText="" warningText ="Warning34 InSitu Cooling Water Over Temp -U10 [DI-410]" alarmText=""/>
<IoSensor id="SensorSideWallPowerRodFlowTempU11OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SideWallPowerRodFlowTempU11OT" infoText="" warningText ="Warning35 SideWallPowerRod Cooling Water Over Temp -U11 [DI-411]" alarmText=""/>
<IoSensor id="SensorTransformerFlowTempU14OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_TransformerFlowTempU14OT" infoText="" warningText ="Warning36 Transformer Cooling Water Over Temp -U14 [DI-412]" alarmText=""/>
<IoSensor id="SensorTMFlow1TempU12OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_TMFlow1TempU12OT" infoText="" warningText ="Warning37 TM1 Cooling Water Over Temp -U12 [DI-413]" alarmText=""/>
<IoSensor id="SensorTMFlow2TempU13OT" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_TMFlow2TempU13OT" infoText="" warningText ="Warning38 TM2 Cooling Water Over Temp -U13 [DI-414]" alarmText=""/>
<IoSensor id="SensorChamLidClosed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamLidClosed" infoText="" warningText="" alarmText ="Alarm1 Chamber Lid Opened [DI-0]"/>
<IoSensor id="SensorMiddleFlow2SW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamMiddleFlow2SW" infoText="" warningText="" alarmText ="Alarm2 Chamber Middle2 Cooling Water Flow Abnormal U4[DI-8]"/>
<IoSensor id="SensorChamPressAboveATMSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamPressAboveATMSW" infoText="" warningText="" alarmText ="Alarm3 Chamber Press Above ATM [DI-9]"/>
<IoSensor id="SensorHeaterTempUp1680CSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_HeaterTempUp1680CSW" infoText="" warningText="" alarmText ="Alarm4 Heater Controller1 Present Temp High [DI-10]"/>
<IoSensor id="SensorSHFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_SHFlowSW" infoText="" warningText="" alarmText ="Alarm5 SH Cooling Water Low Flow -U1 [DI-15]"/>
<IoSensor id="SensorChamTopFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamTopFlowSW" infoText="" warningText="" alarmText ="Alarm6 Chamber Top Cooling Water Low Flow -U2 [DI-16]"/>
<IoSensor id="SensorChamMiddleFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamMiddleFlow1SW" infoText="" warningText="" alarmText ="Alarm7 Chamber Middle1 Cooling Water Flow Abnormal -U3 [DI-17]"/>
<IoSensor id="SensorChamBottomFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamBottomFlowSW" infoText="" warningText="" alarmText ="Alarm8 Chamber Bottom Cooling Water Flow Abnormal -U5 [DI-18]"/>
<IoSensor id="SensorBottomPlateFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_BottomPlateFlowSW" infoText="" warningText="" alarmText ="Alarm9 Bottom Plate Cooling Water Low Flow -U6 [DI-19]"/>
<IoSensor id="SensorPowerRodFlow1SW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PowerRod1FlowSW" infoText="" warningText="" alarmText ="Alarm10 Power Rod1 Cooling Water Low Flow -U7 [DI-20]"/>
<IoSensor id="SensorPowerRodFlow2SW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PowerRod2FlowSW" infoText="" warningText="" alarmText ="Alarm11 Power Rod2 Cooling Water Low Flow -U8 [DI-21]"/>
<IoSensor id="SensorForelineFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ForelineFlowSW" infoText="" warningText="" alarmText ="Alarm12 Foreline Cooling Water Low Flow -U9 [DI-22]"/>
<IoSensor id="SensorInSituFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_InSituFlowSW" infoText="" warningText="" alarmText ="Alarm13 InSitu Cooling Water Low Flow -U10 [DI-23]"/>
<IoSensor id="SensorSideWallPowerRodFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_SideWallPowerRodFlowSW" infoText="" warningText="" alarmText ="Alarm14 SideWallPowerRod Cooling Water Low Flow -U11 [DI-24]"/>
<IoSensor id="SensorTransformerFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_TransformerFlowSW" infoText="" warningText="" alarmText ="Alarm15 Transformer Cooling Water Low Flow -U14 [DI-25]"/>
<IoSensor id="SensorTMFlow2SW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_TMFlow2SW" infoText="" warningText="" alarmText ="Alarm16 TM Pump Low Flow -U12 [DI-26]"/>
<IoSensor id="SensorPowerRackExhaustDP" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PowerRackExhaustDP" infoText="" warningText="" alarmText ="Alarm18 Power Rack Exhaust DP Error [DI-29]"/>
<IoSensor id="SensorPMH2DetectorSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PMH2DetectorSW" infoText="" warningText="" alarmText ="Alarm19 PM H2 Leak Detect [DI-30]"/>
<IoSensor id="SensorGBHCLDetectorSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_GBHCLDetectorSW" infoText="" warningText="" alarmText ="Alarm20 Gasbox HCL Leak Detect [DI-31]"/>
<IoSensor id="SensorGBExhaustDPSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_GBExhaustDPSW" infoText="" warningText="" alarmText ="Alarm21 Gasbox Exhaust DP Error [DI-32]"/>
<IoSensor id="SensorGasPipeTempCtrlAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_GasPipeTempCtrlAlarm" infoText="Info39 GasPipeTempCtrl Alarm [DI-35]" warningText="" alarmText =""/>
<IoSensor id="SensorDryPumpAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_DryPumpAlarm" infoText="" warningText="" alarmText ="Alarm22 DryPump1 Alarm [DI-36]"/>
<IoSensor id="SensorPumpExhaustPressSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PumpExhaustPressSW" infoText="" warningText="" alarmText ="Alarm23 Pump Exhaust Pressure Abnormal [DI-38]"/>
<IoSensor id="SensorPMAExhaustDPSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PMAExhaustDPSW" infoText="" warningText="" alarmText ="Alarm24 PM Exhaust DP Error [DI-39]"/>
<IoSensor id="SensorPumpExhaustDPSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PumpExhaustDPSW" infoText="" warningText="" alarmText ="Alarm25 Pump Exhaust DP Error [DI-40]"/>
<IoSensor id="SensorScrubberIntlkSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ScrubberIntlkSW" infoText="" warningText="" alarmText ="Alarm26 Scrubber System Error [DI-41]"/>
<IoSensor id="SensorFacilityIntlkSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_FacilityIntlkSW" infoText="" warningText="" alarmText ="Alarm27 Facility Error [DI-42]"/>
<IoSensor id="SensorTCSLevelLowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_TCSAlarm" infoText="" warningText="" alarmText ="Alarm28 TCS Level Low [DI-43]"/>
<IoSensor id = "SensorServoDriverFaultSW" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "false" di = "DI_ServoDriverFaultSW" infoText = "" warningText = "" alarmText = "Alarm29 Rotation Servo Driver Error [DI-45]" />
<IoSensor id="SensorGN2InletPressSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_GN2InletPressSW" infoText="" warningText="" alarmText ="Alarm30 Gasbox N2 Pressure Low [DI-55]"/>
<IoSensor id="SensorArInletPressSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ArInletPressSW" infoText="" warningText="" alarmText ="Alarm31 Gasbox Ar Pressure Low [DI-56]"/>
<IoSensor id="SensorH2PressureSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_H2PressureSW" infoText="" warningText="" alarmText ="Alarm32 Gasbox H2 Pressure Low [DI-57]"/>
<IoSensor id="SensorGBH2DetectorSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_GBH2DetectorSW" infoText="" warningText="" alarmText ="Alarm33 Gasbox H2 Leak Detect [DI-59]"/>
<IoSensor id="SensorDryPump1Running" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_DryPump1Running" infoText="" warningText="" alarmText ="Alarm34 DryPump1 Not Running [DI-65]"/>
<IoSensor id="SensorFacilityWarningSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_FacilityWarningSW" infoText="" warningText="" alarmText ="Alarm35 Facility Equipment Alarm [DI-72]"/>
<IoSensor id="SensorMainCBStatusSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_MainCBStatusSW" infoText="" warningText="" alarmText ="Alarm36 Main CB Status Off [DI-76]"/>
<IoSensor id="SensorProcessStopSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ProcessStopSW" infoText="" warningText="" alarmText ="Alarm37 Process Stop [DI-81]"/>
<IoSensor id="SensorHighCoolingWaterPressureSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_HighCoolingWaterPressureSW" infoText="" warningText="" alarmText ="Alarm17 Chamber Cooling Water Pressure High [DI-125]"/>
<IoSensor id="SensorLowCoolingWaterPressureSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_LowCoolingWaterPressureSW" infoText="" warningText="" alarmText ="Alarm17 Chamber Cooling Water Pressure Low [DI-126]"/>
<IoSensor id="SensorChamCabDoorClosed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamCabDoorClosed" infoText="" warningText="Waring1 Chamber Cab Door Not Closed [DI-3]" alarmText=""/>
<IoSensor id="SensorDORPressVacSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_DORPressVacSW" infoText="" warningText="Waring2 DOR Press Vac [DI-6]" alarmText=""/>
<IoSensor id="SensorTMFlow2SW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_TMFlow2SW" infoText="" warningText="Waring3 TMFlow2 Water Flow Abnormity -U12 [DI-26]" alarmText =""/>
<IoSensor id="SensorGBDoorClosed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_GBDoorClosed" infoText="" warningText="Waring4 Gas Box Door Not Closed [DI-33]" alarmText=""/>
<IoSensor id="SensorGasPipeTempCtrlAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_GasPipeTempCtrlAlarm" infoText="" warningText="Waring5 Gas PipeTempCtrl Abnormity [DI-35]" alarmText =""/>
<IoSensor id="SensorReactorWaterLeakSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ReactorWaterLeakSW" infoText="" warningText="Waring6 ReactorWaterLeak [DI-48]" alarmText=""/>
<IoSensor id="SensorTMFlow1SW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_TMFlow1SW" infoText="" warningText="Waring7 TMFlow1 Water Flow Abnormity -U13 [DI-51]" alarmText=""/>
<IoSensor id="SensorGBWaterLeakSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_GBWaterLeakSW" infoText="" warningText="Waring8 Gas Box Water Leak [DI-60]" alarmText=""/>
<IoSensor id="SensorTMPumpFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_TMPumpFlowSW" infoText="" warningText="Waring9 TM Pump Flow Abnormity [DI-61]" alarmText=""/>
<IoSensor id="SensorDryPumpFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_DryPumpFlowSW" infoText="" warningText="Waring10 Gas Box Water Leak [DI-62]" alarmText=""/>
<IoSensor id="SensorDryPump1Warning" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_DryPump1Warning" infoText="" warningText="Waring11 PM1DryPump1 Warning [DI-67]" alarmText=""/>
<IoSensor id="SensorPRWaterLeakSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PowerRackWaterLeakSW" infoText="" warningText="Waring12 Power Rack Water Leak [DI-77]" alarmText=""/>
<IoSensor id="SensorSHLidClosed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_SHLidClosed" infoText="" warningText="Warning13 SH Lid Opened [DI-106]" alarmText=""/>
<IoSensor id="SensorTopLidClosed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_TopLidClosed" infoText="" warningText="Warning14 Top Lid Opened [DI-113]" alarmText=""/>
<IoSensor id="SensorMiddleLidClosed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_MiddleLidClosed" infoText="" warningText="Warning15 Middle Lid Opened [DI-120]" alarmText=""/>
<IoSensor id="SensorBottomLidClosed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_BottomLidClosed" infoText="" warningText="Warning16 Middle Lid Opened [DI-129]" alarmText=""/>
<IoSensor id="SensorPSU1Status" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PSU1Status" infoText="" warningText="Warning17 PSU1 Status Is Off[DI-296]" alarmText=""/>
<IoSensor id="SensorPSU2Status" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PSU2Status" infoText="" warningText="Warning18 PSU2 Status Is Off[DI-297]" alarmText=""/>
<IoSensor id="SensorPSU3Status" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PSU3Status" infoText="" warningText="Warning19 PSU3 Status Is Off[DI-298]" alarmText=""/>
<IoSensor id="SensorSCR1Status" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_SCR1Status" infoText="" warningText="Warning20 SCR1 Status Is Off[DI-302]" alarmText=""/>
<IoSensor id="SensorSCR2Status" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_SCR2Status" infoText="" warningText="Warning21 SCR2 Status Is Off[DI-303]" alarmText=""/>
<IoSensor id="SensorSCR3Status" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_SCR3Status" infoText="" warningText="Warning22 SCR3 Status Is Off[DI-304]" alarmText=""/>
<IoSensor id="SensorPSUInnerTempHAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSUInnerTempHAlarm" infoText="" warningText="Warning23 PSU Inner Temp High [DI-305]" alarmText=""/>
<IoSensor id="SensorPSUMiddleTempHAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSUMiddleTempHAlarm" infoText="" warningText="Warning24 PSU Middle Temp High [DI-306]" alarmText=""/>
<IoSensor id="SensorPSUOuterTempHAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSUOuterTempHAlarm" infoText="" warningText="Warning25 PSU Outer Temp High [DI-307]" alarmText=""/>
<IoSensor id = "SensorPSU1Alarm" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PSU1Alarm" infoText = "" warningText = "" alarmText = "Alarm66 PSU1.Alarm [DI-320]" />
<IoSensor id = "SensorPSU2Alarm" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PSU2Alarm" infoText = "" warningText = "" alarmText = "Alarm67 PSU2.Alarm [DI-321]" />
<IoSensor id = "SensorPSU3Alarm" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PSU3Alarm" infoText = "" warningText = "" alarmText = "Alarm68 PSU3.Alarm [DI-322]" />
<IoSensor id = "SensorSCR1Alarm" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_SCR1Alarm" infoText = "" warningText = "" alarmText = "Alarm69 SCR1.Alarm [DI-323]" />
<IoSensor id = "SensorSCR2Alarm" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_SCR2Alarm" infoText = "" warningText = "" alarmText = "Alarm70 SCR2.Alarm [DI-324]" />
<IoSensor id = "SensorSCR3Alarm" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_SCR3Alarm" infoText = "" warningText = "" alarmText = "Alarm71 SCR3.Alarm [DI-325]" />
<IoSensor id = "SensorPSUTCDPCommunicationError" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PSUTCDPCommunicationError" infoText = "" warningText = "" alarmText = "Alarm72 PSU TC DP Communication Error [DI-328]" />
<IoSensor id = "SensorSCRTCDPCommunicationError" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_SCRTCDPCommunicationError" infoText = "" warningText = "" alarmText = "Alarm73 SCR TC DP Communication Error [DI-329]" />
<IoSensor id = "SensorPSU1dpCommunicationError" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PSU1dpCommunicationError" infoText = "" warningText = "" alarmText = "Alarm74 PSU-1 DP Communication Error [DI-330]" />
<IoSensor id = "SensorPSU2dpCommunicationError" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PSU2dpCommunicationError" infoText = "" warningText = "" alarmText = "Alarm75 PSU-2 DP Communication Error [DI-331]" />
<IoSensor id = "SensorPSU3dpCommunicationError" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PSU3dpCommunicationError" infoText = "" warningText = "" alarmText = "Alarm76 PSU-3 DP Communication Error [DI-332]" />
<IoSensor id = "SensorSCRdpCommunicationError" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_SCRdpCommunicationError" infoText = "" warningText = "" alarmText = "Alarm77 SCR DP Communication Error [DI-333]" />
<IoSensor id = "SensorInletTotalTempHigh" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_InletTotalTempHigh" infoText = "" warningText = "" alarmText = "Alarm78 InletTotalTempHigh [DI-344]" />
<IoSensor id = "SensorHearbeatTimeout" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_HearbeatTimeout" infoText="" warningText="" alarmText ="Alarm100 PM Hearbeat Timeout [DI-350]"/>
<IoSensor id = "SensorMFC01Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC01Offline" infoText = "" warningText = "" alarmText = "Alarm101 MFC01 Offline [DI-351]" />
<IoSensor id = "SensorMFC02Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC02Offline" infoText = "" warningText = "" alarmText = "Alarm102 MFC02 Offline [DI-352]" />
<IoSensor id = "SensorMFC03Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC03Offline" infoText = "" warningText = "" alarmText = "Alarm103 MFC03 Offline [DI-353]" />
<IoSensor id = "SensorMFC04Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC04Offline" infoText = "" warningText = "" alarmText = "Alarm104 MFC04 Offline [DI-354]" />
<IoSensor id = "SensorMFC05Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC05Offline" infoText = "" warningText = "" alarmText = "Alarm105 MFC05 Offline [DI-355]" />
<IoSensor id = "SensorMFC06Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC06Offline" infoText = "" warningText = "" alarmText = "Alarm106 MFC06 Offline [DI-356]" />
<IoSensor id = "SensorMFC07Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC07Offline" infoText = "" warningText = "" alarmText = "Alarm107 MFC07 Offline [DI-357]" />
<IoSensor id = "SensorMFC08Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC08Offline" infoText = "" warningText = "" alarmText = "Alarm108 MFC08 Offline [DI-358]" />
<IoSensor id = "SensorMFC09Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC09Offline" infoText = "" warningText = "" alarmText = "Alarm109 MFC09 Offline [DI-359]" />
<IoSensor id = "SensorMFC10Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC10Offline" infoText = "" warningText = "" alarmText = "Alarm110 MFC10 Offline [DI-360]" />
<IoSensor id = "SensorMFC11Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC11Offline" infoText = "" warningText = "" alarmText = "Alarm111 MFC11 Offline [DI-361]" />
<IoSensor id = "SensorMFC12Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC12Offline" infoText = "" warningText = "" alarmText = "Alarm112 MFC12 Offline [DI-362]" />
<IoSensor id = "SensorMFC13Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC13Offline" infoText = "" warningText = "" alarmText = "Alarm113 MFC13 Offline [DI-363]" />
<IoSensor id = "SensorMFC14Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC14Offline" infoText = "" warningText = "" alarmText = "Alarm114 MFC14 Offline [DI-364]" />
<IoSensor id = "SensorMFC15Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC15Offline" infoText = "" warningText = "" alarmText = "Alarm115 MFC15 Offline [DI-365]" />
<IoSensor id = "SensorMFC16Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC16Offline" infoText = "" warningText = "" alarmText = "Alarm116 MFC16 Offline [DI-366]" />
<IoSensor id = "SensorMFC19Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC19Offline" infoText = "" warningText = "" alarmText = "Alarm119 MFC19 Offline [DI-369]" />
<IoSensor id = "SensorMFC20Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC20Offline" infoText = "" warningText = "" alarmText = "Alarm120 MFC20 Offline [DI-370]" />
<IoSensor id = "SensorMFC22Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC22Offline" infoText = "" warningText = "" alarmText = "Alarm122 MFC22 Offline [DI-372]" />
<IoSensor id = "SensorMFC23Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC23Offline" infoText = "" warningText = "" alarmText = "Alarm123 MFC23 Offline [DI-373]" />
<IoSensor id = "SensorMFC25Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC25Offline" infoText = "" warningText = "" alarmText = "Alarm125 MFC25 Offline [DI-375]" />
<IoSensor id = "SensorMFC26Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC26Offline" infoText = "" warningText = "" alarmText = "Alarm126 MFC26 Offline [DI-376]" />
<IoSensor id = "SensorMFC27Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC27Offline" infoText = "" warningText = "" alarmText = "Alarm127 MFC27 Offline [DI-377]" />
<IoSensor id = "SensorMFC28Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC28Offline" infoText = "" warningText = "" alarmText = "Alarm128 MFC28 Offline [DI-378]" />
<IoSensor id = "SensorMFC29Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC29Offline" infoText = "" warningText = "" alarmText = "Alarm129 MFC29 Offline [DI-379]" />
<IoSensor id = "SensorMFC31Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC31Offline" infoText = "" warningText = "" alarmText = "Alarm131 MFC31 Offline [DI-381]" />
<IoSensor id = "SensorMFC32Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC32Offline" infoText = "" warningText = "" alarmText = "Alarm132 MFC32 Offline [DI-382]" />
<IoSensor id = "SensorMFC33Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC33Offline" infoText = "" warningText = "" alarmText = "Alarm133 MFC33 Offline [DI-383]" />
<IoSensor id = "SensorMFC35Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC35Offline" infoText = "" warningText = "" alarmText = "Alarm135 MFC35 Offline [DI-385]" />
<IoSensor id = "SensorMFC36Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC36Offline" infoText = "" warningText = "" alarmText = "Alarm136 MFC36 Offline [DI-386]" />
<IoSensor id = "SensorMFC37Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC37Offline" infoText = "" warningText = "" alarmText = "Alarm137 MFC37 Offline [DI-387]" />
<IoSensor id = "SensorMFC38Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_MFC38Offline" infoText = "" warningText = "" alarmText = "Alarm138 MFC38 Offline [DI-388]" />
<IoSensor id = "SensorPC01Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PC01Offline" infoText = "" warningText = "" alarmText = "Alarm141 PC1 Offline [DI-391]" />
<IoSensor id = "SensorPC02Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PC02Offline" infoText = "" warningText = "" alarmText = "Alarm142 PC2 Offline [DI-392]" />
<IoSensor id = "SensorPC03Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PC03Offline" infoText = "" warningText = "" alarmText = "Alarm143 PC3 Offline [DI-393]" />
<IoSensor id = "SensorPC04Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PC04Offline" infoText = "" warningText = "" alarmText = "Alarm144 PC4 Offline [DI-394]" />
<IoSensor id = "SensorPC05Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PC05Offline" infoText = "" warningText = "" alarmText = "Alarm145 PC5 Offline [DI-395]" />
<IoSensor id = "SensorPC06Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PC06Offline" infoText = "" warningText = "" alarmText = "Alarm146 PC6 Offline [DI-396]" />
<IoSensor id = "SensorPC07Offline" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" di = "DI_PC07Offline" infoText = "" warningText = "" alarmText = "Alarm147 PC7 Offline [DI-397]" />
</IoSensors>
<IoSensor id="SensorChamLidClosed" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamLidClosed" infoText="" warningText="" alarmText ="Alarm1 Chamber Lid Opened [DI-0]"/>
<IoSensor id="SensorMiddleFlow2SW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamMiddleFlow2SW" infoText="" warningText="" alarmText ="Alarm2 Chamber Middle2 Cooling Water Flow Abnormal U4[DI-8]"/>
<IoSensor id="SensorChamPressAboveATMSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamPressAboveATMSW" infoText="" warningText="" alarmText ="Alarm3 Chamber Press Above ATM [DI-9]"/>
<IoSensor id="SensorHeaterTempUp1680CSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_HeaterTempUp1680CSW" infoText="" warningText="" alarmText ="Alarm4 Heater Controller1 Present Temp High [DI-10]"/>
<IoSensor id="SensorSHFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_SHFlowSW" infoText="" warningText="" alarmText ="Alarm5 SH Cooling Water Low Flow -U1 [DI-15]"/>
<IoSensor id="SensorChamTopFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamTopFlowSW" infoText="" warningText="" alarmText ="Alarm6 Chamber Top Cooling Water Low Flow -U2 [DI-16]"/>
<IoSensor id="SensorChamMiddleFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamMiddleFlow1SW" infoText="" warningText="" alarmText ="Alarm7 Chamber Middle1 Cooling Water Flow Abnormal -U3 [DI-17]"/>
<IoSensor id="SensorChamBottomFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ChamBottomFlowSW" infoText="" warningText="" alarmText ="Alarm8 Chamber Bottom Cooling Water Flow Abnormal -U5 [DI-18]"/>
<IoSensor id="SensorBottomPlateFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_BottomPlateFlowSW" infoText="" warningText="" alarmText ="Alarm9 Bottom Plate Cooling Water Low Flow -U6 [DI-19]"/>
<IoSensor id="SensorPowerRodFlow1SW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PowerRod1FlowSW" infoText="" warningText="" alarmText ="Alarm10 Power Rod1 Cooling Water Low Flow -U7 [DI-20]"/>
<IoSensor id="SensorPowerRodFlow2SW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PowerRod2FlowSW" infoText="" warningText="" alarmText ="Alarm11 Power Rod2 Cooling Water Low Flow -U8 [DI-21]"/>
<IoSensor id="SensorForelineFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ForelineFlowSW" infoText="" warningText="" alarmText ="Alarm12 Foreline Cooling Water Low Flow -U9 [DI-22]"/>
<IoSensor id="SensorInSituFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_InSituFlowSW" infoText="" warningText="" alarmText ="Alarm13 InSitu Cooling Water Low Flow -U10 [DI-23]"/>
<IoSensor id="SensorSideWallPowerRodFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_SideWallPowerRodFlowSW" infoText="" warningText="" alarmText ="Alarm14 SideWallPowerRod Cooling Water Low Flow -U11 [DI-24]"/>
<IoSensor id="SensorTransformerFlowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_TransformerFlowSW" infoText="" warningText="" alarmText ="Alarm15 Transformer Cooling Water Low Flow -U14 [DI-25]"/>
<IoSensor id="SensorPowerRackExhaustDP" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PowerRackExhaustDP" infoText="" warningText="" alarmText ="Alarm16 Power Rack Exhaust DP Error [DI-29]"/>
<IoSensor id="SensorPMH2DetectorSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PMH2DetectorSW" infoText="" warningText="" alarmText ="Alarm17 PM H2 Leak Detect [DI-30]"/>
<IoSensor id="SensorGBHCLDetectorSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_GBHCLDetectorSW" infoText="" warningText="" alarmText ="Alarm18 Gasbox HCL Leak Detect [DI-31]"/>
<IoSensor id="SensorGBExhaustDPSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_GBExhaustDPSW" infoText="" warningText="" alarmText ="Alarm19 Gasbox Exhaust DP Error [DI-32]"/>
<IoSensor id="SensorDryPumpAlarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_DryPumpAlarm" infoText="" warningText="" alarmText ="Alarm20 PM1 Dry Pump Alarm [DI-36]"/>
<IoSensor id="SensorPumpExhaustPressSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PumpExhaustPressSW" infoText="" warningText="" alarmText ="Alarm21 Pump Exhaust Pressure Abnormity [DI-38]"/>
<IoSensor id="SensorPMAExhaustDPSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PMAExhaustDPSW" infoText="" warningText="" alarmText ="Alarm22 PM Exhaust DP Error [DI-39]"/>
<IoSensor id="SensorPumpExhaustDPSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_PumpExhaustDPSW" infoText="" warningText="" alarmText ="Alarm23 Pump Exhaust DP Error [DI-40]"/>
<IoSensor id="SensorScrubberIntlkSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ScrubberIntlkSW" infoText="" warningText="" alarmText ="Alarm24 Scrubber System Error [DI-41]"/>
<IoSensor id="SensorFacilityIntlkSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_FacilityIntlkSW" infoText="" warningText="" alarmText ="Alarm25 Facility Error [DI-42]"/>
<IoSensor id="SensorTCSLevelLowSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_TCSAlarm" infoText="" warningText="" alarmText ="Alarm26 TCS Level Low [DI-43]"/>
<IoSensor id="SensorServoDriverFaultSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_ServoDriverFaultSW" infoText="" warningText="" alarmText ="Alarm27 Rotation Servo Driver Error [DI-45]" />
<IoSensor id="SensorGN2InletPressSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_GN2InletPressSW" infoText="" warningText="" alarmText ="Alarm28 Gasbox N2 Pressure Low [DI-55]"/>
<IoSensor id="SensorArInletPressSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ArInletPressSW" infoText="" warningText="" alarmText ="Alarm29 Gasbox Ar Pressure Low [DI-56]"/>
<IoSensor id="SensorH2PressureSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_H2PressureSW" infoText="" warningText="" alarmText ="Alarm30 Gasbox H2 Pressure Low [DI-57]"/>
<IoSensor id="SensorGBH2DetectorSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_GBH2DetectorSW" infoText="" warningText="" alarmText ="Alarm31 Gasbox H2 Leak Detect [DI-59]"/>
<IoSensor id="SensorDryPump1Running" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_DryPump1Running" infoText="" warningText="" alarmText ="Alarm32 PM1 Dry Pump1 Not Running [DI-65]"/>
<IoSensor id="SensorFacilityWarningSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_FacilityWarningSW" infoText="" warningText="" alarmText ="Alarm33 Facility Equipment Alarm [DI-72]"/>
<IoSensor id="SensorMainCBStatusSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" di="DI_MainCBStatusSW" infoText="" warningText="" alarmText ="Alarm34 Main CB Status Off [DI-76]"/>
<IoSensor id="SensorProcessStopSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ProcessStopSW" infoText="" warningText="" alarmText ="Alarm35 Process Stop [DI-81]"/>
<IoSensor id="SensorHighCoolingWaterPressureSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_HighCoolingWaterPressureSW" infoText="" warningText="" alarmText ="Alarm36 Chamber Cooling Water Pressure Low [DI-125]"/>
<IoSensor id="SensorLowCoolingWaterPressureSW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_LowCoolingWaterPressureSW" infoText="" warningText="" alarmText ="Alarm37 Chamber Cooling Water Pressure High [DI-126]"/>
<IoSensor id = "SensorPSU1Alarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSU1Alarm" infoText="" warningText="" alarmText="Alarm38 PSU1.Alarm [DI-320]" />
<IoSensor id = "SensorPSU2Alarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSU2Alarm" infoText="" warningText="" alarmText="Alarm39 PSU2.Alarm [DI-321]" />
<IoSensor id = "SensorPSU3Alarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSU3Alarm" infoText="" warningText="" alarmText="Alarm40 PSU3.Alarm [DI-322]" />
<IoSensor id = "SensorSCR1Alarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SCR1Alarm" infoText="" warningText="" alarmText="Alarm41 SCR1.Alarm [DI-323]" />
<IoSensor id = "SensorSCR2Alarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SCR2Alarm" infoText="" warningText="" alarmText="Alarm42 SCR2.Alarm [DI-324]" />
<IoSensor id = "SensorSCR3Alarm" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SCR3Alarm" infoText="" warningText="" alarmText="Alarm43 SCR3.Alarm [DI-325]" />
<IoSensor id = "SensorPSUTCDPCommunicationError" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSUTCDPCommunicationError" infoText="" warningText="" alarmText="Alarm44 PSU dp Communication Error [DI-328]" />
<IoSensor id = "SensorSCRTCDPCommunicationError" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SCRTCDPCommunicationError" infoText="" warningText="" alarmText="Alarm45 SCR dp Communication Error [DI-329]" />
<IoSensor id = "SensorPSU1dpCommunicationError" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSU1dpCommunicationError" infoText="" warningText="" alarmText="Alarm46 PSU-1 dp Communication Error [DI-330]" />
<IoSensor id = "SensorPSU2dpCommunicationError" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSU2dpCommunicationError" infoText="" warningText="" alarmText="Alarm47 PSU-2 dp Communication Error [DI-331]" />
<IoSensor id = "SensorPSU3dpCommunicationError" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PSU3dpCommunicationError" infoText="" warningText="" alarmText="Alarm48 PSU-3 dp Communication Error [DI-332]" />
<IoSensor id = "SensorSCRdpCommunicationError" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_SCRdpCommunicationError" infoText="" warningText="" alarmText="Alarm49 SCR dp Communication Error [DI-333]" />
<IoSensor id = "SensorInletTotalTempHigh" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_InletTotalTempHigh" infoText="" warningText="" alarmText="Alarm50 Inlet Total Temp High [DI-344]" />
<IoSensor id = "SensorChamPressAboveATM2SW" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_ChamPressAboveATM2SW" infoText="" warningText="" alarmText="Alarm51 Cham Press Above ATM2 [DI-345]"/>
<IoSensor id = "SensorHearbeatTimeout" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_HearbeatTimeout" infoText="" warningText="" alarmText="Alarm100 PM Hearbeat Timeout [DI-350]"/>
<IoSensor id = "SensorMFC01Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC01Offline" infoText="" warningText="" alarmText="Alarm101 MFC01 Offline [DI-351]" />
<IoSensor id = "SensorMFC02Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC02Offline" infoText="" warningText="" alarmText="Alarm102 MFC02 Offline [DI-352]" />
<IoSensor id = "SensorMFC03Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC03Offline" infoText="" warningText="" alarmText="Alarm103 MFC03 Offline [DI-353]" />
<IoSensor id = "SensorMFC04Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC04Offline" infoText="" warningText="" alarmText="Alarm104 MFC04 Offline [DI-354]" />
<IoSensor id = "SensorMFC05Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC05Offline" infoText="" warningText="" alarmText="Alarm105 MFC05 Offline [DI-355]" />
<IoSensor id = "SensorMFC06Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC06Offline" infoText="" warningText="" alarmText="Alarm106 MFC06 Offline [DI-356]" />
<IoSensor id = "SensorMFC07Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC07Offline" infoText="" warningText="" alarmText="Alarm107 MFC07 Offline [DI-357]" />
<IoSensor id = "SensorMFC08Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC08Offline" infoText="" warningText="" alarmText="Alarm108 MFC08 Offline [DI-358]" />
<IoSensor id = "SensorMFC09Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC09Offline" infoText="" warningText="" alarmText="Alarm109 MFC09 Offline [DI-359]" />
<IoSensor id = "SensorMFC10Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC10Offline" infoText="" warningText="" alarmText="Alarm110 MFC10 Offline [DI-360]" />
<IoSensor id = "SensorMFC11Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC11Offline" infoText="" warningText="" alarmText="Alarm111 MFC11 Offline [DI-361]" />
<IoSensor id = "SensorMFC12Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC12Offline" infoText="" warningText="" alarmText="Alarm112 MFC12 Offline [DI-362]" />
<IoSensor id = "SensorMFC13Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC13Offline" infoText="" warningText="" alarmText="Alarm113 MFC13 Offline [DI-363]" />
<IoSensor id = "SensorMFC14Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC14Offline" infoText="" warningText="" alarmText="Alarm114 MFC14 Offline [DI-364]" />
<IoSensor id = "SensorMFC15Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC15Offline" infoText="" warningText="" alarmText="Alarm115 MFC15 Offline [DI-365]" />
<IoSensor id = "SensorMFC16Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC16Offline" infoText="" warningText="" alarmText="Alarm116 MFC16 Offline [DI-366]" />
<IoSensor id = "SensorMFC17Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC17Offline" infoText="" warningText="" alarmText="Alarm117 MFC17 Offline [DI-367]" />
<IoSensor id = "SensorMFC18Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC18Offline" infoText="" warningText="" alarmText="Alarm118 MFC18 Offline [DI-368]" />
<IoSensor id = "SensorMFC19Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC19Offline" infoText="" warningText="" alarmText="Alarm119 MFC19 Offline [DI-369]" />
<IoSensor id = "SensorMFC20Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC20Offline" infoText="" warningText="" alarmText="Alarm120 MFC20 Offline [DI-370]" />
<IoSensor id = "SensorMFC21Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC21Offline" infoText="" warningText="" alarmText="Alarm121 MFC20 Offline [DI-371]" />
<IoSensor id = "SensorMFC22Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC22Offline" infoText="" warningText="" alarmText="Alarm122 MFC22 Offline [DI-372]" />
<IoSensor id = "SensorMFC23Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC23Offline" infoText="" warningText="" alarmText="Alarm123 MFC23 Offline [DI-373]" />
<IoSensor id = "SensorMFC24Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC24Offline" infoText="" warningText="" alarmText="Alarm124 MFC24 Offline [DI-374]" />
<IoSensor id = "SensorMFC25Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC25Offline" infoText="" warningText="" alarmText="Alarm125 MFC25 Offline [DI-375]" />
<IoSensor id = "SensorMFC26Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC26Offline" infoText="" warningText="" alarmText="Alarm126 MFC26 Offline [DI-376]" />
<IoSensor id = "SensorMFC27Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC27Offline" infoText="" warningText="" alarmText="Alarm127 MFC27 Offline [DI-377]" />
<IoSensor id = "SensorMFC28Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC28Offline" infoText="" warningText="" alarmText="Alarm128 MFC28 Offline [DI-378]" />
<IoSensor id = "SensorMFC29Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC29Offline" infoText="" warningText="" alarmText="Alarm129 MFC29 Offline [DI-379]" />
<IoSensor id = "SensorMFC30Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC30Offline" infoText="" warningText="" alarmText="Alarm130 MFC30 Offline [DI-380]" />
<IoSensor id = "SensorMFC31Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC31Offline" infoText="" warningText="" alarmText="Alarm131 MFC31 Offline [DI-381]" />
<IoSensor id = "SensorMFC32Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC32Offline" infoText="" warningText="" alarmText="Alarm132 MFC32 Offline [DI-382]" />
<IoSensor id = "SensorMFC33Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC33Offline" infoText="" warningText="" alarmText="Alarm133 MFC33 Offline [DI-383]" />
<IoSensor id = "SensorMFC34Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC34Offline" infoText="" warningText="" alarmText="Alarm134 MFC35 Offline [DI-384]" />
<IoSensor id = "SensorMFC35Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC35Offline" infoText="" warningText="" alarmText="Alarm135 MFC35 Offline [DI-385]" />
<IoSensor id = "SensorMFC36Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC36Offline" infoText="" warningText="" alarmText="Alarm136 MFC36 Offline [DI-386]" />
<IoSensor id = "SensorMFC37Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC37Offline" infoText="" warningText="" alarmText="Alarm137 MFC37 Offline [DI-387]" />
<IoSensor id = "SensorMFC38Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC38Offline" infoText="" warningText="" alarmText="Alarm138 MFC38 Offline [DI-388]" />
<IoSensor id = "SensorMFC39Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC39Offline" infoText="" warningText="" alarmText="Alarm139 MFC38 Offline [DI-389]" />
<IoSensor id = "SensorMFC40Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_MFC40Offline" infoText="" warningText="" alarmText="Alarm140 MFC38 Offline [DI-390]" />
<IoSensor id = "SensorPC01Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PC01Offline" infoText="" warningText="" alarmText="Alarm141 PC1 Offline [DI-391]" />
<IoSensor id = "SensorPC02Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PC02Offline" infoText="" warningText="" alarmText="Alarm142 PC2 Offline [DI-392]" />
<IoSensor id = "SensorPC03Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PC03Offline" infoText="" warningText="" alarmText="Alarm143 PC3 Offline [DI-393]" />
<IoSensor id = "SensorPC04Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PC04Offline" infoText="" warningText="" alarmText="Alarm144 PC4 Offline [DI-394]" />
<IoSensor id = "SensorPC05Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PC05Offline" infoText="" warningText="" alarmText="Alarm145 PC5 Offline [DI-395]" />
<IoSensor id = "SensorPC06Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PC06Offline" infoText="" warningText="" alarmText="Alarm146 PC6 Offline [DI-396]" />
<IoSensor id = "SensorPC07Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PC07Offline" infoText="" warningText="" alarmText="Alarm147 PC7 Offline [DI-397]" />
<IoSensor id = "SensorPC08Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PC08Offline" infoText="" warningText="" alarmText="Alarm148 PC8 Offline [DI-398]" />
<IoSensor id = "SensorPC09Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PC09Offline" infoText="" warningText="" alarmText="Alarm149 PC9 Offline [DI-399]" />
<IoSensor id = "SensorPC10Offline" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" di="DI_PC10Offline" infoText="" warningText="" alarmText="Alarm150 PC10 Offline [DI-400]" />
<IoSensor id = "SensorReactorPressRisingRateFast" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_ReactorPressRisingRateFast" infoText="" warningText="" alarmText="Alarm52 Reactor Press Rising Rate Fast [DO192]" />
<IoSensor id = "SensorUPSEnable" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_UPSEnable" infoText="" warningText="" alarmText="Alarm53 UPS Enable [DO193]" />
<IoSensor id = "SensorUPSLowBattery" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_UPSLowBattery" infoText="" warningText="" alarmText="Alarm54 UPS Low Battery [DO194]" />
<IoSensor id = "SensorChamMiddleFlow2Temp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_ChamMiddleFlow2Temp" infoText="" warningText="" alarmText="Alarm55 Chamber Middle Flow2 Cooling Water Over Temp -U4 [DO195]" />
<IoSensor id = "SensorSHFlowTemp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_SHFlowTemp" infoText="" warningText="" alarmText="Alarm56 SH Cooling Water Temp Over Temp -U1 [DO196]" />
<IoSensor id = "SensorChamTopFlowTemp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_ChamTopFlowTemp" infoText="" warningText="" alarmText="Alarm57 Chamber Top Cooling Water Over Temp -U2 [DO197]" />
<IoSensor id = "SensorChamMiddleFlow1Temp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_ChamMiddleFlow1Temp" infoText="" warningText="" alarmText="Alarm58 Chamber Middle Flow1 Cooling Water Over Temp -U3 [DO198]" />
<IoSensor id = "SensorChamBottomFlowTemp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_ChamBottomFlowTemp" infoText="" warningText="" alarmText="Alarm59 Chamber Bottom Cooling Water Over Temp -U5 [DO199]" />
<IoSensor id = "SensorBottomPlateFlowTemp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_BottomPlateFlowTemp" infoText="" warningText="" alarmText="Alarm60 Bottom Plate Cooling Water Over Temp -U6 [DO200]" />
<IoSensor id = "SensorPowerRod1FlowTemp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_PowerRod1FlowTemp" infoText="" warningText="" alarmText="Alarm61 Power Rod1 Cooling Water Over Temp -U7 [DO201]" />
<IoSensor id = "SensorPowerRod2FlowTemp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_PowerRod2FlowTemp" infoText="" warningText="" alarmText="Alarm62 Power Rod2 Cooling Water Over Temp -U8 [DO202]" />
<IoSensor id = "SensorInSituFlowTemp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_InSituFlowTemp" infoText="" warningText="" alarmText="Alarm63 Foreline Cooling Water Over Temp -U9 [DO203]" />
<IoSensor id = "SensorSideWallPowerRodFlowTemp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_SideWallPowerRodFlowTemp" infoText="" warningText="" alarmText="Alarm64 InSitu Cooling Water Over Temp -U10 [DO204]" />
<IoSensor id = "SensorTransformerFlowTemp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_TransformerFlowTemp" infoText="" warningText="" alarmText="Alarm65 Side Wall Power Rod Cooling Water Over Temp -U11 [DO205]" />
<IoSensor id = "SensorForelineColdTrapFlowTemp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="false" do="DO_ForelineColdTrapFlowTemp" infoText="" warningText="" alarmText="Alarm66 Transformer Cooling Water Over Temp -U14 [DO206]" />
<IoSensor id = "SensorTMFlow1Temp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" do="DO_TMFlow1Temp" infoText="" warningText="" alarmText="Alarm67 TMFlow1 Cooling Water Over Temp -U13 [DO207]" />
<IoSensor id = "SensorTMFlow2Temp" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" do="DO_TMFlow2Temp" infoText="" warningText="" alarmText="Alarm68 TMFlow2 Cooling Water Over Temp -U12 [DO208]" />
<IoSensor id = "SensorPyroCommunicationError" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" do="DO_PyroCommunicationError" infoText="" warningText="" alarmText="Alarm69 Pyro Communication Error [DO220]" />
<IoSensor id = "SensorTC1PyroWarmMaxDiff" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" do="DO_TC1PyroWarmMaxDiff" infoText="" warningText="" alarmText="Alarm70 Pyro Warm Max Diff [DO230]" />
<IoSensor id = "SensorTC1AETempRasisingFast" module="" display="" schematicId="" unit="" aioType="" textOutTrigValue="true" do="DO_TC1AETempRasisingFast" infoText="" warningText="" alarmText="Alarm71 PyroTemp Raising Fast [DO231]" />
<IoSensor id = "SensorTC1AETempHeaterResistanceAnomaly" module = "" display = "" schematicId = "" unit = "" aioType = "" textOutTrigValue = "true" do = "DI_MFC19Offline" infoText = "" warningText = "" alarmText = "Alarm72 Heater Resistance Abnormity [DO232]" />
</IoSensors>
<SicServos classType="SicPM.Devices.SicServo" assembly="SicPM">

View File

@ -37,7 +37,8 @@
<Catalog DisplayName="StepInfo">
<Group DisplayName="Temperature -> Control Mode">
<Step ModuleName="" DeviceType="" InputType="ReadOnlySelection" DisplayName="8. PSU Control Mode" UnitName="" ControlName="TC1.SetHeaterMode" Description="">
<Item DisplayName="Pyro" ControlName="Pyro" />
<Item DisplayName="PyroAuto" ControlName="PyroAuto" />
<Item DisplayName="PyroFollow" ControlName="PyroFollow" />
<Item DisplayName="TC" ControlName="TC" />
<Item DisplayName="Power" ControlName="Power" />
</Step>

View File

@ -53,9 +53,9 @@
<DI_ITEM Index="61" Name="DI_TMPumpFlowSW" BufferOffset="61" Addr="61" Description=""/>
<DI_ITEM Index="62" Name="DI_DryPumpFlowSW" BufferOffset="62" Addr="62" Description=""/>
<DI_ITEM Index="65" Name="DI_DryPump1Running" BufferOffset="65" Addr="65" Description=""/>
<DI_ITEM Index="66" Name="DI_DryPump2Running" BufferOffset="66" Addr="66" Description=""/>
<DI_ITEM Index="66" Name="DI_DryPump2Running" BufferOffset="66" Addr="66" Description="Visibility.Hidden"/>
<DI_ITEM Index="67" Name="DI_DryPump1Warning" BufferOffset="67" Addr="67" Description=""/>
<DI_ITEM Index="68" Name="DI_DryPump2Warning" BufferOffset="68" Addr="68" Description=""/>
<DI_ITEM Index="68" Name="DI_DryPump2Warning" BufferOffset="68" Addr="68" Description="Visibility.Hidden"/>
<DI_ITEM Index="72" Name="DI_FacilityWarningSW" BufferOffset="72" Addr="72" Description=""/>
<DI_ITEM Index="76" Name="DI_MainCBStatusSW" BufferOffset="76" Addr="76" Description=""/>
<DI_ITEM Index="77" Name="DI_PowerRackWaterLeakSW" BufferOffset="77" Addr="77" Description=""/>
@ -179,12 +179,12 @@
<DI_ITEM Index="308" Name="DI_PSUInnerTempLAlarm" BufferOffset="308" Addr="308" Description=""/>
<DI_ITEM Index="309" Name="DI_PSUMiddleTempLAlarm" BufferOffset="309" Addr="309" Description=""/>
<DI_ITEM Index="310" Name="DI_PSUOuterTempLAlarm" BufferOffset="310" Addr="310" Description=""/>
<DI_ITEM Index="311" Name="DI_SCRUpperTempHAlarm" BufferOffset="311" Addr="311" Description=""/>
<DI_ITEM Index="312" Name="DI_SCRMiddleTempHAlarm" BufferOffset="312" Addr="312" Description=""/>
<DI_ITEM Index="313" Name="DI_SCRLowerTempHAlarm" BufferOffset="313" Addr="313" Description=""/>
<DI_ITEM Index="314" Name="DI_SCRUpperTempLAlarm" BufferOffset="314" Addr="314" Description=""/>
<DI_ITEM Index="315" Name="DI_SCRMiddleTempLAlarm" BufferOffset="315" Addr="315" Description=""/>
<DI_ITEM Index="316" Name="DI_SCRLowerTempLAlarm" BufferOffset="316" Addr="316" Description=""/>
<DI_ITEM Index="311" Name="DI_SCRUpperTempHAlarm" BufferOffset="311" Addr="311" Description="Visibility.Hidden"/>
<DI_ITEM Index="312" Name="DI_SCRMiddleTempHAlarm" BufferOffset="312" Addr="312" Description="Visibility.Hidden"/>
<DI_ITEM Index="313" Name="DI_SCRLowerTempHAlarm" BufferOffset="313" Addr="313" Description="Visibility.Hidden"/>
<DI_ITEM Index="314" Name="DI_SCRUpperTempLAlarm" BufferOffset="314" Addr="314" Description="Visibility.Hidden"/>
<DI_ITEM Index="315" Name="DI_SCRMiddleTempLAlarm" BufferOffset="315" Addr="315" Description="Visibility.Hidden"/>
<DI_ITEM Index="316" Name="DI_SCRLowerTempLAlarm" BufferOffset="316" Addr="316" Description="Visibility.Hidden"/>
<DI_ITEM Index="320" Name="DI_PSU1Alarm" BufferOffset="320" Addr="320" Description=""/>
<DI_ITEM Index="321" Name="DI_PSU2Alarm" BufferOffset="321" Addr="321" Description=""/>
<DI_ITEM Index="322" Name="DI_PSU3Alarm" BufferOffset="322" Addr="322" Description=""/>
@ -216,23 +216,30 @@
<DI_ITEM Index="364" Name="DI_MFC14Offline" BufferOffset="364" Addr="364" Description=""/>
<DI_ITEM Index="365" Name="DI_MFC15Offline" BufferOffset="365" Addr="365" Description=""/>
<DI_ITEM Index="366" Name="DI_MFC16Offline" BufferOffset="366" Addr="366" Description=""/>
<DI_ITEM Index="369" Name="DI_MFC19Offline" BufferOffset="369" Addr="369" Description=""/>
<DI_ITEM Index="367" Name="DI_MFC17Offline" BufferOffset="367" Addr="367" Description=""/>
<DI_ITEM Index="368" Name="DI_MFC18Offline" BufferOffset="368" Addr="368" Description=""/>
<DI_ITEM Index="369" Name="DI_MFC19Offline" BufferOffset="369" Addr="369" Description=""/>
<DI_ITEM Index="370" Name="DI_MFC20Offline" BufferOffset="370" Addr="370" Description=""/>
<DI_ITEM Index="371" Name="DI_MFC21Offline" BufferOffset="371" Addr="371" Description=""/>
<DI_ITEM Index="372" Name="DI_MFC22Offline" BufferOffset="372" Addr="372" Description=""/>
<DI_ITEM Index="373" Name="DI_MFC23Offline" BufferOffset="373" Addr="373" Description=""/>
<DI_ITEM Index="374" Name="DI_MFC24Offline" BufferOffset="374" Addr="374" Description=""/>
<DI_ITEM Index="375" Name="DI_MFC25Offline" BufferOffset="375" Addr="375" Description=""/>
<DI_ITEM Index="376" Name="DI_MFC26Offline" BufferOffset="376" Addr="376" Description=""/>
<DI_ITEM Index="377" Name="DI_MFC27Offline" BufferOffset="377" Addr="377" Description=""/>
<DI_ITEM Index="378" Name="DI_MFC28Offline" BufferOffset="378" Addr="378" Description=""/>
<DI_ITEM Index="379" Name="DI_MFC29Offline" BufferOffset="379" Addr="379" Description=""/>
<DI_ITEM Index="380" Name="DI_MFC30Offline" BufferOffset="380" Addr="380" Description=""/>
<DI_ITEM Index="381" Name="DI_MFC31Offline" BufferOffset="381" Addr="381" Description=""/>
<DI_ITEM Index="382" Name="DI_MFC32Offline" BufferOffset="382" Addr="382" Description=""/>
<DI_ITEM Index="383" Name="DI_MFC33Offline" BufferOffset="383" Addr="383" Description=""/>
<DI_ITEM Index="384" Name="DI_MFC34Offline" BufferOffset="384" Addr="384" Description=""/>
<DI_ITEM Index="385" Name="DI_MFC35Offline" BufferOffset="385" Addr="385" Description=""/>
<DI_ITEM Index="386" Name="DI_MFC36Offline" BufferOffset="386" Addr="386" Description=""/>
<DI_ITEM Index="387" Name="DI_MFC37Offline" BufferOffset="387" Addr="387" Description=""/>
<DI_ITEM Index="388" Name="DI_MFC38Offline" BufferOffset="388" Addr="388" Description=""/>
<DI_ITEM Index="389" Name="DI_MFC39Offline" BufferOffset="389" Addr="389" Description=""/>
<DI_ITEM Index="390" Name="DI_MFC40Offline" BufferOffset="390" Addr="390" Description=""/>
<DI_ITEM Index="391" Name="DI_PC01Offline" BufferOffset="391" Addr="391" Description=""/>
<DI_ITEM Index="392" Name="DI_PC02Offline" BufferOffset="392" Addr="392" Description=""/>
<DI_ITEM Index="393" Name="DI_PC03Offline" BufferOffset="393" Addr="393" Description=""/>
@ -240,20 +247,25 @@
<DI_ITEM Index="395" Name="DI_PC05Offline" BufferOffset="395" Addr="395" Description=""/>
<DI_ITEM Index="396" Name="DI_PC06Offline" BufferOffset="396" Addr="396" Description=""/>
<DI_ITEM Index="397" Name="DI_PC07Offline" BufferOffset="397" Addr="397" Description=""/>
<DI_ITEM Index="401" Name="DI_SHFlowTempU1OT" BufferOffset="401" Addr="401" Description=""/>
<DI_ITEM Index="402" Name="DI_ChamTopFlowTempU2OT" BufferOffset="402" Addr="402" Description=""/>
<DI_ITEM Index="403" Name="DI_ChamMiddleFlow1TempU3OT" BufferOffset="403" Addr="403" Description=""/>
<DI_ITEM Index="404" Name="DI_ChamMiddleFlow2TempU4OT" BufferOffset="404" Addr="404" Description=""/>
<DI_ITEM Index="405" Name="DI_ChamBottomFlowTempU5OT" BufferOffset="405" Addr="405" Description=""/>
<DI_ITEM Index="406" Name="DI_BottomPlateFlowTempU6OT" BufferOffset="406" Addr="406" Description=""/>
<DI_ITEM Index="407" Name="DI_PowerRodFlow1TempU7OT" BufferOffset="407" Addr="407" Description=""/>
<DI_ITEM Index="408" Name="DI_PowerRodFlow2TempU8OT" BufferOffset="408" Addr="408" Description=""/>
<DI_ITEM Index="409" Name="DI_ForelineColdTrapFlowTempU9OT" BufferOffset="409" Addr="409" Description=""/>
<DI_ITEM Index="410" Name="DI_InSituFlowTempU10OT" BufferOffset="410" Addr="410" Description=""/>
<DI_ITEM Index="411" Name="DI_SideWallPowerRodFlowTempU11OT" BufferOffset="411" Addr="411" Description=""/>
<DI_ITEM Index="412" Name="DI_TransformerFlowTempU14OT" BufferOffset="412" Addr="412" Description=""/>
<DI_ITEM Index="413" Name="DI_TMFlow1TempU12OT" BufferOffset="413" Addr="413" Description=""/>
<DI_ITEM Index="414" Name="DI_TMFlow2TempU13OT" BufferOffset="414" Addr="414" Description=""/>
<DI_ITEM Index="398" Name="DI_PC08Offline" BufferOffset="398" Addr="398" Description=""/>
<DI_ITEM Index="399" Name="DI_PC09Offline" BufferOffset="399" Addr="399" Description=""/>
<DI_ITEM Index="400" Name="DI_PC10Offline" BufferOffset="400" Addr="400" Description=""/>
<DI_ITEM Index="401" Name="DI_SHFlowTempU1OT" BufferOffset="401" Addr="401" Description="Visibility.Hidden"/>
<DI_ITEM Index="402" Name="DI_ChamTopFlowTempU2OT" BufferOffset="402" Addr="402" Description="Visibility.Hidden"/>
<DI_ITEM Index="403" Name="DI_ChamMiddleFlow1TempU3OT" BufferOffset="403" Addr="403" Description="Visibility.Hidden"/>
<DI_ITEM Index="404" Name="DI_ChamMiddleFlow2TempU4OT" BufferOffset="404" Addr="404" Description="Visibility.Hidden"/>
<DI_ITEM Index="405" Name="DI_ChamBottomFlowTempU5OT" BufferOffset="405" Addr="405" Description="Visibility.Hidden"/>
<DI_ITEM Index="406" Name="DI_BottomPlateFlowTempU6OT" BufferOffset="406" Addr="406" Description="Visibility.Hidden"/>
<DI_ITEM Index="407" Name="DI_PowerRodFlow1TempU7OT" BufferOffset="407" Addr="407" Description="Visibility.Hidden"/>
<DI_ITEM Index="408" Name="DI_PowerRodFlow2TempU8OT" BufferOffset="408" Addr="408" Description="Visibility.Hidden"/>
<DI_ITEM Index="409" Name="DI_ForelineColdTrapFlowTempU9OT" BufferOffset="409" Addr="409" Description="Visibility.Hidden"/>
<DI_ITEM Index="410" Name="DI_InSituFlowTempU10OT" BufferOffset="410" Addr="410" Description="Visibility.Hidden"/>
<DI_ITEM Index="411" Name="DI_SideWallPowerRodFlowTempU11OT" BufferOffset="411" Addr="411" Description="Visibility.Hidden"/>
<DI_ITEM Index="412" Name="DI_TransformerFlowTempU14OT" BufferOffset="412" Addr="412" Description="Visibility.Hidden"/>
<DI_ITEM Index="413" Name="DI_TMFlow1TempU12OT" BufferOffset="413" Addr="413" Description="Visibility.Hidden"/>
<DI_ITEM Index="414" Name="DI_TMFlow2TempU13OT" BufferOffset="414" Addr="414" Description="Visibility.Hidden"/>
</Dig_In>
<Dig_Out>
<DO_ITEM Index="0" Name="DO_TCSSupply" BufferOffset="0" Addr="0" Description=""/>
@ -301,7 +313,7 @@
<DO_ITEM Index="50" Name="DO_GasBoxVentBypass" BufferOffset="50" Addr="50" Description="V25"/>
<DO_ITEM Index="51" Name="DO_C3H8SwitchHTPurge" BufferOffset="51" Addr="51" Description="V99"/>
<DO_ITEM Index="52" Name="DO_PumpBypass" BufferOffset="52" Addr="52" Description="V27"/>
<DO_ITEM Index="53" Name="DO_V28" BufferOffset="53" Addr="53" Description="V28"/>
<DO_ITEM Index="53" Name="DO_V28" BufferOffset="53" Addr="53" Description="V28.Visibility.Hidden"/>
<DO_ITEM Index="54" Name="DO_CarryGasFinal" BufferOffset="54" Addr="54" Description="V97"/>
<DO_ITEM Index="56" Name="DO_PSUEnable" BufferOffset="56" Addr="56" Description=""/>
<DO_ITEM Index="57" Name="DO_InnerHeaterEnable" BufferOffset="57" Addr="57" Description=""/>
@ -377,26 +389,27 @@
<DO_ITEM Index="184" Name="DO_PostProcessRunning" BufferOffset="184" Addr="184" Description=""/>
<DO_ITEM Index="185" Name="DO_ProcessIdleRunning" BufferOffset="185" Addr="185" Description=""/>
<DO_ITEM Index="190" Name="DO_ConfinementRingUpDisable" BufferOffset="190" Addr="190" Description=""/>
<DO_ITEM Index="192" Name="DO_ReactorPressRisingRateFast" BufferOffset="192" Addr="192" Description=""/>
<DO_ITEM Index="193" Name="DO_UPSEnable" BufferOffset="193" Addr="193" Description=""/>
<DO_ITEM Index="194" Name="DO_UPSLowBattery" BufferOffset="194" Addr="194" Description=""/>
<DO_ITEM Index="195" Name="DO_ChamMiddleFlow2Temp" BufferOffset="195" Addr="195" Description=""/>
<DO_ITEM Index="196" Name="DO_SHFlowTemp" BufferOffset="196" Addr="196" Description=""/>
<DO_ITEM Index="197" Name="DO_ChamTopFlowTemp" BufferOffset="197" Addr="197" Description=""/>
<DO_ITEM Index="198" Name="DO_ChamMiddleFlow1Temp" BufferOffset="198" Addr="198" Description=""/>
<DO_ITEM Index="199" Name="DO_ChamBottomFlowTemp" BufferOffset="199" Addr="199" Description=""/>
<DO_ITEM Index="200" Name="DO_BottomPlateFlowTemp" BufferOffset="200" Addr="200" Description=""/>
<DO_ITEM Index="201" Name="DO_PowerRod1FlowTemp" BufferOffset="201" Addr="201" Description=""/>
<DO_ITEM Index="202" Name="DO_PowerRod2FlowTemp" BufferOffset="202" Addr="202" Description=""/>
<DO_ITEM Index="203" Name="DO_InSituFlowTemp" BufferOffset="203" Addr="203" Description=""/>
<DO_ITEM Index="192" Name="DO_ReactorPressRisingRateFast" BufferOffset="192" Addr="192" Description=""/>
<DO_ITEM Index="193" Name="DO_UPSEnable" BufferOffset="193" Addr="193" Description=""/>
<DO_ITEM Index="194" Name="DO_UPSLowBattery" BufferOffset="194" Addr="194" Description=""/>
<DO_ITEM Index="195" Name="DO_ChamMiddleFlow2Temp" BufferOffset="195" Addr="195" Description=""/>
<DO_ITEM Index="196" Name="DO_SHFlowTemp" BufferOffset="196" Addr="196" Description=""/>
<DO_ITEM Index="197" Name="DO_ChamTopFlowTemp" BufferOffset="197" Addr="197" Description=""/>
<DO_ITEM Index="198" Name="DO_ChamMiddleFlow1Temp" BufferOffset="198" Addr="198" Description=""/>
<DO_ITEM Index="199" Name="DO_ChamBottomFlowTemp" BufferOffset="199" Addr="199" Description=""/>
<DO_ITEM Index="200" Name="DO_BottomPlateFlowTemp" BufferOffset="200" Addr="200" Description=""/>
<DO_ITEM Index="201" Name="DO_PowerRod1FlowTemp" BufferOffset="201" Addr="201" Description=""/>
<DO_ITEM Index="202" Name="DO_PowerRod2FlowTemp" BufferOffset="202" Addr="202" Description=""/>
<DO_ITEM Index="203" Name="DO_InSituFlowTemp" BufferOffset="203" Addr="203" Description=""/>
<DO_ITEM Index="204" Name="DO_SideWallPowerRodFlowTemp" BufferOffset="204" Addr="204" Description=""/>
<DO_ITEM Index="205" Name="DO_TransformerFlowTemp" BufferOffset="205" Addr="205" Description=""/>
<DO_ITEM Index="205" Name="DO_TransformerFlowTemp" BufferOffset="205" Addr="205" Description=""/>
<DO_ITEM Index="206" Name="DO_ForelineColdTrapFlowTemp" BufferOffset="206" Addr="206" Description=""/>
<DO_ITEM Index="220" Name="DO_PyroCommunicationError" BufferOffset="220" Addr="220" Description=""/>
<DO_ITEM Index="230" Name="DO_TC1PyroWarmMaxDiff" BufferOffset="230" Addr="230" Description=""/>
<DO_ITEM Index="231" Name="DO_TC1AETempRasisingFast" BufferOffset="231" Addr="231" Description=""/>
<DO_ITEM Index="207" Name="DO_TMFlow1Temp" BufferOffset="207" Addr="207" Description=""/>
<DO_ITEM Index="208" Name="DO_TMFlow2Temp" BufferOffset="208" Addr="208" Description=""/>
<DO_ITEM Index="220" Name="DO_PyroCommunicationError" BufferOffset="220" Addr="220" Description=""/>
<DO_ITEM Index="230" Name="DO_TC1PyroWarmMaxDiff" BufferOffset="230" Addr="230" Description=""/>
<DO_ITEM Index="231" Name="DO_TC1AETempRasisingFast" BufferOffset="231" Addr="231" Description=""/>
<DO_ITEM Index="232" Name="DO_TC1AETempHeaterResistanceAnomaly " BufferOffset="232" Addr="232" Description=""/>
</Dig_Out>
<Ana_In>
<AI_ITEM Index="0" Name="AI_ChamPress" BufferOffset="0" Addr="0" Description="" />
@ -492,9 +505,9 @@
<AI_ITEM Index="112" Name="AI_PressCtrl5" BufferOffset="112" Addr="112" Description="PressCtrl5"/>
<AI_ITEM Index="113" Name="AI_PressCtrl6" BufferOffset="113" Addr="113" Description="PressCtrl6"/>
<AI_ITEM Index="114" Name="AI_PressCtrl7" BufferOffset="114" Addr="114" Description="PressCtrl7"/>
<AI_ITEM Index="115" Name="AI_PressCtrl8" BufferOffset="115" Addr="115" Description="PressCtrl8"/>
<AI_ITEM Index="116" Name="AI_PressCtrl9" BufferOffset="116" Addr="116" Description="PressCtrl9"/>
<AI_ITEM Index="117" Name="AI_PressCtrl10" BufferOffset="117" Addr="117" Description="PressCtrl10"/>
<AI_ITEM Index="115" Name="AI_PressCtrl8" BufferOffset="115" Addr="115" Description="PressCtrl8.Visibility.Hidden"/>
<AI_ITEM Index="116" Name="AI_PressCtrl9" BufferOffset="116" Addr="116" Description="PressCtrl9.Visibility.Hidden"/>
<AI_ITEM Index="117" Name="AI_PressCtrl10" BufferOffset="117" Addr="117" Description="PressCtrl10.Visibility.Hidden"/>
<AI_ITEM Index="118" Name="AI_ActualSpeed" BufferOffset="118" Addr="118" Description=""/>
<AI_ITEM Index="119" Name="AI_ActualCurrent" BufferOffset="119" Addr="119" Description=""/>
<AI_ITEM Index="120" Name="AI_ActualspeedACC" BufferOffset="120" Addr="120" Description=""/>
@ -551,9 +564,9 @@
<AI_ITEM Index="175" Name="AI_PC5ActMode" BufferOffset="175" Addr="175" Description=""/>
<AI_ITEM Index="176" Name="AI_PC6ActMode" BufferOffset="176" Addr="176" Description=""/>
<AI_ITEM Index="177" Name="AI_PC7ActMode" BufferOffset="177" Addr="177" Description=""/>
<AI_ITEM Index="178" Name="AI_PC8ActMode" BufferOffset="178" Addr="178" Description=""/>
<AI_ITEM Index="179" Name="AI_PC9ActMode" BufferOffset="179" Addr="179" Description=""/>
<AI_ITEM Index="180" Name="AI_PC10ActMode" BufferOffset="180" Addr="180" Description=""/>
<AI_ITEM Index="178" Name="AI_PC8ActMode" BufferOffset="178" Addr="178" Description="Visibility.Hidden"/>
<AI_ITEM Index="179" Name="AI_PC9ActMode" BufferOffset="179" Addr="179" Description="Visibility.Hidden"/>
<AI_ITEM Index="180" Name="AI_PC10ActMode" BufferOffset="180" Addr="180" Description="Visibility.Hidden"/>
<AI_ITEM Index="181" Name="AI_PSUInnerWorkingOP" BufferOffset="181" Addr="181" Description=""/>
<AI_ITEM Index="182" Name="AI_PSUMiddleWorkingOP" BufferOffset="182" Addr="182" Description=""/>
<AI_ITEM Index="183" Name="AI_PSUOuterWorkingOP" BufferOffset="183" Addr="183" Description=""/>
@ -580,13 +593,13 @@
<AI_ITEM Index="229" Name="AI_SCRUpperPV" BufferOffset="229" Addr="229" Description=""/>
<AI_ITEM Index="230" Name="AI_SCRMiddlePV" BufferOffset="230" Addr="230" Description=""/>
<AI_ITEM Index="231" Name="AI_SCRLowerPV" BufferOffset="231" Addr="231" Description=""/>
<AI_ITEM Index="232" Name="AI_SCRUpperTempHighAlarm" BufferOffset="232" Addr="232" Description=""/>
<AI_ITEM Index="233" Name="AI_SCRMiddleTempHighAlarm" BufferOffset="233" Addr="233" Description=""/>
<AI_ITEM Index="234" Name="AI_SCRLowerTempHighAlarm" BufferOffset="234" Addr="234" Description=""/>
<AI_ITEM Index="235" Name="AI_SCRUpperTempLowAlarm" BufferOffset="235" Addr="235" Description=""/>
<AI_ITEM Index="236" Name="AI_SCRMiddleTempLowAlarm" BufferOffset="236" Addr="236" Description=""/>
<AI_ITEM Index="237" Name="AI_SCRLowerTempLowAlarm" BufferOffset="237" Addr="237" Description=""/>
<AI_ITEM Index="238" Name="AI_TempCtrl2" BufferOffset="238" Addr="238" Description=""/>
<AI_ITEM Index="232" Name="AI_SCRUpperTempHighAlarm" BufferOffset="232" Addr="232" Description="Visibility.Hidden"/>
<AI_ITEM Index="233" Name="AI_SCRMiddleTempHighAlarm" BufferOffset="233" Addr="233" Description="Visibility.Hidden"/>
<AI_ITEM Index="234" Name="AI_SCRLowerTempHighAlarm" BufferOffset="234" Addr="234" Description="Visibility.Hidden"/>
<AI_ITEM Index="235" Name="AI_SCRUpperTempLowAlarm" BufferOffset="235" Addr="235" Description="Visibility.Hidden"/>
<AI_ITEM Index="236" Name="AI_SCRMiddleTempLowAlarm" BufferOffset="236" Addr="236" Description="Visibility.Hidden"/>
<AI_ITEM Index="237" Name="AI_SCRLowerTempLowAlarm" BufferOffset="237" Addr="237" Description="Visibility.Hidden"/>
<AI_ITEM Index="238" Name="AI_TempCtrl2" BufferOffset="238" Addr="238" Description="Visibility.Hidden"/>
<AI_ITEM Index="261" Name="AI_PSU2Voltage" BufferOffset="261" Addr="261" Description=""/>
<AI_ITEM Index="262" Name="AI_PSU2Arms" BufferOffset="262" Addr="262" Description=""/>
<AI_ITEM Index="263" Name="AI_PSU2Power" BufferOffset="263" Addr="263" Description=""/>
@ -663,9 +676,9 @@
<AO_ITEM Index="112" Name="AO_PressCtrl5" BufferOffset="112" Addr="112" Description="" />
<AO_ITEM Index="113" Name="AO_PressCtrl6" BufferOffset="113" Addr="113" Description="" />
<AO_ITEM Index="114" Name="AO_PressCtrl7" BufferOffset="114" Addr="114" Description="" />
<AO_ITEM Index="115" Name="AO_PressCtrl8" BufferOffset="115" Addr="115" Description="" />
<AO_ITEM Index="116" Name="AO_PressCtrl9" BufferOffset="115" Addr="116" Description="" />
<AO_ITEM Index="117" Name="AO_PressCtrl10" BufferOffset="117" Addr="117" Description="" />
<AO_ITEM Index="115" Name="AO_PressCtrl8" BufferOffset="115" Addr="115" Description="Visibility.Hidden" />
<AO_ITEM Index="116" Name="AO_PressCtrl9" BufferOffset="115" Addr="116" Description="Visibility.Hidden" />
<AO_ITEM Index="117" Name="AO_PressCtrl10" BufferOffset="117" Addr="117" Description="Visibility.Hidden" />
<AO_ITEM Index="118" Name="AO_SetpointSpeed" BufferOffset="118" Addr="118" Description="" />
<AO_ITEM Index="127" Name="AO_ValveModeSetpoint" BufferOffset="127" Addr="127" Description="" />
<AO_ITEM Index="128" Name="AO_SetpointPositon" BufferOffset="128" Addr="128" Description="" />

View File

@ -1117,7 +1117,6 @@
<Limit di="PM1.DI_PowerRod2FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-21" />
<Limit di="PM1.DI_InSituFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-23" />
<Limit di="PM1.DI_SideWallPowerRodFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-24" />
<Limit di="PM1.DI_TransformerFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-25" />
<Limit di="PM1.DI_PMH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-30" />
<Limit di="PM1.DI_GBHCLDetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-31" />
<Limit di="PM1.DI_DryPumpAlarm" value="true" tip="" tip.zh-CN="" tip.en-US="DI-36" />
@ -1142,8 +1141,11 @@
<Limit do="PM1.DO_PowerRod2FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-202" />
<Limit do="PM1.DO_InSituFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-203" />
<Limit do="PM1.DO_SideWallPowerRodFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-204" />
<Limit do="PM1.DO_TransformerFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-205" />
<Limit do="PM1.DO_ForelineColdTrapFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-206" />
<Limit do="PM1.DO_PyroCommunicationError" value="false" tip="" tip.zh-CN="" tip.en-US="DO-220" />
<Limit do="PM1.DO_TC1PyroWarmMaxDiff" value="false" tip="" tip.zh-CN="" tip.en-US="DO-230" />
<Limit do="PM1.DO_TC1AETempRasisingFast" value="false" tip="" tip.zh-CN="" tip.en-US="DO-231" />
</Action>
<Action do="PM1.DO_InnerHeaterEnable" value="true" tip="TrigInnerHeaterEnable" tip.zh-CN="" tip.en-US="DO-57">
<Limit di="PM1.DI_ChamLidClosed" value="true" tip="" tip.zh-CN="" tip.en-US="DI-0" />
@ -1159,12 +1161,13 @@
<Limit di="PM1.DI_PowerRod2FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-21" />
<Limit di="PM1.DI_InSituFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-23" />
<Limit di="PM1.DI_SideWallPowerRodFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-24" />
<Limit di="PM1.DI_TransformerFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-25" />
<Limit di="PM1.DI_LowCoolingWaterPressureSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-27" />
<Limit di="PM1.DI_LowCoolingWaterPressureSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-27" />
<Limit di="PM1.DI_PowerRackExhaustDP" value="true" tip="" tip.zh-CN="" tip.en-US="DI-29" />
<Limit di="PM1.DI_PMH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-30" />
<Limit di="PM1.DI_GBHCLDetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-31" />
<Limit di="PM1.DI_DryPumpAlarm" value="true" tip="" tip.zh-CN="" tip.en-US="DI-36" />
<Limit di="PM1.DI_PumpExhaustPressSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-38" />
<Limit di="PM1.DI_PMAExhaustDPSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-39" />
<Limit di="PM1.DI_ScrubberIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-41" />
<Limit di="PM1.DI_FacilityIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-42" />
<Limit di="PM1.DI_ServoDriverFaultSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-45" />
@ -1191,9 +1194,10 @@
<Limit do="PM1.DO_PowerRod2FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-202" />
<Limit do="PM1.DO_InSituFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-203" />
<Limit do="PM1.DO_SideWallPowerRodFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-204" />
<Limit do="PM1.DO_TransformerFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-205" />
<Limit do="PM1.DO_ForelineColdTrapFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-206" />
<Limit do="PM1.DO_PyroCommunicationError" value="false" tip="" tip.zh-CN="" tip.en-US="DO-220" />
<Limit do="PM1.DO_TC1PyroWarmMaxDiff" value="false" tip="" tip.zh-CN="" tip.en-US="DO-230" />
<Limit do="PM1.DO_TC1AETempRasisingFast" value="false" tip="" tip.zh-CN="" tip.en-US="DO-231" />
<Limit di="PM1.DI_PSU1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-320" />
<Limit di="PM1.DI_PSU2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-321" />
@ -1217,8 +1221,7 @@
<Limit di="PM1.DI_PowerRod2FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-21" />
<Limit di="PM1.DI_InSituFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-23" />
<Limit di="PM1.DI_SideWallPowerRodFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-24" />
<Limit di="PM1.DI_TransformerFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-25" />
<Limit di="PM1.DI_LowCoolingWaterPressureSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-27" />
<Limit di="PM1.DI_LowCoolingWaterPressureSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-27" />
<Limit di="PM1.DI_PowerRackExhaustDP" value="true" tip="" tip.zh-CN="" tip.en-US="DI-29" />
<Limit di="PM1.DI_PMH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-30" />
<Limit di="PM1.DI_GBHCLDetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-31" />
@ -1254,9 +1257,10 @@
<Limit do="PM1.DO_PowerRod2FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-202" />
<Limit do="PM1.DO_InSituFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-203" />
<Limit do="PM1.DO_SideWallPowerRodFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-204" />
<Limit do="PM1.DO_TransformerFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-205" />
<Limit do="PM1.DO_ForelineColdTrapFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-206" />
<Limit do="PM1.DO_PyroCommunicationError" value="false" tip="" tip.zh-CN="" tip.en-US="DO-220" />
<Limit do="PM1.DO_TC1PyroWarmMaxDiff" value="false" tip="" tip.zh-CN="" tip.en-US="DO-230" />
<Limit do="PM1.DO_TC1AETempRasisingFast" value="false" tip="" tip.zh-CN="" tip.en-US="DO-231" />
<Limit di="PM1.DI_PSU1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-320" />
<Limit di="PM1.DI_PSU2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-321" />
@ -1279,8 +1283,7 @@
<Limit di="PM1.DI_PowerRod2FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-21" />
<Limit di="PM1.DI_InSituFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-23" />
<Limit di="PM1.DI_SideWallPowerRodFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-24" />
<Limit di="PM1.DI_TransformerFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-25" />
<Limit di="PM1.DI_LowCoolingWaterPressureSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-27" />
<Limit di="PM1.DI_LowCoolingWaterPressureSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-27" />
<Limit di="PM1.DI_PowerRackExhaustDP" value="true" tip="" tip.zh-CN="" tip.en-US="DI-29" />
<Limit di="PM1.DI_PMH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-30" />
<Limit di="PM1.DI_GBHCLDetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-31" />
@ -1316,9 +1319,10 @@
<Limit do="PM1.DO_PowerRod2FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-202" />
<Limit do="PM1.DO_InSituFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-203" />
<Limit do="PM1.DO_SideWallPowerRodFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-204" />
<Limit do="PM1.DO_TransformerFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-205" />
<Limit do="PM1.DO_ForelineColdTrapFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-206" />
<Limit do="PM1.DO_PyroCommunicationError" value="false" tip="" tip.zh-CN="" tip.en-US="DO-220" />
<Limit do="PM1.DO_TC1PyroWarmMaxDiff" value="false" tip="" tip.zh-CN="" tip.en-US="DO-230" />
<Limit do="PM1.DO_TC1AETempRasisingFast" value="false" tip="" tip.zh-CN="" tip.en-US="DO-231" />
<Limit di="PM1.DI_PSU1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-320" />
<Limit di="PM1.DI_PSU2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-321" />
@ -1327,149 +1331,179 @@
<Limit di="PM1.DI_SCR2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-324" />
<Limit di="PM1.DI_SCR3Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-325"/>
</Action>
<Action do="PM1.DO_SCR1Enable" value="true" tip="DO_SCR1Enable" tip.zh-CN="" tip.en-US="DO-134">
<Limit di="PM1.DI_ChamLidClosed" value="true" tip="" tip.zh-CN="" tip.en-US="DI-0" />
<Limit di="PM1.DI_ChamPressAboveATMSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-9" />
<Limit di="PM1.DI_ChamAtSafeProcessPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-5" />
<Limit di="PM1.DI_HeaterTempUp1680CSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-10" />
<Limit di="PM1.DI_SHFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-15" />
<Limit di="PM1.DI_ChamTopFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-16" />
<Limit di="PM1.DI_ChamMiddleFlow1SW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-17" />
<Limit di="PM1.DI_ChamBottomFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-18" />
<Limit di="PM1.DI_BottomPlateFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-19" />
<Limit di="PM1.DI_PowerRod1FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-20" />
<Limit di="PM1.DI_PowerRod2FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-21" />
<Limit di="PM1.DI_InSituFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-23" />
<Limit di="PM1.DI_SideWallPowerRodFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-24" />
<Limit di="PM1.DI_TransformerFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-25" />
<Limit di="PM1.DI_PMH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-30" />
<Limit di="PM1.DI_GBHCLDetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-31" />
<Limit di="PM1.DI_DryPumpAlarm" value="true" tip="" tip.zh-CN="" tip.en-US="DI-36" />
<Limit di="PM1.DI_PumpExhaustPressSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-38" />
<Limit di="PM1.DI_ScrubberIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-41" />
<Limit di="PM1.DI_FacilityIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-42" />
<Limit di="PM1.DI_GN2InletPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-55" />
<Limit di="PM1.DI_GBH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-59" />
<Limit di="PM1.DI_DryPump1Running" value="true" tip="" tip.zh-CN="" tip.en-US="DI-65" />
<Limit di="PM1.DI_FacilityWarningSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-72" />
<Limit di="PM1.DI_MainCBStatusSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-76" />
<Limit di="PM1.DI_ProcessStopSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-81" />
<Limit di="PM1.DI_PSU1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-320" />
<Limit di="PM1.DI_PSU2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-321" />
<Limit di="PM1.DI_PSU3Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-322" />
<Limit di="PM1.DI_SCR1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-323" />
<Limit di="PM1.DI_SCR2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-324" />
<Limit di="PM1.DI_SCR3Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-325"/>
<Limit do="PM1.DO_ReactorPressRisingRateFast" value="true" tip="" tip.zh-CN="" tip.en-US="DO-192" />
<Limit do="PM1.DO_UPSLowBattery" value="true" tip="" tip.zh-CN="" tip.en-US="DO-194" />
<Limit do="PM1.DO_ChamMiddleFlow2Temp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-195" />
<Limit do="PM1.DO_SHFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-196" />
<Limit do="PM1.DO_ChamTopFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-197" />
<Limit do="PM1.DO_ChamMiddleFlow1Temp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-198" />
<Limit do="PM1.DO_ChamBottomFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-199" />
<Limit do="PM1.DO_BottomPlateFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-200" />
<Limit do="PM1.DO_PowerRod1FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-201" />
<Limit do="PM1.DO_PowerRod2FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-202" />
<Limit do="PM1.DO_InSituFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-203" />
<Limit do="PM1.DO_SideWallPowerRodFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-204" />
<Limit do="PM1.DO_TransformerFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-205" />
<Limit do="PM1.DO_ForelineColdTrapFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-206" />
</Action>
<Action do="PM1.DO_SCR1Enable" value="true" tip="DO_SCR1Enable" tip.zh-CN="" tip.en-US="DO-134">
<Limit di="PM1.DI_ChamLidClosed" value="true" tip="" tip.zh-CN="" tip.en-US="DI-0" />
<Limit di="PM1.DI_ChamMiddleFlow2SW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-8" />
<Limit di="PM1.DI_ChamPressAboveATMSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-9" />
<Limit di="PM1.DI_ChamAtSafeProcessPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-5" />
<Limit di="PM1.DI_HeaterTempUp1680CSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-10" />
<Limit di="PM1.DI_SHFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-15" />
<Limit di="PM1.DI_ChamTopFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-16" />
<Limit di="PM1.DI_ChamMiddleFlow1SW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-17" />
<Limit di="PM1.DI_ChamBottomFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-18" />
<Limit di="PM1.DI_BottomPlateFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-19" />
<Limit di="PM1.DI_PowerRod1FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-20" />
<Limit di="PM1.DI_PowerRod2FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-21" />
<Limit di="PM1.DI_ForelineFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-22" />
<Limit di="PM1.DI_InSituFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-23" />
<Limit di="PM1.DI_SideWallPowerRodFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-24" />
<Limit di="PM1.DI_PowerRackExhaustDP" value="true" tip="" tip.zh-CN="" tip.en-US="DI-29" />
<Limit di="PM1.DI_PMH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-30" />
<Limit di="PM1.DI_GBHCLDetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-31" />
<Limit di="PM1.DI_GBExhaustDPSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-32" />
<Limit di="PM1.DI_DryPumpAlarm" value="true" tip="" tip.zh-CN="" tip.en-US="DI-36" />
<Limit di="PM1.DI_PumpExhaustPressSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-38" />
<Limit di="PM1.DI_PMAExhaustDPSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-39" />
<Limit di="PM1.DI_PumpExhaustDPSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-40" />
<Limit di="PM1.DI_ScrubberIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-41" />
<Limit di="PM1.DI_FacilityIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-42" />
<Limit di="PM1.DI_ServoDriverFaultSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-45" />
<Limit di="PM1.DI_GN2InletPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-55" />
<Limit di="PM1.DI_ArInletPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-56" />
<Limit di="PM1.DI_H2PressureSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-57" />
<Limit di="PM1.DI_GBH2DetectorSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-58" />
<Limit di="PM1.DI_GBH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-59" />
<Limit di="PM1.DI_DryPump1Running" value="true" tip="" tip.zh-CN="" tip.en-US="DI-65" />
<Limit di="PM1.DI_FacilityWarningSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-72" />
<Limit di="PM1.DI_ProcessStopSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-81" />
<Limit di="PM1.DI_PSU1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-320" />
<Limit di="PM1.DI_PSU2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-321" />
<Limit di="PM1.DI_PSU3Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-322" />
<Limit di="PM1.DI_SCR1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-323" />
<Limit di="PM1.DI_SCR2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-324" />
<Limit di="PM1.DI_SCR3Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-325"/>
<Limit do="PM1.DO_ReactorPressRisingRateFast" value="true" tip="" tip.zh-CN="" tip.en-US="DO-192" />
<Limit do="PM1.DO_UPSEnable" value="true" tip="" tip.zh-CN="" tip.en-US="DO-193" />
<Limit do="PM1.DO_UPSLowBattery" value="true" tip="" tip.zh-CN="" tip.en-US="DO-194" />
<Limit do="PM1.DO_ChamMiddleFlow2Temp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-195" />
<Limit do="PM1.DO_SHFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-196" />
<Limit do="PM1.DO_ChamTopFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-197" />
<Limit do="PM1.DO_ChamMiddleFlow1Temp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-198" />
<Limit do="PM1.DO_ChamBottomFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-199" />
<Limit do="PM1.DO_BottomPlateFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-200" />
<Limit do="PM1.DO_PowerRod1FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-201" />
<Limit do="PM1.DO_PowerRod2FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-202" />
<Limit do="PM1.DO_InSituFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-203" />
<Limit do="PM1.DO_SideWallPowerRodFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-204" />
<Limit do="PM1.DO_PyroCommunicationError" value="false" tip="" tip.zh-CN="" tip.en-US="DO-220" />
<Limit do="PM1.DO_TC1PyroWarmMaxDiff" value="false" tip="" tip.zh-CN="" tip.en-US="DO-230" />
<Limit do="PM1.DO_TC1AETempRasisingFast" value="false" tip="" tip.zh-CN="" tip.en-US="DO-231" />
</Action>
<Action do="PM1.DO_SCR2Enable" value="true" tip="DO_SCR2Enable" tip.zh-CN="" tip.en-US="DO-135">
<Limit di="PM1.DI_ChamLidClosed" value="true" tip="" tip.zh-CN="" tip.en-US="DI-0" />
<Limit di="PM1.DI_ChamPressAboveATMSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-9" />
<Limit di="PM1.DI_ChamAtSafeProcessPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-5" />
<Limit di="PM1.DI_HeaterTempUp1680CSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-10" />
<Limit di="PM1.DI_SHFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-15" />
<Limit di="PM1.DI_ChamTopFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-16" />
<Limit di="PM1.DI_ChamMiddleFlow1SW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-17" />
<Limit di="PM1.DI_ChamBottomFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-18" />
<Limit di="PM1.DI_BottomPlateFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-19" />
<Limit di="PM1.DI_PowerRod1FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-20" />
<Limit di="PM1.DI_PowerRod2FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-21" />
<Limit di="PM1.DI_InSituFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-23" />
<Limit di="PM1.DI_SideWallPowerRodFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-24" />
<Limit di="PM1.DI_TransformerFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-25" />
<Limit di="PM1.DI_PMH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-30" />
<Limit di="PM1.DI_GBHCLDetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-31" />
<Limit di="PM1.DI_DryPumpAlarm" value="true" tip="" tip.zh-CN="" tip.en-US="DI-36" />
<Limit di="PM1.DI_PumpExhaustPressSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-38" />
<Limit di="PM1.DI_ScrubberIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-41" />
<Limit di="PM1.DI_FacilityIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-42" />
<Limit di="PM1.DI_GN2InletPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-55" />
<Limit di="PM1.DI_GBH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-59" />
<Limit di="PM1.DI_DryPump1Running" value="true" tip="" tip.zh-CN="" tip.en-US="DI-65" />
<Limit di="PM1.DI_FacilityWarningSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-72" />
<Limit di="PM1.DI_MainCBStatusSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-76" />
<Limit di="PM1.DI_ProcessStopSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-81" />
<Limit di="PM1.DI_PSU1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-320" />
<Limit di="PM1.DI_PSU2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-321" />
<Limit di="PM1.DI_PSU3Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-322" />
<Limit di="PM1.DI_SCR1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-323" />
<Limit di="PM1.DI_SCR2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-324" />
<Limit di="PM1.DI_SCR3Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-325"/>
<Limit do="PM1.DO_ReactorPressRisingRateFast" value="true" tip="" tip.zh-CN="" tip.en-US="DO-192" />
<Limit do="PM1.DO_UPSLowBattery" value="true" tip="" tip.zh-CN="" tip.en-US="DO-194" />
<Limit do="PM1.DO_ChamMiddleFlow2Temp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-195" />
<Limit do="PM1.DO_SHFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-196" />
<Limit do="PM1.DO_ChamTopFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-197" />
<Limit do="PM1.DO_ChamMiddleFlow1Temp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-198" />
<Limit do="PM1.DO_ChamBottomFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-199" />
<Limit do="PM1.DO_BottomPlateFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-200" />
<Limit do="PM1.DO_PowerRod1FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-201" />
<Limit do="PM1.DO_PowerRod2FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-202" />
<Limit do="PM1.DO_InSituFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-203" />
<Limit do="PM1.DO_SideWallPowerRodFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-204" />
<Limit do="PM1.DO_TransformerFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-205" />
<Limit do="PM1.DO_ForelineColdTrapFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-206" />
</Action>
<Limit di="PM1.DI_ChamLidClosed" value="true" tip="" tip.zh-CN="" tip.en-US="DI-0" />
<Limit di="PM1.DI_ChamMiddleFlow2SW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-8" />
<Limit di="PM1.DI_ChamPressAboveATMSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-9" />
<Limit di="PM1.DI_ChamAtSafeProcessPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-5" />
<Limit di="PM1.DI_HeaterTempUp1680CSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-10" />
<Limit di="PM1.DI_SHFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-15" />
<Limit di="PM1.DI_ChamTopFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-16" />
<Limit di="PM1.DI_ChamMiddleFlow1SW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-17" />
<Limit di="PM1.DI_ChamBottomFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-18" />
<Limit di="PM1.DI_BottomPlateFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-19" />
<Limit di="PM1.DI_PowerRod1FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-20" />
<Limit di="PM1.DI_PowerRod2FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-21" />
<Limit di="PM1.DI_ForelineFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-22" />
<Limit di="PM1.DI_InSituFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-23" />
<Limit di="PM1.DI_SideWallPowerRodFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-24" />
<Limit di="PM1.DI_PowerRackExhaustDP" value="true" tip="" tip.zh-CN="" tip.en-US="DI-29" />
<Limit di="PM1.DI_PMH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-30" />
<Limit di="PM1.DI_GBHCLDetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-31" />
<Limit di="PM1.DI_GBExhaustDPSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-32" />
<Limit di="PM1.DI_DryPumpAlarm" value="true" tip="" tip.zh-CN="" tip.en-US="DI-36" />
<Limit di="PM1.DI_PumpExhaustPressSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-38" />
<Limit di="PM1.DI_PMAExhaustDPSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-39" />
<Limit di="PM1.DI_PumpExhaustDPSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-40" />
<Limit di="PM1.DI_ScrubberIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-41" />
<Limit di="PM1.DI_FacilityIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-42" />
<Limit di="PM1.DI_ServoDriverFaultSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-45" />
<Limit di="PM1.DI_GN2InletPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-55" />
<Limit di="PM1.DI_ArInletPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-56" />
<Limit di="PM1.DI_H2PressureSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-57" />
<Limit di="PM1.DI_GBH2DetectorSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-58" />
<Limit di="PM1.DI_GBH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-59" />
<Limit di="PM1.DI_DryPump1Running" value="true" tip="" tip.zh-CN="" tip.en-US="DI-65" />
<Limit di="PM1.DI_FacilityWarningSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-72" />
<Limit di="PM1.DI_ProcessStopSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-81" />
<Limit di="PM1.DI_PSU1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-320" />
<Limit di="PM1.DI_PSU2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-321" />
<Limit di="PM1.DI_PSU3Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-322" />
<Limit di="PM1.DI_SCR1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-323" />
<Limit di="PM1.DI_SCR2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-324" />
<Limit di="PM1.DI_SCR3Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-325"/>
<Limit do="PM1.DO_ReactorPressRisingRateFast" value="true" tip="" tip.zh-CN="" tip.en-US="DO-192" />
<Limit do="PM1.DO_UPSEnable" value="true" tip="" tip.zh-CN="" tip.en-US="DO-193" />
<Limit do="PM1.DO_UPSLowBattery" value="true" tip="" tip.zh-CN="" tip.en-US="DO-194" />
<Limit do="PM1.DO_ChamMiddleFlow2Temp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-195" />
<Limit do="PM1.DO_SHFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-196" />
<Limit do="PM1.DO_ChamTopFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-197" />
<Limit do="PM1.DO_ChamMiddleFlow1Temp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-198" />
<Limit do="PM1.DO_ChamBottomFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-199" />
<Limit do="PM1.DO_BottomPlateFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-200" />
<Limit do="PM1.DO_PowerRod1FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-201" />
<Limit do="PM1.DO_PowerRod2FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-202" />
<Limit do="PM1.DO_InSituFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-203" />
<Limit do="PM1.DO_SideWallPowerRodFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-204" />
<Limit do="PM1.DO_PyroCommunicationError" value="false" tip="" tip.zh-CN="" tip.en-US="DO-220" />
<Limit do="PM1.DO_TC1PyroWarmMaxDiff" value="false" tip="" tip.zh-CN="" tip.en-US="DO-230" />
<Limit do="PM1.DO_TC1AETempRasisingFast" value="false" tip="" tip.zh-CN="" tip.en-US="DO-231" />
</Action>
<Action do="PM1.DO_SCR3Enable" value="true" tip="DO_SCR3Enable" tip.zh-CN="" tip.en-US="DO-136">
<Limit di="PM1.DI_ChamLidClosed" value="true" tip="" tip.zh-CN="" tip.en-US="DI-0" />
<Limit di="PM1.DI_ChamPressAboveATMSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-9" />
<Limit di="PM1.DI_ChamAtSafeProcessPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-5" />
<Limit di="PM1.DI_HeaterTempUp1680CSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-10" />
<Limit di="PM1.DI_SHFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-15" />
<Limit di="PM1.DI_ChamTopFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-16" />
<Limit di="PM1.DI_ChamMiddleFlow1SW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-17" />
<Limit di="PM1.DI_ChamBottomFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-18" />
<Limit di="PM1.DI_BottomPlateFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-19" />
<Limit di="PM1.DI_PowerRod1FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-20" />
<Limit di="PM1.DI_PowerRod2FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-21" />
<Limit di="PM1.DI_InSituFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-23" />
<Limit di="PM1.DI_SideWallPowerRodFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-24" />
<Limit di="PM1.DI_TransformerFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-25" />
<Limit di="PM1.DI_PMH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-30" />
<Limit di="PM1.DI_GBHCLDetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-31" />
<Limit di="PM1.DI_DryPumpAlarm" value="true" tip="" tip.zh-CN="" tip.en-US="DI-36" />
<Limit di="PM1.DI_PumpExhaustPressSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-38" />
<Limit di="PM1.DI_ScrubberIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-41" />
<Limit di="PM1.DI_FacilityIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-42" />
<Limit di="PM1.DI_GN2InletPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-55" />
<Limit di="PM1.DI_GBH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-59" />
<Limit di="PM1.DI_DryPump1Running" value="true" tip="" tip.zh-CN="" tip.en-US="DI-65" />
<Limit di="PM1.DI_FacilityWarningSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-72" />
<Limit di="PM1.DI_MainCBStatusSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-76" />
<Limit di="PM1.DI_ProcessStopSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-81" />
<Limit di="PM1.DI_PSU1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-320" />
<Limit di="PM1.DI_PSU2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-321" />
<Limit di="PM1.DI_PSU3Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-322" />
<Limit di="PM1.DI_SCR1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-323" />
<Limit di="PM1.DI_SCR2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-324" />
<Limit di="PM1.DI_SCR3Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-325"/>
<Limit do="PM1.DO_ReactorPressRisingRateFast" value="true" tip="" tip.zh-CN="" tip.en-US="DO-192" />
<Limit do="PM1.DO_UPSLowBattery" value="true" tip="" tip.zh-CN="" tip.en-US="DO-194" />
<Limit do="PM1.DO_ChamMiddleFlow2Temp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-195" />
<Limit do="PM1.DO_SHFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-196" />
<Limit do="PM1.DO_ChamTopFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-197" />
<Limit do="PM1.DO_ChamMiddleFlow1Temp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-198" />
<Limit do="PM1.DO_ChamBottomFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-199" />
<Limit do="PM1.DO_BottomPlateFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-200" />
<Limit do="PM1.DO_PowerRod1FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-201" />
<Limit do="PM1.DO_PowerRod2FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-202" />
<Limit do="PM1.DO_InSituFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-203" />
<Limit do="PM1.DO_SideWallPowerRodFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-204" />
<Limit do="PM1.DO_TransformerFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-205" />
<Limit do="PM1.DO_ForelineColdTrapFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-206" />
<Limit di="PM1.DI_ChamLidClosed" value="true" tip="" tip.zh-CN="" tip.en-US="DI-0" />
<Limit di="PM1.DI_ChamMiddleFlow2SW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-8" />
<Limit di="PM1.DI_ChamPressAboveATMSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-9" />
<Limit di="PM1.DI_ChamAtSafeProcessPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-5" />
<Limit di="PM1.DI_HeaterTempUp1680CSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-10" />
<Limit di="PM1.DI_SHFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-15" />
<Limit di="PM1.DI_ChamTopFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-16" />
<Limit di="PM1.DI_ChamMiddleFlow1SW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-17" />
<Limit di="PM1.DI_ChamBottomFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-18" />
<Limit di="PM1.DI_BottomPlateFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-19" />
<Limit di="PM1.DI_PowerRod1FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-20" />
<Limit di="PM1.DI_PowerRod2FlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-21" />
<Limit di="PM1.DI_ForelineFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-22" />
<Limit di="PM1.DI_InSituFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-23" />
<Limit di="PM1.DI_SideWallPowerRodFlowSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-24" />
<Limit di="PM1.DI_PowerRackExhaustDP" value="true" tip="" tip.zh-CN="" tip.en-US="DI-29" />
<Limit di="PM1.DI_PMH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-30" />
<Limit di="PM1.DI_GBHCLDetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-31" />
<Limit di="PM1.DI_GBExhaustDPSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-32" />
<Limit di="PM1.DI_DryPumpAlarm" value="true" tip="" tip.zh-CN="" tip.en-US="DI-36" />
<Limit di="PM1.DI_PumpExhaustPressSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-38" />
<Limit di="PM1.DI_PMAExhaustDPSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-39" />
<Limit di="PM1.DI_PumpExhaustDPSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-40" />
<Limit di="PM1.DI_ScrubberIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-41" />
<Limit di="PM1.DI_FacilityIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-42" />
<Limit di="PM1.DI_ServoDriverFaultSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-45" />
<Limit di="PM1.DI_GN2InletPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-55" />
<Limit di="PM1.DI_ArInletPressSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-56" />
<Limit di="PM1.DI_H2PressureSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-57" />
<Limit di="PM1.DI_GBH2DetectorSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-58" />
<Limit di="PM1.DI_GBH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-59" />
<Limit di="PM1.DI_DryPump1Running" value="true" tip="" tip.zh-CN="" tip.en-US="DI-65" />
<Limit di="PM1.DI_FacilityWarningSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-72" />
<Limit di="PM1.DI_ProcessStopSW" value="false" tip="" tip.zh-CN="" tip.en-US="DI-81" />
<Limit di="PM1.DI_PSU1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-320" />
<Limit di="PM1.DI_PSU2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-321" />
<Limit di="PM1.DI_PSU3Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-322" />
<Limit di="PM1.DI_SCR1Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-323" />
<Limit di="PM1.DI_SCR2Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-324" />
<Limit di="PM1.DI_SCR3Alarm" value="false" tip="" tip.zh-CN="" tip.en-US="DI-325"/>
<Limit do="PM1.DO_ReactorPressRisingRateFast" value="true" tip="" tip.zh-CN="" tip.en-US="DO-192" />
<Limit do="PM1.DO_UPSEnable" value="true" tip="" tip.zh-CN="" tip.en-US="DO-193" />
<Limit do="PM1.DO_UPSLowBattery" value="true" tip="" tip.zh-CN="" tip.en-US="DO-194" />
<Limit do="PM1.DO_ChamMiddleFlow2Temp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-195" />
<Limit do="PM1.DO_SHFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-196" />
<Limit do="PM1.DO_ChamTopFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-197" />
<Limit do="PM1.DO_ChamMiddleFlow1Temp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-198" />
<Limit do="PM1.DO_ChamBottomFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-199" />
<Limit do="PM1.DO_BottomPlateFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-200" />
<Limit do="PM1.DO_PowerRod1FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-201" />
<Limit do="PM1.DO_PowerRod2FlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-202" />
<Limit do="PM1.DO_InSituFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-203" />
<Limit do="PM1.DO_SideWallPowerRodFlowTemp" value="true" tip="" tip.zh-CN="" tip.en-US="DO-204" />
<Limit do="PM1.DO_PyroCommunicationError" value="false" tip="" tip.zh-CN="" tip.en-US="DO-220" />
<Limit do="PM1.DO_TC1PyroWarmMaxDiff" value="false" tip="" tip.zh-CN="" tip.en-US="DO-230" />
<Limit do="PM1.DO_TC1AETempRasisingFast" value="false" tip="" tip.zh-CN="" tip.en-US="DO-231" />
</Action>
<Action do="PM1.DO_ChamMoveBodyUp" value="true" tip="ChamberMoveBody" tip.zh-CN="" tip.en-US="DO-64">
<Limit di="PM1.DI_PMH2DetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-30" />

View File

@ -88,6 +88,8 @@ namespace SicPM
StopHeat,
CleanProcess,
ProcessAborting,
}
public enum MSG
{
@ -143,8 +145,9 @@ namespace SicPM
PostPMMacro,
ToServiceIdle,
StopHeat,
CleanProcess
CleanProcess,
ProcessAbort
}
public enum ServoStates
{
@ -221,24 +224,6 @@ namespace SicPM
{
get
{
int count = 0;
var alarms = EV.GetAlarmEvent();
foreach (var alarm in alarms)
{
if (alarm.Level == EventLevel.Alarm && alarm.Source == Name)
count++;
}
_alarmTrig.CLK = count > 0 && count!= lastCount;
if (_alarmTrig.Q)
{
if (!IsServiceIdle)
{
InvokeError();
}
}
_alarmNumber = count;
lastCount = count;
return FsmState == (int)STATE.Error;
}
}
@ -362,6 +347,7 @@ namespace SicPM
private PMServoHomeRoutine _pmServoHomeRoutine;
private PMServoResetRoutine _pmServoResetRoutine;
private PMToProcessIdleRoutine _pmtoProcessIdle;
private PMProcessAbortRoutine _pmProcessAbort;
private PMProcessToProcessIdleRoutine _pmProcessToProcessIdl1e;
private ModuleName _module;
@ -462,6 +448,8 @@ namespace SicPM
_pMMacroRoutine = new PMMacroRoutine(ModuleHelper.Converter(Module), this);
_stopHeatEnableRoutine = new PMStopHeatEnableRoutine(ModuleHelper.Converter(Module), this);
_cleanRecipe = new CleanRecipe(ModuleHelper.Converter(Module), this);
_pmProcessAbort = new PMProcessAbortRoutine(ModuleHelper.Converter(Module), this);
}
private void InitData()
@ -569,6 +557,7 @@ namespace SicPM
//Error
Transition(STATE.Error, MSG.Reset, FsmReset, STATE.Idle);
AnyStateTransition(MSG.Error, FsmOnError, STATE.Error);
AnyStateTransition(FSM_MSG.ALARM, FsmOnError, STATE.Error);
AnyStateTransition(MSG.ToInit, FsmToInit, STATE.Init);
//AnyStateTransition(MSG.ToSafety, FsmToInit, STATE.Safety);
@ -816,6 +805,8 @@ namespace SicPM
//Process
Transition(STATE.PreProcess, MSG.Process, FsmStartProcess, STATE.Process);
Transition(STATE.Process, FSM_MSG.TIMER, FsmMonitorTask, STATE.Process);
Transition(STATE.Process, MSG.ProcessAbort, FsmStartProcessAbort, STATE.ProcessAborting);
Transition(STATE.ProcessAborting, FSM_MSG.TIMER, FsmMonitorProcessAbortingTask, STATE.Error);
Transition(STATE.Process, MSG.Abort, FsmAbortProcessTask, STATE.ProcessIdle);
EnterExitTransition<STATE, FSM_MSG>(STATE.Process, FsmEnterProcess, FSM_MSG.NONE, FsmExitProcess);
@ -1325,8 +1316,8 @@ namespace SicPM
if (!RecipeRunningInfo.IsRoutineAbort)
{
//EV.PostWarningLog(Module, $"Exit Process: Recipe Step:{_recipeRunningInfo.StepNumber} Step Elapse Time:{Convert.ToInt32(_recipeRunningInfo.StepElapseTime).ToString()} ");
EV.PostWarningLog(Module, $"Exit Process: Recipe Name {_recipeRunningInfo.RecipeName},Recipe Step:{_recipeRunningInfo.StepNumber},Step Time:{_recipeRunningInfo.StepTime.ToString("X2")}");
StopProcess();
EV.PostWarningLog(Module, $"Exit Process: Recipe Name {_recipeRunningInfo.RecipeName},Recipe Step:{_recipeRunningInfo.StepNumber},Step Time:{_recipeRunningInfo.StepTime.ToString()}");
//StopProcess();
}
}
return true;
@ -1407,19 +1398,54 @@ namespace SicPM
return true;
}
private bool FsmOnError(object[] param)
private bool FsmMonitorProcessAbortingTask(object[] param)
{
IsOnline = false;
if (FsmState.Equals((int) STATE.Error))
Result ret = MonitorRoutine();
if (ret == Result.FAIL)
{
return false;
}
else
if (ret == Result.DONE)
{
StopRamp();
_pmInterLock.SetPMProcessRunning(false, out string reason);
_pmInterLock.SetPMPreProcessRunning(false, out reason);
return true;
}
return false;
}
private bool FsmStartProcessAbort(object[] param)
{
Result ret = StartRoutine(_pmProcessAbort);
if (ret == Result.FAIL || ret == Result.DONE)
return false;
return ret == Result.RUN;
}
private bool FsmOnError(object[] param)
{
if (IsServiceIdle)
{
return false;
}
IsOnline = false;
StopRamp();
_pmInterLock.SetPMProcessRunning(false, out string reason);
_pmInterLock.SetPMPreProcessRunning(false, out reason);
if (FsmState.Equals((int)STATE.Process))
{
PostMsg(MSG.ProcessAbort);
return false;
}
if (FsmState.Equals((int)STATE.ProcessAborting))
{
return false;
}
return true;
@ -1427,17 +1453,19 @@ namespace SicPM
private bool FsmReset(object[] param)
{
EV.ClearAlarmEvent();
var alarms = EV.GetAlarmEvent();
int alarmCount = alarms != null ? alarms.FindAll(a => a.Level == EventLevel.Alarm && a.Source == Module).Count : 0;
if (alarmCount > 0)
{
EV.ClearAlarmEvent();
}
if (!_isInitFlag)
{
PostMsg(MSG.ToInit);
return false;
}
//if (!_isSafetyFlag)
//{
// PostMsg(MSG.ToSafety);
// return false;
//}
return true;
}

View File

@ -23,7 +23,7 @@ using System.Threading;
namespace SicPM
{
public enum IoGroupName { A, B, C, D, E, F, G, H, I, J, K,V38, Final1,Final2,EPV1,EPV2,GasIn1,GasIn2,GasOut,VentPump,ArSupply, GasSupply,All, V27,V888990,V76,V75,V70,V69,V25, V94,GroupIWithoutV94 };
public enum IoGroupName { A, B, C, D, E, F, G, H, I, J, K,V38, Final1,Final2,EPV1,EPV2,GasIn1,GasIn2,GasOut,VentPump,ArSupply, GasSupply,All, V27,V888990,V76,V75,V70,V69,V25, V94,GroupIWithoutV94,V32 };
public enum MfcGroupName { Final1, Final2, M1to16, M19to38, M27toM38, M19toM26, M28toM40, M19toM31,M32toM38,M291519to38, M291519to26, M2915,M36, M39, All };
@ -1214,7 +1214,7 @@ namespace SicPM
}
else if (mGroupName == MfcGroupName.M291519to38)
{
lst = new List<int>() { 2, 9, 15, 19, 20, 22, 23, 25, 26, 27, 28, 29, 40, 31, 32, 33, 35, 36, 37, 38 };
lst = new List<int>() { 2, 9, 15, 19, 20, 22, 23, 25, 26, 27, 28, 29, 31, 32, 33, 35, 36, 37, 38, 40};
}
else if (mGroupName == MfcGroupName.M291519to26)
{

View File

@ -24,10 +24,12 @@ namespace SicPM.PmDevices
public enum HeaterControlMode
{
Power,
Power = 0,
TC,
Pyro,
Hold
Hold,
PyroAuto,
PyroFollow
}
}
}

View File

@ -92,10 +92,10 @@ namespace SicPM.RecipeExecutions
private bool _isMFCJumpMode;
private int _delayTimeRamp;
private double _targetPressure;
private int _servoUpDelay;
private double _targetPressure;
private double _pc5Offset;
private double _pc6Offset;
private double _pc7Offset;
@ -238,11 +238,6 @@ namespace SicPM.RecipeExecutions
{
try
{
if (SC.GetValue<bool>("System.IsSimulatorMode"))
{
return Result.DONE;
}
EnableRotation((int)RoutineStep.EnableRotation, 5);
SetRotationValveAndNoWait((int)RoutineStep.SetRotation, _rotationSpeed);
@ -251,6 +246,11 @@ namespace SicPM.RecipeExecutions
ExecuteRoutine((int)RoutineStep.SetServoUp, _pmServoUpRoutine);
if (SC.GetValue<bool>("System.IsSimulatorMode"))
{
return Result.DONE;
}
ExecuteRoutine((int)RoutineStep.SetChamberPressure, _pmServoToPressure);
OpenH2Valve((int)RoutineStep.OpenH2Valve, PMDevice, 2);
@ -269,27 +269,6 @@ namespace SicPM.RecipeExecutions
WaitTempratureToBeginProcess((int)RoutineStep.WaitTempReach, _preTemp, 10000);
}
//NoteInProcess((int)Routine.NoteInProcess,0);
//if (_isSlitDoorOpened)
//ExecuteRoutine((int)Routine.CloseSlitValve, _closeSlitValveRoutine);
//关闭所有阀门
// CloseAllValves((int)Routine.CloseAllVavle, 10);
//if (!_isATMMode)
//{
// ExecuteRoutine((int)Routine.Pump, _pumptRoutine);
//SetThrottlePressureControlMode((int)Routine.SetThrottlePressureControlMode, _throttleValve);
//}
//End((int)Routine.End, "Preprocess finished");
//NoteProcessComplete((int)Routine.NoteProcessComplete, 0);
}
catch (RoutineBreakException)
{

View File

@ -0,0 +1,146 @@
using Aitex.Core.RT.Device;
using Aitex.Core.RT.Device.Unit;
using Aitex.Core.RT.Event;
using Aitex.Core.RT.Routine;
using Aitex.Core.RT.SCCore;
using MECF.Framework.Common.Equipment;
using System;
using System.Collections.Generic;
using System.Diagnostics;
namespace SicPM.Routines
{
public class PMProcessAbortRoutine : PMBaseRoutine
{
private enum RoutineStep
{
HeatEnable,
SetRotation,
SetM2toM40,
SetM1to16,
SetPC,
SetV32,
SetV35V36,
SetV68,
SetGroupB,
SetGroupC,
SetGroupE,
SetGroupF,
SetGroupH,
SetGroupK,
SetGroupD,
SetGroupG,
}
private int _heatTimeOut = 5;
private int _mfc1to16RampTime = 30;
private int _mfc2to40RampTime = 30;
List<int> _lstPcList = new List<int> { 1, 2, 3, 4, 5, 6, 7 };
private int _IoValueOpenCloseTimeout = 10;
private int _routineTimeOut = 10;
private Stopwatch _swTimer = new Stopwatch();
public PMProcessAbortRoutine(ModuleName module, PMModule pm) : base(module, pm)
{
Module = module.ToString();
Name = "ProcessAbort";
}
public override Result Start(params object[] objs)
{
Reset();
_mfc1to16RampTime = SC.GetValue<int>($"PM.{Module}.ProcessIdle.MFC1to16RampTime");
_mfc2to40RampTime = SC.GetValue<int>($"PM.{Module}.ProcessIdle.MFC19to38RampTime");
_routineTimeOut = SC.GetValue<int>($"PM.{Module}.ProcessIdle.RoutineTimeOut");
_swTimer.Restart();
Notify("Start");
return Result.RUN;
}
public override Result Monitor()
{
try
{
//CheckRoutineTimeOut();
//停止加热
SetHeatEnable((int)RoutineStep.HeatEnable, false, _heatTimeOut);
//停止旋转
SetRotationValveAndNoWait((int)RoutineStep.SetRotation, 0);
//M2、M9、M15、M19-M40 MFC 30s ramp 到 default 值
SetMfcToDefaultByGroup((int)RoutineStep.SetM2toM40, MfcGroupName.M291519to38, _mfc2to40RampTime);
//M1 - M16 MFC 30s ramp 到 default 值(M2、M9、M15除外)
SetMfcToDefaultByGroup((int)RoutineStep.SetM1to16, MfcGroupName.M1to16, _mfc1to16RampTime);
//所有PC设定为默认值
SetPcToDefault((int)RoutineStep.SetPC, _lstPcList);
//打开V32,打开V35,打开V36
SetIoValueByGroup((int)RoutineStep.SetV32, IoGroupName.ArSupply, true, _IoValueOpenCloseTimeout);
//关闭B/C/E/F/H/K 阀门
SetIoValueByGroup((int)RoutineStep.SetGroupB, IoGroupName.B, false, _IoValueOpenCloseTimeout);
SetIoValueByGroup((int)RoutineStep.SetGroupC, IoGroupName.C, false, _IoValueOpenCloseTimeout);
SetIoValueByGroup((int)RoutineStep.SetGroupE, IoGroupName.E, false, _IoValueOpenCloseTimeout);
SetIoValueByGroup((int)RoutineStep.SetGroupF, IoGroupName.F, false, _IoValueOpenCloseTimeout);
SetIoValueByGroup((int)RoutineStep.SetGroupH, IoGroupName.H, false, _IoValueOpenCloseTimeout);
SetIoValueByGroup((int)RoutineStep.SetGroupK, IoGroupName.K, false, _IoValueOpenCloseTimeout);
//打开D/G 阀门
SetIoValueByGroup((int)RoutineStep.SetGroupD, IoGroupName.D, true, _IoValueOpenCloseTimeout);
SetIoValueByGroup((int)RoutineStep.SetGroupG, IoGroupName.G, true, _IoValueOpenCloseTimeout);
//打开V68
SetIoValueByGroup((int)RoutineStep.SetV68, IoGroupName.GasIn1, true, _IoValueOpenCloseTimeout);
}
catch (RoutineBreakException)
{
return Result.RUN;
}
catch (RoutineFaildException)
{
return Result.FAIL;
}
Notify($"Finished ! Elapsed time: {(int)(_swTimer.ElapsedMilliseconds / 1000)} s");
_swTimer.Stop();
return Result.DONE;
}
private void CheckRoutineTimeOut()
{
if (_routineTimeOut > 10)
{
if ((int)(_swTimer.ElapsedMilliseconds / 1000) > _routineTimeOut)
{
EV.PostAlarmLog(Module, $"Routine TimeOut! over {_routineTimeOut} s");
throw (new RoutineFaildException());
}
}
}
public override void Abort()
{
PMDevice._ioThrottleValve.StopRamp();
PMDevice.SetMfcStopRamp(PMDevice.GetMfcListByGroupName(MfcGroupName.All));
PMDevice.SetHeaterStopRamp();
PMDevice.SetRotationStopRamp();
base.Abort();
}
}
}

View File

@ -125,6 +125,7 @@
<Compile Include="Routines\PMLeakCheckRoutine.cs" />
<Compile Include="Routines\PMButttomSectionMoveRoutine.cs" />
<Compile Include="Routines\PMCleanRoutine.cs" />
<Compile Include="Routines\PMProcessAbortRoutine.cs" />
<Compile Include="Routines\PMPurgeRoutine.cs" />
<Compile Include="Routines\PMPcCalibrationRoutine.cs" />
<Compile Include="Routines\PMPostTransferRoutine.cs" />

View File

@ -113,7 +113,7 @@
</roles>
<users>
<userItem id="0" loginname="admin" password="YWRtaW4=" firstname="MAE" lastname="dd" email="">
<userItem id="0" loginname="admin" password="YWRtaW4=" firstname="MAE" lastname="dd" email="" description="">
<rolegroup>
<role id="0"></role>
<role id="1"></role>

View File

@ -150,7 +150,7 @@
<config default="" name="OpenLidCountDownTime" description="临时保存开腔倒计时开始时间" max="" min="" paramter="" tag="" visible="false" unit="" type="String" />
<configs name="Heater">
<config default="false" name="PSUOuterAutoEnable" description="PSU Outer是否为Auto控制" max="" min="" paramter="" tag="" unit="" visible="true" type="Bool" />
<config default="false" name="PSUOuterAutoEnable" description="PSU Outer是否为Auto控制" max="" min="" paramter="" tag="" unit="" type="Bool" visible="false"/>
<config default="10" name="TempRampRate" description="TC温度每秒调节速率(℃/每秒)" max="100" min="0" paramter="" tag="" unit="℃" type="Double" />
<config default="0.1" name="AmpereRampRate" description="TC1功率每秒调节速率(%/每秒)" max="100" min="0" paramter="" tag="" unit="%" type="Double" />
<config default="0.1" name="KWRampRate" description="TC2功率每秒调节速率(%/每秒)" max="100" min="0" paramter="" tag="" unit="%" type="Double" />
@ -552,7 +552,7 @@
<config default="10" name="AlarmRange" description="Alarm Range" max="100" min="0" paramter="" tag="" unit="%" type="Double" visible="true"/>
<config default="10" name="WarningTime" description="Warning Time" max="300" min="0" paramter="" tag="" unit="s" type="Integer" visible="true"/>
<config default="5" name="WarningRange" description="Warning Range" max="100" min="0" paramter="" tag="" unit="%" type="Double" visible="true" />
<config default="2500" name="DefaultSetPoint" description="DefaultSetPoint" max="50000" min="0" paramter="" tag="" unit="sccm" type="Double" />
<config default="1500" name="DefaultSetPoint" description="DefaultSetPoint" max="30000" min="0" paramter="" tag="" unit="sccm" type="Double" />
<config default="H2" name="GasName" description="Gas Name" max="" min="" paramter="" tag="" unit="" type="String" />
<config default="10" name="StableTime" description="Stable Time" max="10000" min="0" paramter="" tag="" unit="s" type="Double" visible="true"/>
</configs>
@ -563,7 +563,7 @@
<config default="10" name="AlarmRange" description="Alarm Range" max="100" min="0" paramter="" tag="" unit="%" type="Double" visible="true"/>
<config default="10" name="WarningTime" description="Warning Time" max="300" min="0" paramter="" tag="" unit="s" type="Integer" visible="true"/>
<config default="5" name="WarningRange" description="Warning Range" max="100" min="0" paramter="" tag="" unit="%" type="Double" visible="true" />
<config default="500" name="DefaultSetPoint" description="DefaultSetPoint" max="10000" min="0" paramter="" tag="" unit="sccm" type="Double" />
<config default="750" name="DefaultSetPoint" description="DefaultSetPoint" max="15000" min="0" paramter="" tag="" unit="sccm" type="Double" />
<config default="H2" name="GasName" description="Gas Name" max="" min="" paramter="" tag="" unit="" type="String" />
<config default="10" name="StableTime" description="Stable Time" max="10000" min="0" paramter="" tag="" unit="s" type="Double" visible="true"/>
</configs>
@ -574,7 +574,7 @@
<config default="10" name="AlarmRange" description="Alarm Range" max="100" min="0" paramter="" tag="" unit="%" type="Double" visible="true"/>
<config default="10" name="WarningTime" description="Warning Time" max="300" min="0" paramter="" tag="" unit="s" type="Integer" visible="true"/>
<config default="5" name="WarningRange" description="Warning Range" max="100" min="0" paramter="" tag="" unit="%" type="Double" visible="true" />
<config default="1000" name="DefaultSetPoint" description="DefaultSetPoint" max="30000" min="0" paramter="" tag="" unit="sccm" type="Double" />
<config default="1000" name="DefaultSetPoint" description="DefaultSetPoint" max="20000" min="0" paramter="" tag="" unit="sccm" type="Double" />
<config default="H2" name="GasName" description="Gas Name" max="" min="" paramter="" tag="" unit="" type="String" />
<config default="10" name="StableTime" description="Stable Time" max="10000" min="0" paramter="" tag="" unit="s" type="Double" visible="true"/>
</configs>
@ -787,9 +787,9 @@
</configs>
<configs name="Temperature_ControlMode">
<configs name="PSUControlMode">
<config default="Pyro" name="Default" description="Default Value" max="" min="" paramter="Pyro;TC;Power" tag="ReadOnlySelection" unit="" type="String" visible="true"/>
</configs>
<configs name="PSUControlMode">
<config default="PyroAuto" name="Default" description="Default Value" max="" min="" paramter="PyroAuto;PyroFollow;TC;Power" tag="ReadOnlySelection" unit="" type="String"/>
</configs>
<configs name="PSUSetMode">
<config default="Ramp" name="Default" description="Default Value" max="" min="" paramter="Ramp;Jump" tag="ReadOnlySelection" unit="" type="String" visible="true"/>

View File

@ -534,13 +534,13 @@ namespace SicRT.Modules
if (!hasPmOnline)
{
EV.PostWarningLog("Scheduler", "can not change to auto mode, at least one process chamber be online and no error");
EV.PostWarningLog("System", "can not change to auto mode, at least one process chamber be online and no error");
return Result.FAIL;
}
if (!_tmRobot.IsOnline || _tmRobot.IsError)
{
EV.PostWarningLog("Scheduler", "can not change to auto mode, TM robot should be online and no error");
EV.PostWarningLog("System", "can not change to auto mode, TM robot should be online and no error");
return Result.FAIL;
}
@ -824,7 +824,7 @@ namespace SicRT.Modules
if (_lstControlJobs.Count == 0)
{
EV.PostWarningLog("Scheduler", "ControlJob Finished!");
EV.PostWarningLog("System", "ControlJob Finished!");
return true;
}
return false;
@ -1062,7 +1062,13 @@ namespace SicRT.Modules
private void MonitorLoadLockTask()
{
if(!_tmRobot.IsAvailable || !_loadlock.IsAvailable)
if (!_loadlock.CheckLidClose())
{
_loadlock.SetOffline();
return;
}
if (!_tmRobot.IsAvailable || !_loadlock.IsAvailable)
{
return;
}

View File

@ -175,6 +175,20 @@ namespace SicRT.Scheduler
return ret;
}
public bool CheckLidClose()
{
return _ll.CheckLidClose();
}
public void SetOffline()
{
_ll.InvokeOffline();
}
public void SetOnline()
{
_ll.InvokeOnline();
}
}

View File

@ -193,7 +193,6 @@ namespace SicRT.Equipments.Systems
Name = "System";
Modules = new Dictionary<ModuleName, ModuleFsmDevice>();
}
public override bool Initialize()
@ -506,14 +505,32 @@ namespace SicRT.Equipments.Systems
//具体值到 EventManager里面找
private void Instance_OnAlarmEvent(EventItem obj)
{
FSM_MSG msg = FSM_MSG.NONE;
if (obj.Level == EventLevel.Warning)
msg = FSM_MSG.WARNING;
else if (obj.Level == EventLevel.Alarm)
msg = FSM_MSG.ALARM;
switch (obj.Source)
{
case "PM1":
case "TM":
case "LoadLock":
case "Load":
case "Buffer":
default:
if (Modules.ContainsKey(ModuleHelper.Converter(obj.Source)))
{
Modules[ModuleHelper.Converter(obj.Source)]?.PostMsg(msg, obj.Id, obj.Description);
}
break;
}
if (obj.EventEnum == "ALARM_EVENT")
{
//监控Alarm事件使Buzzer能再次响起
_st.SwitchOffBuzzer(false);
}
}
#region Init
@ -1357,7 +1374,7 @@ namespace SicRT.Equipments.Systems
MonitorUPSAlarm();
MonitorAETemp(); //AE通断DO220
MonitorTrayInfo();
//
return true;
}

View File

@ -52,6 +52,6 @@ using System.Windows;
// 方法是按如下所示使用“*”: :
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.5.5.17")]
[assembly: AssemblyFileVersion("1.5.5.17")]
[assembly: AssemblyVersion("1.5.8.22")]
[assembly: AssemblyFileVersion("1.5.8.22")]

View File

@ -9,6 +9,30 @@
Sic 系统更新历史记录
---------------------------------------------------------------------------------
Sic02 2023-02-10 Version 1.5.8.22
1.优化PM TM中IO检查IO检查&AlarmCode完善
Sic02 2023-02-10 Version 1.5.7.21
1.取消TempFastRatio可分为Alarm和Warning的系统配置统一为Alarm
2.重新修改PM/LoadLock/Buffer/PreHeat的报警机制,与3号机及后续机台保持一致
3.Process过程中若产生如TempFastRatio的Alarm,增加PMProcessAbort Routine,
执行完ProcessAbort流程后PM再进入Error状态
4.将PUS 的Pyro外圈控制添加到Recipe每个Step中
Sic02 2023-02-10 Version 1.5.6.20
1.优化AutoRun逻辑是不切换Load Offline情况下也可执行换Tray操作
2.修改仿真Load腔体压力速度
Sic02 2023-01-10 Version 1.5.5.19
1、UI上删除PM DI66、68、DI311-316、DI401-414、
2、UI上删除PM DO53
3、UI上删除PM AI115-117、AI178-180、AI232-238
4、UI上删除PM AO115-117、AO178-180
5、UI上删除TM DI21、22、23、24、27、28、DO67
Sic02 2023-01-10 Version 1.5.5.18
1.修改PM的Interlock
Sic02 2023-01-10 Version 1.5.5.17
1.修改AE升温过快报警信息
2、添加SCR部分

View File

@ -391,6 +391,8 @@
<DO_ITEM Index="204" Name="DO_SideWallPowerRodFlowTemp" BufferOffset="204" Addr="204" Description=""/>
<DO_ITEM Index="205" Name="DO_TransformerFlowTemp" BufferOffset="205" Addr="205" Description=""/>
<DO_ITEM Index="206" Name="DO_ForelineColdTrapFlowTemp" BufferOffset="206" Addr="206" Description=""/>
<DO_ITEM Index="207" Name="DO_TMFlow1Temp" BufferOffset="207" Addr="207" Description=""/>
<DO_ITEM Index="208" Name="DO_TMFlow2Temp" BufferOffset="208" Addr="208" Description=""/>
<DO_ITEM Index="230" Name="DO_TC1PyroWarnMaxDiff" BufferOffset="230" Addr="230" Description="" />
<DO_ITEM Index="231" Name="DO_TC1AeTempRaisingFast" BufferOffset="231" Addr="231" Description="" />

View File

@ -64,8 +64,8 @@ namespace SicSimulator.Instances
IO.DI["DI_DryPumpWarning"].Value = true;
IO.AI["AI_TMPressure"].FloatValue = 1231;
IO.AI["AI_LLPressure"].FloatValue = 1231;
IO.AI["AI_TMPressure"].Value = 300;
IO.AI["AI_LLPressure"].Value = 0;
IO.DI["DI_TMUnderVac"].Value = true;
}
@ -525,35 +525,41 @@ namespace SicSimulator.Instances
private void MonitorPressureLL1()
{
bool isSlowPum = IO.DI["DI_LLSlowRoughOpen_FB"].Value;
bool isFastPump = IO.DI["DI_LLFastRoughOpen_FB"].Value;
bool isSlowVent = IO.DI["DI_LLSlowVentOpen_FB"].Value;
bool isDryPumpingValveOpen = IO.DI["DI_LLFastRoughOpen_FB"].Value;
bool isVentValveOpen = IO.DI["DI_LLFastVentOpen_FB"].Value;
////200毫秒调用一次10秒内实现从0到1020
//200毫秒调用一次10秒内实现从0到1020
double pressure = IO.AI["AI_LLPressure"].Value;
double factor = pressure / (3 * 10);
double pressureStep = factor < 1 ? 1 : factor;
if (isDryPumpingValveOpen)
if (isFastPump || isSlowPum)
{
pressure -= pressureStep;
}
else if (isSlowPum)
{
pressure -= 2;
}
if (isVentValveOpen)
{
pressure += pressureStep;
if (pressure > 350)
{
pressure -= 10;
}
else if (pressure >= 250 && pressure <= 350)
{
pressure -= 4;
}
else
{
pressure -= 10;
}
}
else if (isSlowVent)
{
pressure += 2;
if (pressure > 320)
{
pressure += 10;
}
else if (pressure >= 290 && pressure <= 320)
{
pressure += 1;
}
else
{
pressure += 10;
}
}
if (pressure < 0)
@ -561,7 +567,7 @@ namespace SicSimulator.Instances
if (pressure > 1020)
pressure = 1020;
if (!isDryPumpingValveOpen && !isVentValveOpen && pressure < 1)
if (!isFastPump && pressure < 1)
pressure = 0;
IO.AI["AI_LLPressure"].Value = Convert.ToInt16(pressure);

View File

@ -18,6 +18,7 @@ using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Media;
using static SicPM.PmDevices.DicMode;
namespace SicUI.Models.PMs
{
@ -576,13 +577,9 @@ namespace SicUI.Models.PMs
public void SetHeaterMode(string TCname, object data)
{
float ControlMode = 0;
switch (SelectedHeaterMode)
{
case "Power": ControlMode = 0; break;
case "TC": ControlMode = 1; break;
case "Pyro": ControlMode = 2; break;
}
HeaterControlMode PSUControlMode = (HeaterControlMode)Enum.Parse(typeof(HeaterControlMode), SelectedHeaterMode);
float ControlMode = (float)PSUControlMode;
InvokeClient.Instance.Service.DoOperation($"{SystemName}.{TCname}.SetHeaterMode", ControlMode);
}

View File

@ -17,6 +17,7 @@ using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Media;
using static SicPM.PmDevices.DicMode;
namespace SicUI.Models.PMs
{
@ -214,7 +215,7 @@ namespace SicUI.Models.PMs
[Subscription("TC1.L3TempLowLimitSetPoint")]
public float L3TempLowLimit { get; set; }
private List<string> _HeaterModeGroup = new List<string>() { "Power", "TC", "Pyro" };
private List<string> _HeaterModeGroup = new List<string>() { "Power", "TC", "PyroAuto", "PyroFollow" };
public List<string> HeaterModeGroup
{
get { return _HeaterModeGroup; }
@ -225,14 +226,7 @@ namespace SicUI.Models.PMs
{
get
{
switch (HeaterMode)
{
case 0: return "Power";
case 1: return "TC";
case 2: return "Pyro";
}
return "Power";
return ((HeaterControlMode)HeaterMode).ToString();
}
}
private string _SelectedHeaterMode;
@ -593,13 +587,8 @@ namespace SicUI.Models.PMs
public void SetHeaterMode(string TCname, object data)
{
float ControlMode = 0;
switch (SelectedHeaterMode)
{
case "Power": ControlMode = 0; break;
case "TC": ControlMode = 1; break;
case "Pyro": ControlMode = 2; break;
}
HeaterControlMode PSUControlMode = (HeaterControlMode)Enum.Parse(typeof(HeaterControlMode), SelectedHeaterMode);
float ControlMode = (float)PSUControlMode;
if (heaterMode != "Power" && SelectedHeaterMode == "Power")
{

View File

@ -54,5 +54,5 @@ using System.Windows;
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.5.5.17")]
[assembly: AssemblyFileVersion("1.5.5.17")]
[assembly: AssemblyVersion("1.5.8.28")]
[assembly: AssemblyFileVersion("1.5.8.28")]