基于WebLink的Creo与PDM集成研究与开发
2020-07-20张创建
张创建
Creo是美国PTC公司推出的一款CAD/CAM/ CAE设计软件,它整合了Pro/Engineer、CoCreate和ProductView,已成为国内制造企业最普及的标准软件之一,随着Creo设计产品逐渐增多,对既有的产品设计数据实现分类管理、零组件重用、快速检索和有效地权限管控,需采用PDM进行管理,PTC公司的winchill产品可以有效地管理Creo产品数据,为了提高国内企业使用PDM软件的国产化率和提升国产工业软件水平,本文对企业自研PDM与Creo之间的集成进行了研究。
一、集成技术方案
(一)Creo二次开发语言选择
C r e o对外提供的开发语言有C++、J a v a、JavsScript等,在考虑开发包授权、功能满足、部署难易成度、学习成本等因素后,选择完全免费和容易上手的WebLink开发,即采用JavsScript调用Creo内置API进行自主功能开发,经调研Creo提供的JavsScript接口完全满足Creo与PDM系统间的集成需求,这样就不需要考虑开发包的授权问题,可以节约成本。
(二)Creo与PDM集成技术方案
图1 集成方案流程
Creo与PDM集成技术方案流程如图1所示,通过Tomcat服务发布系统集成JSP页面,在Creo内置浏览器中运行此交互页面,页面的元素通过js调用Creo API,实现设计模型的信息提取,为了提高系统的扩展性和提高处理复杂业务的能力,选择在后端(Java语言实现)做数据业务处理和调用PDM接口,前端只做信息的收集与展示,前端通过Ajax调用Servlet提供的后端接口。Creo与PDM系统间的信息双向传递都是通过后端主动调用PDM对外接口的方式实现。
二、集成信息
(一)获取模型属性
模型属性包括固有属性和自定义属性,为了提高模型新增、编辑、删除自定义属性的效率,开发了新增、编辑、删除自定义属性交互界面。主要用oSession. GetModelFromDescr 获取模型,model.CreateParam添加属性。
(二)获取产品Bom
怎样把Creo设计模型产品信息传到PDM中,需要开发提取导入功能。功能需求有:提取Creo模型属性到PDM,以方便查看零件对象、统计报表输出、传输到Erp等,使用GetModelFromDescr获取装配体,ListFeaturesByType获取组件,GetParam获取属性。
把Creo模型物理文件(格式為.prt或者.asm)上传到PDM数据仓库,在PDM客户端以零件或者产品附件的形式存在,可使用AutoVue预览。
为了更好地处理业务和实现前后端分离,我们把传输文件功能放到后端控制层用Java编写,前后端交互使用Servlet,主要用到HttpURLConnection对象,url为PDM文件服务中的上传文件接口地址,请求方式为Post。
(三)轻量化模型
为使三维模型在不同平台下可重用、可视化和复杂产品方便进行装配、仿真,需对Creo模型进行轻量化处理。轻量化中性格式有U3D、STL、JT、3DXML等,其中U3D是由3D工业论坛同欧洲计算机制造商协会联合推出的轻量化3D标准通用文件格式。通过去除与模型显示无关的非几何信息来简化三维模型,只包含了与工艺模型有关的显示数据:产品结构、几何、物理属性和产品制造信息等,提高了三维模型的显示与处理效率,使得三维模型的应用延伸到了产品全生命周期。本文研究采用U3D格式,采用调用宏命令方式导出U3D,主要用到了session.RunMacro 函数。
(四)获取PDM管理已存模型
为了快速查询并重用已有的设计模型,Creo需要通过JavaScript调用PDM接口,从PDM数据仓库中搜索并下载到本地工作目录,然后打开模型。此过程中,首先前端控件通过Ajax调用后端PDM提供对外查询接口,选择所需要的模型,然后调用PDM文件服务接口,捞取指定的模型物理文件下载到Creo本地工作目录,最后前端调用函数打开设计模型。主要用到了目录函数GetCurrentDirectory和 打开模型函数pwlMdlOpen。
三、集成应用
研发设计人员在PDM领取设计任务后开始设计工作,打开Creo,在内置IE浏览器(可修改)中输入集成页面地址显示如图2所示。设计前,可设置指定工作目录;设计过程中,可便捷地添加、编辑或者删除设计模型的自定义属性比如材料。
图2 集成交互页面
四、结语
本文探讨了基于WebLink的Creo与PDM集成方案,对Creo与PDM系统间集成信息的种类以及集成信息信息获取方式进行了说明,通过应用证明了方案可行性。由于时间限制,本文所探讨的Creo与PDM系统间的集成研究尚显粗浅,后续将深入研究。
作者单位:南京优倍自动化系统有限公司北京分公司