diff --git a/.gitattributes b/.gitattributes index d697d2e..a1aec5e 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,8 +1,6 @@ # end of line conversion CLRF -- LF -# Default is no conversion (follow Visual Studio) -* -text +# Default is auto +* text=auto # -.gitattributes text -.gitignore text - - +# Shell scripts must be line feed +*.sh text eol=lf diff --git a/bitbucket-pipelines.yml b/bitbucket-pipelines.yml index d47cd1d..7c786ab 100644 --- a/bitbucket-pipelines.yml +++ b/bitbucket-pipelines.yml @@ -1,11 +1,11 @@ -image: python:3.7.3 -options: - max-time: 1 -pipelines: - default: - - step: - script: - - git submodule update --init - - git submodule - - python twincat_version_manager.py - - python check_fix_white_space.py +image: python:3.7.3 +options: + max-time: 1 +pipelines: + default: + - step: + script: + - git submodule update --init + - git submodule + - python twincat_version_manager.py + - python check_fix_white_space.py diff --git a/solution.sln b/solution.sln index 976e55d..9459e68 100644 --- a/solution.sln +++ b/solution.sln @@ -1,72 +1,72 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 2013 -VisualStudioVersion = 12.0.21005.1 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{B1E792BE-AA5F-4E3C-8C82-674BF9C0715B}") = "solution", "solution\solution.tsproj", "{9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|TwinCAT CE7 (ARMV7) = Debug|TwinCAT CE7 (ARMV7) - Debug|TwinCAT OS (ARMT2) = Debug|TwinCAT OS (ARMT2) - Debug|TwinCAT RT (x64) = Debug|TwinCAT RT (x64) - Debug|TwinCAT RT (x86) = Debug|TwinCAT RT (x86) - Release|TwinCAT CE7 (ARMV7) = Release|TwinCAT CE7 (ARMV7) - Release|TwinCAT OS (ARMT2) = Release|TwinCAT OS (ARMT2) - Release|TwinCAT RT (x64) = Release|TwinCAT RT (x64) - Release|TwinCAT RT (x86) = Release|TwinCAT RT (x86) - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT CE7 (ARMV7).ActiveCfg = Debug|TwinCAT CE7 (ARMV7) - {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT CE7 (ARMV7).Build.0 = Debug|TwinCAT CE7 (ARMV7) - {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT OS (ARMT2).ActiveCfg = Debug|TwinCAT OS (ARMT2) - {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT OS (ARMT2).Build.0 = Debug|TwinCAT OS (ARMT2) - {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT RT (x64).ActiveCfg = Debug|TwinCAT RT (x64) - {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT RT (x64).Build.0 = Debug|TwinCAT RT (x64) - {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT RT (x86).ActiveCfg = Debug|TwinCAT RT (x86) - {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT RT (x86).Build.0 = Debug|TwinCAT RT (x86) - {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Release|TwinCAT CE7 (ARMV7).ActiveCfg = Release|TwinCAT CE7 (ARMV7) - {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Release|TwinCAT CE7 (ARMV7).Build.0 = Release|TwinCAT CE7 (ARMV7) - {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Release|TwinCAT OS (ARMT2).ActiveCfg = Release|TwinCAT OS (ARMT2) - {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Release|TwinCAT OS (ARMT2).Build.0 = Release|TwinCAT OS (ARMT2) - {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Release|TwinCAT RT (x64).ActiveCfg = Release|TwinCAT RT (x64) - {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) - {FB261665-FD20-4BF2-97F8-2854C82B752D}.Debug|TwinCAT OS (ARMT2).Build.0 = Debug|TwinCAT OS (ARMT2) - {FB261665-FD20-4BF2-97F8-2854C82B752D}.Debug|TwinCAT RT (x64).ActiveCfg = Debug|TwinCAT RT (x64) - {FB261665-FD20-4BF2-97F8-2854C82B752D}.Debug|TwinCAT RT (x64).Build.0 = Debug|TwinCAT RT (x64) - {FB261665-FD20-4BF2-97F8-2854C82B752D}.Debug|TwinCAT RT (x86).ActiveCfg = Debug|TwinCAT RT (x86) - {FB261665-FD20-4BF2-97F8-2854C82B752D}.Debug|TwinCAT RT (x86).Build.0 = Debug|TwinCAT RT (x86) - {FB261665-FD20-4BF2-97F8-2854C82B752D}.Release|TwinCAT CE7 (ARMV7).ActiveCfg = Release|TwinCAT CE7 (ARMV7) - {FB261665-FD20-4BF2-97F8-2854C82B752D}.Release|TwinCAT CE7 (ARMV7).Build.0 = Release|TwinCAT CE7 (ARMV7) - {FB261665-FD20-4BF2-97F8-2854C82B752D}.Release|TwinCAT OS (ARMT2).ActiveCfg = Release|TwinCAT OS (ARMT2) - {FB261665-FD20-4BF2-97F8-2854C82B752D}.Release|TwinCAT OS (ARMT2).Build.0 = Release|TwinCAT OS (ARMT2) - {FB261665-FD20-4BF2-97F8-2854C82B752D}.Release|TwinCAT RT (x64).ActiveCfg = Release|TwinCAT RT (x64) - {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) - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2013 +VisualStudioVersion = 12.0.21005.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{B1E792BE-AA5F-4E3C-8C82-674BF9C0715B}") = "solution", "solution\solution.tsproj", "{9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|TwinCAT CE7 (ARMV7) = Debug|TwinCAT CE7 (ARMV7) + Debug|TwinCAT OS (ARMT2) = Debug|TwinCAT OS (ARMT2) + Debug|TwinCAT RT (x64) = Debug|TwinCAT RT (x64) + Debug|TwinCAT RT (x86) = Debug|TwinCAT RT (x86) + Release|TwinCAT CE7 (ARMV7) = Release|TwinCAT CE7 (ARMV7) + Release|TwinCAT OS (ARMT2) = Release|TwinCAT OS (ARMT2) + Release|TwinCAT RT (x64) = Release|TwinCAT RT (x64) + Release|TwinCAT RT (x86) = Release|TwinCAT RT (x86) + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT CE7 (ARMV7).ActiveCfg = Debug|TwinCAT CE7 (ARMV7) + {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT CE7 (ARMV7).Build.0 = Debug|TwinCAT CE7 (ARMV7) + {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT OS (ARMT2).ActiveCfg = Debug|TwinCAT OS (ARMT2) + {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT OS (ARMT2).Build.0 = Debug|TwinCAT OS (ARMT2) + {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT RT (x64).ActiveCfg = Debug|TwinCAT RT (x64) + {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT RT (x64).Build.0 = Debug|TwinCAT RT (x64) + {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT RT (x86).ActiveCfg = Debug|TwinCAT RT (x86) + {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Debug|TwinCAT RT (x86).Build.0 = Debug|TwinCAT RT (x86) + {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Release|TwinCAT CE7 (ARMV7).ActiveCfg = Release|TwinCAT CE7 (ARMV7) + {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Release|TwinCAT CE7 (ARMV7).Build.0 = Release|TwinCAT CE7 (ARMV7) + {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Release|TwinCAT OS (ARMT2).ActiveCfg = Release|TwinCAT OS (ARMT2) + {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Release|TwinCAT OS (ARMT2).Build.0 = Release|TwinCAT OS (ARMT2) + {9CF97348-B9D3-4938-B1F2-5F0B0B6AA66A}.Release|TwinCAT RT (x64).ActiveCfg = Release|TwinCAT RT (x64) + {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) + {FB261665-FD20-4BF2-97F8-2854C82B752D}.Debug|TwinCAT OS (ARMT2).Build.0 = Debug|TwinCAT OS (ARMT2) + {FB261665-FD20-4BF2-97F8-2854C82B752D}.Debug|TwinCAT RT (x64).ActiveCfg = Debug|TwinCAT RT (x64) + {FB261665-FD20-4BF2-97F8-2854C82B752D}.Debug|TwinCAT RT (x64).Build.0 = Debug|TwinCAT RT (x64) + {FB261665-FD20-4BF2-97F8-2854C82B752D}.Debug|TwinCAT RT (x86).ActiveCfg = Debug|TwinCAT RT (x86) + {FB261665-FD20-4BF2-97F8-2854C82B752D}.Debug|TwinCAT RT (x86).Build.0 = Debug|TwinCAT RT (x86) + {FB261665-FD20-4BF2-97F8-2854C82B752D}.Release|TwinCAT CE7 (ARMV7).ActiveCfg = Release|TwinCAT CE7 (ARMV7) + {FB261665-FD20-4BF2-97F8-2854C82B752D}.Release|TwinCAT CE7 (ARMV7).Build.0 = Release|TwinCAT CE7 (ARMV7) + {FB261665-FD20-4BF2-97F8-2854C82B752D}.Release|TwinCAT OS (ARMT2).ActiveCfg = Release|TwinCAT OS (ARMT2) + {FB261665-FD20-4BF2-97F8-2854C82B752D}.Release|TwinCAT OS (ARMT2).Build.0 = Release|TwinCAT OS (ARMT2) + {FB261665-FD20-4BF2-97F8-2854C82B752D}.Release|TwinCAT RT (x64).ActiveCfg = Release|TwinCAT RT (x64) + {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) + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/solution/Licenses/ReadMe_licenses.txt b/solution/Licenses/ReadMe_licenses.txt index 79e6b36..1cc9be8 100644 --- a/solution/Licenses/ReadMe_licenses.txt +++ b/solution/Licenses/ReadMe_licenses.txt @@ -1,5 +1,5 @@ -Copy and paste in this folder the licenses contained inside the Beckhoff CPU in the path: - -C:\TwinCAT\3.1\Target\License - +Copy and paste in this folder the licenses contained inside the Beckhoff CPU in the path: + +C:\TwinCAT\3.1\Target\License + Thank you \ No newline at end of file diff --git a/solution/_Config/NC/1.xml b/solution/_Config/NC/1.xml index 02118c9..7447a9f 100644 --- a/solution/_Config/NC/1.xml +++ b/solution/_Config/NC/1.xml @@ -1,2 +1,2 @@ - -1mm15001500225015000150000130000000303010060020002000true5false0.1false100true2falsefalse000false10.010truefalsefalse5510.0001103600false21677721500.010.1false0false0false000falsetrue0false0false0104857500false005false1-1165535#x000000000.1002200101100000000.01211100001361291330false110111true5false010000.10.1false0.10.50.10000.10.100.50000false0.010112010.001 + +1mm15001500225015000150000130000000303010060020002000true5false0.1false100true2falsefalse000false10.010truefalsefalse5510.0001103600false21677721500.010.1false0false0false000falsetrue0false0false0104857500false005false1-1165535#x000000000.1002200101100000000.01211100001361291330false110111true5false010000.10.1false0.10.50.10000.10.100.50000false0.010112010.001 diff --git a/solution/solution.tsproj b/solution/solution.tsproj index 729ffe6..45bd716 100644 --- a/solution/solution.tsproj +++ b/solution/solution.tsproj @@ -1,1125 +1,1125 @@ - - - - - NCTOPLC_AXIS_REF_STATE - 32 - - Operational - BIT - 1 - 0 - - - Homed - BIT - 1 - 1 - - - NotMoving - BIT - 1 - 2 - - - InPositionArea - BIT - 1 - 3 - - - InTargetPosition - BIT - 1 - 4 - - - Protected - BIT - 1 - 5 - - - ErrorPropagationDelayed - BIT - 1 - 6 - - - HasBeenStopped - BIT - 1 - 7 - - - HasJob - BIT - 1 - 8 - - - PositiveDirection - BIT - 1 - 9 - - - NegativeDirection - BIT - 1 - 10 - - - HomingBusy - BIT - 1 - 11 - - - ConstantVelocity - BIT - 1 - 12 - - - Compensating - BIT - 1 - 13 - - - ExtSetPointGenEnabled - BIT - 1 - 14 - - - PhasingActive - BIT - 1 - 15 - - - ExternalLatchValid - BIT - 1 - 16 - - - NewTargetPos - BIT - 1 - 17 - - - ContinuousMotion - BIT - 1 - 19 - - - ControlLoopClosed - BIT - 1 - 20 - - - CamTableQueued - BIT - 1 - 21 - - - CamDataQueued - BIT - 1 - 22 - - - CamScalingPending - BIT - 1 - 23 - - - CmdBuffered - BIT - 1 - 24 - - - PTPmode - BIT - 1 - 25 - - - SoftLimitMinExceeded - BIT - 1 - 26 - - - SoftLimitMaxExceeded - BIT - 1 - 27 - - - DriveDeviceError - BIT - 1 - 28 - - - MotionCommandsLocked - BIT - 1 - 29 - - - IoDataInvalid - BIT - 1 - 30 - - - Error - BIT - 1 - 31 - - - %08x - - - 0x%08x - - - 16#%08X - - - - NCTOPLC_AXIS_REF_OPMODE - 32 - - OpModePosAreaMonitoring - BIT - 1 - 0 - - - OpModeTargetPosMonitoring - BIT - 1 - 1 - - - OpModeLoop - BIT - 1 - 2 - - - OpModeMotionMonitoring - BIT - 1 - 3 - - - OpModePEHTimeMonitoring - BIT - 1 - 4 - - - OpModeBacklashCompensation - BIT - 1 - 5 - - - OpModeDelayedErrorReaction - BIT - 1 - 6 - - - OpModeModulo - BIT - 1 - 7 - - - OpModeSimulationAxis - BIT - 1 - 8 - - - OpModePosLagMonitoring - BIT - 1 - 16 - - - OpModeVeloLagMonitoring - BIT - 1 - 17 - - - OpModeSoftLimitMinMonitoring - BIT - 1 - 18 - - - OpModeSoftLimitMaxMonitoring - BIT - 1 - 19 - - - OpModePosCorrection - BIT - 1 - 20 - - - OpModeAllowSlaveCommands - BIT - 1 - 21 - - - OpModeAllowExtSetAxisCommands - BIT - 1 - 22 - - - ApplicationRequest - BIT - 1 - 23 - - - - NCTOPLC_AXIS_REF_STATE2_FLAGS - 32 - - AvoidingCollision - BIT - 1 - 0 - - - %08x - - - 0x%08x - - - 16#%08X - - - - NCTOPLC_AXIS_REF_STATE2 - 32 - - Value - DWORD - 32 - 0 - - - Flags - NCTOPLC_AXIS_REF_STATE2_FLAGS - 32 - 0 - - - %08x - - - 0x%08x - - - 16#%08X - - - - NCTOPLC_AXIS_REF_CAMCOUPLINGSTATE - 8 - - CamActivationPending - BIT - 1 - 0 - - - CamDeactivationPending - BIT - 1 - 1 - - - CamActive - BIT - 1 - 2 - - - CamDataQueued - BIT - 1 - 6 - - - CamScalingPending - BIT - 1 - 7 - - - - UINTARR8 - 128 - UINT - - 0 - 8 - - - - NCTOPLC_AXIS_REF - 2048 - - StateDWord - NCTOPLC_AXIS_REF_STATE - 32 - 0 - - - ErrorCode - UDINT - 32 - 32 - - - AxisState - UDINT - - 32 - 64 - - - AxisModeConfirmation - UDINT - 32 - 96 - - - HomingState - UDINT - - 32 - 128 - - - CoupleState - UDINT - - 32 - 160 - - - SvbEntries - UDINT - 32 - 192 - - - SafEntries - UDINT - 32 - 224 - - - AxisId - UDINT - 32 - 256 - - - OpModeDWord - NCTOPLC_AXIS_REF_OPMODE - 32 - 288 - - - ActPos - LREAL - 64 - 320 - - - ModuloActPos - LREAL - 64 - 384 - - - ActiveControlLoopIndex - UINT - 16 - 448 - - - ControlLoopIndex - UINT - 16 - 464 - - - ModuloActTurns - DINT - 32 - 480 - - - ActVelo - LREAL - 64 - 512 - - - PosDiff - LREAL - 64 - 576 - - - SetPos - LREAL - 64 - 640 - - - SetVelo - LREAL - 64 - 704 - - - SetAcc - LREAL - 64 - 768 - - - TargetPos - LREAL - 64 - 832 - - - ModuloSetPos - LREAL - 64 - 896 - - - ModuloSetTurns - DINT - 32 - 960 - - - CmdNo - UINT - 16 - 992 - - - CmdState - UINT - 16 - 1008 - - - SetJerk - LREAL - 64 - 1024 - - - SetTorque - LREAL - 64 - 1088 - - - ActTorque - LREAL - 64 - 1152 - - - StateDWord2 - NCTOPLC_AXIS_REF_STATE2 - 32 - 1216 - - - StateDWord3 - DWORD - 32 - 1248 - - - TouchProbeState - DWORD - 32 - 1280 - - - TouchProbeCounter - DWORD - 32 - 1312 - - - CamCouplingState - NCTOPLC_AXIS_REF_CAMCOUPLINGSTATE - - 0 - 8 - - 64 - 1344 - - - CamCouplingTableID - UINTARR8 - 128 - 1408 - - - ActTorqueDerivative - LREAL - 64 - 1536 - - - SetTorqueDerivative - LREAL - 64 - 1600 - - - ActPosWithoutPosCorrection - LREAL - 64 - 1792 - - - ActAcc - LREAL - 64 - 1856 - - - DcTimeStamp - UDINT - 32 - 1920 - - - - NcStructType - 2 - - - - - NCAXLESTRUCT_TOPLC - - - NCAXLESTRUCT_TOPLC2 - - - NCAXLESTRUCT_TOPLC3 - - - NCAXLESTRUCT_TOPLC4 - - - - - - - - - - - - - - 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 - - - - - - - - - {3EBB9639-5FF3-42B6-8847-35C70DC013C8} - - - - - PlcTaskCom - - - PlcTask - - - - - - - tc_epicscommodule Instance - {08500001-0000-0000-F000-000000000064} - - - - - - - - tc_project_app Instance - {08500001-0000-0000-F000-000000000064} - - PlcTask Inputs - - GVL.axes[1].inputs.bLimitFwd - - BOOL - - - GVL.axes[1].inputs.bLimitBwd - - BOOL - - - GVL.axes[1].inputs.bHomeSensor - - BOOL - - - GVL.axes[1].inputs.bEncLAtch - - BOOL - - - GVL.axes[1].Axis.NcToPlc - NCTOPLC_AXIS_REF - - AxisState - - - - HomingState - - - - CoupleState - - - - - GVL.axes[2].inputs.bLimitFwd - - BOOL - - - GVL.axes[2].inputs.bLimitBwd - - BOOL - - - GVL.axes[2].inputs.bHomeSensor - - BOOL - - - GVL.axes[2].inputs.bEncLAtch - - BOOL - - - GVL.axes[2].Axis.NcToPlc - NCTOPLC_AXIS_REF - - AxisState - - - - HomingState - - - - CoupleState - - - - - GVL.axes[3].inputs.bLimitFwd - - BOOL - - - GVL.axes[3].inputs.bLimitBwd - - BOOL - - - GVL.axes[3].inputs.bHomeSensor - - BOOL - - - GVL.axes[3].inputs.bEncLAtch - - BOOL - - - GVL.axes[3].Axis.NcToPlc - NCTOPLC_AXIS_REF - - AxisState - - - - HomingState - - - - CoupleState - - - - - - PlcTask Outputs - - MAIN.bOutput1 - - BOOL - - - GVL.axes[1].Axis.PlcToNc - PLCTONC_AXIS_REF - - - GVL.axes[2].Axis.PlcToNc - PLCTONC_AXIS_REF - - - GVL.axes[3].Axis.PlcToNc - PLCTONC_AXIS_REF - - - - - - - - - - + + + + + NCTOPLC_AXIS_REF_STATE + 32 + + Operational + BIT + 1 + 0 + + + Homed + BIT + 1 + 1 + + + NotMoving + BIT + 1 + 2 + + + InPositionArea + BIT + 1 + 3 + + + InTargetPosition + BIT + 1 + 4 + + + Protected + BIT + 1 + 5 + + + ErrorPropagationDelayed + BIT + 1 + 6 + + + HasBeenStopped + BIT + 1 + 7 + + + HasJob + BIT + 1 + 8 + + + PositiveDirection + BIT + 1 + 9 + + + NegativeDirection + BIT + 1 + 10 + + + HomingBusy + BIT + 1 + 11 + + + ConstantVelocity + BIT + 1 + 12 + + + Compensating + BIT + 1 + 13 + + + ExtSetPointGenEnabled + BIT + 1 + 14 + + + PhasingActive + BIT + 1 + 15 + + + ExternalLatchValid + BIT + 1 + 16 + + + NewTargetPos + BIT + 1 + 17 + + + ContinuousMotion + BIT + 1 + 19 + + + ControlLoopClosed + BIT + 1 + 20 + + + CamTableQueued + BIT + 1 + 21 + + + CamDataQueued + BIT + 1 + 22 + + + CamScalingPending + BIT + 1 + 23 + + + CmdBuffered + BIT + 1 + 24 + + + PTPmode + BIT + 1 + 25 + + + SoftLimitMinExceeded + BIT + 1 + 26 + + + SoftLimitMaxExceeded + BIT + 1 + 27 + + + DriveDeviceError + BIT + 1 + 28 + + + MotionCommandsLocked + BIT + 1 + 29 + + + IoDataInvalid + BIT + 1 + 30 + + + Error + BIT + 1 + 31 + + + %08x + + + 0x%08x + + + 16#%08X + + + + NCTOPLC_AXIS_REF_OPMODE + 32 + + OpModePosAreaMonitoring + BIT + 1 + 0 + + + OpModeTargetPosMonitoring + BIT + 1 + 1 + + + OpModeLoop + BIT + 1 + 2 + + + OpModeMotionMonitoring + BIT + 1 + 3 + + + OpModePEHTimeMonitoring + BIT + 1 + 4 + + + OpModeBacklashCompensation + BIT + 1 + 5 + + + OpModeDelayedErrorReaction + BIT + 1 + 6 + + + OpModeModulo + BIT + 1 + 7 + + + OpModeSimulationAxis + BIT + 1 + 8 + + + OpModePosLagMonitoring + BIT + 1 + 16 + + + OpModeVeloLagMonitoring + BIT + 1 + 17 + + + OpModeSoftLimitMinMonitoring + BIT + 1 + 18 + + + OpModeSoftLimitMaxMonitoring + BIT + 1 + 19 + + + OpModePosCorrection + BIT + 1 + 20 + + + OpModeAllowSlaveCommands + BIT + 1 + 21 + + + OpModeAllowExtSetAxisCommands + BIT + 1 + 22 + + + ApplicationRequest + BIT + 1 + 23 + + + + NCTOPLC_AXIS_REF_STATE2_FLAGS + 32 + + AvoidingCollision + BIT + 1 + 0 + + + %08x + + + 0x%08x + + + 16#%08X + + + + NCTOPLC_AXIS_REF_STATE2 + 32 + + Value + DWORD + 32 + 0 + + + Flags + NCTOPLC_AXIS_REF_STATE2_FLAGS + 32 + 0 + + + %08x + + + 0x%08x + + + 16#%08X + + + + NCTOPLC_AXIS_REF_CAMCOUPLINGSTATE + 8 + + CamActivationPending + BIT + 1 + 0 + + + CamDeactivationPending + BIT + 1 + 1 + + + CamActive + BIT + 1 + 2 + + + CamDataQueued + BIT + 1 + 6 + + + CamScalingPending + BIT + 1 + 7 + + + + UINTARR8 + 128 + UINT + + 0 + 8 + + + + NCTOPLC_AXIS_REF + 2048 + + StateDWord + NCTOPLC_AXIS_REF_STATE + 32 + 0 + + + ErrorCode + UDINT + 32 + 32 + + + AxisState + UDINT + + 32 + 64 + + + AxisModeConfirmation + UDINT + 32 + 96 + + + HomingState + UDINT + + 32 + 128 + + + CoupleState + UDINT + + 32 + 160 + + + SvbEntries + UDINT + 32 + 192 + + + SafEntries + UDINT + 32 + 224 + + + AxisId + UDINT + 32 + 256 + + + OpModeDWord + NCTOPLC_AXIS_REF_OPMODE + 32 + 288 + + + ActPos + LREAL + 64 + 320 + + + ModuloActPos + LREAL + 64 + 384 + + + ActiveControlLoopIndex + UINT + 16 + 448 + + + ControlLoopIndex + UINT + 16 + 464 + + + ModuloActTurns + DINT + 32 + 480 + + + ActVelo + LREAL + 64 + 512 + + + PosDiff + LREAL + 64 + 576 + + + SetPos + LREAL + 64 + 640 + + + SetVelo + LREAL + 64 + 704 + + + SetAcc + LREAL + 64 + 768 + + + TargetPos + LREAL + 64 + 832 + + + ModuloSetPos + LREAL + 64 + 896 + + + ModuloSetTurns + DINT + 32 + 960 + + + CmdNo + UINT + 16 + 992 + + + CmdState + UINT + 16 + 1008 + + + SetJerk + LREAL + 64 + 1024 + + + SetTorque + LREAL + 64 + 1088 + + + ActTorque + LREAL + 64 + 1152 + + + StateDWord2 + NCTOPLC_AXIS_REF_STATE2 + 32 + 1216 + + + StateDWord3 + DWORD + 32 + 1248 + + + TouchProbeState + DWORD + 32 + 1280 + + + TouchProbeCounter + DWORD + 32 + 1312 + + + CamCouplingState + NCTOPLC_AXIS_REF_CAMCOUPLINGSTATE + + 0 + 8 + + 64 + 1344 + + + CamCouplingTableID + UINTARR8 + 128 + 1408 + + + ActTorqueDerivative + LREAL + 64 + 1536 + + + SetTorqueDerivative + LREAL + 64 + 1600 + + + ActPosWithoutPosCorrection + LREAL + 64 + 1792 + + + ActAcc + LREAL + 64 + 1856 + + + DcTimeStamp + UDINT + 32 + 1920 + + + + NcStructType + 2 + + + + + NCAXLESTRUCT_TOPLC + + + NCAXLESTRUCT_TOPLC2 + + + NCAXLESTRUCT_TOPLC3 + + + NCAXLESTRUCT_TOPLC4 + + + + + + + + + + + + + + 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 + + + + + + + + + {3EBB9639-5FF3-42B6-8847-35C70DC013C8} + + + + + PlcTaskCom + + + PlcTask + + + + + + + tc_epicscommodule Instance + {08500001-0000-0000-F000-000000000064} + + + + + + + + tc_project_app Instance + {08500001-0000-0000-F000-000000000064} + + PlcTask Inputs + + GVL.axes[1].inputs.bLimitFwd + + BOOL + + + GVL.axes[1].inputs.bLimitBwd + + BOOL + + + GVL.axes[1].inputs.bHomeSensor + + BOOL + + + GVL.axes[1].inputs.bEncLAtch + + BOOL + + + GVL.axes[1].Axis.NcToPlc + NCTOPLC_AXIS_REF + + AxisState + + + + HomingState + + + + CoupleState + + + + + GVL.axes[2].inputs.bLimitFwd + + BOOL + + + GVL.axes[2].inputs.bLimitBwd + + BOOL + + + GVL.axes[2].inputs.bHomeSensor + + BOOL + + + GVL.axes[2].inputs.bEncLAtch + + BOOL + + + GVL.axes[2].Axis.NcToPlc + NCTOPLC_AXIS_REF + + AxisState + + + + HomingState + + + + CoupleState + + + + + GVL.axes[3].inputs.bLimitFwd + + BOOL + + + GVL.axes[3].inputs.bLimitBwd + + BOOL + + + GVL.axes[3].inputs.bHomeSensor + + BOOL + + + GVL.axes[3].inputs.bEncLAtch + + BOOL + + + GVL.axes[3].Axis.NcToPlc + NCTOPLC_AXIS_REF + + AxisState + + + + HomingState + + + + CoupleState + + + + + + PlcTask Outputs + + MAIN.bOutput1 + + BOOL + + + GVL.axes[1].Axis.PlcToNc + PLCTONC_AXIS_REF + + + GVL.axes[2].Axis.PlcToNc + PLCTONC_AXIS_REF + + + GVL.axes[3].Axis.PlcToNc + PLCTONC_AXIS_REF + + + + + + + + + + diff --git a/solution/tc_project_app/GVLs/GVL_APP.TcGVL b/solution/tc_project_app/GVLs/GVL_APP.TcGVL index a846a85..150f4ac 100644 --- a/solution/tc_project_app/GVLs/GVL_APP.TcGVL +++ b/solution/tc_project_app/GVLs/GVL_APP.TcGVL @@ -1,14 +1,14 @@ - - - - - + + + + + \ No newline at end of file diff --git a/solution/tc_project_app/GlobalTextList.TcGTLO b/solution/tc_project_app/GlobalTextList.TcGTLO index 859af55..1818614 100644 --- a/solution/tc_project_app/GlobalTextList.TcGTLO +++ b/solution/tc_project_app/GlobalTextList.TcGTLO @@ -1,279 +1,279 @@ - - - - - - - - - "951" - "%2.2f" - - - - "878" - "%d" - - - - "706" - "%i" - - - - "940" - "%x" - - - - "703" - "Acknowledge" - - - - "710" - "Active:" - - - - "952" - "actPos" - - - - "953" - "actVel" - - - - "110" - "AXESMAX" - - - - "107" - "axisSel" - - - - "945" - "bBusy" - - - - "950" - "bBwEnabled" - - - - "946" - "bDone" - - - - "943" - "bEnabled" - - - - "941" - "bError" - - - - "102" - "bExecute" - - - - "949" - "bFwEnabled" - - - - "297" - "bGeared" - - - - "948" - "bHomed" - - - - "947" - "bResetDone" - - - - "944" - "bWarning" - - - - "704" - "Clear All" - - - - "104" - "ENABLE" - - - - "106" - "ENABLE BW" - - - - "105" - "ENABLE FW" - - - - "109" - "English" - - - - "939" - "errID" - - - - "701" - "Error #" - - - - "705" - "Error #:" - - - - "702" - "Error Log" - - - - "707" - "Errors:" - - - - "955" - "fAcceleration" - - - - "956" - "fDeceleration" - - - - "957" - "fPosition" - - - - "708" - "Free Entries:" - - - - "954" - "fVelocity" - - - - "299" - "gearIn" - - - - "300" - "gearOut" - - - - "711" - "Inactive:" - - - - "116" - "jogBw" - - - - "117" - "jogFw" - - - - "298" - "masterGear" - - - - "111" - "moveAbsolute" - - - - "114" - "moveModulo" - - - - "113" - "moveRelative" - - - - "112" - "moveVelocity" - - - - "709" - "Overflows:" - - - - "942" - "reset" - - - - "115" - "stop" - - - - "108" - "Test Language" - - - - "103" - "toggle" - - - - - {062c6d5a-aca0-4f82-8481-8e26e8c8681e} - {d08328f1-0dac-4dfb-b105-bd18d7b5a756} - {180f93fa-c96b-483e-953c-133bc7d30e18} - - - - System.Collections.ArrayList - {63784cbb-9ba0-45e6-9d69-babf3f040511} - System.Guid - System.String - {53da1be7-ad25-47c3-b0e8-e26286dad2e0} - - - + + + + + + + + + "951" + "%2.2f" + + + + "878" + "%d" + + + + "706" + "%i" + + + + "940" + "%x" + + + + "703" + "Acknowledge" + + + + "710" + "Active:" + + + + "952" + "actPos" + + + + "953" + "actVel" + + + + "110" + "AXESMAX" + + + + "107" + "axisSel" + + + + "945" + "bBusy" + + + + "950" + "bBwEnabled" + + + + "946" + "bDone" + + + + "943" + "bEnabled" + + + + "941" + "bError" + + + + "102" + "bExecute" + + + + "949" + "bFwEnabled" + + + + "297" + "bGeared" + + + + "948" + "bHomed" + + + + "947" + "bResetDone" + + + + "944" + "bWarning" + + + + "704" + "Clear All" + + + + "104" + "ENABLE" + + + + "106" + "ENABLE BW" + + + + "105" + "ENABLE FW" + + + + "109" + "English" + + + + "939" + "errID" + + + + "701" + "Error #" + + + + "705" + "Error #:" + + + + "702" + "Error Log" + + + + "707" + "Errors:" + + + + "955" + "fAcceleration" + + + + "956" + "fDeceleration" + + + + "957" + "fPosition" + + + + "708" + "Free Entries:" + + + + "954" + "fVelocity" + + + + "299" + "gearIn" + + + + "300" + "gearOut" + + + + "711" + "Inactive:" + + + + "116" + "jogBw" + + + + "117" + "jogFw" + + + + "298" + "masterGear" + + + + "111" + "moveAbsolute" + + + + "114" + "moveModulo" + + + + "113" + "moveRelative" + + + + "112" + "moveVelocity" + + + + "709" + "Overflows:" + + + + "942" + "reset" + + + + "115" + "stop" + + + + "108" + "Test Language" + + + + "103" + "toggle" + + + + + {062c6d5a-aca0-4f82-8481-8e26e8c8681e} + {d08328f1-0dac-4dfb-b105-bd18d7b5a756} + {180f93fa-c96b-483e-953c-133bc7d30e18} + + + + System.Collections.ArrayList + {63784cbb-9ba0-45e6-9d69-babf3f040511} + System.Guid + System.String + {53da1be7-ad25-47c3-b0e8-e26286dad2e0} + + + \ No newline at end of file diff --git a/solution/tc_project_app/POUs/MAIN.TcPOU b/solution/tc_project_app/POUs/MAIN.TcPOU index d74f2d1..887910d 100644 --- a/solution/tc_project_app/POUs/MAIN.TcPOU +++ b/solution/tc_project_app/POUs/MAIN.TcPOU @@ -1,144 +1,144 @@ - - - - - - - - - - - - - - - , - nSelectedError=> , - pErrorSystem=> ); - - -FOR GVL.iAxis:=1 TO gvl_app.axisNum DO - aFbAxesError[gvl.iAxis](EN:=TRUE, - nNC_ErrorID:= gvl.axes[gvl.iAxis].status.nErrorID, - nNC_AxisID:=gvl.axes[gvl.iAxis].Axis.NcToPlc.AxisId, - ErrorSystem:= fbErrorSystem.pErrorSystem); -END_FOR - - - -(*call all the necessary instance (input assistance F2 or right click) according to the terminals that you have in your hardware and - add "TRUE" in the input En, the corresponding number of termianl to the iTerminal_ID and -the variable "fbErrorSystem.pErrorSystem" to the input ErrorSystem in each FB E. g. : -fbEL1808( - En:= TRUE, - iTerminal_ID:= 01, - ErrorSystem:= fbErorSystem.pErrorSystem, - EnO=> , - bError=> ); - *) - -]]> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + , + nSelectedError=> , + pErrorSystem=> ); + + +FOR GVL.iAxis:=1 TO gvl_app.axisNum DO + aFbAxesError[gvl.iAxis](EN:=TRUE, + nNC_ErrorID:= gvl.axes[gvl.iAxis].status.nErrorID, + nNC_AxisID:=gvl.axes[gvl.iAxis].Axis.NcToPlc.AxisId, + ErrorSystem:= fbErrorSystem.pErrorSystem); +END_FOR + + + +(*call all the necessary instance (input assistance F2 or right click) according to the terminals that you have in your hardware and + add "TRUE" in the input En, the corresponding number of termianl to the iTerminal_ID and +the variable "fbErrorSystem.pErrorSystem" to the input ErrorSystem in each FB E. g. : +fbEL1808( + En:= TRUE, + iTerminal_ID:= 01, + ErrorSystem:= fbErorSystem.pErrorSystem, + EnO=> , + bError=> ); + *) + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/solution/tc_project_app/PlcTask.TcTTO b/solution/tc_project_app/PlcTask.TcTTO index 98d1faf..0763afe 100644 --- a/solution/tc_project_app/PlcTask.TcTTO +++ b/solution/tc_project_app/PlcTask.TcTTO @@ -1,16 +1,16 @@ - - - - - 1000 - 20 - - MAIN - - {26d89752-95b4-4b52-80c0-c79242bc34d7} - {137c4fd1-c794-4dee-a041-b4fea1d22866} - {2478772d-357b-433f-886f-15340bef9bdf} - {c16ee410-277f-45f0-a92e-1ec5f87024b9} - {291eb57a-f9a9-4722-b7d3-fd700e5db288} - + + + + + 1000 + 20 + + MAIN + + {26d89752-95b4-4b52-80c0-c79242bc34d7} + {137c4fd1-c794-4dee-a041-b4fea1d22866} + {2478772d-357b-433f-886f-15340bef9bdf} + {c16ee410-277f-45f0-a92e-1ec5f87024b9} + {291eb57a-f9a9-4722-b7d3-fd700e5db288} + \ No newline at end of file diff --git a/solution/tc_project_app/Visualization Manager.TcVMO b/solution/tc_project_app/Visualization Manager.TcVMO index 83b1ee8..e63f527 100644 --- a/solution/tc_project_app/Visualization Manager.TcVMO +++ b/solution/tc_project_app/Visualization Manager.TcVMO @@ -1,568 +1,568 @@ - - - - - - - Undefined - - - "MainVisu" - false - false - AutoDetect - 2000 - 2000 - false - 50000 - 400000 - false - false - true - "Default, 3.1.5.0 (Beckhoff Automation GmbH)" - 100 - "" - "VisuDialogs.Numpad" - "VisuDialogs.Keypad" - "VisuDialogs.TextinputWithLimits" - false - false - true - true - false - "VisuUserManagement.VUM_Login" - "VisuUserManagement.VUM_ChangePassword" - "VisuUserManagement.VUM_UserManagement" - {00000000-0000-0000-0000-000000000000} - {00000000-0000-0000-0000-000000000000} - true - true - false - "" - - - - FB_Init - c98701bd-1e9f-450a-a2a8-a2474d536f2e - FB_Reinit - 5b6e372a-a69d-40e8-aef7-f470b7c53d95 - FB_Exit - 0be1b9ab-e8eb-4b33-b803-109abb46bde4 - - "NotImportant" - {aa8b7e42-e967-427f-8f2e-f00f9d706470} - - - - 7 - 4096 - "1002 0004" - "1.0.0.4" - {cb73a13e-6ccc-4bc6-8859-f5aa98bb116b} - - - true - 48 - "0" - - - true - 49 - "1" - - - true - 50 - "2" - - - true - 51 - "3" - - - true - 52 - "4" - - - true - 53 - "5" - - - true - 54 - "6" - - - true - 55 - "7" - - - true - 56 - "8" - - - true - 57 - "9" - - - true - 65 - "A" - - - true - 107 - "ADDITION" - - - true - 66 - "B" - - - true - 8 - "BACKSPACE" - - - true - 67 - "C" - - - true - 110 - "COMMA" - - - true - 68 - "D" - - - true - 46 - "DELETE" - - - true - 111 - "DIVIDE" - - - true - 40 - "DOWN" - - - true - 69 - "E" - - - true - 35 - "END" - - - true - 27 - "ESCAPE" - - - true - 70 - "F" - - - true - 112 - "F1" - - - true - 121 - "F10" - - - true - 122 - "F11" - - - true - 123 - "F12" - - - true - 113 - "F2" - - - true - 114 - "F3" - - - true - 115 - "F4" - - - true - 116 - "F5" - - - true - 117 - "F6" - - - true - 118 - "F7" - - - true - 119 - "F8" - - - true - 120 - "F9" - - - true - 71 - "G" - - - true - 72 - "H" - - - true - 36 - "HOME" - - - true - 73 - "I" - - - true - 45 - "INSERT" - - - true - 74 - "J" - - - true - 75 - "K" - - - true - 76 - "L" - - - true - 37 - "LEFT" - - - true - 77 - "M" - - - true - 106 - "MULTIPLY" - - - true - 78 - "N" - - - true - 96 - "NUM0" - - - true - 97 - "NUM1" - - - true - 98 - "NUM2" - - - true - 99 - "NUM3" - - - true - 100 - "NUM4" - - - true - 101 - "NUM5" - - - true - 102 - "NUM6" - - - true - 103 - "NUM7" - - - true - 104 - "NUM8" - - - true - 105 - "NUM9" - - - true - 79 - "O" - - - true - 80 - "P" - - - true - 19 - "PAUSE" - - - true - 42 - "PRINT" - - - true - 81 - "Q" - - - true - 82 - "R" - - - true - 13 - "RETURN_KEY" - - - true - 39 - "RIGHT" - - - true - 83 - "S" - - - true - 32 - "SPACE" - - - true - 109 - "SUBTRACT" - - - true - 84 - "T" - - - true - 9 - "TAB" - - - true - 85 - "U" - - - true - 38 - "UP" - - - true - 86 - "V" - - - true - 87 - "W" - - - true - 88 - "X" - - - true - 89 - "Y" - - - true - 90 - "Z" - - - - - - 481037385728L - 549755813887L - 481037385728L - 549754765312L - 1048576L - - - - - ExecuteLooseCapture - 4e2884cd-dc97-4120-914c-87a83e618f1f - ExecuteMouseUp - 57eea9a5-15d9-4269-bb8d-9fee5420cdb2 - Init - e61a0910-39b6-4bcc-9a64-fcab62230628 - FB_Exit - e6e1ea47-0811-4b03-9888-d0564361e0d6 - ExecuteMouseDblClick - a517a0ac-170b-4df4-b289-55dcb57628ed - GetElementInfo - f64cb89f-3016-4fba-85f5-02efcd4282c1 - ExecuteMouseDown - 94bab392-b395-4c03-9d0e-5738d11bd021 - FB_Reinit - 97933c03-0169-4afe-ac83-de892204e120 - Initialize - 6946d6e0-129f-4425-b8b0-ef98281a99e9 - ExecuteMouseMove - 58fc221c-be14-4e34-871e-a118f8ba9539 - ExecuteDialogClosed - f08d08b6-e70c-4bef-a136-38845bd246d8 - ExecuteKeyUp - 7403635b-2725-4f00-93d4-e0dd125959de - ExecuteKeyDown - 9649ecda-3794-4d6b-a8a7-71e528d9d170 - abstrGetDefaultCursor - 25718998-50a9-408d-8b3f-20a55e2cc784 - ExecuteMouseEnter - 569205fa-533b-4fc2-8d51-21ccab693305 - ExecuteMouseLeave - 3bacea68-55b4-4764-928e-e69910299932 - FB_Init - f37e1250-9b48-45ca-810e-c192ea9440ec - ExecuteMouseClick - cd348bda-7eaf-4dfe-8c4b-bf9b71e5b10c - - "NotImportant" - {073ee466-cf0a-4c8b-ba92-64f671516699} - - - - true - true - - - - - {925c2b24-84d1-469a-954d-7af8b99219ef} - {f905b871-af16-47c5-a6ef-0a0918a8b009} - {d3706fa7-8257-48b3-af0a-cab0afb4dc49} - {4d5d9e0c-fa46-4312-abcd-ab81ecde84e1} - {00a84c7a-9a31-408b-860a-9d896efbd842} - {3ef700b6-44e8-4cfc-b6e0-26bfef38c2b6} - {e2123cf7-55c2-43c4-8135-f70e23d789b6} - {b7fab3e5-7354-42a4-bdf2-bc53461ec63c} - {967863f2-ccef-44e4-a545-05cbd9acb6be} - {f97c4870-0a84-4b7b-9cfd-0059a20bebbd} - {81498829-8b99-4474-8196-a48127c8e5d4} - {71bfd0df-7f34-4abc-b3b9-84bad2430630} - {6695a96b-387d-4f98-b9f1-09dab5b7c483} - {5fe53f14-f5a7-4173-9e2b-538b7d89379a} - {09c26f6e-e9b1-4455-a763-8dfd243af668} - {48451f3d-75f9-48ba-acdb-82d62e000f26} - {8214e061-c2ef-40f5-b519-acfed1ca1cca} - {97cdf6c7-053d-4364-abf2-f17c232375c1} - {30af51e2-0f28-4c98-bb4e-6c7a4ef6b64e} - {9e20996c-a8e0-4843-9524-9317ce5fc512} - {9d656f8b-b228-46a1-8204-ecc426d69d24} - {0a915a90-ba73-4abc-b7c3-f5acec9f952a} - {0dedbb39-c60c-476d-aa88-36e50d09fdfc} - {9dd59c98-b565-4e32-8873-d0c41e452b61} - {43ba7f16-75cc-4157-b401-5b6df597b0b4} - {ccfc9bcc-edea-480a-ac07-0c05646a5eda} - {5531e874-67e5-49bb-abdc-7ac83b125a33} - {398fdf90-7db7-4f59-b7ca-c68fb5513e2e} - {c21922fc-3c9f-4927-affe-3857961c67c0} - {b435091b-c53f-4ea3-9ed5-223f402a82e7} - {2acce1aa-45b9-434d-bd0d-05676ddde292} - {7e796d60-07e9-4daf-b8ad-e42e285dae85} - - - - System.Collections.ArrayList - System.Boolean - {7df88604-7ac5-4e36-91c4-55e4fdad3e68} - {11a86981-4b02-4f98-b432-96e385cb41b7} - {c91fc5aa-1e38-43b2-9a05-c52cc5d7f5b6} - {40d6dd8d-dfd0-493a-8e29-c9a35e1e6539} - System.Guid - {6b108d46-58af-4e41-a3f4-174d8f160cc4} - System.Int32 - System.Int64 - System.String - {19611221-ebd3-4607-86d2-9822fbe84c30} - {c37fe731-4f69-4d98-82fe-4f9aefbe200d} - {997fedbb-1888-4256-b61c-2933d8056bfd} - {4d3fdb8f-ab50-4c35-9d3a-d4bb9bb9a628} - {ec9b2ec6-92a2-4856-be72-7866fb274c64} - - - + + + + + + + Undefined + + + "MainVisu" + false + false + AutoDetect + 2000 + 2000 + false + 50000 + 400000 + false + false + true + "Default, 3.1.5.0 (Beckhoff Automation GmbH)" + 100 + "" + "VisuDialogs.Numpad" + "VisuDialogs.Keypad" + "VisuDialogs.TextinputWithLimits" + false + false + true + true + false + "VisuUserManagement.VUM_Login" + "VisuUserManagement.VUM_ChangePassword" + "VisuUserManagement.VUM_UserManagement" + {00000000-0000-0000-0000-000000000000} + {00000000-0000-0000-0000-000000000000} + true + true + false + "" + + + + FB_Init + c98701bd-1e9f-450a-a2a8-a2474d536f2e + FB_Reinit + 5b6e372a-a69d-40e8-aef7-f470b7c53d95 + FB_Exit + 0be1b9ab-e8eb-4b33-b803-109abb46bde4 + + "NotImportant" + {aa8b7e42-e967-427f-8f2e-f00f9d706470} + + + + 7 + 4096 + "1002 0004" + "1.0.0.4" + {cb73a13e-6ccc-4bc6-8859-f5aa98bb116b} + + + true + 48 + "0" + + + true + 49 + "1" + + + true + 50 + "2" + + + true + 51 + "3" + + + true + 52 + "4" + + + true + 53 + "5" + + + true + 54 + "6" + + + true + 55 + "7" + + + true + 56 + "8" + + + true + 57 + "9" + + + true + 65 + "A" + + + true + 107 + "ADDITION" + + + true + 66 + "B" + + + true + 8 + "BACKSPACE" + + + true + 67 + "C" + + + true + 110 + "COMMA" + + + true + 68 + "D" + + + true + 46 + "DELETE" + + + true + 111 + "DIVIDE" + + + true + 40 + "DOWN" + + + true + 69 + "E" + + + true + 35 + "END" + + + true + 27 + "ESCAPE" + + + true + 70 + "F" + + + true + 112 + "F1" + + + true + 121 + "F10" + + + true + 122 + "F11" + + + true + 123 + "F12" + + + true + 113 + "F2" + + + true + 114 + "F3" + + + true + 115 + "F4" + + + true + 116 + "F5" + + + true + 117 + "F6" + + + true + 118 + "F7" + + + true + 119 + "F8" + + + true + 120 + "F9" + + + true + 71 + "G" + + + true + 72 + "H" + + + true + 36 + "HOME" + + + true + 73 + "I" + + + true + 45 + "INSERT" + + + true + 74 + "J" + + + true + 75 + "K" + + + true + 76 + "L" + + + true + 37 + "LEFT" + + + true + 77 + "M" + + + true + 106 + "MULTIPLY" + + + true + 78 + "N" + + + true + 96 + "NUM0" + + + true + 97 + "NUM1" + + + true + 98 + "NUM2" + + + true + 99 + "NUM3" + + + true + 100 + "NUM4" + + + true + 101 + "NUM5" + + + true + 102 + "NUM6" + + + true + 103 + "NUM7" + + + true + 104 + "NUM8" + + + true + 105 + "NUM9" + + + true + 79 + "O" + + + true + 80 + "P" + + + true + 19 + "PAUSE" + + + true + 42 + "PRINT" + + + true + 81 + "Q" + + + true + 82 + "R" + + + true + 13 + "RETURN_KEY" + + + true + 39 + "RIGHT" + + + true + 83 + "S" + + + true + 32 + "SPACE" + + + true + 109 + "SUBTRACT" + + + true + 84 + "T" + + + true + 9 + "TAB" + + + true + 85 + "U" + + + true + 38 + "UP" + + + true + 86 + "V" + + + true + 87 + "W" + + + true + 88 + "X" + + + true + 89 + "Y" + + + true + 90 + "Z" + + + + + + 481037385728L + 549755813887L + 481037385728L + 549754765312L + 1048576L + + + + + ExecuteLooseCapture + 4e2884cd-dc97-4120-914c-87a83e618f1f + ExecuteMouseUp + 57eea9a5-15d9-4269-bb8d-9fee5420cdb2 + Init + e61a0910-39b6-4bcc-9a64-fcab62230628 + FB_Exit + e6e1ea47-0811-4b03-9888-d0564361e0d6 + ExecuteMouseDblClick + a517a0ac-170b-4df4-b289-55dcb57628ed + GetElementInfo + f64cb89f-3016-4fba-85f5-02efcd4282c1 + ExecuteMouseDown + 94bab392-b395-4c03-9d0e-5738d11bd021 + FB_Reinit + 97933c03-0169-4afe-ac83-de892204e120 + Initialize + 6946d6e0-129f-4425-b8b0-ef98281a99e9 + ExecuteMouseMove + 58fc221c-be14-4e34-871e-a118f8ba9539 + ExecuteDialogClosed + f08d08b6-e70c-4bef-a136-38845bd246d8 + ExecuteKeyUp + 7403635b-2725-4f00-93d4-e0dd125959de + ExecuteKeyDown + 9649ecda-3794-4d6b-a8a7-71e528d9d170 + abstrGetDefaultCursor + 25718998-50a9-408d-8b3f-20a55e2cc784 + ExecuteMouseEnter + 569205fa-533b-4fc2-8d51-21ccab693305 + ExecuteMouseLeave + 3bacea68-55b4-4764-928e-e69910299932 + FB_Init + f37e1250-9b48-45ca-810e-c192ea9440ec + ExecuteMouseClick + cd348bda-7eaf-4dfe-8c4b-bf9b71e5b10c + + "NotImportant" + {073ee466-cf0a-4c8b-ba92-64f671516699} + + + + true + true + + + + + {925c2b24-84d1-469a-954d-7af8b99219ef} + {f905b871-af16-47c5-a6ef-0a0918a8b009} + {d3706fa7-8257-48b3-af0a-cab0afb4dc49} + {4d5d9e0c-fa46-4312-abcd-ab81ecde84e1} + {00a84c7a-9a31-408b-860a-9d896efbd842} + {3ef700b6-44e8-4cfc-b6e0-26bfef38c2b6} + {e2123cf7-55c2-43c4-8135-f70e23d789b6} + {b7fab3e5-7354-42a4-bdf2-bc53461ec63c} + {967863f2-ccef-44e4-a545-05cbd9acb6be} + {f97c4870-0a84-4b7b-9cfd-0059a20bebbd} + {81498829-8b99-4474-8196-a48127c8e5d4} + {71bfd0df-7f34-4abc-b3b9-84bad2430630} + {6695a96b-387d-4f98-b9f1-09dab5b7c483} + {5fe53f14-f5a7-4173-9e2b-538b7d89379a} + {09c26f6e-e9b1-4455-a763-8dfd243af668} + {48451f3d-75f9-48ba-acdb-82d62e000f26} + {8214e061-c2ef-40f5-b519-acfed1ca1cca} + {97cdf6c7-053d-4364-abf2-f17c232375c1} + {30af51e2-0f28-4c98-bb4e-6c7a4ef6b64e} + {9e20996c-a8e0-4843-9524-9317ce5fc512} + {9d656f8b-b228-46a1-8204-ecc426d69d24} + {0a915a90-ba73-4abc-b7c3-f5acec9f952a} + {0dedbb39-c60c-476d-aa88-36e50d09fdfc} + {9dd59c98-b565-4e32-8873-d0c41e452b61} + {43ba7f16-75cc-4157-b401-5b6df597b0b4} + {ccfc9bcc-edea-480a-ac07-0c05646a5eda} + {5531e874-67e5-49bb-abdc-7ac83b125a33} + {398fdf90-7db7-4f59-b7ca-c68fb5513e2e} + {c21922fc-3c9f-4927-affe-3857961c67c0} + {b435091b-c53f-4ea3-9ed5-223f402a82e7} + {2acce1aa-45b9-434d-bd0d-05676ddde292} + {7e796d60-07e9-4daf-b8ad-e42e285dae85} + + + + System.Collections.ArrayList + System.Boolean + {7df88604-7ac5-4e36-91c4-55e4fdad3e68} + {11a86981-4b02-4f98-b432-96e385cb41b7} + {c91fc5aa-1e38-43b2-9a05-c52cc5d7f5b6} + {40d6dd8d-dfd0-493a-8e29-c9a35e1e6539} + System.Guid + {6b108d46-58af-4e41-a3f4-174d8f160cc4} + System.Int32 + System.Int64 + System.String + {19611221-ebd3-4607-86d2-9822fbe84c30} + {c37fe731-4f69-4d98-82fe-4f9aefbe200d} + {997fedbb-1888-4256-b61c-2933d8056bfd} + {4d3fdb8f-ab50-4c35-9d3a-d4bb9bb9a628} + {ec9b2ec6-92a2-4856-be72-7866fb274c64} + + + \ No newline at end of file diff --git a/solution/tc_project_app/tc_project_app.plcproj b/solution/tc_project_app/tc_project_app.plcproj index 903cef5..ac7a216 100644 --- a/solution/tc_project_app/tc_project_app.plcproj +++ b/solution/tc_project_app/tc_project_app.plcproj @@ -1,403 +1,403 @@ - - - - 1.0.0.0 - 2.0 - {fb261665-fd20-4bf2-97f8-2854c82b752d} - True - tc_project_app - 3.1.4022.6 - {047dee04-c246-47b2-8ccc-a15e36987c43} - {ae4eb5ee-6030-47a6-bf35-5a6afd9efeeb} - {5ef19bd0-aca2-493f-b2a1-89e363647697} - {f52f0efe-1be1-4600-94a9-9aa59fdf8e4e} - {26d08e27-a705-49a9-95de-a3a0b6ea049c} - {577f21c4-8eb2-4f2c-a24e-4c3f62ca96d2} - true - - - - Code - - - Code - true - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - - - Code - Visualization Manager.TcVMO - - - Code - - - Code - Visualization Manager.TcVMO - - - Code - - - Code - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - VisuElemMeter, 3.5.10.0 (System) - VisuElemMeter - true - 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae - - - VisuElems, 3.5.10.20 (System) - VisuElems - true - 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae - - - VisuElemsSpecialControls, 3.5.10.0 (System) - VisuElemsSpecialControls - true - 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae - - - VisuElemsWinControls, 3.5.10.20 (System) - VisuElemsWinControls - true - 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae - - - VisuElemTextEditor, 3.5.10.10 (System) - VisuElemTextEditor - true - 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae - - - visuinputs, 3.5.10.0 (system) - visuinputs - true - 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae - - - VisuNativeControl, 3.5.10.0 (System) - VisuNativeControl - true - 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae - - - Tc2_EtherCAT, * (Beckhoff Automation GmbH) - Tc2_EtherCAT - - - Tc2_MC2, * (Beckhoff Automation GmbH) - Tc2_MC2 - - - Tc2_Standard, * (Beckhoff Automation GmbH) - Tc2_Standard - - - Tc2_System, * (Beckhoff Automation GmbH) - Tc2_System - - - Tc2_Utilities, * (Beckhoff Automation GmbH) - Tc2_Utilities - - - Tc3_MC2_AdvancedHoming, * (Beckhoff Automation GmbH) - Tc3_MC2_AdvancedHoming - - - Tc3_Module, * (Beckhoff Automation GmbH) - Tc3_Module - - - VisuDialogs, * (System) - VisuDialogs - - - - - Content - - - - - - - - "<ProjectRoot>" - - {192FAD59-8248-4824-A8DE-9177C94C195A} - - "{192FAD59-8248-4824-A8DE-9177C94C195A}" - - - - {246001F4-279D-43AC-B241-948EB31120E1} - - "{246001F4-279D-43AC-B241-948EB31120E1}" - - - UnicodeStrings - False - - - {29BD8D0C-3586-4548-BB48-497B9A01693F} - - "{29BD8D0C-3586-4548-BB48-497B9A01693F}" - - Rules - - "Rules" - - - - - - - {8F99A816-E488-41E4-9FA3-846536012284} - - "{8F99A816-E488-41E4-9FA3-846536012284}" - - - - {40450F57-0AA3-4216-96F3-5444ECB29763} - - "{40450F57-0AA3-4216-96F3-5444ECB29763}" - - - ActiveVisuExtensionsLength - 0 - ActiveVisuProfile - "IR0whWr8bwfyBwAAHf+pawAAAABVAgAADnffSgAAAAABAAAAAAAAAAEaUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwACTHsAZgA5ADUAYgBiADQAMgA2AC0ANQA1ADIANAAtADQAYgA0ADUALQA5ADQAMAAwAC0AZgBiADAAZgAyAGUANwA3AGUANQAxAGIAfQADCE4AYQBtAGUABDJUAHcAaQBuAEMAQQBUACAAMwAuADEAIABCAHUAaQBsAGQAIAA0ADAAMgAyAC4AMQAwAAUWUAByAG8AZgBpAGwAZQBEAGEAdABhAAZMewAxADYAZQA1ADUAYgA2ADAALQA3ADAANAAzAC0ANABhADYAMwAtAGIANgA1AGIALQA2ADEANAA3ADEAMwA4ADcAOABkADQAMgB9AAcSTABpAGIAcgBhAHIAaQBlAHMACEx7ADMAYgBmAGQANQA0ADUAOQAtAGIAMAA3AGYALQA0AGQANgBlAC0AYQBlADEAYQAtAGEAOAAzADMANQA2AGEANQA1ADEANAAyAH0ACUx7ADkAYwA5ADUAOAA5ADYAOAAtADIAYwA4ADUALQA0ADEAYgBiAC0AOAA4ADcAMQAtADgAOQA1AGYAZgAxAGYAZQBkAGUAMQBhAH0ACg5WAGUAcgBzAGkAbwBuAAsGaQBuAHQADApVAHMAYQBnAGUADQpUAGkAdABsAGUADhpWAGkAcwB1AEUAbABlAG0ATQBlAHQAZQByAA8OQwBvAG0AcABhAG4AeQAQDFMAeQBzAHQAZQBtABESVgBpAHMAdQBFAGwAZQBtAHMAEjBWAGkAcwB1AEUAbABlAG0AcwBTAHAAZQBjAGkAYQBsAEMAbwBuAHQAcgBvAGwAcwATKFYAaQBzAHUARQBsAGUAbQBzAFcAaQBuAEMAbwBuAHQAcgBvAGwAcwAUJFYAaQBzAHUARQBsAGUAbQBUAGUAeAB0AEUAZABpAHQAbwByABUiVgBpAHMAdQBOAGEAdABpAHYAZQBDAG8AbgB0AHIAbwBsABYUdgBpAHMAdQBpAG4AcAB1AHQAcwAXDHMAeQBzAHQAZQBtABgYVgBpAHMAdQBFAGwAZQBtAEIAYQBzAGUAGSZEAGUAdgBQAGwAYQBjAGUAaABvAGwAZABlAHIAcwBVAHMAZQBkABoIYgBvAG8AbAAbIlAAbAB1AGcAaQBuAEMAbwBuAHMAdAByAGEAaQBuAHQAcwAcTHsANAAzAGQANQAyAGIAYwBlAC0AOQA0ADIAYwAtADQANABkADcALQA5AGUAOQA0AC0AMQBiAGYAZABmADMAMQAwAGUANgAzAGMAfQAdHEEAdABMAGUAYQBzAHQAVgBlAHIAcwBpAG8AbgAeFFAAbAB1AGcAaQBuAEcAdQBpAGQAHxZTAHkAcwB0AGUAbQAuAEcAdQBpAGQAIEhhAGYAYwBkADUANAA0ADYALQA0ADkAMQA0AC0ANABmAGUANwAtAGIAYgA3ADgALQA5AGIAZgBmAGUAYgA3ADAAZgBkADEANwAhFFUAcABkAGEAdABlAEkAbgBmAG8AIkx7AGIAMAAzADMANgA2AGEAOAAtAGIANQBjADAALQA0AGIAOQBhAC0AYQAwADAAZQAtAGUAYgA4ADYAMAAxADEAMQAwADQAYwAzAH0AIw5VAHAAZABhAHQAZQBzACRMewAxADgANgA4AGYAZgBjADkALQBlADQAZgBjAC0ANAA1ADMAMgAtAGEAYwAwADYALQAxAGUAMwA5AGIAYgA1ADUANwBiADYAOQB9ACVMewBhADUAYgBkADQAOABjADMALQAwAGQAMQA3AC0ANAAxAGIANQAtAGIAMQA2ADQALQA1AGYAYwA2AGEAZAAyAGIAOQA2AGIANwB9ACYWTwBiAGoAZQBjAHQAcwBUAHkAcABlACdUVQBwAGQAYQB0AGUATABhAG4AZwB1AGEAZwBlAE0AbwBkAGUAbABGAG8AcgBDAG8AbgB2AGUAcgB0AGkAYgBsAGUATABpAGIAcgBhAHIAaQBlAHMAKBBMAGkAYgBUAGkAdABsAGUAKRRMAGkAYgBDAG8AbQBwAGEAbgB5ACoeVQBwAGQAYQB0AGUAUAByAG8AdgBpAGQAZQByAHMAKzhTAHkAcwB0AGUAbQAuAEMAbwBsAGwAZQBjAHQAaQBvAG4AcwAuAEgAYQBzAGgAdABhAGIAbABlACwSdgBpAHMAdQBlAGwAZQBtAHMALUg2AGMAYgAxAGMAZABlADEALQBkADUAZABjAC0ANABhADMAYgAtADkAMAA1ADQALQAyADEAZgBhADcANQA2AGEAMwBmAGEANAAuKEkAbgB0AGUAcgBmAGEAYwBlAFYAZQByAHMAaQBvAG4ASQBuAGYAbwAvTHsAYwA2ADEAMQBlADQAMAAwAC0ANwBmAGIAOQAtADQAYwAzADUALQBiADkAYQBjAC0ANABlADMAMQA0AGIANQA5ADkANgA0ADMAfQAwGE0AYQBqAG8AcgBWAGUAcgBzAGkAbwBuADEYTQBpAG4AbwByAFYAZQByAHMAaQBvAG4AMgxMAGUAZwBhAGMAeQAzMEwAYQBuAGcAdQBhAGcAZQBNAG8AZABlAGwAVgBlAHIAcwBpAG8AbgBJAG4AZgBvADQwTABvAGEAZABMAGkAYgByAGEAcgBpAGUAcwBJAG4AdABvAFAAcgBvAGoAZQBjAHQANRpDAG8AbQBwAGEAdABpAGIAaQBsAGkAdAB5ANAAAhoD0AMBLQTQBQYaB9AHCBoBRQcJCNAACRoERQoLBAMAAAAFAAAACgAAAAAAAADQDAutAgAAANANAS0O0A8BLRDQAAkaBEUKCwQDAAAABQAAAAoAAAAoAAAA0AwLrQEAAADQDQEtEdAPAS0Q0AAJGgRFCgsEAwAAAAUAAAAKAAAAAAAAANAMC60CAAAA0A0BLRLQDwEtENAACRoERQoLBAMAAAAFAAAACgAAACgAAADQDAutAgAAANANAS0T0A8BLRDQAAkaBEUKCwQDAAAABQAAAAoAAAAKAAAA0AwLrQIAAADQDQEtFNAPAS0Q0AAJGgRFCgsEAwAAAAUAAAAKAAAAKAAAANAMC60CAAAA0A0BLRXQDwEtENAACRoERQoLBAMAAAAFAAAACgAAAAAAAADQDAutAgAAANANAS0W0A8BLRfQAAkaBEUKCwQDAAAABQAAAAoAAAAoAAAA0AwLrQQAAADQDQEtGNAPAS0Q0BkarQFFGxwB0AAcGgJFHQsEAwAAAAUAAAAKAAAAAAAAANAeHy0g0CEiGgJFIyQC0AAlGgVFCgsEAwAAAAMAAAAAAAAACgAAANAmC60AAAAA0AMBLSfQKAEtEdApAS0Q0AAlGgVFCgsEAwAAAAMAAAAAAAAACgAAANAmC60BAAAA0AMBLSfQKAEtEdApAS0QmiorAUUAAQLQAAEtLNAAAS0X0AAfLS3QLi8aA9AwC60BAAAA0DELrRMAAADQMhqtANAzLxoD0DALrQIAAADQMQutAwAAANAyGq0A0DQarQDQNRqtAA==" - - - - - - - - System.Boolean - System.Collections.Hashtable - System.Int32 - {54dd0eac-a6d8-46f2-8c27-2f43c7e49861} - System.String - - - - + + + + 1.0.0.0 + 2.0 + {fb261665-fd20-4bf2-97f8-2854c82b752d} + True + tc_project_app + 3.1.4022.6 + {047dee04-c246-47b2-8ccc-a15e36987c43} + {ae4eb5ee-6030-47a6-bf35-5a6afd9efeeb} + {5ef19bd0-aca2-493f-b2a1-89e363647697} + {f52f0efe-1be1-4600-94a9-9aa59fdf8e4e} + {26d08e27-a705-49a9-95de-a3a0b6ea049c} + {577f21c4-8eb2-4f2c-a24e-4c3f62ca96d2} + true + + + + Code + + + Code + true + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + Visualization Manager.TcVMO + + + Code + + + Code + Visualization Manager.TcVMO + + + Code + + + Code + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + VisuElemMeter, 3.5.10.0 (System) + VisuElemMeter + true + 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae + + + VisuElems, 3.5.10.20 (System) + VisuElems + true + 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae + + + VisuElemsSpecialControls, 3.5.10.0 (System) + VisuElemsSpecialControls + true + 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae + + + VisuElemsWinControls, 3.5.10.20 (System) + VisuElemsWinControls + true + 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae + + + VisuElemTextEditor, 3.5.10.10 (System) + VisuElemTextEditor + true + 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae + + + visuinputs, 3.5.10.0 (system) + visuinputs + true + 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae + + + VisuNativeControl, 3.5.10.0 (System) + VisuNativeControl + true + 2717eb6a-dd07-4c66-8d8d-cacebd7b18ae + + + Tc2_EtherCAT, * (Beckhoff Automation GmbH) + Tc2_EtherCAT + + + Tc2_MC2, * (Beckhoff Automation GmbH) + Tc2_MC2 + + + Tc2_Standard, * (Beckhoff Automation GmbH) + Tc2_Standard + + + Tc2_System, * (Beckhoff Automation GmbH) + Tc2_System + + + Tc2_Utilities, * (Beckhoff Automation GmbH) + Tc2_Utilities + + + Tc3_MC2_AdvancedHoming, * (Beckhoff Automation GmbH) + Tc3_MC2_AdvancedHoming + + + Tc3_Module, * (Beckhoff Automation GmbH) + Tc3_Module + + + VisuDialogs, * (System) + VisuDialogs + + + + + Content + + + + + + + + "<ProjectRoot>" + + {192FAD59-8248-4824-A8DE-9177C94C195A} + + "{192FAD59-8248-4824-A8DE-9177C94C195A}" + + + + {246001F4-279D-43AC-B241-948EB31120E1} + + "{246001F4-279D-43AC-B241-948EB31120E1}" + + + UnicodeStrings + False + + + {29BD8D0C-3586-4548-BB48-497B9A01693F} + + "{29BD8D0C-3586-4548-BB48-497B9A01693F}" + + Rules + + "Rules" + + + + + + + {8F99A816-E488-41E4-9FA3-846536012284} + + "{8F99A816-E488-41E4-9FA3-846536012284}" + + + + {40450F57-0AA3-4216-96F3-5444ECB29763} + + "{40450F57-0AA3-4216-96F3-5444ECB29763}" + + + ActiveVisuExtensionsLength + 0 + ActiveVisuProfile + "IR0whWr8bwfyBwAAHf+pawAAAABVAgAADnffSgAAAAABAAAAAAAAAAEaUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwACTHsAZgA5ADUAYgBiADQAMgA2AC0ANQA1ADIANAAtADQAYgA0ADUALQA5ADQAMAAwAC0AZgBiADAAZgAyAGUANwA3AGUANQAxAGIAfQADCE4AYQBtAGUABDJUAHcAaQBuAEMAQQBUACAAMwAuADEAIABCAHUAaQBsAGQAIAA0ADAAMgAyAC4AMQAwAAUWUAByAG8AZgBpAGwAZQBEAGEAdABhAAZMewAxADYAZQA1ADUAYgA2ADAALQA3ADAANAAzAC0ANABhADYAMwAtAGIANgA1AGIALQA2ADEANAA3ADEAMwA4ADcAOABkADQAMgB9AAcSTABpAGIAcgBhAHIAaQBlAHMACEx7ADMAYgBmAGQANQA0ADUAOQAtAGIAMAA3AGYALQA0AGQANgBlAC0AYQBlADEAYQAtAGEAOAAzADMANQA2AGEANQA1ADEANAAyAH0ACUx7ADkAYwA5ADUAOAA5ADYAOAAtADIAYwA4ADUALQA0ADEAYgBiAC0AOAA4ADcAMQAtADgAOQA1AGYAZgAxAGYAZQBkAGUAMQBhAH0ACg5WAGUAcgBzAGkAbwBuAAsGaQBuAHQADApVAHMAYQBnAGUADQpUAGkAdABsAGUADhpWAGkAcwB1AEUAbABlAG0ATQBlAHQAZQByAA8OQwBvAG0AcABhAG4AeQAQDFMAeQBzAHQAZQBtABESVgBpAHMAdQBFAGwAZQBtAHMAEjBWAGkAcwB1AEUAbABlAG0AcwBTAHAAZQBjAGkAYQBsAEMAbwBuAHQAcgBvAGwAcwATKFYAaQBzAHUARQBsAGUAbQBzAFcAaQBuAEMAbwBuAHQAcgBvAGwAcwAUJFYAaQBzAHUARQBsAGUAbQBUAGUAeAB0AEUAZABpAHQAbwByABUiVgBpAHMAdQBOAGEAdABpAHYAZQBDAG8AbgB0AHIAbwBsABYUdgBpAHMAdQBpAG4AcAB1AHQAcwAXDHMAeQBzAHQAZQBtABgYVgBpAHMAdQBFAGwAZQBtAEIAYQBzAGUAGSZEAGUAdgBQAGwAYQBjAGUAaABvAGwAZABlAHIAcwBVAHMAZQBkABoIYgBvAG8AbAAbIlAAbAB1AGcAaQBuAEMAbwBuAHMAdAByAGEAaQBuAHQAcwAcTHsANAAzAGQANQAyAGIAYwBlAC0AOQA0ADIAYwAtADQANABkADcALQA5AGUAOQA0AC0AMQBiAGYAZABmADMAMQAwAGUANgAzAGMAfQAdHEEAdABMAGUAYQBzAHQAVgBlAHIAcwBpAG8AbgAeFFAAbAB1AGcAaQBuAEcAdQBpAGQAHxZTAHkAcwB0AGUAbQAuAEcAdQBpAGQAIEhhAGYAYwBkADUANAA0ADYALQA0ADkAMQA0AC0ANABmAGUANwAtAGIAYgA3ADgALQA5AGIAZgBmAGUAYgA3ADAAZgBkADEANwAhFFUAcABkAGEAdABlAEkAbgBmAG8AIkx7AGIAMAAzADMANgA2AGEAOAAtAGIANQBjADAALQA0AGIAOQBhAC0AYQAwADAAZQAtAGUAYgA4ADYAMAAxADEAMQAwADQAYwAzAH0AIw5VAHAAZABhAHQAZQBzACRMewAxADgANgA4AGYAZgBjADkALQBlADQAZgBjAC0ANAA1ADMAMgAtAGEAYwAwADYALQAxAGUAMwA5AGIAYgA1ADUANwBiADYAOQB9ACVMewBhADUAYgBkADQAOABjADMALQAwAGQAMQA3AC0ANAAxAGIANQAtAGIAMQA2ADQALQA1AGYAYwA2AGEAZAAyAGIAOQA2AGIANwB9ACYWTwBiAGoAZQBjAHQAcwBUAHkAcABlACdUVQBwAGQAYQB0AGUATABhAG4AZwB1AGEAZwBlAE0AbwBkAGUAbABGAG8AcgBDAG8AbgB2AGUAcgB0AGkAYgBsAGUATABpAGIAcgBhAHIAaQBlAHMAKBBMAGkAYgBUAGkAdABsAGUAKRRMAGkAYgBDAG8AbQBwAGEAbgB5ACoeVQBwAGQAYQB0AGUAUAByAG8AdgBpAGQAZQByAHMAKzhTAHkAcwB0AGUAbQAuAEMAbwBsAGwAZQBjAHQAaQBvAG4AcwAuAEgAYQBzAGgAdABhAGIAbABlACwSdgBpAHMAdQBlAGwAZQBtAHMALUg2AGMAYgAxAGMAZABlADEALQBkADUAZABjAC0ANABhADMAYgAtADkAMAA1ADQALQAyADEAZgBhADcANQA2AGEAMwBmAGEANAAuKEkAbgB0AGUAcgBmAGEAYwBlAFYAZQByAHMAaQBvAG4ASQBuAGYAbwAvTHsAYwA2ADEAMQBlADQAMAAwAC0ANwBmAGIAOQAtADQAYwAzADUALQBiADkAYQBjAC0ANABlADMAMQA0AGIANQA5ADkANgA0ADMAfQAwGE0AYQBqAG8AcgBWAGUAcgBzAGkAbwBuADEYTQBpAG4AbwByAFYAZQByAHMAaQBvAG4AMgxMAGUAZwBhAGMAeQAzMEwAYQBuAGcAdQBhAGcAZQBNAG8AZABlAGwAVgBlAHIAcwBpAG8AbgBJAG4AZgBvADQwTABvAGEAZABMAGkAYgByAGEAcgBpAGUAcwBJAG4AdABvAFAAcgBvAGoAZQBjAHQANRpDAG8AbQBwAGEAdABpAGIAaQBsAGkAdAB5ANAAAhoD0AMBLQTQBQYaB9AHCBoBRQcJCNAACRoERQoLBAMAAAAFAAAACgAAAAAAAADQDAutAgAAANANAS0O0A8BLRDQAAkaBEUKCwQDAAAABQAAAAoAAAAoAAAA0AwLrQEAAADQDQEtEdAPAS0Q0AAJGgRFCgsEAwAAAAUAAAAKAAAAAAAAANAMC60CAAAA0A0BLRLQDwEtENAACRoERQoLBAMAAAAFAAAACgAAACgAAADQDAutAgAAANANAS0T0A8BLRDQAAkaBEUKCwQDAAAABQAAAAoAAAAKAAAA0AwLrQIAAADQDQEtFNAPAS0Q0AAJGgRFCgsEAwAAAAUAAAAKAAAAKAAAANAMC60CAAAA0A0BLRXQDwEtENAACRoERQoLBAMAAAAFAAAACgAAAAAAAADQDAutAgAAANANAS0W0A8BLRfQAAkaBEUKCwQDAAAABQAAAAoAAAAoAAAA0AwLrQQAAADQDQEtGNAPAS0Q0BkarQFFGxwB0AAcGgJFHQsEAwAAAAUAAAAKAAAAAAAAANAeHy0g0CEiGgJFIyQC0AAlGgVFCgsEAwAAAAMAAAAAAAAACgAAANAmC60AAAAA0AMBLSfQKAEtEdApAS0Q0AAlGgVFCgsEAwAAAAMAAAAAAAAACgAAANAmC60BAAAA0AMBLSfQKAEtEdApAS0QmiorAUUAAQLQAAEtLNAAAS0X0AAfLS3QLi8aA9AwC60BAAAA0DELrRMAAADQMhqtANAzLxoD0DALrQIAAADQMQutAwAAANAyGq0A0DQarQDQNRqtAA==" + + + + + + + + System.Boolean + System.Collections.Hashtable + System.Int32 + {54dd0eac-a6d8-46f2-8c27-2f43c7e49861} + System.String + + + + \ No newline at end of file diff --git a/twincat_version_manager.py b/twincat_version_manager.py index 3483331..5de2274 100644 --- a/twincat_version_manager.py +++ b/twincat_version_manager.py @@ -1,40 +1,40 @@ -import glob -import xml.etree.ElementTree as ET - -VERSION_TAGS = {"**/*.Tc*": "ProductVersion", "**/*.tsproj": "TcVersion"} -CORRECT_VERSION = "3.1.4024.0" - - -def check_versions(): - """ - Checks the Twincat version used to create a file. - It assumes that the version is stored as an attribute on the top element of the file, the attribute names are - listed in VERSION_TAGS. - :return: A dictionary of incorrect files and their version numbers - """ - incorrect_files = dict() - for file_path, version_attrib in VERSION_TAGS.items(): - found_files = glob.glob(file_path, recursive=True) - if not found_files: - raise IOError("ERROR: No files of type {} found".format(file_path)) - for file in found_files: - tree = ET.parse(file) - try: - found_version = tree.getroot().attrib[version_attrib] - if found_version != CORRECT_VERSION: - incorrect_files[file] = found_version - except KeyError: - print("WARNING: No version found for {}".format(file)) - return incorrect_files - - -if __name__ == "__main__": - try: - incorrect_files = check_versions() - for file, version in incorrect_files.items(): - print("ERROR: {} has incorrect version {}, expected version {}".format(file, version, CORRECT_VERSION)) - if incorrect_files: - exit(1) - except IOError as e: - print(e) # Likely no files found - exit(2) +import glob +import xml.etree.ElementTree as ET + +VERSION_TAGS = {"**/*.Tc*": "ProductVersion", "**/*.tsproj": "TcVersion"} +CORRECT_VERSION = "3.1.4024.0" + + +def check_versions(): + """ + Checks the Twincat version used to create a file. + It assumes that the version is stored as an attribute on the top element of the file, the attribute names are + listed in VERSION_TAGS. + :return: A dictionary of incorrect files and their version numbers + """ + incorrect_files = dict() + for file_path, version_attrib in VERSION_TAGS.items(): + found_files = glob.glob(file_path, recursive=True) + if not found_files: + raise IOError("ERROR: No files of type {} found".format(file_path)) + for file in found_files: + tree = ET.parse(file) + try: + found_version = tree.getroot().attrib[version_attrib] + if found_version != CORRECT_VERSION: + incorrect_files[file] = found_version + except KeyError: + print("WARNING: No version found for {}".format(file)) + return incorrect_files + + +if __name__ == "__main__": + try: + incorrect_files = check_versions() + for file, version in incorrect_files.items(): + print("ERROR: {} has incorrect version {}, expected version {}".format(file, version, CORRECT_VERSION)) + if incorrect_files: + exit(1) + except IOError as e: + print(e) # Likely no files found + exit(2)