LabVIEW DSC模块的Tag Monitor不能够更新TOP OPC Server的变量值



主要软件:
主要软件版本: 7.0
主要软件修正版本: N/A
次要软件: N/A

问题:

        我目前在使用一个第三方的OPC Server(Software Toolbox 公司的TOP Server)用于LabVIEW DSC模块的应用。我在Tag Configuration Editor 创建了一个模拟的输入、输出DSC 模块标签,并命名为TempMeas,功能是从TOP Server中读取一个热电偶的值。当我使用Tag Monitor来预览标签值的时候,尽管热电偶的值在不断的变化,DSC模块标签值没有进行相应的更新。、

        如果我使用DSC Module Server Explorer并且直接链接到TOP Server上(链接方法是SWToolbox.TOPServer»TC_Chan0),来读取热电偶标签,我可以看到数值的变化。我已经尝试使用第三方OPC Client,并且能够正常通信,所以我知道TOP OPC Server是能够正常工作的。但是,如果我使用Serve Explorer 通过标签引擎(OPCLabVIEW»TempMeas)到之前配置的DSC模块上去,数值又不更新了。同时需要提醒的是,标签的状态时Good。

        从上面看来, National Instruments Tag Engine 并没有正确读取数值,尽管死区是非常的小,并且数值变化的不是很大。目前的结果是这样的:当我尝试在LabVIEW DSC 模块上读取标签的时候,不能看到数值的变化。怎么破?



解答:

        这对于TOP Server来说是一个一直存在的问题,并且之前也有发现。如果组死区(group deadband)被启用的话,需要启动它的缩放标签(不是DSC 模块的标签)。而这在LabVIEW DSC模块中是默认使用的。

所以,下面有两种方案可以解决这个问题。

方案1:启用 TOP Server标签的缩放功能(Scaling)。这可以通过双击TOP Server右侧窗格的相关标签,来弹出标签属性窗口。在缩放标签中,选择现行缩放,并保持其他设置为默认状态。在OPC 服务器的层次,需要将“缩放”置为激活状态,来保证兼容组死区(Group Deadbands)。如果缩放没有被激活,TOP Server就不会设定一个相关的区间。于是,它就会使用一个默认的区间,这个区间包含全部的数据类型。举个例子,如果你使用一个16位的标签,范围应该是 -32768到32768。因此,死区被应用于该整个范围。通过应用缩放,一个较小的数据范围可以被人为指定。

方案2:不对缩放进行开启,您可以在客户端设置死区(在本案例中为LabVIEW DSC 模块)为0。在LabVIEW DSC 模块中,需要在Tag Configuration Editor中进行设置。双击标签,进入相关的标签中。在I/O组中点击编辑按钮,将死区设置为0。这样数据就会立刻更新了。您可以同样尝试一个非常小的死区,您同样可以看到数据的更新。



相关链接:

附件:





报告日期: 01/02/2004
最近更新: 02/24/2014
文档编号: 351CAPDS