设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
控制专题
›
『数控/电机控制/运动控制/工业总线』
›
Modbus TCP通讯(PLC/机器人)
返回列表
发新帖
Modbus TCP通讯(PLC/机器人)
[复制链接]
31153
|
0
|
2024-3-22 20:44:12
|
显示全部楼层
|
阅读模式
Chensercan分享的第26篇文章
由于大环境的影响,最近很多工程师都关注于Modbus TCP通讯。
对于FANUC机器人Modbus TCP通讯,之前有分享过通过HMI功能PLC可以通过Modbus TCP对机器人地址进行读写。
今天分享的内容是:通过Modbus TCP Connection(R800)功能进行PLC与FANUC机器人之间的通讯。
需要指出的是,在两者设置通讯时,机器人侧通常只能用于做服务器,PLC作为客户端(主站)。
1
在FANUC机器人侧,需要加装Modbus TCP通讯软件。
加装完成后,在IO选项中会出现Modbus TCP选项。
在Modbus TCP中设置通讯字节长度。
示例中的输入输出为4words。
设置完成之后,需要到设置选项中,设置IP地址。
示例中的端口#1 IP地址为:192.168.1.100
其中需要注意的是,Modbus TCP默认通讯端口号为502,无需进行手动修改。
2
在PLC侧,需要确认PLC支持Modbus TCP通讯功能。
下图以SIEMENS S7 1200为例进行说明。
在进行设置时,需要通过客户端进行IP和端口号设置。
需要确保PLC的IP和机器人保持同一网段,同时端口号一致。
在这一过程中,需要保证通讯的字节长度与机器人设置的相同。
否则通讯无法连通。
tips:可通过机器人主机通讯界面的ping指令对PLC进行测试。
3
连通之后,需要对PLC和机器人侧的IO进行映射匹配。
通常机器人侧安装完成Modbus TCP之后,IO会自动分配相应字节长度的IO点位。
图示的DI/DO从201-264分配给Modbus TCP(机架号96)通讯。
如果是手动分配的IO点位,记得冷启动之后才能生效。
4
在PLC侧,需要分配与机器人相匹配的字节长度。
需要通过MB_CLIENT指令进行发送相应指令进行连接和传输数据。
在通讯过程中,我们需要了解该款PLC相对应的Modbus功能码和相对应的地址位。
不同型号的PLC会略有不同,具体需要参考该款PLC的帮助文档。
图示是SIEMENS S7-1200的功能码和地址说明。
而机器人侧支持的Modbus功能码有:
因此,我们需要使用两边都支持的功能码去实现Modbus TCP通讯功能。
5
在SIEMENS的一些PLC中Modbus功能码是不能直接输入的,而是通MB_MODE和MB_DATA_ADDR的组合去确认Modbus功能码。
如下图示例,如果我们需要读输出位DO【201】的内容,此时我们有两种写法:MB_MODE=0,MB_DATA_ADDR=1或MB_MODE=101,MB_DATA_ADDR=00000。
找到PLC端的读写映射地址与机器人IO的关系在Modbus TCP中较为重要。
END
以上是今天分享的内容,欢迎大家转载和收藏!
在实际操作中碰到问题,也可以后台私信我哦。
您点的每个赞,我都认真当成了喜欢
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
98011124
回复楼主
返回列表
『数控/电机控制/运动控制/工业总线』
『机器视觉/AI/IoT/机器人论坛』
『高级语言/组态软件/触摸屏』
『操作系统xp/xin7/win10/linux』