Q4=PI-atan((l2+l1*sin(Q2))/(-l1*cos(Q2)));
else
Q4=PI-atan((l2+l1*sin(Q2))/(-l1*cos(Q2)));
if(Q2!
=PI/2&&Q2!
=1.5*PI)
sA=l1*cos(Q2)/cos(Q4);
elseif(Q2==PI/2)
sA=l1+l2;
else
sA=l2-l1;
/*sA1=-l1*w1*sin(Q2-Q4);*/
w3=l1*C*cos(Q2-Q4)/sA;
Q411=(C*C*l1*sin(Q4-Q2)-2*w3*sA)/sA;
a3=Q411;
if(((l7-l4*sin(Q4))/l5)>=0&&((l7-l4*sin(Q4))/l5)<=1)
Q5=PI-asin((l7-l4*sin(Q4))/l5);
elseif(((l7-l4*sin(Q4))/l5)>=-1&&((l7-l4*sin(Q4))/l5)<0)
Q5=PI+asin((l7-l4*sin(Q4))/l5);
Se=l4*cos(Q4)+l5*cos(Q5);
Q51=-w3*l4*cos(Q4)/(l5*cos(Q5));
w4=Q51;
Se1=-w3*l4*sin(Q4-Q5)/cos(Q5);
/*Q511=(Q41*Q41*l4*sin(Q4)+Q51*Q51*l5*sin(Q5)-Q411*Q411*l4*cos(Q4))/(l5*cos(Q5));*/
Se11=-(a3*l4*sin(Q4-Q5)+w3*w3*l4*cos(Q4-Q5)-w4*w4*l5)/cos(Q5);
line(100,200,500,200);
setcolor(5);
line(492,201,500,200);
line(492,199,500,200);
line(100,10,100,350);
setcolor(5);
line(99,18,100,10);
line(101,18,100,10);
putpixel(100+Q2*180/PI,200-Se/5,1);/*绘制位移曲线*/
putpixel(100+Q2*180/PI,200-Se1/100,2);/*绘制速度曲线*/
putpixel(100+Q2*180/PI,200-Se11/100,4);}/*绘制加速度曲线*/
setcolor(10);
settextjustify(CENTER_TEXT,0);
outtextxy(300,300,"RED___JIASUDU");
outtextxy(300,330,"GREEN___SUDU");
outtextxy(300,360,"BLUE___WEIYI");
/*outtextxy(300,50,"SUDUJIASUDUWEIYIGUANXIQUXIANTU");*/
outtextxy(300,50,"SUDUJIASUDUWEIYIGUANXIQUXIANTU");
getch();
closegraph();}
/***************************运动模拟图函数*****************************/
voiddtmn()
{
intgd=DETECT,gmode,n;
initgraph(&gd,&gmode,"c:
\\turboc2");
cleardevice();
do
{setbkcolor(0);
sgd();
}while(!
kbhit());
getch();
}
/****************************导轨函数*********************************/
voidslide(floatx0,floaty0,floatx1,floath)
{floatxr;
inti,n;
xr=x0+x1;
line(x0,y0,xr,y0);
n=x1/h;
for(i=0;i<=n;i++)
{moveto(x0+i*h,y0+h);
lineto(x0+(i+1)*h,y0);
}
}
/************************摇块函数**************************************/
voidpist(floatx0,floaty0,floatl,floath,floattheta)
{floatx,y;
x=x0-cos(theta)*l/2+h/2*sin(theta);
y=y0+l/2*sin(theta)+h/2*cos(theta);
moveto(x,y);
linerel(l*cos(theta),-l*sin(theta));/***绘制轮廓线******/
linerel(-h*sin(theta),-h*cos(theta));
linerel(-l*cos(theta),l*sin(theta));
lineto(x,y);
}
/*************************支点函数**************************************/
voidpirot(floatx0,floaty0,floatl)
{/*floatPI=3.1415926;*/
floatx,y;
inti,n;
inth=4;
setcolor(6);
circle(x0,y0,3);
setcolor(9);
x=x0-l/2;
y=y0+sin(PI/3)*l;
moveto(x0,y0);
lineto(x,y);
linerel(18,0);
lineto(x0,y0);
n=l/4;
for(i=0;i<=n;i++)
{moveto(x+i*h,y+h);
lineto(x+(i+1)*h,y);
}
}
/************************连杆,摇块,导轨函数****************************/
voidsgd()
{inti;
intx04,y04,x02,y02;
intl04b=l4/2;
intl02a=l1/2;
floatlbc=l5/2;
floatxa,ya,xb,yb,xc,yc,l;
floatss,theta;
for(i=0;i<=63;i++)/*****动态模拟******/
{ss=i*0.1;
/*坐标计算*/
x04=400;x02=400;
y04=400;y02=225;
xa=x02+l02a*cos(ss);
ya=y02+l02a*sin(ss);
l=sqrt((xa-x04)*(xa-x04)+(ya-y04)*(ya-y04));
xb=x04+(xa-x04)*l04b/l;
yb=y04+(ya-y04)*l04b/l;
yc=135;
xc=xb-sqrt(lbc*lbc-(yb-yc)*(yb-yc));
theta=-atan((ya-y04)/(xa-x04));
setcolor(6);
cleardevice();
circle(xb,yb,3);
circle(xa,ya,3);
circle(xc,yc,3);
setcolor(9);
line(50,135,500,135);
rectangle(xc+7,yc+6,xc-7,yc-6);/*绘制滑块C*/
line(x02,y02,xa,ya);
line(xc,yc,xb,yb);
line(xb,yb,x04,y04);
setcolor(9);
pirot(x02,y02,16);/*绘制支点X04,X02*/
pirot(x04,y04,16);
pist(xa,ya,20,10,theta);/*绘制滑块A*/
slide(60,135,100,10);
slide(500,135,570,10);
setcolor
(2);
settextstyle(3,0,2);
outtextxy(200,30,"DAOGANYUNDONGMONI");
outtextxy(200,440,"PRESSANYKEYTORETURN");
outtextxy(200,420,"PRESSBREAKTOSTOP");
delay(1000);}
}
0-90.855302.8446.525-7945.676
5-95.677390.3175.906-7767.201
10-101.665470.8925.181-7542.569
15-108.727544.9054.378-7274.238
20-116.773612.6883.525-6964.807
25-125.719674.5562.644-6617.047
30-135.484730.7991.758-6233.863
35-145.994781.6790.885-5818.282
40-157.174827.4330.040-5373.429
45-168.955868.268-0.761-4902.485
50-181.270904.365-1.508-4408.655
zhuanjiaoweiyisudujiaojiasudujiasudu
55-194.055935.878-2.188-3895.115
60-207.246962.942-2.795-3365.007
65-220.783985.665-3.319-2821.384
70-234.6061004.139-3.757-2267.217
75-248.6571018.434-4.101-1705.345
80-262.8771028.610-4.350-1138.495
85-277.2101034.698-4.500-569.231
90-291.6001036.726-4.5500.006
95-305.9901034.695-4.500566.923
100-320.3231028.609-4.3501129.368
105-334.5431018.435-4.1011685.306
110-348.5941004.138-3.7572232.816
105-334.5431018.435-4.1011685.306
110-348.5941004.138-3.7572232.816
zhuanjiaoweiyisudujiaojiasudujiasudu
115-362.417985.664-3.3192770.065
120-375.954962.941-2.7953295.282
125-389.145935.877-2.1883806.716
130-401.930904.363-1.5084302.614
135-414.245868.267-0.7614781.164
140-426.026827.4320.0405240.429
145-437.206781.6780.8855678.334
150-447.716730.7981.7586092.539
155-457.481674.5552.6446480.422
160-466.427612.6873.5256838.999
165-474.473544.9044.3787164.852
170-481.535470.8915.1817454.074
zhuanjiaoweiyisudujiaojiasudujiasudu
175-487.523390.3175.9067702.266
180-492.345302.8446.5257904.503
185-495.902208.1437.0078055.423
190-498.092105.9197.3188149.294
195-498.808-4.0547.4238180.248
200-497.943-121.8847.2908142.548
205-495.387-247.5026.8868030.973
210-491.033-380.5796.1857841.249
215-484.783-520.4355.1717570.547
220-476.550-665.9283.8387217.901
225-466.267-815.3452.1996784.396
230-453.895-966.3020.2906273.208
zhuanjiaoweiyisudujiaojiasudujiasudu
235-439.432-1115.682-1.8295689.107