Majlesi Journal of Electrical Engineering Vol. 10, No. 1, March 2016 7 Design and Development of a Novel CNC Controller for Improving Machining Speed Shahrokh Hatefi 1, 2 , Omid Ghahraei 2 and Behzad Bahraminejad 3, 4 1-Department of Electrical Engineering, Majlesi Branch, Islamic Azad University, Isfahan, Iran 2- Center for Advanced Engineering Research, Majlesi Branch, Islamic Azad University, Isfahan, Iran Email: o.ghahraei@iaumajlesi.ac.ir (Corresponding Author) 3-Center for Advanced Engineering Research, Majlesi Branch, Islamic Azad University, Isfahan, Iran 4 -Harvard-MIT Division of Health Sciences and Technology, Harvard Medical School, Cambridge, MA, USA Received: May 2015 Revised: September 2015 Accepted: September 2015 ABSTRACT: One of the devices that are widely used in industries in recent years is computer numerical control (CNC) machinery. Many CNC controllers has been designed and employed in CNC machinery during recent years but all of them has some limitations and disadvantages due to their design and used methods. The purpose of this research is designing and modifying a novel multi axis automatic controller (MAAC) for using in CNC machinery which has more advantages compared with used controllers and has an optimized performance. By using MAAC in CNC machinery we can achieve more machining speed and repeatability in a shorter time in implementation of industrial process. KEYWORDS: CNC Controller, Machining Speed, Operation Time. 1. INTRODUCTION CNC provides an automatic control of the machine tool by the computer that represent an advanced control system that directs a variety of machine tools, robots and transmission lines in factories[1]. In a CNC machine all data and information are processed by a computer, then the processors convert data to electrical pulses and transmit them to axis’s driving motors [2]. The main role of controller in a CNC machine is receiving the position signals from the computer and makes them into mechanical movement in definite axis by the machine’s motor and reaching the requested position. Controller is made up of different parts, each part makes machine to move a certain amount in the defined axis [3]. After receiving and interpreting data from NC software, movement command will be transmitted to the motor drivers of each motor and moves the definite parts in the designed routs. USB or printer port will provide the connection [4]. CNC controller parts with synchronized and integrated function will receive the transmitted signal and interpret it into a controlled movement of the machine’s motors in the right direction by the right amount [5]. In 2009 a theoretical controller model with the capability of controlling and driving servomotor was designed and the accuracy of the system was confirmed by simulated experimental data [6], in another study an open architecture CNC controller was designed and developed to restore old CNC machines. This motion control system could retrofit old CNC machines [7] and also a reconfigurable hardware controller based on FPGA was designed in order to be used in CNC machines and the experimental results shows the feasibility of the proposed controller [8]. Fig. 1. The CNC controller functional block diagram Although all the electronic parts of a CNC machine are already built and fully functional, the CNC machine is still built to modify the results of the machine, in 2010 a small typed prototype CNC machine using stepper