PDMS软件的二次开发及应用姓名:王晶指导老师:郭琳实习单位:建造公司技术部电议室毕业院校:哈尔滨工业大学所学专业:软件工程2010 年 12 月摘要PDMS软件在许多行业中流行,适应多种行业建模,具有一定的普遍性。
PDMS软件能够进行的三维建模可直接生成自动标注的分专业或多专业布置图、单管图、配管图、结构图、支吊架安装图,并抽取材料等。
PDMS软件的引进为公司带来了更多的方便提高了效率和准确度,但由于该软件的普及性特点注定了对本公司所涉及的工程项目不具备针对性,虽然带来了巨大的效益,同时对于具体项目而言仍然不可避免的存在着某些繁琐复杂的手工工作程序。
本课题使用PML语言对PDMS软件进行了二次开发,提供了多个扩展功能,通过与原软件风格相融合的图形化形式展示给用户,操作方便,不但解决了工作中存在的许多重复、耗时的工作,提高工作效率,增强计算准确率,也成为PDMS的二次开发的真实实践,掌握一种新的技术。
对PDMS软件新增功能的使用将为公司带来更高效、更省时的收益,并将随着该技术的不断完善、熟练,成为公司的一种商品为公司带来新的效益。
关键词:PDMS;PML语言;文件存储;Add-ins;目录摘要 (I)目录 ............................................................ I I 一概述 . (1)1.1 课题背景及研究目的 (1)1.1.1 与课题相关的研究综述 (1)1.1.2 课题研究目的与意义 (2)1.2 课题研究的创新点 (2)二研究方案 (5)2.1 技术方案 (5)2.1.1 PDMS运行机制及二次开发技术 (5)2.1.2 PML功能及构成 (7)2.2 技术关键 (7)2.2.1 PML中Add-ins的应用 (8)2.2.2 PML文件存储机制 (8)2.2.3 PML对象的应用 (10)三 PDMS扩展功能介绍及应用 (11)3.1 PDMS扩展功能界面展示 (11)3.2 电缆路径自动敷设及电缆长度统计功能 (12)3.3 托架上某截面电缆信息的展示功能 (15)3.4 填充率计算及护管选型功能 (16)3.5 错误路径删除及打印单个路径图纸功能 (18)3.6 相关联的其它扩展功能 (19)四总结 (20)五参考文献 (21)六致谢 (22)一概述1.1 课题背景及研究目的PDMS软件作为一个三维工厂设计系统应用于五十多个国家,其中石油、化工、制药行业用户占42%。
它是一款一体化多专业集成布置设计数据库平台,用于解决设备、结构、支吊架个专业建模设计,各专业间充分关联联动。
为提高工作效率减少现场施工修改率本公司引进该软件进行工程项目建模。
1.1.1 与课题相关的研究综述应用PDMS软件进行的三维建模可直接生成自动标注的分专业或多专业布置图、单管图、配管图、结构图、支吊架安装图,并抽取材料等。
同时该软件能够进行碰撞检查、数据一致性检查等,保证模型的无差错设计和无碰撞施工。
PDMS软件在许多行业中流行,适应多种行业建模,具有一定的普遍性。
本公司引进该软件,通过三维模型的建立使个专业统一于同意模型中,模拟现场工程,减少了个专业独立完成设计时带来的碰撞,指导各专业装置的切入,为工程设计与现场实施提供了便利,提高了工作效率,减少了图纸修改频率。
对于PDMS的二次开发项目在国内外已早有先例,针对不同行业、不同需求所进行的二次开发成果也是多样。
AVEVA PDMS 12.0版本具有可扩展的特性,可以用来定制功能和图形用户接口,从而增添用户需要的新功能。
1.1.2 课题研究目的与意义尽管PDMS软件的引进为公司带来了更多的方便提高了效率和准确度,但由于该软件的普及性特点注定了对本公司所涉及的工程项目不具备针对性,虽然带来了巨大的效益,同时对于具体项目而言仍然不可避免的存在着某些繁琐复杂的工作程序。
比如要查询电缆清册、厂家资料、电缆布线图等材料才能查清一条电缆敷设的路径过程,要通过复杂的计算过程才能估算出电缆的总截面积,从而得到托架的填充率,进行护管及MCT的选择等。
以上各项工作目前多采用人工方式,由于一个工程项目中有很多重要的设计工作,而上述那些辅助项目工作却占用了大量的工作时间。
同时不但劳动强度很大,工作效率较低,而且很容易出现错误,使员工在工作时产生烦躁情绪,甚至影响工程进程延误交工时间。
为此我们提出对PDMS软件进行有针对性的功能扩展,完成对PDMS 的二次开发并将成果应用于实际项目中。
通过实践得到的效果也十分明显,完善了PDMS有关电缆方面的功能,节省了工时,减少员工的计算量,并通过打印路径图纸指导现场施工,从而大大提高工作效率,降低劳动强度,为工程师节省了宝贵的时间去完善其他更为重要的工作。
1.2 课题研究的创新点本课题是在PDMS软件的基础上对电缆相关的扩展功能进行开发,并应用于实际项目中。
尽管该软件已经应用很久,工程师们对其功能操作已经非常熟练,但本课题是是首次尝试对其进行功能扩展的开发,在实践过程中掌握关键技术完成与电缆相关的一些功能的同时也为以后的功能扩展奠定基础,从而解决应用过程中的繁琐工作以及现有模型中的不足问题。
本课题中涉及到的创新功能有以下几方面的内容:1. 在原有软件的菜单栏中新增菜单,可以从菜单中选择菜单项从而进入功能对话框。
为工程人员操作方便还给出了便捷的工具栏选项,通过点击工具栏就可以进入功能对话框,图形化界面使工程人员操作易于操作,也提高效率。
(兼容,可以随PDMS的升级一起升、界面友好一致,)2. 通过一些设备、托架、转折点等信息的填入,实现自动敷设电缆路径的功能,并计算出所用电缆的长度,为现场施工提供可供参考的数据。
3. 通过选择某段托架显示该段托架上所经过的所有电缆信息,电缆信息以列表的形式出现,并可以添加、移除某条电缆信息,从而可以得到该段托架周围某处的电缆情况,可以直观的结合设备位置完成某一托架位置电缆排布图的绘制。
4.等电缆穿舱件的选型及定位工作。
5.可以将设计好的单根电缆路径信息以三维图的形式打印出图纸,标注特殊点关键点电缆拐弯的位置,可以供现场施工人员直观的理解电缆敷设路径及电缆两端所接的设备位置。
电缆布线施工的有力依据,知道了解电缆的敷设过程。
本课题所开发的各项功能应用于陆丰项目中,在实际操作过程中对应用该扩展工具前后的相关操作做了对比。
表2-1 扩展工具使用前后对比表对比功能使用扩展功能前运算过程及时间使用扩展功能后运算过程及时间向并查找电缆清册、电缆布线图等资料确定电缆的走向,手动沿着托架进行查看。
用时:3-5分钟/根只需选中起至位置,托架组等信息即可自动敷设路线。
用时10秒/根通过电缆布线图、电缆清册等信息确定某段托架经过的电缆信息,查看厂家资料确定每个电缆的直径,计算所有电缆截面总和与所选处托架的面积相比,或者根据护管选型原则计算护管截面积。
用时:4-8分钟/根只需选中某段托架,添加或移除某些电缆信息,点击计算按钮即可计算出结果。
用时:10秒/根通过每根电缆在使用扩展工具前后操作过程和用时的对比可以看到明显提高效率,由于一个工程中涉及到的电缆数量巨大,因此在实际应用中会节约更多的时间,可以用于处理更为重要的工作,从而减少错误的发生。
此外,人工进行计算需要精神高度集中,容易出错很可能会发生错误,而计算机的运算准确性更高。
二研究方案2.1 技术方案PDMS是Plant Design Management System的缩写,以其强大的功能、全新的概念,深受用户喜爱,在业内享有极高声誉,领导工厂设计新潮。
2.1.1 PDMS运行机制及二次开发技术PDMS具有一下特点:1.三维实体建模2.专业多用户的工厂设计系统3.一个设计模型(数据库)可以输出多种设计图纸、报告4.交互设计过程中实时三维碰撞检查5.精确标注,模型修改后标注自动更新更重要的是PDMS软件提供了性能强大的可编程宏语言——PML,用于用户根据需要自行定制扩展功能。
隐藏在PDMS强大功能后面的是简单和具有逻辑性的数据库结构,它的数据库是基于严格的层次和树状结构搭建,如下是数据库的层次结构图。
图2-1 PDMS数据库层次结构图在对PDMS进行二次开发的过程中了解、熟悉这种数据库结构,并遵循、使用这种结构能够为开发带来便捷,也使开发扩展功能成为可能。
在二次开发过程中还要熟悉数据库的几个基本概念:1.Elements——数据库中的每一个项目叫做一个元素,每一个元素都有属性保存它的详细信息,不同类型的元素属性也不同。
2. CE=current element表示当前元素,当前元素可以是一个元素,也可以是元素的集合。
3. Types——数据库中的每一个元素都有一个Type属性,Type 相同的元素都有相同的属性。
4. Owner/Members从属关系。
了解这些概念并使用在开发过程中能够确定元素的属性、类型等一些特性,运用这些特性来对当前元素进行各项操作,从而完成各种扩展功能的开发。
2.1.2 PML功能及构成PML即可编程宏语言,是Programmable Macro Language的缩写。
它是基于面向对象概念的编程语言,专用于PDMS软件的开发及二次开发。
PML语言支持用户自定义对象类型,可以与PDMS软件无缝连接,具有丰富的内置函数、方法及对象,可以进行对话框、菜单等窗体的编写等。
Macros即宏是包含PDMS命令序列的ASCII文件,可以通过宏命令$m在PDMS中执行。
PML包含了变量、判断语句、循环、错误处理、文件处理等信息。
变量用于存储数值且必须有名字,变量的数值可以改变但名称是固定的。
学习PML语法可以进一步了解各种定义、规范,熟练应用各种对象及对象的成员、方法等,因为PDMS二次开发的基础就是这些对象方法的使用,并可以举一反三自定义所需要的对象、方法等用于扩展功能的实现。
2.2 技术关键在PDMS的二次开发过程中,经过学习与了解确定了开发语言为PML语言,由于该软件的开发没有开发环境可以但却是基于文本的开发,因此选用了文本编辑软件EditPlus软件进行编辑,为开发带来很大方便。
在开发过程中应用了Add-ins技术、PML对象应用、文件存储等关键技术。
下面依次进行关键技术的介绍。
2.2.1 PML 中Add-ins的应用PML中的Add-ins是用来向PDMS模块的应用主菜单中添加菜单、工具栏等,它的主要功能包括:1.作为PDMS应用中的主菜单栏2.定义菜单和工具栏3.向应用界面中添加菜单域和工具栏项4.从应用界面中移除菜单域等我们可以在design模块下通过定义的add-ins加载自己的程序到bar menu中,完成自定义的功能引导,方便工程人员操作软件进行新工具的使用。