Umsetzung von AWL nach SCL TIA V11

Ingo dV

Level-1
Beiträge
61
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin!

Leider muss ich mein geliebtes AWL (teilweise) aufgeben, da Herr Siemens kein AWL in die 1200er eingebaut hat.

Ich lerne also gerade SCL und würde gerne durch euch prüfen lassen ob ich die Dinge so richtig sehen.
Hier ist mein AWL Code (Info - alle Werte sind REAL):

Code:
      L     #V_Soll                     // Geschwindigkeifaktor =
      L     #V_min_REAL                 // Letzte aktuelle Speed - Vmin / Reststrecke
      -R                                // 
      L     #Reststrecke                // 
      /R                                // 
      SPO   RNUL                        // Sprung bei Ergebnis 'Overflow'
      L     #Tacho_x2                   // V-Bremsen bei Restweg = Geschwindigkeitsfaktor * Tacho_x2
      *R                                // 
      L     #V_Soll                     // 
      TAK                               // 
      -R                                // 
      SPPZ  RSTW                        // Sprung bei Ergebnis grösser/gleich '0'
RNUL: L     0.000000e+000               // V auf '0' begrenzen
RSTW: T     #V_Bremsen_RestWeg          // *** V-Bremsen bei Restweg
      L     #V_Soll                     // Sicherheitsabfrage 
      >R                                // 
      SPB   RNUL                        // *** Rücksprung zur Begrenzung

Und hier der SCL Code (Info - #Regeln.V_Min ist INT)

Code:
#V_Bremsen_RestWeg := (#V_Soll - #Regeln.V_Min) / #Reststrecke;


IF ENO = false THEN;
  #V_Bremsen_RestWeg := 0.0;
ELSE;
  #V_Bremsen_RestWeg := #V_Soll - #V_Bremsen_RestWeg * #Tacho_x2;
  IF #V_Bremsen_RestWeg < 0.0 OR #V_Bremsen_RestWeg > #V_Soll THEN;
    #V_Bremsen_RestWeg := 0.0;
  END_IF;
 END_IF;

Und hier meine Fragen:
V11 - muss ich ENO aktivieren (wie bei Step7 - OK Flag setzten) oder ist die Funktion immer ein?
Ist die Funktionswahl ENO richtig - in AWL habe ich das mit SPO gelöst?
In AWL habe ich aus #Regeln.V_Min erst einen REAL Wert gemacht. Sehe ich es richtig das SCL V11 eine Autokonvertierung macht?
Ich habe eine 'Rechenergebnis Variable' gespart in dem ich bei der ersten Rechnung eine Variable nutze, die in einer weiteren Rechnung mit sich selbst verändert wird.
Code:
[B]#V_Bremsen_RestWeg[/B] := #V_Soll - [B]#V_Bremsen_RestWeg[/B] * #Tacho_x2;
Darf ich das in SCL so machen?

Schon mal vielen Dank für eure Antworten
 
Zuletzt bearbeitet:
Zurück
Oben