第二章CAD/CAM支撑技术2.1常用数据结构2.2数据管理技术2.3计算机网络技术2.4成组技术2.1CAD/CAM系统常用的数据结构2.1.1数据结构的概念数据结构:是按某种逻辑结构组织起来,按一定的存储表示方式把组织好的数据存储到计算机中,并对之定义一系列操作运算的数据的集合。数据结构非线性结构数据存储结构数据运算数据逻辑结构线性结构线性表队列栈网状结构树结构链式存储顺序存储插入,删除,更新,检索,排序2.1.2线性表逻辑结构:相同数据元素组成的有限序列,除表头和表尾之外,每个数据元素仅有一个前驱和后继。如工资表、学生名册。存储结构:有顺序存储和链式存储两种结构1)顺序存储-相邻的存储单元存储逻辑上的顺序数据元素。特点:•有序性,存储顺序与逻辑顺序一致;•均匀性,每个数据元素所占存储单元长度相同。地址计算:设首址为b,则数据元素ai存储地址为Loc(a)=b+(i-1)•L如线性表(a1,a2,…,ai,…,an)顺序存储结构为:线性表插入运算:2)链式存储结构:用任意的存储单元存放线性表的各个数据元素,用指针指示各元素的前驱和后继。链表结点结构:数据域和指针域。指针域有单向指针和双向指针,可构成单向链表和双向链表。链表插入操作运算步骤:①申请新结点存储空间;②将待插入元素M存放在新增结点数据域;③新增结点指针链接。线性表顺序存储与链式存储结构比较•顺序存储:优点:结构均匀,便于数据元素访问和修改操作;不足:删除插入大量数据元素需移动,运算效率低。应用:多用于查找频繁、很少增删的场合。•链式存储:优点:删除插入效率高,不需数据元素移动,不需事先分配存储空间,存储空间利用充分。不足:搜索效率低,需从头结点顺次搜寻。应用-多用于事先难以确定容量,频繁增、删场合。2.1.3栈和队列栈(Stack):限定在表尾进行插入或删除操作,且为“后进先出”的线性表。队列(Queue):限定在表一端插入,在另一端删除的“先进先出”线性表。a1a2……ak……an-1an入队出队队列数据结构循环队列2.1.4树与二叉树树结构(层次结构):每个结点有一个以上后继,除根结点之外,所有结点仅有一个直接前驱。树结构相关术语:•结点树的基本单元,包含一个数据元素及若干指向其子树的指针;•结点度搞结点子树个数;•树的度树中最大结点的度,图示树的度为4;•叶结点度为0的结点或终端结点,如图中C、E、K、G、H、I、L等;•分支结点度不为0的结点或非终端结点;•子结点与父结点如图中结点B的子结点为E、F、G、H;B父结点A;•结点层数:根结点为第一层,根的子结点为第二层,其余类推;•树的深度树的最大层数,图示深度为4;•森林森林是n棵互不相交树的集合。二叉树:各结点仅有左子树和右子树的特殊树结构。若深度为k,其结点数最多是2k-1个。满二叉树:拥有2k-1个结点的二叉树,所有结点都有左右子树,所有叶结点都在同一层上。完全二叉树:深度为k结点数为n的二叉树,从1至n每一结点编号都与满二叉树编号一致。二叉树存储结构顺序存储:仅适合于完全二叉树,若用于一般二叉树,将有许多空存储单元。链式存储:每结点除数据域外,还包含左右子树指针。二叉树的遍历遍历:按一定规律每一节点被访问一次。二叉树常用遍历算法:先序遍历;中序遍历;后序遍历。先序遍历:先访问根结点,然后先序遍历左子树,再先序遍历右子树。如上图先后顺序为A→B→D→G→H→C→E→I→F。preorder(structbtree*node){if(!node)return;printf(“%d”,node-data);preorder(node-lchild);preorder(node-rchild);}inorder(structbtree*node){if(!node)return;inorder(node-lchild);printf(“%d”,node-data);inorder(node-rchild);}postorder(structbtree*node){if(!node)return;postorder(node-lchild);postorder(node-rchild);printf(“%d”,node-data);}中序遍历:先中序遍历左子树,然后访问根结点,再中序遍历右子树。访问顺序为G→D→H→B→A→E→I→C→F。后序遍历:先后序遍历左子树、后序遍历右子树,再访问根结点。结点访问顺序为G→H→D→B→I→E→F→C→A。树的二叉树表示的转换步骤:①将各层兄弟结点用线连起来;②除最左子结点外,去掉各结点与其子结点连线;③以根为中心,将整棵树顺时针旋转45°,最终得到所需二叉树。(a)(b)(c)2.2数据管理技术常用数据管理技术•文件管理系统•数据库管理系统•工程数据库•产品数据管理(PDM)•CAD/CAM系统数据管理方法1、文件管理系统:数据文件:具有相同性质和结构记录的集合。文件管理系统:由操作系统提供,定义数据文件结构,规定数据文件的存取方法,管理文件存储地址。特点:系统简单、实现方便灵活、处理效率高。不足:数据冗余度大,缺乏数据独立性,数据完整性、安全性难以保证。2、数据库管理系统:数据存储独立于应用程序;实现数据的共享;数据完整和安全性得到保证。数据库常用结构形式层次模型:树结构,表示“一对多”关系;网状模型:各节点可有多个父节点,表示“多对多”关系;关系模型:二维表结构。a)层次模型b)网状模型3、工程数据库商用数据库工程数据库用途用于计划事务,数据共享用于工程、产品设计和分析特征数据类型少,关系简单,每种数据大量调用数据类型多,数据间关系复杂,每类数据调用量少处理查询、增删、更改,每次处理周期短,涉及记录少从查询到分析均依赖数据库,每次处理周期长,涉及记录量大服务对象静态,客体间关系清楚,建库前模型已定动态,岁设计过程展开,最终形成设计模型和结果数据性质数值、字符串,数据量大,稳定除数值字符外,还有图形数据,随设计过程,数据量迅速增长结构模型模式简单,联系不强,记录相对稳定模式复杂,数据节点表现为“多对多”的递归关系工程数据库与一般商用数据库的比较4、数据管理PDMPDM定义:PDM是管理所有与产品相关的信息和过程的技术。与产品相关的信息:CAD/CAM文件、材料清单、产品配置、电子表格、供应商及用户清单等。与产品相关的过程:加工工序、工作流程、审批发放过程、产品变更过程等。关系数据库管理系统面向对象管理系统系统工作文档工作系产品配零件分项目管理环境管理统流程置管理类管理管理用户界面开发工具工作站微机网络计算机-用户层-功能层-对象层-支持层PDM系统的体系结构l电子资料室管理和检索PDM最基本的功能,PDM核心。l产品配置管理以电子资料室为底层支持,以物料清单BOM为组织核心,把产品所有工程数据和文档联系起来,对产品相互关系管理。l工作流程管理实现产品设计与修改过程的跟踪与控制,包括工程数据资料的提交、修改控制、监视审批、文档的分布控制、自动通知控制等。l项目管理功能实现项目实施过程中的计划、人员以及相关数据的管理与配置,进行项目运行状态监控,完成计划反馈。PDM功能基于PDM的集成平台•基于文件记录的专用数据管理:根据实际需要设计数据文件,应用程序与数据文件一一对应,针对性强,缺乏通用性。•在商用DBMS基础上建立软件接口:将DBMS提供的数据操作语言(SQL)嵌入宿主语言,建立CAD/CAM的高级应用接口。•用工程数据库系统建立数据库:将是下一代CAD/CAM集成系统数据管理的主流。5、CAD/CAM系统数据管理方法2.3计算机网络技术计算机网络功能和特点:l能够在计算机之间快速地实现数据的传递;l共享网内计算机资源;l网内各计算机互为后备,提高系统的可靠性;l若干计算机可共同完成一项任务,协同进行网络作业。计算机网络类型:广域网:用于地区间通信,距离可达几千公里,Internet是目前规模最大一种广域网。局域网:在数公里范围内,是直接用于传递数字信号计算机网络。CAD/CAM系统所采用的网络均属于局域网。网卡与媒体服务器工作站网间连接器网络系统软件计算机局域网的组成:a)总线网b)星形网c)环形网d)网状形网络拓扑结构:OSI互联网络协议(开放系统互联模型)应用层表示层会话层传输层网络层链路层物理层应用层表示层会话层传输层网络层链路层物理层开放系统A开放系统B物理传输介质客户机/服务器模式(C/S)特点:•可均衡CAD/CAM作业事务的处理;•有较快的通信速度;•客户端有自身应用程序,交互性强;不足:客户机维护费用高,随客户机增加系统性能会下降。基于网络的CAD/CAM系统模式结构浏览器/服务器模式(B/S)特点:•包括用户层、应用服务层、数据服务层三层结构;•客户端仅需通用浏览器,客户端得到简化;•系统功能体现在应用服务器上,减轻了客户端维护工作量;•浏览器为提供了统一、友好、便于操作的界面;•不足与C/S比较,处理速度较慢,交互灵活性较差。2.4成组技术成组技术原理:利用零件相似性,从事生产组织管理的一种科学方法,涉及相似性标识、开发和应用几方面问题。相似性标识:用分类编码系统对相似性进行描述,如Opitz编码系统、JLBM编码系统等。相似性开发:利用相似性建立相似产品零件族,构造典型零件。相似性利用:成组设计、成组工艺、成组生产组织等。零件的分类编码系统编码系统:用数字与字母对零件特征进行标识和描述的系统。要求:•每项特征代码应有明确的含义,不能含糊不清;•足够的信息容量,应覆盖企业所有产品特征,并满足产品更新和发展需要;•描述的特征应具有永久性,不能因产品更换或条件变化而变得不适用;•能满足企业内各部门要求;•结构紧凑,便于使用,并能适合计算机处理。•确定使用范围不同部门有各自使用目的和要求,在设计或选择零件分类编码系统时,首先应确定使用范围。•统计零件特征从零件类型、几何形状、尺寸分布、加工精度、材料性能、表面处理、毛坯形式、工艺要求等零件特征进行统计分析。•制定结构方案按照“先主后次”、“先粗后细”、“先外后内”等原则,确定系统结构方案,包括总体结构、码位排列、参数分级等。•现场试用和修改定型系统方案需通过试用验证,不断加以修改,最后才能定型并正式投入使用。零件分类编码系统的设计或选择步骤Opitz编码系统(9位)主码:1-5位,描述零件基本形状,回转体还是非回转体、外部形状、内部形状、平面加工和辅助加工等;辅码:表示零件主要尺寸、材料及热处理、毛坯形状和精度要求。特点:结构简单、码位少、功能范围广、编排科学、使用方便。不足:非回转体描述粗糙,尺寸和工艺特征信息较少。JLBM-1编码系统(15位)1-2位-零件类别2-9位-主码10-15位-辅码零件分类成组:按照相似性准则,将零件归并成相似零件族。⑴编码分类法编制零件代码,利用零件代码形成零件族。•特征码位法将影响最大的码位作为特征码来划分零件族;•码域法以各码位数值规定一个范围作为零件分组的依据;•特征位码域法由特征码位法与码域法结合而成的一种分组方法。⑵生产流程分析法以生产工艺过程对零件分类成组,步骤:•工厂流程分析,建立车间与零件的对应关系;•车间流程分析,建立制造单元与加工零件的关系;•单元流程分析,建立加工设备与零件的关系;•单台设备流程分析,建立工艺装备与零件的关系。据此,编制最佳作业顺序,得到各设备组与对应的零件族。分类成组方法-特征码位法基于成组技术的CAD应用系统发兰盘零件族及其复合零件基于成组技术的CAD应用系统运行流程