(OA自动化)WinCC是西门子公司在自动化领域采用最先进的技术与微软公司在共同开发

合集下载

国内外组态软件

国内外组态软件

cada免费组态软件
uScada是国内著名的免费组态软件,是专门为中小自动化企业提供的监控软件方案。uScada包括常用的组态软件功能,如画面组态,动画效果,通讯组态,设备组态,变量组态,实时报警,控制,历史报表,历史曲线,实时曲线,棒图,历史事件查询、脚本控制,网络等功能,可以满足一般的小型自动化监控系统的要求。软件的特点是小巧、高效、使用简单。uScada也向第三方提供软件源代码进行二次开发。
国外进口品牌组态软件
国外组态软件:
1、InTouch:Wonderware(万维公司) 是 Invensys plc“生产管理”部的一个运营单位,是全球工业自动化软件的领先供应商。 Wonderware的InTouch软件是最早进入中国的组态软件。在80年代末、90年代初,基于Windows3.1的InTouch软件曾让我们耳目一新,并且InTouch提供了丰富的图库。但是,早期的InTouch软件采用DDE方式与驱动程序通信,性能较差,最新的InTouch7.0版已经完全基于32位的Windows平台,并且提供了OPC支持。
4.紫金桥Realinfo:
由紫金桥软件技术有限公司开发,该公司是由中石油大庆石化总厂出资成立。
5.MCGS:
由北京昆仑通态自动化软件科技有限公司开发,市场上主要是搭配硬件销售。
6.态神
态神是由南京新迪生软件技术有限公司开发,核心软件产品初创于2005,是首款3d组态软件 软件重要特点 A) 3D:系统除了具有传统的二维平面组态、监控功能,还具有真实三维立体组态、监控功能,画面逼真。该功能利用DirectX/OpenGL开发,在国内应该是首创,国际上也极其少见。 B) 跨平台:跨PC、嵌入式、平板电脑、智能移动等平台,该特点组态领域全球首创。 1) 系统的图形/控件、驱动/模块支持源代码级跨平台,即所有平台的图形、驱动代码一致,经过不同平台编译器编译链接后,即可在该平台上运行。 2) 所有平台的所有文件格式都一致,因此工程无需修改就可以在不同平台间移植、运行,而且不同平台开发环境(目前只有Windows开发环境)可以开发其它平台的工程。 3) 所有平台间的网络通讯协议一致,平台之间可以相互访问。参见“网络分布式”特点说明。 C) 网络分布式 1) 所有平台(包括嵌入式、平板电脑、智能移动等平台)的网络版本都内置微小、高效的网络/WEB模块,因此天生具备网络/WEB服务功能,组态文件无须发布,通过WEB浏览器或者组态浏览器即可远程监控该设备工程。 2) 由于所有平台间的网络通讯协议一致,所以利用网络共享模块,不同工程、不同平台间的变量、资源都可以通过网络互相访问,实现真正意义上的跨平台网络分布式系统。 3) 利用“内核访问开发包”(参见“强大开放性”),也可以与其它系统、其它平台组成网络分布式系统。 4) 系统对网络协议和通讯采用了大量的优化技术,通讯实时性高,响应迅速,网络往返包少,大大提高了网络性能。 D) 强大开放性:系统提供了如下的开发包,随开发包发布的还有很多例子源码,而且系统封装了大量的基类和宏,因此开发扩展极其容易: 1) IO驱动开发包:一般组态软件都提供(原先我以为他们提供,不过后来我跟一些网友了解到他们不一定提供),所以本系统也提供。 2) 图形开发包:一般组态软件都不提供,但本系统也提供。用户通过该开发包可以根据项目情况灵活增加特殊图形。 3) 系统模块:用户可以根据实际需求增加系统模块对变量、事务、算法等的处理,大大扩展了系统的应用领域。 4) 内核访问开发包:外部程序和系统、无论是远程或者本地、任何平台,都可以通过该开发包访问、管理、读写任何平台的态神组态数据库内核。例如:利用该开发包的WINCE版本开发成的一个WINCE系统可以访问一个Windows平台态神系统,利用该开发包的Windows版本开发成的一个Windows系统也可以访问一个Linux平台态神系统。 其它特点 A) 界面美观、易用:开发环境具有最新的Office 2003、Visual Studio 2005、Office 2007等界面风格和标准使用方式。 B) javascript脚本:考虑系统要支持跨平台,所以采用国际通用的标准脚本语言javascript,javascript也是Web浏览器上最流行的脚本语言。另外脚本还支持中文对象、方法、属性、事件等。 C) 值变通知机制:为了提高系统性能,系统采用变量值改变通知监控端的机制,而不是监控端定时刷新的机制。 D) 高级界面:包括透明、过渡、旋转/倾斜、反锯齿等高级界面技术,这些技术在Windows上利用GDI+实现并不困难,然而在Wince、嵌入式Linux上实现则较为困难。本系统在Wince、嵌入式Linux实现了这些功能,在当今嵌入式组态领域比较少见(尤其是Wince,嵌入式Linux可以用Qt/miniGUI等实现。当然Wince也可以用Qt开发,但是麻烦,较少使用)。而且经测试,本系统所采用图形技术的效率要高于GDI+的效率。 E) 其它:多语言、XML支持、画面缩放、定制图形、变量替换、OPC支持等

石油钻机远程通讯系统的研究

石油钻机远程通讯系统的研究

石油钻机远程通讯系统的研究目前电驱动石油钻机得到了广泛的应用,在电驱动钻机的电控系统中广泛使用plc、工控计算机及现场总线,这与过去机械驱动钻机相比具有无可比拟的优越性,其操作舒适, 结构简单,状态监视方便等得到了广泛的赞誉。

但由于石油钻机工作的环境恶劣、偏远,使其成为一个信息沟通的孤岛,往往无法实现从更高一级的数据中心和指挥中心获取合适的数据和决策指令;同时油田总部也无法获得大量井场钻机的工况数据。

通过结合钻机电控系统的特点,从不同的网络对钻机远程通讯系统做系统性的描述。

数据库无线通讯通讯协议1 概述随着通讯和现场总线技术的发展,钻机的控制越来越依赖于通讯。

目前在油田作业的电驱动钻机一般采用profibus-dp通讯网络,其控制系统一般由plc 控制器、分布式i/o模块、触摸屏及工控计算机等组成,plc 通过信号模块采集各种电气、仪表信号,通过现场总线与监控设备(如触摸屏、工控计算机)通讯,司钻通过监控设备完成对钻机的状态监控和参数设定等任务。

目前在钻机中应用较多的监控软件是wincc ,该软件运行在工控计算机上,通过profibus-dp现场总线与plc进行数据交换与通讯,并实现对钻机的实时监控。

但工控计算机不与外部网络连接,生产厂家或油田企业总部无法通过网络来远程实时监视钻机的运行状态和参数,只能通过井队的人工报表间接了解,由此带来数据不及时、失真,生产厂家也无法确切了解自己设备的运行情况。

正是基于这样的考虑和需求,我们开发了钻机无线远程监测系统,该系统基于gprs 网络和internet 网络,实现对钻机的远程监测和数据的远程传输。

2 wincc 简介wincc 是西门子公司和微软公司在自动化领域,共同开发的居于世界领先地位的工控软件。

wincc即windows control center(视窗控制中心),wincc具有很强的开放性,很方便实现与第三方软件的数据交换,在任何情况下wincc 都可以生成美观而便捷的人机对话画面,使操作员清晰管理和优化生产过程。

pcs7简介

pcs7简介

SIMATIC PCS 7介绍随着工业自动化过程控制理论和计算机技术的迅速发展,以及生产工艺对控制系统的可靠性、运算能力、扩展能力、开放性、操作及监控水平等方面提出了愈来愈高的要求。

传统的DCS系统已经不能满足现在过程自动化控制的设计标准和要求,SIMATIC PCS 7 过程控制系统就是在这种形势下开发的迎会需求的新一代过程控制系统。

SIMATIC PCS 7是西门子公司在TELEPERM系列集散系统和 S5,S7系列可编程控制器的基础上,结合最先进的电子制造技术、网络通讯技术、图形及图像处理技术、现场总线技术、计算机技术和先进自动化控制理论,面向所有过程控制应用场合的先进过程控制系统。

SIMATIC PCS 7的突出特点有基于全集成自动化思想与PROFIBUS现场总线行机地结合在一体吸收了各种先进技术,面向工艺更分散的系统配置,特别适用于分散的过程控制应用场合系统配置灵活,易于扩展模块化结构,通用的硬件模块强大的系统软件,组态与编程轻松简单丰富的人机界面产品提高了监控与管理的水平监视与操作SIMATIC PCS7过程控制系统的操作员站是过程控制的窗口,所有的操作与管理人员及维护工程师都能够在标准、友好和面向工艺的窗口上跟踪过程活动或者参与生产控制,同时得到报警和操作员提示。

PCS 7的操作员站采用了客户/服务器的结构。

客户机与服务器的连接采用标准以太网。

在服务器上,操作系统用Windows NT Server4.0;在客户机上,操作系统用Windows NT Workstation 4.0。

在服务器和客户机上,监控软件采用SIMATIC WinCC。

WinCC是西门子公司在自动化领域采用最先进的技术与微软公司共同开发的居于世界领先地位的工控软件。

所以,基于WinCC的操作员站是一个强大的全面开放的监控系统,既可以用来完成小规模的简单过程监控应用,也可以用来完成复杂的应用。

PCS7的操作员站可以针对任何生产工艺生成漂亮而便捷的人机对话窗口,使操作员能够清晰地参与和优化生产过程。

如何用VB编写OPC客户端程序

如何用VB编写OPC客户端程序
End Sub
Private Sub cmbBrowseFilter_Click() Select Case cmbBrowseFilter.Text Case 'OPC_FLAT' &
OPC 客户程序(VB 篇——同步) 代码如下: Option Explicit Dim WithEvents ServerObj As OPCServer Dim WithEvents GroupObj As OPCGroup Dim ItemObj As OPCItem Private Sub Command_Start_Click() Dim OutText As String On Error GoTo ErrorHandler Command_Start.Enabled = False Command_Read.Enabled = True Command_Write.Enabled = True Command_Exit.Enabled = True OutText = '连接 OPC 服务器' Set ServerObj = New OPCServer ServerObj.Connect ('XXXSERVER')'XXXSERVER 为某 OPC 服务器名称 OutText = '添加组' Set GroupObj = ServerObj.OPCGroups.Add('Group') OutText = 'Adding an Item to the group' Set ItemObj = GroupObj.OPCItems.AddItem('XXXITEM', 1) 'XXXITEM 为添加的 ITEM 名称 Exit Sub ErrorHandler: '如果出现异常,则报出错误。

mcgs组态软件简介

mcgs组态软件简介

MCGS组态软件简介摘要:组态软件,又称监控组态软件,译自英文SCADA,即Supervision,Control and Data Acquisition(数据采集与监视控制),组态软件的应用领域很广,它可以应用于电力系统、给水系统、石油、化工等领域的数据采集与监视控制以及过程控制等诸多领域。

在电力系统以及电气化铁道上又称远动系统(RTU System,Remote Terminal Unit)。

关键字:MCGS组态软件监控组态软件系统构成国内外组态软件正文:1、 MCGS组态软件的功能和特点MCGS即"监视与控制通用系统",英文全称为Monitor and Control Generated System。

MCGS是为工业过程控制和实时监测领域服务的通用计算机系统软件,具有功能完善、操作简便、可视性好、可维护性强的突出特点。

MCGS工控组态软件的功能和特点可归纳如下:1.概念简单,易于理解和使用。

2.功能齐全,便于方案设计。

3.实时性与并行处理。

4.建立实时数据库,便于用户分步组态,保证系统安全可靠运行。

5.设立“设备工具箱”,针对外部设备的特征,用户从中选择某种“构件”,设置于设备窗口内,赋予相关的属性,建立系统与外部设备的连接关系,即可实现对该种设备的驱动和控制。

6.“面向窗口”的设计方法,增加了可视性和可操作性。

7.利用丰富的“动画组态”功能,快速构造各种复杂生动的动态画面。

8.引入“运行策略”的概念。

复杂的工程作业,运行流程都是多分支的。

9.MCGS系统由五大功能部件组成,主要的功能部件以构件的形式来构造。

10.支持OLE Automation技术。

MCGS允许用户在Visual Basic中操作MCGS 中的对象,提供了一套开放的可扩充接口,用户可根据自己的需要用VB编制特定的功能构件来扩充系统的功能。

11.MCGS中数据的存储不再使用普通的文件,而是用数据库来管理一切。

关于WINCC

关于WINCC

关于WINCC:西门子公司的工业组态控制软件SIMATIC WinCC是第一个使用最新的32位技术的过程监视系统,是世界上第一个集成的人机界面(HMl)软件系统,具有良好的开放性和灵活性,用来处理生产和过程自动化.WinCC代表Windows Control Center,即视窗控制中心,它是西门子公司与微软公司联合开发的产物,在Windows 98或NT4.0以及基于NT 核心的Windows2000/ xp/2003 操作系统下运行。

WinCC是在生产过程自动化中解决可视化和控制任务的工业技术系统。

它提供了适用于工业的图形显示、信息、归档以及报表的功能模板。

高性能的过程藕合、快速的画面更新、以及可靠的数据传送使其具有高度的实用性。

除了这些系统功能外,WinCC还提供了开放的界面用于用户解决方案。

这使得将WinCC参与复杂、广泛的自动控制解决方案成为可能。

从面市伊始,用户就对SIMATIC WinCC印象深刻。

一方面,是其高水平的创新,它使用户在早期就认识到即将到来的发展趋势并予以实现;另一方面,是其基于标准的长期产品策略,可确保用户的投资利益。

凭籍这种战略思想,WinCC,这一运行于Microsoft Windows 2000和XP下的Windows控制中心,已发展成为欧洲市场中的领导者,乃至业界遵循的标准。

如果你想使设备和机器最化运行,如果你想最大程度地提高工厂的可用性和生产效率,WinCC当是上乘之选。

突出的优点:通用的应用程序,适合所有工业领域的解决方案;多语言支持,全球通用;可以集成到所有自动化解决方案内;内置所有操作和管理功能,可简单、有效地进行组态;可基于Web持续延展,采用开放性标准,集成简便;集成的Historian 系统作为IT 和商务集成的平台;可用选件和附加件进行扩展;“全集成自动化” 的组成部分,适用于所有工业和技术领域的解决方案。

WinCC集生产自动化和过程自动化于一体,实现了相互之间的整合,这在大量应用和各种工业领域的应用实例中业已证明,包括:汽车工业、化工和制药行业、印刷行业、能源供应和分配、贸易和服务行业、塑料和橡胶行业、机械和设备成套工程、金属加工业、食品、饮料和烟草行业、造纸和纸品加工、钢铁行业、运输行业、水处理和污水净化。

组态监控

组态监控

监控组态软件不仅有监控和数据采集(SCADA)功能,而且有组态、开发和开放功能。

监控组态软件是伴随着计算机技术、DCS和PLC等工业控制技术的突飞猛进而发展起来的。

随着个人计算机(PC)的普及和开放系统的推广,基于PC的监控组态软件在工业控制领域不断发展壮大。

监控组态软件广泛运用于工业、农业、楼宇和办公等领域的自动化系统。

随着计算机硬件和软件技术的发展,自动化产品呈现出小型化、网络化、PC化、开放式和低成本的发展趋势,并逐渐形成了各种标准的硬件、软件和网络结构系统。

监控组态软件已经成为其中的桥梁和纽带,是自动化系统集成中不可缺少的关键组成部分。

西门子公司的W1nCC 是WlndowsControIConter(视窗控制中心)的简称。

它集成了SCADA、组态、脚本(Script)语言和OPC等先进技术,为用户提供了Windows操作系统(W1ndows 2000或XP)环境下使用各种通用软件的功能。

WinCC继承了西门子公司的全集成自动化(TIA)产品的技术先进和无缝集成的特点。

WinCC运行于个人计算机环境,可以与多种自动化设备及控制软件集成,具有丰富的设置项目、可视窗口和菜单选项,使用方式灵活,功能齐全。

用户在其友好的界面下进行组态、编程和数据管理,可形成所需的操作画面、监视画面、控制画面、报警画面、实时趋势曲线、历史趋势曲线和打印报表等。

它为操作者提供了图文并茂、形象直观的操作环境,不仅缩短了软件设计周期,而且提高了工作效率。

WinCC的另一个特点在于其整体开放性,它可以方便地与各种软件和用户程序组合在一起,建立友好的人机界面,满足实际需要。

用户也可将WinCC作为系统扩展的基础,通过开放式接口,开发其自身需要的应用系统。

WinCC因其具有独特的设计思想而具有广阔的应用前景。

借助于模块化的设计,能以灵活的方式对其加以扩展。

它不仅能用于单用户系统,而且能构成多用户系统,甚至包括多个服务器和客户机在内的分布式系统。

毕业设计(论文)-基于组态软件的PLC仿真实验平台设计

毕业设计(论文)-基于组态软件的PLC仿真实验平台设计

摘要可编程控制器(PLC)是工业控制领域的重要装置,随着工业自动化技术的不断发展,其应用范围也在不断拓展。

对于培养专业工程技术方面人才的高校来说,PLC的教学显得尤为重要。

本文的设计正是在基于改进PLC实验教学装置、提高实验教学质量的目的提出来的。

本文就当前高校PLC教学实验的现状和其中存在的问题提出了可行的方案—基于组态软件的PLC实验教学系统。

论文的开始分析了现阶段PLC教学系统存在的一些弊端,接着介绍一些常见的PLC以及组态软件,简述它们的发展史,然后是基于组态软件仿真平台的实验原理。

本文使用的西门子S7-200PLC和WinCC(Windows Control Center)来讲述平台的设计。

最后通过几个简单的仿真实验,详细论述了该实验基于S7-200系列PLC和WinCC组态软件的实现方案,并建立了PLC仿真实验平台教学系统。

教学仿真系统不仅可验证PLC的控制程序的正确与否,还可直观逼真地显示PLC 动态控制过程,加深对PLC 实验的兴趣和理解,提高PLC课程的理论学习水平。

基于组态软件的PLC实验教学系统的建成,解决了高校开展PLC实验课程难的问题,较好的满足了高校PLC课程教学实验的要求。

关键词:实验教学,可编程控制器,组态软件,仿真ABSTRACTProgrammable Logic Controller (PLC) is an important field of industrial control devices. With the continuous development of industrial automation technology, it is also expanding its range of applications. To colleges and universities which cultivate talents of professional engineers, PLC teaching is particularly important. This paper is brought up based on the purpose of improving PLC experimental teaching device and the quality of experiment teaching.This paper analyzed the current condition of domestic PLC experimental teaching at present and summarized the existing problems of experimental teaching equipment in many universities, then propounded a new PLC experiment system based on industrial monitoring configuration software which is in combination of the base of previous studies.The beginning of the paper analyzed the drawbacks existed in present teaching system of PLC, then introduce some common PLC and configuration software. A brief description of their development history, and is based on the principle of the simulation platform of the configuration software .In this paper, using the Siemens S7-200 PLC and WinCC (Windows Control Center) to tell the platform design. Finally through a few simple simulation experiment, the experiment is discussed based on S7-200 series PLC and WinCC configuration software implementation scheme, and the PLC experiment teaching system is established.Teaching simulation system can not only verify the PLC control program is correct or not,also can realistically according to dynamic control process of PLC, deepen the interest and understanding of the PLC experiment and raise the level of theoretical study of PLC course. Of the PLC experiment teaching system based on configuration software is built, solved the problem of the colleges and universities to carry out the PLC experiment course is difficult, better meet the requirements of the PLC course teaching experiment.Key words: Experiment Teaching,PLC ,Configuration Software,Simulation1 绪论 (1)1.1课题研究的目的和意义 (1)1.2 国内外研究情况 (2)1.3 课题研究的主要内容及章节安排 (3)1.3.1 课题研究的主要内容 (3)1.3.2 论文内容安排 (3)2 课题相关技术介绍 (4)2.1 PLC (4)2.1.1 PLC的基本概念 (4)2.1.2 PLC的基本工作原理 (6)2.2 组态软件 (7)2.2.1 组态软件的基本概念 (7)2.2.2 组态软件的功能 (7)2.2.4 组态软件的特点 (11)2.3 仿真平台技术 (11)3 实验系统的构成及通信 (13)3.1 实验系统的构成 (13)3.2 OPC服务器的建立 (13)3.2.1 通信接口的设置 (13)3.2.2 OPC服务器的建立 (13)3.3基于WinCC的S7-200实验平台系统开发 (14)4 基于组态软件的PLC实验平台仿真实验 (15)4.1 刀具库选刀实验 (15)4.1.1 编写PLC程序 (15)4.1.2 组态画面 (16)4.1.3 对画面添加动态 (17)4.1.4 激活WinCC并运行PLC测试组态画面 (18)4.2 反应罐自动控制系统 (20)4.2.1 编写PLC程序 (20)4.2.2 组态画面及动态的添加 (23)4.2.3 组态画面的测试 (25)4.3 搬运机械手监控系统 (27)4.3.1 编写PLC控制程序 (27)4.3.2 组态画面及动态画面添加 (31)4.3.3 激活WinCC并运行PLC测试组态画面 (33)总结与展望 (34)参考文献 (35)致谢 .......................................................................................................... 错误!未定义书签。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

WinCC是西门子公司在自动化领域采用最先进的技术与微软公司在共同开发的居于世界领先地位的工控软件。

WinCC即WINDOWS CONTROL CENTER(视窗控制中心)。

WinCC是一个功能强大的全面开放的监控系统,既可以用来完成小规模的简单的过程监控应用,也可以用来完成复杂的应用。

在任何情况下WinCC都可以生成漂亮而便捷的人机对话接口,使操作员能够清晰地管理和优化生产过程。

它集成的OPC(OLE for process control)服务器使得过程数据可由其它应用程序(OPC客户机)访问。

WinCC在安装时提供了OPC的客户端控件: Siemens OPC DAAutomation2.0( SOPCDAAuto.dll), 在WINCC的帮助中,有Siemens OPC DAAutomation 2.0使用的简略帮助,但说得不很详细,我在使用VB6.0开发WinCC的OPC客户机中碰到不少问题,现一并写出来,与大家共享。

希望起到抛砖引玉,举一反三的作用。

一、开发实例背景:我厂包装机BE电气改造后,由原来了单片机、直流调试板、温度控制板等控制改为带有通讯端口PLC、变频器、温控仪等控制,上位机监控软件为WinCC。

在控制系统中,变频器、温控仪的控制信号通过串口、OPC客户机接入上位机WinCC,报警信号接入PLC。

其硬件组态结构如图一OPC开发要求:①通过WinCC建立内部变量Tag(1),Tag(2),Tag(3),Tag(4)……;在视图窗口建立相应了I/O输入输出域。

通过更改WinCC 中I/O域的值,来设定或更改变频器、温控仪等的参数。

②通过VB开发了串口驱动程序,读取变频器、温控仪等的参数,通过OPC控件把值传递给WinCC中的I/O域。

二、VB6开发WinCC的OPC客户机具体步骤:1、打开VB6,建立如图二窗体:其中,文本框组Text4.text为写入WinCC内部变量名称;文本框组Text5.text为显示相应了WinCC内部变量值;文本框组Text8.text为写入期望了WinCC内部变量值。

单选框为OPC连接成功标志。

3个命令按钮分别为“连接”,“断开”,“退出”。

2、OPC的连接先在工具栏中“工程\引用”将近 Siemens OPC DAAutomation 2.0加入,然后开始定义全局变量。

在本程序中,我使用了一个OPC组进行OPC访问,所以定义了全局变量。

我们要首先定义OPC服务类型与计算机结点名。

定义OPC组与OPC标签组。

并定义OPC的标签数组与值数,注意,值数组一定要设为Variant。

Option ExplicitOption Base 1 ‘这数组必须由1开始,不能由0开始Const ServerName = "OPCServer.WinCC" OPC的类型Dim NodeName As String 结点名,即计算机名Dim WithEvents MyOPCServer As OPCServer OPC服务Dim WithEvents MyOPCGroup As OPCGroup OPC组Dim MyOPCGroupColl As OPCGroupsDim MyOPCItemColl As OPCItems OPC标签组Dim MyOPCItems As OPCItemsDim MyOPCItem As OPCItemDim ClientHandles(1) As Long 句柄Dim ServerHandles() As LongDim Errors() As LongDim ItemIDs(4) As String 记录OPC的标签Dim ItemIDsValue(4) As Variant 存放OPC的值Dim GroupName As Variant在定义所有变量后,我们就要进行OPC连接了,要进行OPC连接之前,先要配置要访问的OPC标签名(即WinCC内部变量名),我们ItemIDs中加入相应的标签名,注意:这数组必须由1开始,不能由0开始。

配置好标签后就要进行OPC连接了。

如下面子程序:① ClientHandles1先配置名柄索引,这将在读取OPC标签的值时可要用到。

②生成OPC对象,③ 进行OPC标签连接此,OPC连接就成功了,我们可以对OPC进行读与写的操作了。

Private Sub Command1_Click()Dim ii As IntegerDim ClientHandles1(4) As LongFor ii = 1 To 4ClientHandles1(ii) = iiItemIDs(ii) = Text4(ii).Text 指明WinCC内部变量名称Next iiOn Error GoTo ErrorHandlerGroupName = "MyGroup"NodeName = Text1.Text 结点名,即计算机名Set MyOPCServer = New OPCServerMyOPCServer.Connect ServerName, NodeNameSet MyOPCGroupColl = MyOPCServer.OPCGroupsMyOPCGroupColl.DefaultGroupIsActive = TrueSet MyOPCGroup = MyOPCGroupColl.Add(GroupName)Set MyOPCItemColl = MyOPCGroup.OPCItemsFor ii = 1 To 4ClientHandles1(ii) = iiItemIDs(ii) = Text4(ii).TextMyOPCItemColl.AddItems 4, ItemIDs, ClientHandles1, ServerHandles, Errors 初始化OCP连接Next iiMyOPCGroup.IsSubscribed = TrueOption1.Value = True 连接成功标志Exit SubErrorHandler:MsgBox "Error: " & Err.Description, vbCritical, "ERROR" 连接发生错误End Sub3、OPC的标签读写对OPC标签的读可以通过ItemIDsValue(4)组的DataChange事件来读取。

该事件有多个参数:其中NumItems是指标签改变值的个数,ClientHandles是改变值的标签索引,ItemValues为改变值的数据,具体的意思是ClientHandles (ii)的值是其对应的标签数组的索引,其所指的OPC标签的值在ItemValues(ii)中。

一般来说,刚连接上时,该事件会把全部所要求访问的OPC标签值全部读取过来(顺序不一,要通过ClientHandles索引),此后只有数据发生变化时才会触发该事件。

也只会传输发生了变化的数据,没有变化的数据不会出现在本事件的ItemValues中。

读取Private Sub MyOPCGroup_DataChange(ByVal TransactionID As Long, ByVal NumItems As Long, ClientHandles() As Long, ItemValues() As Variant, Qualities() As Long, TimeStamps() As Date)Dim ii As LongFor ii = 1 To 4ItemIDsValue(ClientHandles(ii)) = ItemValues(ii) 对改变的值读入本数组Text5(ClientHandles(ii)).Text = ItemIDsValue(ClientHandles(ii))Next iiEnd Sub写入Private Sub Text8_Change(Index As Integer)Dim valuess(4) As VariantDim ii As LongFor ii = 1 To 4valuess(ii) = Text8(ii).TextMyOPCGroup.SyncWrite 4, ServerHandles, valuess, ErrorsNextEnd Sub对OPC的写可以有同步与异步之分,对于大量的数据传输,异步是更佳的选择,但对少量的数据传输,同步表现得更好。

4、OPC连接断开。

OPC客户端连接后要占用服务器资源,所以如果不需要使用OPC时,必须进行OPC连接断开。

断开的程序相当简单,释放资源即可。

如下:Private Sub Command2_Click()On Error Resume NextMyOPCGroupColl.RemoveAll ----------- 释放组和服务器对象MyOPCServer.Disconnect----------- 与服务器断开连接并且清除Set MyOPCItemColl = NothingSet MyOPCGroup = NothingSet MyOPCGroupColl = NothingSet MyOPCServer = NothingOption1.Value = False 连接成功标志End Sub至此,用VB 6.0开发WinCC的OPC客户机开发完毕。

三、测试运行在使用中,通过串口读取过来了值(例如温控器的实际温度)可以赋给VB 的变量(例如Text8(0).text)。

通过Private Sub Text8_Change(Index As Integer)函数,当串口读取了值有变化时,在WinCC组态界面中实际值I/O域中,就可以看到其实际值了(Tag(1))。

也可通过WinCC的组态界面对设定值I/O域中进行参数设定,通过上述程序的Private Sub MyOPCGroup_DataChange (ByVal TransactionID As Long, ByVal NumItems As Long, ClientHandles() As Long, ItemValues() As Variant, Qualities() As Long, TimeStamps() As Date)函数,把WinCC的设定值(Tag(2))赋给VB的变量(例如Text8(1). text),再通过串口通讯把值写入(例如温控器的设定值)。

程序运行图三,OPC与WinCC通讯测试图三,OPC与WinCC通讯测试测试运行结果如图三。

相关文档
最新文档