最简单的访问OPC服务器方法
- 格式:doc
- 大小:1.03 MB
- 文档页数:7
在同一台电脑上和利时的OPC访问IFIX的OPC
工程实例:湖南金旺铋业股份有限公司
配料系统配置:西门子CPU 315-2DP
通讯方式:以太网通讯TCP/IP
使用软件:ifix 4.5 和利时的macsv软件和利时的opc驱动S7A 驱动
一、安装ifix软件,根据需要配置ifix的s7a驱动(这个在我们的其
他资料中已经有)。
金旺项目配置如下:
二、驱动配置好之后在安装和利时的OPC驱动,配置OPC如下:
1.配置与调试2、连接OPC服务器(这时会弹出选择OPC服务
器对话框)如图:
3、刷新列表会出现下面的子项供你选择,
4、选择Intellution.OPCifix.1
5、点击配置与调试----增加标签会出现如下:
6、添加标签变量。
(注意:因为在ifix中变量是以标签名的形式存在所以每个标签名会有很多变量)我们的选择如下:
这样变量就连接成功。
因为和利时的OPC没有成组添加的,所以这些变量要一个一个的加进去。
industrial gateway opc server 使用方法(最新版4篇)《industrial gateway opc server 使用方法》篇1Industrial Gateway OPC Server 是一款用于连接工业设备和自动化系统的OPC(OLE for Process Control)服务器。
它可以帮助您将不同厂家的设备和系统集成到一个统一的平台上进行监控和控制。
以下是使用Industrial Gateway OPC Server 的大致步骤:1. 安装和配置Industrial Gateway OPC Server:首先,根据您的操作系统和硬件平台下载相应的版本并进行安装。
安装完成后,运行Industrial Gateway OPC Server 配置工具,设置服务器的基本参数,如服务器名称、IP 地址、端口号等。
2. 添加设备驱动:为了让Industrial Gateway OPC Server 能够与各种设备进行通信,您需要添加相应的设备驱动。
驱动程序通常由设备厂家提供,根据设备的类型和型号选择合适的驱动程序。
添加驱动程序时,需要指定设备的唯一标识符(如设备地址、设备类型等)、数据访问权限和数据更新间隔等参数。
3. 创建OPC 项目:在Industrial Gateway OPC Server 中创建一个新的OPC 项目,指定项目的名称、数据访问权限、数据更新间隔等参数。
项目创建完成后,您需要为项目添加至少一个变量,用于存储从设备驱动程序中获取的数据。
4. 配置客户端:在客户端计算机上安装OPC 客户端软件(如OPC Explorer),并使用客户端软件连接到Industrial Gateway OPC Server。
连接成功后,您可以在客户端软件中浏览和修改OPC 服务器中的数据变量。
5. 测试和运行:在完成上述步骤后,您可以先在测试模式下运行Industrial Gateway OPC Server,以确保服务器和客户端之间的通信正常。
通过网络访问力控OPCServer的DCOM配置由于OPC程序需要调用操作系统的DCOM服务,OPCServer端和OPCClient端运行的系统必须支持DCOM,在使用前我们需要对其做相应的配置;如果操作系统安装有防火墙软件,我们也要对防火墙软件作一定配置。
有时还需要在运行OPCClient端的机器上,安装将要连接的OPCServer的客户端软件,详细情况请参照有关资料。
力控通用监控组态软件的OPC服务器名是:PCAuto OPCServer,安装完力控安装光盘上面的“扩展程序”,就能在力控安装目录下找到对应的可执行文件:OPCServer.exe。
下面就以windows XP SP3和windows 2000 Server SP4为例介绍一下DCOM配置情况。
OPC服务器运行的系统上的DCOM配置Windows XP SP3下的DCOM配置:一、配置DCOM:1、启动DCOM配置界面,如下图。
图1单击“确定”,启动配置界面,如下图:图22、配置我的电脑属性图3选中“我的电脑”,在右键菜单中选择“属性”项,弹出“我的电脑”属性,如下图图4确认“默认属性”页:在此计算机上启用分布式COM,选项选中;默认身份验证级别,选择“连接”;默认模拟级别,选择“标识”;图5在“COM安全”页,配置“访问权限”和“启动和激活权限”;a、访问权限:单击“编辑限制”按钮,最终配置如下图所示(Everyone用户的配置也都为允许):b图10在右键菜单中选择“属性”项,如下OpcEnum属性:A、常规属性选中“常规”属性页:图11在“常规”属性页中,“身份验证级别”设置为“无”。
B、安全属性选中“安全”属性页图12在“安全”属性页中,所有的权限都使用自定义,并进行编辑。
实际设置如下图所示:⑴启动和激活权限:(ANYYMOUS LOGON用户权限选中后如图示)图15C、标识配置:要选中“系统账户”:当OPCENUM.exe注册成Windows服务时;或“交互式用户”选项。
通过网络访问力控OPCServer/OPCClient DCOM配置由于多数OPC程序需要调用操作系统的DCOM服务,OPCServer端和OPCClient端运行的系统必须支持DCOM,在使用前我们需要对其做相应的配置;如果操作系统安装有防火墙软件,我们也要对防火墙软件作一定配置。
有时还需要在运行OPCClient端的机器上,安装将要连接的OPCServer的客户端软件,详细情况请参照有关资料。
力控通用监控组态软件的OPC服务器名是:PCAuto OPCServer,安装完力控安装光盘上面的“扩展程序”,就能在力控安装目录下找到对应的可执行文件:OPCServer.exe。
下面就以windows XP SP2和windows 2000 Server SP4为例介绍一下DCOM配置情况。
Windows XP SP2下的DCOM配置:一、配置DCOM:1、启动DCOM配置界面,如下图。
单击“确定”,启动配置界面,如下图:2、配置我的电脑属性选中“我的电脑”,在右键菜单中选择“属性”项,弹出“我的电脑”属性,如下图在各项属性中,我们只要改变“COM安全”属性页中的一些属性就可以了,其余的用缺省值即可。
a、访问权限:单击“编辑限制”按钮,最终配置如下图所示(Everyone用户的配置也都为允许):单击“编辑默认值”按钮,最终配置如下图所示(所有用户的本地和远程权限都为允许):b、启动权限和激活权限单击“编辑限制”按钮,最终配置如下图所示(Everyone的配置也都为允许):单击“编辑默认值”按钮,最终配置如下图所示(Everyone的本地和远程权限都为允许):3. OPCEnum配置在“我的电脑”,选中“DCOM 配置”,并在右边选中OpcEnum,单击右键,出现右键菜单,如下图:在右键菜单中选择“属性”项,如下OpcEnum属性:A、常规属性选中“常规”属性页:在“常规”属性页中,“身份验证级别”设置为“无”。
OPC服务器配置手册OPCClient远程连接OPC服务器配置手册一,操作系统用户1、在OPC服务器上用Administrator用户建立一个拥有管理员权限的用户并设置密码,一定要设置密码,不能为空,如:用户名:OPCClientUser 密码:1232、在OPCClient服务器上用Administrator用户建立一个相同的拥有管理员权限的用户并设置相同密码,一定要设置密码,不能为空,如:用户名:OPCClientUser 密码:123,并用OPCClientUser用户登入。
二、防火墙设置(OPC服务器和客户端上都要进行设置)关闭window自带的防火墙。
三、DCOM配置(OPC服务器和OPCClient服务器都要进行设置)1、开始—>运行—>输入:dcomcnfg进入DCOM的总体默认属性页面,将“在这台计算机上启用分布式COM”打上勾,将默认身份级别改为“无”。
如下面画面2、打开属性—>切换到“COM安全”属性页,分别编辑如下4个选项。
3、以上4个选项分别添加everyone,administrators,anonymous user三个用户用户,并勾选上所有权限选项,如果是跨网段需加NETwork用户。
【请注意是三个用户,如果少了一个有可能出现找不到服务器的情况】设置DTC在msdtc标签下,点击“安全性配置”,按下图配置4、在OPC服务器上,还要回到“组件服务”界面,打开DCOM 配置,找到注册的OPC服务器的名称选项,打开它的属性。
通用OPC连接方式设置加密设置位置启用交互式用户与西门子的WinCC连接时设置(注:有时做好dcom配置后,需要重新启动电脑才起作用。
所以为了安全起见,建议最好重新启动一下电脑,再做下一步)。
四、本地安全策略配置1、OPC服务器和OPCClient服务器都要设置:打开“控制面版”à“管理工具”à打开“本地安全策略”2、à安全选项—>”网络访问:本地帐户的共享和安全模式”->属性3、选择“经典—本地用户以自己的身份验证”注意一点不能忘了这一步,否则会在连接Opc服务器时报“拒绝访问”的错误!注意64位操作系统里,访问64位系统注意配置后执行这个命令C:\WINDOWS\SysWOW64>mmc comexp.msc /32确认32位的配置。
簡單介紹KEPServerEX OPC Server 使用方式:目前訪間越來越多圖控軟體,相對的所要連結的設備也越來越多,如何利用圖控把整廠的設備都抓進來,成為目前系統整合的趨勢。
圖控軟體很強大,不過他把它的重心都放在圖形監控,若有新設備出來,其通訊部分不見得他都有支援,所以OPC SERVER 相對而生(主要寫設備Driver的軟體)。
在此簡單介紹KEPServerEX OPC Server 使用方式。
一. 安裝執行KEPServerEx5.exe,之後一直按下一步即可。
二. 執行步驟1. 架設微軟所附的IIS:(1) 執行點選桌面上捷徑KEPServerEX 5 - Configuration(2)新增檔案File \ New(3 )設定通道與 driver1. 點滑鼠左鍵2 下(Chick to add a channel)設定通道(通訊埠),可以設定256 個。
2 .設定通道(自行命名):Cannel13. 選擇此通道的通訊協定5 .使用預設即可6. 設定完成1. 點選Click to add a device2. 設定設備名稱(自行命名)3. 選擇設備通訊格式4. 設定設備站號5 .使用預設6 .使用預設7. 設定完成8. 設定完成畫(5)設定使用點1 .點選右邊Clink add a static tag.2 下2. .點選問號,看設定範圍2 下3. 設定範圍(設在Address中)4. 設定PLC 使用點Name:任意命名Address:設定的PLC 對應點5. 設定第一點tag,把它點2下6. 右邊框起來為增加下一點7. 加完使用點畫面8. 確定後,Tag 點(6) 連線在Runtime\Connect 點下去,即可三. 與圖控軟體互連(以Indusoft Web Studio 為例)選擇Kepware. KEPServerEX在Item / 滑鼠右鍵/選OPC Browser / 選所需的使用點。
首先,介绍需要改变的windows安全设置:Windows 遇到通过 RPC 方式过来的网络请求时,会通过本机的安全策略设置来确定按照什么样的方式进行审核。
Windows 系统的版本不同,安全策略的设置也有所不一样。
1)Windows 2000 的安全策略,只支持来访者以自己的身份进行验证,且不拒绝来宾用户从网络中访问,来宾用户默认启用。
2)Windows XP 和 Windows 2003 的安全策略,支持来访者以自己的身份进行验证或将所有来访者都看成是来宾访问,默认将所有来访者都看成是来宾访问。
且默认拒绝 Guest 用户从网络访问本机。
来宾用户默认禁用。
3)Windows 7 的安全策略,支持来访者以自己的身份进行验证或将所有来访者都看成是来宾访问,默认支持来访者以自己的身份进行验证。
且默认拒绝Guest 用户从网络访问本机。
来宾用户默认禁用。
所以配置 OPC Client 和 OPC Server 之间的网络通讯,先得看看对应的操作系统。
选好安全审核机制再说。
因为我们主要研究的是人机。
所以我们主要需要记住的设置方法,是服务器这一端的设置方法。
Xp系统:有两种方法可以修改安全策略:一:是将安全策略修改为来访者以自己的身份进行验证;控制面板→管理工具→本地安全设置→安全选项→安全访问:本地账户的共享和安全模式改为经典:以自己身份验证同时将everyone权限应用于匿名用户二:是将“拒绝从网络中访问此计算机”规则中的来宾用户给去掉,从用户管理中将来宾用户启用,且密码为空。
这种方法是在用户权利指派中,将拒绝访问此计算机规则中的guest中的用户去掉。
安全策略的设置到这就设置完了。
然后我们需要做的是将简单文件共享。
然后单击“我的电脑”。
在“工具”菜单上,单击“文件夹选项”,然后单击“查看”选项卡。
在“高级设置”部分中,勾选“使用简单文件共享(推荐)”复选框。
单击“确定”。
然后,我们需在客户端与服务器所在pc建立相同的用户名称和密码。
通过网络访问力控OPCServer/OPCClient DCOM配置由于多数OPC程序需要调用操作系统的DCOM服务,OPCServer端和OPCClient端运行的系统必须支持DCOM,在使用前我们需要对其做相应的配置;如果操作系统安装有防火墙软件,我们也要对防火墙软件作一定配置。
有时还需要在运行OPCClient端的机器上,安装将要连接的OPCServer的客户端软件,详细情况请参照有关资料。
力控通用监控组态软件的OPC服务器名是:PCAuto OPCServer,安装完力控安装光盘上面的“扩展程序”,就能在力控安装目录下找到对应的可执行文件:OPCServer.exe。
下面就以windows XP SP2和windows 2000 Server SP4为例介绍一下DCOM配置情况。
Windows XP SP2下的DCOM配置:一、配置DCOM:1、启动DCOM配置界面,如下图。
单击“确定”,启动配置界面,如下图:2、配置我的电脑属性选中“我的电脑”,在右键菜单中选择“属性”项,弹出“我的电脑”属性,如下图在各项属性中,我们只要改变“COM安全”属性页中的一些属性就可以了,其余的用缺省值即可。
a、访问权限:单击“编辑限制”按钮,最终配置如下图所示(Everyone用户的配置也都为允许):单击“编辑默认值”按钮,最终配置如下图所示(所有用户的本地和远程权限都为允许):b、启动权限和激活权限单击“编辑限制”按钮,最终配置如下图所示(Everyone的配置也都为允许):单击“编辑默认值”按钮,最终配置如下图所示(Everyone的本地和远程权限都为允许):3. OPCEnum配置在“我的电脑”,选中“DCOM 配置”,并在右边选中OpcEnum,单击右键,出现右键菜单,如下图:在右键菜单中选择“属性”项,如下OpcEnum属性:A、常规属性选中“常规”属性页:在“常规”属性页中,“身份验证级别”设置为“无”。
最简单的访问OPC服务器 在网上搜了很多关于VB.NET编写客户端访问OPC服务器的资料,同时也根据KEPWARE提供的案例源代码,同时进行研究,最后花了一个星期的时间进行研究,才粗略有了一点头绪,现共享出来,希望后来的初学者有所帮助。 一.要建一个OPC服务器 1)安装OPC服务器软件,KEPware是大家比较常用的,我使用的是Kepware OPC V4.54。如图,添加CHANNEL,添加TAG.把Plc的点位添加进去,我建了6个变量(item)。具体添加的方法需要自行去学习。我添加的三菱Q系列的PLC,PLC采用以太网通讯的方式,在局部网就可以访问了。
2)设置DCOM,这个步骤很重要,具体的设置方法,网上很多资料,按步骤设置就可以。我原来按照组态王提供的方法,总是不成功,后来上了微软网站,按微软提供的方法设置肯定可以成功。 完成了以上两步,你的电脑就变成OPC服务器了。 二.访问服务器 1.利用组态软件访问OPC服务器。 如果用组态王访问,那就太简单了,左边列表,选opc服务器,点击添加服务器,就会弹出一个窗口,把本机的OPC服务器列成清单。在清单里面就可以发现KEPSERVER的名称:KEPware.KEPserverEx.V4,选择,然后按确定,就完成了添加服务器。 在组态王的数据词典,新建变量,I/O变量,连接设备选择OPC服务器,寄存器可以看到KEPserver的变量(item),建立之后,就可以利用组网王,开发监控应用,组态软件的使用在此就不赘述了,总之,利用组态软件访问OPC是最简单的。
2.用VB.NET开发客户端访问 访问opc服务器,必须使用OPC基金会提供的OPCdaauto.dll。 学习过程,最好下载说明书, 《OPC_20_Automation_Interface》,网上可以下载。 1) 注册OPCdaauto.dll。 这个动态连接库文件可以网上下载。拷贝到C:\WINDOWS\SYSTEM32目录, 打开运行输入框,输入:regsvr32 C:\WINDOWS\SYSTEM32\OPCDAAUTO.DLL 如果是64位windows,则拷贝在C:\WINDOWS\ syswow64。输入: regsvr32 C:\WINDOWS\ syswow64\OPCDAAUTO.DLL。
2) VS2015,新建一个项目。在项目---点击“添加引用”,使用浏览,在COM,可以找到opc da automation的选项,点击确认,及完成添加。
添加成功,则资源管理器,应用,可以看到OPCautomation的项目。 3)编写程序的过程 最简单的一个案例,如下图,实现搜索服务器,连接服务器后,获取ITEM的实时值。
A) 查找服务器 点击“查找服务器”按钮,地址不填,则列出本机的OPC服务器。如果填写另一台服务器地址,则列出另一台电脑的服务器清单
如何知道计算机名?看网络邻居,至少你应该知道那台电脑装了OPC服务器。 Public Class Form1 Inherits System.Windows.Forms.Form Dim WithEvents AnOPCServer As OPCAutomation.OPCServer '用于搜索服务器,连接服务器 Dim WithEvents ConnectedGroup As OPCAutomation.OPCGroup '对应后面添加组和项 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
End Sub '以下程序:搜索OPC服务器,显示在列表框上面 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CONNET.Click Try AnOPCServer = New OPCAutomation.OPCServer ListBox1.Items.Clear() Dim AllOPCServers As Object AllOPCServers = AnOPCServer.GetOPCServers(TextBox1.Text) '以括号用文本框输入,确定OPC服务器的路径,空白表示搜索本机,如果搜索内部网其他电脑,则写电脑的名称,例如:\\电脑名称 Dim i As Short For i = LBound(AllOPCServers) To UBound(AllOPCServers) ListBox1.Items.Add(AllOPCServers(i)) Next i Catch ex As Exception MessageBox.Show("List OPC servers failed with exception: " + ex.Message, "SimpleOPCInterface Exception", MessageBoxButtons.OK) '用于显示执行结果,如果失败,则可以显示失败的原因。 End Try End Sub B) 连接服务器、添加项和组 代码如下: Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles Button1.Click '以下程序连接服务器连接 Try AnOPCServer.Connect(ListBox1.Text, TextBox1.Text) '第一个是参数是opc服务器名称,第二个是电脑名称。直接填写也可以,例如:AnOPCServer.Connect(“KEPware.KEPserverEx.V4”,“\\newPI”) Catch ex As Exception MessageBox.Show("OPC server 连接失败 : " + ex.Message, "OPCSample", MessageBoxButtons.OK) End Try
'以下程序添加group和item Try AnOPCServer.OPCGroups.DefaultGroupIsActive = True '使其活动,照抄就行。 AnOPCServer.OPCGroups.DefaultGroupDeadband = 0 '照抄就行。 ConnectedGroup = AnOPCServer.OPCGroups.Add("GROUP1") '添加GROUP,名称自己随便填。 ConnectedGroup.UpdateRate = 100 '更新速率,我实验过,值越小,获取ITEM值越灵敏。 ConnectedGroup.IsSubscribed = True '采用订阅的方式,后面用DATACHANGE的事件获取item值,与此对应。 ConnectedGroup.OPCItems.AddItem("CHANNEL2.DEVICE1.绿灯", 1) ConnectedGroup.OPCItems.AddItem("CHANNEL2.DEVICE1.产量", 2) ConnectedGroup.OPCItems.AddItem("CHANNEL2.DEVICE1.黄灯", 3) ConnectedGroup.OPCItems.AddItem("CHANNEL2.DEVICE1.省电", 4) ConnectedGroup.OPCItems.AddItem("CHANNEL2.DEVICE1.产量1", 5) ConnectedGroup.OPCItems.AddItem("CHANNEL2.DEVICE2.产量", 6) 'ADDITEM和ADDITEMS,两种命令的格式不同,这里仅用最简单的additem命令,用最土的办法添加了6个ITEM,两个参数,第一个是item名称,必须和KEPSERVER建立的ITEM完全一致,第二个参数是CLIENTHANDLES,句柄。6个ITEM,我给的是1-6,随便数字都可以,不重复即可。这个跟后面获取值有直接关系!!!!
Catch ex As Exception MessageBox.Show("添加组和项失败 : " + ex.Message, "OPCSample", MessageBoxButtons.OK) End Try
End Sub C)获取
前面提到的订阅的方式, 是OPC服务器主动的方式,把有变化的ITEM,发送给客户端。 需要使用DataChange的事件来获取item值,《OPC_20_Automation_Interface》58页。
假设两个OPC服务器有2个item发生改变(绿灯,产量),那么会返回2个ITEMS, 返回的, 其中ITEMVALUES是返回的ITEM实际值,ClientHandles是返回的句柄值,句柄值和添加ITEM时定义的句柄对应。前面添加的"CHANNEL2.DEVICE2.产量",我定义的ClientHandles是6。如果数值发生变化,那么服务器返回的的值也是6。 实际返回值: NumItems=2 ClientHandles(1)= 1,ITEMVALUES(1)=true ItemValues(1)=true ClientHandles(2)= 6,ITEMVALUES(2)= 65 ItemValues(2)=65 因为返回的是数组,那么需要定义一个字符串的数组去接受ITEM值。
添加事件的方法:
源代码如下: Private Sub ConnectedGroup_DataChange(TransactionID As Integer, NumItems As Integer, ByRef ClientHandles As Array, ByRef ItemValues As Array, ByRef Qualities As Array, ByRef TimeStamps As Array) Handles ConnectedGroup.DataChange Dim val(10) As String '用于接收ITEM值 Dim I As Integer '用于循环 Dim k As Integer '用于循环的方式给TEXTBOX赋值,如果是textbox2---TEXTBOX7,有规律。就可以实现