Project funded by The Innovation Fund of the Republic of Serbia (Proof of Concept Program - ID 5893)

Participating institutions: Lola institute Ltd., Faculty of Mechanical Engineering University of Belgrade

Project coordinator: Lola institute Ltd.

Principal researcher: Dr Zoran Dimić, MSc EE

Project duration: October 2020-April 2022.


The project objective is proof of the concept of a low-cost, multifunctional desktop machine tool able to support additive and subtractive manufacturing of symmetrical and asymmetrical cylindrical parts. The core of the invention is the novel concept of the machine tool with a horizontal rotating device chuck (3axis rotary CNC) as the multifunctional rapid prototyping machine. The specific concept of the machine’s geometry enabled reconfigurability, i.e., the simple change of tools for the unique combination of three production technologies on one desktop machine: milling, laser engraving, and 3D printing. Open-source control infrastructure enables end-user customization and machine upgradeability and achieves cost-effectiveness. MultiProDesk is a valuable production tool for SMEs in various production technologies such as relief machining, 3D engraving, symmetrical and asymmetrical cylindrical parts prototyping, soft materials carving (plastic, wood), etc. where it allows users to adopt mass customization concepts and to reach mass personalization production (a step to Industry 4.0). Another usage of MultiProDesk is for educational purposes, where it fully trains and supports professional design teams, students, and creative individuals by being versatile, adaptable, and affordable.


MultiProDesk offers a unique multipurpose solution in the desktop machine tools and rapid prototyping domain with the combination of the following three production technologies: milling, laser engraving, and 3D printing.

The idea is to redesign a concept of lathe into a specific three-axes multifunctional machine with controlled the rotational axis A', Figure 1, to be used for rapid prototyping - 3axis rotary CNC rapid prototyping desktop machine tool. The intention is to create a machine tool capable of producing symmetrical and asymmetrical cylindrical parts combining milling, engraving, and 3D printing technologies and to provide a unique, low-cost, open-architecture control-based solution in the domain of desktop machine tools and rapid prototyping.


Innovative design enables the following technological advantages in the desktop rapid prototyping domain:


1) Distinctive set of three production technologies-milling, laser engraving/cutting, 3D printing;

2) Machining of symmetrical and asymmetrical cylindrical parts on a low-cost, multifunctional desktop machine tool able to support additive and subtractive manufacturing;

3) Possibility of the production of a single cylindrical part completely in one clamping by using a combination of additive and subtractive manufacturing, applying one method after another on the clamped cylindrical workpiece. This achieves:

-effective use of material, energy, and reduced time consumption- increased productivity,

-increased accuracy due to the fact that accuracy is not lost during re-clamping.

4) Modularity and the open architecture control structure allow for upgradeability and further development of the desktop 3axis rotary CNC machine according to end-user or developer needs.

5) Virtual technologies for machining verification, digital twin technology for remote monitoring of machine tools operation.


Concept of 3axis

Figure 1- Concept of 3axis rotary CNC MULTIPRODESK machine

The machine has rotational axis A' about horizontal axis X and two translatory axes (X, Z), figure 1. The workpiece is placed on the rotary axis A', and the tool is carried by two translational axes. For the purpose of increasing the stiffness of longer workpieces, there is also a support for the tailstock. It can be seen that the machine does not have the usual third translational axis along the Y coordinate. The available axes, without the Y machine axis, enable the positioning of the tool tip at each point of the machine’s cylindrical working space. The concept of a machine with coordinate axes X, Z and A 'is equivalent to the axes of the polar-cylindrical coordinate system, which are also spatial coordinates. The structure of the adopted machine concept is A’OXZ.

A machine tool with a rotational axis can also be designed as a four-axis machine, with three translational and one rotational horizontal axis. However, there is a specific class of machine tools where one translational axis is replaced with a rotary one, and as such, this machine falls into the category of a three-axis machine (3axis rotary CNC). A machine can also have a fourth Y-axis, in which case the considered machine would be its special case, when the position of the Y-axis is such that it coincides with the position of the tool axis, precisely in the axis of rotation of the workpiece.


Based on the adopted machine concept and available construction components, a virtual prototype of the machine was configured in the CAD / CAM environment of PTC Creo Parametric 2.0. The CAD model of the adopted geometry of the MultiProDesk machine in the form of a 3axis rotary CNC is shown in Figure 2.

Legend 1

Legend: 1. carrying (supporting) structure, 2. device chuck, 3. rotational axis A' actuator, 4. X-axis actuator, 5. Z-axis actuator, 6.,7.,8. reference position sensors for Z, X and A' axis, respectively, 9. X-axis slide, 10. X-axis slideway, 11. Z-axis slide and main spindle carriage, 12A. main spindle, 12B. laser head, 12C. 3D printing head, 13. tailstock support, 14-roll with filament

Figure 2- Configured Prototype of 3axis rotary CNC MultiProDesk machine

The supporting structure is made of 2 mm, 3 mm and 5mm sheet metal boards, laser cut according to programmed contour and subsequently joined by welding. Actuating system for rotary axis A ' is composed of the shaft with standard ball bearings and chuck (2). In addition to the axis A', slideways of the X-axis (10) are attached (mounted) to the supporting structure, as well as the motors that actuate the X and the A' axis (3, 4). Onto the slider of the X-axis (9), the Z-axis (11) actuating system is set, which also carries the main spindle of the machine (12a). The driving system of the main spindle is composed of a small-size electrical motor with clamping sleeves whose tools grip range is 0.5-2.3 mm. The main spindle carrier is made of aluminum and has the possibility of moving along the Y-axis. This not-actuated degree of freedom is used within the machine setup before the commissioning of the machine in order to achieve the required intersection between the tool axis and workpiece rotational axis.

Instead of the milling main spindle (12A), a laser engraving head with a rotational axis (12B) can be installed. In addition, a third production technology which can be carried out on the machine, 3D printing, is achieved when a main spindle/laser head is replaced with a carrier with a head for additive manufacturing (12C) by material fusion deposition technology (Fused Deposition Modeling-FDM). The main goal of the project is a designed desktop multifunctional and reconfigurable machine tool that is able to produce symmetrical as well as asymmetrical cylindrical parts combining milling, engraving and 3D printing technologies by using a rotary axis. Virtual prototypes of the machine configurations for all three production technologies are shown in Figure 3.

a)Milling  b) Laser Engravingc)  3D Printing

Figure 3- Configured prototypes for all three of the considered technologies: a) milling, b) laser engraving, c) 3D printing – FDM.

Based on the verified kinematics algorithm of the machine’s virtual prototype, set up axis travel and the machine’s mechanism geometry, it is possible to determine the workspace of the machine. It has the shape of a cylinder, 110 mm in diameter and 300 mm in height, which is transparently highlighted in Figure 4. In the case of long workpiece machining, which matches the limits of the defined working space of the machine, a tailstock can be used as additional support with the purpose of increasing the stiffness of the designed machining system.


Figure 4 - Workspace of the machine


Milling programming

For a 3axis rotary CNC machine, available standard CAD/CAM systems as well as specialized CAM software can be used to establish a machine programming framework. Since the machine is designed for rapid prototyping of high machinability materials, the model is mainly in STL format, for which the use of specialized CAM software, which has the ability to program rotary machining, is recommended. For this purpose, DeskProto software, which can be used for rotary machining programming and uses STL models as input, was chosen.

The designed prototypes can be modelled and programmed in any CAD / CAM system which has the ability to program machining with a rotary axis. Ready-made STL models can also be used for programming. DeskProto software intended for rapid prototyping programming, which uses STL files as input, enables of programming of machining with a rotary axis, with either continuous rotation or with indexing rotation, using different machining strategies.

The developed programming and verification environment (framework) is established by the integration of CAD / CAM systems (PTC Creo Parametric 2.0), DeskProto and Vericut (used for program verification). The established programming and verification framework is presented in Figure 5.

DeskProto does not provide tool path and material removal simulation in order to verify the machining program before machining execution. For this reason, Vericut software that performs verification of the obtained programs based on generated G-code is integrated into the machine programming framework.

During the trial run of MultiProDesk, two exemplary machining cases were designed. The first one is illustrated in Figure 5, for the part modeled in the CAD / CAM software PTC Creo Parametric 2.0, with the model saved in STL format. The machining programming of the model was performed (obtained) in the DeskProto software. On the cylindrical part of the right workpiece side, the manual programming of the indexing machining of four 90° angle grooves and holes was tested.

Milling Framework

Figure 5 - Milling programming framework

As the second example for the machine trial run, the sculpture of the Greek goddess Aphrodite was chosen, for which a ready-made STL format was available. The generated tool paths are shown in Figure 6. The tool path verification for both cases in the Vericut software is illustrated in Figure 7.

Tool path in pre machiningTool path in the finishing process

Tool path in pre-machining                                       Tool path in the finishing process

Figure 6 - Example of generated tool path for Aphrodite pre-machining and finishing process

Simulation 1 Simulation 2

Simulation 3Simulation 4

Figure 7 - Simulation of operation of MultiProDesk virtual prototype in Vericut software


Due to the lack of easily available software for programming of 3-axis machine tools that contain one rotary axis in the case of laser engraving and 3D printing, systems have been developed for programming these groups of tasks. For programming, in both cases the software packages PTC Creo and MatLab were used. The software was used to prepare an intermediate file which is then post-processed to generate G-code. The CIMCO Edit software is used to verify the generated programs in G-code. The system for programming laser engraving tasks is shown in Figure 8.

Laser engraving system

Figure 8 – Laser engraving programming system

The programming of laser engraving starts from dxf file of the figure that has to be engraved. The imported file is projected on a workpiece cylindrical surface. Such a projected path represents the trajectory that has to be selected for 3D milling to create CL (cuter location) file. The CL file is then post-processed to generate G-code for 3-axis (x, y, and z) milling operation in a standard way.

The generated G-code is loaded in a MatLab environment where a special MatLab function is developed to generate G-code for laser engraving on a considered machine tool with configuration AOXZ. The first developed function reads and parses loaded G-code and extracts the x, y, and z coordinates of the programmed trajectory. The extracted coordinates are then transformed, by another developed function, in the format of x, z, and A. Transformed coordinates with appropriate feed rates defined by G-code are recorded in the intermediate file. In the end, the generated intermediate file is post-processed by a third developed function, and its output is G-code for laser engraving on the considered machine tool. Before the laser engraving, the program is verified in CIMCO Edit software.


The system for the programming of 3D printing is organized similarly, but with different steps and logic. The programming starts from the generation of the profile of the symmetrical cylindrical part in the XZ plane as a trajectory for G-code generation, Figure 9. This trajectory is post-processed, and CL file is generated for 2D trajectory milling in a standard way.

3D Printing System

Figure 9 – 3D printing programming system

The generated CL file is loaded in a MatLab environment where a special MatLab function is developed to generate G-code for 3D printing of symmetrical cylindrical parts. The first developed function reads and parses the loaded CL file and extracts the x and z coordinates of the profile. Then, such a profile is divided according to layer height. After that, the intersection points for each layer are determined.

The intersected points are the input for a developed function that generates the trajectory for each layer that has to be printed. The odd layer has a spiral, while the even layer has a zigzag strategy. All of these described spiral and zigzag strategies with appropriate feed rates defined by G-code are recorded in the intermediate file. In the end, the generated intermediate file is post-processed by a developed function, and its output is G-code for 3D printing of symmetrical cylindrical parts. Before the 3D printing, the program is verified in CIMCO Edit software.


Open-source architecture software LinuxCNC was chosen as the control system of MultiProDesk. LinuxCNC provides real-time control of machine tools and robots, while its source code can be freely used, modified and distributed (GNU-General Public License). LinuxCNC enables the programming of machines in G-code according to the RS274 or ISO 6983 standard.

The LinuxCNC's internal software architecture consists of four basic software modules: motion controller EMCMOT, controller of discrete input/output (I/O) signals EMCIO, processes coordinating module EMCTASK, and a collection of textual or graphical user interfaces (GUIs).

The LinuxCNC module that enables the configuration of virtual machines is called Vismach. The machine’s digital twin receives control signals via the HAL interface in real-time. The digital twin and actual machine are driven by identical control signals and can perform a simultaneous operation according to a given machining program. A virtual machine can be rotated, zoomed and moved according to the user's demands. Figure 10 shows the digital twin of MultiProDesk integrated within Axis GUI.

Digital twin LinuxCNC

Figure 10 - Digital twin of MultiProDesk integrated within LinuxCNC control system.

During the development of the controller, trivial serial kinematics was used within the kinematics module.

The development of the hardware segment of the control unit, which involves wiring the machine’s drives and sensors to the power supply and drivers, is illustrated in Figure 11a. In Figure 11b, the power supply of the control system is marked with 1. Number 2 indicates the drivers of the A ', X and Z axis motors, while 3 denotes the interface card. The interface card enables the communication between open architecture controller software and machines’ motor controllers. The connection is achieved via the RS232 parallel port, while the interface card is powered separately via the computer's USB port. Signals from the limit switches and motors are brought to the control unit via a four-core cable, while the connection itself is carried out via four-pin connectors. Usage of connectors allows for simple disassembly for easier portability of the machine.

Integration 1 Integration 2

Figure 11 - Integration of the machine’s hardware with LinuxCNC control unit


Experimental verification and proof of the concept of a 3axis rotary CNC multifunctional rapid prototyping desktop machine MultiProDesk, as well as of developed control and programming system, is achieved by a trial run of the produced machine for all three considered production technologies.


The part produced by the first trial operation of the machine is identical to the virtual prototype of the workpiece in Figure 5. Within the pre-machining process, the incremental motion of the rotary axis was applied, and within the finishing process, the rotary axis was in a continuous mode of operation whereas the translational axis along the workpiece performed the incremental movement. The machining was performed in fine-grained styrofoam, so that the details on the machined part would be distinct. A cylindrical aluminum thorn, intended for positioning and basing the workpiece, was made for which the workpiece was glued beforehand above-mentioned operations. Pre-machining and finishing processes were performed with a spindle flat-end milling cutter with a diameter of 4 mm, with a cylindrical handle that is slimmed so that the cutter can be clamped into the main spindle. Since the first test part does not have a complex geometry, i.e. consists of basic geometric shapes, machining with only one tool in the pre-machining and finishing process is justified. In figure 12a, the first test part produced on a 3axis rotary CNC machine is presented. The second test part, which represents a sculpture of Aphrodite, involves asymmetric geometry with respect to the rotary axis. The programming of machining of parts with embossed geometry is not recommended for commercial CAM software, especially if they are given in STL format, instead a specialized software such as DeskProto is used for this purpose, Figure 6. The model of the Aphrodite sculpture obtained with pre-machining and finishing process with MultiProDesk is shown in Figure 12b.

Milling 1  Milling 2

Figure 12 - Milling of first test workpiece and sculpture of Aphrodite with MultiProDesk.

Conclusions obtained after the trial run of the machine are the following: (i) the quality of the produced parts verifies the designed concept of control and programming, as well as the accuracy of post-processed G-code, (ii) positioning within the workspace was adequate, (iii) Coinciding of position of tool tip point with zero point resulted in adequate positioning and accurate determination of zero point, (iv) the quality of the machined part confirms the accuracy of the reference point settings on the drive axes and successful operation of the 3axis rotary CNC machine tool MultiProDesk.


Laser engraving is the superior permanent marking solution used for marking of advertising products from various materials. Laser engraving can accomplish the object designs that would be complicated to achieve with other types of marking, and therefore requires less production time. Laser engraving enables the formation of an imprint that is more enduring compared to other types of marking solutions.

The trial run of laser engraving technology with MultiProDesk has been performed by engraving text and various contours, e.g. a contour of a lion on a cylindrical wooden part. During laser engraving operation, the operator and the potential observer must use goggles against laser radiation. The trial run has proven the concept of application of laser engraving technology with MultiProDesk, as well as the accuracy of the established postprocessing algorithms and of the developed software for programming of 3axis rotary CNC machine tools.

Example 1 Example 2

Example 3 Example 4

Figure 13 - Examples of engraved contours on a cylindrical surface


The trial operation of additive manufacturing technology with MultiProDesk using the Fused Deposition Modeling technology has been successfully carried out. The machine was reconfigured by replacing the laser head with a suitable head for 3D printing by FDM technology, which introduces the filament into the nozzle where the filament is melted. The filament is subsequently extruded through the nozzle, and deposited on a cylindrical base which acts as a base for prototype formation.

Layers of material are applied according to the generated program for material addition, which is the output of developed software for programming 3D printing with a rotary axis machine. The trial run has proven the concept of additive manufacturing technology on MultiProDesk, as well as the accuracy of the developed postprocessor additive manufacturing algorithms and of the developed software for programming 3D printing with a 3axis rotary CNC machine tools.

Example of 3D 1 Example of 3D 2

Figure 14 - Example of 3D printing with MultiProDesk.

The control system for MultiProDesk was developed even before the completion of the actual machine. Thus, the virtual machine, ie its digital twin, was originally used to verify the developed controller.


MultiProDesk is an ideal solution for the following purposes:

  • functional parts production,
  • fit and assembly production,
  • metal casting pattern production,
  • prototype tooling pattern production,
  • education.

MultiProDesk can be used in the following industries:

  • Small manufacturers,
  • Educational and research institutions,
  • Advertising industry,
  • Jewelry and other artisans,
  • Dental prosthetics
  • Enthusiasts, personalised gifts production, artists and DIY-ers