Skip to content

Commit

Permalink
Merge pull request #115 from janezg-SLAC/2oo3_Reset
Browse files Browse the repository at this point in the history
2oo3 reset function
  • Loading branch information
jyin999 authored Oct 17, 2023
2 parents 8319f42 + b3235f4 commit 51c6ab8
Show file tree
Hide file tree
Showing 4 changed files with 65 additions and 87 deletions.
60 changes: 31 additions & 29 deletions L2SIVacuum/L2SIVacuum.tmc

Large diffs are not rendered by default.

21 changes: 9 additions & 12 deletions L2SIVacuum/POUs/Functions/Valves/FB_VFS_2OO3.TcPOU
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ VAR
rtFault_IG1 : R_TRIG;
rtFault_IG2 : R_TRIG;
rtFault_IG3 : R_TRIG;
//Reset Fault counter trigger
rtResetFaultCounter : R_TRIG;
//PMPS
fbFF : FB_FastFault :=(
Expand Down Expand Up @@ -81,6 +83,7 @@ VAR
(*Interface with external system*)
i_e2OO3_MODE AT%I* : E_2OO3_MODE; (*Link to VFS Interface, 2oo3 mode selector*)
i_ResetFaultCounter AT%I* : BOOL; (*Link to VFS Interface, FaultCounter Reset*)
i_xPress_OK_IG1 AT%I* : BOOL; (*Link to VFS Interface, IG.xPRESS_OK, to make sure that the device is connected*)
i_xPress_OK_IG2 AT%I* : BOOL; (*Link to VFS Interface, IG.xPRESS_OK, to make sure that the device is connected*)
i_xPress_OK_IG3 AT%I* : BOOL; (*Link to VFS Interface, IG.xPRESS_OK, to make sure that the device is connected*)
Expand Down Expand Up @@ -267,6 +270,12 @@ tCLStimeout (IN := q_xClose_A, PT := tCLSTimeOutDuration);
rtOPN_SW (CLK := i_xOPN_SW);
(*Gauge fault counters*)
rtResetFaultCounter(CLK := i_ResetFaultCounter);
IF rtResetFaultCounter.Q THEN
nFaultCounter_IG1 := 0;
nFaultCounter_IG2 := 0;
nFaultCounter_IG3 := 0;
END_IF
//IG1
rtFault_IG1(CLK := i_xTriggerIG1 AND NOT xTrigger);
IF rtFault_IG1.Q THEN
Expand Down Expand Up @@ -328,17 +337,5 @@ q_nFltCount_IG2 := nFaultCounter_IG2;
q_nFltCount_IG3 := nFaultCounter_IG3;]]></ST>
</Implementation>
</Action>
<LineIds Name="FB_VFS_2OO3">
<LineId Id="875" Count="191" />
<LineId Id="2" Count="0" />
</LineIds>
<LineIds Name="FB_VFS_2OO3.ACT_ResetAlarms">
<LineId Id="2" Count="11" />
<LineId Id="1" Count="0" />
</LineIds>
<LineIds Name="FB_VFS_2OO3.IO">
<LineId Id="2" Count="5" />
<LineId Id="1" Count="0" />
</LineIds>
</POU>
</TcPlcObject>
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,12 @@ VAR_INPUT
pv: VFS_2OO3_MODE
io: io
'}
i_e2OO3_MODE : E_2OO3_MODE; // 2oo3 mode selector as EPICS Command or Input for global variable
i_e2OO3_MODE : E_2OO3_MODE; //2oo3 mode selector as EPICS Command or Input for global variable
{attribute 'pytmc' := '
pv: VFS_RESET_FAULT_COUNTER
io: io
'}
i_ResetFaultCounter : BOOL; //Reset Fault counter as EPCIS Command or Input for global reset button
END_VAR
VAR_OUTPUT
{attribute 'pytmc' := '
Expand All @@ -33,10 +38,14 @@ VAR
tonDelOK : TON;
xOPN_OK : BOOL;
tDelOK : TIME := T#60S;
xPress_OK : BOOL; //internal signal indicating if at gauges are connected and OK
xPress_OK : BOOL; //internal signal indicating if at gauges are connected and OK
//Reset Fault counter trigger
rtResetFaultCounter : R_TRIG;
(*outputs*)
q_e2OO3_MODE AT%Q* : E_2OO3_MODE; //2oo3 mode selector
q_e2OO3_MODE AT%Q* : E_2OO3_MODE; //2oo3 mode selector, connect to FB_VFS_2OO3 mode selector input
q_ResetFaultCounter AT%Q* : BOOL; //Reset Fault counter, connect to FB_VFS_2OO3 reset fault counter input
q_xPRESS_OK_IG1 AT%Q* : BOOL;
q_xPRESS_OK_IG2 AT%Q* : BOOL;
q_xPRESS_OK_IG3 AT%Q* : BOOL;
Expand Down Expand Up @@ -188,7 +197,16 @@ IF ( iq_stValve.i_xClsLS) THEN iq_stValve.xCLS_SW := FALSE; END_IF
iq_stValve.sVetoDeviceName := Veto_Valve.sDevName;
(*2oo3 mode selector*)
q_e2OO3_MODE := i_e2OO3_MODE;]]></ST>
q_e2OO3_MODE := i_e2OO3_MODE;
(*Reset Fault counter, q_ResetFaultCounter output is TRUE for one plc cycle *)
rtResetFaultCounter(CLK := i_ResetFaultCounter);
IF rtResetFaultCounter.Q THEN
i_ResetFaultCounter := FALSE;
q_ResetFaultCounter := TRUE;
ELSE
q_ResetFaultCounter := FALSE;
END_IF]]></ST>
</Implementation>
</Action>
</POU>
Expand Down
45 changes: 3 additions & 42 deletions L2SIVacuumLib.tsproj
Original file line number Diff line number Diff line change
@@ -1,24 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TcSmProject xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.beckhoff.com/schemas/2012/07/TcSmProject" TcSmVersion="1.0" TcVersion="3.1.4022.30">
<DataTypes>
<DataType>
<Name GUID="{18071995-0000-0000-0000-000000000041}" TcBaseType="true" HideSubItems="true" CName="AmsNetId">AMSNETID</Name>
<BitSize>48</BitSize>
<BaseType GUID="{18071995-0000-0000-0000-000000000001}">BYTE</BaseType>
<ArrayInfo>
<LBound>0</LBound>
<Elements>6</Elements>
</ArrayInfo>
<Format>
<Printf>%d.%d.%d.%d.%d.%d</Printf>
<Parameter>[0]</Parameter>
<Parameter>[1]</Parameter>
<Parameter>[2]</Parameter>
<Parameter>[3]</Parameter>
<Parameter>[4]</Parameter>
<Parameter>[5]</Parameter>
</Format>
</DataType>
<DataType>
<Name GUID="{F27C2E36-F71A-4739-B9BA-8A892874FECC}" PersistentType="true">VacEventClass</Name>
<DisplayName TxtId="">
Expand Down Expand Up @@ -84,20 +66,6 @@
<CLSID ClassFactory="TcPlc30">{08500001-0000-0000-F000-000000000064}</CLSID>
<Vars VarGrpType="1">
<Name>PlcTask Inputs</Name>
<Var>
<Name>LCLS_General.DefaultGlobals.stSys.I_EcatMaster1</Name>
<Comment>
<![CDATA[ AMS Net ID used for FB_EcatDiag, among others ]]>
</Comment>
<Type GUID="{18071995-0000-0000-0000-000000000041}">AMSNETID</Type>
</Var>
<Var>
<Name>LCLS_Vacuum_Serial.LCLS_Vacuum.Global_Variables.g_stSystem.I_EcatMaster1</Name>
<Comment>
<![CDATA[ AMS Net ID used for FB_EcatDiag, among others ]]>
</Comment>
<Type GUID="{18071995-0000-0000-0000-000000000041}">AMSNETID</Type>
</Var>
<Var>
<Name>PRG_Test.fb_VGC_Test.VGC.i_xOpnLS</Name>
<Comment>
Expand Down Expand Up @@ -220,13 +188,6 @@
</Comment>
<Type>INT</Type>
</Var>
<Var>
<Name>Global_Variables.g_stSystem.I_EcatMaster1</Name>
<Comment>
<![CDATA[ AMS Net ID used for FB_EcatDiag, among others ]]>
</Comment>
<Type GUID="{18071995-0000-0000-0000-000000000041}">AMSNETID</Type>
</Var>
</Vars>
<Vars VarGrpType="2">
<Name>PlcTask Outputs</Name>
Expand Down Expand Up @@ -369,13 +330,13 @@
<MappingInfo Identifier="{00000000-2001-0850-0020-500800205008}" Id="#x02030010"/>
<OwnerA Name="TIPC^L2SIVacuum^L2SIVacuum Instance">
<OwnerB Name="TIPC^L2SIVacuum^L2SIVacuum Instance">
<Link VarA="PlcTask Inputs^PRG_Test.fb_GPI_Test.fb_MKS317.i_iPRESS_R" VarB="PlcTask Outputs^PRG_Test.fb_GPI_Test.i_iPRESS_R"/>
<Link VarA="PlcTask Inputs^PRG_Test.fb_PTM_Test.fb_PTM_Ebara_010M.i_iTempMon" VarB="PlcTask Outputs^PRG_Test.fb_PTM_Test.i_iTempMon"/>
<Link VarA="PlcTask Inputs^PRG_Test.fb_PTM_Test.q_iSpeedSet" VarB="PlcTask Outputs^PRG_Test.fb_PTM_Test.i_diCurSpd"/>
<Link VarA="PlcTask Outputs^PRG_Test.fb_GCC_Test.i_iPRESS_R" VarB="PlcTask Inputs^PRG_Test.fb_GCC_Test.fb_MKS422.i_iPRESS_R"/>
<Link VarA="PlcTask Outputs^PRG_Test.fb_GPI_Test.i_iPRESS_R" VarB="PlcTask Inputs^PRG_Test.fb_GPI_Test.fb_MKS275.i_iPRESS_R"/>
<Link VarA="PlcTask Outputs^PRG_Test.fb_GPI_Test.i_iPRESS_R" VarB="PlcTask Inputs^PRG_Test.fb_GPI_Test.fb_MKS317.i_iPRESS_R"/>
<Link VarA="PlcTask Outputs^PRG_Test.fb_PTM_Test.i_diCurSpd" VarB="PlcTask Inputs^PRG_Test.fb_PTM_Test.q_iSpeedSet"/>
<Link VarA="PlcTask Outputs^PRG_Test.fb_PTM_Test.i_iCurrentMon" VarB="PlcTask Inputs^PRG_Test.fb_PTM_Test.fb_PTM_Ebara_010M.i_iCurrentMon"/>
<Link VarA="PlcTask Outputs^PRG_Test.fb_PTM_Test.i_iRawSpeed" VarB="PlcTask Inputs^PRG_Test.fb_PTM_Test.fb_PTM_Ebara_010M.i_iRawSpeed"/>
<Link VarA="PlcTask Outputs^PRG_Test.fb_PTM_Test.i_iTempMon" VarB="PlcTask Inputs^PRG_Test.fb_PTM_Test.fb_PTM_Ebara_010M.i_iTempMon"/>
</OwnerB>
</OwnerA>
</Mappings>
Expand Down

0 comments on commit 51c6ab8

Please sign in to comment.