
T. Staroveški, D. Brezak, T. Udiljak LinuxCNC – Napredni sustav CNC upravljanja: primjena i kritički osvrt ISSN 1330-3651(Print), ISSN 1848-6339 (Online) UDC/UDK 004.451.2:621.914.3-52 LINUXCNC – THE ENHANCED MACHINE CONTROLLER: APPLICATION AND AN OVERVIEW Tomislav Staroveški, Danko Brezak, Toma Udiljak Subject review This paper presents an application and a critical overview of the Enhanced Machine Controller (EMC2), a Linux based CNC open architecture control system (OAC) implemented in an industrial milling testbed platform. The development of such a machine tool was motivated by educational and research requirements, especially in the field of design and analysis of machining process monitoring and control algorithms. The EMC2 was analysed in view of compatible hardware components and software interfaces, configuration abilities and industrial applicability. Also, characteristics of the developed testbed together with the basic implementation details are depicted. Keywords: Computer Numerical Control (CNC), enhanced machine controller, LinuxCNC, open architecture controller, machine tool retrofitting, milling machine testbed LinuxCNC – Napredni sustav CNC upravljanja: primjena i kritički osvrt Pregledni članak Ovaj rad prikazuje osvrt na implementaciju upravljačkog sustava otvorene arhitekture, tzv. Enhanced Machine Controller-a (EMC2), koji je primijenjen na glodalici kao ispitnom postavu. Razvoj ispitnog postava motiviran je edukacijskim i istraživačkim potrebama, osobito u području razvoja i analize algoritama za nadzor i upravljanje procesima obrade odvajanjem. EMC2 sustav je razmatran s obzirom na kompatibilne hardverske komponente i mogućnosti prilagodbe specifičnostima obradnog stroja, kao i mogućnostima za industrijsku primjenu. U radu su također prikazane tehničke karakteristike ispitnog postava i upravljačkog sustava. Ključne riječi: numerički upravljani alatni strojevi (CNC), LinuxCNC, upravljački sustavi otvorene arhitekture, revitalizacija alatnih strojeva, ispitni postav za glodanje 1 Introduction ordinary PC hardware running FreeBSD or Linux. After this first initiative, several other projects have been In the past two decades, considerable effort has been launched in Europe, the USA and Japan, among which the put in the development of open control systems for most important are [5]: machine tools. Machine tool manufacturers recognized • OSACA (Open System Architecture for Controls these systems as a solution to the problem of how to within Automation System), define common concepts, develop basic technologies and • OMAC (Open Modular Architecture Controllers), produce basic components together in order to fulfill • OSEC (Open System Environment for Controller), constant demands for higher machine tool functionality • JOP (Japanese Open Promotion Group). and flexibility, product quality and cost reduction [1]. According to the IEEE standards (1003.0), "an open These projects were set up and supported by different system provides capabilities that enable properly machine tool makers, control and software vendors, implemented applications to run on a variety of platforms system integrators, end users and academics. Besides the from multiple vendors, to interoperate with other system aforementioned, university research activities in hardware applications and present a consistent style of interaction and software area of open architecture CNC systems have with the user". This means that an Open Architecture also resulted in different manufacturing systems presented Controller (OAC) has to be flexible in hardware and in [6 ÷ 14]. Also, several commercial systems such as software for all control levels, i.e. it has to be Delta Tau PMAC-NC, IBH PA 8000, Galil DMC 1000 standardized with respect to integration with other control and others have been developed [15]. systems and has to permit the integration of independent However, despite all these efforts, applications of application program modules, control algorithms, sensors open CNC architecture systems are still substantially and computer software/hardware developed by different limited to the research and development area because of manufacturers [2]. With the ability of implementation and the liability and standardization issues [15]. Moreover, integration of customer-specific controls by means of according to [5], some open control systems generally open interfaces and configuration methods, the offer a possibility for modifications in the non-real-time implementation of OAC is particularly important in the environment in a fixed software topology. Authors of that development of reconfigurable manufacturing systems [3] survey paper also emphasized that they lack the necessary and in the development of advanced manufacturing flexibility and are not based on vendor-neutral standards. systems with higher degree of autonomous operation This paper presents an overview of the application of accomplished by process monitoring and control modules. the second, more advanced version of the EMC software The first OAC solution was proposed by the US (EMC2) which was used as a CNC solution for a National Institute of Standards and Technology (NIST) redesigned three-axis milling testbed machine. The and was named Enhanced Machine Controller (EMC) [4]. machine was developed on the basis of technologically It had all necessary features of an advanced numerical outdated industrial planning machine, which was control system which can be implemented using an retrofitted for the purpose of the project for intelligent Tehnički vjesnik 20, 6(2013), 1103-1110 1103 LinuxCNC – the enhanced machine controller: application and an overview T. Staroveški, D. Brezak, T. Udiljak monitoring of a machine tool main spindle. Its aim was to develop an industry-applicable advanced motor spindle unit with monitoring and diagnostic characteristics which could identify or predict motor spindle failures and tool breakage locally and remotely (WAN/LAN). Additionally, the development of this machine tool was also fostered by a need for an open-controlled platform which could be used in the analysis of different control algorithms and process monitoring techniques. The EMC2 software, which runs on Linux-based operating systems (OS) with real-time extensions, was chosen because of its free open source modular structure, code maturity, high stability and quality performance. Considerable potential for commercial EMC2 implementation has been shown by several retrofitted/ developed prototype machines, including systems with complex kinematics. Currently, there are also several didactic EMC-based machines available on the market [16]. In this work, version V2.3 of the EMC2 software was chosen because it was the last and the most comprehensive version at the time. In the meantime, this version was replaced by newer, somewhat improved versions with fewer bugs and with several new features. Furthermore, the name of the software was also changed into the project name – LinuxCNC. Characteristics of machine tool elements and their design, of the control system hardware and of the EMC2 system, together with implementation details and remarks, are given in the following sections. 2 EMC Overview The first version of EMC was originally developed by Figure 1 EMC2 architecture the Intelligent Systems Division at the NIST. The work resulting from efforts to produce a motion control Among the four modules of EMC2, only EMCMOT package as a test platform for concepts and standards is a real-time module. The communications between non- remained in the public domain and the EMC quickly real-time modules are implemented by Neutral Messaging received attention among open source community which Language (NML) channels [20], and the communications continued to maintain the software. In 2003, the EMC2 between the real-time module (EMCMOT) and the non- version was introduced comprising several important real-time module (EMCTASK) is implemented either by features that simplified, organized and extended the shared memory or RT-Linux FIFO mechanisms [21]. original version [17]. The most significant advances of the EMC2 were the introduction of Hardware Abstraction 2.1 Hardware Abstraction Layer (HAL) Layer (HAL) module, which greatly simplifies the interface to the control hardware. Major code As mentioned previously, in order to further expand optimizations have also been done as well as an extended EMC reconfiguration characteristics, Hardware support for implementation in a variety of different Abstraction Layer (HAL), which is hierarchically placed machines with complex kinematic structures. between the EMCMOT/EMCIO modules and hardware Real-time extensions to Linux kernel are required for drivers (Fig. 1), is introduced. HAL is a dynamic end-user normal EMC2 operation, although it is possible to run the reconfigurable mechanism which allows real-time data EMC2 in a non-real-time environment for simulation transfer between the EMC2 modules and from the EMC2 purposes without interfacing the actual hardware. Support to the control hardware or other lower-level software currently exists for Linux kernel versions 2.4 and 2.6 with modules. It also provides a framework for the real-time extensions applied by either RTAI [18] or RT- development of hardware drivers and software modules Linux [19] patches. Experimental versions of EMC2 are that can be implemented in the EMC2 and executed in also built for 64-bit kernels. real time [22]. EMC2 consists of four main components (Fig. 1): Modules can be dynamically loaded, unloaded and
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages8 Page
-
File Size-