DevOps / Bereitstellung

Automatisierte SPS-Bereitstellung
für TIA Portal Projekte

Automatisieren Sie den vollständigen Bereitstellungszyklus: Hardware und Software kompilieren, Online-Verbindungen herstellen, Online/Offline-Zustände vergleichen, Firmware und Programme auf die SPS laden und den CPU-Betriebszustand steuern - alles skriptgesteuert über REST API.

Vollständige Automatisierung des Bereitstellungszyklus

Jeder Schritt vom Quellcode bis zur laufenden SPS, skriptfähig und wiederholbar

Kompilierung

Kompilieren Sie Hardware-Konfiguration und Software-Bausteine einzeln oder zusammen. Die Kompilierungsergebnisse enthalten Fehler und Warnungen - integrieren Sie diese in CI-Pipelines, um die Bereitstellung von erfolgreichen Builds abhängig zu machen.

Online-Verbindung

Stellen Sie Online-Verbindungen zu SPSen her und beenden Sie diese. Unterstützt PLCSim Softbus, PROFINET und manuelle Pfadüberschreibungen. Automatische Erkennung von Verbindungsparametern oder explizite Angabe von Zugangspunkten.

Download-Umfänge

Wählen Sie den Download-Umfang pro Bereitstellung: Nur Software, nur Hardware, Hardware und Software kombiniert oder nur Software-Änderungen für Updates mit minimalen Auswirkungen. Präzise Kontrolle darüber, was die SPS erreicht.

CPU-Zustandsverwaltung

Starten und stoppen Sie die CPU programmatisch. Lesen Sie den aktuellen CPU-Zustand vor und nach der Bereitstellung. Erstellen Sie sichere Bereitstellungssequenzen, die die CPU automatisch über STOP, Download und RUN führen.

Unterstützung passwortgeschützter SPSen

Authentifizieren Sie sich gegenüber passwortgeschützten SPSen, bevor Sie online gehen. Setzen, aktualisieren und löschen Sie Online-Authentifizierungsdaten über die API, um sichere Produktionsumgebungen zu unterstützen.

Sicherheitsvorkehrungen

Das Flag confirmPhysicalDownload verhindert versehentliche Downloads auf reale Hardware - nur PLCSim-Ziele erlauben Downloads ohne explizite Bestätigung. Eine kritische Schutzplanke für CI/CD-Pipelines, die auf physische SPSen abzielen.

Standard-Bereitstellungs-Workflow

Fünf Schritte vom kompilierten Code zur laufenden SPS

1

Kompilieren

Lösen Sie die Hardware- und Software-Kompilierung über compile_device oder compile_block aus. Prüfen Sie das Ergebnis auf Fehler, bevor Sie fortfahren. Eine fehlgeschlagene Kompilierung bricht die Bereitstellung ab.

2

Online gehen

Rufen Sie go_online mit dem Zielgerät auf. T-IA Connect löst den Zugangspunkt automatisch auf oder akzeptiert einen manuellen Pfad. Überprüfen Sie den Verbindungsstatus mit get_online_state, bevor Sie fortfahren.

3

Online / Offline vergleichen

Führen Sie compare_online_offline aus, um zu prüfen, ob die SPS bereits mit dem Projekt übereinstimmt. Überspringen Sie unnötige Downloads, wenn kein Delta erkannt wird, um SPS-Unterbrechungen in der Produktion zu reduzieren.

4

Download auf SPS

Führen Sie download_to_plc mit dem gewählten Umfang aus (Software, Hardware, HardwareAndSoftware oder SoftwareOnlyChanges). Setzen Sie confirmPhysicalDownload nur dann auf true, wenn Sie beabsichtigt reale Hardware ansteuern.

5

CPU starten

Geben Sie start_cpu aus, um die SPS von STOP in RUN zu versetzen. Bestätigen Sie den Endzustand mit get_cpu_state. Protokollieren Sie das Ergebnis für den Audit-Trail und das CI-Reporting.

REST API Bereitstellungs-Scripting

Integrieren Sie die SPS-Bereitstellung mit Standard-HTTP-Aufrufen in jedes CI/CD-Tool

Kompilieren und Ergebnis prüfen

# Gerät kompilieren (Hardware + Software)
curl -X POST http://localhost:5000/api/compile-device \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1"}

Online gehen und herunterladen

# Online gehen
curl -X POST http://localhost:5000/api/go-online \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1"}\n\n# Nur Software herunterladen
curl -X POST http://localhost:5000/api/download-to-plc \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1", "scope": "Software", "confirmPhysicalDownload": true}

CPU starten und Zustand prüfen

# CPU starten
curl -X POST http://localhost:5000/api/start-cpu \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1"}\n\n# CPU-Zustand lesen
curl -X GET 'http://localhost:5000/api/get-cpu-state?deviceName=PLC_1'

Verfügbare Bereitstellungs-Tools

Alle Tools sind über REST API und MCP-Protokoll zugänglich

ToolBeschreibung
compile_deviceKompiliert das vollständige Gerät (Hardware + Software) und gibt Fehler und Warnungen zurück.
compile_blockKompiliert einen einzelnen Programmbaustein. Nützlich für gezielte Vorprüfungen in CI-Pipelines.
go_onlineStellt eine Online-Verbindung zur SPS her. Unterstützt PLCSim, PROFINET und manuellen Pfad.
go_offlineBeendet die Online-Verbindung und versetzt das Gerät zurück in den Offline-Modus.
get_online_stateGibt den aktuellen Online/Offline-Verbindungsstatus für ein Gerät zurück.
download_to_plcLädt Projektdaten auf die SPS. Umfang: Software, Hardware, HardwareAndSoftware, SoftwareOnlyChanges.
upload_from_plcLädt das aktuelle SPS-Programm zurück in das TIA Portal-Projekt.
compare_online_offlineVergleicht den Online-Zustand der SPS mit dem Offline-Projekt, um Deltas zu erkennen.
start_cpuVersetzt die CPU vom Zustand STOP in den Zustand RUN.
stop_cpuVersetzt die CPU vor einem Download vom Zustand RUN in den Zustand STOP.
get_cpu_stateLiest den aktuellen CPU-Betriebszustand (RUN, STOP, STARTING, etc.).
list_access_pointsListet alle konfigurierten Zugangspunkte zur Auflösung von SPS-Verbindungspfaden auf.
list_parameter_setsListet verfügbare Parametersätze für die Verbindungskonfiguration auf.
get_pgpc_diagnosticRuft Diagnosedaten der PG/PC-Schnittstelle ab, um Verbindungsprobleme zu beheben.

Stellen Sie Ihre erste SPS automatisch bereit

Hören Sie auf, sich durch das TIA Portal zu klicken. Skripten Sie Ihre gesamte Bereitstellungs-Pipeline einmal und führen Sie sie bei jedem Commit aus.