Projekt - S5 AWL --> S7 FUP ( 1215c TIA Portal )

Runaway

Level-1
Beiträge
2
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Nabend zusammen , ich bin Elektroniker für Betriebstechnik im 3. Lehrjahr.

Ich habe von meinem Meister ein Projekt zugewiesen bekommen, bei welchem ich ein altes S5 ( in AWL Programmiert ) Programm nach S7 ( Fup ) für eine S7 1215c umschreiben soll.Da ich mich ziemlich fit im Umgang mit S7 finde und den Großteil mir selber oder durch die Berufsschule angeeignet habe aber nun doch an meine grenze stoße gerade was S5 angeht weil ich damit so noch nicht wirklich zutun hatte/habe und auch durch Recherche im Internet in verschiedensten Foren / Websites auf keinen grünen Ast gekommen bin , suche ich nun hier nach Hilfe :ROFLMAO:

Mein Problem ist in 2 Netzwerken ( die beiden Netwerke kommen nicht nacheinander im S5 Programm , ich nenne sie hier einfach NW 1 und NW 2 ) , ich komme einfach nicht dahinter wie ich diese gescheit in FUP umwandeln kann.

NW 1 : Es geht mir hier um den SE T 12.

L KT 200.1
U M 102.2
UN M 102.3
SE T 12


UN M 102.2
SPB = M003
U T 12
S M 102.3
R M 102.2
M003


NW 2 : In FUB im TIA Portal kann ich Pro Netzwerk nur eine Sprungmarke setzen , muss ich nun das Netzwerk aufteilen ? Gibt es eine Möglichkeit wie im S5 Netzwerk genau in eine bestimmte Zeile zu Springen ? , was bedeutet dieses <F und >=F ? Worin liegt der Unterschied zwischen TON - Einschaltverzögerung erzeugen und Zeit als Einschaltverzögerung Starten ? Und welchen nutze ich für den ZV V 2 am besten ?


U M 102.6
R Z 1
ZV Z 2


UN M 102.6
SPB = M008
L Z 2
L KF +2
<F
UN M 64.5
S M 102.6
SPB = M009
L Z 2
L KF +3
>=F
UN M 64.5
O M 64.5
S M 102.0
M009 R M 102.0
M008


Ich hoffe hier sind ein paar eingefleischte S5´ler unterwegs die mir da behilflich sein können.

mfg Runaway
 
Zuletzt bearbeitet:
<F kleiner Integerzahl
>F größer Integerzahl
ZV Z2 zählt bei Flanke pos. des M102.6 den Zähler 2 hinauf

In deinem Netzwerk1
Der U Merker1 und nicht Merker2 starten eine Einschaltverzögereung von 20s... ich kenne TIA nicht, aber das sollte sich in FUP machen lassen
 
Nabend und danke schon mal für die ersten beiden Antworten , NW 1 habe ich glaube ich gelöst .

NW 1.jpg


Nur das NW 2 bereitet mir richtig Kopfschmerzen , vor allem weiß ich nicht wie das mit <F kleiner Integerzahl , >F größer Integerzahl sowie den beiden Sprüngen anstellen muss , da ich FUP ja nur eine Sprungmarke setzen kann.
 
NW 1 habe ich glaube ich gelöst
Ich habe noch keine großen Erfahrungen mit TIA, habe auch gerade keins zur Verfügung, doch für mich sieht Dein Sprung zu M003 wie ein Rückwärtssprung aus :( Das JMPN scheint mir auch falsch. Du hast wohl nicht nur ein Problem mit S5-AWL-Code, sondern auch mit FUP ... Gerade zum Übersetzen von einer Programmiersprache in die andere muß man beide Sprachen sehr gut beherrschen.

Nur das NW 2 bereitet mir richtig Kopfschmerzen
[...]
da ich FUP ja nur eine Sprungmarke setzen kann.
Allgemeiner Tip: Du mußt den Code nicht 1:1 übersetzen (womöglich mit den gleichen Umständlichkeiten), sondern einen Code erzeugen, der gleich funktioniert. Der kann rückübersetzt auch anders aussehen. Sprünge sollte man nur benutzen, wenn es nicht anders geht.

Übrigens finde ich, daß es einfacher ist, AWL in KOP zu übersetzen als in FUP. Ist aber kein Problem: man kann ja zunächst in KOP übersetzen und dann die Ansicht auf FUP umschalten.

NW1:
Vergiss M003 und den Sprung, wenn nicht von woanders zu M003 gesprungen wird.
Da war sich der Programmierer wohl etwas "unsicher" (wie z.B. so manche "Angst"-Klammern in AWL) oder der Code war früher mal größer (und enthielt Code der übersprungen werden musste) und wurde nach der Änderung nicht 100% "zurückgebaut".
Der Code sieht aus wie eine Schrittkette, da legt man manchmal Wert darauf, daß man die Schrittmerker besser sieht. Womöglich wollte der Programmierer auch sicherstellen, daß der Code nicht ausgeführt wird, wenn der entsprechende Schritt nicht aktiv ist?

NW2:
Willst Du die Sprünge und Marken M008 und M009 beibehalten, dann mußt Du den Code auf mehrere Netzwerke aufteilen.
Du kannst aber auch Code programmieren, der das gleiche tut, aber ohne Sprünge auskommt. Dann kannst Du den Code auch noch optimieren, so daß nur der Code übrigbleibt, der wirklich etwas bewirkt. Dieses NW2 enthält zum größten Teil unnützen Code.

Eventuell gibt es noch ein Problem mit der CMP-Box in TIA, vielleicht akzeptiert die keinen Zähler am Eingang. Dann müsstest Du vor dem Vergleich Z2 auf eine Variable mit zugelassenem Datentyp kopieren (MOVE).

Im Anhang meine Übersetzungen in KOP und FUP "Classic".

Harald
 

Anhänge

  • NW2_KOP.gif
    NW2_KOP.gif
    5,3 KB · Aufrufe: 20
  • NW1_FUP.gif
    NW1_FUP.gif
    4,2 KB · Aufrufe: 28
  • NW1_KOP.gif
    NW1_KOP.gif
    3,8 KB · Aufrufe: 18
  • NW2_FUP.gif
    NW2_FUP.gif
    7 KB · Aufrufe: 26
Zurück
Oben