LabVIEW在OPC中使用基金会现场总线
本文讨论了如何使用开放的OPC(用于过程控制的OLE)接口访问基金会现场总线网络和设备。
NI-FBUS通信管理器随附了一个OPC数据访问服务器。
(NI-FBUS Configurator自动包含NI-FBUS通信管理器。)
以下是NI-FBUS通讯管理器不同版本的OPC相关信息:
-NI-FBUS通讯管理器2.3.5
-
支持基金会现场总线H1通信。
-
支持OPC数据访问1.0。
-NI-FBUS通讯管理器2.3.6和3.0
-
支持基金会现场总线H1和HSE通信。
-
支持OPC数据访问2.0。
-NI-FBUS通讯管理器3.1
-
支持基金会现场总线H1和HSE通信。
-
支持OPC数据访问2.05a。
-
通过OPC数据访问2.05a一致性测试。有关详细信息,请参见www.opcfoundation.org上的合规性测试结果。
-
一个新的地址空间旨在支持多个链接和多个设备以有效访问数据。
-
通过基于VIEW的机制提高了数据访问性能,尤其是对于ARRAY类型的数据访问而言。
-
改善了OPC服务器的稳定性。
强烈建议升级到NI-FBUS Communications Manager 3.1,以提高效率和稳定性。
OPC服务器配置
NI-FBUSOPC数据访问服务器易于配置。
对于基金会现场总线H1通信,您需要:
1. 设置NI基金会现场总线接口卡
2. 安装NI-FBUS通信管理器(或NI-FBUS配置器)
3. 导入设备的设备描述文件
根据您的接口卡,请参阅《 AT-FBUS入门手册》,《 PCI-FBUS入门手册》或《 PCMCIA-FBUS入门手册》。
对于基金会现场总线HSE通信,您需要:
1. 设置FBUS-HSE / H1链接设备
2. 安装NI-FBUS通信管理器(或NI-FBUS配置器)
3. 导入设备的设备描述文件
请参阅《 HSE链接设备入门手册》。
配置完成后,您可以将设备连接到接口卡和链接设备。 NI-FBUS OPC数据访问服务器将自动检测设备及其块。
OPC数据类型映射规则
基金会现场总线中共有三种数据类型:SIMPLE,ARRAY和RECORD。
SIMPLE类型和ARRAY类型变量被视为OPC地址空间中的叶节点。 RECORD类型变量被视为分支节点,这意味着您不能直接访问记录类型变量,而只能一个一个地访问其字段。
下表显示了数据类型映射规则。
表1. OPC数据类型映射规则
基金会现场总线地址空间
NI-FBUSOPC数据访问服务器根据基金会现场总线层次结构定义地址空间:
§ 顶层是链接
§ 第二层是连接到每个链接的设备
§ 第三级是每个设备下的VFD
§ 第四级是每个VFD下的块
§ 第5级和第6级是每个块下的参数。 SIMPLE和ARRAY类型参数是叶节点,而RECORD类型参数是分支节点。
图1显示了典型的基金会现场总线地址空间。
通过简单的OPC客户端访问基金会现场总线
服务器浏览器是OPC客户端,它随NI-FBUS软件一起提供。以下步骤显示了如何使用服务器资源管理器访问基金会现场总线:
1.启动服务器资源管理器
2.连接NI-FBUS OPC数据访问服务器:
1. 右键单击NIFB_OPCDA.3>连接到服务器…,然后弹出OPC连接对话框
2. 单击连接关闭对话框,服务器图标变为绿色。
3.添加一个OPC组:
1. 右键单击NIFB_OPCDA.3>添加/编辑组…,然后弹出OPC服务器:NIFB_OPCDA.3对话框
2. 在对话框中单击添加>>。
3. 单击确定关闭对话框,并在服务器图标下添加一个组Gr1图标
4.添加OPC项:
1. 右键单击Gr1->>添加/编辑项目…,然后弹出OPC组:Gr1对话框
2. 在项目定义区域中选择项目
3. 单击添加>>,然后将项目添加到名称(设备\项目)区域
4. 单击确定关闭对话框,并将项目图标添加到组图标中,并且项目列在服务器资源管理器的右侧区域中
5.阅读OPC项:
1. 右键单击要阅读的项目->属性…,然后弹出 OPC项对话框
2. 切换到读写AsyncIO
3. 点击阅读!纽扣
6.编写一个OPC项:
1. 右键单击要编写的项目->属性...,然后弹出 OPC项对话框
2. 切换到读写AsyncIO
3. 输入值,然后单击写!按钮。
开发技巧
使用这些技巧可帮助您开发更高效的FOUNDATION Fieldbus OPC应用程序。
§ 一次阅读多个项目,而不是一个一个地阅读
§ 由于OPC服务器针对多项目操作进行了优化,因此一次读取多个项目要比逐个读取项目快。出于相同的原因,一次添加多个项目,然后一次刷新多个项目。
§ 添加多个OPC组,而不是一个
§ 对于大多数应用程序,要读取的项目远远大于要写入的项目。添加多个OPC组而不是仅一个组就可以有效地组织OPC项目。
§ 例如,将您要监视的项目放入一个组,然后将您要写入的项目放入更新速度较慢(例如10s)的另一个组中。这样,写入操作将不会被读取操作延迟。 OPC客户端通常为一台OPC服务器支持多个服务器实例和/或多个组。 OPC客户端仅支持多个服务器实例,每个服务器仅支持一组。您可以改为创建多个服务器实例。
§ 不要将太多的静态项目放入监视组
§ 基金会现场总线中的参数可以分为两组:静态项目(在VIEW_2和VIEW_4.x中)和动态项目(在VIEW_1和VIEW_3.x中)。
§ 您可以将静态项目放入更新速度慢的OPC组中,因为这些项目很少更改。
§ 为每个OPC组设置适当的更新速率
§ 由于基金会现场总线H1的速率仅为31.25Kb / s,因此OPC组更新速率不能太快。为每个OPC组设置适当的更新速率可以节省通信带宽。
§ 您可以通过以下步骤找到特定OPC组的建议最快更新速率:
1. 通过OPC客户端(例如服务器浏览器)连接NI-FBUS OPC服务器
2. 添加组G1
3. 将您要监视的项目添加到组
4. 将组更新速率设置为一个较小的值,例如100ms,并将OPC客户端显示的实际更新速率作为建议的更新速率。
结论
NI-FBUSOPC数据访问服务器为FOUNDATIONFieldbus提供开放的OPC接口。在服务器的帮助下,我们可以有效地访问基金会现场总线网络。
这是LabVIEW的一个功能介绍,更多的使用方法与开发案例,欢迎登录官网,了解更多信息。有需要LabVIEW项目合作开发,请与我们联系。