一种开放式数控系统 ---hitcnc 及其关键技术

19
种种种种种种种种 一统 种种种种种种种种 一统 ---HITCNC ---HITCNC 种种种种种种 种种种种种种 胡胡胡 胡胡胡

Upload: delano

Post on 14-Jan-2016

114 views

Category:

Documents


3 download

DESCRIPTION

一种开放式数控系统 ---HITCNC 及其关键技术. 胡晓文. 摘要. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 一种开放式数控系统 ---HITCNC 及其关键技术

一种开放式数控系统一种开放式数控系统 ------HITCNCHITCNC 及其关键技术 及其关键技术

胡晓文胡晓文

Page 2: 一种开放式数控系统 ---HITCNC 及其关键技术

摘要 摘要 为了在数控系统中达到为了在数控系统中达到可修改性可修改性和和可配置性可配置性的目的,的目的,

HITCNCHITCNC 这种开放结构的数控系统,是基于接口标准这种开放结构的数控系统,是基于接口标准研究和制造了。这个系统的外部接口是设计为合相应得研究和制造了。这个系统的外部接口是设计为合相应得国际标准是一致的。而内部接口遵循开放结构控制(国际标准是一致的。而内部接口遵循开放结构控制( OOMACMAC )协议。在研究和设计过程中,运用了面向对象)协议。在研究和设计过程中,运用了面向对象技术以确保技术以确保 HITCNCHITCNC 的开放性,静态编程也根据模块的开放性,静态编程也根据模块化被应用到化被应用到 CNCCNC 系统中。系统中。 HITCNCHITCNC 也实现实时和非实也实现实时和非实时模块采用实时动态链接库(时模块采用实时动态链接库( RTDLLRTDLL )和)和 COMCOM 技术。技术。FSMFSM 也被也被 HITCNCHITCNC 采用去做动态模块,硬件和软件的采用去做动态模块,硬件和软件的完全分离也被完全分离也被 HITCNCHITCNC 采用通过应用采用通过应用 SoftSERCANSSoftSERCANS技术中。基于这种关键技术的应用程序减少了编程负载。技术中。基于这种关键技术的应用程序减少了编程负载。并且软件编程代替了硬件功能,这就提供了大量的技术并且软件编程代替了硬件功能,这就提供了大量的技术保证保证 HITCNCHITCNC 的开放性。最终,基于的开放性。最终,基于 HITCNCHITCNC ,一个,一个三维磨粉系统产生了。在这个系统中,一系列的试验说三维磨粉系统产生了。在这个系统中,一系列的试验说明明 HITCNCHITCNC 是正确和灵活的,并且有好的开放性。 是正确和灵活的,并且有好的开放性。

Page 3: 一种开放式数控系统 ---HITCNC 及其关键技术

概述 概述 开放结构的计算机数控系统成为数控领域的开放结构的计算机数控系统成为数控领域的

主流和关键技术。当今,开放式系统被认为有如主流和关键技术。当今,开放式系统被认为有如下五个特征:下五个特征:可交互性可交互性,,可携带性可携带性,,可量测性可量测性,,互操作性互操作性和和可扩展性可扩展性。。

随着开放式数控系统的发展,如何能让其开随着开放式数控系统的发展,如何能让其开放性更好的实现成为研究的焦点。本文开发了一放性更好的实现成为研究的焦点。本文开发了一套开放式计算机数控系统,即哈尔滨大学科学数套开放式计算机数控系统,即哈尔滨大学科学数控系统(控系统( HITCNCHITCNC ),基于接口标准,详细分析),基于接口标准,详细分析了了 HITCNCHITCNC 实现开放性的关键技术,并且开发了实现开放性的关键技术,并且开发了基于该系统的一个三维的磨碎系统。 基于该系统的一个三维的磨碎系统。

Page 4: 一种开放式数控系统 ---HITCNC 及其关键技术

HITCNCHITCNC 的关键技术的关键技术1.1 1.1 基于接口标准的系统基于接口标准的系统1.1.1 1.1.1 接口标准的综述接口标准的综述

开放结构的开放结构的 CNCCNC 系统应该是系统应该是模块化模块化并且并且其外部和内部接口必须准循一系列的其外部和内部接口必须准循一系列的国际标准国际标准和和工业标准工业标准。因此,本文介绍了基于标准的开。因此,本文介绍了基于标准的开放式结构的放式结构的 CNCCNC 系统概念如下:系统概念如下:开放式开放式 CNCCNC系统采用标准模块结构系统采用标准模块结构,,数控系统中模块之间数控系统中模块之间的通信的通信、、数控系统之间的通信数控系统之间的通信都是通过相应的都是通过相应的接口实现的。而一个真正开放式的接口实现的。而一个真正开放式的 CNCCNC 系统系统必须符合这些标准。 必须符合这些标准。

Page 5: 一种开放式数控系统 ---HITCNC 及其关键技术

NCNC 系统的这些接口标准可以被分为两组——外部接口和内部接系统的这些接口标准可以被分为两组——外部接口和内部接口,如下图口,如下图 11 所示。外部接口包括所示。外部接口包括 NCNC 编程接口编程接口、、 CNCCNC 系统系统和和SERVOSERVO 系统系统的接口、的接口、 CNCCNC 系统的输入输出设备系统的输入输出设备。如今,每种。如今,每种外部接口都有相应的国际和工业标准。比如编程接口标准外部接口都有相应的国际和工业标准。比如编程接口标准 ISO69ISO698383 ,模块数据交换标准,模块数据交换标准 STEP-NCSTEP-NC ;CNC和;CNC和 servoservo 系统之间接系统之间接口电压为口电压为 +/- 10+/- 10 伏的模拟电压,串行实时通信系统(伏的模拟电压,串行实时通信系统( MACRMACROO )和)和 FireWireFireWire 等等;等等; CNCCNC 和输入输出设备之间的接口是和输入输出设备之间的接口是 prprofibusofibus ,, interbusinterbus 以及以及 cancan 总线。总线。 CNCCNC 和监控室的接口主要和监控室的接口主要是采用是采用 LANLAN 总线。总线。

Page 6: 一种开放式数控系统 ---HITCNC 及其关键技术

1.1.2HITCNC1.1.2HITCNC 系统接口的安排系统接口的安排 本文准循的原则是基于标准构建系统,设计开放本文准循的原则是基于标准构建系统,设计开放

式结构的式结构的 CNCCNC 系统系统 HITCNCHITCNC ,接口工程设计如下:,接口工程设计如下: (1)HTICNC(1)HTICNC 和和 servoservo 系统的接口、系统的接口、 HITCNCHITCNC 和和 I/0I/0

设备接口采用设备接口采用 SERCOSSERCOS 标准。为加强系统开放性,标准。为加强系统开放性,我们应用我们应用 SoftSERCANSSoftSERCANS 技术。技术。

(2)(2) 目前目前 NCNC 编程接口标准是编程接口标准是 ISO6983ISO6983 和和 STEP-NCSTEP-NC 。。而而 IS06983IS06983 是主流;是主流; STEP-NCSTEP-NC 是将来的发展方向。是将来的发展方向。所以考虑到工作负载,本文采用所以考虑到工作负载,本文采用 ISO6983ISO6983 标准。标准。

(3)(3) 在内部接口方面,在深入分析了在内部接口方面,在深入分析了 OMACOMAC ,, OSACOSACAA 和和 OSECOSEC 之后,我们决定使用之后,我们决定使用 OMACOMAC 协议。协议。

Page 7: 一种开放式数控系统 ---HITCNC 及其关键技术

1.21.2 静态模块静态模块1.2.1 HITCNC1.2.1 HITCNC 的模块结构的模块结构

为使为使 CNCCNC 系统模块化,模块必须能够可重用。使用面向对象技术,本文在系统模块化,模块必须能够可重用。使用面向对象技术,本文在 NCNC 系统中充分利用了静态系统中充分利用了静态模块是系统模块化,宾且将系统归类为如下基本功能模块,见图模块是系统模块化,宾且将系统归类为如下基本功能模块,见图 22 。。

(1)(1)人机接口(HMI):人机接口(HMI):为了能在操作员和控制器之间交互,主要是能在系统运行之间和运行之时能改变为了能在操作员和控制器之间交互,主要是能在系统运行之间和运行之时能改变系统参数。系统参数。

(2)(2)任务协调模块:任务协调模块:用于任务的分配,协调合派出用于任务的分配,协调合派出 (3)(3)任务产生模块任务产生模块:用于代码传输和语法检测,比如:提取:用于代码传输和语法检测,比如:提取NCNC 程序的信息,产生运动命令包括运动信息和程序的信息,产生运动命令包括运动信息和逻辑控制命令,完成刀具位置偏移运动指令。逻辑控制命令,完成刀具位置偏移运动指令。

(4)(4)轴组模块:轴组模块:用于调制速度和应用两极化,再细分运动指令在一个给定的反馈速率在两极化期间去完成线用于调制速度和应用两极化,再细分运动指令在一个给定的反馈速率在两极化期间去完成线性反馈量,并且分解为相应轴的坐标命令,由此事实上输入信息到轴模块。性反馈量,并且分解为相应轴的坐标命令,由此事实上输入信息到轴模块。

(5)(5)轴模块从轴组模块接受命令轴模块从轴组模块接受命令,同时,读出反馈信息,在用户需要坐标控制和速度控制是选择调用,同时,读出反馈信息,在用户需要坐标控制和速度控制是选择调用 servoservo控制,并输出控制指令到外部执行单元。控制,并输出控制指令到外部执行单元。

(6)(6) 控制规则模块控制规则模块:用于计算:用于计算 servoservo 控制规则,提供主要控制策略,比如:控制规则,提供主要控制策略,比如: PIDPID 控制规则控制规则、、模糊控制规则模糊控制规则和和神经网络控制。神经网络控制。

(7)(7) 离散逻辑控制模块:离散逻辑控制模块:用于执行输入变量和内部状态变量的二进制计算,从而得到相应的输出和内部状态用于执行输入变量和内部状态变量的二进制计算,从而得到相应的输出和内部状态变量,从而实现控制输入输出设备。变量,从而实现控制输入输出设备。

Page 8: 一种开放式数控系统 ---HITCNC 及其关键技术
Page 9: 一种开放式数控系统 ---HITCNC 及其关键技术

1.2.2 1.2.2 组件模块(组件模块( COMCOM )和动态链接库()和动态链接库( DLLDLL )) 根据实时功能需求,模块可分为根据实时功能需求,模块可分为实时实时和非和非实实

时时两种,分别用实时动态链接库(两种,分别用实时动态链接库( RTDLLRTDLL )和)和组件模块(组件模块( COMCOM )实现。)实现。

COMCOM 是微软的标准模块,它不仅定义了组是微软的标准模块,它不仅定义了组件之间的件之间的接口标准接口标准,还提供了,还提供了组件的环境组件的环境。。 COMCOM是一种特殊的动态链接库。超级是一种特殊的动态链接库。超级 COMCOM 提供成熟提供成熟的技术保证交互性,可扩展性,可携带性和交互的技术保证交互性,可扩展性,可携带性和交互更改性。更改性。

CNCCNC 的实时责任包括的实时责任包括极化计算极化计算,,位置控制位置控制和和离散逻辑控制离散逻辑控制,这些都可用,这些都可用 RTDLLRTDLL 完成,完成, RTRTDLLDLL 能按需加载相应模块,并容许分开模块从而能按需加载相应模块,并容许分开模块从而改善系统性能。改善系统性能。 DLLDLL 采用面向对象编程技术是可采用面向对象编程技术是可扩展的,可重用的,可更改的,开放的。 扩展的,可重用的,可更改的,开放的。

Page 10: 一种开放式数控系统 ---HITCNC 及其关键技术

1.31.3 动态建模动态建模 随着 Windows 实时扩展技术的稳定性、性能和市场占有率的不断提高口 , Rexroth Indrama 决定将 SERCANS卡上的 SERCOS 主控功能转移到抽象的软件层面上,并选用 VenturCom 公司的 RTX 作为平台,这种新技术叫做 SoftSERCANS 。 Soft—SERCANS 可以说是 SERCANS 硬件功能的软件进化,它运行在一块从动式的主站卡上,具有能被实时应用程序和 Win 32 程序调用的动态链接库 (Dy—namic Link Library , DLL) ,它与 CNC的接口纯粹是软件,并且能自动适应所选用的 PC 机硬件的性能,使用户能够快速地利用 SERCOS 技术 ] 。

另一方面,它还可以完成可编程逻辑控制器 (Program—mble Logic Cortroller , PLC) 和 I/ O 系统之间的通讯,使整个系统的结构变得更为简单。总之,工业伺服现场总线的迅速发展及标准化的实现,为数控系统的开放性奠定了坚实的基础,也是软件数控技术发展的又一重要推动力。

Page 11: 一种开放式数控系统 ---HITCNC 及其关键技术

多态机(多态机( FSMFSM )通常用于反应系统模块,这)通常用于反应系统模块,这是个事件驱动系统。是个事件驱动系统。 FSMFSM 模块分解变化为事件并模块分解变化为事件并产生反应。机器工具是一个典型的反应系统,并产生反应。机器工具是一个典型的反应系统,并且等级的且等级的 FSMFSM 被采用为描述被采用为描述 NCNC 系统的行为,在系统的行为,在FSMFSM 模块中,机器工具的动作可以被认为是所有模块中,机器工具的动作可以被认为是所有模块动作的整合,机器工具德操作过程也就是模块动作的整合,机器工具德操作过程也就是 FSFSMM传输所有模块的过程,该系统中,HITCN传输所有模块的过程,该系统中,HITCNC动作模块被描述为使用了等级化的C动作模块被描述为使用了等级化的 FSMFSM 。。

含有含有 FSMFSM 的任务单元能从系统的数据流中抽的任务单元能从系统的数据流中抽象出来,任务单元的引用能被象出来,任务单元的引用能被扩展扩展和和加强系统性加强系统性能能。比如:在HITCNC中扩展费标准速率的。比如:在HITCNC中扩展费标准速率的b-splineb-spline (NURBS)极化功能等于加强系统(NURBS)极化功能等于加强系统得功能。所有模块除了含有任务产生器和轴组的得功能。所有模块除了含有任务产生器和轴组的模块,不需要被模块化,因为采用了模块,不需要被模块化,因为采用了 FSMFSM 模块,模块,这样也大大减少了编程负担。这样也大大减少了编程负担。

Page 12: 一种开放式数控系统 ---HITCNC 及其关键技术

HITCNC 系统的主要模块功能是: ①任务协调器,主要负责操作模式的切换,运动

控制和离散逻辑控制等任务协调和调度; ②任务生成器,主要完成语法检查、译码和刀具补偿等非实时性任务;

③轴组,主要负责完成加减速处理、插补功能,将译码得到的运动段 ( 包括直线、圆弧、 Nurbs等 )转化为单个插补周期内相应轴上的一系列目标点,并输出给各个轴模块;

④轴,对单个进给轴的运动实施控制。

Page 13: 一种开放式数控系统 ---HITCNC 及其关键技术

1.4 HITCNC1.4 HITCNC 应用应用 SoftSERCANSSoftSERCANS CNCCNC 系统的控制器和系统的控制器和 servoservo 系统信息交互的系统信息交互的

可能性直接影响可能性直接影响 CNCCNC 系统。唯一广泛应用到系统。唯一广泛应用到 CNCNCC 和和 servoservo 系统通信的国际标准是系统通信的国际标准是 SERCOSSERCOS 数字数字接口。接口。 SoftSERCANSSoftSERCANS 运行的运行的 DLLDLL 能被实时应用能被实时应用程序和程序和 Win32Win32 程序调用,这也是程序调用,这也是 SERCOSSERCOS 技术技术在软件上的应用。软件代替硬件功能,减少接口在软件上的应用。软件代替硬件功能,减少接口卡的费用是卡的费用是 SoftSERCANSSoftSERCANS 的优势,而且的优势,而且 SoftSESoftSERCANSRCANS 能适应个人计算机的性能。因此,模块能适应个人计算机的性能。因此,模块和开放和开放 CNCCNC 软件模块能使用软件模块能使用 SoftSERCANSSoftSERCANS 开开发。发。

如下图如下图 44 所示,三位所示,三位 NCNC 磨碎系统使用了磨碎系统使用了 SoftSESoftSERCANSRCANS 。。

Page 14: 一种开放式数控系统 ---HITCNC 及其关键技术
Page 15: 一种开放式数控系统 ---HITCNC 及其关键技术

试验试验 基于以上提及的基于以上提及的 HITCNCHITCNC ,一个三位的磨,一个三位的磨

碎系统如图碎系统如图 55 所示,并且一系列的试验也在此系所示,并且一系列的试验也在此系统上成功在两方面以证明统上成功在两方面以证明 HITCNCHITCNC 的开放性。的开放性。

Page 16: 一种开放式数控系统 ---HITCNC 及其关键技术

功能的可扩展性功能的可扩展性:改变代码传输模块和轴组模:改变代码传输模块和轴组模块,在原来系统上扩展块,在原来系统上扩展 NURBSNURBS 极化。极化。

模块的可替换性模块的可替换性:保持代码传输模块不改变和:保持代码传输模块不改变和改变轴组模块,转换改变轴组模块,转换 NURBSNURBS 极化算法和自适极化算法和自适应反馈应反馈 NURBSNURBS 极化算法。极化算法。

Page 17: 一种开放式数控系统 ---HITCNC 及其关键技术

为了替换不同的为了替换不同的 NURBSNURBS极化算法,只需要修极化算法,只需要修改轴组模块,这样其他模块就可以保持不改变。轴改轴组模块,这样其他模块就可以保持不改变。轴组模块是一个在在组模块是一个在在 RTXRTX条件下条件下 HITCNCHITCNC 系统的系统的 RRTDLLTDLL ,而且,而且 NURBSNURBS极化算法能通过已不同极化极化算法能通过已不同极化算法注册算法注册 RTDLLRTDLL 来实现。来实现。

在线扩展在线扩展 NURBSNURBS 计划功能比更换模块要复计划功能比更换模块要复杂的多,所以除了使用上面的方法注册轴组模块,杂的多,所以除了使用上面的方法注册轴组模块,NURBSNURBS 代码传输功能需要被加上,在代码传输功能需要被加上,在 HITCNCHITCNC系统中,代码传输功能是任务产生器执行的,我们系统中,代码传输功能是任务产生器执行的,我们能用不同的代码传输功能分贝编译任务产生器模块,能用不同的代码传输功能分贝编译任务产生器模块,并且注册一个用于并且注册一个用于 TRDLLTRDLL 。。

用传统的方法扩展用传统的方法扩展 NURBSNURBS极化并且代替极化并且代替 NNURBSURBS极化算法,是在极化算法,是在 HITCNCHITCNC 系统中使用以上系统中使用以上方法实现的。实际的机器实现为一个三维方法实现的。实际的机器实现为一个三维 NCNC 磨碎磨碎系统,该系统使用上面提及的系统,该系统使用上面提及的 NURBSNURBS极化算法,极化算法,该系统的机器部分如上图该系统的机器部分如上图 66 所示。试验结果指示所示。试验结果指示 HHITCNCITCNC 系统是灵活并具有开放性。系统是灵活并具有开放性。

Page 18: 一种开放式数控系统 ---HITCNC 及其关键技术

总结总结 本文介绍了一个基于标准接口的开放式本文介绍了一个基于标准接口的开放式 CNCCNC 系统——系统——

HITCNCHITCNC ,并且独立实现了该系统。它有如下一些特征:,并且独立实现了该系统。它有如下一些特征: (1)(1)它的外部接口是根据相应的国际标准,内部接口遵它的外部接口是根据相应的国际标准,内部接口遵

循循 OMACOMAC 协议,因此,协议,因此, HITCNCHITCNC 的开放性是非常有保证的开放性是非常有保证的。的。

(2)(2) 硬件和软件的完全分离时通过硬件和软件的完全分离时通过 SoftSERCANSSoftSERCANS 完成完成的,这大大提高了的,这大大提高了 NCNC 系统的开放性系统的开放性

(3)(3) 实时和非实时模块分别由实时和非实时模块分别由 COMCOM 和和 RTDLLRTDLL 实现实现 (4)(4) 机器工具的模块化是通过使用分等级的机器工具的模块化是通过使用分等级的 FSMFSM 实现,实现,使得控制流和机器工具分离。所以它们能够被分别改变,使得控制流和机器工具分离。所以它们能够被分别改变,也大大提高了系统的开放性。也大大提高了系统的开放性。

总的实时和非实时模块在正常操作过程中已经测试通总的实时和非实时模块在正常操作过程中已经测试通过了,最长时间是过了,最长时间是 126us126us ,每个模块的周期设为,每个模块的周期设为 2ms2ms ,,所以很明显实时性完全可行。实际机器试验结果也表明整所以很明显实时性完全可行。实际机器试验结果也表明整个机器的容量也是好的,而且系统有一定的现实意义和好个机器的容量也是好的,而且系统有一定的现实意义和好的开放性。的开放性。

Page 19: 一种开放式数控系统 ---HITCNC 及其关键技术

谢谢谢谢