CoDeSys 2.3 ->3.4

2010-09-06
2010-09-17
  • sweetheart1 - 2010-09-06

    Hallo
    hab mal ne Frage:
    Ich soll jetzt ein Projekt in 2.3 schreiben, dass in ca 1 Jahr auf 3.4 konvertiert werden soll.
    Was muß ich beim programmieren alles beachten, damit es möglichst problemlos gewandelt werden kann??
    vg sweetheart

     
  • sweetheart1 - 2010-09-17

    Kann mir den wirklich keiner einen Tipp geben

     
  • RolandWagner

    RolandWagner - 2010-09-17

    Einige Tipps (aus einer etwas älteren Präsentation innerhalb der CoDeSys Users' Conference):

    Projekte in V2.3
    Das Projekt muss in der Version 2.3 fehlerfrei übersetzbar sein. Beim Übersetzen eines fehlerfreien Projekts aus V2.3 werden viele Warnungen erzeugt. Es handelt sich dabei um implizite Konvertierungen, bei denen Information verloren gehen können. (z.B. Vorzeichenwechsel)

    Steuerungskonfiguration
    Die Konfiguration der Steuerung ist NICHT importierbar! Die Gerätekonfiguration muss neu erstellt werden. Die Variablen in der Steuerungskonfiguration müssen neu deklariert werden

    Netzwerkvariablen
    In der CoDeSys V3 werden GVL-Objekte erzeugt und die Variablendeklarationen importiert. Die Netzwerkeigenschaften werden nicht importiert.

    Bibliotheken
    Alle Variablen und Konstanten, die in einer Bibliothek verwendet werden, müssen auch in dieser Bibliothek deklariert sein. Die Bibliothek muss in sich übersetzbar sein.

    Compiler
    Die Initialisierung von Variablen mit Konstanten wird in der V3 restriktiver geprüft:
    byte_var : BYTE := word_constant; In CoDeSys V2.3 kein Fehler Beim Import in V3: Fehlermeldung!
    In der CoDeSys V3 werden Case-Fälle gegen die Switch-Variablen geprüft:
    CASE USINT OF INT wird in der 2.3 nicht geprüft Beim Import in V3: Fehlermeldung!

    KOP / LD
    Funktionsbausteine dürfen nur in Parallelverzweigungen verwendet werden, die direkt mit der Power-Rail verbunden sind.
    Bausteine, die mit EN/ENO versehen sind, dürfen keinen weiteren Baustein an den Eingängen haben. Erlaubt ist z.B. eine Variable.

    AS / SFC
    Explizit vom Anwender deklarierte Schrittvariablen müssen lokal im SFC deklariert werden. Sie dürfen nicht als VAR_INPUT, VAR_OUTPUT oder VAR_INOUT deklariert werden, da die Aufrufe nicht automatisch angepasst werden können. Erklärung: Schritte verwenden zur Verwaltung der internen Zustände in V3 keine booleschen Variablen mehr, sondern auch Strukturen vom Typ SFCStepType

    Identifier
    Nicht mit einem Unterstrich beginnen dürfen IEC-Aktionen im Baum, boolesche Variablen, die in einer IEC-Assoziationsliste aufgerufen werden, die Namen von ausprogrammierten Transitionen.
    Erklärung: In V3 erhalten die impliziten Variablen, welche für Aktionen angelegt werden, einen Unterstrich als Präfix. Es würde ein ungültiger Identifier mit doppeltem Unterstrich entstehen.

    CFC
    Beim Import eines mehrzeiligen Kommentars wird nur die erste Zeile angezeigt. Makros können noch nicht importiert werden (kann aber sein, dass das schon behoben ist - am Besten vorher ausprobieren)

    Wie gesagt:
    Diese Angaben sind möglicherweise nicht ganz aktuell. Möglicherweise ist die eine oder andere Einschränkung nicht mehr nötig. Aber es bestimmt kein Fehler, darauf zu achten.

     
  • sweetheart1 - 2010-09-17

    DANKESCHÖN

     

Log in to post a comment.