论文部分内容阅读
【摘 要】本文介绍了圆柱齿轮减速器中齿轮设计平台的开发背景、过程。该平台设计的窗口界面语言采用C#代码,在Microsoft Visual Studio 2008环境下编译,使用Windows窗体应用程序组建,之后采用Matlab软件编制齿轮设计代码,生成.exe可执行文件,最后从C#中调用该.exe文件,实现软件自动计算的功能。
【关键词】齿轮减速器;圆柱齿轮传动;设计平台开发
一、引言
减速器是原动机和工作机之间的一个独立的传动装置,用来将原动机的输出运动传递给机器,可以起到降低转速和增大转矩的作用,以满足工作需要。是机械设备的重要组成部分和核心组件,已经广泛应用于各行各业。
圆柱齿轮减速器平台设计的窗口界面语言采用C#代码,在Microsoft Visual Studio 2008环境下编译,使用Windows窗体应用程序组建,之后采用Matlab软件编制齿轮设计代码,生成.exe可执行文件,最后从C#中调用该.exe文件,实现软件自动计算的功能。
二、程序设计流程
在编写程序之前,首先要熟悉手工齿轮计算的整个流程,依据流程逐步整理归纳;其次,将人工计算的计算方法按之前已经定好的设计步骤、设计公式编制成计算机源程序;最后根据需求设计输出参量。此处程序设计关键在于实现设计计算过程中需要用到大量的数据、表格以及线图等设计资料存入计算机,在计算机运行时自动检索到所需要的数据资料,即如何解决好公式程序化、线图程序化、表格程序化的问题。
(一)软件设计流程图
熟悉了MATLAB语言和Microsoft Visual Studio 2008设计工具后,结合初步确定的齿轮计算过程合理地将每一个计算步骤安排在齿轮设计软件相应的界面中将整个计算过程初步分为:参数输入,选择方案,材料及其制程设计,齿轮传动设计,齿轮基本参数计算,应力及安全系数计算六个步骤,也就是软件的六个界面。确定好界面数量后,各界面的合理布局,使用软件的用户从界面的层次布局、界面风格、使用稳定性感受软件的优劣。从软件使用者的角度考虑,这给接下来软件设计工作带来指导性的思想,依据满足用户需求思想、MATLAB语言和VS的特点完成软件设计的流程图。
(二)软件界面设计
在Microsoft Visual Studio 2008新建项目时选择Windows窗体应用程序,可以快速构建出富于弹性且美观的人机界面。下面以主界面为例来叙述建立界面的过程。
启动Microsoft Visual Studio 2008,在文件菜单中选择新建项目下选择Windows窗体应用程序,可以通过界面右下角的白点来调节所要绘制的界面的大小或者通过改变属性选项卡中size属性的数值即可达到设计效果。
具体步骤为:
(1)选择好合适的窗口大小后,可以依次加入GUI(图形用户界面,英文:Graphical User Interface,简称GUI,是指采用图形方式显示的计算机操作用户接口)。对象到界面中,即直接使用鼠标在左方的工具栏中选择合适的控件,并将该控件拖拽到合适位置然后调节其大小,接着修改GUI对象对应的属性。
(2)设置界面底层正确的头文件,软件界面底层的头文件设置地是否正确是软件设计好后能否正常运行的关键。制作每一张界面时均要用到的界面底层头文件见表2.1。
(三)程序实现关键技术
1、 公式程序化
按照手工计算流程,以每个系数计算为一函数,编写子程序,实现各变量的计算。在进行公式程序化的过程中,简单的公式程序化不一一展开,现在主要介绍复杂且轮传动计算过程程序化相对难实现的公式。
例如:分度圆直径的初步计算:
代码片段如下:
if KG==1(当齿形选择为直齿时)
beta=0;
d1=87*(T1*(u+1)/(fi_d*(sigmaHlim)^2*u))^(1/3);
m=d1/Z1;
m=standard_m(m);
end
if KG==2(当齿形选择为斜时)
beta=15;
d1=80.3*(T1*(u+1)/(fi_d*(sigmaHlim)^2*u))^(1/3);
mt=d1/Z1;
mn=mt*cosd(beta);
m=mn;
m=standard_m(m);
2、线图程序化
在实现强度计算的程序化过程中,很多参数的数值是根据手册中对应的线图来确定的。因此常用的参数(或系数),如弯曲强度计算的齿向载荷分布系数KF?茁;节点区域系数ZH;动载系数KV等,将这些系数的线图资料存入计算机,以便需要时调出供选择。
例如:接触疲劳应力极限?滓H1im
在预定的使用期限内,要求齿面不产生疲劳点蚀。点蚀往往出现在节线附近的齿根表面处,因此,计算接触疲劳强度时一般以齿轮的节点为计算点。铸铁和钢的接触疲劳应力极限?滓H1im见图2.3、2.4。
程序化:
主程序:
sigmaHlim1=xishu_sigmaHlim(KM1,KME,KR1,KMM1); (齿轮1接触疲劳强度极限)
sigmaHlim2=xishu_sigmaHlim(KM2,KME,KR2,KMM2); (齿轮2接触疲劳强度极限)
子程序为xishu_sigmaHlim。
子程序(部分):
function sigmaHlim=sigmaHlim(KM,KME,KR,KMM) if KM==1&&KME==1
(齿轮制造材料KM==1,即材料选择45钢,材料等级KME==1,即表示齿轮材料质量和热处理值A达到很高的要求时疲劳极限取值线。这种要求只有在具备有高水平的制造过程可控能力时才能达到。)
HBS=210;
hard=175:0.1:250;
x=[175 250];
y=[500 600];
hard=HBS;
sigmaHlim=interp1(x,y,hard,'linear');
elseif KM==5&&KME==2||KM==5&&KME==3
HBS=160;
hard=70:0.1:250;
x=[70 250];
y=[330 480];
hard=HBS;
sigmaHlim=interp1(x,y,hard,'linear');
end
if KM==6&&KME==1
HBS=250;
hard=200:0.1:300;
x=[200 300];
y=[550 700];
hard=HBS;
sigmaHlim=interp1(x,y,hard,'linear') ;
elseif KM==6&&KME==2||KM==6&&KME==3
HBS=230;
hard=160:0.1:300;
x=[160 300];
y=[470 640];
hard=HBS;
sigmaHlim=interp1(x,y,hard,'linear') ;
end
3、表格程序化
手工选择表格数据在程序中实现,即设计程序实现计算需要时,自动索取表格数据信息。从表格信息内容来看,可分为数值型数据、公式。可分为数值型影响参数、函数列表、字符串型影响参数、判断式影响参数。将表格程序化,采取方法如下:可分对十公式信息内容,用函数的方法将公式信息存十函数内,并传递通过公式计算所得数值;对十数值型数据,用数组存储;对十字符串型影响参数,用数字进行编号转换成数值型数据;对十判断式影响参数,利用判断语句实现。下面举例说明表格程序化的具体方法。
例如:使用系数KA
用以考虑动力机和工作机的运动特性、联轴器的缓冲性能等外部因素引起的动载荷而引入的系数,可以根据具体的情况从表2.2中选取数值。
代码片段展示如下:
主程序:
Y_i=1;
G_j=2;
KA=Xishu_KA(Y_i,G_j);
子程序:
function K_A=Xishu_KA(i,j)
Ka=[1 1.25 1.5 1.75
1.1 1.35 1.6 1.85
1.25 1.5 1.75 2
1.5 1.75 2 2.25];
K_A=Ka(i,j);
在主程序和子程序均编辑完成以后,在MATLAB中让主函数运行,检查程序是否有错误,如果有错误程序会自动停止运行并且显示错误的地方,将其改正即可再次运行,直到主程序和子程序均能运行出结果,编辑程序的工作内容就算结束。最后将主程序生成.exe文件可执行文件,即完成计算过程可调用文件的封装。
三、程序设计流程
以下齿轮设计软件的说明过程以一级齿轮传动为例:
(1)打开软件后可以获取个人帐号,然后输入帐号后,点击“登录”即可开始齿轮设计工作。
(2)登录后,将已知参数输入对应的输入框中。输入完成后,点击“下一步”即可进入下一界面。
(3)选择方案,在这刻界面中用户可依据只记得设计要求选择相应的传动方案。
输入完成后,点击“下一步”即可进入下一界面。
(4)材料及制程设计界面,用户首先要选择齿轮齿形,齿轮的制造精度,齿轮的的加工材料(用户可以手动输入或者通过复选框选择相应的材料),点击“确定”后材料基本属性就会自动填充无须用户再去查阅资料。接着选择支撑和润滑的方式。
(5)齿轮传动设计界面,到该界面后用户就无需再输入数据,只需点击“计算”即可完成计算。然后点击“下一步”。
(6)性能计算,点击“确定”即可完成计算,最后点击“输出”即可完成所有的设计工作。
该软件界面友好,使用简单。对使用者的专业要求不高,有利于提高设计工作的效率,避免人工设计的大量计算和重复查阅资料的过程。
作者简介:王琼(1981-),甘肃天水人,硕士,甘肃机电职业技术学院讲师。主要研究方向:机械设计。
参考文献:
[1]李国斌.机械设计基础. 北京:机械工业出版社,2009.11
[2]徐安东.《Visual C#程序设计基础》.北京:清华大学出版,2012
[3]高会生.MATLAB原理与工程应用.北京:电子工业出版社,2006(01)
【关键词】齿轮减速器;圆柱齿轮传动;设计平台开发
一、引言
减速器是原动机和工作机之间的一个独立的传动装置,用来将原动机的输出运动传递给机器,可以起到降低转速和增大转矩的作用,以满足工作需要。是机械设备的重要组成部分和核心组件,已经广泛应用于各行各业。
圆柱齿轮减速器平台设计的窗口界面语言采用C#代码,在Microsoft Visual Studio 2008环境下编译,使用Windows窗体应用程序组建,之后采用Matlab软件编制齿轮设计代码,生成.exe可执行文件,最后从C#中调用该.exe文件,实现软件自动计算的功能。
二、程序设计流程
在编写程序之前,首先要熟悉手工齿轮计算的整个流程,依据流程逐步整理归纳;其次,将人工计算的计算方法按之前已经定好的设计步骤、设计公式编制成计算机源程序;最后根据需求设计输出参量。此处程序设计关键在于实现设计计算过程中需要用到大量的数据、表格以及线图等设计资料存入计算机,在计算机运行时自动检索到所需要的数据资料,即如何解决好公式程序化、线图程序化、表格程序化的问题。
(一)软件设计流程图
熟悉了MATLAB语言和Microsoft Visual Studio 2008设计工具后,结合初步确定的齿轮计算过程合理地将每一个计算步骤安排在齿轮设计软件相应的界面中将整个计算过程初步分为:参数输入,选择方案,材料及其制程设计,齿轮传动设计,齿轮基本参数计算,应力及安全系数计算六个步骤,也就是软件的六个界面。确定好界面数量后,各界面的合理布局,使用软件的用户从界面的层次布局、界面风格、使用稳定性感受软件的优劣。从软件使用者的角度考虑,这给接下来软件设计工作带来指导性的思想,依据满足用户需求思想、MATLAB语言和VS的特点完成软件设计的流程图。
(二)软件界面设计
在Microsoft Visual Studio 2008新建项目时选择Windows窗体应用程序,可以快速构建出富于弹性且美观的人机界面。下面以主界面为例来叙述建立界面的过程。
启动Microsoft Visual Studio 2008,在文件菜单中选择新建项目下选择Windows窗体应用程序,可以通过界面右下角的白点来调节所要绘制的界面的大小或者通过改变属性选项卡中size属性的数值即可达到设计效果。
具体步骤为:
(1)选择好合适的窗口大小后,可以依次加入GUI(图形用户界面,英文:Graphical User Interface,简称GUI,是指采用图形方式显示的计算机操作用户接口)。对象到界面中,即直接使用鼠标在左方的工具栏中选择合适的控件,并将该控件拖拽到合适位置然后调节其大小,接着修改GUI对象对应的属性。
(2)设置界面底层正确的头文件,软件界面底层的头文件设置地是否正确是软件设计好后能否正常运行的关键。制作每一张界面时均要用到的界面底层头文件见表2.1。
(三)程序实现关键技术
1、 公式程序化
按照手工计算流程,以每个系数计算为一函数,编写子程序,实现各变量的计算。在进行公式程序化的过程中,简单的公式程序化不一一展开,现在主要介绍复杂且轮传动计算过程程序化相对难实现的公式。
例如:分度圆直径的初步计算:
代码片段如下:
if KG==1(当齿形选择为直齿时)
beta=0;
d1=87*(T1*(u+1)/(fi_d*(sigmaHlim)^2*u))^(1/3);
m=d1/Z1;
m=standard_m(m);
end
if KG==2(当齿形选择为斜时)
beta=15;
d1=80.3*(T1*(u+1)/(fi_d*(sigmaHlim)^2*u))^(1/3);
mt=d1/Z1;
mn=mt*cosd(beta);
m=mn;
m=standard_m(m);
2、线图程序化
在实现强度计算的程序化过程中,很多参数的数值是根据手册中对应的线图来确定的。因此常用的参数(或系数),如弯曲强度计算的齿向载荷分布系数KF?茁;节点区域系数ZH;动载系数KV等,将这些系数的线图资料存入计算机,以便需要时调出供选择。
例如:接触疲劳应力极限?滓H1im
在预定的使用期限内,要求齿面不产生疲劳点蚀。点蚀往往出现在节线附近的齿根表面处,因此,计算接触疲劳强度时一般以齿轮的节点为计算点。铸铁和钢的接触疲劳应力极限?滓H1im见图2.3、2.4。
程序化:
主程序:
sigmaHlim1=xishu_sigmaHlim(KM1,KME,KR1,KMM1); (齿轮1接触疲劳强度极限)
sigmaHlim2=xishu_sigmaHlim(KM2,KME,KR2,KMM2); (齿轮2接触疲劳强度极限)
子程序为xishu_sigmaHlim。
子程序(部分):
function sigmaHlim=sigmaHlim(KM,KME,KR,KMM) if KM==1&&KME==1
(齿轮制造材料KM==1,即材料选择45钢,材料等级KME==1,即表示齿轮材料质量和热处理值A达到很高的要求时疲劳极限取值线。这种要求只有在具备有高水平的制造过程可控能力时才能达到。)
HBS=210;
hard=175:0.1:250;
x=[175 250];
y=[500 600];
hard=HBS;
sigmaHlim=interp1(x,y,hard,'linear');
elseif KM==5&&KME==2||KM==5&&KME==3
HBS=160;
hard=70:0.1:250;
x=[70 250];
y=[330 480];
hard=HBS;
sigmaHlim=interp1(x,y,hard,'linear');
end
if KM==6&&KME==1
HBS=250;
hard=200:0.1:300;
x=[200 300];
y=[550 700];
hard=HBS;
sigmaHlim=interp1(x,y,hard,'linear') ;
elseif KM==6&&KME==2||KM==6&&KME==3
HBS=230;
hard=160:0.1:300;
x=[160 300];
y=[470 640];
hard=HBS;
sigmaHlim=interp1(x,y,hard,'linear') ;
end
3、表格程序化
手工选择表格数据在程序中实现,即设计程序实现计算需要时,自动索取表格数据信息。从表格信息内容来看,可分为数值型数据、公式。可分为数值型影响参数、函数列表、字符串型影响参数、判断式影响参数。将表格程序化,采取方法如下:可分对十公式信息内容,用函数的方法将公式信息存十函数内,并传递通过公式计算所得数值;对十数值型数据,用数组存储;对十字符串型影响参数,用数字进行编号转换成数值型数据;对十判断式影响参数,利用判断语句实现。下面举例说明表格程序化的具体方法。
例如:使用系数KA
用以考虑动力机和工作机的运动特性、联轴器的缓冲性能等外部因素引起的动载荷而引入的系数,可以根据具体的情况从表2.2中选取数值。
代码片段展示如下:
主程序:
Y_i=1;
G_j=2;
KA=Xishu_KA(Y_i,G_j);
子程序:
function K_A=Xishu_KA(i,j)
Ka=[1 1.25 1.5 1.75
1.1 1.35 1.6 1.85
1.25 1.5 1.75 2
1.5 1.75 2 2.25];
K_A=Ka(i,j);
在主程序和子程序均编辑完成以后,在MATLAB中让主函数运行,检查程序是否有错误,如果有错误程序会自动停止运行并且显示错误的地方,将其改正即可再次运行,直到主程序和子程序均能运行出结果,编辑程序的工作内容就算结束。最后将主程序生成.exe文件可执行文件,即完成计算过程可调用文件的封装。
三、程序设计流程
以下齿轮设计软件的说明过程以一级齿轮传动为例:
(1)打开软件后可以获取个人帐号,然后输入帐号后,点击“登录”即可开始齿轮设计工作。
(2)登录后,将已知参数输入对应的输入框中。输入完成后,点击“下一步”即可进入下一界面。
(3)选择方案,在这刻界面中用户可依据只记得设计要求选择相应的传动方案。
输入完成后,点击“下一步”即可进入下一界面。
(4)材料及制程设计界面,用户首先要选择齿轮齿形,齿轮的制造精度,齿轮的的加工材料(用户可以手动输入或者通过复选框选择相应的材料),点击“确定”后材料基本属性就会自动填充无须用户再去查阅资料。接着选择支撑和润滑的方式。
(5)齿轮传动设计界面,到该界面后用户就无需再输入数据,只需点击“计算”即可完成计算。然后点击“下一步”。
(6)性能计算,点击“确定”即可完成计算,最后点击“输出”即可完成所有的设计工作。
该软件界面友好,使用简单。对使用者的专业要求不高,有利于提高设计工作的效率,避免人工设计的大量计算和重复查阅资料的过程。
作者简介:王琼(1981-),甘肃天水人,硕士,甘肃机电职业技术学院讲师。主要研究方向:机械设计。
参考文献:
[1]李国斌.机械设计基础. 北京:机械工业出版社,2009.11
[2]徐安东.《Visual C#程序设计基础》.北京:清华大学出版,2012
[3]高会生.MATLAB原理与工程应用.北京:电子工业出版社,2006(01)