PDMS二次开发(二)——小试牛刀之目录树顺序检查

需求

因为项目的实际需要,做了一个小工具,进一步验证PDMS通过.NET方式进行二次开发的能力。

项目数据在一致性检查是发现有部分元件的目录树顺序与元件在管线上的实际位置不符,例如图1和图2所示:
PDMS二次开发(二)——小试牛刀之目录树顺序检查_第1张图片
图1 目录树中的顺序
PDMS二次开发(二)——小试牛刀之目录树顺序检查_第2张图片
图2 模型中的顺序

思路

PDMS二次开发(二)——小试牛刀之目录树顺序检查_第3张图片
图3 思路手稿

有很多细节问题,比如:

  1. 如果元件之间有直管段的话,连接点坐标如何取;
  2. 如果遇到承插焊元件,连接点并没有重合,但是连接是正确的,应该如何判断;
  3. 开发过程中发现元件连接是正确的,但是连接点并没有重合,有极为细小的偏差(有的甚至是1x10E-10mm),原因是什么?这样的情况该如何判断;
  4. 直管段会穿过ATTA直接取到上一个元件的连接点,导致判断ATTA的顺序会十分复杂。

效果演示

如图4所示,间隙报警阈值是为了解决上述提到的问题3,产生间隙的原因是PDMS的坐标系有误差,与坐标原点的位置设置有关,我还没理解清楚;我设置了间隙判断,只要小于间隙阈值的连接点偏差都视为正确,在0-间隙阈值之间的偏差,给出警告提示而不是错误提示,由工程师自己判断,超出1mm的间隙都报错误。拿公司的实际项目测试了一下,找出了两个错误,见图5,觉得还是能发挥点作用的。
PDMS二次开发(二)——小试牛刀之目录树顺序检查_第4张图片
图4 小工具界面
PDMS二次开发(二)——小试牛刀之目录树顺序检查_第5张图片
图5 运行效果
PDMS二次开发(二)——小试牛刀之目录树顺序检查_第6张图片
图6 运行效果

后期改进

  1. 增加ATTA的顺序检查;
  2. 优化承插焊类型的连接点的判断逻辑;
  3. 增加自动修复元件顺序功能;

欢迎关注公众号,一起讨论数字化工厂和全生命周期材料管理知识
PDMS二次开发(二)——小试牛刀之目录树顺序检查_第7张图片

你可能感兴趣的:(数字工厂的学习和研究,PDMS)