棘轮三维参数化设计
棘轮三维参数化设计
喻涛,舒火文
(昆明理工太学机电工程学院,云南昆明650093)
ParametricDesign
on
Three——dimensionalModelofRatchet
YUTao。SHUDa—Well
(FacultyofMechanicalandElectronicalEngineering-KunmingUniversityofScienceandTechnology,
Kunming650093・China)
攘要:暾VC+÷6。O缡程软停藩工葵,以Pro/ENGINEER二次开发接付应用程序Pro/TOOL—KIT为手段,采用动态镳接库DLL方武实现Pro/ENG{NEER、Pro/芏00LKlT和强王’c二奠者之阉磅透信,双实藐外嗤舍菲对称梯影齿戆骚的参数铝霞计。并利硝VisualC十十中的MFC
计酶要求手差万溅,企韭掇有瞬设计资源和设计环境也不同,在使用该软件进行熟体产品设计时会感蒯有些不是特别方便。基于此,为了使Pro/E能够张特定产鑫设计巾最大限度地发挥潜力,提高设计效率就蔫要对Pro/E透行二次拜发。1
0D黼技术实
现对Access数据表格的内容的显示、添加、修改和髑徐,以袋珑资井检索和数搪营理。
美懿词:VC÷÷6。0;Pro/TOOLKIT;淼轮;参数化设计
中圈分类号:TP311文献标识鹞:B
文章编号;1001—2257(2008)10—0072—03
Abstract:TakingVC++6.0as霹tool,usingsecondarydevelopmentinterfaceprogrammeT00LKITofPro/E,andapplying
Pro/E嚣次开发工具
在Pro/E巾提供了多种二次稽发的工具,常耀
豹毽括:族表、器廖、蘑声定义特征(UDF)翻Pro/TOOLKIT等n3。这些工具都霹进行快速酶:次开发。使用时应根据开发功能的难易程度、设计人强的豢质高低和产蹴的结构特点综合考虑选取。3种方法备青其甓点,钟对苓弱零徉特点选择不霹豹方法。
笔者选择Pro/嗣的LKIT王其惫捧隽开发王其。
Pro/TOOLKIT怒Pro/E软件系统提供的完黛基于C语言的用户化工具箱,也称为用户接口(API),它提供了大量豹C语言库殖数,能够爱外部应用程序(客户应用疆痔>安全有效邈访闰Pro/E数据痒糯应用程序。并盥通过C语言编程及应用程序与Pro/E系统的光缝集成,客户和第三方能够在Pro/E系统中黍加所需的功能,并借助第三方编译环境避霸诿蘧。
Pro/TOOLKIT应焉程寒赛2种工捧模式,一种为同步模式;另~种为异步模式。
同步模式包括2种模式,即动态链接库模式翱多进程模式,动态连接库模式是将Pro/TOOLKlT应用程彦集成戮Pro/E孛静檬准方法,蘑将孀户编
Pro/
theformof
DLLtorealizetheeommunicationamongPro/E,
real-
Pfo,T∞己Kl善andMi≯C,theprogramme
ize
can
parametricdesignofasymmetricaltrapezoidal
toothratchet.AndusingthewayofMFCODBCofVisualC+十toshow,add,modifyanddeletethe
content
ofAccessdatatable,datasearchingand
can
managing
Key
beeasilydone.
words:VC十十6.0;Pro/TOOLKIT;
ratchet;parametricdesign
0
弓l富
由予Pro/E软件具有较强的通用性,使它在具
写的C程序编译成DLL文件,Pro/TOOLKlT廒带程序与Pro/E避行在同一个进程中,它们之间的信息交换是通过巍接函数调用实现的;在多进程模式下,信意交换蔻由进程之霾潜意系统完或酶,该系统模拟直接函数调穰,在2个避程闺传递函数的谈甓
《机械与电子}2008(10)
棼瘟鼹黠不能直接处理特定鲍产燕,毽瘦予产品设
牧疆墨勰{2008—05—06
・72-
万方数据
信息及其参数。异步模式实瑷2个程序的并行运行,僮代码复杂,执行速度慢。在此采蔫同步模式中的DLL模式实现外啮合非对称梯形齿棘轮的参数化设计。
2棘轮几何尺寸及参数
棘轮机构结构简单,制造容易,步进量易于调整。除了可实现间歇送进、分度运动以外,还W作为制动器和超越离合器使用。棘轮齿形一般为嚣对称梯形,载黄较小对可用三霜形。外噻合齿式棘轮枧梅是最常觅的棘轮祝梅,本稷序用以实现外啮合菲对称梯形齿棘轮的参数化设计。
棘轮独立参数有模数m、齿数z、齿宽系数缈、齿嚣偏焦口。其它参数可虫模数及齿数得到。与齿轮摇固,棘轮模数已标准诧。辣轮鹰数的选歉根据棘轮机构的使用条件和运动要求选定。由棘轮机构的使用条件研确定棘轮的最小转角,齿数太小则可能保证不了最小转角的实现。模数决定了齿的大夺,模数根据巍憨强度来确定。
设m为模数;p—mPr势髑带;瞩为扭矩;#为
齿数;蟹=b/m为齿宽系数,b为齿宽;仃为齿材料的许用弯曲应力;P,为许用单位线压力,按齿受弯曲计算摸数03:
m一1‘75√茏
3—涝一
‘1)
按齿受挤压验算:
搬≥√舞
l厂硼涝一
‘2)
3参数化设计步骤
直接利用特征元素树创建三维模型,使得程序设计烦璞且对手形状复杂的产品模型完全依靠Pro/TOOLKIT应用程序来生成模型非常困难。另一种方法是用设计参数来控制三维模型,先用交互式方式生成童维模型,在已建模型基础上建立一组可以完全控铡兰维模型的形状穰大小豹设计参数,参数亿程旁对零俘熬设谤参数进行编程,实现设诗参数的检索、修改并根据新的参数生成新的模型。这里利用VC十+6.0作为开发工具,利用MFC实现程序界面的可视化设计,建立调用动态链接库,实
瑗Pro/E,Pro/TOOLKIT务MFe之阕连接,并熙
VisualC++巾的MFeOⅨ粥技术实现对Access《机械与电子}2008(10)
万
方数据数据表格的内容的驻示、添搬、修改穰删除的功能,以实现资辩检索和数据管理。参数他造鳖基本流程如图l所示‘引。
匿l参数亿造型基本流稔
馥.建立棘轮三维基准模型。
棘轮几何形状主要由齿顶圆赢径、齿高、周节和齿颚弦长等决定,蔼以上尺寸壶模数、齿数等参数决定。从面以模数、齿数、齿宽系数及齿面偏角等秀局部参数,并利用Pro/E中关系式功熊创建新的关系式,幽局部参数的变化来驱动其它尺寸的变化。特征造獗中需注意的是妊须利用尺寸标注、同心和共线等关系实瑗死何鼷形的全约素。
b.设计菜单并编写信息资源文本,建立项目,设置开发环境。
信息资源文件用于提供菜单的标签文本和帮助傣患。在VC++巾建立项磊后焉设萋开发巧境泼指定Pro/TOOLKIT函数库酶目录位置。
c.定义初始化及结束函数,添加菜单及菜单动作酌数。
在Pro/E孛添加的菜单翔图2所示。
蚕2
Pro/E孛添黧熬蘩肇
建翔的函数主要有:user—initialize(),
ProMenubarMenuAdd(),ProMenubarmenuMenuo
Add(),ProCmdAetionAdd(),ProMenubarmenu-
PushbuttonAdd(),user_terminate()。
d.MFC可视纯对话框设计,剖臻对话框成受藤数及成员变量;编写源代码实现函数功能。
参数化设计的煎点在于首先利用Pro/E的参数功能建立设计参数,然后由Pro/TOOLKIT应用程痔检索设谤参数,瓣参数进行编辑,搬据薪懿设计参数,由设计参数、关系式驱动设计尺寸,从而生成新的模型(流程如图3所示)。参数的访问涉及到参数对象ProParameter和参数值对象ProParamval-ue,通过ProParameter类羹戆撂针霹激获褥参数值的指针,通过ProParamvalue类型的指针可以获得
・73・
参数的类型和数慎。
e。数据库程痔开发。开放数据互连(ODBC)是一种数据库熬夏操作平台,MFC的数据痒扩展部分封装了使用ODBC数据资源的细节,应用程序可以盥接使用MFC巾的数据库扩展类来操纵ODBC驱动程序管理器,访问数据库。首先利用MicrosoftAccess设计一张数据表,然詹在篱理工英里薪建一个数据源,在VC中设计一对话框用以显示数据库中的记录,利用CRecordset类绑定数据表‘引。CRecordSet类对象提供了从数据源中提取出的记泶集,能以控侉黪形式显示数据霹记录。记录集类头文俘如下:
classMyRecordSet:publicCRecordset
{
public:
MyRecordSet(CDatabase鼍pDatabase。
NULL);
DECLARE_DYNAMIC(MyRecordSet)//Field/Param
Data
//{{AFX_FIELD(MyReeordSet,CRecordset)
longm_No;
CStringm_FileName;CStringm_Info,CStringm_FilePath
/t}}AFX_擎lELD//Overrides
//ClassWizardgenerated
virtualfunction
O-
verrides
It({AFX_VlR互U众己(A茬yRecofdSe£)
public:
virtualCStringGetDefaultConnect(){
//Default
connectionstringvirtualCStringGetDefaultSQ乙(>;
//DefaultSQLfor
Recordset
virtual
void
DoFieldExchange
(CFieldEx_
change*pFX);
//RFX
support
//}}AFX—Vl装TUAL//Implementation
#ifdef—DEBUG
virtualvoidAssertValid()constvirtualvoid
Dump(CDumpContext&dc)
・74・
万
方数据const;
#endif};
创建新棘轮模型流程如图3所示。
打歼三维基准模型
辕入文傩名选择路径辕入齿数齿宽系兹等参数
按式(1)计算模数选取设计模数
N
l!
计算其它参数值
更新模壅
嚣嚣羲据痒援存记录
图3剖熬新棘轮模型流程
f.编译程序、编写注册文件、注册运行程序。程序编好后,即可生成DLL文件,编写注册文件泼指定应震程序秘注jl|}文俘薛位置。注爨文俘编好后,郄可通Pro/El辅助应用程序]菜单打开注册文件,并启动程序。4
结束语
以外啮合菲对称梯形齿棘轮鸯铡,奔绍了爱焉
Pro/TOOLKIT工具包进行二次开发的一种方式。该程序能完成外啮合非对称梯形齿棘轮的参数化设计,将模型导入有限元模块中进行有限元分析,并可将模鏊戆裰关薅患保存在数据疼孛,亦蜀根据鬈要添加相关代码以实现更复杂的模型设计。
参考文献;
[1]羔代宠震工终室。pr衫T∞己K疆Wildfi啦。0捶终设
诤EM3。靶衷:电子曩娩出舨柱。2005.
[23成火先.机械设计乎册[M].北京:化学工业出版社,
2004.
[33李世匡.Pro/TOOLKIT程序设计[M]。北京:机械工
盏爨舨裢,2003.
[43爱波军。Pro/ENGINEER二次开发技术基础[M].北
京:电子工业出版社,2006.
作凑簿奔;峻涛(1980--),男,{唾枣信鞭人,硬士研究生,
《机械等魄子)2008(10)
骚变方l舞秀撬攘CAD/CAM。