From bf64da273b5d33918c3e238409a3e550ec219687 Mon Sep 17 00:00:00 2001
From: "[Luke Nisbet]" <[Luke.nisbet@STFC.ac.uk]>
Date: Thu, 6 Feb 2020 13:38:32 +0000
Subject: [PATCH] Ticket compleated to original specification
The code can read and write all possible PLC Open and Beckhoff
axis parameters it uses the MC_ReadParameter and MC_WriteParameter
function block within FB_Axis. Errors are passed out to the error
handling and it is possible to control it all through MainVisu.
---
solution.sln | 38 +-
solution/solution.tsproj | 1260 ++++++++++++++---
solution/tc_project_app/GlobalTextList.TcGTLO | 45 +
solution/tc_project_app/POUs/MAIN.TcPOU | 4 +-
solution/tc_project_app/tc_mca_std_lib | 2 +-
.../tc_project_app/tc_project_app.plcproj | 25 +-
6 files changed, 1162 insertions(+), 212 deletions(-)
diff --git a/solution.sln b/solution.sln
index 9459e68..4dccbdf 100644
--- a/solution.sln
+++ b/solution.sln
@@ -1,7 +1,7 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2013
-VisualStudioVersion = 12.0.21005.1
+# TcXaeShell Solution File, Format Version 11.00
+VisualStudioVersion = 15.0.28010.2050
MinimumVisualStudioVersion = 10.0.40219.1
Project("{B1E792BE-AA5F-4E3C-8C82-674BF9C0715B}") = "solution", "solution\solution.tsproj", "{9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}"
EndProject
@@ -33,22 +33,6 @@ Global
{9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Release|TwinCAT RT (x64).Build.0 = Release|TwinCAT RT (x64)
{9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Release|TwinCAT RT (x86).ActiveCfg = Release|TwinCAT RT (x86)
{9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Release|TwinCAT RT (x86).Build.0 = Release|TwinCAT RT (x86)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT CE7 (ARMV7).ActiveCfg = Debug|TwinCAT CE7 (ARMV7)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT CE7 (ARMV7).Build.0 = Debug|TwinCAT CE7 (ARMV7)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT OS (ARMT2).ActiveCfg = Debug|TwinCAT OS (ARMT2)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT OS (ARMT2).Build.0 = Debug|TwinCAT OS (ARMT2)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT RT (x64).ActiveCfg = Debug|TwinCAT RT (x64)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT RT (x64).Build.0 = Debug|TwinCAT RT (x64)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT RT (x86).ActiveCfg = Debug|TwinCAT RT (x86)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT RT (x86).Build.0 = Debug|TwinCAT RT (x86)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT CE7 (ARMV7).ActiveCfg = Release|TwinCAT CE7 (ARMV7)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT CE7 (ARMV7).Build.0 = Release|TwinCAT CE7 (ARMV7)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT OS (ARMT2).ActiveCfg = Release|TwinCAT OS (ARMT2)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT OS (ARMT2).Build.0 = Release|TwinCAT OS (ARMT2)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT RT (x64).ActiveCfg = Release|TwinCAT RT (x64)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT RT (x64).Build.0 = Release|TwinCAT RT (x64)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT RT (x86).ActiveCfg = Release|TwinCAT RT (x86)
- {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT RT (x86).Build.0 = Release|TwinCAT RT (x86)
{FB261665-FD20-4BF2-97F8-2854C82B752D}.Debug|TwinCAT CE7 (ARMV7).ActiveCfg = Debug|TwinCAT CE7 (ARMV7)
{FB261665-FD20-4BF2-97F8-2854C82B752D}.Debug|TwinCAT CE7 (ARMV7).Build.0 = Debug|TwinCAT CE7 (ARMV7)
{FB261665-FD20-4BF2-97F8-2854C82B752D}.Debug|TwinCAT OS (ARMT2).ActiveCfg = Debug|TwinCAT OS (ARMT2)
@@ -65,8 +49,26 @@ Global
{FB261665-FD20-4BF2-97F8-2854C82B752D}.Release|TwinCAT RT (x64).Build.0 = Release|TwinCAT RT (x64)
{FB261665-FD20-4BF2-97F8-2854C82B752D}.Release|TwinCAT RT (x86).ActiveCfg = Release|TwinCAT RT (x86)
{FB261665-FD20-4BF2-97F8-2854C82B752D}.Release|TwinCAT RT (x86).Build.0 = Release|TwinCAT RT (x86)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT CE7 (ARMV7).ActiveCfg = Debug|TwinCAT CE7 (ARMV7)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT CE7 (ARMV7).Build.0 = Debug|TwinCAT CE7 (ARMV7)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT OS (ARMT2).ActiveCfg = Debug|TwinCAT OS (ARMT2)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT OS (ARMT2).Build.0 = Debug|TwinCAT OS (ARMT2)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT RT (x64).ActiveCfg = Debug|TwinCAT RT (x64)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT RT (x64).Build.0 = Debug|TwinCAT RT (x64)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT RT (x86).ActiveCfg = Debug|TwinCAT RT (x86)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Debug|TwinCAT RT (x86).Build.0 = Debug|TwinCAT RT (x86)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT CE7 (ARMV7).ActiveCfg = Release|TwinCAT CE7 (ARMV7)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT CE7 (ARMV7).Build.0 = Release|TwinCAT CE7 (ARMV7)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT OS (ARMT2).ActiveCfg = Release|TwinCAT OS (ARMT2)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT OS (ARMT2).Build.0 = Release|TwinCAT OS (ARMT2)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT RT (x64).ActiveCfg = Release|TwinCAT RT (x64)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT RT (x86).ActiveCfg = Release|TwinCAT RT (x86)
+ {F935F1DE-0753-4702-B418-1DC0ED040A4D}.Release|TwinCAT RT (x86).Build.0 = Release|TwinCAT RT (x86)
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {3F42AC3D-5210-4834-8C00-062CE02B7502}
+ EndGlobalSection
EndGlobal
diff --git a/solution/solution.tsproj b/solution/solution.tsproj
index f74cba4..e0f327a 100644
--- a/solution/solution.tsproj
+++ b/solution/solution.tsproj
@@ -1,6 +1,622 @@
+
+ UINTARR2
+ 32
+ UINT
+
+ 0
+ 2
+
+
+ [%u, %u]
+ [0]
+ [1]
+
+
+ 0x%08x [%u, %u]
+ .
+ [0]
+ [1]
+
+
+ 0x%08x (%u)
+ .
+ .
+
+
+
+ NCENCODERSTRUCT_IN2B
+ 320
+
+ nDataIn1
+ UINTARR2
+ 32
+ 0
+
+
+ nDataIn2
+ UINTARR2
+ 32
+ 32
+
+
+ nState1
+ USINT
+ 8
+ 64
+
+
+ nState2
+ USINT
+ 8
+ 72
+
+
+ nState3
+ USINT
+ 8
+ 80
+
+
+ nState4
+ USINT
+
+ 8
+ 88
+
+
+ nDataIn3
+ UINTARR2
+ 32
+ 96
+
+
+ nDataIn4
+ UINTARR2
+ 32
+ 128
+
+
+ nDataIn5
+ UINTARR2
+ 32
+ 160
+
+
+ nDataIn6
+ UINTARR2
+ 32
+ 192
+
+
+ nState5
+ USINT
+ 8
+ 224
+
+
+ nState6
+ USINT
+ 8
+ 232
+
+
+ nState7
+ USINT
+ 8
+ 240
+
+
+ nState8
+ USINT
+ 8
+ 248
+
+
+ nDcInputTime
+ DINT
+ 32
+ 256
+
+
+ nDataIn7
+ UINTARR2
+ 32
+ 288
+
+
+
+ NCENCODERSTRUCT_IN
+
+ 96
+
+
+
+
+
+ NCENCODERSTRUCT_OUT2
+ 320
+
+ nDataOut1
+ UINTARR2
+ 32
+ 0
+
+
+ nDataOut2
+ UINTARR2
+ 32
+ 32
+
+
+ nCtrl1
+ USINT
+ 8
+ 64
+
+
+ nCtrl2
+ USINT
+ 8
+ 72
+
+
+ nCtrl3
+ USINT
+ 8
+ 80
+
+
+ nCtrl4
+ USINT
+ 8
+ 88
+
+
+ nDataOut3
+ UINTARR2
+ 32
+ 96
+
+
+ nDataOut4
+ UINTARR2
+ 32
+ 128
+
+
+ nDataOut5
+ UINTARR2
+ 32
+ 160
+
+
+ nDataOut6
+ UINTARR2
+ 32
+ 192
+
+
+ nCtrl5
+ USINT
+ 8
+ 224
+
+
+ nCtrl6
+ USINT
+ 8
+ 232
+
+
+ nCtrl7
+ USINT
+ 8
+ 240
+
+
+ nCtrl8
+ USINT
+ 8
+ 248
+
+
+
+ NCENCODERSTRUCT_OUT
+
+ 96
+
+
+
+
+
+ NCDRIVESTRUCT_IN2
+ 320
+
+ nDataIn1
+ UINTARR2
+ 32
+ 0
+
+
+ nDataIn2
+ UINTARR2
+ 32
+ 32
+
+
+ nState1
+ USINT
+ 8
+ 64
+
+
+ nState2
+ USINT
+ 8
+ 72
+
+
+ nState3
+ USINT
+ 8
+ 80
+
+
+ nState4
+ USINT
+
+ 8
+ 88
+
+
+ nDataIn3
+ UINTARR2
+ 32
+ 96
+
+
+ nDataIn4
+ UINTARR2
+ 32
+ 128
+
+
+ nDataIn5
+ UINTARR2
+ 32
+ 160
+
+
+ nDataIn6
+ UINTARR2
+ 32
+ 192
+
+
+ nState5
+ USINT
+ 8
+ 224
+
+
+ nState6
+ USINT
+ 8
+ 232
+
+
+ nState7
+ USINT
+ 8
+ 240
+
+
+ nState8
+ USINT
+ 8
+ 248
+
+
+ nDcOutputTime
+ DINT
+ 32
+ 256
+
+
+
+ NCDRIVESTRUCT_IN
+
+ 96
+
+
+
+
+
+ NCDRIVESTRUCT_OUT2
+ 320
+
+ nDataOut1
+ UINTARR2
+ 32
+ 0
+
+
+ nDataOut2
+ UINTARR2
+ 32
+ 32
+
+
+ nCtrl1
+ USINT
+ 8
+ 64
+
+
+ nCtrl2
+ USINT
+ 8
+ 72
+
+
+ nCtrl3
+ USINT
+ 8
+ 80
+
+
+ nCtrl4
+ USINT
+ 8
+ 88
+
+
+ nDataOut3
+ UINTARR2
+ 32
+ 96
+
+
+ nDataOut4
+ UINTARR2
+ 32
+ 128
+
+
+ nDataOut5
+ UINTARR2
+ 32
+ 160
+
+
+ nDataOut6
+ UINTARR2
+ 32
+ 192
+
+
+ nCtrl5
+ USINT
+ 8
+ 224
+
+
+ nCtrl6
+ USINT
+ 8
+ 232
+
+
+ nCtrl7
+ USINT
+ 8
+ 240
+
+
+ nCtrl8
+ USINT
+ 8
+ 248
+
+
+
+ NCDRIVESTRUCT_OUT
+
+ 96
+
+
+
+
+
+ PLCTONC_AXIS_REF_CTRL
+ 32
+
+ Enable
+ BIT
+ 1
+ 0
+
+
+ FeedEnablePlus
+ BIT
+ 1
+ 1
+
+
+ FeedEnableMinus
+ BIT
+ 1
+ 2
+
+
+ HomingSensor
+ BIT
+ 1
+ 5
+
+
+ AcceptBlockedDrive
+ BIT
+ 1
+ 8
+
+
+ PlcDebugFlag
+ BIT
+ 1
+ 30
+
+
+ NcDebugFlag
+ BIT
+ 1
+ 31
+
+
+ %08x
+
+
+ 0x%08x
+
+
+ 16#%08X
+
+
+
+ PLCTONC_AXIS_REF
+ 1024
+
+ ControlDWord
+ PLCTONC_AXIS_REF_CTRL
+ 32
+ 0
+
+
+ Override
+ UDINT
+ 32
+ 32
+
+
+ AxisModeRequest
+ UDINT
+ 32
+ 64
+
+
+ AxisModeDWord
+ UDINT
+ 32
+ 96
+
+
+ AxisModeLReal
+ LREAL
+ 64
+ 128
+
+
+ PositionCorrection
+ LREAL
+ 64
+ 192
+
+
+ ExtSetPos
+ LREAL
+ 64
+ 256
+
+
+ ExtSetVelo
+ LREAL
+ 64
+ 320
+
+
+ ExtSetAcc
+ LREAL
+ 64
+ 384
+
+
+ ExtSetDirection
+ DINT
+ 32
+ 448
+
+
+ ExtControllerOutput
+ LREAL
+ 64
+ 512
+
+
+ GearRatio1
+ LREAL
+ 64
+ 576
+
+
+ GearRatio2
+ LREAL
+ 64
+ 640
+
+
+ GearRatio3
+ LREAL
+ 64
+ 704
+
+
+ GearRatio4
+ LREAL
+ 64
+ 768
+
+
+ MapState
+ BOOL
+ 8
+ 832
+
+
+ PlcCycleControl
+ BYTE
+ 8
+ 840
+
+
+ PlcCycleCount
+ BYTE
+ 8
+ 848
+
+
+
+ NcStructType
+ 1
+
+
+
+
+ NCAXLESTRUCT_FROMPLC3
+
+
+
NCTOPLC_AXIS_REF_STATE
32
@@ -694,186 +1310,8 @@ External Setpoint Generation:
-
- PLCTONC_AXIS_REF_CTRL
- 32
-
- Enable
- BIT
- 1
- 0
-
-
- FeedEnablePlus
- BIT
- 1
- 1
-
-
- FeedEnableMinus
- BIT
- 1
- 2
-
-
- HomingSensor
- BIT
- 1
- 5
-
-
- AcceptBlockedDrive
- BIT
- 1
- 8
-
-
- PlcDebugFlag
- BIT
- 1
- 30
-
-
- NcDebugFlag
- BIT
- 1
- 31
-
-
- %08x
-
-
- 0x%08x
-
-
- 16#%08X
-
-
-
- PLCTONC_AXIS_REF
- 1024
-
- ControlDWord
- PLCTONC_AXIS_REF_CTRL
- 32
- 0
-
-
- Override
- UDINT
- 32
- 32
-
-
- AxisModeRequest
- UDINT
- 32
- 64
-
-
- AxisModeDWord
- UDINT
- 32
- 96
-
-
- AxisModeLReal
- LREAL
- 64
- 128
-
-
- PositionCorrection
- LREAL
- 64
- 192
-
-
- ExtSetPos
- LREAL
- 64
- 256
-
-
- ExtSetVelo
- LREAL
- 64
- 320
-
-
- ExtSetAcc
- LREAL
- 64
- 384
-
-
- ExtSetDirection
- DINT
- 32
- 448
-
-
- ExtControllerOutput
- LREAL
- 64
- 512
-
-
- GearRatio1
- LREAL
- 64
- 576
-
-
- GearRatio2
- LREAL
- 64
- 640
-
-
- GearRatio3
- LREAL
- 64
- 704
-
-
- GearRatio4
- LREAL
- 64
- 768
-
-
- MapState
- BOOL
- 8
- 832
-
-
- PlcCycleControl
- BYTE
- 8
- 840
-
-
- PlcCycleCount
- BYTE
- 8
- 848
-
-
-
- NcStructType
- 1
-
-
-
-
- NCAXLESTRUCT_FROMPLC3
-
-
-
-
+
@@ -889,8 +1327,456 @@ External Setpoint Generation:
+
+
+
+ NC-Task 1 SAF
+
+ Inputs
+
+
+ Outputs
+
+
+ Image
+
+
+
+ NC-Task 1 SVB
+
+
+ Axis 1
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCENCODERSTRUCT_IN2B
+ 1024
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nState4
+
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+ nDataIn7
+
+
+
+
+ Outputs
+
+ Out
+ NCENCODERSTRUCT_OUT2
+ 2048
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCDRIVESTRUCT_IN2
+ 1344
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nState4
+
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+
+
+ Outputs
+
+ Out
+ NCDRIVESTRUCT_OUT2
+ 2368
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nCtrl2
+
+
+
+ nCtrl3
+
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ FromPlc
+ PLCTONC_AXIS_REF
+
+
+
+ Outputs
+
+ ToPlc
+ NCTOPLC_AXIS_REF
+
+ AxisState
+
+
+
+ HomingState
+
+
+
+ CoupleState
+
+
+
+
+
+
+ Axis 2
+
+
+
+
+
+ Inputs
+
+ In
+ NCENCODERSTRUCT_IN2B
+ 2688
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nState4
+
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+ nDataIn7
+
+
+
+
+ Outputs
+
+ Out
+ NCENCODERSTRUCT_OUT2
+ 4736
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCDRIVESTRUCT_IN2
+ 3008
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nState4
+
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+
+
+ Outputs
+
+ Out
+ NCDRIVESTRUCT_OUT2
+ 5056
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nCtrl2
+
+
+
+ nCtrl3
+
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ FromPlc
+ PLCTONC_AXIS_REF
+ 1664
+
+
+
+ Outputs
+
+ ToPlc
+ NCTOPLC_AXIS_REF
+ 2688
+
+ AxisState
+
+
+
+ HomingState
+
+
+
+ CoupleState
+
+
+
+
+
+
+
-
+
tc_epicscommodule Instance
{08500001-0000-0000-F000-000000000064}
@@ -1054,5 +1940,19 @@ External Setpoint Generation:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/solution/tc_project_app/GlobalTextList.TcGTLO b/solution/tc_project_app/GlobalTextList.TcGTLO
index 1818614..3982a2b 100644
--- a/solution/tc_project_app/GlobalTextList.TcGTLO
+++ b/solution/tc_project_app/GlobalTextList.TcGTLO
@@ -10,16 +10,36 @@
"%2.2f"
+
+ "165"
+ "%2.3f"
+
+
+
+ "543"
+ "%2.4f"
+
+
"878"
"%d"
+
+ "294"
+ "%f"
+
+
"706"
"%i"
+
+ "821"
+ "%s"
+
+
"940"
"%x"
@@ -105,6 +125,11 @@
"bResetDone"
+
+ "693"
+ "bSet"
+
+
"944"
"bWarning"
@@ -195,6 +220,16 @@
"gearOut"
+
+ "566"
+ "homeSensorNeg"
+
+
+
+ "677"
+ "homeSensorPos"
+
+
"711"
"Inactive:"
@@ -240,6 +275,11 @@
"Overflows:"
+
+ "993"
+ "Read"
+
+
"942"
"reset"
@@ -260,6 +300,11 @@
"toggle"
+
+ "445"
+ "Write"
+
+
{062c6d5a-aca0-4f82-8481-8e26e8c8681e}
diff --git a/solution/tc_project_app/POUs/MAIN.TcPOU b/solution/tc_project_app/POUs/MAIN.TcPOU
index f81cabd..81ced47 100644
--- a/solution/tc_project_app/POUs/MAIN.TcPOU
+++ b/solution/tc_project_app/POUs/MAIN.TcPOU
@@ -55,7 +55,7 @@ VAR PERSISTENT
bRestoreOnStartup : BOOL;
END_VAR]]>
- eSUPS_PowerFailure THEN
(* next cycles of powerfailure *)
(* skip regular code execution for the remaining cycles of the powerfailure/writing of persistent data/quick shutdown ... *)
RETURN;
-END_IF
+END_IF*)
RESTORE_POSITIONS();
PROG();
diff --git a/solution/tc_project_app/tc_mca_std_lib b/solution/tc_project_app/tc_mca_std_lib
index 852ea37..ce4d55e 160000
--- a/solution/tc_project_app/tc_mca_std_lib
+++ b/solution/tc_project_app/tc_mca_std_lib
@@ -1 +1 @@
-Subproject commit 852ea37aa8d1aadfe0f2b84fd462c1f30aadd492
+Subproject commit ce4d55ec59eeb6d4114ec605b1d57f6fecaa59a3
diff --git a/solution/tc_project_app/tc_project_app.plcproj b/solution/tc_project_app/tc_project_app.plcproj
index b5d34ae..00b04b1 100644
--- a/solution/tc_project_app/tc_project_app.plcproj
+++ b/solution/tc_project_app/tc_project_app.plcproj
@@ -29,6 +29,9 @@
Code
+
+ Code
+
Code
@@ -352,8 +355,8 @@
-
-
+
+
"<ProjectRoot>"
{192FAD59-8248-4824-A8DE-9177C94C195A}
@@ -404,15 +407,15 @@
-
-
- System.Boolean
- System.Collections.Hashtable
- System.Int32
- {54dd0eac-a6d8-46f2-8c27-2f43c7e49861}
- System.String
-
-
+
+
+ System.Boolean
+ System.Collections.Hashtable
+ System.Int32
+ {54dd0eac-a6d8-46f2-8c27-2f43c7e49861}
+ System.String
+
+
\ No newline at end of file