RM新时代赚钱项目

EC機器人TCPIP通訊(通訊助手)

2025-05-27

1.  簡(jiǎn)介

本文簡(jiǎn)單介紹EC機器人通過(guò)Socket通訊與通訊助手連接進(jìn)行測試。

2.  操作流程

1、首先在電腦上準備(SocketTool)通訊助手工具

2、然后電腦與EC機器人通過(guò)網(wǎng)線(xiàn)相連接,設置為同一網(wǎng)段

電腦IPV4設置:

機器人IP設置

3、  機器人運行加載Socket通訊lua腳本

選擇寫(xiě)好的lua腳本保存并運行,當后面狀態(tài)為綠色時(shí)就是腳本已運行

3.  示例

3.1.  EC機器人做客戶(hù)端連接服務(wù)器

Socket Tool 工具做服務(wù)器設置,端口為6666

機器人做客戶(hù)端lua腳本

3.1.1、連接服務(wù)器,接收和發(fā)送數據

lua腳本示例:

sleep(0.2)

ip="192.168.1.169" --服務(wù)器的IP

port=6666   --服務(wù)器的端口

mode="D2"  --獲取機器人D2變量的值

--連接服務(wù)器--

function Connection()   

    repeat ---repeat循環(huán),until條件滿(mǎn)足跳出循環(huán)

        conn = connect_tcp_server(ip,port) --連接TCP語(yǔ)句

        if conn ~=1  then   ---判斷是否連接上去,連接上去返回1,失敗返回-1

            elite_print("TCP連接失敗,重連中",conn)---失敗后先斷開(kāi)連接一次           

            disconnect_tcp_server(ip,port)

            sleep(0.1)

        end

    until conn==1

    elite_print("TCP連接成功")

end

Connection()--連接服務(wù)器

---接收數據---

while true do

    mode1=get_global_variable(mode) ---獲取機器人mode(D2)里面的值

    sleep(0.1)

if mode1==2 then

        repeat    

            ---接收數據,ret判斷得到的是返回的結果-1還是其他,recv里保存的是獲取的值

            ret,recv =client_recv_data(ip,0.1,0,port)

            elite_print(recv) --打印出來(lái)接收到的內容

            sleep (1)

        until (ret~=-1)

        sleep(0.01)

        set_global_variable(mode,0) --復位機器人D2的值為0

    end

---發(fā)送數據---

    if mode1==3  then

        ret = client_send_data(ip,"OK",0,port) --發(fā)送數據給服務(wù)器

        if ret ==-1 then

        elite_print("發(fā)送數據錯誤")

        end

        sleep(0.02)

        set_global_variable(mode,0) --復位機器人D2的值為0

    end

end

連接服務(wù)器時(shí),當機器人未連接會(huì )在日志上一直打印內容

連接上去后也會(huì )打印一次

機器人觸發(fā)接收數據后,服務(wù)器發(fā)送數據,會(huì )在日志上顯示接收到的數據,之后就可按需求來(lái)使用。

機器人觸發(fā)發(fā)送數據后,會(huì )給服務(wù)器發(fā)送設定的字符串,服務(wù)器會(huì )顯示接收到的數據


3.2.  EC機器人做服務(wù)器連接客戶(hù)端

通訊助手做客戶(hù)端設置

機器人做服務(wù)器lua腳本

3.2.1、初始化TCP服務(wù)器,向客戶(hù)端發(fā)送和接收客戶(hù)端的數據

lua腳本示例:

sleep(1)  -- 等待1秒

port = 6666  -- 設置服務(wù)器端口

ip ="192.168.1.169"  -- 設置客戶(hù)端IP地址

init_tcp_server(port)  -- 初始化TCP服務(wù)器

while(1)do  -- 無(wú)限循環(huán)

    ret=is_client_connected(ip)  -- 檢查客戶(hù)端是否連接

    if(ret==1)then  -- 如果客戶(hù)端已連接

elite_print("客戶(hù)端已連接")

        server_send_data(ip,"1")  -- 向客戶(hù)端發(fā)送數據"1"

        recv="1"  

        while(recv ~= "2") do  

            sleep(1)  -- 等待1秒

            Ret,recv=server_recv_data(ip,0,port,0.5)  -- 接收客戶(hù)端數據

            elite_print(recv,Ret)  -- 打印接收到的數據和狀態(tài)   

        end

else

        elite_print("客戶(hù)端未連接")

    end  

end

客戶(hù)端未連接和連接上都是在日志上打印信息

連接上后,機器人會(huì )發(fā)送字符串“1”給客戶(hù)端,通訊助手上接收到數據

客戶(hù)端發(fā)送字符串“2”給機器人,機器人接收到數據把數據和接收到的數量打印出來(lái)

3.3.數據處理

在做服務(wù)器與客戶(hù)端時(shí)都會(huì )碰到接收的數據是字符串,在腳本中無(wú)法直接使用,這時(shí)就需用到字符串分割的功能。

字符串分割可以把接收到的字符串根據定義的字符來(lái)分割,返回一個(gè)數組供我們使用。

下面就是一個(gè)示例把接收到的字符串通過(guò)","進(jìn)行分割。

recv1=string.split(recv,",")

download-669.svg comicon14.svg

電話(huà)咨詢(xún)

download-397.svg comicon15.svg

免費試用

Vector.svg Frame.svg

微信小程序

img1.jpg

微信小程序

準備好體驗輪式人形機器人帶來(lái)的效率飛躍了嗎?開(kāi)啟智能制造之旅
了解我們的機器人如何幫助您的業(yè)務(wù)增長(cháng)
歡迎下載艾利特機器人資料

我已閱讀并同意艾利特《隱私政策》和《法律聲明》

我已知曉并同意艾利特通過(guò)電子郵件發(fā)送相關(guān)資料

提交
RM新时代赚钱项目