基于实时Linux的激光切割机数控系统设计
2018-10-19蒋立洲朱昊昱李成明
蒋立洲 朱昊昱 李成明
【摘 要】以实时Linux为软件平台,工业PC机为硬件平台,以C语言、GNOME/GTK+库、GCC编译器等为主要开发工具,在激光切割机的基础上进行了数控系统的研究,实现实时系统控制下的激光切割。
【关键词】Linux;数控系统;激光切割
一、引言
数控系统是数控加工生产的关键因素,数控系统的实时性、稳定性对影响着数控产品的性能起着至关重要的作用。Linux操作系统是一个多用户、多任务、支持多线程和多CPU的操作系统,能够实现实时多任务功能,具有源代码对外开放、稳定性极高、内存管理和网络功能强大等特性,在原有的基础上进行改良加工能够较好的满足数控系统的平台需求。
二、工作原理
(一)激光切割原理
激光切割是利用经过聚焦的高功率激光束照射工件,使被照射处的材料迅速熔化、气化、烧蚀等,同时借助于与光束同轴的高速气流,吹除熔融物质,割开工件的一种热切割方法。
(二)系统工作原理
首先对已有的Linux系统择取所需功能,再利用RTLinux实时模块对该系统进行实时化处理,完成对数控加工过程的速度控制、插补运算、位置控制、实时状态反馈等功能。利用C语言和编译器设计用户需要的人机界面,包括对数控程序的编程、译码,数控加工的状态显示、参数设置、仿真模拟等。
实时操作系统一般具有如下基本特征:支持多线程和可抢先调度;有可预测的线程同步机制;有优先级继承机制;操作系统的行为能够被用户了解和及时反馈。
(三)过程实现
通过分析激光切割机数控系统基本功能,采用了基于RT-Linux的数控系统平台,对切割机数控系统的硬件结构和软件进行了设计,并对系统进行了多任务执行分析和数据转换精准度分析,为激光切割机的数控系统的各功能模块之间协调工作、高效工作打下基础。
1.硬件设计
系统的硬件平台为普通PC或者工业PC,本文采用工业PC,数控系统与伺服系统及机床辅助机构的接口采用一块多功能接口卡,通过总线等连接。
2.软件系统设计
(1)基于Linux的数控系统开发系统设计
RTLinux支持两个域:实时域和非实时域,实时域任务以内核线程形式实现,非实时域任务以用户进程或用户线程的形式实现。利用 RTLinux提供的基于优先级的抢占式多任务调度机制,以及丰富的任务通信机制,可以方便地实现数控系统各任务的调度和通信。
RT-Linux的新实时内核采用虚拟中断方案,将系统中断划分为两组:一组由常规Linux内核控制,另一组则由实时内核控制,同时设置8259芯片相应中断级的屏蔽位,使中断请求首先重定向到实时内核中并加以过滤。如果该中断是实时内核中断,则由实时中断处理处继续执行;如果是常规Linux内核中断则设置标志位等待处理。通过这种方法,使实时内核可以随时中断常规Linux操作系统来执行重要的实时任务,来实现中断优先级的判别。此时常规Linux内核作为实时内核的一个最低优先级任务予以管理,当有其他更高优先级的实时任务来请求处理时,就中断常规Linux操作系统的运行继而转入相应的高优先级实时任务处理程序。
(2)系统各层间的通信设计
在经过了对数控系统功能以及实时多任务间数据高级级别关系的分析,结合Linux+RTLinux平台上实时应用软件的结构特点,把系统分为三层:人机界面层、模块管理层和命令控制层,每一层又分为若干个模块及子模块,同层模块相互配合、先后执行命令来共同完成该层的任务。
一、模块管理层与人机界面层的通信
模塊管理层与人机界面层的通信包括如下两个方面:
(1)用户在人机交互的图形界面下的操作信息及相关数据需要传递到管理层中作相应处理。
(2)系统运行过程中的检测到的实时状态信息需要传递到人机界面层显示给用户。
二、模块管理层与命令控制层的通信
模块管理层与命令控制层需要进行多方面通信:
命令控制层运行时所需的各种参数是可配置的,包括位置参数、速度加速度参数等。
(1)模块管理层发往命令控制层的控制命令,主要有单轴控制启动,G代码运行等。
(2)模块管理层发往命令控制层的控制数据,控制数据有相对应的控制命令,命令控制层根据控制命令取相应的控制数据进行控制,控制数据必须先于控制命令发往控制层。
(3)命令控制层反馈到模块管理层的数据,这些数据主要包括:各轴在参考系中的位置参数,软PLC输入输出的数据显示,以及出现故障时的出错报告等。
四、研究意义
一方面实时控制能够提高数控系统的整体性能,提高工作效率,另一方面系统的稳定性会可以降低故障的可能性。除此之外,基于PC的数控系统,可降低系统成本,增加系统的开放性、灵活性和通用性。
【参考文献】
[1]吕思伟,等.实时Linux下数控系统的开发研究[J],组合机床与自动化加工技术,2002,(2):27-30
[2]林树忠,孙会来.激光加工技术的应用及发展[J].河北工业大学学报,2004,7(2):77~82.
[3]巫德彬,尹显明.基于PC的开放式数控系统[J].机械工程与自动化,2006,12(6):171~172.
[4]王永章.机床的数字控制技术[M].哈尔滨: 哈尔滨工业大学出版社, 1999.4
[5]王小辉,雷丽萍,李文斌等.基于 PC 的数控系统及其控制任务调度的实现[J].机械工程与自动化,2005, 8(4): 65~67.