Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched. Close

Unterschiedliche Funktionenkönnen nicht eingebunden werden

SimoneK
2007-03-28
2008-01-11
  • SimoneK - 2007-03-28

    Hallo Männergemeinde

    Ich versuche ein Projekt, was auf einem Wago Controller läuft (Dateien über FTP lesen und schreiben) auf einer SP RTE zum Laufen zu bringen. Das Compilieren funktioniert fehlerfrei, aber beim Einloggen kommt die Meldung:

    Folgende Funktionen:..(eine lange Liste an Funktionen) können nicht eingebunden werden.

    Was mache ich falsch? Ist nicht der komplette Funktionssatz lauffähig?

    Was muss ich bei den Kommunikationsparameter beachten?

    Danke im voraus.Simone

     
  • mwatermann - 2007-03-29

    moin,

    dieser fehler tritt auf, wenn du in deinem projekt funktionen nutzt, die durch das target, im betriebssystem, unterstützt werden; bzw. genau diese, die du verwendest eben nicht dort vorhanden sind.

    der fehler sollte nach dem hochladen des codes auf den controller auftreten, oder?

    bei unseren SPSen ist dies der fall, wenn wir auf einem controller ein altes RTS haben, aber neue funktionen (eines neueren RTS) verwenden.

     
  • SimoneK - 2007-03-29

    ja guten morgen,

    deine Antwort bedeutet also, die Codesys SP RTE unterstützt die angezeigten Funktionen nicht. :? Habe ich da richtig interpretiert?

    simone

     
  • mwatermann - 2007-03-29

    hupps... sorry... hab vorm ersten kaffee heute morgen wohl das forum/topic übersehen => Codesys SP RTE

    aber der fehler, welcher ausgegeben wird ist der gleiche. mit der SP kenn ich mich allerdings nicht aus.

    nach zweitem durchlesen wirds aber klarer

    ja, du verwendest in dem projekt vermutlich vom wago controller unterstützte (im RTS eingebundene) funktionen; diese kennt die SP natürlich nicht und kann sie somit auch nicht einbinden.

     
  • Erik Böhm - 2007-03-29

    Hallöle

    Ich vermute mal, du hast die Target spezifischen Libraries (also z.B. alles was SysLib... heist) immer noch aus dem Wago Ordner.

    Da solltest du die aus dem Ordner

    .../CAA-Targets/3S/LibNtRt/

    benutzen.

    Gruss

    Erik

     
  • SimoneK - 2007-03-29

    Ja, das mit den Funktionen ist mir jetzt klar. Aber es folgt das nächste Problem:

    ich versuche jetzt, (da ich noch keine Idee habe, wie ich sonst eine Datei aus dem WAGO\PLC Verzeichnis in die SP RTE lesen kann,) über UDP Daten aus dem WAGO Controller zum SP RTE zu senden. Eine Richtung funktioniert: SP RTE zu WAGO, aber von WAGO zu SP RTE nicht.

    Ich habe eigentlich alle Tipps hierzu aus dem Forum befolgt.

    Beim Compilieren des WAGO Projekts kommt auch eine nicht erklärliche Warnung 1508: UdpReceiveData(2) Typ UDINT des Operanden ist nicht gleich Typ DINT der Konvertierung. Für die Konvertierung wird UDINT verwendet! - Habe ich dort auch eine alte Bibliothek erwischt: NetVarDup_LIB_V23 18.1.05

     
  • Erik Böhm - 2007-03-29

    Hallo

    Die Warnung ist schnell erklärt. Eine Konvertierung von UDINT in DINT ist nicht verlustfrei machbar (Vorzeichen), deshalb die Warnung. Wenn du nicht den gesammten Wertebereich von DINT brauchst, mach aus der Variable einfach ein UDINT.

    Wofür hast du eigentlich die NetVarUdp Lib eingebunden ? Die wird zur Unterstützung von Netzvariablen benötigt. Benutzt du diese (wirklich sehr nützliche) Funktion, oder hast du das Senden / Empfangen über UDP selbst nachgebaut ?

    Gruss

    Erik

     
  • SimoneK - 2007-03-29

    Erik Böhm hat geschrieben:
    Hallo
    Die Warnung ist schnell erklärt. Eine Konvertierung von UDINT in DINT ist nicht verlustfrei machbar (Vorzeichen), deshalb die Warnung. Wenn du nicht den gesammten Wertebereich von DINT brauchst, mach aus der Variable einfach ein UDINT.
    Wofür hast du eigentlich die NetVarUdp Lib eingebunden ? Die wird zur Unterstützung von Netzvariablen benötigt. Benutzt du diese (wirklich sehr nützliche) Funktion, oder hast du das Senden / Empfangen über UDP selbst nachgebaut ?
    Gruss
    Erik

    Ja, ich habe diese Lib eingebunden (passiert automatisch wenn man unter Zieleinstellungen die Option wählt), weil ich Netzwerkvariablen nutzen will.

    Ich will das nicht nachbauen, aber der angezeigte Fehler ist in der eingebundenen Bibliothek und da kann ich doch nichts ändern,oder???

    Jedenfalls kann ich nach nunmehr 3h immer noch keine Daten von Wago an SP RTE über Netzwerkvariablen senden. Das ist frustrierend und nicht verständlich, denn die Gegenrichtung funktioniert.

    Simone

     
  • Erik Böhm - 2007-03-29

    Hallo

    Geduld ist wohl keine weibliche Tugend

    Wenn die Warnung in der Lib ist, ist das zwar nicht schön, aber auch kein Beinbruch. Diese Überprüfung auf den Datentyp gibts in CoDeSys noch nicht so lange, drum gabs die Meldung vermutlich vorher nicht.

    Einfach ignorieren.

    Hast du einen 750-841 oder -842 von Wago ?

    Bist du dir sicher, dass die Einstellungen der Variablenlisten auf BEIDEN Systemen korrekt sind ? Ganz wichtig sind z.B. die COB ID's der Listen. Die müssen auf beiden Systemen gleich sein, aber die Sende- und die Empfangsliste müssen unterschiedliche ID's haben.

    ALso

    RTE SendList = ID 1 RTE ReadList = ID 2

    Wago ReadList = ID 1 Wago SendList = ID 2

    Gruss Erik

     
  • HTWM - 2008-01-10

    Nach Umstieg von der WAGO-Softwareversion 2.3.4.7 auf 2.3.8.5

    kommen bei mir auch 2 gleichlautende Warnungen mit folgendem Wortlaut:

    Warnung 1508: UdpRecieiveData (2): Typ 'UDINT' des Operanden ist nicht gleich Typ 'DINT der Konvertierung! Für die Konvertierung wird 'UDINT' verwendet.

    Ich verwende aber nur boolsche Netzwerkvariablen.

    Die Übersetzung des gleichen Projektes mit der Version 2.3.4.7 liefert diese Warnmeldungen nicht.

    Gibt es ähnliche Erfahrungen und Abhilfen ?

    Vielen Dank!

    HTWM

     
  • HTWM - 2008-01-11

    @ Oberchefe

    Vielen Dank für den Link, aber eine kurze Erläuterung wäre schon nicht schlecht !

     
  • Oberchefe - 2008-01-11

    Zitat:
    aber eine kurze Erläuterung wäre schon nicht schlecht !

    Zitat:
    bleibt warscheinlich nur noch die Möglichkeit, es mit einer älteren Compilerversion zu versuchen (die es mit der Typprüfung noch nicht so genau nimmt).
    "Projekt", "Optionen", Tab "Übersetzungsoptionen", Haken raus bei "Compiler Version Immer aktuell" und eine entsprechend alte Version anwählen.

     

Log in to post a comment.