Application of industrial robot in 5-axis milling process

Present in machining creates constantly new requirements to increase economic efficiency, productivity and product quality. With this advancement, industry is no longer focusing only on commonly used machining technologies, but is paying increasing attention to the implementation of robots in the manufacturing process by machining. The paper describes the design of equipment for the implementation of 5-axis milling with the help of a robot arm ABB IRB 140. It describes the design of the milling head and deals with the creation of NC machining program in software Autodesk Fusion 360. The generated NC program is then used in RoboDK to create a robotic arm control program. At the end of the paper are described laboratory tests of machining using the designed prototype milling head.


Introduction
Milling is still one of the most widely used cutting techniques in the world. Classic milling is done in 3 axes. It is often used in industry to produce a wide variety of parts. If 5 axes are used, we are talking about multi-axis machining centres. By using these multi-axis centres, it is possible to produce simple but also very complex components, such as worm gears, grooves in rotary or different shape profiles. Technological advances have been made to advance technology to ensure the shortest possible machining times with the most efficient production [1,2].
The importance of robotics has not changed since the first robotic manipulator, and is mainly about increasing efficiency. At present, the main reasons for robotics are the current trends in production processes that place high demands on quantity but also on production quality. In industry, robotic arms are mainly used for variety of purposes, from component translations, welding, to finishing operations such as deburring, grinding, etc. In these applications, it is important to ensure the rigidity and stability of the robotic arm and to optimize the operating parameters [3].
The aim of the paper is to describe the design of the prototype milling head designed for the ABB IRB 140 robotic arm, the description of the design of the selected equipment design and the implementation of tests in laboratory conditions. The article also describes the principle of creating a machining program in the Autodesk Fusion 360 software and then the ABB IRB 140 robot arm control program in RoboDK software [4].

Current state
Currently, the use of robots and their application to the manufacturing sector is a very frequent topic. Robots replace heavy and monotonous work in order to increase production repeatability, increase the efficiency and accuracy of the final product. At the same time, they take care to protect workers when carrying out demanding tasks (lifting loads, etc.). Robotic machining technology offers a great advantage in applications where it is an alternative to material machining on conventional machine tools in production. With the available robotic equipment and the use of appropriate software, they can autonomously operate and replace these conventional machines in the application of chip machining. A great advantage of using a robot for machining is its working space, which is much smaller compared to standard machining centres. Robots allow you to work with a wide range of work pieces, both larger in size and more complex shape. The robot also offers the option of replacing workpiece handling heads, fitting 24 hours a day [5,6].
The current trend in robotic machining is to replace large CNC machines in chip machining applications [7,8]. The use of robots is primarily aimed at machining a small amount of material, such as finishing, grinding, polishing and others. In these applications, the accuracy of the robot's movement during machining is important. A substantial part is also the development of software tools whose main task is to correct the robot [9,10].

Design of milling head
In the proposal a cutting device Bosch GGS 27 LC was used. The Bosch GGS 27 LC milling machine is primarily designed for manual grinding and finishing after machining using abrasives up to 25 mm in diameter. The device has a choice of collet diameter (from 6 to 8 mm). In the proposed milling head, the device is used as the main drive unit with the possibility of setting the speed directly on the device. Milling device parameters: • Spindle speed: 12000 -27000 rpm • Power consumption: 600 W • Weight: 1,6 kg For laboratory testing, a HSS Co8 cutter (3 teeth) with a diameter of 6 mm was used. This is a three-tooth shank cutter. The cutter is made of high speed HSS steel.

Design of fixture for clamping milling head on robot arm
It is a part of the designed milling head, which is intended for the fixed connection of the robot arm flange and the milling device. The proposed milling head consists of a milling device (Bosch GGS 27 LC) with a mounted milling cutter (3 HSS Co8 cutter), a fixture for attaching it to the robot flange and a fastener. The Bosch milling machine has been chosen for its ease of use and low cost. The clamping solution of the milling device was solved by the design of the gripping device, which accurately described the shape of its entire grip portion. The part was then printed by a 3D printer. Figure 2 shows a proposed clamping device consisting of a clamping part which is fastened by screws to a robot arm (left side in the figure) and two clamping fixture pads which follow the shape of the milling device holder. The pads are mounted on threaded rods that are part of the holder. After inserting the pads into place, they are tightened with wing nuts. These ensure a simple and firm connection of the fixture to the milling device.
The final fixture consists of a precision pad, to which a piece was subsequently made to attach to the robot and hold the pad. At the front of the pad was mounted sheet to avoid damaging the pad in the mounting wing nuts.
The final milling head assembly is comprised of a clamping jig in which the milling device is mounted. The milling device provides sufficient power for milling with the ABB IRB 140 robotic arm.

Software solution for robot control program design
A control program is a set of commands that are loaded into the robot controller in the desired format. Subsequently, the robot is triggered and the robot performs the programmed action. Using simulation programs, the robot program can be verified at any time and, if necessary, redesigned to avoid any damage caused by an incorrectly created program. It is also possible to find the optimal solution from the economic aspect of the program or from the time point of view.
RoboDK was used to program the robot and Autodesk Fusion 360 to create the NC code for machining.

Autodesk Fusion 360
Autodesk Fusion 360 is a CAD/CAM/CAE software that combines modelling, simulation, rendering and machining in one software. It is based on cloud. All work is stored on the server, making it easier to work with files. It can quickly and efficiently rework design for machining and then generate NC code. It has an integrated library of tools and equipment for machining. The program is very intuitive and quick to work with. It can handle many file formats (*.step, *.part and others).
Description of the NC code creation steps in Autodesk Fusion 360: • Step 1: Modelling, resp. uploading a part (in *.step format) to the software environment. • Step 2: The CAM workspace environment is selected in the main menu followed by Setup. In this step, the coordinate system is set to be at the point from which the program (reference point) will be generated. • Step 3: Select the type of milling (2D, 3D, multi-axis), tool selection and parameters. The tool can be selected from the tool menu or you can add your own tool as well as a custom tool holder. After selecting the tool, enter the speed by which the program calculates the cutting speed v c . • Step 4: Define the areas to be machined. • Step 5: Adjust and control workpiece heights and distances. An important step for setting a safe distance between the tool and the workpiece. • Step 6: Set the number of passes, departures, maximum material removal, and more. • Step 7: Adjust and limit the tool angles to meet all tool requirements. • Step 8: Generate the tool path. The generated paths can be simulated directly in the software.
Step 9: After selecting the simulation file, the list opens. Select the post process in the popup menu. • Step 10: Set up the post process. Select the correct file formats and save the file location. After pressing Post, the NC code is generated with the selected suffix for the selected device. (Fig. 3)

Fig. 3. Generating NC code
The code generated in the *.nc file format is appropriately prepared for subsequent RoboDK robot motion program design.

RoboDK
RoboDK is a program for simulating and offline programming of industrial robots with a number of libraries containing different kinds of robotic manipulators and tools. The program can be connected directly to the robot using a LAN cable. The program is used to simulate and convert NC programs into robot programs. RoboDK automatically optimizes robot paths including axis limits and collisions. Based on the generated NC code in the Autodesk Fusion 360 software, a toolkit program was created to verify toolpaths and adapted to work with the ABB IRB 140 robot. In order to program robot movements, it is necessary first, to load models into the work environment. The working environment includes the IRB 140 Robot and a designed milling head with the necessary settings to position the workpiece in the robot's work surface, according to the real work table location (Fig. 4). Subsequently, reference points were added to the environment using the Add and Reference Frame functions to determine the position in the environment. The 3D Print project has been used to import the G-code component that was generated by Autodesk Fusion 360 software. After proper setup the program is ready to simulate the movement of the robot. The final step is to generate a program with the function Generate robot program that was then loaded into the robot controller. Figure 5 shows the final verification of the program functionality that has been exported to the robot controller. This figure shows the implementation of 3D printing using the ABB IRB 140 robot. 3D simulation was implemented in RoboDK software. The robot program was generated according to the simulation. 5-axis machining was carried out in the laboratory. A wooden beam was chosen as the workpiece material for the machining tests. A vice was used to firmly clamp the workpiece to the workbench. Its location was precisely determined by the robot's utility program to set the starting point of the milling tool. The spindle speed was set at 19 000 rpm, the robot speed was selected at its 50 % speed and 1 mm chip removal. The paths have been optimized based on software settings to create the G-code of the machining program. The entire production of the component lasted 25 minutes under selected machining conditions.

Conclusions
The aim of the work was to point out the possibilities connected with the use of robotic arm for chip machining. The article describes the design of a fixture for attaching a milling device that serves as a motor to drive the milling tool. The proposed fixture was to clamp the milling device into a precision pad that copied its handle shape and the entire fixture bolted to the robotic arm flange. The pad was made using 3D printing technology. Using the robot gives the possibility of milling in 5 axes. By using the correct cutting tool clamped in the head, it is possible to produce a variety of shapes. The Autodesk Fusion 360 software was chosen to create a G-code program, which greatly reduced the time it takes to create it, thanks to its ease of use. The machining program generated in the software was then transferred to RoboDK. An important part was the simulation of robot movement in RoboDK software. Thanks to testing it was possible to identify errors and then remove them by changing the program. Software simulations were followed by tests and implementation in laboratory conditions.
The milling head prototype could become an economic solution for small businesses that own robotic arms after additional adjustments. The development of such heads would expand the company's presence to the possibility of milling precision parts [11]. If more of these end heads were made to the robotic arm, for example to implement 3D printing, laser cutting technology and others; a small manufacturing companies possessing such equipment could respond very flexibly to market demands and produce the required products.
This paper has been elaborated in the framework of the project VEGA no. 1/0026/19.