4.3 计算机数控装置的软件结构
一、CNC装置软件结构的特点 (一)CNC装置软硬件的界面(如P168图4.3.1)
(二)系统软件的内容及结构类型 系统软件包括:管理和控制两部分(如P168图4.3.2)
系统的管理部分:输入、I/O处理、通讯、显示、诊断以及加工程序的编制管理等程序。 系统的控制部分:译码、刀具补偿、速度处理、插补和位置控制等软件。 结构类型: 在单微处理机数控系统中,常采用前后台型的软件结构和中断型的软件结构。 在多微处理机数控系统中,将微处理机作为一个功能单元构成相应的软件结构类型。 CNC装置的软件结构都具有多任务并行处理和多重实时中断的特点。
(三)多任务并行处理 1、CNC装置的多任务性(多任务分解图如P169图4.3.2) 软件任务的并行处理关系(如P169图4.3.3) 2、并行处理 并行处理:是指在同一时刻或同一时间间隔内完成两种或两种以上性质相同或不相同的工作。 并行处理的优点:提高运行速度。 并行处理方法:“资源重复”并行处理方法、“时间重叠”并行处理方法、“资源共享”并行处理方法。 “资源重复”并行处理技术多应用于CNC装置的硬件结构中。
①在CNC装置的软件结构中,主要采用“资源分时共享”和“资源重叠的流水处理”方法。 资源共享是根据“分时共享”的原则,使多个用户按时间顺序使用同一套设备。 时间重叠是根据流水处理技术,使多个处理过程在时间上相互错开,轮流使用同一设备的几个部分。 资源分时共享并行处理(如P170图4.3.4)
在单CPU的CNC装置中,主要采用CPU分时共享的原则来解决多任务的同时运行。 首先解决的两个时间问题:各任务何时占用CPU、各任务占用CPU时间的长短。 分时共享CPU原理:系统在完成初始化任务后自动进入时间分配循环中,在环中依次轮流处理各任务,而对于系统中一些实时性很强的任务则按优先级排队,分别处于不同的中断优先级上作为环外任务,环外任务可以随时中断环内各任务的执行。每个任务允许占有CPU的时间受到一定的限制,对于某些占有CPU时间较多的任务,可以在其中的某些地方设置断点,当程序运行到断点处时,自动让出CPU,等到下一个运行时间里自动跳到断点处继续执行。
②资源重复流水并行处理(如P170图4.3.5) 当CNC装置在自动加工工作方式时,其数据的转换过程将由零件输入、插补准备、插补、位置控制四个子过程组成,如果每个子过程的处理时间分别为△ t1、△ t2 、△ t3 、△ t4 ,那么一个零件程序段的数据转时间将是t= △ t1 + △ t2 + △ t3 + △ t4 。
顺序方式处理:第一个零件程序段处理完以后,再处理第二个程序段,两个程序段的输出之间有一个时间为 的间隔,这种时间间隔反映在电机上就是电机的时转时停;反映在刀具上就是刀具的时走时停,这种情况在加工工艺上是不允许的。 流水处理:关键是时间重叠,可以解决以上问题,取最长的子过程处理事件间隔,在一段时间间隔内不是处理一个子过程,而是处理两个或更多的子过程,在处理时间较短的子过程时,当处理完后就进入等待状态,使每个程序段的输出之间不再有间隔,从而保证了电机和刀具运动的连续性。
③并行处理中的信息交换和同步(如P170图4.3.6)原理: ⑴零件程序通过输入程序的处理先存入纸带缓冲存储区,这是一个循环存储序列; ⑵插补准备程序(包括译码、刀具补偿和速度处理)先从纸带缓冲存储区把一个程序段的数据读入译码缓冲存储区,然后进行译码,刀具补偿和速度处理; ⑶将结果放在插补缓冲存储区; ⑷插补程序在每次初始执行一个程序段的插补运算时,把插补缓冲存储区的内容读入插补工作区; ⑸用插补工作存储区中的数据进行插补计算,将结果送到初步输出寄存器。
输入、输出数据原理: 输入程序往纸带缓冲存储区中写数据是通过同步写指针W进行的,输入程序每写入一个数据则写指针W+1,即 W=(W+1)Mod(M) 式中,M是纸带缓冲存储区的容量。 当纸带缓冲存储区满时,即 (R-W)Mod(M)=2 式中,R是读出指针,这时输入程序应使纸带光电阅读机停止工作,等待缓冲存储区的数据被读出。
(四)实时中断处理 1、CNC系统的中断类型(外部中断、内部定时中断、硬件故障中断、程序性中断) ①外部中断 主要有纸带光电阅读机中断、外部监控中断、键盘操作面板输入中断。 前两种中断的实时性要求很高,将它们放在较高的优先级上,而键盘和操作面板输入中断则放在较低的中断优先级上,在有些系统中,甚至用查询方式来处理它。 ②内部定时中断 主要有插补周期定时中断和位置采样定时中断。 ③硬件故障中断 ④程序性中断
2、CNC系统中断结构模式 ①前后台软件结构中的中断模式(如P173图4.3.8) 前台程序是一个中断服务程序,完成全部的实时功能。 后台(背景)程序是一个循环运行程序,管理和插补准备在这里完成,后台程序运行中,实时中断程序不断插入,与后台程序相配合。 ②中断型软件结构中的中断模式 中断型软件结构中的特点是除了初始化程序之外,整个系统软件的各种任务分别安排在不同级别的中断服务程序中,整个软件就是一个大的中断系统,其管理的功能主要通过各级中断服务程序之间的相互通讯来解决。
二、输入和数据处理程序 (一)零件程序的输入(如P174图4.3.9)
零件程序的输入包括两方面的内容: 一个是从阅读机、键盘输入到零件程序存储器; 二是从零件程序存储器将零件程序的程序段送入缓冲器(缓冲存储区)。 零件程序的输入流程: 当纸带阅读机已读入一个字符至接口中时,就向主机发出中断,由中断服务程序将该字符送到零件程序缓冲存储区(即纸带缓冲存储区),然后再送到内存的零件程序存储区。 2、同样,从键盘输入(手动数据输入MDI)时,再按一个键则表示向主机申请一次中断,调出一次键盘服务程序,将信息先送到MDI缓冲存储区,再送入零件程序存储区。
(二)数据处理程序 组成:数据处理程序又叫插补准备程序,它包括译码、刀补、辅助功能处理和进给速度计算等部分。 译码的功能:将输入的加工程序翻译成系统能识别的语言。 运动轨迹计算:将工件轮廓轨迹转化为刀具中心轨迹。 进给速度计算:主要解决刀具的运动速度问题。
1、译码 译码方法:解释、编译。 解释方法:将输入程序整理成某种形式,由计算机顺序取出进行分析、判断和处理,即一边解释,一边执行。 编译方法:将输入程序作为源程序,对它进行编译,形成由机器指令组成的目的程序,然后执行这个目的程序。 译码工作内容:对程序的整理和存放。
整理和存放的两种方法: 不安字符格式的整理与存放方法 方法:每个程序段数据以程序结束符开头与结尾,功能字用特征码表示其地址,编码与原输入的标准编码一致,尺寸字进行二-十进制转换为二进制的运算,不保留地址字符,按固定格式存放。 例如:G、M、S、T字符由一个字节的高四位表示其特征,用该字节的低四位表示其代码,当代码数用四位表示不够时,可用两个字节表示一个功能字。 注意: 尺寸字的固定顺序为: x、y、z、I、J 、K、F ;某尺寸没有时应占零;每个尺寸字占用的字节数由输入的尺寸字中最多可能的数字位数决定。 方法特点: 方法不复杂,对一般不带有自动编程功能的CNC系统,可在纸带输入过程中,利用各排孔逐排输入的间隔时间进行,对于有自动编程功能的CNC系统,这部分工作在后置处理部分完成。
②保留字符格式的整理与存放(如P175图4.3.10) 原理:这种方法接收并存放纸带上(或程序上)的全部字符,程序输入时,只对标准代码字符进行“换码”,暂不进行“十翻二”运算及格式整理,输出加工程序只要进行返换码即可。但这种整理方法使各程序段之间、各尺寸字之间差别很大,在编辑过程中,要将零件加工程序区中已换码字符逐个取出,识别后将序号字及功能字后的数字拼装,存放在预定单元;尺寸字、速度字和暂停时间要进行十翻二运算并装入预定单元,编辑程序框图如图4.3.11。
2、刀具补偿(刀具长度补偿、刀具半径补偿) 刀具半径补偿执行过程分为:刀补建立、刀补进行和刀补撤销三步。刀补仅在指定的二维坐标平面进行。 ①B功能刀具半径补偿计算 直线刀具补偿计算(如P176图4.3.12)
圆弧刀具半径补偿计算如P177图4.3.13:
②C功能刀具半径补偿 C刀补能处理两个程序段间转接的情况(即尖角过渡如图4.3.14) 遇到间断点时,可以在两个程序段之间增加一个半径为刀具半径 的过渡圆弧 ,CNC装置设立G39尖角过渡指令; 遇到交叉点时,事先在两个程序段之间增加一个过渡圆弧 ,圆弧半径必须大于所使用的刀具的半径。
NC系统的工作方式(如P179图4.3.15) 普通NC系统的工作方法: 程序轮廓轨迹数据送到工作寄存器AS后,由运算器进行刀补运算,运算结果送到输出寄存器OS,直接作为伺服系统的控制信号。 改进后的NC系统的工作方法: 增加了一组数据输入的缓冲寄存区BS,在AS中存放着正在加工的程序段信息的同时,BS中已经存入了下一段所要加工的程序段信息。这样, 节省了数据读入的时间。
C刀补方法: 又增设了一个刀补缓冲区CS,当系统启动后,第一个程序段先被读入BS,在BS中算得第一段刀具中心轨迹,被送到CS中暂存后,又将第二个程序段读入BS,算出第二个程序段的刀具中心轨迹,对第一、第二两段程序轨迹的连接方式进行判别,根据判别结果再对第一段刀具中心轨迹进行修正,然后顺序地将修正后的第一段刀具中心轨迹由CS送入AS中,第二段刀具中心轨迹中BS送入CS中,随后由CPU将AS中的内容送到OS中进行插补运算,运算结果送到伺服系统中予以执行。当修正了的第一段刀具中心轨迹开始被执行后,利用插补时间,CPU又命令读入第三个程序段去BS中,又根据BS、CS中的第三、第二段轨迹的连接情况,对CS中的第二个程序段刀具中心轨迹进行修正,依次进行下去。可见,CNC系统的刀补状态,其内部总是同时存有三个程序段的信息。
两个程序段刀具中心轨迹的连接方式:伸长型、缩短型、插入型(如图4.3.16)
C刀补实例(如P180图4.3.17):