NC State
BioResources
Rakic, A., Zivanovic, S., Dimic, Z., and Knezevic, M. (2021). "Digital twin control of multi-axis wood CNC machining center based on LinuxCNC," BioResources 16(1), 1115-1130.

Abstract

This paper presents an application of an open architecture control system implemented on a multi-axis wood computer numerical control milling machining center, as a digital twin control. The development of the digital twin control system was motivated by research and educational requirements, especially in the field of configuring a new control system by “virtual commissioning”, enabling the validation of the developed controls, program verification, and analysis of the machining process and monitoring. The considered wood computer numerical control (CNC) machining system is supported by an equivalent virtual machine in a computer-aided design and computer-aided manufacturing (CAD/CAM) environment, as well as in the control system, as a digital twin. The configured virtual machines are used for the verification of the machining program and programming system via machining simulation, which is extremely important in multi-axis machining. Several test wood workpieces were machined to validate the effectiveness of the developed control system based on LinuxCNC.


Download PDF

Full Article

Digital Twin Control of Multi-Axis Wood CNC Machining Center Based on LinuxCNC

Aleksandar Rakic,a Sasa Zivanovic,b Zoran Dimic,c,* and Mladen Knezevic d

This paper presents an application of an open architecture control system implemented on a multi-axis wood computer numerical control milling machining center, as a digital twin control. The development of the digital twin control system was motivated by research and educational requirements, especially in the field of configuring a new control system by “virtual commissioning”, enabling the validation of the developed controls, program verification, and analysis of the machining process and monitoring. The considered wood computer numerical control (CNC) machining system is supported by an equivalent virtual machine in a computer-aided design and computer-aided manufacturing (CAD/CAM) environment, as well as in the control system, as a digital twin. The configured virtual machines are used for the verification of the machining program and programming system via machining simulation, which is extremely important in multi-axis machining. Several test wood workpieces were machined to validate the effectiveness of the developed control system based on LinuxCNC.

Keywords: Digital twin; Multi-axis machining; Wood CNC machine; LinuxCNC

Contact information: a: University of Belgrade, School of Electrical Engineering, Bulevar kralja Aleksandra 73, 11120 Belgrade; b: University of Belgrade, Faculty of Mechanical Engineering, Kraljice Marije 16, Belgrade 11120 Serbia; c: LOLA Institute, Kneza Višeslava 70a, Belgrade 11030 Serbia; d: Technical School, Kosovke djevojke 18, Gradiska 78400, Serb Republic; *Corresponding author: zoran.dimic@li.rs

INTRODUCTION

Current trends in the manufacturing industry are linked to various initiatives, e.g., Industry 4.0 cyber-physical systems (CPS) (Rajkumar et al. 2010), internet of things (IoT) (Dervojeda et al. 2015), cloud computing (Kagermann et al. 2013), and machine tool cyber twins (which is better known as a digital twin, a digitalization of the machine tool) (Liu and Xu 2017). Primary trends of digitalization in the manufacturing industry are increasing efficiency, productivity, and the quality of products. As a base of the modern manufacturing industry, numerical controlled machine tools play an essential role in industrial digitalization (Zivanovic et al. 2018).

A partial virtual representation of machines is currently well known by machine tool builders, in the form of computer-aided design (CAD), computer-aided manufacturing (CAM), and finite element modeling (FEM). In the past few years, a new application of the digital twin has increased in popularity, called “virtual commissioning” (Hoffmann et al. 2010; Lee and Park 2014). “Virtual commissioning” implies that a virtual representation of the machine is used to design, program, and validate the controller. At the same time, digital twins provide the possibility of interacting with the real representation of the machine. The digital twin is based on a combined application of the cyber and physical worlds. The cyberworld consists of computation, communication, and control systems, and in a digital twin, both the physical and cyberworlds will be interconnected. The cyberworld will make use of real machine tools and process data throughout its life cycle. A digital twin of a manufacturing system is created by combining the corresponding theoretical models, according to machine tool design and process specifications. During part manufacturing, the holistic simulation model can be updated, according to real-time machine tool conditions, using data obtained through monitoring and additional characterization tests designed for this purpose (Armendia et al. 2019a; 2019b).

Wood computer numerical control (CNC) machinery automatically controls the movements of a spindle and table. In the wood industry, CNC woodworking machinery is used for automatically cutting, milling, drilling, and shaping. A type of CNC router has become especially popular in furniture manufacturing and has been used for the grooving, side milling, and patterning of furniture material. In addition, CNC routers have been introduced into the production lines of precutting factories and have been used under demanding processing conditions to raise productivity (Ohuchi and Murase 2005). Milling is the process of machining wood using CNC machine tools in conjunction with rotating tools (milling tool, milling head, etc.), where the depth of the cut changes the nominal chip thickness. In counter-rotating climb milling, the chip thickness changes from the minimum to the maximum value, while in simultaneous conventional milling, the chip thickness changes from the maximum value to the minimum value (Barcik and Gasparik 2014; Vanco et al. 2017).

The current study establishes a new development methodology for open architecture CNC systems in accordance with the Industry 4.0 paradigm. The speeding up of development cycles in an industrial environment have proved challenging, leading us to a “virtual commissioning” strategy, which, along with its “digital twin” technology, presents the main contribution within the field of control systems development. The paper is organized as follows: Following this introductory section, the description of the multi-axis wood CNC machining center will be presented, including the kinematic modeling. The next section will describe the structure of the programming system, which includes the programming in the CAD/CAM environment. The next section describes configuring an open architecture control system based on LinuxCNC, after which the configuring of the virtual multi-axis wood CNC machining center as a digital twin is presented. In the next section, the digital twin control system is verified through experiments, while the concluding remarks are summarized in the last section.

EXPERIMENTAL

Description of the Multi Axis Wood CNC Machining Center

The six-axis wood CNC machining center (Bacci MX6, Paolino Bacci, Cascina, Italy) is equipped with a very rigid base structure, which is especially suited for the production of elements such as chairs, tables, beds, shells, stairs, and musical instruments (as shown in Fig.1).

The wood CNC machining center is equipped with two independent working tables, that can perform movement along the Y/V axes. Movement of the machine column is performed along the longitudinal axis (X), while the working unit slides in a vertical direction (Z axis) along the machine column. The working unit has two rotations, first B, and second A. The CNC machine has four independent electro spindles, which can change during the machining process via rotating. All the components, along with the main assembly of the machine, were modeled in PTC Creo. The configured virtual machine with marked translatory and rotary axes is shown in Fig. 1a.

Fig. 1. Multi-axis wood CNC machining center

Inverse and direct kinematics (Kinematic modeling)

The multi-axis wood CNC machining center is considered a specific configuration of the five-axis vertical milling machine with the YY’OXZBA structure spindle-tilting type. In this paper, the kinematic modeling involves solving direct and inverse kinematics. Switching kinematic functions are implemented according to the functional demands, and the machine kinematics structure.

Figure 2 represents the geometric model of the machine mechanism shown in Fig. 1. The coordinate reference frame (M) and the coordinate tool frame (T) are attached to the pivot and the tooltip, respectively. The ZT axis coincides with the tool axis, according to the adopted tool frame. The joint coordinates and the world coordinates are defined as shown in Fig. 2.

Fig. 2. Kinematic model

If the existence of two worktables is neglected, then it is well known how to solve the direct and inverse kinematic problems for machine tools with the presented kinematics structure. The inverse functions for both worktables are shown in Eqs. 1 through 6,

where coordinates and angles determine tool position and orientation in the Cartesian coordinate system. Pivot length and tool length are designated as and , respectively.

In parallel with the inverse kinematic functions, the direct kinematic solutions were derived, as shown in Eqs. 7 through 12,

where and are scalar joint variables controlled by actuator.

The existence of two worktables can offer several benefits to this kind of machine tool, but two of these benefits are of primary interest in terms of efficient production. The first aim of redundant axes is to increase the productivity of the machine tool by making the workspace switchable, which allows machining and setting up at the same time on different worktables. The second is when both worktables work simultaneously, allowing for the machining of bigger workpieces.

The requested functionality of the machine tool can be achieved via the implementation of switchable functions within the kinematic software module. Figure 3 shows the direct and inverse algorithms with the possibility of activating the desired axes according to user demands.

The implementation of switchability in kinematics functions is possible by using customized M codes, e.g., M200-M202. When the interpreter of the G-code program recognizes code M200-M202, it calls a defined subroutine, as shown in Fig. 4. Before changing the execution flow in the kinematic function, it is necessary to move the orientation axes into a neutral position, i.e., A = 0 and B = 0. If not, during the switch from the axis to the and vice versa, the transient movement could occur with servo error. Code M65 sends a signal to the kinematics module, which changes the execution flow according to a specific P-code. Different P-codes control the activation or deactivation of various parts of the kinematic software, as shown in Figs. 3 and 4.

Fig. 3. Kinematic algorithms

Fig. 4. Customized M functions

Structure of the Programming System

The programming of a wood CNC machining is very conventional. Machining programs can be generated via the use of standardized or specialized CAD/CAM systems. Standardized CAD/CAM systems, e.g., PTC Creo, CATIA, NX Siemens, AlphaCAM, etc., offer the possibility of generating machining programs for vastly different machine tools, including the Bacci wood CNC machining center. PITAGORA (Pitagora 2020) is a CAM software that was specially designed for the Bacci wood CNC machining center. Its usage is straightforward and has all the necessary power to perform the required operations.

Programming in the CAD/CAM environment

The programming system applicable to the wood CNC machining center is shown in Fig. 5. The CAD model of a workpiece is the base for tool path generation. In the case of this study, the CAD/CAM system PTC Creo is used to accomplish a file with a tool path (CLF). The generated tool path is tested through the NC Check (material removal simulation) software module, which is followed by the G-code generation. Postprocessing for the vertical 5-axis milling machines, configured for AB spindle-tilting type, is used to obtain the machining program. The CAD/CAM system PTC Creo is capable of performing a verification of the obtained programs through virtual simulation.

Fig. 5. Programming system in the CAD/CAM environment

Configuring the Open Architecture Control System Based on Linux CNC

The development of the control system for the presented wood CNC machining center is based on an available open architecture control software LinuxCNC. LinuxCNC was initially developed by NIST (National Institute of Standards and Technology), which is located in Gaithersburg, MD (Staroveški et al. 2013; LinuxCNC 2020). As a real-time control system with an open architecture, it is used to control various types of CNC machine tools and robots. Years of research and development on the LinuxCNC program have produced a solid, time-proven machine control platform. A simplified structure of the low-cost control system based on LinuxCNC is shown in Fig. 6. LinuxCNC software system contains the following four base modules: (i) movement controller EMCMOT; (ii) discrete input/output signals controller EMCIO; (iii) process controller EMCTASK; and (iv) GUI (Graphical User Interface) (Zivanovic et al. 2016; LinuxCNC 2020).

The EMCMOT module performs the real-time interpolation of the programmed path, according to the direct and indirect kinematic functions. The EMCIO module processes all peripheral operations, while the EMCTASK (task coordinating module) module interprets the G-code instructions and coordinates the activities of the EMCMOT and EMCIO modules accordingly. As shown in Fig. 6, communication between the real-time EMCMOT module and the non-real-time EMCTASK module is done through the shared memory buffer, which is a part of the real-time operating system mechanism.

Fig. 6. Structure of the control system based on LinuxCNC

A GUI (graphical user interface) is an external program that communicates with LinuxCNC by sending various commands, e.g., machine turn on, switch to automatic mode, start the program, and machine shut down. The GUI can also send manual messages, initiated by the operator, e.g., moving the machines axes in manual mode (JOG) or throwing all axes in a reference position. Different GUIs can be used; however, Axis is the most commonly used user interface. The Axis environment is very intuitive, with recognizable icons that help facilitate ease of use for the operator. In addition, another convenience of the Axis environment is the possibility of integration with the virtual machine as a digital twin.

A major contribution to the expansion and popularization of LinuxCNC software was brought through the development of HAL (hardware abstraction layer). The HAL enables the simple integration of user-defined direct and inverse kinematic models into the control system. It also provides a uniform interface for hardware and software modules of the system, thus simplifying the establishment of a connection.

In order to use LinuxCNC software to control the multi-axis wood CNC machining center, the following steps were necessary (Zivanovic et al. 2019):

(i) creating a directory which contains all the configuration files of the multi-axis wood CNC machining center;

(ii) creating configuration (*.ini) files that contain the core machine parameters: the range of all the axes, the maximum velocities and accelerations of all the individual axes, the parameters for real-time system operation, etc.;

(iii) creating configuration (*.hal) files which contain information relating to the motion control of both the real and virtual machines;

(iv) configuring the control system concerning the hardware platform being used as a host; and

(v) building and configuration of the interactive virtual machine tool within the LinuxCNC system using the tools available in the OpenGL-Python 3D environment.

Configuring the Virtual Multi-axis Wood CNC Machining Center as a Digital Twin

Machining simulation is essential in modern manufacturing. Virtual machines can be classified into three main types: (i) virtual machines in CAD/CAM systems; (ii) virtual machines in control systems; and (iii) virtual reality machines (Dimic et al. 2016). The subjects of the author’s study are the first two types of virtual machines as a digital twin.

Virtual machine in the CAD/CAM environment

Standardized CAD/CAM systems are used for programming, which includes machine simulation with the movement of solid model components, including the tool at the end of spindle and the workpiece on the working table. The configured virtual wood CNC machining center is used for the simulation of the tool path generated in the CAD/CAM system (using PTC Creo2). Virtual simulation is essential for the following reasons: (i) to configure the programming environment; (ii) to verify the program before machining; and (iii) to detect collision during program simulation.

Machine simulation via running the program is possible thanks to the applied modeling of all kinematic connections between the moving components. This allows the motion of a virtual model of the machine to function as a system of rigid bodies (Zivanovic et al. 2015).

Within the used software, the kinematic connections of the considered machine were generated by applying a Slider type connection for all translational movements (X, Y, and Z) and two rotational movements (B and A), which use rotary connections (Pin). The corresponding movement limits are defined for each axis. Such assembly enables the movement of the components in the range specified for each joint. A detailed virtual machine with all the kinematic relations between the moving components is defined and shown in Fig. 7a.

After defining the moving parts of the machine, (Fig. 7a), it is necessary to make a connection between the coordinate systems on the workpiece and the tool with adequate coordinate systems on the virtual machine, Fig. 7b. As shown in Fig. 7b, it is necessary to define the coordinate systems on the workpiece, which is marked as MACH_ZERO, and on the working table, which is also marked as MACH_ZERO. By matching these coordinate systems, MACH_ZERO enables the setting of the workpiece on the configured virtual machine during the tool path simulation. The coordinate system of the tool is defined in the same way as the workpiece coordinate system and is marked as TOOL_POINT. This coordinate system is set at the head of the main spindle, and on the tool, as shown in Fig. 7b. By matching these coordinate systems, TOOL_POINT enables the setting of the tool at the head of the main spindle on the virtual machine during the tool path simulation, as shown in Fig. 7c. For the programmed and simulated tool paths using machine simulation, the physical CNC machine is shown in Fig. 7d and demonstrates the 5-axis machining of a concave calotte.

Fig. 7. Virtual multi-axis wood CNC machining center

Virtual machine in a control system as a digital twin

Virtual machining plays a major role in modern production. Different CAD/CAM systems are available for tool path generation and machining verification. Virtual machine tools as a part of programming and control systems are classified as follows:

(i) virtual machine tools as an integral part of CAD/CAM systems;

(ii) virtual machine tools as a digital twin, an essential part of CNC systems; and

(iii) virtual machine tools in the virtual reality domain.

The integration of a virtual machine into an open architecture control system (LinuxCNC), as a digital twin, allows machining simulation in the OpenGL 3D environment. Such a virtual machine enables G-code program verification, which includes the following:

(i) the visual detection of collisions between the moving parts of the machine and the tool with the piece and jigs and fixtures; and

(ii) to check if the machine can execute the specified tool path within the limited motions, ranges, and speeds.

Configuration of the interactive virtual machine as a digital twin is done via the Python programming language, which simplifies the development of GUIs and GUI elements, as well as allows primitive graphics modeling and integration of the developed models directly into the LinuxCNC control system. The basic concept of configuring a virtual machine is shown in Fig. 8.

Fig. 8. The method of configuring a virtual machine

The modeling procedure of the digital twin of the CNC machine starts from defining the geometric primitive as parts of the machine assembly. Defining only the essential and functional parts of the 3D model of the machine may simplify the development of the digital twin. Basic geometric primitives, e.g., boxes, cylinders, spheres, etc., can be used to form complex machine parts. The positions of the geometric primitives, as well as the machine parts, are programmed according to the adopted reference frame. The machine parts are connected in order to form the machine base and the moving parts of the machine are connected via rotational or translator joints. The programmed digital twin must follow the kinematic model of the real machine tool. Step by step modeling, testing, and error correction is the only way of building an error-free digital twin. Besides the manual approach, a CAD system can be used for 3D modeling. In contrast to the earlier described method, the CAD based approach starts from a completed machine model and is deconstructed to functional parts, which are exported as separate files containing ASCII OBJ or ASCII STL code. During the composition of the digital twin, the Python program is formed with a structure including the earlier extracted OBJ code, as shown in Fig. 8. In this paper, the virtual machine was created using PTC Creo. The models were converted from their native Creo format into an ASCII STL format (although the OBJ format works as well) and then loaded into the Axis GUI through appropriate Python calls. Afterward, the imported components are oriented and placed in the virtual environment, resulting in a fully functional virtual machine, as shown in Fig. 8. The virtual machine is placed in a separate window and allows the drawing of toolpaths within the limitations of the virtual machine elements movements. During the execution of the machining program written in G code, the virtual machine elements are moving in real-time, fully synchronized with the moving parts of the real machine, with no visible latency, as shown in Fig. 9.

Fig. 9. Axis GUI of the control system (LinuxCNC) and the integrated digital twin

All the mentioned functionalities of LinuxCNC are implemented in a software module named Vismach (Vismach 2020), which is used for creating and animating machine tools in a virtual environment. The digital twin of the CNC machine receives the control signals through the HAL interface from the real-time LinuxCNC control modules. The virtual and real joints are powered by the unique control signals and may simultaneously move according to the machining program. Vismach allows the observation of the machine from different perspectives with the possibility of rotating, moving, and zooming a scene.

The graphical model of the virtual machine is connected with the LinuxCNC core through OpenGL-Python hooks, which in turn allows the correct movements of the virtual model. Afterward, the virtual model of the machine can be used to simulate and verify the machining programs directly in the Axis GUI, or it can be used for monitoring machine activity during machining operations, since the movements of the real and virtual machine are identical.

RESULTS AND DISCUSSION

The primary goal of these experiments was to test the capabilities of the developed open architecture control system based on LinuxCNC for a multi-axis wood CNC machining center. The idea was to demonstrate the usability of a digital twin for machining simulation and online monitoring of a machining process, thus improving overall production.

Machining test

Machining experiments were conducted with several wooden workpieces, one of which is shown in Fig.10. Prior to machining, the programs were tested via graphical simulation of tool paths in LinuxCNC, as well as on the digital twin to perform the final verification of the program. The experiments were organized to include both 3- and 5-axis machining of analytical and freeform surfaces via a 5-axis vertical milling machine and a tool with a tilting spindle (X, Y, Z, A, B).

The first test workpiece (Fig. 10) was designed according to production demands in the wood industry. The previously prepared workpiece is used as a mould for efficient chair production where immediate finishing-pass surface machining is adequate. The workpiece’s exact position within the digital twin is known throughout the machining simulation, thus enabling the collision avoidance mechanism, leading to short base production times and fewer production errors.

Fig. 10. Machining test

Digital twin control verification

This paper presented a new application of the digital twin called “virtual commissioning” via a virtual representation of the machine used during the control configuration and was also used for program verification and validation of the developed controller. During the control system development and configuration, the digital twin was first made as an exact copy of the real machine in terms of its kinematics. Switchable kinematics functions were developed, made functional, and tested without the real machine. All crucial development phases were performed using the digital twin, including the software functions for tool changing, initialization of the machine, etc.

Complete validation of the developed control system was performed by integrating all of the developed software and hardware modules into the machine tool. Testing was performed via machining a freeform surface on both the real machine and its digital twin simultaneously. A cabin protects the working space of the machine with a good overview of the machining zone and the possibility of monitoring the machining process on the digital twin. Both the real machine and digital twin were working according to the same program and control signals, as shown in Fig. 11.

Fig. 11. Machining test with digital twin

CONCLUSIONS

  1. The paper presented the developed concept of a digital twin controlled multi-axis wood CNC machining center based on LinuxCNC.
  2. During the development and configuration of the control system, a new application of a digital twin, known as “virtual commissioning”, was used, which is important for the validation of the developed functions of the controller.
  3. The developed control system is a low-cost and low-setup time system, which is especially suitable for the retrofitting and advancement of older machine tools. The open architecture software is suitable for the development of complex kinematics functions for multi-axis machine tools. Due to the modularity, flexibility, openness, and availability, the proposed system is convenient to use for machine tools with specific reconfigurable kinematic structures and unique functionalities.

ACKNOWLEDGMENTS

The authors would like to thank the Ministry of Education, Science, and Technological Development of Serbia for providing the financial support that made this work possible.

REFERENCES CITED

Armendia, M., Alzaga, A., Peysson, F., and Euhus, D. (2019a). “Twin-control approach,” in: Twin-Control A Digital Twin Approach to Improve Machine Tools Lifecycle, M. Armendia, M. Ghassempouri, E. Ozturk, and F. Peysson (eds.), Springer, Berlin, Germany, pp. 23-38. DOI:10.1007/978-3-030-02203-7

Armendia, M., Alzaga, A., Peysson, F., Fuertjes, T., Cugnon, F., Ozturk E., and Flum, D. (2019b). “Machine tool: From the digital twin to the cyber-physical systems,” in: Twin-Control A Digital Twin Approach to Improve Machine Tools Lifecycle, M. Armendia, M. Ghassempouri, E. Ozturk, and F. Peysson (eds.), Springer, Berlin, Germany, pp. 3-21. DOI:10.1007/978-3-030-02203-7

Barcik, Š., and Gašparik, M. (2014). “Effect of tool and milling parameters on the size distribution of splinters of planed native and thermally modified beech wood,” BioResources 9(1), 1346-1360. DOI: 10.15376/biores.9.1.1346-1360

Dervojeda, K., Rouwmaat, E., Probst, L., and Frideres, L. (2015). Internet of Things: Smart Machines and Tools, (Contract No 190/PP/ENT/CIP/12/C/N03C01), Business Innovation Observatory, European Commission, Brussels, Belgium.

Dimic, Z., Milutinovic, D., Zivanovic, S., and Kvrgic, V. (2016). “Virtual environment in control and programming system for reconfigurable machining robot, “Tehnički Vjesnik 23(6), 1821-1829. DOI: 10.17559/TV-20150210133556

Hoffmann, P., Schumann, R., Maksoud, T. M. A., and Premier, G. C. (2010). “Virtual commissioning of manufacturing systems: a review and new approaches for simplification,” in: Proceedings of the 24th European Conference on Modelling and Simulation, 1-4 June, Kuala Lumpur, Malaysia, pp. 175-181.

Kagermann, H., Wahlster, W., and Helbig, J. (2013). Recommendations for Implementing the Strategic Initiative INDUSTRIE 4.0, German Academy of Science and Engineering, Munich, Germany.

Lee, C. G., and Park, S. C. (2014). “Survey on the virtual commissioning of manufacturing systems,” Journal of Computational Design and Engineering 1(3), 213-222. DOI: 10.7315/JCDE.2014.021

Linux CNC (2020). “LinuxCNC,” (http://linuxcnc.org/), Accessed 13 February 2020.

Liu, C., and Xu, X. (2017). “Cyber-physical machine tool – The era of machine tool 4.0,” Procedia CIRP 63, 70-75. DOI: 10.1016/j.procir.2017.03.078

Ohuchi, T., and Murase, Y. (2005). “Milling of wood and wood-based materials with a computerized numerically controlled router IV: Development of automatic measurement system for cutting edge profile of throw-away type straight bit,” Journal of Wood Science 51, 278-281. DOI: 10.1007/s10086-004-0663-x

Pitagora (2020). “All in one software, control your CNC machining centre easily,” (http://www.bacci.com/en/software/), Accessed 20 February 2020.

Rajkumar, R., Lee, I., Sha, L., and Stankovic, J. (2010). “Cyber-physical systems: The next computing revolution,” in: Proceedings of the 47th ACM/IEEE, Design Automation Conference (DAC), 13-18 June, Anaheim, CA, pp.731-736. DOI: 10.1145/1837274.1837461

Staroveški, T., Brezak, D., and Udiljak, T. (2013). “LinuxCNC – The enhanced machine controller: Application and an overview,” Tehnički Vjesnik 20(6), 1103-1110.

Vančo, M., Jamberová, Z., Barcík, S., Gaff, M., Čekovská, H., and Kaplan, L. (2017). “The effect of selected technical, technological, and material factors on the size of juvenile poplar wood chips generated during face milling,” BioResources 12(3), 4881-4896. DOI: 10.15376/biores.12.3.4881-4896

Vismach (2020). “Vismach table of contents,” (http://linuxcnc.org/docs/html/gui/vismach.html#_start_the_script), Accessed 14 February 2020.

Živanović, S. T., Glavonjić, M. M., and Milutinović, D. S. (2015). “Configuring a mini-laboratory and desktop 3-axis parallel kinematic milling machine,” Strojniški Vestnik 61(1), 33-42. DOI: 10.5545/sv-jme.2013.1619

Zivanovic, S., Dimic, Z., Vorkapic, N., and Mitrovic, S. (2019). “Configuring of 3 axis mini CNC machine tool with control system based on LinuxCNC,” in: Proceedings of the 14th International Conference on Accomplishments in Mechanical and Industrial Engineering DEMI 2019, 24-25 May, Banja Luka, Bosnia and Herzegovina, pp. 15-28.

Zivanovic, S., Tabaković, S., and Zeljković, M. (2018). “Machine tools and industry 4.0 – Trends of development,” in: Proceedings of the 4th International Scientific Conference “Conference on Mechanical Engineering Technologies and Applications” COMETa2018, 27-30 November, Jahorina, Bosnia and Herzegovina, pp. 2-19.

Zivanovic, S., Tabaković, S., Zeljković, M., and Milojević, Z. (2016). “Configuring a machine tool based on hybrid O-X glide mechanism,” Machine Design 8(4), 141-148.

Article submitted: October 26, 2020; Peer review completed: December 6, 2020; Revised version received and accepted: December 11, 2020; Published: December 18, 2020.

DOI: 10.15376/biores.16.1.1115-1130