Speicherauslastung

Der CX7080 hat 32 MB Arbeitsspeicher, der von der Firmware (TC/RTOS) und von TwinCAT (TwinCAT-Speicher) verwendet wird. Der TwinCAT-Speicher unterteilt sich weiter in den Router-Speicher und den SPS-Speicher. Der Router-Speicher wird für die ADS-Kommunikation und der SPS-Speicher für das eigentliche SPS-Programm inklusive TcConfiguration, Mapping und Daten verwendet.

Dem CX7080, stehen 19,1 MB TwinCAT-Speicher zur Verfügung. Weil die Größe des Speichers begrenzt ist, ist es wichtig die Speicherauslastung zu kontrollieren und ihr SPS-Projekt bei einer Überschreitung anzupassen.

Router-Speicher

Sie können zum einen die Größe des Router-Speichers in TwinCAT anpassen und abhängig von der tatsächlich verwendeten ADS-Kommunikation, einen kleineren Router-Speicher einstellen.

Speicherauslastung 1:
Einstellungen für Router-Speicher im TwinCAT System Manager.

Standardmäßig wird in TwinCAT ein Wert von 32 MB eingetragen, der beim CX7080 wiederum auf 9 MB begrenzt wird, wegen des kleinen Arbeitsspeicher beim CX7080. Ein Router-Speicher von 9 MB ist in der Regel viel zu groß für eine Kleinsteuerung. Beim CX7080 ist ein Router-Speicher von 4 MB empfehlenswert und kann unter Umständen sogar noch kleiner gewählt werden, wenn wenig bis gar keine ADS-Kommunikation verwendet wird. Ein Router-Speicher von mindestens 1 MB sollte jedoch eingehalten und nicht unterschritten werden. Wieviel Router-Speicher verwendet wird, lässt sich mit dem Funktionsbaustein FB_GetRouterStatusInfo oder alternativ mit dem Beckhoff Device Manager kann ermitteln.

Beachten Sie, dass der Router-Speicher erst mit einem Power Off/On des CX7080 neu angelegt wird. Ein TwinCAT-Neustart reicht nicht aus. Als Faustregel gilt: Je kleiner der Router-Speicher für die ADS-Kommunikation gewählt wird, desto größer kann die Applikation sein, also das SPS-Programm, TcConfiguration, Mapping und Daten.

Speicherauslastung bestimmen

Mit dem Funktionsbaustein FB_GetRouterStatusInfo oder alternativ mit dem Beckhoff Device Manager kann ermittelt werden, wie groß der Speicherbedarf des Router-Speichers ist.

Speicherauslastung 2:
Auslastung des Router-und TwinCAT-Speichers.

Über die Anzeige Router kann der Speicherbedarf des Router-Speichers bestimmt werden. In diesem Beispiel werden 20,5 kB von maximal 4 MB belegt. Die Anzeige TcOs zeigt den gesamten Speicherverbrauch des TwinCAT-Speichers inklusive Router-Speicher und SPS-Programm an. In diesem Beispiel werden insgesamt 7,1 MB belegt.

Mit Hilfe dieser Anzeige, kann auch die Größe des SPS-Programms berechnet werden, da der Router-Speicher mit 4 MB fest definiert und Teil des TwinCAT-Speichers ist. Zieht man die 4 MB von 7,1 MB ab, so belegt das SPS-Programm 3,1 MB.

Speicherreserve

Da in diesem Beispiel beim TwinCAT-Speicher 7,1 MB von 19,1 MB belegt werden, bleibt eine Reserve von 12 MB für das SPS-Programm. Beachten Sie, dass für ein Online-Change in TwinCAT kurzzeitig mehr Speicher gebraucht wird. Wenn Sie die Funktion Online-Change verwenden wollen, ist es ratsam immer eine gewisse Reserve vorzuhalten. Im extremsten Fall kann das Doppelte des aktuell verbrauchten SPS-Programms erforderlich sein, um ein Online-Change auszuführen. In TwinCAT wird eine Fehlermeldung angezeigt, sobald nicht genügend Speicher für den Online-Change zur Verfügung steht.