天天看点

AVEVA PDMS数据接口开发

<a href="mailto:[email protected]"><b>eryar</b>@<b>163</b>.<b>com</b></a>

<b>       摘要</b>:本文简要介绍<b>AVEVA</b> <b>Plant</b>/<b>PDMS</b>数据接口的开发方式。

<b>       关键字</b>:<b>AVEVA</b> <b>Plant</b>、<b>PDMS</b>、<b>DARs</b>、二次开发、数据接口

<b>AVEVA</b>提供了三种二次开发的方式:<b>DAR</b>(<b>Data</b> <b>Access</b> <b>Routines</b>)、<b>C</b>#、<b>PML</b>(<b>AVEVA</b> <b>Programmable</b> <b>Macro</b> <b>Language</b>)。

<b>DARs</b>是<b>FORTAN</b>77的一些函数,可用于创建与其它程序的接口。如编写生成材料报表程序、管子应力分析程序、生成轴测图程序等。使用<b>DAR</b>就像在<b>PDMS</b>中的命令中使用命令一样方便,对数据的导航和定位方式相似。

<b>C</b>#是<b>AVEVA</b>使用.<b>NET</b>来二次开发的推荐语言,功能是这三种二次开发方式中最强大的。

<b>PML</b>是<b>AVEVA</b>内置二次开发语言,简单易学,可以在<b>AVEVA</b>中很快开发出实用的程序。

开发<b>PDMS</b>与其它程序的接口,一般流程是从<b>PDMS</b>中读取所需要的数据,并将其传递给其它程序处理,最好还可以将其它程序处理后的结果返回到<b>PDMS</b>中。<b>AVEVA</b>提供的<b>PSI</b>(<b>Pipe</b> <b>Stress</b> <b>Interface</b>)就是这种模式。

想从<b>AVEVA</b> <b>Plant</b>(<b>PDMS</b>)中提供所需要的数据用上述三种方法都可以实现。可以根据需要选择,本文简述使用<b>DAR</b>来开发数据接口。

<b>DAR</b>提供从模型中提取属性必要的函数。这些函数分为以下几种类型:

u 初始化(<b>Initialisation</b>);

u 数据导航(<b>Navigation</b>);

u 读取属性(<b>Attribute</b> <b>retrieval</b>);

u 错误处理(<b>Error</b> <b>Handling</b>);

u 功能函数(<b>Utility</b> <b>routines</b>);

上述这些函数对数据都只有读的权限,不能对数据库进行写和更新。

<b>DAR</b>程序的运行需要<b>FORTRAN</b>的两个库文件:<b>libifcoremd</b>.<b>dll</b>和<b>libmmd</b>.<b>dll</b>,并且要确保<b>d</b>3<b>lib</b>.<b>dll</b>库文件的环境变量的正确设置。在<b>AVEVA</b>的安装目录中有个<b>dars</b>文件夹,其中有使用<b>DAR</b>的库和示例程序。参考这些文件,对熟悉<b>C</b>++的人来说使用<b>DAR</b>还是很简单的。

使用<b>DAR</b>可以导出<b>AVEVA</b> <b>PDMS</b>中的<b>DESI</b>、<b>CATA</b>、<b>DICT</b>等不同数据库中的数据。开发了个读取数据的小程序,程序运行结果如图所示:

AVEVA PDMS数据接口开发

使用<b>DAR</b>的速度还是很快的,就是对多字节文字的处理上稍有不足,即对中文的处理。

<b>AVEVA</b>提供了灵活的二次开发方式,容易编写自定义的程序。所以软件的框架还是非常重要的,好的框架让使用者易于上手,二次开发也很方便。

<b>Data</b> <b>Access</b> <b>Routines</b> <b>User</b> <b>Guide</b>

.<b>NET</b> <b>Customisation</b> <b>User</b> <b>Guide</b>

<b>Software</b> <b>Customisation</b> <b>Guide</b>

<b>Software</b> <b>Customisation</b> <b>Reference</b> <b>Manual</b>

<b>Pipe</b> <b>Stress</b> <b>Interface</b> <b>User</b> <b>Guide</b>