PLCcheck

SPS-Zykluszeit optimieren: Praktische Techniken

Praktische Techniken zur Reduzierung der SPS-Zykluszeit. Codestruktur, bedingte Ausführung, Datentyp-Auswahl, optimierte Datenbausteine, Interrupt-Architektur.

·10 Min. Lesezeit
SPSZykluszeitOptimierungPerformanceS7-1500SCLAWLoptimierte Datenbausteine

Read this article in English

SPS-Zykluszeit optimieren: Praktische Techniken

Die Zykluszeit ist die Zeit die die CPU für einen kompletten Programmdurchlauf braucht. Typisch: 1–100 ms. Zu lang → schnelle Signale werden verpasst, Reaktionszeiten steigen, im schlimmsten Fall Zeitfehler (OB 80) oder CPU-STOP.

Was die Zykluszeit beeinflusst

  1. Prozessabbild-Aktualisierung (E/A lesen/schreiben) — typisch 1–5 ms
  2. Anwenderprogramm-Ausführung — der Hauptfaktor
  3. Kommunikation (HMI, PROFINET, OPC UA)
  4. Systemaufgaben (Diagnose, Housekeeping)

Technik 1: Bedingte Ausführung (Größter Effekt)

Nicht jeder Code muss jeden Zyklus laufen:

IF #Automatik_Modus THEN
    "Produktionsprogramm"();
END_IF;

Effekt: 20–40 % kürzere durchschnittliche Zykluszeit bei Programmen mit mehreren Betriebsarten.

Technik 2: Optimierte Datenbausteine (S7-1500)

Optimierter DB-Zugriff (Standard bei S7-1500) ist deutlich schneller als Standard-Zugriff. Typische Verbesserung: 10–30 % schnellerer DB-Zugriff.

Prüfen: DB-Eigenschaften → Attribute → "Optimierter Bausteinzugriff" aktiviert? Bei absolutem DB-Zugriff (DBW0) zuerst auf symbolisch umstellen.

Technik 3: Richtige Programmiersprache

SpracheS7-1500 PerformanceEinsatz
SCLNativ, schnellBerechnungen, Datenverarbeitung
KOP/FUPNativ, schnellBitlogik, einfache Steuerung
AWLEmulation, 10–30 % langsamerNur Legacy-Kompatibilität

Technik 4: Zeitkritischen Code in zyklische Interrupts

Statt OB1 schneller zu machen, zeitkritischen Code in OB35 (100 ms Standard, konfigurierbar bis 1 ms):

OB1 = Hauptprogramm (z.B. 20 ms). OB35 = PID-Regler, Schnellzählung (festes Intervall).

Technik 5: Kommunikationslast reduzieren

Technik 6: Unnötige Operationen vermeiden

VerschwendungBessere Alternative
Selben Eingang 10× in verschiedenen Bausteinen lesenEinmal in Temp-Variable, überall Temp verwenden
String-Operationen in OB1In langsameren Interrupt verschieben (OB32, 1s)
Unbenutzte Bausteine die noch aufgerufen werdenAufrufe entfernen oder bedingt überspringen
FOR-Schleifen mit vielen Iterationen in OB1Auf mehrere Zyklen verteilen

Zykluszeit messen

TIA Portal: Online & Diagnose → Zykluszeit → Min/Max/Aktuell

Richtwerte:

Häufig gestellte Fragen

Welche Zykluszeit braucht meine Anwendung?

Faustregel: Weniger als die Hälfte der kürzesten Signaldauer. 50-ms-Sensorimpulse → Zykluszeit unter 25 ms.

Kann ich eine feste Zykluszeit einstellen?

Ja. TIA Portal: CPU-Eigenschaften → Zyklus → Minimale Zykluszeit.


Gepflegt von PLCcheck.ai. Letztes Update: März 2026. Keine Verbindung zu Siemens AG.

Verwandte Artikel

SPS-Code mit KI analysieren

PLCcheck Pro erklärt, dokumentiert, optimiert und migriert SPS-Code — automatisch.

PLCcheck Pro testen →
← Zurück zum Blog

Nicht verbunden mit Siemens AG. S5, S7, STEP 5, STEP 7 und TIA Portal sind Marken der Siemens AG.