Skip to main content

Ouverture d'un projet V2.3

Astuce

UN CoDeSys V2.3 le projet ne peut être converti qu'avec une version 32 bits de CODESYS V3. Pour ce faire, le CODESYS V2.3 Converter le paquet doit être installé dans CODESYS V3. Le forfait est disponible dans le CODESYS Store International.

Si vous travaillez avec une version 64 bits de CODESYSV3, vous devez également installer la version 32 bits pour la conversion. Après la conversion, vous pouvez ouvrir le projet dans CODESYS 64 bits.

Condition : Vous avez installé et démarré CODESYS V3. Le CODESYS V2.3 Converter le module complémentaire est installé.

  1. Cliquez sur Fichier → Ouvrir le projet.

  2. Dans le Projet ouvert boîte de dialogue, cliquez sur n'importe quel CoDeSys V2.3 projet ou archive de projet dans le système de fichiers. Pour la recherche, vous pouvez définir le filtre de fichiers dans le coin inférieur droit de la boîte de dialogue.

    Si un autre projet est encore ouvert, CODESYS vous demande de le fermer en conséquence. Après cela le CoDeSys V2.3 convertisseur démarre automatiquement.

  3. Le convertisseur V2.3 vérifie que le projet peut être compilé sans erreur. Si tel est le cas, il traite automatiquement le projet.

  4. REMARQUE:

    Si le projet contient des objets de visualisation avec des variables d'espace réservé que le convertisseur ne peut pas résoudre, les visualisations respectives sont affichées sous forme de groupe à la place des références de visualisation.

  5. Conversion d'appareil : lorsqu'un appareil (système cible) est référencé dans le projet à ouvrir et qu'aucune règle de conversion n'est définie pour l'appareil, Conversion d'appareil la boîte de dialogue s'ouvre. Indiquez ici si et comment le convertisseur doit remplacer la référence d'appareil précédente par une référence actuelle.

    Pour le remplacement, le convertisseur a ajouté le nouvel appareil à la place de l'ancien dans l'arborescence des appareils du projet converti.

  6. Conversion de bibliothèque : si une bibliothèque, pour laquelle aucune règle de conversion n'a été définie à ce jour, est référencée dans le projet à ouvrir, alors la Conversion de référence de bibliothèque la boîte de dialogue s'ouvre. Spécifiez ici si et comment le convertisseur doit remplacer la référence de bibliothèque existante par une référence actuelle.

    Si vous sélectionnez une bibliothèque pour laquelle les informations sur le projet sont manquantes, le Saisir les informations sur le projet boîte de dialogue s'ouvre afin de spécifier ces informations.

    Le convertisseur charge le projet adapté. Remarque : Les références de bibliothèque récemment définies se trouvent dans le gestionnaire de bibliothèque global situé dans la vue POU.

Restrictions lors de la réutilisation d'un CoDeSys V2.3 projet en CODESYS

Compilation

Le projet doit être compilable sans erreurs dans CoDeSys V2.3. Noter: CODESYS émet toujours des avertissements dans V3 lors de la compilation. Celles-ci sont causées par des conversions implicites, qui peuvent entraîner une perte d'informations (par exemple par des changements de signe).

CODESYS V3 vérifie les instructions "case" par rapport à la variable switch : CASE USINT OF INT n'est pas enregistré CoDeSys V2.3, mais il émet un message d'erreur lors de l'importation dans V3.

Configuration du contrôleur

le Configuration du contrôleur d'un CoDeSys V2.3 le projet ne peut pas être importé dans V3. Vous devez recréer la configuration de l'équipement et re-déclarer les variables utilisées dans la configuration du contrôleur.

Variables réseau

Pour les variables réseau, CODESYS crée V3 Objets GVL et importe les déclarations de variables. Cependant, les propriétés du réseau ne sont pas importées. Voir la description de l'échange de variables réseau pour cela.

Bibliothèques

Toutes les variables et constantes utilisées dans une bibliothèque doivent également être déclarées dans la bibliothèque. Il doit être possible de compiler la bibliothèque dans CoDeSys V2.3 sans fautes.

Restrictions syntaxiques et sémantiques depuis CoDeSys V2.3

  • FUNCTIONBLOCK n'est pas un mot clé valide au lieu de FUNCTION_BLOCK.

  • TYPE (déclaration d'une structure) doit être suivi d'un ":".

  • ARRAY l'initialisation** doit avoir des parenthèses.

  • INI n'est plus supporté (il faut le remplacer dans le code par la méthode Init).

  • Dans les appels de fonction, il n'est plus possible de mélanger des affectations de paramètres explicites avec des affectations de paramètres implicites. L'ordre des affectations des entrées de paramètres peut donc être modifié :

    fun(formal1 := actual1, actual2); // -> error message

    fun(formal2 := actual2, formal1 := actual1); // same semantics as the following line:

    fun(formal1 := actual1, formal2 := actual2);

  • CoDeSys V2.3 les pragmas ne sont pas convertis. Ils produisent un avertissement dans V3.

  • le TRUNC l'opérateur convertit maintenant le type de données DINT à la place de INT. CODESYS ajoute automatiquement une conversion de type correspondante pour un CoDeSys V2.3 importer.

Visualisation

Espaces réservés et leur remplacement

  • Espace réservé : PLC_PRG.$LocalVar$.aArr[0]

    VAR_INPUT : localVar: MyStruct;

    Usage: localVar.aArr[0]

    Substitution: localVar := PLC_PRG.myStructVar

  • Espace réservé : $Var$.aArr[0]

    VAR_INPUT : Var : MyStruct;

    Usage: Var.aArr[0]

    Substitution: Var := PLC_PRG.myStructVar

  • Espace réservé : PLC_PRG.myStructVar.aArr[$Index$]

    VAR_INPUT : Index : INT;

    Usage: PLC_PRG.myStructVar.aArr[Index]

    Substitution: Index := 0

Espaces réservés problématiques

  • Espaces réservés dans un texte

    Texte: $axle$-Axis

    Correction:

    localVar : STRING;

    Texte: %s-Axis

    Variable de texte : localVar

  • L'espace réservé ne décrit qu'une partie d'un nom de variable

    axis$axis$spur$spur$.fActPosition

    Correction:

    Définissez un seul espace réservé pour le axis$axis$spur$spur$ espace réservé.

    axis_spur : MyFunctionBlock;

    Ensuite, transférez directement l'instance correspondante du bloc fonction.

    axis_spur := PLC_PRG.axis1spur2;

  • L'espace réservé est remplacé par une expression

    $Expression$ -> PLC_PRG.var1 + PLC_PRG.var2

    Correction:

    Vous devez transférer l'expression dans une variable auxiliaire, puis transférer cette variable auxiliaire en tant qu'instance.

  • L'espace réservé décrit un nom de programme : $Program$.bToggle - PLC_PRG.bToggle D

    Le convertisseur ne peut pas transférer cette forme de mise en place d'espaces réservés dans V3. Cependant, vous l'utiliserez rarement dans la pratique.

  • L'espace réservé est remplacé par différents types :

    $Var$

    -> Remplacement 1 : PLC_PRG.n (INT)

    -> Remplacement 2 : PLC_PRG.st (CHAÎNE DE CARACTÈRES)

    Correction:

    Définissez deux espaces réservés différents dans l'interface pour cela.

  • La visualisation se trouve dans une bibliothèque. Vous remplacez l'espace réservé ultérieurement à partir de n'importe quel projet souhaité lorsque vous y utilisez la visualisation.

    Correction:

    Ici, vous devez remplacer le TYPE_NONE types de données manuellement. Cependant, vous avez également la possibilité d'intégrer la bibliothèque dans un projet et l'espace réservé est correctement remplacé. Si vous importez maintenant ce projet, le type de données est également déterminé correctement dans la bibliothèque.

Éléments non importables

Tendance, ActiveX : L'importation n'est pas possible car la mise en œuvre diffère considérablement. Dans V3, un avertissement correspondant est émis et une reproduction manuelle correspondante est requise.

Langages de programmation : ST, IL, FBD

Pas de restrictions

Langage de programmation : LD

CODESYS importe des blocs fonctionnels avec des branches parallèles de manière à ce que la partie avant la branche soit répétée pour chaque branche. Cela correspond au code généré qui CoDeSys V2.3 crée pour les branches parallèles.

_cds_img_v23import_ld_example.png

Langage de programmation : SFC

  • Les variables d'étape explicitement déclarées par l'utilisateur doivent être déclarées localement dans l'éditeur SFC. Vous ne pouvez pas les déclarer comme VAR_INPUT, VAR_OUTPUT ou VAR_INOUT, car CODESYS ne peut pas adapter automatiquement les appels. Explication : Les étapes n'utilisent plus de variables booléennes pour la gestion des états internes dans V3, mais aussi des structures du type SFCStepType.

  • Identifiant : les identifiants suivants ne peuvent pas commencer par un trait de soulignement :

    • Noms des actions CEI dans l'arborescence

    • Variables appelées dans une liste d'association CEI

    • Noms des transitions qui ont été programmées

Explication : Dans V3, les variables implicites qui CODESYS les créations pour les actions reçoivent un trait de soulignement comme préfixe. Un identificateur invalide avec un double trait de soulignement en résulterait.

Langage de programmation : CFC

  • Grandes boîtes : La mise en page des grandes boîtes peut perdre en qualité en raison d'une importation. Les cases peuvent trop se chevaucher. (Correction prévue.)

  • Macros : les macros ne peuvent pas être importées. (Correction prévue.)