BGA (Ball Grid Array) poor welding accidental fault identification method based on clustering algorithm
By collecting and analyzing X-ray data in BGA welding quality evaluation, determining the degree of defects and correcting the membership, the problem of membership ambiguity in BGA welding poor recognition is solved, and the accuracy and efficiency of fault recognition are improved.
Patent Information
- Application Number
- CN202510578227.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-07
- Publication Date
- 2025-06-06
- Estimated Expiration
- 2045-05-07
AI Technical Summary
In BGA welding quality evaluation, the clustering algorithm is difficult to accurately identify occasional failures of BGA welding due to the ambiguity of membership, especially for samples close to the cluster boundary.
By collecting X-ray data of BGA welding fault samples, extracting edge information, determining the outline, analyzing various defect degrees, and determining the correlation between each fault and various defect degrees based on the historical fault sample data after threshold segmentation, correcting the membership of the fault samples to be identified to improve the accuracy of fault identification.
By analyzing the characteristics of the causes of occasional failures caused by BGA welding, the accuracy of fault identification is improved, the ambiguity of boundary samples is reduced, and the accuracy of clustering algorithm is improved, especially for fault samples with high similarity, and the efficiency of fault identification is improved.
Smart Images

Figure CN120107249A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of data processing, and in particular to a method for identifying occasional BGA soldering failures based on a clustering algorithm. Background Art
[0002] In the field of electronic manufacturing, Ball Grid Array (BGA) packaging technology is widely used due to its advantages such as high density and high performance. However, the quality of BGA welding is directly related to the reliability and stability of electronic products. Occasional failures caused by poor welding will not only affect the performance of the product, but may also cause safety hazards during the use of the product, causing huge economic losses and reputation damage to the company. Therefore, improving the quality of BGA welding and identifying occasional failures caused by poor welding in a timely and accurate manner are of vital importance to electronic manufacturing companies.
[0003] As a non-destructive detection method, X-ray detection technology can clearly present the internal structure of BGA solder joints, effectively detect welding defects, and provide strong support for welding quality assessment. In the actual production process, companies usually extract some samples from each batch of boards and use X-ray equipment for detection to evaluate the overall welding quality. However, when using clustering algorithms for welding quality assessment, the relationship between data points and a cluster is usually represented by membership. This membership is fuzzy, especially for those samples close to the cluster boundary, the membership may be assigned to multiple clusters, thus affecting the accurate identification of faults. Especially in the case of poor BGA welding, the manifestation of welding defects may vary due to various factors, which leads to a fuzzy membership between the sample and the cluster center, thus affecting the accuracy of fault identification. Summary of the invention
[0004] In view of the above content, it is necessary to provide a BGA soldering defect occasional fault identification method based on clustering algorithm to solve the above problems.
[0005] An embodiment of the present application provides a method for identifying occasional BGA soldering failures based on a clustering algorithm, the method comprising: S1: Collect X-ray data of BGA soldering failure samples; S2: Extract edges from X-ray data, filter closed edges, analyze the similarity between each closed edge and other closed edges, and obtain target contours and irregular contours; determine solder ball contours and bubble contours based on the positional relationship between target contours; obtain the first defect level based on the number of bubble contours contained in each solder ball contour and the quantitative distribution of target contours; cluster all closed edges, perform anomaly detection on the length of closed edges in the clustering results, and determine the second defect level; analyze the distance distribution between pixel points on all irregular contours and the corresponding pixel points on the maximum inscribed circle, and obtain the third defect level in combination with the quantitative characteristics of irregular contours; S3: Based on the distribution differences of various defect degrees of the historical fault sample data of each fault after threshold segmentation, determine the correlation between each fault and various defect degrees; form all defect degrees of each fault sample into a triplet, cluster all historical fault samples of each fault type and the triplet of the fault sample to be identified, and according to the correlation between each fault and various defect degrees, correct the membership of the clustering cluster of each fault type of the fault sample to be identified, and determine the fault type of the fault sample to be identified.
[0006] The specific process of analyzing the similarity between each closed edge and other closed edges to obtain the target contour and the irregular contour is as follows: The shape context algorithm is used to obtain the similarity between all pairwise closed edges in each fault sample; For each closed edge, calculate the mean similarity between it and all other edges, set a similarity threshold, and take the closed edges whose similarity mean is greater than or equal to the similarity threshold as the target contour, and record the remaining closed edges as irregular contours.
[0007] The process of determining the solder ball contour and the bubble contour according to the positional relationship between the target contours is specifically as follows: Extract the center of each target contour, that is, the coordinate mean of all pixel points in each target contour; use the fitting circle algorithm to fit each target contour and extract the edge radius of each target contour; When the distance between the centers of two target contours is less than the maximum value of the edge radius of the two target contours, the two target contours are in a positional relationship of inclusion; The target contour with the largest edge radius among the two target contours having a containment relationship is recorded as the solder ball contour, and the target contour with the smallest edge radius is recorded as the bubble contour.
[0008] The specific formula for obtaining the first defect level based on the number of bubble contours contained in each solder ball contour and the quantity distribution of the target contour is: ;in, Indicates the first defect degree; Indicates the number of target contours; L indicates the number of solder ball contours including bubble contours; Indicates the number of bubble contours contained in the i-th solder ball contour that contains the bubble contour; It represents the length of the jth bubble contour in the i-th solder ball contour containing the bubble contour, and norm() represents the normalization function.
[0009] The specific process of clustering all closed edges, performing abnormality detection on the lengths of closed edges in the clustering results, and determining the second defect degree is as follows: All closed edges in the cluster with the largest number of elements are recorded as normal contours, and the average length of all normal contours is taken as the standard solder ball contour length; all remaining contours are recorded as abnormal contours; Anomaly detection is performed on the lengths of all closed edges and the length of the standard solder ball contour, and the average of the anomaly values of all abnormal contours is used as the second defect level.
[0010] The third defect degree is obtained by analyzing the distance distribution between all pixels on the irregular contour and the corresponding pixels on the maximum inscribed circle, combined with the quantitative characteristics of the irregular contour, and specifically: Obtain the minimum distance between each pixel point on each irregular contour and the edge pixel point on the maximum inscribed circle of the same irregular contour; calculate the ratio of all irregular contours to all target contours, recorded as the irregular proportion; perform forward fusion of the cumulative sum of the minimum distances of all irregular contours and the normalized result of the irregular proportion as the third defect degree.
[0011] The process of determining the correlation between each fault and various defect levels based on the distribution difference of various defect levels of the historical fault sample data of each fault after the threshold segmentation is specifically as follows: Using the Otsu threshold algorithm to perform threshold segmentation on any defect degree data of all historical fault samples of each fault, a first segmentation threshold is obtained; The mean of all the degrees of any defect in the data of the type with the largest number of elements after segmentation is recorded as the first mean; the mean of all the degrees of any defect in the other type of data is recorded as the second mean; the absolute value of the difference between the first mean and the second mean is calculated, recorded as the first absolute value of the difference; Calculate the absolute value of the difference between the number of data elements of the two categories after segmentation, and record it as the second absolute value of the difference; The correlation is negatively correlated with the absolute value of the first difference and the absolute value of the second difference.
[0012] The process of correcting the membership of each type of cluster to which the fault sample to be identified belongs is as follows: Based on the differences between the historical fault samples of each fault and the various defect levels of the cluster center, the cluster of each fault type is determined; the corrected membership degree of the fault sample to be identified belonging to the first fault cluster is recorded as , its formula form is: ,in, Indicates the initial membership of the fault sample to be identified to the first fault cluster, represents the correlation between the first fault and the first defect degree, represents the square of the first defect degree difference between the fault sample to be identified and the cluster center of the first fault cluster, represents the correlation between the first fault and the second defect degree, represents the square of the second defect degree difference between the fault sample to be identified and the cluster center of the first fault cluster, represents the correlation between the first fault and the third defect degree, Represents the square of the third defect degree difference between the fault sample to be identified and the cluster center of the first fault cluster.
[0013] The specific process of determining the clustering cluster of each fault type is as follows: The cluster center of each cluster is obtained, and the difference between the various defect levels of the cluster center and the average values of the various defect levels of all historical fault samples of various faults is calculated. The cluster with the smallest difference is selected as the cluster of various faults.
[0014] The step of determining the fault type of the fault sample to be identified includes: The fault type of the cluster with the largest corrected membership degree is taken as the fault type of the fault sample to be identified.
[0015] This application has at least the following beneficial effects: The present application first collects X-ray data of BGA welding fault samples, extracts edge information, and determines contours; based on the distribution characteristics between contours, various defect degrees are analyzed, and its beneficial effect is that by analyzing the characteristics of the causes of known occasional BGA welding faults, the accuracy of subsequent fault identification based on these defect degrees is improved; based on the distribution differences of various defect degrees of historical fault sample data of each fault after threshold segmentation, the correlation between each fault and various defect degrees is determined, and its beneficial effect is that the distribution of different fault types under various defect degrees can be analyzed to more accurately identify the occurrence of specific faults, thereby improving the accuracy of fault identification; all historical fault samples of each fault type and all defect degrees of the fault samples to be identified are clustered, and combined with the correlation between each fault and various defect degrees, the membership of the clustering cluster of each fault type to which the fault sample to be identified belongs is corrected. By correcting the membership of the sample to be identified, the ambiguity of the boundary sample can be reduced, making the clustering result more accurate and improving the accuracy of the clustering algorithm, which helps to accurately classify those fault types that are difficult to distinguish, especially for fault samples with high similarity, thereby improving the efficiency of fault identification. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] Figure 1 A flow chart of a method for identifying occasional BGA soldering faults based on a clustering algorithm provided in this application; Figure 2 Schematic diagram of obtaining various defect levels provided for this application. DETAILED DESCRIPTION
[0017] In the description of the embodiments of the present application, words such as "exemplary", "or", "for example" and the like are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary", "or", "for example" and the like is intended to present related concepts in a concrete manner.
[0018] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art in the present application. The terms used in the specification of the present application are only for the purpose of describing specific embodiments and are not intended to limit the present application.
[0019] It should also be noted that the terms "first" and "second" in this application and its drawings are used to distinguish similar objects, rather than to describe a specific order or sequence. The method disclosed in the embodiments of the present application or the method shown in the flow chart includes one or more steps for implementing the method. Without departing from the scope of protection of this application, the execution order of multiple steps can be interchanged with each other, and some steps can also be deleted.
[0020] Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs.
[0021] This application first proposes a BGA soldering defect occasional fault identification method based on clustering algorithm, which is applied to the field of data processing technology. Figure 1 , the method comprises the following steps: S1: Collect X-ray data of BGA soldering failure samples.
[0022] In actual production, this application considers extracting some samples from each batch of boards and cards, and using X-ray equipment for detection to evaluate the overall welding quality. Specifically, this application mainly considers fault identification of faulty samples, so the X-ray data of each faulty sample is obtained, and the X-ray data of each faulty sample is subjected to median filtering and denoising. Among them, median filtering is an existing well-known technology, and this application will not elaborate on it.
[0023] S2: Extract edges from X-ray data, filter closed edges, analyze the similarity between each closed edge and other closed edges, and obtain target contours and irregular contours; determine the solder ball contour and bubble contour according to the positional relationship between the target contours; obtain the first defect degree based on the number of bubble contours contained in each solder ball contour and the quantitative distribution of the target contours; cluster all closed edges, perform anomaly detection on the length of the closed edges in the clustering results, and determine the second defect degree; analyze the distance distribution between the pixels on all irregular contours and the pixels on the corresponding maximum inscribed circle, and obtain the third defect degree in combination with the quantitative characteristics of the irregular contours.
[0024] Common causes of poor soldering can be divided into three categories: the first is the empty soldering caused by bubbles inside the solder ball, which is recorded as the first fault; the second is the empty soldering caused by the enlargement of the BGA solder ball, which is recorded as the second fault; the third is the empty soldering caused by insufficient tin caused by the via hole, which is recorded as the third fault. Therefore, it is necessary to detect the BGA soldering quality, and perform feature analysis and clustering based on these three fault causes to achieve fault identification and diagnosis.
[0025] Specifically, an edge detection algorithm is used to obtain all edges in the X-ray data of each fault sample. The edge detection algorithm in the embodiment of the present application uses Canny edge detection; then each edge is judged to determine whether it is a closed edge. The method for judging a closed edge in the present embodiment is as follows: for each edge, if each edge pixel has adjacent edge pixels, the edge is a continuous edge; if all edge pixels on the continuous edge have more than two edge pixels, the edge is a closed edge. If the edge is a closed edge, it means that the edge is a solder ball on a BGA solder joint, and subsequent analysis is based on the closed edge.
[0026] Since the outline of the BGA solder ball and the outline of the bubble in the solder ball are usually closed shapes, and their appearance is close to a circle, their shapes have a high similarity. Therefore, the present application uses a shape context algorithm to analyze these closed edges: obtain the similarity between all pairs of closed edges in each fault sample, where the stronger the similarity between the closed edge and the other closed edge outlines, the greater the possibility that the closed edge is the target outline, that is, the greater the possibility that it is the outline of the solder ball or the outline of the bubble; otherwise, it may be other irregular outlines. For each closed edge, calculate the mean similarity with all other edges, set a similarity threshold, and use the closed edges with a similarity mean greater than or equal to the similarity threshold as the target outline, and record the number of target outlines as P; the remaining closed edges are recorded as irregular outlines.
[0027] Extract the center of each target contour, that is, the coordinate mean of all pixels in each target contour; use the fitting circle algorithm to fit each target contour and extract the edge radius of each target contour; based on the distance between the centers of the target contours in pairwise combination, compare with the radius of the corresponding target contour to obtain the positional relationship between the target contours in pairwise combination: when the distance between the centers of the two target contours is less than the maximum value of the edge radius of the two target contours, the two target contours are in a contained positional relationship, if the edge radius of target contour A is greater than the edge radius of target contour B, then target contour A contains target contour B; it should be understood that if a target contour contains a target contour, the target contour is a solder ball contour, and the contained target contour is a bubble contour; since the same solder ball contour may contain multiple bubble contours, the number of solder ball contours containing the bubble contour is extracted, recorded as L; further, the number of bubble contours contained in the i-th solder ball contour containing the bubble contour is recorded as .
[0028] Based on the number of bubble contours contained in each solder ball contour and the quantity distribution of the target contour, the first defect level Gr is obtained, and its formula form is: ;in, It represents the length of the jth bubble contour in the i-th solder ball contour containing the bubble contour, and norm() represents the normalization function.
[0029] It should be understood that the larger the ratio of the number of solder balls containing bubbles to the number of target contours in the X-ray data, the greater the The larger it is, the more bubbles there are in the solder ball, and the larger the corresponding bubbles are, the greater the degree of bubble defects in the solder ball, that is, the greater the degree of the first defect.
[0030] S202: Analyze the defect characteristic of empty soldering caused by the enlargement of the BGA solder ball to obtain the second defect level.
[0031] Specifically, K-means clustering is performed on all closed edges. The clustering measurement in this embodiment uses the absolute value of the difference in closed edge lengths. The number of clusters is set to 2. All closed edges in the cluster with the largest number of elements are recorded as normal contours, and the average length of all normal contours is used as the standard solder ball contour length; all remaining contours are recorded as abnormal contours.
[0032] Since the fault feature is that the solder ball at the fault point is larger than other solder balls, the length of all closed edges and the length of the standard solder ball contour are analyzed using the Local Outlier Factor (LOF) algorithm to obtain the LOF outlier value of each abnormal contour, and the average of the LOF outlier values of all abnormal contours is taken as the second defect degree, recorded as PLOF; it should be understood that the larger the value of the second defect degree, the greater the possibility that the fault of the faulty sample is a blank solder joint.
[0033] S203: Analyze the defect characteristic of insufficient tin amount caused by the via hole to obtain a third defect level.
[0034] The third defect usually occurs when there is a via in the solder joint. During the reflow process, some solder balls will flow into the via due to capillary phenomenon, resulting in insufficient solder. Sometimes, similar problems may occur in the area where the via is close to the pad. This situation usually appears as a smaller solder ball volume in the X-ray data. When too much solder is sucked away by the via, it may cause a hollow solder joint.
[0035] Closed contours are divided into target contours and irregular contours. Irregular contours may be caused by capillary phenomena, so it is necessary to calculate the irregularity of these edge contours. These irregular contours are usually caused by the deformation of the solder balls that were originally close to a circle during the welding process. In this embodiment, the maximum inscribed circle of the irregular contour is first extracted, and then the distance between the irregular contour and the nearest edge on its maximum inscribed circle is calculated for analysis. The closer the distance, the smaller the degree of irregularity, and vice versa. The larger the distance, the greater the degree of irregularity. The specific calculation method is as follows: obtain the minimum distance between each pixel point on each irregular contour and the edge pixel point on the maximum inscribed circle of the same irregular contour; calculate the ratio of all irregular contours to all target contours, recorded as the irregular proportion; the cumulative sum of the minimum distances of all irregular contours and the normalized result of the irregular proportion are forward fused as the third defect degree. In this embodiment, the forward fusion of multiple variables adopts the multiplication calculation method.
[0036] It should be understood that when the irregularity ratio is larger and the distance distribution between the corresponding pixel points on the irregular contour and the maximum inscribed circle is larger, it means that the irregularity of the solder ball in the image is greater, and thus the degree of the third defect is greater.
[0037] Among them, the schematic diagram of obtaining various defect levels is as follows Figure 2 shown.
[0038] S3: Based on the distribution differences of various defect degrees of the historical fault sample data of each fault after threshold segmentation, determine the correlation between each fault and various defect degrees; form all defect degrees of each fault sample into a triplet, cluster all historical fault samples of each fault type and the triplet of the fault sample to be identified, and according to the correlation between each fault and various defect degrees, correct the membership of the clustering cluster of each fault type of the fault sample to be identified, and determine the fault type of the fault sample to be identified.
[0039] According to the three defect degrees corresponding to the three known fault causes of the fault samples, the three defect degrees of each historical fault sample form a triplet, and clustering is performed based on these three features. In this embodiment, the clustering uses the fuzzy C-Mean (FCM) algorithm to cluster the historical fault samples, and the number of clusters is set to 3. Since there is a correlation between different defect degrees and fault types when a fault occurs, the importance of each defect degree needs to be considered during clustering, and the membership degree obtained by clustering needs to be corrected.
[0040] First, the parameter values of all defect levels of historical fault samples of known fault types are obtained, and the parameter characteristics reflected in different faults are analyzed. By analyzing the importance of various defect level parameters in different faults, since the analysis method for each fault type is consistent, the embodiment of the present application records the fault of bubbles in the solder ball as the first fault, and takes the first fault and the first defect level as an example, and records the correlation between the first defect level and the first fault as the first correlation. The specific acquisition method is: the first defect level data of all historical fault samples with the first fault as the first fault are threshold segmented using the Otsu threshold algorithm to obtain the first segmentation threshold; the mean of all first defect levels in a category of data with the largest number of elements after segmentation is recorded as the first mean; the mean of all first defect levels in another category of data is recorded as the second mean; the absolute value of the difference between the first mean and the second mean is calculated, recorded as the first difference absolute value; the absolute value of the difference between the number of elements of the two categories of data after segmentation is calculated, recorded as the second difference absolute value; the first correlation is negatively correlated with the first difference absolute value and the second difference absolute value.
[0041] In this embodiment, the absolute value of the first difference is recorded as T, and the absolute value of the second difference is recorded as S. The specific formula form of the first correlation is: ; Wherein, exp() represents an exponential function with a natural constant as the base. It should be understood that the greater the difference between the two types of data after the threshold segmentation, the smaller the correlation, and the smaller the difference, the greater the correlation, indicating that the first fault can be accurately judged based on this parameter alone.
[0042] The correlation between any fault and any defect degree is calculated by adopting the same calculation steps as the first correlation.
[0043] Next, perform FCM clustering on all triplets of the fault samples to be identified and the historical fault samples, obtain the cluster center of each cluster, calculate the difference between the various defect levels of the cluster center and the average values of the various defect levels of all historical fault samples of the first fault, and select the cluster with the smallest difference as the first fault cluster. The modified formula for the membership of the data to be analyzed to the first fault cluster is as follows: ,in, Indicates the corrected membership of the fault sample to be identified to the first fault cluster, Indicates the initial membership of the fault sample to be identified to the first fault cluster, represents the correlation between the first fault and the first defect degree, represents the square of the first defect degree difference between the fault sample to be identified and the cluster center of the first fault cluster, represents the correlation between the first fault and the second defect degree, represents the square of the second defect degree difference between the fault sample to be identified and the cluster center of the first fault cluster, represents the correlation between the first fault and the third defect degree, Represents the square of the third defect degree difference between the fault sample to be identified and the cluster center of the first fault cluster.
[0044] It should be understood that, when judging whether a fault sample belongs to the first fault, the greater the initial membership in the initial clustering result and the smaller the square of the difference between the degree of various defects between the corresponding fault sample to be identified and the cluster center of the first fault clustering cluster, the more likely the fault type of the fault sample to be identified is the first fault.
[0045] Correspondingly, the corrected membership of the fault sample to be identified belonging to the second fault cluster and the third fault cluster is obtained. , All the corrected memberships of each fault sample to be identified are normalized. The specific calculation method is to use the cumulative sum of all corrected memberships as the denominator and the corresponding membership as the numerator. This completes the correction of the membership of the data to be detected belonging to various fault type clusters.
[0046] The fault type corresponding to the cluster with the largest membership degree after the normalization of the fault sample to be identified is taken as the fault type of the fault sample to be identified, and the identification of occasional faults of poor BGA welding is completed.
[0047] The embodiment of the present application provides a method for identifying occasional BGA welding faults based on a clustering algorithm, the method comprising: firstly collecting X-ray data of BGA welding fault samples, extracting edge information, and determining contours; analyzing various defect degrees based on distribution characteristics between contours, which has the beneficial effect of improving the accuracy of subsequent fault identification based on these defect degrees by analyzing the characteristics of the causes of known occasional BGA welding faults; determining the correlation between each fault and various defect degrees based on the distribution differences of various defect degrees of historical fault sample data of each fault after threshold segmentation, which has the beneficial effect of analyzing different fault types The distribution under various defect degrees can more accurately identify the occurrence of specific faults, thereby improving the accuracy of fault identification; cluster all historical fault samples of each fault type and all defect degrees of the fault samples to be identified, and combine the correlation between each fault and various defect degrees to correct the membership of the clustering cluster of each fault type of the fault sample to be identified. By correcting the membership of the sample to be identified, the ambiguity of the boundary samples can be reduced, making the clustering results more accurate and improving the accuracy of the clustering algorithm. This helps to accurately classify those fault types that are difficult to distinguish, especially for fault samples with high similarity, thereby improving the efficiency of fault identification.
[0048] The flowchart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to the embodiment of the present application. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of the code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. In some alternative implementations, the function marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two continuous boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, which can depend on the functions involved. In the description corresponding to the flowchart and the block diagram in the accompanying drawings, the operations or steps corresponding to different boxes can also occur in a different order from the order disclosed in the description, and sometimes there is no specific order between different operations or steps. For example, two continuous operations or steps can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, which can depend on the functions involved. Each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented by a dedicated hardware-based system that performs the specified functions or actions, or may be implemented by a combination of dedicated hardware and computer instructions.
[0049] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.
Claims
1. A BGA soldering defect occasional fault identification method based on clustering algorithm, characterized in that: The method comprises the following steps: S1: Collect X-ray data of BGA soldering failure samples; S2: Extract edges from X-ray data, filter closed edges, analyze the similarity between each closed edge and other closed edges, and obtain target contours and irregular contours; determine solder ball contours and bubble contours based on the positional relationship between target contours; obtain the first defect level based on the number of bubble contours contained in each solder ball contour and the quantitative distribution of target contours; cluster all closed edges, perform anomaly detection on the length of closed edges in the clustering results, and determine the second defect level; analyze the distance distribution between pixel points on all irregular contours and the corresponding pixel points on the maximum inscribed circle, and obtain the third defect level in combination with the quantitative characteristics of irregular contours; S3: Based on the distribution differences of various defect degrees of the historical fault sample data of each fault after threshold segmentation, determine the correlation between each fault and various defect degrees; form all defect degrees of each fault sample into a triplet, cluster all historical fault samples of each fault type and the triplet of the fault sample to be identified, and according to the correlation between each fault and various defect degrees, correct the membership of the clustering cluster of each fault type of the fault sample to be identified, and determine the fault type of the fault sample to be identified.
2. The BGA soldering defect occasional fault identification method based on clustering algorithm as claimed in claim 1, characterized in that: The specific process of analyzing the similarity between each closed edge and other closed edges to obtain the target contour and the irregular contour is as follows: The shape context algorithm is used to obtain the similarity between all pairwise closed edges in each fault sample; For each closed edge, calculate the mean similarity between it and all other edges, set a similarity threshold, and take the closed edges whose similarity mean is greater than or equal to the similarity threshold as the target contour, and record the remaining closed edges as irregular contours.
3. The BGA soldering defect occasional fault identification method based on clustering algorithm as claimed in claim 1, characterized in that: The process of determining the solder ball contour and the bubble contour according to the positional relationship between the target contours is specifically as follows: Extract the center of each target contour, that is, the coordinate mean of all pixel points in each target contour; use the fitting circle algorithm to fit each target contour and extract the edge radius of each target contour; When the distance between the centers of two target contours is less than the maximum value of the edge radius of the two target contours, the two target contours are in a positional relationship of inclusion; The target contour with the largest edge radius among the two target contours having a containment relationship is recorded as the solder ball contour, and the target contour with the smallest edge radius is recorded as the bubble contour.
4. The BGA soldering defect occasional fault identification method based on clustering algorithm as claimed in claim 1, characterized in that: The specific formula for obtaining the first defect level based on the number of bubble contours contained in each solder ball contour and the quantity distribution of the target contour is: ;in, Indicates the first defect degree; Indicates the number of target contours; L indicates the number of solder ball contours including bubble contours; Indicates the number of bubble contours contained in the i-th solder ball contour that contains the bubble contour; It represents the length of the jth bubble contour in the i-th solder ball contour containing the bubble contour, and norm() represents the normalization function.
5. The BGA soldering defect occasional fault identification method based on clustering algorithm as claimed in claim 1, characterized in that: The specific process of clustering all closed edges, performing abnormality detection on the lengths of closed edges in the clustering results, and determining the second defect degree is as follows: All closed edges in the cluster with the largest number of elements are recorded as normal contours, and the average length of all normal contours is taken as the standard solder ball contour length; all remaining contours are recorded as abnormal contours; Anomaly detection is performed on the lengths of all closed edges and the length of the standard solder ball contour, and the average of the anomaly values of all abnormal contours is used as the second defect level.
6. The BGA soldering defect occasional fault identification method based on clustering algorithm as claimed in claim 1, characterized in that: The third defect degree is obtained by analyzing the distance distribution between all pixels on the irregular contour and the corresponding pixels on the maximum inscribed circle, combined with the quantitative characteristics of the irregular contour, and specifically: Obtain the minimum distance between each pixel point on each irregular contour and the edge pixel point on the maximum inscribed circle of the same irregular contour; calculate the ratio of all irregular contours to all target contours, recorded as the irregular proportion; perform forward fusion of the cumulative sum of the minimum distances of all irregular contours and the normalized result of the irregular proportion as the third defect degree.
7. The BGA soldering defect occasional fault identification method based on clustering algorithm as claimed in claim 1, characterized in that: The process of determining the correlation between each fault and various defect levels based on the distribution differences of various defect levels of the historical fault sample data of each fault after the threshold segmentation is specifically as follows: Using the Otsu threshold algorithm to perform threshold segmentation on any defect degree data of all historical fault samples of each fault, a first segmentation threshold is obtained; The mean of all the defect levels in the data of the type with the largest number of elements after segmentation is recorded as the first mean; Recording the mean of all the degrees of any defect in another type of data as a second mean; calculating the absolute value of the difference between the first mean and the second mean, and recording it as a first absolute value of the difference; Calculate the absolute value of the difference between the number of data elements of the two categories after segmentation, and record it as the second absolute value of the difference; The correlation is negatively correlated with the absolute value of the first difference and the absolute value of the second difference.
8. The BGA soldering defect occasional fault identification method based on clustering algorithm as claimed in claim 1, characterized in that: The process of correcting the membership of each type of cluster to which the fault sample to be identified belongs is as follows: Based on the differences between the historical fault samples of each fault and the various defect levels of the cluster center, the cluster of each fault type is determined; the corrected membership degree of the fault sample to be identified belonging to the first fault cluster is recorded as , its formula form is: ,in, Indicates the initial membership of the fault sample to be identified to the first fault cluster, represents the correlation between the first fault and the first defect degree, represents the square of the first defect degree difference between the fault sample to be identified and the cluster center of the first fault cluster, represents the correlation between the first fault and the second defect degree, represents the square of the second defect degree difference between the fault sample to be identified and the cluster center of the first fault cluster, represents the correlation between the first fault and the third defect degree, Represents the square of the third defect degree difference between the fault sample to be identified and the cluster center of the first fault cluster.
9. The BGA soldering defect occasional fault identification method based on clustering algorithm as claimed in claim 8, characterized in that: The specific process of determining the clustering cluster of each fault type is as follows: The cluster center of each cluster is obtained, and the difference between the various defect levels of the cluster center and the average values of the various defect levels of all historical fault samples of various faults is calculated. The cluster with the smallest difference is selected as the cluster of various faults.
10. The BGA soldering defect occasional fault identification method based on clustering algorithm as claimed in claim 1, characterized in that: The step of determining the fault type of the fault sample to be identified comprises: The fault type of the cluster with the largest corrected membership degree is taken as the fault type of the fault sample to be identified.
Citation Information
Patent Citations
Diesel generator set fault diagnosis and detection device and method based on deep learning
CN110297178A
Machine learning method for anomaly detection in an electrical system
US20230115878A1