====== Organisation des programmes PLC ======
Ce document résume l'organisation des projets pour les principales plateformes d'automatisme industriel :
* Rockwell / Allen-Bradley
* Siemens
* Omron
===== Rockwell (Allen-Bradley) =====
**Logiciel principal : Studio 5000 Logix Designer**. [1](https://www.rockwellautomation.com/en-se/docs/studio-5000-application-code-manager/5-01/library-object-manager-help-ditamap/library-object-manager-overview/library-repositories-overview/add-and-mount-an-acd-repository/export-acd-to-l5x.html)[2](https://literature.rockwellautomation.com/idc/groups/literature/documents/rm/1756-rm014_-en-p.pdf)
===== Structure du programme =====
Controller
├── Tasks
│ ├── MainTask
│ │ ├── Programs
│ │ │ ├── Program_A
│ │ │ │ ├── Routines
│ │ │ │ ├── Tags
│ │ │ │ └── Fault routines
├── Controller Tags
├── Data Types (UDT)
├── Add-On Instructions (AOI)
└── I/O Configuration
===== Extensions principales =====
^ Extension ^ Description ^
| .ACD | Projet complet Studio 5000 |
| .L5X | Export XML |
| .L5K | Export texte |
Le format principal est le fichier **.ACD**. Les échanges entre projets ou la gestion de versions utilisent fréquemment le format **.L5X (XML)**. [1](https://www.rockwellautomation.com/en-se/docs/studio-5000-application-code-manager/5-01/library-object-manager-help-ditamap/library-object-manager-overview/library-repositories-overview/add-and-mount-an-acd-repository/export-acd-to-l5x.html)[3](https://industrialmonitordirect.com/blogs/knowledgebase/l5x-file-format-export-import-and-scripting-guide)
===== Compilation =====
* Vérification du projet.
* Compilation automatique lors du téléchargement ou de certaines opérations.
* Téléchargement vers l'automate.
Le fichier ACD contient déjà une partie des données compilées du projet. [4](https://github.com/hutcheb/acd)
===== Export =====
Les éléments suivants peuvent être exportés au format L5X :
* Contrôleur complet
* Programmes
* Routines
* AOI (Add-On Instructions)
* UDT (User Defined Types)
[3](https://industrialmonitordirect.com/blogs/knowledgebase/l5x-file-format-export-import-and-scripting-guide)[2](https://literature.rockwellautomation.com/idc/groups/literature/documents/rm/1756-rm014_-en-p.pdf)
----
===== Siemens =====
**Logiciel principal : TIA Portal**. [5](https://filext.com/file-extension/AP17)[6](https://docs.tia.siemens.cloud/r/en-us/v20/tia-portal-openness-api-for-automation-of-engineering-workflows/export/import/importing/exporting-data-of-a-plc-device/blocks/exporting-blocks)
===== Structure du programme =====
Project
├── Devices
│ └── CPU
│ ├── Program blocks
│ │ ├── OB
│ │ ├── FB
│ │ ├── FC
│ │ └── DB
│ ├── PLC Tags
│ ├── Technology Objects
│ └── Hardware Configuration
├── HMI
└── Networks
===== Les blocs à connaître =====
^ Bloc ^ Fonction ^
| OB | Organisation Block, point d'entrée du programme |
| FB | Function Block avec mémoire |
| FC | Function sans mémoire |
| DB | Data Block contenant les données |
===== Extensions principales =====
^ Version TIA Portal ^ Extension ^
| V17 | .ap17 |
| V18 | .ap18 |
| V19 | .ap19 |
| V20 | .ap20 |
Archives compressées :
.zap17
.zap18
.zap19
.zap20
[5](https://filext.com/file-extension/AP17)[7](https://github.com/gududege/tia-exporter)
===== Compilation =====
Séquence classique :
Compile
↓
No errors
↓
Download to device
On compile généralement :
* Le programme PLC
* La configuration matérielle
* Les projets HMI
[6](https://docs.tia.siemens.cloud/r/en-us/v20/tia-portal-openness-api-for-automation-of-engineering-workflows/export/import/importing/exporting-data-of-a-plc-device/blocks/exporting-blocks)
===== Export =====
Export XML possible pour :
* OB
* FB
* FC
* DB
* UDT
Ces exports sont notamment utilisés avec Openness ou Git. [6](https://docs.tia.siemens.cloud/r/en-us/v20/tia-portal-openness-api-for-automation-of-engineering-workflows/export/import/importing/exporting-data-of-a-plc-device/blocks/exporting-blocks)[7](https://github.com/gududege/tia-exporter)
----
===== Omron =====
**Logiciel principal : Sysmac Studio**. [8](https://automation-knowledge-base.omron.eu/support/solutions/articles/103000352660-importing-and-exporting-with-sysmac-studio)[9](https://docs.copia.io/docs/git-based-source-control/supported-vendors/omron/sysmac-studio)
===== Structure du programme =====
Project
├── Configurations
├── EtherCAT
├── Variables
├── POUs
│ ├── Programs
│ ├── Function Blocks
│ └── Functions
├── Tasks
└── Motion
Omron suit davantage la norme IEC 61131-3 que Rockwell. [9](https://docs.copia.io/docs/git-based-source-control/supported-vendors/omron/sysmac-studio)
===== Extensions principales =====
^ Extension ^ Description ^
| .smc | Ancien projet Sysmac |
| .smc2 | Projet Sysmac récent |
| .csm | Projet compact |
| .csm2 | Projet compact récent |
[10](https://store.omron.com.au/knowledge-base/list-of-file-extensions-for-omron-software)[9](https://docs.copia.io/docs/git-based-source-control/supported-vendors/omron/sysmac-studio)
===== Sauvegarde =====
Particularité Sysmac Studio :
* Les projets sont souvent stockés dans un répertoire interne propre au logiciel.
* Pour archiver ou transmettre un projet, on l'exporte généralement en SMC ou SMC2.
[8](https://automation-knowledge-base.omron.eu/support/solutions/articles/103000352660-importing-and-exporting-with-sysmac-studio)[11](https://store.omron.com.au/knowledge-base/sysmac-project-directory)
===== Export =====
Les éléments exportables incluent :
* Projet complet (.smc / .smc2)
* Tables CSV
* Configurations EtherCAT
* Données de trace
[8](https://automation-knowledge-base.omron.eu/support/solutions/articles/103000352660-importing-and-exporting-with-sysmac-studio)
----
===== Résumé rapide =====
^ Fabricant ^ Projet principal ^ Export ^ Organisation ^
| Rockwell | .ACD | .L5X / .L5K | Tasks → Programs → Routines |
| Siemens | .APxx | XML | OB → FB → FC → DB |
| Omron | .SMC2 | XML / CSV | Tasks → POUs |
===== Conseils pour débuter =====
- Commencer par Siemens pour comprendre clairement les notions de OB, FB, FC et DB.
- Passer ensuite à Rockwell pour découvrir l'approche Task / Program / Routine.
- Explorer Omron pour approfondir la logique IEC 61131-3 moderne.
Une fois maîtrisés :
* Variables
* Blocs fonctionnels
* Tâches cycliques
* Compilation
* Téléchargement automate
Le passage d'un constructeur à l'autre devient relativement simple : environ 80 % des concepts sont similaires.