EC机器人RS485通讯协议

2025-07-02

1.  控制柜485

漫蛙机器【qì】🤳人EC系列支持RS485通讯,用户可以通过将 RS485 设备连【shè bèi lián】接到图 7-27 中所示的连接【de lián jiē】🙈器【qì】🤳来从控制柜执行串行通信【tōng xìn】🍊。为了能在控制⛩柜中设置【zhì】🧛 RS485 连接器【lián jiē qì】🖌,必须拆㊙掉串口【diào chuàn kǒu】连接 器【qì】🤳,并将 RS485 线焊接【xiàn hàn jiē】🚌到黑色连接器【lián jiē qì】🖌背面的【bèi miàn de】🥕金属触点🔵,如图💁 7-28 所示。黑色塑🔱料装置【zhì】🛳的正反 面分别【miàn fèn bié】⏺标有【biāo yǒu】 PIN“1 3 5”和【hé】“2 4 6”。PIN3 应焊接【yīng hàn jiē】👣到 RS485B,PIN4 应焊接【yīng hàn jiē】👣 到 RS485A。该 接口支【jiē kǒu zhī】持的最大波特【dà bō tè】率为【lǜ wéi】 500Kbps。

2.  工具IO485

漫蛙机🌯器人同🍮样支持【yàng zhī chí】末端【duān】工具【gōng jù】🏓485通讯,当需要👭使用末【shǐ yòng mò】端【duān】♒ RS485 接口与👮执行器🎩通信时, 注意从【zhù yì cóng】🕖机器人控【qì rén kòng】制器上写入🚩发送数据到【dào】数🐐据在末【jù zài mò】端【duān】工具【gōng jù】🏓 I/O 的 RS485上开始发送,延迟范【yán chí fàn】🕝围为【wéi wéi】 2ms 到【dào】😬 4ms。 从末端【cóng mò duān】工具【gōng jù】🏓 I/O 的 RS485 上开始接收数【jiē shōu shù】据到【dào】机🛳器人控【qì rén kòng】制器收到【dào】😬数据并开始♒处理,延迟范【yán chí fàn】🕝 围为【wéi wéi】 2ms 到【dào】😬4ms。本篇文章介绍【zhāng jiè shào】控制柜实现485通讯方【tōng xùn fāng】式,工具【gōng jù】端【duān】🙀485查询脚本手册。

下表为RS485 接口的可用设置


3.  控制柜脚本指令

3.1 打开 485 接口

ret rs485_open ()

功能: 用于打开 485 接口

参数: 无

返回值: ret: 大于等📘于🍥 0:打开成【dǎ kāi chéng】功【gōng】 -1:打开失🎠败【bài】

示例【shì lì】💜: ret= rs485_open ()

3.2 设置 485 串口配置

ret rs485_setopt (speed ,bits ,event ,stop)

功能: rs485_setopt 用于设👍置【zhì】 485 串口的【chuàn kǒu de】配置【zhì】🥌

参数【cān shù】🎼: speed: 波特率,int类型

bits: 数据长【shù jù zhǎng】度 7/8,int类型🐪

event: 奇偶校验🗾“O”,“N”,“E”,int类型【lèi xíng】

stop: 停止位 1/2,int类型

返回值: ret: 大于等【dà yú děng】🏣于【yú】 0:设置成🌁功 -1:设置失🧑败【bài】

示例【shì lì】☔: ret= rs485_setopt (9600 ,8 ,"N",1)

3.3 接收数据

ret , recv_buff rs485_recv (time_out ,hex ,len)

功能: 参数: rs485_recv 用于【yòng yú】👖 485 的读操⭕作【zuò】

time_out: 超时时间【jiān】,单位🔰:ms,int类型【lèi xíng】💍

hex: 是否为🍥 16 进制数【jìn zhì shù】,1 的接收【de jiē shōu】到的数【dào de shù】💜据为👅 16 进制字符格式(默认为 0),int类型

len: 可选参数【shù】,想要获🏘取的长度🤡,在超过 1024 情况下【qíng kuàng xià】,会自动被设置🉑成【chéng】🛴 1024,int类型【lèi xíng】

返回值: ret: 读到的【dú dào de】🥦长度(都是转化为字符长度【fú zhǎng dù】🥊) 0,-1:读取失👦败💱 recv_buff: 获取数据【jù】 示例【shì lì】: ret , recv_buff = rs485_recv (100 ,0 ,512)

3.4 发送数据

ret rs485_send (buff ,hex)

功能【gōng néng】🎁: rs485_send 用于 485 的发送🎄操作【cāo zuò】

参数: buff: 需要发🎤送的字【sòng de zì】符😃,string类型【lèi xíng】

hex: 是否为【wéi】🥄 16 进制数【jìn zhì shù】🤫,1 的发送的数据为【wéi】🥄 16 进制字符格式🗜,int类型【lèi xíng】

返回值【fǎn huí zhí】: ret: 1:发送成【fā sòng chéng】🕙功🎲 -1:发送失败

示例【shì lì】🗺: ret= rs485_send ("test",0)

3.5 关闭 485 接口

ret rs485_close ()

功能🎚: rs485_close 用于关【yòng yú guān】闭 485 接口【jiē kǒu】⚫

参数: 无

返回值【fǎn huí zhí】⬛: ret: 大于📅等于【děng yú】📅 0:关闭成🐬功 -1:关闭失败【bài】

示例【shì lì】🎉: ret= rs485_close ()

3.6 脚本示例

sleep(1)

open = rs485_open () --打开控【dǎ kāi kòng】制柜485接口👡

if(open >= 0) then

set = rs485_setopt (9600 ,8 ,"N",1) --配置控制柜【zhì guì】👽485串口

elite_print ("set = ", set)

if(set >= 0) then

while(1) do

repeat

ret , recv_buff = rs485_recv (500 ,0)--接收🌋485数据【shù jù】

sleep(0.001)

until(ret ~=0)

elite_print("receive data :",recv_buff)

rs485_send ( recv_buff ) --发送【fā sòng】🧡485数据

end

sleep(0.01)

end

end

rs485_close ()

4.工具IO脚本指令

4.1 打开末端485接口

ret tci_open()

功能: 用于打开末端485接口

参数:无

返回值:ret:大于等【dà yú děng】⛎于【yú】0:打开成🛤功,-1:打开失【dǎ kāi shī】败🐘

备注:无

示例【shì lì】🚶: ret: ret=tci_open()

4.2 设置TCI串口的配置

ret tci_setopt(speed,bits,event,stop)

功能: 用于设置 TCI 串口的配置

参数: speed: 波特率,int类型【lèi xíng】 bits: 数据长📏度【dù】🌯 8,int类型【lèi xíng】 event: 奇偶校【qí ǒu xiào】🎲验“O”,“N”,“E”,

string类型🚪 stop: 停止位【tíng zhǐ wèi】 1/2,int类型🚪

返回值【fǎn huí zhí】🎚:ret: 大于【yú】等于【yú】0:设置成功💡-1:设置失【shè zhì shī】🚹败

示例【shì lì】🥀: ret=tci_setopt(9600,8,"N",1)

4.3 接收数据

ret,recv_buff tci_recv(time_out,hex,len)

功能: 用于 TCI 的读操作

参数💍: time_out: 超时时【chāo shí shí】间【jiān】,单位:ms,int类型🚤 hex: 是否为【shì fǒu wéi】 16 进制数,1 的接收到的数🙎

据为💚 16 进制字【jìn zhì zì】符格式(默认为 0),int类型【lèi xíng】 len: 可选参🏰数【shù】,想要获🐚取的

长度【zhǎng dù】😢,在超过🍞 1024 情况下,会自动【huì zì dòng】被设置成【chéng】 1024,int类型🕕

返回值【fǎn huí zhí】🚫: ret: 读到的🚏长度(都是转化为字【huà wéi zì】符长度)0,-1:读取失📖败【bài】

recv_buff: 获取数据

示例【shì lì】🐙: ret,recv_buff=tci_recv(100,0,512)

4.4 发送数据

ret tci_send(buff,hex)

功能: 用于 TCI 的发送操作

参数【cān shù】:buff: 需要发👩送的字【sòng de zì】🦌符【fú】,string类型 hex: 是否为👛 16 进制数📇,1 的发送的数据【de shù jù】为 16 进制

字符格式,int类型

返回值: ret: 无 1:发送成【fā sòng chéng】功【gōng】-1:发送失♿败🦋

示例【shì lì】🍾: ret=tci_send("test",0)

4.5 关闭TCI接口

ret tci_close()

功能:用于关闭 TCI 接口

参数: 无

返回值:ret: 无🔬 大于【yú】等于【yú】0:关闭成⚓功-1:关闭失【guān bì shī】🌆败【bài】

示例: ret=tci_close()

4.6 清空TCI缓冲区

tci_flush ()

功能:用于清空 TCI 的缓冲区

参数: 无

返回值: nil

示例: ret=tci_flush()

4.7脚本示例

sleep(5)

local open = tci_open()--打开工【dǎ kāi gōng】具端485接口🏭

if (open >= 0) then

local set = tci_setopt(9600,8,"N",1)--配置工具端【jù duān】🤙485串口

if (set >= 0) then

sleep(1)

tci_send("Testing TCI (testing firmware:20190826)")

while (1) do

ret,recv_buff=tci_recv(500,0)--接收🚰485数据【shù jù】

sleep(1)

if(ret>0) then

elite_print(recv_buff)

tci_send(recv_buff)--发送485数据【shù jù】🐒

end

end

else

elite_print("set tci failed.")

end

else

elite_print("open tci failed.")

end

tci_close()




download-669.svg comicon14.svg

电话咨询

download-397.svg comicon15.svg

免费试用

Vector.svg Frame.svg

微信小程序

img1.jpg

微信小程序

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

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

我已知【wǒ yǐ zhī】⛔晓并同【xiǎo bìng tóng】意漫蛙通过电子邮件【zǐ yóu jiàn】发送相🌫关资料🔫

提交