机构设计实验.docx
- 文档编号:3295406
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:13
- 大小:69.82KB
机构设计实验.docx
《机构设计实验.docx》由会员分享,可在线阅读,更多相关《机构设计实验.docx(13页珍藏版)》请在冰点文库上搜索。
机构设计实验
机构设计实验
实验一杆机构运动分析的计算机程序设计
源程序:
位移
clearall
clc
formatlong
figure
l1=440;l2=490;l3=249;l4=540.2258;l5=370;l6=500;%给定值
alfa=20/360;belt=20/360;dxita_1=2*pi;%给定值
xita_2=0.3;xita_4=0.4;xita_5=0.6;XD=20;%给定值
xita_11=[-2.5:
0.01:
3.78];%给定值
M=[];
fori=1:
length(xita_11)
i
xita_1=xita_11(i);
Fx=[l1*cos(xita_1)+l2*cos(xita_2)+l3*cos(xita_4-belt)-XD;l1*sin(xita_1)+l2*sin(xita_2)-l3*sin(xita_4-belt);...
l6*cos(xita_1+alfa)+l5*cos(xita_5)+l4*cos(xita_4)-XD;l6*sin(xita_1+alfa)+l5*sin(xita_5)-l4*sin(xita_4)];% 初始误差
ff=abs(max(Fx));%初始误差模
nn=0;%循环次数
h0=0.0001;%循环条件
whileff>h0
nn=nn+1;
%yakebi
Yn=[-l1*sin(xita_2)-l3*sin(xita_4-belt)0-1;l2*cos(xita_2)-l3*cos(xita_4-belt)00;...
0-l4*sin(xita_4)-l5*sin(xita_5)-1;0-l4*cos(xita_4)l5*cos(xita_5)0];%雅克比矩阵
%%%%%%%
Fx=[l1*cos(xita_1)+l2*cos(xita_2)+l3*cos(xita_4-belt)-XD;l1*sin(xita_1)+l2*sin(xita_2)-l3*sin(xita_4-belt);...
l6*cos(xita_1+alfa)+l5*cos(xita_5)+l4*cos(xita_4)-XD;l6*sin(xita_1+alfa)+l5*sin(xita_5)-l4*sin(xita_4)];%误差值
xn_1=[xita_2;xita_4;xita_5;XD];%上次值
xn=xn_1-Yn\Fx;%迭代新值
ff=abs(max(Fx));%循环条件
xita_2=xn
(1);
xita_4=xn
(2);
xita_5=xn(3);
XD=xn(4);
ifff xn_1; xita_2=xn_1 (1);xita_4=xn_1 (2);xita_5=xn_1(3);XD=xn_1(4); xn_2=[xn_1 (1)*360;xn_1 (2)*360;xn_1(3)*360;xn_1(4)]; break end end M=[M;xn_2']; end xxxx=0: 0.01: 6.28; plot(xxxx,M(: 4))%xita_1与滑块位移曲线 set(gca,'yTick',[20040060080010001200]);%纵坐标间隔200一个刻度 set(gcf,'Color',[1,1,1]);%白色背景 set(gca,'box','off')%去掉方框 xlabel('角位移(deg)','fontsize',12) ylabel('平均位移(mm)','fontsize',12) 滑块位移-角位移曲线图 速度 clearall clc formatlong figure l1=440;l2=490;l3=249;l4=540.2258;l5=370;l6=500;%给定值 alfa=20/360;belt=20/360;dxita_1=2*pi;%给定值 xita_2=0.3;xita_4=0.4;xita_5=0.6;XD=20;%给定值 xita_11=[-2.5: 0.01: 3.78];%给定值 M=[]; fori=1: length(xita_11) i xita_1=xita_11(i); Fx=[l1*cos(xita_1)+l2*cos(xita_2)+l3*cos(xita_4-belt)-XD;l1*sin(xita_1)+l2*sin(xita_2)-l3*sin(xita_4-belt);... l6*cos(xita_1+alfa)+l5*cos(xita_5)+l4*cos(xita_4)-XD;l6*sin(xita_1+alfa)+l5*sin(xita_5)-l4*sin(xita_4)];% 初始误差 ff=abs(max(Fx));%初始误差模 nn=0;%循环次数 h0=0.0001;%循环条件 whileff>h0 nn=nn+1; %yakebi Yn=[-l1*sin(xita_2)-l3*sin(xita_4-belt)0-1;l2*cos(xita_2)-l3*cos(xita_4-belt)00;... 0-l4*sin(xita_4)-l5*sin(xita_5)-1;0-l4*cos(xita_4)l5*cos(xita_5)0];%雅克比矩阵 %%%%%%% Fx=[l1*cos(xita_1)+l2*cos(xita_2)+l3*cos(xita_4-belt)-XD;l1*sin(xita_1)+l2*sin(xita_2)-l3*sin(xita_4-belt);... l6*cos(xita_1+alfa)+l5*cos(xita_5)+l4*cos(xita_4)-XD;l6*sin(xita_1+alfa)+l5*sin(xita_5)-l4*sin(xita_4)];%误差值 xn_1=[xita_2;xita_4;xita_5;XD];%上次值 xn=xn_1-Yn\Fx;%迭代新值 ff=abs(max(Fx));%循环条件 xita_2=xn (1); xita_4=xn (2); xita_5=xn(3); XD=xn(4); ifff xn_1; xita_2=xn_1 (1);xita_4=xn_1 (2);xita_5=xn_1(3);XD=xn_1(4); xn_2=[xn_1 (1)*360;xn_1 (2)*360;xn_1(3)*360;xn_1(4)]; break end end M=[M;xn_2'];%M第一列到第四列分别为xita_2;xita_4;xita_5;XD end %M(1,: )%按公式行不通 %CC=[]; %fori=1: length(M(: 1)) %xita_2=M(i,1); %xita_4=M(i,2); %xita_5=M(i,3); %XD=M(i,4); %A=[-l2*sin(xita_2)-l3*sin(xita_4-belt)0-1;l2*cos(xita_2)-l3*cos(xita_4-belt)00;... %0-l4*sin(xita_4)-l5*sin(xita_5)-1;0-l4*cos(xita_4)l5*cos(xita_5)0]; % %B=[l1*dxita_1*sin(xita_1);-l1*dxita_1*cos(xita_1);l6*dxita_1*sin(xita_1+alfa);-l6*dxita_1*cos(xita_1+alfa)] %C=A\B; %C=[C;i]; %CC=[CC;C']; %end %CC; %按斜率公式 DD=[] xita_111=[-2.5: 0.01: 3.78] fori=1: length(M(: 4))-1 dd=(M(i+1,4)-M(i,4))./(xita_111(i+1)-xita_111(i)); DD=[DD;ddxita_111(i)]; end xxxx=0: 0.01: 6.27; plot(xxxx,DD(: 1))%xita_1与滑块位移曲线 %set(gca,'yTick',[20040060080010001200]);%纵坐标间隔200一个刻度 set(gcf,'Color',[1,1,1]);%白色背景 set(gca,'box','off')%去掉方框 xlabel('时间','fontsize',12) ylabel('速度mm/s','fontsize',12) 滑块速度曲线图 加速度 clearall clc formatlong figure l1=440;l2=490;l3=249;l4=540.2258;l5=370;l6=500;%给定值 alfa=20/360;belt=20/360;dxita_1=2*pi;%给定值 xita_2=0.3;xita_4=0.4;xita_5=0.6;XD=20;%给定值 xita_11=[-2.5: 0.01: 3.78];%给定值 M=[]; fori=1: length(xita_11) i; xita_1=xita_11(i); Fx=[l1*cos(xita_1)+l2*cos(xita_2)+l3*cos(xita_4-belt)-XD;l1*sin(xita_1)+l2*sin(xita_2)-l3*sin(xita_4-belt);... l6*cos(xita_1+alfa)+l5*cos(xita_5)+l4*cos(xita_4)-XD;l6*sin(xita_1+alfa)+l5*sin(xita_5)-l4*sin(xita_4)];% 初始误差 ff=abs(max(Fx));%初始误差模 nn=0;%循环次数 h0=0.0001;%循环条件 whileff>h0 nn=nn+1; %yakebi Yn=[-l1*sin(xita_2)-l3*sin(xita_4-belt)0-1;l2*cos(xita_2)-l3*cos(xita_4-belt)00;... 0-l4*sin(xita_4)-l5*sin(xita_5)-1;0-l4*cos(xita_4)l5*cos(xita_5)0];%雅克比矩阵 %%%%%%% Fx=[l1*cos(xita_1)+l2*cos(xita_2)+l3*cos(xita_4-belt)-XD;l1*sin(xita_1)+l2*sin(xita_2)-l3*sin(xita_4-belt);... l6*cos(xita_1+alfa)+l5*cos(xita_5)+l4*cos(xita_4)-XD;l6*sin(xita_1+alfa)+l5*sin(xita_5)-l4*sin(xita_4)];%误差值 xn_1=[xita_2;xita_4;xita_5;XD];%上次值 xn=xn_1-Yn\Fx;%迭代新值 ff=abs(max(Fx));%循环条件 xita_2=xn (1); xita_4=xn (2); xita_5=xn(3); XD=xn(4); ifff xn_1; xita_2=xn_1 (1);xita_4=xn_1 (2);xita_5=xn_1(3);XD=xn_1(4); xn_2=[xn_1 (1)*360;xn_1 (2)*360;xn_1(3)*360;xn_1(4)]; break end end M=[M;xn_2'];%M第一列到第四列分别为xita_2;xita_4;xita_5;XD end %M(1,: )%按公式行不通 %CC=[]; %fori=1: length(M(: 1)) %xita_2=M(i,1); %xita_4=M(i,2); %xita_5=M(i,3); %XD=M(i,4); %A=[-l2*sin(xita_2)-l3*sin(xita_4-belt)0-1;l2*cos(xita_2)-l3*cos(xita_4-belt)00;... %0-l4*sin(xita_4)-l5*sin(xita_5)-1;0-l4*cos(xita_4)l5*cos(xita_5)0]; % %B=[l1*dxita_1*sin(xita_1);-l1*dxita_1*cos(xita_1);l6*dxita_1*sin(xita_1+alfa);-l6*dxita_1*cos(xita_1+alfa)] %C=A\B; %C=[C;i]; %CC=[CC;C']; %end %CC; %按斜率公式 DD=[];%速度数据存于此矩阵 xita_111=[-2.5: 0.01: 3.78]; fori=1: length(M(: 4))-1 dd=(M(i+1,4)-M(i,4))./(xita_111(i+1)-xita_111(i)); DD=[DD;ddxita_111(i)];%DD第一列为速度数据,第二列为时间当量数据 end EE=[]% 加速度数据存于此矩阵 DD; %plot(DD(: 2),DD(: 1))%xita_1与滑块位移曲线 forii=1: length(DD(: 1))-1 ddd=(DD(ii+1,1)-DD(ii,1))./(DD(ii+1,2)-DD(ii,2)); EE=[EE;dddxita_111(ii)]; end xxxx=0: 0.01: 6.26; length(xxxx); plot(xxxx,EE(: 1))%xita_1与滑块位移曲线 %set(gca,'yTick',[20040060080010001200]);%纵坐标间隔200一个刻度 set(gcf,'Color',[1,1,1]);%白色背景 set(gca,'box','off')%去掉方框 xlabel('时间t','fontsize',12) ylabel('加速度mm/s^2','fontsize',12) 滑块加速度曲线图 实验三凸轮结构运动规律的计算机程序设计 源程序: #include"stdio.h" #include"math.h" #definePi3.1415927 voidmain() {double P1,P2,P3,P4,P5,P6,P7,F1,F2,F3,F4,F5,F6,F7,M,A1,A2,C1,C2,C3,C4,C5,C6,C7,B1,B2,B3,B4,B5,B6,B7,S1,S2,S3,S4,S5,S6,S7,V1,V2,V3,V4,V5,V6,V7,a1,a2,a3,a4,a5,a6,a7,J1,J2,J3,J4,J5,J6,J7,T0,T1,T2,T3,T4,T5,T6,T7; printf("请输入T0-T7\n"); scanf("%lf%lf%lf%lf%lf%lf%lf%lf",&T0,&T1,&T2,&T3,&T4,&T5,&T6,&T7); F1=2*(T1-T0)/Pi;F2=2*(T2-T1)/Pi;F3=2*(T3-T2)/Pi;F4=2*(T4-T3)/Pi;F5=2*(T5-T4)/Pi;F6=2*(T6-T5)/Pi;F7=2*(T7-T6)/Pi; P1=(T1-T0)/F1;P2=(T2-T1)/F2+Pi/4;P3=(T3-T2)/F3+2*Pi/4;P4=(T4-T3)/F4+3*Pi/4;P5=(T5-T4)/F5+4*Pi/4;P6=(T6-T5)/F6+5*Pi/4;P7=(T7-T6)/F7+6*Pi/4; M=(F1+F2*Pi/2+F3)/(F5+F6*Pi/2+F7);A1=1.0/(F3*F3+0.5*(T1-T2)*(T2-T1)-F1*F1+F3*(1-T3)+(T2-T1)*(1-T2)+F1-M*(F7*F7+0.5*(T6-T5)*(T6-T5)-F5*F5+F5*(1-T4)+(T6-T5)*(1-T6))); A2=M*A1; C1=F1*A1;C2=-A1*T1+C1;C3=A1*T2+C2;C4=A1*F3+C3;C5=-A2*F5+C4;C6=A2*T5+C5;C7=-A2*T6+C6; B1=0;B2=-A1*(F1*F1+0.5*T1*T1)+T1*(C1-C2)+B1;B3=-A1*(F3*F3+0.5*T2*T2)+T2*(C2-C3)+B2;B4=T3*(C3*C4)+B3;B5=T4*(C4*C5)+B4;B6=A2*(F5*F5+0.5*T5*T5)+T5*(C5-C6)+B5;B7=-A2*(F7*F7+0.5*T6*T6)+T6*(C6-C7)+B6; S1=-A1*F1*F1*sin(P1)+C1*T1+B1;S3=-A1*F3*F3*sin(P3)+C3*T3+B3;S5=-A2*F5*F5*sin(P5)+C5*T5+B5;S7=-A2*F7*F7*sin(P7)+C7*T7+B7;S2=A1*T2*T2/2+C2*T2+B2;S4=C4*T4+B4;S6=A2*T6*T6/2+C6*T6+B6; V1=-A1*F1*cos(P1)+C1;V3=-A1*F3*cos(P3)+C3;V5=-A2*F5*cos(P5)+C5;V7=-A2*F7*cos(P7)+C7;V2=A1*T2+C2;V4=C4;V6=-A2*T6+C6; a1=A1*sin(P1);a3=A1*sin(P3);a5=A2*sin(P5);a7=A2*sin(P7);a2=A1;a4=0;a6=-A2; J1=A1/F1*cos(P1);J3=A1/F3*cos(P3);J5=A2/F5*cos(P5);J7=A2/F7*cos(P7);J2=0;J4=0;J6=0; printf("s1-s7\n"); printf("%.3lf%.3lf%.3lf%.3lf%.3lf%.3lf%.3lf%.3lf\n",S1,S2,S3,S4,S5,S6,S7); printf("V1-V7\n"); printf("%.3lf%.3lf%.3lf%.3lf%.3lf%.3lf%.3lf%.3lf\n",V1,V2,V3,V4,V5,V6,V7); printf("a1-a7\n"); printf("%.3lf%.3lf%.3lf%.3lf%.3lf%.3lf%.3lf%.3lf\n",a1,a2,a3,a4,a5,a6,a7); printf("J1-J7\n"); printf("%.3lf%.3lf%.3lf%.3lf%.3lf%.3lf%.3lf%.3lf\n",J1,J2,J3,J4,J5,J6,J7); } 运行结果图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机构 设计 实验