TIA Achtung: Siemens FAQ SCL-Programm wird nach der Übersetzung in TIA Portal nicht korrekt ausgeführt

DeltaMikeAir

User des Jahres 2018; 2023
Beiträge
24.815
Reaktionspunkte
8.917
Nicht ganz unerheblich, daher sicherlich für viele interessant und wichtig:
Siemens FAQ: SCL-Programm wird nach der Übersetzung in TIA Portal nicht korrekt ausgeführt

Ab hier das FAQ =>

Installieren Sie das Patch zu TIA Portal V19 Update 2 oder V18 Update 4, um das Systemverhalten zu vermeiden.

Beschreibung
Das Update 2 zu TIA Portal V19 und das Update 4 zu TIA Portal V18 verursacht eine Vertauschung von Zuweisungen während der Codegenerierung im SCL-Editor. Verursacht wird das Systemverhalten, wenn Struktur-Variablen innerhalb verschachtelter Steuerungsanweisungen verwendet werden. Zum Beispiel:
  • IF-Anweisung innerhalb von einer CASE-Anweisung
  • IF-Anweisung innerhalb einer IF-Anweisung

Wenn Struktur-Variablen außerhalb einer Steuerungsanweisung Werte zugewiesen werden und diese dann erneut, zusammen mit einem Bausteinaufruf, innerhalb des verschachtelten IF-ELSE-Blocks verwendet wird, generiert der SCL-Code-Optimizer keine neuen Zuweisungen für alle nachfolgenden Struktur-Variablen im verschachtelten IF-ELSE-Block.

IF-und CASE-Anweisungen in beliebigen verschachtelten Kombinationen können zu dem beschriebenen Systemverhalten führen.

Bei den nachfolgenden Bildern zeigen wir Ihnen Programmbeispiele, wo der SCL-Code-Optimizer keine neuen Zuweisungen generiert. Vergleichen Sie die Programmbeispiele mit Ihrem Programm, ob das Systemverhalten für Ihren Fall zutrifft.
Beispiel 1
Die Variable "Static_2" sollte den Wert 8 erhalten (der Wert der Variablen "Structure.Select"), aber es wird der Wert 7 (Wert von "Structure.Control") zugewiesen.

Bild 1
Beispiel 2
Die Variable "Static_2" sollte den Wert 8 erhalten (der Wert der Variablen "Structure.Select"), aber es wird der Wert 7 (Wert von "Structure.Control") zugewiesen.

Bild 2
Beispiel 3
Die Array-Variablen "Position[2]" und "Position[3]" sollten die Werte der Variablen "structArray[0].y" bzw. structArray[0].z erhalten. Aber beide Variablen erhalten den Wert von der Variablen "StructArray[0].x".

Bild 3
Beispiel 4
Die Variable "Static_2" sollte den Wert 8 erhalten (der Wert der Variablen "UDT.Select"), aber es wird der Wert 7 (Wert von "UDT.Control") zugewiesen.

Bild 4
Abhilfe
Installieren Sie das Patch zu den TIA Portal Versionen V19 Update 2 oder V18 Update 4. Dieser Patch sorgt dafür, dass der SCL-Code-Optimizer auch für alle folgenden Struktur-Variablen die Zuweisungen generiert. Nach der Installation kommt es nicht mehr zu dem oben beschriebenen Verhalten.

Den Download zum Patch erhalten Sie vom Technical Support.
Nutzen Sie den Link zur Erzeugung eines Support Request: https://support.industry.siemens.com/cs/de/de/sc/4868
 
Zuletzt bearbeitet:
Und man bekommt den Patch nur über einen Support request. Geht es noch?
Man kann die Updates noch laden und dort ist noch kein Hotfix bereitgestellt, und keine Warnung das Update nicht zu laden.

Vielen Dank für die Information, Siemens selbst informiert einen ja nicht aktiv.
 
Gott sei Dank hab ich meine betreuten Atomendlager noch nicht auf V19 Upd2 hochgerüstet. Normalerweise mach ich das sofort nach erscheinen, aber irgendwie hab ich das verpennt. Na ja, geht halt mal die falsche Abwasserklappe auf, was solls...
 
Siemens bekleckert sich zurzeit absolut nicht mit Rum. Erst wird nach Update des neusten Updates ein Crash durch Übersetzen erzeugt und neuerdings macht die SPS in SCL nicht mehr das, was sie machen soll. Und alle diese „Patches“ muss man händisch vom Siemens Support anfragen, obwohl das gravierende Fehler sind. Das sollte man doch über den TIA-Administrator automatisch zur Verfügung stellen können. Und zusätzlich wäre ein zurückziehen von diesen fehlerhaften Updates wünschenswert ....
 
Reaktionen: rlw
Man sollte dem Verein mal die Debug Kosten in Rechnung stellen.
Bei uns geht die Tendenz ganz klar weg von Siemens!
 
Fettes Danke Schön an @DeltaMikeAir,
perfektes Timing, gestern durch Zufall den Thread gesehen.
Heute fliegt mir die erste Maschine um die Ohren.

@Siemens: der Bug ist mehr als uncool. Bei uns hats jetzt "nur" Teile falsch aussortiert.
 
Für die Nutzung dieser Website sind Cookies erforderlich. Du musst diese akzeptieren, um die Website weiter nutzen zu können. Erfahre mehr…