实例介绍
主要讲述了在C#语言环境下,编程实现通过SimaticNet 提供的OPC Server, 访问PLC 中数据的步骤。此方法同样适用于WinCC 作为OPC Server 时的数据访问。
SIEMENS 如何在中实现数据访问 、概述 介绍 的读写方式 访问接口方式 、测试环境 硬件要求 软件要求 端组态配置 、采用自定义接口过程 同步读写 异步读写 、采用自动化接口实现过程 的数据类型 、小结 代码 自动化接∏ 自定义接口同步读写 自定义接口异步读写 SIEMENS 、概述 介绍 是 的缩写,它是微软 公司的对象链接和嵌入技术在过程控制方面的应用。 技术为基 础,采用客户服务器模式,为工业自动化软件面向对象的开发提供了统一的标准,这个标 准定义了应用 操作系统在基于的客户机之间交换自动化实时数据的方法,采 用这项标准后,硬件开发商将取代软件开发商为自己的硬件产品开发统一的接口程 疗,而软件开发者可免除开发驱动程序的工作,充分发挥自己的特长,把更多的精力投入 到其核心产品的开发上 是西门子全集成自动化系统中的一个重要组成部分,它为完善的工业自动化 控制系统的通讯提供部件和网络,同时提供多个 ,为数据的外部访问提供接 ,本文主要以 为例说明。 E] Local server[s] 田 ef CiL, sirmaticNE/aer CFC☆hLwr F OPC.SimaticHET DP AnPL. SimatIcNET PD OPCServer w inT 着口 PCSeryere winco i'r OPCServerHDA WinCC 匙 Remote server Add emote Servers[s] 图: 提供的 采用不同的通信方式,通过 ,现场数据可以方便地提供给用户: 图:多种数据提供方式 SIEMENS 的读写方式 在实际使用中,主要包括对现场数据的读写操作。 读数有三种方式:同步、异步、订阅。 同步通讯时,客户程序向服务器进行请求时 客户程序必须等到 服务器对应的响应全部完成以后才能返回,在此期间客户程序一直处于等待状态,若 进行读操作,那么必须等待服务器响应后才返回。因此在同步通讯时,如果有大量数 据进行操作或者有很多客广程序对服务器进行读操作,必然造成客户程序 的阻塞现象。因此同步通讯适用于客户程序较少,数据量较小时的场合。 图 同步读写服务器客户端数据流图 异步通讯时, 客户稈序对服务器进行请求时, 客户程序请求后立刻返回,不 用等待服务器的响应,可以进行其它操作。服务器完成响应后再通知 客 程序,如进行读操作,客户稈序通知服务器后离开返回,不等待服务器的 读完成,而服务器完成读后,会自动的通知客户程序,把读结果传送给 户程序。因此相对于同步通讯,异步通讯的效率更高。 图 异步读服务器客户端数据流图 SIEMENS 订阅方式时, 客户程序对服务器进行请求时 客户程序操作后立刻返回,不 用等待服务器的操作,可以进行其它操作, 服务器的 组在组内有数据发 生改变时,自动根据更新周期刷新相应的客户端数据,如下图,客户端只向服务发送 一次请求,之后不再对服务器请求 图 同步读服务器客户端数据流图 写数有两种方式:同步、异步。区别与上面训的机制一样,在生产应用中,如果写 数据参与控制,一般采用同步方式。 访问接口方式 主要包含两种接∏: 标准接∏和自动化标准接∏,自定义接∏是 服务商必须提供的,而自动化接口则是可选的 自定义接口是一组接口,主要用于采用语言的应用程序开发; 自动化接口是一组接口,主要用于采用 等基」脚木编程语 言的应用程序开发。 opc autonation OP PC Autonation Applicaticn interrace wrapper Local or remote OPC Seve (Shared hy many clients Applcation OPC Cirsium Iner/arce 图自定义接∏和自动化接∏ SIEMENS 许多 服务器,包括 ,是在平台开发的,从而对于基 于框架下的语言,作为客户端程序语言访问 需要解决两个平台间无缝 迁移的问题。基金会对会员提供了 动态链接库, 包装器和 将复杂的规范封状成简单易用的类,可以比较容易地实现数据访 问 本文中通过实验,逐步讲解了通过编写客户端程序,访问 对 数据进行读写的实现过程。自定义接口及自动化接口都进行了测试,但基于的语言 特性,建议采用自定义接口访问,同时有很多 服务商,对外是不提供自动化接 ∏的,西门了的 及 的 都提供自动化接冂 、测试环境 硬件要求 采用系列,通过以太网连接到安装有 的计算机上。 软件要求 端组态配置 icw Options window Hclp 乡中血〓口思A? iiii Uj uHe 度uU4Tk-HND SIEMENS 在中定义块: 山 ddress Hane Type Initial walue C tO a Test Data3 +2. Test Data4 INT +4.Q Test Data5 REAL 0.000000+000 +8.o Test d REAL 0,000000e+0 OoL FALSE +12.1 Test Data8 BOOL FALSE 14.0 Test Data STRING[10] +26. o Test Data10 STRING[101 = END STRUCT 配置 参考 其它文档 HE NetPro-[OPCTest(Network)-F: \OPCTest network Edit WIndow HElp 日品邑启幽向战确!岭 MISSERTER1 SIMAT-O 400(1) IPT IFTO PROF-BUS(1) rtner In SCHATIC 400 cPI∴:6R-3PrTP 如上图建立连接 ,然后在 测试连接的正确性 SIEMENS eme incl status infor Item Vames Value Format Type Acess Qudlity a Stamp(ler 11575770 Original int 16 0310t1 necron 1DB'0八 0d03/73/2U911 3 m1D:0A4135-0m321 9(1 reckon 1DB OREAL 1319〔1 onchon ]DEU, STRING14 10 lest Original 00031012 rue Original bool Rw 03/109tE 从上面可以看到数据访问都是正常的。 采用自定义接口过程 同步读写 建立同步读写项目: ? Yisudl Slud ju iislalleu leimiulales Widows iF Cless lbr 钢 wet Control Librsry . Starter kits 国 Empty proj 图 Crustal re 口2he De rued syster Solution E. her Fro'ect Types 国 ch online Templates A project for creating an apPlicator with a Wirdons user interface UlJiUIL NlB v(reate dI'ertnry frr <nitin 《」引 测试中,对 及 读写操作,在窗口做如下设计: SIEMENS 回 sync Fw Conn Read 第一步,添加下面命名空间:(首先需要在项目中添加相应的引用) 第二步,定义相关变量 定义 对象 同步读对象 管理 组对象 语言码一英语 对象 句柄数组 句枘 第三步,连接 建立相应 组,并添加需要读写的 定义变量 【实例截图】
【核心代码】
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论