Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 1 von 1

Thema: Ethernet Client

  1. #1
    Registriert seit
    02.05.2016
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo allerseits,
    recht neu in der SPS Programmierung versuche ich gerade einen Ethernet-Client auf der Wago 750-880 zur Datenübertragung zu realisieren. Soweit funktioniert alles ganz gut, bis der Server temporär nicht mehr antworten kann. Dann bricht die Verbindung mit Fehler 16#8006 => SysSockConnect() fails ab. Wünschenswert wäre ein automatischer Wiederaufbau der Verbindung, sobald der Server wieder verfügbar ist. Eine Speicherung der nicht übertragenen Datenpakete ist nicht erforderlich.
    Anbei mein Code und danach ein paar Fragen hierzu:

    Code:
    (******************************************************************************)
    PROGRAM PLC_PRG
    VAR
    END_VAR
    
    (* run the different modules *)
    MYethernet;
    
    MYmodule1;
    MYmodule2;
    
    (******************************************************************************)
    (* VAR_GLOBAL *)
    
    VAR_GLOBAL
      data : STRING;
      startTransmission : BOOL := FALSE;
    END_VAR
    
    (******************************************************************************)
    (* PROGRAM MYethernet    *)
    
    PROGRAM MYethernet
    VAR
      tcpc : TCP_Client3;
      ip : STRING := '10.10.50.1';
      port : WORD := 7072;
      receivebuff : ARRAY [0..MAX_RECEIVE_TCP_CLIENT] OF BYTE;
      received : DINT;
      tcperr : DINT;
    
    END_VAR
    
    tcpc (xOpenConnection := TRUE,
          sIPaddress := ip,
          wPortNumber := port,
          ptSendData := ADR(data),
          diSendCount := LEN(data),
          xStartSend := startTransmission,
          aReceiveBuffer := receivebuff,
          diReceiveCount := received);
    
    IF tcpc.diError <> 0 THEN
      tcperr := tcpc.diError;
    END_IF
    
    (******************************************************************************)
    (* FUNCTION MYtrigger *)
    
    FUNCTION MyTrigger : BOOL
    VAR_INPUT
      str: STRING;
    END_VAR
    VAR
    END_VAR
    
    ... some more string manipulation ...
    data := str;
    startTransmission := TRUE;
    
    (******************************************************************************)
    (* PROGRAM MYmodule1 *)
    
    (*** here is all the logic *** *)
    ...
     MyTrigger ("string to be transmitted");
    ...

    • tcpc wird in jedem Zyklus aufgerufen, egal, ob Daten übertragen werden sollen oder nicht. Ist das wünschenswert oder sollte der Aufruf nur dann erfolgen, wenn Daten übertragen werden sollen?
    • Wie kann ich nach einem Verbindungsabbruch die Verbindung wieder aufbauen?
    • MYmodule1 und MyTrigger bereiten den Datenstring vor. Über startTransmission erfolgt die Auslösung der Übertragung. In dem gezeigten Beispiel wird die Datenübertragung aber erst im nächsten Zyklus ausgelöst. Ist das o.k. und "by Design" erwünscht, oder sollte ich die Kommunikation "anders" umsetzen?
    • würdet ihr die Struktur des Programms gänzlich anders aufbauen (hinsichtlich der TCP-Kommunikation) ?
    • Ist TCP_Client3 der richtige Baustein von Wago oder gibts hier was "besseres"?
    • und optional, wenn die obigen Fragen geklärt sind: wie bekomme ich MyTrigger re-entrant, so daß ich pro Zyklus mehrere TCP-Übertragungen absetzen kann?


    Würde mich sehr freuen, wenn Ihr mir hier ein wenig unter die Arme greifen könnt. Ich denke z.Zt. mehr in C++ und Java Methoden. SPS Programmierung ist halt ein wenig anders und für mich recht ungewohnt.
    Dank und schöne Grüße aus Köln,
    Wolfram
    Geändert von wopl (18.06.2016 um 16:41 Uhr)
    Zitieren Zitieren Ethernet Client  

Ähnliche Themen

  1. Antworten: 12
    Letzter Beitrag: 03.05.2016, 08:42
  2. Antworten: 7
    Letzter Beitrag: 21.01.2016, 03:31
  3. Antworten: 3
    Letzter Beitrag: 14.11.2012, 12:26
  4. Beckhoff Ethernet/IP Client in der Allen Bradley konfigurieren
    Von Byteverdreher im Forum Sonstige Steuerungen
    Antworten: 5
    Letzter Beitrag: 18.05.2012, 12:05
  5. WinCC 6.2 Server/Client Bedienung nur Client
    Von Jens Qualmann im Forum HMI
    Antworten: 2
    Letzter Beitrag: 22.08.2008, 19:06

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •