DevOps / Déploiement

Déploiement PLC Automatisé
pour les projets TIA Portal

Automatisez l'ensemble du cycle de vie du déploiement : compilez le matériel et le logiciel, établissez des connexions en ligne, comparez les états en ligne/hors ligne, téléchargez le firmware et les programmes vers le PLC, et contrôlez l'état de fonctionnement de la CPU - le tout scripté via REST API.

Automatisation Complète du Cycle de Vie du Déploiement

Chaque étape, du code source au PLC en fonctionnement, scriptable et reproductible

Compilation

Compilez la configuration matérielle et les blocs logiciels individuellement ou ensemble. Les résultats de la compilation incluent les erreurs et les avertissements - intégrez-les dans les pipelines CI pour conditionner le déploiement à la réussite de la compilation.

Connexion en Ligne

Établissez et terminez des connexions en ligne avec les PLCs. Supporte PLCSim Softbus, PROFINET et les surcharges de chemin manuelles. Détection automatique des paramètres de connexion ou spécification explicite des points d'accès.

Périmètres de Téléchargement

Choisissez le périmètre de téléchargement par déploiement : Logiciel uniquement, Matériel uniquement, Matériel et Logiciel combinés, ou Modifications logicielles uniquement pour des mises à jour à impact minimal. Contrôle précis sur ce qui atteint le PLC.

Gestion de l'État de la CPU

Démarrez et arrêtez la CPU par programmation. Lisez l'état actuel de la CPU avant et après le déploiement. Créez des séquences de déploiement sécurisées qui font passer la CPU par STOP, téléchargement et RUN automatiquement.

Support des PLCs Protégés par Mot de Passe

Authentifiez-vous auprès des PLCs protégés par mot de passe avant de passer en ligne. Définissez, mettez à jour et effacez les identifiants d'authentification en ligne via l'API pour supporter les environnements de production sécurisés.

Gardes de Sécurité

Le flag confirmPhysicalDownload empêche les téléchargements accidentels vers du matériel réel - seules les cibles PLCSim autorisent les téléchargements sans confirmation explicite. Un garde-fou critique pour les pipelines CI/CD ciblant des PLCs physiques.

Flux de Travail de Déploiement Standard

Cinq étapes du code compilé à un PLC en fonctionnement

1

Compiler

Déclenchez la compilation matérielle et logicielle via compile_device ou compile_block. Vérifiez le résultat pour les erreurs avant de continuer. Une compilation échouée interrompt le déploiement.

2

Passer en Ligne

Appelez go_online avec l'appareil cible. T-IA Connect résout le point d'accès automatiquement ou accepte un chemin manuel. Vérifiez l'état de la connexion avec get_online_state avant de continuer.

3

Comparer En Ligne / Hors Ligne

Exécutez compare_online_offline pour vérifier si le PLC correspond déjà au projet. Ignorez les téléchargements inutiles si aucun delta n'est détecté, réduisant les interruptions du PLC en production.

4

Télécharger vers le PLC

Exécutez download_to_plc avec le périmètre choisi (Software, Hardware, HardwareAndSoftware, ou SoftwareOnlyChanges). Définissez confirmPhysicalDownload à true uniquement lors du ciblage intentionnel de matériel réel.

5

Démarrer la CPU

Émettez start_cpu pour faire passer le PLC de STOP à RUN. Confirmez l'état final avec get_cpu_state. Enregistrez le résultat pour la piste d'audit et les rapports CI.

Scripting de Déploiement REST API

Intégrez le déploiement PLC dans n'importe quel outil CI/CD en utilisant des appels HTTP standards

Compiler et vérifier le résultat

# Compiler l'appareil (matériel + logiciel)
curl -X POST http://localhost:5000/api/compile-device \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1"}

Passer en ligne et télécharger

# Passer en ligne
curl -X POST http://localhost:5000/api/go-online \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1"}\n\n# Télécharger le logiciel uniquement
curl -X POST http://localhost:5000/api/download-to-plc \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1", "scope": "Software", "confirmPhysicalDownload": true}

Démarrer la CPU et vérifier l'état

# Démarrer la CPU
curl -X POST http://localhost:5000/api/start-cpu \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1"}\n\n# Lire l'état de la CPU
curl -X GET 'http://localhost:5000/api/get-cpu-state?deviceName=PLC_1'

Outils de Déploiement Disponibles

Tous les outils sont accessibles via REST API et protocole MCP

OutilDescription
compile_deviceCompile l'appareil complet (matériel + logiciel) et retourne les erreurs et avertissements.
compile_blockCompile un seul bloc de programme. Utile pour des pré-vérifications ciblées dans les pipelines CI.
go_onlineÉtablit une connexion en ligne avec le PLC. Supporte PLCSim, PROFINET et le chemin manuel.
go_offlineTermine la connexion en ligne et remet l'appareil en mode hors ligne.
get_online_stateRetourne l'état actuel de la connexion en ligne/hors ligne pour un appareil.
download_to_plcTélécharge les données du projet vers le PLC. Périmètre : Software, Hardware, HardwareAndSoftware, SoftwareOnlyChanges.
upload_from_plcTélécharge le programme actuel du PLC vers le projet TIA Portal.
compare_online_offlineCompare l'état en ligne du PLC avec le projet hors ligne pour détecter les deltas.
start_cpuFait passer la CPU de l'état STOP à l'état RUN.
stop_cpuFait passer la CPU de l'état RUN à l'état STOP avant un téléchargement.
get_cpu_stateLit l'état de fonctionnement actuel de la CPU (RUN, STOP, STARTING, etc.).
list_access_pointsListe tous les points d'accès configurés pour résoudre les chemins de connexion PLC.
list_parameter_setsListe les jeux de paramètres disponibles pour la configuration de la connexion.
get_pgpc_diagnosticRécupère les diagnostics de l'interface PG/PC pour dépanner les problèmes de connexion.

Déployez votre premier PLC automatiquement

Arrêtez de cliquer dans TIA Portal. Scriptez votre pipeline de déploiement complet une seule fois et exécutez-le à chaque commit.