这里不对OPC进行介绍。

一、OPC服务器——组态王

(1)首先在组态王里面新建一个工程,找到“设备”——“”OPC服务器

matlab与组态王通讯——OPC通讯-编程知识网

(2)新建OPC服务器,网络节点名由于不能使用默认的本机名称,建议不懂就照着下图输入\\loaclhost,选中左侧KingView.View.1,其他照默认配置

matlab与组态王通讯——OPC通讯-编程知识网

(3)添加变量名。先在“数据库”——“数据词典”中添加变量。

matlab与组态王通讯——OPC通讯-编程知识网

这里注意:变量名可以任意取,但是变量类型必须是“I/O型”,连接设备需要选中第一步设置的服务器名(一般为KingView.View.1)。

千万注意!!!需要组态王和matlab通讯的变量,必须选为“I/O型”!!!

寄存器可以任意选择,但是建议可以另外建立变量类型为“内存”型的变量,作为寄存器。也即,先建立一个“内存”类型的变量,然后重启组态王程序,再建立对应的I/O变量,在寄存器中选中刚刚建立的“内存”类型的变量。

采样频率按照需要选择。

matlab与组态王通讯——OPC通讯-编程知识网

matlab与组态王通讯——OPC通讯-编程知识网

(4)可能遇到问题:无法选择寄存器

matlab与组态王通讯——OPC通讯-编程知识网

如果出现上图状况,请仔细看看下方的Windows任务栏!

matlab与组态王通讯——OPC通讯-编程知识网

发生问题的原因主要是组态王软件未授权。选择寄存器会必须启动组态王的演示模式,启动时需要选择一下授权配置,如上图。点击演示模式就能正常显示寄存器了。

(5)建立一个画面读写变量和可视化变量,这里不做详解。OPC服务器配置完毕。

 

二、OPC客户端——matlab

(1)设置一个opc客户端,可以通过写.m脚本文件,也可以输入opctools启动工具箱,也可以在.slx里面使用。

matlab与组态王通讯——OPC通讯-编程知识网

matlab与组态王通讯——OPC通讯-编程知识网

matlab与组态王通讯——OPC通讯-编程知识网

(2)这里主要讲simulink。首先从元件库里面搜索opc

需要选择的文件为:OPC Configuration(必须,配置OPC客户端设置)、OPC Read(读OPC服务器上变量)、OPC Write(写OPC服务器上变量)

matlab与组态王通讯——OPC通讯-编程知识网

(3)配置OPC Configuration

matlab与组态王通讯——OPC通讯-编程知识网

如上图,先双击“OPC Configuration”模块,点击上方的“Configure OPC Clients”,在弹出界面上点击“Add”,输入Host名称为之前一、(2)内设置的“网络节点名”(对应"\\loaclhost"这里填"loaclhost")。再点击“Select”点选服务器名称(KingView.View.1即是组态王OPC服务器)

(4)配置OPC Read(读OPC服务器上变量)、OPC Write(写OPC服务器上变量)

matlab与组态王通讯——OPC通讯-编程知识网

matlab与组态王通讯——OPC通讯-编程知识网

如上图,这里需要注意!!!matlab里面无法显示组态王OPC服务器内的变量名列表,但是不代表无法读写对应的I/O变量!!!

如上图所示,添加“Item IDs”就是添加对组态王OPC服务器内的指定I/O型变量的操作。在点击“Add Items”后弹出的界面里面“Enter Item ID(s)”输入之前在组态王里面的“数据词典”里添加的I/O型变量的名字,在加上.Value。这里注意!!!必须加上.Value,大小写不能错!!!(上图示例,组态王里面的“数据词典”里添加的I/O型变量的名字为“a”)

(5)完毕