Skip to main content

Objekt: POU Locations

Dieses Objekt ist nur bei speziellen Steuerungen verfügbar und wird automatisch im Gerätebaum angezeigt. Das Objekt kann nicht manuell hinzugefügt oder entfernt werden.

Das Objekt kann verwendet werden, um den ausführbaren Code einer Applikation in verschiedene Codebereiche auf der Steuerung zu verteilen. Insbesondere kleinere Steuerungen haben oft einen beschränkten internen Codebereich (Flash-Speicher). Falls auf der Steuerung ein oder mehrere weitere Codebereiche (zum Beispiel externer Flash-Speicher) zur Verfügung steht/stehen, kann die Lage der Codebausteine einer Applikation gezielt verändert werden. Im Falle einer Sicherheitssteuerung (SIL2) kann dies auch dazu verwendet werden, nicht-sicherheitsrelevante Codebausteine oder ganze Bibliotheken in diesen externen Speicher zu verschieben.

Wenn keine speziellen Vorgaben gemacht werden, dann werden die Codebausteine sequentiell in den Codebereichen abgelegt (default). Das heißt: Erst wenn der erste Codebereich gefüllt ist, werden die folgenden Codebausteine in die folgenden Bereiche gelegt. Im Editor POU Locations sehen Sie die aktuelle Lage der Bausteine in den Speicherbereichen und können sie gezielt verändern. Dies kann speziell im Fall einer Sicherheitsapplikation nötig werden, um alle sicheren Bausteine in den sicheren internen Speicherbereich zu bekommen.

Für weitere Informationen siehe: Applikationscode auf verschiedene Speicherbereiche verteilen

Editor: POU Locations

Mit einem Doppelklick auf das Objekt POU Locations im Gerätebaum der Steuerung öffnen Sie den Editor. Zunächst enthält dieser nur den Eintrag <Applikation>. Nach einer Codegenerierung werden alle Programmbausteine der Applikation mit ihrem Objekttyp, ihrer aktuellen Position im Speicher und ihrer Codegröße angezeigt.

In der Spalte Konfigurierte Position können Sie pro Baustein oder auch pro Bibliothek einen von Aktuelle Position abweichenden Speicherbereich einstellen.

Damit die Bausteine an die neu konfigurierten Speicherorte verschoben werden, müssen Sie zunächst Bereinigen und dann erneut Code erzeugen!

Tipp

Bitte beachten Sie die Meldungen in der Kategorie POU Locations. Hier wird auch angezeigt, falls ein Codebaustein nicht wie erwartet platziert werden kann.

Bereinigen

Löschen der Übersetzungsinformation für die Applikation

Entspricht dem Menübefehl Erstellen → Bereinigen

Voraussetzung für das Verschieben der Bausteine an die konfigurierten Speicherorte!

Code erzeugen

Starten der Codeerzeugung für die Applikation

Entspricht dem Menübefehl Erstellen → Code erzeugen

Voraussetzung für das Verschieben der Bausteine an die konfigurierten Speicherorte!

Objekte

Objekte der Applikation, inklusive der Objekte aus den referenzierten Bibliotheken

Typ

Objekttyp

Beispiele: Functionblock, Method, Library

Aktuelle Position

Aktueller Speicherort des Bausteins: area_<n>

Konfigurierte Position

Konfigurierter Speicherort, an den der Baustein bei der nächsten Codeerzeugung verschoben wird. Mögliche Werte:

  • default: Automatisch zugewiesener Bereich

  • area_<n>: Explizit zugewiesener Speicherbereich, n=Nummer

Codegröße

Codegröße des Bausteins in Bytes