Numerical control (CNC) technology is profoundly influencing the development of a wide range of manufacturing sectors with unprecedented depth and breadth, bringing revolutionary changes to the industry. The core of CNC technology is the CNC system, and the development direction of the CNC system largely determines the development direction of CNC technology. With the continuous development of CNC technology, traditional CNC systems, due to their dedicated and closed architecture, can no longer adapt to the changing and competitive manufacturing market, nor can they meet the needs of modern manufacturing's shift towards information-based and agile manufacturing models. This urgently necessitates the development of new CNC systems that are open, stable in performance, and inexpensive. Today, with the rapid development of computer technology, CNC technology is undergoing a fundamental transformation, evolving from a dedicated, closed, open-loop control mode to a general-purpose, open, real-time, dynamic, fully closed-loop control mode. The open architecture gives CNC systems better versatility, flexibility, adaptability, and scalability. To adapt to the requirements of CNC in-line, networked, widespread, personalized, multi-variety, small-batch, flexible, and rapidly developing CNC technologies, the most important aspect is the openness of the architecture, designing and producing open CNC systems. The Concept of Open CNC Systems The concept of open architecture in CNC systems emerged in the late 1980s and early 1990s. It was proposed by European and American countries to adapt to new changes in the machine tool manufacturing industry in terms of technology, market, and production organization. Its aim was to establish a new control system design framework, enabling systems to develop towards modularity, platformization, standardization, and serialization, thereby improving product competitiveness under the premise of collaboration. According to the IEEE definition, an open control system should provide the ability for applications running on various platforms from different vendors to be fully implemented on the system, interoperable with other system applications, and possessing a consistent user interface. Open CNC systems refer to PC-NC, which also introduces the openness inherent in PCs into CNC systems dedicated to machining machinery. Openness within System ComponentsOpenness between System Components The concept of openness can be understood from two aspects: temporal openness and spatial openness. Temporal openness refers to the software and hardware platforms and their specifications, ensuring that the platform can adapt to the development of new technologies and accept new equipment. The openness of time has two aspects: scalability and portability. The openness of space refers to the system interface and its standardization, which can be divided into interoperability and interchangeability. Characteristics of open CNC systemsFeatures of open CNC systems As can be seen from the above definition, an open CNC system is a modular architecture, consisting of a system platform and application-oriented functional modules. It has both the openness of the interface and the openness of its own functions. It has the following basic characteristics[3]: Interoperability It has standardized interfaces, communication and interaction models. By providing standardized interface communication and interaction mechanisms, different functional modules can run on the system platform with standard application interfaces and obtain equal interoperability and coordinated work; Portability Different application modules can run on system platforms provided by different manufacturers, and the system software can also run on hardware platforms with different characteristics. Different system functional modules can run on different system platforms. Therefore, the system's functional software should be device-independent, meaning it should use a unified data format and control mechanism, and through consistent device interfaces, enable each functional module to run on different hardware platforms; Scalability A standardized environment platform is provided, allowing modules with different functions to be integrated. CNC users or secondary developers can effectively integrate their own software into the NC system to form their own dedicated system. Its characteristic is adding and removing functionality by loading and unloading specific functional modules; Interchangeability Functional modules with different performance and execution capabilities can be interchanged . The selection of hardware and functional software constituting the system is not controlled by a single vendor and can be replaced according to functional, reliability, and performance requirements without affecting the overall coordinated operation of the system; Scalability : The functions and scale of the CNC system can be flexibly set and easily modified. The size of the control system (hardware or component modules) can be increased or decreased according to specific applications. Advantages of Open CNC Systems It can be seen that open CNC systems are built on an open platform with a modular structure, allowing users to select and integrate components as needed, quickly adapting to different application requirements. Compared with traditional closed, dedicated CNC systems, they have the following advantages: Strong adaptability and flexible configuration capabilities, adaptable to various equipment, and flexible configuration and integration; Control software with timely expansion and connectivity functions, keeping pace with the development of new technologies and adding various new functions; System expansion can be easily achieved by reserving interfaces for inserting user-specific software or by providing user APIs and programming specifications for users to develop their own dedicated modules; Adaptability to the rapid development and upgrading of computer and information technologies, effectively protecting users' original investments; Simple operation and convenient maintenance. Motion control can be achieved through simple programming on a PC without the need for specialized CNC software; it follows a unified standard architecture specification, with compatibility, interchangeability, and interoperability between modules; it features updated technology and more powerful functions, enabling the control of various motion trajectories, making it a replacement product for traditional CNC devices; its modular structure allows for easy combination to establish control systems suitable for different occasions and functional requirements, significantly shortening the research and development cycle of new products; users can develop their own functional modules according to their needs; it organically combines the information processing capabilities and open features of the PC with the motion trajectory control capabilities of the motion controller, resulting in strong information processing capabilities, high openness, accurate motion trajectory control, and good versatility. PC-based Open CNC SystemTypes of PC-based Open CNC Systems PC-based open CNC systems can fully utilize the computer's hardware and software resources, allowing for convenient programming using general-purpose high-level languages. Users can flexibly combine and use standardized peripherals and application software. Using a computer also facilitates networking. PC-based open CNC systems can be broadly classified into the following types [1, 2]. PC-embedded NC systems integrate a PC into the NC (NC machine tool), with a dedicated bus connecting the PC and NC. The system offers fast data transmission and rapid response, and the prototype NC system can be used without modification. However, it cannot directly utilize a general-purpose PC, limiting its openness; the powerful functions and abundant hardware and software resources of a general-purpose PC cannot be effectively utilized. While this type of CNC system has a degree of openness, its NC component remains a traditional CNC system, and its architecture is not open. PC-embedded NC system This type of system consists of an NC card (motion control card) inserted into the expansion slot of a general-purpose PC. It fully guarantees system performance, offers strong software versatility, and provides flexible programming. This is currently a widely used structure. This structure uses a "PC + motion controller" approach to build the CNC system hardware platform, with an industrial PC as the master control computer, commercially standardized modules, and a PC bus. A multi-axis motion controller acts as the system slave, forming a master-slave distributed architecture. All-software NC systems refer to systems where all CNC functions are implemented by a PC, and servo drives are controlled via servo interface cards installed in the PC's expansion slots. These systems offer good software versatility and flexible programming. The core of this type of CNC device is the PC, fully utilizing its ever-increasing computing speed, expanding storage capacity, and continuously optimized operating system to achieve motion trajectory control and logic control of switching quantities in machine tool control. Software-based CNC systems implement motion controllers as application software. Besides supporting user customization of upper-level CNC software, their greater openness is reflected in their support for user customization of motion control strategies. Simultaneously, software CNC systems are more aligned with computer technology and strive to make CNC technology the standard equipment driver for advanced manufacturing applications. In this type of CNC system , the main functional components are all represented as application software, representing a technological revolution in implementation. The architecture of a PC-embedded open CNC system is shown in Figure 1. Figure 2 shows the structure of a PC-NC open CNC system. Figure 2 shows the composition of a PC-NC mode open CNC system. Its hardware system mainly consists of an industrial control computer, motion control card, drive and amplification components, AC servo motors, position detection components, and interface control circuits. The industrial control computer is the information management component, while the motion control card is the motion drive and algorithm control component. The software system can be developed using object-oriented programming methods under the Windows 2000 operating system, with Visual Basic or Visual C++ as development tools, to implement the basic functions of the CNC system. In this mode, the motion control card mainly undertakes real-time tasks such as servo control, path planning, and programmable logic control; the industrial control computer mainly completes non-real-time tasks such as system management, CNC programming, CNC simulation, graphic interpolation, human-machine interface processing, and network functions. The control kernel of the industrial control computer is the core of the entire CNC system. It exchanges information with the motion control card by calling application programming interfaces corresponding to various variables and functions in the motion control card and is responsible for coordinating the entire system. Key Technologies for Open CNC Systems After experiencing two development stages—introduction and assimilation—China has made breakthrough progress in the field of CNC technology, achieving independent development of CNC systems with its own software and hardware copyrights. Simultaneously, research on the openness of CNC systems is underway. To achieve an open structure for CNC systems, the following key issues need to be addressed: 1. Establishing an open CNC system manufacturing protocol, forming a complete set of standard specifications for the system's application software, hardware, and network functions, standardizing the system's software and hardware interfaces and communication protocols, enabling controller manufacturers and machine tool manufacturers to conduct orderly development and production under the guidance of the manufacturing protocol, and achieving extensive cooperation on this basis. 2. Achieving modularization, standardization, and serialization of system hardware, and improving its reliability and real-time performance. This is achieved by modularizing the system's CPU structure, communication methods, motion control, and auxiliary control, creating functional modules according to function, and achieving standardization and serialization, with each module unit able to communicate using defined standardized interfaces. 3. Constructing a software platform independent of the hardware system. Currently, to reduce the dependence of CNC system software on hardware, it is fundamentally impossible to achieve software openness. Therefore, developing an independent software platform is essential. Considering the real-time and multi-tasking nature of CNC systems, a real-time multi-tasking software platform should be constructed, with its basic functions modularized and typicalized. This allows for unified scheduling and mutual independence among functional modules. When providing software for CNC systems with different hardware structures, only the corresponding software modules need to be configured according to their functions, achieving software independence and openness. Since each functional module does not affect other functional modules, users can create new functional modules as needed and add them to the system, or replace existing functional modules, giving the system good functional scalability. An optimization system software should be developed, integrating various optimization technologies into the software package. This software should be used to optimize the configuration of system machining parameters to optimize the machining process. Various intelligent module technologies should be analyzed and compared to select the optimal control module for product reconstruction, completing the second stage of system development. Conclusion Open CNC systems are an inevitable trend in the development of CNC technology, bringing many benefits to CNC system manufacturers, machine tool manufacturers, and users. PC-based open CNC systems offer greater flexibility, fully leveraging the abundant hardware and software resources and powerful technological advantages of PCs. This facilitates the more perfect implementation of CNC system functions such as user interface, graphical display, and dynamic simulation. Modular programming significantly enhances the system's versatility, scalability, and portability, enabling functional expansion.