Kaynağa Gözat

添加NTP02 IO配置

git-svn-id: http://10.4.3.168:50001/svn/Furnace@22 dbcde07d-dcf5-c148-8a84-ac3097b7778e
Xiongbing 7 ay önce
ebeveyn
işleme
fd61c340ee

Dosya farkı çok büyük olduğundan ihmal edildi
+ 2020 - 0
Branch/NTP02/Furnace/FurnaceRT/Config/IO/NTP02/DeviceModelPM.xml


+ 27 - 0
Branch/NTP02/Furnace/FurnaceRT/Config/IO/NTP02/IoProviderConfig.xml

@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<IoProviders system="Furnace" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  >
+
+	<IoProvider load_condition="2" module="System" name="PM1" map_module="PM1" map_file="_ioDefinePM.xml" class="FurnaceRT.Equipments.Systems.FinsPlcAdapter" assembly="FurnaceRT"  >
+		<Parameter localIp="192.168.250.2" ip="192.168.250.1" port="9600" network_id="0" station_id="255"
+				   aiStoragename="D" aoStoragename="D" diStoragename="D" doStoragename="D"
+				   doStartAddress="1000" diStartAddress="0" aoStartAddress="10000" aiStartAddress="5000"/>
+		<Blocks>
+			<Block type="di" offset="0" size="7000" value_type=""></Block>
+			<Block type="ao" offset="0" size="5000" value_type="float"></Block>
+			<Block type="ai" offset="0" size="5000" value_type="float"></Block>
+			<Block type="do" offset="0" size="5000" value_type=""></Block>
+		</Blocks>
+	</IoProvider>
+
+	<IoProvider load_condition="2" module="System" name="Heater" map_module="Heater" map_file="_ioDefineHeater.xml" class="FurnaceRT.Equipments.Systems.ModbusTCP" assembly="FurnaceRT"  >
+		<Parameter ip="192.168.250.15" port="502" station_id="1"
+				   doStartAddress="15500" diStartAddress="15660" aoStartAddress="15520" aiStartAddress="15682"/>
+		<Blocks>
+			<Block type="di" offset="0" size="20" value_type=""></Block>
+			<Block type="do" offset="0" size="30" value_type=""></Block>
+			<Block type="ai" offset="0" size="100" value_type="float"></Block>
+			<Block type="ao" offset="0" size="120" value_type="float"></Block>
+		</Blocks>
+	</IoProvider>
+
+</IoProviders>

+ 149 - 0
Branch/NTP02/Furnace/FurnaceRT/Config/IO/NTP02/_ioDefineHeater.xml

@@ -0,0 +1,149 @@
+<?xml version="1.0"?>
+<IO_DEFINE xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+	<Dig_In>
+		<DI_ITEM Index="0"	Name="DI_HeaterUCascadePVSBrk"			BufferOffset="0"	Addr="15660"	Description="HeaterU Cascade PV SBrk" />
+		<DI_ITEM Index="1"	Name="DI_HeaterUHeaterPVSBrk"				BufferOffset="1"	Addr="15661"	Description="HeaterU Heater PV SBrk" />
+		<DI_ITEM Index="2"	Name="DI_HeaterUEnableOutput"			BufferOffset="2"	Addr="15662"	Description="HeaterU Enable Output" />
+
+		<DI_ITEM Index="3"	Name="DI_HeaterCUCascadePVSBrk"			BufferOffset="3"	Addr="15663"	Description="HeaterCU Cascade PV SBrk" />
+		<DI_ITEM Index="4"	Name="DI_HeaterCUHeaterPVSBrk"				BufferOffset="4"	Addr="15664"	Description="HeaterCU Heater PV SBrk" />
+		<DI_ITEM Index="5"	Name="DI_HeaterCUEnableOutput"			BufferOffset="5"	Addr="15665"	Description="HeaterCU Enable Output" />
+
+		<DI_ITEM Index="6"	Name="DI_HeaterCCascadePVSBrk"			BufferOffset="6"	Addr="15666"	Description="HeaterC Cascade PV SBrk" />
+		<DI_ITEM Index="7"	Name="DI_HeaterCHeaterPVSBrk"				BufferOffset="7"	Addr="15667"	Description="HeaterC Heater PV SBrk" />
+		<DI_ITEM Index="8"	Name="DI_HeaterCEnableOutput"			BufferOffset="8"	Addr="15668"	Description="HeaterC Enable Output" />
+
+		<DI_ITEM Index="9"	Name="DI_HeaterCLCascadePVSBrk"			BufferOffset="9"	Addr="15669"	Description="HeaterCL Cascade PV SBrk" />
+		<DI_ITEM Index="10"	Name="DI_HeaterCLHeaterPVSBrk"				BufferOffset="10"	Addr="15670"	Description="HeaterCL Heater PV SBrk" />
+		<DI_ITEM Index="11"	Name="DI_HeaterCLEnableOutput"			BufferOffset="11"	Addr="15671"	Description="HeaterCL Enable Output" />
+
+		<DI_ITEM Index="12"	Name="DI_HeaterLCascadePVSBrk"			BufferOffset="12"	Addr="15672"	Description="HeaterL Cascade PV SBrk" />
+		<DI_ITEM Index="13"	Name="DI_HeaterLHeaterPVSBrk"				BufferOffset="13"	Addr="15673"	Description="HeaterL Heater PV SBrk" />
+		<DI_ITEM Index="14"	Name="DI_HeaterLEnableOutput"			BufferOffset="14"	Addr="15674"	Description="HeaterL Enable Output" />
+
+	</Dig_In>
+	<Dig_Out>
+		<DO_ITEM Index="0"	Name="DO_HeaterUEnableIn"				BufferOffset="0"	Addr="15500"	Description="HeaterU Enable In" />
+		<DO_ITEM Index="1"	Name="DO_HeaterUAutoManual"				BufferOffset="1"	Addr="15501"	Description="HeaterU Auto/Manual" />
+		<DO_ITEM Index="2"	Name="DO_HeaterUHeaterPVSelect"			BufferOffset="2"	Addr="15502"	Description="HeaterU Heater PV Select" />
+		<DO_ITEM Index="3"	Name="DO_HeaterUCascadeMode"			BufferOffset="3"	Addr="15503"	Description="HeaterU Cascade Mode" />
+
+		<DO_ITEM Index="4"	Name="DO_HeaterCUEnableIn"				BufferOffset="4"	Addr="15504"	Description="HeaterCU Enable In" />
+		<DO_ITEM Index="5"	Name="DO_HeaterCUAutoManual"				BufferOffset="5"	Addr="15505"	Description="HeaterCU Auto/Manual" />
+		<DO_ITEM Index="6"	Name="DO_HeaterCUHeaterPVSelect"			BufferOffset="6"	Addr="15506"	Description="HeaterCU Heater PV Select" />
+		<DO_ITEM Index="7"	Name="DO_HeaterCUCascadeMode"			BufferOffset="7"	Addr="15507"	Description="HeaterCU Cascade Mode" />
+
+		<DO_ITEM Index="8"	Name="DO_HeaterCEnableIn"				BufferOffset="8"	Addr="15508"	Description="HeaterC Enable In" />
+		<DO_ITEM Index="9"	Name="DO_HeaterCAutoManual"				BufferOffset="9"	Addr="15509"	Description="HeaterC Auto/Manual" />
+		<DO_ITEM Index="10"	Name="DO_HeaterCHeaterPVSelect"			BufferOffset="10"	Addr="15510"	Description="HeaterC Heater PV Select" />
+		<DO_ITEM Index="11"	Name="DO_HeaterCCascadeMode"			BufferOffset="11"	Addr="15511"	Description="HeaterC Cascade Mode" />
+
+		<DO_ITEM Index="12"	Name="DO_HeaterCLEnableIn"				BufferOffset="12"	Addr="15512"	Description="HeaterCL Enable In" />
+		<DO_ITEM Index="13"	Name="DO_HeaterCLAutoManual"				BufferOffset="13"	Addr="15513"	Description="HeaterCL Auto/Manual" />
+		<DO_ITEM Index="14"	Name="DO_HeaterCLHeaterPVSelect"			BufferOffset="14"	Addr="15514"	Description="HeaterCL Heater PV Select" />
+		<DO_ITEM Index="15"	Name="DO_HeaterCLCascadeMode"			BufferOffset="15"	Addr="15515"	Description="HeaterCL Cascade Mode" />
+
+		<DO_ITEM Index="16"	Name="DO_HeaterLEnableIn"				BufferOffset="16"	Addr="15516"	Description="HeaterL Enable In" />
+		<DO_ITEM Index="17"	Name="DO_HeaterLAutoManual"				BufferOffset="17"	Addr="15517"	Description="HeaterL Auto/Manual" />
+		<DO_ITEM Index="18"	Name="DO_HeaterLHeaterPVSelect"			BufferOffset="18"	Addr="15518"	Description="HeaterL Heater PV Select" />
+		<DO_ITEM Index="19"	Name="DO_HeaterLCascadeMode"			BufferOffset="19"	Addr="15519"	Description="HeaterL Cascade Mode" />
+
+	</Dig_Out>
+	<Ana_In>
+		<AI_ITEM Index="0"	Name="AI_HeaterUCascadePV"				BufferOffset="0"	Addr="15682"	Description="HeaterU Cascade PV" />
+		<AI_ITEM Index="1"	Name="AI_HeaterUHeaterPV"					BufferOffset="2"	Addr="15684"	Description="HeaterU Heater PV" />
+		<AI_ITEM Index="2"	Name="AI_HeaterUWorkingOutput"			BufferOffset="4"	Addr="15686"	Description="HeaterU Working Output" />
+		<AI_ITEM Index="3"	Name="AI_HeaterUOverTemp"				BufferOffset="6"	Addr="15688"	Description="HeaterU Over Temp" />
+
+		<AI_ITEM Index="4"	Name="AI_HeaterCUCascadePV"				BufferOffset="8"	Addr="15690"	Description="HeaterCU Cascade PV" />
+		<AI_ITEM Index="5"	Name="AI_HeaterCUHeaterPV"					BufferOffset="10"	Addr="15692"	Description="HeaterCU Heater PV" />
+		<AI_ITEM Index="6"	Name="AI_HeaterCUWorkingOutput"			BufferOffset="12"	Addr="15694"	Description="HeaterCU Working Output" />
+		<AI_ITEM Index="7"	Name="AI_HeaterCUOverTemp"				BufferOffset="14"	Addr="15696"	Description="HeaterCU Over Temp" />
+
+		<AI_ITEM Index="8"	Name="AI_HeaterCCascadePV"				BufferOffset="16"	Addr="15698"	Description="HeaterC Cascade PV" />
+		<AI_ITEM Index="9"	Name="AI_HeaterCHeaterPV"					BufferOffset="18"	Addr="15700"	Description="HeaterC Heater PV" />
+		<AI_ITEM Index="10"	Name="AI_HeaterCWorkingOutput"			BufferOffset="20"	Addr="15702"	Description="HeaterC Working Output" />
+		<AI_ITEM Index="11"	Name="AI_HeaterCOverTemp"				BufferOffset="22"	Addr="15704"	Description="HeaterC Over Temp" />
+
+		<AI_ITEM Index="12"	Name="AI_HeaterCLCascadePV"				BufferOffset="24"	Addr="15706"	Description="HeaterCL Cascade PV" />
+		<AI_ITEM Index="13"	Name="AI_HeaterCLHeaterPV"					BufferOffset="26"	Addr="15708"	Description="HeaterCL Heater PV" />
+		<AI_ITEM Index="14"	Name="AI_HeaterCLWorkingOutput"			BufferOffset="28"	Addr="15710"	Description="HeaterCL Working Output" />
+		<AI_ITEM Index="15"	Name="AI_HeaterCLOverTemp"				BufferOffset="30"	Addr="15712"	Description="HeaterCL Over Temp" />
+
+		<AI_ITEM Index="16"	Name="AI_HeaterLCascadePV"				BufferOffset="32"	Addr="15714"	Description="HeaterL Cascade PV" />
+		<AI_ITEM Index="17"	Name="AI_HeaterLHeaterPV"					BufferOffset="34"	Addr="15716"	Description="HeaterL Heater PV" />
+		<AI_ITEM Index="18"	Name="AI_HeaterLWorkingOutput"			BufferOffset="36"	Addr="15718"	Description="HeaterL Working Output" />
+		<AI_ITEM Index="19"	Name="AI_HeaterLOverTemp"				BufferOffset="38"	Addr="15720"	Description="HeaterL Over Temp" />
+
+		<AI_ITEM Index="20"	Name="AI_HeaterUWorkingTarget"				BufferOffset="40"	Addr="15722"	Description="HeaterU.working target" />
+		<AI_ITEM Index="21"	Name="AI_HeaterCUWorkingTarget"				BufferOffset="42"	Addr="15724"	Description="HeaterCU.working target" />
+		<AI_ITEM Index="22"	Name="AI_HeaterCWorkingTarget"				BufferOffset="44"	Addr="15726"	Description="HeaterC.working target" />
+		<AI_ITEM Index="23"	Name="AI_HeaterCLWorkingTarget"				BufferOffset="46"	Addr="15728"	Description="HeaterCL.working target" />
+		<AI_ITEM Index="24"	Name="AI_HeaterLWorkingTarget"				BufferOffset="48"	Addr="15730"	Description="HeaterL.working target" />
+
+	</Ana_In>
+	<Ana_Out>
+		<AO_ITEM Index="0"	Name="AO_HeaterUHeaterControlModeSV"						BufferOffset="0"	Addr="15520"	Description="HeaterU Heater Control Mode SV" />
+		<AO_ITEM Index="1"	Name="AO_HeaterCUHeaterControlModeSV"						BufferOffset="2"	Addr="15522"	Description="HeaterCU Heater Control Mode SV" />
+		<AO_ITEM Index="2"	Name="AO_HeaterCHeaterControlModeSV"						BufferOffset="4"	Addr="15524"	Description="HeaterC Heater Control Mode SV" />
+		<AO_ITEM Index="3"	Name="AO_HeaterCLHeaterControlModeSV"						BufferOffset="6"	Addr="15526"	Description="HeaterCL Heater Control Mode SV" />
+		<AO_ITEM Index="4"	Name="AO_HeaterLHeaterControlModeSV"						BufferOffset="8"	Addr="15528"	Description="HeaterL Heater Control Mode SV" />
+
+		<AO_ITEM Index="0"	Name="AO_HeaterUCascadeControlModeSV"						BufferOffset="10"	Addr="15530"	Description="HeaterU Cascade Control Mode SV" />
+		<AO_ITEM Index="1"	Name="AO_HeaterUUpRate"					BufferOffset="12"	Addr="15532"	Description="HeaterU Up Rate" />
+		<AO_ITEM Index="2"	Name="AO_HeaterUDownRate"				BufferOffset="14"	Addr="15534"	Description="HeaterU Down Rate" />
+		<AO_ITEM Index="3"	Name="AO_HeaterUCascade_P"				BufferOffset="16"	Addr="15536"	Description="HeaterU Cascade P" />
+		<AO_ITEM Index="4"	Name="AO_HeaterUCascade_I"				BufferOffset="18"	Addr="15538"	Description="HeaterU Cascade I" />
+		<AO_ITEM Index="5"	Name="AO_HeaterUCascade_D"				BufferOffset="20"	Addr="15540"	Description="HeaterU Cascade D" />
+		<AO_ITEM Index="6"	Name="AO_HeaterUHeater_P"					BufferOffset="22"	Addr="15542"	Description="HeaterU Heater P" />
+		<AO_ITEM Index="7"	Name="AO_HeaterUHeater_I"					BufferOffset="24"	Addr="15544"	Description="HeaterU Heater I" />
+		<AO_ITEM Index="8"	Name="AO_HeaterUHeater_D"					BufferOffset="26"	Addr="15546"	Description="HeaterU Heater D" />
+    <AO_ITEM Index="10"	Name="AO_HeaterUTCOpenOffset"	BufferOffset="30"	Addr="15550"	Description="HeaterU TC OPEN OFFSET" />
+
+		<AO_ITEM Index="11"	Name="AO_HeaterCUCascadeControlModeSV"						BufferOffset="32"	Addr="15552"	Description="HeaterCU Cascade Control Mode SV" />
+		<AO_ITEM Index="12"	Name="AO_HeaterCUUpRate"					BufferOffset="34"	Addr="15554"	Description="HeaterCU Up Rate" />
+		<AO_ITEM Index="13"	Name="AO_HeaterCUDownRate"				BufferOffset="36"	Addr="15556"	Description="HeaterCU Down Rate" />
+		<AO_ITEM Index="14"	Name="AO_HeaterCUCascade_P"				BufferOffset="38"	Addr="15558"	Description="HeaterCU Cascade P" />
+		<AO_ITEM Index="15"	Name="AO_HeaterCUCascade_I"				BufferOffset="40"	Addr="15560"	Description="HeaterCU Cascade I" />
+		<AO_ITEM Index="16"	Name="AO_HeaterCUCascade_D"				BufferOffset="42"	Addr="15562"	Description="HeaterCU Cascade D" />
+		<AO_ITEM Index="17"	Name="AO_HeaterCUHeater_P"					BufferOffset="44"	Addr="15564"	Description="HeaterCU Heater P" />
+		<AO_ITEM Index="18"	Name="AO_HeaterCUHeater_I"					BufferOffset="46"	Addr="15566"	Description="HeaterCU Heater I" />
+		<AO_ITEM Index="19"	Name="AO_HeaterCUHeater_D"					BufferOffset="48"	Addr="15568"	Description="HeaterCU Heater D" />
+    <AO_ITEM Index="21"	Name="AO_HeaterCUTCOpenOffset"					BufferOffset="52"	Addr="15572"	Description="HeaterCU TC OPEN OFFSET" />
+
+		<AO_ITEM Index="22"	Name="AO_HeaterCCascadeControlModeSV"						BufferOffset="54"	Addr="15574"	Description="HeaterC Cascade Control Mode SV" />
+		<AO_ITEM Index="23"	Name="AO_HeaterCUpRate"					BufferOffset="56"	Addr="15576"	Description="HeaterC Up Rate" />
+		<AO_ITEM Index="24"	Name="AO_HeaterCDownRate"				BufferOffset="58"	Addr="15578"	Description="HeaterC Down Rate" />
+		<AO_ITEM Index="25"	Name="AO_HeaterCCascade_P"				BufferOffset="60"	Addr="15580"	Description="HeaterC Cascade P" />
+		<AO_ITEM Index="26"	Name="AO_HeaterCCascade_I"				BufferOffset="62"	Addr="15582"	Description="HeaterC Cascade I" />
+		<AO_ITEM Index="27"	Name="AO_HeaterCCascade_D"				BufferOffset="64"	Addr="15584"	Description="HeaterC Cascade D" />
+		<AO_ITEM Index="28"	Name="AO_HeaterCHeater_P"					BufferOffset="66"	Addr="15586"	Description="HeaterC Heater P" />
+		<AO_ITEM Index="29"	Name="AO_HeaterCHeater_I"					BufferOffset="68"	Addr="15588"	Description="HeaterC Heater I" />
+		<AO_ITEM Index="30"	Name="AO_HeaterCHeater_D"					BufferOffset="70"	Addr="15590"	Description="HeaterC Heater D" />
+    <AO_ITEM Index="32"	Name="AO_HeaterCTCOpenOffset"					BufferOffset="74"	Addr="15594"	Description="HeaterC TC OPEN OFFSET" />
+
+    <AO_ITEM Index="33"	Name="AO_HeaterCLCascadeControlModeSV"						BufferOffset="76"	Addr="15596"	Description="HeaterCL Cascade Control Mode SV" />
+		<AO_ITEM Index="34"	Name="AO_HeaterCLUpRate"					BufferOffset="78"	Addr="15598"	Description="HeaterCL Up Rate" />
+		<AO_ITEM Index="35"	Name="AO_HeaterCLDownRate"				BufferOffset="80"	Addr="15600"	Description="HeaterCL Down Rate" />
+		<AO_ITEM Index="36"	Name="AO_HeaterCLCascade_P"				BufferOffset="82"	Addr="15602"	Description="HeaterCL Cascade P" />
+		<AO_ITEM Index="37"	Name="AO_HeaterCLCascade_I"				BufferOffset="84"	Addr="15604"	Description="HeaterCL Cascade I" />
+		<AO_ITEM Index="38"	Name="AO_HeaterCLCascade_D"				BufferOffset="86"	Addr="15606"	Description="HeaterCL Cascade D" />
+		<AO_ITEM Index="39"	Name="AO_HeaterCLHeater_P"					BufferOffset="88"	Addr="15608"	Description="HeaterCL Heater P" />
+		<AO_ITEM Index="40"	Name="AO_HeaterCLHeater_I"					BufferOffset="90"	Addr="15610"	Description="HeaterCL Heater I" />
+		<AO_ITEM Index="41"	Name="AO_HeaterCLHeater_D"					BufferOffset="92"	Addr="15612"	Description="HeaterCL Heater D" />
+    <AO_ITEM Index="43"	Name="AO_HeaterCLTCOpenOffset"					BufferOffset="96"	Addr="15616"	Description="HeaterCL TC OPEN OFFSET" />
+
+		<AO_ITEM Index="44"	Name="AO_HeaterLCascadeControlModeSV"						BufferOffset="98"	Addr="15618"	Description="HeaterL Cascade Control Mode SV" />
+		<AO_ITEM Index="45"	Name="AO_HeaterLUpRate"					BufferOffset="100"	Addr="15620"	Description="HeaterL Up Rate" />
+		<AO_ITEM Index="46"	Name="AO_HeaterLDownRate"				BufferOffset="102"	Addr="15622"	Description="HeaterL Down Rate" />
+		<AO_ITEM Index="47"	Name="AO_HeaterLCascade_P"				BufferOffset="104"	Addr="15624"	Description="HeaterL Cascade P" />
+		<AO_ITEM Index="48"	Name="AO_HeaterLCascade_I"				BufferOffset="106"	Addr="15626"	Description="HeaterL Cascade I" />
+		<AO_ITEM Index="49"	Name="AO_HeaterLCascade_D"				BufferOffset="108"	Addr="15628"	Description="HeaterL Cascade D" />
+		<AO_ITEM Index="50"	Name="AO_HeaterLHeater_P"					BufferOffset="110"	Addr="15630"	Description="HeaterL Heater P" />
+		<AO_ITEM Index="51"	Name="AO_HeaterLHeater_I"					BufferOffset="112"	Addr="15632"	Description="HeaterL Heater I" />
+		<AO_ITEM Index="52"	Name="AO_HeaterLHeater_D"					BufferOffset="114"	Addr="15634"	Description="HeaterL Heater D" />
+    <AO_ITEM Index="54"	Name="AO_HeaterLTCOpenOffset"					BufferOffset="118"	Addr="15638"	Description="HeaterL TC OPEN OFFSET" />
+
+
+  </Ana_Out>
+</IO_DEFINE>

Dosya farkı çok büyük olduğundan ihmal edildi
+ 3245 - 0
Branch/NTP02/Furnace/FurnaceRT/Config/IO/NTP02/_ioDefinePM.xml


Dosya farkı çok büyük olduğundan ihmal edildi
+ 1187 - 0
Branch/NTP02/Furnace/FurnaceRT/Config/NTP02/AlarmEventDefine.xml


+ 504 - 0
Branch/NTP02/Furnace/FurnaceRT/Config/NTP02/interlock.xml

@@ -0,0 +1,504 @@
+<?xml version="1.0" encoding="utf-8" ?>
+
+<Interlock xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+
+	<!--
+	LT(less than)               小于
+	LE(less than or equal to)   小于等于
+	EQ(equal to)                等于
+	NE(not equal to)            不等于
+	GE(greater than or equal to)大于等于
+	GT(greater than)            大于
+	B(bool)
+	-->
+	<Action do="PM1.DO_ValveAV1" value="true" reverse="false">
+		<Limit di="PM1.DI_AV1ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV2" value="true" reverse="false">
+		<Limit di="PM1.DI_AV2ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV3" value="true" reverse="false">
+		<Limit di="PM1.DI_AV3ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV4" value="true" reverse="false">
+		<Limit di="PM1.DI_AV4ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV5" value="true" reverse="false">
+		<Limit di="PM1.DI_AV5ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV6" value="true" reverse="false">
+		<Limit di="PM1.DI_AV6ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV7" value="true" reverse="false">
+		<Limit di="PM1.DI_AV7ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV8" value="true" reverse="false">
+		<Limit di="PM1.DI_AV8ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV9" value="true" reverse="false">
+		<Limit di="PM1.DI_AV9ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV10" value="true" reverse="false">
+		<Limit di="PM1.DI_AV10ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV11" value="true" reverse="false">
+		<Limit di="PM1.DI_AV11ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV12" value="true" reverse="false">
+		<Limit di="PM1.DI_AV12ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV13" value="true" reverse="false">
+		<Limit di="PM1.DI_AV13ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV14" value="true" reverse="false">
+		<Limit di="PM1.DI_AV14ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV15" value="true" reverse="false">
+		<Limit di="PM1.DI_AV15ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV16" value="true" reverse="false">
+		<Limit di="PM1.DI_AV16ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV17" value="true" reverse="false">
+		<Limit di="PM1.DI_AV17ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV18" value="true" reverse="false">
+		<Limit di="PM1.DI_AV18ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV19" value="true" reverse="false">
+		<Limit di="PM1.DI_AV19ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV20" value="true" reverse="false">
+		<Limit di="PM1.DI_AV20ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV21" value="true" reverse="false">
+		<Limit di="PM1.DI_AV21ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV22" value="true" reverse="false">
+		<Limit di="PM1.DI_AV22ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV23" value="true" reverse="false">
+		<Limit di="PM1.DI_AV23ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV24" value="true" reverse="false">
+		<Limit di="PM1.DI_AV24ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV25" value="true" reverse="false">
+		<Limit di="PM1.DI_AV25ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV26" value="true" reverse="false">
+		<Limit di="PM1.DI_AV26ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV27" value="true" reverse="false">
+		<Limit di="PM1.DI_AV27ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV28" value="true" reverse="false">
+		<Limit di="PM1.DI_AV28ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV29" value="true" reverse="false">
+		<Limit di="PM1.DI_AV29ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV30" value="true" reverse="false">
+		<Limit di="PM1.DI_AV30ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV31" value="true" reverse="false">
+		<Limit di="PM1.DI_AV31ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV32" value="true" reverse="false">
+		<Limit di="PM1.DI_AV32ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV33" value="true" reverse="false">
+		<Limit di="PM1.DI_AV33ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV34" value="true" reverse="false">
+		<Limit di="PM1.DI_AV34ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV35" value="true" reverse="false">
+		<Limit di="PM1.DI_AV35ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV36" value="true" reverse="false">
+		<Limit di="PM1.DI_AV36ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV37" value="true" reverse="false">
+		<Limit di="PM1.DI_AV37ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV38" value="true" reverse="false">
+		<Limit di="PM1.DI_AV38ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV39" value="true" reverse="false">
+		<Limit di="PM1.DI_AV39ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV40" value="true" reverse="false">
+		<Limit di="PM1.DI_AV40ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV41" value="true" reverse="false">
+		<Limit di="PM1.DI_AV41ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV42" value="true" reverse="false">
+		<Limit di="PM1.DI_AV42ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV43" value="true" reverse="false">
+		<Limit di="PM1.DI_AV43ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV44" value="true" reverse="false">
+		<Limit di="PM1.DI_AV44ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV45" value="true" reverse="false">
+		<Limit di="PM1.DI_AV45ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV46" value="true" reverse="false">
+		<Limit di="PM1.DI_AV46ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV47" value="true" reverse="false">
+		<Limit di="PM1.DI_AV47ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV48" value="true" reverse="false">
+		<Limit di="PM1.DI_AV48ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV49" value="true" reverse="false">
+		<Limit di="PM1.DI_AV49ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV50" value="true" reverse="false">
+		<Limit di="PM1.DI_AV50ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV51" value="true" reverse="false">
+		<Limit di="PM1.DI_AV51ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV52" value="true" reverse="false">
+		<Limit di="PM1.DI_AV52ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV53" value="true" reverse="false">
+		<Limit di="PM1.DI_AV53ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV55" value="true" reverse="false">
+		<Limit di="PM1.DI_AV55ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV56" value="true" reverse="false">
+		<Limit di="PM1.DI_AV56ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV57" value="true" reverse="false">
+		<Limit di="PM1.DI_AV57ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV58" value="true" reverse="false">
+		<Limit di="PM1.DI_AV58ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV59" value="true" reverse="false">
+		<Limit di="PM1.DI_AV59ILK" value="true" condition="and"/>
+	</Action>
+	<!--<Action do="PM1.DO_ValveAV60" value="true" reverse="false">
+		<Limit di="PM1.DI_AV60ILK" value="true" condition="and"/>
+	</Action>-->
+	<!--<Action do="PM1.DO_ValveAV61" value="true" reverse="false">
+		<Limit di="PM1.DI_AV61ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV62" value="true" reverse="false">
+		<Limit di="PM1.DI_AV62ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV63" value="true" reverse="false">
+		<Limit di="PM1.DI_AV63ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV64" value="true" reverse="false">
+		<Limit di="PM1.DI_AV64ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV65" value="true" reverse="false">
+		<Limit di="PM1.DI_AV65ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV66" value="true" reverse="false">
+		<Limit di="PM1.DI_AV66ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV67" value="true" reverse="false">
+		<Limit di="PM1.DI_AV67ILK" value="true" condition="and"/>
+	</Action>-->
+	<Action do="PM1.DO_ValveAV68" value="true" reverse="false">
+		<Limit di="PM1.DI_AV68ILK" value="true" condition="and"/>
+	</Action>
+	<!--<Action do="PM1.DO_ValveAV69" value="true" reverse="false">
+		<Limit di="PM1.DI_AV69ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV70" value="true" reverse="false">
+		<Limit di="PM1.DI_AV70ILK" value="true" condition="and"/>
+	</Action>-->
+	<Action do="PM1.DO_ValveAV71" value="true" reverse="false">
+		<Limit di="PM1.DI_AV71ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV72" value="true" reverse="false">
+		<Limit di="PM1.DI_AV72ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV73" value="true" reverse="false">
+		<Limit di="PM1.DI_AV73ILK" value="true" condition="and"/>
+	</Action>
+	<!--<Action do="PM1.DO_ValveAV74" value="true" reverse="false">
+		<Limit di="PM1.DI_AV74ILK" value="true" condition="and"/>
+	</Action>-->
+	<Action do="PM1.DO_ValveAV75" value="true" reverse="false">
+		<Limit di="PM1.DI_AV75ILK" value="true" condition="and"/>
+	</Action>
+	<!--<Action do="PM1.DO_ValveAV76" value="true" reverse="false">
+		<Limit di="PM1.DI_AV76ILK" value="true" condition="and"/>
+	</Action>-->
+	<!--<Action do="PM1.DO_ValveAV77" value="true" reverse="false">
+		<Limit di="PM1.DI_AV77ILK" value="true" condition="and"/>
+	</Action>-->
+	<!--<Action do="PM1.DO_ValveAV78" value="true" reverse="false">
+		<Limit di="PM1.DI_AV78ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV79" value="true" reverse="false">
+		<Limit di="PM1.DI_AV79ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV80" value="true" reverse="false">
+		<Limit di="PM1.DI_AV80ILK" value="true" condition="and"/>
+	</Action>-->
+	<Action do="PM1.DO_ValveAV81" value="true" reverse="false">
+		<Limit di="PM1.DI_AV81ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV82" value="true" reverse="false">
+		<Limit di="PM1.DI_AV82ILK" value="true" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV83" value="true" reverse="false">
+		<Limit di="PM1.DI_AV83ILK" value="true" condition="and"/>
+	</Action>
+	<!--<Action do="PM1.DO_ValveAV2" value="true" reverse="false">
+		<Limit poll="PM1.VG11.Value" value="812LE" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV3" value="true" reverse="false">
+		<Limit poll="PM1.VG11.Value" value="812LE" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV4" value="true" reverse="false">
+		<Limit poll="PM1.VG11.Value" value="812LE" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV5" value="true" reverse="false">
+		<Limit poll="PM1.VG11.Value" value="812LE" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV6" value="true" reverse="false">
+		<Limit poll="PM1.VG11.Value" value="812LE" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV7" value="true" reverse="false">
+		<Limit poll="PM1.VG11.Value" value="812LE" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ValveAV8" value="true" reverse="false">
+		<Limit do="PM1.DO_ValveAV9" value="false" condition="and"/>
+	</Action>
+	
+	<Action do="PM1.DO_T101PowerOn" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_T101TempStatus" value="false" condition="and"/>
+		<Limit di="PM1.DI_FurnacePowerOnButton" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_MainFurnaceCellingTS306" value="false" condition="and"/>
+		<Limit di="PM1.DI_HeaterRoomSWS11S12" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_T101PowerOff" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_T101TempStatus" value="false" condition="and"/>
+		<Limit di="PM1.DI_FurnacePowerOnButton" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_MainFurnaceCellingTS306" value="false" condition="and"/>
+		<Limit di="PM1.DI_HeaterRoomSWS11S12" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_GaslineHeaterPowerOn" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_GasLineHeaterPowerOnButton" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_ExhaustHeaterPowerOn" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_ExhaustHeaterPowerOnButton" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_FrontBodyPowerOn" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FrontbodyPowerOnButton" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_BlowerMotorPowerOn" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_BlowerMotorPowerOnButton" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_RHCTS305" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_FFUPowerOn" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FFUPowerOnButton" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_T102PowerOn" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_T102TempStatus" value="false" condition="and"/>
+		<Limit di="PM1.DI_T102PowerOnButton" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_T103PowerOff" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_T103TempStatus" value="false" condition="and"/>
+		<Limit di="PM1.DI_T103PowerOnButton" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_CapHeaterEnable" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_TS34RotationTempSW" value="false" condition="and"/>
+		<Limit di="PM1.DI_TS30CapInsideTempSW" value="false" condition="and"/>
+		<Limit di="PM1.DI_TS31CapOutsideTempSW" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_RFPowerOn" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_RFPowerOn" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_HPMValveOnOff" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_HCLGasLeak1stAlarm" value="false" condition="and"/>
+		<Limit di="PM1.DI_HCLGasLeak2ndAlarm" value="false" condition="and"/>
+		<Limit di="PM1.DI_NH3GasLeak1stAlarm" value="false" condition="and"/>
+		<Limit di="PM1.DI_NH3GasLeak2ndAlarm" value="false" condition="and"/>
+		<Limit di="PM1.DI_F2GasLeak1stAlarm" value="false" condition="and"/>
+		<Limit di="PM1.DI_F2GasLeak2ndAlarm" value="false" condition="and"/>
+		<Limit di="PM1.DI_GasLeakFault" value="false" condition="and"/>
+		<Limit di="PM1.DI_GasBoxLowerDoorSW" value="false" condition="and"/>
+		<Limit di="PM1.DI_GasBoxUpperDoorSW" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_GasBoxExhaust1stAlarmMS2" value="false" condition="and"/>
+		<Limit di="PM1.DI_GasBoxExhaust2ndAlarmMS2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_FOUPRobotEnable1" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FilterBox1DoorSwitch" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBLightCurtainFault" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBLightCurtainOSSD1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBLightCurtainOSSD2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBFrontDoorSwitch" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMS1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMS2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_LightCurtainIdle" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBLightCurtainFault" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBLightCurtainOSSD1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBLightCurtainOSSD2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBFrontDoorSwitch" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_BufferMotorHardwareInterlockOk1" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FilterBox1DoorSwitch" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBFrontDoorSwitch" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_BufferMotorHardwareInterlockAlarm" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMS1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMS2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_BufferMotorHardwareInterlockOk2" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FilterBox1DoorSwitch" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBFrontDoorSwitch" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_BufferMotorHardwareInterlockAlarm" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMS1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMS2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_BoatLiftMotorHardwareInterlockOk1" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FilterBox1DoorSwitch" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBFrontDoorSwitch" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_BoatLiftMotorHardwareInterlockAlarm" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMS1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMS2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_BoatLiftMotorHardwareInterlockOk2" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FilterBox1DoorSwitch" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBFrontDoorSwitch" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_BoatLiftMotorHardwareInterlockAlarm" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMS1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMS2" value="false" condition="and"/>
+	</Action>
+	<Action do="PM1.DO_WaferRobotEnable1" value="true" reverse="false">
+		<Limit di="PM1.DI_MachineEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_OPPanelEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_FilterBox1DoorSwitch" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBFrontDoorSwitch" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO1" value="false" condition="and"/>
+		<Limit di="PM1.DI_FBEMO2" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMS1" value="false" condition="and"/>
+		<Limit di="PM1.DI_MachineEMS2" value="false" condition="and"/>
+	</Action>-->
+
+</Interlock>
+

+ 225 - 0
Branch/NTP02/Furnace/FurnaceRT/Config/NTP02/interlockUserDefine.xml

@@ -0,0 +1,225 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Interlock>
+	<!--Condition表示这一条与前面条件运算结果的关系-->
+	<!--
+	LT(less than)               小于
+	LE(less than or equal to)   小于等于
+	EQ(equal to)                等于
+	NE(not equal to)            不等于
+	GE(greater than or equal to)大于等于
+	GT(greater than)            大于
+	B(bool)
+	-->
+	<!--Automatic valve-->
+
+	<Action Name="FLAG001" Value="ON">
+		<Limit Name="PM1.DO_ValveAV2" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV32" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG001" Value="OFF">
+		<Limit Name="PM1.DO_ValveAV2" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV32" Value="OFF" Condition="OR" />
+	</Action>
+	<Action Name="FLAG002" Value="ON">
+		<Limit Name="PM1.DO_ValveAV3" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV34" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG002" Value="OFF">
+		<Limit Name="PM1.DO_ValveAV3" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV34" Value="OFF" Condition="OR" />
+	</Action>
+	<Action Name="FLAG003" Value="ON">
+		<Limit Name="PM1.DO_ValveAV4" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV28" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV36" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG003" Value="OFF">
+		<Limit Name="PM1.DO_ValveAV4" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV28" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV36" Value="OFF" Condition="OR" />
+	</Action>
+	<Action Name="FLAG004" Value="ON">
+		<Limit Name="PM1.DO_ValveAV5" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV29" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV37" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG004" Value="OFF">
+		<Limit Name="PM1.DO_ValveAV5" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV29" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV37" Value="OFF" Condition="OR" />
+	</Action>
+	<Action Name="FLAG005" Value="ON">
+		<Limit Name="PM1.DO_ValveAV6" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV39" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG005" Value="OFF">
+		<Limit Name="PM1.DO_ValveAV6" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV39" Value="OFF" Condition="OR" />
+	</Action>
+	<Action Name="FLAG006" Value="ON">
+		<Limit Name="PM1.DO_ValveAV7" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV38" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG006" Value="OFF">
+		<Limit Name="PM1.DO_ValveAV7" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV38" Value="OFF" Condition="OR" />
+	</Action>
+	<Action Name="FLAG007" Value="ON">
+		<Limit Name="PM1.DO_ValveAV12" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV28" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV36" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG007" Value="OFF">
+		<Limit Name="PM1.DO_ValveAV12" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV28" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV36" Value="OFF" Condition="OR" />
+	</Action>
+	<Action Name="FLAG008" Value="ON">
+		<Limit Name="PM1.DO_ValveAV14" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV29" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV37" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG008" Value="OFF">
+		<Limit Name="PM1.DO_ValveAV14" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV29" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV37" Value="OFF" Condition="OR" />
+	</Action>
+	<Action Name="FLAG009" Value="ON">
+		<Limit Name="PM1.DO_ValveAV15" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV18" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV38" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG009" Value="OFF">
+		<Limit Name="PM1.DO_ValveAV15" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV18" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV38" Value="OFF" Condition="OR" />
+	</Action>
+	<Action Name="FLAG010" Value="ON">
+		<Limit Name="PM1.DO_ValveAV19" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV22" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV39" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG010" Value="OFF">
+		<Limit Name="PM1.DO_ValveAV19" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV22" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV39" Value="OFF" Condition="OR" />
+	</Action>
+	<Action Name="FLAG011" Value="ON">
+		<Limit Name="PM1.DO_ValveAV33" Value="ON" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV39" Value="ON" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV23" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV26" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG011" Value="OFF">
+		<Limit Name="PM1.DO_ValveAV33" Value="OFF" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV39" Value="OFF" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV23" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV26" Value="OFF" Condition="OR" />
+	</Action>
+	<Action Name="FLAG012" Value="ON">
+		<Limit Name="PM1.DO_ValveAV27" Value="ON" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV52" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG012" Value="OFF">
+		<Limit Name="PM1.DO_ValveAV27" Value="OFF" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV52" Value="OFF" Condition="OR" />
+	</Action>
+
+	<Action Name="FLAG013" Value="ON">
+		<Limit Name="FLAG001" Value="ON" Condition="OR" />
+		<Limit Name="FLAG002" Value="ON" Condition="OR" />
+		<Limit Name="FLAG003" Value="ON" Condition="OR" />
+		<Limit Name="FLAG004" Value="ON" Condition="OR" />
+		<Limit Name="FLAG005" Value="ON" Condition="OR" />
+		<Limit Name="FLAG006" Value="ON" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV1" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG013" Value="OFF">
+		<Limit Name="FLAG001" Value="OFF" Condition="AND" />
+		<Limit Name="FLAG002" Value="OFF" Condition="AND" />
+		<Limit Name="FLAG003" Value="OFF" Condition="AND" />
+		<Limit Name="FLAG004" Value="OFF" Condition="AND" />
+		<Limit Name="FLAG005" Value="OFF" Condition="AND" />
+		<Limit Name="FLAG006" Value="OFF" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV1" Value="OFF" Condition="OR" />
+	</Action>
+
+	<Action Name="FLAG014" Value="ON">
+		<Limit Name="FLAG007" Value="ON" Condition="OR" />
+		<Limit Name="FLAG008" Value="ON" Condition="OR" />
+		<Limit Name="PM1.DO_ValveAV8" Value="ON" Condition="AND" />
+	</Action>
+	<Action Name="FLAG014" Value="OFF">
+		<Limit Name="FLAG007" Value="OFF" Condition="AND" />
+		<Limit Name="FLAG008" Value="OFF" Condition="AND" />
+		<Limit Name="PM1.DO_ValveAV8" Value="OFF" Condition="OR" />
+	</Action>
+	<!--<Action Name="PM1.DO_APCOpen" Value="ON">
+    <Limit Name="PM1.Heater1" Value="800H" Condition="AND" />
+  </Action>-->
+	<!--<Action Name="PM1.DO_RFPWRON" Value="ON">
+    <Limit Name="PM1.Heater1" Value="800L" Condition="AND" />
+  </Action>-->
+	<!--<Action Name="FLAG001" Value="OFF">
+    <Limit Name="PM1.DI_PumpAlarm" Value="OFF" Condition="AND" />
+    <Limit Name="PM1.DO_PumpON" Value="OFF" Condition="OR" />
+    <Limit Name="PM1.DI_CAPClosePosition" Value="OFF" Condition="OR" />
+    <Limit Name="PM1.DI_PumpON" Value="OFF" Condition="OR" />
+  </Action>
+  <Action Name="FLAG001" Value="ON">
+    <Limit Name="PM1.DI_PumpAlarm" Value="ON" Condition="AND" />
+    <Limit Name="PM1.DO_PumpON" Value="ON" Condition="AND" />
+    <Limit Name="PM1.DI_CAPClosePosition" Value="ON" Condition="AND" />
+    <Limit Name="PM1.DI_PumpON" Value="ON" Condition="AND" />
+  </Action>
+  <Action Name="FLAG003" Value="OFF">
+    <Limit Name="PM1.DO_GD1ValveOpen" Value="OFF" Condition="AND" />
+  </Action>
+  <Action Name="FLAG003" Value="KEEP36;OFF">
+    <Limit Name="PM1.DO_GD1ValveOpen" Value="ON" Condition="AND" />
+  </Action>
+  <Action Name="FLAG003" Value="DELAY36;ON">
+    <Limit Name="PM1.DO_GD1ValveOpen" Value="ON" Condition="AND" />
+  </Action>
+  <Action Name="FLAG004" Value="ON">
+    <Limit Name="FLAG003" Value="ON" Condition="AND" />
+    <Limit Name="PM1.DI_H2Density" Value="ON" Condition="AND" />
+  </Action>
+  <Action Name="FLAG004" Value="OFF">
+    <Limit Name="PM1.DI_H2Density" Value="OFF" Condition="AND" />
+    <Limit Name="PM1.DO_H12ValveOpen" Value="ON" Condition="OR" />
+  </Action>
+  <Action Name="FLAG006" Value="ON">
+    <Limit Name="PM1.DO_IV1ValveOpen" Value="ON" Condition="AND" />
+  </Action>
+  <Action Name="FLAG006" Value="OFF">
+    <Limit Name="PM1.DI_CAPClosePosition" Value="OFF" Condition="AND" />
+    <Limit Name="PM1.DO_J11ValveOpen" Value="ON" Condition="OR" />
+    <Limit Name="PM1.DO_XN11ValveOpen" Value="ON" Condition="OR" />
+  </Action>
+  <Action Name="FLAG007" Value="ON">
+    <Limit Name="PM1.DO_IV1ValveOpen" Value="ON" Condition="AND" />
+  </Action>
+  <Action Name="FLAG007" Value="OFF">
+    <Limit Name="PM1.DI_CAPClosePosition" Value="OFF" Condition="AND" />
+    <Limit Name="PM1.DO_H12ValveOpen" Value="ON" Condition="OR" />
+  </Action>
+  <Action Name="FLAG008" Value="ON">
+    <Limit Name="PM1.DO_IV1ValveOpen" Value="ON" Condition="AND" />
+    <Limit Name="PM1.DI_CAPClosePosition" Value="OFF" Condition="OR" />
+  </Action>
+  <Action Name="FLAG008" Value="OFF">
+    <Limit Name="PM1.DO_H12ValveOpen" Value="ON" Condition="AND" />
+    <Limit Name="PM1.DO_J11ValveOpen" Value="ON" Condition="OR" />
+    <Limit Name="PM1.DO_XN11ValveOpen" Value="ON" Condition="OR" />
+  </Action>
+  <Action Name="FLAG005" Value="OFF">
+    <Limit Name="PM1.DI_TubeATMPressure" Value="OFF" Condition="AND" />
+    <Limit Name="PM1.DI_ALYCAPATMPressure" Value="OFF" Condition="OR" />
+  </Action>
+  <Action Name="FLAG005" Value="KEEP60;OFF">
+    <Limit Name="PM1.DI_TubeATMPressure" Value="ON" Condition="AND" />
+    <Limit Name="PM1.DI_ALYCAPATMPressure" Value="ON" Condition="OR" />
+  </Action>-->
+
+</Interlock>

+ 1 - 1
Branch/NTP02/Furnace/FurnaceRT/Config/System.sccfg

@@ -49,7 +49,7 @@
 
 
 		<configs name="SetUp" display="" >
-			<config default="NTP" name="ToolType"  description="Tool Type" max="" min="" paramter="NTP;ELK;SiBCN;TiN" tag="ReadOnlySelection" unit="" type="String" />
+			<config default="NTP" name="ToolType"  description="Tool Type" max="" min="" paramter="NTP;NTP02;ELK;SiBCN;TiN" tag="ReadOnlySelection" unit="" type="String" />
 			<config default="true" name="IsLP1Installed"  description="Is LP1 Installed" max="0" min="0" paramter="" tag="" unit="" type="Bool" />
 			<config default="true" name="IsLP2Installed"  description="Is LP2 Installed" max="0" min="0" paramter="" tag="" unit="" type="Bool" />
 			<config default="true" name="IsLP3Installed"  description="Is LP3 Installed" max="0" min="0" paramter="" tag="" unit="" type="Bool" />

+ 25 - 0
Branch/NTP02/Furnace/FurnaceRT/FurnaceRT.csproj

@@ -438,6 +438,31 @@
       <SubType>Designer</SubType>
       <CopyToOutputDirectory>Always</CopyToOutputDirectory>
     </None>
+    <None Include="Config\NTP02\AlarmEventDefine.xml">
+      <SubType>Designer</SubType>
+      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+    </None>
+    <None Include="Config\NTP02\interlock.xml">
+      <SubType>Designer</SubType>
+      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+    </None>
+    <None Include="Config\NTP02\interlockUserDefine.xml">
+      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+    </None>
+    <None Include="Config\IO\NTP02\IoProviderConfig.xml">
+      <SubType>Designer</SubType>
+      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+    </None>
+    <None Include="Config\IO\NTP02\DeviceModelPM.xml">
+      <SubType>Designer</SubType>
+      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+    </None>
+    <None Include="Config\IO\NTP02\_ioDefinePM.xml">
+      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+    </None>
+    <None Include="Config\IO\NTP02\_ioDefineHeater.xml">
+      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+    </None>
     <Content Include="Config\Parameter\AlarmCondition\ParameterFormat.xml">
       <CopyToOutputDirectory>Always</CopyToOutputDirectory>
     </Content>