首页>>科技 >>内容

开放式数控装置,什么是开放式数控系统

发布时间:2023-11-28 21:58:10编辑:温柔的背包来源:

很多朋友对开放式数控装置,什么是开放式数控系统不是很了解,每日小编刚好整理了这方面的知识,今天就来带大家一探究竟。

开放式数控装置,什么是开放式数控系统

改编自:《新一代智能化数控系统》(作者:陈、周会成)“1 .开放式数控系统的定义和属性”1)开放式数控系统的定义。

目前,开放式数控系统还没有公认的统一定义。IEEE将其定义为“一个开放的数控系统应该提供这样一种能力,即来自不同制造商并运行在不同操作平台上的应用程序可以在该系统上实现,并且该系统可以与其他应用系统协同工作。

根据作者自己的研究工作和本书的内容,作者对开放式数控系统给出了如下定义:开放式数控系统本质上是一种具有软件平台化、功能和接口配置模块化的内在属性,具有可移植性、可扩展性和互操作性的外在特征,支持用户根据需要对数控系统进行二次开发,为用户提供运行和管理其应用软件的平台。

因此,开放式数控系统的核心是支持用户根据需求进行二次开发,增加定制功能,提高机床性能。

2)开放式数控系统的内部属性应实现数控系统的开放性,使其具有通用性和可互换性,使用户无需深入底层硬件的集成、操作系统的调度等专业性要求强的开发任务中。数控系统应具有软件分层、功能模块化和接口组态的内在属性。这些内部属性是数控系统厂商为实现数控系统的开放性而对数控系统内部架构的设计。(1)软件层次结构

数控系统软件不仅包括解释、插补、运动控制等功能的实现,还需要具备设备驱动、实时内核、进程调度等基本功能。而用户对数控系统进行二次开发的目的是改进现有功能或增加新功能,他们的工作不需要涉及硬件读写、内核管理等基本功能。

因此,需要对软件进行分层划分,使用户在进行二次开发时只需要关注其所需功能的接口层,而不需要了解基本功能的实现、系统调度等任务,从而降低用户开发的难度,在一定程度上保证系统的可靠性和稳定性。

为了实现系统软件的分层,首先需要将软件和硬件分开,以减少硬件的可靠性受到用户功能影响的可能性,因此需要建立一个驱动层。其次,随着功能的增加,数控系统软件变得越来越复杂。为了避免用户陷入底层软件的开发,软件层进一步分为内核层和应用层,用户只需要通过应用层的接口进行二次开发,无需直接在内核层开发。

综上所述,数控系统软件平台从技术层面可以分为三个层次:驱动层、内核层和应用层,如图1所示。图1开放式数控系统软件平台架构

A.驱动层:驱动层一般由硬件抽象层(HAL)、板级支持包(BSP)和驱动程序组成,是数控系统软件不可缺少的一部分。其功能是为上层程序提供外部设备的操作接口,实现设备的驱动。上层程序在操作硬件时不需要知道设备的具体细节,只需要调用驱动程序接口即可。

b内核层:内核层是嵌入在NC内核中的操作系统层,包括实时内核、进程调度、NC内核功能模块、文件系统、图形用户界面和网络系统。

在嵌入式系统中工作的操作系统称为EOS(嵌入式操作系统)。EOS在数控系统中的主要作用是处理内部或外部事件引起的中断、设备驱动层的激活和任务的调度。它不执行具体的应用功能,比如运动控制、界面显示等具体功能都是由应用层的应用软件实现的。

C.应用层:应用层软件主要是指多个相对独立的应用任务,每个应用任务完成特定的任务,如I/O任务、计算任务、通信任务、人机界面等。每个任务由操作系统调度。它由基于操作系统的应用程序组成,用于完成被控对象的控制功能。应用层面向被控对象和用户。为了方便用户的操作,往往需要一个友好的人机界面。

应用程序运行在操作系统上,通过调用操作系统的接口函数实现系统的具体应用功能,如采集诊断、运动控制等。各种任务以应用程序的形式组装在应用层,服务于不同的功能模块。在操作系统的支持下,给每个任务分配一个优先级,根据优先级动态切换任务,保证实时性要求。

此外,操作系统根据各个任务的要求,管理资源,合理分配资源,实现消息管理、任务调度、异常处理等任务。

数控系统是一个高度专业化的多任务调度和操作系统。根据实时操作任务的划分方法,数控系统的任务一般分为两类:管理任务和控制任务。如图2所示,控制任务的工作与数控加工直接相连,对实时性要求较高,而管理任务的工作对实时性要求相对较低。

系统的控制任务可以细分为位置控制、轨迹插补、指令解码、I/O控制、误差控制、实时状态监控和故障诊断等子任务。系统的管理任务包括人机交互管理、显示管理、数据管理、通信管理和网络管理。

而且在实际的开发设计中,每个子任务可以根据需要进一步细分,形成任务集,任务集中的任务必须根据外部事件及时激活运行。同时,结合具体的处理情况,操作系统会统一调度,动态控制任务的优先级,以满足不同处理任务的要求。

当高优先级任务进入任务列表时,内核通过优先级抢占调度切换到高优先级任务;当具有相同优先级的多个任务进入任务列表时,内核通过时间片轮换调度方法实现多个任务的并发控制。操作系统的特定多任务调度机制在前面的章节中有详细的解释。

图2数控系统应用层任务划分通过系统软件的分层,可以实现“高内聚”和“低耦合”,各层功能独立,减少依赖性,增强可扩展性和可维护性。另外,每一层都实现指定的功能,并通过指定的接口与其他层建立联系,大大提高了可移植性。(2)功能模块化

数控系统功能的模块化开发,使其基础软件模块可重用,提高系统的可维护性和可扩展性,是开放式数控系统开放的必要条件。数控系统功能模块化又称软件芯片,是指利用面向对象技术对数控系统的功能进行划分,将一些通用模块做成独立的、可重用的对象类,建立类似于硬件芯片的数控系统软件芯片库。

在开发新的数控系统时,只需要从软件芯片库中取出相应的模块进行组合,必要时进行扩展,而不需要从零开始开发整个系统,从而改变了数控系统的封闭式设计,提高了整个系统的灵活性,实现了数控系统的开放式设计和资源的重用。用软件芯片构建数控系统的过程如图3所示。

图3基于软件芯片库的数控系统构建过程a .软件芯片的特点:内部黑盒封装;接口标准的标准化;多态性和遗传。

B.功能模块划分:人机交互界面模块;编解码模块;刀具补偿预处理模块;轨迹插补模块;轴伺服控制模块;输入输出模块。

上述基本模块具有互操作性、可移植性和可扩展性,是构成数控系统的最小配置模块。它们可以作为数控功能的基本划分和最基本的数控软件芯片。此外,还有工具管理、数据库管理等芯片。软件芯片的功能和数量的定义是动态的。随着应用需求的变化和数控技术的发展,可能需要添加新的软件芯片。软件芯片之间的协作关系如图4所示。

图4开放式数控系统中软件芯片对象的协作关系(3)接口配置

人机界面是人与数控系统之间传递和交换信息的媒介,是数控系统的重要组成部分。人机界面的二次开发是大多数用户定制和开发可视化内容的重要手段。目前数控系统的通用人机界面具有更加通用和完善的功能,可以实现监控、诊断、编程、设置等操作。

但是这种标准化的人机界面无法满足用户对具体加工工艺的个性化定制需求。另外,用户提出新的功能,数控系统厂商的开发需要一定的开发周期,往往不能及时响应市场需求。因此,有必要开发数控系统人机界面二次开发平台,既满足用户对数控系统的专业化、个性化需求,又满足开放式数控系统易于扩展和向用户开放的需求。

针对这种需求,人们提出了配置的概念。组态的核心思想是以图形可视化的方式将人机界面以功能组件的形式组织起来,实现人机界面的灵活可扩展开发。组态技术通过图形可视化和功能组件的组合配置,能够以组态的形式快速、灵活地构建高度可扩展的人机界面。一般来说,人机界面的组态技术有两个主要特点:

一、图形界面构建能力:通过图形可视化的方式添加和配置界面原语,完成可配置界面的开发。配置要求部署的配置接口要与开发过程中的配置接口保持“静态一致性”,从而实现所见即所得的接口开发理念。

二、基于组件的功能配置:配置人机界面应由独立的功能单元组成,可以是原语、设备或功能模块。人机界面可以通过将这些功能单元以“配置”的形式组合起来构建,这些功能单元之间的组合形式应该是低耦合、可扩展的。

一般来说,数控人机界面的主要元素是图形、控件、变量、设备、数据库和逻辑命令。为了实现数控人机界面配置过程中的灵活性,降低组件和元素之间的耦合性以及HMI结构的复杂性,数控人机界面被模块化。

在功能划分的基础上,采用软件设计中常用的MVC体系框架(模型-视图-控制框架),将组成计算机软件的数据、图形和逻辑控制部分抽象出来,以达到降低系统耦合、提高可扩展性的目的。最后,人机界面的基本要素分为三个模块:数据、图形和交互控制。

其中,数据模块对应人机界面的各种数据源,为视图的显示提供数据,主要包括机床操作和加工过程中的各种数据。图形是CNC HMI在屏幕上的表示,主要包括构成人机界面的基本图形,即常用部件等。交互控制主要负责人机界面操作过程中的逻辑控制和用户交互。

组件化是对组成人机界面的功能单元进行处理,提炼和抽象出相同或相似的功能单元,并将其转化为具有标准接口的可重用功能组件的过程。如图5所示,组件化的步骤主要包括单元识别、单元聚类、单元集概括和抽象、组件封装。

基本单元确定了构成系统的基本单元。根据功能、逻辑和结构的不同,通过相应的识别方法和一定的粒度,提取出功能独立、与其他基本单元耦合度低的功能单元。在识别功能单元的过程中,划分粒度对最终人机界面的灵活性和扩展性起着决定性的作用。

粒度过大会导致单元组件可配置性差,配置界面整体灵活性低;但如果粒度过小,接口系统会过于复杂,可维护性不足。因此,应该根据功能单元的特性和经验来选择粒度。

图5人机界面组件化的基本过程

基本功能单元识别完成后,将一些在功能、结构上或逻辑上具有一定相似性的单元进行分类,构成能够实现特定功能的单元集,提升单元集内元素的联系性,降低单元集之间元素的相似性和耦合性,这个过程便称为单元聚类。

单元聚类后,利用面向对象软件开发中类的思想,对这些单元集进行概括和总结,抽象成为单元“类”,并提炼出单元类的根本属性,并将其参数化,添加用于组件组合的外部接口,最后封装成具有特定功能,可复用且具有标准可配置参数与组合接口的单元组件。

「2. 开放式数控系统的特征」

以上两部分对封闭式和开放式数控系统的内部属性进行了分析,从用户的角度来讲,封闭式和开放式数控系统在特征上也有所区别。表2给出了封闭式和开放式数控系统的具体特征的详细对比。

表2 封闭式和开放式数控系统的外部特征

通过以上对比分析,我们可以知道传统封闭式数控系统具有可靠性高、成本较低的优点,对于典型量大面广的场合还是以传统数控系统的应用为主。但是,随着科技的进步和其它相关支撑技术的发展,开放式数控系统取得了长足发展,传统封闭式数控系统的这些优势已经不再明显。

开放式数控系统允许用户根据自己的实际需求进行选配、集成、更改或者扩展系统的功能以快速适应不同的应用场合。

一般来说,开放式数控系统应具有以下基本特征:

(1)开放性:提供标准化环境的基础平台,允许不同功能和不同开发商的软、硬件模块介入。

(2)可移植性:不同的应用程序可运行于不同生产商提供的系统平台,同样的,系统软件也可以运行于不同特性的硬件平台。通过标准的设备接口,各功能模块能够正常运行在不同的硬件平台上。

(3)可伸缩性:增添或减少系统的功能仅表现为特定功能模块的装载或卸载。允许用户结合实际需要进行二次开发,甚至允许用户将自行设计的标准功能模块集成到数控系统内部,从而实现深层的二次开发。

(4)互换性:不同性能、不同可靠性和不同能力的功能模块可以相互替代,而不影响系统的协调运行。

(5)相互操作性:提供标准化的接口、通信和交互模型。不同的应用程序模块通过标准化的应用程序接口运行于系统平台之上,不同的模块之间保持平等的相互操作能力,协调工作。

标准化的接口既包含硬件接口,如RS232、USB、VGA、以太网等接口;也包含软件接口,即通信协议,如数控系统与伺服的总线协议NCUC、EtherCAT、Profinet IRT、Sercos III等,以及不同类型数控系统之间通信语言,如NC-Link协议。

以上知识分享希望能够帮助到大家!