资源预览内容
第1页 / 共28页
第2页 / 共28页
第3页 / 共28页
第4页 / 共28页
第5页 / 共28页
第6页 / 共28页
第7页 / 共28页
第8页 / 共28页
第9页 / 共28页
第10页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
1. 掌握数表、线图的计算机处理方法; 2. 掌握数表的公式化处理方法; 3. 了解数据库的基本原理及应用。,第一节 概述 第二节 数表的计算机处理 第三节 线图的计算机处理 第四节 数表的公式化处理 第五节 数据库的基本原理与应用,本 章 内 容,机械CAD/CAM课程教案,教学目的,第五章 计算机辅助设计,第五章 计算机辅助设计,5.0 概述 5.1 数表的计算机处理 5.2 线图的计算机处理 5.3 数表的公式化处理 5.4 数据库的基本原理与应用,5.0 概述,设计数据,数表,线图,常数数表,普通线图,列表函数,程序化 (数组),单个编程处理,文件化,数据库,离散为数组,插值计算,函数拟合,直接应用公式,折线图,带有公式,处理方法,数据类型,设计数据类型 及常用处理方法,5.1 数表的计算机处理技术 5.1.1 数表的数组化,一维数表 例:由三角胶带包角查取修正系数k 用2个一维数组进行程序化 。 float alfa8=90.0,100.0,110.0,120.0,130.0,140.0,150.0,160.0; float kalfa8=0.68,0.74,0.79,0.83,0.86,0.89,0.92,0.95;,5.1.1 数表的数组化,二维数表:齿轮传动工况系数KA 用二维数组进行程序化 float a33=1.0,1.25,1.75,1.25,1.5,3.0,1.5,1.75,3.25;,检索齿轮传动工况系数C语言程序: #include main() int i,j; float ka33=1.0,1.25,1.75,1.25,1.5,3.0,1.5,1.75,3.25; while(1) printf(“输入原动机载荷特性(0,1,2): ”); scanf(“%d”, ,多维数表:齿 形 公 差 ff,用三维数组表示ff4612,多维数表:控制量个数大于2的数表,可用多维数组表示。 如齿轮齿形公差表的三维组: float ff4612= 2.1,2.6, ,90,2.4,3.0,125,2.5,3.4,140, 2.4,3.0,112,2.5,3.2,140,3.4,280, 3.6,3.4,160,3.8,3.8,180,4.5,450, 3.0,4.2,224,3.2,4.5,250,5.0,500 ;,5.1.2 数表的文件化,数表数组化表示存在的不足: 1)使程序膨胀、累赘,仅适合于小型数表; 2)数据的独立性较差 数表文件化: 可使程序简练; 使数表与应用程序分离; 一个数表文件可供多个应用程序使用; 提高数据系统的可维护性。,平键数表文件化,建立数表文件C语言程序: #include #define num=12 struct key_GB float d1,d2,b,h,t,t1; key; void main() int i; FILE *fp; If(fp=fopen(“key.dat”,”w”)=NULL) printf(“Cannot open the data file”); exit(); for(i=0;inum;i+) printf(“record%d: d1,d2,b,h,t,t1=”,i); scanf(“%f,%f,%f,%f,%f,%f”, ,给定轴径d尺寸,从 “key.dat”文件检索键槽尺寸, #include #define num=12 struct key_GB float d1,d2,b,h,t,t1; key; void main() int i; FILE *fp; while(1) printf(“Input the shaft diameter d=”); scanf(“%f”, ,5.2 线图的计算机处理技术,线图一般处理方法: 附有公式的线图:将公式直接编写到程序中; 一般线图:先将线图离散为数表,进行程序化处理; 复杂线图:分别编程处理。,一般线图的处理,x=0时渐开线齿轮当量齿数和齿形系数关系曲线,分割离散原则:各分割点间的函数值不致相差很大。,复杂线图的处理,对数坐标直线边方程:,若给出Px值,可求得lgNy。,可得:,V型皮带选型 折线图,void belt(int n,float p,int *k) float c; c=log10(490.0)+(log10(p)-log10(0.8)*(log10(4900.0)-log10(490.0) /(log10(3.8)-log10(0.8) if(n=4900|n=10*c) /*k=0 ;O型带*/ else c=log10(100.0)+(log10(p)-log10(1.0)*(log10(3400.0)-log10(100.0) /(log10(10.5)-log10(1.0) if(n=3400|n=10*c) /*k=1 ;A型带*/ else ,C语言实现:,5.3 数表的公式化处理,改写成为:,可见,g(x)是两个基本插值多项式的线性组合。,线性插值 (两点插值),列表函数,线性插值C语言函数程序,float inter(float x,float x1,float x2,float y1,float y2) float y; y=y1+(y2-y1)/(x2-x1)*(x-x1); return(y); ,抛物线插值(三点插值),拉格朗日插值(多点插值),5.3.3 函数拟合,:,函数插值存在的不足: 严格通过每个结点,复制了原有的结点误差; 仍需将各结点数据进行存贮,占用存贮空间。,函数拟合: 曲线不要求通过已知结点,仅反映数据变化趋势。,1 、拉格朗日 插值 曲线 2、函数拟合曲线,最小二乘法函数拟合:曲线到各结点误差平方和最小。 步骤: 1)在坐标纸上绘出各结点,根据其趋势绘制曲线图形; 2)确定近似函数,可为多项式、对数函数或指数函数等; 3)用最小二乘法求出待定系数。,误差函数:,求导数:,解方程求得方程系数a,b:,例:直线段f(x)=a+bx的拟合:,指数函数最小二乘法拟合: y=abx 对上式两边取对数,转化为线性函数: lgy=lga+xlgb 令: y=lgy, u=lga, v=lgb,则: y=u+vx 求出线性方程系数u和v,再根据u,v求出a和b,可得: y=abx,5.4 数据库在CAD/CAM作业中的应用 Visual FoxPro数据库管理系统,是一种关系型模式,为目前应用最广泛的微机型系统,被称之为大众型数据库管理系统; 提供友好的集成环境,具有Windows窗口功能; 可通过系统菜单、工具条或命令窗口进行数据库的创建、维护和各种应用操作,包括数据记录的输入、修改、插入、删除、剪切、拷贝、粘贴等作。 有较强的数据管理功能、丰富的开发工具,用户可利用编辑器、设计器、项目管理器等工具,开发功能齐全的应用程序。,FoxPro数据类型 字符型(character):用于表示包括汉字和各类字符在内的字符型变量数值,一个字符占用一个字节,字符型变量最多为254个字节。 数字型(numeral):用于表示包括正号、负号、小数点及0-9的数字型变量的数值,占用8个字节的内存。 日期型(Data):用于表示月、日、年的日期型变量的数值,占8个字节。 逻辑型(logical):用于表示由逻辑真或逻辑假构成的逻辑型变量的数值,只用1个字节。 备注型(Memory):用于存放由可变长度的ASC码组成的字段的数值,用10字节引用备注文件。 货币型(Current):用于表示货币值的变量数值,占用8个字节。 通用型(General):用于存放OLE对象的数值,占用10字节。,数据库的应用实例,支承块(GB2235-80)数据库表文件,数据库的应用实例,深沟球轴承,数据库结构定义 :,数据记录输入 : APPEND 或:EDIT 或:BROWSE,轴承型号: 内径d: 外径D: 宽度B: 轴肩D1: 孔径D3: 动负荷:,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号