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

UDP Localhost Empfangsproblem

TobiasK
2012-09-17
2024-01-31
  • TobiasK - 2012-09-17

    Hallo,

    ich versuche mit CoDeSys Daten von Matlab-Simulink über UDP zu empfangen. Dazu benutze ich die Syslibsocket.
    Wenn ich in Matlab über einen Broadcast (‘255.255.255.255‘) z.B. ein Array von 8 zahlen sende, funktioniert alles reibungslos.
    Wenn ich allerdings, wie beabsichtigt, als Zieladresse Localhost ‘127.0.0.1‘ angebe, kommen die Daten in CoDeSys nicht an. Wenn ich dann auslogge, den Port ändere und einlogge ohne zu bereinigen und dann die 2. Option "Mit Download einloggen" auswähle funktioniert das ganze auch mit Localhost ohne Probleme. Warum funktioniert es aber nicht wenn ich vorher alles bereinige?

    Mit dem Programm ‚RawCap‘ bzw. ‚Wireshark‘ konnte ich einsehen, dass Matlab die Daten in beiden Fällen wirklich sendet.

    Über ein paar Ideen würde ich mich sehr freuen.

    MfG TobiasK

     
  • Schuero - 2012-09-19

    Hallo.

    Kann es sein, dass du den Kommunikationsbaustein erst einmal "reseten" mußt, bevor der die neue Adresse im laufenden Programm läd?
    Meist muß man das "permanente" senden einmal unterbrechen, erst dann wird die neue IP gleaden.

    gruß schuero

     
  • TobiasK - 2012-09-19

    Hallo,

    danke für die Antwort. Leider hilft dies auch nichts.

    MfG

     
  • Erik Böhm - 2012-09-21

    Moin

    Hast du die Callbacks entsprechend registriert ?

    Bsp:
    SysCallbackRegister(INDEXOF(Callback_Shutdown), EVENT_EXCPT_ACCESS_VIOLATION);
    SysCallbackRegister(INDEXOF(Callback_Shutdown), EVENT_POWERFAIL);
    SysCallbackRegister(INDEXOF(Callback_Shutdown), EVENT_SYSTEM_CRASH);
    SysCallbackRegister(INDEXOF(Callback_Shutdown), EVENT_BEFORE_RESET);
    SysCallbackRegister(INDEXOF(Callback_Shutdown), EVENT_BEFORE_DOWNLOAD);
    SysCallbackRegister(INDEXOF(Callback_Shutdown), EVENT_SHUTDOWN);

    Gruß
    Erik

     
  • TobiasK - 2012-09-24

    Ja, im Code dürfte es keine Fehler geben. Dieser wurde vom 3s Kundensupport angeschaut und mir wurde gesagt, dass alles soweit passen würde.

     
  • TobiasK - 2012-10-18

    niemand noch eine Idee?

     

Log in to post a comment.