Cinq étapes transforment une séquence en code automate déployable : déclarer les variables, les lier aux voies d'équipement, attribuer les adresses physiques, traduire vers le langage cible et importer le résultat. À la fin, vous saurez quelle commande lancer à chaque étape, quel format d'export choisir et comment livrer le fichier à CODESYS, TwinCAT ou tout autre environnement IEC 61131-3.
| Étape | Objectif | Commande principale |
|---|---|---|
| 1. Déclarer | Référencer les variables dans les séquences et la config machine | (écrire dans main.py, .seq ou .machine) |
| 2. Lier | Assigner les variables aux canaux d'équipement | Onglet Architecture de l'éditeur de Machine |
| 3. Adresser | Mapper les variables à la mémoire automate | Attribuer les Adresses Automatiquement |
| 4. Traduire | Générer le code automate | Translate to Target Language |
| 5. Exporter | Empaqueter pour le logiciel automate | Export Project |
Tout signal qui entre ou sort de l'automate a besoin d'une variable. AutomationView ne crée pas de variables via un bouton de panneau : il enregistre automatiquement tout nom référencé dans une condition de transition ou une action lors de l'analyse du fichier, ainsi que les instances et globales déclarées dans votre configuration machine. Le flux consiste donc simplement à écrire la séquence et à configurer la machine ; les variables suivent.
| Catégorie | Usage typique |
|---|---|
| Entrée | Capteur, bouton-poussoir, retour codeur |
| Sortie | Électrovanne, contacteur, voyant |
| Locale | Drapeau interne, compteur, instance de timer |
Le panneau Variables regroupe les variables par catégorie. Filtrez depuis la palette de commandes :
Basculez entre Définir la Vue Globale (à l'échelle du projet) et Afficher les Variables du Fichier Actif (fichier courant uniquement) depuis l'en-tête du panneau.
Un clic droit sur une variable donne accès aux actions rapides : Rename Variable, Variable Info, Get Variable Value, Set Variable Value.
La liaison rattache une variable logique à un canal physique exposé par un module. Elle se fait dans l'éditeur de Machine, sur son onglet Architecture. Le mappage est sauvegardé dans le fichier .machine.
.machine dans l'éditeur de Machine.L'assignation est écrite dans le fichier .machine sous forme d'assignation de canal. AutomationView calcule alors l'adresse %I/%Q de la variable à partir de la direction, de la taille en bits et des décalages du canal.
| Bénéfice | Effet |
|---|---|
| Dimensionnement piloté par le catalogue | La taille en bits du canal sélectionne la taille d'adresse (X / B / W / D) |
| Adresse calculée | L'adresse %I/%Q est dérivée du canal, pas saisie à la main |
| Documentation | Le programme exporté porte les déclarations d'E/S résultantes |
Voir Catalogue d'équipements pour la gestion du catalogue.
Une fois les variables déclarées et liées, mappez-les à la mémoire automate.
Lancez AutomationView: Attribuer les Adresses Automatiquement depuis la palette de commandes. AutomationView :
La commande de la palette calcule et compte les assignations et ouvre l'onglet Architecture. Pour les sauvegarder dans le fichier
.machine, appliquez les assignations depuis l'onglet Architecture.
Chaque canal produit une adresse de la forme % + zone + taille + décalage d'octet (+ .bit pour les canaux bit). La zone est I pour les entrées et Q pour les sorties ; la taille est X (<= 1 bit), B (<= 8 bits), W (<= 16 bits) ou D (> 16 bits). E/S TOR typiques sur cible CODESYS :
| Variable | Direction | Adresse |
|---|---|---|
S_HOME |
Entrée | %IX0.0 |
S_OUT |
Entrée | %IX0.1 |
Y_EXTEND |
Sortie | %QX1.0 |
Y_RETRACT |
Sortie | %QX1.1 |
Pour les canaux qui doivent prendre une variable précise, assignez-les directement dans la grille Architecture : choisissez la variable par canal dans la liste déroulante. L'adresse est calculée à partir du canal.
Lancez AutomationView: Valider Toutes les Adresses. La commande affiche le résultat dans une notification :
| Problème | Signification |
|---|---|
| Deux variables sur la même adresse | Conflit |
| Variable mappée à un canal inexistant | Non assignée / non résolue |
La notification affiche le nombre de conflits et de variables non assignées. Elle n'écrit pas dans le panneau Problèmes. Résolvez les conflits avant la traduction.
La traduction lit votre fichier .seq et produit du code automate.
Réglez la cible par défaut une fois pour toutes dans les paramètres :
"automationview.defaultPLCTarget": "codesys"
Cibles prises en charge :
| ID | Marque |
|---|---|
siemens-s7 |
Siemens S7-1200 / S7-1500 |
allen-bradley |
Allen-Bradley ControlLogix / CompactLogix |
schneider |
Schneider Modicon M340 / M580 |
beckhoff |
Beckhoff TwinCAT 3 |
codesys |
CODESYS V3 |
omron |
Omron NJ / NX |
mitsubishi |
Mitsubishi iQ-R / iQ-F |
generic |
IEC 61131-3 générique |
| Comment | Étapes |
|---|---|
| Barre de titre de l'éditeur | Cliquer sur l'icône Translate quand un fichier .seq est ouvert |
| Palette de commandes | Lancer AutomationView: Translate to Target Language |
Le mode surveillance re-traduit la séquence à chaque enregistrement.
| Paramètre | Défaut | Description |
|---|---|---|
automationview.translation.watchMode |
false |
Activer la re-traduction automatique à l'enregistrement |
automationview.translation.watchDebounceMs |
500 |
Délai anti-rebond en ms |
automationview.translation.openAfterTranslate |
false |
Ouvrir le fichier traduit en cas de succès |
Arrêtez le mode surveillance pour la session avec AutomationView: Stop Live Translation.
| Mode unique quand | Mode surveillance quand |
|---|---|
| On itère sur les adresses matérielles | On itère sur la logique de la séquence |
| On traduit avant une relecture de code | On démontre le comportement en direct |
| On produit un livrable figé | On travaille en binôme sur le ST traduit |
L'étape d'export empaquette les fichiers traduits pour la livraison. Choisissez le format adapté à l'outil aval.
| Format | Valeur du réglage | Idéal pour | Notes |
|---|---|---|---|
| PLCopen XML | plcopen-xml |
CODESYS, TwinCAT, EcoStruxure, Logix Designer (via convertisseur) | Recommandé par défaut ; préserve la structure SFC |
| IEC Structured Text | iec-st |
Tout éditeur ST IEC 61131-3 | Perd le SFC graphique, garde la logique |
| CSV | csv |
Audit, revue de liste d'adresses, intégration ERP | Variables et adresses uniquement |
| JSON | json |
Outillage maison, pipelines CI, tableaux de bord | Arbre projet lisible par machine |
Réglez le format par défaut une fois pour toutes :
"automationview.export.defaultFormat": "plcopen-xml"
| Objectif | Commande |
|---|---|
| Exporter la séquence courante | AutomationView: Générer le Code PLC |
| Exporter le bundle projet complet | AutomationView: Export Project |
Exporter chaque .seq en une seule fois |
AutomationView: Export All Sequences |
| Imprimer ou exporter la séquence comme fiche de diagramme | Basculer le Mode Impression (barre de titre de l'éditeur) ou Ctrl+P / Cmd+P |
Le dossier de sortie est piloté par la configuration cible de votre machine. Par défaut, il se trouve à côté de machine.machine, sous export/.
Pour empaqueter le projet à chaque modification, sans intervention :
| Paramètre | Défaut | Description |
|---|---|---|
automationview.export.autoExport |
false |
Déclencher l'export complet à chaque modification de séquence |
automationview.export.autoExportDebounceMs |
2000 |
Délai anti-rebond avant l'export automatique |
automationview.export.autoExportOnSave |
false |
Exporter chaque séquence individuellement à chaque enregistrement |
Déposez le fichier exporté dans votre environnement PLC.
.xml exporté.Si votre outil n'accepte que le ST, réglez le format par défaut sur iec-st avant l'export et collez le fichier dans le POU adéquat.
Relancez systématiquement le validateur d'adresses après l'import. Certains logiciels automate renumérotent les voies non attribuées à l'import.