
CNC系统的软件结构实用教案.ppt
34页CNC装置的许多控制任务,如零件程序的输入与译码、刀具半径的补偿、插补运算、位置控制以及精度补偿等从逻辑上讲,这些任务可看成是一个个的功能模块, 模块之间存在耦合关系;从时间上来讲,各功能模块之间存在一个时序配合在许多情况下,某些功能模块必须同时运行(yùnxíng), 同时运行(yùnxíng)的模块是由具体的加工控制要求所决定例如,在加工零件的同时,要求CNC装置能显示其工作状态,如零件程序的执行过程、参数变化和刀具运动轨迹等,以方便操作者 这时,在控制软件运行(yùnxíng)时管理软件中的显示模块也必须同时运行(yùnxíng);在控制软件运行(yùnxíng)过程中,其本身的一些功能也必须同时运行(yùnxíng)为使刀具运行(yùnxíng)连续进行, 在各程序段之间无停顿, 则要求译码、刀具补偿和速度处理必须与插补同时进行CNC装置各功能模块之间的并行处理关系如图3-12所示,具有并行处理的两模块之间用双向箭头表示 第1页/共33页第一页,共34页图 3-12 并行处理关系(guān xì) 第2页/共33页第二页,共34页3.2.2 CNC3.2.2 CNC系统软件的结构特点 1 1. CNC CNC装置软件、 硬件的界面 CNCCNC装置的软件结构取决于软件和硬件的分工,也取决于软件本身的工作性质。
硬件为软件运行(yùnxíng)(yùnxíng)提供了支持环境软件和硬件在逻辑上是等价的,由硬件能完成的工作原则上也可以由软件完成硬件处理速度快, 但造价高, 软件设计灵活, 适应性强,但处理速度慢所以,在CNCCNC装置中,软、硬件的分工是由性价比决定的 第3页/共33页第三页,共34页 在现代CNC装置中,软件和硬件的界面关系(guān xì)是固定的 早期的NC装置中,数控系统的全部功能都由硬件来实现,随着计算机技术的发展,计算机参与了数控系统的工作,构成了计算机数控(CNC)系统,数控工作便由软件来完成随着产品、功能要求的不同,软件和硬件界面是不一样的,三种典型CNC装置的软、 硬件界面关系(guān xì)如图3-13所示 第4页/共33页第四页,共34页图 3-13 三种典型的软、 硬件界面(jièmiàn)关系 第5页/共33页第五页,共34页 2. 系统软件的内容及结构类型 CNC系统是一个专用的实时多任务系统,CNC装置通常作为一个独立的过程控制单元用于工业自动化生产中 因此,它的系统软件包括(bāokuò)管理和控制两大部分,如图3-14所示。
管理部分包括(bāokuò)输入、I/O处理、通信、显示、诊断以及加工程序的编制管理等程序; 控制部分包括(bāokuò)译码、刀具补偿、速度处理、 插补和位置控制等软件数控的基本功能由这些功能子程序实现 这是任何一个计算机数控系统所必须具备的,功能增加, 自程序就增加 第6页/共33页第六页,共34页图 3-14 CNC装置软件任务(rèn wu)分解 第7页/共33页第七页,共34页 不同的系统软件结构中对这些子程序的安排方式不同, 管理方式亦不同在单微处理器数控系统中,常采用前后台型的软件结构和中断型的软件结构在多微处理器数控系统中将微处理器作为一个功能单元(dānyuán)利用上面的思想构成相应的软件结构类型,各个CPU分别承担一定的任务,它们之间的通信依靠共享总线和共享存储器进行协调在子系统较多时,也可采用相互通信的方法无论何种类型的结构,CNC装置的软件结构都具有多任务并行处理和多重实时中断的特点 第8页/共33页第八页,共34页 3. 多任务并行处理 1) CNC装置的多任务性 数控加工时,CNC装置要完成许多任务,图3-14反映了它的多任务性在多数情况下,管理(guǎnlǐ)和控制的某些工作必须同时进行。
例如,为使操作人员能及时来了解CNC装置的工作状态,显示模块必须与控制软件同时运行;当在插补加工运行时,管理(guǎnlǐ)软件中的零件程序输入模块必须与控制软件同时运行而当控制软件运行时,其本身的一些处理模块也必须同时运行,例如,为了保证加工过程的连续性,即刀具在各程序之间不停刀,译码、刀具补偿和速度处理模块必须与插补模块同时运行,而插补程序又必须与位置控制程序同时进行 第9页/共33页第九页,共34页 2) 并行处理 并行处理是指计算机在同一时刻或同一时间间隔内完成两种或两种以上性质相同或不同的工作 并行处理的优点能提高运行速度在单CPU的CNC装置中,主要采用(cǎiyòng)CPU分时共享的原则来解决多任务的同时运行各任务何时占用CPU及各任务占用CPU时间的长短,是首先要解决的两个时间分配问题 在CNC装置中,各任务占用CPU使用循环轮流和中断优先相结合的办法来解决图3-15是一个典型的CNC装置各任务分享CPU的时间分配图 第10页/共33页第十页,共34页图3-15 CNC装置分时共享CPU的时间(shíjiān)分配 第11页/共33页第十一页,共34页 在完成初始化任务后,系统自动进入时间(shíjiān)分配循环中, 在循环中依次轮流处理各任务。
而对系统中一些实时性很强的任务则按优先级排队,分别处于不同中断优先级上作为环外任务,环外任务可以随时中断环内任务的执行每个任务允许占用CPU的时间(shíjiān)受到一定的限制,对于某些占有CPU时间(shíjiān)较多的任务,如插补准备(包括译码、刀具半径补偿和速度处理等)可以在其中的某些地方设置断点,当程序运行到断点处时,自动让出CPU, 等到下一个运行时间(shíjiān)里自动跳到断点处继续执行 第12页/共33页第十二页,共34页 4. 实时中断处理 CNC系统软件结构的另一个特点是实时中断处理CNC系统程序以零件加工为对象,每个程序有许多子程序,它们按预定的顺序反复执行,各步骤间关系十分密切(mìqiè), 有许多子程序实时性很强,这就决定了中断成为整个系统不可少的重要组成部分CNC系统的中断管理主要靠硬件完成, 而系统的终端结构决定了软件结构 1) CNC系统的中断类型 CNC系统有外部中断、 内部定时中断、 硬件故障中断和程序性中断等几种类型 第13页/共33页第十三页,共34页 (1) 外部中断主要有光电阅读机中断、外部监控中断(如紧急停、量仪到位等)和键盘、操作面板输入中断。
前两种中断的实时性要求很高,将它们放在较高的优先级上 (2) 内部定时中断主要有插补周期定时中断和位置采样定时中断在有些系统中这两种定时中断合二为一但在处理时,总是先处理位置控制, 然后处理插补运算 (3) 硬件故障中断是各种硬件故障检测(jiǎn cè)装置发出的中断 如存储器出错、定时器出错、插补运算超时等 (4) 程序性中断是程序出现的异常情况的报警中断 如各种溢出、除零等 第14页/共33页第十四页,共34页 2) CNC系统的中断结构模式 在前后台软件结构中,前台程序是一个中断服务程序,完成全部的实时功能 后台(背景)程序是一个循环(xúnhuán)运行程序, 管理软件和插补准备在这里完成, 后台程序运行中,实时中断程序不断插入,与后台程序相配合, 共同完成零件加工任务 在中断型软件结构中,其软件结构的特点除了初始化程序之外,整个系统软件的各种任务模块分别安排在不同级别的中断服务程序中,整个软件就是一个大的中断系统其管理的功能主要通过各级中断服务程序之间的相互通信来解决 第15页/共33页第十五页,共34页3.2.3 CNC系统软件(xì tǒnɡ ruǎn jiàn)的结构模式 1. 前后台型结构 在前后台型结构的CNC装置中,整个系统分为两大部分, 即前台程序和后台程序。
前台程序是一个实时中断服务程序, 几乎承担了全部的实时功能(如插补、位置控制、机床相关逻辑和监控(jiān kònɡ)等),实现与机床动作直接相关的功能后台程序是一个循环执行程序,一些实时性要求不高的功能,如输入译码、数据处理等插补准备工作和管理程序等均由后台程序承担, 后台程序又称背景程序 第16页/共33页第十六页,共34页 在后台程序循环运行的过程中,前台的实时中断程序不停地定时插入,二者密切配合,共同完成零件的加工任务如图3-15所示,程序一经启动,经过一段初始化程序后便进入背景(后台)程序循环 同时开放定时中断,每隔一定时间间隔发生一次中断,执行完毕后返回背景程序,如此循环往复, 共同完成数控的全部功能 前后台型软件结构中的信息流动过程如图3-16所示零件程序段进入系统后,经过图中的流动处理,输出运动轨迹(guǐjì)信息和辅助信息 第17页/共33页第十七页,共34页图 3-16 前后(qiánhòu)台型软件结构中的信息流 第18页/共33页第十八页,共34页 1) 背景程序 背景程序的主要(zhǔyào)功能是进行插补前的准备和任务的管理调度它一般由三个主要(zhǔyào)服务组成,为键盘、单段、自动和手动四种工作方式服务,如图3-17所示。
各服务方式的功能见表3-1 第19页/共33页第十九页,共34页图 3-17 背景(bèijǐng)程序结构 第20页/共33页第二十页,共34页表3-1 3-1 背景(bèijǐng)(bèijǐng)程序四种工作方式的功能 第21页/共33页第二十一页,共34页 加工工作方式在背景程序中处于主导地位在操作前的准备工作(如由键盘方式调零件程序、由手动方式使刀架回到机床(jīchuáng)原点)完成后,一般便进入加工方式在加工工作方式下, 背景程序要完成程序段的读入、译码和数据处理(如刀具补偿)等插补前的准备工作,如此逐个程序段地进行处理,直到整个零件程序执行完毕为止 自动循环工作方式如图 3-18 所示, 在正常情况下,背景程序在1→2→3→4中循环 第22页/共33页第二十二页,共34页图3-18 自动循环工作(gōngzuò)方式 第23页/共33页第二十三页,共34页图3-19 实时(shí shí)中断服务程序流程 第24页/共33页第二十四页,共34页 2) 实时中断服务程序 实时中断服务程序是系统的核心实时控制的任务包括位置伺服、面板扫描、PLC控制、实时诊断和插补。
在实时中断服务程序中,各种(ɡè zhǒnɡ)程序优先级排队,按时间先后顺序执行每次中断有严格的最大运行时间限制, 实时中断服务程序流程如图3-19所示 第25页/共33页第二十五页,共34页 2. 中断型结构 中断型结构的系统软件除初始化程序之外,将CNC的各种功能模块分别安排在不同级别的中断服务程序中,然后由中断管理系统(由软件和硬件组成)对各级中断服务程序实施调度(diàodù)管理也就是说,所有功能子程序均安排成级别不同的中断程序,整个软件就是一个大的中断系统,其管理功能通过各级中断程序之间的相互通信来解决 各中断服务程序的优先级别与其作用和执行时间密切相关 级别高的中断程序可以打断级别低的中断程序 优先级及其功能见表3-2 第26页/共33页第二十六页,共34页表3-2 3-2 中断(zhōngduàn)(zhōngduàn)服务程序的优先级及其功能 第27页/共33页第二十七页,共34页 中断服务程序的中断有两种来源:外部设备产生的中断请求信号, 称为硬件中断(如第0、1、4、6、7、8、9、10级); 另一种是由程序产生的中断信号,称为软件中断,这是由2 ms 的实时时钟在软件中分频得出的(如第2、3、5级)。
硬件中断请求又称为外中断,要求(yāoqiú)受中断控制器(如Intel8259A)的统一管理,由中断控制器进行优先排队和镶嵌处理;而软件中断是由中断指令产生的中断,每出现4次2 ms时钟中断时,产生第5级8 ms软件中断,每出现8次2 ms时钟中断时,分别产生第3级和第2级16 ms软件中断, 各软件中断的优先顺序由程序决定因为软件中断有既不使用中断控制器也不能被屏蔽的特点,因此为了将软件中断的优先嵌入硬件中断的优先级中, 在软件中断服务程序的开始处,要通过改变屏蔽优先级比其低的中断, 软件中断返回前, 再恢复初始屏蔽状态 第28页/共33页第二十八页,共34页 3.功能模块软件结构 当前,为实现数控系统中的实时性和并行性的任务,越来越多地采用多微处理器结构,从而使数控装置的功能进一步增强,结构更加紧凑,更适合(shìhé)于多轴控制、高速进给速度、高精度和高效率的数控系统的要求 多微处理器CNC装置多采用模块化结构,每个微处理器分管各自的任务,形成特定的功能模块相应的软件也模块化, 形成功能模块软件结构,固化在对应的硬件功能模块中各功能模块之间有明确的软、硬件接口 第29页/共33页第二十九页,共34页。
图3-20所示的功能模块软件结构主要由三大模块组成, 即人机通信(MMC)模块、数控通道(NCK)模块和可编程控制器(PLC)模块每个模块都有一个微处理器系统, 三者可以互相(hù xiāng)通信 各模块的功能见表3-3 第30页/共33页第三十页,共34页图3-20 功能模块软件结构第31页/共33页第三十一页,共34页表3-3 3-3 三大(sān dà)(sān dà)模块的功能 第32页/共33页第三十二页,共34页谢谢您的观看(guānkàn)!第33页/共33页第三十三页,共34页内容(nèiróng)总结CNC装置的许多控制任务,如零件程序的输入与译码、刀具半径的补偿、插补运算、位置控制以及精度补偿等在现代CNC装置中,软件和硬件的界面关系是固定的无论何种类型的结构,CNC装置的软件结构都具有多任务并行处理和多重实时中断的特点前两种中断的实时性要求很高,将它们放在较高的优先级上其管理的功能主要通过各级中断服务程序之间的相互(xiānghù)通信来解决背景程序的主要功能是进行插补前的准备和任务的管理调度谢谢您的观看第三十四页,共34页。





![河南新冠肺炎文件-豫建科[2020]63号+豫建科〔2019〕282号](http://img.jinchutou.com/static_www/Images/s.gif)






