1、第3章计算机数控系统 31 计算机数控(CNC)系统的基本概念 计算机数控(computerized numerical contro,简称 CNC)系统是用计算机控制加工功能,实现数值控制的系统。CNC系统根据计算机存储器中存储的控制程序,执行部分或全部数值控制功能由一台计算机完成以前机床数控装置所完成的硬件功能,对机床运动进行实时控制。 CNC系统由程序、输入装置、输出装置、CNC装置、PLC、主轴驱动装置和进给(伺眼)驱动装置组成。由于使用了CNC装置,使系统具有软件功能,又用 PLC取代了传统的机床电器逻辑控制装置,使系统更小巧,灵活性、通用性、可靠性更好,易于实现复杂的数控功能,使用
2、、维修也方便,并且具有与上位机连接及进行远程通信的功能。 32 微处理器数控(MNC)系统的组成 大多数CNC装置现在都采用微处理器构成的计算机装置,故也可称微处理器数控系统(MNC)。MNC一般由中央处理单元(CPU)和总线、存储器(ROM,RAM)、输入/输出(IO)接口电路及相应的外部设备、PLC、主轴控制单元、速度进给控制单元等组成。图3 .2.1为MNC 的组成原理图。3.2.1中央处理单元(CPU)和总线(BUS)CPU是微型计算机的核心,由运算器、控制器和内寄存器组组成。它对系统内的部件及操作进行统一的控制,按程序中指令的要求进行各种运算,使系统成为一个有机整体。总线(BUS)是
3、信息和电能公共通路的总称,由物理导线构成。CPU与存储器、I/O 接口及外设间通过总线联系。总线按功能分为数据总线(DB)、地址总线(AB)和控制总线(CB)。 存储器(memory) ()概述 存储器用于存储系统软件(管理软件和控制软件)和零件加工程序等,并将运算的中间结果和处理后的结果(数据)存储起来。数控系统所用的存储器为半导体存储器。 ()半导体存储器的分类 随机存取存储器(读写存储器)(random access memory)用来存储零件加工程序,或作为工作单元存放各种输出数据、输入数据、中间计算结果,与外存交换信息以及堆栈用等。其存储单元的内容既可以读出又可写入或改写。 只读存储
4、器O(resd-only memory)专门存放系统软件(控制程序、管理程序、表格和常数)的存储器,使用时其存储单元的内容不可改变,即不可写入而只能读出,也不会因断电而丢失内容。323 输入/输出(IO)接口电路及相应的外部设备(1)IO接口指外设与CPU间的联接电路。微机与外设要有输入输出数据通道,以便交换信息。一般外设与存储器间不能直接通信,需靠CPU传递信息,通过CPU对IO接口的读或写操作,完成外设与CPU间输入或输出信息的操作。CPU向外设送出信息的接口称为输出接口,外设向CPU传递信息的接口称输入接口,此外还有双向接口。微机中IO接口包括硬件电路和软件两部分。由于选用的IO设备或接
5、口芯片不同,I/O接口的操作方式也不同,因而应用程序也不同。IO接口硬件电路主要由地址译码、IO读写译码和I/O接口芯片(如数据缓冲器和数据锁存器等)组成。在CNC系统中IO的扩展是为控制对象或外部设备提供输入/输出通道,实现机床的控制和管理功能,如开关量控制、逻辑状态监测、键盘、显示器接口等。IO接口电路同与其相连的外设硬件电路特性密切相关,如驱动功率、电子匹配、干扰抑制等。(2)外部IO设备及IO接口MDI/CRT接口手动数据输入(MDI)是通过数控面板上的键盘(常为软触键)进行操作的。当CPU扫描到按下键的信号时,就将数据送入移位寄存器,其输出经过报警检查。若不报警,数据经选择门、移位寄
6、存器、数据总线送入RAM中;若报警则数据不送入RAM。 数据输入/输出串行接口 CNC装置控制对立的单台机床时,通常需要与下列设备相接并进行数据的输入输出。 (a)数据输入输出设备 如光电纸带阅读机(PTR)、纸带穿孔机(PP)、打印和穿复校设备(TTY)、零件的编程机和可编程控制器的编程机等。(b)外部机床控制面板 尤其是大型机床,为操作方便常在机床上设外部的机床控制面板,可分为固定式或悬挂式两种。 (c)通用的手摇脉冲发生器。 (d)进给驱动和主轴驱动线路 一般情况下它们与CNC装置装在同一机柜或相邻机柜内,与CNC装置通过内部连线相连,它们之间不设置通用输出输入接口。 此外,装置还要与上
7、级主计算机或计算机直接通信,或通过工厂局部网络相连,从而具有网络通信功能。 (3)机床的IO控制通道 机床的IO控制通道是指微机与机床之间的联接电路。计算机数控系统对机床的控制,通常由数控系统中的IO控制器和IO控制软件共同完成。 IO控制器的功能特点 (a)能够可靠地传送控制机床动作的相应控制信息,并能够输入控制机床所需的有关状态信息。 (b)能够进行相应的信息转换,以满足CNC系统的输入与输出要求。 (c)具有较强的阻断干扰信号进入计算机的能力,以提高系统的可靠性。 系统的硬件结构1 单微处理机与多微处理机结构 单微处理机结构 这种结构只有个微处理机,采用集中控制、分时方法处理数控的各个任
8、务。有的装置虽有个以上的微处理机,但其中只有个微处理机能够控制系统总线,占有总线资源,而其他微处理机成为专用的智能部件,不能控制系统总线,不能访问主存储器,它们组成主从结构(如系统)。这类结构也属于单微机结构。 在这种单微机结构中,所有的数控功能和管理功能都由个微机来完成,因此装置的功能将受到微处理器的字长、数据宽度、寻址能力和运算速度等因素的影响和限制。 多微处理机结构 有些多微处理机结构中,有个或个以上的微处理机构成处理部件,处理部件之间采用紧耦合,有集中的操作系统,并共享资源。有些多微处理结构则有个或个以上的微处理机构成的功能模块,功能模块之间采用松耦合,有多重操作系统,能有效地实现并行
9、处理。这种结构中的各处理机分别承担一定的任务,通过公共存储器或公用总线进行协调,实现各微机间的互联和通信。(1)多微处理机的结构特点性能价格比高。 多微机结构中的每个微机完成系统中指定的一部分功能。独立执行程序。它比单微机提高了计算的处理速度,适于多轴控制、高进给速度、高精度、高效率的数控要求。由于系统采用共享资源,而单个微处理机的价格又比较便宜,使CNC装置的性能价格比大为提高。采用模块化结构,有良好的适应性和扩展性。多微机的CNC装置大都采用模块化结构,可将微处理器、存储器、I/O控制组成独立微机级的硬件模块,相应的软件也采用模块结构固化在硬件模块中。硬软件模块形成特定的功能单元,称为功能
10、模块。功能模块间有明确定义的接口接口是固定的,符合工厂标准或工业标准,彼此可以进行信息交换。这样可以积木式地组成CNC装置,使CNC装置设计简单、适应性和扩展性好、试制周期短、调整维护方便、结构紧凑、效率高。硬件易于组织规模生产。由于硬件是通用的,容易配置,只要开发新的软件就可构成不同的 CNC装置,因此多微处理机结构便于组织规模生产,且保证质量。有很高的可靠性。多微处理机CNC装置的每个微机分管各自的任务,形成若干模块。如果某个模块出了故障,其他模块仍照常工作,而不像单微机那样一旦出故障就造成整个系统瘫痪。而且插件模块更换方便,可使故障对系统的影响减到最小。另外,由于多微机的CNC装置可进行
11、资源共享,省去了一些重复机构,不但降低了造价,也提高了系统的可靠性。(2)多微处理机CNC装置的结构分类共享存储器结构 结构特征:a、面向公共存储器来设计的,即采用多端口来实现各主模块之间的互连和通讯b、采用多端口控制逻辑来解决多个模块同时访问多端口存储器冲突的矛盾。注意:由于多端口存储器设计较复杂,而且对两个以上的主模块,会因争用存储器可能造成存储器传输信息的阻塞,所以这种结构一般采用双端口存储器(双端口RAM)。共享总线结构 结构特征:a、功能模块分为带有CPU或DMA的主模块和从模块(RAM/ROM,I/O模块)b、以系统总线为中心,所有的主、从模块都插在严格定义的标准系统总线上c、采用
12、总线仲裁机构(电路)来裁定多个模块同时请求使用系统总线的竞争问题 332 大板式结构与功能模块式结构1大板式结构大板式结构CNC系统的CNC装置由主电路板、位置控制板、PLC板、图形控制板和电源单元等组成。主电路板是大印刷电路板,其他电路是小印刷电路板,它们插在大印刷电路板上的插槽内,共同构成CNC装置。下图为大板式结构示意图。2功能模块式结构在采用功能模块式结构的CNC装置中,整个CNC装置按功能划分为模块,硬件和软件的设计都采用模块化设计方法,即每个功能模块被做成尺寸相同的印刷电路板(称功能模块),而相应功能模块的控制软件也模块化。这样形成一个“交钥匙”CNC系统产品系列,用户只要按需要选
13、用各种控制单元母板及所需功能模板,再将各功能模板插入控制单元母板的槽内,就搭成了自己需要的系统控制装置。常见的功能模块有控制板、位置控制板板、图形板、通信板及主存储器模板等种。另外,机床操作面板的按钮箱(台)也是标准化的,上面有由用户定义的按键。用户只要按产品的型号、功能把各功能模块、外设、相应的电缆(带插头)及按钮箱(机床操作面板及,)购买回来,经组装连接便可,从而大大方便了用户。 系统的软件1 CNC系统软件的组成与功能下图所示为 系统软件的组成。系统软件可分为管理软件与控制软件两部分。管理软件包括零件程序的输入、输出,显示,诊断和通信功能软件;控制软件包括译码、刀具补偿、速度处理、插补运
14、算和位置控制等功能软件。 输入程序 输入程序的功能有两个:一是把零件程序从阅读机或键盘经相应的缓冲器输入到零件程序存储器;二是将零件程序从零件程序存储器取出送入缓冲器。 译码程序在输入的零件加工程序中,含有零件的轮廓信息(线型,起点、终点坐标值)、工艺要求的加工速度及其他辅助信息(换刀、冷却液开/关等)。这些信息在计算机作插补运算与控制操作之前,需按一定的语法规则解释成计算机容易处理的数据形式,并以一定的数据格式存放在给定的内存专用区间,即把各程序段中的数据根据其前面的文字地址送到相应的缓冲寄存器中。译码就是从数控加工程序缓冲器或缓冲器中逐个读入字符,先识别出其中的文字码和数字码,然后根据文字
15、码所代表的功能,将后续数字码送到相应译码结果缓冲器单元中。 数据处理程序 数据处理程序有三个任务,即刀具半径补偿,速度计算(即根据合成速度算出各轴的分速度)以及辅助功能的处理等。 刀具半径补偿是把零件的轮廓轨迹转换成刀具中心轨迹;速度计算确定加工数据段的运动速度,开环系统根据给定进给速度计算出频率f,而闭环、半闭环系统则根据算出位移量();辅助功能处理是指换刀,主轴启动、停止,冷却液开、停等辅助功能的处理(即,T功能的传送及其先后顺序的处理)。 数据处理是为了减轻插补工作及速度控制程序的负担,提高系统的实时处理能力,故也称为预计算。下面将着重介绍刀具半径补偿,速度处理将在插补计算程序中的预计算
16、部分介绍,辅助功能的处理将在后面的相关内容中介绍。 (1)刀具半径补偿的概念 在连续进行轮廓加工过程中,由于刀具总有一定的半径例如铣刀的半径或线切割机的钼丝(或铜丝)半径等,所以刀具中心运动轨迹并不等于加工零件的轮廓。如下图所示,在进行内轮廓加工时,要使刀具中心偏移零件的内轮廓表面一个刀具半径值,而在进行外轮廓加工时,要使刀具中心偏移零件的外轮廓表面一个刀具半径值。这种偏移即称为刀具半径补偿。ABC”CBAG41刀具G42刀具编程轨迹刀具中心轨迹C 为了分析问题方便ISO标准规定,当刀具中心轨迹在编程轨迹(零件轮廓)前进方向的左边时,称为左刀补,用G41指令代码表示,图中所示零件轮廓内部的虚线
17、轨迹。反之,当刀具处于编程轨迹前进方向的右边时,称右刀补,用G42表示,如图中所示零件轮廓外部的虚线轨迹。当不需要进行刀补时,用G40表示。G41,G42和G40均属于模态代码,一旦执行便一直有效,直到同组其他代码出现后才被取消。 在早期的硬件数控系统中,由于其内存容量和数据处理能力的限制,不可能完成很复杂的大量计算,相应的刀具半径补偿功能较为简单,一般采用B功能刀具补偿方法。这种方法仅根据本段程序的轮廓尺寸进行刀补,不能解决程序段之间的过渡问题,这样编程人员必须事先估计出刀补后可能出现的间断点和交叉点的情况,进行人为处理,将工件轮廓转接处处理成圆弧过渡形式。如图3.4.7所示,在G42刀补后
18、出现间断点时,可以在2个间断点之间增加一个半径为刀具半径的过渡圆弧AB。而在G41刀补后出现交叉点时,C点不易求得,可事先在两个程序段之间增加一个过渡圆弧AB,其半径需大于刀具半径,以免过切。显然,这种B功能刀补对于编程员来讲是很不方便的。 为保证一定的零件轮廓,实现刀具半径补偿,要计算刀具半径补偿矢量(简称刀补矢量)。此矢量是大小等于刀具半径、方向垂直于零件表面轮廓的二维矢量,随着刀具的移动,刀具半径补偿矢量也不断变化。在刀具补偿程序中,需要计算出每个程序段中的刀补矢量,即计算出刀具的偏移量和旋转角度。其计算方法有刀具半径分量法(r2法或逐点比较法)、极坐标输入法(三角函数法)等。 (2)C
19、功能刀具半径补偿 C刀具半径补偿的原理及计算 硬件数控机床常用的刀具半径补偿方法,其主要特点是在程序段转换时(如折线或直线与圆弧不相切时)采用圆弧过渡。这种方法在拐角处铣刀刃与工件间的接触产生一停顿时间,工艺性不好,不适合3坐标以上的刀具半径补偿。理想的过渡形式应是直线过渡形式。可见,这种刀补方法追免了刀具在尖角处的停顿现象。计算机数控的刀具半径补偿一般都采用直线过渡的方法,在系统程序中有一个刀具半径补偿子程序,需要时可调用之。 插补计算程序 插补计算是系统中最重要的计算工作之一。装置中采用的是硬件电路(即插补器)来实现各种轨迹的插补。为了在软件系统中计算所需的插补轨迹,这些数字电路必须由计算
20、机的程序来模拟。计算机由若干条指令来实现插补工作,但执行每条指令都需要花费一定的时间,而过去小型或微型计算机的计算速度都不能满足数控机床对进给速度和分辨率的要求。在实际的系统中,常采用数据采样的插补方法,将插补功能分割成软件插补和硬件插补两部分,控制软件把刀具轨迹分割成若干段,而硬件电路再在段的起点和终点之间进行数据的“密化”,使刀具轨迹控制在允许的误差之内。即软件实现粗插补,硬件实现细插补。 5伺服(位置)控制软件伺服位置控制软件的主要功能是对插补值进行处理(取全值或取其半值),计算出位置的命令值,同时读一次实际的反馈值,然后计算出命令值与反馈值间的差值(称为位置跟随误差),再乘上增益系数,
21、并加上补偿量从而得到速度命令值。 6输出程序 输出程序的功能有如下几项: (1)进行伺服控制,如上所述。 (2)反向间隙补偿处理 反向间隙值由程序预置。若某一轴由正向变成负向运动,则在反向前输出 Q个正向脉冲;反之,若由负向变成正向运动,则在反向前输出 Q个负向脉冲(Q为反向间隙,因实际情况而异)。 (3)进行丝杠螺距误差补偿(方法见后面相关内容) (4)M,S,T辅助功能的输出 M,S,T代码大多是开关量控制,由机床强电执行。 7管理程序 当一个数据段开始插补加工时,管理程序即准备下一个数据段的读入、译码、处理,调用各功能子程序,准备好下一段数据。一旦本数据段加工完毕便立即开始下一段插补。为
22、数据输入、处理及切削加工过程服务的各个程序均由管理程序进行调度。管理程序还要对面板命令、时钟信号、故障信号等引起的中断进行处理。 8、诊断程序 完善的诊断程序可以防止故障的发生或扩大,在故障出现后,还可以迅速查明故障的类型和部位,减少故障停机时间。诊断分多种情况,有启动诊断、在线诊断、停机诊断、远程通信诊断等。3.4.2 系统软件的特点和结构 系统软件的特点 (1)多任务并行处理 系统是一个专用的实时多任务计算机系统,在它的控制软件中融合了当今计算机软件技术中的许多先进技术,其中最突出的是多任务并行处理技术。 多任务 指系统软件必须同时进行管理和控制工作。如 工作在加工控制状态时,为了使操作人
23、员能及时地了解的工作状态,管理软件中的显示模块必须与控制软件同时运行。又如为保证加工连续性,译码、刀补和速度处理模块必须与插补模块同时运行,而插补又必须与位置控制同时进行。 并行处理 指计算机在同一时刻或同一时间间隔内完成两种或两种以上性质相同或不同的工作。这大大提高了运算速度。 资源分时共享 在单的装置中,主要采用分时共享的原则来解决多任务的同时运行。首先要解决各任务占用CPU时间的分配原则,包括各任务何时占用CPU和允许各任务占用的时间长短两个内容。在装置中,采用循环轮流和中断优先相结合的方法解决各任务使用CPU的问题。系统在完成初始化以后自动进入时间分配环中,依次轮流处理各任务。而对于系
24、统中一些实时性很强的任务则按优先级排队,分别放在不同中断优先级上,环外的任务可以随时中断环内各任务的执行。每个任务允许占有CPU的时间受到一定限制,对于某些占有CPU时间比较多的任务(如插补准备),可在其中的某些地方设置断点,当程序运行到断点处时自动让出 CPU,待到下一个运行时间里自动跳到断点处继续执行。 资源重叠流水处理 当 CNC装置处在 NC作方式时,其数据的转换过程将由零件程序输入、插补准备(包括译码、刀补和速度处理)、插补、位置控制4个子过程组成。如果每个子过程的处理时间分别为t1,t2,t3,t4,那么一个零件程序段的数据转换时间将是tt1t2t3t4。 流水处理的关键是时间重叠
25、,即在一段时间间隔内不是处理一个子过程,而是处理两个或更多的子过程。 (2)多重实时中断处理 所谓中断是指中止现行程序转而去执行另一程序、待另一程序处理完毕后,再转回来继续执行原程序。所谓多重中断,就是将中断按级别优先权排队,高级中断源能中断低级的中断处理,等高级中断处理完毕后,再返回来接着处理低级中断尚未完成的工作。反谓实时,是指在确定的有限时间里对外部产生的随机事件作出响应,并在确定的时间里完成这种响应或处理。数控系统是一个实时控制系统,被控对象是一个并发活动的有机整体,对被控对象进行控制和监视的任务也是并发执行的,它们之间存在着各种复杂的逻辑关系。有时这些任务是顺序执行的,表现为一个任务
26、结束后,激发另一个任务执行,如数控加工程序段的预处理、插补计算、位置控制和输入输出控制;有时这些任务是周期性地以连续反复的方式执行,如每隔一个插补周期进行一次插补计算,每隔一个采样周期进行一次位置控制等;有时一个任务执行到某处时,必须延时到某个别时刻后才又继续执行,如必须等待换刀等有关辅助功能完成后,进一步的切削控制才能开始;有时是几个协同任务并发执行,如在加工控制中,人机交互处理及各种突发事件的处理等。 对于有实时要求,且各种任务互相交错并发的多任务控制系统,可采用多重中断的并行处理技术。各种实时任务被安排成不同优先级别的中断服务程序,或在同一个中断程序中按其优先级高低而顺序运行,任务主要以
27、优先级进行调度,在任何时候运行的都是当前优先级较高的任务。 无论采用哪种并行处理技术,各种协同任务都存在着各种逻辑联系,它们之间必须进行各种通信。以便共同完成对某个对象(如数控机床)的控制和监视。各任务之间可以采用设置标志、共同使用某一公共存储区及多处理器串行通信等方法进行联系。目前,针对数控系统多任务性和实时性两大特点,一方面在硬件上越来越多地采用多微处理器系统,另一方面在软件上综合了前述设备重复的并行处理技术、分时的并行处理技术和多重中断的并行处理技术。常见的系统软件结构有对应于单微处理器系统的前后台型和多重中断型,以及对应于多微处理器系统的功能模块软件结构。 . 系统软件结构的分类 数控
28、系统的基本功能是由各种功能干程序实现的,不同的软件结构对这些子程序的安排方式不同管理的方法亦不同。 (1)前后台型结构 前台程序是中断服务程序,几乎承担了全部实时功能(插补、位置控制、机床相关逻辑和面板扫描监控等功能)这些功能和机床的动作直接相关。后台程序是指实现输入、译码、数据处理及管理功能的程序,亦称背景程序,是循环运行程序,在其运行过程中,前台实时中断程序不断插入,与背景程序相配合,共同完成零件加工任务。前后台型结构适用于单微机系统。(2)多重中断型结构除初始化程序之外,整个系统软件的各个任务模块分别安排在不同级别的中断服务程序中。也就是说,所有功能子程序均安排成级别不同的中断程序,整个
29、软件就是一个大的中断系统,管理功能主要通过各级中断程序之间的相互通信来解决。日本FANUC7、6系统皆采用此中断型软件结构。中断优先级安排中断优先级结构如图3426所示,其中的功能表如表343所示。图3.4.26 中断优先级结构表3.4.3 中断功能一览表优先级功能中断源优先级功能中断源1CRT显示ROM校验由初始化转入6监控急停信号,定时2、3、5级2ms硬件件定时2工作方式选择数据预处理16ms软件定时7ASR键盘输入及RA232C输入硬件随机3PLC控制MST处理16ms软件定时8纸带阅读处理中导孔输入4参数、变量、数据存储器控制硬件DMA9报警串行传送报警5插补位置控制补偿8ms软件定
30、时10RAM校验、电源断开硬件非屏蔽中断其中断有两种来源:一种是由时钟或其他外部设备产生的中断请求信号,称为硬件中断(如:第1,4,6,7,8,9,10级);另一种是有程序产生的中断信号,称为软件中断,这是由2ms的实时时钟在软件中分频得出的(如第2,3,5级)。 35 CNC系统的工作过程351 CNC系统的数据段历程 一个数据段从输入到传送至输出位置控制值需要经过图3.5.1所示的几个环节。经过输入系统的工作,将数据段送入零件程序缓冲器,然后由译码程序将输入的零件程序数据段翻译成本系统能识别的语言,送入译码结果寄存器。再通过数据处理程序将预计算出的刀补参数(刀补后的本程序段终点坐标)、速度
31、分量(L,L)及有关辅助功能送入数据处理结果缓冲器,经插补后将本次插补周期的输出位置增量值(X2,Y2 )送至插补工作寄存器,再经伺服(位置)控制处理,将段值(X2,Y2)经计算成为新指令位置值,同时将反馈的位置增量(X1,Y1)加上原实际位置得出现在的实际位置值。经比较计算出新指令位置和实际位置的差值(即跟随误差),乘上位置增益,得到位置控制的输出值也X3,Y3,即为速度指令。之后便进行DA转换。 图3.5.1 数据段历程352 CNC系统自动工作时的总体流程 CNC系统的自动工作状态是其最主要的加工方式,图3.5.2所示为它的总体流程。 零件加工程序通过纸带输入机、盒式磁带机或MDI键盘(
32、磁盘,或上级DNC接口输入),按一定标准通过输入程序输入到内存中的零件程序存储区。又在输入程序的支持下将零件加工程序从存储区调出至缓冲区。然后,程序段逐段进行译码,即置文字地址码的标志位,并将ASC码由数控内部码译成系统能识别的二进制码或特征码。接着进行数据的预计算,包括刀具半径补偿计算刀心坐标值,速度处理计算各轴分速度,算出线段长(L及)以及,T代码处理,为插补提供各种必要的数据。接着再进行插补运算。控制程序将根据零件加工程序中的进给速度(F)和坐标位移量,由预计算算出线段长(L及),再计算出分配给每个坐标的段值,即每个插补中断周期中坐标的位移量(,)。最后,在位置控制比较环节中,将插补输出
33、的段值(位移量)加上原坐标指令值作为新的指令位置值。又将反馈位置增量加上原实际位置坐标值作为新的实际位置值。将新的指令值与新的实际位置值相比较,算出跟随误差。通过计算机的软件放大倍数调节功能乘上系数后,即为伺服输入的速度指令值。再通过数模转换成为速度命令电压(或频率),最后驱动伺服电动机,带动工作台或刀具位移。入口输入纸带或MDI将零件程序按ASCBCD形式输入至存储区或调出至缓冲区译码预计算插补伺服位置控制结束置标志位“1”,BCDB等刀补,算刀心坐标速度处理算段长,M、S、T处理算段值X,Y,Z算跟随误差,乘上放大系数即为速度指令 运动轨迹的插补原理 运动轨迹括补的概念 在数控机床中,刀具
34、的最小移动单位是一个脉冲当量,而刀具的运动轨迹为折线,并不是光滑的曲线。刀具不能严格地沿着所加工的曲线运动,只能用折线轨迹逼近所加工的曲线。在数控加工中,根据给定的信息进行某种预定的数学计算,不断向各个坐标轴发出相互协调的进给脉冲或数据,使被控机械部件按指定路线移动(即产生个坐标轴以上的配合运动),这就是插补。换言之,插补就是沿着规定的轮廓,在轮廓的起点和终点之间按一定算法进行数据点的密化,给出相应轴的位移量或用脉冲把起点和终点间的空白填补(逼近误差要小于个脉冲当量)。一般数控机床都具备直线和圆弧插补功能。362 运动轨迹插补的方法1脉冲增量法(标准脉冲插补 reference pulse)行
35、程标量插补把每次插补运算产生的指令脉冲输出到步进电动机等伺服机构,并且每次产生一个单位的行程增量,这就是脉冲增量插补,如逐点比较法、法及一些相应的改进算法等都属此类。这类插补法比较简单,仅需几次加法和移位操作就可完成,用硬件和软件模拟都可实现。进给速度指标和精度指标都难以满足现在零件加工的要求,因此,这种插补法只适用于中等精度和中等速度的机床系统。主要用早期的采用步进电机驱动的数控系统,现在的数控系统已很少采用这类算法了。 数据采样法(sampled data)时间标量插补在这种方法中,整个控制系统通过计算机而形成闭环,输出的不是单个脉冲,而是数据,即标准二进制字。数据采样插补算法中较常见的有
36、时间分割法插补,也就是根据编程进给速度将零件轮廓曲线按插补周期分割为一系列微小直线段,然后将这些微小直线段对应的位置增量数据进行输出,用以控制伺服系统实现坐标轴的进给。这类插补算法适用于以直流或交流伺服电动机作为执行元件的闭环或半闭环数控系统。 363 逐点比较法l逐点比较法的原理它的原理是以区域判别为特征,每走一步都要将加工点的瞬时坐标与规定的图形轨迹相比较,判断其偏差,然后决定下一步的走向。如果加工点走到图形外面,那么下一步就要向图形里面走;如果加工点在图形里面,则下一步就要向图形外面走,以缩小偏差。每次只进行一个坐标轴的插补进给。通过这种方法能得到一个接近规定图形的轨迹,而最大偏差不超过
37、一个脉冲当量。在逐点比较法中,每进给一步都要4个节拍,如图363所示。偏差判别插补开始坐标进给新偏差计算到终点?结束YN (1)偏差判别 判别偏差符号,确定加工点是在规定图形的外面还是里面。 (2)坐标进给 根据偏差情况,控制X坐标或Y坐标进给一步,使加工点向规定图形靠拢,缩小偏差。 (3)新偏差计算 进给一步后,计算加工点与规定图形的新偏差,作为下一步偏差判别的依据。 (4)终点判别 根据这一步的进给结果,判定(比较)终点是否到达。如未到达终点,继续插补工作循环,如果已到终点就停止插补。 2逐点比较法I象限直线插补 (1)基本原理 偏差函数值的判别 如图364所示,OE为象限直线,起点O为坐
38、标原点,终点E的坐标为E(Xe,Ye),还有一个动点为N(Xi,Yi)。现假设动点 N正好处于直线OE上,则有下式成立: 即 XeYiXiYe(Xe,Ye)Y直线(Xm,Ym)(Xn,Yn) 假设动点处于 OE的下方N处,则直线 ON的斜率小于直线OE的斜率,从而有 即 XeYiXiYe 由以上关系式可以看出,(Xe YiXi Ye)的符号反映了动点N与直线OE之间的偏离情况。为此取偏差函数为 FXe Yi - Xi Ye 依此可总结出动点 N(Xi ,Yi)与设定直线 OE之间的相对位置关系如下: 当 F0时,动点 N(Xi ,Yi)正好处在直线 OE上; 当 F0时,动点 N(Xi ,Yi
39、)落在直线 OE上方的区域; 当 F0时,动点 N(Xi ,Yi)落在直线OE下方的区域。 坐标进给 以图365为例。设OE为要加工的直线轮廓,而动点N(Xi ,Yi)对应于切削刀具的位置,终点 E坐标为Xe4,Ye6,起点为 O,即 Xo0,Yo0。显然,当刀具处于直线下方区域时(F0),为了更靠拢直线轮廓,则要求刀具向(Y)方向进给一步;当刀具处于直线上方区域时(),为了更靠拢直线轮廓,则要求刀具向()方向进给一步;当刀具正好处于直线上时(),理论上既可向()方向进给一步,也可向()方向进给一步,但一般情况下约定向()方向进给,从而将F和两种情况归一类()。根据上述原则,从原点(,)开始走
40、一步,计算并判别的符号,再趋向直线进给,步步前进,直至终点。这样,通过逐点比较的方法,控制刀具走出一条尽量接近零件轮廓直线轨迹,如图.中的折线所示。当每次进给的台阶(即脉冲当量)很小时,就可以将这折线近似当作直线来看待。显然,逼近程度的大小与脉冲当量的大小直接相关。 新偏差计算由式()可以看出,每次求时要作乘法和减法运算,而这在使用硬件或汇编语言软件实现插补时不大方便,还会增加运算的时间。因此,为了简化运算,通常采用递推法,即每进给一步后新加工点的加工偏差值通过前一点的偏差递推算出。 现假设第次插补后动点坐标为(i,i),偏差函数为 ieiie若i,则向()方向进给一步,新的动点坐标值为 i+
41、1ii+1i这里,设坐标值单位是脉冲当量,进给一步即走一个脉冲当量的距离()。新的偏差函数为 i+1ei+1i+1ei一iee所以 i+1i ()同样,若,则向()方向进给一步,新的动点坐标值为 i+1i,i+1i+1因此新的偏差函数为 i+1ei+1i+1ei一iee所以 i+1ie ()根据式()和(一)可以看出,采用递推算法后,偏差函数的计算只与终点坐标值,e有关,而不涉及动点坐标i,i的值,且不需要进行乘法运算,新动点的偏差函数可由上一个动点的偏差函数值递推出来(减Y或加e)。因此,该算法相当简单,易于实现。但要一步步速推,且需知道开始加工点处的偏差值。一般是采用人工方法将刀具移到加工
42、起点(对刀),这时刀具正好处于直线上,当然也就没有偏差,所以递推开始时偏差函数的初始值为0。终点判别 由于插补误差的影响,刀具的运动轨迹可能不通过被加工直线的终点(,e)。即在有些情况下,刀具的横坐标i与纵坐标i不可能同时满足以下两式 因此,不能用以上条件来判断直线是否加工完毕。通常根据刀具沿、Y轴所走的总步数判断终点。 从直线的起点(图3.6.5)移动到终点,刀具沿轴应走的步数为e,沿轴应走的步数为e,沿,两坐标轴应走的总步数为 十 刀具运动到点P(i,Yi)时,沿,轴已经走过的步数为 iYi 若与相等,说明直线已加工完毕,插补过程应该结束。否则,说明直线还没有加工完毕。 对于逐点比较插补法,每进行一个插补循环,刀具或者沿轴走一步,或者沿轴走一步,因此插补循环数与刀具沿,轴已走的总步数相等。这样就可以根据插补循环数与具沿,轴应进给的总步数是否相等判断终点,即直线加工结束的条件为 () 3逐点比较法象限逆圆插补 (1)基本原理 偏差判别 在圆弧加工过程中,要描述刀具位置与被加工圆弧之间的相对关