首页> 中国专利> 一种基于虚拟机床模型的云端数控系统实现方法及系统

一种基于虚拟机床模型的云端数控系统实现方法及系统

摘要

本发明公开了一种基于虚拟机床模型的云端数控系统实现方法及系统,该方法为每个数控装置下位机建立一个对应的虚拟机床模型模块,该虚拟机床模型模块包括机床和数据系统的基本参数;利用云端服务器即远程服务器完成人机交互、数控加工程序的输入及预处理、数控加工程序的译码;云端服务器通过网络与数控装置下位机通讯。系统包括负责数控加工程序的预处理、数控加工程序的译码的云端上位机,数控装置下位机,和至少一个用于存储机床及数据系统的基本参数的虚拟机床模型模块;下位机通过网络与云端上位机通讯,对机床的速度及位置进行控制。本发明可以大幅降低生产企业的成本,同时为机床操作员提供舒适的工作环境。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2014-09-17

    著录事项变更 IPC(主分类):G05B19/18 变更前: 变更后: 申请日:20120620

    著录事项变更

  • 2014-05-07

    授权

    授权

  • 2014-04-16

    著录事项变更 IPC(主分类):G05B19/18 变更前: 变更后: 申请日:20120620

    著录事项变更

  • 2012-12-12

    实质审查的生效 IPC(主分类):G05B19/18 申请日:20120620

    实质审查的生效

  • 2012-10-17

    公开

    公开

说明书

技术领域

本发明属于数控系统技术领域,具体涉及一种基于虚拟机床模型的云 端数控系统实现方法,实现数控系统对数控机床提供云计算服务的目标。

背景技术

数控机床是一种高效、自动化的机床,由机床本体和数控系统两部分 组成。机床本体主要由床身、立柱、工作台、导轨等基础件和刀库、刀架 等配套件组成,为叙述方便,以下将机床本体简称为机床。数控系统是一 种程序控制系统,包括数控装置、驱动、电机(马达),其中数控装置包括 人机界面、参数设置、代码输入器、解释器、运动规划器、轴运动控制器, 以及附加的加值软件等模块。附图1是目前一般数控系统的架构图,附图1 也标示了数控装置内的主要模块。人机界面模块负责用户与数控装置之间 的交互,参数设置模块用于设置数控装置运行时的参数,代码输入器主要 负责数控加工程序、控制参数、补偿数据等的输入,解释器主要对数控加 工程序的程序段进行译码处理,运动规划器主要完成速度处理以及插补运 算,轴运动控制器主要负责位置控制,加值软件则是一些实现附加功能的 软件模块,例如刀具轨迹的仿真等。

云计算是一类信息化技术,云计算通过网络在远程提供计算以及数据 的服务,而用户端可以不需要知道远程服务的来源。目前云计算在车间的 使用还在起步阶段,且集中在对数控系统与机床的远程监控及数据服务方 面。在车间云计算的架构设计上,目前的方法都是将数控系统与机床绑成 云架构里的同一单元。换言之,数控系统与机床之间不经过云架构相连, 如附图2所示。此处所说的云架构是指实施云计算的模块。采用云计算技 术的数控系统称为云端数控系统,云端数控系统的组织结构称为云端数控 架构。

近年来,流行一种新型的数控系统架构,如附图3所示。这种数控系 统架构将数控装置拆成上位机、下位机;下位机包含与实时操作有关的运 动规划器与轴运动控制器,其它的模块放在上位机。在目前的数控系统架 构中,上位机与下位机都安装在机床旁边,上、下位机之间通过总线相 连。

无论是传统的单机结构或最近流行的上位机、下位机结构,都面临相 同的商业挑战:如何提高性能同时降低成本。尤其近年来数控系统的计算 功能越来越复杂,这使得对数控装置的内核与内存的要求越来越高,造成 成本上升的压力。另一个相关问题是:这些复杂功能在车间的吵杂、混乱 环境下难以被机床操作员有效地操作,造成浪费。

目前车间通用的两个网络数据传送协议是MTConnect与NCUC-Bus。 MTConnect的制定单位是由AMT(美国制造协会)支持的MTConnect  Institute,第一版发布于2009年。MTConnect协议基于HTTP(在TCP/IP 之上)与XML,支持内网与外网的云计算服务,同时提供一般车间应用的 数据模型。NCUC-Bus现场总线协议规范的制定单位是中国机床工具工业 联合会,第一版刚递交政府批准。其协议基于fieldbus,主要面对单一机床 的周边应用与近程应用,例如数控上位机、下位机之间的通信。 NCUC-Bus只服务原始数据,没有提供数据模型。

发明内容

本发明的目的是提供一种基于虚拟机床模型的云端数控系统实现方法 及系统,本发明可以大幅降低生产企业的成本,同时为机床操作员提供舒 适的工作环境。

本发明提供的一种基于虚拟机床模型的云端数控系统实现方法,其特 征在于,该方法为每个数控装置下位机建立一个对应的虚拟机床模型模块, 该虚拟机床模型模块包括机床和数据系统的基本参数;利用云端服务器即 远程服务器完成人机交互、数控加工程序的输入及预处理、数控加工程序 的译码;云端服务器通过网络与数控装置下位机通讯。

本发明提供的一种基于虚拟机床模型的云端数控系统,包括上位机和 数控装置下位机,其特征在于,该系统包括至少一个虚拟机床模型模块, 虚拟机床模型模块用于存储机床及数据系统的基本参数;所述上位机为云 端上位机;数控装置下位机与虚拟机床模型模块的数量相同,每一个虚拟 机床模型模块一一对应一个数控装置下位机;所述数据装置下位机通过网 络与云端上位机通讯;

云端上位机主要负责数控加工程序的预处理、数控加工程序的译码; 云端上位机加载对应的数控机床的虚拟机床模型数据,并设置运行参数, 并完成对加工程序的预处理、编译,并将包括速度与位置数据在内的控制 数据提供给数控装置下位机;

数据装置下位机通过网络接收云端上位机提供的控制数据,对机床的 速度及位置进行控制。

作为上述技术方案的改进,所述云端上位机内设置有上位机人机界面模 块。

作为上述技术方案的更进一步改进,所述云端上位机通过网络连接或 者直接连接有至少一个客户端,所述客户端用于完成人机交互功能,以及 数控加工程序的输入。

作为上述技术方案的再进一步改进,该系统还包括至少一台本地上位 机,所述本地上位机通过网络与云端上位机通讯,本地上位机用于完成人 机交互功能,以及数控加工程序的输入,并通过网络传送给云端上位机; 本地上位机还通过网络接收云端上位机提供的控制数据,并转交给数控装 置下位机。

作为上述技术方案的又进一步改进,在本地上位机与云端上位机通讯 过程中,首先本地上位机经由网络传送一个指令到云端上位机;然后云端 上位机根据指令进行计算,得到图像或/和图形数据;最后云端上位机将上 一个周期所处理完成的图像或/和图形数据经由网络送回到本地上位机。

本发明将利用车间通用的两个网络数据传送协议MTConnect与 NCUC-Bus,采用云计算技术解决现有技术中存在的问题,其关键是将数控 装置的主要部分移到云端,利用云计算技术来减少装置、降低成本,同时 将人机界面转移到较有利的操作环境,充分发挥数控系统的诸多高端功 能。

附图说明

图1是数控系统与机床结构的结构示意图;

图2是目前车间云架构的结构示意图,包括数控系统与机床;

图3是数控装置上、下位机结构示意图;

图4是本发明实例提供的一个云端上位机配置两个下位机的服务式云 端数控架构示意图;

图5是本发明实例提供的一个云端上位机配置两个下位机的服务式云 端数控架构的实现图;

图6是本发明实例提供的一个分离客户端的服务式云端数控架构示意 图;

图7是本发明实例提供的一个云端上位机配置两个本地上、下位机的 本地式云端数控架构示意图;

图8是本发明实例提供的一个云端上位机配置两个本地上、下位机的 本地式云端数控架构的实现图。

图9是即时缓存技术中每一个数据交换周期的序列图。

图10是即时缓存技术中两个数据交换周期的序列图。

具体实施方式

在本发明中,上位机既可以位于云端服务器,又可以位于机床附近, 也可以并存,即云端服务器上以及机床附近均可有上位机。为表达清晰, 将位于云端服务器(即远程的服务器)的上位机称为云端上位机,位于机 床附近的上位机称为本地上位机。

现有数控系统中上位机与下位机在一起或通过内部总线相连,上位机 与下位机是一一对应的关系。本发明中的数控系统,一个云端上位机通过 开放式网络可以对应多个下位机,或者一个云端上位机通过网络可以对应 多个本地上位机,两种模式都大大节约了成本,也给改善操作环境提供了 条件。

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图 及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体 实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实例提供的第一种模式是将整个上位机移到远程的服务器中, 形成一个云端上位机,与下位机和机床经由网络连接,如附图4所示。为 了方便叙述,将此种模式称为服务式云端数控。在服务式云端数控的架构 下,一个上位机可以接数个下位机,从而避免每一个机床都配置一个上位 机,达到装备共享与成本降低的目的。这种模式的另一个好处是:可以将 云端上位机放置在一个远离车间的优良的工作环境里,以利于高端功能的 操作。

服务式云端数控架构可以做局部修改,具体是:将云端上位机里的人 机界面分离出来,放到客户端,如图6所示。分离的客户端可以不止一 个,客户端也可以是任意电脑装置,包括台式机、笔记本、平板电脑、 PDA等。

当工作情况需要操作员在机床旁操作时,可以保留本地的(机床旁) 上位机,以便提供与操作有关的人机界面和参数设置功能,同时将其余的 模块移到云端,如附图7所示。为了方便叙述,将此种模式称为本地式云 端数控。在本地式云端数控的架构下,操作员感觉与传统的数控没有不 同,唯一的差别是内部的计算都是在云端上位机完成。云端上位机不需要 人机界面,因此在附图7中被掩盖,不过如果有需要也可以加载。

云端数控架构的终极目标是使用一个数控云端上位机来服务多个机 床。这种架构将面临一个技术困难:一方面,每台机床的特性与功能都不 同,而传统的数控系统的设计是服务单一机床。换言之,数控系统的调试 与设置只针对单一机床。如果要实现一个云端上位机来服务多个机床,设 计上必须突破这个技术瓶颈。

针对上述问题,本发明提出的解决方案是建立虚拟机床模型。此方案 的主要理念是建立与机床相关的数据(包含特性与功能的参数)对应的模 型,形成独立的虚拟机床模型。每个机床有一个相应的虚拟机床模型,此 数据模型以文档或数据库的形式储存,并放置在任何媒介或与网络连接的 装置上。数控系统在开始操作某一个机床时,从与该机床对应的虚拟机床 模型中读取相关数据,对数控系统的参数作相应的调试与设置。

在本发明的数控系统架构中,虚拟机床模型将取代原有的参数设置模 块。目前数控系统的调试与设置工作是通过人工手动输入操作参数的方式 完成的,并储存在数控系统里,这样的方式自动化程度很低。这些数控系 统参数与机床参数直接定义并描述了数控机床的功能,如果具备机床的参 数与功能数据,也可以从中导出所需的数控系统参数。本发明将淘汰人工 参数设置的步骤,取而代之的是虚拟机床模型读入模块,该模块负责读入 与机床对应的参数与功能数据模型,并根据该模型设置数控系统的参数。

虚拟机床模型的主要内容是机床的运动链、几何模型、动力学模型以 及机床特有的功能、操作需求等。虚拟机床模型的具体内容可以依据数控 系统的功能与需求而相应的增减。本发明中所述的虚拟机床模型,实质上 是一个包括机床与数控系统基本参数的数据库。

云端数控架构还有一个潜在问题,那就是云端上位机与本地上位机经 由网络数据交换的速度问题。一般而言,目前商用局域网的带宽应付数控 相关的数据交换应该绰绰有余,唯一有可能的问题是实时性图像或图形数 据的交换。实时性图像或图形数据交换的模式通常是“客户端拉取” (client-pull)的,也就是本地上位机(客户端)从云端上位机(服务端) 主动取得数据。在客户端拉取模式中,每一个周期包括下列三个步骤:

(1)本地上位机经由网络传送一个指令到云端上位机。

(2)云端上位机做计算并准备好图像/图形数据。

(3)云端上位机将数据经由网络送回到本地上位机。

为了提升速度,本发明采用服务端即时缓存方案。这个方案的核心方 法是在本地上位机传送的指令到达云端上位机后,不等待云端上位机的处 理过程,改从上一个周期所处理好的数据送回本地上位机(而这个周期的 数据等下一个周期再返回)。因此,每个周期减少了第(2)步等待的时间。

下面利用虚拟机床模型与服务端即时缓存,解释服务式与本地式两种 云端数控架构的实现方法。我们先叙述虚拟机床模型与服务端即时缓存的 实现方法,然后再分别说明服务式云端数控与本地式云端数控架构(包括 虚拟机床模型在整体架构中的位置)。

建立虚拟机床模型的过程为:收集虚拟机床模型所需的参数,包括机 床与数控系统基本参数;将收集的参数做序列化(serialization),之后以文 档或数据库的方式储存序列化后的数据,从而便于利用计算机存储、读取、 修改、设置等。将建立的虚拟机床模型(文档或数据库)放置在任何装置 上,该装置必须可以利用输入媒介(例如USB)或者网络与云端上位机进 行数据交流,让云端上位机可以读取或者修改虚拟机床模型。表1和表2 是列举的一种机床与数控系统基本参数。

如图4所示的是一种服务式云端数控系统,该云端数控系统包括一台 云端上位机、多台数控装置下位机和多个虚拟机床模型模块。此处,数控 装置下位机的数量与虚拟机床模型是一一对应的,即每一个数控装置下位 机均对应一个虚拟机床模型,且至少有一个数控装置下位机存在。

云端上位机主要负责人机交互、虚拟机床模型的读入及数控系统参数 的设置、数控加工程序的输入及预处理、数控加工程序的译码以及包括仿 真等的一些附加功能。云端上位机包括人机界面模块、虚拟机床模型读入 模块、输入\预处理模块、解释器和加值软件模块。

数据装置下位机通过网络与数控装置上位机通讯,它负责速度处理、 插补运算以及位置控制等功能。数据装置下位机包括运动规划模块及运动 控制模块,这些模块的功能及相互关系与现有的数控系统中的模块相同。

虚拟机床模型模块用于存储虚拟机床模型,每一个虚拟机床模型模块 对应一台机床,该模块位于与网络连接的装置上,该装置可以是云端数据 系统中的器件,如上、下位机,也可以是系统外的器件,并通过网络与数 控装置下位机通讯。

以图4为例,服务式云端数控系统的一个典型的工作过程如下:

用户通过云端上位机启动数控系统并输入加工程序,云端上位机通过 虚拟机床模型读入模块加载对应的数控机床的虚拟机床模型数据并设置运 行参数,接下来,云端上位机完成对加工程序的预处理、编译,之后云端 上位机将运行的结果提交给数控装置下位机,数控装置下位机根据传递过 来的参数控制运动规划器和轴运动控制器,完成用户发出的加工任务。

服务式云端数控的实现步骤为:

(1)将云端上位机的每一个模块(人机界面、虚拟机床模型读入模块、 代码输入器、解释器、以及附加的加值软件)以软件形式实现。此处所说 的以软件形式实现,是指通过编程语言(可以是C、C++、Java等任何通用 的计算机编程语言)实现相应的模块及其功能。

(2)将云端上位机的所有模块打包成一个软件应用,由于虚拟机床模 型读入模块也在软件应用中,所以该软件应用可以读取不同的虚拟机床模 型。

(3)实现第一步的虚拟机床模型,并明确该虚拟机床模型所在的位置, 此处所说的位置是指:存储虚拟机床模型的装置。

(4)使用一般支持TCP/IP通用协议的网络设备,将云端上位机与下 位机以及机床连接到网络上,网络可以是互联网或者局域网。此处,云端 上位机与下位机的连接经由网络设备实现,网络设备可以是交换机、路由 器等

(6)使用网络传输协议来完成云端上位机与下位机的通信。网络传输 协议可以是NCUC-Bus或MTConnect协议,也可以是任何在TCP/IP上通 行的自定义协议。

附图5所示为服务式云端数控架构的实现案例,对应于一个云端上位 机配置两个下位机的情形。在云端上位机上,可以产生两个线程(thread) 来同时运行两份上位机软件,使用不同的虚拟机床模型,对应于不同的下 位机;也可以随意在两份运行软件(相应于两个下位机)之间切换。

分离客户端的服务式云端数控架构的实施方法与上述雷同,其运行过 程也大致相同,只是用户的工作位置可能不同,如图6所示,在前述步骤 的基础上增加下列步骤:

(1)将上位机的人机界面模块移植到客户端中。

(2)  将客户端电脑连接到网络上(内网或外网),使用一般支持 TCP/IP通用协议的网络设备;或者直接接到云端上位机,并使用近程通讯 媒介,例如蓝牙(Bluetooth)、UPS等。

图7所示的是另一种结构:本地式云端数控。本发明提供的云端数控 系统除包括一台云端上位机、多台数控装置下位机和多个虚拟机床模型模 块外,还设置有多台与云端上位机通讯的本地上位机,本地上位机与数控 装置下位机是一一对应的,数量也是相等的,云端上位机通过网络与本地 上位机通讯,本地上位机与数控装置下位机连接,并通过它控制机床工作。

本地式云端数控系统将上位机的功能分派到云端上位机与本地上位 机,其功能分割可以有不同的方式。图7是一种薄型客户端(thin-client) 的设计,其中所有的上位机功能都放在云端上位机,而本地上位机只保留 一个人机界面来面对用户。

以图7的薄型客户端设计为例,本地式云端数控系统的一个典型的工 作过程如下:

用户通过本地上位机启动数控系统并输入加工程序,加工程序由网络 上传到云端上位机,云端上位机通过虚拟机床模型读入模块加载对应的数 控机床的虚拟机床模型数据并设置运行参数,接下来,云端上位机完成对 加工程序的预处理、编译,之后将结果传送给本地上位机,本地上位机再 根据传递过来的参数控制数控装置下位机,以完成用户发出的加工任务。

本地式云端数控架构的实现步骤为:

(1)将云端上位机的每一个模块(虚拟机床模型读入模块、代码输入 器、解释器、以及附加的加值软件)以软件形式实现。

(2)将本地上位机的人机界面模块以软件的形式实现,形成一个薄型 客户端(thin-client)人机界面的软件应用。

(3)实现第一步的虚拟机床模型,并明确该虚拟机床模型所在的位 置。此处所说的位置是指:存储虚拟机床模型的装置。

(4)将虚拟机床模型读入模块、代码输入器、解释器、以及附加的加 值软件打包成一个服务端软件应用,并将此服务端软件应用配置到云端上 位机,成为云端上位机的一个服务。

(5)使用一般支持TCP/IP通用协议的网络设备,将云端上位机与本 地上位机连接到网络上(内网或外网)。

(6)使用网络传输协议来完成云端上位机与下位机的通信。网络传输 协议可以是NCUC-Bus或MTConnect协议,也可以是任何在TCP/IP上通 行的自定义协议。

附图8所示为本地云端数控架构的实现案例,对应于一个云端上位服 务器配置两个上、下位机的情形,在此案例中,虚拟机床模型被存储在本 地上位机中(实际上,可以存储在任何能够与云端上位机通信的装置中)。 云端上位服务器只在幕后提供服务,在本地上位机的操作员不会感受到它 的存在。

薄型客户端设计的本地式云端数控系统需要不断实时性的将图形界面 从云端上位机送到本地上位机,如前文所叙,此图形数据是由客户端拉取。 图9是每一个数据交换周期的序列图,其中序列1.1到1.3表示一个周期所 包含的三个动作(每个周期重复同样的三个动作,图中不再重复)。

为了提升速度,我们提出即时缓存器的实现方法。即时缓存器装在云 端上位机,作为云端上位机与网络数据交换的一个代理器,如图8所示。 其功能是缓存上一个周期的图形数据,在下一个周期返回。图10是包含即 时缓存器之后每两个数据交换周期的序列图(周期重复,以此类推)。如 图所示,每个周期的第一步结束后,直接从即时缓存器提取上个周期缓存 的图形数据,免去了等待的时间。在第一个周期,如果即时缓存器是空白 (尚未有缓存),则不做提取。

例如,某型号的数控车床,其机床参数如表1所示,数控系统参数如 表2所示。

表1机床参数

表2数控系统参数

将表1与表2中的参数汇集并按上述分类,便建立了该型数控车床的 虚拟机床模型。需要注意的是,表1与表2只是示意性的说明,生产实际 中的机床各式各样,但每一台机床的参数都可以按照表1和表2的方式给 出,针对每一台机床都能建立起对应的虚拟机床模型。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明, 凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围 之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号