Daten Übertragung TCP/ip

Tiak
2008-09-15
2008-09-17
  • Tiak - 2008-09-15

    Hallo

    Ich habe ein Problem mit Daten Übertragung von ein Wago 841 Controller über Ethernet Tcp.

    Ich habe folgende data

    ^XA^FWN^CFD,24^LH0,0^CI13,146,198^PR2^MNN^MMC^PON^LL1360

    ^A0N,68,68^FO62,90^FDFrederikshavn Havn^FS

    ^A0N,45,45^FO62,200^FDTrailer reg:__^FS

    ^A0N,45,45^FO62,320^FD^FS

    ^A0N,45,45^FO62,370^FDDato: 03/09/2008 Tid:11:37:32^FS

    ^FO90,450^BY2^BCN,100,Y,N,N^FD03/09/2008 11:37:32^FS

    ^A0N,40,40^FO62,650^FD________^FS

    ^A0N,68,68^FO62,790^FDFrederikshavn Havn^FS

    ^A0N,45,45^FO62,900^FDTrailer reg:__^FS

    ^A0N,45,45^FO62,1020^FD^FS

    ^A0N,45,45^FO62,1070^FDDato: 03/09/2008 Tid:11:37:32^FS

    ^FO90,1150^BY2^BCN,100,Y,N,N^FD03/09/2008 11:37:32^FS

    ^PQ1,0,1,Y^XZ

    Die Daten konvertier ich von einem String Array zu Bytes, und da nach sende ich de Daten über Ethernet zu einem Drucker. Aber der Controller sendet nicht alle Daten, mit ein Analyse Program habe ich den Kommunikation Übertragung kontrolliert und folgende Daten ist gesendet.

    ^XA^FWN^CFD,24^LH0,0^CI13,146,198^PR2^MNN^MMC^PON^LL1360

    ^A0N,68,68^FO62,90^FDFrederikshavn Havn^FS

    ^A0N,45,45^FO62,200^FDTrailer reg:__^FS

    ^A0N,45,45^FO62,320^FD^FS

    ^A0N,45,45^FO62,370^FDDato: 03/09/2008 Tid:11:37:32^FS

    ^FO90,450^BY2^BCN,100,Y,N,N^FD03/09/2008 11:37:32^FS

    ^A0N,40,40^FO62,650^FD________^FS

    ^A0N,68,68^FO62,790^FDFrederikshavn Havn^FS

    ^A0N,45,45^FO62,900^FDTrailer reg:___

    Der Software für die Konvertierung ist folgende aber hier glaube ich nicht der Problem ist, k

    Data Type

    TYPE ETH_FotoData :

    STRUCT

    Code1: STRING[30];
    
    Text: STRING[30];
    
    Code2: STRING[30];
    
    Data: STRING[60];
    

    END_STRUCT

    END_TYPE

    Der variable für Result

    VAR_GLOBAL

    UniversalArrayFoto: ARRAY[0..10000] OF BYTE;
    

    END_VAR

    FUNCTION_BLOCK StToArBy

    VAR

    Conv: BOOL;
    
    Ons: R_TRIG;
    
    ptString: POINTER TO BYTE;
    
    Index: INT;
    
    i: INT;
    
    j: INT := 0;
    

    END_VAR

    VAR_INPUT

    ETHFotoData: ARRAY[0..1,0..14] OF ETH_fotoData;
    
    Start: BOOL;
    

    END_VAR

    VAR_OUTPUT

    Result:  ARRAY[0..10000] OF BYTE;
    

    END_VAR


    index := 0;

    FOR i:=0 TO 12 DO

    ptString := ADR(ETHFotoData[0,i].Data);
    
    FOR j:=0 TO LEN(ETHFotoData[0,i].Data)-1 DO
    
        result[index]   := ptString^;
    
        ptString    := ptString + 1;
    
        index := index + 1;
    
    END_FOR
    

    END_FOR

    Kann wirklich nicht alle die Date über tcp senden oder was kann es sein, weis jemand wo mein Problem seien kann

    Grus aus Dänemark

     
  • Erik Böhm - 2008-09-17

    Hallo

    Kann es sein, dass das genau 255 Zeichen sind ?

    Die Standard String Funktionen machen nur 255 Byte.

    Gruss

    Erik

     

Log in to post a comment.