知识驱动的自动化一直是UGS公司产品的发展愿景,其中心思想就是PLM“开放式设计”的理念,承诺创造各种各样最合适的工具以提供柔性化的解决方案去捕捉和保留客户在整个支持的客户环境中的知识。在过去的十几年里,UGS公司不仅仅致力于软件功能实现、使用效率提高这种应用层面的实施与创新,同样还关注组织内部的知识提取保留,以及流程自动化等高端知识型自动化平台的开拓和发展,并一直走在高端CAD\CAE\CAM,PLM市场的前列。一个优秀的大型工程软件除了提供通用的功能之外,还要满足各类用户的知识驱动自动化和客户化的需求,在构筑先进一体化开放的框架的前提下提供了各种开发工具和接口。UGS 公司一直秉承这样的理念,持续开发现有的工具并且不断创造出新的工具,以满足其在多种软件、硬件和网络化平台上的运行通用性。Journaling and Automation,又称为Journamation 简称JA,它是NX3.0.0版本推出的新一代自动化工具,既具有平台无关性和开发语言无关性的开发优势,又兼备易操作性、柔性化等多种先进智能化自动化特点,是PLM开放框架下的一种新型客户化开发工具。
1. 什么是JA?
Journamation(Journaling and Automation)是NX Open框架下一个具有自由的中性语言平台的合并日志化(Journaling)和自动化(Automation)工具。它记录构成一个常用流程的一系列动作,类似于UG/NX Macro工具,同时也是一种移植I-DEAS 程序的工具。Journaling是一种实现快速自动化的工具,它通过解释记录一个NX任务来产生一个脚本文件,之后用户可以直接播放这个文件来重现这个任务。此外用户还可以编辑这个脚本文件以加强某些功能,如加入循环,变量和条件逻辑等基本的程序构造,达到软件客户化的结果;或者直接利用JA/APIs进行专业化的客户化编程,从而实现了客户化过程的自动化(Automation)。
2. JA 工具的特点和优势
2.1基于开放统一的先进架构
JA 是NX Open架构之上的一个工具,在这个工具之下,NX提供了大量的JA/APIs来支持它的应用。NX提供了一个自动化的构架用来作为基础为所有的NX APIs, KF(Knowledge Fusion) 和一个Journaling功能作服务(图1)。这个框架被称为Common API(通用API层),这些基础合并为一个功能强大而且是自由语言中性特性的平台Journaling和Automation的工具。这个单一的自动化框架反映了公司的自动化的战略--提供一个通用、兼容和稳定的方法为我们的用户构筑不同种类客户化API接口。这种开放式框架在NX 内柔性化地集成其他辅助软件的功能,目的是在不同的地点(不同的网络)甚至跨网络的环境下,能够分享不同数据平台的数据来集成一些第三方和NX的应用,或者创建客户化的应用软件,从而允许不同地域和多学科的团队更加有效地进行协同化设计、开发和制造他们的产品。
图1 NX/Open 架构关系图
与以往各种开发语言API库单独开发的状况相比,现在NX开发团队采用同一套工具在内部进行开发,然后再用一套公用的API层为各类语言接口进行转化。换而言之,以用户的角度看,就是说无论你采用哪一种语言的API其最终调用的是同一个内核函数。上图2可以看出NX Open APIs为客户提供了NX Open C/C++ API, NX Open for .NET API,NX Open for Java,JA/APIs,KF等接口,通过这些接口可以与NX Object Model相连接,从而调用NX 的各个功能。基于不同语言或工具的API都是由同一个对象转化而来的这样的一个显著特点,所以NX/Open能够保证了功能的同一性和语言的灵活性,目前它支持C++,.NET和Java等语言。NX/Open 的优势框架允许NX 有精确的能力为多种语言提供平台,这意味用户能够选择自己认为合适的语言开始工作。由于支持所有的语言都是由通用的代码产生的,所有自动化的对象和方法将作为对应语言的原生对象,这里就再不会出现某种函数只有某一类语言才能支持而不被另一种语言支持的情况,也就是说具备了平台无关性和开发语言无关性的特点。
基于上述这个优秀的平台,JA工具自然具备了这个中性化自由语言的优点。这个原因为了最大化地覆盖用户是适用面,因为当今3种最流行的语言-C++,. NET 和 Java,每一种语言都拥有几乎相同数量的用户,选择他们中的任何一种来作为主要的NX自动化平台语言都意味着将有一部分用户不能使用自己熟悉的语言进行工作。JA提供了针对上述三种语言的提供了相应的API,以支持对记录任务的三种语言解释和VB.NET的自动播放。
JA 工具的发展历经了NX3到NX5版本,其应用性不断增强,功能也不断扩展,从最初的对CAD 建模特征的支持,到NX5版本对CAE的应用的全面支持,实现了PLM 一体化框架下的集成应用,真正实现了整体解决方案的知识驱动创新。我们也希望看到越来越多的客户采用这样的工具,针对自己的实际需求开发出更多更好的客户化应用程序,在过程及方法的标准化、知识捕捉以及开发时间上面获得更大的收获,同时我们也积极地收集全球客户的反馈意见,努力增强下一个版本的实用性和功能扩展性。(end)