diff --git a/solution.sln b/solution.sln
index 2694336..c0607dd 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
diff --git a/solution/_Config/IO/Device 1 (EtherCAT).xti b/solution/_Config/IO/Device 1 (EtherCAT).xti
new file mode 100644
index 0000000..150efbd
--- /dev/null
+++ b/solution/_Config/IO/Device 1 (EtherCAT).xti
@@ -0,0 +1,46 @@
+
+
+
+ __FILENAME__
+
+
+ -801112064
+ 131072
+ 8192
+ 0
+ 3
+ 0
+ 5612
+ 20480
+
+ 0
+ 4096
+ 12288
+ 2
+ 0
+ 1
+
+ 128
+ 1024
+ 32
+ 768
+ 32
+ 512
+ 16
+ 640
+
+ 1795167326
+ 1
+ 256
+
+
+
+
+ Image
+
+
+
+
+
+
+
diff --git a/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200).xti b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200).xti
new file mode 100644
index 0000000..6dd4c41
--- /dev/null
+++ b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200).xti
@@ -0,0 +1,32 @@
+
+
+
+ 424dd6020000000000003600000028000000100000000e0000000100180000000000a0020000c40e0000c40e00000000000000000000ff00ffff00ffff00ff808080808080808080808080808080808080808080808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ff0000c00000c0ffffffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ff0000c00000c0ffffffc0c0c000ffffc0c0c000ffff808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ff0000c00000c0ffffffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ff0000c00000c0ffffffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ff0000c00000c0ffffffc0c0c0ff0000c0c0c0ff0000808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ff0000c00000c0ffffffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ff0000c00000c0ffffffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ff0000c00000c0ffffffc0c0c00000ffc0c0c00000ff808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ff0000c00000c0ffffffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ff0000c00000c0ffffffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ff0000c00000c0ffffffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ff0000c00000c0ffffffc0c0c0008000c0c0c0008000808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ff0000c00000c0ffffffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff
+
+
+ __FILENAME__
+ 1000
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 2 (EL1808).xti b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 2 (EL1808).xti
new file mode 100644
index 0000000..b7493b1
--- /dev/null
+++ b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 2 (EL1808).xti
@@ -0,0 +1,51 @@
+
+
+
+ __FILENAME__
+ 7
+
+ 001001000000010004000000000000000100001000010000
+ 0000000000000000001000010100000002000000000000000000000000000000
+
+
+ BIT
+
+
+
+
+ BIT
+
+
+
+
+ BIT
+
+
+
+
+ BIT
+
+
+
+
+ BIT
+
+
+
+
+ BIT
+
+
+
+
+ BIT
+
+
+
+
+ BIT
+
+
+
+
+
diff --git a/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 3 (EL2819).xti b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 3 (EL2819).xti
new file mode 100644
index 0000000..a0185e7
--- /dev/null
+++ b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 3 (EL2819).xti
@@ -0,0 +1,308 @@
+
+
+
+
+ ARRAY [0..3] OF BIT
+ 4
+ BIT
+
+ 0
+ 4
+
+
+
+
+ 424dd6020000000000003600000028000000100000000e0000000100180000000000a0020000120b0000120b00000000000000000000ff00ffff00ffff00ffff00ffff00ffff00ff808080808080808080808080808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c000ffffc0c0c000ffff808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0ff0000c0c0c0ff0000808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c00000ffc0c0c00000ff808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c0008000c0c0c0008000808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff
+
+
+ __FILENAME__
+ 1000
+
+ 001080002600010001000000800080008000001026010000
+ 801080002200010002000000800080008000801022010000
+ 001102002400010003000000000000000200001124010000
+ 801109002000010004000000000000000800801120010000
+ 0000000000000000001100020100000001000000000000000000000000000000
+ 0000000000000000801100010100000002000000000000000000000000000000
+ 00000000000000000d0800010100000003000000000000000000000000000000
+ 0010f400f410f400
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..3] OF BIT
+
+
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 4 (EL5002).xti b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 4 (EL5002).xti
new file mode 100644
index 0000000..f246e88
--- /dev/null
+++ b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 4 (EL5002).xti
@@ -0,0 +1,94 @@
+
+
+
+
+ ARRAY [0..8] OF BIT
+ 9
+ BIT
+
+ 0
+ 9
+
+
+
+
+ 424dd6020000000000003600000028000000100000000e0000000100180000000000a0020000c40e0000c40e00000000000000000000000000ff00ffff00ffff00ff000000ff00ff808080808080808080808080808080ff00ffff00ffff00ffff00ffff00ff000000ff00ffff00ffff00ff000000ff00ffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ff000000ff00ffff00ffff00ff000000ff00ffc0c0c000ffffc0c0c000ffff808080ff00ffff00ffff00ffff00ffff00ff000000ff00ff000000ff00ff000000ff00ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff000000000000ff00ff000000000000ff00ffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ff000000ff00ffff00ffff00ff000000ff00ffc0c0c0ff0000c0c0c0ff0000808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c00000ffc0c0c00000ff808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c0008000c0c0c0008000808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff
+
+
+ __FILENAME__
+ 1000
+
+ 001080002600010001000000800080008000001026010000
+ 801080002200010002000000800080008000801022010000
+ 001100000400000003000000000000000000001104000000
+ 80110c002000010004000000000000000c00801120010000
+ 0000000000000000801100010100000002000000000000000000000000000000
+ 00000000000000000d0800010100000003000000000000000000000000000000
+ 0010f400f410f400
+ 53796e6368726f6e00000000000000004672656552756e2f534d2d53796e6368726f6e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
+ 4443000000000000000000000000000044432d53796e6368726f6e0000000000000000000000000000000000000000000000000000000000983a0000000000070100000000000000000000000000000000000000000000000000000000000000
+ 4443494e00000000000000000000000044432d53796e6368726f6e2028696e70757420626173656429000000000000000000000000000000983a0000000000070100000000000000000001000000000000000000000000000000000000000000
+ 02000300090000000000000000000000000000000000000000000000000000002082f001010000000000
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..8] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ UDINT
+
+
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..8] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ UDINT
+
+
+
+
+
+
+
diff --git a/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 5 (EL2014).xti b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 5 (EL2014).xti
new file mode 100644
index 0000000..a63fe19
--- /dev/null
+++ b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 5 (EL2014).xti
@@ -0,0 +1,102 @@
+
+
+
+ 424dd6020000000000003600000028000000100000000e0000000100180000000000a0020000120b0000120b00000000000000000000ff00ffff00ffff00ffff00ffff00ffff00ff808080808080808080808080808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c000ffffc0c0c000ffff808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0ff0000c0c0c0ff0000808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c00000ffc0c0c00000ff808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c0000000c0c0c0000000808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c0008000c0c0c0008000808080ff00ffff00ffff00ffff00ffff00ff0000ff0000ff0000ff0000ff0000ff0000ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff
+
+
+ __FILENAME__
+ 1000
+
+ 001080002600010001000000800080008000001026010000
+ 801080002200010002000000800080008000801022010000
+ 001101002400010003000000000000000100001124010000
+ 801103002000010004000000000000000300801120010000
+ 0000000000000000001100020100000001000000000000000000000000000000
+ 0000000000000000801100010100000002000000000000000000000000000000
+ 00000000000000000d0800010100000003000000000000000000000000000000
+ 0010f400f410f400
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+
+
+
+
+
+
+
diff --git a/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 6 (EL7041-0052).xti b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 6 (EL7041-0052).xti
new file mode 100644
index 0000000..bf8b04a
--- /dev/null
+++ b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 6 (EL7041-0052).xti
@@ -0,0 +1,486 @@
+
+
+
+
+ ARRAY [0..0] OF BIT
+ 1
+ BIT
+
+ 0
+ 1
+
+
+
+ ARRAY [0..2] OF BIT
+ 3
+ BIT
+
+ 0
+ 3
+
+
+
+ ARRAY [0..3] OF BIT
+ 4
+ BIT
+
+ 0
+ 4
+
+
+
+ ARRAY [0..0] OF BYTE
+ 8
+ BYTE
+
+ 0
+ 1
+
+
+
+ ARRAY [0..4] OF BIT
+ 5
+ BIT
+
+ 0
+ 5
+
+
+
+ ARRAY [0..5] OF BIT
+ 6
+ BIT
+
+ 0
+ 6
+
+
+
+ ARRAY [0..1] OF BIT
+ 2
+ BIT
+
+ 0
+ 2
+
+
+
+
+ 424dd6020000000000003600000028000000100000000e0000000100180000000000a0020000c40e0000c40e00000000000000000000ff00ffff00ffff00ffff00ff808080808080808080808080808080808080808080808080808080808080808080808080ff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0000000c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffc0c0c0c0c0c0000000000000000000000000000000000000000000c0c0c0c0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c00000000000000000000000000000000000000000000000ffc0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c0000000000000000000000000000000000000000000c0c0c0c0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0000000c0c0c0c0c0c0000000c0c0c0c0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c0000000000000000000000000c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080
+
+
+ __FILENAME__
+ 1000
+
+ 001080002600010001000000400080008000001026010000
+ 801080002200010002000000400080008000801022010000
+ 00110a002400010003000000000000000800001124010000
+ 80110c002000010004000000000000000800801120010000
+ 0000000000000000001100020100000001000000000000000000000000000000
+ 0000000000000000801100010100000002000000000000000000000000000000
+ 00000000000000000d0800010100000003000000000000000000000000000000
+ 0010f400f410f400
+ 53796e6368726f6e00000000000000004672656552756e2f534d2d53796e6368726f6e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
+ 4443000000000000000000000000000044432d53796e6368726f6e000000000000000000000000000000000000000000000000000000000000000000000000030100000000000000000000000000000000000000000000000000000000000000
+ 004003000c0000000000000000000000000000000000000000000000000000002081f001040000003400100000
+ 004003000a00000000000000000000000000000000000000000000000000000020f3100502000000010000
+ 020003000a0000000f00000000000000000000000000000000000000000000002010800102000000dc054d6178696d616c2063757272656e7400
+ 020003000a0000000f00000000000000000000000000000000000000000000002010800202000000f401526564756365642063757272656e7400
+ 020003000a0000000f00000000000000000000000000000000000000000000002010800302000000c05d4e6f6d696e616c20766f6c7461676500
+ 02000300090000000b000000000000000000000000000000000000000000000020128005010000000153706565642072616e676500
+
+ #x1a01
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..2] OF BIT
+
+
+ ARRAY [0..3] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+ UINT
+
+
+ UINT
+
+
+
+ #x1a00
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..2] OF BIT
+
+
+ ARRAY [0..3] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+ UDINT
+
+
+ UDINT
+
+
+
+
+ UDINT
+
+
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..0] OF BIT
+
+
+ ARRAY [0..2] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+
+
+ UINT
+
+
+ UINT
+
+
+
+ #x1a06
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+
+ #x1a05
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+ UDINT
+
+
+ INT
+
+
+ UDINT
+
+
+
+
+ UDINT
+
+
+
+
+ UDINT
+
+
+
+
+ DINT
+
+
+
+ #x1601
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..3] OF BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+ UINT
+
+
+
+ #x1600
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..3] OF BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+ UDINT
+
+
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..4] OF BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+
+ #x1604
+ #x1605
+ #x1606
+
+ UDINT
+
+
+
+ #x1603
+ #x1605
+ #x1606
+
+ INT
+
+
+
+ #x1603
+ #x1604
+ #x1606
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..5] OF BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+ UDINT
+
+
+
+ #x1603
+ #x1604
+ #x1605
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..5] OF BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+ UDINT
+
+
+ INT
+
+
+ UINT
+
+
+ UINT
+
+
+ UINT
+
+
+
+ #x1603
+ #x1604
+ #x1605
+
+ ARRAY [0..1] OF BIT
+
+
+ BIT
+
+
+ ARRAY [0..4] OF BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+ UDINT
+
+
+ INT
+
+
+ UINT
+
+
+ UINT
+
+
+ UINT
+
+
+
+
+
+
+
+
diff --git a/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 7 (EL7041-0052).xti b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 7 (EL7041-0052).xti
new file mode 100644
index 0000000..dd6e6f5
--- /dev/null
+++ b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 7 (EL7041-0052).xti
@@ -0,0 +1,486 @@
+
+
+
+
+ ARRAY [0..0] OF BIT
+ 1
+ BIT
+
+ 0
+ 1
+
+
+
+ ARRAY [0..2] OF BIT
+ 3
+ BIT
+
+ 0
+ 3
+
+
+
+ ARRAY [0..3] OF BIT
+ 4
+ BIT
+
+ 0
+ 4
+
+
+
+ ARRAY [0..0] OF BYTE
+ 8
+ BYTE
+
+ 0
+ 1
+
+
+
+ ARRAY [0..4] OF BIT
+ 5
+ BIT
+
+ 0
+ 5
+
+
+
+ ARRAY [0..5] OF BIT
+ 6
+ BIT
+
+ 0
+ 6
+
+
+
+ ARRAY [0..1] OF BIT
+ 2
+ BIT
+
+ 0
+ 2
+
+
+
+
+ 424dd6020000000000003600000028000000100000000e0000000100180000000000a0020000c40e0000c40e00000000000000000000ff00ffff00ffff00ffff00ff808080808080808080808080808080808080808080808080808080808080808080808080ff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0000000c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffc0c0c0c0c0c0000000000000000000000000000000000000000000c0c0c0c0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c00000000000000000000000000000000000000000000000ffc0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c0000000000000000000000000000000000000000000c0c0c0c0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0000000c0c0c0c0c0c0000000c0c0c0c0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c0000000000000000000000000c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0808080
+
+
+ __FILENAME__
+ 1000
+
+ 001080002600010001000000400080008000001026010000
+ 801080002200010002000000400080008000801022010000
+ 00110a002400010003000000000000000800001124010000
+ 80110c002000010004000000000000000800801120010000
+ 0000000000000000001100020100000001000000000000000000000000000000
+ 0000000000000000801100010100000002000000000000000000000000000000
+ 00000000000000000d0800010100000003000000000000000000000000000000
+ 0010f400f410f400
+ 53796e6368726f6e00000000000000004672656552756e2f534d2d53796e6368726f6e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
+ 4443000000000000000000000000000044432d53796e6368726f6e000000000000000000000000000000000000000000000000000000000000000000000000030100000000000000000000000000000000000000000000000000000000000000
+ 004003000c0000000000000000000000000000000000000000000000000000002081f001040000003400100000
+ 004003000a00000000000000000000000000000000000000000000000000000020f3100502000000010000
+ 020003000a0000000f00000000000000000000000000000000000000000000002010800102000000dc054d6178696d616c2063757272656e7400
+ 020003000a0000000f00000000000000000000000000000000000000000000002010800202000000f401526564756365642063757272656e7400
+ 020003000a0000000f00000000000000000000000000000000000000000000002010800302000000c05d4e6f6d696e616c20766f6c7461676500
+ 02000300090000000b000000000000000000000000000000000000000000000020128005010000000153706565642072616e676500
+
+ #x1a01
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..2] OF BIT
+
+
+ ARRAY [0..3] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+ UINT
+
+
+ UINT
+
+
+
+ #x1a00
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..2] OF BIT
+
+
+ ARRAY [0..3] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+ UDINT
+
+
+ UDINT
+
+
+
+
+ UDINT
+
+
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..0] OF BIT
+
+
+ ARRAY [0..2] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+
+
+ UINT
+
+
+ UINT
+
+
+
+ #x1a06
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+
+ #x1a05
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+ UDINT
+
+
+ INT
+
+
+ UDINT
+
+
+
+
+ UDINT
+
+
+
+
+ UDINT
+
+
+
+
+ DINT
+
+
+
+ #x1601
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..3] OF BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+ UINT
+
+
+
+ #x1600
+
+ ARRAY [0..0] OF BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..3] OF BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+ UDINT
+
+
+
+
+ BIT
+
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..4] OF BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+
+ #x1604
+ #x1605
+ #x1606
+
+ UDINT
+
+
+
+ #x1603
+ #x1605
+ #x1606
+
+ INT
+
+
+
+ #x1603
+ #x1604
+ #x1606
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..5] OF BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+ UDINT
+
+
+
+ #x1603
+ #x1604
+ #x1605
+
+ BIT
+
+
+ BIT
+
+
+ ARRAY [0..5] OF BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+ UDINT
+
+
+ INT
+
+
+ UINT
+
+
+ UINT
+
+
+ UINT
+
+
+
+ #x1603
+ #x1604
+ #x1605
+
+ ARRAY [0..1] OF BIT
+
+
+ BIT
+
+
+ ARRAY [0..4] OF BIT
+
+
+ ARRAY [0..0] OF BYTE
+
+
+ UDINT
+
+
+ INT
+
+
+ UINT
+
+
+ UINT
+
+
+ UINT
+
+
+
+
+
+
+
+
diff --git a/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 8 (EK1110).xti b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 8 (EK1110).xti
new file mode 100644
index 0000000..1702019
--- /dev/null
+++ b/solution/_Config/IO/Device 1 (EtherCAT)/Term 1 (EK1200)/Term 8 (EK1110).xti
@@ -0,0 +1,11 @@
+
+
+
+ 424dd6020000000000003600000028000000100000000e0000000100180000000000a0020000c40e0000c40e00000000000000000000ff00ffff00ffff00ffff00ffff00ffff00ff808080808080808080808080808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ff00bfffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c080808000bfff00bfff00bfff00bfff00bfffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ff00bfffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffff00ffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff007fff007fff007fff007fff007fff007fffc0c0c0c0c0c0c0c0c0c0c0c0808080ff00ffff00ffff00ffff00ffff00ff
+
+
+ __FILENAME__
+ 1000
+
+
+
diff --git a/solution/_Config/NC/Axes/North.xti b/solution/_Config/NC/Axes/North.xti
new file mode 100644
index 0000000..2c0762e
--- /dev/null
+++ b/solution/_Config/NC/Axes/North.xti
@@ -0,0 +1,1547 @@
+
+
+
+
+ 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
+
+ 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
+
+
+ IsDriveLimitActive
+ BIT
+ 1
+ 18
+
+
+ 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
+
+
+
+ {4C3FC5AC-D5AA-44C6-AC5A-159774BA0F6D}
+
+
+
+
+ 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
+
+
+ AbsPhasingPos
+ LREAL
+ 64
+ 1664
+
+
+ TorqueOffset
+ LREAL
+ 64
+ 1728
+
+
+ ActPosWithoutPosCorrection
+ LREAL
+ 64
+ 1792
+
+
+ ActAcc
+ LREAL
+ 64
+ 1856
+
+
+ DcTimeStamp
+ UDINT
+ 32
+ 1920
+
+
+
+ NcStructType
+ 2
+
+
+
+
+ NCAXLESTRUCT_TOPLC
+
+
+ NCAXLESTRUCT_TOPLC2
+
+
+ NCAXLESTRUCT_TOPLC3
+
+
+ NCAXLESTRUCT_TOPLC4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ __FILENAME__
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCENCODERSTRUCT_IN2B
+ 1024
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+ nDataIn7
+
+
+
+
+
+ Outputs
+
+ Out
+ NCENCODERSTRUCT_OUT2
+ 2048
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCDRIVESTRUCT_IN2
+ 1344
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/solution/_Config/NC/Axes/North_Offset.xti b/solution/_Config/NC/Axes/North_Offset.xti
new file mode 100644
index 0000000..dd4db12
--- /dev/null
+++ b/solution/_Config/NC/Axes/North_Offset.xti
@@ -0,0 +1,1505 @@
+
+
+
+
+ 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
+
+ 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
+
+
+ IsDriveLimitActive
+ BIT
+ 1
+ 18
+
+
+ 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
+
+
+
+ {4C3FC5AC-D5AA-44C6-AC5A-159774BA0F6D}
+
+
+
+
+ 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
+
+
+ AbsPhasingPos
+ LREAL
+ 64
+ 1664
+
+
+ TorqueOffset
+ LREAL
+ 64
+ 1728
+
+
+ ActPosWithoutPosCorrection
+ LREAL
+ 64
+ 1792
+
+
+ ActAcc
+ LREAL
+ 64
+ 1856
+
+
+ DcTimeStamp
+ UDINT
+ 32
+ 1920
+
+
+
+ NcStructType
+ 2
+
+
+
+
+ NCAXLESTRUCT_TOPLC
+
+
+ NCAXLESTRUCT_TOPLC2
+
+
+ NCAXLESTRUCT_TOPLC3
+
+
+ NCAXLESTRUCT_TOPLC4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ __FILENAME__
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCENCODERSTRUCT_IN2B
+ 7680
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+ nDataIn7
+
+
+
+
+
+ Outputs
+
+ Out
+ NCENCODERSTRUCT_OUT2
+ 12800
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCDRIVESTRUCT_IN2
+ 8000
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+
+
+ Outputs
+
+ Out
+ NCDRIVESTRUCT_OUT2
+ 13120
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nCtrl2
+
+
+
+ nCtrl3
+
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ FromPlc
+ PLCTONC_AXIS_REF
+ 6656
+
+
+
+ Outputs
+
+ ToPlc
+ NCTOPLC_AXIS_REF
+ 10752
+
+
+
+
diff --git a/solution/_Config/NC/Axes/South.xti b/solution/_Config/NC/Axes/South.xti
new file mode 100644
index 0000000..5b34d50
--- /dev/null
+++ b/solution/_Config/NC/Axes/South.xti
@@ -0,0 +1,1549 @@
+
+
+
+
+ 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
+
+ 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
+
+
+ IsDriveLimitActive
+ BIT
+ 1
+ 18
+
+
+ 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
+
+
+
+ {4C3FC5AC-D5AA-44C6-AC5A-159774BA0F6D}
+
+
+
+
+ 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
+
+
+ AbsPhasingPos
+ LREAL
+ 64
+ 1664
+
+
+ TorqueOffset
+ LREAL
+ 64
+ 1728
+
+
+ ActPosWithoutPosCorrection
+ LREAL
+ 64
+ 1792
+
+
+ ActAcc
+ LREAL
+ 64
+ 1856
+
+
+ DcTimeStamp
+ UDINT
+ 32
+ 1920
+
+
+
+ NcStructType
+ 2
+
+
+
+
+ NCAXLESTRUCT_TOPLC
+
+
+ NCAXLESTRUCT_TOPLC2
+
+
+ NCAXLESTRUCT_TOPLC3
+
+
+ NCAXLESTRUCT_TOPLC4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ __FILENAME__
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCENCODERSTRUCT_IN2B
+ 2688
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+ nDataIn7
+
+
+
+
+
+ Outputs
+
+ Out
+ NCENCODERSTRUCT_OUT2
+ 4736
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCDRIVESTRUCT_IN2
+ 3008
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/solution/_Config/NC/Axes/South_Offset.xti b/solution/_Config/NC/Axes/South_Offset.xti
new file mode 100644
index 0000000..8a8b86c
--- /dev/null
+++ b/solution/_Config/NC/Axes/South_Offset.xti
@@ -0,0 +1,1505 @@
+
+
+
+
+ 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
+
+ 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
+
+
+ IsDriveLimitActive
+ BIT
+ 1
+ 18
+
+
+ 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
+
+
+
+ {4C3FC5AC-D5AA-44C6-AC5A-159774BA0F6D}
+
+
+
+
+ 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
+
+
+ AbsPhasingPos
+ LREAL
+ 64
+ 1664
+
+
+ TorqueOffset
+ LREAL
+ 64
+ 1728
+
+
+ ActPosWithoutPosCorrection
+ LREAL
+ 64
+ 1792
+
+
+ ActAcc
+ LREAL
+ 64
+ 1856
+
+
+ DcTimeStamp
+ UDINT
+ 32
+ 1920
+
+
+
+ NcStructType
+ 2
+
+
+
+
+ NCAXLESTRUCT_TOPLC
+
+
+ NCAXLESTRUCT_TOPLC2
+
+
+ NCAXLESTRUCT_TOPLC3
+
+
+ NCAXLESTRUCT_TOPLC4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ __FILENAME__
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCENCODERSTRUCT_IN2B
+ 9344
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+ nDataIn7
+
+
+
+
+
+ Outputs
+
+ Out
+ NCENCODERSTRUCT_OUT2
+ 15488
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCDRIVESTRUCT_IN2
+ 9664
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+
+
+ Outputs
+
+ Out
+ NCDRIVESTRUCT_OUT2
+ 15808
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nCtrl2
+
+
+
+ nCtrl3
+
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ FromPlc
+ PLCTONC_AXIS_REF
+ 8320
+
+
+
+ Outputs
+
+ ToPlc
+ NCTOPLC_AXIS_REF
+ 13440
+
+
+
+
diff --git a/solution/_Config/NC/Axes/VC.xti b/solution/_Config/NC/Axes/VC.xti
new file mode 100644
index 0000000..41f52e4
--- /dev/null
+++ b/solution/_Config/NC/Axes/VC.xti
@@ -0,0 +1,1510 @@
+
+
+
+
+ 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
+
+ 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
+
+
+ IsDriveLimitActive
+ BIT
+ 1
+ 18
+
+
+ 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
+
+
+
+ {4C3FC5AC-D5AA-44C6-AC5A-159774BA0F6D}
+
+
+
+
+ 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
+
+
+ AbsPhasingPos
+ LREAL
+ 64
+ 1664
+
+
+ TorqueOffset
+ LREAL
+ 64
+ 1728
+
+
+ ActPosWithoutPosCorrection
+ LREAL
+ 64
+ 1792
+
+
+ ActAcc
+ LREAL
+ 64
+ 1856
+
+
+ DcTimeStamp
+ UDINT
+ 32
+ 1920
+
+
+
+ NcStructType
+ 2
+
+
+
+
+ NCAXLESTRUCT_TOPLC
+
+
+ NCAXLESTRUCT_TOPLC2
+
+
+ NCAXLESTRUCT_TOPLC3
+
+
+ NCAXLESTRUCT_TOPLC4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ __FILENAME__
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCENCODERSTRUCT_IN2B
+ 6016
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+ nDataIn7
+
+
+
+
+
+ Outputs
+
+ Out
+ NCENCODERSTRUCT_OUT2
+ 10112
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCDRIVESTRUCT_IN2
+ 6336
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+
+
+ Outputs
+
+ Out
+ NCDRIVESTRUCT_OUT2
+ 10432
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nCtrl2
+
+
+
+ nCtrl3
+
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ FromPlc
+ PLCTONC_AXIS_REF
+ 4992
+
+
+
+ Outputs
+
+ ToPlc
+ NCTOPLC_AXIS_REF
+ 8064
+
+
+
+
diff --git a/solution/_Config/NC/Axes/VG.xti b/solution/_Config/NC/Axes/VG.xti
new file mode 100644
index 0000000..ea349e9
--- /dev/null
+++ b/solution/_Config/NC/Axes/VG.xti
@@ -0,0 +1,1509 @@
+
+
+
+
+ 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
+
+ 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
+
+
+ IsDriveLimitActive
+ BIT
+ 1
+ 18
+
+
+ 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
+
+
+
+ {4C3FC5AC-D5AA-44C6-AC5A-159774BA0F6D}
+
+
+
+
+ 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
+
+
+ AbsPhasingPos
+ LREAL
+ 64
+ 1664
+
+
+ TorqueOffset
+ LREAL
+ 64
+ 1728
+
+
+ ActPosWithoutPosCorrection
+ LREAL
+ 64
+ 1792
+
+
+ ActAcc
+ LREAL
+ 64
+ 1856
+
+
+ DcTimeStamp
+ UDINT
+ 32
+ 1920
+
+
+
+ NcStructType
+ 2
+
+
+
+
+ NCAXLESTRUCT_TOPLC
+
+
+ NCAXLESTRUCT_TOPLC2
+
+
+ NCAXLESTRUCT_TOPLC3
+
+
+ NCAXLESTRUCT_TOPLC4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ __FILENAME__
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCENCODERSTRUCT_IN2B
+ 4352
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+ nDataIn7
+
+
+
+
+
+ Outputs
+
+ Out
+ NCENCODERSTRUCT_OUT2
+ 7424
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ In
+ NCDRIVESTRUCT_IN2
+ 4672
+
+ nDataIn1
+
+
+ nDataIn2
+
+
+ nDataIn3
+
+
+ nDataIn4
+
+
+ nDataIn5
+
+
+ nDataIn6
+
+
+
+
+ Outputs
+
+ Out
+ NCDRIVESTRUCT_OUT2
+ 7744
+
+ nDataOut1
+
+
+ nDataOut2
+
+
+ nCtrl2
+
+
+
+ nCtrl3
+
+
+
+ nDataOut3
+
+
+ nDataOut4
+
+
+ nDataOut5
+
+
+ nDataOut6
+
+
+
+
+
+
+
+
+
+
+
+ Inputs
+
+ FromPlc
+ PLCTONC_AXIS_REF
+ 3328
+
+
+
+ Outputs
+
+ ToPlc
+ NCTOPLC_AXIS_REF
+ 5376
+
+
+
+
diff --git a/solution/_Config/NC/NC.xti b/solution/_Config/NC/NC.xti
index 32cccdf..293afa0 100644
--- a/solution/_Config/NC/NC.xti
+++ b/solution/_Config/NC/NC.xti
@@ -16,5 +16,11 @@
NC-Task 1 SVB
+
+
+
+
+
+
diff --git a/solution/_Config/PLC/tc_project_app.xti b/solution/_Config/PLC/tc_project_app.xti
index 9067711..c1bf9f0 100644
--- a/solution/_Config/PLC/tc_project_app.xti
+++ b/solution/_Config/PLC/tc_project_app.xti
@@ -1,9 +1,1124 @@
+
+
+ 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
+
+
+ IsDriveLimitActive
+ BIT
+ 1
+ 18
+
+
+ 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
+
+
+
+ {4C3FC5AC-D5AA-44C6-AC5A-159774BA0F6D}
+
+
+
+
+ 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
+
+
+ AbsPhasingPos
+ LREAL
+ 64
+ 1664
+
+
+ TorqueOffset
+ LREAL
+ 64
+ 1728
+
+
+ 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
+
+
+
+
tc_project_app Instance
{08500001-0000-0000-F000-000000000064}
+
+ PlcTask Inputs
+
+ GVL.astAxes[1].stStatus.nEncoderRawCounter
+
+ UDINT
+
+
+ GVL.astAxes[1].stStatus.nStepperDriveCounter
+
+ UDINT
+
+
+ GVL.astAxes[1].stInputs.bLimitFwd
+ BOOL
+
+
+ GVL.astAxes[1].stInputs.bLimitBwd
+ BOOL
+
+
+ GVL.astAxes[1].stInputs.bHomeSensor
+
+ BOOL
+
+
+ GVL.astAxes[1].Axis.NcToPlc
+ NCTOPLC_AXIS_REF
+
+
+ GVL.astAxes[2].stStatus.nEncoderRawCounter
+
+ UDINT
+
+
+ GVL.astAxes[2].stStatus.nStepperDriveCounter
+
+ UDINT
+
+
+ GVL.astAxes[2].stInputs.bLimitFwd
+ BOOL
+
+
+ GVL.astAxes[2].stInputs.bLimitBwd
+ BOOL
+
+
+ GVL.astAxes[2].stInputs.bHomeSensor
+
+ BOOL
+
+
+ GVL.astAxes[2].Axis.NcToPlc
+ NCTOPLC_AXIS_REF
+
+
+ GVL.astAxes[3].stStatus.nEncoderRawCounter
+
+ UDINT
+
+
+ GVL.astAxes[3].stStatus.nStepperDriveCounter
+
+ UDINT
+
+
+ GVL.astAxes[3].stInputs.bLimitFwd
+ BOOL
+
+
+ GVL.astAxes[3].stInputs.bLimitBwd
+ BOOL
+
+
+ GVL.astAxes[3].stInputs.bHomeSensor
+
+ BOOL
+
+
+ GVL.astAxes[3].Axis.NcToPlc
+ NCTOPLC_AXIS_REF
+
+
+ GVL.astAxes[4].stStatus.nEncoderRawCounter
+
+ UDINT
+
+
+ GVL.astAxes[4].stStatus.nStepperDriveCounter
+
+ UDINT
+
+
+ GVL.astAxes[4].stInputs.bLimitFwd
+ BOOL
+
+
+ GVL.astAxes[4].stInputs.bLimitBwd
+ BOOL
+
+
+ GVL.astAxes[4].stInputs.bHomeSensor
+
+ BOOL
+
+
+ GVL.astAxes[4].Axis.NcToPlc
+ NCTOPLC_AXIS_REF
+
+
+ GVL.astAxes[5].stStatus.nEncoderRawCounter
+
+ UDINT
+
+
+ GVL.astAxes[5].stStatus.nStepperDriveCounter
+
+ UDINT
+
+
+ GVL.astAxes[5].stInputs.bLimitFwd
+ BOOL
+
+
+ GVL.astAxes[5].stInputs.bLimitBwd
+ BOOL
+
+
+ GVL.astAxes[5].stInputs.bHomeSensor
+
+ BOOL
+
+
+ GVL.astAxes[5].Axis.NcToPlc
+ NCTOPLC_AXIS_REF
+
+
+ GVL.astAxes[6].stStatus.nEncoderRawCounter
+
+ UDINT
+
+
+ GVL.astAxes[6].stStatus.nStepperDriveCounter
+
+ UDINT
+
+
+ GVL.astAxes[6].stInputs.bLimitFwd
+ BOOL
+
+
+ GVL.astAxes[6].stInputs.bLimitBwd
+ BOOL
+
+
+ GVL.astAxes[6].stInputs.bHomeSensor
+
+ BOOL
+
+
+ GVL.astAxes[6].Axis.NcToPlc
+ NCTOPLC_AXIS_REF
+
+
+
+ PlcTask Outputs
+
+ GVL.astAxes[1].Axis.PlcToNc
+ PLCTONC_AXIS_REF
+
+
+ GVL.astAxes[2].Axis.PlcToNc
+ PLCTONC_AXIS_REF
+
+
+ GVL.astAxes[3].Axis.PlcToNc
+ PLCTONC_AXIS_REF
+
+
+ GVL.astAxes[4].Axis.PlcToNc
+ PLCTONC_AXIS_REF
+
+
+ GVL.astAxes[5].Axis.PlcToNc
+ PLCTONC_AXIS_REF
+
+
+ GVL.astAxes[6].Axis.PlcToNc
+ PLCTONC_AXIS_REF
+
+
+ limitsPower.bEnableAxis1Limits
+ BOOL
+
+
+ limitsPower.bEnableAxis2Limits
+ BOOL
+
+
+ limitsPower.bEnableAxis1Enc
+ BOOL
+
+
+ limitsPower.bEnableAxis2Enc
+ BOOL
+
+
+ testSlitApp.iGapSizePosition
+ UDINT
+
+
+ testSlitApp.iGapCentrePosition
+ UDINT
+
+
0
@@ -20,4 +1135,50 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/solution/solution.tsproj b/solution/solution.tsproj
index 4bf7c31..5f5121a 100644
--- a/solution/solution.tsproj
+++ b/solution/solution.tsproj
@@ -1,8 +1,8 @@
-
+
-
+
@@ -18,5 +18,11 @@
+
+
+
+
+
+
diff --git a/solution/tc_project_app/GVLs/GVL_APP.TcGVL b/solution/tc_project_app/GVLs/GVL_APP.TcGVL
index f8c5309..b747a5d 100644
--- a/solution/tc_project_app/GVLs/GVL_APP.TcGVL
+++ b/solution/tc_project_app/GVLs/GVL_APP.TcGVL
@@ -1,16 +1,18 @@
-
+END_VAR]]>
\ No newline at end of file
diff --git a/solution/tc_project_app/POUs/Application_Specific/Applications/Application_Template.TcPOU b/solution/tc_project_app/POUs/Application_Specific/Applications/Application_Template.TcPOU
deleted file mode 100644
index dbf45fb..0000000
--- a/solution/tc_project_app/POUs/Application_Specific/Applications/Application_Template.TcPOU
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/solution/tc_project_app/POUs/Application_Specific/Applications/FB_SlitPairV2.TcPOU b/solution/tc_project_app/POUs/Application_Specific/Applications/FB_SlitPairV2.TcPOU
new file mode 100644
index 0000000..911f27e
--- /dev/null
+++ b/solution/tc_project_app/POUs/Application_Specific/Applications/FB_SlitPairV2.TcPOU
@@ -0,0 +1,57 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/solution/tc_project_app/POUs/Application_Specific/Applications/limitsPower.TcPOU b/solution/tc_project_app/POUs/Application_Specific/Applications/limitsPower.TcPOU
new file mode 100644
index 0000000..6ec3f3f
--- /dev/null
+++ b/solution/tc_project_app/POUs/Application_Specific/Applications/limitsPower.TcPOU
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/solution/tc_project_app/POUs/Application_Specific/Applications/testSlitApp.TcPOU b/solution/tc_project_app/POUs/Application_Specific/Applications/testSlitApp.TcPOU
new file mode 100644
index 0000000..11239e5
--- /dev/null
+++ b/solution/tc_project_app/POUs/Application_Specific/Applications/testSlitApp.TcPOU
@@ -0,0 +1,341 @@
+
+
+
+
+
+ 0 THEN
+ northDir := 1;
+ELSIF fNorthVelSp<0 THEN
+ northDir:=-1;
+ELSE
+ northDir:=0;
+END_IF
+IF fSouthVelSp>0 THEN
+ SouthDir := 1;
+ELSIF fSouthVelSp<0 THEN
+ SouthDir:=-1;
+ELSE
+ SouthDir:=0;
+END_IF
+
+fVgVelSp := GVL.astAxes[1].Axis.NcToPlc.SetVelo - GVL.astAxes[2].Axis.NcToPlc.SetVelo;
+fVcVelSp := GVL.astAxes[1].Axis.NcToPlc.SetVelo + GVL.astAxes[2].Axis.NcToPlc.SetVelo;
+
+IF fVgVelSp>0 THEN
+ vgDir := 1;
+ELSIF fVgVelSp<0 THEN
+ vgDir:=-1;
+ELSE
+ vgDir:=0;
+END_IF
+IF fVcVelSp>0 THEN
+ vcDir := 1;
+ELSIF fVcVelSp<0 THEN
+ vcDir:=-1;
+ELSE
+ vcDir:=0;
+END_IF
+
+
+fVgSp := GVL.astAxes[northBlade_ID].Axis.NcToPlc.SetPos - GVL.astAxes[southBlade_ID].Axis.NcToPlc.SetPos;
+fVcSp := (GVL.astAxes[northBlade_ID].Axis.NcToPlc.SetPos + GVL.astAxes[southBlade_ID].Axis.NcToPlc.SetPos) / 2;
+
+
+
+//IF northSpGenEnable.Enabled OR southSpGenEnable THEN
+ //
+//END_IF
+
+ CASE istate OF
+ 0:
+ IF GVL.astAxes[VG_ID].stStatus.bMoving OR GVL.astAxes[VC_ID].stStatus.bMoving THEN
+ iState:=1;
+ END_IF
+ IF GVL.astAxes[1].stStatus.bMoving OR GVL.astAxes[2].stStatus.bMoving THEN
+ iState:=10;
+ END_IF
+
+ 1:
+ northSpGenEnable.Execute:=TRUE;
+ southSpGenEnable.Execute:=TRUE;
+ iState:=2;
+ 2:
+ IF NOT(GVL.astAxes[VG_ID].stStatus.bMoving OR GVL.astAxes[VC_ID].stStatus.bMoving) THEN
+ iState:=3;
+ END_IF
+ 3:
+ northSpGenDisable.Execute:=TRUE;
+ southSpGenDisable.Execute:=TRUE;
+ iState:=0;
+
+ 10:
+ vgSpGenEnable.Execute :=TRUE;
+ vcSpGenEnable.Execute:=TRUE;
+ iState:=11;
+ 11:
+ IF NOT(GVL.astAxes[1].stStatus.bMoving OR GVL.astAxes[2].stStatus.bMoving) THEN
+ iState:=12;
+ END_IF
+ 12:
+ vgSpGenDisable.Execute :=TRUE;
+ vcSpGenDisable.Execute:=TRUE;
+ iState:=0;
+
+ END_CASE
+(*IF (GVL.astAxes[VG_ID].stStatus.bMoving OR GVL.astAxes[VC_ID].stStatus.bMoving) AND NOT(vgSpGenEnable.Enabled OR vcSpGenEnable.Enabled) THEN
+ northSpGenEnable.Execute:=TRUE;
+ southSpGenEnable.Execute:=TRUE;
+END_IF
+IF NOT(GVL.astAxes[VG_ID].stStatus.bMoving) AND NOT(GVL.astAxes[VC_ID].stStatus.bMoving) THEN
+ northSpGenDisable.Execute:=TRUE;
+ southSpGenDisable.Execute:=TRUE;
+END_IF
+IF GVL.astAxes[1].stStatus.bMoving OR GVL.astAxes[2].stStatus.bMoving AND NOT(northSpGenEnable.Enabled OR southSpGenEnable.Enabled) AND NOT(northSpGenEnable.Execute) THEN
+ vgSpGenEnable.Execute :=TRUE;
+ vcSpGenEnable.Execute:=TRUE;
+END_IF
+IF NOT(GVL.astAxes[1].stStatus.bMoving) AND NOT(GVL.astAxes[2].stStatus.bMoving) THEN
+ vgSpGenDisable.Execute :=TRUE;
+ vcSpGenDisable.Execute:=TRUE;
+END_IF*)
+
+
+
+
+MC_ExtSetPointGenFeed(Axis:= GVL.astAxes[northBlade_ID].Axis, Position:= fNorthSp, Velocity:=fNorthVelSp, Acceleration:=0,Direction:=northDir);
+MC_ExtSetPointGenFeed(Axis:= GVL.astAxes[southBlade_ID].Axis, Position:= fSouthSp, Velocity:=fSouthVelSp, Acceleration:=0,Direction:=southDir);
+MC_ExtSetPointGenFeed(Axis:= GVL.astAxes[3].Axis, Position:= fVgSp, Velocity:=fVgVelSp, Acceleration:=0,Direction:=vgDir);
+MC_ExtSetPointGenFeed(Axis:= GVL.astAxes[4].Axis, Position:= fVcSp, Velocity:=fVcVelSp, Acceleration:=0,Direction:=vcDir);
+
+
+
+
+lastCycleSP_North := GVL.astAxes[1].Axis.NcToPlc.SetPos;
+lastCycleSP_South := GVL.astAxes[2].Axis.NcToPlc.SetPos;
+lastCycleSP_VG := GVL.astAxes[3].Axis.NcToPlc.SetPos;
+lastCycleSP_VC := GVL.astAxes[4].Axis.NcToPlc.SetPos;
+
+
+
+
+
+
+
+//END_IF]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/solution/tc_project_app/POUs/Application_Specific/Axes/Axis_Template.TcPOU b/solution/tc_project_app/POUs/Application_Specific/Axes/Axis_Template.TcPOU
deleted file mode 100644
index b7dc9f6..0000000
--- a/solution/tc_project_app/POUs/Application_Specific/Axes/Axis_Template.TcPOU
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/solution/tc_project_app/POUs/Application_Specific/Axes/Pneumatics_Template.TcPOU b/solution/tc_project_app/POUs/Application_Specific/Axes/Pneumatics_Template.TcPOU
deleted file mode 100644
index 1bd9a51..0000000
--- a/solution/tc_project_app/POUs/Application_Specific/Axes/Pneumatics_Template.TcPOU
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/solution/tc_project_app/POUs/Application_Specific/Axes/testProg.TcPOU b/solution/tc_project_app/POUs/Application_Specific/Axes/testProg.TcPOU
new file mode 100644
index 0000000..eba0a13
--- /dev/null
+++ b/solution/tc_project_app/POUs/Application_Specific/Axes/testProg.TcPOU
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ 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 16ea784..a1b8dd9 100644
--- a/solution/tc_project_app/POUs/MAIN.TcPOU
+++ b/solution/tc_project_app/POUs/MAIN.TcPOU
@@ -75,16 +75,9 @@ END_IF]]>
-
+
@@ -234,14 +227,7 @@ END_FOR]]>
-
-
-
-
-
-
-
-
+
diff --git a/solution/tc_project_app/tc_mca_std_lib b/solution/tc_project_app/tc_mca_std_lib
index ef11a1b..b480174 160000
--- a/solution/tc_project_app/tc_mca_std_lib
+++ b/solution/tc_project_app/tc_mca_std_lib
@@ -1 +1 @@
-Subproject commit ef11a1b4c06047b86d3852e31ed5242c9f5ca51e
+Subproject commit b480174ad58ac9c260980ff5b8c8927f3d3d5cb9
diff --git a/solution/tc_project_app/tc_project_app.plcproj b/solution/tc_project_app/tc_project_app.plcproj
index 0c11005..f0e0565 100644
--- a/solution/tc_project_app/tc_project_app.plcproj
+++ b/solution/tc_project_app/tc_project_app.plcproj
@@ -28,13 +28,13 @@
Code
-
+
Code
-
+
Code
-
+
Code