如何创建一个Microsoft Excel的OPC客户端
更新时间:2023-06-05 11:45:01 阅读量: 实用文档 文档下载
如何创建一个Microsoft Excel的OPC客户端?
用法说明:
这个说明讲述了如何在Microsoft Excel 中用VBA脚本语言建立OPC 客户端,并通过OPC接口读取PLC中的数据,以及将数据写入PLC。
通过OPC接口,Microsoft Excel作为OPC 客户端发起通讯并发送读/写请求到OPC服务器。OPC服务器执行这些读/写请求。
Microsoft Excel 作为客户端的配置过程如下:
在Excel中创建一个接口,并保存分别申明的控制元件。
图 01
在VisualBasic 编辑器中的“工具->引用”中,选中“Siemens OPC DA Automation 2.0”组件,使VisualBasic能够识别OPC对象。 现在创建所需的所有对象,如:“MyOPCGroup”对象
Dim: 创建一个变量
WithEvents: 这个对象可以提供事件(如 DataChange)
MyOPCGroup: 对象名
As OPCGroup: 变量类型
图 02
为“MyOPCServer”对象分配内存: Set MyOPCServer = New ... Microsoft Excel建立与OPC服务器的连接: Call MyOPCServer.Connect(ServerName) 使用如下函数来访问 Microsoft Excel的单元格信息。在本例中,从单元格(第四行,B
列)中获取OPC服务器的名称。
图 03
Microsoft Excel与OPC服务器的连接一旦建立,OPC组即被创建。这个通过集合对象
来实现:
MyOPCServer.OPCGroups.Add(组名)
在本例中,最新创建的组通过“MyOPCGroup”变量来寻址。设置
MyOPCGroup.IsSubscribed = True,以便OPC组能够提供DataChange等事件。
图 04
创建OPC项。这个通过集合对象完成: MyOPCItems(i) = MyOPCGroup.OPCItems.AddItem(ItemID) 在此例中,ItemIDs 存储在单元格(9-12行,B列)中。使用函数Cells(line, column) ,
把指定的ItemIDs 传送给集合对象"MyOPCGroup.OPCItems.AddItem"。
图 05
使用下列函数从PLC中读取变量: MyOPCGroup.SyncRead() 以参数形式为此函数传递OPC项的服务器句柄。
图 06
从PLC读出的值显示在单元格(9-10行,E列)中。 这些读出值的质量代码和时间戳显示在单元格(9-10行,H、I列)中。函数
“MyOPCGroup.SyncRead()”以返回值的形式提供这些数据。
图 07
在Microsoft Excel中,调用如下用于OPC组事件处理的程序,它是一个OPC服务器
的DataChange 事件:
DataChange()
这个事件处理程序提供了许多参数,如ItemValue(OPC项的值),客户端句柄等。
通过DataChange事件,当OPC项的值变化时,数据会自动发送。OPC项的当前值显
示在单元格(9-12行,D列)中。
图 08
如果在Microsoft Excel的单元格(9-13行,F列)中输入一个值,通过下面的函数将
OPC项写入到PLC:
MyOPCGroup.SyncWrite()
写入值和服务器句柄以参数形式传递给此函数。
图 09
函数GetQualityText以字符串的形式,为预定义的错误代码传递错误消息。
Private Function GetQualityText(Quality) As String
Select Case Quality
Case 0: GetQualityText = "BAD"
Case 64: GetQualityText = "UNCERTAIN"
Case 192: GetQualityText = "GOOD"
Case 8: GetQualityText = "NOT_CONNECTED"
Case 13: GetQualityText = "DEVICE_FAILURE"
Case 16: GetQualityText = "SENSOR_FAILURE"
Case 20: GetQualityText = "LAST_KNOWN"
Case 24: GetQualityText = "COMM_FAILURE"
Case 28: GetQualityText = "OUT_OF_SERVICE"
Case 132: GetQualityText = "LAST_USABLE"
Case 144: GetQualityText = "SENSOR_CAL"
Case 148: GetQualityText = "EGU_EXCEEDED"
Case 152: GetQualityText = "SUB_NORMAL"
Case 216: GetQualityText = "LOCAL_OVERRIDE"
Case Else: GetQualityText = "UNKNOWN ERROR"
End Select
End Function
最后,断开与OPC服务器的连接。
图 10
在此下载在Microsoft Excel中实现OPC客户端编程的Visual Basic 示例程序。
此外,条目ID23829402包含一个使用Microsoft Excel 和VBA,创建个性化、可视化接口的简单程序。
注意:
对于通过DCOM访问OPC服务器,使用Microsoft Excel 作为客户端的本示例程序没有经过测试。
正在阅读:
如何创建一个Microsoft Excel的OPC客户端06-05
寒假社会实践06-16
诚信对我的启迪作文06-19
透析袋01-23
我的理想居所作文500字07-01
顺德旅游美食攻略---让胃旅行的一次旅程06-04
幼儿早期阅读能力的培养与指导策略11-18
施工企业项目成本控制探讨(修改稿)11-02
06《雪心赋》原著解析(卷三)06-22
牛杂中药香料绝密配方有什么?12-19
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- Microsoft
- 客户端
- 创建
- 如何
- 一个
- Excel
- OPC
- 初二物理上册一、二章练习题
- 初一地理上册知识点总结(最全面最详细)
- 一方水土养一方人
- rn学前班拼音教案
- Solexa测序原理及流程_--华大基因
- 21世纪中学生英文报
- 德国Vacuubrand VAP5真空压力表和真空压力表价格
- 2013年证券从业资格考试证券市场基础知识教材word版—第六章第三节证券价格指数
- 湘潭至湘乡二级公路改建工程概况
- 不同法规关于核电厂设计地震动合成的技术要求比较
- 非计算机专业“大学计算机基础”课程分层教学改革探索
- 机械式停车场图片
- 重庆市2013公需考试(教育类)最新最全题库及答案应付考试省力省心)
- 学生会生活部述职报告
- 苏教版译林版英语六年级上册复习知识点汇总
- 6制1下四单元绿色行动——100以内数的加减法(一)我学会了吗教学设计2
- 广西2010各县生产总值
- 微积分习题课题目
- m法和k法可灵活组合的刚性抗滑桩计算公式
- 2.3 平方根(第2课时)