Summary: | 碩士 === 國立中正大學 === 資訊工程研究所 === 103 === In this thesis, we integrate an iterative learning control (ILC) module into an open source Linux-based CNC software, LinuxCNC. Due to that LinuxCNC contains user-space and kernel-space components, we propose several strategies to handle communication issues between the ILC module and LinuxCNC. Especially, we describe special functions for I/O operations in the Motion part of LinuxCNC, which runs in the kernel-space. In order to conform to the real-time restriction in LinuxCNC, we use RAM Disk technique to accelerate the speed of accessing storages.
The whole system was evaluated on a real five-axis machine tool. The experimental results show that the ILC module can reduce the actual contour error after proper learning iterations. In addition, we evaluate the impact of using the ILC module with Ram Disk technique to accelerate the speed of reading or data from files. For the tested G-code, the experimental result shows the ILC module can reduce the single iterative execution time by 3.18% with RAM Disk technique.
|