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

Dynamische Zieladresse Netzwerkvariablen

FaberM
2014-11-06
2014-11-06
  • FaberM - 2014-11-06

    Hallo,

    gibt es eine Möglichkeit zur Laufzeit die Zieladresse für Netzwerkvariablen (Sender) zu ändern?
    Bei Codesys V2 hatte man Zugriff auf die Adressen und konnte diese bei Bedarf über entsprechende
    Variablen ändern. Das hatte den Vorteil, dass man die Adressen beispielsweise über eine Parameterdatei
    festlegen konnte (oder über die Webvisu), ohne das Programm neu zu kompilieren. Broadcast über das
    gesamte Netz ist sehr unschön.

    Grüße

     
  • FaberM - 2014-11-06

    Nach einigem Suchen bin ich doch noch selbst fündig geworden.

    Für Interessierte:

    Sobald man eine Sendervariablenliste anlegt, wird automatisch eine neue globale Variablenliste NetVar_Application_GVL generiert.
    Diese enthält ein Array mit Funktionsbausteinen des Typs NetVarPDO_Tx_Udp und zwar eine Instanz für jede angelegte Senderliste.
    Schaut man sich diesen FB online an, findet man den Eingang stIPAddressBroadcast über den man nun, auch während der Laufzeit,
    die Zieladresse ändern kann.

    Beispiel:
    Im Projekt wurde eine Sendeliste angelegt.

    PROGRAM PLC_PRG
    VAR
       pSender   : POINTER TO ARRAY[0..0] OF NetVarPDO_Tx_Udp;
    END_VAR
    pSender := ADR(NetVar_Application_GVL.TxPDOs_UDP);
    pSender^[0].stIPAddressBroadcast := '192.168.64.123';
    

    Grüße

     

Log in to post a comment.