首页 理论教育 CNC系统的软件结构及特点分析

CNC系统的软件结构及特点分析

时间:2023-06-28 理论教育 版权反馈
【摘要】:CNC 系统是一个实时多任务系统,由于CNC 装置本身就是一台计算机,所以在CNC 系统的控制软件设计中,采用了许多计算机软件结构设计的思想和技术。例如,为使操作人员能及时了解CNC 装置的工作状态,管理软件中的显示模块必须与控制软件中其他模块同时运行;当在插补加工运行时,管理软件中的零件程序输入模块必须与控制软件中的相关模块同时运行。7 级中断服务程序7 级中断服务程序主要处理CNC 系统所读到的字符。

CNC系统的软件结构及特点分析

CNC 系统是一个实时多任务系统,由于CNC 装置本身就是一台计算机,所以在CNC 系统的控制软件设计中,采用了许多计算机软件结构设计的思想和技术。这里主要介绍多任务并行处理、前后台型软件结构和中断型软件结构。

1.多任务并行处理

在多数情况下,CNC 装置进行数控加工时,要完成多种任务,其管理软件和控制软件的某些工作必须同时进行。例如,为使操作人员能及时了解CNC 装置的工作状态,管理软件中的显示模块必须与控制软件中其他模块同时运行;当在插补加工运行时,管理软件中的零件程序输入模块必须与控制软件中的相关模块同时运行。而当控制软件运行时,其本身的一些处理模块也必须同时运行。又如,为了保证加工过程的连续性,即刀具在各程序段之间不停刀,译码、刀具补偿和速度控制模块必须与插补模块同时运行,而插补控制模块又必须与位置控制模块同时进行。为此,数控加工的多任务常采用并行处理的方式来实现,即计算机在同一时刻或同一时间间隔内完成两种或两种以上性质相同或不相同的工作。

并行处理方法可分为资源共享和时间重叠两种方法。资源共享是根据“分时共享”的原则,使多个用户按时间顺序使用同一套设备。时间重叠是根据流水线处理技术,使多个处理过程在时间上相互错开,轮流使用同一套设备的几个部分。

图2-3-2 所示为各模块间多任务的并行处理。图中双箭头表示两个模块之间存在并行处理关系。

图2-3-2 多任务的并行处理

2.前后台型软件结构

前后台型软件结构适用于单微处理机CNC 装置。前台程序是一个实时中断服务程序,承担了几乎全部的实时功能,实现与机床动作直接相关的功能,如插补、位置控制、机床相关逻辑和监控等。后台程序是一个循环执行程序,承担一些实时性要求不高的功能,如输入、译码、数据处理等插补准备工作,管理程序一般也在后台运行。在后台程序循环运行的过程中,前台的实时中断程序不断地定时插入,二者密切配合,共同完成零件的加工任务。如图2-3-3 所示,程序一经启动,经过一段初始化程序后便进入后台程序循环,同时开放定时中断,每隔一定时间间隔发生一次中断,执行一次实时中断服务程序,执行完毕后返回后台程序。如此循环往复,完成数控加工的全部功能。

图2-3-3 前后台型软件结构

3.中断型软件结构

中断型软件结构是一个统筹全系统的中断系统。在执行完初始化程序之后,整个系统软件的各种任务模块分别安排在不同级别的中断程序中,系统通过响应不同的中断来执行相应的中断处理程序,完成数控加工的各种功能。其管理功能主要通过各级中断服务程序之间的相互通信来解决。

中断优先级分为0~7 共8 级,0 级最低,7 级最高,除了第4 级为硬件中断完成报警功能外,其余均为软件中断。

(1)0 级中断程序(www.xing528.com)

0 级中断程序即为初始化程序。电源接通后,初始化程序就开始工作,对RAM (随机存储器)中作为工作寄存器的单元设置初始状态,并为数控加工正常运行而设置一些所需的初始状态。

(2)1 级中断程序

1 级中断程序是主控程序。当没有其他中断时,1 级程序始终循环运行。其主要完成CRT 的显示控制和ROM (只读存储器)的奇偶校验

(3)2 级中断程序

2 级中断程序主要是对系统各种不同的工作方式的处理。数控系统的工作方式有自动方式(AUTO)、手动方式(MDI)、点动方式(STEP)、手轮方式(JOG)等。系统在AUTO 方式下可以连续控制刀具进行零件轮廓加工和进行译码与插补准备处理;在MDI 方式下除了可以手动输入各种参数和偏移数据外,还可以手动输入一个程序段的零件程序,并单段执行它。

(4)3 级中断服务程序

3 级中断服务程序主要完成CNC 装置的输入/输出处理,控制那些用于PLC 的开关量信号,如对键盘的扫描处理。将机床的辅助功能,如主轴正/反转(M03、M04)、切削液的开/关(M08/M09)、主轴转速(S 指令)、换刀(M06 及T 指令)等控制信号输出给PLC,而后由PLC 处理后控制机床的动作。

(5)4 级中断优先级

4 级为硬件中断,完成报警功能。

(6)5 级中断服务程序

5 级中断服务程序主要完成活补运算、坐标位置修正、间隙补偿和加/减速控制,该中断程序每隔8 ms 就执行一次。插补运算包括直线插补和圆弧插补、手动定位插补、自动定位和暂停插补等。

(7)6 级中断服务程序

6 级中断服务程序主要通过软件定时方法来实现2 级和3 级的16 ms 定时中断,并使其相隔8 ms。而且,当2 级或3 级中断还没有返回时,就不再发出新的中断请求信号。

(8)7 级中断服务程序

7 级中断服务程序主要处理CNC 系统所读到的字符。通常是把读入的字符输入缓冲存储区,然后再送到零件程序区。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈