- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
在MicrosoftExcel里如何建立OPCClient
在 Microsoft Excel 里如何建立OPC Client?使用说明:这是在Microsoft Excel 里用VBA脚本语言建立OPC client ,并通过OPC接口读取PLC中的数据和写数据到PLC中。Microsoft Excel作为OPC client 初始化通讯并通过OPC接口发送读/写命令到OPC server。OPC server执行这些 读/写申请。 下面是配置Microsoft Excel 为OPC client 的过程。? 序号.步骤1在Excel表里建立接口并保存这些带描述的控制按钮。 图 012在Visual Basic编辑器的Tools-References... 里选中Siemens OPC DA Automation 2.0 的部件 使Visual Basic能识别这个OPC对象。3现在建立必需要用的对象。 例如:MyOPCGroup 对象: Dim: Create a variableWithEvents: The object should be able to provide events (e.g. DataChange)MyOPCGroup: Object nameAs OPCGroup: Type of variable 图 024接着是给MyOPCServer 对象提供存储空间: Set MyOPCServer = New ...并在Microsoft Excel里建立与OPC server的连接: Call MyOPCServer.Connect(ServerName)通过功能 Cells(line, column)就可以在Microsoft Excel单元里访问数据。在这个例子里OPC server的名是来自于单元格(line 4, column B)中。 图 035一旦Microsoft Excel与OPC server建立连接,就可以建立OPC组。这个通过对象收集来完成的。 . MyOPCServer.OPCGroups.Add(group name)在这个例子里最新建的组是通过MyOPCGroup 变量来访问的。 为了使OPC组能提供像DataChange这样的事件, 必需设置: MyOPCGroup.IsSubscribed = True) 图 046接下来需要创建项,这个通过对象收集器来完成的。 MyOPCItems(i) = MyOPCGroup.OPCItems.AddItem(ItemID)在这个例子里,ItemIDs 是存在了单元格(line 9-12, column B) 里,通过功能 Cells(line, column)就可以选择需要的ItemIDs 并把它传给收集对象MyOPCGroup.OPCItems.AddItem。 图 057通过功能 MyOPCGroup.SyncRead()就可以从PLC中读取值。 OPC items的服务器句柄以参数的方式传给了下面的函数。 图 068在这个例子里从PLC中读出的值在单元格(line 9-10, column E)中显示。这个值的品质和时间标签显示在单元格(line 9-10, column H)和(line 9-10, column I)里。函数MyOPCGroup.SyncRead()是以参数返回的形式提供数据。 图. 079在Microsoft Excel里OPC server对于DataChange事件的处理是提供对OPC group的DataChange()的调用来完成的。这里需提供一系列的参数像 ItemValue(OPC项的值),客户句柄等。. 通过DataChange事件,当OPC项里的数值发生变化数时数据被接收。 当前OPC项的值显示在单元格(line 9-12, column D)。 ) 图 0810如果在Excel的单元格(line 9-13, column F)输入数值,那么OPC项被写入值,这个值通过 MyOPCGroup.SyncWrite()写到PLC中并且服务器句柄是以参数的形式传给这个函数 。 图? 0911函数GetQualityText 是以事先定义的错误代码以字符串的形式提供错误信息。 Private Function GetQualityText(Quality) As String ?? Select Case Quality????? Case 0:????GetQualityText = BAD????? Case 64:?? GetQualityText = UNCERTAIN????? Case 192:? GetQualityText = GOOD????? Case 8:????GetQualityTe
您可能关注的文档
最近下载
- 电光PBG-()Y高压配电装置说明书(永磁DSB-600B型).pdf
- 中国血脂管理指南(基层版2024年).doc
- 一汽-大众供应商代码文档.pptx
- GB∕T 33580-2017 橡胶塑料挤出机能耗检测方法(高清版).pdf
- 双减背景下新课标单元整体作业分层设计案例 人教版小学数学四年级下册第八单元 数学广角优化.docx
- 标日【初级】单词.pdf VIP
- 初中英语新人教版七年级上册Unit 1 Hello练习题(附参考答案)(2024秋).doc
- 产品包装纸箱设计规范.doc
- 《大单元视域下小学语文中段习作单元教学的实践研究》课题研究方案.doc
- 管理学(第九版)-哈罗德·孔茨、海因茨·韦里克课后题答案.pdf VIP
文档评论(0)