(机械制造及其自动化专业论文)计算机高速数控雕铣系统研究.pdf_第1页
(机械制造及其自动化专业论文)计算机高速数控雕铣系统研究.pdf_第2页
(机械制造及其自动化专业论文)计算机高速数控雕铣系统研究.pdf_第3页
(机械制造及其自动化专业论文)计算机高速数控雕铣系统研究.pdf_第4页
(机械制造及其自动化专业论文)计算机高速数控雕铣系统研究.pdf_第5页
已阅读5页,还剩71页未读 继续免费阅读

(机械制造及其自动化专业论文)计算机高速数控雕铣系统研究.pdf.pdf 免费下载

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

文档简介

浙江大学硕士学位论文 v 五五口如9 计算机高速数控雕铣系统研究 计算机高速数控雕铣系统研究 摘要 计算机高速数控雕铣系统是集成c a d c a m 技术、图像处理技术、高速铣削技术、 计算机数控技术、精密机构设计和制造技术、雕铣技术、电机驱动技术和精密高速主轴 电机技术为一体发展起来的高新技术设备。研究和开发计算机高速数控雕铣系统是本文 的主要目的。7 本文首先论述了计算机高速数控雕铣系统的技术基础一计算机数控技术、雕铣技术 和超高速加工技术;然后详细地阐述了计算机高速数控雕铣系统的特点、组成、性能和 应用,并介绍了数控雕铣系统的国内外现状。 时间重叠流水处理 3 0 - 浙江大学硕士论文计算机高速数控雕铣系统研究 时间重叠流水处理是使多个处理过程在时间上互相错开,轮流使用同一套设备的几 个部分。例如当c n c 装置在自动加工工作方式时,其数据的转换过程由零件程序输入、 插补准备、插补和位置控制四个子过程组成。设每个子过程的处理时间分别为t l 、t 2 、 t 3 、t 4 ,则一个零件程序段的数据转换时间是t - - - - t l + t 2 + t 3 + t 4 ,以顺序方式来处理每个 零件程序段,即第一个零件程序段处理完以后再处理第二个程序段,依次类推。此时可 知,两个程序段的输出之间将有一个时间间隔t 。这种时间间隔反映在电机上就是电机 的时转时停,反映在刀具上就是刀具的时走时停,这显然是加工不允许的。 流水处理的关键是时间重叠,即在段时间间隔内不是处理一个子程序,而是处理 两个或更多的子程序。经流水处理后,每个程序段的输出之间不再有间隔,从而保证了 电机运转和刀具移动的连续性。 流水处理要求处理每个子程序所用的时间相等,但实际上c n c 装置中每个子过程 的处理时间是不相同的,解决办法是取最长的子过程处理时间作为流水处理时间间隔, 这样对于处理时间较短的子过程,处理完成后就进人等待状态。 ( 2 ) 实时中断处理 c n c 系统软件结构的另一个特点是实时中断处理。c n c 系统程序以零件加工为对 象,因此有许多于程序实时性很强。c n c 系统的多任务性和实时性决定了中断成为系统 必不可少的组成部分。c n c 系统中中断管理主要靠硬件完成,而系统的中断结构决定了 软件结构。 c n c 装置的中断类型有以下几种: 外部中断主要有纸带光电阅读机中断、外部监控中断( 如紧急停、测量仪器到 位等) 、键盘和操作面板输入中断。前二种中断的实时性要求很高,将它们放在较高的优 先级上。后二种则放在较低的中断优先级上,有的系统甚至用查询的方式来处理它。 内部定时中断主要有插补周期定时中断和位置采样定时中断,有些系统中这二 种定时中断合二为一。但在处理时,总是先处理位置控制,然后处理插补运算。 硬件故障中断它是各种硬件故障检测装置发出的中断,如存储器出错、定时器 出错、插补运算超时等。 程序性中断它是程序中出现异常情况的报警中断。如各种溢出、除零等。 2 c n c 装置的软件结构 c n c 装置的系统软件包括管理和控制两个部分。系统管理部分包括:输入、i o 处 理、通讯、显示、诊断及加工程序的编制管理等程序。系统的控制部分包括:译码、刀 具补偿、速度处理、插补和位置控制等程序。数控系统的功能就是由其硬件和上述这些 功能子程序软件来实现的。功能增加,子程序就增加。不同的系统软件结构中,对这些 子程序的安排方式和管理方式均不相同。常用的系统软件有前后台型结构和中断型结构。 ( 1 ) 前后台型结构 在前后台型结构的c n c 装置中,整个系统软件分前台程序和后台程序两部分。前 - 3 1 浙江大学硕士论文 计算机高速数控雕铣系统研究 台程序是一个实时中断服务程序,承担了几乎全部的实时功能。实现与机床动作直接相 关的功能,如插补、位置控制、机床相关逻辑控制等。后台程序完成一些实时性要求不 高的功能,如输入译码、数据处理和管理程序等,是一个循环运行程序,就象舞台背景 一样,因此又称背景程序。 在前后台型结构软件中,程序一经启动,经过一段时间的初始化程序后,便进入背 景程序循环。同时开放定时中断,每隔一段时间发生一次中断,执行一次实时中断服务 程序,执行完后又返回背景程序,如此循环往复,共同完成全部数控功能。这种软件结 构一般适合单微处理机集中式控制,对微处理机性能要求较高。 ( 2 ) 中断型结构 中断型结构的系统软件除初始化程序外,整个控制程序分成若干个不同级别的中断 服务程序,无前后台程序之分。但中断程序的优先级别各不相同。级别高的可以打断级 别低的。系统本身就是一个大的多重中断系统,通过各级中断服务程序之间的通信来进 行管理。 4 1 2 软件技术 软件技术是研制计算机高速数控雕铣系统控制软件的基础。w i n d o w s9 8 m e 因其友 好的图形界面、良好的可操作性在中国占据大部分的市场,是当今p c 机上的主流操作 系统平台,所以也理所当然的成为计算机高速数控雕铣系统的的系统平台。在w i n d o w s 9 8 m e 操作系统下,计算机高速数控雕铣系统控制软件应用了w i n d o w s 多线程技术、面 向对象技术、o p e n g l 三维图形显示技术等软件技术。 1 w i n d o w s 多线程技术 w m d o w s 系统平台经历了从1 6 位到3 2 位的转变后,系统运行方式和任务管理方式 有了很大的变化,在w i n d o w s9 5 以后的w m d o w s9 5 系统中,每个w i n 3 2 程序在独立的 进程空间上运行。3 2 位地址空间使我们从1 6 位段式结构的5 4 k 段限制中摆脱出来,逻 辑上达到了4 g 的线性地址空间。这样,我们在设计程序时就不再需要考虑编译的段模 式,同时还提高了大程序的运行效率。独立进程空间的另一个更大的优越性是大大提高 了系统的稳定性,一个应用程序的异常错误不会影响其它的应用程序,这对于现在的桌 面环境尤为重要。在w m d o w s 的一个进程内,包含一个或多个线程。线程是指进程的一 条执行路径,它包含独立的堆栈和c p u 寄存器状态,每个线程共享所有的进程资源,包 括打开的文件、信号标识及动态分配的内存等等。一个进程内的所有线程使用同一个3 2 位地址空间,而这些线程的执行由系统调度程序控制,调度程序决定哪个线程可执行以 及什么时候执行线程。线程有优先级别,优先权较低的线程必须等到优先权较高的线程 执行完任务后再执行。在多处理器的机器上,调度程序可将多个线程放到不同的处理器 上去运行,这样就可使处理器的任务平衡,也提高了系统的运行效率。 3 2 位w i n d o w s 环境下的w i n 3 2a p i 提供了多线程应用程序开发所需要的接口函数。 利用v i s u a lc + + 6 0 中提供的标准c 库也可以开发多线程应用程序,而相应的m f c 类库 3 2 - 浙江大学硕士论文计算机高速数控雕铣系统研究 则封装了多线程编程的类,因而用户在开发时可根据应用程序的需要和特点选择相应的 工具。 如果用户的应用程序需要有多个任务同时进行相应的处理,则使用多线程是较理 想的选择。例如,就网络文件服务功能的应用程序而言若采用单线程编程方法,则需 要循环检查网络的连接、磁盘驱动器的状况,并在适当的时候显示这些数据,必须等到 一遍查询后才能刷新数据的显示。对使用者来说,延迟可能很长。而在应用多线程的情 况下可将这些任务分给多个线程,一个线程负责检查网络,另一个线程管理磁盘驱动器, 还有一个线程负责显示数据,三个线程结合起来共同完成文件服务,使用者也可以及时 看到网络的变化。多线程应用范围很广,尤其是在目前的桌面平台上,系统的许多功能 如网络( i n t e r n e 0 、打印、字处理、图形图像、动画和文件管理都在一个系统下运行,更 需要我们的应用程序能够同时处理多个事件,而这些正是多线程可以实现的。 2 面向对象技术 面向对象( o b j e c t o r i e n t e d ,o - o ) 技术是一种与传统软件工程的功能方法完全不同 的、以对象为中心的方法,它不仅是一种程序设计技术,更重要的是体现了种思维方 法。下面我们从认知方法学和程序设计方法学两方面来描述o 0 技术的基本特征。 从认知方法学角度来看,( 3 - 0 技术是属于思维科学中一项工程技术。o 0 方法学是 属于思维科学中的一项技术科学,o 一0 方法学认为:客观世界是由各种“对象”组成的, 任何事物都是对象,每一个对象都有自己的运动规律和内部状态每个对象都属于某个 对象类,是该对象类的一个元素。o o 方法学还认为:通过类比发现对象之间的相识性, 即对象问的共同属性,并以此为基础形成对象类。这些对象类按“类”、“子类”和“父 类“的概念构成树型层次关系,如无特殊说明,处于下层次上的对象类可以自然继承 位于上一层次上的对象属性,对已分成类的各个对象,可以通过定义一组“方法”来说 明该对象的功能。对象之间的相互联系通过传递“消息”来完成,消息就是通知对象去 完成一个允许作用于该对象的操作。至于该对象如何完成这个操作的细节,则封装在相 应对象的定义中,对于外界是隐蔽的。 从程序设计方法学角度来看,0 - ( 3 方法是一种与传统软件工程的功能方法完全不同 的,以对象为中心的方法。对象是数据和有关操作的封装体,每个对象都是某一对象类 ( c l a s s ) 的实例( i n s t a n c e ) 。一个类实质上定义的是一种对象类型,描述了属于该类型 的所有对象的性质,从程序设计学角度看,o o 方法有如下基本特征。 a :o - o 方法突破了传统的将数据与操作分离的模式,较好地实现了数据的抽象。 b :0 0 方法的继承性体现了概念分离抽象,在对象继承结构上,下层对象继承上 层对象的特征( 属性和操作) 因而面向对象方法便于软件的演化和增量式扩充。 c :o - o 方法用消息将对象动态链接在一起。与传统的模块调用不同,0 4 3 方法采 用了灵活消息传递方式,从而便于在概念上体现并行和分布式结构。 d :0 o 方法具有信息隐藏性。对象将其实现细节隐藏在其内部,因此无论是对象 3 3 浙江大学硕士论文计算机高速数控雕铣系统研究 功能的完善扩充,还是对象实现的修改,影响仅限于该对象内部,而不会对外界产成影 响。这就保证了面向对象软件的可构造性和易维护性。 3 o p e n g l 三维图形技术 o p e n g l 是近年发展起来的一个性能卓越的三维图形标准,它是在s g i 等多家世界 闻名的计算机公司的倡导下,以s o 的o l 三维图形库为基础制定的一个通用共享的开 放式三维图形标准。目前,包括m i c r o s o f t 、s g i 、m m 、d e c 、s u n 、h p 等大公司都采 用了o p e n g l 做为三维图形标准,许多软件厂商也纷纷以o p e n g l 为基础开发出自己的 产品,其中比较著名的产品包括动画制作软件s t u d i o m a x 、仿真软件o p e n i n v e n t o r 、 v r 软件w o r l dt o o lk i t 、c a m 软件p r o e n g i n e e r 、g i s 软a r c i n f o 等等。值得一提的 是,随着m i c r o s o f t 公司在w i n d o w s n t 和w i n d o w s 中提供了o p e n g l 标准及o p e n g l 三维图形加速卡的推出,o p e n g l 在微机中有了广泛的应用,同时也为广大用户提供了 在微机上使用以前只能在高性能图形工作站上运行的各种软件的机会。 o p e n g l 实际上是一个开放的三维图形软件包,它独立于窗口系统和操作系统,以 它为基础开发的应用程序可以十分方便地在各种平台间移植;o p e n g l 可以与v i s u a l c + + 紧密接口,便于实现机械手的有关计算和图形算法,可保证算法的正确性和可靠性; o p e n g l 使用简便,效率高。它具有七大功能: 1 ) 建模 o p e n g l 图形库除了提供基本的点、线、多边形的绘制函数外,还提供了复杂的三 维物体( 球、锥、多面体、茶壶等) 以及复杂曲线和曲面( 如b e z i e r 、n u r b s 等曲线或 曲面) 绘制函数。 2 ) 变换 o p e n g l 图形库的变换包括基本变换和投影变换。基本变换有平移、旋转、变比、 镜像四种变换,投影变换有平行投影( 又称正射投影) 和透视投影两种变换。其变换方 法与机器人运动学中的坐标变换方法完全一致,有利于减少算法的运行时间,提高三维 图形的显示速度。 3 ) 颜色模式设置 o p e n g l 颜色模式有两种,即r g b a 模式和颜色索 ( c o l o ri n d e x ) 。 4 ) 光照和材质设置 o p e n g l 光有辐射光( e m i t t e dl i g h t ) 、环境光( a m b i e n tl i g h t ) 、漫反射光( d i f f u s el i g h t ) 和镜面:兆( s p e e u l a rl i g h t ) 。材质是用光反射率来表示。场景( s c e n e ) 物体最终反映到人 眼的颜色是光的红绿蓝分量与材质红绿蓝分量的反射率相乘后形成的颜色。 5 ) 纹理映射( t e x t u r em a p p i n g ) 利用o p e n g l 纹理映射功能可以十分逼真地表达物体表面细节。 6 ) 位图显示和图象增强 图象功能除了基本的拷贝和像素读写外,还提供融合( b l e n d i n g ) 、反走样( a n t i a l i a s i n g ) 3 4 浙江大学硕士论文计算机高速数控雕铣系统研究 和雾( f o g ) 的特殊图象效果处理。 7 ) 双缓存( d o u b l eb u f f e r i n g ) 动画 双缓存即前台缓存和后台缓存,简而言之,后台缓存计算场景、生成画面前台缓 存显示后台缓存已画好的画面。 此外,利用o p e n g l 还能实现深度暗示( d e p t hc u e ) 、运动模糊( m o t i o nb l u r ) 等特殊 效果。从而实现了消隐算法。 4 1 。2 计算机高速数控雕铣系统控制软件研究 计算机高速数控雕铣系统控制软件是连接操作者和高速雕铣机的中间纽带。它具有 较多的功能,可分为管理部分和控制部分两大模块。管理部分包括交互界面、数控代码 文件管理、数控代码输入、可视化显示、可视化操作、加工参数设定、监控等功能;控 制部分包括数控代码译码、工件坐标系设定、仿真控制、刀具补偿、速度处理、插补处 理、位置控制等功能。 计算机高速数控雕铣系统控制软件从类型上可归为前后台型结构数控软件,采用了 多线程技术,分为界面主线程和控制线程。控制线程相当于前台程序,承担了几乎全部 的实时功能。实现与机床动作直接相关的功能;界面主线程完成一些实时性要求不高的 管理功能等,还负责启动和消除控制线程。采用面向对象的软件开发方法分析计算机高 速数控雕铣系统控制软件,将管理部分和控制部分模块中功能独立、内聚强、相互之间 耦合较松散的软件功能模块抽象出来,利用v i s u a lc + + 6 实现其功能并进行封装形成对 应的的类,集成在控制软件中,主要生成有译码类、半径补偿类和插补控制类和加工数 据类等,这些类可以重用。如果将来用户对系统提出某些特殊的功能要求,可以集成某 个功能,构造一个新的特殊功能类,并将加入控制软件中采用o p e n g l 技术三维显示 数控代码,实现可视化显示和可视化操作。计算机高速数控雕铣系统控制软件结构如图 4 1 所示。 计算机高速数控雕铣系统控制软件主界面采用分割视窗结构,采用三个子视图分别 表示代码显示和编辑子界面、显示子界面和控制面板界面,子界面之闻的交互采用 w i n d o w s 消息机制处理。数控代码显示和编辑子界面显示当前的数控代码文件,可以进 行修改和编译等操作,修改后的数据可以保存到硬盘并显示在显示界面;当自动加工线 程调用时,自动焦点显示当前的加工所在行;还可以设定全部加工、断点加工和选段加 工等加工模式。显示子界面用来显示当前的数控文件的刀具编程轨迹和实际中心轨迹, 可以进行缩放、旋转、移动和选择等操作,还可以用来设定图形选择加工等模式;当i h 动加工线程调用时,动态显示当前的加工所在图形。控制面板界面包括工件坐标设定、 单步加工控制、自动加工控制和仿真控制等功能模块。工件坐标设定直接调用设备驱动 程序工件坐标,通过操作系统驱动运动控制器和控制数字量i o 操作,手工或者自动设 置;单步加工控制每次解释一行数控代码,通过操作系统驱动运动控制器和控制数字量 f o 操作,完成机床的运动控制:自动加工控制和仿真控制调用自动加工线程,自动加 3 5 浙江大学硕士论文 计算机高速数控雕铣系统研究 工线程调用设备驱动程序,通过操作系统驱动运动控制器和控制数字量i o 操作,完成 机床的运动控制。自动加工线程和主界面线程之间采用线程同步技术来进行控制和数据 共享。 图4 1 计算机高速数控雕铣系统控制软件体系结构 自动加工子线程控制雕铣机的实时加工和仿真控制,执行雕铣机加工的核心功能。 w i n d o w s 是一种非独占式的多任务系统,应用程序通过应用程序队列来接收输入,然后 消息循环从应用程序队列中获取输入消息,并把它发送给相应的窗口。在这种w i n d o w s 消息模式下,实现实时控制较为困难:但是,很多外设,如用户的键盘、鼠标及定时器 等输入采用硬件中断方式处理,w i n d o w s 提供的设备驱动程序,实际上就是中断服务程 序,可以达到实时控制的要求。由于雕铣机实际加工对于实时性的要求很高,自动加工 线程采用中断机制来进行实时控制。由于n c 文件的读入、缓冲区分配以及语法检查在 主界面读入n c 代码进行显示时已经完成,自动加工线程的主要主要任务完成译码、刀 具补偿、插补、位置控制等功能在这些功能中,插补必须实时完成。因为运动控制器 发来的外部中断请求只是设置了中断轴的当前状态,无法直接通过编程做出处理,因而 只有通过查询得到中断轴的当前状态,作出相应的中断处理自动加工线程的控制流程 3 6 - 浙江大学硕士论文 计算机高速数控雕铣系统研究 如图4 2 所示。 以下三节将就控制软件的关键管理功能实现、插补控制实现和刀具补偿控制实现三 个方面进行详细研究。 图4 2 自动加工控制沉程 4 2 计算机高速数控雕铣系统控制软件关键管理功能实现 计算机高速数控雕铣系统控制软件管理部分包括交互界面、数控代码文件管理、数 控代码输入、可视化显示、可视化操作、加工参数设定、监控等功能,交互界面和加工 参数设定在w i n d o w s 系统下较容易实现,不再叙述。下面就代码文件管理,数控代码管 理、可视化显示、可视化操作五个方面进行详细剖析 4 2 1 文件管理 文件管理赋予控制软件两方面功能:1 数控文件的序列化;2 大数据的输入。 - 3 7 - 浙江大学硕士论文 计算机高速数控雕铣系统研究 序列化是指对象可以是连续的,可以在退出时保存在磁盘上,打开时自动从磁盘上 恢复。实现序列化可以重载v c 的m f c 类库的c o b j e e r 类的s e r i a l i z e 函数实现。大数据 的输入,要求提供一个类似写字板程序的功能,可以读写和显示超过5 m 以上的数据文 件,利用r i c h e d i t 控件为显示载体,利用回调函数每次从文件中取出一块数据,添加 到r i c h e d i t 控件中,实现大数据文件的读取。 定义a f x r i c h e d i t c o o k i e 为块数据缓冲区,s t r e a m 为序列化函数,在序列化函数函 数中调用e d i t s t r e a m c a l l b a c k 回调函数读写数据。 相关代码如下: c l a s sa f x r i c h e d i t c o o k i e p u b l i c : c a r c h i v e & ma r ; d w o r dmd w e r r o r ; 一a f x r j c h e d i t c o o k i c ( c a r e h i v c & a t ) :r r u 町岫 m _ d w e r r o r = 0 ;) ; v o i dc n c c c n t c r d o c :s c r i a l i z c ( c a r c h i v e & a t ) s u m ( s r , f a l s e ) ; ) v o i dc n c c c n t c r d o c :s l r e a r n ( c a r c h i v e & a b o o lb s c l e c t i o n ) e d i t s t r e a me s = f 0 ,0 ,f _ , d i t s t r c a m c a l l b a c k ; 一a f x r i c k e d i t c o o k i cc o o l d c ( a o ; d w c o o k i c s ( d w o r d ) & c o o k i c ; i n tn f o r m a t = s f t e x t ; i f ( b s e l e c t i o n ) n f o r m a i s f f _ s e l e c t i o n ; i f ( a r 1 s s t o r i n g ) ) g e t g e d i t v i c w o - mr i e h e d i t _ g e o d es t r c a m o u t ( n f o r m a t , ) ; c l s e ( g e t g e d i t v i e w o - mr i c h e d i t _ g c o d es t r e a m l n ( n f o r m a t , c s ) : ) i f ( c o o k i e m _ d w e r r o r ! _ 0 1 a f x t h r o w f i l c e x e c p t i o n ( c o o k i e m _ d w e r r o r ) ; ) d w o r dc a l l b a c kc n c c 蜘t c r d o c :e d 惦廿e 姗c a l l b a c k ( d w o r dd w c o o k i c ,l p b y t e p b b u i f , l o n gc hl o n g p c b ) a f x r i c h e d i t c o o k i c p c o o k i e2 ( _ a f x r i c h e d i t c o o k i c + ) d w c o o k i c ; c a r c h i v e & k r ;p c o o k i e - ma t ; f l u s h o , d w o r dd w = o : + p e b ;c b ; 侧 i f ( a r , l s s t o r i n g ( ) ) a r o c t f i l c 0 - w f i t c h u g e ( p b b u f f , c b ) , 3 9 浙江大学硕士论文 计算机高速数控雕铣系统研究 e l s e * p c b = a r g c t f i l e 0 * r e a d h u g e ( p b b u i f , c b ) ; ) c a t c h ( c f i l e e x e e p t i o n ,c ) + p c b ;o : p c o o k i c - md w e r r o r = f d w o r d 碡- r e _ c a u s e ; d w = 1 ; a n d _ c a t c h _ a l l ( e ) p c b ;o : p c o o k i e - md w e r r o r = ( d w o r d ) c f i l e e x c e p t i o n :g e n e r i c ; d w = l : e n dc a t c ha l l r e t u r nd w ; 1 4 2 2 代码管理 在管理功能中,如何将数控标准代码文件转化为命令集合和数据集合是重点,而存 取这个命令集舍和数据集合很关键,需要设计一个数据结构完成此功能。i s o 数控代码 如下: n g x f m s : 其中n 为程序段号,g 为准备功能字,x 为尺寸字,f 为工艺功能字,m 为辅助功 能字,s 为主轴功能字。有些代码如圆弧插补还有半径或者圆心尺寸字等等。 经过详细分析,剔除不常用的以及模式设定的代码数据,定义一个通用的存放加工 代码信息的结构,包含每个加工所包含的信息。 咖c d c f m c t d o u b l ex x ;存放数据点的x 坐标 d o u b l ey y ;存放数据点的y 坐标 d o u b l ez z ,存放数据点的z 坐标 d o u b l ei i ;,存放圆弧插补的圆心的x 值设置8 i 钻孔的r 值 d o u b l e j j ; “存放圆弧插补的圆心的y 值 i n tbr e m m m o d e ;,i & 回模式; l o n gs n ; 存放数据点的加工序号 l o n g gc o d e ;存放数据的g 代码数值 c s t r i n gc o m m a n d ; ,存放数据点的数控指令 i n ts c l e e l n u m ;定义一个选择加工的记数的表示 i n tm 定义一个半径补偿类型的变量_ c o m p e n s a t e ; d o u b l er e a t x 4 l ;府放实际加工数据点的x 坐标 d o u b l e r c a l y 【4 】; ,存放实际加工数据点的y 坐标 i n tn li n t f a c g存放实际加工数据的点数 ) d 吡p d 咄 代码管理就是要把这些命令和加工数据提取出来,存储在定义的数据结构中,作为 可视化显示的数据来源。 我们可以通过逐行读入代码文件,逐行分析来提取命令和数据,同时可以进行简单 3 9 浙江大学硕士论文计算机高速数控雕铣系统研究 的语法检查。对于每一行,通过文件指针定位和指针移位,可以方便地提取所需要的加 工信息数据结构。 加工信息数据结构数据集合的存储是文件管理模块的关键,采用指针链表的存储模 式,定义如下: c t y p e d p t r a r r a y d o t a r r a y ;定义一个加工信息几何的实例 4 2 3 加工数据可视化显示 在加工数据可视化显示管理功能模块中,控制软件需要将数控标准代码文件还原刀 具加工轨迹三维显示给用户。这个过程分两步:1 o p e n g l 准备;2 工件坐标系和加 工轨迹的显示。 1 o p e n g l 准备 在w i n d o w s 下窗口程序必须首先处理设备描述表e v i c ec o n t e x t s ,d c ) ,d c 包括许 多如何在窗口上显示图形的信息,既指定画笔和刷子的颜色,设置绘图模式、调色板、 映射模式以及其它图形属性。同样,o p e n g l 的程序也必须使用d c ,这与其它w i n d o w s 程序类似。但是,o p e n g l 必须处理特殊的d c 图形操作描述表,这是d c 中专为o p e n g l 使用的一种。一个o p e n g l 应用图形操作描述表内有o p e n g l 与w i n d o w s 窗口系统相关 的各种信息。一个o p e n g l 应用首先必须创建一个图形操作描述表,然后再启动它,昂 后在所定义的窗口内按常规方式调用o p e n g l 函数绘制图形。一个图形操作描述表不同 于其它d c ,它们调用每个g d i 函数都需要一个句柄,而图形操作描述表方式下只需一 个旬柄就可以任意调用o p e n g l 函数。也就是说,只要当前启用了某个图形操作描述表, 那么在未删除图形操作描述表之前可以调用任何o p e n g l 函数,进行各种操作。 在创建一个图形操作表之前,首先必须设置像素格式。像素格式含有设备绘图界面 的属性,这些属性包括绘图界面是用r g b a 模式还是颜色表模式,像素缓存是用单缓存 还是双缓存,以及颜色位数、深度缓存和模板缓存所用的位数,还有其它一些属性信息。 每个o p e n g l 显示设备都支持一种指定的像素格式。一般用一个名为 p 1 x e l f o r m a t d e s c r i p t o r 的结构来表示某个特殊的像素格式,这个结构包含2 6 个 属性信息。 当初始化p e l f o r m a t d e s c r i p t d r 结构后,然后设置像素格式。 操作描述表并启用它后,才能调用o p e n g l 函数在窗口内进行各种图形操作。一般 来说利用m f c 中增补的管理图形操作描述表方法来编程比较方便,即在视类( c v i e w ) 的消息o n c r e a t o e e g u 建图形操作描述表。 2 工件坐标系和加工轨迹的显示 数控代码文件记载的是对工件进行数控加工的命令和数据,包含有工件坐标系和刀 具轨迹信息。工件坐标系是用来显示刀具轨迹的相对位置零点,用来确定工件坐标系映 射到机床坐标系的变换关系。利用o p e n o l 绘图函数生成三个空间坐标轴,分别用不同 颜色标记,并且使坐标轴符合右手法则。 4 0 浙江大学硕士论文计算机高速数控雕铣系统研究 轨迹的显示可以用来检验数控程序正确性,采用线框模型可以很方便的显示所有代 码的轨迹。根据代码功能不同,分别对不同的代码显示实际运行的轨迹。利用o p e n g l 绘图函数实现加工数据的可视化效果。本软件的仿真效果显示实际上是模拟完成加工路 径先后实现的,缺乏真实感的数控加工仿真图形。当前先进数控程序的仿真检验研究中, 主要研究方向是生成真实感的数控加工仿真图形,即先建立数控加工的仿真模型,然后 采用动态仿真显示数控加工的全过程,由于产生的图形是真实感效果图,能够童接地观 察检测数控代码的正确性,对于一些细微的加工地方,还可以通过放大的方法进行观察, 以进一步确定数控的正确性。 4 2 4 加工数据可视化操作 加工数据可视化显示。利用显示图形就可以进行可视化操作。 1 简单操作 显示图形的旋转、缩放、移动、还原视图等功能,可以利用o p e n g l 函数g l r o t = a t e d , g l s c a l e f ,g l t r a n s l a t e f 等函数方便实现;可以设鼍自适应显示操作模式,将当前的加工图 形最大限度的展现在视图空间里,方便用户使用。 2 选择加工操作 雕铣加工中,可能出现一个工件加工完毕后,发现某些部位因为某些原因未能很好 的加工,需要重新加工,此时如果再次进行全部加工,则会浪费大量的时间和资源,这 时可以设定选择加工,用选择加工对工件局部进行修补加工,这样可以极大地提高效率, 同时也降低了降低废品率。选择加工也适合专门局部加工。 选择加工中,加工范围的获取是通过可视化图形鼠标操作完成的。o p e n g l 提供了 兰种模式一绘图模式、选择模式和反馈模式。在选择模式下,建立各代码段的名称( 一 般标记为自然数列) ,并将名称加以组织,当发生鼠标拾取事件时候,利用o p e n g l 选择 机制进行响应,以记录的形式组织被选中的名称等相关信息并返回给应用程序,应用程 序获取各代码段的名称,判断各代码段有没有被选中。将选中的代码段用异于未选中的 代码颜色显示,以评定选择是否正确。 选择加工中,加工控制根据有没有被选中判断当前的代码是否应该执行实际的加 工。如果被选中,就执行实际的加工:否则,跳过该代码。 4 2 s 监控管理 监控管理完成的功能实现有如下几类: 1 ) 利用主界面线程定时查取机床各轴的状态,可是获得当前返回的状态,判断机 床是否过界等出错信息,如果出错则进行出错处理,否则继续加工。 2 ) 设置机床的软线位,当代码数值超过设定数值软件将机床自动锁死保护,无 法产生有损机床寿命的操作。 3 ) 机床异常中断的自动恢复功能,当出现断电或者其他异常中止等情况,重新运 4 1 浙江大学硕士论文计算机高速数控雕铣系统研究 行软件,利用日志文件,可以获得异常中断的加工参数,然后自动恢复异常中断前的加 - 状态。 4 3 计算机高速数控雕铣系统控制软件插补控制实现 计算机高速数控雕铣系统的最根本的任务,就是根据被加工零件的外形轮廓尺寸以 及精度要求编制加工程序,计算出机床各运动坐标轴的进给指令,分别驱动各坐标轴产 生协调运动,以获得刀具相对于工件的理想运动轨迹。这个处理过程就是插补。在数控 系统中,插补就是根据给定的数学函数如线性函数、圆函数或者高次函数,在理想的轨 迹或者轮廓上的已知点之间确定一些中间点的一种方法。 4 3 1 数控系统的插补原理 在数控系统中,实现插补的形式很多既可以用硬件实现,也可以用软件实现。硬 件插补的优点是算法速度快、精度高:硬件插补的缺点是实现电路一般都较为复杂、成 本也比较高,如果需要对插补算法进行改进一般比较困难,往往需要从头开始设计。软 件插补的优点是实现起来灵活机动,算法修改和改进也十分方便,软件插补的缺点是插 补速度不及硬件插补速度快。近年来,由于计算机硬件制造工艺和软件开发技术的飞速 发展。软件插补的速度得到大幅度提高,速度越来越快,现在软件插补的速度已经可以 达到以前硬件插补的速度水平,软件插补已经可以满足一般的数控插补的精度和速度要 求,因此完全由硬件实现的插补现在已经逐渐被淘汰,越来越多的采用软件插补方法。 在现代计算机数控系统中,一般都是兼顾硬件插补和软件插补两种插补方法各自的优点, 采用两级插补处理过程共同完成插补计算任务:一级插补称为粗插补,由软件方法完成 插补计算:二级插补称为精插补,由硬件方法完成插补计算。 目前普遍应用的插补方法分为两大类:脉冲增量插补和数据采样插补。 1 脉冲增量插补 该插补方法又称为行程标量插补或基准脉冲插补,适用于一些以步进电机为驱动装 置的开环或闭环的计算机数控系统这种插补算法的特点是每次插补结束以后,数控装 置向每个运动坐标轴输出的是基准脉冲系列,每个脉冲代表了最小的位移量,脉冲系列 的频率代表了坐标轴的运动速度,而脉冲的数量则表示坐标轴的移动量。脉冲增量插补 的实现方法较为简单,仅用加法和移位就可以完成插补,因而用硬件也比较容易实现, 并且硬件电路本身完成一些简单的加法和移位运算的速度很快。现在,在很多数控系统 中,也有不少是采用软件插补来实现的。脉冲增量插补算法中比较常用的有逐点比较法、 数字积分法、最小偏差法等。 2 数据采样插补 该插补方法又称为时间标量插补或数字增量插补,适用于一些以直流或交流伺服电 动机为驱动装置的闭环和半闭环的位置采样数控系统。这类插补算法的特点是数控装置 经过插补计算处理后产生的不是单个的脉冲,而是二进制字。数据采样插补的运算处理 4 2 浙江大学硕士论文 计算机高速数控雕铣系统研究 过程分为两步来进行:第一步是粗插补,它是在给定起点和终点的曲线中间插入若干个 点,将每两点依次连接起来,形成从曲线起点到终点的折线段,即用若干条微小直线段 来逼近给定的曲线,每段微小直线段的长度l 都相等,并且与给定的进给速度有关。 粗插补在每个插补运算周期中计算一次,因此,每一段微小直线段的长度l 与进给速 度f 和插补周期t 有关,即l = f t :第二步是精插补,它是在粗插补算出的每一段微 小直线段的基础上再做“数据点的密化”工作,这一步相当于对直线的脉冲增量插补。 粗插补在每个插补周期内计算出实际位置增量值,而精插补则在每个采样周期内采样闭 环或半闭环反馈位置增量值及插补输出的指令位置增量值,然后计算出各坐标轴相应的 插补指令位置和实际反馈位置,并将二者相比较,求得跟随误差,根据所求得的跟随误 差计算出相应轴的进给速度,并输出给驱动装置。在现代计算机数控系统中,粗插补一 般由软件插补完成,精插补一般由硬件实现,也有的数控系统中的两级插补全部是用软 件来实现的。 常见零件的轮廓曲线大多由直线和圆弧组成,因此一般的数控系统都要求具有直线 和圆弧插补功能。 4 3 2 控制软件插补控制实现 计算机高速数控雕铣系统实现的是高速加工运动,因而插补控制主要实现的是计算 量较小的直线插补和圆弧插补功能,兼顾硬件插补和软件插补各自的优点,采用两级插 补处理过程共同完成插补计算任务,一级插补称为粗插补,由控制软件完成粗插补计算; 二级插补称为精插补,由硬件p c l - - 8 3 9 卡完成精插补计算。 计算机高速数控雕铣系统使用的是台湾研华公司的p c l - - 8 3 9 卡,硬件实现了脉冲 增量插补,p c l - - 8 3 9 卡硬件实现对坐标轴的插补控制,可以利用库函数和寄存器操作 p c l 一8 3 9 卡硬件。实现插补控制。 对直线插补,控制软件所做的工作是分别计算各轴的进给量,设定给定脉冲多,间 隔削的轴为运动基准轴,其他轴为非基准轴,根据比例关系分配各轴的寄存器,然后利 用p c l - - 8 3 9 卡硬件实现各轴联动操作。 对圆弧插补,控制软件所做的工作是根据精度为弧长分割圆弧为首尾相连的直线集 合,然后在每个周期内依次进行直线集合中的直线插补运算。 对于固定循环加工插补。控制软件所做的工作是分解固定循环为首尾相连的直线集 合,然后依次进行直线集合中的直线插补运算。 计算机高速数控雕铣系统因为采用了步进电机控制卡,在插补控制上功能减弱,并 且精度受限制。控制软件建立在硬件基础上,使用p c l - - 8 3 9 卡基本上能够满足本系统 的控制要求,但是如果要求增强系统的数控功能,提高精度,应该考虑更高精度更高速 度的伺服屯机控制卡,利用伺服控制提高系统的精度和速度。 4 3 浙江大学硕士论文计算机高速数控雕铣系统研究 4 4 计算机高速数控雕铣系统控制软件刀具补偿控制实现 计算机高速数控雕铣系统要求能使用铣刀加工,因而需要进行刀具补偿。 4 4 1 数控系统的刀具补偿 由于数控系统对刀具的控制是以刀架参考点为基准的,而零件加工程序给出的零件 轮廓是以设计图零点为基准的,因此如果不作处理,则数控系统只能控制刀架参考点实 现加工轨迹,但实际的加工是用刀具的尖点来实现的,这样就需要在刀架参考点和刀具 刀尖点之间进行位置偏置,称之为刀具补偿,简称刀补。对于不同类型的机床和刀具, 需要考虑的刀补参数也不同:对铣刀而言,只有刀具半径补偿:对钻头而言,只有刀具 长度补偿;而对于车刀而言,则需要刀具半径补偿和两个坐标的刀具长度补偿。 1 刀具长度补偿 刀具长度补偿是用来实现刀尖圆弧中心轨迹与刀架中心轨迹之间的转换。根据是否 需要考虑刀尖圆弧半径补偿、长度补偿分为两种情况。一种情况是不考虑刀尖圆弧半径 的刀具长度补偿,另外一种情况是考虑刀尖圆弧半径的刀具长度补偿。由于刀具长度补 偿比较简单,并且铣刀不用刀具半径补偿,在此不作详细介绍。 2 刀具半径补偿 在轮廓加工过程中,由于刀具总有一定的半径,刀具中心的运动轨迹并不等于所需 加工零件的实际轮廓。因此,进行外轮廓加工时,使刀具中心偏移零件的外轮廊表面一 个刀具半径值。这种偏移习惯上称为刀具半径补偿。现代计算机数控系统都具备较完善 的刀具半径补偿功能,刀具半径补偿通常不是由数控程序编制人员完成的数控程序编 程人员只是按照零件的加工轮廓编制数控程序。实际的刀具半径补偿是在计算机数控系 统内部由计算机自动完成的。当刀具中心轨迹在编程轨迹( 零件轮廓) 前进方向左边时, 称为左刀补,用g 4 1 表示;反之,称为右刀补,用( 3 4 2 表示:当不需要进行刀具半径补 偿时,用g 4 0 表示。 在实际零件轮廓加工过程中,刀具半径不出那个一般都分为三步: 1 ) 刀补建立刀具从起刀点接近工件,刀具中心轨迹由g 4 1 或者( 3 4 2 确定,在原 来的程序基础上伸长或者缩短一个刀具半径。 2 ) 刀补进行刀具中心轨迹始终偏离编程轨迹一个刀具半径值的距离。 3 ) 刀补撤销刀具撤离工件。回到原点,刀具中心轨迹也要在原来的程序基础上 伸长或者缩短一个刀具半径。 刀具半径补偿仅在指定的二维坐标平面内进行,平面指定由g 代码g 1 7 g 1 8 g 1 9 ( x o y o z ,z o x 平面) 表示。 4 4 2 刀具补偿类型及判别 在进行刀具半径补偿时,为解决下一段加工轨迹对本段加工轨迹的影响,在计算本 段加工轨迹时,应该提前将下一段程序读入,根据转接的具体情况,计算本段刀具中心 4 4 浙江大学硕士论文计算机高速数控雕铣系统研究 轨迹,这种刀补方法是c 功能刀具补偿方法,在c 功能刀具补偿中,进行刀补计算时需 要判别刀具补偿类型。 1 刀具补偿类型定义 计算机数控系统系统中能控制加工的轨迹一般限于直线和圆弧,前后两段编程轨迹 间共有四种连接形式,即直线,直线、童线,圆弧、圆弧,直线、圆弧,圆弧。根据两段程序 轨迹交角处在工件侧的角度8 ( 称为转接角) 的不同,刀具半径补偿可以分为以下三类 转接过渡方式: 0 ) 1 8 0 。0 3 6 0 。,缩短形; ( 2 ) 9 0 。o 1 8 0 。,伸长形; ( 3 ) 0 。o 9 0 。,插入形。 2 方向矢量计算公式 方向矢量是指与运动方向一致的单位矢量,对直线和圆弧方向矢量计算是不向的。 直线:起点为a ( x l ,y 1 ) ,

温馨提示

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

评论

0/150

提交评论