Integration Of G-Code With Position Controller Via Interpreter Design Using MATLAB For Milling Machine Application - Mat Seman., Norhidayah (2019)
In precision machining, various classical and advanced feedback position controllers such as cascade, proportional-integral-derivative, and sliding mode controllers have been developed with the aim to meet the precision requirements of the machine tool controller. To-date, most of these position controllers are not well utilized in commercial CNC machine tools. This is due to the limitation of the input reference applied for the position controller structure. Commonly, input reference signals such as step, ramp, sinusoidal, and other waveforms are utilized in testing and verifying the efficiency and performance in design process of position controllers. In most cases, the position controllers rarely utilize geometrical drawing such as CAD/CAM trajectory as input reference without extensive programming or trajectory generation algorithm. Thus, this thesis aims to integrate directly the trajectory in G-code form of *.txt format as input reference for the position controller algorithm designed in MATLAB/Simulink via development of a system interpreter. A user interface of G-code-position controller (GPC) interpreter was designed using uicontrol objects in MATLAB GUI platform and Callbacks were programmed in Scripts Editor. The interpreter functions to extract and interpret the x and y data positions from the generated G-code. The input of the interpreter is the G-code generated from a standard three-dimensional geometrical CAD/CAM part production using CATIA software. Simulation of the interpreter was performed to compute the x and y data positions which were later validated experimentally by applying a cascade P/PI position controller for an XY positioning table of CNC milling machine. The success of the experimental validation proved the consistency of the interpreter to track three different shapes of geometrical objects in milling machining process. In simulation of the three G-code trajectories, the operation time to extract the data was recorded, whereby a 0.92%, 1.09%, and 1.35% efficiencies were achieved from extraction of 8429 data, 9514 data, and 12127 data, respectively. Based on the findings, it is concluded that more extraction time is required with increase in sample data size. The interpreted G-codes of random-curvy-shape, oval-shape, and circular-shape trajectories were validated experimentally on an XY milling machine positioning table resulted in RMSE values of respectively 0.0203mm and 0.0068mm, 0.0063mm and 0.0064mm, and 0.0057mm and 0.0064mm for x and y axes. As a conclusion, the realization of this interpreter has enabled seamless integration between a CAD/CAM trajectory and position controllers thus resulting in a reliable, accurate, and adaptable machining process to any desired specifications put forward by the part manufacturers. As a future recommendation, it is desired that the interpreter is tested and validated in real cutting experiments against the utilization of parts with complex shapes and processes to ensure its robustness and accuracy prior to commercialization.