📄 cvpoweredit.m
字号:
fprintf(fid,'nt=');fprintf(fid,'%6.4f',nt);fprintf(fid,'; %% 传动系机械效率\n');fprintf(fid,'f=');fprintf(fid,'%6.4f',f);fprintf(fid,'; %% 滚动阻力系数\n');fprintf(fid,'CD=');fprintf(fid,'%6.4f',CD);fprintf(fid,'; %% 空气阻力系数\n');fprintf(fid,'A=');fprintf(fid,'%7.4f',A);fprintf(fid,'; %% 车身迎风面积(m·m)\n');fprintf(fid,'If=');fprintf(fid,'%7.4f',If);fprintf(fid,'; %% 飞轮转动惯量(kg·m·m)\n');fprintf(fid,'Iwf=');fprintf(fid,'%7.4f',Iwf);fprintf(fid,'; %% 前轮转动惯量(kg·m·m)\n');fprintf(fid,'Iwr=');fprintf(fid,'%7.4f',Iwr);fprintf(fid,'; %% 后轮转动惯量(kg·m·m)\n');fprintf(fid,'i0=');fprintf(fid,'%6.4f',i0);fprintf(fid,'; %% 主减速器传动比\n');fprintf(fid,'ig=[');fprintf(fid,'%7.4f',ig);fprintf(fid,' ]; %% 变速器各挡传动比\n');fclose(fid);% --------------------------------------------------------------------function varargout = pushbutton3_Callback(h, eventdata, handles, varargin)global nmin nmax ne Ttq m1 m2 r nt f CD A If Iwf Iwr i0 ig Uastar Uaend get1 get2fid=fopen('tempdata.m','rt');eval('tempdata');set(handles.edit1,'string',num2str(nmin));set(handles.edit2,'string',num2str(nmax));set(handles.edit3,'string',num2str(ne));set(handles.edit4,'string',num2str(Ttq));set(handles.edit5,'string',num2str(m1));set(handles.edit6,'string',num2str(m2));set(handles.edit7,'string',num2str(r));set(handles.edit8,'string',num2str(nt));set(handles.edit9,'string',num2str(f));set(handles.edit10,'string',num2str(CD));set(handles.edit11,'string',num2str(A));set(handles.edit12,'string',num2str(If));set(handles.edit13,'string',num2str(Iwf));set(handles.edit14,'string',num2str(Iwr));set(handles.edit15,'string',num2str(i0));set(handles.edit16,'string',num2str(ig));set(handles.edit17,'string',num2str(Uastar));set(handles.edit18,'string',num2str(Uaend));fclose(fid);search1=isempty(nmin);search2=isempty(ne);if search1==0&search2==1 set(handles.radio1,'value',get(handles.radio1,'max')); set(handles.radio2,'value',get(handles.radio2,'min')); set(handles.edit1,'enable','on'); set(handles.edit2,'enable','on'); set(handles.edit3,'enable','off'); set(handles.edit4,'enable','off'); get1=get(handles.radio1,'value'); get2=get(handles.radio2,'value'); assignin('base','get1',get1); assignin('base','get2',get2); assignin('base','nmin',nmin); assignin('base','nmax',nmax);else if search1==1&search2==0 set(handles.radio2,'value',get(handles.radio2,'max')); set(handles.radio1,'value',get(handles.radio1,'min')); set(handles.edit1,'enable','off'); set(handles.edit2,'enable','off'); set(handles.edit3,'enable','on'); set(handles.edit4,'enable','on'); get1=get(handles.radio1,'value'); get2=get(handles.radio2,'value'); assignin('base','get1',get1); assignin('base','get2',get2); assignin('base','ne',ne); assignin('base','Ttq',Ttq);else if search1==0&search2==0 if get1==1&get2==0 set(handles.radio1,'value',get(handles.radio1,'max')); set(handles.radio2,'value',get(handles.radio2,'min')); set(handles.edit1,'enable','on'); set(handles.edit2,'enable','on'); set(handles.edit3,'enable','off'); set(handles.edit4,'enable','off'); get1=get(handles.radio1,'value'); get2=get(handles.radio2,'value'); assignin('base','get1',get1); assignin('base','get2',get2); assignin('base','nmin',nmin); assignin('base','nmax',nmax); else if get1==0&get2==1 set(handles.radio2,'value',get(handles.radio2,'max')); set(handles.radio1,'value',get(handles.radio1,'min')); set(handles.edit1,'enable','off'); set(handles.edit2,'enable','off'); set(handles.edit3,'enable','on'); set(handles.edit4,'enable','on'); get1=get(handles.radio1,'value'); get2=get(handles.radio2,'value'); assignin('base','get1',get1); assignin('base','get2',get2); assignin('base','ne',ne); assignin('base','Ttq',Ttq); end end end endendassignin('base','m1',m1);assignin('base','m2',m2);assignin('base','r',r);assignin('base','nt',nt);assignin('base','f',f);assignin('base','CD',CD);assignin('base','A',A);assignin('base','If',If);assignin('base','Iwf',Iwf);assignin('base','Iwr',Iwr);assignin('base','i0',i0);assignin('base','ig',ig);% --------------------------------------------------------------------function varargout = pushbutton4_Callback(h, eventdata, handles, varargin)close CVPowerEdit;CVPower;% --------------------------------------------------------------------function varargout = pushbutton5_Callback(h, eventdata, handles, varargin)global nmin nmax ne Ttq n Tq Pe m1 m2 m r nt f CD A If Iwf Iwr Iw i0 ig Uastar Uaend... get1 get2 ignum coeff nmin=str2num(get(handles.edit1,'string'));nmax=str2num(get(handles.edit2,'string'));ne=str2num(get(handles.edit3,'string'));Ttq=str2num(get(handles.edit4,'string'));m1=str2num(get(handles.edit5,'string'));m2=str2num(get(handles.edit6,'string'));r=str2num(get(handles.edit7,'string'));nt=str2num(get(handles.edit8,'string'));f=str2num(get(handles.edit9,'string'));CD=str2num(get(handles.edit10,'string'));A=str2num(get(handles.edit11,'string'));If=str2num(get(handles.edit12,'string'));Iwf=str2num(get(handles.edit13,'string'));Iwr=str2num(get(handles.edit14,'string'));i0=str2num(get(handles.edit15,'string'));ig=str2num(get(handles.edit16,'string'));Uastar=str2num(get(handles.edit17,'string'));Uaend=str2num(get(handles.edit18,'string'));%%%get1=get(handles.radio1,'value');get2=get(handles.radio2,'value');assignin('base','get1',get1);assignin('base','get2',get2);if get1==1&get2==0 n=nmin:1:nmax; Tq=-19.313+295.27.*n/1000-165.44.*(n/1000).^2+40.874.*(n/1000).^3-3.8445.*(n/1000).^4; Pe=Tq.*n/9550; assignin('base','nmin',nmin); assignin('base','nmax',nmax); assignin('base','n',n); assignin('base','Tq',Tq);else if get1==0&get2==1 coeff=polyfit(ne,Ttq,4); n=min(ne):1:max(ne); Tq=polyval(coeff,n); Pe=Tq.*n/9550; assignin('base','ne',ne); assignin('base','Ttq',Ttq); assignin('base','n',n); assignin('base','Tq',Tq); warning off; endend%%%m=m1+m2;Iw=Iwf+Iwr;ignum=length(ig);%%%assignin('base','m1',m1);assignin('base','m2',m2);assignin('base','r',r);assignin('base','nt',nt);assignin('base','f',f);assignin('base','CD',CD);assignin('base','A',A);assignin('base','If',If);assignin('base','Iwf',Iwf);assignin('base','Iwr',Iwr);assignin('base','i0',i0);assignin('base','ig',ig);assignin('base','Uastar',Uastar);assignin('base','Uaend',Uaend);%%%fid=fopen('tempdata.m','wt');if get(handles.radio1,'value')==1 fprintf(fid,'nmin='); fprintf(fid,'%10.4f',nmin); fprintf(fid,'; %% 发动机最低转速(r/min)\n'); fprintf(fid,'nmax='); fprintf(fid,'%10.4f',nmax); fprintf(fid,'; %% 发动机最高转速(r/min)\n');else if get(handles.radio2,'value')==1 fprintf(fid,'ne=['); fprintf(fid,'%11.4f',ne); fprintf(fid,' ]; %% 发动机转速(r/min)\n'); fprintf(fid,'Ttq=['); fprintf(fid,'%9.4f',Ttq); fprintf(fid,' ]; %% 发动机转矩(N·m)\n'); endendfprintf(fid,'m1=');fprintf(fid,'%9.4f',m1);fprintf(fid,'; %% 整车整备质量(kg)\n');fprintf(fid,'m2=');fprintf(fid,'%9.4f',m2);fprintf(fid,'; %% 装载质量(kg)\n');fprintf(fid,'r=');fprintf(fid,'%6.4f',r);fprintf(fid,'; %% 车轮半径(m)\n');fprintf(fid,'nt=');fprintf(fid,'%6.4f',nt);fprintf(fid,'; %% 传动系机械效率\n');fprintf(fid,'f=');fprintf(fid,'%6.4f',f);fprintf(fid,'; %% 滚动阻力系数\n');fprintf(fid,'CD=');fprintf(fid,'%6.4f',CD);fprintf(fid,'; %% 空气阻力系数\n');fprintf(fid,'A=');fprintf(fid,'%7.4f',A);fprintf(fid,'; %% 车身迎风面积(m·m)\n');fprintf(fid,'If=');fprintf(fid,'%7.4f',If);fprintf(fid,'; %% 飞轮转动惯量(kg·m·m)\n');fprintf(fid,'Iwf=');fprintf(fid,'%7.4f',Iwf);fprintf(fid,'; %% 前轮转动惯量(kg·m·m)\n');fprintf(fid,'Iwr=');fprintf(fid,'%7.4f',Iwr);fprintf(fid,'; %% 后轮转动惯量(kg·m·m)\n');fprintf(fid,'i0=');fprintf(fid,'%6.4f',i0);fprintf(fid,'; %% 主减速器传动比\n');fprintf(fid,'ig=[');fprintf(fid,'%7.4f',ig);fprintf(fid,' ]; %% 变速器各挡传动比\n');fprintf(fid,'Uastar=[');fprintf(fid,'%8.4f',Uastar);fprintf(fid,']; %% 计算加速时间起始车速(km/h)\n');fprintf(fid,'Uaend=[');fprintf(fid,'%8.4f',Uaend);fprintf(fid,']; %% 计算加速时间终止车速(km/h)\n');fclose(fid);%%%search3=isempty(Uastar);search4=isempty(Uaend);if search3==1&search4==1 errordlg('Please define the data of Uastar and Uaend','Warning');else close CVPowerEdit; CVPowerProcessor;end%%%% --------------------------------------------------------------------function varargout = pushbutton6_Callback(h, eventdata, handles, varargin)close CVPowerEdit;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -