×
Siemens Industry Online Support
Siemens AG
Beitragstyp: FAQ Beitrags-ID: 10651842, Beitragsdatum: 21.06.2010
(1)
Bewerten

Wie können Sie die eigene Instanz-DB Nummer eines Programmbausteins ermitteln, der in der SCL programmiert werden soll?

  • Beitrag
  • Betrifft Produkt(e)
Im Gegensatz zu AWL gibt es in SCL keinen Befehl, um die eigene Instanz-DB Nummer direkt zu ermitteln. Durch den Zugriff auf eine ANY-Variable, die auf einen eigenen Bausteinparameter zeigt, kann die Instanz-DB Nummer ausgelesen werden.

Vorgehensweise
Im folgenden Beispiel wird die eigene Instanz-DB Nummer ermittelt und als Integerwert an einem Bausteinausgang angezeigt. 

Hierfür sind folgende Programmschritte erforderlich:

  1. Anlegen einer temporären Hilfsvariablen des Datentyps ANY.
  2. Deklarieren einer eigenen Datentypsicht auf diese Hilfsvariable
  3. Der Hilfsvariablen wird ein beliebiger Bausteinein-, ausgang oder eine statische Variable zugewiesen. Damit enthält die Hilfsvariable einen ANY-Zeiger auf den zuvor zugewiesen Parameter bzw. Variable. Der ANY-Zeiger besitzt eine Länge von 10 Bytes. Er enthält in Byte 4 und Byte 5 die gesuchte Instanz-DB Nummer.
  4. Über die selbst definierte Datentypsicht erfolgt ein Wort-Zugriff auf das Byte 4 und der Inhalt wird in einem Bausteinausgang umgespeichert.
  5. Der Bausteinausgang enthält nun die eigene Instanz-DB Nummer

In der folgenden Acrobat Reader Datei ist der SCL Code dargestellt:
ErmittleEigeneInstanz_d.pdf ( 1 KB )


Securityhinweise
Um technische Infrastruktur, Systeme, Maschinen und Netzwerke gegen Cyber-Bedrohungen zu sichern, ist es erforderlich, ein ganzheitliches IT Security-Konzept zu implementieren (und kontinuierlich aufrechtzuerhalten), das dem aktuellen Stand der Technik entspricht. Die Produkte und Lösungen von Siemens formen nur einen Bestandteil eines solchen Konzepts. Weitergehende Informationen über Cyber Security finden Sie unter
https://www.siemens.com/cybersecurity#Ouraspiration.