(农业机械化工程专业论文)箱体类零件CADCAPP集成系统的研究与开发.pdf_第1页
(农业机械化工程专业论文)箱体类零件CADCAPP集成系统的研究与开发.pdf_第2页
(农业机械化工程专业论文)箱体类零件CADCAPP集成系统的研究与开发.pdf_第3页
(农业机械化工程专业论文)箱体类零件CADCAPP集成系统的研究与开发.pdf_第4页
(农业机械化工程专业论文)箱体类零件CADCAPP集成系统的研究与开发.pdf_第5页
已阅读5页,还剩49页未读 继续免费阅读

(农业机械化工程专业论文)箱体类零件CADCAPP集成系统的研究与开发.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 伴随着计算机技术在制造系统的广泛应用,c a d c 枷技术得到了迅猛发展,在国民经济的发 展中起到了重要的作用,刺激了国民经济的增长。与此同时,工艺过程设计与计算机联系了起来。 c a d c a h i 的桥梁性中间环节一一计算机辅助工艺过程设计( c o m p u t e ra i d e dp r o c e s sp l a n n i n g 简 称c a p p ) 应运而生。开展对c a d c a p p c a m 集成技术的研究对未来一些先进制造模式的实施有 着重要的意义。但由于c a d ,c a p p 和c 删系统是独立发展起来的,作为集成制造系统( c i m s ) 中 彼此孤立的系统,他们的数据模型彼此不相容。缺乏相关的信息交换。c a d 系统采用面向数学和 几何学的数学模型,而c a d c 删集成系统不仅仅要求几何信息,更重要的是需要面向加工过程的 非几何信息。因此c a d ,c a p p 和c 埘之间出现了信息中断。这就导致在建立c a p p 系统和c a m 系 统时,皆要补充输入上述非几何信息,甚至还要重复的输入加工特征信息,无法实现 c a d c a p p c a m 集成,这不但造成人为干预量大,数据大量重复的尴尬局面,影响了工程设计效 率的进一步提高,况且在人工转换过程中,难免发生错误,这将给生产带来极大的危害。 为了解决这些问题,笔者查阅了大量的国内外最新的相关文献。在参考相关文献的基础上, 经过调查和研究。以箱体c a d c a p p 集成系统的开发为例,进行c a d 系统与c a p p 系统一体化的研 究,建立以参数化建模技术为基础的箱体零件模型,从根本上解决零件的描述和输入问题,并给 出了集成的方法和设计程序,同时这些思路和方法可以完全扩展到其它的有关c a d c a p p 集成系 统的开发;利用v c # 语言进行a u t 0 c a d 的二次开发,通过a u t o c a da c t i v e x 这座桥梁来和 a u t o c a d 之间进行通讯,a u t o c a da c t i v e x 使用户能够从a u t o c a d 的内部或外部以编程方式来 操作a u t o c a d :币用人工神经网络对c a p p 模块的加工参数进行优化神经网络优化的结果制成 工艺卡输出,使加工过程更加合理;设计开发出一个箱体类零件c a d c a p p 集成一体化系统,运 行结果比较满意。 关键词:箱体类零件,c a d c a p p 集成,神经网络,c # 语言 独创l 生声明 y8 8 2 3 0 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含为获得黑龙江八一农垦大学或其它教 育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何 贡献均已在论文中作了明确的说明并表示了谢意。 研究生签名 纠j 匆罩 时间:2 0 0 5 年4 月l o 日 关于论文使用授权的说明 本人完全了解黑龙江八农垦大学有关保留、使用学位论文的规定,即:学 校有权保留送交论文的复印件和磁盘,允许论文被查阅和借阅,可以采用影印、 缩印或扫描等复制手段保存、汇编学位论文。同意黑龙江八一农星大学可以用不 同方式在不同刊物上发表,传播学位论文的全部或部分内容。 ( 保密的学位论文在解密后应遵守此协议1 研究生签名:纠湾肇 时间:2 0 0 5 年月 日 导师签名:却葛氓、帆 2 0 0 5 年月日 1 1 概述 第一章引言 现代科技的飞速发展,推动了机械制造领域的拉术革命,传统的机械制造单一式正在向现代 集成制造系统( c o n t e m p o r a 玎i n t e g r a t e dm a n u f a c t u r i n gs y s t 印,c i 船) 发展。c i m s 技术的最 新特点是集成化、精密化、高速化、智能化、虚拟化、敏捷化和全球化- 以及绿色化。c i m s 总 体包括三大功能模块,一是生产管理、决策、分析及服务系统( m i s ) ,二是计算机辅助设计与制 造( c d c a 吣或柔性制造系统( f j 5 s ) ,三是具有人工智能的专家系统。其中c a d c 墟技术是c i 粥 的核心。 作为计算机科学与工程科学相结合的产物,计算机辅助设计( c d ) 一c o m p u t e ra i d e d 瞻s i g n ) 和计算机辅助制造( c m - c o p u t e ra i d e dm a n u 他c t u r i n g ) 是6 0 年代发展起来的一门新 兴技术。经过3 0 多年的发展,c a d c l i 技术己成为衡量一个国家工业水平的重要标志之一。由 于历史的原园,基于计算机图形学发展起米的c 仰系统与基于数控技术发展起来的c 枷系统缺乏 统一的设计思想各自都有自己的发展过程,大多相互独立设计而成,从而导致了零件的设计模 型很难转化为制造模犁。它们虽在定的程度上促进了生产力的发展促进了科技进步。给企业 带来了一定的经济效益与社会效益,但随着市场的激烈竞争,这种单一的系统已远不能满足现代 化企业的需要,从而使c a d c 删一体化技术成为科技界的热门研究课题。 所谓c a d c a m 一体化,指的是在c a d 、c p p 与c 删各模块间信息的提取、交换、共享和处理 的集成,即信息流的整体集成。这里的c a d 、c a p p 及c a m 不再是一些分开的“自动化孤岛”,而 一开始从产品信息建模的角度入手应用特征造型、变量设计、智能化等技术,使产品信息贯穿 子设计、制造、工艺、装配等各个阶段,信息传递,数据交换成为头等重要的大事。只有把c d 与c a 5 l 结合成一体才能进一步提高生产率和加工精度才能实现设计生产的自动化。 c a d 系统采用面向数学和几何学的数学模型,虽然可完整的描述点、线、面等几何信息,但 对于非凡何信息。如精度,公差,表面粗糙度和热处理等信息无法在计算机内部逻辑结构中得到 充分表达。而c l 船环境下的c d c 枷系统不仅仅要求几何信息,更重要的是需要面向加工过程 的非几何信息。因此,当计算机辅助技术进入c i l i s 时代时,c a d 就无法理所当然的与c a p p c a | l 自动集成起来。而在实现集成的过程中,c a d 系统与c a p p 系统的集成是首要解决的问题。 c a p p 是通过计算机的辅助进行工艺计划准备的过程要把c a d ,c a p p ,c a l f 三个孤立的自 动化孤岛有机的连接起来,必须研制两个接口,即c a d 与c a p p 的接口及c a p p 与c m 的接口。在 这两个接口中,c d 与c a p p 的接口是关键它的作用是把c d 系统生成的零件模型数据加工成 符合c a p p 系统输入需要的零件定义数据与相应的格式。 1 2 计算机辅助j c a ) ( 的意义和作用 广义的计算机辅助所包含的太体意思就是指利用算机的软硬件系统以及其他与计算机相关 的资源来为人类的生产生活服务。它包括了计算机辅助设计( c o m d u t e ra i d e dd e s i g n ,c a d ) 、计 算机辅助工程分析( c o m p u t e ra i d e de n g i n e e r i n g ,c a e ) 、计算机辅助工业设计( c o m d u t e ra i d e d i n d u s t r yd e s i g n ,c a i d ) 、计算机辅助工艺规划( c 伽p u t e ra i d e dp r o c e s sp l a l l n i n g ,c a p p ) 、 计算机辅助夹具设计( c u m p u t e ra i d e df i x t u r ed o s i g n ,c a f d ) 、计算机辅助刀具设计( c o m p u t e r 计算机辅助夹具设计( c o p u t e ra i d e df i x t u r ed o s i g n ,c a f d ) 、计算机辅助刀具设计( c o m p u t e r 黑龙江八一农垦大学硕士学位论文 第一章引言 a i d e dt 0 0 1d e s i g n ,c a t d ) 、制造资源计划系统( m a n u f a c t u r i n gr e s o u r c ep l a n n i n gs y s t e , 骶p ) 、计算机辅助制造( c o m p u t e ra i d e dm a n u f a c t u r i n g ,c a m ) 、计算机辅助质量保证系统 ( c o m p u t e ra i d e dq u a l i t y ,c a q ) 以及虚拟样机技术( v i r t u a lp r o d u c tt e c h n o l o g y ) 、计算流 体力学( c o m p u t a t i o n a lf l u i dd y n 锄i c s ,c f d ) 等等,可以说c a x 在人类社会有著广泛的应用, 而且随着人类社会的向前发展和科学技术的不断进步,它更加会有大有作为的广阔天地。c a ) 【充 分发挥了计算机优势,辅助人类在各个领域快速、高效地完成作业。 机械工业是我国较早应用计算机辅助技术的行业之。上世纪七十年代中期,机械工业自主 开发成功我国第一个c a d 系统一“组合机床多轴箱c a d 系统”。八十年代初开始在企业中组织 c a d 技术的推广应用。七五”期间,原机械部系统完成了重点产品c a d 研究、工业自动控制系 统开发研究、柔性制造系统开发研究等。“八五”期间,在机械工业十年规划和“八五”计划 纲要中,把开发应用c a d c 姒、躲pi i 与a s r s ( 自动物流管理系统) 、g t ( 成组技术) 、c a d 与a s r s 集成系统,推广应用现代设计方法,c a d 开发和推广以及机械产品设计基础和方法的 研究列为重点科技发展任务。要求重点技改企业的主要产品都要采用计算机进行辅助设计和管 理,要积极采用可编程序控制器、数显、经济型数控装置等电子技术改造老设备。“九五”期 间一批试点企业在c i 胚技术应用方面取得可喜成绩,电力电子器件、电力电子应用技术、数 控技术与装备、工业过程自动化技术、传感器技术、工业机器人应用技术等方面的关键技术上取 得一系列突破。 到目前为止。计算机辅助技术已在行业内得到较广泛的应用一大批机械产品因采用了计算 机辅助技术,显著地提高了产品的竞争力。计算机辅助企业管理已涌现了一大批备具特色的先进 典型,适合中国机械企业要求的管理信息系统软件已逐步成熟。 但是也应该指出,计算机永远是一个辅助工具! 这个工具就像一把双刃剑一样。利用得当, 可以为人类创造财富与价值,反之则是对科学研究乃至人类的一种危害。 1 3c a d c a p p c a m 集成系统在c l m s 中的地位和作用 c i m s 是工业全面自动化发展的方向。在c i m s 环境下,c a d 、c a p p 、c a h i 与其他系统的信息 流向如图卜1 所示。 圉卜一1c o c 棚集成系统信息流圈 f i gl - lt l l e _ m f o 丌n a t i o nd i 8 9 黜o f c a d c a p pi n t c 酣i o ns y 啦m 2 如图所示,c a d c a p p c a m 集成制造系统是c i m s 的一个子系统,是c i m s 的核心,作为c i m s 核心技术部分的c a d c a m 系统,主要支持和实现产品对象的设计、分析、工艺规划、数控编程等 等一系列生产活动的自动化处理。 c a d c a p p c a m 集成制造系统的开发和应用是制造企业实施c i i l s 的先决条件,能够节省设 计、工艺过程编制和产品制造的时间和费用;提高工艺过程合理化的程度;降低对工艺过程编制 人员知识与经验水平的要求;减少所需的工装种类;减少生产费用;缩短生产准备周期;提高企 业适应能力。 而这些集成系统的前提是c a d c a p p 系统的集成,因为此二者的集成是更大范围集成的技术 基础,因此,c a d c a p p 系统中各模块之间的数据能否共享数据通讯、交换是否顺畅,表达信息是 否完备,都关系到能否对c a d c a m 系统甚至c i m s 系统进行有效的集成。所以c a d c a p p 集成系统 的优势具体表现在: 1 )在零件设计之初就综合考虑了零件加工要素,符合并行工程设计的要求避免了信息重 复输入,提高了零件的设计质量和可加工性 2 )在统一了设计特征和制造特征定义后,便于在企业内部网中进行联合设计,提高设计的 效率进一步可利用i n t e n l e t 网实现远程协同设计 3 ) 为实现c i m s 中c a d c a m 一体化打下基础 集成化c a d c a p p 系统基于并行工程的设计理念,将零件的设计特征和制造特征封装在一起在设 计阶段基于特征建模,待工艺规划时自动继承c d 系统生成的产品设计信息,并与加工方法相对 应,生成c a m 所需的数控程序和提供m s 所需的生产管理数据使零件在整个计算机集成制造中实 现信息采集、传递和加工过程的畅通无阻 1 1 4c a d c a m 的发展趋势 c a d c a l l 一体化技术未来发展的主要趋势是智能化、网络化、集成化、并行工程。同时低价 格、高性能的工程工作站和微机系统将成为c a d c a m 系统的主流机种。c a d c 仙一体化由封闭 式转向开放式发展,c a d c m 软件将成为一体化技术的关键。 智能化是c a d c a l i 一体化系统发展的一个潜在意义非常重大的方向。将人工智能技术引入 c a d c a m 一体化系统,使其拥有工程领域专家的经验和知识,具有学习、推理、联想和判断的能 力及智能化的视觉、听觉、语言能力,将使c a d c _ m 一体化系统在产品设计和制造中发挥更。有 意义的“专家顾问”、“自动化设计与制造”的作用,使计算机的使用从辅助逐渐走向主动和自动 化。 网络化是c a d c a m 一体化技术发展的方向。一则是同一企业,由于工程各部门应用不同的大、 中、微型计算机t 需要将它们用网络联系起来,以便信息共享:再则,不同单位、不同部门共同 使用同一系统,也需要用网络联系起来。为了要实现c i m s ,更需要采用网络技术将它们联系起 来,网络系统的作用将变得越来越重要。 集成化主要是集成度与信息流的集成。c a d c a m 体化技术是c i m s 的基础与核心,是未来 : 厂自动化发展的方向。c i 淞的最终目标是建成一个具有高度集成、总体优化、充分柔性和最 佳效益的计算机集成制造系统。c a d c a m 一体化技术发展的另一趋势是在集成的基础上实现并行 工程( c e ) 的运行环境。并行工程是一种系统的集成方法,并行工程设计方法与传统的工程设计 黑龙江八一农垦大学硕士学位论文第一章引言 方法不同,它强调从一开始就在概念上和处理方法上考虑产品生命周期的所有因素。它突出人的 作用,强识相关活动工程师的协同工作,一体化、并行地进行产品及其有关过程的设计,而且能 随时进行交换或修改某一设计参数,及时共享数据库。并将处理结果及时反馈给数据库进行动态 更新,同时与该数据有关的各设计部门均能自动进行更新。 集成化是c a d c a l 技术的重要趋势和发展主流,它的优势是明显的,而c a d c a p p 的集成又 是实现c a d c a m 集成系统和c i m s 集成制造系统不可跨越的技术发展阶段,开展对c a d c a p p 的集 成系统地研究可以解决c a p p 系统的零件信息输入问题;便于采用统一的数据规范,便于各种数 据的统一处理:可使加工过程更加合理:能够大大地减少了输入输出时问,并提高了系统的自 动化水平;能够节省设计、工艺过程编制时间:提高工艺过程合理化的程度:降低对工艺过程编 制人员知识与经验水平的要求:减少所需的工装种类;减少生产费用;缩短生产准备周期;提高 企业适应能力。 4 第二章系统开发技术和开发环境 2 1 软件开发方法 2 1 1 “瀑布”模型 线性顺序模型也称t 一传统生命周期”或,线性顺序模型提出了软件开发的系统化的、顺序的 方法,虽然由w i n s t o nr o y c e 提出的最早的瀑布模型支持带有反馈的循环,但大多数使用该过程 模型的组织均把它视为是严格线性的,从系统级开始,随后是分析、设计、编码、测试和维护- 图2 1 表明了软件工程的线性顺序模型 围2 一l 软件工程的线性顺序模型 f i g2 一lt l i cl 诅龃rm o 曲io f n g i n d n g 借鉴了传统的工程周期,线性顺序模型包含以下活动:系统信息工程和建模:因为软件总 是一个大系统( 或商业) 的组成部分,所以一开始应该建立所有系统成分的需求,然后再将其中某 个子集分配给软件。整个系统基础是,以软件作为其他成分如硬件、人及数据库的接口。系统工 程和分析包括了系统级收集的需求,以及一小部分顶层分析和设计。信息工程包括了在战略商业 级和商业领域级收集的需求。 线性顺序模型是最早,也是应用最广泛的软件工程范例。但是,从近几年来开发一些大型 软件的经验来看,线性顺序模型也存在一些问题: l 实际的项目很少按照该模型给出的顺序进行。虽然线性模型能够容许迭代。但却是间接 的。结果,在项目组的开发过程中变化可能引起混乱。 2 用户常常难以清楚地给出所有需求,而线性顺序模型却要求如此,它还不能接受在许多 项目的开始阶段自然存在的不确定性。 3 。用户必须有耐心。程序的运行版本直要等到项目开发晚期才能得到。大的错误如果直 到检查运行程序时才被发现,后果可能是灾难性的。 4 开发者常常被不必要地耽搁。在对实际项目的一个有趣的分析中,b r 8 d a c 发现传统生命 周期的线性特征会导致“阻塞状态”,其中某些项目组成员不得不等待组内其他成员先完成其依 赖的任务。事实上,花在等待上的时间可能会超过花在开发工作上的时间i 阻塞状态经常发生在 线性顺序过程的开始和结束。 2 1 2 基于原型的快速应用开发模型 快速应用开发( r a d ) 是一个线性顺序的软件开发模型,强调极短的开发周期。i l a d 模型是线 性顺序模型的一个“高速”变种,通过使用基于构件的建造方法获得了侠速开发。如果需求理解 得很好,且约束了项目范围,r a d 过程使得一个开发组能够在很短时间内( 如6 0 到9 0 天) 创建 出“功能完善的系统”。 r a d 过程模型如图2 2 所示。很显然,加之于一个r a d 项目上的时间约束需要有“一个可伸 缩的范围”。如果一个商业应用能够被模块化,使得其中每一个主要功能均可以在不到三个月时 间内完成( 使用上述的方法) ,它就是r a d 的一个候选件。每一个主要功能可由一个单独的r a d 组来实现,最后再集成起来形成一个整体。 田2 2 较件工程的原形攫型 f i g2 2 i eo 吨i nm o d c lo f s 0 赶g 洒响g 像所有其他过程模型一样,r d 方法也有其缺陷: 对于大型的、但可伸缩的项目,r d 需要足够的人力资源以创建足够的r a d 组。 r a d 要求承担必要的快速活动的开发者和用户在一个很短的时间框檠下完成一个系统。如 果两方中的任何一方没有完成约定,都会导致r a d 项目失败。 并非所有应用软件都适合使用r a d 。如果一个系统难以被适当地模块化,那么建造r a d 所需 的构件就会有问题;如果高性能是一个指标,且该指标必须通过调整接口使其适应系统构件才能 赢得,r a d 方法就有可能失败了 r a d 不适合技术风险很高的情况当一个新应用要采用很多新 技术,或当新软件要求与已有计算机程序有高可互操作性时,这种情况就会发生。 r a d 强调可复用程序构件的开发,即可复用性,如2 2 3 节所述,它是对象技术的基础。 本系统结合以上两种方法,构成一个混合开发方法,克服了各自的缺点。首先根据实际需要 开发一个原型系统然后按一般软件工程化的方法开发的。 2 2 系统设计原理 2 2 1 面向对象编程( 0 b j e c t0 r i e n t e dp r o g r a 哪i n g ) 面向对象技术其实并不是一个全新的概念,但是在思想观念和编程技术不断更新的程序设计 领域,它仍然是主流的编程技术。它把所要解决的问题看成是保护数据和算法的对象来考虑,把 世界看成是独立对象的集合对象将数据和操作封闭在一起,提供有限的外部接口,对象之间通 过消息相互通信当一个对象为完成其功能需要请求另一个对象的服务时,前者就向后者发出一 条消息,后者在接收到这条消息后,识别消息并按照自身的适当方式予以响应。 面向对象技术强调把问题域的概念直接映射到对象以及对象之间的接口,符合人们通常的思 维方式:面向对象技术从分析到设计再到编码采用一致的模型表示,后一阶段可以直接复用前一 阶段的工作成果;在客观世界以及它的映射软件系统中,实体的结构是相对稳定的。面向对象技 术通过把属性和服务封装在“对象”中当外部功能发生变化时,保持了对象结构的相对稳定 6 黑龙江八一农垦大学硕士学位论文第二章系统开发技术和开发环境 使改动局限于一个对象的内部,减少了改动所引起的系统波动效应。所以,按照面向对象技术开 发的软件,具有易于扩充、修改和维护的特性;面向对象技术具有的继承性和封装性,支持软件 复用,并易于扩充,能较好地适应复杂太系统不断发展和变化的要求。 2 2 2 信息的封装性 “封装”是包含和控制访问一组关联项的能力。这种封装性事通过类来实现的,类提供一个 最通用的方式来封装项。例如封装一些方法、字段和属性,如果没有封装,我们就不得不声明单 独的过程和变量来存储和管理这些信息,要一次处理多个对象就会比较困难。封装使我们可以将 类中的数据和过程作为一个单元来使用,这样就可以同时处理多个对象而不会混淆因为每个对 象都由该类的一个唯一实例来表示。 封装还使您可以控制如何使用数据和过程。可以使用访问修饰符( 如p r i v a t e 或 p r o t e c t e d ) 来防止外部过程执行类方法或读取与修改属性和字段中的数据。应当将类的内部详 细信息声明为p r i v a t e 以防止在类外使用它们,此技术称为“数据隐藏”,在类中,信息就是 用这种方式保护的。隐藏类的实现详细信息可以防止这些信息被以不希望的方式使用并使您可 以在以后修改此类项时没有兼容性问题方面的风险。 2 2 3 实现软件可复用性的面向组件技术 现代软件一般应具有组件化的性质,它有两方面内容:是原有软件系统局部模块的可替 换性;二是原有软件系统允许用户进行二次开发,嵌入新的功能模块。 为了解决应用程序上市后仍然能够随时提升功能的问题,面向组件技术就应运而生。因为 从传统上来讲,一个应用程序就是一个单一的二进制文件如果需要更新程序的功能,就要重新编 译更新过的程序源代码,形成该营程序的新版本。但实际上,用户不会更新所有的功能,如果仅 仅为了更新一个局部的功能就将整个程序重新编译,既浪费时间,也是不现实的。同时,由于软 件技术工业的飞速发展,这样会使软件产品一上市就已经过时了。 那么最好的办法就是根据程序的不同功能,把整个程序分解成一部分一部分的元件,这样的 元件就成为组件( c o m p o n e n t ) ,最后把这些组件组装起来,从而通过组件问的相互操作完成程序 功能。这样,随着技术的发展就可以用新组件更新就组件来扩充程序的功能。 为了增加代码的可重用性,提高编程效率,n e t 以面向对象的方式提供了个丰富的类库。 同般的d l l 和a p i 不同,为了访问任何平台的特性,我们只需要使用这些名称空问和在它们中 定义的类。如果希望自定义类的行为,只需要简单地从期望的类中派生你自己的类。具体讲来, 要引用这些类,只要用u s i n g 语句( j a v a 里是i m p o r t ) 将对应的名字空间导入程序即可。 2 3 系统总论 本系统的开发是遵循软件开发的规范和规则。采用面向对象( o b j e c to r i e n t e d ) 思想,运 用软件工程的方法,结合课题的实际而进行的。本系统属于应用软件类的专业性技术软件系统 可划分为几个相互独立、又有一定联系的功能模块,各模块单独开发,调试成功后,又连接成一 个相对完整的太系统。在制定系统的总体规划时作者从系统需要实现的功能和最终实现的目的 7 为出发点,确定了各个模块的功能,并仔细研究各个模块的输入、输出以及各模块间的信息传递 方式。系统完成后,各模块既可以单独运作,又可以实现总体的系统集成。 2 3 1 系统开发模式的选择 系统开发模式是人们在长期的编程实践中归纳、总结出来的,模式并不是一开始就有是经 过不懈的追求和探索,还有许多次的失败以后逐渐形成的一些成功的样式。目前,软件的开发模 式有如下几种: 1 根据一定的开发环境与工具对平台中c a d c a p p 软件库中的各种c a d c a p p 软件进行开 发。应用该策略开发生产的c a d c a p p 软件将具有c a d c a p p 软件级的自主版权。但对c a d c a p p 软件开发人员的要求很高。为了提高c a d c _ p p 软件开发商在c a d c p p 软件产品的t 、q 、c 、 s 方面的竞争能力,开发人员也可以研制c a d c a p p 较件级的开发平台,即所谓的c a d c a p p 软 件开发平台。这本身又是一个重要课题。 2 ,基于一定的c a d c a p p 系统支持环境及所提供的开发环境与工具对平台c a d c a p p 软件 库中要求的某些类构件进行开发。而部分功能构件直接或间接利用基础平台中提供的功能。利用 这种模式,c a d c a p p 软件开发人员无需一切从头开始,综合应用软件重用技术与思想和方法进 行开发。当拥有c a d c a p p 系统支持环境及所提供的开发环境与工具时采用该模式是较好的策 略。 3 机械行业通用的标准的二次开发内容( 如基础通用数据、常用材料数据、设计专业数据, 国标、行标及国际标准、产品技术标准以及制图用的常用符号代号等) 应该由国家行业统一组织 开发,或由有e g 力的大企业集团、软件公司作为商品开发,将来可以上市场,便于企业选用,防 止重复开发。如果暂时没有商品化的软件,企业急用。可以根据情况急用多少开发多少。过去已 开发的成果,要推广。有问题的要组织解决防止重复开发。企业专用部分、选用部分,企业要 抓紧开发,没有力量的要委托外单位合作开发。通过开发逐渐完善各种标准。 在上述三种开发模式中,第一种模式需要大量的人力物力和财力,仅仅靠一个人的“手工作 坊式的”工作,是无法实现的。当今市场上的诸多商品化软件,无不是从小到大,经过相当长的 一段时间和一定数量的开发人员所构成的集团组织,才有了今天的规模。尽管如此。我们在使用 这些软件时偶尔也会遇到一些瑕疵( b u g ) 。显然,第二种模式比较适合个人开发,它也是一种 投资小、见效快的开发途径,基于此因,作者选择了这种基于通用支撑软件的二次开发模式。 2 3 2 系统组成 根据实际的需要,本集成系统划分为各种c a p p 系统的基本功能都离不开零件信息的输人、 工艺决策、t 艺数据知识库、人机界面与工艺文件输出编辑等五部分。系统总体结构流程图 如图2 3 所示。 ( 】) 绘制零件图:利用交互式参数化设计方法,根据用户输入不同的参数,生成箱体零件图 并标注。 ( 2 ) 工艺数据知识库:工艺数据知识库是系统的支撑工具。它包含了工艺设计要求的工 艺数据( 如加工方法、余量、机床设备等多方面的信息) 和规则( 包括工艺决策逻辑、决策习惯、 经验等众多内容如加工方法、选择规则与排序规贼等) 。 8 黑龙江八一农垦大学硕士学位论文第二章系统开发技术和开发环境 ( 3 ) 工艺决策:工艺决镱是系统的控制指挥中心。它的作用是:以零件信息为依据按预先 规定的顺序或逻辑,调用有关工艺数据或规则零件的工艺规程,进行必要的比较、计算和决策 生成零件的工艺规程。 ( 4 ) 人机界面:人机界面是用户的工作平台,包括系统菜单、零件图参数输入界面、工艺设 计的界面、以及工艺文件的显示、编辑与管理界面等。 豳2 3 系统总体结构流程图 f i g2 - 3t h ed i a g 衄o f s y s t e mo v c r a l ls 廿m c 眦 2 4 系统开发环境和开发工具的选择 系统的开发环境的优劣对软件的开发效率和开发质量有着重要的影响,作者通过以往的编程 经验,切身的感受到了软件开发环境的重要性。 目前,可用来开发c a d c a p p 软件的环境与工具主要有如下几种: ( 1 ) 利用第三代的高级语言进行开发,如j a v a 、c + + 、d e l p h i 、c i 、v b 以及其他高级语言。 ( 2 ) 利用一定的基础平台及提供的开发语言进行开发,如各种c a d c a m 系统所带的接口语 言。 ( 3 ) 利用第三代的高级语言和所选定基础平台及提供的开发语言进行开发,即所谓的混合开 发环境与工具。 ( 4 ) 构造面向开发c a d c 枷软件需要的c a s e ( c 。m p u t e ra i d e ds 。f t n r ee n g i n e e r n g 计算 机辅助软件工程) 环境。 作者通过认真、仔细、详实的调研。根据课题的要求和实际的具体情况决定采用第三种开发 9 环境,即利用高级语畜和所选定基础平台及提供的类库进行开发。 在今天的c a d c 埘软件市场中,可供作c a d c a p p 系统支持环境、并提供开发环境与工具 的软件产品很多。如高档的通用c a d c m 软件有i d e a s 、p r o e 、u g 等;中档c a d c a m 软件 有s o l i d w o r k s 、肋t 等;低档但在国内外的用户量大面广的系统有a u t o c a d 、开目c a d c a m 等。 其中a u t o c a d 由于具有许多优点而广泛应用在国内外。它具有全开发放的体系结构和先进的a c i s 图形造型内核技术为用户提供了较丰富的二次开发工具,如各种第三代高级语言环境:、r b 、c + + 、 f o r t r a n 和专门开发工具:a u j m l i s p 以及a d s 环境、a r x 环境等也具有w i n d 0 髑的标准界面, 从而满足对平台的人机界面友好性,c a d c a p p 软件界面的统一性的要求。支持d d e ( 动态数据交 换( d y n a i co a t a e x c h a n g e ) :通过d d e ,a u l d c a d 可以把图形数据传给外部的w i n d 0 w s 应甩程序, 如惦a c c e s s 、w 0 r d ,这些数据被外部应用程序操作后,又通过叻e 传回a u t o c a d ,外部程序对 图形的任何修改都自动反映在a u 伽c a l i 图形中,这是实现参数化绘图的有效途径。a u t o c a d 是目前微机上最为广泛应用的通用的交互式计算机辅助绘图与设计软件包。a u t o c a d2 0 0 5 和基 于参数化特征实体造型和曲面造型软件m d t ( a u t o d e s km e c h a i l i c a ld e s k t o p ) 的推出。更加确立 了它在p c 平台c a d c a m c e c 埘等领域解决方案的领导地位。a u t o c a d 的强大生命力在于它 的通用性,多种工业标准和开放的体系结构。其独特而又完整的开放体系结构主要表现在可用户 化的资源( 菜单、线形、字体等) ,直接多样的软件接口,工业标准的数据接口和多种软件系统的 互操作等方面。 m s 毗n d s 操作系统是典型的组件化的开放体系结构的软件系统。蟠w i n d s 的运行是由 消息驱动的。硬件输入( 如鼠标移动等) 、应用程序、系统本身都会产生消息,而消息将激活相关 例程,完成对该消息的处理。在消息发出之后达到系统当前有效处理进程之前,第三方软件完全 可以得到该消息并处理该消息。也就是说二次开发软件模块完全可替换( 动态或静态地) 系统原有 模块,从而使原有软件系统有了特定用途的表现。 v i s u a ls t u d i o n e t 是微软公司开发的一种跨平台、跨语言、跨设备软件。即不论用什么操 作系统( u n i x ,w i n d 删s 还是l i n u x ,0 s 2 ) ,不论用什么程序设计语言( c # ,c + + ,j a v a ,v b ) , 不论用什么设备( p d a ,p c ,e t c ) ,所有的软件次书写,到处适用。n e t 框架下包含了一种 新的编程语言c # ( 读作cs h a r p ) 。它是一种简练的面向对象,类型可靠的程序设计语言。它是 从c c + + 发展而来的,并且溶入了j a v a 面向组件以及跨平台执行等特性,结合了v i s u a lb a s i c 的高产和c ”质朴的力量。 c # 是n e t 的一员,v s n e t 还支持v i s u a lb a s i c 和v i s u a lc + + 。 综上,本系统选择a u t o c a d2 0 0 0 ( 简体中文版) 作为零件图绘制系统开发平台的支撑软件。 至于系统软件和和编译软件,作者选择的操作系统为m sw i n d o w sx pp r o f e s s i o n a l ,编译系统 选择m i c r o s o f tv i s u a ls t u d i o n e t2 0 0 2 框架下的c # 与v b 混台编程。 2 5 开发应用程序简介 2 5 1a u t o c a d 开发工具简介 a u t o d e s k 公司为满足广大用户的需求,短短几十年间就相继推出了三代二次开发工具。 a u t o c a d 的二次开发平台有很好的开放性,可以说a u t o c a d 的通用性为其二次开发提供了必要条 件,而a u t o c a d 开放的体系结构则使其二次开发成为可能。 1 0 a u t o c a d 提供了三种软件开发环境:a u t o l i s p 语言,a d s ( a u t o c a dd e v e l o p m e n ts y s t e m ) 和 a r x ( a u t o c a dr u n t i m ee x t e n s i o n ) 以及基于a c t i v e xa u t o m a t i o n 的v 队等。 a u t o l i s p 作为a u t o c a d 的内嵌语言,是种解释性语言。主要用来修改和扩充a u t o c a d 命 令及系统菜单,设计对话框( d c l ) 来实现对图形库的直接访问和修改。是“t o c a d 早期版本的主 要开发工具。a u t o l i s p 程序和a u t o c a d 系统本身都是一个独立的进程,它们之间的通信是通过 i p c ( i n t e rp r o c e s sc o m l u n i c a t i o n ) 内部进程通讯机制来实现的。所以l i s p 程序的执行速度和 灵活性以及功能并不是很好。同时a u t 0 l i s p 语言的能力也是有限的。 a d s 是a u t o c a dr 1 l 开始支持的一种基于c 语言的灵活的开发环境。a d s 可直接利用用户熟 悉的编译器,将应用程序编译成可执行文件后在a u t o c a d 环境下运行,从而既利用了a u t o c a d 环境的强大功能,又利用了k 语言的结构化编程,运行效率高的优势。a d s 环境的软件接口简单 实用功能完口,效率较高。但a d s 提供的对a u t o c a d c 删的控制是有限的特别是对a u t o c a d 数据库的操作有很大的局限性。 a r x 是a u t o c a d c a 躲1 3 及以上版本提供的更加强有力的、更高效率的面向对象的开发环境。 它提供了a u t o c a d c a m 系统级的核心类库,在数据库访问方面也有了更大的可能性。二次开发 者甚至可以创建私有的实体类型,a r x 所提供的组件化。a i i ) ( 是a u t o c a d c a 胍1 3 版特有的面向对 象c 开发环境。功能很强,运算应用c 语言设计环境,a d s 直接向开发者提供丰富的应用程序接 口例程,同时开发者又可利用c 语言所固有的强大功能。 v b a ( v i s u a lb a s i cf o ra p p l i c a t i o n ) 最早是内嵌在0 f f i c e 9 7 中的一种编程语言,由于易学 易用,功能强大,a u t o d e s k 公司开始在a u t o c a dr 1 4 版中内置于v b a 开发工具,同时提供了适用 的对象模型和开发环境,到a u t o c a d 2 0 0 2 ,相应的功能得到了加强。v b 是一个a u t o c a d 应用程 序集成开发环境,它提供了高质量的用户化编程能力,能够使a u t o c ! l d 数据与其它v b a 应用程 序,如m i c r o s o f to f f i c e 软件,直接共享。从运作上来看,v b a 通过a u t o c a da c t i v e xa u t o m a t i o n 接口将信息传送给a u t o c a d 。而a u t o c a dv b a 也允许v b a 环境与a u t o c a d 同时执行并通过a c t i v e x a u t o m a t i o n 接口提供a u t o c _ d 的程序。 2 5 2a c t i v e x u t o m a t i o n 简介 a c t i v e xa u t o m a t i o n 是一套微软标准,以前称为0 l ea u t o a t i o n ( 0 b j e c tl i n k i n ga n d e m b e d d i n g ) 技术,它是0 l e 自动化技术的扩充和发展,它适用于0 l e 对象与a c t i v e x 对象。该标 准允许通过外显的对象由个w i n d o w s 应用程序控制另一个w i n d 0 w s 应用程序,也就是说被调用 的程序外显自身的对象体系结构,供调用程序引用,这也是面向对象编程技术的精髓所在。 a u t o 8 t i o n 中的应用程序对象是最高层次的对象。其它对象由它按照一定层次派生出来。 a u t o m 8 t i o n 是由客户程序和服务程序组成。客户程序是指可以操纵另一个应用程序中对象的程 序,服务程序是指可以把自己的对象暴露给相应客户程序的程序。服务程序是被控制者,它包含 了一系列暴露对象,只要服务程序提供一定接口,就可以使任何对象实现自动化。 利用a u t o m a t i o n 技术开发c a d 系统可以将a u t o c a d 软件、蚍t l a b 应用软件、工程数据库和 s q ls e v e r 、a c c e s s 等应用程序放置在服务器端,而其它部件放置在客户端主机上,节省资源, 并且当系统崩溃时,不损害工程数据库。 黑龙江八一表垦大学硕士学位论文第二章系统开发技术和开发环境 a u t o c a d 从r 1 4 版本开始,就采用继承的方式来组织整个对象,应用程序对象在最顶端。如 果要对某一对象加以操作,必须首先获得应用程序,依次获得子程序对象,直到最后获得所需对 象。得到这个对象后就可以使用它的方法和属性来修改对象或取得它的信息。例如l i n e 的属性 包括:颜色、层、起点、终点、线宽、线型是否可见,而它的方法就是能对l i n e 实体进行各种操 作,比如:拷贝、删除、镜像、平移等。a u t o c a n 的开发语言结构与a c t i v e xa u t o m a t i o n 的关系 如图2 4 所示。 由于a u t o c a d2 0 0 0 支持a c t i v e xa u t o m a t i o n 技术,所以我们可以选择图中的任何一种开发 工具。而采用a c t i v “技术的另一优点是应用程序之间可以很好地共享数据。如a u t o c a d 与的r d 及a c c e s s 三者之间可以互相交换数据,这在图纸信息的管理与交流中有着重要的实际意义。 圈2 4a u t o c d 的语言结构与 c t i v e xa u t a t i o n 的关系 f i g2 1 4t h e 伟i 蚰o na b o l l la u t o c a dl 卸g u 赡ca n da c t i v e xa u t 锄8 t i o n 2 5 3a u t o c a d 的对象模型( 0 b j e c t d ei ) 理解a u t o c 加的对象模型是对其编程的基础。a u t o c d 提供了一些特殊的对象供用户使用 对象的描述信息放在类型库中。常见的对象有: 图形对象如直线、匮弧、文本、尺寸标注线, 类型设置对象如线型、尺寸线

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论