笔者认为MODBUS TCP通讯需要具备以下条件:
1.CPU间的交互协议;
2.CPU通讯的IP地址和端口号;
3.主站SERVER的通讯地址(包含相对应的内容的偏移值,即在通讯协议中的地址);
4.对通讯内容的处理程序;
下面一步一步看一下怎么来做:
一、交互协议

这里将PLC作为主站建立server,地址是DB100和DB101,端口号分别是2000和2001;IP地址是PLC的IP地址;
设置心跳脉冲一个是PLC发给PC的,另一个是PC发给PLC的通过判断这一位可以确认另一方是否断开连接或者进入“死亡”状态;
通讯数据以word作为数据类型可以一次传输16位,也可以作为数字定义传输,但需要注意传输过程中是以高八位开始还是低八位开始传输,如果相反需要进行倒位;
①使用指令MB_SERVER;
因为使用PLC做主站,就使用MB_SERVER,如果是从站就用MB_CLIENT;
②查看帮助文件,各个引脚的功能和内容;

③创建数据块来存储主站SERVER的信息;

Interfaceld是指对应使用的网线端口的设备标识符,需要在组态画面中查看,ID一定是***的;端口号建议搞大点。
④创建数据块来储存PLC发送给PC的数据;

⑤创建数据块来存储PC发给PLC的数据;

⑥创建数据块存储数据的时候一定要修改块的属性;
只有当优化块访问取消时才能看到偏移值,也才能更改偏移值;

⑦写程序——发送部分;
这里一定将存储SERVER块对应的信息要填到这个功能块的对应引脚上;

⑧;写程序——接收部分;

这里一定将存储SERVER块对应的信息要填到这个功能块的对应引脚上。
更多西门子plc编程请点击西门子plc***网站