Update from svn.

This commit is contained in:
DESKTOP-GPE37UV\THINKAPD 2023-03-29 10:02:07 +08:00
parent 979998f60b
commit a319612afd
20 changed files with 170 additions and 94 deletions

View File

@ -27,11 +27,17 @@
</Grid.ColumnDefinitions>
<TabControl Grid.Column="0" Margin="20,0,0,0" Visibility="{Binding DIVisibility}" MaxHeight="700">
<TabItem Header="DI">
<ListView ItemsSource="{Binding Path=DIsFilter}" IsEnabled="{Binding IsPermission}"
<ListView ItemsSource="{Binding Path=DIsFilter}"
IsEnabled="{Binding IsPermission}"
Grid.Column="2" MaxHeight="690"
AlternationCount="2"
VerticalAlignment="Top"
Name="DIListView">
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel/>
</ItemsPanelTemplate>
</ListView.ItemsPanel>
<ListView.View>
<GridView>
@ -76,12 +82,17 @@
AlternationCount="2"
VerticalAlignment="Top"
Name="DOListView">
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel/>
</ItemsPanelTemplate>
</ListView.ItemsPanel>
<ListView.View>
<GridView>
<GridViewColumn Width="50"
Header="Index"
DisplayMemberBinding="{Binding Path=Index}" />
Header="Index"
DisplayMemberBinding="{Binding Path=Index}" />
<GridViewColumn Width="200" Header="Name">
<GridViewColumn.CellTemplate>
@ -136,6 +147,11 @@
AlternationCount="2" MaxHeight="700"
Name="AIListView"
VerticalAlignment="Top" >
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel/>
</ItemsPanelTemplate>
</ListView.ItemsPanel>
<ListView.View>
<GridView>
<GridViewColumn Width="50"
@ -171,6 +187,11 @@
AlternationCount="2"
VerticalAlignment="Top"
Name="AOListView">
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel/>
</ItemsPanelTemplate>
</ListView.ItemsPanel>
<ListView.View>
<GridView>
<GridViewColumn Width="50"

View File

@ -175,14 +175,6 @@
Focusable="False"
HorizontalScrollBarVisibility="Hidden"
VerticalScrollBarVisibility="Hidden">
<ScrollViewer.LayoutTransform>
<TransformGroup>
<ScaleTransform />
<SkewTransform />
<RotateTransform />
<TranslateTransform />
</TransformGroup>
</ScrollViewer.LayoutTransform>
<GridViewHeaderRowPresenter
AllowsColumnReorder="{Binding TemplatedParent.View.AllowsColumnReorder, RelativeSource={RelativeSource TemplatedParent}}"
ColumnHeaderContainerStyle="{Binding TemplatedParent.View.ColumnHeaderContainerStyle, RelativeSource={RelativeSource TemplatedParent}}"
@ -262,8 +254,10 @@
<Setter.Value>
<ControlTemplate TargetType="{x:Type ListView}">
<Border Name="Border">
<ScrollViewer Style="{DynamicResource ListView-ScrollViewer}">
<ItemsPresenter Grid.Row="0" />
<ScrollViewer Style="{DynamicResource ListView-ScrollViewer}"
VirtualizingStackPanel.IsVirtualizing="True"
VirtualizingStackPanel.ScrollUnit="Pixel">
<VirtualizingStackPanel Grid.Row="0" />
</ScrollViewer>
</Border>
</ControlTemplate>

View File

@ -301,7 +301,7 @@ namespace Mainframe.Devices
if (!write.IsSuccess)
{
//if (!_isCommunicationError)
EV.PostAlarmLog("PLC", $"Communication error with Siemens PLC , {write.Message}");
//EV.PostAlarmLog("PLC", $"Communication error with Siemens PLC , {write.Message}");
//_isCommunicationError = true;
}
return write.IsSuccess;

View File

@ -33,7 +33,8 @@ namespace Mainframe.TMs.Routines
//Vent
CloseV81,
CloseV82,
SetMFC,
SetMFC1,
SetMFC2,
OpenSlowVent,
OpenFastVent,
TimeStayATM,
@ -226,13 +227,13 @@ namespace Mainframe.TMs.Routines
CloseSlowPump((int)RoutineStep.CloseV82);
//设定MFC60慢充流量
SetMFCToSetPoint((int)RoutineStep.SetMFC, _mfc60, _mfc60Default1);
SetMFCToSetPoint((int)RoutineStep.SetMFC1, _mfc60, _mfc60Default1);
//打开V77,等待压力大于200mbar
OpenSlowVent((int)RoutineStep.OpenSlowVent, _tm, _slowFastVentSwitchPressure, _slowVentTimeout);
//设定MFC60快充流量
SetMFCToSetPoint((int)RoutineStep.SetMFC, _mfc60, _mfc60Default2);
SetMFCToSetPoint((int)RoutineStep.SetMFC2, _mfc60, _mfc60Default2);
//等待压力大于1020mbar
OpenFastVent((int)RoutineStep.OpenFastVent, _tm, _ventBasePressure, _fastVentTime);

View File

@ -92,6 +92,7 @@
<IoValve id="V36" display="H2ArLine2" schematicId="V36" unit="" isNc="false" isDefaultOpen="true" diOpen="DI_H2ArLine2FB(V36)" doOpen="DO_H2ArLine2(V36)" diCloseSensor="" diOpenSensor=""/>
<IoValve id="V37" display="N2.Switch" schematicId="V37" unit="" isNc="false" isDefaultOpen="true" diOpen="DI_N2SwitchFB(V37)" doOpen="DO_N2Switch(V37)" diCloseSensor="" diOpenSensor=""/>
<IoValve id="V37s" display="N2.Switch" schematicId="V37s" unit="" isNc="true" isDefaultOpen="false" diOpen="DI_N2SwitchFB(V37)" doOpen="DO_N2Switch(V37)" diCloseSensor="" diOpenSensor=""/>
<IoValve id="V38" display="High N2Flow" schematicId="V38" unit="" isNc="false" isDefaultOpen="true" diOpen="DI_HighN2Flow_FB" doOpen="DO_HighN2Flow" diCloseSensor="" diOpenSensor=""/>
<IoValve id="V39" display="Diluted N2 Run" schematicId="V39" unit="" isNc="true" isDefaultOpen="false" diOpen="DI_DilutedN2Run/VentFB(V39)" doOpen="DO_DilutedN2Run/Vent(V39)" diCloseSensor="" diOpenSensor=""/>
<IoValve id="V39s" display="Diluted N2 Vent" schematicId="V39s" unit="" isNc="false" isDefaultOpen="true" diOpen="DI_DilutedN2Run/VentFB(V39)" doOpen="DO_DilutedN2Run/Vent(V39)" diCloseSensor="" diOpenSensor=""/>
<IoValve id="V40" display="High N2 Run" schematicId="V40" unit="" isNc="true" isDefaultOpen="false" diOpen="DI_HighN2Run/VentFB(V40)" doOpen="DO_HighN2Run/Vent(V40)" diCloseSensor="" diOpenSensor=""/>
@ -500,7 +501,7 @@
</IoN2Dilutions>
<IoN2HighDopings classType="SicPM.Devices.IoN2HighDoping" assembly="SicPM">
<IoN2HighDoping id="N2HighDoping" display="" schematicId="" unit="" valve1="V37" valve2="V37s" valve3="V40" valve4="V40s" />
<IoN2HighDoping id="N2HighDoping" display="" schematicId="" unit="" valve1="V38" valve2="V40" valve3="V40s" />
</IoN2HighDopings>
<IoSiH4s classType="SicPM.Devices.IoSiH4" assembly="SicPM">

View File

@ -91,6 +91,7 @@
<DI_ITEM Index="165" Name="DI_H2ArLine1FB(V35)" BufferOffset="165" Addr="165" Description="" />
<DI_ITEM Index="166" Name="DI_H2ArLine2FB(V36)" BufferOffset="166" Addr="166" Description="" />
<DI_ITEM Index="167" Name="DI_N2SwitchFB(V37)" BufferOffset="167" Addr="167" Description="" />
<DI_ITEM Index="168" Name="DI_HighN2Flow_FB" BufferOffset="168" Addr="168" Description="V38"/>
<DI_ITEM Index="169" Name="DI_DilutedN2Run/VentFB(V39)" BufferOffset="169" Addr="169" Description="" />
<DI_ITEM Index="170" Name="DI_HighN2Run/VentFB(V40)" BufferOffset="170" Addr="170" Description="" />
<DI_ITEM Index="171" Name="DI_TMARunFB(V41)" BufferOffset="171" Addr="171" Description="" />

View File

@ -300,7 +300,7 @@ namespace SicPM.Devices
if (!write.IsSuccess)
{
//if (!_isCommunicationError)
EV.PostAlarmLog("PLC", $"Communication error with Siemens PLC , {write.Message}");
//EV.PostAlarmLog("PLC", $"Communication error with Siemens PLC , {write.Message}");
//_isCommunicationError = true;
}
return write.IsSuccess;

View File

@ -17,7 +17,7 @@ namespace SicPM.Devices
private IValve _valve1;
private IValve _valve2;
private IValve _valve3;
private IValve _valve4;
//private IValve _valve4;
//private IValve _valve5;
public IoN2HighDoping(string module, XmlElement node, string ioModule = "")
@ -31,13 +31,13 @@ namespace SicPM.Devices
_valve1 = DEVICE.GetDevice($"{Module}.{node.GetAttribute("valve1")}") as IValve;
_valve2 = DEVICE.GetDevice($"{Module}.{node.GetAttribute("valve2")}") as IValve;
_valve3 = DEVICE.GetDevice($"{Module}.{node.GetAttribute("valve3")}") as IValve;
_valve4 = DEVICE.GetDevice($"{Module}.{node.GetAttribute("valve4")}") as IValve;
//_valve4 = DEVICE.GetDevice($"{Module}.{node.GetAttribute("valve4")}") as IValve;
//_valve5 = DEVICE.GetDevice($"{Module}.{node.GetAttribute("valve5")}") as IValve;
System.Diagnostics.Debug.Assert(_valve1 != null, $"Valve setting not valid");
System.Diagnostics.Debug.Assert(_valve2 != null, $"Valve setting not valid");
System.Diagnostics.Debug.Assert(_valve3 != null, $"Valve setting not valid");
System.Diagnostics.Debug.Assert(_valve4 != null, $"Valve setting not valid");
//System.Diagnostics.Debug.Assert(_valve4 != null, $"Valve setting not valid");
//System.Diagnostics.Debug.Assert(_valve5 != null, $"Valve setting not valid");
}
@ -58,47 +58,59 @@ namespace SicPM.Devices
reason = string.Empty;
FlowMode mode = (FlowMode)Enum.Parse(typeof(FlowMode), flowMode, true);
//switch (mode)
//{
// case FlowMode.Purge:
// if (!_valve1.TurnValve(false, out reason))
// return false;
// if (!_valve2.TurnValve(true, out reason))
// return false;
// if (!_valve3.TurnValve(false, out reason))
// return false;
// if (!_valve4.TurnValve(true, out reason))
// return false;
// //if (!_valve5.TurnValve(true, out reason))
// // return false;
// break;
// case FlowMode.Vent:
// if (!_valve1.TurnValve(true, out reason))
// return false;
// if (!_valve2.TurnValve(false, out reason))
// return false;
// if (!_valve3.TurnValve(false, out reason))
// return false;
// if (!_valve4.TurnValve(true, out reason))
// return false;
// //if (!_valve5.TurnValve(true, out reason))
// // return false;
// break;
// case FlowMode.Run:
// if (!_valve1.TurnValve(true, out reason))
// return false;
// if (!_valve2.TurnValve(false, out reason))
// return false;
// if (!_valve3.TurnValve(true, out reason))
// return false;
// if (!_valve4.TurnValve(false, out reason))
// return false;
// //if (!_valve5.TurnValve(false, out reason))
// // return false;
// break;
// default:
// break;
//}
switch (mode)
{
case FlowMode.Purge:
if (!_valve1.TurnValve(true, out reason))
return false;
if (!_valve2.TurnValve(false, out reason))
return false;
if (!_valve3.TurnValve(true, out reason))
return false;
//if (!_valve4.TurnValve(true, out reason))
// return false;
//if (!_valve5.TurnValve(true, out reason))
// return false;
break;
case FlowMode.Vent:
if (!_valve1.TurnValve(true, out reason))
return false;
if (!_valve2.TurnValve(false, out reason))
return false;
if (!_valve3.TurnValve(true, out reason))
return false;
//if (!_valve4.TurnValve(true, out reason))
// return false;
//if (!_valve5.TurnValve(true, out reason))
// return false;
break;
case FlowMode.Run:
if (!_valve1.TurnValve(true, out reason))
return false;
if (!_valve2.TurnValve(true, out reason))
return false;
if (!_valve3.TurnValve(false, out reason))
return false;
//if (!_valve4.TurnValve(false, out reason))
// return false;
//if (!_valve5.TurnValve(false, out reason))
// return false;
break;
case FlowMode.Close:
if (!_valve1.TurnValve(false, out reason))
return false;
if (!_valve2.TurnValve(false, out reason))
return false;
if (!_valve3.TurnValve(true, out reason))
return false;
//if (!_valve4.TurnValve(false, out reason))
// return false;
//if (!_valve5.TurnValve(false, out reason))
// return false;
break;
default:
break;
}
return true;
}

View File

@ -1342,7 +1342,7 @@
<config default="250" name="RoutineTimeOut" description="Routine超时时间" max="3000" min="0" paramter="" tag="" unit="s" type="Integer" />
</configs>
<configs name="Pump">
<config default="200" name="SlowFastPumpSwitchPressure" description="抽气的时候,快慢阀门切换的压力值" max="300" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="200" name="SlowFastPumpSwitchPressure" description="抽气的时候,快慢阀门切换的压力值" max="600" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="1" name="PumpBasePressure" description="抽气的底压" max="100" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="100" name="FastPumpTimeout" description="快抽抽气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer" />
<config default="100" name="PumpSlowTimeout" description="慢抽抽气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer" />
@ -1350,7 +1350,7 @@
<config default="250" name="RoutineTimeOut" description="Routine超时时间" max="3000" min="0" paramter="" tag="" unit="s" type="Integer" />
</configs>
<configs name="Vent">
<config default="200" name="SlowFastVentSwitchPressure" description="充气的时候,快慢阀门切换的压力值" max="300" min="100" paramter="" tag="" unit="mbar" type="Double" />
<config default="200" name="SlowFastVentSwitchPressure" description="充气的时候,快慢阀门切换的压力值" max="600" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="980" name="VentBasePressure" description="充气的底压" max="1100" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="100" name="FastVentTimeout" description="快充气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer" />
<config default="100" name="SlowVentTimeout" description="慢充气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer" />
@ -1362,7 +1362,7 @@
</configs>
<configs name="Purge">
<config default="3" name="CyclePurgeCount" description="来回循环的次数" max="100" min="0" paramter="" tag="" unit="s" type="Integer" />
<config default="200" name="SlowFastPumpSwitchPressure" description="抽气的时候,快慢阀门切换的压力值" max="300" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="200" name="SlowFastPumpSwitchPressure" description="抽气的时候,快慢阀门切换的压力值" max="600" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="0" name="PumpBasePressure" description="抽气的底压" max="1000" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="10" name="PumpDelayTime" description="抽气到底压后,继续抽气多长时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer" />
<config default="100" name="PumpTimeOut" description="抽气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer" />
@ -1370,14 +1370,14 @@
<config default="1000" name="VentDelayTime" description="充气到大气压后,继续充气多长时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer" />
<config default="100" name="FastVentTimeout" description="快充气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer" />
<config default="100" name="SlowVentTimeout" description="慢充气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer" />
<config default="200" name="SlowFastVentSwitchPressure" description="充气的时候,快慢阀门切换的压力值" max="300" min="100" paramter="" tag="" unit="mbar" type="Double" />
<config default="200" name="SlowFastVentSwitchPressure" description="充气的时候,快慢阀门切换的压力值" max="600" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="1500" name="Mfc60Default1" description="Mfc60慢充流量" max="30000" min="0" paramter="" tag="" unit="sccm" type="Double" />
<config default="3000" name="Mfc60Default2" description="Mfc60快充流量" max="30000" min="0" paramter="" tag="" unit="sccm" type="Double" />
<config default="3000" name="RoutineTimeOut" description="Routine超时时间" max="10000" min="0" paramter="" tag="" unit="s" type="Integer" />
</configs>
<configs name="LeakCheck">
<config default="5" name="CyclePurgeCount" description="来回循环的次数" max="100" min="0" paramter="" tag="" unit="s" type="Integer" />
<config default="200" name="SlowFastPumpSwitchPressure" description="抽气的时候,快慢阀门切换的压力值" max="300" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="200" name="SlowFastPumpSwitchPressure" description="抽气的时候,快慢阀门切换的压力值" max="600" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="0" name="PumpBasePressure" description="抽气的底压" max="1000" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="10" name="PumpDelayTime" description="抽气到底压后,继续抽气多长时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer" />
<config default="100" name="PumpTimeOut" description="抽气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer" />
@ -1501,7 +1501,7 @@
</configs>
<configs name="Pump">
<config default="100" name="SlowFastPumpSwitchPressure" description="抽气的时候,快慢阀门切换的压力值" max="300" min="100" paramter="" tag="" unit="mbar" type="Double" />
<config default="100" name="SlowFastPumpSwitchPressure" description="抽气的时候,快慢阀门切换的压力值" max="600" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="0" name="PumpBasePressure" description="抽气的底压" max="100" min="0" paramter="" tag="" unit="mbar" type="Double"/>
<config default="100" name="SlowPumpTimeout" description="慢抽抽气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer"/>
<config default="100" name="FastPumpTimeout" description="快抽抽气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer"/>
@ -1510,7 +1510,7 @@
</configs>
<configs name="Vent">
<config default="600" name="SlowFastVentSwitchPressure" description="充气的时候,快慢阀门切换的压力值" max="1000" min="0" paramter="" tag="" unit="mbar" type="Double"/>
<config default="600" name="SlowFastVentSwitchPressure" description="充气的时候,快慢阀门切换的压力值" max="600" min="0" paramter="" tag="" unit="mbar" type="Double"/>
<config default="980" name="VentBasePressure" description="充气的底压" max="1100" min="0" paramter="" tag="" unit="mbar" type="Double"/>
<config default="100" name="SlowVentTimeout" description="慢充气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer"/>
<config default="100" name="FastVentTimeout" description="快充气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer"/>
@ -1572,7 +1572,7 @@
</configs>
<configs name="Pump">
<config default="100" name="SlowFastPumpSwitchPressure" description="抽气的时候,快慢阀门切换的压力值" max="300" min="100" paramter="" tag="" unit="mbar" type="Double" />
<config default="100" name="SlowFastPumpSwitchPressure" description="抽气的时候,快慢阀门切换的压力值" max="600" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="0" name="PumpBasePressure" description="抽气的底压" max="1000" min="0" paramter="" tag="" unit="mbar" type="Double"/>
<config default="100" name="SlowPumpTimeout" description="慢抽抽气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer"/>
<config default="100" name="FastPumpTimeout" description="快抽抽气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer"/>
@ -1581,7 +1581,7 @@
</configs>
<configs name="Vent">
<config default="600" name="SlowFastVentSwitchPressure" description="充气的时候,快慢阀门切换的压力值" max="1000" min="0" paramter="" tag="" unit="mbar" type="Double"/>
<config default="600" name="SlowFastVentSwitchPressure" description="充气的时候,快慢阀门切换的压力值" max="600" min="0" paramter="" tag="" unit="mbar" type="Double"/>
<config default="980" name="VentBasePressure" description="充气的底压" max="1100" min="0" paramter="" tag="" unit="mbar" type="Double"/>
<config default="100" name="SlowVentTimeout" description="慢充气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer"/>
<config default="100" name="FastVentTimeout" description="快充气超时时间" max="1000" min="0" paramter="" tag="" unit="s" type="Integer"/>

View File

@ -51,6 +51,6 @@ using System.Windows;
// 可以指定所有值,也可以使用以下所示的 "*" 预置版本号和修订号
// 方法是按如下所示使用“*”: :
[assembly: AssemblyVersion("1.2.5.21")]
[assembly: AssemblyFileVersion("1.2.5.21")]
[assembly: AssemblyVersion("1.2.6.23")]
[assembly: AssemblyFileVersion("1.2.6.23")]

View File

@ -1,4 +1,24 @@
# Sic 系统更新历史记录
## Version 1.2.6.23
**2023-03-13**
- Bug修复
- TMPurgeRoutine时修改MFC60打开相关设置
- 新特性
- 无
## Version 1.2.6.22
**2023-03-07**
- Bug修复
-
- 新特性
- 1.恢复高掺N2的控制涉及MFC5和V38阀的显示和Recipe控制等
## Version 1.2.5.21

View File

@ -91,6 +91,7 @@
<DI_ITEM Index="165" Name="DI_H2ArLine1FB(V35)" BufferOffset="165" Addr="165" Description="" />
<DI_ITEM Index="166" Name="DI_H2ArLine2FB(V36)" BufferOffset="166" Addr="166" Description="" />
<DI_ITEM Index="167" Name="DI_N2SwitchFB(V37)" BufferOffset="167" Addr="167" Description="" />
<DI_ITEM Index="168" Name="DI_HighN2Flow_FB" BufferOffset="168" Addr="168" Description="V38"/>
<DI_ITEM Index="169" Name="DI_DilutedN2Run/VentFB(V39)" BufferOffset="169" Addr="169" Description="" />
<DI_ITEM Index="170" Name="DI_HighN2Run/VentFB(V40)" BufferOffset="170" Addr="170" Description="" />
<DI_ITEM Index="171" Name="DI_TMARunFB(V41)" BufferOffset="171" Addr="171" Description="" />
@ -271,6 +272,7 @@
<DO_ITEM Index="5" Name="DO_H2ArLine1(V35)" BufferOffset="5" Addr="5" Description="" />
<DO_ITEM Index="6" Name="DO_H2ArLine2(V36)" BufferOffset="6" Addr="6" Description="" />
<DO_ITEM Index="7" Name="DO_N2Switch(V37)" BufferOffset="7" Addr="7" Description="" />
<DO_ITEM Index="8" Name="DO_HighN2Flow" BufferOffset="8" Addr="8" Description="V38"/>
<DO_ITEM Index="9" Name="DO_DilutedN2Run/Vent(V39)" BufferOffset="9" Addr="9" Description="" />
<DO_ITEM Index="10" Name="DO_HighN2Run/Vent(V40)" BufferOffset="10" Addr="10" Description="" />
<DO_ITEM Index="11" Name="DO_TMARun(V41)" BufferOffset="11" Addr="11" Description="" />

View File

@ -889,7 +889,7 @@ namespace SicSimulator.Instances
IO.DI[$"{pm}.DI_SHH2/ArSwitchFB(V33)"].Value = IO.DO[$"{pm}.DO_SHH2/ArSwitch(V33)"].Value;
IO.DI[$"{pm}.DI_H2ArLine1FB(V35)"].Value = IO.DO[$"{pm}.DO_H2ArLine1(V35)"].Value;
IO.DI[$"{pm}.DI_H2ArLine2FB(V36)"].Value = IO.DO[$"{pm}.DO_H2ArLine2(V36)"].Value;
//IO.DI[$"{pm}.DI_DoppingDilute_FB"].Value = IO.DO[$"{pm}.DO_HighN2Flow"].Value;
IO.DI[$"{pm}.DI_HighN2Flow_FB"].Value = IO.DO[$"{pm}.DO_HighN2Flow"].Value;
IO.DI[$"{pm}.DI_DilutedN2Run/VentFB(V39)"].Value = IO.DO[$"{pm}.DO_DilutedN2Run/Vent(V39)"].Value;
IO.DI[$"{pm}.DI_HighN2Run/VentFB(V40)"].Value = IO.DO[$"{pm}.DO_HighN2Run/Vent(V40)"].Value;
IO.DI[$"{pm}.DI_TMARunFB(V41)"].Value = IO.DO[$"{pm}.DO_TMARun(V41)"].Value;

View File

@ -3,7 +3,6 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:LeadUI.Client.Models.Controls"
xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
xmlns:cal="http://www.caliburn.org"
xmlns:controls="http://OpenSEMI.Ctrlib.com/presentation"

View File

@ -193,8 +193,8 @@
Width="60"
Height="60"
IsEnabled="{Binding EnableWaferClick}"
WaferData="{Binding PM1Wafer}"
IsRotary="{Binding IsPm1WaferRotary}"/>
IsRotary="{Binding IsPm1WaferRotary}"
WaferData="{Binding PM1Wafer}" />
</Canvas>
<Canvas Visibility="{Binding IsPM2Installed, Converter={StaticResource BoolVisibilityConverter}}">
<Image
@ -209,8 +209,8 @@
Width="60"
Height="60"
IsEnabled="{Binding EnableWaferClick}"
WaferData="{Binding PM2Wafer}"
IsRotary="{Binding IsPm2WaferRotary}"/>
IsRotary="{Binding IsPm2WaferRotary}"
WaferData="{Binding PM2Wafer}" />
</Canvas>
<Canvas Visibility="{Binding IsUnLoadInstalled, Converter={StaticResource BoolVisibilityConverter}}">
<Image

View File

@ -8,17 +8,17 @@
<UserControl.Resources>
<Storyboard x:Key="sbRotateWafer" RepeatBehavior="Forever">
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="viewbox" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)">
<SplineDoubleKeyFrame KeyTime="00:00:01.5000000" Value="360"/>
<SplineDoubleKeyFrame KeyTime="00:00:01.5000000" Value="360" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</UserControl.Resources>
<Viewbox x:Name="viewbox" RenderTransformOrigin="0.5,0.5">
<Viewbox.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform/>
<RotateTransform/>
<TranslateTransform/>
<ScaleTransform />
<SkewTransform />
<RotateTransform />
<TranslateTransform />
</TransformGroup>
</Viewbox.RenderTransform>
<ctrl:Slot

View File

@ -987,6 +987,11 @@
SelectedIndex="{Binding EventLogsView.Count, Mode=OneWay, Converter={StaticResource collectionLastIndexConverter}}"
Style="{DynamicResource Top_ComboBox}"
Visibility="{Binding AllEventsVisibility}">
<ComboBox.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel />
</ItemsPanelTemplate>
</ComboBox.ItemsPanel>
<ComboBox.ItemTemplate>
<DataTemplate>
<ContentControl>

View File

@ -2088,6 +2088,11 @@
Canvas.Left="675"
Canvas.Top="271"
Content="V37" />
<Label
Canvas.Left="722"
Canvas.Top="269"
Content="V38"
RenderTransformOrigin="0.495,0.489" />
<Label
Canvas.Left="705"
Canvas.Top="216"
@ -2938,7 +2943,8 @@
FlowDirection="RightToLeft"
LeftDirection="None"
MoveSpeed="0"
RightDirection="None" />
RightDirection="None"
Visibility="Hidden"/>
<industrialcontrol:PipeLine
Canvas.Left="755"
Canvas.Top="366"
@ -2949,12 +2955,13 @@
FlowDirection="RightToLeft"
LeftDirection="None"
MoveSpeed="0"
RightDirection="None" />
RightDirection="None"
Visibility="Hidden"/>
<industrialcontrol:PipeLine
Canvas.Left="764"
Canvas.Top="366"
Width="308"
Canvas.Top="353"
Width="321"
Height="{StaticResource ResourceKey=Pipe_Height}"
CenterColor="{StaticResource ResourceKey=EdgeColorBlue}"
EdgeColor="{StaticResource ResourceKey=EdgeColorBlue}"
@ -4788,6 +4795,18 @@
Tag="V37"
ValveDirection="ToRight"
ValveName="{Binding V37.DisplayName}" />
<controlRT:ValveBig
Canvas.Left="724"
Canvas.Top="258"
Width="16"
Height="15"
Command="{Binding CmdTurnGasValve}"
DefaultOpen="{Binding V38.DefaultValue}"
HideBlinding="True"
OnOff="{Binding V38.Feedback}"
Tag="V38"
ValveDirection="ToRight"
ValveName="{Binding V38.DisplayName}" />
<controlRT:ValveBig
Canvas.Left="423"
Canvas.Top="405"
@ -5379,9 +5398,8 @@
Width="62"
Command="{Binding CmdSetMfcFlow}"
DeviceData="{Binding Mfc5Data}"
IsEnabled="False"
OperationName="SetMfcFlowValue"
Visibility="Hidden" />
Visibility="Visible" />
<controlRT:AnalogControl2
Canvas.Left="679"
@ -6595,7 +6613,7 @@
Canvas.Left="760"
Canvas.Top="300"
Content="M5"
Visibility="Hidden" />
Visibility="Visible" />
<Label

View File

@ -284,6 +284,8 @@ namespace SicUI.Models.PMs
[Subscription("V37s.DeviceData")]
public AITValveData V37s { get; set; }
[Subscription("V38.DeviceData")]
public AITValveData V38 { get; set; }
[Subscription("V39.DeviceData")]
public AITValveData V39 { get; set; }

View File

@ -54,7 +54,7 @@ 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.2.5.21")]
[assembly: AssemblyFileVersion("1.2.5.21")]
[assembly: AssemblyVersion("1.2.6.23")]
[assembly: AssemblyFileVersion("1.2.6.23")]