下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、CNC装置的软件结构CNC装置的软件是一个典型又复杂的实时系统,它的许多控制任务,如零件 程序的输入与译码、 刀具半径补偿、 插补运算、 位置控制以及精度补偿都是由软 件实现的。从逻辑上讲, 这些任务可看成一个个功能模块, 模块之间存在着偶合 关系;从时间上讲, 各功能模块之间存在一个时序配合问题。 在设计 CNC装置的 软件时,如何组织和协调这些这些功能模块,使之满足一定的时序和逻辑关系, 就是 CNC装置软件结构要考虑的问题。CNC装置软件和硬件的功能界面CNC装置是由软件和硬件组成的,硬件为软件的运行提供支持环境。在信息 处理方面, 软件与硬件在逻辑上是等价的, 即硬件能完成的功能从理论
2、上讲也可 以由软件来完成。但,硬件和软件在实现这些功能时各有不同的特点:硬件处理速度快,但灵活性差,实现复杂控制的功能困难软件设计灵活,适应性强,但处理速度相对较慢。如何确定合理确定软硬件的功能分担是 CNC装置结构设计的重要任务。 这就 是所谓软件和硬件的功能界面划分的概念。划分准则是系统的 性价比。图 1 CNC软件 系统功能框图图1是 CNC装置功能界面的几种划分方法。这几种功能界面是 CNC装置不同时期不同产品的划分。 其中后面两种是现在 的 CNC系统常用的方案。 反映出软件所承担的任务越来越多, 硬件承担的任务越 来越少。一是因为计算机技术的发展, 计算机运算处理能力不断增强, 软
3、件的运 行效率大大提高, 这为用软件实现数控功能提供了技术支持。 二是数控技术的发 展,对数控功能的要求越来越高,若用软件来实现这些功能,不仅结构复杂,而 且柔性差, 甚至不可能实现。 而用软件实现则具有较大的灵活性, 且能方便实现 较复杂的处理和运算。 因而,用相对较少且标准化程度较高的硬件, 配以功能丰 富的软件模块 CNC系统是当今数控技术的发展趋势。二、 CNC装置的数据转换流程CNC系统软件的主要任务之一是如何将零件加工程序表达的加工信息,变换 成各进给轴的位移指令、 主轴转速指令和辅助动作指令。 其数据转换的过程如图 2 所示。图 2 共享存储器结构 CNC系统硬件结构(一) 译码
4、(解释)译码程序的主要功能是将文本格式( ASCII 码)表达的零件加工程序,以程序段为单位转换 成后续程序所要求的数据结构 (格式) 。该数据结构用来描述一个程序段解释后的数据信息。 包括: X、 Y、 Z、等坐标值;进给速度;主轴转速; G代码; M代码;刀具号;子程序处理 和循环调用处理等数据或标志的存放顺序和格式。一个译码缓冲区数据结构的例子如下:Struct PROG_BUFFERChar buf_state; / 指定缓冲区的状态, 0 表示缓冲区为空; 准备好。int block_num; / 以 BCD码的形式存放本段的程序段号。double COOD20; / 以二进制的形式
5、存放 X、 Y、 Z、I 、J、K、 寸指令的数值,单位为 um。int F,S; / 以二进制的形式存放进给速度 F 主轴转速 S( r/min )。char G0; / 以标志形式存放 G 指令。例如:D6D5D4D3D2D1D0G00 0 1:有该指令。1 表示缓冲区R、A、B 等尺mm/min)和:无该指令;G01G02G03G33;charG1; / 根据 G 指令的个数设置字符变量的个数G90/G91 0 : G90; 1: G91char M0;/ 以标志的形式存放 M指令。存放形式同 G代码。char M1; / 根据 M指令的个数设置字符变量的个数。char T; / 以 B
6、CD码的形式存放本段换刀的刀具号。Char D;/ 以BCD码的形式存放刀具补偿的刀具半径值。在程序中一般有由若干个由这种结构组成的程序缓冲区组, 当前程序段译码后的数据信息存 入缓冲区组中空闲的一个。后续程序从该缓冲区中获取数据信息进行工作。下面以一个程序段为例来简要说明译码过程:N06 G90 G01 X200 Y300 F200 ;译码程序以程序段为单位进行解释,解释中,从零件程序存储区中逐一读出指令: 读出: N06 解释:将 06 转换为 BCD码 00000110BCD存入译码缓冲区中的block_num”G90 将译码缓冲区中的“ G0”的“ D6”位置“ 0”G01 将译码缓冲
7、区中的“ G0”的“ D1”位置“ 1X200将 200 转换为二进制码Y300将 300 转换为二进制码F200将 200 转换为二进制码11001000B 存入译码缓冲区中的“ COOR1”100101100B 存入译码缓冲区中的“ COOR2”11001000B 存入译码缓冲区中的“ F”程序段读完,译码结束。进入下一程序段的解释工作, 直至整个缓冲区组被填满, 然后,译码程序进入休眠状态。当缓冲区组中有若干个缓冲区置空, 系统将再次激活译码程序, 按此方式重复进行, 直到整 个加工程序解释完毕(读到 M02或 M30)为止。(一)刀 补处理(计算刀具中心轨迹)将零件轮廓变换为刀具中心轨
8、迹,并进行相应的坐标变换,主要工作是:( 1) 根 据绝对坐标( G90)或相对坐标( G91)计算零件轮廓的终点坐标值;( 2) 根 据刀具半径、刀具半径补偿的方向 (G41/G42)和零件轮廓的终点坐标值, 计算 刀具中心轨迹的终点坐标值。(3)根据本段和前段的关系,进行段间连续处理。 经刀补处理程序转换的数据存放在刀补缓冲区中,以供后续程序之用。刀补缓冲区与 译码缓冲区的结构相似。二) 速 度预处理主要功能是根据加工程序给定的进给速度, 计算在每个插补周期内的合成移动量。 供插 补程序使用。主要完成一下几步计算:( 1)计算本段总位移量 直线:计算合成位移量 L 圆弧:计算总角位移量 供
9、插补程序判断减速起点或终点判断之用。( 2)计算每个插补周期内的合成进给量 L=F t/60( m)式中, F进给速度值( mm/min); t 数控系统的插补周期( ms)。 经速度处理程序转换的数据存放在插补缓冲区中,以供插补程序之用。(三) 插 补计算 以系统规定的插补周期 t 定时运行,主要功能是: (1)根据操作面板上“进给修调”开关的设定值。计算本次插补周期的实际合成位移 量:L1=L* 修调值( 2) 将 L1 按插补的线形和本插补点所在的位置分解到各个进给轴,作为各进给轴的位置控制指令( xi , yi ) 。经插补计算后的数据存放在运行缓冲区中,以供位置控制程序之用。 (四)
10、 位 置控制位置控制数据转换流程如图 3-18 所示。主要进行各进给轴跟随误差 ( x3,y3)的计 算,并进行调节处理,输出速度控制指令(vx, vy)。位置控制完成一下几步计算: (1)计算新的位置指令坐标值:x 1 新=x1 旧+x1y 1 新=y1 旧+y1( 2)计算新的位置实际坐标值:x 2 新=x2 旧+x2 y2新 =y2 旧+y2(3)计算跟随误差: x3=x1新-x 2 新 y3=y1新-y 2 新 (4)计算速度指令值: v x=f ( x3); vy=f ( y3) 这里, f ( . )是位置调节环的控制算法。三 CNC 装置的软件系统特点(一) 多 任务性与并行处理
11、技术 任务可并行执行的程序在一个数据集合上的运行过程。CNC的功能可定义 CNC的任务。1 CNC装置的多任务性 CNC的任务:管理任务:程序管理、显示、诊断、人机交互、控制任务:译码、刀具补偿、速度预处理、插补运算、位置控制、 上述任务不是顺序执行的,而需要多个任务并行处理,如:( 1)当机床正在加工时(执行控制任务) ,CRT 要实时显示加工状态(管理任务) 。控 制与管理并行。(2) 当加工程序送入系统(输入)时, CRT实时显示输入内容(显示) 。管理任务之间 的并行。( 3)为了保证加工的连续性,译码、刀具补偿、速度处理、插补运算、位置控制必须 同时不间断的执行。控制任务之间的并行。
12、2基于并行处理的多任务调度技术并行处理是指软件系统在同一时刻或同一时间间隔内完成两个或两个以上任务处理的 方法。采用并行处理技术的目的是为了提高CNC装置资源的利用率和系统处理速度。 并行处理的实现方式与 CNC系统硬件结构密切相关,常采用以下方法:( 1)资源分时共享:对单 CPU装置。采用“分时”来实现多任务的并行处理。其方法 是:在一定的时间长度(常称时间片)内,根据各任务的实时性要求程度,规定它们 CPU 的时间,是它们按规定的顺序和规则分时共享系统的资源。解决各任务 CPU(资源)时间的分配原则。主要有两个问题: 其一,各任务何时占用 CPU,即任务的优先级分配问题。 其二,各任务占
13、用 CPU的时间长度,即时间片的分配问题。 单 CPU的 CNC装置中,通常采用循环调度和优先抢占调度相结合的方法来解决上述问题 的。图 3-19 是一个典型的多任务分时共享 CPU的时间分配图。循环调度:若干个任务(显示、译码、刀补、 I/O 、)在一个时间片内顺序轮流执行; 优先抢占调度:将任务按实时性要求的程度,分为不同的优先级,优先级别高的任务优 先执行(优先) ,优先级别高的任务可随时中断优先级别底的任务的运行(抢占) 。假定某 CNC装置软件将其功能仅分为三个任务:位置控制、插补运算和背景程序(包含 若干任务循环调度运行) 。位置控制优先级别最高,规定 4ms 执行一次,由定时中断
14、激活; 插补运算次之, 规定 8ms执行一次, 由定时中断激活;插补背景程序最低, 当位置控制和插 补运算都不执行时执行。 运行过程是:在初始化后,自动进入背景程序,轮流反复执行各子 任务。当位置控制和插补运算需要执行时,随时中断循环调度中运行的程序(背景程序) , 位置控制可随时中断插补运算。各任务运行占用CPU时间如图 3-19 (b)所示。可以看出:在任何时刻只有一个任务占用CPU;从一个时间片( 8 或 16ms)来看,CPU并行执行了三个任务。即资源分时共享的并行处理是宏观意义上的,微观上还是各个任 务顺序执行的。( 3) 并 发处理和流水处理:在多 CPU结构的 CNC装置中,根据
15、各任务间的关联程度, 可采用两种策略实现多任务并行处理。其一,如果任务之间的关联程度不高。则将各任务分别安排一个CPU,使其同时执行,这就是所谓的“并发处理” ;其二,如果各任务之间的关联程度较高,即一个任务的输出是另一任务的输入,则采 用流水处理的方法。 它是利用重复的资源, 将一个大任务分成若干个彼此关联的子任务 (如 将插补准备分为:译码、刀补处理、速度预处理三个子任务) ,然后按一定顺序安排每个资 源执行一个任务。 如:CPU1执行译码、 CPU2执行刀补处理、 CPU3执行速度预处理, t1 :CPU1 执行第一个程序段的译码; t2 :CPU2执行第一个程序段的刀补处理,同时CPU
16、1执行第二个程序段的译码; t3 : CPU3 执行第一个程序段的速度预处理并输出第一个程序段插补预处理 后的数据, 同时, CPU2执行第二个程序段的刀补处理, CPU1执行第三个程序段的译码, t4 : CPU3执行第二个程序段的速度预处理并输出第二个程序段插补预处理后的数据,同时,CPU2执行第三个程序段的刀补处理, CPU1执行第四个程序段的译码; 。这个处理过程与生产 线上分不同工序加工零件的流水作业一样。可以大大缩短两个程序段之间输出的间隔时间。 可以看出,在任何时刻均有两个或两个以上的任务在并发执行。流水处理的关键是时间重叠,以资源重复为代价换取时间上的重叠,以空间复杂性换 取时
17、间上的快速性。(二)实时性和优先抢占调度机制实时性: 指某任务的执行有严格的时间要求, 即必须在系统的规定时间内完成, 否则将 导致执行结果错误和系统故障。1实时性任务的分类从各任务对实时性要求的角度看,基本上可分为:强实时性任务:(1)实时突发性任务:特点是任务的发生具有随机性和突发性,是一种异步中断事件, 往往有很强的实时性要求。 如:故障中断 (急停、 机械限位、 硬件故障)、机床 PLC 中断。(2)实时周期性任务:任务是按一定的事件间隔发生的。如:插补运算、位置处理。 为保证加工精度和加工过程的连续性,这类任务的实时性是关键。这类任务,除系统故障外,不允许被其他任务中断。 弱实时性任
18、务:任务的实时性相对较弱,只需要在某一段时间内得以运行即可。在系统 设计时,安排在背景程序中或根据重要性设置为级别较低的优先级由调度程序进行合理 的调度。如:显示、加工程序编辑、插补预处理等。2优先抢占调度机制 为了满足 CNC装置实时任务的要求,系统的调度机制必须具有能根据外界的实时信息以 足够快的速度进行任务调度的能力。优先抢占调度机制使是系统具有这一能力的调度技术。 它是基于实时中断技术的任务调度机制。中断技术是计算机响应外部事件的一种处理技术, 特点是能按任务的重要程度和轻重缓急对其进行响应,而CPU也不必为其开销过多的时间。优先抢占调度机制有两个功能:优先调度: 在 CPU空闲时,
19、若同时有多个任务请求执行, 优先级别高的任务将优先执行。 抢占方式:在 CPU正在执行某任务时,若另一优先级更高的任务请求执行,CPU将立即终止正在执行的任务,转而响应优先级别更高的任务的请求。优先抢占调度机制是由硬件和软件共同实现的,硬件主要产生中断请求信号,由提供中 断功能的芯片和电路组成(中断管理芯片:8259;定时计数器: 8263、 8254)。软件主要完成:硬件芯片的初始化、任务优先级定义方式、任务切换处理(断点的保护与恢复、中断向 量的保持与恢复)等。四 CNC装置软件结构模式结构模式: 软件的组织管理方式,即任务的划分方式、任务调度机制、 任务间的信息交 换机制、系统集成方法。解决的问
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年初级会计职称全套模拟试题及答案解析
- 食堂燃气隐患排查考试题库及答案
- 2026年创业项目投融资咨询师职业技能等级认定题库
- 2026年西安理工大附中小升初摸底英语试卷含答案解析
- 危化项目三同时核查解读
- 英语(五年级上册)课件 -U4 L4 u-e
- 2025-2026年海洋生态系统功能测试卷
- 2025-2026年经济学考研微观经济学模拟试卷
- 2025-2026年洪水防御知识综合试卷
- 重庆青年职业技术学院招聘笔试真题及答案
- GB/T 15790-2026稻瘟病测报调查规范
- 《养老机构重大事故隐患判定标准》解读与分析
- 园林植物生长发育基本规律
- 2025上半年四川宜宾五粮液股份有限公司校园招聘拟人员笔试历年难易错考点试卷带答案解析
- 水生蔬菜种植技术
- 中医护理在妇科产后康复中的应用
- 幼儿园家园共育活动记录范例
- 感染性心内膜炎合并脑栓塞整体护理临床实践指南
- 苏州市安全生产专家管理办法
- 《中职生军训指导》01人民军队的发展历程和光荣传统
- 专利法考试题库及答案
评论
0/150
提交评论