Abstract:
This thesis deals with the motivation and objective, theoretical background knowledge, methodology and conclusion of the final year project based off using the latest iteration in the YOLO series, YOLOv8, one of the most popular Convolutional Neural Networks for identifying faults in printed circuit board assemblies in real time for industrial automation 4.0. Complete assemblies starting from raw copper clad board can be manufactured in one complete process but in majority of the cases, to reduce chances of defect in final product and ensure high quality, bare PCBs are manufactured separately in a different factory. These PCBs having zero errors like mousebite, spurious copper, open circuits etc. are brought into a separate factory where they go through a complete automated process of adding and soldering components onto the board. The traditional method of quality assurance is mainly visual inspection through human labour or sometimes AOI (Automated Optical Inspection) to make sure there are no solder defects or component misalignment. Despite rigorous control measures, chances are these printed circuit boards with defects could even pass quality test that could ultimately have adverse effect on the functionality of them being used in daily consumer electronics.
To bridge the gap of speed and accuracy, a new approach of using CNN is proposed and implemented in this project. Using the computing services of Google Colab, the initially trained model YOLOv8s on COCO dataset is re-trained on manually acquired custom dataset of PCB assemblies with defects. Images of defected PCB assemblies for dataset collection were acquired from major sources outlined in the thesis. The annotations were done in YOLO bounding box format through an online tool Roboflow.
The trained model was analysed for its performance metrics, both before and after exporting it to NCNN format on Colab. For real time application, the model was finally deployed on edge platform performing object detections on live video feed from camera.