CODESYS 4
CODESYS 4 est un outil de développement économe en ressources et multiplateforme pour les technologies d'automatisation industrielle conformes à la norme IEC 61131-3. Son interface utilisateur s'exécute entièrement dans un navigateur et est donc disponible sur un large éventail de systèmes d'exploitation, notamment Windows, Linux, macOS, iPadOS et Android. Le serveur, qui constitue le cœur fonctionnel du système, est distinct de l'interface utilisateur. Il peut être exécuté dans différents environnements (poste de travail, serveur, cloud et sur site) sous Windows ou Linux, et sur les plateformes CPU x86/x64 et ARM.
Au cours du développement de CODESYS 4 L’accent a toujours été mis sur la qualité du logiciel et sur une plateforme robuste. Le périmètre fonctionnel de la version 1.0.0.0 est spécifiquement adapté à deux scénarios d’application et s’étendra continuellement grâce à des cycles de publication courts (voir section Perspectives d'avenir).
Séparation du backend et du frontend L'interface utilisateur graphique n'est pas nécessaire pour les fonctions principales. Cela signifie que CODESYS 4 peut être utilisé à la fois de manière interactive dans le navigateur et de manière entièrement automatique via la ligne de commande (sans interface graphique).
Stockage de données ouvert basé sur du texte Un projet est un répertoire de fichiers texte lisibles au lieu d'un fichier projet binaire.
Environnement d'exécution partagé avec CODESYS 3 Le code machine généré est identique et les bibliothèques compilées sont interchangeables entre les deux outils.
Groupe cible et scénarios d'application
CODESYS 4 Ce logiciel s'adresse aux développeurs d'applications de contrôleurs IEC 61131-3 souhaitant utiliser des méthodes informatiques éprouvées en matière d'automatisation, telles que le travail indépendant de la plateforme, le contrôle de version, l'intégration continue et la livraison continue (CI/CD) et le développement en équipe. La norme IEC 61131-3 demeure le fondement : les langages de programmation et les méthodes de travail restent inchangés.
Développement de bibliothèques avec CI/CD: CODESYS 4 Cette solution est idéale pour le développement de bibliothèques intégrées aux processus automatisés de compilation et de déploiement. L'intégration du compilateur via la ligne de commande, le stockage des projets dans des fichiers et la résolution déterministe des dépendances font partie intégrante de son architecture. Elle permet ainsi de compiler des bibliothèques de manière reproductible et sans interface graphique, sur tout système d'exploitation compatible et dans tout pipeline CI/CD courant.
Applications simples: La première version de CODESYS 4 est adapté aux applications de contrôle simples sur un seul contrôleur. Cela inclut, par exemple, les petites machines, les bancs d'essai ou les applications intégrées à des appareils disposant d'un nombre limité de points d'E/S numériques et analogiques. Vous utilisez l'éditeur du périphérique Modbus (Modbus TCP) pour assigner les variables d'E/S et télécharger l'application sur le contrôleur. En mode en ligne, vous surveillez les variables en temps réel et ajustez les paramètres. De cette manière, vous couvrez l'intégralité du processus de mise en service essentiel. CODESYS 4.
Pour les projets qui vont au-delà de cela, CODESYS 3 reste l'outil de prédilection (voir section Classification dans le CODESYS portefeuille).
Avantages de CODESYS 4
Indépendance de la plateforme: L'interface utilisateur de CODESYS 4 L'application fonctionne dans n'importe quel navigateur web classique et est donc indépendante du système d'exploitation de l'environnement de travail. Le serveur est compatible avec Windows et Linux, y compris les plateformes x86/x64 et ARM. Le développement sous Linux et macOS ne nécessite aucune machine virtuelle.
La séparation du frontend et du backend permet de CODESYS 4 opérer dans différents environnements :
Application de bureau
Instance de poste de travail local ouverte dans le navigateur
Serveur multi-utilisateurs administré de manière centralisée
Directement sur le matériel du contrôleur
Sur un automate programmable virtuel (vPLC)
Stockage de données textuelles et ouvertes: Une caractéristique essentielle de CODESYS 4 il s'agit du stockage de données textuelles encodées en UTF-8. CODESYS 4 Fonctionne directement au niveau des fichiers. Un projet est un répertoire de fichiers lisibles. Le code source IEC est fourni sous forme de fichiers texte UTF-8, les données structurées au format JSON, les descriptions des périphériques au format XML et les images dans leur format natif (JPEG, PNG ou SVG). Chaque élément est stocké dans son propre fichier au sein d'une structure de dossiers claire.
L'accès externe constitue ici un cas d'utilisation particulier. Les fichiers peuvent être visualisés, comparés et fusionnés directement dans des outils standards externes, tels que des éditeurs de texte, des outils de comparaison de fichiers, des clients Git, ou dans la vue de comparaison de fichiers de GitLab et GitHub. CODESYS 4 Les fichiers sont formatés de manière stable et déterministe. Cela inclut des sauts de ligne réguliers, un ordre fixe dans les fichiers JSON, une indentation uniforme et l'omission des métadonnées superflues. Ainsi, les comparaisons mettent en évidence les modifications de contenu réelles, sans interférences liées à un formatage complexe. Le contrôle de version est assuré par des outils éprouvés tels que Git, SVN ou Mercurial. CODESYS 4 Il ne s'agit donc que d'un outil parmi d'autres dans le processus de développement et non plus de l'outil « maître » exclusif.
Parce que des changements extérieurs sont possibles à tout moment, CODESYS 4 est conçu pour gérer les incohérences de manière contrôlée. Par exemple, après une fusion ou une extraction, CODESYS 4 Il détecte les fichiers modifiés grâce à la surveillance du système de fichiers et signale toute erreur dans le stockage du projet.
Concept d'espace de travail: Projets dans CODESYS 4 Les projets sont organisés en espaces de travail. Un espace de travail regroupe plusieurs projets de périphériques et de bibliothèques, chargés simultanément et modifiables côte à côte sur un pied d'égalité, à l'instar d'une solution dans un environnement de développement moderne. Il n'y a pas de projet principal : tous les projets de l'espace de travail sont modifiables au même niveau.
Concrètement, cela signifie que vous développez un projet Modbus composé d'un serveur, d'un client et d'une bibliothèque partagée, simultanément dans un seul espace de travail. Si vous modifiez la structure de la bibliothèque, vous pouvez immédiatement poursuivre votre travail sur les applications serveur et client. Le code partagé est externalisé vers une bibliothèque référencée par toutes les applications. Comme les projets de bibliothèque sont ouverts et modifiés dans le même espace de travail, vous développez la bibliothèque et l'application au sein d'un seul et même processus.
Automatisation et CI/CD à partir de zéro Dès le départ, CODESYS 4 Ce système est conçu pour l'intégration continue et le déploiement continu (CI/CD). Son utilisation en ligne de commande (CLI) est tout aussi valable que pour les applications de bureau et les serveurs multi-utilisateurs ; il ne s'agit pas d'un outil supplémentaire. Le compilateur fonctionnant sans interface graphique et générant un code machine identique quel que soit l'outil utilisé, le pipeline est construit de manière reproductible à chaque commit.
Les dépendances sont gérées selon un modèle bien connu dans le développement logiciel moderne (comparable à npm ou NuGet) : un fichier manifeste (Libraries.json ) décrit les références de bibliothèque souhaitées et un fichier de verrouillage (Libraries.lock.json ) enregistre la résolution précise de toutes les dépendances directes et indirectes, avec la version et une somme de contrôle SHA384. Associé au versionnage sémantique (semver), il permet de générer de manière reproductible des versions identiques du code source.
Système d'exécution partagé avec CODESYS 3: CODESYS 4 partage le même système d'exécution avec CODESYS 3 Le compilateur génère un code machine identique dans les deux outils, et les bibliothèques compilées sont interchangeables dans les deux sens. Le code compilé dans CODESYS 4 fonctionne sur n'importe quel contrôleur où CODESYS 3 Le code s'exécute actuellement, sans nouveau matériel cible ni recertification d'exécution. Un système d'exécution est requis. CODESYS V3.5 SP16 ou supérieur.
La sécurité en tant que partie intégrante de l'architecture: La sécurité dans CODESYS 4 La sécurité est intégrée dès la conception (approche « sécurité dès la conception »). Cela inclut des méthodes d’authentification classiques, la limitation du débit et l’isolation des processus – particulièrement importantes pour un fonctionnement en tant que serveur multi-utilisateurs.
Fonctionnement et outils
La version 1.0.0.0 propose l'éditeur ST et l'éditeur à relais (LD) pour la programmation. L'éditeur à relais a été entièrement repensé et repose sur une architecture web.
Aucune interface de script dédiée n'est fournie car les fichiers du projet sont directement accessibles et modifiables. Pour les tâches d'automatisation et d'intégration, une interface de ligne de commande complète est disponible.
Classification dans le CODESYS portefeuille
Le CODESYS 4 L'application est un développement entièrement nouveau, destiné à compléter CODESYS 3 Elle ne la remplacera pas. Les deux générations coexisteront dans un avenir prévisible et partageront le même système d'exécution et les mêmes bibliothèques.
Développement de bibliothèques dans les processus de compilation et de publication automatisés
Applications de contrôleur simples sur un seul contrôleur
Développement sous Linux ou macOS, ainsi qu'une administration centralisée pour une utilisation multi-utilisateurs
Projets complexes avec un éventail complet de fonctionnalités, par exemple avec visualisation, mouvement ou bus de terrain supplémentaires
Projets qui nécessitent CODESYS Test Manager ou le débogueur
Astuce
Si vous êtes déjà familiarisé avec CODESYS 3, puis consultez le chapitre Passer de CODESYS 3 pour les différences conceptuelles et une cartographie des fonctions habituelles.
Perspectives d'avenir
CODESYS 4 Le cycle de publication est court, avec une nouvelle version majeure disponible environ tous les deux mois, grâce à une infrastructure technologique moderne et à une couverture de tests automatisés exhaustive. Des mises à jour complètes seront proposées, et non des correctifs individuels.
Les versions suivantes incluront des fonctionnalités telles que les modifications en ligne, des commandes supplémentaires pour la bibliothèque CLI, la possibilité d'exclure des éléments de la compilation, des extensions installables par l'utilisateur et des corrections de bogues permanentes.
Éditeurs graphiques supplémentaires : L’implémentation de CFC a débuté et l’éditeur de code en échelle est en cours d’extension afin d’y intégrer des fonctionnalités pratiques. Celles-ci comprennent la prise en charge du code intelligent, des fonctions avancées d’édition et de refactorisation, le glisser-déposer, la surveillance du code en échelle et la mise en évidence des erreurs.
Davantage de bus de terrain, tels que EtherCAT et PROFINET
Un axe stratégique de développement futur est la plateforme d'extension. Elle permettra une extension modulaire de CODESYS 4 avec des fonctions supplémentaires fournies et installées sous forme d'extensions.