APPLICATION OF DIGITAL CELLULAR RADIO FOR MOBILE LOCATION ESTIMATION International Journal of Engineering Materials and Manufacture (2017) 2(3) 49-57 https://doi.org/10.26776/ijemm.02.03.2017.02 A. A. M. Dalol, T. Saleh Department of Mechatronics Engineering International Islamic University Malaysia PO Box 10, 50728 Kuala Lumpur, Malaysia E-mail: tanveers@iium.edu.my Reference: Dalol, A. A. M. and Saleh, T. (2017). Concept of Programmable Fixture for 3-Axis CNC. International Journal of Engineering Materials and Manufacture, 2(3), 49-57. Concept of a Programmable Fixture for 3-Axis CNC Ahmed Azmi Mohamed Dalol and Tanveer Saleh Received: 22 March 2017 Accepted: 08 June 2017 Published: 15 September 2017 Publisher: Deer Hill Publications © 2017 The Author(s) Creative Commons: CC BY 4.0 ABSTRACT CNC machine is the one of the major reasons for industrial advancement in recent decades for its ability of producing accurate parts. The most common CNC machines are of 3-axis and adopted widely in the industrial sector. However, for producing more complicated parts 5-axis CNC machines are required. Although the introduction of the 5-axis machine came after the 3-axis CNC machine has established itself and many manufacturers did not make the move toward the newer model and its high pricing compared to the 3-axis model did not help either. In this time the development of a fixture or a platform to help transfer the 3-axis to a 5-axis to some degree. This paper discusses the concept of a programmable fixture that gives 3-axis CNC machine the freedom to act in similar manner as the 5-axis. The paper describes the mechanism with some initial results of the testing. Result showed that the platform moves in translation manner with an average error of 5.58 % and 7.303% average error for rotation movement. Keywords: CNC, 3-axis, 5-axis, Fixture, Platform, Kinematics, Algorithm, Graphical user interface (GUI) 1 INTRODUCTION Numerical Control NC is a method that is used in automation to manufacture highly precise components using commands that are stored in the memory of the machine. With the technology advancements computer has been introduce to the process and formed a Computer Numerical control. The modern CNC systems use computer aid design CAD, noteworthy that the 3D software does not control the CNC it only generates the NC code. CNC machines are used in many manufacturing fields and it is capable of milling, turning, grinding and lathe and other functions to get an accurate product with very small margin of errors. A robot is defined as “a reprogrammable multifunctional manipulator designed to move material, parts, tools, or specialized devices through variable programmed motions for the performance of a variety of tasks” according to Robot Institute of America (RIA). In 1959, the first commercially available robot appeared on the market [1]. Robots can be classified using their geometric types to Cartesian (PPP), cylindrical (RPP), spherical (RRP), SCARA (selective compliance assembly robot arm) (RRP), and articulated (RRR) [2]. The first parallel robot was patented by an American farmer called James E. Gwinnett in the 1928 [3]. In 1947 a new parallel manipulator was invented and it became the most common or a robot. It was invented by Dr. Eric Gough, who invented the octahedral hexapod in England. It was called the universal tire test machine as shown in Figure 1. In the United Kingdom Dr. Stewart presented six degrees of freedom flight simulator in 1966. It is referred as the Stewart Platform [5]. It consists a triangle moving platform, base and three extensible links. The links connects the platform to the base. The links connected to the base using Hook’s joints. The Stewart platform was a gate of a new designing era as many inventions were based on the idea of the platform. Comparison between parallel and serial manipulators is presented in Table 1 [7]. 2 SYSTEM DESIGN The system is designed based on a parallel manipulator. The design of slider and ball-joint mechanism is kept. But with enhancement and modification for the dimensions of parts. The system was reversed engineered using CAD software. The software that was used is Solidworks. The complete assembly is shown in Figure 2. The system is using 6 DC motors and Aruino Uno R3 as shown in electrical circuit in Figure 3. Concept of a Programmable Fixture for 3-Axis CNC 50 Table 1: Comparison between parallel and serial manipulator Factor/Aspect Parallel Serial Type Of Loop Closed Loop Open Loop End Effectors Platform Gripper Inertia Low High Stiffness High Low Direct Kinematics Complex Simple Inverse Kinematics Simple Complex Preferred Application Precise Positioning Gross Motion Figure 1: The tire test machine concept built by Dr. Eric Gough [5] (a) (b) Figure 2: 3D image of CMC system (a) CAD model and (b) actual prototype The platform is using acrylonitrile butadiene styrene (ABS) for 3D printing links and joints. The technical specifications of ABS used in the research are listed in Table 2 [8]. The specification of Arduino Uno R3 controller used in this platform is given in Table 3 [9]. The servo motor will act as an actuator for the platform. The motor will provide movements which will affects the outcome of the position of the upper platform. The model of the platform used is GS-5515MG. The power source used for the manipulator is a lithium-ion polymer (LiPo) battery with 2200 mAh capacity. The details of the platform are given in Table 4. Dalol and Salehi (2017): International Journal of Engineering Materials and Manufacture, 2(3), 49-57 51 Figure 3: The electrical circuit of the system Table 2: Technical specifications for ABS used in this research Tensile Modulus 1627 MPa Tensile strength 22 MPa Flexural Strength 41 MPa Flexural Modulus 1834 MPA Density 1.05 g/cm³ Table 3: Arduino Uno R3 Technical specifications Microcontroller ATmega328P Operating Voltage 5V Input Voltage (recommended) 7-12V Input Voltage (limit) 6-20V Digital I/O Pins 14 (of which 6 provide PWM output) PWM Digital I/O Pins 6 Analog Input Pins 6 DC Current per I/O Pin 20 mA DC Current for 3.3V Pin 50 mA Flash Memory 32KB (ATmega328P), 0.5 KB used by bootloader SRAM 2 KB (ATmega328P) EEPROM 1 KB (ATmega328P) Clock Speed 16 MHz 3 SYSTEM ANALYSIS This section discussed the mechanical design of the fixture and it showed that the limits of this structure in the aspects of load and size. It also analysed the parallel nature of the manipulator and developed the algorithms. The degree of freedom is calculated by using equation (1). 𝑀 = 6 (𝑛−𝑔−1) + Σ𝑓𝑖𝑔𝑖 = 1 (1) Where, M = Mobility n = Number of link of each legs + base + top g = Number of joint of each legs fi = Number of DOF of each joint for each legs n = 1 + (3 x 3) = 10 g = (1 + 1 + 1 + 1) x 3 = 12 fi = (1 + 1 + 3 + 3) x 3 = 24 M = 6(10 − 12− 1) + 24 = 6 http://www.atmel.com/Images/Atmel-42735-8-bit-AVR-Microcontroller-ATmega328-328P_Datasheet.pdf Concept of a Programmable Fixture for 3-Axis CNC 52 Table 4: Platform specifications Fixture Type Parallel Controller Arduino Uno R3 Type of Joints Linear/Rotary Material of Fabrication ABS Movement Generator Servo Motor Gs-5515mg Power Source Lipo Battery 2200 Ma with 6 Volts Maximum Load For the Structure 45 Kg Maximum Load For the Motors 15 Kg Mobility 6 Translation X, Y, Z Rotation X, Y X-Axis Leg 2 and 3 Y-Axis Leg 1 Z-Axis Leg 1,2 and 3 Rotation About X Leg 1 Rotation About Y Leg 2 and 3 The links maximum load can be found using equation (2-6) and taking the weakest link to be the maximum overall for the platform. From the analysis it was observed that the critical load for the weakest link was around 450 N. k= √(I/A) (2) the slenderness ratio= l/k (3) (l/k)_1= √(2πEC/Sy) (4) Pcr=A[Sy-(Sy/2π l/k)^2 1/CE] (5) Pcr= (Cπ^2 E)/(l/k)^2 A (6) Where, I = mass moment of inertia, k = radius of gyration, A = cross sectional area of the link, Pcr = critical buckling load, Sy = yield strength, and E = modulus of elasticity The platform is using the three legs to move. Leg1 is along Y-axis and Leg2 and Leg3 both acting along X-axis and Y- axis as well (Figure 1 and 2). All 3 legs act along Z-axis. The leg as shown earlier can be divided into two parts upper leg and lower leg. The fixture is at original position [0 0 0 0 0 0] and no orientation when all links are retracted, as a result the movements in Z-axis only happens in positive direction upward. Further analysis is will show the platform parameters limits and discuss the positioning of the platform. The positon can be represented by the equation (7). P = [ X Y Z α β γ]T (7) The X, Y and Z are the translation movements and α,β and γ represents the rotation of the platform. The following equations are derived using inverse kinematics and interpolation: X= ((±15*θ)/180) +15 (8) Where ± depends on the direction of the movements. Y= ((d*θ)/180) + d (9) Where, d= 4 if it is in positive direction and d=-16 if it is in negative direction z=((17*θ)/180 )+17 (10) The fixture need to rotate around X and Y axis only. So the α and β are given by α=((q*θ)/180)±q (11) Where, q=11 when going anticlockwise and -11 clockwise. q= -11 when going clockwise. Dalol and Salehi (2017): International Journal of Engineering Materials and Manufacture, 2(3), 49-57 53 β=((w*θ)/180)±w (12) Where, w=3 when going anticlockwise and w=–12.5 when going clockwise 4 PROGRAMMING The coding was done using C++ and C sharp. The C sharp was needed to use with Visual Studio software to develop the Graphical user interface (GUI). The GUI can be used in two ways. The first method is by adding the values one by one for each movement and save them. After saving the command “START” will initiate the platform movement. When the platform finishes, it returns to original position and waits for further commands. The second method is by uploading a text with pre-programmed instructions. After uploading the file, “START” button will initiate the platform and it will start moving. When the instructions finish the platform returns to original position. The details of these instructions are shown in Figure 4. The logic of instruction of movement is shown in flow chart Figure 5. (a) (b) Figure 4: Sample of the (a) coding and (b) GUI for the CNC system Concept of a Programmable Fixture for 3-Axis CNC 54 Figure 5: Flow chart of movement instruction 5 TESTING The platform algorithms went through several testing and the test results are summarized in Table 5. The platform make translation along the three axis X,Y and Z. The platform also can rotate around all three axes but the needed ones are around X axis and Y axis. The rotation about Z does not add any extra functionality to the CNC machine that the five different movements cannot achieve by themselves. For translation, a ruler with a right angle was used to measure the actual translation that accrues. For rotation a fixed bar, a ruler and a protractor were used. Table 5: Summary of platform algorithm test results Parameter Min Max Average absolute error Translation along X in mm -15 15 0.44444 Translation along Y in mm -5 16 0.47222 Translation along Z in mm 0 17 0.40000 Rotation about X in degrees -12.5 4 0.66667 Rotation about Y in degrees -11 11 0.52777 Dalol and Salehi (2017): International Journal of Engineering Materials and Manufacture, 2(3), 49-57 55 (a) (b) (c) Figure 6: Translation error for converted 5-axis CNC along (a) X axis, (b) Y axis, and (c) Z axis -0.2 0 0.2 0.4 0.6 0.8 1 1.2 -20 -15 -10 -5 0 5 10 15 20 e rr o r (m m ) movments (mm) Translation along X Run 1 Run 2 Run 3 -0.2 0 0.2 0.4 0.6 0.8 1 1.2 -10 -5 0 5 10 15 20 e rr o r m m translation mm Translation along Y Run 1 Run 2 Run 3 -0.2 0 0.2 0.4 0.6 0.8 1 1.2 0 2 4 6 8 10 12 14 16 18 e rr o r m m translation mm Translation along Z Run 1 Run 2 Run 3 Concept of a Programmable Fixture for 3-Axis CNC 56 (a) (b) Figure 7: Rotation error for converted 5-axis CNC about (a) X axis and (b) Y axis 6 CONCLUSION The paper presents a concept of converting 3-axis low cost CNC machine into a 5-axis CNC machine using a smart fixture. The smart fixture was designed using parallel kinematics and its feasibility was studied. The fixture was tested for positional accuracy in terms of translation and rotation. This research showed:  The coding was done using C++ and C sharp with Visual Studio software to develop the user friendly GUI.  The movement accuracy is found to be in sub millimetre range.  It is possible to convert 3-axes CNC milling machine into 5-axes CNC milling machine ACKNOWLEDGEMENT Authors would like thank International Islamic University to provide research grant and laboratory facilities for conducting this research. 0 0.5 1 1.5 2 -14 -12 -10 -8 -6 -4 -2 0 2 4 6 e rr o r (d e g re e s) command rotation (degrees) Rotation about X Run 1 Run 2 Run 3 -0.2 0 0.2 0.4 0.6 0.8 1 1.2 -15 -10 -5 0 5 10 15 e rr o r in d g re e s rotation (degrees) Rotation around Y Run 1 Run 2 Run 3 Dalol and Salehi (2017): International Journal of Engineering Materials and Manufacture, 2(3), 49-57 57 REFERENCES [1] Jazar, R. N. (2007). Theory of applied robotics: Kinematics, dynamics, and control. New York: Springer. [2] Pandilov, Z. & Dukovski, V. (2014). Comparison of The Characteristics Between Serial and Parallel Robots. Acta Tehnica Corviniensis. [3] [Gwinnett, 1931] Tsai, L. (1999). Robot analysis: The mechanics of serial and parallel manipulators. New York: Wiley. [4] Lenarc ̌ic ̌, J., & Husty, M. L. (1998). Advances in robot kinematics: Analysis and control. Dordrecht: Kluwer Academic. [5] Stewart, D. (1966). A Platform with Six Degrees of Freedom: A new form of mechanical linkage which enables a platform to move simultaneously in all six degrees of freedom developed by Elliott ‐Automation. Aircraft Engineering and Aerospace Technology, 38(4), 30-35. [6] Patel, Y., & George, P. (2012). Parallel Manipulators Applications. Modern Mechanical Engineering, 57-64. [7] https://i.materialise.com/3d-printing-materials/abs/technical-specifications [8] https://www.arduino.cc/en/Main/ArduinoBoardUno [9] Budynas, R. G., Nisbett, J. K., & Shigley, J. E. (2011). Shigley's mechanical engineering design. New York: McGraw-Hill. [10] Xing, Y., & Wang, T. (2011). Accuracy enhancement in manufacture of spiral bevel gear with multi-axis CNC machine tools by a new compensation method. International Conference on Consumer Electronics, Communications and Networks. doi:10.1109/cecnet.2011.5768862 [11] Gallardo, J., Lesso, R., Rico, J. M., & Alici, G. (2011). The kinematics of modular spatial hyper-redundant manipulators formed from RPS-type limbs. Robotics and Autonomous Systems, 59 (1), 12-21. doi:10.1016/j.robot.2010.09.005 https://i.materialise.com/3d-printing-materials/abs/technical-specifications https://www.arduino.cc/en/Main/ArduinoBoardUno