本测试在虚拟机中进行
1,工具:VS2019、S7-PLCSIM Advanced V3、博图V15

一台虚拟机中安装了VS2019和S7-PLCSIM Advanced V3,另一个虚拟机安装了博图V15.
2,配置
虚拟机配置:网络建议采用NAT模式,不容易造成IP冲突。

博图设置
PLC型号为1515-2PN,两个以太网卡的地址分别为
192.168.0.210,C#通过此地址和PLCSIM通讯
192.168.91.210,博图通过此地址和PLCSIM通讯
如下图


设置项目支持仿真,方法如下:
1,右键项目-属性

2,块编译时支持仿真勾上。

S7-PLCSIM配置

程序编写

C#程序
using S7.Net;
using System;
namespace s71200
{class Program
{static void Main(string[] args)
{//Console.WriteLine("Hello World!");Plc plc = new Plc(CpuType.S71500,"192.168.0.210" + "",0,0);
//连接plc,可能会抛异常,用try-catch提示
try
{//1,连接到PLC
plc.Open();
if (plc.IsConnected)
{Console.WriteLine("PLC连接成功");}
//从plc读取数据
bool b = Convert.ToBoolean(plc.Read("M0.0"));Console.WriteLine("读取M0.0的值为{0}",b);bool c = Convert.ToBoolean(plc.Read("M2.0"));Console.WriteLine("读取M2.0的值为{0}",c);//写数据到PLC
plc.WriteBit(DataType.Memory,0,0,0,true);
//重新读一下M0.0有无变化。
b= Convert.ToBoolean(plc.Read("M0.0"));Console.WriteLine("读取M0.0的值为{0}",b);c = Convert.ToBoolean(plc.Read("M2.0"));Console.WriteLine("读取M2.0的值为{0}",c);//关闭到plc的连接
plc.Close();
}
catch
{Console.WriteLine("PLC连接失败,请检查连接参数");}
}
}
}
这个程序执行时,会把M0.0置1上面的PLC起保停程序会导通,则M2.0会变成1,现在让程序跑一下
可以看到通讯正常,对PLC的读写是OK的。


总结,本文写的比较乱,如果有疑问的话,欢迎在指正,谢谢。
→不积跬步,无以至千里;不积小流,无以成江海。
















