TIA Struct an WinCC Advanced binden

rostiger Nagel

Forums-Knochenbrecher
Teammitglied
Beiträge
16.377
Reaktionspunkte
5.989
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich habe bei der classic Welt für meine Störmeldungen immer ein Struct erstellt,
um diese leichter im Programm bzw auch in der Oberfläche leichter zu zuordnen.

Code:
Stoermeldungen : STRUCT 	
   _1008 : BOOL ;	//001 - Busausfall DP #5 / Achse Horizontal Portal
   _1009 : BOOL ;	//001 - Busausfall DP #6 / Achse Vertikal Portal
   _1010 : BOOL ;	//001 - Busausfall DP #7 / Anschaltung Meßstation
   _1011 : BOOL ;	//001 - Busausfall DP #8 / Achse Breite 1 Meßstation
   _1012 : BOOL ;	//001 - Busausfall DP #9 / Achse Breite 2 Meßstation
   _1013 : BOOL ;	
   _1014 : BOOL ;	
   _1015 : BOOL ;	
   _1000 : BOOL ;	//001 - Störung F-Baugruppe 001-A110
   _1001 : BOOL ;	//001 - Störung F-Baugruppe 001-A200
   _1002 : BOOL ;	//001 - Störung F-Baugruppe 001-A460
   _1003 : BOOL ;	//001 - Störung Rückführkreis Steuerung Ein
   _1004 : BOOL ;	//001 - Busausfall DP #1 / Master
   _1005 : BOOL ;	//001 - Busausfall DP #2 / Anschaltung Schaltschrank
   _1006 : BOOL ;	//001 - Busausfall DP #3 / Gateway FUs-Fördertechnik
   _1007 : BOOL ;	//001 - Busausfall DP #4 / Achse Länge Meßstation
   _1024 : BOOL ;	//003 -
   _1025 : BOOL ;	
   _1026 : BOOL ;	
   _1027 : BOOL ;	
   _1028 : BOOL ;	
   _1029 : BOOL ;	
   _1030 : BOOL ;	
   _1031 : BOOL ;	
   _1016 : BOOL ;	//002 - Störung Luft
   _1017 : BOOL ;	//002 - Störung Schutzschalter
   _1018 : BOOL ;	
   _1019 : BOOL ;	
   _1020 : BOOL ;	
   _1021 : BOOL ;	
   _1022 : BOOL ;	
   _1023 : BOOL ;	
   _1040 : BOOL ;	//010 - 
   _1041 : BOOL ;	
   _1042 : BOOL ;	
usw.

In Flexibel konnte ich dann einfach einfach auf die Adresse zeigen und sagen
das es ein Array ist mit 12 Wörter (oder so), dann war ich fertig.

Struct_Störmeldungen.jpg

Bei TIA bekomme ich das nicht hin, da gibt es diese möglichkeit nicht, da kann
ich nicht einfach sagen es ist ein Array, TIA will dann immer die genaue Formatierung.
Hat jemand ein Idee wie ich da etwas einstellen kann?
 
Moin RN,

so ähnlich geht es auch weiterhin, ich habe es halt in WORD aufgeteilt. Im DB habe ich es so wie du angelegt. Als Struct und dann so, dass es genau auf WORD passt. Im Beispiel sind es 4
Alarm_var.jpg

Alarm_Var_1.jpg
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Irgendwie habe ich es jetzt doch hinbekommen als Array [0..11] of Word anzulegen.
Ich hätte gerade bei TIA erwartet des einfacher und intuitiver ist, meiner Meinung nach
ist es sogar noch schlechter wie bei WinCCflexibel.

Dem versprochenen TIA-Prinzip, hätte ich es mir so vorgestellt, ich klicke bei der Variablenauswahl
auf den Struct und das Array oder Struct ist in WinCC richtig angelegt. So einfach ist es aber nicht!
Ich weiß jetzt nicht einmal wie ich da hingekommen bin, müsste es beim nächsten mal wieder mit
'Try and Error' versuchen.

TIA_Meldungen.jpg
 
Die gehen da halt von einem anderen prinzip aus. Du legst einen UDT in der Steuerung an und den gleichen in der Lib im HMI (Kannst du per drag & drop rüberziehen).
und dann legst du das mit einem klick an.

daschris
 
Zuletzt bearbeitet:
Die gehen da halt von einem anderen prinzip aus. Du legst einen UDT in der Steuerung an und den gleichen in der Lib im HMI (Kannst du per drag & drop rüberziehen).
und dann legst du das mit einem klick an.

daschris

Hallo daschris,
ich habe das mal versucht nachzustellen, aber bekomme es nicht hin.
Kannst du das mal näher erläutern.
 
Grundsätzlich ist die Idee das es UDTs auf der Steuerung
SPSUDT.jpg

und auch auf dem HMI gibt.
UDTWinCC.jpg
(In der Vergangenheit war das ja immer sehr schwierig - WinCC kannte das nicht, bei Flex hat nicht 100% auf die Steuerung gepasst.)
Jetzt sollen die UDTs auf S7 und auf HMI jeweils das gleiche können (z.b. Arrays Strukturen Timeformate usw)
In deinem Fall soll es ja nur eine Struktur sein die auf deine Alarmbits in der S7 passt, also ein array of Word.

D.h. du legst deine beiden Strukturen einmal an, und verwendest sie dann n-mal in den verschiedenen Maschinen Projekten, indem du ein tag vom Typ WinCCUDT anlegst. (Leider ist das noch nicht so toll (Copy und Paste usw geht nicht...hoffe da bessern sie nach)
Über die Lib funktion kannst du dann ja Änderungen verteilen und nachvollziehen.
Lib.jpg
Hilft euch das ein bisschen weiter?
 
Zurück
Oben