EC机器人TCPIP通讯(通讯助手)

2025-07-07

1.  简介

本文简单介绍EC机器人通过【tōng guò】Socket通讯与【tōng xùn yǔ】🛅通讯助🦁手连接🏞进行测试【shì】。

2.  操作流程

1、首先在【shǒu xiān zài】电脑上🤒准备(SocketTool)通讯助🏣手工具【shǒu gōng jù】

2、然后电脑与【nǎo yǔ】EC机器人【jī qì rén】通过网【tōng guò wǎng】🥍线相连🔃接🎹,设置为同一网段

电脑IPV4设置:

机器人IP设置

3、  机器人【jī qì rén】运行加载📧Socket通讯【tōng xùn】lua脚本🍄

选择写【xuǎn zé xiě】好的💅lua脚本保【jiǎo běn bǎo】存并运【cún bìng yùn】行【háng】😚,当后面状态为🌦绿色时就是脚本已运✡行【háng】😚

3.  示例

3.1.  EC机器人【jī qì rén】🧞做客户【zuò kè hù】端连接👃服务器

Socket Tool 工具做【gōng jù zuò】📭服务器设置【shè zhì】🔎,端口为6666

机器人做客户端lua脚本

3.1.1、连接服务器,接收和发送数据

lua脚本示例:

sleep(0.2)

ip="192.168.1.169" --服务器🐞的【de】IP

port=6666   --服务器【fú wù qì】⛹的端口

mode="D2"  --获取机【huò qǔ jī】🍢器人D2变量的值【zhí】❌

--连接服务器--

function Connection()   

    repeat ---repeat循环【xún huán】🔧,until条件满足跳出【zú tiào chū】循环【xún huán】🔧

        conn = connect_tcp_server(ip,port) --连接【lián jiē】TCP语句📀

        if conn ~=1  then   ---判断是【pàn duàn shì】否连接【fǒu lián jiē】📷上去【qù】🎽,连接上去【qù】🎽返回🔴1,失败返回🔴-1

            elite_print("TCP连接失败【bài】,重连中",conn)---失败后【shī bài hòu】先断开❇连接一【lián jiē yī】📴次🍍           

            disconnect_tcp_server(ip,port)

            sleep(0.1)

        end

    until conn==1

    elite_print("TCP连接成【lián jiē chéng】😳功")

end

Connection()--连接服务器

---接收数据---

while true do

    mode1=get_global_variable(mode) ---获取机【huò qǔ jī】📚器人👀mode(D2)里面的值【zhí】

    sleep(0.1)

if mode1==2 then

        repeat    

            ---接收数据📱,ret判断得【pàn duàn dé】到的是返回的【fǎn huí de】结果【jié guǒ】👮-1还是其他👡,recv里保存的是获取的值【qǔ de zhí】✖

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

            elite_print(recv) --打印出来接收【lái jiē shōu】到的内👅容【róng】🉐

            sleep (1)

        until (ret~=-1)

        sleep(0.01)

        set_global_variable(mode,0) --复位机【fù wèi jī】器人D2的值为🔻0

    end

---发送数据---

    if mode1==3  then

        ret = client_send_data(ip,"OK",0,port) --发送数🌬据给服【jù gěi fú】务器

        if ret ==-1 then

        elite_print("发送数🔶据错误【jù cuò wù】")

        end

        sleep(0.02)

        set_global_variable(mode,0) --复位机【fù wèi jī】器人D2的值为🥅0

    end

end

连接服⛱务器时,当机器【dāng jī qì】人未连接会在❤日志上一直打【yī zhí dǎ】印内容【yìn nèi róng】🈴

连接上去后也会打印一次

机器人🔵触发接收数据【jù】🥐后【hòu】🍉,服务器发送数【fā sòng shù】🛸据【jù】,会在日【huì zài rì】志上显示接收到的数据【jù】,之后【hòu】🍉就可按需【xū】👘求来使【qiú lái shǐ】用。

机器人【jī qì rén】触发发🥤送数据🐢后【hòu】,会给服🆓务器发送设定的字符【de zì fú】🌓串,服务器会显示接收到【jiē shōu dào】的数据


3.2.  EC机器人【jī qì rén】做服务【zuò fú wù】🔩器连接客户端💜

通讯助手做客户端设置

机器人做服务器lua脚本

3.2.1、初始化【chū shǐ huà】😐TCP服务器🦒,向客户端【kè hù duān】发送🏈和接收【hé jiē shōu】客户端【kè hù duān】的数据

lua脚本示例:

sleep(1)  -- 等待【děng dài】1秒🏰

port = 6666  -- 设置服务器端口【kǒu】🦂

ip ="192.168.1.169"  -- 设置客🏅户端【hù duān】IP地址

init_tcp_server(port)  -- 初始化【chū shǐ huà】📟TCP服务器

while(1)do  -- 无限循♍环【huán】

    ret=is_client_connected(ip)  -- 检查客户端是【hù duān shì】🥈否连接

    if(ret==1)then  -- 如果客🗣户端已连接【lián jiē】

elite_print("客户端已连接【yǐ lián jiē】😁")

        server_send_data(ip,"1")  -- 向客户【xiàng kè hù】端发送😬数据"1"

        recv="1"  

        while(recv ~= "2") do  

            sleep(1)  -- 等待👨1秒【miǎo】

            Ret,recv=server_recv_data(ip,0,port,0.5)  -- 接收客🥏户端数【hù duān shù】据

            elite_print(recv,Ret)  -- 打印接🈳收到的【shōu dào de】数据和【shù jù hé】状态😸   

        end

else

        elite_print("客户端【kè hù duān】🥁未连接")

    end  

end

客户端【kè hù duān】😀未连接和连接上都是【shàng dōu shì】在日志上打印🍪信息【xìn xī】🤺

连接上后🔛,机器人【jī qì rén】会发送🚠字符串🏎“1”给客户端【duān】🥍,通讯助【tōng xùn zhù】手上接收到数据【jù】

客户端发送字🌦符串“2”给机器🥊人【rén】,机器人【jī qì rén】接收到🕒数据把数据和⛽接收到🕒的数量【de shù liàng】打印出【dǎ yìn chū】来

3.3.数据处理

在做服务器与【wù qì yǔ】客户端【kè hù duān】时都会碰到接收的【de】数🆕据是字🔤符串,在脚本🌏中无法👄直接使用🕝,这时就需用【xū yòng】🕝到字符【dào zì fú】串分割的【de】😠功能【gōng néng】。

字符串【zì fú chuàn】🥑分割【gē】🌗可以把【kě yǐ bǎ】接收到的字符串【zì fú chuàn】🥑根据定【gēn jù dìng】🌠义的字【yì de zì】符来分割【gē】🌗,返回一😮个数组供我们使用。

下面就是一个【shì yī gè】👞示例把接收到🌔的字符【de zì fú】🔓串通过","进行分割【gē】。

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

download-669.svg comicon14.svg

电话咨询

download-397.svg comicon15.svg

免费试用

Vector.svg Frame.svg

微信小程序

img1.jpg

微信小程序

准备好突破增长瓶颈,开启智能制造了吗?
了解我们的机器人如何帮助您的业务增长
欢迎下载漫蛙机器人资料

我已阅读并同意漫蛙《隐私政策》《法律声明》

我已知晓并同【xiǎo bìng tóng】💼意漫蛙📸通过电【tōng guò diàn】子邮件发送相🦃关资料【guān zī liào】

提交