已阅读5页,还剩38页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于 proengineer 的工艺数据库开发 第一章 绪论 i 目目 录录 第一章 绪 论 .1 1.1 本课题研究开发的背景和相关研究工作现状1 1.1.1 研究开发的背景 .1 1.1.2 相关研究工作的现状 .3 1.2 本课题研究、开发的主要任务和开发方案4 1.2.1 主要任务和具体要求 .4 1.2.2 本课题研究开发的技术路线和开发方案 .5 第二章 cad/capp/cam 系统集成及开发方法6 2.1 cad/capp/cam 系统集成.6 2.1.1 cad/capp/cam 系统集成的基本概念和构成.6 2.1.2 cad/capp/cam 系统集成的应用.7 2.2 cad/capp/cam 系统集成的方法.8 2.3 cad/capp/cam 系统开发方法.9 2.3.1 软件工程的概念 .9 2.3.2 软件开发过程和方法 10 2.3.3 结构化软件分析与设计方法 11 第三章 开发平台与工具 .13 3.1 系统的开发平台.13 3.2 pro/toolkit .14 3.4 数据库 16 3.5 access97 17 3.6 编程语言及集成开发环境 vc+6.0.18 基于 proengineer 的工艺数据库开发 第一章 绪论 ii 第四章 系统的设计与实现 20 4.1 系统的分析.20 4.1.1 系统的功能.20 4.1.2 系统的数据流图 20 4.2 系统的设计.24 4.3 系统的实现 25 4.3.1 开发和运行环境 25 4.3.2 菜单设计 28 4.3.3 对话框设计 30 4.3.4 数据库设计 32 4.3.5 系统的测试 33 第五章 系统的运行 .33 5.1 系统的运行环境及使用方法.33 5.2 运行实例 34 结 论 .37 结束语 38 参考文献 39 附录 1 英文翻译原文及译文 附录 2 源程序代码 基于 proengineer 的工艺数据库开发 第一章 绪论 1 第一章 绪 论 1.1 本课题研究开发的背景和相关研究工作现状 1.1.1 研究开发的背景 随着计算机技术日益广泛深入的应用,特别是在机械、航空、电子等各个领域 得到了广泛的应用,人们很快发现,各种计算机辅助技术采用各自独立的系统不能 实现系统之间信息的自动传递和交换。例如 cad(computer aided design,计算机辅 助设计)系统设计的结果,不能直接为 capp(computer aided process planning,计算 机辅助工艺设计)系统接收,若进行工艺规程设计时还需要人工将 cad 输出的图样、 文档等信息转换成 capp 系统所需要的输入数据,这不但影响了效率的提高,而且 在人工转换过程中难免会发生错误。只有当 cad 系统生成的产品零件信息能自动 转换成后续环节(如 capp、cam 等)所需的输入信息,才是最经济的。为此,人 们提出了 cad/capp/cam 集成的概念并致力于 cad、capp 和 cam(computer aided manufacturing,计算机辅助制造)系统之间工艺数据库的自动传递和转换的研究, 以便将业已存在的和正在使用中的 cad、capp、cam 等独立系统集成起来。 cad/capp/cam 系统集成涉及到产品的总体设计、工艺过程设计、数控加工、 运动机构的模拟设计、有限元分析的前后置处理、工艺规程设计、数控加工、检验 测量等。它涉及到计算机科学、计算数学、计算几何、计算机图形学、数据库技术、 软件工程、仿真工程、人工智能等新兴学科领域。cad/capp/cam 集成技术就是 从设计到制造的整个工程应用计算机进行有关信息处理的技术。当 cad、capp、cam 结合在一起时,就把产品的设计、工艺路线的规划和制造过程 变成了一个完整的集成系统,使许多专业技术工作实现了有效集成。 cad/capp/cam 集成技术是跨计算机科学、信息技术与现代设计制造技术相 结合的产物,是实现产品设计和制造自动化的关键技术,是当代先进的生产力,被 公认为 20 世纪 90 年代的十大重要技术成就之一。在产品开发过程中,引入 cad/capp/cam 系统集成进行产品的设计、工程与结构分析、工艺规划,能大大 地提高工作效率和产品的性能和质量,缩短产品的开发周期,增强产品的竞争力, 对企业而言创造显著的效益。目前,在计算机网络和数据库系统的支持下,以 cad/capp/cam 为核心的多种集成系统的出现,使传统的生产模式发生了深刻的 变革。 一个完备的 cad/capp/cam 集成系统的任务是能支持产品全生命周期(设计、 制造、装配、检验、销售、维修等)各相关过程的生产活动。对各相对独立发展起 来、有相互关联的各单项计算机辅助系统,一般称为 基于 proengineer 的工艺数据库开发 第一章 绪论 2 cax(cad、cae、capp、ncp、mrp、),进行有效的集成,是 cad/capp/cam 技术发展的必然要求1。这些系统的发展可以相对不平衡,但必 须在并行工程思想的指导下实现 capp 与 cad、cam 等系统的全面集成,发挥 capp 在整个生产活动中的信息中枢和功能调节作用。这包括:与产品设计实现双 向的信息交换与传送;与生产计划调度系统实现有效集成;与数控编程系统实现有 效集成;与质量控制系统建立内在联系。 一个基于集成的产品数据库的 cad/capp/cam 集成系统如图 1.1 所示。 图 1.1 集成化系统 基于系统集成的产品数据库是可供共享的重要的信息资源。但在非集成的各单 项技术应用中,工艺数据库系统一般是孤立分离的,数据模式的定义也不统一,与 cad/capp/cam 中大量的信息集成的需求和特点不同,且在各子系统中,信息集 成有明显差别。因此建立基于系统集成的产品数据库,存储零件的特征信息、工艺 信息、加工工艺参数等信息,实现在 cad/capp/cam 集成系统中对产品数据库的 访问,并在集成产品数据库之上,结合产品的设计、工艺路线的规划、工艺过程设 计和制造过程为一个完整的系统,这样对系统实现设计、制造到管理,产品生命周 期的全过程的无缝集成,各独立模块实现数据连通,调用连通,信息共享,能大大 缩短设计周期,提高整个流程的工作效率和工作质量。 随着商品化的 cad/cam 软件的发展和广泛应用,考虑 capp 自身的特点和 要求,基于特征,基于 cad/cam 软件平台进行二次开发已成为了一种简单、高效 的 cad/capp/cam 集成系统开发的趋势。利用诸如 unigraphics、pro/engineer 等基于特征的 cad/cam 软件平台,在充分利用已有软件功能的有利条件下,开发 capp 系统并与之集成,能充分利用成熟的 cad、cam 技术,大大缩短开发周期, 统 一 用 户 界 cad 面 capp cam 集成的产 品数据 统 一 数 据 系 理 管 库 统 dbms 基于 proengineer 的工艺数据库开发 第一章 绪论 3 也使已有的软、硬件得以充分利用以节约企业的开支。 无论使用何种集成方法或进行开发,cad/capp/cam 集成系统中,工艺数据 库都是必不可少的。 1.1.2 相关研究工作的现状 目前主流的 cad/cam 软件主要来自国外公司,国内的相关基础工作相对落 后于发达国家,因此在 cad/capp/cam 系统集成的研究与开发这方面工作进行得 相对较少,总体水平低、技术落后于国外发达国家。但也有一些具有一定先进性的 研究。如我国在 20 世纪 80 年代初期开始了 cad/capp/cam 系统集成的工艺数据 库理论研究和系统开发工作。1986 年 3 月,我国制定并启动 863 计划,并在后续 的 863/cims 主题计划中设立了多项与 cad/capp/cam 系统集成相关的关键技术 攻关项目或子项目、目标产品发展项目以及软件重大专项,同时大力推广应用示范 工程。1988 年 5 月,在南京航空航天大学召开了国内第一次 cad/capp/cam 系统 集成的专题研讨会,受到广大科研院所和制造企业的普遍关注,引发了国内该系统 集成的研究热潮2。 台湾地区对 pro/engineer 的二次开发进行的比较成熟,在上世纪八十年代,曾 引领大陆的 cad/cam 发展方向。 国外在 cad/capp/cam 系统集成这方面的研究开发工作进行的比较早。 cad/capp/cam 系统集成的研究在国际上始于 20 世纪 60 年代后期,其早期意图 就是建立包括工艺卡片生成、工艺内容存储及工艺规程检索在内的计算机辅助系统。 实现各系统内信息资源的共享。 焦作工学院的侯守明在中小企业 cad/capp/pdm 集成系统研究与开发一 文中分析了中小型企业在应用 cad、capp 进行产品开发以后出现的新需求,结合 产品数据管理系统的发展趋势,提出以产品结构为中心的设计、管理一体化解决方 法,开发基于 pro/engineer 和数据库软件的 cad、capp 集成系统。 天津大学的冯丽艳在面向中小制造企业的 cad/capp 集成系统一文中谈 到,近年来,我国很多企业实现了 cad(计算机辅助设计)、capp(计算机辅助工艺设 计),但多数是各自独立开发,不能实现 cad、capp 之间信息的自动传递和交换。 capp 系统的信息输入要花费大量的时间, 容易出错, 而且生成不恰当的工艺过程。 武汉水利电力大学的吴晓光在cad/capp 集成系统的研究与开发一文中 讨论了实现 cad/capp 集成系统的基本结构与功能,以及实现 cad/capp 集成数 据的传递方法。 广东工业大学的陶建华在基于特征和参数化的 cad/capp 集成中分析了 capp 在实现过程中所遇到的难点,重点分析了 cad/capp 集成环节中遇到的困难。 提出了用全参数化方式实现 cad/capp 集成的方法。 基于 proengineer 的工艺数据库开发 第一章 绪论 4 吴晓光在基于 vc+类库的 cad/capp 集成系统的研究与实践一文中采 用特征拼装及特征单元的参数化设计方法,在以 visualc+类库(microsoft foundation class mfc 类)为数据存储、交换与管理的基础上,成功地实现了 cad/capp 集成数据的传递与共享。 基于特征的,基于 cad/cam 软件平台进行的工艺数据库的开发,已正被许 多中小企业所接受,企业在自有各计算机辅助系统中实现各系统之间信息的自动传 递和交换。正由于这一发展所给企业带来的效益,促使企业加大对 cad/cam 软件 平台的开发,对 cad/capp/cam 集成系统的开发,以及对 cad/capp/cam 集成 系统的工艺数据库的开发。 1. 2 本课题研究、开发的主要任务和开发方案 1.2.1 主要任务和具体要求 任务书所给的要求如下: 研究了解 capp 技术的概念内涵、主要特征、关键技术; 研究了解 cad/capp 集成系统的组成、主要特征、关键技术; 研究了解主流 cad/cam 软件的功能、特点; 研究了解工艺数据库的要求、构成、功能、使用; 研究了解数据库设计的原则、要求、设计方法、步骤; 研究掌握基本的 pro/engineer 二次开发技术,比较、选择开发工具及数据库系 统; 运用结构化软件分析与设计方法对系统进行分析与设计; 系统体系结构、主要模块的实现; 系统测试,给出运行实例; 根据任务书的要求,首先要对 cad/capp/cam 集成系统的开发背景和相关研 究工作现状进行了解,对本课题研究开发的意义和作用进行了解,运用结构化软件 分析和设计方法对集成系统工艺数据库进行系统分析和总体结构设计。了解 pro/e 的二次开发工具,掌握 pro/e 的二次开发工具 pro/toolkit 的使用。了解数据库技 术及其应用。在此基础上,进行界面的设计,建立用户界面,建立工艺数据库并实 现对工艺数据库的管理,实现数据库与应用程序的接口,从而完成在 pro/e 系统下 符合 cad/capp/cam 集成系统要求和使用要求的工艺数据库的实现。最终,该系 统实现常用机床参数查询功能、常用刀具参数查询功能和加工余量的参数查询功能。 提供给用户弹出式对话框,可以方便地在 pro/e 的环境下访问工艺数据库。最后对 系统进行测试,并给出运行实例。 基于 proengineer 的工艺数据库开发 第一章 绪论 5 1.2.2 本课题研究开发的技术路线和开发方案 cad/capp/cam 应用软件开发是一项高智力、高难度的工程项目,为了保证 所开发软件的质量,应采用科学有效的软件工程方法进行开发。 pro/e 本身就是一个成熟的 cad/cam 系统,为 pro/e 开发工艺数据库是利用 pro/e 开发 cad/capp/cam 集成系统工作的一部分,所以采用的技术路线主要分 为三大块:开发用户界面和应用程序接口;开发工艺数据库模块;实现工艺数据库 的访问和管理。将设计生产中使用的工艺参数集成到 proengineer wild fire2.0 平台中,让用户在开发设计过程中,在系统平台下可以完成对工艺数据库的访问和 调用。 要在 pro/e 中进行工艺数据库开发,必须存在用户接口程序。而 pro/e 本身就 为开发者提供了 pro/toolkit,因此进行工艺数据库开发成为可能。pro/toolkit 提供 了大量的库函数,可用来实现各种不同的 pro/e 操作。而且自 pro/e2001 之后, pro/toolkit 还提供用户开发界面的编程接口。利用 pro/toolkit 可以开发出具有 pro/toolkit 风格的对话框,能向用户提供人机交互界面,进行简单的人机交互3。 pro/toolkit 可通过 vc+进行编译,也可在 vc+中进行编码。因此,系统的程序 在 vc+中编制。visual c+包含了迄今为止功能最强大的基于 windows 的应用框 架,microsoft 基本类库是它的重要组成部分,构成了应用框架的核心。其他一些组 成元素,包括 appwizard、app studio、visual 工作平台、编译器和连接器,为用户 构造应用平台提供了必要工具。同时利用 vc+提供的 mfc 对话框类,可实现界 面的可视化开发,创建用户对话框4。应用程序可实现 pro/toolkit 和 mfc 类的集 成,通过编译可生成一个.dll 文件实现与 pro/e 系统的动态链接。目前,常用的数据 库管理系统有 visual foxpro、access、oracle、sybase、ms sql server 等。用这些 系统来开发专门的数据库应用系统是适宜的,但用来开发 cad 系统就难以胜任, 需要通过编写接口程序来解决其与 cad 系统的集成问题。目前 cad 及其数据库系 统开发的最佳途径是在高级语言中嵌入数据库功能,如 visual c+6.0 在其 mfc 类 库中嵌入了 odbc 类和 dao 类,从而使编程语言不但具有强大的 cad 应用程序 的开发功能,而且具备了强大的数据库系统的开发及管理功能。系统采用 access 开 发工艺数据库作为 pro/e 的外部数据库。由于采用 odbc 方式较为复杂,而 vc+ 中内嵌有直接驱动 access 数据库的引擎技术。因此本系统主要采用 vc+6.0 的 dao 类进行检索。数据库的访问采用直接调用方式,因此比较简单。 基于 proengineer 的工艺数据库开发 第二章 cad/capp/cam 系统集成及开发方 法 6 第二章 cad/capp/cam 系统集成及开发方法 2.12.1 cad/capp/cam 系统集成系统集成 2.1.1 cad/capp/cam 系统集成的基本概念和构成 一般认为,cad/capp/cam 系统集成就是把各种功能不同的软件系统如 cad、capp、ncp(number control programming,计算机辅助数控编程)系统按不 同的用途有机地结合起来,用统一的执行控制程序组织各种信息的提取、共享和处 理,保证系统内信息流畅通,并协调各子系统有效地运行。从信息集成的角度上看, cad、capp、cam 之间信息的提取、交换、共享和处理的集成就构成了一个基本 的一体化的 cad/capp/cam 系统。如图 2.1。 计算机辅助设计、计算机辅助工艺设计和计算机辅助制造技术是产品设计和制 造工程技术人员在计算机系统的辅助之下,合理有效地进行产品设计和制造的一项 新技术。cad/capp/cam 是传统设计与制造技术与现代计算机技术的有机结合。 cad/capp/cam 系统的硬件由计算机及外围设备组成,主要包括:主机、外 存储器、输入设备、输出设备、网络通讯设备及生产设备等。具体如图 2.2 所示: cadcappcam 新产品开发 产品要求 性能规定 零件图、装配图 产品设计文 件 零件信息文 件 工艺路线文 件 毛坯图、工序图 工艺内容文 件 nc 加工 nc 监测 程序 设计知识 数据库 cad 软件 计算机硬件系统 工艺知识 数据库 图形系统 计算机硬件系统 加工设备 数据库 cad 软件 计算机硬件系统 图 2.1 cad/capp/cam 信息集成的要求 基于 proengineer 的工艺数据库开发 第二章 cad/capp/cam 系统集成及开发方 法 7 2.1.2 cad/capp/cam 系统集成的应用 cad/capp/cam 系统集成的关键是通过有效的手段和方法,解决产品设计和 制造信息的共享。 cad/capp/cam 集成技术它主要用于产品的总体设计、外型设计、优化设计、 运动结构的模拟设计、有限元分析的前后置处理、工艺过程设计、数控加工、检验 测量等环节。他涉及到计算机科学、计算数学、计算几何、计算机图形学、数据库 技术、软件工程、仿真工程、人工智能等新兴学科领域。cad/capp/cam 集成技 术就是从设计到制造的整个过程应用计算机进行有关信息处理的技术。当 cad、capp、cam 结合在一起时,就把产品的设计、工艺路线的规划和制造过程 变成了一个完整的集成系统,使许多专业技术工作实现了自动化。 企业中的 cad/cam 系统及其计算机硬件一般分布在企业的各个部门,并通 过网络联系在一起。由于各部门所采用的应用软件、操作系统及硬件平台不同,产 生大量的分布式异构数据。同时企业中对这些数据缺乏有效的管理和控制机制,造 成数据十分混乱。如何使数据共享、数据交换畅通地进行、完备地表达信息等一系 列的问题,是 cad/cam 集成技术中要解决的主要问题。 要使企业通过 cad/capp/cam 技术真正缩短生产周期、降低成本、提高产品 外存储器 硬盘,软盘,光盘 输入设备 计算机主机 输出设备 网络通信设备 生产设备 键盘,鼠标 数字化仪 中央处理器 内存储器 显示器 打印机 绘图机 网卡 传输介质 modem 数控机床 图 2.2 cad/capp/cam 系统硬件的组成 基于 proengineer 的工艺数据库开发 第二章 cad/capp/cam 系统集成及开发方 法 8 设计制造水平,使企业真正应用到完整的 cad/capp/cam 集成系统,企业必须要 通过在高级程序设计语言、数据库管理系统和 cad/capp/cam 支撑系统的基础上 进行工艺数据库开发,满足具体产品设计制造要求的 cad/capp/cam 系统。如本 课题研究的基于 pro/e 的 cad/capp/cam 集成系统的工艺数据库的开发工作,正 是体现了这一点。 2.2 cad/capp/cam 系统集成的方法 由于现行的 cad/capp/cam 长期处于独立发展的状态,它们只能在各自的活 动领域中发挥部分或全部功能。在 cad/capp/cam 集成化中,产品数据格式必须 标准化,相互之间的数据具有可交互性。在 cad 环境下重要的是支持图形数据的 表示。在一般图形系统中,图形以原语形式表示,为非结构化数据,即无法以表格 形式表示。在现行的大多数 cad 系统中,图形数据的保存不是建立在数据库方法 之上,而是采用专用的文件格式表示;cam 系统所生成 nc 代码只能以文件形式 表示。从信息集成的观点来看,如果要采用同一机制实现共享数据的管理,难点在 cad/capp/cam 系统中,它们之间如何集成、如何共享。 这就意味着当产品的设计完毕时,所有与工艺过程设计和计划进度相关的操作 才会发生。在设计制造链中,设计和编制计划的顺序是与传统的操作顺序模式相 一致的,见图 2.3 所示5。 图 2.3 制造过程的顺序图 cad/capp/cam 系统集成的方法主要有如下四种: 1. 通过专用数据接口程序交换产品信息的集成方式 采用这种类型连接时,开发者应对 cad、capp 与 cam 系统都非常熟悉, 且所开发的专用数据接口无通用性,对不同的系统要开发不同的接口。当系统发生 变化时,接口程序也要随之进行修改。 这种类型下,系统相互间的数据交换需要存在于两个系统之间。其特点是原理 简单,转换接口程序易于实现,运行效率较高。 市场 设计/结构生产准备 测试生产 信息流程 错误,结构变换 基于 proengineer 的工艺数据库开发 第二章 cad/capp/cam 系统集成及开发方 法 9 2. 通过标准数据格式文件交换产品信息的集成方式 采用该类型时,cad 与 cam 系统是借助于一个标准数据格式文件来进行数 据的间接交换。这种继承方式,每个子系统治只与标准格式文件打交道,无需知道 别的细节,降低了接口维护难度,为系统的开发者和使用者提供了较大的方便。 3. 通过统一的产品模型交换产品信息的集成方式 在这种类型中,集成产品模型是实现集成的核心,同一工程数据库是实现集成 的基础。各功能模块通过公共数据库及统一的数据库管理系统实现数据的交换与共 享,从而避免了数据文件格式的转化,消除了数据冗余,保证了数据一致性、安全 性和可靠性大大地提高了系统的集成性。 4. 基于产品数据管理的集成方式 基于产品数据管理的集成方式可分为基于 pdm 的 cad/cam 集成系统信息流 动过程、基于 pdm 的 cad/cam 集成系统体系结构和基于 pdm 的 cad/cam 系 统集成模式三种。pdm 系统提供了一整套结构化的面向产品对象的公共服务集合 环境,构成了集成化的基础,实现了以产品对象为核心的信息集成。 随着商品化的 cad/cam 软件的发展和广泛应用,一般中小企业对信息化设 计、制造技术应用的要求也越来越普遍。他们在应用 cad、cam 技术的基础上, 也提出了 cad/capp/cam 集成的要求。另一方面,特征技术的发展,为产品信息 描述的统一提供了一种比较理想的方法。从而使基于特征的 capp 系统,无疑已成 为 capp 发展的一个方向。所以,基于特征,基于 cad/cam 软件平台进行二次开 发已成为了一种简单、高效的 cad/capp/cam 集成系统开发的趋势。利用诸如 unigraphics、pro/engineer 等基于特征的 cad/cam 软件平台,在充分利用已 有软件功能的有利条件下,开发 capp 系统并与之集成,能充分利用成熟的 cad、cam 技术,大大缩短开发周期,也使已有的软、硬件得以充分利用以节约 企业的开支。 2.3 cad/capp/cam 系统开发方法 2.3.1 软件工程的概念 软件开发在 20 世纪 50-60 年代是用手工业方式进行的,软件开发是个体或小 组的思维行为,除了程序清单外,一般没有其他文档资料。这种作为“软件作坊”的 软件开发方式常常使得软件开发任务延迟,软件质量不可靠,开发完成的软件系统 在使用过程中经常发生错误甚至无法维护,即产生了所谓的“软件危机”。 1968 年北大西洋公约组织的计算机科学家在德国召开高级会议讨论软件危机 问题时,正式提出了“软件危机”这一术语,并指出它是解决软件危机的工程科学。 在软件工程中人们设法引进机械工程、建筑工程中的一些技术来指导软件的研 基于 proengineer 的工艺数据库开发 第二章 cad/capp/cam 系统集成及开发方 法 10 制开发,像处理其他工程那样来处理软件开发研制的全过程,逐渐形成了一门新学 科软件工程。 软件工程的定义是:把经过实践考验而证明正确的管理技术和当前能够得到的 最好的技术方法接合起来,采用工程的概念、原理、技术和方法来进行软件的开发 与维护。 在软件工程学指导下的软件开发,类似于机械产品的研制,要经过分析、设计、 编程、调试和运行五个阶段,每个阶段都有明确的任务,并产生一定的文字资料送 交下一阶段。 2.3.2 软件开发过程和方法 软件开发的目标就是在规定的投资和时间限制内,开发出符合用户需求的高质 量软件。 软件开发过程模型主要有两类:瀑布模型(全生命周期法)和渐增模型(快速 原型法) 。瀑布型开发适合于在软件需求比较明确、开发技术比较成熟、工程管理 比较严格的场合下使用;渐增型开发方法允许从部分需求定义出发,先建立一个不 完全的系统,通过测试运行整个系统取得经验和反馈,加深对软件需求的理解,进 一步使系统扩充和完善。 软件开发的主要步骤: 1.软件系统的需求分析 软件系统的需求分析包括软件功能、可靠性、安全保密、成本消耗、开发进度、 资源使用和用户接口等许多方面。 2.软件的设计 设计阶段的任务是将分析阶段获得的系统说明书转化为具体的计算机可实现的 系统。本阶段一般分为两步,即总体设计和详细设计。 3.程序编制 程序编制阶段的任务是用高级语言编写每个模块的程序,要求结构良好,层次 分明,逻辑上正确又易于阅读和理解。 4.软件测试 通过调试排除故障,保证系统正常运行。 5.软件系统的运行和维护 软件的维护是将系统交付用户使用,通过实际运行环境的检验,对不适应的部 分进行修改和扩充。 软件工程发展的 30 多年来,人们在实际工作中提出了许多系统化的设计方法。 从 20 世纪六七十年代的结构化系统设计方法,到上世纪 80 年代初期的快速原型方 法,以及上世纪 90 年代兴起的面向对象方法,虽然各自有不同的特点、不同的背 基于 proengineer 的工艺数据库开发 第二章 cad/capp/cam 系统集成及开发方 法 11 景,但都得到了广泛的、成功的应用。 结构化的设计方法是软件工程领域的经典方法,为软件工程的产生与兴起发挥 里重要的作用,是目前最成熟的,也是应用得最多、最广的方法。许多方法都是源 于对它的改进或扩充,如快速原型方法。面向对象的系统设计方法在 20 世纪 90 年 代开始逐渐走向成熟,表现了蓬勃的生命力,为软件工程的发展注入了新的活力。 毫无疑问,面向对象方法将是未来最有发展前途的软件工程技术。 2.3.3 结构化软件分析与设计方法 本文主要采用结构化软件分析及设计方法进行系统的分析与设计。 1.结构化软件分析方法 结构化软件分析方法,又称 sa 方法,它的基本思想是采用“分解”和“抽象”作 为基本手段,对系统由顶向下逐层分解,直到能清楚地被理解和表达,从而有效地 解决了系统的复杂性问题。如图 2.4 中的复杂系统 x,可按一定规则分解为 1、2、3、4 几个子系统;子系统 1 和 2 仍然很复杂,可将他们再分解成 1.1、1.2、1.3 和 2.1、2.2、2.3、2.4 等,如此分解下去,直到子系统足够简单,能 清楚地被理解和表达为止。 由结构化分析得到的无论是当前系统的模型,还是目标系统的模型均采用数据 流图的形式表达。使用结构化分析方法分析的结果是一套分层数据流图、一本数据 字典、一组加工小说明及其他补充材料组成的系统需求分析说明书。 2. 结构化软件设计方法 结构化设计方法,又称 sd 方法,是软件设计中有代表性的设计方法之一,也 是使用最广的方法之一。它的基本思路是:建立一个具有良好结构的软件系统,把 该软件系统要完成的任务分成若干个子任务,使每个任务对应一个程序模块。即程 图 2.4 系统的分解 基于 proengineer 的工艺数据库开发 第二章 cad/capp/cam 系统集成及开发方 法 12 序结构与任务结构是对应的。而每个程序模块是相对独立的,可以像积木一样按照 一定的方式将软件系统组织起来。一般来说,一个模块应有一个模块名,并具有明 确的功能,有内部使用的数据和与其他模块联系的数据,可被上级模块调用。 用 sd 方法设计的软件系统,每个模块均可独立地被理解、编写、测试、排错 和修改,从而不仅使复杂的软件设计工作得以简化,减轻了开发费用,而且还有效 地防止了错误在各模块间的扩散,提高了系统的质量。 按 sd 方法划分模块时,应体现以下两个原则:各个模块功能单一,相对独立。 模块间联系小,模块内联系大。 通常模块间的联系反映在联系方式、共用信息类型和共用信息数量等方面。例 如模块间共用信息数量越多,则联系越大。 模块内部的联系,一般根据块内成分联系紧密的程度分为五类,按联系紧松依 次分为功能性、顺利性、通信性、瞬间性和偶然性。由于功能性模块具有很清楚的 界面,故与其他模块间的联系很少。 sd 方法的目标是使模块具有功能性的块间联系。一般只需将程序结构作适当 修改,就可使非功能性模块改进为功能性模块。 基于 proengineer 的工艺数据库开发 第三章 开发平台与工具 13 第三章 开发平台与工具 3.1 系统的开发平台 在当前的设计生产领域,有着很多的优秀的软件。目前,在国外一些主流软件 中,如 ug(unigraphics)、solidworks、pro/engineer、catia 等都是比较熟悉的。 国内流行的 cad/cam 主流支撑软件有: 1. ug 在 ug 中,优越的参数化和变量化技术与传统的实体、线框和表面功能结合在 一起,这一结合被实践证明是强有力的,并被大多数 cad/capp/cam 软件厂商所 采用,但软件集成框架功能较弱,数据管理尚待进一步提高。 2. solidedge solidedge 与 microsoftoffice 兼容,与 windows 的 ole 技术兼容,这使得 设计师们在使用 cad 系统时,能够进行 windows 下字处理、电子报表、数据库操 作等。 3. autocad autocad 是当今最流行的二维绘图软件,它在二维绘图领域拥有广泛的用户 群。具有较强的绘图、编辑、尺寸标注以及方便用户进行二次开发功能,但其在三 位造型功能较弱。 4. pro/e pro/e 是美国 ptc 公式研制的一套由设计到制造的机械自动化软件,它是当今 世界上应用最为广泛的高档 cad 软件之一,也是当今世界非常流行的使用参数化 的三维特征造型技术的 cad/capp/cam 集成的软件。 在对当前主流的 cad/cam 软件做了了解后,对比各种软件的优缺点,在本 课题的中,本人采用 pro/engineer 作为开发平台,对 cad/capp/cam 集成系统的 工艺数据库进行开发研究。 pro/engineer 系统是美国参数技术公司(parametrictechnologycorporation,简称 ptc)的产品。pro/engineer 是一套由设计至生产的机械自动化软件,是新一代的产 品造型系统,是一个参数化、基于特征的实体造型系统,并且具有单一数据库的特 点6。 首先, 参数化设计和特征功能,pro/engineer 是采用参数化设计的、基于特 征的实体模型化系统,工程设计人员采用具有智能特性的基于特征的功能去生成模 型,如腔、壳、倒角及圆角,您可以随意勾画草图,轻易改变模型。这一功能特性 给工程设计者提供了在设计上从未有过的简易和灵活。 其次,单一数据库, pro/engineer 是建立在统一基层上的数据库上,不象一些传统的 cad/capp/cam 基于 proengineer 的工艺数据库开发 第三章 开发平台与工具 14 系统建立在多个数据库上。所谓单一数据库,就是工程中的资料全部来自一个库, 使得每一个独立用户在为一件产品造型而工作,不管他是哪一个部门的。换言之, 在整个设计过程的任何一处发生改动,亦可以前后反应在整个设计过程的相关环节 上。例如,一旦工程详图有改变,nc(numerical control,数字控制)工具路径也会自 动更新;组装工程图如有任何变动,也完全同样反应在整个三维模型上。这种独特 的数据结构与工程设计的完整的结合,使得设计更优化,成品质量更高,产品能更 好地推向市场,经济性价比也高。 pro/engineer 拥有强大的设计造型等功能: 首先是驱动功能; 其次是参数化功能; 再其次,通过零件的特征值之间,载荷/边界条件与特征参数之间的关系来进 行设计; 然后,支持大型、复杂组合件的设计; 最后,贯穿所有应用的完全相关性(任何一个地方的变动都将引起与之有关的 每个地方变动)。其它辅助模块将进一步提高扩展 pro/engineer 的基本功能。 同时,在这个软件中,它自带有二次开发工具 pro/toolkit。通过这个二次开发 工具,用户可以开发出适合本身需求的应用程序。 3.2 pro/toolkit 在 pro/engineer17 版本及该版本以前,ptc 公司提供的开发工具是 pro/develop,从 pro/engineer18 版本起,pro/engineer 系统的开发环境采用 pro/toolkit。pro/toolkit 支持在 windows2000/nt/xp 操作系统中使用 c 和 c+语言 设计程序,采用 microsoft visual c+6.0 作为编译器和连接器,并可以在 microsoft visual c+6.0 的集成环境下完成程序的设计、调试和编译。 pro/toolkit 采用面向对象的程序设计方法(object-oriented programming) 。在 pro/toolkit 和应用程序之间主要通过特定的数据结构来传递信息,对应用 程序来说这种数据结构并不是直接访问的,而只能通过 pro/toolkit 提供的函数 来访问。在设计 pro/toolkit 程序时,要涉及到大量的由 pro/toolkit 函数库 提供的 c 函数,正确理解和使用这些函数是非常重要的。 1. 对象和动作 对象(object)和动作(action)是 pro/toolkit 中最基本的概念。 pro/toolkit 的对象实质是一种类型为结构体的数据,结构体中的成员描述了该 对象的属性。例如,名为 profeature 的特征对象的结构体定义为: typedef struct pro_model_item 基于 proengineer 的工艺数据库开发 第三章 开发平台与工具 15 protype type; int id; promdl owner; profeature; 结构体中的 type、id 和 owner 成员分别描述了该对象的类型、标识号和上级对 象。 2. 对象句柄 在 pro/toolkit 中每一个对象对应于一个结构体,定义该结构体类型的一个具体 的结构体变量称为对象句柄,如:propart 表示零件对象,用下面的形式声明: propart newpart; newpart 就是一个对象句柄。由于 propart 是一个指向结构体的指针,其定义 为: typedef struct sld_part *propart; 因此,newpart 也是一个指向结构体的指针。实际上 pro/toolkit 中对象句柄也 可以完全理解为对象指针。 3. pro/toolkit 应用程序的相关函数 user_initializ()是 pro/toolkit 应用程序的初始化函数,主要用来对同步模式 (synchronous-mode)的 pro/toolkit 应用程序进行初始化。 user_terminate()函数在 pro/engineer 终止同步返回 protkerror 表示初始化成功。 (如退出 pro/engineer 将终止应用程序的运行) ,该函数由用户 定义,其中可以不执行任何动作。 应用程序的主体部分主要由自定义函数组成,可以在 user_initializ()函数中直 接调用,或通过 user_initializ()函数定义的菜单调用。前者将在载入应用程序的初始 化时一次性调用,后者将通过选择用户程序添加在 pro/engineer 系统中的菜单项 调用。第一种方式虽然简单,但没有多少使用价值。第二种方式与 pro/engineer 系统本身的菜单命令用法相同,是同步模式的 pro/toolkit 应用程序主要运行方 式。为便于理解,介绍两个最基本的函数。 第一个为 procmdactionadd()函数 该函数的功能是设置 pro/engineer 系统菜单单项的动作,即用户激活 pro/engineer 菜单命令时执行的动作函数,其实质是设置菜单项与动作相关联。 第二个为 promenubarmenupushbuttonadd()函数 该函数的功能是在 pro/engineer 菜单中添加菜单按钮(push button) 。 在 cad/capp/cam 集成系统中往往需要通用的数据库接口。然而直到 20 版 的 pro/toolkit 仍没有提供数据库编程接口。另外,弹出式对话框是目前最先进 基于 proengineer 的工艺数据库开发 第三章 开发平台与工具 16 最流行的一种人机交互界面,能向用户提供图形与文字共存的可视化环境,使操作 更为自然、简便和快速,但 pro/toolkit 提供的下拉式菜单(包括菜单栏标题及 其菜单项)和对话框开发函数使用复杂,并且所开发的对话框采用 unix 风格。 3.4 数据库 cad/capp/cam 集成系统中的工艺参数需要进行存储、检索、编辑和维护, 因此需要在当前的众多数据库中进行比较选择,选择一种合适的来实现对本系统数 据的管理。 目前主流的数据库系统主要有面向大型数据库的:oracl、sql server 和面向小 型数据库的:access 97、mysql、bd2 等。而 access 97 是一种桌面数据库,比较 适合数据量较少的应用,特别在应用处理少量数据和单机访问的数据库上运行性能 较高。sql server 是基于服务器端的中型数据库,适合大容量数据的应用,在处理 海量数据的效率、后台开发的灵活性和可扩展性等方面强大。但其语句结构较烦琐, 且一般用户无法直接对 sql server 进行远程管理、空间租用的成本比 access 稍高。因此结合本课题开发数据库特点,数据库类型比较小且属于单机访问系统, 用 access 数据库比较合适。 下表 3.1 对三种常见的数据访问接口 ado、dao 和 jet 进行比较: 表 3.1 数据访问接口 数据访问 接口 功 能 及 含 义 ado active 数据对象(active data objects) 。ado 实际是一种提供访问各种 数据类型的连接机制。ado 设计为一种极简单的格式,通过 odbc 的 方法同数据库接口。可以使用任何一种 odbc 数据源,即不止适合于 sql server、oracle、access 等数据库应用程序,也适合于 excel 表格、 文本文件、图形文件和无格式的数据文件。ado 是基于 ole-db 之上 的技术,因此 ado 通过其内部的属性和方法提供统一的数据访问接口 方法7。 dao 数据访问对象(data access objects) 。是一种面向对象的界面接口。通 过 dao/jet 功能可以访问 isam 数据库,使用 dao/ odbc direct 功能 可以实现远程 rdo 功能。使用 dao 的程序编码非常简单,dao 提供 丰富的游标(cursor)类型的结果集和非游标(cursor-less)类型的结 果集,同 ddl(数据描述语言)的功能很类似。dao 模型是设计关系 基于 proengineer 的工艺数据库开发 第三章 开发平台与工具 17 数据库系统结构的对象类的集合。它们提供了完成管理这样一个系统所 需的全部操作的属性和方法,包括创建数据库,定义表、字段和索引, 建立表间的关系,定位和查询数据库等工具。 jet 数据连接性引擎技术(joint engine technology) 。是一种基于工作站通 过 dao 的数据库访问机制。虽然可以通过微软 access 提供的 odbc 驱 动程序访问 jet 数据库,但使用这些驱动程序在功能上有所限制。jet 机 制有自己的查询和结果集处理功能,并可对同种或异种数据源作查询处 理。 综合上述数据访问接口的特点和本系统的数据开发工作,选定 dao 类进行开 发,数据库的访问采用直接调用方式,从而比较简单。 3.5 access97 本系统采用 access97 作为数据库开发软件。用 access97 开发的数据库与程序 的接口问题较为简单,采用直接调用方式。数据库开发主要是编辑数据库表格。根 据本系统的模块划分情况,需针对不同条件制作多个表格。数据库共包括 21 个数 据表格。microsoft access 97 数据库系统正是符合这样的要求,在 access97 系统中 建立数据库,可以包含多个表。并且,它具有操作简单,引用方便等诸多优点。 在与 vc 接口上也不存在技术问题。通过 vc 应用 microsoft access 97 数据库, 可以直接将工艺数据库中的工艺参数赋值给用户输出面板中。 access97 是一种关系型数据库,关系型数据库由一系列表组成,表又由一系列 行和列组成,每一行是一个纪录,每一列是一个字段,每个字段有一个字段名,字 段名在一个表中不能重复。表与表之间可以建立关系(或称关联、连接) ,以便查 询相关联的信息。access97 数据库以文件形式保存,文件的扩展名是 mdb。 access97 数据库由六种对象组成,它们是表、查询、窗口、报表、宏和模块。 表(table):表是数据库的基本对象,是创建其他 5 种对象的基础。表由记 录组成,记录由字段组成,表用来存贮数据库的数据,故又称数据表。 查询(query):查询可以按索引快速查找到
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 6.2 数据的收集 教学设计 2024-2025学年北师大版(2024)七年级数学上册
- 2025国家电网考试历年真题库附答案
- 2025年电子信息技术职业资格考试试题及答案
- 数学北京版五 圆1. 圆的认识教学设计
- 2026-2031中国视频监控行业发展前景预测及投资战略研究报告
- 3.2 人的生活需要空气 教学设计-2025-2026学年济南版生物七年级下册
- 2025春人教版七下Unit 7 A Day to Remember(一般过去时)语法讲解
- 2025年社区班子建设试题及答案
- 吸入疗法简介教案
- 幼儿园中班《不浪费粮食》教案
- 双价人乳头瘤病毒疫苗接种知情同意书
- 全州县离婚协议书模板
- 路灯灯头改造施工组织设计(方案)
- GB 8903-2024电梯用钢丝绳
- 党建趣味活动方案
- DLT 265-2012 变压器有载分接开关现场试验导则
- 大数据技术生涯发展展示
- 水平三排球正面双手垫球公开课教案
- 非公司企业改制登记(备案)申请书
- 《安装操作系统示范》课件
- 读书与书籍-课件
评论
0/150
提交评论