LabVIEW通过OPC控制PLC

今日头条

1109人已加入

描述

LabVIEW中使用OPC连接PLC,通过LabVIEW前面板的端口控制PLC输出端口(输入端口的读取很简单,看完输出控制输入肯定也懂了):

遇到问题:  1.    OPC连接不上PLC

                    2.    LabVIEW只能读取PLC输入端口,无法控制PLC输出端口

                    3.    LabVIEW控制PLC输出端口延时太长(将近1分钟相应)

下面详细介绍从OPC软件到PLC软件再到LabVIEW方面之间的详细操作流程:

使用软件:  PLC : STEP7V13         OPC :  LabVIEW2016下的DSC模块       LabVIEW: LabVIEW2016    

PLC部分:

这里使用的是博图STEP7V13软件,在完成基本的组态(这里只有一个CPU1214C,所以只要在组态面板中添加一个CPU即可)

之后需要将PLC设置为允许远程伙伴(PLC,HMI,OPC...)使用PUT/GET通信访问  这样OPC才能够通过以太网进行访问。

基本的设置完成之后,写一个简单的程序,即由线圈M0.0~M0.3输出控制Q0.0~Q0.3,如下:

之后保存项目,然后下载到PLC中(PLC的IP地址需要和电脑网卡的IP地址在同一网段)。

    

第一次下载会出现下面的界面,然后选定好之后,通过搜索可以检索到同一网段下的PLC,之后下载。

这样PLC方面的工作就结束了。

OPC软件部分:

打开OPC软件,选择   file->new  创建一个新的OPC文件,点击  Click to add a channel   来添加一个通道

接下来就一直都是按照默认选项,知道完成。

之后会出现一个通道,然后在下面需要添加设备

LabVIEW天下会

LabVIEW天下会

LabVIEW天下会

LabVIEW天下会

下面就一直按照默认,直到完成创建。

LabVIEW天下会

LabVIEW天下会

创建完成之后,保存项目,然后点击  Runtime -> Connect  使得OPC连接到PLC

然后  点击  Tools -> Launch OPC Quick Client   来模拟检测运行OPC。

LabVIEW天下会

出现下面的监控界面:

LabVIEW天下会

可以点击某一个变量,然后   右键 -> Synchronous Write 出现如下界面:

LabVIEW天下会

这时候,PLC的输出Q0.0应该已经被点亮

到此为止,OPC连接PLC方面也解决完毕。

LabVIEW部分:

此时,在OPC软件打开的情况下,在LabVIEW中创建一个项目,然后新建IO服务器,如下图所示。

LabVIEW天下会

点击OPC Client,然后 点击继续

LabVIEW天下会

之后选择NI的OPC服务器,点击OK

LabVIEW天下会

然后保存项目,将刚才创建的OPC服务器的Lib重命名。

之后点击OPC服务器下面的OPC1,右键  -> 创建绑定变量

LabVIEW天下会

然后添加OPC中的变量。

LabVIEW天下会

之后就会在项目列表中出现这些变量:

LabVIEW天下会

在LabVIEW中创建一个VI,将刚才创建的变量拖入到程序框图面板中

LabVIEW天下会

这个变量可以   右键  -> 访问模式 -> 读取/写入  来调整变量的输入输出,这里要注意的是 这里面的变量在前面板是没有显示控件的

然后程序框图和前面板如下::

LabVIEW天下会

运行后,就可以通过LabVIEW前面板上面的按键控制PLC的输出(延时时间基本在1s左右)

至此,LabVIEW通过OPC控制PLC就完成了。

相应的测试程序见附件

问题解决:

1.OPC连接不上PLC

解决办法:  在STEP7V13里面组态的时候,需要将常规 -> 保护 -> 允许远程伙伴(PLC,HMI,OPC...)使用PUT/GET通信访问  ,重新下载就能解决。

2.LabVIEW只能读取PLC输入端口,无法控制PLC输出端口

解决办法: 之前PLC中的程序是I0.0~I0.3直接控制Q0.0~Q0.3,这样因为输入一直为0,而LabVIEW控制只是单次输出,所以会出现输出端口闪一下之后就一直为低电平,之后将输入控制的程序删除就好。

3.LabVIEW控制PLC输出端口延时太长(将近1分钟相应)

解决办法: 之前出现这个原因是 PLC中没有程序(空程序),然后OPC中建立的变量直接连接输出端口Q0.0~Q0.3,,这样就会出现延迟将近1分钟的现象。现在在PLC的程序中使用中间继电器M0.0~M0.3控制Q0.0~Q0.3,之后OPC建立的变量是控制M0.0~M0.3,从而实现控制,这样延迟基本在1s左右。


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分