使用静态或临时进程对象

<< 点击显示目录 >>

主页  PVI通信 > PVI帮助信息 > PVI base system > FAQs >

使用静态或临时进程对象

一个 进程对象 可以被设置为一个临时或静态的进程对象(PVICOM函数 PviCreateRequest 或PviXCreateRequest)。

静态进程对象只设置一次,并在PVI管理器的整个运行时间内保持不变。临时进程对象是与一个链接对象一起建立的。当链接对象被释放(PVICOM函数 PviUnlinkRequest 或PviXUnlinkRequest)或PVICOM应用程序被退出时,临时进程对象也被释放了。

一个新设置的带有线路连接的链接对象会触发一个建立连接(站台对象、CPU对象)或PLC对象识别(模块对象、任务对象、变量对象)的过程。根据正在使用的线路,这个过程可能需要一些时间来完成。如果过程对象被断开,然后又重新建立,那么这个过程必须重复进行。因此,如果PVICOM应用只需要设置一次过程对象,那是一个优势。

静态进程对象在以下情况下是有优势的。

一个多次启动和停止的PVICOM应用程序,它需要大量的进程对象

对象结构应该被集中管理。在启动时(如Windows启动),一个生成器或配置器(如PVICOM应用程序)会设置所有需要的进程对象。为此,可以从一个ASCII文本文件或数据库中读取有关对象结构的信息。然后,应用程序可以再次结束。

一个接口服务器,在整个PVI管理器运行期间保持活动,并在启动后立即提供有关必要的对象结构的信息。原则上,接口服务器也可以使用临时进程对象。然而,所有的链接对象就需要在运行时保持设置。

在以下情况下,临时进程对象是有利的。

一个PVICOM应用程序不需要多次启动和停止,或者只需要几个进程对象

进程对象在PVICOM应用中只被短暂使用,而且很少需要(例如,用于执行服务)。

如果一个进程对象的连接描述在运行期间被修改(访问类型 POBJ_ACC_CONNECT),那么它和所有下属对象都应该被设置为临时进程对象。

上面提到的几点只是作为决策指导。PVICOM 应用所使用的过程对象的类型需要根据要求来决定。但是,如果有疑问,最好选择临时过程对象,因为它们更容易处理。

欲了解更多信息,请参见 静态和临时过程对象 部分。

例子。
具有多个屏幕页面的可视化是使用静态和临时进程对象的一个典型例子。

使用静态过程对象

在启动可视化时,所有对象都被设置为静态的(即只创建过程对象-没有链接对象)。

为了在屏幕页面上显示一个变量,现在必须在相应的变量过程对象上创建一个链接对象。

该变量现在将被PVI管理器/PVI线读取和监控。在链接对象的响应数据中会收到一个数据变化,并且可以相应地评估=活动过程对象。

当改变图片时,链接对象再次被清除,但过程对象仍然存在。变量读取被停用=非活动过程对象。

如果有必要多次显示同一变量,则在同一过程对象上创建另一个链接对象。这使得显示和关闭页面彼此独立成为可能。

这种方法的另一个优点是,每个链接对象可以有不同的缩放或数据类型。

使用临时进程对象

所有过程对象在启动时都是临时设置的(即过程对象已经有一个链接对象)。

如果在一个页面上显示一个变量,那么过程对象就被切换为 "活动"。

该变量现在将被PVI管理器/PVI线读取和监控。在链接对象的响应数据中会收到一个数据变化,并可以相应地进行评估=活动过程对象。

当改变图片时,过程对象再次切换为 "非活动"(即变量读取被停用=非活动过程对象)。

如果同一个变量必须多次显示,那么必须使用客户端应用程序来监测该变量是否多次显示。当不再需要该变量时,可以将过程对象切换为 "非活动"。