阀门 > 资源 > 阀门应用 > 正文
资源

基于外部链接的法兰CAD系统开发

来源: 上海阀门 时间: 2012-05-20 点击: 4,640

1.引言

法兰连接结构由法兰盘、密封垫、螺栓等组成,是管路系统重要的连接形式,在阀门及管道设计时,法兰的标准、结构选择以及图样生成是一项重要且烦琐的工作。法兰依管路的不同,涉及的标准规范繁多,结构多样,如何设计一种快捷便利的,含有标准数据的通用法兰生成程序,成为阀门等专业CAD系统设计中一项较有意义的工作。

2.法兰连接概述

目前,我国管路系统常用的法兰标准有:中国国家标准:GB/T 9112~9124;GB/Tl 7241.1~17241.7;GB/T15530.1~15530.8;中国机械行业标准:JB/T74~86;中国化工行业标准:HG20592~20626;中国石化行业标准:SH 3406;美国标准:ASMEBl6.1;ASMEBl6.5;ASMEBl6.47;日本标准:JIS B2220;国际标准:ISO 7005-l;欧盟标准:ENl092-l~1092-4;此外德国标准、英国标准、前苏联标准等也有一定程度的应用。

由于历史的原因,目前法兰标准中的公称压力和公称通径形成了欧、美两大体系,尺寸参数互有借鉴但存在较大的不同,很难通用。程序设计时必须分开罗列,分别组织,数据量十分庞大。

法兰依类型可分为:整体法兰、对焊法兰、承插焊法兰、螺纹法兰、平焊法兰等,根据密封面形式又可分为:平面法兰、突面法兰、凹凸面法兰、榫槽面法兰、环连接面法兰等,在数据组织,图形生成和界面设计时必须考虑到相互的组合多样。实际上,法兰的结构形式并不仅限于这些,如阀门的中法兰结构就是一种非标准的法兰连接,软件设计中也应考虑这类工程应用。

作为一种标准管道附件的辅助设计工具,软件系统还应体现:数据准确,操作简洁,表达合理、灵活,编辑方便,具有可扩展性等特点。

3.数据组织

从CAD开发的角度来看,法兰具有结构简单,图形表达方便,标准化、系列化程度高的特点。但法兰涉及的标准繁多,数据量庞大,数据的有效组织,快速检索、调用,二次编辑,以及用户自定义等,成为法兰CAD系统开发的难点之一。最有效的办法就是引入数据库系统来管理法兰数据,由于CAD系统通常都不具备功能强大的数据库功能,只有寻求外部数据库链接,数据库链接是CAD中连接图形对象和数据的有效方式,它比AutoCAD环境中的其他的数据引用方式更加灵活。目前,可供选择的关系数据库产品有很多种,如:VF、SQL、Oracle、Ac-cess等,其中Access是Microsoft Ofrice的组件,接口丰富,适应性强,应用更加广泛。法兰数据虽然繁多,但数据结构并不复杂,使用Access作为数据管理工具完全能够满足系统要求。

4.程序结构

4.1 程序流程

本系统集成于AutoCAD环境,主程序及图形生成程序采用Visual Lisp完成,人机界面采用Delphi编写,Access负责数据库操作,流程如图所示。

系统流程图

首先在AutoCAD环境下由菜单运行Lisp主程序,系统自动调用由Delphi控制程序生成的人机界面,人机界面接受用户的交互式操作,根据用户选择由数据库访问程序访问Access数据库,提取所需数据,最后由绘图参数接口程序将绘图所需参数传递给参数化图形生成程序,生成图形。

4.2 主要技术特征

程序设计了标准数据检索和自定义参数管理系统,标准数据库结构不可更改,自定义参数管理系统对用户开放,具有无限量数据扩充功能,适应多种工程应用。所有操作栏目具备记忆功能,建立“名词术语库”以方便操作和规范输入。

程序中引用了“成组技术”,对法兰亚元进行编码,以便于数据的归类组织。

4.3 Delphi程序的调用

法兰CAD的开发涉及大数据量操作和多级复杂界面的设计,一般图形开发工具难以完全满足要求,我们尝试了选择Delphi7语言设计界面和数据库操作程序。Delphi是:Boland公司推出的可视化编程环境,它提供了方便、快捷、高效的windows应用程序开发手段,将面向对象的语言功能和方便的可视化开发环境紧密结合在一起,并且具有强大的数据库处理功能,Delphi程序的调用并不困难,只要Lisp主程序通过startapp函数来激活即可,如(startapp”delphi控制程序.exe”)。

但Lisp程序一旦启动了外部应用程序,就不能对它进行控制,造成Delphi控制程序运行中会出现拾取设备的点击错误,因此,在Delphi控制程序中对目标范围要作强制限定,语句实例:

……

var pos:trect;

begin

post:=人机界面控件.BoundsRect;

mapwindowpoints(handle,O,pos,2);

clipcursor(@pos);

end;

……

4.4 参数传递

参数在系统中是由数据库传递给Delphi,再由Delphi传递给Lisp。

数据库与Delphi之间的参数传递是由Delphi单方面控制实现的,Delphi通过自身的ADO组件可以轻松解决这一问题。

Delphi与Lisp之间的参数传递必须通过中间媒介实现,这个中间媒介就是数据文件。首先Delphi将经过处理的编码信息和由数据库传递过来的法兰尺寸参数保存到数据文件中,然后Lisp通过读取数据文件中的编码信息和法兰尺寸参数,破解编码信息,调用绘图子程序,依照法兰尺寸参数生成图形。

Delphi参数存储语句段:

……

var myf:textfile;

if fileexists(数据文件)then

deletefile(数据文件);

assignfile(myf,数据文件);

rewrite(myf);

writeln(myf,edit.text);

……

Lisp读取参数语句段:

……

(defun getfile(filename/s s_Line SS_line)

(setq s(open filename”r”))

(while(setq s—line(read—line s))

(setq s_line(list s_line))

(setq ss—line(append ss—line s—line)

)

……

5.界面设计

人机操作界面采用多级弹出式对话框界面,在AutoCAD中,对话框设计一般采用DCl,语言,但由于DCL语言不是可视化编程语言,在形成复杂界面和使用数据库关联组件的时候显得力不从心。而Delphi丰富的可视化编程工具和强大的数据库关联组件,使这部分工作变得轻松和有效。

操作界面主要分为法兰结构生成界面和法兰参数维护界面。

在法兰结构生成界面中,用户确定“材料大类”、“标准类型”、“法兰类型”、“密封面”、“压力等级”,系统将自动显示法兰亚元图,并与数据库实时通讯,在参数列表中实时反映符合要求的法兰结构数据,实现交互式对话操作,根据所编辑参数,可以直接参数化生成所需法兰结构图形。

法兰参数维护界面,如图2所示,主要用于参数维护,特别是非标结构的自定义操作和未纳入的标准参数扩充,普通用户借此可以建立自己的法兰结构数据库,系统将自动将其接入法兰结构生成界面,在操作上具有完全相同的形式。但在数据纳入前,要合理归类,以方便设计时的数据检索。

界面设计时要充分考虑系统的友好与容错,要有一定的提示与警告设置,并注意界面美观合理。

6.结束语

采用计算机辅助设计方法来解决繁杂的法兰结构设计问题是一次有益的尝试,开发过程中要注意开发环境、开发工具的合理选择,数据的组织,程序结构和界面设计是其中的关键,集成的工作环境,稳定的性能和开放的数据结构可以大大提高系统在工程应用中的实用性和适应性。

天沃-不锈钢截止阀,与您资料共享!

go top