[西门子] 西门子PLC开放式通讯(含原程序下载链接)

[复制链接]
查看261 | 回复0 | 2024-6-15 17:43:51 | 显示全部楼层 |阅读模式
1、打开S7-PLCSIM Advanced V4.0或其他版本,博图自带的仿真器,支持的通讯仿真有限。

链接: https://pan.baidu.com/s/1qkfYxCpHwZJbvFGc031NkQ?pwd=1111 提取码: 1111 复制这段内容后打开百度网盘手机App,操作更方便哦

1)打开PLCSIM Virtual Eth. Adapter 虚拟网卡。

2)仿真一个plc,填写instance name ip地址192.168.0.1,subnet mask:255.255.255.0,选择s7-1500类型,点击start,启动一个plc。同样方法启动第二个plc。



2、打开博图软件,添加两个1500型PLC,因为要用仿真,型号可以任意。

添加一个子网,两个plc在一个子网内,保证IP地址不冲突。启用系统存储与时钟。









3、添加一个DB块,去掉优化





4、添加两个通讯用的数组,一个用于发送,一个用于接收。编译后出现偏移地址。



5、添加一个连接变量,数据类型为TCON_IP_V4,这个变量只能手工填写,列表里找不到,应该是一个bug。HW_ANY是网口编号一般是64,ID应该是0-255,ActiveEstablished 主动方填1,IP地址是对方的IP地址。remotePort为502.



6、新添一个函数块



7、在函数块内编写程序,调用开放式通讯模块。TSEND_C是带连接的发送程序,TRCV_C是带连接的接收程序,TSEND与TRCV是不带连接的程序。两个plc之间的通讯,只用一个带连接的就行了。



拖拽数据块,放置到合适位置





TRCV程序要设置EN_R为1,ID号要与连接数据中设置的一样,DATA 为接收到的数据放置的位置。

8、另一个PLC的设置类似,只是连接变量中IP地址要是对方的IP地址,ID号要一致,Active……要为0。







最后不要忘记在主程序中调用开放通讯数据块。



9、编译下载,下载时要选虚拟网卡



10、查看两个数据块,改变一个的发送数据,另一个的接收数据就相应发生变化。



下边是博图15编写的程序压缩包。

开放式通讯.rar


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则