本文以便携式小型旋耕机蜗杆减速器的设计方法为基础,使用Pro/ENGINEER的二次开发软件包Pro/TOOLKIT开发了蜗杆的程序化设计系统。该设计系统界面简单、直观,操作方便,降低了设计者的工作量,缩短了蜗杆蜗轮齿廓曲线绘制的设计周期,并易于进行蜗杆传动的运动仿真及蜗杆减速器的运动分析。 Based on the design of worm transmission in compact type rotocultivators, Pro/TOOLKIT is applied to the development of a programmed design system for the design of worm. This programmed design system is characterized by a simple and visualized interface and easy operation, which saves the labor of the designers and shortens the design process of worm tooth-profile. This design system is also helpful in the motion simulation of worm transmission and motion analysis of worm reducer.
代超,徐兴亮,赵婷,胡景姝
哈尔滨理工大学,黑龙江 哈尔滨
收稿日期:2017年3月11日;录用日期:2017年3月27日;发布日期:2017年3月31日
本文以便携式小型旋耕机蜗杆减速器的设计方法为基础,使用Pro/ENGINEER的二次开发软件包Pro/TOOLKIT开发了蜗杆的程序化设计系统。该设计系统界面简单、直观,操作方便,降低了设计者的工作量,缩短了蜗杆蜗轮齿廓曲线绘制的设计周期,并易于进行蜗杆传动的运动仿真及蜗杆减速器的运动分析。
关键词 :蜗杆传动,程序化设计,Pro/TOOLKIT
Copyright © 2017 by authors and beplay安卓登录
This work is licensed under the Creative Commons Attribution International License (CC BY).
http://creativecommons.org/licenses/by/4.0/
蜗杆传动由于传动比大,运动平稳得到了广泛使用。虽然蜗杆传动在机械制图中不用画实际的齿廓曲线,但是用软件做蜗杆传动的运动和动力分析时,需要绘制齿廓曲线,但是蜗轮和蜗杆的齿形比较复杂,绘制时比较繁琐 [
Pro/ENGINEER安装盘所自带的Pro/TOOLKIT工具包主要提供了开发创建用户应用程序所需的各类文件,如函数库文件、头文件、用户指南等,还对各类文件的使用提供了部分示例程序。其中头文件和库文件是用Visual C++开发Pro/ENGINEER应用程序必不可少的支持文件。蜗杆传动程序化设计系统在Windows XP为平台上,在Visual C++开发环境下,采用C语言编程,以Pro/TOOLKIT接口,完成Pro/ENGINEER的二次开发。
Pro/TOOLKIT应用程序有两种工作模式:同步模式和异步模式 [
在同步模式下,Pro/ENGINEER根据注册文件的信息启动应用程序,Pro/TOOLKIT应用程序和Pro/ENGINEER主程序分别产生不能并行工作的两个各自的进程。
而在异步模式下,包含主函数的应用程序能够独立启动并能与正在进行的Pro/ENGINEER进程连接,或者先启动应用程序后再启动Pro/ENGINEER,Pro/TOOLKIT应用程序和Pro/ENGINEER能够并行工作,换句话说就,Pro/TOOLKIT应用程序和Pro/ENGINEER主程序能够同时进行各自的工作,互不影响,本文采用了此异步模式开发蜗杆设计的程序化应用程序。
虽然Pro/TOOLKIT能通过调用几何特征创建函数完成三维模型自动建立的方法,但在零件的三维设计中,由于三维模型比较复杂,特征较多,创建时必然会涉及各类特征:如绘制草图用的点、线、面等基准;曲线、曲面和实体等,很难直接利用程序生成三维模型,即使可以也会使程序代码变得复杂,容易出错,最终使参数化程序的设计十分繁琐和复杂,满足不了简化设计者工作的初衷。因此,本文的蜗杆程序化设计系统采用了相对简单的基于三维模型的参数化程序设计方法 [
图1. 基于三维模型的参数化设计过程
图2. 二次开发的应用程序执行过程
在Pro/ENGINEER环境中,用曲面,用户自定义特征、program、layout等高级功能建立模型,用“工具”→“参数”命令,添加蜗杆传动参数,中间平面的压力角,模数、蜗杆齿数,蜗轮齿数,蜗杆螺杆部分长度。这些参数名称分别为rf、m、z1、z2、b1分别赋初值,即20˚、4、4、41、65。
使用“工具”→“关系”命令将建立的蜗杆蜗轮的参数与蜗杆蜗轮的特征做链接,完成三维模型样板的建立。
在Visual C++ 6.0环境下的点选ClassWizard窗口中的Member Variables选项卡,并在列表框中设置double类型的控件IDC_EDIT1、IDC_EDIT2、IDC_EDIT3、IDC_EDIT4、IDC_EDIT5,变量名依次为m_rf、m_ms、m_z1、m_z2、m_ b1,单击OK按钮,这些变量就被定义到Cchiddlg类中 [
参数输入对话框中的OK按钮需要添加动作函数OnOK(),添加如下代码:
void CChilddlg:: OnOK ()
{
// TODO: Add extra validation here
UpdateData(true);
Doublerf,m,z1, z2,b1;
…………….…………….
rf =m_rf;
m = m_ms;
z1= m_z1
z2= m_z2
b1= m_b1
ProMdl part;
//将模型worm调入内存
ProMdlRetrieve(LD:\\wear.prt.1, PRO_MDL_PART, &part);
//显示worm模型
ProMdlDisplay(part);
//获得当前worm模型标识
ProMdlIdGet(part,&i);
//初始化worm模型
ProModelitemInit(part,i,PRO_PART,&feature);
//初始化worm模型参数
Initialize model parameters
ProParameterInit(&feature,L rf , ¶m1);
ProParameterInit(&feature,L m ,¶m2);
ProParameterInit(&feature,Lz1 ,¶m3);
ProParameterInit(&feature,Lz2,¶m4);
ProParameterInit(&feature,Lb1 , ¶m5);
//变量赋值
value1.type=PRO_PARAM_DOUBLE;
value1.value.i_val= rf;
value2.type=PRO_PARAM_DOUBLE;
value2.value.i_val= m;
value3.type=PRO_PARAM_DOUBLE;
value3.value.d_val= z1;
value4.type=PRO_PARAM_ DOUBLE;
value4.value.d_val= z2;
value5.type=PRO_PARAM_CHAR;
value5.value.c_val= b1;
//设置模型参数的数值
ProParameterValueSet(¶m1, &value1);
ProParameterValueSet(¶m2, &value2);
ProParameterValueSet(¶m3, &value3);
ProParameterValueSet(¶m4, &value4);
ProParameterValueSet(¶m5, &value5);
ProParameterValueSet(¶m6, &value6);
ProParameterValueSet(¶m7, &value7);
//模型再生
ProSolidRegenerate((ProSolid)part, PRO_B_TRUE);
UpdateData(false);
CDialog::OnOK();
}
应用这段程序,可以将预先创建的蜗杆样本零件模型调入内存并显示,然后根据编辑框中的用户输入的蜗杆的新参数改变样板模型的参数,最后再生成新参数下的新的蜗杆模型。
首先在Project/Settings对话框的Link选项卡中,添加下列库文件:protoolkit.lib wsock32.lib protkmd.lib pt_asynchronous.lib mpr.lib;其次在Project/Settings中的Customize中选中Force files output选项,使工程输出状态为强制输出;最后选择Use MFC将工程的基类设置为静态库类。
执行VC主菜单命令Build|Build main program.exe生成可执行文件main program.exe。由于系统所采用的是Pro/TOOLKIT异步模式,所以首先设置环境变量。
变量名:PRO_COMM_MSG_EXE
变量值:C:\Program Files\proeWildfire 4.0\i486_nt\obj\pro_comm_msg.exe
双击可执行文件文件main program.exe,图3所示的主对话框窗口便可打开。在主对话框中单击“启动Pro/E”按钮,则 Pro/ENGINEER系统启动。单击“蜗杆设计”按钮,则会弹出蜗杆创建对话框,在图4所示对话框中输入各参数值。然后单击“输出蜗杆”按钮,系统会根据参数的输入生成相应的蜗杆模型,其中一组参数生成的蜗杆模型如图5所示。蜗杆轴的其他部分结构按照普通的轴类设计很方便就能完成,由于篇幅所限,不再赘述。
图3. 主程序对话框
图4. 创建蜗杆对话框
图5. 蜗杆模型
本文利用Pro/ENGINEER软件中的高级功能创建了便携式小型旋耕机蜗杆减速器中蜗杆的三维模型;并使用Pro/ENGINEER软件的二次开发工具Pro/TOOLKIT在Visual C++ 6.0集成开发的环境下,采用异步模式开发了蜗杆自动化设计系统。该设计系统可以仅通过输入蜗杆传动的几何参数快速创建蜗杆三维模型,设计系统的用户操作界面简单、直观,通用性强,能提高设计人员的工作效率,缩短蜗杆传动的设计周期,可以取得良好的经济效益。
哈尔滨理工大学大学生创新创业训练项目:便携式小型旋耕机的设计。
代超,徐兴亮,赵婷,胡景姝. 基于Pro/Engineer的蜗杆程序化设计The Programmed Design of Worm Based on Pro/Engineer[J]. 机械工程与技术, 2017, 06(01): 39-44. http://dx.doi.org/10.12677/MET.2017.61006