TIA V13: Variablennamen Länge begrenzt?

Automatinator

Level-1
Beiträge
115
Reaktionspunkte
2
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen!

Wird im TIA in keiner Form die Zeichenlänge eines Variablen-/Symbolnamen begrenzt?
Werden sie auch nirgends automatisch gekürzt? (so wie im Simatic Manager)

Danke schon im Vorraus!
 
Hi

doch die Namen sind begrenzt. Aber zum Glück recht großzügig.
Pro Schachtelungstiefe hat man in etwa 120 Zeichen. Alle Namen sind Unicode. Konstanten, Globale Tags, Elemente in Strukturen, Parameter in Schnittstellen, Bausteine, Datentypen. Du kannst also auch Chinesische Schriftzeichen und Kyrillisch mit einbauen. Ein Unicode Zeichen braucht zwei Bytes. Wenn du jetzt aber Sonderzeichen wie Blanks, oder Rechenzeichen wie + - * / im Namen hast, dann müssen Anführungszeichen rum. Daher kommen dann so idiotische Sachen wie "ja so heiß der DB".mit."dem+im Elementnamen".
Die Punkte außerhalb der "" Zählen nicht mit, aber die "" schon -- irgendwie -- manchmal.
Ich geh mal davon aus, dass die Namen intern auf 256 Bytes begrenzt sind, aber für "", ein vorangestelltes # und ein abschließendes $0000 auch irgendwie Platz sein muss. Deswegen gehen hier statt 128 nur 125 oder 124 oder 123 Zeichen.

Das gilt pro Schachtelungstiefe. Also 120 für den Namen des DB und dann nochmals 120 für die Elemente im DB und wenn das eine Struct ist dann nochmals 120. Man darf 8 ineinander schachteln, das macht nach Adam Riese 8*120 = 960 Zeichen. Twitter schafft das nicht!

Wer braucht den soooo lange Namen. Für mehr als 30 bin ich zu tippfaul.
Und Satz und Rechenzeichen in Namen halte ich für einen groben Unfug -- mein Kollege steht drauf :-(

'n schön' Tach auch
HB
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi

doch die Namen sind begrenzt. Aber zum Glück recht großzügig...
...
HB

Okay Danke!
Und ja Satz und Rechenzeichen machen keinen Sinn! Nur Buchstaben! (Zahlen sind auch immer unschön)
Aber was die Länge an geht, probier ich die Variablen immer so genau wie möglich/nötig zu benennen, dann kann man sich auch öfters mal mit guten Gewissen die Kommentare sparen...

Gruss
Der Automatinator
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das wird lustig ohne Nummern.
Ich habs zur Darstellung gekürzt ;)

Code:
FUNCTION_BLOCK "Brandklappen"TITLE =
VERSION : 0.0




VAR
  Klp01 : "Obj_ABLUFTKLP";    
  Klp02 : "Obj_ABLUFTKLP";    
  Klp03 : "Obj_ABLUFTKLP";    
  Klp04 : "Obj_ABLUFTKLP";    
  Klp05 : "Obj_ABLUFTKLP";    
  Klp06 : "Obj_ABLUFTKLP";    
  Klp07 : "Obj_ABLUFTKLP";    
  Klp08 : "Obj_ABLUFTKLP";    
  Klp09 : "Obj_ABLUFTKLP";    
  Klp10 : "Obj_ABLUFTKLP";    
  Klp11 : "Obj_ABLUFTKLP";    
  Klp12 : "Obj_ABLUFTKLP";    
  Klp13 : "Obj_ABLUFTKLP";    
  Klp14 : "Obj_ABLUFTKLP";    
  Klp15 : "Obj_ABLUFTKLP";    
  Klp16 : "Obj_ABLUFTKLP";    
  Klp17 : "Obj_ABLUFTKLP";    
  Klp18 : "Obj_ABLUFTKLP";    
  Klp19 : "Obj_ABLUFTKLP";    
  Klp20 : "Obj_ABLUFTKLP";    
  Klp21 : "Obj_ABLUFTKLP";    
  Klp22 : "Obj_ABLUFTKLP";    
  Klp23 : "Obj_ABLUFTKLP";    
  Klp24 : "Obj_ABLUFTKLP";    
  Klp25 : "Obj_ABLUFTKLP";    
  Klp26 : "Obj_ABLUFTKLP";    
  Klp27 : "Obj_ABLUFTKLP";    
  Klp28 : "Obj_ABLUFTKLP";    
  Klp29 : "Obj_ABLUFTKLP";    
  Klp30 : "Obj_ABLUFTKLP";    
  Klp31 : "Obj_ABLUFTKLP";    
  Klp32 : "Obj_ABLUFTKLP";    
  Klp33 : "Obj_ABLUFTKLP";    
  Klp34 : "Obj_ABLUFTKLP";    
  Klp35 : "Obj_ABLUFTKLP";    
  Klp36 : "Obj_ABLUFTKLP";    
  Klp37 : "Obj_ABLUFTKLP";    
  Klp38 : "Obj_ABLUFTKLP";    
  Klp39 : "Obj_ABLUFTKLP";    
  Klp40 : "Obj_ABLUFTKLP";    
  Klp41 : "Obj_ABLUFTKLP";    
  Klp42 : "Obj_ABLUFTKLP";    
  Klp43 : "Obj_ABLUFTKLP";    
  Klp44 : "Obj_ABLUFTKLP";    
  Klp45 : "Obj_ABLUFTKLP";    
  Klp46 : "Obj_ABLUFTKLP";    
  Klp47 : "Obj_ABLUFTKLP";    
  Klp48 : "Obj_ABLUFTKLP";    
  Klp49 : "Obj_ABLUFTKLP";    
  Klp50 : "Obj_ABLUFTKLP";    
  Klp51 : "Obj_ABLUFTKLP";    
  Klp52 : "Obj_ABLUFTKLP";    
  Klp53 : "Obj_ABLUFTKLP";    
  Klp54 : "Obj_ABLUFTKLP";    
  Klp55 : "Obj_ABLUFTKLP";    
  Klp56 : "Obj_ABLUFTKLP";    
  Klp57 : "Obj_ABLUFTKLP";    
  Klp58 : "Obj_ABLUFTKLP";    
  Klp59 : "Obj_ABLUFTKLP";    
  Klp60 : "Obj_ABLUFTKLP";    
  Klp61 : "Obj_ABLUFTKLP";    
  Klp62 : "Obj_ABLUFTKLP";    
  Klp63 : "Obj_ABLUFTKLP";    
  Klp64 : "Obj_ABLUFTKLP";    
  Klp65 : "Obj_ABLUFTKLP";    
  Klp66 : "Obj_ABLUFTKLP";    
  Klp67 : "Obj_ABLUFTKLP";    
  Klp68 : "Obj_ABLUFTKLP";    
  Klp69 : "Obj_ABLUFTKLP";    
  Klp70 : "Obj_ABLUFTKLP";    
  Klp71 : "Obj_ABLUFTKLP";    
  Klp72 : "Obj_ABLUFTKLP";    
  Klp73 : "Obj_ABLUFTKLP";    
  Klp74 : "Obj_ABLUFTKLP";    
  Klp75 : "Obj_ABLUFTKLP";    
  Klp76 : "Obj_ABLUFTKLP";    
  Klp77 : "Obj_ABLUFTKLP";    
  Klp78 : "Obj_ABLUFTKLP";    
  Klp79 : "Obj_ABLUFTKLP";    
  Klp80 : "Obj_ABLUFTKLP";    
  Klp81 : "Obj_ABLUFTKLP";    
  Klp82 : "Obj_ABLUFTKLP";    
  Klp83 : "Obj_ABLUFTKLP";    
  Klp84 : "Obj_ABLUFTKLP";    
  Klp85 : "Obj_ABLUFTKLP";    
  Klp86 : "Obj_ABLUFTKLP";    
  Klp87 : "Obj_ABLUFTKLP";    
  Klp88 : "Obj_ABLUFTKLP";    
  Klp89 : "Obj_ABLUFTKLP";    
  Klp90 : "Obj_ABLUFTKLP";    
  Klp91 : "Obj_ABLUFTKLP";    
  Klp92 : "Obj_ABLUFTKLP";    
  Klp93 : "Obj_ABLUFTKLP";    
  Klp94 : "Obj_ABLUFTKLP";    
  Klp95 : "Obj_ABLUFTKLP";    
  Klp96 : "Obj_ABLUFTKLP";    
  Klp97 : "Obj_ABLUFTKLP";    
END_VAR
BEGIN
NETWORK
TITLE =Klp Rütenen


      CALL #Klp01 (
           LS_PAR                   := "LRU_S_KLP"._DBW_0_0,
           AumaIN                   := "Sued_RU_KLP_LST->AS".Abl.Klp001,
           WD                       := "AS Röhre Süd"._DBX_1000_2,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_RU_KLP_AS->LST".Abl.Klp001,
           Klp_Fahr                 := "KlappenArrays".Klp[1]);


      CALL #Klp04 (
           LS_PAR                   := "LRU_S_KLP"._DBW_66_0,
           AumaIN                   := "Sued_RU_KLP_LST->AS".Abl.Klp004,
           WD                       := "AS Röhre Süd"._DBX_1000_2,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_RU_KLP_AS->LST".Abl.Klp004,
           Klp_Fahr                 := "KlappenArrays".Klp[4]);


      CALL #Klp06 (
           LS_PAR                   := "LRU_S_KLP"._DBW_110_0,
           AumaIN                   := "Sued_RU_KLP_LST->AS".Abl.Klp006,
           WD                       := "AS Röhre Süd"._DBX_1000_2,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_RU_KLP_AS->LST".Abl.Klp006,
           Klp_Fahr                 := "KlappenArrays".Klp[6]);


      CALL #Klp08 (
           LS_PAR                   := "LRU_S_KLP"._DBW_154_0,
           AumaIN                   := "Sued_RU_KLP_LST->AS".Abl.Klp008,
           WD                       := "AS Röhre Süd"._DBX_1000_2,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_RU_KLP_AS->LST".Abl.Klp008,
           Klp_Fahr                 := "KlappenArrays".Klp[8]);


      CALL #Klp10 (
           LS_PAR                   := "LRU_S_KLP"._DBW_198_0,
           AumaIN                   := "Sued_RU_KLP_LST->AS".Abl.Klp010,
           WD                       := "AS Röhre Süd"._DBX_1000_2,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_RU_KLP_AS->LST".Abl.Klp010,
           Klp_Fahr                 := "KlappenArrays".Klp[10]);


      CALL #Klp12 (
           LS_PAR                   := "LRU_S_KLP"._DBW_242_0,
           AumaIN                   := "Sued_RU_KLP_LST->AS".Abl.Klp012,
           WD                       := "AS Röhre Süd"._DBX_1000_2,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_RU_KLP_AS->LST".Abl.Klp012,
           Klp_Fahr                 := "KlappenArrays".Klp[12]);


      CALL #Klp14 (
           LS_PAR                   := "LRU_S_KLP"._DBW_286_0,
           AumaIN                   := "Sued_RU_KLP_LST->AS".Abl.Klp014,
           WD                       := "AS Röhre Süd"._DBX_1000_2,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_RU_KLP_AS->LST".Abl.Klp014,
           Klp_Fahr                 := "KlappenArrays".Klp[14]);


      CALL #Klp16 (
           LS_PAR                   := "LRU_S_KLP"._DBW_330_0,
           AumaIN                   := "Sued_RU_KLP_LST->AS".Abl.Klp016,
           WD                       := "AS Röhre Süd"._DBX_1000_2,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_RU_KLP_AS->LST".Abl.Klp016,
           Klp_Fahr                 := "KlappenArrays".Klp[16]);


      CALL #Klp18 (
           LS_PAR                   := "LRU_S_KLP"._DBW_374_0,
           AumaIN                   := "Sued_RU_KLP_LST->AS".Abl.Klp018,
           WD                       := "AS Röhre Süd"._DBX_1000_2,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_RU_KLP_AS->LST".Abl.Klp018,
           Klp_Fahr                 := "KlappenArrays".Klp[18]);




NETWORK
TITLE =Klp Hattig KLPa


      CALL #Klp02 (
           LS_PAR                   := "LRU_S_KLP"._DBW_22_0,
           AumaIN                   := "Sued_HA_KLPa_LST->AS".Abl.Klp002,
           WD                       := "AS Röhre Süd"._DBX_1000_5,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_HA_KLPa_AS->LST".Abl.Klp002,
           Klp_Fahr                 := "KlappenArrays".Klp[2]);


      CALL #Klp03 (
           LS_PAR                   := "LRU_S_KLP"._DBW_44_0,
           AumaIN                   := "Sued_HA_KLPa_LST->AS".Abl.Klp003,
           WD                       := "AS Röhre Süd"._DBX_1000_5,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_HA_KLPa_AS->LST".Abl.Klp003,
           Klp_Fahr                 := "KlappenArrays".Klp[3]);


      CALL #Klp05 (
           LS_PAR                   := "LRU_S_KLP"._DBW_88_0,
           AumaIN                   := "Sued_HA_KLPa_LST->AS".Abl.Klp005,
           WD                       := "AS Röhre Süd"._DBX_1000_5,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_HA_KLPa_AS->LST".Abl.Klp005,
           Klp_Fahr                 := "KlappenArrays".Klp[5]);


      CALL #Klp07 (
           LS_PAR                   := "LRU_S_KLP"._DBW_132_0,
           AumaIN                   := "Sued_HA_KLPa_LST->AS".Abl.Klp007,
           WD                       := "AS Röhre Süd"._DBX_1000_5,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_HA_KLPa_AS->LST".Abl.Klp007,
           Klp_Fahr                 := "KlappenArrays".Klp[7]);


      CALL #Klp09 (
           LS_PAR                   := "LRU_S_KLP"._DBW_176_0,
           AumaIN                   := "Sued_HA_KLPa_LST->AS".Abl.Klp009,
           WD                       := "AS Röhre Süd"._DBX_1000_5,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_HA_KLPa_AS->LST".Abl.Klp009,
           Klp_Fahr                 := "KlappenArrays".Klp[9]);


      CALL #Klp11 (
           LS_PAR                   := "LRU_S_KLP"._DBW_222_0,
           AumaIN                   := "Sued_HA_KLPa_LST->AS".Abl.Klp011,
           WD                       := "AS Röhre Süd"._DBX_1000_5,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_HA_KLPa_AS->LST".Abl.Klp011,
           Klp_Fahr                 := "KlappenArrays".Klp[11]);


      CALL #Klp13 (
           LS_PAR                   := "LRU_S_KLP"._DBW_264_0,
           AumaIN                   := "Sued_HA_KLPa_LST->AS".Abl.Klp013,
           WD                       := "AS Röhre Süd"._DBX_1000_5,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_HA_KLPa_AS->LST".Abl.Klp013,
           Klp_Fahr                 := "KlappenArrays".Klp[13]);


      CALL #Klp15 (
           LS_PAR                   := "LRU_S_KLP"._DBW_308_0,
           AumaIN                   := "Sued_HA_KLPa_LST->AS".Abl.Klp015,
           WD                       := "AS Röhre Süd"._DBX_1000_5,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_HA_KLPa_AS->LST".Abl.Klp015,
           Klp_Fahr                 := "KlappenArrays".Klp[15]);


      CALL #Klp17 (
           LS_PAR                   := "LRU_S_KLP"._DBW_352_0,
           AumaIN                   := "Sued_HA_KLPa_LST->AS".Abl.Klp017,
           WD                       := "AS Röhre Süd"._DBX_1000_5,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_HA_KLPa_AS->LST".Abl.Klp017,
           Klp_Fahr                 := "KlappenArrays".Klp[17]);


      CALL #Klp29 (
           LS_PAR                   := "LRU_S_KLP"._DBW_396_0,
           AumaIN                   := "Sued_HA_KLPa_LST->AS".Abl.Klp019,
           WD                       := "AS Röhre Süd"._DBX_1000_5,
           Global_BF_Bedienart      := "AS Röhre Süd"._DBW_38_0,
           AumaOut                  := "Sued_HA_KLPa_AS->LST".Abl.Klp019,
           Klp_Fahr                 := "KlappenArrays".Klp[19]);


END_FUNCTION_BLOCK
 
Der Automatinator kennt vielleicht nur kleine Projekte, wo es von jeder Sorte Antrieb genau 1 gibt?

Was ist wohl besser: Antrieb.Rollenförderer_derImZweitenTKLnachDerViertenBiegungLinksAbzweigt oder Antrieb.Rollenförderer_821
Gerade eine numerische Tag-Nummer identifiziert Antriebe eindeutig. Die wünsche ich im Lageplan, im Schaltplan und im Programm mit der gleichen Nummer zu finden.

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Klar sollte der Symboltag etwas aussagen. Aber man muss auch bedenken dass man das alles eintippen muss. Ich bevorzuge kurze bündige Bezeichnungen. Für die Beschreibung gibts den Symbolkommentar. Da kann man dann ja sehen ob man sich vertippt hat.

mfG René
 
Selbsterklärende Variablennamen sind schon prima.

Nur habe ich manchmal mit der Anlagengröße zu kämpfen.
Dann kommen Namen zusammen wie:

Code:
= Antrieb.PumpeSchmierung.in_der_Halle_in_Richtung_Froschbach.links
= Antrieb.PumpeSchmierung.in_der_Halle_in_Richtung_Wolfenbüttel.rechts
= Antrieb.PumpeSchmierung.in_der_Halle_in_Richtung_Hintertupfingen.links

Dann kommen eben doch wieder Nummern zum Einsatz, meist in Verbindung mit Buchstaben...
Das ganze wird dann durchnummeriert und in einer Übersichtszeichnung dokumentiert.

Entscheidend für den Erfolg ist, dass Schlosser, Elektriker, Programmierer und Anlagenbetreiber mit der selben Zeichnung arbeiten! :rolleyes:

Gruß
Chräshe

Edit: war ich etwas zu langsam – zu viele Buchstaben...?:confused:
 
Zurück
Oben