


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、自动程序设计自动程序设计的含义自动程序设计,是指采用自动化的手段进行程序设计的技术。后引申为采用自动化手段进行开发的技术和过程 。其目的是提高生产率和产品质量,并且它在软件工程、流水线控制等领域均有广泛的运用。自动程序设计的含义按广义和狭义,横向和纵向,可以分成几个类型。广义含义按照广义的理解,自动程序设计是尽可能借助计算机系统,尤指自动的程序设计系统进行工程开发的过程。这里的开发指的是,从问题的非形式描述,经形式的软件功能规格说明、设计规格说明,到可执行的程序代码、调试,及至确认、交付使用的全过程。狭义含义按照狭义的理解,自动程序设计指的是从形式的功能和规格的说明,到可执行的程序代码的这个过
2、程的自动化 。纵向理解按纵向理解,低级的自动化指从设计规格说明,到可执行的程序代码这一过程的自动化,系统只是起到了程序员的作用;中级的自动化指的是从除了设计还有功能的规格说明,到可执行的程序代码的过程的自动化,系统除了起到程序人员的作用外,还起设计员、系统分析员的作用;高级的自动化则解决了从非形式的描述到可执行的代码当中整个过程的自动化问题,系统除了起程序员、设计员、系统分析员的作用外,还起到了领域专 家的部分作用。横向理解按横向理解,在上述各种纵向理解级别上 ,根据人工干预的程度,又可区分各种不同 的自动化级别。自动程序设计的任务是设计一个程序系统,它接受关于所设计的程序要求实现某个目标非常
3、高级描述作为其输入 ,然后自动生成一个能完成这个目标的具体程序。在某种意义上说,编译程序实际上就是去做自动程序设计”的工作。编译程序是接受一段有关干某件事情的源码说明 (源程序),然后转换成一个目标码 (目的程序)程序去完成这件事情。 而这里所说的自动程序设计相当于一种超级编译程序”,它要求能对高级描述进行处理 ,通过规划过程,生成的到所需的程序 。因而自动程序设计所涉及的基本问题与定理证明和 机器人学有关,要用到人工智能的方法来实现,它也是软件工程和人工智能相接合的课题。自动程序设计的关键技术从关键技术来看,自动程序设计的实现途径可归结为演绎综合、程序转换、实例推广,以及过程实现等4种。 演
4、绎综合。其理论基础是,数学定理的构造式证明可等价于程序推导。对要生成的程序,用户给出它的输入、输出数据必须满足的条件,条件以某种形式语言(如谓词演算)陈述。对于所有这些满足条件的输入,要求定理证明程序证明存在一个满足输出条件的输出,从该证明中析取出所欲生成的程序。这一途径的优点是理论基础坚实,但迄今只析取出一些较小的样例,较难用于较大规模的程序 。 程序转换。将一规格说明或程序转换成另一功能等价的规格说明或程序。从抽象级别的异同来看,可区分纵向转换与横向转换。前者是由抽象级别较高的规格说明或程序转换成与之功能等价的抽象级别较低的规格说明或程序;后者是在相同抽象级别上的规格说明或程序间的功能等价
5、转换 。 实例推广。借助反映程序行为的实例来构作程序,一般有两种方法。一种是输入/输出对法:借助给出一组输入/输出对,逐步导出适用于一类问题的程序。另一种是部分程序轨迹法:通过所给实例的运行轨迹 ,逐步导出程序。这一途径的思想诱人,为用户称道, 但欲归纳出一定规模的程序,难度颇大。 过程实现。在对应规格说明中的各个成分,其转换目标的相应成分明确,而且相应的转换映射也明确的前提下,该映射可借助过程实现。目前一般采取设计甚高级语言(如SETL),其中含有全称量词,存在量词等,以便于书写软件设计规格说明的成分。但是,SETL本身还不能算是功能规格说明语言,不能算是功能性语言。这一途径的实现效率较高,
6、困难点在于从非算法性成分到算法性成分的转换。因此,迄今采用这一途径的系统一般自动化程度不高,很难实现从功能规格说明到可执行的程序代码的自动转换。此外,其关键的技术还包括了程序综合,程序验证,以及对程序调试的概念的推广。程序综合指的是自动编出的一份程序来获得某种指定结果的任务,程序验证指论证一份给定的程序将获得某种指定结果的任务两者是紧密相关的,许多自动程序设计系统将产生一份输出程序的验证作为额外的收益。把程序调试的概念推广到作为问题求解的策略,是自动程序设计研究的一项重要内容。实践已显示出,对与程序设计或机器人的控制的问题,先产生一个代价不太高的有错误的解,然后再进行修改的作法,要比坚持要求第
7、一次得到的解就完全没有缺陷的作法,通常效率要高的多。自动程序设计的内容在计算机技术发展初期 ,编译程序的出现被认为是自动程序设计方面的一大进展。1956年,美国国际商业机器公司(IBM)建立的第一个编译程序 FORTRAN就曾被称为自动程 序设计系统。随着技术的进步,自动程序设计的内容在不断变化。已建立的实验系统包括规格说明、目标语言、问题范围和采用方法四方面基本内容。规格说明解决的问题是:以某种方式告知计算机,所需要的是什么样的程序,要求这 一程序做什么。提交规格说明的方式有如下三种。 形式规格说明:可以认为是由一种超高级的程序语言书写的文件。这种语言的语法和语义是精确的、无歧义的,精确而完
8、全地指出程序所要做的工作 。一般形式规格说明通 常不采用人-机交互对话方式,个别系统也有例外。 示例陈述:试图通过足够多的例子表明某一程序所要做的工作。系统根据这些例子自动构造出符合这些要求的程序 。陈述中可包括程序的输入 -输出性能,也可包括程序对 某一输入的处理轨迹。这种方法还存在不少困难,方法很少是完备的。因为仅仅通过若干 个例子,并不能充分描述在所有情况下程序的性态 。 自然语言:用户使用自然语言陈述程序要做的工作。这种方法常采用交互对话方式。目标语言自动程序设计系统用以表示最后构造成的程序的语言。有一些系统往往采用如LISP、PL/I、GPSS等高级语言作为目标语言 。问题范围所欲生
9、成的程序应用的范围。例如NLPQ系统处理的问题都是有关排队方面的程序;PSI系统处理的则是有关符号计算(包括表处理、搜索和排列、数据的存放和检索等)。问题范围与规格说明有关,并对系统采用的方法有很大影响。采用方法各种实验系统采用的方法不尽一致,可归纳为下列几个方面。 定理证明:对要生成的程序,用户给出它的输入、输出数据必须满足的条件。条件以某种形式语言 (如谓词演算)陈述。对于所有这些满足条件的输入,要求定理证明程序给出证明,即证明存在一个满足输出条件的输出,从该证明中析取出所欲生成的程序。 程序转换:研究如何将某一程序的规格说明或描述等价转换为另一种描述。转换的目的是将一个用超高级语言(容易
10、写)的程序,转换为用低级(易于实现)的语言表示的程序。 知识工程:这种方法同样适用于自动程序设计以外的人工智能的许多应用范围。它涉及到知识识别和编码问题,通常是指将一些有关的知识以一种特殊的规则形式的数据结构加以表示,以便加入知识库或从知识库中撤除。 传统的问题求解方法:应用人工智能的一般方法以目标为指导来选择和应用一系列 算子。在自动程序设计方面已有一些不同的实验性的系统。例如,NLPQ是第一个使用自然语言对话的系统,它可以解答用户提出的有关排队模拟等方面的问题。PSI系统包括一些子系统,它强调将不同的进程和知识来源整体化,应用范围为符号程序设计(非数值)。DEDALUS系统要求用户一开始就
11、给出有关所需程序的完备描述。系统从一个拥有许多转换规则的知识库中,重复使用这些规则,产生一系列描述,直至最后生成目标程序。自动编程的含义与内容自动编程是相对与手动编程而言的。它是利用计算机专用软件来编制数控加工程序。编程人员只需根据零件图样的要求,使用数控语言,由计算机自动地进行数值计算及后置处理,编写出零件加工程序单,加工程序通过直接通信的方式送入数控机床,指挥机床工作。自动编程使得一些计算繁琐 、手工编程困难或无法编出的程序能够顺利地完成。与手工编程相区别,自动编程使用 CAD软件制作零件或产品模型,再利用软件的CAM功能生成数控加工程序,称为自动编程。在数控编程方面,数控编程是指从零件图
12、纸到获得合格的数控加工程序的过程,主要内容包括:分析零件图样、确定加工工艺过程、数学处理、编写零件加工程序、输入数控 系统、程序检验及首件试切。根据问题复杂程度的不同 ,数控加工程序可通过手工编程或 计算机自动编程来获得。目前计算机自动编程采用图形交互式自动编程,即计算机辅助编程。这种自动编程系 统是CAD(计算机辅助设计)与CAM(计算机辅助制造)高度结合的自动编程系统 ,通常称为 CAD/CAM 系统。为适应复杂形状零件的加工、多轴加工、高速加工,一般CAD/CAM 系统所要涉及的 方面有:1、零件的几何建模对于基于图纸以及型面特征点测量数据的复杂形状零件数控编程,其首要环节是建立被加工零
13、件的几何模型。2、加工方案与加工参数的合理选择数控加工的效率与质量有赖于加工方案与加工参数的合理选择,其中刀具、刀轴控制方式、走刀路线和进给速度的优化选择是满足加工要求、机床正常运行和刀具寿命的前提。3、刀具轨迹生成刀具轨迹生成是复杂形状零件数控加工中最重要的内容,能否生成有效的刀具轨迹直接决定了加工的可能性、质量与效率。刀具轨迹生成的首要目标是使所生成的刀具轨迹能 满足无干涉、无碰撞、轨迹光滑、切削负荷光滑并满足要求、代码质量高。同时,刀具轨 迹生成还应满足通用性好、稳定性好、编程效率高、代码量小等条件。4、数控加工仿真由于零件形状的复杂多变以及加工环境的复杂性,要确保所生成的加工程序不存在
14、任何问题十分困难,其中最主要的是加工过程中的过切与欠切、机床各部件之间的干涉碰撞等。对于高速加工,这些问题常常是致命的。因此,实际加工前采取一定的措施对加工程 序进行检验并修正是十分必要的。数控加工仿真通过软件模拟加工环境、刀具路径与材料切除过程来检验并优化加工程序,具有柔性好、成本低、效率高且安全可靠等特点,是提高编程效率与质量的重要措施。5、后置处理后置处理是数控加工编程技术的一个重要内容,它将通用前置处理生成的刀位数据转换成适合于具体机床数据的数控加工程序。其技术内容包括机床运动学建模与求解、机床结构误差补偿、机床运动非线性误差校核修正、机床运动的平稳性校核修正、进给速度校核修正及代码转
15、换等。因此后置处理对于保证加工质量、效率与机床可靠运行具有重要作 用。与手工编程相比,自动编程具有的主要特点包括了具有强大的数学处理能力,能快速和自动地生成数控程序,具备灵活的后置处理程序,具有较强的自检、纠错能力,以及便 于实现与数控系统的通讯等 。交互式图形自动编程系统的原理交互式图形自动编程系统采用图形输入方式,通过激活屏幕上的相应菜单,利用系统提供的图形生成和编辑功能,将零件的几何图形绘制到计算机上,完成零件造型。同时以人机交互方式指定要加工的零件部位,加工方式和加工方向,输入相应的加工工艺参数,通过软件系统的处理自动生成刀具路径文件,并动态显示刀具运动的加工轨迹,最终生成适合指定数控
16、系统的数控加工程序。并通过通讯接口 ,把数控加工程序送给机床数控系统完成加工。这种编程系统具有交互性好,直观性强,运行速度快,便于修改和检查,使用方便,容易掌握等特点。因此交互式图形自动编程软件已成为国内外流行的CAD/CAM 软件所普遍采用的数控编程方法。在交互式图形自动编程系统中,需要输入二种数据以产生数控加工程序:零件几何模型数据和切削加工工艺数据。交互式图形自动编程系统实现了从图样-模型-数控编程和加工的一体化,它的三个主要处理过程是:零件几何造型、生 成刀具路径文件、生成零件加工程序。1零件几何造型交互式图形自动编程系统(CAD/CAM ),可通过三种方法获取和建立零件几何模型:软件
17、本身提供的 CAD设计模块;其他可转换的CAD/CAM系统生成的图形;三坐标测 量机数据或三维多层扫描数据。2生成刀具路径在完成了零件的几何造型以后,交互式图形自动编程系统第二步要完成的是产生刀具路径。其基本过程为:首先确定加工类型(轮廓、点位、挖槽或曲面加工),用光标选择加工部位,选择走 刀路线或切削方式。选取或输入刀具类型、刀号、刀具直径、刀具补偿号、加工裕留量、 进给速度、主轴转速、退刀安全高度、粗精切削次数及余量、刀具半径长度补偿状况、进 退刀延伸线值等加工所需的全全部工艺切削参数。软件系统根据这些零件几何模型数据和切削加工工艺数据,经过分析、计算、处理,生成刀具运动轨迹数据,即刀位文
18、件CLF(Cut Location File),并动态显示刀具运动的加工轨迹。刀位文件与采用哪一种特定的数 控机床无关,是一个中性文件,因此通常称产生刀具路径的过为前程为前置处理。3后置处理后置处理的目的是生成针对某一特定数控系统的数控加工程序。由于各种机床使用的数控系统各不相同,例如有FANUC,SIEMENS,AB,GE等系统,每一种数控系统所规定的代 码及格式不尽相同,为此,自动编程软件系统通常提供多种专用的或通用的后置处理文 件,这些后置处理文件的作用是将已生成的刀位文件转变成合适的数控加工程序。早期的后置处理文件是不开放的,使用者无法修改。目前绝大多数优秀的 CAD/CAM软件提供开 放式的通用后置处理文件 。使用者可以根据自己的需要打开文件,按照希望输出的数控加工程序格式,修改文件中相关的内容 。这种通用后置处理文件,只要稍加修改,就能满足 多种数控系统的要求。通常自动编程系统还会提供计算机与数控机床之间数控加工程序的通讯传输。通过RS232通讯接口,可以实现计算机与数控机床之间 NC程序的双向传输 (接受,发送和终端 模拟),可以设置NC程序格式(ASCH ,EIA,BIN ),通
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 基层公共卫生考试模拟题(含答案)
- 2025届广东省汕头市潮南实验学校校高考冲刺模拟英语试题含答案
- 钳工四级理论知识复习题(附参考答案)
- 车工高级工模拟习题(附参考答案)
- 职业技术学院2024级婴幼儿托育服务与管理专业人才培养方案
- 助产技术-娠合并症专项考核试题
- 眼镜生产过程中的品质监控手段考核试卷
- 糖品包装设计与可持续发展理念考核试卷
- 健康饮食食物中的铜与贫血的预防考核试卷
- 聚合纤维在能源储存领域的应用考核试卷
- 第3课《校园文化活动我参与》教案 海燕版综合实践活动 三年级下册
- 2025年保密教育线上培训考试试题及答案
- 大学生职业规划大赛《运动康复专业》生涯发展展示
- 高楼遮光补偿协议书范本
- 课题申报书:生成式人工智能赋能高职教学变革研究
- 2025-2030专用车产业规划及发展研究报告
- 母乳喂养知识培训课件下载
- 《自由现金流折现法对东鹏特饮公司的财务估值实例分析》2000字
- 西安市曲江第三中学行政人员及教师招聘笔试真题2024
- 2025-2030中国竹纤维行业市场发展现状及竞争策略与投资前景研究报告
- 外研版(三起)(2024)三年级下册英语Unit 2 单元测试卷(含答案)
评论
0/150
提交评论