Echtzeitverhalten auf speziellen Plattformen konfigurieren
Echtzeitverhalten von CODESYS Control RTE auf speziellen Plattformen
Das Zeitverhalten von CODESYS Control RTE hängt von der Konstanz des CPU-Taktes und vom Takt des sogenannten Front-Side-Bus ab. Mit bestimmten Einstellungen im BIOS und in Windows können Sie das Zeitverhalten an die Gegebenheiten verschiedener Plattformen anpassen.
Einstellungen im BIOS
Da die meisten Plattformen über ein unterschiedliches BIOS verfügen, können nur grobe Empfehlungen zur Optimierung des Zeitverhaltens der CODESYS Control RTE gegeben werden.
Einstellungen in Windows
Empfehlung: Das Energieschema sollte immer „Dauerbetrieb“ (Always on) heißen.
Automatische Updates: Updates sollten für eine Industriesteuerung immer nur manuell erfolgen, da der PC unter Umständen vom automatischen Mechanismus ohne weitere Rückfrage neu gebootet wird.
Anpassungen an die Hardware-Plattformen "APIC" (Single- und Multiprozessor) und "AMP" (Betrieb der RTE auf eigenem CPU-Kern)
Die generelle Anpassung an die Besonderheiten der Plattformen erfolgt durch die Komponenten CmpDrvSchedulerAMP
und CmpDrvSchedulerAPIC
(seit der Abkündigung von Windows 7 nicht mehr relevant).
Vom Setup der CODESYS Control RTE wird standardmäßig der CmpDrvSchedulerAMP
installiert. CmpDrvSchedulerAPIC
wird nur aus Kompatibilitätsgründen noch mitgeliefert und ist nur noch manuell auf alten Windows 7-PCs installierbar.
Generell gilt, dass die CODESYS Control RTE nur auf PCs mit mehr als einem Prozessorkern ausgeführt werden kann (CmpDrvSchedulerAMP
). Einzige Ausnahme ist die Windows-Plattform "Windows 7 / 32 Bit". Nur auf dieser Plattform kann noch der CmpDrvSchedulerAPIC
verwendet werden, mit dem sich die CODESYS Control RTE per Zeitscheibenverfahren mit Windows den CPU-Core 0 teilen kann.
Beim ersten Start der CODESYS Control RTE werden aufwendige Messungen durchgeführt, um die Taktfrequenzen auf Mikrosekunden zu skalieren. Die Ergebnisse dieser Messung werden in der Windows-Registry gespeichert: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CmpDrvSchedulerAMP\Params
oder HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CmpDrvSchedulerAPIC\Params
, Werte SetClocksPerUS
und SetCountsPerMS
.
Bei jedem weiteren Start der CODESYS Control RTE werden die Messungen nicht erneut durchgeführt, wenn die aus der Messung beim ersten Start erhaltenen Werte aus der Registry gelesen werden können. Wenn eine im System vorgenommene Anpassung (beispielsweise der Energiespareinstellung im BIOS) dazu geführt hat, dass sich der CPU-Takt gegenüber der Messung verändert hat, müssen diese Werte in der Windows-Registry gelöscht werden. Nur dann werden beim nächsten Start der CODESYS Control RTE die Taktfrequenzen neu skaliert.
Für weitere Informationen siehe: Hardwarekonfiguration - Empfehlungen