Browse Source

Doppelzylinder integriert für automatische und halbautomatische LAserung

jcech 1 year ago
parent
commit
9da8a61241
66 changed files with 638 additions and 470 deletions
  1. BIN
      Binaries/Config1/5APC3100_KBU0_000/FWRules.br
  2. BIN
      Binaries/Config1/5APC3100_KBU0_000/Kurve1.br
  3. BIN
      Binaries/Config1/5APC3100_KBU0_000/Kurve2.br
  4. BIN
      Binaries/Config1/5APC3100_KBU0_000/Kurve3.br
  5. BIN
      Binaries/Config1/5APC3100_KBU0_000/Kurve4.br
  6. BIN
      Binaries/Config1/5APC3100_KBU0_000/Liftgate.br
  7. BIN
      Binaries/Config1/5APC3100_KBU0_000/Main.br
  8. BIN
      Binaries/Config1/5APC3100_KBU0_000/RFID.br
  9. BIN
      Binaries/Config1/5APC3100_KBU0_000/Role.br
  10. BIN
      Binaries/Config1/5APC3100_KBU0_000/TCData.br
  11. BIN
      Binaries/Config1/5APC3100_KBU0_000/Tisch1.br
  12. BIN
      Binaries/Config1/5APC3100_KBU0_000/Tisch2.br
  13. BIN
      Binaries/Config1/5APC3100_KBU0_000/Tisch3.br
  14. BIN
      Binaries/Config1/5APC3100_KBU0_000/Tisch4.br
  15. BIN
      Binaries/Config1/5APC3100_KBU0_000/Tisch5.br
  16. BIN
      Binaries/Config1/5APC3100_KBU0_000/Tisch6.br
  17. BIN
      Binaries/Config1/5APC3100_KBU0_000/Tisch7.br
  18. BIN
      Binaries/Config1/5APC3100_KBU0_000/Tisch8.br
  19. BIN
      Binaries/Config1/5APC3100_KBU0_000/User.br
  20. BIN
      Binaries/Config1/5APC3100_KBU0_000/Zylinder10.br
  21. BIN
      Binaries/Config1/5APC3100_KBU0_000/Zylinder_1.br
  22. BIN
      Binaries/Config1/5APC3100_KBU0_000/Zylinder_2.br
  23. BIN
      Binaries/Config1/5APC3100_KBU0_000/Zylinder_3.br
  24. BIN
      Binaries/Config1/5APC3100_KBU0_000/Zylinder_4.br
  25. BIN
      Binaries/Config1/5APC3100_KBU0_000/Zylinder_5.br
  26. BIN
      Binaries/Config1/5APC3100_KBU0_000/Zylinder_6.br
  27. BIN
      Binaries/Config1/5APC3100_KBU0_000/Zylinder_7.br
  28. BIN
      Binaries/Config1/5APC3100_KBU0_000/Zylinder_8.br
  29. BIN
      Binaries/Config1/5APC3100_KBU0_000/Zylinder_9.br
  30. BIN
      Binaries/Config1/5APC3100_KBU0_000/Zylinder_K.br
  31. BIN
      Binaries/Config1/5APC3100_KBU0_000/Zylinder_T.br
  32. BIN
      Binaries/Config1/5APC3100_KBU0_000/arconfig.br
  33. BIN
      Binaries/Config1/5APC3100_KBU0_000/asfw.br
  34. BIN
      Binaries/Config1/5APC3100_KBU0_000/ashwac.br
  35. BIN
      Binaries/Config1/5APC3100_KBU0_000/ashwd.br
  36. BIN
      Binaries/Config1/5APC3100_KBU0_000/asiol1.br
  37. BIN
      Binaries/Config1/5APC3100_KBU0_000/asiol2.br
  38. BIN
      Binaries/Config1/5APC3100_KBU0_000/asiol3.br
  39. BIN
      Binaries/Config1/5APC3100_KBU0_000/asiol4.br
  40. BIN
      Binaries/Config1/5APC3100_KBU0_000/asiol5.br
  41. BIN
      Binaries/Config1/5APC3100_KBU0_000/asiol6.br
  42. BIN
      Binaries/Config1/5APC3100_KBU0_000/asiol7.br
  43. BIN
      Binaries/Config1/5APC3100_KBU0_000/asiol8.br
  44. BIN
      Binaries/Config1/5APC3100_KBU0_000/iomap.br
  45. BIN
      Binaries/Config1/5APC3100_KBU0_000/sysconf.br
  46. 4 1
      Diagnosis/Config1/5APC3100_KBU0_000/Main.Main.PVM.dock
  47. 11 11
      Diagnosis/Config1/5APC3100_KBU0_000/RFID.Main.PVM.dock
  48. 33 0
      Diagnosis/Config1/5APC3100_KBU0_000/Tisch2.Main.PVM.dock
  49. 33 1
      Diagnosis/Config1/5APC3100_KBU0_000/Tisch3.Main.PVM.dock
  50. 1 1
      Diagnosis/Config1/5APC3100_KBU0_000/Tisch5.Main.PVM.dock
  51. 27 24
      Diagnosis/Config1/5APC3100_KBU0_000/Tisch6.Main.PVM.dock
  52. 34 1
      Diagnosis/Config1/5APC3100_KBU0_000/Tisch7.Main.PVM.dock
  53. 6 6
      Diagnosis/Config1/5APC3100_KBU0_000/Zylinder_5.Main.PVM.dock
  54. 4 1
      Diagnosis/Config1/5APC3100_KBU0_000/Zylinder_7.Main.PVM.dock
  55. 176 205
      Logical/Global.var
  56. 7 2
      Logical/Main/Main.st
  57. 93 34
      Logical/TischProgramme/Tisch6/Main.st
  58. 28 16
      Logical/TischProgramme/Tisch7/Main.st
  59. 2 0
      Logical/TischProgramme/Tisch7/Variables.var
  60. 4 0
      Logical/Zylinder/Zylinder_Tisch6/Main.st
  61. 2 2
      Logical/mappView/Visualization/Pages/MainPage/ContentMain.content
  62. 3 0
      Physical/Config1/5APC3100_KBU0_000/Connectivity/OpcUA/OpcUaMap.uad
  63. 165 164
      Physical/Config1/5APC3100_KBU0_000/IoMap.iom
  64. 4 0
      Physical/Config1/5APC3100_KBU0_000/mappView/MainContentBinding.binding
  65. 1 1
      Physical/Config1/Hardware.hwl
  66. BIN
      Physical/Config1/Hardware.jpg

BIN
Binaries/Config1/5APC3100_KBU0_000/FWRules.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Kurve1.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Kurve2.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Kurve3.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Kurve4.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Liftgate.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Main.br


BIN
Binaries/Config1/5APC3100_KBU0_000/RFID.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Role.br


BIN
Binaries/Config1/5APC3100_KBU0_000/TCData.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Tisch1.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Tisch2.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Tisch3.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Tisch4.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Tisch5.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Tisch6.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Tisch7.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Tisch8.br


BIN
Binaries/Config1/5APC3100_KBU0_000/User.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Zylinder10.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Zylinder_1.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Zylinder_2.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Zylinder_3.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Zylinder_4.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Zylinder_5.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Zylinder_6.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Zylinder_7.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Zylinder_8.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Zylinder_9.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Zylinder_K.br


BIN
Binaries/Config1/5APC3100_KBU0_000/Zylinder_T.br


BIN
Binaries/Config1/5APC3100_KBU0_000/arconfig.br


BIN
Binaries/Config1/5APC3100_KBU0_000/asfw.br


BIN
Binaries/Config1/5APC3100_KBU0_000/ashwac.br


BIN
Binaries/Config1/5APC3100_KBU0_000/ashwd.br


BIN
Binaries/Config1/5APC3100_KBU0_000/asiol1.br


BIN
Binaries/Config1/5APC3100_KBU0_000/asiol2.br


BIN
Binaries/Config1/5APC3100_KBU0_000/asiol3.br


BIN
Binaries/Config1/5APC3100_KBU0_000/asiol4.br


BIN
Binaries/Config1/5APC3100_KBU0_000/asiol5.br


BIN
Binaries/Config1/5APC3100_KBU0_000/asiol6.br


BIN
Binaries/Config1/5APC3100_KBU0_000/asiol7.br


BIN
Binaries/Config1/5APC3100_KBU0_000/asiol8.br


BIN
Binaries/Config1/5APC3100_KBU0_000/iomap.br


BIN
Binaries/Config1/5APC3100_KBU0_000/sysconf.br


+ 4 - 1
Diagnosis/Config1/5APC3100_KBU0_000/Main.Main.PVM.dock

@@ -1,6 +1,9 @@
 WATCH Ver=2.00 PLCName=PLC1 CPUName=CPU TaskName=Main 
-Position X=0 Y=0 Width=0 Height=0 TabWidth Name=150 Type=0 Scope=0 Force=0 Index=0 ASCIIString=0
+Position X=0 Y=0 Width=0 Height=0 TabWidth Name=157 Type=170 Scope=14 Force=154 Index=0 ASCIIString=0
                                     name                                     type force                                                            value level type len format place expand specs
+                            Shutdown_URL                               STRING[80]    0 "                                                              ''"    0    9   81    1    0    0         
+                        Shutdown_picture                               STRING[80]    0 "                                            'Media/Shutdown.jpg'"    0    9   81    1    0    0         
                                 VK_Start                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         
                             gDO_Motor_K1                                     BOOL    3 "                                                            TRUE"    0    1    1    2    0    0         
                             gDO_Motor_K2                                     BOOL    3 "                                                            TRUE"    0    1    1    2    0    0         
+                        gMerker_Shutdown                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         

+ 11 - 11
Diagnosis/Config1/5APC3100_KBU0_000/RFID.Main.PVM.dock

@@ -1,5 +1,5 @@
 WATCH Ver=2.00 PLCName=PLC1 CPUName=CPU TaskName=RFID 
-Position X=0 Y=0 Width=0 Height=0 TabWidth Name=202 Type=106 Scope=134 Force=36 Index=80 ASCIIString=0
+Position X=0 Y=0 Width=0 Height=0 TabWidth Name=202 Type=106 Scope=134 Force=200 Index=77 ASCIIString=0
                                     name                                     type force                                                            value level type len format place expand specs
               gMerker_RFID_Value_Tisch_1                                    USINT    0 "                                                               *"    0    5    1   10    0    0         
               gMerker_RFID_Value_Tisch_2                                    USINT    0 "                                                               *"    0    5    1   10    0    0         
@@ -9,15 +9,15 @@ Position X=0 Y=0 Width=0 Height=0 TabWidth Name=202 Type=106 Scope=134 Force=36
               gMerker_RFID_Value_Tisch_6                                    USINT    0 "                                                               *"    0    5    1   10    0    0         
               gMerker_RFID_Value_Tisch_7                                    USINT    0 "                                                               *"    0    5    1   10    0    0         
               gMerker_RFID_Value_Tisch_8                                    USINT    0 "                                                               *"    0    5    1   10    0    0         
-          gMerker_Tisch_2_RFID_Vorhanden                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         
-          gMerker_Tisch_3_RFID_Vorhanden                                     BOOL    0 "                                                            TRUE"    0    1    1    2    0    0         
+          gMerker_Tisch_2_RFID_Vorhanden                                     BOOL    0 "                                                            TRUE"    0    1    1    2    0    0         
+          gMerker_Tisch_3_RFID_Vorhanden                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         
           gMerker_Tisch_4_RFID_Vorhanden                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         
           gMerker_Tisch_5_RFID_Vorhanden                                     BOOL    0 "                                                            TRUE"    0    1    1    2    0    0         
           gMerker_Tisch_6_RFID_Vorhanden                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         
           gMerker_Tisch_7_RFID_Vorhanden                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         
           gMerker_Tisch_8_RFID_Vorhanden                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         
           gMerker_Tisch_1_RFID_Vorhanden                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         
-                     gTisch_2_RFID_Write                              USINT[0..9]    0 "                                                               *"    0    5   10    0    0    0         
+                     gTisch_2_RFID_Write                              USINT[0..9]    3 "                                                               *"    0    5   10    0    0    0         
                   gTisch_2_RFID_Write[0]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
                   gTisch_2_RFID_Write[1]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
                   gTisch_2_RFID_Write[2]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
@@ -29,10 +29,10 @@ Position X=0 Y=0 Width=0 Height=0 TabWidth Name=202 Type=106 Scope=134 Force=36
                   gTisch_2_RFID_Write[8]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
                   gTisch_2_RFID_Write[9]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
            gMerker_Tisch_2_Auftrag_Lesen                                     BOOL    0 "                                                               *"    0    1    1    2    0    0         
-                            Tisch_2_RFID                                    USINT    0 "                                                               0"    0    5    1   10    0    0         
+                            Tisch_2_RFID                                    USINT    0 "                                                               5"    0    5    1   10    0    0         
                             Tisch_1_RFID                                    USINT    0 "                                                               0"    0    5    1   10    0    0         
                             Tisch_5_RFID                                    USINT    0 "                                                               5"    0    5    1   10    0    0         
-                     gTisch_5_RFID_Write                              USINT[0..9]    0 "                                                               *"    0    5   10    0    0    0         
+                     gTisch_5_RFID_Write                              USINT[0..9]    3 "                                                               *"    0    5   10    0    0    0         
                   gTisch_5_RFID_Write[0]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
                   gTisch_5_RFID_Write[1]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
                   gTisch_5_RFID_Write[2]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
@@ -43,7 +43,7 @@ Position X=0 Y=0 Width=0 Height=0 TabWidth Name=202 Type=106 Scope=134 Force=36
                   gTisch_5_RFID_Write[7]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
                   gTisch_5_RFID_Write[8]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
                   gTisch_5_RFID_Write[9]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
-                      gTisch_5_RFID_Read                              USINT[0..9]    0 "                                                               *"    0    5   10    0    0    0         
+                      gTisch_5_RFID_Read                              USINT[0..9]    1 "                                                               *"    0    5   10    0    0    0         
                    gTisch_5_RFID_Read[0]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
                    gTisch_5_RFID_Read[1]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
                    gTisch_5_RFID_Read[2]                                    USINT    0 "                                                               *"    1    5    1   10    0    0         
@@ -78,12 +78,12 @@ Position X=0 Y=0 Width=0 Height=0 TabWidth Name=202 Type=106 Scope=134 Force=36
            gMerker_Tisch_6_Auftrag_Lesen                                     BOOL    0 "                                                               *"    0    1    1    2    0    0         
               gMerker_Tisch_6_RFID_Reset                                     BOOL    0 "                                                               *"    0    1    1    2    0    0         
             gMerker_Tisch_1_RFID_UID_STR                               STRING[24]    0 "                                                             '0'"    0    9   25    1    0    0         
-            gMerker_Tisch_2_RFID_UID_STR                               STRING[24]    0 "                                                             '0'"    0    9   25    1    0    0         
-            gMerker_Tisch_3_RFID_UID_STR                               STRING[24]    0 "                                      '224004001000129209053234'"    0    9   25    1    0    0         
+            gMerker_Tisch_2_RFID_UID_STR                               STRING[24]    0 "                                      '224004001000129209073161'"    0    9   25    1    0    0         
+            gMerker_Tisch_3_RFID_UID_STR                               STRING[24]    0 "                                                             '0'"    0    9   25    1    0    0         
             gMerker_Tisch_4_RFID_UID_STR                               STRING[24]    0 "                                                             '0'"    0    9   25    1    0    0         
-            gMerker_Tisch_5_RFID_UID_STR                               STRING[24]    0 "                                      '224004001000129209054121'"    0    9   25    1    0    0         
+            gMerker_Tisch_5_RFID_UID_STR                               STRING[24]    0 "                                      '224004001000129209031162'"    0    9   25    1    0    0         
             gMerker_Tisch_6_RFID_UID_STR                               STRING[24]    0 "                                                             '0'"    0    9   25    1    0    0         
             gMerker_Tisch_7_RFID_UID_STR                               STRING[24]    0 "                                                             '0'"    0    9   25    1    0    0         
             gMerker_Tisch_8_RFID_UID_STR                               STRING[24]    0 "                                                             '0'"    0    9   25    1    0    0         
-                      gTisch_6_RFID_Read                              USINT[0..9]    0 "                                                               *"    0    5   10    0    0    1         
+                      gTisch_6_RFID_Read                              USINT[0..9]    1 "                                                               *"    0    5   10    0    0    1         
                    gTisch_6_RFID_Read[0]                                    USINT    0 "                                                             128"    1    5    1   10    0    0         

+ 33 - 0
Diagnosis/Config1/5APC3100_KBU0_000/Tisch2.Main.PVM.dock

@@ -1,4 +1,37 @@
 WATCH Ver=2.00 PLCName=PLC1 CPUName=CPU TaskName=Tisch2 
 Position X=0 Y=0 Width=0 Height=0 TabWidth Name=150 Type=0 Scope=0 Force=0 Index=0 ASCIIString=0
                                     name                                     type force                                                            value level type len format place expand specs
+                                 Tisch_2                                    USINT    0 "                                                               0"    0    5    1   10    0    0         
+                                gTisch_2                              Tisch_2_Typ    0 "                                                               *"    0   24    1    0    0    1         
+                                     Cmd                              Tisch_2_Cmd    0 "                                                               *"    1   24    1    0    0    1         
+                                 Stopper                                    USINT    0 "                                                               0"    2    5    1   10    0    0         
+                              Vorstopper                                    USINT    0 "                                                               0"    2    5    1   10    0    0         
+                                  Status                           Tisch_2_Status    0 "                                                               *"    1   24    1    0    0    1         
+                                 Stopper                                    USINT    0 "                                                               2"    2    5    1   10    0    0         
+                              Vorstopper                                    USINT    0 "                                                               2"    2    5    1   10    0    0         
+                                  Inputs                           Tisch_2_Inputs    0 "                                                               *"    1   24    1    0    0    1         
+                     Stopper_ausgefahren                                     BOOL    1 "                                                            TRUE"    2    1    1    2    0    0         
+                     Stopper_eingefahren                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                  Vorstopper_ausgefahren                                     BOOL    1 "                                                            TRUE"    2    1    1    2    0    0         
+                  Vorstopper_eingefahren                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                          Vor_VorStopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                         Nach_Vorstopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                             Vor_Stopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                            Nach_Stopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                              Stausensor                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                                   Start                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                                 Outputs                          Tisch_2_Outputs    0 "                                                               *"    1   24    1    0    0    1         
+                       Stopper_ausfahren                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                       Stopper_einfahren                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
+                    Vorstopper_einfahren                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
+                    Vorstopper_ausfahren                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                             Lampe_Start                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
+                                   Times                            Tisch_2_Times    0 "                                                               *"    1   24    1    0    0    1         
+                         Stopper_ZeitRun                                    UDINT    0 "                                                               0"    2    7    1   10    0    0         
+                         Stopper_EinZeit                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                         Stopper_AusZeit                                     BOOL    0 "                                                            TRUE"    2    1    1    2    0    0         
+                      Vorstopper_EinZeit                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                      Vorstopper_ZeitRun                                    UDINT    0 "                                                               0"    2    7    1   10    0    0         
+                      Vorstopper_AusZeit                                     BOOL    0 "                                                            TRUE"    2    1    1    2    0    0         
+                           KMD_AUSFAHREN                                    USINT    0 "                                                               2"    0    5    1   10    0    0         
             gMerker_RFID_Tisch_2_gelesen                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         

+ 33 - 1
Diagnosis/Config1/5APC3100_KBU0_000/Tisch3.Main.PVM.dock

@@ -1,4 +1,36 @@
 WATCH Ver=2.00 PLCName=PLC1 CPUName=CPU TaskName=Tisch3 
-Position X=0 Y=0 Width=0 Height=0 TabWidth Name=150 Type=0 Scope=0 Force=0 Index=0 ASCIIString=0
+Position X=0 Y=0 Width=0 Height=0 TabWidth Name=150 Type=0 Scope=0 Force=0 Index=31 ASCIIString=0
                                     name                                     type force                                                            value level type len format place expand specs
+                                gTisch_3                              Tisch_3_Typ    0 "                                                               *"    0   24    1    0    0    1         
+                                     Cmd                              Tisch_3_Cmd    0 "                                                               *"    1   24    1    0    0    1         
+                                 Stopper                                    USINT    0 "                                                               0"    2    5    1   10    0    0         
+                              Vorstopper                                    USINT    0 "                                                               0"    2    5    1   10    0    0         
+                                  Status                           Tisch_3_Status    0 "                                                               *"    1   24    1    0    0    1         
+                                 Stopper                                    USINT    0 "                                                               2"    2    5    1   10    0    0         
+                              Vorstopper                                    USINT    0 "                                                               2"    2    5    1   10    0    0         
+                                  Inputs                           Tisch_3_Inputs    0 "                                                               *"    1   24    1    0    0    1         
+                     Stopper_ausgefahren                                     BOOL    1 "                                                            TRUE"    2    1    1    2    0    0         
+                     Stopper_eingefahren                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                  Vorstopper_ausgefahren                                     BOOL    1 "                                                            TRUE"    2    1    1    2    0    0         
+                  Vorstopper_eingefahren                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                          Vor_VorStopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                         Nach_Vorstopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                             Vor_Stopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                            Nach_Stopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                              Stausensor                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                                   Start                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                                 Outputs                          Tisch_3_Outputs    0 "                                                               *"    1   24    1    0    0    1         
+                       Stopper_ausfahren                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                       Stopper_einfahren                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
+                    Vorstopper_einfahren                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
+                    Vorstopper_ausfahren                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                             Lampe_Start                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
+                                   Times                            Tisch_3_Times    0 "                                                               *"    1   24    1    0    0    1         
+                         Stopper_ZeitRun                                    UDINT    0 "                                                               0"    2    7    1   10    0    0         
+                         Stopper_EinZeit                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                         Stopper_AusZeit                                     BOOL    0 "                                                            TRUE"    2    1    1    2    0    0         
+                      Vorstopper_EinZeit                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                      Vorstopper_ZeitRun                                    UDINT    0 "                                                               0"    2    7    1   10    0    0         
+                      Vorstopper_AusZeit                                     BOOL    0 "                                                            TRUE"    2    1    1    2    0    0         
+                                 Tisch_3                                    USINT    0 "                                                               0"    0    5    1   10    0    0         
             gMerker_RFID_Tisch_3_gelesen                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         

+ 1 - 1
Diagnosis/Config1/5APC3100_KBU0_000/Tisch5.Main.PVM.dock

@@ -1,5 +1,5 @@
 WATCH Ver=2.00 PLCName=PLC1 CPUName=CPU TaskName=Tisch5 
-Position X=0 Y=0 Width=0 Height=0 TabWidth Name=150 Type=0 Scope=0 Force=0 Index=5 ASCIIString=0
+Position X=0 Y=0 Width=0 Height=0 TabWidth Name=150 Type=0 Scope=0 Force=0 Index=21 ASCIIString=0
                                     name                                     type force                                                            value level type len format place expand specs
             gMerker_RFID_Tisch_5_gelesen                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         
                                  Tisch_5                                    USINT    0 "                                                               0"    0    5    1   10    0    0         

+ 27 - 24
Diagnosis/Config1/5APC3100_KBU0_000/Tisch6.Main.PVM.dock

@@ -1,28 +1,30 @@
 WATCH Ver=2.00 PLCName=PLC1 CPUName=CPU TaskName=Tisch6 
-Position X=0 Y=0 Width=0 Height=0 TabWidth Name=227 Type=96 Scope=76 Force=89 Index=53 ASCIIString=0
+Position X=0 Y=0 Width=0 Height=0 TabWidth Name=227 Type=96 Scope=76 Force=89 Index=1 ASCIIString=0
                                     name                                     type force                                                            value level type len format place expand specs
+                   Tisch_6_Halbautomatik                                    USINT    0 "                                                               0"    0    5    1   10    0    0         
+          gVK_Laser_Halbautomatik_Aussen                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         
                                 gTisch_6                              Tisch_6_Typ    0 "                                                               *"    0   24    1    0    0    1         
-                                     Cmd                              Tisch_6_Cmd    0 "                                                               *"    1   24    1    0    0    1         
-                                 Stopper                                    USINT    0 "                                                               0"    2    5    1   10    0    0         
-                              Vorstopper                                    USINT    0 "                                                               0"    2    5    1   10    0    0         
-                          Aushebeeinheit                                    USINT    0 "                                                               0"    2    5    1   10    0    0         
-                                  Status                           Tisch_6_Status    0 "                                                               *"    1   24    1    0    0    1         
-                                 Stopper                                    USINT    0 "                                                               2"    2    5    1   10    0    0         
-                              Vorstopper                                    USINT    0 "                                                               2"    2    5    1   10    0    0         
-                          Aushebeeinheit                                    USINT    0 "                                                             255"    2    5    1   10    0    0         
-                                  Inputs                           Tisch_6_Inputs    0 "                                                               *"    1   24    1    0    0    1         
-                     Stopper_ausgefahren                                     BOOL    1 "                                                            TRUE"    2    1    1    2    0    0         
-                     Stopper_eingefahren                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
-                  Vorstopper_ausgefahren                                     BOOL    1 "                                                            TRUE"    2    1    1    2    0    0         
-                  Vorstopper_eingefahren                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
-                          Vor_VorStopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
-                         Nach_Vorstopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
-                             Vor_Stopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
-                            Nach_Stopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
-                              Stausensor                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
-                                   Start                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
-              Aushebeeinheit_ausgefahren                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
-              Aushebeeinheit_eingefahren                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                                     Cmd                              Tisch_6_Cmd    0 "                                                               *"    1   24    1    0    0    0         
+                                 Stopper                                    USINT    0 "                                                               *"    2    5    1   10    0    0         
+                              Vorstopper                                    USINT    0 "                                                               *"    2    5    1   10    0    0         
+                          Aushebeeinheit                                    USINT    0 "                                                               *"    2    5    1   10    0    0         
+                                  Status                           Tisch_6_Status    0 "                                                               *"    1   24    1    0    0    0         
+                                 Stopper                                    USINT    0 "                                                               *"    2    5    1   10    0    0         
+                              Vorstopper                                    USINT    0 "                                                               *"    2    5    1   10    0    0         
+                          Aushebeeinheit                                    USINT    0 "                                                               *"    2    5    1   10    0    0         
+                                  Inputs                           Tisch_6_Inputs    0 "                                                               *"    1   24    1    0    0    0         
+                     Stopper_ausgefahren                                     BOOL    0 "                                                               *"    2    1    1    2    0    0         
+                     Stopper_eingefahren                                     BOOL    0 "                                                               *"    2    1    1    2    0    0         
+                  Vorstopper_ausgefahren                                     BOOL    0 "                                                               *"    2    1    1    2    0    0         
+                  Vorstopper_eingefahren                                     BOOL    0 "                                                               *"    2    1    1    2    0    0         
+                          Vor_VorStopper                                     BOOL    0 "                                                               *"    2    1    1    2    0    0         
+                         Nach_Vorstopper                                     BOOL    0 "                                                               *"    2    1    1    2    0    0         
+                             Vor_Stopper                                     BOOL    0 "                                                               *"    2    1    1    2    0    0         
+                            Nach_Stopper                                     BOOL    0 "                                                               *"    2    1    1    2    0    0         
+                              Stausensor                                     BOOL    0 "                                                               *"    2    1    1    2    0    0         
+                                   Start                                     BOOL    0 "                                                               *"    2    1    1    2    0    0         
+              Aushebeeinheit_ausgefahren                                     BOOL    0 "                                                               *"    2    1    1    2    0    0         
+              Aushebeeinheit_eingefahren                                     BOOL    0 "                                                               *"    2    1    1    2    0    0         
                                  Outputs                          Tisch_6_Outputs    0 "                                                               *"    1   24    1    0    0    1         
                        Stopper_ausfahren                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
                        Stopper_einfahren                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
@@ -44,7 +46,6 @@ Position X=0 Y=0 Width=0 Height=0 TabWidth Name=227 Type=96 Scope=76 Force=89 In
                       gDO_doppelt_lasern                                     BOOL    3 "                                                           FALSE"    0    1    1    2    0    0         
                          gDO_Start_Laser                                     BOOL    3 "                                                           FALSE"    0    1    1    2    0    0         
             gMerker_RFID_Tisch_6_gelesen                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         
-                                 Tisch_6                                    USINT    0 "                                                               0"    0    5    1   10    0    0         
                          Tisch_6_Manuell                                    USINT    0 "                                                               0"    0    5    1   10    0    0         
                  gMerker_Laserung_fertig                                     BOOL    0 "                                                            TRUE"    0    1    1    2    0    0         
                        Tisch_6_Automatik                                    USINT    0 "                                                               0"    0    5    1   10    0    0         
@@ -60,4 +61,6 @@ Position X=0 Y=0 Width=0 Height=0 TabWidth Name=227 Type=96 Scope=76 Force=89 In
                         gDI_Laser_fertig                                     BOOL    1 "                                                            TRUE"    0    1    1    2    0    0         
                gDI_keiner_Stoerung_Laser                                     BOOL    1 "                                                            TRUE"    0    1    1    2    0    0         
                  gMerker_Laser_Automatik                                     BOOL    0 "                                                            TRUE"    0    1    1    2    0    0         
-              gMerker_Debug_Test_Counter                                     UINT    0 "                                                               *"    0    6    1   10    0    0         
+              gMerker_Debug_Test_Counter                                     UINT    0 "                                                             134"    0    6    1   10    0    0         
+              gVK_Aushebeeinheit_Tisch_6                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         
+              gMerker_Tisch_6_Ausgehoben                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         

+ 34 - 1
Diagnosis/Config1/5APC3100_KBU0_000/Tisch7.Main.PVM.dock

@@ -1,4 +1,37 @@
 WATCH Ver=2.00 PLCName=PLC1 CPUName=CPU TaskName=Tisch7 
-Position X=0 Y=0 Width=0 Height=0 TabWidth Name=150 Type=0 Scope=0 Force=0 Index=0 ASCIIString=0
+Position X=0 Y=0 Width=0 Height=0 TabWidth Name=150 Type=0 Scope=0 Force=0 Index=31 ASCIIString=0
                                     name                                     type force                                                            value level type len format place expand specs
+                                gTisch_7                              Tisch_7_Typ    0 "                                                               *"    0   24    1    0    0    1         
+                                     Cmd                              Tisch_7_Cmd    0 "                                                               *"    1   24    1    0    0    1         
+                                 Stopper                                    USINT    0 "                                                               0"    2    5    1   10    0    0         
+                              Vorstopper                                    USINT    0 "                                                               0"    2    5    1   10    0    0         
+                                  Status                           Tisch_7_Status    0 "                                                               *"    1   24    1    0    0    1         
+                                 Stopper                                    USINT    0 "                                                               2"    2    5    1   10    0    0         
+                              Vorstopper                                    USINT    0 "                                                               2"    2    5    1   10    0    0         
+                                  Inputs                           Tisch_7_Inputs    0 "                                                               *"    1   24    1    0    0    1         
+                     Stopper_ausgefahren                                     BOOL    1 "                                                            TRUE"    2    1    1    2    0    0         
+                     Stopper_eingefahren                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                  Vorstopper_ausgefahren                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                  Vorstopper_eingefahren                                     BOOL    1 "                                                            TRUE"    2    1    1    2    0    0         
+                          Vor_VorStopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                         Nach_Vorstopper                                     BOOL    1 "                                                            TRUE"    2    1    1    2    0    0         
+                             Vor_Stopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                            Nach_Stopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                              Stausensor                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                                   Start                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         
+                                 Outputs                          Tisch_7_Outputs    0 "                                                               *"    1   24    1    0    0    1         
+                       Stopper_ausfahren                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                       Stopper_einfahren                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
+                    Vorstopper_einfahren                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
+                    Vorstopper_ausfahren                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                             Lampe_Start                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
+                                   Times                            Tisch_7_Times    0 "                                                               *"    1   24    1    0    0    1         
+                         Stopper_ZeitRun                                    UDINT    0 "                                                               0"    2    7    1   10    0    0         
+                         Stopper_EinZeit                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                         Stopper_AusZeit                                     BOOL    0 "                                                            TRUE"    2    1    1    2    0    0         
+                      Vorstopper_EinZeit                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                      Vorstopper_ZeitRun                                    UDINT    0 "                                                               0"    2    7    1   10    0    0         
+                      Vorstopper_AusZeit                                     BOOL    0 "                                                            TRUE"    2    1    1    2    0    0         
+                       gMerker_AC230V_ON                                     BOOL    0 "                                                            TRUE"    0    1    1    2    1    0         
+              lWarten_AC230V_Einschalten                                    UDINT    0 "                                                            5000"    0    7    1   10    1    0         
                                  Tisch_7                                    USINT    0 "                                                               0"    0    5    1   10    0    0         

+ 6 - 6
Diagnosis/Config1/5APC3100_KBU0_000/Zylinder_5.Main.PVM.dock

@@ -29,8 +29,8 @@ Position X=0 Y=0 Width=0 Height=0 TabWidth Name=150 Type=0 Scope=0 Force=113 Ind
                     Vorstopper_einfahren                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
                     Vorstopper_ausfahren                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
                              Lampe_Start                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
-                Aushebeeinheit_einfahren                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
-                Aushebeeinheit_ausfahren                                     BOOL    3 "                                                            TRUE"    2    1    1    2    0    0         
+                Aushebeeinheit_einfahren                                     BOOL    3 "                                                            TRUE"    2    1    1    2    0    0         
+                Aushebeeinheit_ausfahren                                     BOOL    3 "                                                           FALSE"    2    1    1    2    0    0         
                                    Times                            Tisch_6_Times    0 "                                                               *"    1   24    1    0    0    1         
                          Stopper_ZeitRun                                    UDINT    0 "                                                               0"    2    7    1   10    0    0         
                          Stopper_EinZeit                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
@@ -38,8 +38,8 @@ Position X=0 Y=0 Width=0 Height=0 TabWidth Name=150 Type=0 Scope=0 Force=113 Ind
                       Vorstopper_EinZeit                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
                       Vorstopper_ZeitRun                                    UDINT    0 "                                                               0"    2    7    1   10    0    0         
                       Vorstopper_AusZeit                                     BOOL    0 "                                                            TRUE"    2    1    1    2    0    0         
-                 Aushebeeinheit_ZeitWart                                    UDINT    0 "                                                             500"    2    7    1   10    0    0         
-                  Aushebeeinheit_EinZeit                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+                 Aushebeeinheit_ZeitWart                                    UDINT    0 "                                                               *"    2    7    1   10    0    0         
+                  Aushebeeinheit_EinZeit                                     BOOL    0 "                                                            TRUE"    2    1    1    2    0    0         
                   Aushebeeinheit_ZeitRun                                    UDINT    0 "                                                               0"    2    7    1   10    0    0         
-                  Aushebeeinheit_AusZeit                                     BOOL    0 "                                                            TRUE"    2    1    1    2    0    0         
-              gMerker_Tisch_6_Ausgehoben                                     BOOL    0 "                                                            TRUE"    0    1    1    2    0    0         
+                  Aushebeeinheit_AusZeit                                     BOOL    0 "                                                           FALSE"    2    1    1    2    0    0         
+              gMerker_Tisch_6_Ausgehoben                                     BOOL    0 "                                                           FALSE"    0    1    1    2    0    0         

+ 4 - 1
Diagnosis/Config1/5APC3100_KBU0_000/Zylinder_7.Main.PVM.dock

@@ -1,3 +1,6 @@
 WATCH Ver=2.00 PLCName=PLC1 CPUName=CPU TaskName=Zylinder_7 
-Position X=0 Y=0 Width=0 Height=0 TabWidth Name=150 Type=0 Scope=0 Force=0 Index=0 ASCIIString=0
+Position X=0 Y=0 Width=0 Height=0 TabWidth Name=150 Type=0 Scope=0 Force=0 Index=2 ASCIIString=0
                                     name                                     type force                                                            value level type len format place expand specs
+                                gTisch_8                              Tisch_8_Typ    0 "                                                               *"    0   24    1    0    0    1         
+                                  Inputs                           Tisch_8_Inputs    0 "                                                               *"    1   24    1    0    0    1         
+                             Vor_Stopper                                     BOOL    1 "                                                           FALSE"    2    1    1    2    0    0         

+ 176 - 205
Logical/Global.var

@@ -1,76 +1,176 @@
 VAR
 	VK_Stop : BOOL;
+	VK_Start : BOOL;
+	Tisch_8_RFID : USINT;
+	Tisch_8 : USINT;
+	Tisch_7_RFID : USINT;
+	Tisch_7 : USINT;
+	Tisch_6_RFID : USINT;
+	Tisch_6_Manuell : USINT;
+	Tisch_6_Halbautomatik : USINT;
+	Tisch_6_Automatik : USINT;
+	Tisch_5_RFID : USINT;
+	Tisch_5 : USINT;
+	Tisch_4_RFID : USINT;
+	Tisch_4 : USINT;
+	Tisch_3_RFID : USINT;
+	Tisch_3 : USINT;
+	Tisch_2_RFID : USINT;
+	Tisch_2 : USINT;
+	Tisch_1_RFID : USINT;
+	Tisch_1 : USINT;
+END_VAR
+VAR CONSTANT
+	STATUS_MITTELSTELLUNG : USINT := 3;
+	STATUS_FEHLERRESET : USINT := 50;
+	STATUS_ERROR : USINT := 200;
+	STATUS_EINGEFAHREN : USINT := 1;
+	STATUS_DRUCKLOS : USINT := 5;
+	STATUS_BUSY : USINT := 255;
+	STATUS_AUSGEFAHREN : USINT := 2;
+END_VAR
+VAR
+	Shutdown_URL : {REDUND_UNREPLICABLE} STRING[80]; (*Cech-Implement: Shutdown URL*)
+	Shutdown_picture : {REDUND_UNREPLICABLE} STRING[80];
+	Rot_blinken : USINT;
+	RFID_Schreiben : USINT;
+	OPCUA_TEST_1 : USINT;
+	OPCUATEST3 : STRING[80];
+	OPCUATEST2 : USINT;
+	Liftgate_oeffnen : USINT;
+	Liftgate : USINT;
+	Kurve_4 : USINT;
+	Kurve_3 : USINT;
+	Kurve_2 : USINT;
+	Kurve_1 : USINT;
+END_VAR
+VAR CONSTANT
+	KMD_STOP : USINT := 11;
+	KMD_START : USINT := 12;
+	KMD_MITTELSTELLUNG : USINT := 3;
+	KMD_FERTIG : USINT := 0;
+	KMD_EINFAHREN : USINT := 1;
+	KMD_DRUCKLOS : USINT := 5;
+	KMD_AUSFAHREN : USINT := 2;
+END_VAR
+VAR
+	i : USINT;
+	gVK_Vorstopper_Tisch_6 : BOOL;
+	gVK_Stopper_Tisch_6 : BOOL;
+	gVK_Start_Laser : BOOL;
+	gVK_Freigabe_manuell : BOOL; (*Cech-Comment: TAster auf dem Haupt-Panel; wird über OPC-UA übergeben*)
+	gVK_doppelt_Lasern : BOOL;
+	gVK_Aushebeeinheit_Tisch_6 : BOOL;
+	gVK_Absaugung : BOOL := TRUE; (*Cech-Implement: Zum Aktivieren und Deaktivieren der Absaugung über den Control-Panel-PC*)
+	gVK_Laser_Halbautomatik_Aussen : BOOL; (*Cech-Implement: gVK für OPCUA an Centurio, ob am Panel-PC Halbautomatik Zylinder-Außenseite oder -Innenseite eingestellt ist.*)
+	gTisch_8_RFID_Write : ARRAY[0..9] OF USINT;
+	gTisch_8_RFID_Read : ARRAY[0..9] OF USINT;
+	gTisch_8 : Tisch_8_Typ;
+	gTisch_7_RFID_Write : ARRAY[0..9] OF USINT;
+	gTisch_7_RFID_Read : ARRAY[0..9] OF USINT;
+	gTisch_7 : Tisch_7_Typ;
+	gTisch_6_RFID_Write : ARRAY[0..9] OF USINT;
+	gTisch_6_RFID_Read : ARRAY[0..9] OF USINT;
+	gTisch_6 : Tisch_6_Typ;
+	gTisch_5_RFID_Write : ARRAY[0..9] OF USINT;
+	gTisch_5_RFID_Read : ARRAY[0..9] OF USINT;
+	gTisch_5 : Tisch_5_Typ;
+	gTisch_4_RFID_Write : ARRAY[0..9] OF USINT;
+	gTisch_4_RFID_Read : ARRAY[0..9] OF USINT;
+	gTisch_4 : Tisch_4_Typ;
+	gTisch_3_RFID_Write : ARRAY[0..9] OF USINT;
+	gTisch_3_RFID_Read : ARRAY[0..9] OF USINT;
+	gTisch_3 : Tisch_3_Typ;
+	gTisch_2_RFID_Write : ARRAY[0..9] OF USINT;
+	gTisch_2_RFID_Read : ARRAY[0..9] OF USINT;
+	gTisch_2 : Tisch_2_Typ;
+	gTisch_1_RFID_Write : ARRAY[0..9] OF USINT;
+	gTisch_1_RFID_Read : ARRAY[0..9] OF USINT;
+	gTisch_1 : Tisch_1_Typ;
+END_VAR
+VAR RETAIN
+	gTaster_Tisch_8_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
+	gTaster_Tisch_7_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
+	gTaster_Tisch_6_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
+	gTaster_Tisch_5_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
+	gTaster_Tisch_4_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
+	gTaster_Tisch_3_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
+	gTaster_Tisch_2_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
+	gTaster_Tisch_1_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
+END_VAR
+VAR
+	gTaster_Liftgate_verriegeln : BOOL;
+	gTaster_Liftgate_oeffnen : BOOL;
+	gTaster_Liftgate_Leuchte_Rot : BOOL;
+	gTaster_Liftgate_Leuchte_Gruen : BOOL;
+	gMerker_Tisch_8_STRING_HELPER : STRING[24]; (*Cech-Implement*)
+	gMerker_Tisch_8_RFID_Vorhanden : BOOL;
+	gMerker_Tisch_8_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
+	gMerker_Tisch_8_RFID_Reset : BOOL;
+	gMerker_Tisch_8_lesen_fertig : BOOL;
+	gMerker_Tisch_8_Auftrag_Lesen : BOOL;
+	gMerker_Tisch_8_alles_nullen : BOOL;
+	gMerker_Tisch_7_STRING_HELPER : STRING[24]; (*Cech-Implement*)
+	gMerker_Tisch_7_RFID_Vorhanden : BOOL;
+	gMerker_Tisch_7_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
+	gMerker_Tisch_7_RFID_Reset : BOOL;
+	gMerker_Tisch_7_lesen_fertig : BOOL;
+	gMerker_Tisch_7_Auftrag_Lesen : BOOL;
+	gMerker_Tisch_7_alles_nullen : BOOL;
+	gMerker_Tisch_6_STRING_HELPER : STRING[24]; (*Cech-Implement*)
+	gMerker_Tisch_6_RFID_Vorhanden : BOOL;
+	gMerker_Tisch_6_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
+	gMerker_Tisch_6_RFID_Reset : BOOL;
+	gMerker_Tisch_6_lesen_fertig : BOOL;
+	gMerker_Tisch_6_Ausgehoben : BOOL; (*Cech-Implement*)
+	gMerker_Tisch_6_Auftrag_Lesen : BOOL;
+	gMerker_Tisch_6_alles_nullen : BOOL;
+	gMerker_Tisch_5_STRING_HELPER : STRING[24]; (*Cech-Implement*)
+	gMerker_Tisch_5_RFID_Vorhanden : BOOL;
+	gMerker_Tisch_5_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
 	gMerker_Tisch_5_RFID_Reset : BOOL;
 	gMerker_Tisch_5_lesen_fertig : BOOL;
 	gMerker_Tisch_5_Auftrag_Lesen : BOOL;
 	gMerker_Tisch_5_alles_nullen : BOOL;
+	gMerker_Tisch_4_STRING_HELPER : STRING[24]; (*Cech-Implement*)
 	gMerker_Tisch_4_RFID_Vorhanden : BOOL;
+	gMerker_Tisch_4_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
 	gMerker_Tisch_4_RFID_Reset : BOOL;
 	gMerker_Tisch_4_lesen_fertig : BOOL;
 	gMerker_Tisch_4_Auftrag_Lesen : BOOL;
 	gMerker_Tisch_4_alles_nullen : BOOL;
+	gMerker_Tisch_3_STRING_HELPER : STRING[24]; (*Cech-Implement*)
 	gMerker_Tisch_3_RFID_Vorhanden : BOOL;
+	gMerker_Tisch_3_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
 	gMerker_Tisch_3_RFID_Reset : BOOL;
 	gMerker_Tisch_3_lesen_fertig : BOOL;
 	gMerker_Tisch_3_Auftrag_Lesen : BOOL;
 	gMerker_Tisch_3_alles_nullen : BOOL;
+	gMerker_Tisch_2_STRING_HELPER : STRING[24]; (*Cech-Implement*)
 	gMerker_Tisch_2_RFID_Vorhanden : BOOL;
+	gMerker_Tisch_2_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
 	gMerker_Tisch_2_RFID_Reset : BOOL;
 	gMerker_Tisch_2_lesen_fertig : BOOL;
-	gMerker_Tisch_5_RFID_Vorhanden : BOOL;
 	gMerker_Tisch_2_Auftrag_Lesen : BOOL;
-	gMerker_Tisch_6_alles_nullen : BOOL;
-	gMerker_Tisch_6_Ausgehoben : BOOL; (*Cech-Implement*)
-	gTaster_Liftgate_verriegeln : BOOL;
-	gTaster_Liftgate_oeffnen : BOOL;
-	gTaster_Liftgate_Leuchte_Rot : BOOL;
-	gTaster_Liftgate_Leuchte_Gruen : BOOL;
-	gMerker_Tisch_8_RFID_Vorhanden : BOOL;
-	gMerker_Tisch_8_RFID_Reset : BOOL;
-	gMerker_Tisch_8_lesen_fertig : BOOL;
-	gMerker_Tisch_8_Auftrag_Lesen : BOOL;
-	gMerker_Tisch_8_alles_nullen : BOOL;
-	gMerker_Tisch_7_RFID_Vorhanden : BOOL;
-	gMerker_Tisch_7_RFID_Reset : BOOL;
-	gDI_Laser_Automatik : BOOL;
-	gMerker_Tisch_7_Auftrag_Lesen : BOOL;
-	gMerker_Tisch_7_alles_nullen : BOOL;
-	gMerker_Tisch_6_RFID_Vorhanden : BOOL;
-	gMerker_Tisch_6_RFID_Reset : BOOL;
-	gMerker_Tisch_6_lesen_fertig : BOOL;
-	gMerker_Tisch_6_Auftrag_Lesen : BOOL;
-END_VAR
-VAR RETAIN
-	gTaster_Tisch_1_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
-END_VAR
-VAR
 	gMerker_Tisch_2_alles_nullen : BOOL;
-	gMerker_Tisch_1_RFID_Reset : BOOL;
-	gMerker_Laser_Automatik : BOOL;
-	gMerker_Laserung_fertig : BOOL; (*Cech-Implement: Dient zur Speicherung, wenn die erste Laserung von einem Doppelzylinder fertig ist und wird von der LAser-SPS über deren Output "Extern_Fertig" an den LAser-SPS-Input "gDI_Laser_fertig" übergeben*)
-	gMerker_block_RFID_read_Tisch_6 : BOOL;
-	gDO_Start_Laser : BOOL;
-	gDO_Motor_K8 : BOOL;
-	gDO_Motor_K7 : BOOL;
-	gDO_Motor_K6 : BOOL;
-	gDO_Motor_K5 : BOOL;
-	gDO_Motor_K4 : BOOL;
-	gDO_Motor_K3 : BOOL;
-	gDO_Motor_K2 : BOOL;
-	gDO_Motor_K1 : BOOL;
-	gDO_Laser_Seitentuer_oeffnen : BOOL;
-	gDO_Laser_Absaugung : BOOL;
-	gDO_doppelt_lasern : BOOL;
-	gDI_Laser_Manuell : BOOL;
-	gDI_Laser_fertig : BOOL;
-	gMerker_Laser_Doppelzylinder : BOOL; (*Cech-Implement: Centurio fordert aus dem Produktcode eine Doppellaserung für einen Doppelzylinder*)
+	gMerker_Tisch_1_STRING_HELPER : STRING[24]; (*Cech-Implement*)
 	gMerker_Tisch_1_RFID_Vorhanden : BOOL;
-	gMerker_Laser_Einstellen_fertig : BOOL; (*Cech-Implement: Laser ist fertig eingestellt mit LAserfile und Seriennummer und bereit für das Startsignal von Linien-SPS "gVK_Start_Laser"*)
-	gMerker_Laser_Manuell : BOOL;
+	gMerker_Tisch_1_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
+	gMerker_Tisch_1_RFID_Reset : BOOL;
 	gMerker_Tisch_1_lesen_fertig : BOOL;
 	gMerker_Tisch_1_Auftrag_Lesen : BOOL;
 	gMerker_Tisch_1_alles_nullen : BOOL;
 	gMerker_Stop_an_Kurve2 : BOOL;
+	gMerker_Shutdown : {REDUND_UNREPLICABLE} BOOL; (*Cech-Implement: Shutdown aller Stations-PCs*)
+	gMerker_Schreibe_Traegernummer : USINT;
+	gMerker_RFID_Value_Tisch_8 : USINT;
+	gMerker_RFID_Value_Tisch_7 : USINT;
+	gMerker_RFID_Value_Tisch_6 : USINT;
+	gMerker_RFID_Value_Tisch_5 : USINT;
+	gMerker_RFID_Value_Tisch_4 : USINT;
+	gMerker_RFID_Value_Tisch_3 : USINT;
+	gMerker_RFID_Value_Tisch_2 : USINT;
+	gMerker_RFID_Value_Tisch_1 : USINT;
 	gMerker_RFID_Tisch_8_gelesen : BOOL;
 	gMerker_RFID_Tisch_7_gelesen : BOOL;
 	gMerker_RFID_Tisch_6_gelesen : BOOL;
@@ -79,171 +179,42 @@ VAR
 	gMerker_RFID_Tisch_3_gelesen : BOOL;
 	gMerker_RFID_Tisch_2_gelesen : BOOL;
 	gMerker_RFID_Tisch_1_gelesen : BOOL;
+	gMerker_OPCUA_Seriennummer_Test : USINT;
 	gMerker_OPCUA_Schreibauftrag : BOOL;
 	gMerker_neuen_Befehl_schreiben : BOOL;
 	gMerker_Motoren_ein : BOOL;
 	gMerker_Liftgate_Leuchte_Rot : BOOL;
 	gMerker_Liftgate_entriegelt : BOOL;
+	gMerker_Laser_Manuell : BOOL;
 	gMerker_Laser_Halbautomatik : BOOL;
-END_VAR
-VAR RETAIN
-	gTaster_Tisch_2_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
-END_VAR
-VAR
-	gMerker_Tisch_7_lesen_fertig : BOOL;
-END_VAR
-VAR RETAIN
-	gTaster_Tisch_4_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
-END_VAR
-VAR
-	VK_Start : BOOL;
-END_VAR
-VAR RETAIN
-	gTaster_Tisch_3_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
-END_VAR
-VAR
-	gVK_Vorstopper_Tisch_6 : BOOL;
-	gVK_Stopper_Tisch_6 : BOOL;
-	gVK_Start_Laser : BOOL;
-	gVK_Freigabe_manuell : BOOL; (*Cech-Comment: TAster auf dem Haupt-Panel; wird über OPC-UA übergeben*)
-	gVK_doppelt_Lasern : BOOL;
-	gVK_Aushebeeinheit_Tisch_6 : BOOL;
-	gVK_Absaugung : BOOL := TRUE; (*Cech-Implement: Zum Aktivieren und Deaktivieren der Absaugung über den Control-Panel-PC*)
-	gDI_keiner_Stoerung_Laser : BOOL;
-END_VAR
-VAR RETAIN
-	gTaster_Tisch_5_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
-	gTaster_Tisch_6_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
-	gTaster_Tisch_8_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
-	gTaster_Tisch_7_aus : BOOL; (*Cech-Comment: Das sind die Soft-Switches am Hauptpanel, wo die jeweilige Station aktiviert und deaktiviert werden kann*)
-END_VAR
-VAR
-	gError : ARRAY[0..99] OF BOOL;
-	gKurve_1 : Kurve_1_Typ;
-	gKurve_2 : Kurve_2_Typ;
-	gKurve_3 : Kurve_3_Typ;
-	gKurve_4 : Kurve_4_Typ;
-	gMerker_Tisch_3_STRING_HELPER : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_4_STRING_HELPER : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_8_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_3_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_8_STRING_HELPER : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_5_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_5_STRING_HELPER : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_2_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_4_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_6_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_6_STRING_HELPER : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_1_STRING_HELPER : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_1_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_7_RFID_UID_STR : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_7_STRING_HELPER : STRING[24]; (*Cech-Implement*)
-	gMerker_Tisch_2_STRING_HELPER : STRING[24]; (*Cech-Implement*)
-	gMerker_Shutdown : {REDUND_UNREPLICABLE} BOOL; (*Cech-Implement: Shutdown aller Stations-PCs*)
-	Shutdown_URL : WSTRING[80]; (*Cech-Implement: Shutdown URL*)
-	OPCUATEST3 : STRING[80];
-	gTisch_1 : Tisch_1_Typ;
-	gTisch_2 : Tisch_2_Typ;
-	gTisch_3 : Tisch_3_Typ;
-	gTisch_4 : Tisch_4_Typ;
-	gTisch_5 : Tisch_5_Typ;
-	gTisch_6 : Tisch_6_Typ;
-	gTisch_7 : Tisch_7_Typ;
-	gTisch_8 : Tisch_8_Typ;
+	gMerker_Laser_Einstellen_fertig : BOOL; (*Cech-Implement: Laser ist fertig eingestellt mit LAserfile und Seriennummer und bereit für das Startsignal von Linien-SPS "gVK_Start_Laser"*)
+	gMerker_Laser_Doppelzylinder : BOOL; (*Cech-Implement: Centurio fordert aus dem Produktcode eine Doppellaserung für einen Doppelzylinder*)
+	gMerker_Laser_Automatik : BOOL;
+	gMerker_Laserung_fertig : BOOL; (*Cech-Implement: Dient zur Speicherung, wenn die erste Laserung von einem Doppelzylinder fertig ist und wird von der LAser-SPS über deren Output "Extern_Fertig" an den LAser-SPS-Input "gDI_Laser_fertig" übergeben*)
 	gMerker_Debug_Test_Counter_RFID : UINT; (*Cech-Comment: Variable zum Debuggen, Testen der RFID*)
 	gMerker_Debug_Test_Counter : UINT; (*Cech-Comment: Variable zum Debuggen, Testen*)
-	Tisch_2 : USINT;
-	Tisch_1_RFID : USINT;
-	Tisch_1 : USINT;
-END_VAR
-VAR CONSTANT
-	STATUS_MITTELSTELLUNG : USINT := 3;
-	STATUS_ERROR : USINT := 200;
-	STATUS_EINGEFAHREN : USINT := 1;
-	STATUS_DRUCKLOS : USINT := 5;
-	STATUS_BUSY : USINT := 255;
-	STATUS_AUSGEFAHREN : USINT := 2;
-END_VAR
-VAR
-	gMerker_OPCUA_Seriennummer_Test : USINT;
-	Rot_blinken : USINT;
-END_VAR
-VAR CONSTANT
-	STATUS_FEHLERRESET : USINT := 50;
-END_VAR
-VAR
-	Tisch_3_RFID : USINT;
-	Tisch_8_RFID : USINT;
-	Tisch_4 : USINT;
-	Tisch_8 : USINT;
 	gMerker_Cech_Test_Counter : USINT;
-	Tisch_3 : USINT;
-	Tisch_7_RFID : USINT;
-	Tisch_7 : USINT;
-	Tisch_6_RFID : USINT;
-	Tisch_6_Manuell : USINT;
-	Tisch_6_Automatik : USINT;
-	Tisch_6 : USINT;
-	RFID_Schreiben : USINT;
-	Tisch_5_RFID : USINT;
-	Tisch_5 : USINT;
-	Tisch_4_RFID : USINT;
-	Tisch_2_RFID : USINT;
-	gMerker_Schreibe_Traegernummer : USINT;
-END_VAR
-VAR CONSTANT
-	KMD_START : USINT := 12;
-END_VAR
-VAR
-	OPCUATEST2 : USINT;
-	i : USINT;
-END_VAR
-VAR CONSTANT
-	KMD_AUSFAHREN : USINT := 2;
-END_VAR
-VAR
-	OPCUA_TEST_1 : USINT;
-END_VAR
-VAR CONSTANT
-	KMD_EINFAHREN : USINT := 1;
-	KMD_FERTIG : USINT := 0;
-	KMD_MITTELSTELLUNG : USINT := 3;
-	KMD_STOP : USINT := 11;
-END_VAR
-VAR
-	Kurve_1 : USINT;
-	Kurve_2 : USINT;
-	Kurve_3 : USINT;
-END_VAR
-VAR CONSTANT
-	KMD_DRUCKLOS : USINT := 5;
-END_VAR
-VAR
-	gMerker_RFID_Value_Tisch_7 : USINT;
-	gMerker_RFID_Value_Tisch_8 : USINT;
-	Liftgate_oeffnen : USINT;
-	Kurve_4 : USINT;
-	gMerker_RFID_Value_Tisch_1 : USINT;
-	Liftgate : USINT;
-	gMerker_RFID_Value_Tisch_3 : USINT;
-	gMerker_RFID_Value_Tisch_4 : USINT;
-	gMerker_RFID_Value_Tisch_5 : USINT;
-	gMerker_RFID_Value_Tisch_6 : USINT;
-	gMerker_RFID_Value_Tisch_2 : USINT;
-	gTisch_5_RFID_Read : ARRAY[0..9] OF USINT;
-	gTisch_2_RFID_Write : ARRAY[0..9] OF USINT;
-	gTisch_3_RFID_Read : ARRAY[0..9] OF USINT;
-	gTisch_3_RFID_Write : ARRAY[0..9] OF USINT;
-	gTisch_4_RFID_Read : ARRAY[0..9] OF USINT;
-	gTisch_4_RFID_Write : ARRAY[0..9] OF USINT;
-	gTisch_5_RFID_Write : ARRAY[0..9] OF USINT;
-	gTisch_8_RFID_Read : ARRAY[0..9] OF USINT;
-	gTisch_6_RFID_Write : ARRAY[0..9] OF USINT;
-	gTisch_7_RFID_Read : ARRAY[0..9] OF USINT;
-	gTisch_7_RFID_Write : ARRAY[0..9] OF USINT;
-	gTisch_8_RFID_Write : ARRAY[0..9] OF USINT;
-	gTisch_1_RFID_Write : ARRAY[0..9] OF USINT;
-	gTisch_1_RFID_Read : ARRAY[0..9] OF USINT;
-	gTisch_6_RFID_Read : ARRAY[0..9] OF USINT;
-	gTisch_2_RFID_Read : ARRAY[0..9] OF USINT;
+	gMerker_block_RFID_read_Tisch_6 : BOOL;
+	gKurve_4 : Kurve_4_Typ;
+	gKurve_3 : Kurve_3_Typ;
+	gKurve_2 : Kurve_2_Typ;
+	gKurve_1 : Kurve_1_Typ;
+	gError : ARRAY[0..99] OF BOOL;
+	gDO_Start_Laser : BOOL;
+	gDO_Motor_K8 : BOOL;
+	gDO_Motor_K7 : BOOL;
+	gDO_Motor_K6 : BOOL;
+	gDO_Motor_K5 : BOOL;
+	gDO_Motor_K4 : BOOL;
+	gDO_Motor_K3 : BOOL;
+	gDO_Motor_K2 : BOOL;
+	gDO_Motor_K1 : BOOL;
+	gDO_Laser_Seitentuer_oeffnen : BOOL;
+	gDO_Laser_Absaugung : BOOL;
+	gDO_doppelt_lasern : BOOL;
+	gDO_AC230V_Steckdose : BOOL;
+	gDI_Laser_Manuell : BOOL;
+	gDI_Laser_fertig : BOOL;
+	gDI_Laser_Automatik : BOOL;
+	gDI_keiner_Stoerung_Laser : BOOL;
 END_VAR

+ 7 - 2
Logical/Main/Main.st

@@ -1,7 +1,7 @@
 
 PROGRAM _INIT
 	(* Insert code here *)
-	 
+	Shutdown_picture := 'Media/Shutdown.jpg';
 END_PROGRAM
 
 PROGRAM _CYCLIC
@@ -12,6 +12,7 @@ PROGRAM _CYCLIC
 	gDO_Start_Laser;
 	gMerker_Shutdown;
 	
+	
 	IF VK_Start = TRUE THEN
 		gMerker_Motoren_ein := TRUE;
 		VK_Start := FALSE;
@@ -45,7 +46,11 @@ PROGRAM _CYCLIC
 	END_IF
 	
 	IF gMerker_Shutdown = TRUE THEN
-		Shutdown_URL := "https://centurio.evva.com/services/healthmonitor/shutdown/all.php";
+		Shutdown_URL := 'https://centurio.evva.com/services/healthmonitor/shutdown/all.php';
+		Shutdown_picture := 'Media/Shutdown_done.jpg';
+	ELSIF gMerker_Shutdown = FALSE THEN 	//Only for having the possibility in the Online-mode of Automation Studio; no Widget on the panel-PC
+		Shutdown_URL := '';
+		Shutdown_picture := 'Media/Shutdown.jpg';
 	END_IF
 	
 

+ 93 - 34
Logical/TischProgramme/Tisch6/Main.st

@@ -1,7 +1,7 @@
 
 PROGRAM _INIT
 
-	Tisch_6 := 0;
+	Tisch_6_Halbautomatik := 0;
 	Tisch_6_Manuell := 0;
 	Tisch_6_Automatik :=0;			//Cech-Implement
 	
@@ -13,6 +13,7 @@ PROGRAM _INIT
 	
 	gMerker_Laser_Einstellen_fertig := FALSE; 	//Cech-Implement
 	gMerker_Laserung_fertig := TRUE; 	//Cech-Implement
+	gVK_Laser_Halbautomatik_Aussen := FALSE;
 		
 END_PROGRAM
 
@@ -81,8 +82,9 @@ PROGRAM _CYCLIC
 		gTisch_6.Cmd.Aushebeeinheit := KMD_EINFAHREN;
 		gMerker_RFID_Tisch_6_gelesen := TRUE;		
 		Tisch_6_Automatik := 0;
-		Tisch_6 := 0;
+		Tisch_6_Halbautomatik := 0;
 		Tisch_6_Manuell := 0;
+		gVK_Laser_Halbautomatik_Aussen := FALSE;
 	END_IF
 	
 	
@@ -110,11 +112,11 @@ PROGRAM _CYCLIC
 	CASE Tisch_6_Manuell OF		//Cech-Comment: Handbetrieb (meiner Meinung nach nicht sauber, Fehler drinnen)
 		
 		0:		// Cech-Comment: Ich schätze, dass hier der manuelle Laserbetrieb initiiert wird, indem eine WST-"Beladung" initiiert wird (IF: WST in LASer und wird ausgefahren, ELSE-IF: Kein WSt in LAser)
-			IF gMerker_Laser_Manuell = TRUE AND gMerker_Laser_Halbautomatik = FALSE AND gMerker_Laser_Automatik = FALSE AND gTisch_6.Inputs.Vor_Stopper = TRUE AND Tisch_6 = 0 THEN	
+			IF gMerker_Laser_Manuell = TRUE AND gMerker_Laser_Halbautomatik = FALSE AND gMerker_Laser_Automatik = FALSE AND gTisch_6.Inputs.Vor_Stopper = TRUE AND Tisch_6_Halbautomatik = 0 THEN	
 				gTisch_6.Cmd.Aushebeeinheit := KMD_EINFAHREN;
 				gTisch_6.Cmd.Stopper := KMD_EINFAHREN;
 				Tisch_6_Manuell := 10;
-			ELSIF gMerker_Laser_Manuell = TRUE AND gMerker_Laser_Halbautomatik = FALSE AND gMerker_Laser_Automatik = FALSE AND gTisch_6.Inputs.Vor_Stopper = FALSE AND Tisch_6 = 0 THEN
+			ELSIF gMerker_Laser_Manuell = TRUE AND gMerker_Laser_Halbautomatik = FALSE AND gMerker_Laser_Automatik = FALSE AND gTisch_6.Inputs.Vor_Stopper = FALSE AND Tisch_6_Halbautomatik = 0 THEN
 				gTisch_6.Cmd.Aushebeeinheit := KMD_AUSFAHREN;
 				gTisch_6.Cmd.Stopper := KMD_AUSFAHREN;
 				gTisch_6.Cmd.Vorstopper := KMD_AUSFAHREN;
@@ -156,32 +158,41 @@ PROGRAM _CYCLIC
 	END_CASE
 	
 	
-	CASE Tisch_6 OF		//Cech-Comment: Halbautomatik; Hier wird ein WST eingefahren bzw. auch ausgefahren;
+	CASE Tisch_6_Halbautomatik OF		//Cech-Comment: Halbautomatik; Hier wird ein WST eingefahren bzw. auch ausgefahren;
 
 		0:		//Cech-Comment: Wenn ein WST vor dem LAser wartet und der Stausensor nicht anschlägt, aber der RFID gelesen wurde, wird die Aushebeeinheit hochgefahren (offensichtlich befindet sich ein WST in der Station
 			IF gMerker_Laser_Manuell = FALSE AND gMerker_Laser_Halbautomatik = TRUE AND gMerker_Laser_Automatik = FALSE AND Tisch_6_Manuell = 0 AND gTisch_6.Inputs.Vor_VorStopper = TRUE AND gTisch_6.Inputs.Vor_Stopper = TRUE AND gTisch_6.Inputs.Stausensor = FALSE AND gTaster_Tisch_6_aus = FALSE (*AND gMerker_RFID_Tisch_6_gelesen = TRUE *) THEN
 				gMerker_Debug_Test_Counter := 11;
+				//				IF gVK_Laser_Halbautomatik_Aussen = TRUE THEN							//Cech-Implement
+				//					gTisch_6.Cmd.Aushebeeinheit := KMD_EINFAHREN;
+				//					gTisch_6.Cmd.Stopper := KMD_EINFAHREN;					
+				//				END_IF																	//Cech-Implement
 				gTisch_6.Cmd.Aushebeeinheit := KMD_AUSFAHREN;
 				gMerker_RFID_Tisch_6_gelesen := FALSE;
-				Tisch_6 := 10;
+				Tisch_6_Halbautomatik := 10;
 				//Cech-Comment: Wen kein WST wartet aber RFID gelesen wurde, dann wird auch die Aushebeeinheit ausgefahren (offensichtlich befindet sich ein WST in der Station)
 			ELSIF gMerker_Laser_Manuell = FALSE AND gMerker_Laser_Halbautomatik = TRUE AND gMerker_Laser_Automatik = FALSE AND Tisch_6_Manuell = 0 AND gTisch_6.Inputs.Vor_VorStopper = FALSE AND gTisch_6.Inputs.Vor_Stopper = TRUE AND gTisch_6.Inputs.Stausensor = FALSE AND gTaster_Tisch_6_aus = FALSE (*AND gMerker_RFID_Tisch_6_gelesen = TRUE*) THEN
 				gMerker_Debug_Test_Counter := 12;
+				//		IF gVK_Laser_Halbautomatik_Aussen = TRUE THEN							//Cech-Implement
+				//			gTisch_6.Cmd.Aushebeeinheit := KMD_EINFAHREN;
+		//			gTisch_6.Cmd.Stopper := KMD_EINFAHREN;
+		//			gMerker_Debug_Test_Counter := 233;
+		//		END_IF																	//Cech-Implement
 				gTisch_6.Cmd.Aushebeeinheit := KMD_AUSFAHREN;
 				gMerker_RFID_Tisch_6_gelesen := FALSE; 
-				Tisch_6 := 10;
+				Tisch_6_Halbautomatik := 10;
 				//Cech-Comment: Wenn kein WST in der Station, aber einer davor, dann werden die Sietentüren geöffnet und der Vorstopper wird freigegeben
 			ELSIF gMerker_Laser_Manuell = FALSE AND gMerker_Laser_Halbautomatik = TRUE AND gMerker_Laser_Automatik = FALSE AND Tisch_6_Manuell = 0 AND gTisch_6.Inputs.Vor_VorStopper = TRUE AND gTisch_6.Inputs.Vor_Stopper = FALSE AND gTaster_Tisch_6_aus = FALSE THEN
 				gMerker_Debug_Test_Counter := 13;
 				gDO_Laser_Seitentuer_oeffnen := TRUE;
 				gTisch_6.Cmd.Vorstopper := KMD_EINFAHREN;
-				Tisch_6 := 200; /// war 110
+				Tisch_6_Halbautomatik := 200; /// war 110
 				//Cech-Comment: Wenn entweder Vorstopper oder Stopper eingefahren sind, dann werden beide wieder ausgefahren
 			ELSIF gMerker_Laser_Manuell = FALSE AND gMerker_Laser_Halbautomatik = TRUE AND gMerker_Laser_Automatik = FALSE AND Tisch_6_Manuell = 0 AND gTaster_Tisch_6_aus = FALSE AND (gTisch_6.Inputs.Stopper_eingefahren = TRUE OR gTisch_6.Inputs.Vorstopper_eingefahren = TRUE) THEN
 				gMerker_Debug_Test_Counter := 14;
 				gTisch_6.Cmd.Stopper := KMD_AUSFAHREN;
 				gTisch_6.Cmd.Vorstopper := KMD_AUSFAHREN;
-				Tisch_6 := 0;
+				Tisch_6_Halbautomatik := 0;
 			END_IF		
 		
 			//
@@ -191,49 +202,88 @@ PROGRAM _CYCLIC
 				gMerker_Debug_Test_Counter := 110;
 				gDO_Start_Laser := TRUE;
 				gDO_Laser_Seitentuer_oeffnen := FALSE; //!!!!!!!!!!!!!!!!!!!!!!Cech-Comment: Könnte mir vorstellen, dass hier ein FALSE hergehört und unter 20: dann gDO_Laser_Seitentuer_oeffnen := TRUE; das müsste ich ausprobieren
-				Tisch_6 := 20;
+				Tisch_6_Halbautomatik := 20;
 			END_IF
 		
+			
+			
+			//			IF gVK_Laser_Halbautomatik_Aussen = TRUE THEN
+//				IF (*gTisch_6.Status.Aushebeeinheit = STATUS_AUSGEFAHREN*) gTisch_6.Outputs.Aushebeeinheit_einfahren = TRUE AND gTisch_6.Outputs.Aushebeeinheit_ausfahren = FALSE  THEN
+//				gMerker_Debug_Test_Counter := 222;
+//				gDO_Start_Laser := TRUE;
+//				gDO_Laser_Seitentuer_oeffnen := FALSE; //!!!!!!!!!!!!!!!!!!!!!!Cech-Comment: Könnte mir vorstellen, dass hier ein FALSE hergehört und unter 20: dann gDO_Laser_Seitentuer_oeffnen := TRUE; das müsste ich ausprobieren
+//				Tisch_6_Halbautomatik := 20;
+//				END_IF
+//			ELSIF gVK_Laser_Halbautomatik_Aussen = FALSE THEN
+//				gMerker_Debug_Test_Counter := 223;
+//				gDO_Start_Laser := TRUE;
+//				gDO_Laser_Seitentuer_oeffnen := FALSE; 
+//				gTisch_6.Cmd.Stopper := KMD_EINFAHREN;
+//				Tisch_6_Halbautomatik := 20;
+//			END_IF
+			
 		20:		//Cech-Comment: Wenn der grüne TAster gedrückt wurde (Offensichtlich ist das LAsern beendet und der WST kann ausgefahren werden) dann wird der WST ausgefahren
 			IF gTisch_6.Inputs.Start = TRUE THEN		//Cech-Comment: Dieser Input ist der grüne Taster unter dem Panal-PC, der HW-mäßig auf den Input 0 der 16 Input-Kanäle des Input-Moduls verdrahtet ist
-				gMerker_Debug_Test_Counter := 120;
+				//gMerker_Debug_Test_Counter := 120;
 				gDO_Start_Laser := FALSE;
 				gDO_Laser_Absaugung := FALSE;
 				gDO_Laser_Seitentuer_oeffnen := TRUE; //!!!!!!!!!!!!!!!!!!!!!!Cech-Comment: Könnte mir vorstellen, dass hier ein TRUE hergehört und unter 10: dann gDO_Laser_Seitentuer_oeffnen := FALSE; das müsste ich ausprobieren
 				gTisch_6.Cmd.Aushebeeinheit := KMD_EINFAHREN;
-				Tisch_6 := 30;
+				gVK_Laser_Halbautomatik_Aussen := FALSE;
+				Tisch_6_Halbautomatik := 30;
+			END_IF
+			IF gVK_Laser_Halbautomatik_Aussen = TRUE THEN
+				gTisch_6.Cmd.Aushebeeinheit := KMD_EINFAHREN;
+				gTisch_6.Cmd.Stopper := KMD_EINFAHREN;					
+				IF (*gTisch_6.Status.Aushebeeinheit = STATUS_AUSGEFAHREN*) gTisch_6.Outputs.Aushebeeinheit_einfahren = TRUE AND gTisch_6.Outputs.Aushebeeinheit_ausfahren = FALSE  THEN
+					gMerker_Debug_Test_Counter := 227;
+					gDO_Start_Laser := TRUE;
+					gDO_Laser_Seitentuer_oeffnen := FALSE; //!!!!!!!!!!!!!!!!!!!!!!Cech-Comment: Könnte mir vorstellen, dass hier ein FALSE hergehört und unter 20: dann gDO_Laser_Seitentuer_oeffnen := TRUE; das müsste ich ausprobieren
+					Tisch_6_Halbautomatik := 21;
+				END_IF
 			END_IF
 
+		21:		//Cech-Comment: Wenn der grüne TAster gedrückt wurde (Offensichtlich ist das LAsern beendet und der WST kann ausgefahren werden) dann wird der WST ausgefahren
+			IF gTisch_6.Inputs.Start = TRUE THEN		//Cech-Comment: Dieser Input ist der grüne Taster unter dem Panal-PC, der HW-mäßig auf den Input 0 der 16 Input-Kanäle des Input-Moduls verdrahtet ist
+				//gMerker_Debug_Test_Counter := 120;
+				gDO_Start_Laser := FALSE;
+				gDO_Laser_Absaugung := FALSE;
+				gDO_Laser_Seitentuer_oeffnen := TRUE; //!!!!!!!!!!!!!!!!!!!!!!Cech-Comment: Könnte mir vorstellen, dass hier ein TRUE hergehört und unter 10: dann gDO_Laser_Seitentuer_oeffnen := FALSE; das müsste ich ausprobieren
+				gTisch_6.Cmd.Aushebeeinheit := KMD_EINFAHREN;
+				gVK_Laser_Halbautomatik_Aussen := FALSE;
+				Tisch_6_Halbautomatik := 30;
+			END_IF
+			
 		30:		//Cech-Comment: WST wird rausgelassen
 			IF (*gTisch_6.Status.Aushebeeinheit = STATUS_EINGEFAHREN*) gTisch_6.Outputs.Aushebeeinheit_einfahren = TRUE AND gTisch_6.Outputs.Aushebeeinheit_ausfahren = FALSE THEN
 				gMerker_Debug_Test_Counter := 130;
 				gTisch_6.Cmd.Stopper := KMD_EINFAHREN;
-				Tisch_6 := 40;
+				Tisch_6_Halbautomatik := 40;
 			END_IF
 
 		40: 	//Cech-Comment: Wenn der NAchstopper_Sensor einmal ein ...
-			IF gTisch_6.Inputs.Nach_Stopper = TRUE THEN	
+			IF gTisch_6.Inputs.Nach_Stopper = TRUE OR gVK_Laser_Halbautomatik_Aussen = FALSE THEN	
 				gMerker_Debug_Test_Counter := 140;
-				Tisch_6 := 45;
+				Tisch_6_Halbautomatik := 45;
 			END_IF	
 		
 		45:		// ... und wieder aus geht, dann kann der Stopper wieder ausgefahren werden
 			IF gTisch_6.Inputs.Nach_Stopper = FALSE THEN	
 				gMerker_Debug_Test_Counter := 145;
 				gTisch_6.Cmd.Stopper := KMD_AUSFAHREN;
-				Tisch_6 := 50;	
+				Tisch_6_Halbautomatik := 50;	
 			END_IF
 
 		50:		//Cech-Comment: WEnn der WST am Stausensor vorbei ist, also ein ...
 			IF gTisch_6.Inputs.Stausensor = TRUE THEN
 				gMerker_Debug_Test_Counter := 150;
-				Tisch_6 := 60;
+				Tisch_6_Halbautomatik := 60;
 			END_IF
 
 		60:		// ... und wieder aus, dann wird der Prozess von oben wieder begonnen
 			IF gTisch_6.Inputs.Stausensor = FALSE THEN
 				gMerker_Debug_Test_Counter := 160;
-				Tisch_6 := 0;
+				Tisch_6_Halbautomatik := 0;
 			END_IF
 
 			//
@@ -241,46 +291,46 @@ PROGRAM _CYCLIC
 		110:
 			IF gTisch_6.Inputs.Nach_Vorstopper = TRUE THEN
 				gMerker_Debug_Test_Counter := 1110;
-				Tisch_6 := 120;
+				Tisch_6_Halbautomatik := 120;
 			END_IF
 
 		120:
 			IF gTisch_6.Inputs.Nach_Vorstopper = FALSE THEN
 				gMerker_Debug_Test_Counter := 1120;
 				gTisch_6.Cmd.Vorstopper := KMD_AUSFAHREN;
-				Tisch_6 := 130;
+				Tisch_6_Halbautomatik := 130;
 			END_IF
 
 		130:
 			IF (*gTisch_6.Inputs.Vor_Stopper = TRUE AND*) gTisch_6.Status.Vorstopper = STATUS_AUSGEFAHREN THEN
 				(*gDO_Laser_Seitentuer_oeffnen := FALSE;*)
 				gMerker_Debug_Test_Counter := 1130;
-				Tisch_6 := 0;
+				Tisch_6_Halbautomatik := 0;
 			END_IF
 		
 		200:	//Cech-Comment: Wenn WST am Ausfahrsensor des Stoppers
 			IF gTisch_6.Inputs.Nach_Vorstopper = TRUE THEN
 				gMerker_Debug_Test_Counter := 1200;
-				Tisch_6 := 210;
+				Tisch_6_Halbautomatik := 210;
 			END_IF
 
 		210:	//Cech-Comment: WEnn WST am Ausfahrsensor vorbei, dann wird der Stopper wieder ausgefahren
 			IF gTisch_6.Inputs.Nach_Vorstopper = FALSE THEN
 				gMerker_Debug_Test_Counter := 1210;
 				gTisch_6.Cmd.Vorstopper := KMD_AUSFAHREN;
-				Tisch_6 := 220;
+				Tisch_6_Halbautomatik := 220;
 			END_IF
 
 		220:	// ... und geprüft, ab der SW-Status des Stoppers auf ausgefahren steht
 			IF (*gTisch_6.Inputs.Vor_Stopper = TRUE AND*) gTisch_6.Status.Vorstopper = STATUS_AUSGEFAHREN THEN
 				gMerker_Debug_Test_Counter := 1220;
-				Tisch_6 := 230;
+				Tisch_6_Halbautomatik := 230;
 			END_IF
 		
 		230:	// Cech-Comment: ... und auch tatsächlich schon ausgefahren ist und von vorne begonnen
 			IF gTisch_6.Inputs.Vor_Stopper = TRUE THEN
 				gMerker_Debug_Test_Counter := 1230;
-				Tisch_6 := 0;
+				Tisch_6_Halbautomatik := 0;
 			END_IF
 
 	END_CASE
@@ -290,6 +340,8 @@ PROGRAM _CYCLIC
 		0:	//Cech-Comment: Hier werden die Stati vom LaSerwahlschalter und den Stoppern, Schaltern und Sensoren der Station 6 abgefragt und entsprechend in die Case-Schleife verzweigt
 			lWarten_Laser_Dauer := 0;
 			lWarten_Laser_Startsignal :=0;
+			gMerker_Laser_Einstellen_fertig := FALSE; //Cech-Implement
+
 			IF gMerker_Laser_Manuell = FALSE AND gMerker_Laser_Halbautomatik = FALSE AND gMerker_Laser_Automatik = TRUE AND gTisch_6.Inputs.Vor_VorStopper = TRUE AND gTisch_6.Inputs.Vor_Stopper = TRUE AND gTisch_6.Inputs.Stausensor = FALSE AND (*gMerker_RFID_Tisch_6_gelesen = TRUE AND*) gTaster_Tisch_6_aus = FALSE THEN  //Cech-Comment: gTAster_Tisch_6_aus ist der Softbutton am MAain-Panel, wo jede Station deaktiviert werden kann
 				lWarten_Laser_Dauer := 0;					//Cech-Implement
 				gTisch_6.Cmd.Aushebeeinheit := KMD_AUSFAHREN;
@@ -377,18 +429,19 @@ PROGRAM _CYCLIC
 			END_IF
 			
 		17:	//Cech-Comment: Kann sein, dass die Zeit ganz rausgenommen werden kann, wenn es reciht, den Vor_Stopper Input abzufragen auf FALSE; KAnn sein, dass dieses Tisch6 Main-Programm in einen schnelleren TAsk gelegt weden muss (50 oder 20ms vielleicht)
-			IF (gMerker_Tisch_6_Ausgehoben = FALSE AND gTisch_6.Status.Vorstopper = STATUS_EINGEFAHREN AND gTisch_6.Inputs.Vor_Stopper = FALSE) THEN
-				lWarten_Laser_Doppel_Innen := lWarten_Laser_Doppel_Innen + (RTInfo_0.cycle_time/1000);
-				IF lWarten_Laser_Doppel_Innen >= 100 THEN		//Hier muss angeschaut werden, wie schnell der Stopper wieder ausgefahren werden kann, um den Block am WST 11cm für die LAserung der Innenseite zu erwischen
-					gTisch_6.Cmd.Stopper := KMD_AUSFAHREN;
+			IF (gMerker_Tisch_6_Ausgehoben = FALSE AND gTisch_6.Inputs.Vor_Stopper = FALSE) THEN // war auch drinnen ????: AND gTisch_6.Status.Vorstopper = STATUS_EINGEFAHREN
+				// Der WST darf für die zweite LAserung an der Türe anstehen --> Stopper braucht nicht ausgefahren werden und kein Block auf jedem WST nötig
+				//lWarten_Laser_Doppel_Innen := lWarten_Laser_Doppel_Innen + (RTInfo_0.cycle_time/1000);
+				//IF lWarten_Laser_Doppel_Innen >= 100 THEN		//Hier muss angeschaut werden, wie schnell der Stopper wieder ausgefahren werden kann, um den Block am WST 11cm für die LAserung der Innenseite zu erwischen
+				//	gTisch_6.Cmd.Stopper := KMD_AUSFAHREN;
 					Tisch_6_Automatik := 18;
-				END_IF
+				//END_IF
 			END_IF
 
 		18:
-			IF gTisch_6.Inputs.Vor_Stopper = TRUE THEN
+			//IF gTisch_6.Inputs.Vor_Stopper = TRUE THEN
 				Tisch_6_Automatik := 19;
-			END_IF
+			//END_IF
 			
 		19:
 			IF (gMerker_Laser_Einstellen_fertig = TRUE) THEN
@@ -415,13 +468,19 @@ PROGRAM _CYCLIC
 				gDO_Laser_Absaugung := FALSE;
 				gMerker_Laser_Einstellen_fertig := FALSE; //Cech-Implement
 				gMerker_Laser_Doppelzylinder := FALSE;
-				gDO_doppelt_lasern := FALSE;
+				// gDO_doppelt_lasern := FALSE;
 				gDO_Laser_Seitentuer_oeffnen := FALSE;	////Cech-Implement
 				//				gDO_Laser_Seitentuer_oeffnen := TRUE;
 				gTisch_6.Cmd.Aushebeeinheit := KMD_EINFAHREN;
 				gMerker_RFID_Value_Tisch_6 := 0;
 				gMerker_block_RFID_read_Tisch_6 := TRUE;	//Cech-Comment: Der MErker wenn TRUE blockiert das RFID-LEsen während des Einfahrens der Aushebeeinheit, um nicht neu zu beginnen (RFID kann beim Ausheben die VErbindung verlieren, das soll verhindert werden)
-				Tisch_6_Automatik := 40;
+				IF gDO_doppelt_lasern = TRUE THEN
+					gDO_doppelt_lasern := FALSE;
+					Tisch_6_Automatik := 55;
+				ELSIF gDO_doppelt_lasern = FALSE THEN
+					Tisch_6_Automatik := 40;
+				END_IF
+				
 				//			ELSIF (gDI_Laser_fertig = TRUE AND gDI_keiner_Stoerung_Laser = FALSE)
 				//				gDO_Start_Laser := FALSE;
 				//				gMerker_Laser_Einstellen_fertig := FALSE;

+ 28 - 16
Logical/TischProgramme/Tisch7/Main.st

@@ -5,11 +5,14 @@ PROGRAM _INIT
 
 	RTInfo_0(enable:=1);
 	
+	gDO_AC230V_Steckdose := FALSE;
+	gMerker_AC230V_ON := FALSE;
+	lWarten_AC230V_Einschalten := 0;
+	
 END_PROGRAM
 
 PROGRAM _CYCLIC
-
-		IF (gTisch_7.Inputs.Vor_Stopper = TRUE AND gTisch_7.Inputs.Stausensor = FALSE AND Tisch_7 = 0) OR (gTisch_7.Inputs.Vor_VorStopper = TRUE AND gTisch_7.Inputs.Vor_Stopper = FALSE AND Tisch_7 = 0) THEN
+	IF (gTisch_7.Inputs.Vor_Stopper = TRUE AND gTisch_7.Inputs.Stausensor = FALSE AND Tisch_7 = 0) OR (gTisch_7.Inputs.Vor_VorStopper = TRUE AND gTisch_7.Inputs.Vor_Stopper = FALSE AND Tisch_7 = 0) THEN
 			gTisch_7.Outputs.Lampe_Start := TRUE;
 		ELSE
 			gTisch_7.Outputs.Lampe_Start := FALSE;
@@ -21,17 +24,25 @@ PROGRAM _CYCLIC
 			gMerker_RFID_Tisch_7_gelesen := TRUE;
 			Tisch_7 := 0;
 		END_IF
+		
+		IF gMerker_AC230V_ON = FALSE THEN			//VErzögerung der Netzsteckerleiste im Schaltschrank der Station7, um den Router für die KAmera erst später zu aktivieren, sonst geht die KAmera nicht
+			lWarten_AC230V_Einschalten := lWarten_AC230V_Einschalten + (RTInfo_0.cycle_time/1000);
+			IF lWarten_AC230V_Einschalten >= 5000 THEN
+				gDO_AC230V_Steckdose := TRUE;
+				gMerker_AC230V_ON := TRUE;
+			END_IF
+		END_IF
 	
 	CASE Tisch_7 OF
-
+	
 		0:
-		IF (*gTisch_7.Inputs.Start = TRUE AND*) gTisch_7.Inputs.Vor_VorStopper = TRUE AND gTisch_7.Inputs.Vor_Stopper = TRUE AND gTisch_7.Inputs.Stausensor = FALSE AND gTaster_Tisch_7_aus = FALSE (*AND gMerker_RFID_Tisch_7_gelesen = TRUE*) THEN
-//			gTisch_7.Cmd.Stopper := KMD_EINFAHREN;
-//			gMerker_RFID_Tisch_7_gelesen := FALSE;
-//			Tisch_7 := 10;
-			lWarten_Auto_Start_Tisch_7 := 0;	
-			Tisch_7 := 5;				
-		ELSIF (*gTisch_7.Inputs.Start = TRUE AND*) gTisch_7.Inputs.Vor_VorStopper = FALSE AND gTisch_7.Inputs.Vor_Stopper = TRUE AND gTisch_7.Inputs.Stausensor = FALSE AND gTaster_Tisch_7_aus = FALSE (*AND gMerker_RFID_Tisch_7_gelesen = TRUE*) THEN
+			IF (*gTisch_7.Inputs.Start = TRUE AND*) gTisch_7.Inputs.Vor_VorStopper = TRUE AND gTisch_7.Inputs.Vor_Stopper = TRUE AND gTisch_7.Inputs.Stausensor = FALSE AND gTaster_Tisch_7_aus = FALSE (*AND gMerker_RFID_Tisch_7_gelesen = TRUE*) THEN
+				//			gTisch_7.Cmd.Stopper := KMD_EINFAHREN;
+				//			gMerker_RFID_Tisch_7_gelesen := FALSE;
+				//			Tisch_7 := 10;
+				lWarten_Auto_Start_Tisch_7 := 0;	
+				Tisch_7 := 5;				
+			ELSIF (*gTisch_7.Inputs.Start = TRUE AND*) gTisch_7.Inputs.Vor_VorStopper = FALSE AND gTisch_7.Inputs.Vor_Stopper = TRUE AND gTisch_7.Inputs.Stausensor = FALSE AND gTaster_Tisch_7_aus = FALSE (*AND gMerker_RFID_Tisch_7_gelesen = TRUE*) THEN
 //				gTisch_7.Cmd.Stopper := KMD_EINFAHREN;
 //				gMerker_RFID_Tisch_7_gelesen := FALSE;
 //				Tisch_7 := 70;
@@ -44,15 +55,16 @@ PROGRAM _CYCLIC
 				gTisch_7.Cmd.Stopper := KMD_AUSFAHREN;
 				gTisch_7.Cmd.Vorstopper := KMD_AUSFAHREN;
 				Tisch_7 := 0;
-		END_IF		
+		END_IF	
+
 	
-//			
+			//			
 			
 		5: lWarten_Auto_Start_Tisch_7 := lWarten_Auto_Start_Tisch_7 + (RTInfo_0.cycle_time/1000);
-		IF lWarten_Auto_Start_Tisch_7 >= 10000 THEN
-			gTisch_7.Cmd.Stopper := KMD_EINFAHREN;
-			gMerker_RFID_Tisch_7_gelesen := FALSE;
-			lWarten_Auto_Start_Tisch_7 := 0;
+			IF lWarten_Auto_Start_Tisch_7 >= 10000 THEN
+				gTisch_7.Cmd.Stopper := KMD_EINFAHREN;
+				gMerker_RFID_Tisch_7_gelesen := FALSE;
+				lWarten_Auto_Start_Tisch_7 := 0;
 			Tisch_7 := 10;
 		END_IF		
 

+ 2 - 0
Logical/TischProgramme/Tisch7/Variables.var

@@ -1,4 +1,6 @@
 VAR
 	RTInfo_0 : RTInfo;
+	gMerker_AC230V_ON : BOOL;
+	lWarten_AC230V_Einschalten : UDINT;
 	lWarten_Auto_Start_Tisch_7 : UDINT;
 END_VAR

+ 4 - 0
Logical/Zylinder/Zylinder_Tisch6/Main.st

@@ -139,6 +139,7 @@ PROGRAM _CYCLIC
 	Jedenfalls läuft der Timer immer und die Zeitüberwachung wird nicht verwendet. Es handelt sich somit um eine reine Steuerung ohne Sensorkontrolle. Das muss man berücksichtigen bei Änderungen in diesem Teil der SW*)
 	
 	IF  gTisch_6.Cmd.Aushebeeinheit = KMD_AUSFAHREN THEN
+gMerker_Debug_Test_Counter := 133;
 		gTisch_6.Outputs.Aushebeeinheit_einfahren := FALSE;
 		gTisch_6.Outputs.Aushebeeinheit_ausfahren := TRUE;
 		gTisch_6.Times.Aushebeeinheit_AusZeit := TRUE;
@@ -149,6 +150,7 @@ PROGRAM _CYCLIC
 	END_IF
 
 	IF  gTisch_6.Cmd.Aushebeeinheit = KMD_EINFAHREN THEN
+gMerker_Debug_Test_Counter := 134;
 		gTisch_6.Outputs.Aushebeeinheit_einfahren := TRUE;
 		gTisch_6.Outputs.Aushebeeinheit_ausfahren := FALSE;
 		gTisch_6.Times.Aushebeeinheit_AusZeit := FALSE;
@@ -160,10 +162,12 @@ PROGRAM _CYCLIC
 
 	(* Status, Zylinderposition ausgeben *)
 	IF (gTisch_6.Inputs.Aushebeeinheit_eingefahren = TRUE) AND (gTisch_6.Inputs.Aushebeeinheit_ausgefahren = FALSE) THEN
+gMerker_Debug_Test_Counter := 135;
 		// Toter Zweig, weil der Input vom Aushebesensor nicht angeschlossen wurde
 		gTisch_6.Status.Aushebeeinheit := STATUS_EINGEFAHREN;
 	ELSIF (gTisch_6.Inputs.Aushebeeinheit_eingefahren = FALSE) AND (gTisch_6.Inputs.Aushebeeinheit_ausgefahren = TRUE) THEN
 		// Toter Zweig, weil der Input vom Aushebesensor nicht angeschlossen wurde
+gMerker_Debug_Test_Counter := 136;
 		gTisch_6.Status.Aushebeeinheit := STATUS_AUSGEFAHREN;
 	ELSE
 		// Es wird immer dieser Zweig angefahren und der Status der Aushebeeinheit bleibt immer STATS_BUSY (255)

File diff suppressed because it is too large
+ 2 - 2
Logical/mappView/Visualization/Pages/MainPage/ContentMain.content


+ 3 - 0
Physical/Config1/5APC3100_KBU0_000/Connectivity/OpcUA/OpcUaMap.uad

@@ -137,6 +137,9 @@
         <Variable Name="Tisch_6_Automatik" />
         <Variable Name="gMerker_Shutdown" />
         <Variable Name="Shutdown_URL" />
+        <Variable Name="Shutdown_picture" />
+        <Variable Name="gVK_Laser_Halbautomatik_Aussen" />
+        <Variable Name="Tisch_6_Halbautomatik" />
       </GlobalVariables>
     </Module>
   </DefaultView>

+ 165 - 164
Physical/Config1/5APC3100_KBU0_000/IoMap.iom

@@ -1,171 +1,172 @@
 VAR_CONFIG
-	gTisch_1.Inputs.Stausensor AT %IX."X20DI9371".DigitalInput01;
-	gTisch_1.Inputs.Vor_Stopper AT %IX."X20DI9371".DigitalInput02;
-	gTisch_1.Inputs.Nach_Stopper AT %IX."X20DI9371".DigitalInput03;
-	gTisch_1.Inputs.Stopper_eingefahren AT %IX."X20DI9371".DigitalInput04;
-	gTisch_1.Inputs.Stopper_ausgefahren AT %IX."X20DI9371".DigitalInput05;
-	gTisch_1.Inputs.Vor_VorStopper AT %IX."X20DI9371".DigitalInput06;
-	gTisch_1.Inputs.Nach_Vorstopper AT %IX."X20DI9371".DigitalInput07;
-	gTisch_1.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371".DigitalInput08;
-	gTisch_1.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371".DigitalInput09;
-	gTisch_2.Inputs.Stausensor AT %IX."X20DI9371".DigitalInput10;
-	gTisch_2.Inputs.Vor_Stopper AT %IX."X20DI9371".DigitalInput11;
-	gTisch_2.Inputs.Nach_Stopper AT %IX."X20DI9371".DigitalInput12;
-	gTisch_2.Inputs.Stopper_ausgefahren AT %IX."X20DI9371a".DigitalInput01;
-	gTisch_2.Inputs.Stopper_eingefahren AT %IX."X20DI9371a".DigitalInput02;
-	gTisch_2.Inputs.Vor_VorStopper AT %IX."X20DI9371a".DigitalInput03;
-	gTisch_2.Inputs.Nach_Vorstopper AT %IX."X20DI9371a".DigitalInput04;
-	gTisch_2.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371a".DigitalInput05;
-	gTisch_2.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371a".DigitalInput06;
-	gTisch_3.Inputs.Stausensor AT %IX."X20DI9371a".DigitalInput07;
-	gTisch_3.Inputs.Vor_Stopper AT %IX."X20DI9371a".DigitalInput08;
-	gTisch_3.Inputs.Nach_Stopper AT %IX."X20DI9371a".DigitalInput09;
-	gTisch_3.Inputs.Stopper_ausgefahren AT %IX."X20DI9371a".DigitalInput10;
-	gTisch_3.Inputs.Stopper_eingefahren AT %IX."X20DI9371a".DigitalInput11;
-	gTisch_3.Inputs.Vor_VorStopper AT %IX."X20DI9371a".DigitalInput12;
-	gTisch_3.Inputs.Nach_Vorstopper AT %IX."X20DI9371b".DigitalInput01;
-	gTisch_3.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371b".DigitalInput02;
-	gTisch_3.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371b".DigitalInput03;
-	gTisch_4.Inputs.Stausensor AT %IX."X20DI9371b".DigitalInput04;
-	gTisch_4.Inputs.Vor_Stopper AT %IX."X20DI9371b".DigitalInput05;
-	gTisch_4.Inputs.Nach_Stopper AT %IX."X20DI9371b".DigitalInput06;
-	gTisch_4.Inputs.Stopper_ausgefahren AT %IX."X20DI9371b".DigitalInput07;
-	gTisch_4.Inputs.Stopper_eingefahren AT %IX."X20DI9371b".DigitalInput08;
-	gTisch_4.Inputs.Vor_VorStopper AT %IX."X20DI9371b".DigitalInput09;
-	gTisch_4.Inputs.Nach_Vorstopper AT %IX."X20DI9371b".DigitalInput10;
-	gTisch_4.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371b".DigitalInput11;
-	gTisch_4.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371b".DigitalInput12;
-	gTisch_5.Inputs.Stausensor AT %IX."X20DI9371c".DigitalInput01;
-	gTisch_5.Inputs.Vor_VorStopper AT %IX."X20DI9371c".DigitalInput02;
-	gTisch_5.Inputs.Nach_Vorstopper AT %IX."X20DI9371c".DigitalInput03;
-	gTisch_5.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371c".DigitalInput04;
-	gTisch_5.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371c".DigitalInput05;
-	gTisch_5.Inputs.Vor_Stopper AT %IX."X20DI9371c".DigitalInput06;
-	gTisch_5.Inputs.Nach_Stopper AT %IX."X20DI9371c".DigitalInput07;
-	gTisch_5.Inputs.Stopper_ausgefahren AT %IX."X20DI9371c".DigitalInput08;
-	gTisch_5.Inputs.Stopper_eingefahren AT %IX."X20DI9371c".DigitalInput09;
-	gTisch_6.Inputs.Stausensor AT %IX."X20DI9371c".DigitalInput10;
-	gTisch_6.Inputs.Vor_VorStopper AT %IX."X20DI9371c".DigitalInput11;
-	gTisch_6.Inputs.Nach_Vorstopper AT %IX."X20DI9371c".DigitalInput12;
-	gTisch_6.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371d".DigitalInput01;
-	gTisch_6.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371d".DigitalInput02;
-	gTisch_6.Inputs.Vor_Stopper AT %IX."X20DI9371d".DigitalInput03;
-	gTisch_6.Inputs.Nach_Stopper AT %IX."X20DI9371d".DigitalInput04;
-	gTisch_6.Inputs.Stopper_ausgefahren AT %IX."X20DI9371d".DigitalInput05;
-	gTisch_6.Inputs.Stopper_eingefahren AT %IX."X20DI9371d".DigitalInput06;
-	gTisch_7.Inputs.Stausensor AT %IX."X20DI9371d".DigitalInput07;
-	gTisch_7.Inputs.Vor_VorStopper AT %IX."X20DI9371d".DigitalInput08;
-	gTisch_7.Inputs.Nach_Vorstopper AT %IX."X20DI9371d".DigitalInput09;
-	gTisch_7.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371d".DigitalInput10;
-	gTisch_7.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371d".DigitalInput11;
-	gTisch_7.Inputs.Vor_Stopper AT %IX."X20DI9371d".DigitalInput12;
-	gTisch_7.Inputs.Nach_Stopper AT %IX."X20DI9371e".DigitalInput01;
-	gTisch_7.Inputs.Stopper_ausgefahren AT %IX."X20DI9371e".DigitalInput02;
-	gTisch_7.Inputs.Stopper_eingefahren AT %IX."X20DI9371e".DigitalInput03;
-	gTisch_8.Inputs.Stausensor AT %IX."X20DI9371e".DigitalInput04;
-	gTisch_8.Inputs.Vor_VorStopper AT %IX."X20DI9371e".DigitalInput05;
-	gTisch_8.Inputs.Nach_Vorstopper AT %IX."X20DI9371e".DigitalInput06;
-	gTisch_8.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371e".DigitalInput07;
-	gTisch_8.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371e".DigitalInput08;
-	gTisch_8.Inputs.Vor_Stopper AT %IX."X20DI9371e".DigitalInput09;
-	gTisch_8.Inputs.Nach_Stopper AT %IX."X20DI9371e".DigitalInput10;
-	gTisch_8.Inputs.Stopper_eingefahren AT %IX."X20DI9371e".DigitalInput12;
-	gKurve_1.Inputs.Vor_Stopper AT %IX."X20DI9371f".DigitalInput01;
-	gKurve_1.Inputs.Nach_Stopper AT %IX."X20DI9371f".DigitalInput02;
-	gKurve_1.Inputs.Stopper_ausgefahren AT %IX."X20DI9371f".DigitalInput03;
-	gKurve_1.Inputs.Stopper_eingefahren AT %IX."X20DI9371f".DigitalInput04;
-	gKurve_2.Inputs.Vor_Stopper AT %IX."X20DI9371f".DigitalInput05;
-	gKurve_2.Inputs.Nach_Stopper AT %IX."X20DI9371f".DigitalInput06;
-	gKurve_2.Inputs.Stopper_ausgefahren AT %IX."X20DI9371f".DigitalInput07;
-	gKurve_2.Inputs.Stopper_eingefahren AT %IX."X20DI9371f".DigitalInput08;
-	gKurve_3.Inputs.Vor_Stopper AT %IX."X20DI9371f".DigitalInput09;
-	gKurve_3.Inputs.Nach_Stopper AT %IX."X20DI9371f".DigitalInput10;
-	gKurve_3.Inputs.Stopper_ausgefahren AT %IX."X20DI9371f".DigitalInput11;
-	gKurve_4.Inputs.Vor_Stopper AT %IX."X20DI9371g".DigitalInput01;
-	gKurve_4.Inputs.Nach_Stopper AT %IX."X20DI9371g".DigitalInput02;
-	gKurve_4.Inputs.Stopper_ausgefahren AT %IX."X20DI9371g".DigitalInput03;
-	gKurve_1.Inputs.Stausensor AT %IX."X20DI9371g".DigitalInput05;
-	gKurve_3.Inputs.Stausensor AT %IX."X20DI9371g".DigitalInput07;
-	gKurve_4.Inputs.Stausensor AT %IX."X20DI9371g".DigitalInput08;
-	gDO_Motor_K1 AT %QX."X20DO8332".DigitalOutput01;
-	gDO_Motor_K2 AT %QX."X20DO8332".DigitalOutput02;
-	gDO_Motor_K3 AT %QX."X20DO8332".DigitalOutput03;
-	gDO_Motor_K4 AT %QX."X20DO8332".DigitalOutput04;
-	gDO_Motor_K5 AT %QX."X20DO8332".DigitalOutput05;
-	gDO_Motor_K6 AT %QX."X20DO8332".DigitalOutput06;
-	gDO_Motor_K7 AT %QX."X20DO8332".DigitalOutput07;
-	gDO_Motor_K8 AT %QX."X20DO8332".DigitalOutput08;
-	gKurve_4.Inputs.Stopper_eingefahren AT %IX."X20DI9371g".DigitalInput04;
-	gKurve_3.Inputs.Stopper_eingefahren AT %IX."X20DI9371f".DigitalInput12;
-	gKurve_1.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_1_DigitalOutput_CH0;
-	gKurve_2.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_1_DigitalOutput_CH2;
-	gKurve_2.Inputs.Stausensor AT %IX."X20DI9371g".DigitalInput09;
-	gKurve_3.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_1_DigitalOutput_CH4;
-	gKurve_4.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_1_DigitalOutput_CH6;
-	gTisch_1.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH0;
-	gTisch_1.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH1;
-	gTisch_2.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH2;
-	gTisch_2.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH3;
-	gTisch_3.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH4;
-	gTisch_3.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH5;
-	gTisch_4.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH6;
-	gTisch_4.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH7;
-	gTisch_5.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH0;
-	gTisch_5.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH1;
-	gTisch_6.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH2;
-	gTisch_6.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH3;
-	gTisch_7.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH4;
-	gTisch_7.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH5;
-	gTisch_8.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH6;
-	gTisch_8.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH7;
-	gTisch_8.Inputs.Stopper_ausgefahren AT %IX."X20DI9371e".DigitalInput11;
-	gTisch_1.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput01;
-	gTisch_2.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput02;
-	gTisch_3.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput03;
-	gTisch_4.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput04;
-	gTisch_5.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput05;
-	gTisch_6.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput06;
-	gTisch_7.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput07;
-	gTisch_8.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput08;
-	gTaster_Liftgate_oeffnen AT %IX."X20DI9371h".DigitalInput07;
-	gTaster_Liftgate_verriegeln AT %IX."X20DI9371h".DigitalInput08;
-	gTaster_Liftgate_Leuchte_Rot AT %QX."X20DO9322".DigitalOutput09;
-	gTaster_Liftgate_Leuchte_Gruen AT %QX."X20DO9322".DigitalOutput10;
-	gMerker_Liftgate_entriegelt AT %QX."X20DO9322".DigitalOutput11;
-	gTisch_4.Inputs.Start AT %IX."X20DIF371c".DigitalInput01;
-	gTisch_8.Inputs.Start AT %IX."X20DIF371d".DigitalInput01;
-	gTisch_7.Inputs.Start AT %IX."X20DIF371e".DigitalInput01;
-	gTisch_6.Inputs.Start AT %IX."X20DIF371f".DigitalInput01; (*24 VDC, 0.1 to 25 ms switching delay, sink    //Cech-Comment: Grüner Taster am Panel-PC*)
-	gTisch_5.Inputs.Start AT %IX."X20DIF371g".DigitalInput01;
-	gTisch_1.Inputs.Start AT %IX."X20DIF371".DigitalInput01;
-	gTisch_2.Inputs.Start AT %IX."X20DIF371a".DigitalInput01;
-	gTisch_3.Inputs.Start AT %IX."X20DIF371b".DigitalInput01;
-	gTisch_2_RFID_Read AT %IO."X20DS438A1".InputData01;
-	gTisch_2_RFID_Write AT %QO."X20DS438A1".OutputData01;
-	gTisch_3_RFID_Read AT %IO."X20DS438A2".InputData01;
-	gTisch_3_RFID_Write AT %QO."X20DS438A2".OutputData01;
-	gTisch_4_RFID_Read AT %IO."X20DS438A3".InputData01;
-	gTisch_4_RFID_Write AT %QO."X20DS438A3".OutputData01;
-	gTisch_8_RFID_Read AT %IO."X20DS438A4".InputData01;
-	gTisch_8_RFID_Write AT %QO."X20DS438A4".OutputData01;
-	gTisch_7_RFID_Read AT %IO."X20DS438A5".InputData01;
-	gTisch_7_RFID_Write AT %QO."X20DS438A5".OutputData01;
-	gTisch_6_RFID_Read AT %IO."X20DS438A6".InputData01;
-	gTisch_6_RFID_Write AT %QO."X20DS438A6".OutputData01;
-	gTisch_5_RFID_Read AT %IO."X20DS438A7".InputData01;
 	gTisch_5_RFID_Write AT %QO."X20DS438A7".OutputData01;
-	gTisch_1_RFID_Read AT %IO."X20DS438A".InputData03;
+	gTisch_5_RFID_Read AT %IO."X20DS438A7".InputData01;
+	gTisch_6_RFID_Write AT %QO."X20DS438A6".OutputData01;
+	gTisch_6_RFID_Read AT %IO."X20DS438A6".InputData01;
+	gTisch_7_RFID_Write AT %QO."X20DS438A5".OutputData01;
+	gTisch_7_RFID_Read AT %IO."X20DS438A5".InputData01;
+	gTisch_8_RFID_Write AT %QO."X20DS438A4".OutputData01;
+	gTisch_8_RFID_Read AT %IO."X20DS438A4".InputData01;
+	gTisch_4_RFID_Write AT %QO."X20DS438A3".OutputData01;
+	gTisch_4_RFID_Read AT %IO."X20DS438A3".InputData01;
+	gTisch_3_RFID_Write AT %QO."X20DS438A2".OutputData01;
+	gTisch_3_RFID_Read AT %IO."X20DS438A2".InputData01;
+	gTisch_2_RFID_Write AT %QO."X20DS438A1".OutputData01;
+	gTisch_2_RFID_Read AT %IO."X20DS438A1".InputData01;
 	gTisch_1_RFID_Write AT %QO."X20DS438A".OutputData03;
-	gTisch_1_RFID_Read AT %IO."X20DS438A".InputData01;
 	gTisch_1_RFID_Write AT %QO."X20DS438A".OutputData01;
-	gTisch_6.Outputs.Aushebeeinheit_einfahren AT %QX."CPX-FB40_1".slot_4_DigitalOutput_CH2;
-	gTisch_6.Outputs.Aushebeeinheit_ausfahren AT %QX."CPX-FB40_1".slot_4_DigitalOutput_CH3;
-	gDO_Start_Laser AT %QX."X20DO9322j".DigitalOutput01;
+	gTisch_1_RFID_Read AT %IO."X20DS438A".InputData03;
+	gTisch_1_RFID_Read AT %IO."X20DS438A".InputData01;
+	gDO_Laser_Absaugung AT %QX."X20DO9322j".DigitalOutput04;
+	gDO_Laser_Seitentuer_oeffnen AT %QX."X20DO9322j".DigitalOutput03;
 	gDO_doppelt_lasern AT %QX."X20DO9322j".DigitalOutput02;
-	gDI_Laser_fertig AT %IX."X20DIF371f".DigitalInput02; (*24 VDC, 0.1 to 25 ms switching delay, sink    //Meldung von Laser-SPS, dass Lasern ferig ist*)
-	gDI_keiner_Stoerung_Laser AT %IX."X20DIF371f".DigitalInput03; (*24 VDC, 0.1 to 25 ms switching delay, sink     //Meldung von LAser-SPS, dass diese keinen Fehler hat*)
-	gDI_Laser_Manuell AT %IX."X20DIF371f".DigitalInput04; (*24 VDC, 0.1 to 25 ms switching delay, sink     //Wahlschalter auf LAser-SPS auf Manueller Betrieb (Wenn beide Inputs high, dann wird halbautomatischer Betrieb signalisiert; siehe unten)*)
+	gDO_Start_Laser AT %QX."X20DO9322j".DigitalOutput01;
+	gDO_AC230V_Steckdose AT %QX."X20DO9322i".DigitalOutput01; (*Uber Port und RElais geschaltete 230V-Steckdosen in Schaltkasten der Station7 *)
+	gMerker_Liftgate_entriegelt AT %QX."X20DO9322".DigitalOutput11;
+	gTaster_Liftgate_Leuchte_Gruen AT %QX."X20DO9322".DigitalOutput10;
+	gTaster_Liftgate_Leuchte_Rot AT %QX."X20DO9322".DigitalOutput09;
+	gTisch_8.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput08; (*Ich glaube, das sollen die Lampen der Panel-PC-Taster sein, die aber nicht auf die Output-Ports verdrahtet sind (Lampen sind nur über IOs verdrahtbar)*)
+	gTisch_7.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput07;
+	gTisch_6.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput06;
+	gTisch_5.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput05;
+	gTisch_4.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput04;
+	gTisch_3.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput03;
+	gTisch_2.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput02;
+	gTisch_1.Outputs.Lampe_Start AT %QX."X20DO9322".DigitalOutput01;
+	gDO_Motor_K8 AT %QX."X20DO8332".DigitalOutput08;
+	gDO_Motor_K7 AT %QX."X20DO8332".DigitalOutput07;
+	gDO_Motor_K6 AT %QX."X20DO8332".DigitalOutput06;
+	gDO_Motor_K5 AT %QX."X20DO8332".DigitalOutput05;
+	gDO_Motor_K4 AT %QX."X20DO8332".DigitalOutput04;
+	gDO_Motor_K3 AT %QX."X20DO8332".DigitalOutput03;
+	gDO_Motor_K2 AT %QX."X20DO8332".DigitalOutput02;
+	gDO_Motor_K1 AT %QX."X20DO8332".DigitalOutput01;
+	gTisch_5.Inputs.Start AT %IX."X20DIF371g".DigitalInput01;
 	gDI_Laser_Automatik AT %IX."X20DIF371f".DigitalInput05; (*24 VDC, 0.1 to 25 ms switching delay, sink      //Wahlschalter auf LAser-Schaltschrank auf Automatic-Betrieb (Wenn beide Inputs high, dann wird halbautomatischer Betrieb signalisiert; siehe oben)*)
-	gDO_Laser_Seitentuer_oeffnen AT %QX."X20DO9322j".DigitalOutput03;
-	gDO_Laser_Absaugung AT %QX."X20DO9322j".DigitalOutput04;
+	gDI_Laser_Manuell AT %IX."X20DIF371f".DigitalInput04; (*24 VDC, 0.1 to 25 ms switching delay, sink     //Wahlschalter auf LAser-SPS auf Manueller Betrieb (Wenn beide Inputs high, dann wird halbautomatischer Betrieb signalisiert; siehe unten)*)
+	gDI_keiner_Stoerung_Laser AT %IX."X20DIF371f".DigitalInput03; (*24 VDC, 0.1 to 25 ms switching delay, sink     //Meldung von LAser-SPS, dass diese keinen Fehler hat*)
+	gDI_Laser_fertig AT %IX."X20DIF371f".DigitalInput02; (*24 VDC, 0.1 to 25 ms switching delay, sink    //Meldung von Laser-SPS, dass Lasern ferig ist*)
+	gTisch_6.Inputs.Start AT %IX."X20DIF371f".DigitalInput01; (*24 VDC, 0.1 to 25 ms switching delay, sink    //Cech-Comment: Grüner Taster am Panel-PC*)
+	gTisch_7.Inputs.Start AT %IX."X20DIF371e".DigitalInput01;
+	gTisch_8.Inputs.Start AT %IX."X20DIF371d".DigitalInput01;
+	gTisch_4.Inputs.Start AT %IX."X20DIF371c".DigitalInput01;
+	gTisch_3.Inputs.Start AT %IX."X20DIF371b".DigitalInput01;
+	gTisch_2.Inputs.Start AT %IX."X20DIF371a".DigitalInput01;
+	gTisch_1.Inputs.Start AT %IX."X20DIF371".DigitalInput01;
+	gTaster_Liftgate_verriegeln AT %IX."X20DI9371h".DigitalInput08;
+	gTaster_Liftgate_oeffnen AT %IX."X20DI9371h".DigitalInput07;
+	gKurve_2.Inputs.Stausensor AT %IX."X20DI9371g".DigitalInput09;
+	gKurve_4.Inputs.Stausensor AT %IX."X20DI9371g".DigitalInput08;
+	gKurve_3.Inputs.Stausensor AT %IX."X20DI9371g".DigitalInput07;
+	gKurve_1.Inputs.Stausensor AT %IX."X20DI9371g".DigitalInput05;
+	gKurve_4.Inputs.Stopper_eingefahren AT %IX."X20DI9371g".DigitalInput04;
+	gKurve_4.Inputs.Stopper_ausgefahren AT %IX."X20DI9371g".DigitalInput03;
+	gKurve_4.Inputs.Nach_Stopper AT %IX."X20DI9371g".DigitalInput02;
+	gKurve_4.Inputs.Vor_Stopper AT %IX."X20DI9371g".DigitalInput01;
+	gKurve_3.Inputs.Stopper_eingefahren AT %IX."X20DI9371f".DigitalInput12;
+	gKurve_3.Inputs.Stopper_ausgefahren AT %IX."X20DI9371f".DigitalInput11;
+	gKurve_3.Inputs.Nach_Stopper AT %IX."X20DI9371f".DigitalInput10;
+	gKurve_3.Inputs.Vor_Stopper AT %IX."X20DI9371f".DigitalInput09;
+	gKurve_2.Inputs.Stopper_eingefahren AT %IX."X20DI9371f".DigitalInput08;
+	gKurve_2.Inputs.Stopper_ausgefahren AT %IX."X20DI9371f".DigitalInput07;
+	gKurve_2.Inputs.Nach_Stopper AT %IX."X20DI9371f".DigitalInput06;
+	gKurve_2.Inputs.Vor_Stopper AT %IX."X20DI9371f".DigitalInput05;
+	gKurve_1.Inputs.Stopper_eingefahren AT %IX."X20DI9371f".DigitalInput04;
+	gKurve_1.Inputs.Stopper_ausgefahren AT %IX."X20DI9371f".DigitalInput03;
+	gKurve_1.Inputs.Nach_Stopper AT %IX."X20DI9371f".DigitalInput02;
+	gKurve_1.Inputs.Vor_Stopper AT %IX."X20DI9371f".DigitalInput01;
+	gTisch_8.Inputs.Stopper_eingefahren AT %IX."X20DI9371e".DigitalInput12;
+	gTisch_8.Inputs.Stopper_ausgefahren AT %IX."X20DI9371e".DigitalInput11;
+	gTisch_8.Inputs.Nach_Stopper AT %IX."X20DI9371e".DigitalInput10;
+	gTisch_8.Inputs.Vor_Stopper AT %IX."X20DI9371e".DigitalInput09;
+	gTisch_8.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371e".DigitalInput08;
+	gTisch_8.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371e".DigitalInput07;
+	gTisch_8.Inputs.Nach_Vorstopper AT %IX."X20DI9371e".DigitalInput06;
+	gTisch_8.Inputs.Vor_VorStopper AT %IX."X20DI9371e".DigitalInput05;
+	gTisch_8.Inputs.Stausensor AT %IX."X20DI9371e".DigitalInput04;
+	gTisch_7.Inputs.Stopper_eingefahren AT %IX."X20DI9371e".DigitalInput03;
+	gTisch_7.Inputs.Stopper_ausgefahren AT %IX."X20DI9371e".DigitalInput02;
+	gTisch_7.Inputs.Nach_Stopper AT %IX."X20DI9371e".DigitalInput01;
+	gTisch_7.Inputs.Vor_Stopper AT %IX."X20DI9371d".DigitalInput12;
+	gTisch_7.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371d".DigitalInput11;
+	gTisch_7.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371d".DigitalInput10;
+	gTisch_7.Inputs.Nach_Vorstopper AT %IX."X20DI9371d".DigitalInput09;
+	gTisch_7.Inputs.Vor_VorStopper AT %IX."X20DI9371d".DigitalInput08;
+	gTisch_7.Inputs.Stausensor AT %IX."X20DI9371d".DigitalInput07;
+	gTisch_6.Inputs.Stopper_eingefahren AT %IX."X20DI9371d".DigitalInput06;
+	gTisch_6.Inputs.Stopper_ausgefahren AT %IX."X20DI9371d".DigitalInput05;
+	gTisch_6.Inputs.Nach_Stopper AT %IX."X20DI9371d".DigitalInput04;
+	gTisch_6.Inputs.Vor_Stopper AT %IX."X20DI9371d".DigitalInput03;
+	gTisch_6.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371d".DigitalInput02;
+	gTisch_6.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371d".DigitalInput01;
+	gTisch_6.Inputs.Nach_Vorstopper AT %IX."X20DI9371c".DigitalInput12;
+	gTisch_6.Inputs.Vor_VorStopper AT %IX."X20DI9371c".DigitalInput11;
+	gTisch_6.Inputs.Stausensor AT %IX."X20DI9371c".DigitalInput10;
+	gTisch_5.Inputs.Stopper_eingefahren AT %IX."X20DI9371c".DigitalInput09;
+	gTisch_5.Inputs.Stopper_ausgefahren AT %IX."X20DI9371c".DigitalInput08;
+	gTisch_5.Inputs.Nach_Stopper AT %IX."X20DI9371c".DigitalInput07;
+	gTisch_5.Inputs.Vor_Stopper AT %IX."X20DI9371c".DigitalInput06;
+	gTisch_5.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371c".DigitalInput05;
+	gTisch_5.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371c".DigitalInput04;
+	gTisch_5.Inputs.Nach_Vorstopper AT %IX."X20DI9371c".DigitalInput03;
+	gTisch_5.Inputs.Vor_VorStopper AT %IX."X20DI9371c".DigitalInput02;
+	gTisch_5.Inputs.Stausensor AT %IX."X20DI9371c".DigitalInput01;
+	gTisch_4.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371b".DigitalInput12;
+	gTisch_4.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371b".DigitalInput11;
+	gTisch_4.Inputs.Nach_Vorstopper AT %IX."X20DI9371b".DigitalInput10;
+	gTisch_4.Inputs.Vor_VorStopper AT %IX."X20DI9371b".DigitalInput09;
+	gTisch_4.Inputs.Stopper_eingefahren AT %IX."X20DI9371b".DigitalInput08;
+	gTisch_4.Inputs.Stopper_ausgefahren AT %IX."X20DI9371b".DigitalInput07;
+	gTisch_4.Inputs.Nach_Stopper AT %IX."X20DI9371b".DigitalInput06;
+	gTisch_4.Inputs.Vor_Stopper AT %IX."X20DI9371b".DigitalInput05;
+	gTisch_4.Inputs.Stausensor AT %IX."X20DI9371b".DigitalInput04;
+	gTisch_3.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371b".DigitalInput03;
+	gTisch_3.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371b".DigitalInput02;
+	gTisch_3.Inputs.Nach_Vorstopper AT %IX."X20DI9371b".DigitalInput01;
+	gTisch_3.Inputs.Vor_VorStopper AT %IX."X20DI9371a".DigitalInput12;
+	gTisch_3.Inputs.Stopper_eingefahren AT %IX."X20DI9371a".DigitalInput11;
+	gTisch_3.Inputs.Stopper_ausgefahren AT %IX."X20DI9371a".DigitalInput10;
+	gTisch_3.Inputs.Nach_Stopper AT %IX."X20DI9371a".DigitalInput09;
+	gTisch_3.Inputs.Vor_Stopper AT %IX."X20DI9371a".DigitalInput08;
+	gTisch_3.Inputs.Stausensor AT %IX."X20DI9371a".DigitalInput07;
+	gTisch_2.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371a".DigitalInput06;
+	gTisch_2.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371a".DigitalInput05;
+	gTisch_2.Inputs.Nach_Vorstopper AT %IX."X20DI9371a".DigitalInput04;
+	gTisch_2.Inputs.Vor_VorStopper AT %IX."X20DI9371a".DigitalInput03;
+	gTisch_2.Inputs.Stopper_eingefahren AT %IX."X20DI9371a".DigitalInput02;
+	gTisch_2.Inputs.Stopper_ausgefahren AT %IX."X20DI9371a".DigitalInput01;
+	gTisch_2.Inputs.Nach_Stopper AT %IX."X20DI9371".DigitalInput12;
+	gTisch_2.Inputs.Vor_Stopper AT %IX."X20DI9371".DigitalInput11;
+	gTisch_2.Inputs.Stausensor AT %IX."X20DI9371".DigitalInput10;
+	gTisch_1.Inputs.Vorstopper_ausgefahren AT %IX."X20DI9371".DigitalInput09;
+	gTisch_1.Inputs.Vorstopper_eingefahren AT %IX."X20DI9371".DigitalInput08;
+	gTisch_1.Inputs.Nach_Vorstopper AT %IX."X20DI9371".DigitalInput07;
+	gTisch_1.Inputs.Vor_VorStopper AT %IX."X20DI9371".DigitalInput06;
+	gTisch_1.Inputs.Stopper_ausgefahren AT %IX."X20DI9371".DigitalInput05;
+	gTisch_1.Inputs.Stopper_eingefahren AT %IX."X20DI9371".DigitalInput04;
+	gTisch_1.Inputs.Nach_Stopper AT %IX."X20DI9371".DigitalInput03;
+	gTisch_1.Inputs.Vor_Stopper AT %IX."X20DI9371".DigitalInput02;
+	gTisch_1.Inputs.Stausensor AT %IX."X20DI9371".DigitalInput01;
+	gTisch_6.Outputs.Aushebeeinheit_ausfahren AT %QX."CPX-FB40_1".slot_4_DigitalOutput_CH3;
+	gTisch_6.Outputs.Aushebeeinheit_einfahren AT %QX."CPX-FB40_1".slot_4_DigitalOutput_CH2;
+	gTisch_8.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH7;
+	gTisch_8.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH6;
+	gTisch_7.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH5;
+	gTisch_7.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH4;
+	gTisch_6.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH3;
+	gTisch_6.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH2;
+	gTisch_5.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH1;
+	gTisch_5.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_3_DigitalOutput_CH0;
+	gTisch_4.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH7;
+	gTisch_4.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH6;
+	gTisch_3.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH5;
+	gTisch_3.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH4;
+	gTisch_2.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH3;
+	gTisch_2.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH2;
+	gTisch_1.Outputs.Vorstopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH1;
+	gTisch_1.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_2_DigitalOutput_CH0;
+	gKurve_4.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_1_DigitalOutput_CH6;
+	gKurve_3.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_1_DigitalOutput_CH4;
+	gKurve_2.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_1_DigitalOutput_CH2;
+	gKurve_1.Outputs.Stopper_einfahren AT %QX."CPX-FB40_1".slot_1_DigitalOutput_CH0;
 END_VAR

+ 4 - 0
Physical/Config1/5APC3100_KBU0_000/mappView/MainContentBinding.binding

@@ -79,5 +79,9 @@
 <Source xsi:type="opcUa" refId="::AsGlobalPV:Shutdown_URL" attribute="value" />
 <Target xsi:type="brease" contentRefId="ContentMain" widgetRefId="WebViewer1" attribute="src" />
 </Binding>
+<Binding mode="twoWay">
+<Source xsi:type="opcUa" refId="::AsGlobalPV:Shutdown_picture" attribute="value" />
+<Target xsi:type="brease" contentRefId="ContentMain" widgetRefId="PushButton3" attribute="image" />
+</Binding>
 </Bindings>
 </BindingsSet>

+ 1 - 1
Physical/Config1/Hardware.hwl

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8" standalone="yes"?>
 <BR.AS.HardwareTopology Version="0.0.0.1">
   <TimeStamps>
-    <TimeStamp LogicalPath="Config1.Hardware.hw" LastWriteTime="10/03/2022 12:02:01" />
+    <TimeStamp LogicalPath="Config1.Hardware.hw" LastWriteTime="04/13/2023 13:32:40" />
   </TimeStamps>
   <Modules>
     <Module Name="5APC3100_KBU0_000" Type="5APC3100.KBU0-000" X="-14111" Y="-1865" />

BIN
Physical/Config1/Hardware.jpg