ABB機器人關於TCP/IP的通訊操作


主要是把機器人當客戶端對服務端的通訊,下面是機器人程序

MODULE CameraScoketCom
    VAR socketdev socket3;
    VAR string string1;
    VAR string string9;
    VAR string string10;
    VAR string one;
    VAR string two;
    VAR string there;
    VAR string four;
    VAR num char1;
    VAR num char2;
    VAR num end1;
    VAR num end2;
    VAR num star2;
    VAR num star3;
    VAR num end3;
    VAR num star4;
    VAR num end4;
    VAR bool ok;
    VAR pos pos1;
    PROC pkcamera3()
        SocketClose socket3;
        SocketCreate socket3;
        SocketConnect socket3, "192.168.100.91", 3000;
        SocketSend socket3\Str:=string1;
        SocketReceive socket3\Str:=string10;
        char1 := StrLen(string9);
        char2 := StrLen(string10);
        IF char1 >= char2 THEN
            GOTO guo1;
        ENDIF
        end1 := StrFind(string10,1,")");
        end2 := StrFind(string10,1,"}");
        star2 := StrFind(string10,1,"{");
        !star3 := StrFind(string9,1,"*");
        !end3 := StrFind(string9,1,"#");
        star3 := StrFind(string10,1,"C");
        end3 := StrFind(string10,1,"c");
        star4 := StrFind(string10,1,"A");
        end4 := StrFind(string10,1,"a");
        !star5 := StrFind(string9,1,"B");
        !end5 := StrFind(string9,1,"b");
        one := StrPart(string10,2,end1 - 2);
        two := StrPart(string10,star2 + 1,end2 - star2 - 1);
        there:=StrPart(string10,star3 + 1,end3 - star3 - 1);
        four:=StrPart(string10,star4 + 1,end4 - star4 - 1);
        !five:=StrPart(string9,star5 + 1,end5 - star5 - 1);
        !there := StrPart(string9,star3+1 ,2);
        !six := StrPart(string9,star3 + 3,end3 - 3 - star3);
        ok := StrToVal(one,pos1);
        ok := StrToVal(two,pos1);
        ok := StrToVal(there,pos1);
        ok := StrToVal(four,pos1);
        guo1:
    ENDPROC
ENDMODULE

其中socket通訊為兩種,第一種是作客戶端就是圖上的編寫方法,第二種是作服務器如下圖所示,推薦第一種方法,第二種每次連接后再次連接前面必須關閉創建的套接字

SocketCreate server_socket;
SocketBind server_socket,"192.168.0.1", 1025;
SocketListen server_socket;
SocketAccept server_socket, client_socket;

得到外部設備發過來的字符串需要進行相應的處理,上面用到了strFind()、StrPart()、StrToVal()函數,下面進行相應解釋

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM