当前位置:   article > 正文

c#与西门子plc通讯_s7-plcsim advanced v5.0下载

s7-plcsim advanced v5.0下载

前言:示例所用工具为博途v15+advanced v5.0+s7netplus。

写这个是因为网络上对于plc方面的介绍实在太少了,而且信息都很分散。作为初学者在这里走了太多弯路。所以记录一下。以及中间一些常见的bug和需要注意的地方

由于写的比较细,所以会很长。

博途 PortalV18 +advanced v5.0 安装   

直接看这个教程:这是一位大佬微信公众号的教程:直接跟着它一步一步安装即可。值得注意的是。在安装过程中把系统自带的防火墙关掉

如果有装360和电脑管家什么的。也要关掉。最好卸载不然容易出现一些奇奇怪怪的问题。切记!

TIA Portal V18软件安装教程

启动博途

首先按照教程装好之后会有六个图标:

上面4个不用管,其中TIA Portal V18是博途编程软件(后面简称博途)。S7-plcsim advanced V5.0是仿真软件(用来模拟真的plc)(后面简称仿真软件)

首先打开博途:

创建新项目:项目名自定义

创建项目慢属于正常现象。和电脑关系不大

在启动页面点击》设备与网络 》根据图片所示创建就好。其中勾选打开设备视图表示进入编程页面。在启动页面有一个直接打开设备视图,即便没有创建设备(即cpu)也能直接进去,在里面创建。

创建过程中会让你勾选几个常用的选择   我记得是关于安全方面的。我自己的电脑给关闭了。反正如果只是给c#模拟通讯的话那几个权限全部打开。

创建好之后大概的界面就长这样:这里只介绍c#通讯方面,所以博途软件具体使用就不做阐述

和c#通讯时主要是读取其中数据块的数据。根据图中步骤直接创建一个数据库即可。名称随意

plc与c#中主要类型介绍:

代码有介绍。其他的都是普通的类型

  1. //plc中类型与c#类型 bool => Bit
  2. //Byte => byte
  3. //word => ushort
  4. //DWord => uint
  5. //Int => short
  6. //DInt => int
  7. //Real => float
  8. //LReal => double
  9. //String => string //string只能存ascii码
  10. //DateTimeLong=>datetime
  11. //s7wstring=>string //wstring可以存中文 占用字符是string的两倍

直接在界面上设置好值:

其中需要特别说明的是db12  这是他的名字可以随意写。

类型array的意思是  例:Array[0..1] of Int    一个数组,下标从0开始,有两个子项。是int类型

图中db12[0]就是第一个值。在后面的起始值双击可以直接设置

以上就是博途软件数据的添加方法。至于具体的使用方法可以去找一下视频教程

连接仿真

设置博途访问权限

这一步比较关键,而且容易出现很多bug

第一   打开电脑

你会发现多了一个虚拟网卡,名称以Siemens开头的。这是仿真软件为你安装的一个虚拟网卡。

本地plc通讯使用这个

右键》属性

勾选第一个。双击第二个

勾选使用下面的ip地址:

其中ip地址推荐使用192.168.xx.dd

xx推荐写不大于100的地址。dd同理。数字过大也可能会出现一些奇奇怪怪的问题

子网掩码255.255.255.0即可。不用改。     设置好之后点击保存

第二   打开博途软件

找到  设备和网络》双击2   那个绿色的小点。在下面会有设置ip地址。将ip地址设置的和在虚拟网卡中一致。最后一段比虚拟网卡中大一点

例如虚拟网卡中是192.168.43.a            那么这里最好是192.168.43.a+1      最后一位最好要大一点并且一定不能一致,这里很重要。

第三:勾选块支持仿真

点击项目》右键找到属性》点击保护》勾选块编译时支持仿真》点击确定

第四   设置访问权限

点击设备》右键属性》常规》保护plc组态设备》取消勾选      先不要点确定

访问级别》 选择完全访问》

连接机制》勾选允许put/get访问》取消安全通信》点击确定

这里就是让c#能连接到我们的plc。

这里再除了勾选put/get访问权限(非常重要),其他的我再打开设备的时候就提过一次。在打开视图的时候能取消的都取消。

第五  取消数据块访问优化

找到程序块》数据块》右键属性》常规》取消   优化的块访问 数据库从opc ua可访问  两项

到此博途的设置就结束了

 启动仿真软件 advanced  v5

界面大概长这样

首先打开tcp/ip 连接。plc通讯是基于tcp的

数字表示左侧的意思

1:打开tcp/ip连接

2:local表示本地。用虚拟网卡选择这个,如果是用的以太网可以勾选。不过上面的ip地址也要改成以太网的iop地址。不做赘述

3:连接名称  随意写,不重复即可,建议用日期

4:写在博途软件中设置的地址。(这里一定要一致

5:与上一致

6:表示型号,这里以1500举例。需要和博途软件选择的设备一致

7:开启

启动之后:

这里开始会有问题

绿:正常      黄:等待      红:报错

三个灯  第一个表示:是否正常运行

第二个表示plc有错误

第三个表示电源(仿真中基本不会有问题)

打开之后第一个灯是黄色和绿色都属于正常。

这里容易出现的问题:第二个灯一直不停的闪红灯

解决方法1:查看虚拟网卡的ip是否与仿真软件设置的一致。如果一致就会报错 。仿真软件的IP需要与博途的ip一致。不能与网卡的IP一致

解决方法2:将授权文件删除。重新授权。选择”网络中的浮动地址“即可。其中已授权文件夹名为“ax nf zz”。需要先删除,具体怎么删除可以百度

推荐使用Everything软件删除      voidtools

解决方法3:删掉360,火绒等安全软件重装。(非常重要)

直到只有第一个灯是亮的。并且不为红色

下载仿真

以上把环境都准备好了。以上没问题即可进入下一步

手动选择设备》点击下载

选择pnie》选择siemens 虚拟网卡》开始搜索

这个时候非常容易报错

例如:在指定地址未发现设备(检查ip地址是否正确。)

找到两个设备,发现一个不兼容的设备:

解决方案1:打开控制面板》设置小图标》找到设置pg/pc接口

选择serial cable.ppL.1  >下面第三个》点击确定》重新搜索即可

解决方案2:下载工具https://download.csdn.net/download/qq_53217825/88333254

下载之后里面有一个exe文件,安装之后重启即可。安装过程不要改动,一直下一步即可

解决方案3:删掉360,火绒等安全软件重装(只需要重装仿真软件就好)。(非常重要)

上面都操作好了。如果还有问题可以私信或评论。

下载到设备

直道没有bug》点击下载

点击连接

点击装载

点击完成

这个时候仿真软件第一个灯亮绿色

如果是其他情况表示有bug。

跟着以上操作博途软件的设置基本完成。

c#使用s7netplus通讯

打开vs。添加一个控制台程序     (这只是一个例子,具体添加任意类型的程序都可)

引入nuget包:S7netplus

根据以下进行连接即可。

  1. Plc plc = new Plc(CpuType.S71500, "192.168.43.14" + "", 0, 1);//机架号,插槽号通常为0和1 ip写仿真软件中设置的ip。
  2. plc.Open();//打开plc连接
  3. if (plc.IsConnected) //判断是否成功
  4. {
  5. Console.WriteLine("PLC连接成功");
  6. }
  7. plc.Close();//关闭连接

关于c#读取数据请查看我另一篇文章:http://t.csdn.cn/92rfL

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/685217
推荐阅读
相关标签
  

闽ICP备14008679号