Nowadays, the increasingly commonly used manufacturing process quality control method is optical based quality control. The automated optical test equipment used in high-volume serial production uses the CAD model of the circuitry and a large database of thousands of image to solve the problem. Their startup and adjustment is a resource-intensive, several hour operation that needs to be done before each new type of production.
However, in many cases the human factor can not be replaced, we do not want to entrust the entire control process to automatic machines. The reason for this consideration may be purely economic, or it is simply not worth the lengthy set up and adjustment of a complex autonomous system to the size of the task. The thesis recommend a useful alternative for this challenge.
The finished solution is a linux based software, developed in Qt, witch - using with suitable lens, camera and lighting conditions - supports the quality control activities in the manual visual inspection. The first time setting of the software can be done in minutes and does not require any technological or programming skills. The targeted use of the program is mainly to inspect small series production with human contribution, but can also be developed into automatic control systems after minor modifications.
The application's error detection algorithm uses a comparison with a reference sample, predetermined by the user, in smaller areas of the test image. The examined parts are searched on the test image by the template matching method, after the exact position is found, this is the only smaller area that will be the basis for comparison. The locations of the errors are determined by the absolute difference between the layers of the images.
As a result of the test method, the application can mainly indicate a component deficiency, surplus, certain degree of angular rotation, and is not suitable for checking the solder bonds in its current form. The found errors will be indicated by red spots to the operator, and in case of flawless area a green frame will appear on the display.
Using the data matrix codes on the panels, the system automatically creates a diagnostic log with time stamp. For decoding the software use the ZXing free source C++ library.
For the correct operation, it is only necessary a picture of a reference product, the designation of the examined areas, and parameter tuning, which can be done with a few clicks. The application's programming language is c++, and for the image processing tasks it uses the OpenCV library.