E二次开发的三维模型质量质心批量提取技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2014年第2期 导 弹 与 航 天 运 载 技 术 No.2 2014 总第331期 MISSILES AND SPACE VEHICLES Sum No.331
收稿日期:2013-03-25
作者简介:周 培(1984-),男,工程师,主要从事数字化设计、Pro/E 二次开发
文章编号:1004-7182(2014)02-0076-03 DOI :10.7654/j.issn.1004-7182.20140218
基于Pro/E 二次开发的三维模型质量质心批量提取技术
周 培,皮 赞,郭广鑫,聂蓉梅
(北京宇航系统工程研究所,北京,100076)
摘要:基于VC2008开发环境和Pro/E 自带的Pro/TOOLKIT 开发模块进行二次开发,在Pro/E 环境下选定当前装配体中多个零部件,按照指定坐标系或零部件自身默认坐标系,进行快速提取质量质心,并自动填写到EXCEL 文档,实现了从复杂的装配体中批量提取选定零部件质量质心。
结合一个类火箭模型,验证了该技术的可行性和实用性。
关键词:二次开发;Pro/TOOLKIT ;质量质心;信息提取 中图分类号:TP31 文献标识码:A
Technique for Batch Extraction of Mass and Center of Gravity from 3D Models Based on Secondary Development of Pro/Engineer
Zhou Pei, Pi Zan, Guo Guangxin, Nie Rongmei
(Beijing Institute of Aerospace Systems Engineering, Beijing, 100076)
Abstract : A method for extracting mass and center of gravity (COG) from the selected models in batches is presented. Based on the develop environment of VC2008 and the Pro/TOOLKIT module, the mass and COG of multiple parts and sub-assemblies are extracted and then saved to an EXCEL file, referring to the default or assigned coordinate systems. Combined with a rocket-similar model, the feasibility and practicability of this method are proved.
Key Words : Secondary development; Pro/TOOLKIT; Mass and center of gravity; Information extraction
0 引 言
模型质量值大小和质心位置直接影响产品的控制和动力学特性[1,2]。
例如,对于返回式航天器或深空探测中需要进入行星大气层的航天器而言,质量值大小和质心位置会影响再(进)入轨道和飞行的稳定性,因此在进行航天器总体构型和布局设计过程中,准确地控制航天器的质量和质心为布局设计的一项重要内容[1]。
此外,质量质心数据在飞机等大型产品的研制过程中经常需要更新[3]。
通常情况下,质量质心的统计工作往往需要通过大量的人力来完成。
为减少重复性的体力劳动,提高统计工作的准确性,有必要进行二次开发,实现模型零部件质量质心信息的批量提取及数据表的自动填写。
Pro/E 软件是美国PTC 公司设计开发的三维CAD 系统,广泛应用于机械、模具和航空航天领域。
但是,目前Pro/E 4.0的质量质心提取模块有以下几个缺点:a )只能在指定坐标系下全部提取当前装配体下第1级
子集的零部件信息,不能选择性地对子装配体下的零部件信息进行提取;b )不能批量提取当前装配体下子部件在各自默认坐标系下的信息;c )所提取的信息只能保存于.txt 文本文件,不能完成EXCEL 文档中自动填写。
1 Pro/E 二次开发技术
Pro/E 二次开发技术主要有以下几种方法: a )基于Pro/TOOLKIT 的二次开发;b )基于Automation GATEWAY 的二次开发;c )基于J-Link 的二次开发;d )基于Pro/Web Link 的二次开发;e )基于VB API 的二次开发。
相对其它4种开发方法,Pro/TOOLKIT 是针对Pro/E 功能强大的二次开发工具[4,5]。
它提供了大量的C 语言库函数,能够使外部应用程序安全有效地访问Pro/E 的数据库和应用程序。
通过C 语言编程及应用程序与Pro/E 系统无缝集成,使客户和第三方能够在
周 培等 基于Pro/E 二次开发的三维模型质量质心批量提取技术
77
第2期
Pro/E 系统中添加所需的功能。
采用Pro/TOOLKIT 开发流程如图1所示。
图1 Pro/TOOLKIT 二次开发流程
2 质量质心提取思想
在Pro/TOOLKIT 开发模块中,函数ProSolidMassPropertyGet()可用来获得零件或组件的质量质心信息,可以提供在默认坐标系下或指定坐标系下的相关信息。
它返回的信息将保存在一个名为ProMassProperty 的结构中,这个结构在ProSolid.h 头文件中声明。
ProMassProperty 包含的域内容mass 和center_of_gravity
[3]分别为质量和质心(COG )信息。
为批量提取,必须对装配体中选定的零部件进行循环遍历。
此外,为使质心为指定坐标系下对应值,还必须对质心值进行坐标变换。
具体提取流程如图2所示。
图2 质量质心信息提取流程
3 关键技术的实现
3.1 位姿矩阵
在Pro/E 中,零部件自身默认坐标系在指定坐标系下的位置和姿态(简称位姿)是通过1个4×4阶矩阵来表示的。
定义为
1231
231231
2
3
0001
=
x x x y y y P z z z d d d (1) 式中 [,,]i i i x y z ,(1,2,3i =)为零部件默认坐标系的3个坐标轴在指定坐标系下的3个方向矢量;123[,,]d d d 为
零部件默认坐标系原点在指定坐标系下的位置向量。
因此,零部件默认坐标系下的任意1个空间向量点的坐标值要变换到指定坐标系下,需乘以默认坐标系在指定坐标系下的位姿矩阵。
3.2
坐标变换
因为模型的质心值和坐标系相关,所以在整个质量质心信息批量提取过程中,最关键的技术难点在于弄清楚零部件默认坐标系、装配体默认坐标系以及装配体指定坐标系三者之间的关系,从而通过坐标变换,使质心值和装配体中指定坐标系相关。
图3为相应坐标系变换示意图。
图3 坐标变换示意
图3中, ACS 为当前装配体下的默认坐标系;ACS 0为装配体下建立的一个新坐标系作为指定坐标系;PCS 为装配体上某零部件的默认坐标系。
p 为该零部件在
PCS 下的质心坐标点。
利用Pro/E 自带的Pro/TOOLKIT
开发模块中应用接口(API )函数ProMatrixInit 可获得
ACS 0在
ACS 下的位姿矩阵N ,利用函数
ProAsmcomppathTrfGet 可获得PCS 在ACS 下的位姿矩阵M 。
因为最终目的是要得到零部件在指定坐标系ACS 0下的质心q ,令PCS 在ACS 0下的位姿矩阵为L ,则q p =⋅L 。
现在问题转化为求解位姿矩阵L 。
观察图3,得如下坐标变换关系:
()p p ⋅=⋅⋅M L N (2)
导 弹 与 航 天 运 载 技 术 2014年
78
则,
1−⋅L =M N (3)
求得L ,即可利用函数ProPntTrfEval 完成坐标变换得到质心q 。
4 实例分析
为提
供友好操作界面,采用MFC (Microsoft Foundation Class )编程技术来设计对话框界面。
MFC 是VC++程序的一个重要软件资源,为开发Windows 应用程序提供强大支持。
本文中质量质心信息提取界面如图4所示。
图4 信息提取界面
根据单选按钮选择坐标系的提取方式后,点击“开始提取”控制按钮即可对选定零部件进行质量质心提取。
图5为一类火箭模型。
图6中ACS 0为新建立的当前模型下的一个坐标系,作为指定坐标系。
图5 要提取的模型 图6 建立坐标系ACS 0
为将零部件质量质心信息填写到EXCEL 文档,利用对话框类和
EXCEL 文件类在Pro/TOOLKIT 函数提取零部件质量质心后创建一个EXCEL 文件,并自动将表头(包含名称,类型,质量,质心
x 坐标,质心y 坐标,质心z 坐标)和质量质心值填写进去。
具体运行情况如图7所示,图8给出了最后的提取结果。
图7 自动将信息保存于EXCEL 文档
图8 模型质量质心信息
5 结 论
本文针对工程中实际需求,基于Pro/TOOLKIT 开发模块对Pro/E 软件进行了二次开发,实现了对装配体中选定零部件在指定坐标系或自身默认坐标系下的自动批量提取。
主要作用如下:
a )该技术可以提取当前装配体下任意子级选定零部件在指定坐标系下的质量和质心,而不再局限于第一子级;
b )该技术可以批量提取选定零部件在自身默认坐标系下的质心,从而为设计者提供最原始的质心值;
c )所提取的零部件质量质心值可以自动填写到EXCEL 文档,减少重复性的体力劳动,提高统计工作的准确性。
参 考 文 献
[1] 陈月根. 航天器数字化设计基础[M]. 北京: 中国科学技术出版社,
2010.
[2] 肖立,卢再齐,周剑雄,付强. 弹道中段目标质心位置估计[J]. 航空学
报, 2012, 33(1): 110-117.
[3] 周建斌. 基于CATIA 二次开发的飞机质量特性批量提取方法[J]. 民用
飞机设计与研究,2011(3): 48-51.
[4] Parametic Technology Corporation. Pro/TOOLKIT User's Guide[M]. USA:
PTC Company, 1998.
[5] 张利强,刘刚,顾翠,章翔峰. 基于Pro/E 二次开发的模型抽取技术[J].
导弹与航天运载技术, 2011(2): 58-61.。