当前位置: X-MOL 学术Int. J. Adv. Manuf. Technol. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Development of a novel component-based open CNC software system
The International Journal of Advanced Manufacturing Technology ( IF 2.9 ) Pub Date : 2020-06-21 , DOI: 10.1007/s00170-020-05590-6
Lisi Liu , Yingxue Yao , Jianguang Li

Component-based software development (CBSD) is widely utilized to develop open CNC applications. It aims to build an open CNC application by composing a set of components, each implementing specific CNC sub-domain logic. Components conform to a certain component model to keep conformant interactive behaviors. Due to there is no standard granularity to decompose CNC domain and no general component model, as well as seldom consider extra-functional properties, components are heterogeneous. Moreover, they have a direct dependency rather than depending on abstractions. In a nutshell, there are many open-source CNC applications built by heterogeneous and tightly coupled components. They can implement CNC functionality but are good at functional extension and reconfiguration. In this paper, we apply CBSD and dependency inversion principle to develop a novel open CNC application which allows customizing CNC functionality. Specifically, a new granularity to decompose CNC domain is proposed. A special sub-domain is designed to encapsulate the execution logic of other sub-domains at an abstract level and instantiate concrete implementation details at runtime according to configuration. The functional properties of sub-domains are exposed via abstractions. Therefore, as long as re-writing the execution logic and configuring corresponding implementation details, CNC functionality can be extended or reconfigured. A prototype and several components have been developed to test the performance of the application.



中文翻译:

开发基于组件的新型开放式CNC软件系统

基于组件的软件开发(CBSD)被广泛用于开发开放式CNC应用程序。它旨在通过组成一组组件来构建一个开放的CNC应用程序,每个组件都实现特定的CNC子域逻辑。组件符合某个组件模型,以保持一致的交互行为。由于没有用于分解CNC域的标准粒度,也没有通用的组件模型,并且很少考虑功能外的属性,因此组件是异构的。而且,它们具有直接的依赖关系,而不是依赖于抽象。简而言之,有许多由异构且紧密耦合的组件构建的开源CNC应用程序。他们可以实现CNC功能,但是擅长功能扩展和重新配置。在本文中,我们使用CBSD和依赖关系反转原理来开发新颖的开放式CNC应用程序,该应用程序可以自定义CNC功能。具体来说,提出了一种新的粒度来分解CNC域。一个特殊的子域旨在在抽象级别封装其他子域的执行逻辑,并根据配置在运行时实例化具体的实现细节。子域的功能属性通过抽象公开。因此,只要重写执行逻辑并配置相应的实现细节,CNC功能就可以扩展或重新配置。已经开发了原型和几个组件来测试应用程序的性能。提出了一种新的粒度分解CNC域。一个特殊的子域旨在在抽象级别封装其他子域的执行逻辑,并根据配置在运行时实例化具体的实现细节。子域的功能属性通过抽象公开。因此,只要重写执行逻辑并配置相应的实现细节,CNC功能就可以扩展或重新配置。已经开发了原型和几个组件来测试应用程序的性能。提出了一种新的粒度分解CNC域。一个特殊的子域旨在在抽象级别封装其他子域的执行逻辑,并根据配置在运行时实例化具体的实现细节。子域的功能属性通过抽象公开。因此,只要重写执行逻辑并配置相应的实现细节,CNC功能就可以扩展或重新配置。已经开发了原型和几个组件来测试应用程序的性能。因此,只要重写执行逻辑并配置相应的实现细节,CNC功能就可以扩展或重新配置。已经开发了原型和几个组件来测试应用程序的性能。因此,只要重写执行逻辑并配置相应的实现细节,CNC功能就可以扩展或重新配置。已经开发了原型和几个组件来测试应用程序的性能。

更新日期:2020-06-23
down
wechat
bug