广东湘恒智能科技有限公司
主营产品: 西门子PLC代理商,plc变频器,伺服电机,人机界面,触摸屏,线缆,DP接头
两台西门子200Smart进行MODBUS TCP通信,附程序
发布时间:2024-11-26

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。

注意:一台服务器不能连接多台客户端,但是服务器又可以作为客户端与其它服务器通信。每台服务器只能定义一个端口,不同服务器的端口可以相同。

—THE END—


展开全文
拨打电话 微信咨询 发送询价