UR5 İşbirlikçi Robotla Farklı Geometrik Şekillere Sahip Malzemelerin Sınıflandırılması
Özet
Machine learning is a major subset of artificial intelligence studies in the literature. Deep learning is also a specialized machine learning technique which involves the use of convolutional neural networks. In deep learning techniques, it is not necessary to manually extract features from the training dataset for object recognition and classification problems. Image processing with deep learning techniques has a significant advantage of extracting the necessary features automatically for classification, by processing the training dataset through neural networks.
In this thesis, a MATLAB based object recognition program is created using deep learning techniques to recognise and classify components with different geometric shapes, more specifically screws, washers and nuts, which are fed to the experiment setup randomly and one by one from a conveyor belt. The performances of three widely used algorithms in the literature for image recognition problems, namely Alexnet, Googlenet and Squeezenet are investigated in order to decide which object recognition algorithm is more suitable to be used in the software part of the thesis. A common data set consisting of the photos of the objects is prepared for recognising and classifying
iii
screws, washers and nuts. Instead of utilising the objects that are already present in the libraries of the algorithms, each algorithm is trained by this data set with the transfer learning method. The performances of trained algorithms are initially tested on a software medium with the photos from data set reserved as test data. Subsequently, a benchmark test is carried out on the physical setup with a USB webcam for those algorithms. The tests performed on both software and hardware revealed that the Squeezenet algorithm achieved the highest performance.
The object recognition program with the Squeezenet algorithm performs communication with the UR5 collaborative robot (cobot) through TCP/IP by sending a unique message for each prediction case. A robot control program is designed with Polyscope, the graphical user interface on the robot’s teach pendant to control the robot’s movements. The robot control program receives the prediction output of a MATLAB based object recognition program by continuously listening to a specific port over TCP/IP and completes the classification process by moving the robot arm according to the received message to pick up the component and put it into corresponding box for that particular object. A voltage-controlled electromagnet is chosen as an end effector for the robot arm since the screws, washers and nuts used in this thesis study have ferromagnetic characteristics. Different scenarios are prepared on the Polyscope based robot control program to perform the necessary tasks of the robot arm for each object. Finally, the performance of the overall system is put to test and both the hardware and the software parts are observed to be operating successfully.