(新)数控加工理论与编程技术_ 下载本文

4.1、加工参数表及其数据结构

加工参数表存放的是数控加工编程所需的有关参数。对于曲面加工,典型的加工参数包括:步长控制方法(点数控制、走刀步长控制、精度控制)、速度控制参数(快速进给速度、接近进给速度、切入进给速度、正常进给速度、跨越进给速度、横越进给速度以及退刀速度等)、干涉避免参数(安全面高度、干涉抬刀高度)、进刀控制方式(进刀点、进刀方式及其参数)、退刀控制方式(退刀点、退刀方式及其参数)、干涉检查参数(干涉检查曲线、干涉检查曲面、干涉检查余量、干涉处理方式)、刀轴控制方式、刀具轨迹显示参数等。

(1)步长控制 typedef struct {

int

int int double double double double double double double double

control_mode; /*步长控制方法:1-点数控制、2-走刀步长控

/*制、3-精度控制

len_number; /*每切削行刀位点数 over_number; /*刀具轨迹的切削行数 len_step; /*走刀步长 over_step; len_eps; in_tol;

/*最大切削行距

/*走刀方向上的最大插补误差

over_eps; /*切削行间的最大残余高度

/*内边界容差

out_tol; /*外边界容差 floor_stock; /*底面加工余量 side_stock;

/*侧面加工余量

}Step_Control; (2)速度控制 typedef struct {

int rapid_speed; /*刀具快速进给速度 int engage_speed; /*刀具切入进给速度 int cut_speed;

/*正常切削进给速度

int retract_speed; /*退刀速度

int over_speed; /*切削行之间进给速度

}Speed_Control; (3)干涉避免 typedef struct {

double double double

safe_plane; skip_plane;

/*安全面高度 /*干涉抬刀高度

engage_plane; /*快速进刀高度

Ppoint3 engage_point; /*进刀点 Ppoint3 retract_point; /*退刀点

}Gouge_Control; (4)干涉检查参数 typedef struct {

C_LIST check_boundary; /*干涉检查曲线 F_LIST check_surface;/*干涉检查曲面 Double check_stock; /*干涉检查余量 Int on_collision; /*干涉处理方式

}Check_Control; (5)刀轴控制 typedef struct {

int control_mode; /*刀轴控制方式:定轴,四轴,五轴 }Tool_Control; (6)切削方式控制 typedef struct {

int cutting_mode; /*切削方式:单向,双向,环切,用户自定义方式 }Cut_Control;

(7)刀具轨迹显示控制 typedef struct {

int rapid_color; /*快速运动颜色 int approach_color; int cut_color;

/*接近运动颜色

int engage_color; /*切入运动颜色

/*切削运动颜色

/*跨越运动颜色 /*横越运动颜色 /*安全面颜色

int stepover_color; int traversal_color; int clearance_color;

}Display_Control;

4.2、曲面加工刀具轨迹及其数据结构

曲面加工的刀具轨迹生成不仅涉及零件面、导动面(线)、检查面(线)的定义,而且与刀具轨迹控制参数密切相关。

(1)曲面加工刀具轨迹的数据结构 typedef struct {

NCPATH_PARA para;/*刀具轨迹控制参数:包括前面描述的7类参数 PS_LIST *part_surf;

/*零件面

DS_LIST *drive_geometry; /*导动几何定义 CS_LIST *check_geometry; /*检查几何定义 Int (*NC_func)(); /*刀具轨迹生成函数

NCGROUP *h_area; /*切削块首指针

}NCPATH;

其中的刀具轨迹生成函数用于加工参数或零件面修改后自动重新计算刀具轨迹。 (2)切削块的数据结构 typedef struct {

int id; /*切削块标识 int flag; /*切削块属性 Ppoint3 *engage_point;

/*切削块进刀点

Ppoint3 *retract_point; /*切削块退刀点 NCLINE *cutting_line; /*第一个切削行首地址 NCGROUP *next;

/*下一个切削块首地址

}NCGROUP;

(3)切削行的数据结构 typedef struct {

int id; /*切削行标识 int flag; /*切削行属性 NCSEGMENT NCLINE *next;

*cutting_seg; /*第一个切削段首地址 /*下一个切削行首地址

}NCLINE;

第七章、刀具轨迹验证 第一节、概述

利用计算机图形显示器把加工过程中的零件模型、刀具轨迹、刀具外形一起显示出来,用这种方法来模拟零件的加工过程,检查刀具轨迹计算是否合理、加工过程中是否发生过切,所选用的刀具、走刀路线、进退刀方式是否合理、刀具与约束面是否发生干涉碰撞。这种方法统称为刀具轨迹验证。

刀具轨迹验证的方法很多,最简单最常用的方法是刀具轨迹的显示验证,即将刀位数据(包括刀心坐标与刀轴矢量)的线框图显示出来,判断刀具轨迹是否连续,检查刀位计算是否正确;其次是将刀位数据连同被加工表面的线框图一起显示出来,来判断刀具轨迹的正确性,走刀路线、进退刀方式是否合理。比较复杂的方式是采用各种截面法验证,如纵截面法、横截面法及曲截面法等,将指定刀位点上的刀具截面图与被加工表面及其约束面的截面图一起显示在屏幕上,这样便可以很直观地判断所选择的刀具是否合理,检查刀具与约束面是否发生干涉与碰撞,加工过程中是否存在过切;为了能够定量给出验证结果,可以采用数值验证;更复杂一些的方法是加工过程的动态仿真验证,即将加工过程中的领江实体模型、刀具实体、切削加工过程及加工结果,采用不同的颜色一起动态显示出来,模拟零件的实际加工过程,不仅可以观察加工过程,而且可以检验刀具与约束面的干涉与加工过切;更为先进的方法是,将机床模型与加工过程仿真结合一起,还可以观察刀具是否与加工零件以外的

其它不见发生干涉或碰撞。

采用刀具运动包络面法计算被加工表面的加工误差是最精确的,但由于刀具运动包络面的生成比较困难,所以这种方法在实际中很少采用。

第二节、显示法验证

刀具轨迹显示验证

加工表面与刀具轨迹的组合显示验证

组合模拟显示验证

第三节、截面法验证

横截面验证

纵截面验证

曲截面验证

第四节、数值验证

球形刀加工的数值验证

锥形棒铣刀侧铣加工时的数值验证

第五节、加工过程的动态仿真验证

加工过程动态仿真 机床仿真

第八章、后置处理 第一节、基本概念

数控机床的所有运动和操作都是执行指定的数控指令的结果,完成一个零件的数控加