文档库 最新最全的文档下载
当前位置:文档库 › S7-200 通过SIMATIC NET OPC Server 建立S7连接与WinCC 之间进行通信

S7-200 通过SIMATIC NET OPC Server 建立S7连接与WinCC 之间进行通信

S7-200 通过SIMATIC NET OPC Server 建立S7连接与WinCC 之间进行通信
S7-200 通过SIMATIC NET OPC Server 建立S7连接与WinCC 之间进行通信

多个S7-200 站通过SIMATIC NET OPC Server 建立S7连接与WinCC 之间进行通信

配备 CP 243-1 的 CPU 22x 可与其它 S7-200、S7-300 和 S7-400 系统及 OPC 服务器进 行通信。 除 STEP 7 Micro/WIN 连接外,最多还可以建立 8 个连接。

例:PC 站 IP :192.168.0.46 本地TSAP :10.11对应S7-200 IP :192.168.0.47 本地TSAP :11.11对应S7-200 IP :192.168.0.48 本地TSAP :12.11对应S7-200 IP :192.168.0.49 本地TSAP :13.11对应S7-200 IP :192.168.0.50 伙伴(远程) TSAP :10.00 例:CP 243-1 IP :192.168.0.47 本地TSAP :10.00 远程TSAP :10.11 例:CP 243-1 IP :192.168.0.48 本地TSAP :10.00 远程TSAP :11.11 IP :192.168.0.49 本地TSAP :10.00 远程TSAP :12.11

IP :192.168.0.50 本地TSAP :10.00 远程TSAP :13.11

实现通信之前要求有下列组件:

S7-200部分

?STEP 7 - Micro / WIN 3.2 + SP1或更高版本(截至2013年最新版本为4.0 SP9) 注:用高版本打开的项目无法用低版本打开,即不能向下兼容。

?PC/PPI电缆或一个带MPI电缆的CP 5611/5511

?或PC Adapter USB (与S7-200通讯方法见S7-200配置步骤1))

?下列类型的CPU 22x

- 不低于1.10版本的CPU 222或

- 不低于1.10版本的CPU 224或

- 不低于1.00版本的CPU 226或

- 1.00 或更高版本的CPU 226XM

?CP 243-1(6GK7 243-1-1EX00-0XE0)

PC站部分

?拥有Ethernet网卡的PC

?SIMATIC NET CD 07/2001(截至2013年最新NET版本WinXP下支持2008版本,Win7 32bit、64bit下支持2010版本)

?WinCC V5.1或更高版本(截至2013年最新WinCC版本为7.2)

?带网络连接电缆的集线器或直接连接电缆

一)S7-200端配置步骤:

1)通过PC Adapter USB配置CP 243-1:

注:由于现在PC机COM口非常少,在此仅介绍使用PC Adapter USB连接S7-200配置CP 243-1。

1.1)使用PC Adapter USB连接S7-200。

1.1.1)安装PC Adapter USB驱动(V

2.0版本以下无法安装在Vista、Win7系统中)。

注:经测试,STEP 7 V5.5集成PC Adapter USB驱动,但无法在STEP 7 - Micro /

WIN设置PG/PC接口通过接口添加删除选择,因此要单独安装一次驱动。

1.1.2)运行STEP 7 - Micro / WIN后点选“设置PG/PC接口”图标打开编程接口选

项选择访问接口。

选择Adapter.PPI.1,点选“属性”按钮打开属性对话框。

点选“默认”按钮保持默认参数(如果Adapter.PPI.1属性参数为如上图默认参数可以不用点选“默认”按钮),再点选“确定”按钮。

1.1.3)点选“通信”图标连接S7-200 CPU。

点选“双击刷新”处开始搜索S7-200。

至此已经连接成功S7-200 CPU,点选“确认“按钮。

注:如果项目中的CPU类型未更新连接S7-200 CPU的型号,可以在STEP 7 - Micro /

WIN“项目1”树目录下双击点选“CPU类型”图标,弹出“PLC类型”对话框,再点选“读

取PLC“按钮来更新CPU型号。

1.2)配置CP 243-1。

通过以太网向导工具进行CP 243-1的组态。

1.2.1)选择CP 243-1模块的位置。

注:CPU右边的第一个扩展模块位置为“0”。

这个位置也可以通过点选“读取模块”按钮读出CP 243-1模块位置。

注:CP 243-1模块在S7-200 系统中的运行位置,取决于S7-200 CPU 的固件版本。如果使用版本1.20 或以上的固件,则CP 243-1 可以安装在S7-200 系统中7 个位置中的任意一个位置。对于版本1.20 以下的固件,CP 243-1 必须安装在位置0,除非在位置0 安装有其它智能模板,此时CP 243-1 可安装在位置1。1.2.2)设置CP 243-1模块的IP地址。

模块连接类型“连接的网络速度”建议选择“自动检测通信”类型,也可以指定选择一

个通信速度,这要根据网络设备的连接情况而定。

如果网络中有DHCP服务器,也可以勾选“允许BOOTP服务器为模块自动指定IP 地址”来自动获取IP,但此OPC Server S7通信必须使用静态IP。

1.2.3)设置CP 243-1模块的以太网连接数。

模块命令字节由系统自动读取不必设置,除非不使用以太网向导配置来修改CP 243-1模块参数时才可手动设置,建议通过以太网向导配置来自动获取模块命令字节地址。

CP 243-1模块最多可以建立8个以太网连接,如果此S7-200 CPU只连接一个以太网端就设置连接数为“1”。

1.2.4)设置CP 243-1模块的配置连接。

选择本站为服务端勾选“此为服务器连接”。

设置本地属性TSAP号为默认“10.00”。

如果只连接一个以太网端可以指定对方的IP地址,否则可以勾选“接受所有连接请求”。

注:经测试一个以太网连接Client客户端时这两种方式都可以。

设置远程属性TSAP号设置为“10.11”(此处的TSAP号必须依据组态PC站中,网络组态-OPC服务器-S7连接属性-地址详细信息-本地TSAP设定号来确定,因此S7-200以太网向导-配置连接-远程属性TSAP号必须在PC站组态后才能确定)。注:(TSAP,Transport Service Access Piont)传输服务接入点。

TSAP号由2个字节组成,第一个字节定义了连接数,第二个字节根据通讯模块的

机架号和安装插槽位置生成。

以下数值范围适用于第一个字节:

本地TSAP 数值范围:16#02,16#10 - 16#FE

远程TSAP 数值范围:16#02,16#03,16#10 - 16#FE

CP 243-1 不能检查第二个字节的结构,因此不校验第二个字节的值。

1.2.5)设置CP 243-1模块的CRC保护。

生成CRC(Cycle Redundancy Check,循环冗余码校验)数据,CRC机制可以防止CPU中组态的连接信息被无意中修改或覆盖。如果选择了CRC机制,则当系统重启时,CP 243-1模块将与从S7-200 CPU的存储区读出的组态信息进行校验,看是否被用户程序修改过,如果是则停止启动,并通过网上的DHCP Server重新设置IP 地址,如果两者一致则正常启动。

“Keep Alive Lnterval,保持活动时间间隔”,或者叫“激活检测时间间隔”,表示模块以多长时间间隔来检测连接是否正常。在前面组态时,可以选择是否激活该功能。注:选择默认参数即可。

1.2.6)设置CP 243-1模块的配置分配存储区。

组态信息要占用一定的V存储区,该存储区的大小随组态的不同有所变化,一旦定义了这个V存储区地址,这些V存储区地址不可在被用户程序使用。

注:最好根据规划好的地址表来分配次V存储区地址,不要使用“建议地址”按钮来分配。

1.2.7)设置CP 243-1模块生成子程序完成配置向导。

通过点选“完成”按钮,系统会在程序中调用生成的子程序块“ETH0_CTRL”,再根据

规划好的地址表为子程序块“ETH0_CTRL”功能脚分配地址。

二)PC站配置步骤:

1.1)STEP 7设置PG/PC接口。

将PG/PC接口改为PC internal.local.1这样才能下装至SIMATIC NET的“站组态编辑器”

中。

1.2)新建一个STEP 7项目,项目名称可以写为“S7-200 OPC”这样便于辨别,在项目中插入一

个SIMATIC PC站。

的“SIMATIC PC站”图标上看到一个黄色向上的小箭头,在网络组态中也可以看到。

1.3)打开“SIMATIC PC站”的“组态”,在1#槽位插入“OPC 服务器”。

注:“OPC 服务器”版本的选择、从6.0至8.1.1对应不同的“SIMATIC NET”版本,本说明只简要介绍一下“OPC 服务器”V7.0与V8.1版本对应本机安装的“SIMATIC NET”版本选择。

1.3.1)“OPC 服务器”V7.0对应“SIMATIC NET V7.0”,也称作“SIMATIC NET 2008”,组

件信息描述已经介绍,此版本NET只可以安装在WinXP下。

1.3.2)“OPC 服务器”V8.1对应“SIMATIC NET V8.1”,也称作“SIMATIC NET 2010”,组

件信息描述已经介绍,此版本NET可以安装在Vista、Win7 32bit 64bit下。

OPCServer使用说明

OPCServer 使用说明 上海迅饶自动化科技有限公司 2011年12月

目录 1、OPCSRV简介 (1) 2、OPC技术介绍 (1) 3、OPCSRV说明 (2) 3.1运行环境 (2) 3.2程序标识 (2) 3.3程序特性 (2) 4、快速入门 (3) 4.1关于驱动 (3) 4.2关于设备 (3) 4.3关于组 (3) 4.4关于标签 (3) 5操作步骤 (3) 5.1、增加新驱动 (3) 5.2增加设备 (4) 5.3增加组或者标签 (5) 6、DCOM配置说明 (5) 6.1.服务器的配置 (5) 6.2.客户端的配置 (17) 6.3.OPC客户端连接OPCS RV过程 (17)

1、OPCSrv简介 OPCSrv服务器是国内最好的OPC服务器之一。从2005年诞生,经过几年的不断完善,OPCSrv服务器通过了OPC基金会的CTT测试,性能卓越,运行稳定可靠,并不断应用到工业现场中。 OPCSrv.exe支持OPC DA1.0和2.0规范,同时集成了串口、网口等多种协议。并提供一个简易的人机界面给用户,用来编辑和配置TAG;保存或者打开scd工程文件;导入或者导出CSV档;克隆设备、组和TAG对象;多重复制TAG;管理所有的驱动插件;还提供启动OPC客户端程序进程、Ping远程计算机、注册和注销OPC服务器等辅助功能。 2、OPC技术介绍 OPC(OLE for Process Control,用于过程控制的对象链接和嵌入)是基于Microsoft的OLE(Object Linking and Embedding,对象链接和嵌入)/COM(Component Object Model,组件对象模型)技术,为解决工业客户机与各种设备驱动程序间通讯而产生的一项工业技术规范和标准。OPC技术规范是OPC基金会制定的,它提供了统一的数据访问软硬件接口。由于OPC技术比传统数据存取方式(驱动程序法和动态数据交换法)更具开放性和先进性,已经得到越来越多的工控领域硬件和软件制造商的承认和支持,实际上已成为工业控制软件公认的软件标准。 早期的OPC标准是由提供工业制造软件的5家公司所组成的OPC特别工作小组所开发的。Fisher-Rosement、Intellution、Rockwell Software、Intuitive Technology以及Opto22 早在1995年开发了原始的OPC标准,微软同时作为技术顾问给予了支持。 OPC基金会在1996年10月7日在美国的芝加哥宣告正式成立的。之后为了普及和进一步改进于1996年8月完成的OPC数据访问标准版本1.0,开始了全球范围的活动。OPC 标准的建立基于微软的COM技术规范,并由OPC基金会这个国际组织管理,OPC基金会是一家非营业性机构。OPC为不同的厂商的硬件设备、软件和系统定义了公共的接口,使得过程控制和工厂自动化中的不同的系统、设备和软件之间能够互相连接、通信、操作。 在日本为响应以美国为中心的国际标准活动,由11家公司作为发起人,于1996年10

如何开发OPCServer

如何开发OPC Server 首先我们先来看一下什么是OPC OPC (OLE for Process Control——用于过程控制的OLE)是基于Microsoft公司的DNA (Distributed Internet Application)构架和COM(Component Object Model)技术的一个工业标准接口,是根据易于扩展性而设计的。 再来了解一下OPC的用途 OPC主要适用于过程控制和制造自动化等应用领域。 OPC是以OLE/COM机制作为应用程序的通讯标准。OLE/COM是一种客户/服务器模式,具有语言无关性、代码重用性、易于集成性等优点。OPC规范了接口函数,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而保证软件对客户的透明性,使得用户完全从低层的开发中脱离出来 然后我们再来看看OPC Server的组成 一个设备的OPC Server主要有两部组成,一是OPC标准接口的实现;二是与硬件设备的通信模块。 实现OPC 标准接口 [图1] 在这些接口中,IOPCServer 是OPC Server的主接口,通过它实现OPC Server在操作系统中的安装和注册。此接口是必须要实现的,其所有方法也必须实现。其它的接口都是可选的我们就不做介绍了,下面主要来介绍如何实现IOPCServer接口。 在IOPCServer接口中共有六个法: 1、 IOPCServer::AddGroup HRESULT AddGroup( [in, string] LPCWSTR szName, [in] BOOL bActive, [in] DWORD dwRequestedUpdateRate, [in] OPCHANDLE hClientGroup, [unique, in] LONG *pTimeBias, [in] FLOAT * pPercentDeadband, [in] DWORD dwLCID, [out] OPCHANDLE * phServerGroup,

opc服务器

Opc 1、在控制领域中,系统往往由分散的各子系统构成;并且各子系统往往采用不同厂家的设备和方案。用户需要,将这些子系统集成,并架构统一的实时监控系统。 2、这样的实时监控系统需要解决分散子系统间的数据共享,各子系统需要统一协调相应控制指令。 3、再考虑到实时监控系统往往需要升级和调整。 4、就需要各子系统具备统一的开放接口。 5、OPC(OLE for Process Control) 规范正是这一思维的产物。 6、OPC 基于Microsoft公司的Distributed interNet Application (DNA) 构架和Component Object Model (COM) 技术的,根据易于扩展性而设计的。OPC规范定义了一个工业标准接口。 7、OPC是以OLE/COM机制作为应用程序的通讯标准。OLE/COM是一种客户/服务器模式,具有语言无关性、代码重用性、易于集成性等优点。OPC规范了接口函数,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而保证软件对客户的透明性,使得用户完全从低层的开发中脱离出来。 8、OPC定义了一个开放的接口,在这个接口上,基于PC的软件组件能交换数据。它是基于Windows的OLE——对象链接和嵌入、COM——部件对象模型(Comp onent Object Model)和DCOM——分布式COM(Distributed COM)技术。因而,OP C为自动化层的典型现场设备连接工业应用程序和办公室程序提供了一个理想的方法。 OPC应用领域 1、工控解决方案用户 2、楼控解决方案用户 3、工控解决方案厂商 4、楼控解决方案厂商 5、工控解决方案集成商 6、楼控解决方案集成商 7、All Automation Fields OPC是为了连接数据源(OPC服务器)和数据的使用者(OPC应用程序)之间的软件接口标准。数据源可以是PLC,DCS,条形码读取器等控制设备。随控制系统构成的不同,作为数据源的OPC服务器即可以是和OPC应用程序在同一台计算机上运行的本地OPC服务器,也可以是在另外的计算机上运行的远程OPC服务器。 OPC接口既可以适用于通过网络把最下层的控制设备的原始数据提供给作为数据的使用者(OPC应用程序)的HMI(硬件监督接口)/SCADA(监督控制与数据采集),批处理等自动化程序,以至更上层的历史数据库等应用程序,也可以适用于应用程序和物理设备的直接连接。所以OPC接口是适用于很多系统的具有高厚度柔软性的接口标准。

OPC UA功能概述

OPC UA功能概述 什么是OPC UA? 标准OPC 仅支持Windows 操作系统。为了应对这一限制条件,OPC Foundation 研发出了OPC UA(OPC统一架构)标准。 OPC UA 标准并不特定于某个平台,并且针对高性能应用使用优化的基于TCP 的二进制协议。 OPC UA 支持诸如Window、Linux、Apple OS X、实时操作系统或移动操作系统(Android 或iOS)。 OPC UA 目前支持以下传输机制和协议: ● 通过TCP/IP,将消息作为二进制流直接传输(S7-1200/S7-1500支持) ● 通过TCP/IP 和HTTP 采用XML 形式传送消息。由于这种传输机制仅支持慢速传输,因此极少使用 S7-1200 基本控制器支持"Micro Embedded Device 2017 Server Profile"。 由于OPC UA 标准独立于特定的操作系统,并采用安全传送机制和数据语义描述,因此尤其适合于跨层级的数据交换。机器数据(受控变量,测量值或参数)也可采用这种方式传输。 OPC UA 采用简单的客户端/服务器的机制进行通信。服务器可在网络中提供大量信息,如有关CPU、OPC UA 服务器、数据和数据类型的信息。OPC UA 客户端访问这些信息。 图1. S7-1200 OPC UA通信 通过OPC UA可以做些什么? OPC UA通信常用的有以下功能:

?浏览 ?读/写 ?注册读/写 ?订阅 ?方法 ?伴随规范 S7-1200 支持的OPC UA功能 服务器: S7-1200 CPU 固件版本V4.4 及以上版本均配备OPC UA 服务器,除了标准的S7-1200CPU外,还包括S7-1200F系列CPU。 ?浏览 ?读/写 ?伴随规范 OPC UA 服务器组态通常与在S7-1500 CPU 中的组态一样;功能范围和数量限值受所支持"Micro Embedded Device 2017 Server Profile"的限制。与S7-1500 CPU 不同的是,以下功能不可用:服务器方法、结构化数据类型(结构和数组)、Registered Read 和Registered Write。 客户端: S7-1200 CPU 目前不支持,具体信息可以参考下表描述。

OPC Server

一.OPC技术 OPC Server/Client 是一套利用微软的COM/DCOM 技术达成工业自动化资料取得的架构。OPC Server 提供了许多的接口,Client 端通过这些接口,可以取得与OPC Server 相连的硬件装置的信息,而无须了解这些硬件装置的细节信息。 OPC客户和OPC服务器进行数据交互可以有两种不同方式,即同步方式和异步方式。同步方式实现较为简单,当客户数目较少而且同服务器交互的数据量也比较少的时候可以采用这种方式;异步方式实现较为复杂,需要在客户程序中实现服务器回调函数。然而当有大量客户和大量数据交互时,异步方式能提供高效的性能,尽量避免阻塞客户数据请求,并最大可能地节省CPU和网络资源。 二.King OPC Server 2.1.King OPC Server产品概述 King OPC Server是北京亚控科技有限公司推出的国内首屈一指的通用OPC服务器。它继承了亚控科技超过10年的驱动开发成果,实现了通讯和OPC技术的完美结合。 图2.1 OPC Server 部署图 支持的操作系统: √ Windows Server 2003 √ Windows XP √ Windows 2000 √ Windows Vista √ Windows CE √ Windows XP Embedded 不支持的操作系统:

× Windows 98(网络OPC功能) 2.2.King OPC Server亮点 2.2.1.在线组态 King OPC Server为完全的在线组态模式,即修改即运行,不需要停止采集。 2.2.2.设备冗余 King OPC Server支持针对设备的双链路冗余、双设备冗余。 对于同一设备的双链路冗余,链路类型可以相同也可以不同。典型应用为同一PLC的双IP冗余。切换准则为当前链路通讯失败时切换至另一链路。 对于不同设备之间的冗余,设备厂家必须相同,设备系列可以不同,但是必须支持相同的变量。典型应用为两个PLC之间的冗余。切换准则为当前设备通讯失败时切换至另一设备。 2.2.3.导入导出变量 King OPC Server支持导入导出变量。选择设备,可将该设备下的变量导出为.csv文件,也可将.csv文件中的变量导入至该设备。.csv文件中保存变量名,地址,数据类型等。2.2.4.系统变量 在协议或设备支持的情况下,King OPC Server允许自动批量创建变量。 目前支持自动批量创建变量的驱动包括: AB Logix以太网驱动 BACnet驱动 B&R PLC驱动

OPCServer概述

OPC Server概述 is OPC? OPC是OLE for Process Control的缩写。顾名思义,OPC是一种利用微软的COM/DCOM技术来达成自动化控制的协定,根据OPC Specification 的定义,OPC is "a standard mechanism for communicating to numerous data sources, either devices on the factory floor, or a database in a control room." 在现今的工业自动化中,我们需要一套整合的信息系统,由底层的各项装置采集信息 (Field Management),中层的控制系统或图控应用程序进行程序的控制 (Process Management),再由最上层的整合软件将这些信息整合起来以供企业决策或效能提升,如下图所示:

OPC 为硬件制造商与软件开发商提供了一条桥梁,透过硬件厂商提供的OPC Server 接口,软件开发者不必考虑各项不同硬件间的差异,便可自硬件端取得所需的信息,所以软件开发者仅需专注于程序本身的控制流程的运作。此外,由于 COM/DCOM 实作并隐藏了网络的细节,透过 OPC 可以很容易地达成远程控制的理想。 does OPC work? 在说明 OPC Server/Client 运作方式之前,我们先简单介绍一下Microsoft 发展的 COM/DCOM 是什么?

COM 是一种发展软件组件的方法,所谓的软件组件,是指一个可以提供应用程序、操作系统、以及其它组件服务的二进制可执行程序。事实上,发展自订的 COM 对象就好象是在建构一套可以动态执行的对象导向 API 一般。你可以在应用程序执行的时期随意拼上或移除所需要的组件。依据COM 这样的概念,发展应用程序就像是堆积木一样,每一个 COM 组件就是一块积木,你可以利用各式各样不同的积木,拼凑出你所需要的应用程序。 在实作上,COM 透过一组一组的接口 (Interface) 提供服务,所有 COM 组件的使用者,都必须透过这些 Interface 来使用组件提供的功能。OPC 的规格中便定义了许多 OPC Server 应该提供的 Interface,要撰写一个OPC Server 的 COM 组件,你必须在你的组件中加入这些接口,并提供它们的实作,Client 便可以透过这些接口,操作连接到 OPC Server 的硬件装置,这也就是 OPC Server/Client 运作的方式。以下的图标可以让这样的概念更清晰。 3. OPC Server 架构

西门子opc服务器的说明文档

Edition: 3C79000–G7076–C225–01 OPC Server Interface Manual This manual is based on version 2.0 of the OPC specification from the OPC Foundation. This manual is available only in English. Computing

This manual contains notices which you should observe to ensure your own personal safety, as well as to !Danger indicates that death, severe personal injury or substantial property damage will result if proper precau- tions are not taken. !Warning indicates that death, severe personal injury or substantial property damage can result if proper precau- tions are not taken. !Caution indicates that minor personal injury or property damage can result if proper precautions are not taken. Note draws your attention to particularly important information on the product, handling the product, or to a particular part of the documentation. Qualified Personnel Only qualified personnel should be allowed to install and work on this equipment. Qualified persons are defined as persons who are authorized to commission, to ground, and to tag circuits, equipment, and sys- tems in accordance with established safety practices and standards. Correct Usage Note the following: !Warning This device and its components may only be used for the applications described in the catalog or the technical descriptions, and only in connection with devices or components from other manufacturers which have been approved or recommended by Siemens. This product can only function correctly and safely if it is transported, stored, set up, and installed cor- rectly, and operated and maintained as recommended. Trademarks SIMATIC R, SIMATIC HMI R and SIMATIC NET R are registered trademarks of SIEMENS AG. Some of other designations used in these documents are also registered trademarks; the owner’s rights may be violated if they are used by third parties for their own purposes.

OPC概述

1.What is OPC? OPC 是 OLE for Process Control 的缩写。顾名思义,OPC 是一种利用微软的COM/DCOM 技术来达成自动化控制的协议,根据 OPC Specification 的定义,OPC is "a standard mechanism for communicating to numerous data sources, either devices on the factory floor, or a database in a control room." 在现今的工业自动化中,我们需要一套整合的信息系统,由底层的各项装置撷取信息 (Field Management),中层的控制系统或图控应用程序进行程序的控制(Process Management),再由最上层的整合软件将这些信息整合起来以供企业决策或效能提升,如下图所示: OPC 为硬件制造商与软件开发商提供了一条桥梁,透过硬件厂商提供的 OPC Server 接口,软件开发者不必考虑各项不同硬件间的差异,便可自硬件端取得所需的信息,所以软件开发者仅需专注于程序本身的控制流程的运作。此外,由于 COM/DCOM 实作并隐藏了网络的细节,透过 OPC 可以很容易地达成远程控制的理想。 2.How does OPC work? 在说明 OPC Server/Client 运作方式之前,我们先简单介绍一下 Microsoft 发展的 COM/DCOM 是什么? COM 是一种发展软件组件的方法,所谓的软件组件,是指一个可以提供应用程序、操作系统、以及其它组件服务的二进制可执行程序。事实上,发展自订的 COM 对象就好像是在建构一套可以动态执行的对象导向 API 一般。你可以在应用程序执行的时期随意拼上或移除所需要的组件。依据 COM 这样的概念,发展应用程序就像是堆积木一样,每一个 COM 组件就是一块积木,你可以利用各式各样不同的积木,拼凑出你所需要的应用程序。 在实作上,COM 透过一组一组的接口 (Interface) 提供服务,所有 COM 组件的

OPC SERVER DCOM 配置方法

远程访问OPC SERVER DCOM的配置 一、在装有OPC服务器的机器上DCOM配置如下: 1. 运行服务器上的dcomcnfg程序,进行DCOM配置。 2. 进入DCOM的总体默认属性页面,将“在这台计算机上启用分布式COM”打上勾,将默认身份级别改为“无”。如下面画面 3. 进入DCOM的总体默认安全机制页面,确认默认访问权限和默认启动权限中的默认值无EveryOne,如果不去掉EveryOne,应用服务器不能正常启动。如下面页面:

4.在常规页面中,双击你的应用服务器(opc20ifix),打开你的应用服务器DCOM 属性设置。 5.将常规页面中的身份验证级别改为“无”。如下页面: 6.位置页面中选上“在这台计算机上运行应用程序”。

7.将安全性页面设置中,均选择“使用自定义访问权限”,编辑每一个权限,将EveryOne加入用户列表中。 8.身份标识页面中,选择“交互式用户”。 注意NT的GUEST用户不能禁用。 二、在客户端机器上DCOM配置如下:

1后点”开始”->”运行”,输入”dcomcnfg”,然后回车,启动dcom配置。 2.常规页面中,双击你的应用服务器(Matrikon opc server simulation and testing ),打开你的应用服务器DCOM属性设置。 3.将常规页面中的身份验证级别改为“无”。 4.身份标识页面中,选择“交互式用户”。 5.位置页面中,选择“在这台计算机上运行应用程序”。

进入DCOM的总体默认属性页面,将“在这台计算机上启用分布式COM”打上勾,将默认身份级别改为“无”。 两端配置好后,客户端机器就可以访问远方机器的OPCSERVER了。 另外,远程的计算机必须在本机的网络邻居里看的到,而且登陆两台计算机的用 户名和口令必须完全相同。

WINCC_OPC服务器配置

两台WinCC之间OPC通讯方法(WinXP) OPC客户端 1、登陆计算机名及密码要与服务器端(OPCServer)一致。 a) 如:用户名:administrator 密码:1234 2、OPC客户端要与服务器端处于同一个网络。 a) 如:OPCServer IP:192.168.0.100 b) 如:OPClient IP:192.168.0.101 3、关闭Windows防火墙或者在弹出Window安全警报Loader for WinCC datamage中选择解除阻止。 或 4、运行DCOMCNFG.EXE a) 在弹出的组件服务右击我的电脑->选择属性->选择COM安全 b)

c) 在访问权限中选择编辑限制

d) ANONMOUS LOGON组中选中远程访问。 5、剩下的就是在WinCC创建客户端项目。效果如图: 6、

OPC服务器端 1、登陆计算机名及密码要与服务器端(OPCClient)一致。 a) 如:用户名:administrator 密码:1234 2、OPC客户端要与服务器端处于同一个网络。 b) 如:OPCServer IP:192.168.0.100 c) 如:OPClient IP:192.168.0.101 3、关闭Windows防火墙或者在弹出Window安全警报Loader for WinCC datamage中选择解除阻止。 或 4、运行DCOMCNFG.EXE d) 在弹出的组件服务右击我的电脑->选择属性->选择COM安全 e)

f) 在访问权限中选择编辑限制

g) ANONMOUS LOGON组中选中远程访问。 5、打开DCOM配置。如图: a) b)选择OPCEnum和OPCServer.WinCC项。 c)

OPC Server开发的几大境界

OPC server的开发相对OPC client 更加困难,OPC server 的开发主要应用COM技术,主要应用书籍为潘爱民写的《COM入门和应用》,大量的技术有很大的可重用性,在开发完一个程序后,基本上所有的东东都可以被重用,并且重新发布。 开发方式有三种: 1。简单的:就是应用已经有的如DDE to OPC 或串口 to OPC,modbus to OPC等软件把您的设备变成相关的OPC服务器。方法简单实用,费用合理快速,让你马上搭上OPC的快车。主要缺陷:你的设备必需是标准设备或更标准设备相容。这种方式比较适合产品多的厂家快速的转型,或提供OPC相关产品。 2.。一般的:应用第三方的开发包开发,这种方式相对来说减少了开发的难度,而且第三方有相应的技术支持,开发商专业做这种产品,产品有一定的稳定性。这种方式对开发包有依赖性,并且OPC服务器的稳定性依赖第三方的开发水平。本方法适于老板要求你马上开发出OPC产品是^_^,或者入门者使用。国内相关的开发包有华富慧通的和拓林的开发包。国外的可参考:https://www.wendangku.net/doc/2316293343.html,/source.php上面的还可以,不过现在发现也有死链接,不过他的提示确实不错。 3。有难度的:应用COM开发。这种开发方式是最可以学习到东西的。但需要有一定的基础,而且需要对英文有一定的认识度。主要涉及的知识有一下几点。 有一定的C/C++编程经验----代码是一定要写的 能应用VC开发环境------没有屠龙刀怎么能行了 掌握一定的COM知识-----进阶的东东 阅读相关OPC开发文档-----葵花宝典 开发-------------自己杀的猪肉才好吃 Hash表相关内容,主要用于大量节点时查询-----杀人于无形 基本就按照这个学习思路,对于前两项有太多的介绍了,在此不说了。 COM技术学习可参考VChelp https://www.wendangku.net/doc/2316293343.html,/的COM内容,其他网站都是随便说说而已。书籍可以看潘爱民的《COM原理和应用》,《COM本质论》等书籍。 OPC文档可以看Data Access Custom Interface 和 OPC Common Definitions and Interfaces。 源码可以参考lightopc 和 GE的源码,如果没有后面那个可以给我发email,好像网上不提供下载了。 GE的程序写得很好,结构清晰,但就是太老了,好在我们尊老爱幼。 lightOPC的程序相对太多了,感觉结构不是太好,有点乱,也可能是我没有深入把。 hash的东东我还没接触,不过数据结构都学过,快速定位。现在的内存这么大,实现大一点hash表,就可以了,当然一个不错的hash函数是不可少的。这是开发过程中要考虑的。至于开发是不是一定要用MFC和ATL就看你自己了,不用也可以,用也可以。感觉差别不是太大,如果不会就不用在学了,因为这两项并非那么容易掌握的。但COM必需要了解的。 对于这三种方法没有优劣之分,只有看你的需求如何。你付出的时间越多,相应的付出的Money越少,越灵活,学到的内容越多,这就是社会规律。在工控领域就是选择最适合的。[/nobr] OPC主要适用于过程控制和制造自动化等应用领域。 OPC是以OLE/COM机制作为应用程序的通讯标准。OLE/COM是一种客户/服务器模式,具有语言无关性、代码重用性、易于集成性等优点。OPC规范了接口函数,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而保证软件对客户的透明性,使得用户完全从低层的开发中脱离出来然后我们再来看看OPC Server的组成

OPCServer网络访问配置

OPC Server 配置文档 大多数OPC Clients和OPC Servers利用DCOM通过网络进行通信。在XP SP2中,经由DCOM的OPC通信是默认关闭的,本文讨论了当使用XP SP2时重建OPC 通信的必要设置方法。 由于OPC使用的回调方法使得OPC Client转变为DCOM server同时使OPC Server 转变为一个DCOM client,所以本文中提供的配置方法应在包含有OPC Server 和OPC Client的客户端节点上分别进行设置。 1.保持OPC Server服务器与客户端的用户名密码相同。 2.文件属性简单共享,不要选中。 3.防火墙的配置 1.为了给系统提供必须的保护,WINDOWS防火墙是默认启用的。(个人)不推荐关闭WINDOWS 防火墙,若通信连接失败,在调试过程中可以暂时关闭防火墙以确实问题是否是由防火墙所引起。

如若确定永久关闭防火墙,下面所述关于防火墙的设置均可忽略。 2.进入WINDOWS控制面板,双击“WINDOWS防火墙”图标,打开“WINDOWS防火墙”设置对话框,选中“例外”选项卡,把相应OPC Client和Server程序添加进例外列表。同时添加Microsoft Management Console (mmc.exe 在Windows\System32目录下)和OPC 应用程序OPCEnum (opcenum.exe 在Windows\System32 目录下)到例外列表中。最后确保“文件和打印机共享”也被选中在例外列表中。 (注:只有EXE程序可以被添加到例外列表中,对于DLL和OCX等类型的OPC Server 和OPC Client ,必须添加调用它们的EXE程序;本步设置可能要用到“添加程序”和“浏览”按钮。)

一个OPC服务器的简单实例

首先我们先来看一下什么是OPC OPC (OLE for Process Control——用于过程控制的OLE)是基于Microsoft公司的DNA (Distributed Internet Application)构架和COM(Component Object Model)技术的一个工业标准接口,是根据易于扩展性而设计的。 再来了解一下OPC的用途 OPC主要适用于过程控制和制造自动化等应用领域。OPC是以OLE/COM机制作为应用程序的通讯标准。OLE/COM是一种客户/服务器模式,具有语言无关性、代码重用性、易于集成性等优点。OPC规范了接口函数,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而保证软件对客户的透明性,使得用户完全从低层的开发中脱离出来然后我们再来看看OPC Server的组成 一个设备的OPC Server主要有两部组成,一是OPC标准接口的实现;二是与硬件设备的通信模块。 实现OPC 标准接口 在这些接口中,IOPCServer 是OPC Server的主接口,通过它实现OPC Server在操作系统中的安装和注册。此接口是必须要实现的,其所有方法也必须实现。其它的接口都是可选的我们就不做介绍了,下面主要来介绍如何实现IOPCServer接口。 在IOPCServer接口中共有六个法: 1、IOPCServer::AddGroup HRESULT AddGroup( [in, string] LPCWSTR szName, [in] BOOL bActive, [in] DWORD dwRequestedUpdateRate, [in] OPCHANDLE hClientGroup, [unique, in] LONG *pTimeBias, [in] FLOAT * pPercentDeadband, [in] DWORD dwLCID, [out] OPCHANDLE * phServerGroup, [out] DWORD *pRevisedUpdateRate, [in] REFIID riid, [out, iid_is(riid)] LPUNKNOWN * ppUnk ; 此方法是在OPC Server上建立一个组。下在我们来实现这个方法: …. …. 首先要对组名(szName)进行检查,看是否有效或是否已经有这个组。 if (szName != NULL) { RequestedName = szName; if (RequestedName == "" RequestedName = pSvrObject->DefaultGroupName(); } else RequestedName = pSvrObject->DefaultGroupName(); for (i=0; iNumbrGroups(); i++)

OPC Server概述

OPC Server概述 1.What is OPC? OPC是OLE for Process Control的缩写。顾名思义,OPC是一种利用微软的COM/DCOM技术来达成自动化控制的协定,根据OPC Specification 的定义,OPC is "a standard mechanism for communicating to numerous data sources, either devices on the factory floor, or a database in a control room." 在现今的工业自动化中,我们需要一套整合的信息系统,由底层的各项装置采集信息(Field Management),中层的控制系统或图控应用程序进行程序的控制(Process Management),再由最上层的整合软件将这些信息整合起来以供企业决策或效能提升,如下图所示: OPC 为硬件制造商与软件开发商提供了一条桥梁,透过硬件厂商提供的OPC Server 接口,软件开发者不必考虑各项不同硬件间的差异,便可自硬件端取得所需的信息,所以软件开发者仅需专注于程序本身的控制流程的运作。此外,由于COM/DCOM 实作并隐藏了网络的细节,透过OPC 可以很容易地达成远程控制的理想。 2.How does OPC work? 在说明OPC Server/Client 运作方式之前,我们先简单介绍一下Microsoft 发展的COM/DCOM 是什么?

COM 是一种发展软件组件的方法,所谓的软件组件,是指一个可以提供应用程序、操作系统、以及其它组件服务的二进制可执行程序。事实上,发展自订的COM 对象就好象是在建构一套可以动态执行的对象导向API 一般。你可以在应用程序执行的时期随意拼上或移除所需要的组件。依据COM 这样的概念,发展应用程序就像是堆积木一样,每一个COM 组件就是一块积木,你可以利用各式各样不同的积木,拼凑出你所需要的应用程序。 在实作上,COM 透过一组一组的接口(Interface) 提供服务,所有COM 组件的使用者,都必须透过这些Interface 来使用组件提供的功能。OPC 的规格中便定义了许多OPC Server 应该提供的Interface,要撰写一个OPC Server 的COM 组件,你必须在你的组件中加入这些接口,并提供它们的实作,Client 便可以透过这些接口,操作连接到OPC Server 的硬件装置,这也就是OPC Server/Client 运作的方式。以下的图标可以让这样的概念更清晰。 3. OPC Server 架构 如前面所述,OPC Server 透过一组一组的接口提供服务,不过在实作的架构上,OPC Server 共分为三层:分别是OPCServer, OPCGroup, OPCItem 其中每一个OPCItem 对应到一个实际的硬件装置上的某一个channel 或port;每一个OPCGroup 则包含了许多的OPCItem,同时并定义这些OPCItem 更新的时间、方式,以及提供读取OPCItem 值的接口;而每一个OPCServer 则包含若干个OPCGroup,同时提供操作这些OPCGroup 的接口。 下图可以较清楚地说明OPCServer/OPCGroup/OPCItem 间的关系:

OPC通信协议说明

项目10 S7-200的OPC Access通信10.1 学习目标 通过本项目的学习与训练,使学生在了解PC Access服务器软件OPC服务器软件的基础上,全面掌握S7-200的PC Access服务器软件,并达到以下目标。 10.1.1 知识目标 了解PC Access软件的功能,知道PC Access与Windows操作系统的兼容性要求,主要的硬件连接及相关注意事项。 10.1.2 技能目标 能熟练操作PC Access软件,正确设置PC Access参数,合理选择适当的连接方式建立PC Access与PLC的连接,并独立完成S7-200与PC Access服务器、PC Access服务器与Microsoft Excel的通信设置及数据交换。 10.2 知识准备 10.2.1 PC Access概述 1. PC Access简介 西门子推出的PC Access软件是专门用于S7-200 PLC的OPC服务器(Server)软件,可以与任何标准的OPC 客户端(Client)通信并提供数据信息。PC Access软件自带OPC客户机测试端,用户可以方便的检测其项目的通信质量及配置的正确性。 PC Access可以用于连接西门子或者第三方的支持OPC技术的上位软件(如WinCC、WinCC flexible、Microsoft Excel等),目前最高支持的数据访问规范为DA V2.05。 PC Access目前的最新版本是PC Access V1.0 SP3,可以在Windows操作系统下运行,兼容性要求如表10-1所列。 表10-1 PC Access软件与Windows操作系统的兼容性 Windows操作系统 PC Access版本Win 2000 SP3 Win 2000 SP4 Win XP Win XP SP1 Win XP SP2 Win XP SP3 Vist V1.0.0 未验证兼容未验证兼容未验证未验证未验证V1.0.1 未验证兼容未验证兼容兼容未验证未验证V1.0.2.26 兼容兼容兼容兼容兼容未验证未验证V1.0.3.35 兼容兼容兼容兼容兼容兼容兼容

OPC Server概述讲课讲稿

O P C S e r v e r概述

OPC Server概述 1.What is OPC? OPC是OLE for Process Control的缩写。顾名思义,OPC是一种利用微软的COM/DCOM技术来达成自动化控制的协定,根据OPC Specification 的定义,OPC is "a standard mechanism for communicating to numerous data sources, either devices on the factory floor, or a database in a control room." 在现今的工业自动化中,我们需要一套整合的信息系统,由底层的各项装置采集信息 (Field Management),中层的控制系统或图控应用程序进行程序的控制(Process Management),再由最上层的整合软件将这些信息整合起来以供企业决策或效能提升,如下图所示: OPC 为硬件制造商与软件开发商提供了一条桥梁,透过硬件厂商提供的 OPC Server 接口,软件开发者不必考虑各项不同硬件间的差异,便可自硬件端取得所需的信息,所以软件开发者仅需专注于程序本身的控制流程的运作。此外,由于COM/DCOM 实作并隐藏了网络的细节,透过 OPC 可以很容易地达成远程控制的理想。 2.How does OPC work?

在说明 OPC Server/Client 运作方式之前,我们先简单介绍一下 Microsoft 发展的COM/DCOM 是什么? COM 是一种发展软件组件的方法,所谓的软件组件,是指一个可以提供应用程序、操作系统、以及其它组件服务的二进制可执行程序。事实上,发展自订的COM 对象就好象是在建构一套可以动态执行的对象导向 API 一般。你可以在应用程序执行的时期随意拼上或移除所需要的组件。依据 COM 这样的概念,发展应用程序就像是堆积木一样,每一个 COM 组件就是一块积木,你可以利用各式各样不同的积木,拼凑出你所需要的应用程序。 在实作上,COM 透过一组一组的接口 (Interface) 提供服务,所有 COM 组件的使用者,都必须透过这些 Interface 来使用组件提供的功能。OPC 的规格中便定义了许多 OPC Server 应该提供的 Interface,要撰写一个 OPC Server 的 COM 组件,你必须在你的组件中加入这些接口,并提供它们的实作,Client 便可以透过这些接口,操作连接到 OPC Server 的硬件装置,这也就是 OPC Server/Client 运作的方式。以下的图标可以让这样的概念更清晰。 3. OPC Server 架构 如前面所述,OPC Server 透过一组一组的接口提供服务,不过在实作的架构上,OPC Server 共分为三层:分别是 OPCServer, OPCGroup, OPCItem 其中每一个 OPCItem 对应到一个实际的硬件装置上的某一个 channel 或 port;每一个 OPCGroup 则包含了许多的 OPCItem,同时并定义这些 OPCItem 更新的时间、方式,以及提供读取 OPCItem 值的接口;而每一个 OPCServer 则包含若干个 OPCGroup,同时提供操作这些 OPCGroup 的接口。 下图可以较清楚地说明 OPCServer/OPCGroup/OPCItem 间的关系:

相关文档