proe二次开发的叉车门架数字化虚拟制造
2013-07-27 by:广州有限元培训实践中心 来源:仿真在线
proe二次开发的叉车门架数字化虚拟制造
随着计算机技术的快速发展,辅助设计、虚拟制造、数字样机等各种数字化工程得以大量运用,极大地促进了企业产品技术性能的提高,缩短了更新换代的周期。但各种通用的CAD软件在完成从产品的设计计算到结构图形的全部数字化过程中,需要设计人员熟悉掌握相关软件的运用技巧,甚至要通过自行编程才能完成有关计算任务。即使这样费力地完成设计,而一旦发现某环节出错,修改时又涉及装配体中诸多因素而产生几何关系失调问题,这样繁杂的操作环境极大制约了技术人员的使用。因此针对具体产品通过二次开发实现专业级的CAD应用十分必要。本文阐述以proe为平台、VC++为开发工具、Pro/TOOLKIT工具包作桥梁的叉车门架变量化设计计算和三维虚拟制造的全程数字化解决方案,以推动和提高工程车辆制造行业产品开发设计CAD方法的应用水平。
1 叉车门架二次开发的思路与步骤
1.1基本思路
Pro/TOOLKIT二次开发技术基于特征数据库的编程。每种特征对应1个元素树,元素树中定义特征的类型、参照信息、草绘截面、尺寸信息、位置关系等属性。完全通过编程定义几何特征构建三维模型,工作量大且较困难,因此一般先建立实体三维模型作模板,然后对其形成的特征库进行添加、删除、修改等方式的读写访问,以获取新的满足用户要求的模型。本文以proe交互式图形系统为支撑建立门架的三维构造实体模型,依托VC++程序开发系统,通过调Pro/TOOLKIT提供的功能函数,实现对门架结构特征数据库的操作,完成开发集数字化设计、元件装配、结构强度刚度的有限元分析为一体的门架CAE软件系统。
1.2特征建模
叉车门架是叉车叉取货物的起升工作装置,各种叉车门架的基本构造都是相似的,而且以垂直中心面对称。这些构造方面的特性分析显示,叉车门架系统实现CAD变量化系列设计有许多可以利用的构造特征要素,因此交互建立门架模型时要合理规划“特征”元组,以方便运行程序的操纵控制。
产品设计中的“特征”是指结构组成的I组具有特定含义的图元,表示产品一定的几何构型。依据形成实体的方式方法、位置关系等特点,通常分为拉伸、旋转、扫描形成的基本实体特征,基于实体上的孔、倒角、筋等附属特征。利用实体的对称性通过复制、镜像、阵列得到的图元编辑特征,以及反映图元位置的基准特征,其间按先后的依附性又可建立特征的父子关联关系。1个三维实体模型就是由数量众多的特征以“搭积木”的方式组织起来,因此特征是模型构成的基本单位,模型创建过程也就是按一定顺序依次添加各类特征的过程。这种特征建模的思想为操作修改和管理实体结构的图元提供了极大的方便。
合理有效地创建“特征”图元,并尽可能减少构成整个模型的特征数量,往往关系到二次开发系统程序运行的稳定性。减少特征数量具有以下优点:
(1)提高模型重绘速度再生模型时需要根据特征创建的先后顺序重绘各个特征。因此,特征越少再生重绘速度越快。
(2)模型数据库文件减小特征少,模型数据库文件相对较小,便于文件的存储和访问。
(3)方便特征的查询与修改特征越少,模型的层次结构更清晰,模型内部特征依存的关系越简单。这有利于对模型特征的更新编辑,同时能较大程度降低模型再生失败的几率。因此在使用proe进行三维实体建模时,一般应在满足结构设计要求的前提下尽量减少模型中特征的数量,方法是:
1)分析模型,选择适宜的基准,将多个简单特征的草绘截面合并为1个整体闭合曲面,从而尽可能使复杂实体特征通过创建完善的草绘截面一次拉伸形成,以减少特征数量。
2)一次特征创建中尽量合并参数相同的图元为1个特征或利用约束条件合理建立图元参数的依存关系。如在创建倒圆角时,如果一些棱边处的圆角半径相同,则应将其归并为1个特征。
3)针对结构几何形状的对称性与重复性,使用复制、阵列和镜像等方法创建特征。叉车门架是涉及众多零部件的装配系统,如果零件的尺寸发生改变,那么它在装配体中与其他零件间的位置关系必然发生改变,装配体模型中的尺寸链也需要作相应修改,这是数字化虚拟装配设计中较难处理的问题之一。
由于叉车的内外门架、叉架、货叉、起升与倾斜液压缸的布置均按其垂直中心面对称布置,因此建模时须结合编程控制的需求分析,根据门架变化设计的需求,充分利用这些特性规划零部件依存的尺寸关系链,使更改设计后的模型能保持协调一致性,从而降低编程的难度,提高程序运行的质量。所建立的门架构造模板如图l所示。
2 关键函数与程序构造
proe图形数据结构不同于VC++规定的格式,不能用c方法直接访问,需要通过Pro/TOOL广KIT提供的C函数来访问。程序设计者需要建立符合proe环境运行要求的接口程序,并按功能需求设计应用程序主体代码。程序结构如下:
#include”stdafx.h”
//引入Pro/TOOLKIT的头文件
#include”ProMenu.h”
#include”ProUtil.h”
#include”ProMenubar.h”
#include”ProWindows.h”
//用户自定义函数
int ShowMessageTest();//“f-j架设计”菜单响应函数
void ShowDrawing();//“三维图修改”菜单响应函数
CSWMJiaApp theApp;//应用程序类声明
//初始化接口函数
extern”C”int user_initialize()
{ProError status;
ProFileName message_file;
uiCmdCmdId cmd_id;
//添加菜单栏菜单“叉车设计”
status=ProMenubarMenuAdd(“叉车设计”,“叉车设计”,“Utilities”,PRO_B_TRUE,ProStringToWstring(message—file,“Message2.txt”));
//添加菜单项菜单动作函数ShowMessageTest:
status=ProCmdActionAdd(“ShowTest”,
(uiCmdCmdActFn)ShowMessageTest,uiCmdPrioDefauh,AccessDefauh,
PRO_B_TRUE,PRO_B_TRUE,&cmd_id);
//添加菜单按钮“门架设计”:
status=ProMenubarmenuPushbuttonAdd(”叉车设计”,“门架设计”,“门架设计”,
“Active ShowMessageTest menu”,NULL。
PRO_B_TRUE,cmd—id,ProString,ToW—string(message_file,“Message2.txt”));
//添加动作函数ShowDrawing:
status=ProCmdActionAdd(“ShowDrawing”,(uiCmdCmdActFn)ShowDrawing分页
uiCmdPrioDefauh.AccessDefault。PRO_B_TRUE,PRO_B_TRUE,&cmd—id);
......
retum status;
}
//应用程序终止退出函数
extem“C”void user_terminate(1
{
AFX—MANAGE—STATE(AfxGetStaticModuleState());
//模式切换
if(sheetwindow!=NULL)
delete sheetwindow;//用户填加的释放动态内存
....
}
函数user—initialize()是Pro//TOOLKIT应用程序的初始化入口,其中大量调用的是用户自定义或系统库函数,相当于C中的主函数。任何同步模式的应用程序要在proe系统中加载都必须包含该函数;user—terminate()在终止Pro/TOOLKIT应用程序时调用,相当于C中的解析函数释放动态内存,也可以不执行任何动作。这2个函数都放在VC++的应用程序类中,格式固定不变。
3 应用实例
创建叉车门架数字化设计系统的目的是将门架的初始设计计算,三维零件与装配模型,强度、刚度的有限元分析等集成一体,实现快速化虚拟制造过程。图2为主控制流程图。以3 t叉车门架设计为例,输入基本参数,见图3。按“确定”按钮,进入“选择计算内容”对话框,结果以文本文件形式保存,按照窗口提示分别选择货叉计算、叉架计算、门架计算,输入货叉、叉架、门架基本结构数据,系统初步确定零部件构造与装配尺寸大小,写入绘图数据文件中。
选择主菜单“叉车设计”下的“修改三维图形”进入三维绘图建模阶段。这个阶段首先从计算形成的数据文件中读取参数,用其置换所示门架模型模板中对应的特征数据。门架模板模型创建的优劣不仅影响特征数据的查询,而且关系到模型尺寸链的正确性,也是门架二次开发成功与否的重要环节。为此在程序设计中除软件自身严格的数据检查外,还设计有人工修正数据的输入窗,可以反复进行“数据修改与模型生成”操作,直到结果满意。按上述计算结果由图1模板生成3 t门架模型。
通过proe与ANSYS的接口,将所建模型直接导入有限元模型完成结构体的静动力计算与机构动态性能分析,得到货叉应力分布图和内门架立柱位移图。有限元计算分析表明,设计结果可靠可行。
相关标签搜索:proe二次开发的叉车门架数字化虚拟制造 proe二次开发的叉车门架数字化虚拟制造 Fluent、CFX流体分析 HFSS电磁分析 Ansys培训 Abaqus培训 Autoform培训 有限元培训 Solidworks培训 UG模具培训 PROE培训 运动仿真