E N D
摘要 • 为了在数控系统中达到可修改性和可配置性的目的,HITCNC这种开放结构的数控系统,是基于接口标准研究和制造了。这个系统的外部接口是设计为合相应得国际标准是一致的。而内部接口遵循开放结构控制(OMAC)协议。在研究和设计过程中,运用了面向对象技术以确保HITCNC的开放性,静态编程也根据模块化被应用到CNC系统中。HITCNC也实现实时和非实时模块采用实时动态链接库(RTDLL)和COM技术。FSM也被HITCNC采用去做动态模块,硬件和软件的完全分离也被HITCNC采用通过应用SoftSERCANS技术中。基于这种关键技术的应用程序减少了编程负载。并且软件编程代替了硬件功能,这就提供了大量的技术保证HITCNC的开放性。最终,基于HITCNC,一个三维磨粉系统产生了。在这个系统中,一系列的试验说明HITCNC是正确和灵活的,并且有好的开放性。
概述 • 开放结构的计算机数控系统成为数控领域的主流和关键技术。当今,开放式系统被认为有如下五个特征:可交互性,可携带性,可量测性,互操作性和可扩展性。 • 随着开放式数控系统的发展,如何能让其开放性更好的实现成为研究的焦点。本文开发了一套开放式计算机数控系统,即哈尔滨大学科学数控系统(HITCNC),基于接口标准,详细分析了HITCNC实现开放性的关键技术,并且开发了基于该系统的一个三维的磨碎系统。
HITCNC的关键技术1.1 基于接口标准的系统1.1.1 接口标准的综述 • 开放结构的CNC系统应该是模块化并且其外部和内部接口必须准循一系列的国际标准和工业标准。因此,本文介绍了基于标准的开放式结构的CNC系统概念如下:开放式CNC系统采用标准模块结构,数控系统中模块之间的通信、数控系统之间的通信都是通过相应的接口实现的。而一个真正开放式的CNC系统必须符合这些标准。
NC系统的这些接口标准可以被分为两组——外部接口和内部接口,如下图1所示。外部接口包括NC编程接口、CNC系统和SERVO系统的接口、CNC系统的输入输出设备。如今,每种外部接口都有相应的国际和工业标准。比如编程接口标准ISO6983,模块数据交换标准STEP-NC;CNC和servo系统之间接口电压为+/- 10伏的模拟电压,串行实时通信系统(MACRO)和FireWire等等;CNC和输入输出设备之间的接口是profibus,interbus以及can总线。CNC和监控室的接口主要是采用LAN总线。
1.1.2HITCNC系统接口的安排 • 本文准循的原则是基于标准构建系统,设计开放式结构的CNC系统HITCNC,接口工程设计如下: • (1)HTICNC和servo系统的接口、HITCNC和I/0设备接口采用SERCOS标准。为加强系统开放性,我们应用SoftSERCANS技术。 • (2)目前NC编程接口标准是ISO6983和STEP-NC。而IS06983是主流;STEP-NC是将来的发展方向。所以考虑到工作负载,本文采用ISO6983标准。 • (3)在内部接口方面,在深入分析了OMAC,OSACA和OSEC之后,我们决定使用OMAC协议。
1.2静态模块1.2.1 HITCNC的模块结构 • 为使CNC系统模块化,模块必须能够可重用。使用面向对象技术,本文在NC系统中充分利用了静态模块是系统模块化,宾且将系统归类为如下基本功能模块,见图2。 • (1)人机接口(HMI):为了能在操作员和控制器之间交互,主要是能在系统运行之间和运行之时能改变系统参数。 • (2)任务协调模块:用于任务的分配,协调合派出 • (3)任务产生模块:用于代码传输和语法检测,比如:提取NC程序的信息,产生运动命令包括运动信息和逻辑控制命令,完成刀具位置偏移运动指令。 • (4)轴组模块:用于调制速度和应用两极化,再细分运动指令在一个给定的反馈速率在两极化期间去完成线性反馈量,并且分解为相应轴的坐标命令,由此事实上输入信息到轴模块。 • (5)轴模块从轴组模块接受命令,同时,读出反馈信息,在用户需要坐标控制和速度控制是选择调用servo控制,并输出控制指令到外部执行单元。 • (6)控制规则模块:用于计算servo控制规则,提供主要控制策略,比如:PID控制规则、模糊控制规则和神经网络控制。 • (7)离散逻辑控制模块:用于执行输入变量和内部状态变量的二进制计算,从而得到相应的输出和内部状态变量,从而实现控制输入输出设备。
1.2.2 组件模块(COM)和动态链接库(DLL) • 根据实时功能需求,模块可分为实时和非实时两种,分别用实时动态链接库(RTDLL)和组件模块(COM)实现。 • COM是微软的标准模块,它不仅定义了组件之间的接口标准,还提供了组件的环境。COM是一种特殊的动态链接库。超级COM提供成熟的技术保证交互性,可扩展性,可携带性和交互更改性。 • CNC的实时责任包括极化计算,位置控制和离散逻辑控制,这些都可用RTDLL完成,RTDLL能按需加载相应模块,并容许分开模块从而改善系统性能。DLL采用面向对象编程技术是可扩展的,可重用的,可更改的,开放的。
1.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系统之间的通讯,使整个系统的结构变得更为简单。总之,工业伺服现场总线的迅速发展及标准化的实现,为数控系统的开放性奠定了坚实的基础,也是软件数控技术发展的又一重要推动力。
多态机(FSM)通常用于反应系统模块,这是个事件驱动系统。FSM模块分解变化为事件并产生反应。机器工具是一个典型的反应系统,并且等级的FSM被采用为描述NC系统的行为,在FSM模块中,机器工具的动作可以被认为是所有模块动作的整合,机器工具德操作过程也就是FSM传输所有模块的过程,该系统中,HITCNC动作模块被描述为使用了等级化的FSM。多态机(FSM)通常用于反应系统模块,这是个事件驱动系统。FSM模块分解变化为事件并产生反应。机器工具是一个典型的反应系统,并且等级的FSM被采用为描述NC系统的行为,在FSM模块中,机器工具的动作可以被认为是所有模块动作的整合,机器工具德操作过程也就是FSM传输所有模块的过程,该系统中,HITCNC动作模块被描述为使用了等级化的FSM。 • 含有FSM的任务单元能从系统的数据流中抽象出来,任务单元的引用能被扩展和加强系统性能。比如:在HITCNC中扩展费标准速率的b-spline(NURBS)极化功能等于加强系统得功能。所有模块除了含有任务产生器和轴组的模块,不需要被模块化,因为采用了FSM模块,这样也大大减少了编程负担。
HITCNC系统的主要模块功能是: • ①任务协调器,主要负责操作模式的切换,运动控制和离散逻辑控制等任务协调和调度; • ②任务生成器,主要完成语法检查、译码和刀具补偿等非实时性任务; • ③轴组,主要负责完成加减速处理、插补功能,将译码得到的运动段(包括直线、圆弧、Nurbs等)转化为单个插补周期内相应轴上的一系列目标点,并输出给各个轴模块; • ④轴,对单个进给轴的运动实施控制。
1.4 HITCNC应用SoftSERCANS • CNC系统的控制器和servo系统信息交互的可能性直接影响CNC系统。唯一广泛应用到CNC和servo系统通信的国际标准是SERCOS数字接口。SoftSERCANS运行的DLL能被实时应用程序和Win32程序调用,这也是SERCOS技术在软件上的应用。软件代替硬件功能,减少接口卡的费用是SoftSERCANS的优势,而且SoftSERCANS能适应个人计算机的性能。因此,模块和开放CNC软件模块能使用SoftSERCANS开发。 • 如下图4所示,三位NC磨碎系统使用了SoftSERCANS。
试验 • 基于以上提及的HITCNC,一个三位的磨碎系统如图5所示,并且一系列的试验也在此系统上成功在两方面以证明HITCNC的开放性。
功能的可扩展性:改变代码传输模块和轴组模块,在原来系统上扩展NURBS极化。功能的可扩展性:改变代码传输模块和轴组模块,在原来系统上扩展NURBS极化。 • 模块的可替换性:保持代码传输模块不改变和改变轴组模块,转换NURBS极化算法和自适应反馈NURBS极化算法。
为了替换不同的NURBS极化算法,只需要修改轴组模块,这样其他模块就可以保持不改变。轴组模块是一个在在RTX条件下HITCNC系统的RTDLL,而且NURBS极化算法能通过已不同极化算法注册RTDLL来实现。为了替换不同的NURBS极化算法,只需要修改轴组模块,这样其他模块就可以保持不改变。轴组模块是一个在在RTX条件下HITCNC系统的RTDLL,而且NURBS极化算法能通过已不同极化算法注册RTDLL来实现。 • 在线扩展NURBS计划功能比更换模块要复杂的多,所以除了使用上面的方法注册轴组模块,NURBS代码传输功能需要被加上,在HITCNC系统中,代码传输功能是任务产生器执行的,我们能用不同的代码传输功能分贝编译任务产生器模块,并且注册一个用于TRDLL。 • 用传统的方法扩展NURBS极化并且代替NURBS极化算法,是在HITCNC系统中使用以上方法实现的。实际的机器实现为一个三维NC磨碎系统,该系统使用上面提及的NURBS极化算法,该系统的机器部分如上图6所示。试验结果指示HITCNC系统是灵活并具有开放性。
总结 • 本文介绍了一个基于标准接口的开放式CNC系统——HITCNC,并且独立实现了该系统。它有如下一些特征: • (1)它的外部接口是根据相应的国际标准,内部接口遵循OMAC协议,因此,HITCNC的开放性是非常有保证的。 • (2)硬件和软件的完全分离时通过SoftSERCANS完成的,这大大提高了NC系统的开放性 • (3)实时和非实时模块分别由COM和RTDLL实现 • (4)机器工具的模块化是通过使用分等级的FSM实现,使得控制流和机器工具分离。所以它们能够被分别改变,也大大提高了系统的开放性。 • 总的实时和非实时模块在正常操作过程中已经测试通过了,最长时间是126us,每个模块的周期设为2ms,所以很明显实时性完全可行。实际机器试验结果也表明整个机器的容量也是好的,而且系统有一定的现实意义和好的开放性。