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.
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“!
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: |
„Konfigurierte Position“ |
Konfigurierter Speicherort, an den der Baustein bei der nächsten Codeerzeugung verschoben wird. Mögliche Werte:
|
„Codegröße“ |
Codegröße des Bausteins in Bytes |