设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
控制专题
›
『数控/电机控制/运动控制/工业总线』
›
案例:两台SMART进行MODBUS TCP通信,附程序
返回列表
发新帖
案例:两台SMART进行MODBUS TCP通信,附程序
[复制链接]
17262
|
0
|
2024-10-19 09:44:44
|
显示全部楼层
|
阅读模式
Modbus TCP通信结合了TCP通信和Modbus RTU通信的优点,西门子编程软件提供了免费的通信库,使Modbus TCP通信变得非常简单方便。
本文给大家介绍两台西门子SMART ST30进行modbus tcp以太网通信程序的编写。
要求如下:
1、将客户端的VW100开始的10个字写到服务器的VW50开始的十个字中。
2、将服务器的VW100开始的10个字中的数据读取到客户端的VW50开始的10个字中。
一、首先编写客户端的程序,以太网通信属于全双工通信模式,通信双方都可以发送数据和接收数据,而且发送和接收都可以同时进行,在本例中,发送数据程序和读取数据程序写到一个PLC中。
在MODBUS_CLIENT程序中,
EN:使能;
Req:发送通信请求,ON允许通信,OFF禁止通信;
Connect:建立连接,ON连接,OFF断开;
IPAddr1-4设置的是服务器的IP地址;
IP_PORT指的是客户端尝试连接、且随后使用 Modbus TCP 进行通信的服务器的端口号;
RW指示该操作是读还是写;
Addr指的是要读或者是写的服务器的起始地址;
COUNT:个数;
DataPtr指客户端的起始地址。
二、服务器程序如下:
IP_Port:服务器物理端口号;
MaxIQ:开放可访问IQ点数量;
MaxAI:开放可访问AI数量;
MaxHold:开放可访问V区字数,不能与库存储区分配地址产生重叠;
HoldStart:V区开放起始地址。
Holdstart:保持区起始地址。即MODBUS地址40001对应的VW地址。&VB0则表示40001代表VW0,&VB100则表示40001代表VW100。
注意:一台服务器不能连接多台客户端,但是服务器又可以作为客户端与其它服务器通信。每台服务器只能定义一个端口,不同服务器的端口可以相同。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
姜工Engineer
回复楼主
返回列表
『数控/电机控制/运动控制/工业总线』
『机器视觉/AI/IoT/机器人论坛』
『高级语言/组态软件/触摸屏』
『操作系统xp/xin7/win10/linux』