Heap-Speicher erhöhen
Hinweis | |
Überdimensionierter Heap-Speicher Bei einem zu großen Heap-Speicher wird der gesamte Arbeitsspeicher allokiert, was das zu führt, dass das System nicht mehr richtig arbeitet. Achten Sie darauf, dass der Heap-Speicher im Verhältnis zum verfügbaren Arbeitsspeicher nicht zu groß gewählt wird. |
Wenn der Heap-Speicher für den Download eines SPS-Projekts zu klein ist, wird ein entsprechender Fehler ausgegeben und der Vorgang abgebrochen.

Beim Aktivieren des TwinCAT-Projekts, bei dem sich das SPS-Projekt im AutoStart befindet, schaltet TwinCAT einfach zurück in den Config-Modus und es gibt keine Fehlermeldung oder Ähnliches.
Die Größe des Heap-Speichers wird nicht automatisch angepasst, kann aber unter TwinCAT/BSD für umfangreiche SPS-Projekte in der Datei /usr/local/etc/TwinCAT/3.1/TcRegistry.xml
erhöht werden. Dazu muss die XML-Datei wie folgt erweitern werden:
Path: HKEY_LOCAL_MASCHINE\SOFTWARE\BECKHOFF\TWINCAT3\SYSTEM
Entry: <Value Name="HeapMemSizeMB" Type="DW">{size in MB}</Value>
Gehen Sie wie folgt vor:
- 1. Stoppen Sie den TcSystemService mit dem Befehl
doas service TcSystemService stop
- 2. Geben Sie den Befehl
doas ee /usr/local/etc/TwinCAT/3.1/TcRegistry.xml
in der Konsole ein. Die Datei TcRegistry.xml wird geöffnet. - 3. Fügen Sie den Eintrag
<Value Name="HeapMemSizeMB" Type="DW">{size in MB}</Value>
unter<Key Name="System">
in die XML-Datei ein.
---snipped---
<Key Name="System">
<Value Name="RunAsDevice" Type="DW">1</Value>
<Value Name="RTimeMode" Type="DW">0</Value>
<Value Name="AmsNetId" Type="BIN">0542F70C0101</Value>
<Value Name="LockedMemSize" Type="DW">33554432</Value>
<Value Name="SysStartupState" Type="DW">5</Value>
<Value Name="HeapMemSizeMB" Type="DW">1024</Value>
---snipped---
- 4. Die Größe wird in Megabyte festgelegt. In diesem Beispiel sind es 1024 MB.
- Starten Sie den TcSystemService erneut mit dem Befehl
doas service
TcSystemService start
. Nachdem der Heap-Speicher auf 1024 MB erhöht wurde, startet das SPS-Projekt und der Download wird nicht mit einem Fehler abgebrochen.