哈工大机械设计V带传动电算设计说明书-Matlab-GUI版.docx

上传人:李司机 文档编号:1135536 上传时间:2022-07-01 格式:DOCX 页数:25 大小:2.19MB
返回 下载 相关 举报
哈工大机械设计V带传动电算设计说明书-Matlab-GUI版.docx_第1页
第1页 / 共25页
哈工大机械设计V带传动电算设计说明书-Matlab-GUI版.docx_第2页
第2页 / 共25页
哈工大机械设计V带传动电算设计说明书-Matlab-GUI版.docx_第3页
第3页 / 共25页
哈工大机械设计V带传动电算设计说明书-Matlab-GUI版.docx_第4页
第4页 / 共25页
哈工大机械设计V带传动电算设计说明书-Matlab-GUI版.docx_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《哈工大机械设计V带传动电算设计说明书-Matlab-GUI版.docx》由会员分享,可在线阅读,更多相关《哈工大机械设计V带传动电算设计说明书-Matlab-GUI版.docx(25页珍藏版)》请在三一办公上搜索。

1、目录1.设计方案21.1设计要求21.2设计思路21.3设计程序框图22.程序源码42.1开始界面42.2设计界面52.3导入表格182.4清除界面193.变量说明204.程序运行结果214.1不同带型不同直径结果214.2 多组可选的值264.3特殊工作情况274.4容错功能275.参考文献281.设计方案1.1设计要求1程序中的变量名应尽可能与使用教材或标准相一致.2程序中的变量名应给以适当的注释,如名称、单位等,增加程序易读性和易用性.3程序头部应给出程序的适用范围.4程序输出结果应完整给出机械零部件设计需要的几何与结构参数.1.2设计思路考虑到设计中需要许多表格数据,所以采用Matla

2、b进行编程,这样的话将书中的表格键入.mat文件中,方便编程计算的时候调用,大大简化了编程的工作量,同时也提高了软件的计算效率.要让软件智能就要让人的参与度越少越好,软件在内部对数据进行处理,只给出一些存在范围的参数供用户选择输入,比如带的型号,基准直径,预估中心距等等.而其余的相关系数在用户输入相关的原始数据之后便通过程序自动确定了.输入所要设计的V带的原始数据之后,通过查看选型图确定V带的型号,对于不同的型号V带在满足传动比误差以与带速度的条件的前提下,经计算有若干基准直径可供设计选用,或者没有满足条件的,则说明没有符合条件的设计.假设存在符合条件,选择完基准直径,由于预估中心距满足以下的

3、不等式:,由此预估中心距存在一个范围,用户需要自己选择合适的,这一点很好的体现了人机交互,在这之后以用户确定的参数为基准进行后续的计算,并输出最终的设计结果,至此整个设计过程结束.当然用户可以通过选择不同的基准直径以与输入合理范围内不同的预估中心距来比较设计的结果,最终选择合适的设计方案.1.3设计程序框图 N Y NY Y N Y Y2.程序源码本软件是基于Matlab R2014a编制的,总共有4个.m文件,下面是个文件的源代码,与相关的说明.2.1开始界面文件名为V_Belt_Design_Wele.m,该文件为程序的开始界面.%-%-机械设计电算V带传动设计-开始界面%- functi

4、on varargout = V_Belt_Design_Welegui_Singleton = 1;gui_State = struct;if nargin & ischar gui_State.gui_Callback = str2func;end if nargout varargout1:nargout = gui_mainf;else gui_mainf;end% 以上为初始化语句,勿修改! function V_Belt_Design_Wele_OpeningF handles.output = hObject;guidata; function varargout = V_Bel

5、t_Design_Wele_OutputF varargout1 = handles.output; function pushbutton1_Callbackclose;run; function pushbutton2_Callbackopen;2.2设计界面文件名为V_Belt_Design.m,该文件为程序的设计计算界面.%-%-机械设计电算V带传动设计-设计界面%-function varargout = V_Belt_Designgui_Singleton = 1;gui_State = struct;if nargin & ischar gui_State.gui_Callbac

6、k = str2func;end if nargout varargout1:nargout = gui_mainf;else gui_mainf;end% 以上为初始化语句,勿修改! function V_Belt_Design_OpeningF handles.output = hObject;guidata; function varargout = V_Belt_Design_OutputF varargout1 = handles.output; %-%- function PrimeMotor_Callbackfunction PrimeMotor_CreateFif ispc &

7、 isequalget, get set;end function WorkingHours_Callbackfunction WorkingHours_CreateFif ispc & isequalget, get set;end %-设计计算按钮-function pushbutton1_Callback clc;Load_Table; %导入相关表格global Pd;global dd1;global dd2;global a0min;global a0max;i=str2doubleget;%传动比n1=str2doubleget;%小带轮转速a0=str2doubleget; %

8、-%-图5.17带型选取表,5.1查m-%-TYPE=get;switch TYPE case 2 BeltType=2;%Z; m=0.06;%质量 ddMIN=dd_for_Z;%重新统一命名 rang_dd=length;%可供选择直径的数目 case 3 BeltType=3;%A; m=0.1; ddMIN=dd_for_A; rang_dd=length; case 4 BeltType=4;%B; m=0.17; ddMIN=dd_for_B; rang_dd=length-3;%去掉表格中的0 case 5 BeltType=5;%C; m=0.3; ddMIN=dd_for_

9、C; rang_dd=length-7; case 6 BeltType=6;%D; m=0.6; ddMIN=dd_for_D; rang_dd=length-10; case 7 BeltType=7;%E; m=0.9; ddMIN=dd_for_E; rang_dd=length-13; otherwise errordlg; end %-%-表5.4带轮基准直径的确定-%-num_of_dd1=0;dd_choice=Table5_4P0;%将表5.4中的dd作为供选择的基准直径dd2for index_for_dd=1:1:rang_dd dd2_temp=i*ddMIN; del

10、ta_dd2=abs; dd2_m,index_dd2=min; dd2_middle=dd_choice;%dd2_middle为选择dd2的一个国标中间变量 error=abs/ddMIN/i;%误差 if error num_of_dd1=num_of_dd1+1; dd1=ddMIN; dd2=dd2_middle; endend %为用户提供可选择的值dd1=num2str;set; %由用户选择的dd1的值计算dd2user_selection_value=get;dd1=str2num;dd1=dd1dd2=dd2 %容错性,提示没有符合设计者要求dd1if num_of_dd1

11、=0&index_for_dd=rang_dd errordlg; str_0=没有满足设计要求dd1 set;%避免出现不符合要求的dd1end %-%-速度验算-%-V=/60000;VMAX=25;if V= VMAX Clear_All; errordlg;end %判断用户是否已经输入a0 if a0=0|a0a0max&user_selection_value=1 errordlg;end %由表5.2选择基准长度LdLdBasic=2*a0+pi*/2+2/;delta_Ld=absTable5_2KL-LdBasic;Ld_m,index_Ld=min;Ld=Table5_2K

12、L; a=a0+/2;%实际中心距 %小轮包角计算ALF1=180-/a*57.3; %-%-V带根数确定-%- Kb=Table5_5Kb;if i=1 & i=1.02 &i=1.05 & i=1.09 & i=1.13 & i=1.19 & i=1.25 & i=1.35 & i=1.52 & i2 i_serial=9; else i_serial=10; end end end end end end end endend %由大作业指导书P39表5.6计算P0K1=Table_P0factor; K2=Table_P0factor;K3=Table_P0factor;P0=K1*V

13、-K2/dd1-K3*V2*V; Kb=Table5_5Kb;%由表5.5查得Ki=Table5_6Ki;%由表5.6查得DIFP0=Kb*n1*;%功率增量%由表5.9确定包角修正系数KALFdelta_ALF1=absTable5_9Kalpha-ALF1;ALF1_m,index_ALF1=min;KALF=Table5_9Kalpha; %由表5.2确定长度系KLLd_row=Table5_2KL;Ld_serial=find;KL=Table5_2KL;%暂不考虑Y型带 %计算带的根数Z=roundPd/*KALF*KL %-%-初拉力的计算,作用在轴上的力计算-%-F0=500*P

14、d*/+m*V2; FQ=2*Z*F0*sin;%ALF1得先转成弧度制 %-%-数据输出-%-Pdstr=num2str;dd1str=num2str;dd2str=num2str;Ldstr=num2str;astr=num2str;ALF1str=num2str;Zstr=num2str;F0str=num2str;FQstr=num2str;set;set;set;set;set;set;set;set;set;%-%-选择工作机,表5.7工作情况系数KA的确定-%-function LoadChoose_SelectionChangeFglobal loading;loading=0

15、;Load_State=get;switch Load_State case steady%载荷平稳 loading=1; sethandles.WokingExample,String,液体搅拌机;离心式水泵;通风机和鼓风机;离心式压缩机;轻型输送机; case smallchange%载荷变动小 loading=2; sethandles.WokingExample,String,带式运输机;发电机;旋转式水泵;金属切削机床;剪床;压力机;印刷机;振动筛通风机; case bigchange%载荷变动较大 loading=3; set; case superchange%载荷变动很大 lo

16、ading=4; sethandles.WokingExample,String,破碎机;球磨机;棒磨机;起重机;挖掘机;橡胶辊压机; otherwise errordlg; end function pushbutton2_Callbackglobal loading;global Pd;Load_Table;P=str2doubleget;%额定功率 %-%-表5.7工作情况系数KA的确定-%-设计功率的确定-%- %选择一天工作时间Hours=get;switch Hours case 2 TimeLength=1;% 16 otherwise errordlg; end %选择原动机工

17、作类型MotorType=get;switch MotorType %表5.7工作情况系数KA的确定 case 2 KA=Table5_7KA; case 3 KA=Table5_7KA; otherwise errordlg; end%反复启动、正反转频繁、工作条件恶劣if get=1 KA=1.1*KA;End%设计功率确定Pd=KA*P;Pdstr=num2str;set; %输出设计功率V_type=imread; axes;imshow; %选型图显示%-%-V带中心距和长度确定-%-function dd1_user_selection_Callbackglobal dd1;glo

18、bal dd2;global a0min;global a0max;a0min=0.7*;a0max=2*;a0minstr=num2str;a0maxstr=num2str;set;set;user_selection_value=getpushbtstr1=查看设计值;if user_selection_value=1 set;end function BeltType_Callback TYPE=getpushbtstr=查看dd1的值;if TYPE=1 set;endfunction pushbutton3_CallbackClear_All; %清除界面 function push

19、button4_Callback%跳转至开始界面close; run;%-%-相关控件的库函数-%-function BeltType_CreateFif ispc & isequalget, get set;end function edit1_Callbackfunction edit1_CreateFif ispc & isequalget, get set;end function edit2_Callbackfunction edit2_CreateFif ispc & isequalget, get set;end function edit3_Callbackfunction e

20、dit3_CreateFif ispc & isequalget, get set;end function edit4_Callbackfunction edit4_CreateFif ispc & isequalget, get set;end function edit5_Callbackfunction edit5_CreateFif ispc & isequalget, get set;end function edit6_Callbackfunction edit6_CreateFif ispc & isequalget, get set;end function edit7_Callbackfunction edit7_CreateFhObject, eventdata,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号