- Beiträge
- 23.429
- Reaktionspunkte
- 7.973
-> Hier kostenlos registrieren
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:
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
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: