cadcam标准实验报告

实  验  报  告

实验课程:      CAD/CAM                       

学生姓名:                          

    号:                          

专业班级:                        

         

20##年   12 月  23  日

   

一、     实验一     三次B样条曲线生成

二、  实验二      CAD/CAM集成

  南昌大学实验报告

学生姓名:                   学    号:                   专业班级:                 

实验类型:□ 验证 □ 综合 □ 设计 □ 创新   实验日期:            实验成绩:           

实验一  B样条曲线的生成

一、实验目的:

1、掌握参数化曲线曲面的原理和方法。

2、理解参数化曲线曲面的基本性质,特别是B样条曲线的基本性质。

3、掌握型值点和控制顶点以及控制多边形的概念,理解控制点对曲线的控制作用。

二、实验要求

在二维模式下,用自编程序生成三次B样条曲线。四个控制顶点的坐标可由用户任意输入。三次B样条曲线和控制多边形必须同时显示在显示器上。用户改变控制点后,曲线应同时得到调整。

三、实验设备

1、计算机系统

2、安装Turbo C或其他C语言集成开发工具

四、实验原理

1、B样条曲线原理

B样条曲线是一种基函数为B样条基函数的参数曲线,三次B样条参数方程如下:

P(t)=(   =(t3  t2  t  1)

其中参数t∈[0,1]

P0、P1、P2、P3为四个控制顶点。B样条曲线是一种逼近曲线,曲线并不过任一个控制顶点。

2、编程基本要领

1)、将显卡设置为图形模式函数为

 #include(graphics.h)

  #include(conio.h)

main(  )

{  int driver,mode;

    driver=VGA; mode=VGAMED;

    initgraph(&driver,& mode,””);

}

2) 画直线函数为 line(x1,y1, x2,y2)

3) 1*4界矩阵相乘函数

   float py [4],xz[4][4];m [4]

   float xc(a,b)

   float a [4],b[4][4];

 {  int  i , j,k;

for(i=0;i<=3;i++)

  for (j=0;j<=3;j++)

       m[i] = m[i] + a[j] * b[j][i];

}

4)参数取值

参数步长一般采用等步长,取1/n ,n为正整数。N的大小与显卡和显示精度有关。一般可取50。

五、实验步骤

1、在C语言集成开发工具的编辑器中输入源程序

2、利用编译器编译源程序

3、连接生成执行文件

4、运行程序

六、实验数据及处理结果

#include <graphics.h>

#include <conio.h>

#include <stdio.h>

#include <string.h>

#include <math.h>

int q;

float AX,AY,BX,BY,CX,CY,DX,DY;

double XX[1001],YY[1001];

void getin()

{printf("input point ax and ay:\n");

    scanf("%f %f",&AX,&AY);

    printf("input point bx and by:\n");

    scanf("%f %f",&BX,&BY);

    printf("input point cx and cy:\n");

    scanf("%f %f",&CX,&CY);

    printf("input point dx and dy:\n");

    scanf("%f %f",&DX,&DY);

}

void putout(int a)

{int driver,mode;

  int m;

   driver=VGA; mode=VGAMED;

   registerbgidriver(EGAVGA_driver);

   initgraph(&driver,&mode,"c:\tc");

    setcolor(YELLOW);

    line(AX,AY,BX,BY);

    line(BX,BY,CX,CY);

    line(CX,CY,DX,DY);

    setcolor(BLUE);

    for(m=0;m<a-2;m++)

    line(XX[m],YY[m],XX[m+1],YY[m+1]);

    }

void main()

{   int a;

    float T,TT;

    float x[4],y[4];

    double t[4],sub1[4];

    int m[4][4]={{-1,3,-3,1},{3,-6,3,0},{-3,0,3,0},{1,4,1,0}};

    int i,j,k;

    M:printf("input a number from 50--1000:\n");

    scanf("%d",&a);

    getin();

    TT=1/(a*1.0);

    x[0]=AX;x[1]=BX;x[2]=CX;x[3]=DX;

    y[0]=AY;y[1]=BY;y[2]=CY;y[3]=DY;

    for(j=0,T=TT;j<a;j++,T=j*TT)

    {

    t[0]=T*T*T;t[1]=T*T;t[2]=T;t[3]=1;

    sub1[0]=0;sub1[1]=0;sub1[2]=0;sub1[3]=0;

        {

          for(i=0;i<=3;i++)

             for (k=0;k<=3;k++)

              sub1[i]+=t[k]*m[k][i];

        }

       for(k=0;k<=3;k++)

         { XX[j]+=sub1[k]*x[k]/6.0;

            YY[j]+=sub1[k]*y[k] /6.0;

        }

    }   

     putout(a);

    /*scanf("%d",&q);

    if(q) goto M;*/

    system("pause");

   

}

  南昌大学实验报告

学生姓名:                   学    号:                   专业班级:                 

实验类型:□ 验证 □ 综合 □ 设计 □ 创新   实验日期:            实验成绩:           

实验二  CAD/CAM集成

一、实验目的

1、了解特征设计在CAD/CAM集成中的意义;

2、熟悉特征的种类的划分及特征拼合的基本方法,了解参数化设计方法。

3、了解各种计算机绘图软件的同时,掌握计算机绘图的系统知识,培养独立上

机绘制二维、三维图形的能力,

4、熟悉由CAD工程图生成NC数控代码,图像编程的工作过程。即:熟悉标准及代码(ISO、EIA)。主要包括ASCⅡ码形成的刀位数据文件、刀具清单、操作报告、中间模型和机床控制文件。

二、实验原理

应用计算机图形交互技术的数控加工程序自动编程系统,利用计算机键盘、鼠标等输入设备通过交互式操作,建立、编辑零件轮廓的几何模型,选择加工工艺,生成刀具运动轨迹,模拟数控加工过程,最后生成数控加工程序。

三、实验设备

1、一套三维CAD/CAM集成系统

2、数控机床

四、实验内容及步骤

   一)、简单零件特征造型设计

Pro/E有零件设计、加工模拟、装配、工程图、有限元分析等几个功能模块。我们首先设计一个零件,采用逆向设计,生成一个立体零件,也可利用CAD工程图。Pro/E是先设计零件的实体,而后经对应的投影生成对应的三视图、剖面和局部视图等。我们先设计一个实体零件,三维图形状及尺寸如图1所示:Pro/E进行实体设计时先设计2D平面图,然后进行拉伸、挖剪、扫描、旋转、混合等操作而生成三维立体图。那么,我们先进行2D设计,进入二维状态。

1 、进入Pro/E系统后,在主菜单的File / NEW 选Part / name 命名 OK

2 、建立坐标系 

    在浮动菜单Menu Manager 中 Feature / Create / Datum / plan / Default 生成三维坐标系。如图所示,首先生成长方体然后再挖剪P字。

(一)、拉伸创建实体

    Create / Solid / Protrusion / Extrude / Solid / Done

One side / Done

    Setup plan / plan / Pick 选 DTM3(箭头指向外,即要拉伸的方向) / OK

Top / 选DTM2(进入2D模式)

4 、设计平面图

Sketch / rectangle (用鼠标左键拖动对角线生成)

   标注尺寸:Dimension (用鼠标中键选定放置位置,可用左键+shift键合用代替。)

尺寸修改 Modify 选尺寸进行修改。如下图2:

Regenerate / Done

Blind / Done 拉伸厚度为 5 OK

(二)、挖剪实体 P 字

    我们要在所设计的立方体的前面挖一个P字,那么要选定前面为基面画一个P字,或写一个P字进行CUT操作。

Feature / Create / Solid / Cut / Extrude / Solid / Done

One side / Done

Plane / Pick 选实体的前面,红箭头向内,否则选 Flid / okey

Top 选顶面。

Sketch / Line / 2 point (画图直线) / Arc / 3 point (画半圆,选两点,画半圆,系统默认相切,如不相切,可将图缩小比例在分辨率低的时认为相切,其它作图也如此。)

标注尺寸:

Dimension / (尺寸要标注全)

Modify / 选尺寸进行修改。如下图3所示:

Regeneration / Done / Done (红箭头指向p字的内侧)

Blind / Done / 2 / OK

选视图的Default 视图

保存,或另存, 命名。

    生成三维实体零件后,进入Drawing模块很容易得到三视图、剖视图、局部视图等。由于是尺寸驱动,修改任意视图的尺寸,其余各视图都对应同时改变。

二)、零件数控加工程序编制

Pro/NC能生成数控加工的全过程。可生成的文件包括:ASCⅡ码形成的刀位数据文件、刀具清单、操作报告、中间模型和机床控制文件。工作过程如下图4所示:

由流程图可看出,首先要定义加工模型和参数,然后建立不同的加工工序,最后生成刀位轨迹,并进行后置处理。

 

Pro/NC 工作步骤:

1、 创建或检索加工模型

2、 建立加工数据库,包括:

l   定义NC工序所使用的机床。

l   选取创建所使用的刀具。

l   定义夹具。

l   设置加工参数。

l   建立刀位CL数据的输出格式。

3、 建立一个操作

l   提供操作名。

l   指定NC工序所使用的机床。

l   选取或创建坐标系。

l   指定操作参数。

l   定义起始/停止点。

4、 定义操作的NC工序,指定NC工序类型后需要做:

l选取或创建所制定的刀具。

l 设置加工参数。

l选取或创建坐标,已确定工件在机床上的位置。如果需要,可定义一个退刀面。

l为NC工序指定几何参照对象。

l定义刀具轨迹的起点和终点。

5、 模拟去除材料的过程,为NC工序提供基于几何参照对象的自动材料去除过程。

6、 对NC工序进行修改;更换刀具、参数、切削运动尺寸等,也可重新定义NC工序的方法或其从属操作。

7、 生成并保存刀具文件,并可同时将刀为文件后处理为NC机床控制文件。

(一)、 加工模式

选主菜单命令File / New

选Manufacturing类型,Sub_Type选 NC_Assemble。输入加工文件名 / OK。

    进入加工模式,该模式下的主要功能有:

    Mfg Model   生成加工模式

    Mfg Setup    设置加工环境

    Machining    定义、验证、处理刀具轨迹。

    CL date      生成活修改刀位输出。

创建被加工零件(装配件加工)

MANUFACTURE / MFG Model / Assemble / Ref Model

在弹出的窗口中选取所要加工的零件 / open

    Create / Workpiece 输入工件名 / 回车。

开始创建工件毛坯,与在零件模式下过程一致。

Solid / Protrusion / Extrude / Solide / Done

One side / Done

选择零件的后表面为草图平面。

Plane / Query Sel  选零件的右侧,选Next 后面变红,Accept。

选File时红箭头向外(向外拉伸) / OK

Top 选上表面。

进入草图模式。选SKETCHER / Geom Tool / Use Edge

依次选取零件的外轮廓四边为工件的截面,变为红色, / Done

Blind / Done 输入厚度值  回车 / OK

将视图放置为缺省值

Done / Return

(二)、 建加工数据库

    这里我们夹具不定义,取默认设定。定义一个操作。

    Mfg / Setup / Operation / Done Oper / mill / 3 Axis / Done / Done

上述过程定义了一个三坐标的铣床,下一步定义机床坐标。

MACH CSYS / Create / Pick  选取零件毛坯,此时零件变为红色。

Pnt + 2Axes / Done (一点两边,红箭头为当前坐标轴,选垂直屏幕方向为Z轴。) 如下图5所示:

选X_Axis、 Y_Axis

Done Oper / Done/Return

(三)、定义NC工序

    NC工序的确定没有定式,通常取决于工程师的经验。该实验只作粗加工。

MANUFACTUER / Machining  弹出 manufacturing Info 对话框。可查看加工信息,由于NC尚未定义,所以Tool Path Info为空。

    Machining / Operation / NC Sequence / Pocketing / Done / Done

常用的铣削方法:

此时弹出Tool Setup 对话框,设定参数。

击Apply。在对话框中的File / Done。如图6所示:

Volume         用2.5轴的方法铣削一定体积内的材料

Local Mill       去除先前NC工序残留的材料。

Conventl srf     铣削平面,其轨迹在平面内相互平行。

Contour srf      铣削平面,其轨迹平行于被加工平面的轮廓。

Face           用2.5轴的方法铣平端面。

Profile         用刀具的侧面铣削曲面轮廓。

Pocketing      用铣削内槽的方法铣削曲面。

Trajectory      用交互式的方法铣削曲面。

Engraving      雕刻加工。

Plunge         钻铣加工。

然后进行加工参数的指定。

Set / 弹出 Param Tree 对话框。如图7所示:

CUT_FEED                切削进给率

STEP_DEPTH              进给深度
STEP_OVER                侧向切深
PROF_STOCK_ALLOW      轮廓铣削后的毛坯余量
BOTTOM_ANGLE           底面的毛坯余量
CUT_ANGLE               NC坐标下的切削角

SCAN_TYPE               加工区域时轨迹的拓扑结构

CLEAR_DISK              下刀缓冲距离

对上述各参数进行设指定。

在Param tree 对话框中选File / Exit / Done

完成对加工参数的设定,进入指定退到面,弹出对话框。选Along Z Axis 输入Z向距离  OK

(四)、 定义加工特征

    在完成上述操作后,要选定加工特征的区块。

    GET SELECT / Query Sel

    选要加工的特征,选中后Accept。重复操作 / Done Sel

show 看加工特征是否都变为蓝色,否则 Add / Query Sel 重复上述操作,直到加工特征全选上为止。

    Done/Return

(五)、刀具轨迹模拟

    在完成NC序列之前我们可以进行动态模拟刀具轨迹,用户可以检验加工时的刀具轨迹。

Play Path / NC check / Run

Play Path / Screen Play / Run

    可选Cutter Step 修改刀具步距,enter enter 输入步距,改变 刀具步距使加工模拟速度慢下来。如图8所示:

在此时可对刀位数据文件进行编辑。

Show File 弹出子菜单,可显示CL(刀位数据)文件的内容。如下图9所示:

CL DATA / Edit SELECT FEAT / Operation / OP010 / CONFIRMATION / Confirm

    弹出对话框,可对之进行编辑。确认后保存文件。

    Done Seq /

五、 数据转换(NC代码输出)

    经过上述过程,我们已经完成了对零件的设计和加工过程,当整个操作结束时我们变得到了ASCⅡ码形式的刀位数据文件,但在实际加工时机床控制器不能识别这种格式的文件,需要将刀位数据文件转化为机床能识别的文件,也就是NC代码。这一过程称为后置处理。

    后置处理器(Post Processor):用户通过CAD或APT系统生成刀位数据文件,该文件含有零件的数据加工指令。后置处理器是一种应用程序,用于处理这些刀位数据文件,将加工指令转化为NC/CNC机床能够识别的代码,生成机床控制器数据文件。

    进入后置处理器模式:

    1 、从主菜单进入:选择主菜单命令 Applications / NC Post Processor 系统进入后置处理器模式。

    2 、从Pro/NC进入:选择MANUFACTURE / Mfg Setup / PProcessor 命令进入,弹出 OptFile 窗口。

我们可以新建一个后置处理器(本实验CAD/CAM就不作该部分练习),可查看系统缺省的驱动器及目录。在List file of type 下拉列表框中选取铣床后置处理器“Mill Postprocessors”在Option file in current directory 列表框中选取哈斯立式机床“0011.HAAS VF8”。系统弹出对应的方案文件。如机床类型、机床控制器数据(NCD)文件格式、列表文件格式、序号(如图10所示)、预备/G代码、辅助/M代码、冷却液辅助/M代码等等。

具体 操作过程如下:

    CL Date / Output / Select One / Operation / 选 Op010 / File

CL File 和 Interactive两项。/ Done  输入文件名 / OK.

File 选  CL File 、MCD File 和 Interactive 三项。/ Done输入文件名 / OK / Done.生成的文件为MCD文件,即机床能够识别的NC代码。

弹出PP OPTIONS菜单,选Verbose、Trace两项命令。

弹出后置处理器列表PP LIST菜单,将光标选择第1项 UNCX01.P11,对应的机床为铣床。

系统提示输入程序的起始行号,该机床对程序序号的要求为10。(在后置处理器中查看现有的后置处理器,选Mill Postprocessors铣床,系统在 Option file to open 中可查看对应的方案文件,其中 Sequence Numbers 中的 Start sequence 为10,如前文图)

    处理完成之后系统弹出 INFORMATION WINDOW 窗口,显示处理结果。

CL File 将刀位轨迹输出到刀位文件中。

    MCD File 对刀位文件进行后置处理,生成机床控制器数据文件。

    经上述操作,生成的NC代码可在写字板或记事本中打开。以下为生成的NC代码和刀位数据文件。

附录  所生成的程序清单:

%

N0010 T1 M6

N0020 S1500 M3

N0030 G1 G43 X41.7946 Y-17.0232 Z10. F400. H1 M7

N0040 Z5.5324

N0050 Z-.4 F50.

N0060 X39.7936 F300.

N0070 Y-26.0246

N0080 X58.7958

N0090 Y-17.0236

N0100 X56.7942

N0110 Z10. F400.

N0120 X41.7964

N0130 Z5.4536

N0140 Z-.9 F50.

N0150 X39.7968 F300.

N0160 Y-26.0268

N0170 X58.7934

N0180 Y-17.0224

N0190 X56.7978

N0200 Z10. F400.

N0210 X49.2946 Y-106.5286

N0220 Z5.5

N0230 Z-.4 F50.

N0240 G1 X5.9055

N0250 Y3.7193

N0260 X3.937

N0270 G3 Y2.5864

N0280 G1 X7.874

N0290 G3 Y3.7193

N0300 G1 X5.9055

N0310 Y3.9196

N0320 X3.937

N0330 G3 Y2.3796

N0340 G1 X7.874

N0350 G3 Y3.9196

N0360 G1 X5.9055

N0370 Y4.1199

N0380 X3.937

N0390 G3 Y2.1793

N0400 G1 X7.874

N0410 G3 Y4.1199

N0420 G1 X5.9055

N0430 Y4.3203

N0440 X3.937

N0450 G3 Y1.979

N0460 G1 X7.874

N0470 G3 Y4.3203

N0480 G1 X5.9055

N0490 Y4.5206

N0500 X3.937

N0510 G3 Y1.7786

N0520 G1 X7.874

N0530 G3 Y4.5206

N0540 G1 X5.9055

N0550 Y4.7209

N0560 X3.937

N0570 G3 Y1.5783

N0580 G1 X7.874

N0590 G3 Y4.7209

N0600 G1 X5.9055

N0610 Y4.9213

N0620 X3.937

N0630 G3 Y1.378

N0640 G1 X7.874

N0650 G3 Y4.9213

N0660 G1 X5.9055

N0670 Y4.7244

N0680 Z0.0

N0690 G0 Z.3937

N0700 X6.7871 Y3.3186

N0710 Z0.0

N0720 G1 X5.9055 Z-.2362

N0730 X3.937

N0740 G3 Y2.9806

N0750 G1 Y3.1142

N0760 X7.874

N0770 G3 Y3.185

N0780 G1 X3.937

N0790 G3 Y3.1142

N0800 G1 Y2.9806

N0810 X7.874

N0820 G3 Y3.3186

N0830 G1 X5.9055

N0840 Y3.5189

N0850 X3.937

N0860 G3 Y2.7803

N0880 G3 Y3.5189

N0890 G1 X5.9055

N0900 Y3.7193

N0910 X3.937

N0920 G3 Y2.58

N0930 G1 X7.874

N1300 G3 Y4.9213

N1310 G1 X5.9055

N1320 Y4.7244

N1330 Z-.1181

N1340 G0 Z.3937

N1350 X6.7871 Y3.3186

N1360 Z-.1181

N1370 G1 X5.9055 Z-.3543

N1380 X3.937

N1390 G3 Y2.9806

N1400 G1 Y3.1142

N1410 G3 X49.29 Y-106.52

N1420 G1 Z-.9

N1430 G3 X49.29 Y-106.52

N1440 G1 Z10. F400.

N1450 X62.64 Y-3.02

N1460 Z5.5

N1470 Z-.4 F50.

N1480 X88.38 Y-46.24 F300.

N1490 G2 X10.2 Y-46.24

N1500 G1 X35.94 Y-3.02 F300.

N1510 X62.64

N1520 Z-.9

N1530 X88.38 Y-46.24

N1540 G2 X10.2 Y-46.24 F250.

N1550 G1 X35.94 Y-3.02 F300.

N1560 X62.64

N1570 Z10. F400.

N1580 M5

N1590 M30

%