pdms二次开发

合集下载

pdms二次开发

pdms二次开发

基本调试方法
• 跟踪代码 • 跟踪变量 • 手工断点 • 日志文件
编码规范
• 缩进 • 变量/方法命名 • 空格/间距 • 注释 • 方法的长度 • 全局变量
PML实例2: 属性批量编辑器
设计基本界面
• member • List节点列表 • 属性列表 • 属性编辑框
属性列表
• 遍历属性 • 去掉不能修改的属性 • 筛选: 类型/名字相同 • 进一步筛选: 值相同
字符串(String)的常用方法
• 字符串长度 Length() • 类型转换 Real(),Position(),Boolean() • 大小写转换 LowCase(),UpCase() • 两端截取 After(str2),Before(str2),Substring(index) • 中间截取 Substring(index,nchars) • 替换 Replace(str2,str3) • 匹配 Match(str2),MatchWild(str2) • 分割(返回数组) Split() • 修剪 Trim()
• 内容
name: tempMenu directory: tempMenu showOnMenu: TRUE object: tempMenuObject title: tempMenu
常用控件
• Button 按钮 • Text 文本框 • option下拉列表 • List 列表框 • rgroup 单选框 • toggle 复选框
更新位置信息
• Position类型 • 相对位置/绝对位置 • 修改位置信息 • 负实体(相对父节点调整)
基本体缩放
• 如何遍历属性 • 生成修改属性的代码
封装为函数
• 定义Function • 文件存放位置 • 调用方式 • 提取参数 • 封装缩放的代码

16165836_PDMS二次开发在海洋石油平台电缆模块设计中的应用

16165836_PDMS二次开发在海洋石油平台电缆模块设计中的应用

,!)%,
海洋工程装备与技术
第$卷
图 电 !! 缆列表显示
;6:/!!W6CA8BM0DGB=8186C2
缆托架填充率计算功能和护管的选型功能"在要计 算填充率的托架上点击填充率按钮"通过插件内部
!!
源码的计算显示出该段托架填充率值"为电缆布线 提 供 敷 设 依 据 "确 保 电 缆 布 置 设 计 满 足 规 范 要 求 " 保障海油平台运行的安全性&填充率计算画面如 图#所示&
通 !+# 过 菜 RB=812008 单查看电缆托架上某段 托架截面电缆信息 & -%. 信息列表栏内显示经过该段 托 架 的 电 缆 "包 括 电 缆 编 号 *电 缆 名 称 *电 缆 型 号 * 电缆外径等&可根据该段托架进出电缆的情况"通 过添 加*移 除 按 钮 修 改 和 调 整 电 缆 列 表"如 图 ! 所示&
@!7GQF 二 次 开 发 功 能 应 用
二 UWV] 次开发是基于其专用语言 UVX来实 现的&本文通过 UVX语言对 建 UWV] 模软件进行
通过 UVX中的 编 *>>,69C 程可向 UWV]模块 主菜单中增加扩展的菜 单 项*工 具 栏 等&*>>,69C 技术主要功能包括)为 UWV]应用添加主菜单栏' 在应用中自定义菜单和工具栏'在应用界面上增加
法"可以通过编程代码对菜单*对话框*窗体等进行 创建和编写"用以实现不同的功能&
通过 UVX这些对象*方法的使用"实现 UWV]
图-!文件位置及命名定义
;6:/-!;68180GB2609B9>9B@69:

CAD与PDMS数据传递及联动操作应用研究

CAD与PDMS数据传递及联动操作应用研究

2 PDMS 二次开发方式
PDMS 有 两 种 常 用 的 二 次 开 发 方 式,即 PML 和 .NET.PML(Programmable MacroLanguage) 是一种面向对象的脚本语言,只能在 PDMS软件内 执行.PDMS软件 自 带 的 很 多 程 序 就 是 使 用 PML 开发的.使用 PML 二次开发的优 势 是 运 行 前 不 需 要 编 译,可 提 高 开 发 效 率;不 足 之 处 是 相 对 于 .NET,其功能较 少,不 能 进 行 内 存、指 针 和 通 讯 操 作..NET存 在 两 种 实 现 方 法,即.NET Addin 和 PML .NET,主 要 是 在 VisualStudio 环 境 下 使 用 C#进行二次 开 发.通 过 PDMS 提 供 的 接 口,利 用 C#可读取/修 改 PDMS 数 据 库 内 容. 使 用 C# 进 行二次开发的优势是可借用微软.NET 内丰富的类 库,进而大大扩增 程 序 功 能.不 足 之 处 是 程 序 调 试 不方便,C#编译 好 的 dll文 件 被 PDMS 加 载 后,不 能 卸 载 ,因 此 不 能 对 程 序 源 码 实 时 修 改 .
第2期
李 凯等 CAD 与 PDMS数据传递及联动操作应用研究
������ 9 ������
可以和有另一端句 柄 的 进 程 通 信,对 于 两 个 进 程 之 间的通讯我们采用命名管 道(NamedPipe),其 具 有 简单高效的特 点,非 常 适 合 作 为 CAD 和 PDMS 联 动操作的通讯方式.
(1)调用同一个 DLL(动 态 连 接 库),DLL 中 的
全局数据 可 以 被 调 用 DLL 的 所 有 进 程 共 享,虽 然 可以通过 DLL 进 行 进 程 间 数 据 共 享,但 从 数 据 安 全的角度 考 虑,并 不 提 倡 这 种 方 法,而 且 在 实 际 应 用 中,采 用 这 种 方 式 实 现 软 件 之 间 联 动 的 难 度 较 大 ,稳 定 性 较 差 .

一个PDMS中的PML二次开发程序-结构平台委托的自动生成工具

一个PDMS中的PML二次开发程序-结构平台委托的自动生成工具
… … ~ … “ … 一 —
i 痔 母 嚣 稚薅 辘 审 蝴葡 磁 堂 静 菱 鞲 糍 普扭 舞 煮 稚
i j
一 { …… … ~ …


根据管径判断开洞太小
… … … … …

撮摇智控判断开洞替载

霉 熟 礁 。
% 舄| 祷毒≥ 蔫霉罄
豳描

{ ——————————————— l _ … 一~ 一~ … … 一… 一 龟 找到范围内平台荷载点
’ _

¥ - H _
— —
q I q Ⅷ _ 目 口
— — — —

{ j ;










…一…~ 一 …’ …
蔷 噶 蔷
情况, 校审及后期会签 的工 作量 大 , 且修改不便。 针对 以上 问题 , 我们考虑开发一 个应用程序从P DMS 工厂三维





曼 … … 曼 … …… 一 … …~… 鐾 一
褒 蓥掀壤


Hale Waihona Puke 模型 中直接生成给结构专业 的平 台委 托资料 , 通过进一 步的开发 , 将 来也可生成其他专、 I J , 委托资料 。
中 图 分类 号 : TP 3 1 1 1 文献标识 ̄ B - : A 文章 编 号 : 1 0 0 7 — 9 4 l 6 ( 2 0 l 7 } 0 9 — 0 1 7 4 一 ( ) 2
1引言
( 1 ) 如何判断管道是 否穿洞 : 解决 方 ’ 案: 利用P M1 找 所 仃平台 范 闻内直管段( TUB I ) , 然后判断直管段 , 如果直管段 - j . 分别 化工 及炼 油设 计中 , 管道设计专业 的工作 主要 包括 两部分 , 一 位于 平台上下两侧 , 则判断其为穿洞。 ( 2 ) 如何判断管道”洲 人小: 解 是搭建工厂三维模型 , 生成施工 图纸和材料报表 , 二是 向各专业提 决方案: 首先判断管道外径( a b o r ) , 然J f 『 彳 判断管道保温厚馊 , 史 足否伴 交委托资料。 在委托资料 中, 工作量最大的是 向结构专业提交 的平 由于不同工艺包 中埘伴热及保 温的描述不问 , 所 以增加 r单独 台委托资料 。 目前 , 同内绝大多数设计院管道设计专业 向结构专业 热 , 判断保温的 白选命令。 ( 3 ) 如何判断荷载点 他置 : 解决方 案: 搜_ j . 所有 的委托还停 留在纯 一 : 维规划阶段 , 不仅要在模型 中对平台上存在 的 在平 台上方2 米范围 内的 的承重 支架( 按照逻辑支架的类 进行设 大量 管道穿洞及简载点进行测量 , 还要在C A D中进行大量重复 的绘 , 并 记录其坐标 , _ 判断为荷载点 , 增 加 门定 义_ 茼 载点功能 , 对未能 编辑工作 , 以 ・ 个冷 换构架为例 , 二维绘 图往往需要一 周甚至更 置) 罐 饔 蔓 判断的荷 载点 , 可手动 毒 蓦 龉 一 击模型添加。 ( 4 ) 如何 门动 ’ 台 f ‘ 洞: 解 长时间 , 而且 由于 人 r 输入量较大 , 常存在漏掉荷载点或者开洞 的

二次开发在PDMS设备建模中的应用

二次开发在PDMS设备建模中的应用

二次开发在PDMS设备建模中的应用作者:江保军鲍景明翟家海杨明伟来源:《数字技术与应用》2020年第08期摘要:本文首先对PDMS软件的设备建模方式进行了概述,同时比较了不同设备建模方式的特点,结合PDMS软件的二次开发方法,重点介绍了.NET二次开发技术在PDMS设备建模中的应用,通过典型的示例代码,详细描述了二次开发的流程,与软件自带的设备建模方法相比,通过二次开发,可以大大提高设备的建模效率。

关键词:设备建模;二次开发;PDMS中图分类号:TP311.52 文献标识码:A 文章编号:1007-9416(2020)08-0160-030 引言PDMS(Plant Design Management System)是英国AVEVA公司开发的三维工厂设计系统,自从1977年第一个PDMS商业版本发布以来,PDMS就成为大型、复杂工厂设计项目的首选设计软件系统。

PDMS软件可以通过网络实现多专业的协同设计,针对专业特点划分为多个模块,包括项目管理、元件库、三维设计、轴测图生成等,其中三维设计又包括设备、管道、结构、暖通、电缆桥架等不同模块,配管设计是PDMS软件的强项,而设备建模功能与专业的三维设计软件相比相对较弱。

由于PDMS软件开放性较好,可以通过PML或.NET等编程技术对软件的基本功能进行增强和完善,因此,可以通过二次开发技术,改善设备建模的操作方式,大大提高设备建模效率。

1 PDMS设备建模概述PDMS软件中的设备是由多个基本体Primitive拼装起来的,基本体参考设备定位点生成和定位,構成设备主要的基本体有圆柱、矩形、圆台、圆盘和管嘴等,PDMS软件自身支持的设备生成方法有以下几种:(1)基本设备模板。

基本设备模板包含立式设备、卧式设备、换热器、储罐、空冷和泵等6大类设备,基本设备模板参数不能通过界面修改,通常基本设备模板用来生成设备本体模型,需要再根据图纸要求添加和定位管嘴。

(2)参数化设备模板。

PDMS自动设置保温二次开发研究

PDMS自动设置保温二次开发研究

PDMS自动设置保温二次开发研究摘要:针对公司煤气发电三维设计的热力管道设计工作中的保温设计需要花费大量时间进行人工设置,且不能精准保证设置的保温厚度满足设计要求,采用AVEVA公司PDMS软件自带PML语言进行二次开发,利用保温厚度与管道设计温度及管径等存在强逻辑关系来研究在管道布置设计完成后统一批量进行保温厚度设置,提高工作效率。

Research on automatic setting insulation in PDMS by secondary development 正文:近年来,随着国内外三维设计软件的不断成熟,设计行业正处于由二维设计向三维设计不断转化阶段,目前电力设计行业普遍采用AVEVA公司的三维工程设计软件PDMS为工艺专业核心设计平台。

该软件具有强大的全流程设计能力,且具备一定的多专业协同设计能力。

PDMS软件具备强大的二次开发能力,可以依据自身需求,通过软件自带的PML语言进行灵活开发,更多高级功能可以依托及技术采用C#等语言进行二次开发。

管道保温设计是工艺专业布置设计工作的重要组成部分,管道保温设计需要根据管道的设计温度、管径及壁厚等相关信息,综合判定设计保温厚度与保温材料。

目前方法是利用PDMS自带保温等级属性给PIPE及BRANCH层次赋予对应保温厚度等级。

图2 开发逻辑流程图二、开发流程:1.根据设计规范要求,将二维保温厚度表转化为单列清单,形成管径+温度+保温厚度对应清单,依次录入三个TXT文档中。

图3:保温厚度表(局部截图)2.对三个文本进行综合匹配,最终得出管线的实际保温厚度,并将对应保温等级赋值给管道所有管部件(管道Pipe或Branch层次)3.开发管线批量设置功能,遍历SITE或ZONE层次的所有管线Pipe,获取他们的温度就管径属性,循环计算每个Pipe的实际保温厚度,赋给保温等级,并对Pipe下所有的管部件赋给统一的保温等级。

三、关键代码1.对温度、管径及保温厚度进行联合处理计算四、开发成品最终开发界面成品如下图所示,将整个保温功能集中放在超级工具集中供设计人员调用,分别是自动设置管线保温、批量设置管线保温以及查看保温厚度表。

利用PML语言提高PDMS建模效率

利用PML语言提高PDMS建模效率

利用PML语言提高PDMS建模效率在PDMS三维建模的过程中,利用PML语言创建一些常用命令的快捷方式,能够减少建模过程中一些不必要的重复工作,缩短建模时间,不仅极大的提高建模的效率和准确度,也为之后模型的校对提供便利。

标签:PML语言;菜单小工具;效率PDMS (plant design management system)是英国的A VEV A公司开发的一款三维工厂设计管理软件,它是以元件数据库为核心,高度参数化,并具有直观、准确、方便、灵活的特点,已经非常广泛地应用于化工、电力及海洋工程等行业。

此外,PDMS 还是各设计专业设计、建模和交流协调的平台,能十分方便地检查出设计过程中出现的“错、漏、碰、缺”等问题;尤其是在设计空间紧张、设计密度高的工程行业,使用三维建模设计,能够更高效地实现总体布置的优化。

1 PDMS常用操作PDMS是一个适用性比较强的三维设计软件,但是每个设计单位并不会应用到PDMS所有的设计功能,一些揉和到一起的功能显得有些臃肿,并不方便。

因此,设计单位需要项目管理人员针对自身需要,利用PML语言对PDMS中的一些功能进行分类和剥离,从而减少建模过程中一些不必要的重复工作,缩短建模时间,提高创建三维模型的效率和准确度。

下面首先介绍一下在日常建模过程中遇到的一些常用操作。

1.1 管线管底对齐/管顶对齐在创建项目模型的过程中,经常需要对管线进行管底对齐或管顶对齐的操作,在常规操作过程中,首先需要测量该管线的管底标高/管顶标高,然后通过菜单栏position相关命令移动至相应的位置,当类似管廊的位置需要对齐的管线命令比较多时,就要多次重复相关操作,费时费力,还经常由于取点不准确造成一定的偏差。

1.2 管线头部收尾/尾部收尾在创建项目模型的过程中,有些管线的头尾或者尾部本身没有连接关系,需要在最后一个元件或指定位置进行收尾。

在常规的操作过程中,需要点选菜单栏上的connect下的branch命令进行相关操作,费时费力。

基于微流体芯片结构的pdms二次倒模工艺研究

基于微流体芯片结构的pdms二次倒模工艺研究

基于微流体芯片结构的pdms二次倒模工艺研究下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor.I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!基于微流体芯片结构的PDMS二次倒模工艺深度探究随着微纳米技术的快速发展,微流体芯片作为一种新型的微纳技术平台,已经在生物医学、化学分析、环境监测等领域展现出广阔的应用前景。

发电厂烟风道数字化设计

发电厂烟风道数字化设计

发电厂烟风道数字化设计綦学良【摘要】针对采用工厂三维设计管理系统(PDMS)软件平台固有的供热通风与空气调节(HVAC)风道设计模式建立三维模型,精细化程度低,不能满足对烟风道零件开取材料的要求,通过基于三维设计软件平台的二次开发,在输入设计参数、布置三维模型、烟风道元件材料统计等方面,对发电厂烟风道数字化设计进行了研究.结果表明,发电厂烟风道数字化设计的应用不仅可以提高设计效率,同时能在专业间协同、设计数据传递及提取、材料统计、精细化设计和碰撞检查等方面提高设计质量.【期刊名称】《吉林电力》【年(卷),期】2018(046)001【总页数】4页(P22-25)【关键词】烟风道;数字化设计;二次开发;自动布置规则【作者】綦学良【作者单位】中国电力工程顾问集团东北电力设计院有限公司,长春 130021【正文语种】中文【中图分类】TP391.72随着发电设计行业对设计成品直观性、全专业化配合、高精细化程度、高效率的需求不断提升,以三维设计为主体的发电厂数字化设计正广泛普及和应用,其中工厂三维设计管理系统(PDMS)是较为主流的数字化设计平台之一[1]。

热机专业作为发电项目的主体专业对实体空间占位、专业间碰撞检查、高效率材料统计的需求尤为突出。

热机专业烟风道设计计算量大,烟风道零件形式复杂、多变,对空间占位的要求高;同时,零件的材料量统计项目繁多、耗时。

采用PDMS软件平台固有的供热通风与空气调节(HVAC)风道设计模式建立三维模型,已不能准确刻画零件的外形及占位,为实体碰撞检查提供有效依据且模型精细化程度低,不能满足对烟风道零件开取材料的要求,因此,针对于发电项目对烟风道设计精细化程度的迫切需求,烟风道三维设计的各类方法、体系、软件程序应运而生。

本文以基于PDMS12.1SP2三维设计平台进行的二次开发烟风道三维设计体系为例,与该软件平台固有的HVAC风道设计模式相对比分析,着重探讨发电厂烟风道三维设计的有效方法[2]。

pdms培训计划

pdms培训计划

pdms培训计划一、初级培训阶段1. 培训目标初级培训的目标是让员工熟悉PDMS的基本功能和操作流程,能够进行基本的三维设计和模型构建。

2. 培训内容(1)PDMS软件概述和基本操作(2)模型创建和编辑(3)三维设计和导航(4)标注和注释3. 培训方式和时间安排培训方式为集中授课和实际操作练习相结合。

培训时间为5天,每天8小时,共计40小时。

4. 培训评估培训结束后进行笔试和实际操作考核,通过考核者可以进入中级培训阶段。

5. 培训成果初级培训结束后,员工能够独立完成基本的PDMS三维设计和模型构建工作。

二、中级培训阶段1. 培训目标中级培训的目标是让员工掌握PDMS的高级功能和技巧,能够进行复杂工程设计和项目管理。

2. 培训内容(1)设备和管路设计(2)结构和电气设计(3)数据库管理和导入导出(4)项目管理和协作3. 培训方式和时间安排培训方式同样为集中授课和实际操作练习相结合。

培训时间为10天,每天8小时,共计80小时。

4. 培训评估培训结束后进行考核,通过考核者可以进入高级培训阶段。

5. 培训成果中级培训结束后,员工能够独立完成复杂工程设计和项目管理工作,并能够指导初级员工进行培训。

三、高级培训阶段1. 培训目标高级培训的目标是让员工深入了解PDMS的内部原理和高级应用,能够解决复杂工程设计和项目管理中遇到的各种问题。

2. 培训内容(1)PDMS数据库管理和维护(2)PDMS二次开发和定制(3)PDMS在工程设计中的应用3. 培训方式和时间安排培训方式同样为集中授课和实际操作练习相结合。

培训时间为10天,每天8小时,共计80小时。

4. 培训评估培训结束后进行考核,通过考核者可以成为公司内的PDMS专家,并能够指导其他员工进行培训。

5. 培训成果高级培训结束后,员工能够成为公司PDMS的专家级人员,能够独立解决复杂工程设计和项目管理中遇到的各种问题。

以上是一份PDMS培训计划,通过分阶段的培训来提高员工的PDMS能力和素质,从而提高工作效率和工作质量,为公司的发展提供强有力的支持。

PDMS二次开发介绍-基于.Net(C#)平台

PDMS二次开发介绍-基于.Net(C#)平台

配置文件中定义了按钮名字、命令ID,及停靠属性等。 UIC文件没有指定目录,则默认在PDMS主目录中。 除了支持工具条,菜单也可以在UIC文件里定义。
创建菜单、工具条示意
创建元素
DbElement dbCE = CurrentElement.Element; // 当前选择的元素 DbElementType dbType = dbCE.GetElementType();
PML开发方式- Hello World示意
1.编写hello.pmlfrm代码文件,放到该目录下: D:\AVEVA\Plant\PDMS12.0.SP6\PMLLIB\design\forms\ hello.pmlfrm 2.D:\AVEVA\Plant\PDMS12.0.SP6\PMLLIB\pml.index 文件中添加 hello.pmlfrm,即可自动加载该代码。 3.进入PDMS后,命令行敲入调用命令显示对话框:show !!hello,即可弹出对话框,如右图:Βιβλιοθήκη 迭代元素,按树结构方式迭代
// 先定义过滤器 TypeFilter filt = new TypeFilter(); filt.Add(DbElementTypeInstance.SITE); filt.Add(DbElementTypeInstance.PIPE); filt.Add(DbElementTypeInstance.NOZZLE); filt.Add(DbElementTypeInstance.TEE); CompoundFilter filtComp = new CompoundFilter(); filtComp.AddShow(filt); // 通过树浏览器扫描节点下所有指定类型的元素 ElementTreeNavigator navi = new ElementTreeNavigator(DbElement.GetElement("/*"), filtComp); DbElement[] tees = navi.MembersInScan(dbCE); string outResult = “ElementTreeNavigator()方式迭代元素:\n"; foreach (DbElement db in tees) { string subName = db.ToString(); string subType = db.GetElementType().ToString(); outResult += "名称:" + subName + ", 类型:" + subType + newLine; }

PDMS在石化装置埋地给排水管道设计中的应用与二次开发

PDMS在石化装置埋地给排水管道设计中的应用与二次开发

环保与要全石油化工设计Petrochemical Design2017,34(1) 58 ~6Q PDMS在石化装置埋地给排水管道设计中的应用与二次开发郝博(中国石化工程建设有限公司,北京100101)摘要:中国石化工程建设有限公司(简称SEI)在2012年提出了“数字化工厂”的概念,而三维协同设 计是“数字化工厂”的精髓所在。

给排水作为工厂系统中的一个专业,熟练运用三维设计软件成为设计人员必须掌握的技能。

结合项目实例介绍了如何利用PD M S实现埋地给排水管道的三维设计,从数据库创 建到三维建模,并对三维模型和材料汇总进行二次开发,解决了埋地给排水管道常见的碰撞多和统计材料难的问题,从而提高了设计效率和设计质量。

关键词:石化装置给排水P D M S二次开发doi:10. 3969/j.issn.1005 - 8168.2017.01.018石油化工装置埋地给排水管道可分为生产给 水、生活给水、循环给水、循环回水、稳高压消防 水、生活污水、含油污水和雨水系统等。

受装置大 型化和占地面积缩减的影响,限制埋地给排水管 道设计的因素主要有:总图地平、管廊和设备的基 础、埋地电缆和其他专业的埋地管道、重力流管道 坡度等。

从设计流程讲,给排水专业需要接受上 游专业的条件后才能开展工作。

从施工流程讲,埋地给排水管道、结构基础和电缆沟最先施工,其 工作状态是最后开展设计工作但却需最先出图。

从施工现场反馈的情况看,使用二维CAD进行埋 地给排水管道的设计,势必会造成大量的管道碰 撞和材料漏缺等问题。

由于地下管道施工要求高 且施工难度大,一旦发生设计变更势必拖延工程 进度并造成不必要的人力和物力的浪费。

随着石 化装置的日益大型化和“数字化工厂”的建设,三 维设计软件PDMS作为二维C A D的补充而逐渐 介人给排水管道设计中。

1三维设计软件PDMS简介[1—2]几家国际大型软件设计开发公司Bentley、Au-todesk、CV、英国剑桥CA D中心、Intergrah、鹰图先 后推出了几款三维模型设计软件,包括"《〇«^[1- seTM,RevitTMMEP、TEKLA STRUCTURE,CADD S,Plant Design ManagementSystem (以下简称PDMS),PDS,SMARTPLANT3D。

PDMS二次开发插件

PDMS二次开发插件

PDMS二次开发插件
PDMS软件开发工具集
1.管道流向标注工具
在draft环境中,通过鼠标在管道附近单击进行自动的管道流向标注,标注方向即为管道的设计流向。

流向标志的形状、大小和颜色可以设置。

2.创建工具栏工具
把编写好的pml程序,按照规则命名(工具栏名+工具名)后放到指定文件夹中,则在pdms中自动生成工具栏和对应的工具。

可以同时定义多个工具栏,用户不用进行任何其他操作。

3.创建菜单工具
与创建工具栏类似,用户只需要把写好的pml程序按规则命名(菜单名+工具名)后放到指定文件夹中即可,不用其他任何操作。

4.软管和线缆建模工具
在海洋平台结构和船舶上存在着大量的各种功能的软管,各软管之间及软管与其他结构物之间可能会相互干涉,从而影响施工和软管的正常使用。

软管形态模拟工具的主要功能是在设计阶段准确的模拟各个软管的位置和形态,避免软管的干涉,使设计更加合理。

主要功能如下:
建模功能
软管模拟工具可以模拟以下几种情况的软管形态:
在软管两端点所在竖直平面内指定位置有吊点
在软管两端点所在竖直平面内有障碍点
在软管两端点所在竖直平面外有障碍点
软管两端高于甲板,中间有一部分软管平放在甲板上
编辑功能
软管形态编辑功能是对建模功能的补充,是对已有的软管形态进行局部调整的工
具。

主要功能包括:
对已有软管的任意部分进行任意方向的偏移(合理的偏移)镜像已有的软管模型。

一个PDMS中的PML二次开发程序—结构平台委托的自动生成工具

一个PDMS中的PML二次开发程序—结构平台委托的自动生成工具

一个PDMS中的PML二次开发程序—结构平台委托的自动生成工具作者:李书剑来源:《数字技术与应用》2017年第09期摘要:本文介绍了一个化工设计中用于结构平台委托的程序的开发思路与应用。

关键词:PDMS;PML;二次开发;结构平台委托中图分类号:TP311.1 文献标识码:A 文章编号:1007-9416(2017)09-0174-021 引言化工及炼油设计中,管道设计专业的工作主要包括两部分,一是搭建工厂三维模型,生成施工图纸和材料报表,二是向各专业提交委托资料。

在委托资料中,工作量最大的是向结构专业提交的平台委托资料。

目前,国内绝大多数设计院管道设计专业向结构专业的委托还停留在纯二维规划阶段,不仅要在模型中对平台上存在的大量管道穿洞及荷载点进行测量,还要在CAD中进行大量重复的绘图编辑工作,以一个冷换构架为例,二维绘图往往需要一周甚至更长时间,而且由于人工输入量较大,常存在漏掉荷载点或者开洞的情况,校审及后期会签的工作量大,且修改不便。

针对以上问题,我们考虑开发一个应用程序从PDMS工厂三维模型中直接生成给结构专业的平台委托资料,通过进一步的开发,将来也可生成其他专业委托资料。

2 程序构思(1)程序原理分析。

平台委托自动生成的内容包括:判断荷载点的位置及大小,开洞的尺寸及定位,后期的自动标注和分图等,具体实现路径如表1。

(2)程序应用范围。

本程序适用于包括PDMS11.5, PDMS12.0,E3D在内的主要版本PDMS客户端。

(3)主要设计理念。

设计时的主要理念与难点如下:(1)如何判断管道是否穿洞:解决方案:利用PML找出所有平台范围内直管段(TUBI),然后判断直管段头尾,如果直管段头尾分别位于平台上下两侧,则判断其为穿洞。

(2)如何判断管道开洞大小:解决方案:首先判断管道外径(abor),然后判断管道保温厚度及是否伴热,由于不同工艺包中对伴热及保温的描述不同,所以增加了单独判断保温的自选命令。

PDMS二次开发之PML编程基础

PDMS二次开发之PML编程基础
– 方法并不改变对象的类型和对象中的值
T 参考手册Cadcentre Software Customisation Reference Manual
11
11
方法-字符串对象(String Object)
T 字符串长度 T 类型转换 T 大小写转换 T 两端截取 T 中间截取 T 分隔符截取 T 替换 T 匹配 T 分割(返回数组) T 修剪
T 系统定义(System-defined)的对象类型
– 指在PDMS中的变量类型,如Positon,Reference
T 用户自定义(User-defined)的对象类型
6
6
生成、查询、删除变量
T 使用命令行或者文本文件测试 T 通过赋值声明变量类型
!MyString = 'Hello World' Q var !MyString 显示<STRING> 'Hello World'
T 变量基本概念
– 变量用于存储数值,变量必须有名字,变量的数值可以改变,但变量名 是固定的.
T PML变量
– 在PML2中变量是一个对象(Objects) • 每一个对象(变量)有一个唯一的名字 • 每一个对象都有一套函数与之相关联,这些函数称为方法 (Methods).方法用于处理对象中的数据 • 生成对象时必须指明对象类型(Object type),不同的对象类型对 应不同的方法
T 关键字(Word) 如Type,Purpose
T 位置(Position) 如Position,Hposition
T 方位(Orientation) 如Orientation
T 方向(Direction) 如HDirection
!!ce

PDMS综合开发技术m

PDMS综合开发技术m

中国工程师培训中心中工培字(2012)第 16 号Plant Design Management System PML and .NET Synthetical Development Technology TrainingPDMS三维系统PML及.NET综合开发技术高级培训研讨班通知各有关单位:为了更好的解决PDMS二次开发工程应用中各单位遇到的疑难问题、把握开发新手段,进一步提高软件使用效率,使三维工厂设计二次开发水平达到一个新的高度。

中国工程师培训中心将举办“PDMS三维管理系统PML及.NET综合开发技术培训研讨班”。

我单位选聘了精通二次开发并具有丰富工程应用经验的胡舟老师授课。

此外培训班还安排学员相互交流及研讨和老师咨询。

本次课程以实例教学方式授课,相信通过本次短期的系统强化学习,能够使学员学有所获,有所提高。

请有关单位派相关人士参加,现将具体事宜通知如下:一、参加本次课程预备知识:最好能预先了解常用的PDMS命令/PML基本语句,要求有一定的动手能力。

如果有过PML 开发经验,并有一定的高级语言(lsp/C++/java/C#等)编程基础则更佳。

二、课程主要内容1 开发基础(本部分授课不超过一天半)1.1基本PML语言知识、基本的PML窗体开发1.2 PDMS12.0的.net API简介、.net开发环境配置/基本调试方法、常用的API介绍、.net与PML 混合编程2 通过开发实例教学部分2.1 Draft出图/ ISO图出图辅助工具开发(以PML实现为主)(根据学员情况选其一讲解)学习通过二次开发解决一些draft定制难以实现的需求/通过ISO出图工具开发熟悉PML常用语法、了解PML界面开发。

2.2 碰撞信息管理开发(分别以PML/.net方式实现)通过开发管理碰撞检查的结果信息、生成表格方便浏览,不同专业之间交流、修改以及审核。

通过PML与.net API的对比,进一步了解两种开发方式的异同以及优缺点及开发实现方式。

三维工厂设计软件VANTAGE PDMS在土建专业的二次开发及应用

三维工厂设计软件VANTAGE PDMS在土建专业的二次开发及应用

Th v lp e ta d Ap l a o fVANT e De eo m n n p i t n o ci AGE PDM S i vlEn i e rn n Cii gn e i g
D n h i , hn a dn egZ ia Z ag H n o g jn ( h i lc i Pw r ei stt H ii2 0 2 C ia) Anu etc o e s nI tue, ef 3 0 2, hn E r D g ni e
次革命。与传统的二维设 计相比 , 用三维设计方法建立 的各种 设备 、 管道 、 构的三维模 型 , 结 能直观 、 真实地反 映其在未来 电 厂中的空间关系 , 有利于布置设计的 多方案 比较 、 优化 , 通过 对 三维模 型进行碰撞 检查 , 有利于 在设计过程 中消灭设计 中的常 见病 、 多发病 , 提高设 计效率和质量 , 使无差错设计 和无碰撞 施 工成为现实 , 具有 良好 的经济效益和社会效 益。
Ab t a tT sp p rito u e h e eo me ta p l aino sr c :hi a e nr c sted vlp n nd a pi t fVAN d c o TAGE P DMS n cvle gn ei gi u nttt a a i ii n ie rn n o risi e nd u dsu s ssle ic se on
收稿 日期 : 0 1_ 4 2 5 1 1 0 作者简 介: 邓志 坚 ( 9 8 , 湖北 沙市人 ,99年毕业 于舍肥联合 16 一) 男。 18 大学电子枝术 专业 , 工程师。
①梁柱截面 ( T板 、 T 等 )遵 照现 行 《 含 双 板 : 钢筋混凝土
结构设计规范 》( B 1— 9)及相应 的结构 设计和构造手 册 , G J0 8 参考东大阿尔派 A t D uo S所列的梁柱截 面种类 , P 以及 P P K M所

基于AutoCAD和PDMS二次开发的二三维协同设计应用研究与实践

基于AutoCAD和PDMS二次开发的二三维协同设计应用研究与实践

随着计算机及图形技术的发展,工厂布置设计从传统的手工设计绘图发展到了二维计算机辅助设计和三维协同设计。

二维设计软件以AutoCAD(本文简称CAD)为代表,二维制图及编辑功能强大,容易上手,接受程度高,但缺乏协同性,无法进行碰撞检查。

三维工厂协同设计软件以PDMS(Plant Design Management System)为代表,支持多专业协同设计,实时碰撞检测,抽取平面布置图及管道ISO图。

一、二次开发简介及基本原理CAD二次开发目前有AutoLISP、、VBA等多种方式,其中AutoLISP语法简单,容易上手,目前应用较多,特别适合非软件专业的工程设计人员使用。

PDMS目前提供PML (Programmable Macro Language 可编程宏语言)及.NET两种二次开发方法。

PML是一种脚本语言,语法简洁易学,功能强大。

PDMS软件中的很多功能都是用PML编写的,在软件根目录下可以查看到源码,非常有利开发者模仿学习。

综合考虑二次开发的使用规模及后续使用者的维护扩展,本文采用AutoLISP及PML进行研究及开发。

PDMS提供了数据及模型的导入导出功能,通过“DBlist”可以把数据以PML宏文件(文档格式)导出,供其他PDMS项目使用。

因此,理论上我们只要能生成(自动或手动)符合PML语法的宏文件,就可以往PDMS里面导入数据或模型,这是往PDMS导入数据的基本思路。

二、线性构件的数据转换及应用在PDMS中,材料构件一般分为线性构件及平面构件。

线性构件主要有钢结构杆件、管道、桥架、暖通风管等。

这类构件一般需数据库支持,在PDMS 中通过坐标及数据库中预定义的等级(截面及材料)来进行定义。

因此,只要把CAD中的坐标(直线或圆弧)信息结合相应的等级属性写成宏文件,即可向PDMS中导入构件。

钢结构的转换实例:在钢结构CAD设计图中(见图1)筛选出杆件的中心线(一般中心线在单独的层,也可以编写以颜色或线型批量筛选的工具)形成选择集;分析线段的首尾坐标点,结合型钢截面定义的PML语句,写入到指定位置的PML宏文件中;循环直至把选择集中所有中心线全部写入宏文件中;在PDMS中导入宏文件,即可批量生成钢结构。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

自定义对话框
• 对话框唯一标识 • 标题/位置/大小 • 可停靠/不可停靠 • 构造方法/初始化 • 关闭对话框
界面的消息响应
• callback • 关联命令 • 关联方法 • 参数与消息
变量
• 变量命名 • 全局变量与局部变量 • 特殊的全局变量!!ce
常用的变量类型
• Real 实数 • String 字符串 • Boolean 布尔类型(逻辑) • Position 位置 • Direction 方向
每种类型(对象)都有自己的方法(Method)
变量的查看/创建/删除
• 查看 q var • 用类型创建 !str = string() • 直接赋值 !str = ‘abc123’ • 删除 !str.delete() • 特殊的变量!!ce
• Method是对象的子程序 !strNum = ‘123’ !num = !strNum.Real() • 方法可以有参数和返回值 • 函数与方法类似, 但独立存在,且全局有效
循环语句
• Do !x from 1 to 10 by 1 $p $!x
Enddo • Do !x values ce mem
一个简单的窗体程序
SETUP FORM !!FirstForm TITLE '自定义对话框’ Text .text1 ‘点击按钮’ Button .ok ‘OK’ callback ‘!this.OK()’
Exit Define method .OK()
!!alert.message(‘OK’) Endmethod
Site /TEST_SITE Handle (2, 109)
$p节点不存在 Endhandle
连续捕捉异常
Site /TEST_SITE Handle (2, 109)
$p节点不存在 Elsehandle (2, 108)
$p /TEST_SITE节点存在, 但不是SITE类型 elsehandle none
字符串(String)与数组
• 类型与对象 • 方法(Method) • .String()
字符串(String)的常用方法
• 字符串长度 Length() • 类型转换 Real(),Position(),Boolean() • 大小写转换 LowCase(),UpCase() • 两端截取 After(str2),Before(str2),Substring(index) • 中间截取 Substring(index,nchars) • 替换 Replace(str2,str3) • 匹配 Match(str2),MatchWild(str2) • 分割(返回数组) Split() • 修剪 Trim()PDMS 二次开发培训Fra bibliotekPML开发
课程内容
• PML语言基础知识 • 通过实例, 一步步介绍PML程序编写/调试/
移植技巧 • PDMS12与.net的接口简介 • dars接口简介
PML基本概念
• Programmable Macro Language 可编程宏语 言.
• PML 脚本语言
• PML2 面向对象的编程语言. 支持窗体/菜单
制为255, 12.0可达1000 • 控件属性,有少量差异
对话框
• Form对象 • 通用的方法/属性
几个简单系统对话框
• !!alert.message() !!alert.error() !!alert.confirm()
• !!fileBrowser(!directory is STRING, !seedFile is STRING, !title is STRING, !existFlag is BOOLEAN, !callback is STRING)
如何调用窗体
• 保存文件,扩展名为pmlfrm • 放在%pdmsexe%\pmllib文件夹下 • pml rehash all • pml reload form !!FirstForm • show !!FirstForm
PML语言基础
• 变量的定义与类型 • 结构控制语句
循环/条件 • 用户自定义方法/函数 • 异常处理 • 文件I/O
$p $!x Enddo
中断 跳过
• skip [ if ... ] 跳过当此循环
• break 跳出当前最里层的循环
条件语句
• IF ... Then ... [ElseIf ... Then ... ] [Else ...] Endif
• 条件语句可以嵌套
异常处理
• 异常: 意料之中的错误 • 捕捉指定的错误
• 多行注释
$( 中间加若干行注释 $)
自定义方法/自定义函数
• 函数定义 • 参数 • 全局函数存放位置 • 调用
文件处理
• File对象 • 读打开 • 两种写入方式 • 常见的IO异常 • 文件读写的限制(行 列)
版本差异(11.6/12.0)
• 几乎完全兼容 • 字符串/控件/读文件每行长度, 11.6长度限
数组常用方法
• 元素数量 Size() • 追加元素 Append(value) • 追加数组 AppendArray(Array) • 删除全部元素 Clear() • 倒序 Invert() • 搜索 Find(value),FindFirst(value) • 和并重复项 Unique()
方法(Method)和函数(Function)
$p Site /TEST_SITE节点存在 endhandle
表达式
• 算术运算符 + -* / • 字符串连接符& • 比较运算符EQ NE LT LE GT GE • 布尔运算符NOT AND OR • 括号.
注释
• 整行注释 – 例如 --这一行是注释
• 行末注释 $* !elm = !!ce $*注释写在后面
一段简单的PML宏(Macro)
Var!subs collect ce mem Do !sub values !subs $!sub $p $!!ce.fullname enddo
如何运行宏
• 宏, 就是一系列PML命令的集合 • 执行格式为:
$m filename [param1 param2 ….]
相关文档
最新文档