CADCAM上机试验报告.docx
- 文档编号:7427109
- 上传时间:2023-05-11
- 格式:DOCX
- 页数:20
- 大小:349.55KB
CADCAM上机试验报告.docx
《CADCAM上机试验报告.docx》由会员分享,可在线阅读,更多相关《CADCAM上机试验报告.docx(20页珍藏版)》请在冰点文库上搜索。
CADCAM上机试验报告
学号:
0120701080516
课程设计
题目
CAD/CAM基础上机试验
学院
材料科学与工程学院
专业
材料成型及控制工程
班级
成型0705班
姓名
唐维龙
指导教师
常明
2010
年
12
月
12
日
课程设计任务书
学生姓名:
唐维龙专业班级:
成型0705班
指导教师:
常明工作单位:
材料学院
一、图形程序设计编程与调试
二、图形变换程序设计与调试
三、参数化绘图程序设计与调试
四、子图形法绘图程序设计与调试
五、实体造型
题目:
初始条件:
图形几何形状尺寸信息
要求完成的主要任务:
(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
一、绘制如图1所示的图案
二、用线性表的形式存储如图4所示结构的几何尺寸信息,要求能实现三视图的绘制。
(不要求进行消隐操作)
三、利用参数法绘图绘制如图5所示的螺栓图形.
四、.利用子图形法绘制如图6所示的的阶梯轴(轴的尺寸可自行确定)
五、任选一款CAD造型软件,实现图7-10种任一图形的三维造型。
时间安排:
时间
完成任务
2010-12-6
图形程序设计编程与调试
2010-12-7
图形变换程序设计与调试
2010-12-9
参数化绘图程序设计与调试
2010-12-10
子图形法绘图程序设计与调试
2010-12-11
完成实体造型
2010-12-12
完成课程设计报告
指导教师签名:
年月日
系主任(或责任教师)签名:
年月日
实验一图形程序设计编程与调试
1、题目:
绘制如图一所示的图案
图1.1所示的图案外貌看似很复杂,但它是由基本图形(正方形)经过变换而构成的。
2、图形分析
从图1所示的图案中可以分析出:
它是由16个相似的方块拼接而成;每一个方块是一个由正方形形成的螺旋图案,而每个相邻方块的螺旋方向相反。
假设逆时针旋转为正,顺时针旋转为负(反),则图案中螺旋方块的正、反拼接结构如图2所示。
组成整个图案的每个方块,是由正方形边旋转和缩小形成,且经过旋转和缩小的正方形的四个顶点刚好在前一个正方形的四条边上,见图3所示。
下面讨论两个相邻正方形之间的几何关系:
设两个正方形的外接圆半径分别为R1和R2,边长为al和a2,旋转角度为θ。
则两个正方形之间的缩小系数为:
f=a2/a1
经过旋转和缩小后的正方形2的四个顶点刚好位于正方形1的四条边上,所以,这个缩小系数和转角θ紧密相关。
从图3中可看出,在直角三角形PQS中:
QS=a2×sinθ
PS=a2×cosθ
QS十PS=al=a2×(sinθ十cosθ)
所以:
f=a2/a1=1/(sinθ十cosθ)
考虑到转角θ可以取正值(逆时针转)或负值(顺时针转),但缩小系数f总为正值,所以我们在求缩小系数f时,取转角θ的绝对值。
即:
f=1/(sin∣θ∣十cos∣θ∣)
求得了两个正方形之间的缩小系数后,则可以得到两个正方形外接圆半径之间的关系:
R2=f·R1且:
转角关系为:
α2=α1+θ
3、程序设计
根据上面对图案的分析,我们便可以着手设计绘制图案的程序。
从功能来分,构成图案的工作大致可以分三部分:
·绘制正方形方块1
·绘制第一行方块
·绘制二三四行方块
图形绘制用MATLAB画直线命令,通过三级循环实现上面说的三步,而方块的相对位置通过坐标移动即可。
4、程序代码如下:
clear,formatcompact
a1=input('a1=');输入第一个正方形外接圆半径
b=input('b=');输入下一个正方形相对前一个正方形旋转角度
n=input('n=');输入单个方块内正方形个数
t=pi/4;i=0;k=1;f=1;
whilef<=4
whilek<=4
whilei<=n
s=t+b*(-1)^(k+f)*i;
a=a1/((sin(abs(b))+cos(abs(b)))^i);
x=[a*cos(s)+a1*(k-1)*sqrt
(2),a*cos(s+pi/2)+a1*(k-1)*sqrt
(2),a*cos(s+pi)+a1*(k-1)*sqrt
(2),a*cos(s+3*pi/2)+a1*(k-1)*sqrt
(2),a*cos(s)+a1*(k-1)*sqrt
(2)];
/正方形y坐标
y=[a*sin(s)+a1*(f-1)*sqrt
(2),a*sin(s+pi/2)+a1*(f-1)*sqrt
(2),a*sin(s+pi)+a1*(f-1)*sqrt
(2),a*sin(s+3*pi/2)+a1*(f-1)*sqrt
(2),a*sin(s)+a1*(f-1)*sqrt
(2)];
/正方形x坐标
plot(x,y,'-b'),holdon;
i=i+1;
end
i=0;k=k+1;
end
k=1;f=f+1;绘图结束
end
5、绘图结果如下
运行程序:
输入a1=100b=pi/48n=50
实验二图形变换程序设计与调试
1、题目:
用线性表的形式存储如图4所示结构的几何尺寸信息,要求能实现三视图的绘制。
(不要求进行消隐操作)
2、题目分析:
在当前坐标下算出各点三维坐标,实际上也就知道了其几何尺寸。
用c语言画直线命令连接各点。
画主视图时用x和z坐标;画俯视图用x和y坐标;画左视图用y和z坐标。
3、c语言程序代码如下:
include
intdx[20]={70,70,0,0,20,30,70,70,55,55,0,0,0,20,10,10,55,55,30,0};
intdy[20]={0,40,40,40,40,40,40,0,0,0,0,30,30,30,30,10,10,10,10,0};
intdz[20]={0,0,0,27,27,10,10,10,10,42,42,42,27,27,42,42,42,10,10,0};
intld[34]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,5,0,7,1,6,8,17,9,16,13,4,12,3,11,14};
inttl[34]={0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1};
inti,j,x,y,vh=200,vw=200,x0=400,y0=400;
main()
{
intdriver=DETECT,mode=0;
initgraph(&driver,&mode,"");
setbkcolor(BLUE);
setcolor(YELLOW);
zu();
fu();
zo();
getch();
closegraph();
}
zu()
{for(i=0;i<34;i++)
{j=ld[i];
x=x0-dx[j];
y=y0-dz[j];
if(tl[i]==0)
moveto(x,y);
lineto(x,y);
}
}
fu()
{for(i=0;i<34;i++)
{j=ld[i];
x=x0+dy[j]-vw;
y=y0+dx[j]-vh;
if(tl[i]==0)
moveto(x,y);
lineto(x,y);
}}
zo()
{for(i=0;i<34;i++)
{j=ld[i];
x=x0+dy[j]-vw;
y=y0-dz[j];
if(tl[i]==0)
moveto(x,y);
lineto(x,y);
}}
4、运行结果如下图:
实验三参数化绘图程序设计与调试
1、题目:
利用参数法绘图绘制如图5所示的螺栓图形.
2、图形分析:
b=2dd0=0.85d
c=0.15dR1=1.5d
D=2dH=0.7d
螺栓是标准件,只需要知道螺栓的公称直径d,和长度L,其它尺寸均可通过计算得出:
3、程序设计
运用AutoCAD内部的autolisp二次开发工具。
输入参数d和L,将各点坐标用d和L算出来,然后调用CAD画直线与圆弧的命令连接接各点即可。
将各个点标定如下图:
4、程序代码如下:
(defunc:
featurey()
(setqp0(getpoint"\n插入点:
"))
(setqalf(getanglep0"\n旋转角:
"))
(setqd(getdistp0"\n公称直径:
"))
(setql(getdistp0"\n长度L:
"))
(setqp1(polarp0(+(*0.5pi)alf)(*0.5d)))确定各点坐标
(setqp2(polarp0(+(*1.5pi)alf)(*0.5d)))
(setqp3(polarp1alf(-l(*2.0d))))
(setqp4(polarp3(+(*1.5pi)alf)d))
(setqp5(polarp3alf(-(*2.0d)(*0.7070.15d))))
(setqp6(polarp4alf(-(*2.0d)(*0.7070.15d))))
(setqp7(polarp3(+(*1.5pi)alf)(*0.7070.15d)))
(setqp8(polarp4(+(*0.5pi)alf)(*0.7070.15d)))
(setqp9(polarp7alf(*2.0d)))
(setqp10(polarp8alf(*2.0d)))
(setqp11(polarp0(+(*0.5pi)alf)d))
(setqp12(polarp0(+(*1.5pi)alf)d))
(setqp19(polarp0alf(*0.8d)))
(setqp13(polarp1(+pialf)(-(*(sqrt2.0)d)(*0.8d))))
(setqp14(polarp13(+(*1.5pi)alf)d))
(setqp15(polarp13(+(*0.5pi)alf)(*0.5d)))
(setqp16(polarp14(+(*1.5pi)alf)(*0.5d)))
(setqp20(polarp0(+pialf)(*0.7d)))
(setqp19(polarp0alf(*0.8d)))
(setqp17(polarp20(+(*0.5pi)alf)(*0.75d)))
(setqp18(polarp20(+(*1.5pi)alf)(*0.75d)))
(command"line"p13p5p9p10p6p14"")连接各点
(command"line"p5p6"")
(command"line"p3p4"")
(command"line"p7p9"")
(command"line"p8p10"")
(command"line"p15p11p12p16"")
(command"arc"p13p20p14)
(command"arc"p15p17p13)
(command"arc"p14p18p16)
(command"line"p17p18""))
4、绘图结果如下:
(L=60d=20)
实验四子图形法绘图程序设计与调试
1、题目:
利用子图形法绘制如图6所示的的阶梯轴(轴的尺寸可自行确定)
2、图形分析:
阶梯轴各段特征如下图:
将阶梯轴分段用autolisp编程画出来,然后调用各段程序将轴段拼合。
3、程序设计
各形状特征的命令名称、功能和需要交互方式输入的参数如下表所列
形状特征名
功能
参数
Featurea
绘制倒角
P0alfdc
Featurea
绘制开口矩形轴段
P0alfdb
Featurea
绘制退刀槽
P0alfdd1b
Featurea
绘制矩形轴段
P0alfdb
Featurea
绘制带圆角轴段
P0alfdbr
Featurea
绘制带键槽轴断面
P0alfdtb
Featurea
绘制键槽
P0alflb
3、程序代码如下
(defunc:
featurea()
(setqp0(getpoint"\n插入点:
"))
(setqalf(getanglep0"\n旋转角:
"))
(setqd(getdistp0"\n轴径:
"))
(setqc(getdistp0"\n倒角宽:
"))
(setqp2(polarp0(+(*0.5pi)alf)(-(*0.5d)c)))
(setqp1(polarp2(+(*0.25pi)alf)(*1.414c)))
(setqp3(polarp2(+(*1.5pi)alf)(-d(*2c))))
(setqp4(polarp1(+(*1.5pi)alf)d))
(command"Line"p1p2p3p4"")
)
(defunc:
featureb()
(setqp0(getpoint"\n插入点:
"))
(setqalf(getanglep0"\n旋转角:
"))
(setqd(getdistp0"\n轴径:
"))
(setqb(getdistp0"\n轴段宽:
"))
(setqp2(polarp0(+(*0.5pi)alf)(*0.5d)))
(setqp1(polarp2alfb))
(setqp3(polarp2(+(*1.5pi)alf)d))
(setqp4(polarp3alfb))
(command"Line"p1p2p3p4"")
)
(defunc:
featurec()
(setqp0(getpoint"\n插入点:
"))
(setqalf(getanglep0"\n旋转角:
"))
(setqd(getdistp0"\n轴径:
"))
(setqd1(getdistp0"\n退刀槽宽处轴径:
"))
(setqb(getdistp0"\n退刀槽宽:
"))
(setqp1(polarp0(+(*0.5pi)alf)(*0.5d)))
(setqp2(polarp0(+(*0.5pi)alf)(*0.5d1)))
(setqp3(polarp2(+(*1.5pi)alf)d1))
(setqp4(polarp1(+(*1.5pi)alf)d))
(setqp5(polarp2alfb))
(setqp6(polarp3alfb))
(command"Line"p1p4"")
(command"Line"p2p5"")
(command"Line"p3p6"")
)
(defunc:
featured()
(setqp0(getpoint"\n插入点:
"))
(setqalf(getanglep0"\n旋转角:
"))
(setqd(getdistp0"\n轴径:
"))
(setqb(getdistp0"\n轴段宽:
"))
(setqp2(polarp0(+(*0.5pi)alf)(*0.5d)))
(setqp1(polarp2alfb))
(setqp3(polarp2(+(*1.5pi)alf)d))
(setqp4(polarp3alfb))
(command"Line"p1p2p3p4"c")
)
(defunc:
featuree()
(setqp0(getpoint"\n插入点:
"))
(setqalf(getanglep0"\n旋转角:
"))
(setqd(getdistp0"\n轴径:
"))
(setqb(getdistp0"\n轴段宽:
"))
(setqr(getdistp0"\n园角半径:
"))
(setqp2(polarp0(+(*0.5pi)alf)(*0.5d)))
(setqp1(polarp2alf(-br)))
(setqp3(polarp2(+(*1.5pi)alf)d))
(setqp4(polarp3alf(-br)))
(setqp5(polarp1(+(*0.5pi)alf)r))
(setqp6(polarp5alfr))
(setqp7(polarp4(+(*1.5pi)alf)r))
(setqp8(polarp7alfr))
(command"arc"p1"c"p5p6)
(command"Line"p1p2p3p4"")
(command"arc"p8"c"p7p4)
)
(defunc:
featuref()
(setqp0(getpoint"\n插入点:
"))
(setqalf(getanglep0"\n旋转角:
"))
(setqd(getdistp0"\n轴径:
"))
(setqb(getdistp0"\n键槽宽:
"))
(setqc(getdistp0"\n键槽处轴径:
"))
(setqr(*0.5d)b1(*0.5b))
(setql(sqrt(-(*rr)(*b1b1))))
(setqe(-(*rr)(*b1b1)))
(setqsit(atanb1l))
(setqp1(polarp0(+alfsit)r))
(setqp2(polarp0(+alfpi)r))
(setqp3(polarp0(-alfsit)r))
(setqp4(polarp3(+alfpi)(-dc)))
(setqp5(polarp1(+alfpi)(-dc)))
(command"arc"p1p2p3)
(command"Line"p3p4p5p1"")
)
(defunc:
featureg()
(setqp0(getpoint"\n插入点:
"))
(setqalf(getanglep0"\n旋转角:
"))
(setql(getdistp0"\n键槽长:
"))
(setqb(getdistp0"\n键槽宽:
"))
(setqr(*0.5b)l1(-lb))
(setqp1(polarp0(+(*0.5pi)alf)r))
(setqp2(polarp1alfl1))
(setqp3(polarp2(+(*1.5pi)alf)b))
(setqp4(polarp1(+(*1.5pi)alf)b))
(command"pLine"p1p2"a"p3"l"p4"a""cl")
)
4、运行结果如下:
4.1单个轴段特征如下:
4.2最终阶梯轴图形如下:
实验五实体造型
1、题目:
任选一款CAD造型软件,实现图7的三维造型。
2、题目分析:
AutoCAD三维画图该实体分为两个部分:
底面和侧面。
2.1绘图步骤:
在俯视图画底面的平面图,然后在东南等轴测拉伸即得底面实体
同上方法画小孔实体
对底面实体与小孔取差集
左视图画侧面图形,换东南等轴测拉伸得侧面实体、
对底面和侧面实体取并集
3、结果如下图
本科生课程设计成绩评定表
姓名
性别
专业、班级
课程设计题目:
课程设计答辩或质疑记录:
成绩评定依据:
最终评定成绩(以优、良、中、及格、不及格评定)
指导教师签字:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CADCAM 上机 试验报告