西门子S7-PLCSIM仿真配置与上位机通信案例

[复制链接]
查看67040 | 回复0 | 2024-12-24 15:50:12 | 显示全部楼层 |阅读模式


大家好,我是新阁常老师,上一篇文章讲了西门子PLC两种仿真软件PLCSIM_V17和PLCSIM_AdvanceV3的安装过程。对于使用仿真软件来做C#上位机通信的朋友来说,还得做一些配置才能顺利实现通信。下面详细介绍基于1200PLC使用S7-PLCSIM仿真的配置和上位机通信过程:

1

第一步

首先,找到【以太网】点开【更改适配器选项】配置网卡IP。



如果是win11系统,也可以通过【控制面板】找到





然后右键点击【以太网】,选择【属性】,找到TCP/Ipv4,继续配置:



按照如下设置,改成手动IP即可(注意这个IP不要和其他网卡IP相同,否则出错,默认网关也可以不写)



如果您现在用这个有线网卡上网,也需要正确的设置DNS服务器。具体您当地的DNS服务器可以自己百度搜索找到。最后点【确定】完成设置。特别注意:第一次使用有线网卡的时候,必须要插上网线连接交换机或路由器,保证能Ping通IP地址,否则C#上位机软件连接不上。我上面截图的时候还没有插入网线,所以显示X。如果当时没有网线,不方便连接交换机或路由器,也可以自己装一个虚拟网卡,然后设置IP地址,效果也一样的。比如我的电脑就有一个虚拟网卡:



2

第二步

通过【控制面板】找到【PG/PC接口】,选PLCSIM.TCPIP.1,都点击【确定】即可。





3

第三步

打开软件包,启动仿真IP地址映射软件:



找到文件,然后右击,以“管理员身份运行”:



弹出窗口,选【是】





点击【OK】,如下图所示:



这里简单解释一下:NetToPLCsim这个软件的作用是将电脑实际物理网卡的IP地址映射到虚拟PLCSIM仿真的IP地址,完成上位机和仿真PLC的关联。所以在C#上位机连接PLC的时候,需要写网卡的IP地址,而不是PLC的IP地址。

4

第四步

打开博途,创建1200PLC项目程序,并完成相关的设置

第一、组态PLC设备,并设置IP地址为:192.168.1.102。



第二、右键点击thingerPLCProject项目根节点,通过属性,勾选【块编译时支持仿真】



第三、添加一个DB块,并随便添加3个变量如下,并右键点击TestDB,通过属性取消【优化的块访问】。



第四、右键单击PLC_1,通过属性—>【连接机制】,勾选【允许来自远程对象的PUT/GET通信访问】



以上完成后,编译硬件和软件,并保存项目。

5

第五步

编译成功后,可以通过工具栏按钮,启动仿真,弹出窗口,点击【开始搜索】,按照步骤完成程序下载。





找到设备后,点击【下载】,按照如下提示完成即可。





如果是刚创建的PLC程序,第一次下载,不会出现上面的【全部覆盖】,如下:



直接点击【装载】即可。然后选择【启动模块】



完成后,可以看到PLCSIM已经启动。



6

第六步

回到NetToPLCsim软件,点击【Add】按照提示选择网卡地址:



【Network IP Address】这个需要填写前面一开始我们设置的电脑网卡的IP地址,点击右边的选择按钮





其中,第二个192.168.1.150就是我们提前设置的网卡IP地址,然后我们选Plcsim仿真的IP地址:



机架号和槽位号按照提示选择即可。



最后点击【Start Server】 启动服务:



可以看到Status状态显示为RUNNING运行状态,表示映射启动成功。



7

第七步

回到博途,打开DB块,点击【监控】即可看到监视值的默认数据:



接着分别单击【监视值】3个数据,修改对应的内容:



8

第八步

打开VS2022,编写上位机读取PLC数据的测试程序。

首先,界面设计如下:



其次,添加S7.Net开源通信库,然后编写程序代码:





最后,运行程序,打开PLC连接,点击读取PLC数据,即可看到下面的结果:



以上就是完整的S7-PLCSIM仿真配置和C#上位机通信的过程。下一篇将给大家介绍使用AdvanceV3仿真1500PLC和C#上位机通信的完整过程。以下两个福利:

(1)为方便朋友们学习,想要PLC程序和C#上位机源码的,可以加我个人微信:thinger000 (请备注:公众号要源码)

(2)同时本文章,我也对应录制了完整的视频,方便大家学习,想观看视频的朋友,可以关注我的视频号:



您在学习中的其他问题,欢迎在评论区留言。

本帖子中包含更多资源

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

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

本版积分规则