四工位專用機床設計(全套含CAD圖紙和說明書),四工位,專用,機床,設計,全套,cad,圖紙,以及,說明書,仿單
設計任務分析
一:工作原理及工藝動作過程
四工位專用機床是在四個工位上分別完成工件的裝卸、鉆孔、擴孔、鉸孔工作的專用加工設備。機床的執(zhí)行動作有兩個:一是裝有工件的回轉工作臺的間歇轉動;二是裝有三把專用刀具的主軸箱的往復移動(刀具的轉動由專用電機驅動)。兩個執(zhí)行動作由同一臺電機驅動,工作臺轉位機構和主軸箱往復運動機構按動作時間順序分支并列,組合成一個機構系統(tǒng)。
二:原始數(shù)據(jù)及設計要求
(1)刀具頂端離開工作表面65mm,快速移動送進60mm后,再勻速送進60mm(包括5mm刀具切入量、45mm工件孔深、10mm刀具切出量,如右圖所示),然后快速返回?;爻毯瓦M程的平均速度之比K=2。
(2)刀具勻速進給速度為2mm/s,工件裝卸時間不超過10s。
(3)機床生產率每小時約60件。
(4)執(zhí)行機構及傳動機構能裝入機體內。
(5)傳動系統(tǒng)電機為交流異步電動機。
三:任務分析
(1) 為了達到進給要求,適宜用凸輪機構來控制鉆頭的運動。由于刀具勻速進給速度為2mm/s,所以就要求凸輪的轉速為每四十八秒一轉。
(2) 考慮到加工的精密穩(wěn)定性,本機床的傳動機構宜多采用齒輪。并且凸輪的運動中不應出現(xiàn)剛性沖擊,要選擇合適的運動規(guī)律,如五次多項式。
(3) 為實現(xiàn)工作臺的間歇運動,可以選擇槽輪機構。
(4) 為保證鉆頭加工位置的準確,還應該設計定位機構。
(5) 最后需要繪制出至少兩張A1圖來表達本機床的設計思想。分別為機箱傳動圖、槽輪機構和定位機構既工作臺轉位機構和定位機構。
四:設計流程
1.專用機床的刀具進給機構方案圖及運動循環(huán)圖。
2.設計工作臺轉位機構及定位機構方案圖及運動循環(huán)圖。
3.設計圓柱凸輪機構。
4.設計定位凸輪機構。
5.凸輪機構設計計算,選擇和設計從動件的運動規(guī)律。
6.編寫設計說明書。
機床結構和工作原理
一:四工位專用機床工作原理及外形尺寸
專用機床旋轉工作臺有四個工作位置Ⅰ、Ⅱ、Ⅲ、Ⅳ(如下圖所示),分別對應工件的裝卸、鉆孔、擴孔和鉸孔。主軸箱上裝有三把刀具,對應于工位Ⅱ的位置裝鉆頭,Ⅲ的位置裝擴孔鉆,Ⅳ的位置裝鉸刀。刀具由專用電動機驅動繞其自身軸線轉動。主軸箱每向左移動送進一次,在四個工位上分別完成相應的裝卸工件、鉆孔、擴孔和鉸孔工作。當主軸箱右移(退回)到刀具離開工件后,工作臺回轉90度,然后主軸箱再次左移,這時,對其中每一個工件來說,它進入了下一個工位的加工,依次循環(huán)四次,一個工件就完成裝、鉆、擴、鉸、卸等工序。由于主軸箱往復一次,在四個工位上同時進行工作,所以每次就有一個工件完成上述全部工序。
二:本機床的內部結構和相關參數(shù)。
?。?)本機床采用的是每分鐘960轉的交流異步電機,通過皮帶傳動、齒輪行星輪系和一系列的定軸輪系將轉速降為每四十八秒1轉,鉆頭的進給通過齒條傳動,運動平穩(wěn)。具體結構如下:
(2)各機件類型及參數(shù)(單位mm)
編號
零件類型
屬性
編號
零件類型
屬性
1
插銷輪
R=60
12
圓柱齒輪
模數(shù)2
齒數(shù)72
2
小凸輪
R=130 h=20
13
圓柱齒輪
模數(shù)2
齒數(shù)18
3
槽輪
R=169.7
14
圓柱齒輪
模數(shù)2
齒數(shù)71
4
撥 輪
R=121.6
15
圓柱凸輪
R=125 L=150
5
圓柱齒輪
模數(shù)2
齒數(shù)68
16
滾子
R=15
6
圓柱齒輪
模數(shù)2
齒數(shù)17
17
小齒條
模數(shù)2
齒數(shù)14
7
圓柱齒輪
模數(shù)2
齒數(shù)17
18a/b
圓柱齒輪
模數(shù)2
Z=22/66
8
圓柱齒輪
模數(shù)2
齒數(shù)102
19
大齒條
模數(shù)2
齒數(shù)45
9
圓柱齒輪
模數(shù)2
齒數(shù)36
20
電機
1.5kw /960轉
10
圓柱齒輪
模數(shù)2
齒數(shù)142
21
帶輪
Z型
D=50
11
圓柱齒輪
模數(shù)2
齒數(shù)20
22
帶輪
SPZ型
D=160
23
滾子
D=16
(3)各輪的轉速
電機960轉每分;22處,齒輪6為443.75轉每分;桿8-11.處11.75轉每分;
圓柱凸輪;小凸輪,撥輪均為48秒每轉;插銷輪,槽輪為48秒1/4轉。
齒輪13/14采用正變位,R13=18.60674,x=0.338;R14=73.39326,x=1.3338.用來保證安裝軸在同一條水平線上,利于安裝。
5.6.7.8為2K-H行星輪系,該轉動比為25,其效率為90.4%,且為同軸。
刀具
進程
回程
刀具在工件外
刀具在工件內
刀具在工件外
工作臺
轉位
靜止
轉位
圓柱凸輪
進程
回程
近休
定位凸輪
遠休
回程
近休
進程
遠休
槽輪
轉動
靜止
轉動
(4) 行程循環(huán)
圓柱凸輪
一:圓柱凸輪的參數(shù):
通常直動滾子從動件的圓柱凸輪的許用壓力角[]=25度-35度。過理論廓曲線上任意一點做法線nn, nn與y軸的夾角即為機構的壓力角。因此基圓柱半徑必須滿足 半徑大于等于最大速度比上角速度與許用壓力角正弦的積。既公式
另外大速度,可減小圓柱凸輪的行程,故在18a/b處兩齒輪的比值為3,由此計算得出其半徑為95.44mm,
經過考慮取半徑為125mm,長度取150mm。
二:主凸輪輪廓線及其運動曲線
凸輪廓線
(1)快進行程0—45度,五次多項式曲線;
(2)工進行程45—170度,一次多項式曲線
170—195度,五次多項式曲線;
(3)快回行程195—292.5度,正弦加速度曲線;
(4)近休292.5—360度。
(方程來自《機械原來》(孫恒 陳作模 葛文杰 主編)(高等教育出版社))
位移和輪廓線
速度線(上圖)
加速度線(上圖)
位移
19
PHI=15,PSI=3.753079
PHI=30,PSI=14.617199
PHI=45,PSI=20.000000
PHI=60,PSI=22.000000
PHI=75,PSI=24.000000
PHI=90,PSI=26.000000
PHI=105,PSI=28.000000
PHI=120,PSI=30.000000
PHI=135,PSI=32.000000
PHI=150,PSI=34.000000
PHI=165,PSI=36.000000
PHI=180,PSI=38.755676
PHI=195,PSI=39.972656
PHI=210,PSI=39.085434
PHI=225,PSI=33.644810
PHI=240,PSI=23.061991
PHI=255,PSI=11.163046
PHI=270,PSI=2.910990
PHI=285,PSI=0.118404
PHI=300,PSI=0.000000
PHI=315,PSI=0.000000
PHI=330,PSI=0.000000
PHI=345,PSI=0.000000
PHI=360,PSI=0.000000
print any key to graphics...
速度
PHI=15,PSI=6.685200
PHI=30,PSI=7.407516
PHI=45,PSI=1.500000
PHI=60,PSI=1.500000
PHI=75,PSI=1.500000
PHI=90,PSI=1.500000
PHI=105,PSI=1.500000
PHI=120,PSI=1.500000
PHI=135,PSI=1.500000
PHI=150,PSI=1.500000
PHI=165,PSI=1.500000
PHI=180,PSI=1.953126
PHI=195,PSI=0.005931
PHI=210,PSI=-1.993546
PHI=225,PSI=-6.252020
PHI=240,PSI=-9.096655
PHI=255,PSI=-8.070049
PHI=270,PSI=-4.059062
PHI=285,PSI=-0.528666
PHI=300,PSI=0.000000
PHI=315,PSI=0.000000
PHI=330,PSI=0.000000
PHI=345,PSI=0.000000
PHI=360,PSI=0.000000
print any key to graphics...
加速度
PHI=15,PSI=3.481503
PHI=30,PSI=-2.814736
PHI=45,PSI=0.000000
PHI=60,PSI=0.000000
PHI=75,PSI=0.000000
PHI=90,PSI=0.000000
PHI=105,PSI=0.000000
PHI=120,PSI=0.000000
PHI=135,PSI=0.000000
PHI=150,PSI=0.000000
PHI=165,PSI=0.000000
PHI=180,PSI=-1.280361
PHI=195,PSI=0.000346
PHI=210,PSI=-0.917922
PHI=225,PSI=-1.042878
PHI=240,PSI=-0.266923
PHI=255,PSI=0.739619
PHI=270,PSI=1.107226
PHI=285,PSI=0.518333
PHI=300,PSI=0.000000
PHI=315,PSI=0.000000
PHI=330,PSI=0.000000
PHI=345,PSI=0.000000
PHI=360,PSI=0.000000
print any key to graphics..
小凸輪
一:小凸輪輪廓線及其運動曲線
凸輪廓線 (1)推程 0—30度,正弦加速度曲線;
(2)遠休30—120度。
(3)回程120—150度,正弦加速度曲線。
(4)近休150—360度。
mm。由于尺寸的關系取130mm。 最大壓力角為
(方程來自《機械原來》(孫恒 陳作模 葛文杰 主編)(高等教育出版社))
定位機構
為保證鉆頭加工位置的準確,本方案設計了定位機構,采用從工作臺后面定位的方法,具體結構見下圖:
槽輪機構
為實現(xiàn)工作臺的間歇運動,本方案選擇了槽輪機構。槽輪48秒轉過1/4圈,使工作臺轉換一個位置,完成一道工序。具體結構如下:
外槽輪的有關尺寸:
圓銷回轉半徑R=169.7mm,
圓銷半徑r=R/6=28.3mm,
槽頂高S=169.7mm,
槽底高B=38mm,
槽條h=S-B=131.7mm,
槽頂側壁厚b=(0.6-0.8)r=19.8mm,
鎖止弧半徑R-r-b=121.6mm,
中心距240mm。
自我鑒定
一: 方案評議
本方案考慮到了加工的精密準確性,傳動機構多采用了齒輪,鉆頭的進給是靠齒條驅動,相當?shù)姆€(wěn)定和準確。齒輪間的傳動比都盡可能的取了較大的值,這樣減少了齒輪的數(shù)量,降低了機床的成本。
另外,圓柱凸輪的進程1,3段采用了五次多項式運動規(guī)律2段采用了二次多項式運動的規(guī)律,回程采用了后半段正弦加速度運動規(guī)律,整個過程無剛性沖擊,保證了運動的穩(wěn)定,降低了噪聲。
由于這是機械原理的課程設計課,設計過程中沒有考慮各構件的強度,所以各構件的尺寸(如齒條尺寸的確定及安裝間距的確定)尚須進一步的學習去完善。
二:設計體會
本次設計的整個過程全部在計算機上進行,中途遇到了很多的問題,但在老師和同學的幫助下,我最終克服了種種困難,按期完成了作業(yè)。作為一個設計人員,務必要有足夠的耐心,去面對種種的麻煩;務必要有足夠的細心,去解決一些細小的問題;務必要有足夠的責任心,去設計自己的方案。這就是我在本次設計過程中最重要的心得體會。
初次進行一次完整的設計,其中有許多的不足,還希望老師和同學們能多多批評指正,讓我做得更好。最后,向所有在本次設計過程中幫助和支持過我的老師和同學致以真誠的謝意,特別是指導我設計的老師,謝謝你!
附錄1五次多項式程序
#include "stdio.h"
#include "stdlib.h"
#include "math.h"
int cagaus(A,B,n,X)
int n;
double A[],B[],X[];
{
int *js,l,k,i,j,is,p,q;
double d,t;
js=malloc(n*sizeof(int));
l=1;
for(k=0;k<=n-2;k++)
{d=0.0;
for(i=k;i<=n-1;i++)
for(j=k;j<=n-1;j++)
{t=fabs(A[i*n+j]);
if(t>d) {d=t; js[k]=j;
is=i;
}}
if(d+1.0==1.0) l=0;
else {if(js[k]!=k)
for(i=0;i<=n-1;i++)
{p=i*n+k; q=i*n+js[k]; t=A[p]; A[p]=A[q];
A[q]=t;
}
if(is!=k)
{for (j=k;j<=n-1;j++)
{p=k*n+j; q=is*n+j; t=A[p]; A[p]=A[q];
A[q]=t;}
t=B[k]; B[k]=B[is];B[is]=t;}}
if(l==0) {free(js); printf("fail");
return(0);}
d=A[k*n+k];
for(j=k+1;j<=n-1;j++)
{p=k*n+j; A[p]=A[p]/d;}
B[k]=B[k]/d;
for(i=k+1; i<=n-1;i++)
{for(j=k+1;j<=n-1;j++)
{p=i*n+j; A[p]=A[p]-A[i*n+k]*A[k*n+j];}
B[i]=B[i]-A[i*n+k]*B[k];}}
d=A[(n-1)*n+n-1];
if(fabs(d)+1.0==1.0) {free(js);
printf("fail/n");
return(0); }
X[n-1]=B[n-1]/d;
for(i=n-2;i>=0;i--)
{t=0.0;
for(j=i+1;j<=n-1;j++)
t=t+A[i*n+j]*X[j];
X[i]=B[i]-t;}
js[n-1]=n-1;
for(k=n-1;k>=0;k--)
if(js[k]!=k) {t=X[k];
X[k]=X[js[k]];
X[js[k]]=t;}
free(js);
return(1);}
#include "stdio.h"
#include "stdlib.h"
#include "math.h"
#define pi 3.141592654
#define y pi*170/180
#define z pi*130/120
#define a pi*7.5/180
main()
{int i;
static double A[6][6]=
{{1,y,y*y,y*y*y,y*y*y*y,y*y*y*y*y},
{1,z,z*z,z*z*z,z*z*z*z,z*z*z*z*z},
{0,a,2*a*y,3*a*y*y,4*a*y*y*y*y,5*a*y*y*y*y*y},
{0,a,2*a*z,3*a*z*z,4*a*z*z*z,5*a*z*z*z*z},
{0,0,2*a*a,6*a*a*y,12*a*a*y*y,20*a*a*y*y*y},
{0,0,2*a*a,6*a*a*z,12*a*a*z*z,20*a*a*z*z*z}
};
static double X[6],B[6]={110/3,40,1,0,0,0};
i=cagaus(A,B,6,X);
if(i!=0)
for(i=0;i<=5;i++)
printf("x(%d)=%e\n",i,X[i]);
getch() ;
}
附錄2圓柱凸輪廓線程序
位移和廓線:
#include
#include
#include
#include
main()
{
float r,ph,ps,hp,bh,m,p,si[361];
char *s;
int i,gd=DETECT,gm,y;
r=3.141592654/180;
ph=125*r;ps=25*r;hp=97.5*r;bh=60*r;m=45*r;
for(i=0;i<=360;i++){
p=i*r;
if(p>=m+ph+ps+hp){
si[i]=0;
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,si[i]);
continue;
}
if(p>=m+ph+ps){
si[i]=40-40*(p-ph-ps-m)/hp+40*(sin(360*r*(p-ph-ps-m)/hp))/(360*r);
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,si[i]);
continue;
}
if(p>=ph+m) {
si[i]=8084.77-9391.62*p+3757.15*p*p-487.694*p*p*p-33.3693*p*p*p*p+8.98339*p*p*p*p*p;
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,si[i]);
continue;
}
if(p>=m) {
si[i]=20+(p-45*r)/7.5/r;
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,si[i]);
continue;
}
si[i]=363.2813*p*p*p-678.0476*p*p*p*p+341.3114*p*p*p*p*p;
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,si[i]);
}
printf("print any key to graphics...");
getch();
initgraph(&gd,&gm,"");
cleardevice();
line(50,400,450,400);
line(450,400,445,395);
line(450,400,445,405);
line(50,400,50,100);
line(50,100,45,105);
line(50,100,55,105);
outtextxy(50,450,"press any key to return...");
for(i=0;i<=360;i+=30){
s=itoa(i,s,10);
outtextxy(i+50,405,s);
line(i+50,400,i+50,395);
}
for(i=30;i<=250;i+=30){
s=itoa(i,"",30);
outtextxy(25,400-i,s);
line(50,400-i,55,400-i);
}
moveto(50,400);
setcolor(RED);
for(i=0;i<=360;i++){
y=si[i]*3;
lineto(i+50,400-y);
}
for(i=0;i<=360;i++){
y=si[i]*3;
if(fmod(i,3)==0)
circle(i+50,400-y,10);
}
getch();
closegraph();
}
速度程序:
#include
#include
#include
#include
main()
{
float r,ph,ps,hp,bh,m,p,sa[361];
char *s;
int i,gd=DETECT,gm,y;
r=3.141592654/180;
ph=125*r;ps=25*r;hp=97.5*r;bh=60*r;m=45*r;
for(i=0;i<=360;i++){
p=i*r;
if(p>=m+ph+ps+hp){
sa[i]=0;
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,sa[i]);
continue;
}
if(p>=m+ph+ps){
sa[i]=40*7.5*r*(cos(360*r*(p-ph-ps-m)/hp))/hp-40*7.5*r/hp;
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,sa[i]);
continue;
}
if(p>=ph+m) {
sa[i]=(-9391.62)*7.5*r+3757.15*15*r*p-487.694*22.5*r*p*p-33.3693*30*r*p*p*p+8.98339*37.5*r*p*p*p*p;
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,sa[i]);
continue;
}
if(p>=m) {
sa[i]=1.5;
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,sa[i]);
continue;
}
sa[i]=363.2813*22.5*r*p*p-678.0476*30*r*p*p*p+341.3114*37.5*r*p*p*p*p;
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,sa[i]);
}
printf("print any key to graphics...");
getch();
initgraph(&gd,&gm,"");
cleardevice();
line(50,400,450,400);
line(450,400,445,395);
line(450,400,445,405);
line(50,400,50,200);
line(50,200,45,205);
line(50,200,55,205);
outtextxy(50,450,"press any key to return...");
for(i=0;i<=360;i+=30){
s=itoa(i,s,10);
outtextxy(i+50,405,s);
line(i+50,400,i+50,395);
}
for(i=30;i<=120;i+=30){
outtextxy(25,370,"5");
outtextxy(25,340,"10");
outtextxy(25,310,"15");
outtextxy(25,280,"20");
line(50,400-i,55,400-i);
}
moveto(50,400);
setcolor(RED);
for(i=0;i<=360;i++){
y=sa[i]*6;
lineto(i+50,400-y);
}
getch();
closegraph();
}
加速度程序:
#include
#include
#include
#include
main()
{
float r,ph,ps,hp,bh,m,p,si[361];
char *s;
int i,gd=DETECT,gm,y;
r=3.141592654/180;
ph=125*r;ps=25*r;hp=97.5*r;bh=60*r;m=45*r;
for(i=0;i<=360;i++){
p=i*r;
if(p>=m+ph+ps+hp){
si[i]=0;
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,si[i]);
continue;
}
if(p>=m+ph+ps){
si[i]=(-360)*r*40*7.5*7.5*r*r*(sin(360*r*(p-ph-ps-m)/hp))/(2*hp*hp);
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,si[i]);
continue;
}
if(p>=ph+m) {
si[i]=3757.15*2*7.5*7.5*r*r-487.694*6*7.5*7.5*r*r*p-33.3693*12*7.5*7.5*r*r*p*p+8.98339*20*7.5*7.5*r*r*p*p*p;
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,si[i]);
continue;
}
if(p>=m) {
si[i]=0;
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,si[i]);
continue;
} si[i]=363.2813*6*7.5*7.5*r*r*p-678.0476*12*7.5*7.5*r*r*p*p+341.3114*20*7.5*7.5*r*r*p*p*p;
if(fmod(i,5)==0)
printf("PHI=%d,PSI=%f\n",i,si[i]);
}
printf("print any key to graphics...");
getch();
initgraph(&gd,&gm,"");
cleardevice();
line(50,400,450,400);
line(450,400,445,395);
line(450,400,445,405);
line(50,400,50,100);
line(50,100,45,105);
line(50,100,55,105);
outtextxy(50,450,"press any key to return...");
for(i=0;i<=360;i+=30){
s=itoa(i,s,10);
outtextxy(i+50,405,s);
line(i+50,400,i+50,395);
}
for(i=30;i<=250;i+=30){
s=itoa(i,"",30);
outtextxy(25,400-i,s);
line(50,400-i,55,400-i);
}
moveto(50,400);
setcolor(RED);
for(i=0;i<=360;i++){
y=si[i]*10;
lineto(i+50,400-y);
}
getch();
closegraph();
}
附錄3定位凸輪
#include "stdio.h"
#include
#include "math.h"
#define H 20 /*最大行程*/
#define h1 20
#define h2 20
#define W pi/24 /*角速度(度/秒)*/
#define K 5 /*循環(huán)步距*/
#define AA 30
#define AB 120
#define A1 30
#define A2 120
#define A3 150
#define A4 360
#define X0 450 /*凸輪轉軸坐標*/
#define Y0 240
#define pi 3.14159
#define t pi/180 /*度-->弧度*/
#define C3 159.2720
#define C4 -204.7863
#define C5 71.4439
main() /*主程序*/
{ float e,ro,rr,p,so,dx,dy,st,ct; /*變量說明*/
float s[200],ds[200],dv[200],da[200],x[200],y[200],xp[200],yp[200];
int a=DETECT,b,i=0,w=0;
/*---------------------------------------------*/
initgraph(&a,&b,"");
e=0; /*偏心距*/
ro=130; /*基圓半徑*/
rr=8; /*滾子半徑*/
so=sqrt(ro*ro-e*e);
/*---------------------------------------------*/
for(p=0;p<=A4;p+=K)
{if(p<=A1) /*推程快進勻速段*/
{s[i]=20*((p/30)-sin(2*pi*p/30)/(2*pi));
ds[i]=20*W*(1-cos(2*pi*p/30))/(30*t);
dv[i]=20*pi*pow(W,2)*sin(2*pi*p/30)/(pow(30*t,2)) ;
}
if(p>A1&&p<=A2)
{s[i]=20;
ds[i]=0;
dv[i]=0;}
if(p>A2&&p<=A3) /*推程工進勻速段*/
{s[i]=-20*(((p-240)/30)-sin(2*pi*(p-240)/30)/(2*pi))+20
;
ds[i]=-20*W*(1-cos(2*pi*(p-240)/30))/(30*t);
dv[i]=-20*pi*pow(W,2)*sin(2*pi*(p-240)/30)/(pow(30*t,2));}
if(p>A3) /*推程工進勻速段*/
{s[i]=0;
ds[i]=0;
dv[i]=0;}
da[i]=(atan((ds[i]/(W*t)-e)/(so+s[i])))/(t);
x[i]=X0+(so+s[i])*sin(p*t)+e*cos(p*t); /*
理論廓線坐標*/
y[i]=Y0+(so+s[i])*cos(p*t)-e*sin(p*t);
dx=(ds[i]-e)*sin(p*t)+(so+s[i])*cos(p*t); /* x微分 */
dy=(ds[i]-e)*cos(p*t)-(so+s[i])*sin(p*t); /* y微分 */
st=dy/sqrt(dx*dx+dy*dy); /* SIN 值*/
ct=dx/sqrt(dx*dx+dy*dy); /* COS 值*/
xp[i]=x[i]+rr*st; /*外實際廓線坐標*/
yp[i]=y[i]-rr*ct;
i++;
}
/*---------------------------------------*/
circle(X0,Y0,ro); /*畫基圓*/
circle(X0,Y0,e); /*畫偏距園*/
for(w=0;w
收藏