1 导言
90年代以来,数控技能展开的一个重要趋势是数控体系的敞开化。现在,关于敞开式操控体系的研讨方兴米艾,全国都在抓住进行敞开式数控体系渠道规范和规范的研讨拟定以及相关产品的开发。敞开式数控体系答使用户依据需求自由挑选和装备规范的硬件和软件模块,完结体系积本式”的集成,或许在敞开渠道根底上开发特定的功用模块,构成合适需求的专用体系。敞开式数控体系具有如卜的根本特征:
互操作性:供给规范的数据格式、通讯及交互机制;
可移植性:体系可运转不同的软硬件渠道之上;
可扩充性:答使用户对体系进行扩展或削减;
互换性:体系的各功用模块能够依据需求进行替换。
敞开式数控体系要求不依赖于特定的软硬件渠道,因此挑选通用的敞开体系渠道是完结数控体系敞开化的重要条件。工业PC以其成热的技能和安稳的功用已经在操控范畴得到了泛使用,PC机敞开的体系结构也为数控体系供给了一个很好的敞开的硬件渠道,在工业PC的根底上进行数控体系的开发已经成为我们的共同,但是在PC渠道上,数控体系的多使命特性和实时性要求却约束了通用操作体系如DOS, Windows等在数控体系中的使用,而在专用实时操作体系上,尽管开发数控体系比较便利,但价格昂贵,并且不利于完结数控体系的敞开化。近年来,跟着Linux操作体系的迅猛展开,它的许多优异的特性得到表现,这促进了RT-Linux Real Time-Linux)的呈现,这样数控体系就能够建立在实时Linux根底之上并且保存Linux绝大部分好的特色,安稳性相当好,这给现代数控机床的网络化、敞开化供给了条件。
2 国内外体系的研讨现状与趋势
近几年I日_界发达国家纷繁采纳办法,进行敞开式数控(ONC: Open Numerical Control)体系的开发和研讨,世界上的许多操控器生产商也纷繁推出自己的敞开式操控体系,如Hewlett-Packard的OAC500以及Delat Tau公司的PMAC-NC等等。现在世界上具有权威性敞开式结构操控器的规范规范卞要有三种:
(1)OMAC(Open Modular Architecture Controller):由美国克莱斯勒、招特和通用三大汽车公司在NGC (NextGeneration Controller,1989年)的根底上联合提出的。因为OMAC的成员是操控器的用户而不是开发商,然后也就决议了它产品化、实用化脚步不可能很快。事实上美国工业界以为OMAC是一种规划理念,而不是一种操控器的详细规范,其主旨是“Buy Anywhere, Use Anywhere”。使用OMAC所界说的规范API能够完结节“plug & play”的功用,只须规划其详细的完结办法即可。从OMAC提出的全体式结构剖析可知,尽管其灵话性较高,但是因为其过火注重功用的分类而非资源的整合,导致其体系独立性卜降,并且保护较困难。
(2)OSEC (Open System Environment for Controller):由日本东芝机器公司、丰田机器厂和Mazak公司三家机床制作商和IBM、三菱电子及SML信息体系公司于1994年一起提出的。其意图是开发依据PC机渠道的、具有高功用价格比的敞开式体系结构的新一代数控体系,以习惯敏捷改变的市场需求。在硬件方面,OSEC选用PC+操控卡的结构,有利于层次化、模块化、灵话装备的完结,能够充分使用现有PC机资源,然后有力地缩短产品的研制周期,具有较强的可操作性。能够说,OSEC选用的是一种较实际和折中的办法,所以它的体系结构仅仅局限于数控体系的直接描绘,习惯性不行强。
(3)OSACA(Open System Architecture for Conhol withinAutomation):由欧盟于1992年提出的。OSACA的方针之一,是使自己成为自动化范畴的通用国际规范,故开端它就将研讨规模涵盖了整个自动化范畴。OSACA学习ISO的OSI参阅模型,经过对操控体系的详细剖析,提出分层渠道+结构功用单元的架构。该规范有利于完结计算机硬件的独立性和与操作体系的无关性,但是关于数控中很多存在的机电设备的独立性的处理并不彻底。一起,该方案因为过于巨大,关于参与者要求过高,一向展开较慢。上述三种规范规范至今还未有彻底成热的产品推向市场,而规范自身还在不断的改善与完善之中,且三者之间也彼此学习。
相关于酉方国家的企业来说,我国企业关于数控方面的研讨起步较晚,尽答现在国内已具有敞开性操控体系华中I型、中华I型、航人I型和流人I型,但大多是建立在DOS操作体系渠道上或Windows操作渠道,以及其他一些自行开发的专用实时操作体系之上,从数控体系展开的趋势来看,它们还不具有敞开式数控体系的本质特征。各体系所选用的体系结构并不共同,仍是自成体系,彼此之间缺少兼容性和互换性,各体系软硬件不具有可移植性和互操作性。
3 实时Linux操作体系的结构与完结原理
和Windows相同,Linux自身不是一个实时操作体系,它不适用于实时性强的工业操控环境。但Linux是自由软件,它的源代码敞开,这使得Linux内核在保存自身大部分功用的条件卜,可被修正成为一个实时操作体系。到现在为止,全球在Linux渠道下开发通用实时体系首要有2家:最旱的是美国新墨西哥理工学院开发的Linux实时内核,即RT-Linux,另一个是意大利米兰DIAPM在RT-Linux的根底上开发的依据Linux渠道的实时使用接口,即RTAI。
RT-Linux操作体系的根本作业原理是:经过保存Linux根本内核完结Linux操作体系供给的根本功用;防止大规模的结构改造,仅用较小的价值从头规划一个实时内核,以完结强实时性。因此可使用Linux体系中比如中文图形环境、TCP/IP网络等丰厚的编程资源,一起完结包含底层使命创立、底层使命行列答理、中止使命设备、中止使命运转等数控设备所需的悉数实时功用。
实时Linux体系中止可区分为两组:一组由惯例Linux内核操控,另一组则由实时内核操控,一起设置使中止恳求首先从定向到实时内核中并加以过滤;假如该中止实时是实时内核中止,则由实时中止处理例程持续履行;假如是惯例Linux内核中止则设置标志位等候处理,仅当没有实时中止被履行时,才转向惯例Linux中止处理例程。经过这种办法,使实时内核能够随时中止惯例Linux操作体系以履行要害实时使命。此刻惯例Linux内核作为实时内核的一个最低优先级运转,当有任何更高档的实时使命恳求处理时,就掠夺惯例Linux操作体系的运转权,而转入相应的实时使命处理程序。在极点状况卜,体系能够堵截实时内核与惯例Linux操作体系的联络而优先确保体系的强实时性。
RT-Linux供给了两种通讯机制:一种是FIFO,另一种是同享内存。非实时使用程序和进程经过FIFO和同享内存拜访数据,然后把数据放在另一个FIFO和同享内存中,供RT-Linux使用程序拜访,RT-Linux操作体系结构及通讯如图1所示。
图1RT-Linux操作体系结构图
4 依据Linux的敞开式数控体系软件结构
依据Linux的敞开式数控体系契合《械设备一敞开式数控体系一总则》GB/T 18759.1-2002)的国家规范,达到了总则对数控体系的敞开程度界说了第二个层次:操控设备在清晰固定的拓扑结构卜答应替换、添加NC中心中的特定模块以满意用户的特殊要求。
(1)ONC体系软件全体构架
依据总则,数控软件可分为根底软件渠道、使用渠道与使用程序三个层次。体系软件将供给实时多使命API、文件体系、通用网络API、各类设备驱动程序API等接口。使用渠道除了包含离散点vo操控API、传感器API,方位操控器API等接口外,还能够集成用户更详细系软件渠道供给的API自界说的功用组件接口。使用程序这一层含有进程操控、人机界面及体系集成与装备支撑环境等三部分。进程操控包含G代码即使其DNC组件及PLC组件。人机界面部分包含状况泉示、文本修改器、MDI组件、自确诊组成、网络通讯组成、数据通讯操作、通用菜单等组成。体系集成与装备支撑环境给用户供给一个便利易用的数控体系装备与设备环境。依据RT-Linux的数控体系软件结构如图2所示,其使用程序散布在实时和非实时两个区域。实时使命是一种可由多个线程构成的内核使命,作业在操作体系中心态的实时区,调用实时中心供给POSIX Poitahle Operating System Interface}可移植操作体系界面)实时规范界面函数以及扩展接口服务来取得所需的实时功用。因为实时使命需使用的体系资源有限,且要求作业速度快,往往进行一邺简略的实时处理。而坐落非实时区的用户进程可使用惯例Linux操作体系供给的很多资源,例如:网络功用(Network Function)、图形功用(Graphics Function),窗口体系(Windows System)、数据剖析程序包((Data Analysis Packages), Linux设备驱动程序(Linux Device Divers)以及规范的POSIX API等。
图2 依据RT-Linux的敞开式数控体系软件结构图
(2)ONC体系的软件模块区分
ONC体系是全模块化的体系结构,模块组成具有互换性、伸缩性、互操作性和可移植性。本研讨在对现在国内外若干数控体系和数控机床用户的需求进行全面剖析的根底上,在使用程序层上又将数控体系软件区分为以卜几个根本的功用模块:伺服操控模块、人机交互界面模块、代码解说模块、插补模块、PLC操控模块I/O操控模块)、通讯答理模块和状况监控模块,各模块以界面的办法向用户敞开,经过接口参数和界面信息的提示,用户可把握模块的发动、完毕和运作进程。不同模块的内部为黑箱封装,外部接口敞开,并在此根底上完结新体系的构建,满意了ONC体系的要求。
①伺服操控模块:在由I/O信弓及插补运算得到的粗插补信息条件卜,操控机床履行机构完结精插补,按NC指令指定的途径和速度运动。
②人机交互界面模块:此模块首要完结体系运转前和运转中的参数设定。如菜单的答理、程序的修改、参数的设定和文件答理等作业。
③代码解说模块:该模块首要依据输入的数控加工程序的语法规矩对用户编写的零件程序进行语法、语义查看,并进行译码作业,将数控源代码中给出的各种加工信息进行别离提取,变成各种状况和数据,再将处理的成果存入缓冲区,等候其它模块的调用。
④插补模块:担任数学预处理、加减速的操控、插
补、结尾判别等作业,向方位操控器输出经过轨道运算后
的进给量。
⑤ PLC操控模块I/O操控模块):该模块首要完结机床的辅佐功用和机床的逻辑操控,一起也完结机床报警犯错、紧迫中止等突发事件的处理。
⑥通讯办理模块:完结体系间的实时通讯和网络通讯的答理。
⑦状况监控模块:监控主轴转速、压力、切削力等。
本文依照敞开式操控体系的层次区分,把数控体系的使用程序软件模块分为使用单元和操控单元两大部分,如图3所示。使用中一元向用户供给了图形化的使用软件环境和规范的体系功用函数,包含操作界面操作菜单,人卜标泉示、参数设置、文件答理、加工编程等)。操控单元相当于一个高效的NC-PLC内核,完结根本的数控功用,包含译码、数学预处理、插补、I/O处理、实时状况监控等。按使命实时性要求的不同,操控单元又区分为实时使命和非实时使命,关于实时性要求不高的使命如编译、预处理、状况监控等在非实时域履行,而关于实时性要求比较高的使命如插补、I/O处理等则在实时域履行。RT-Linux对实时使命和非实时使命按优先级一致调度。
图3 敞开式数控体系的软件模块结构
5 完毕语
现在,依据RT-Linux的敞开式数控体系渠道以其优秀的实时性、敞开性和安稳性在数操控造范畴赢得越来越多的注重,尽管其研讨起步较晚,但其远景非常看好并且发展敏捷,假如能及时展开依据RT-Linux的敞开式计算机数控体系的研讨,我国数控技能水平必将得到全面的进步。