A mainboard assembly method, device, equipment and medium

CN118578117BActive Publication Date: 2026-10-20INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411038257.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-07-31
Publication Date
2026-10-20
Estimated Expiration
2044-07-31

AI Technical Summary

Technical Problem

[0005]本发明的目的是提供一种主板装配方法、装置、设备及介质,以解决当前服务器主板装配过程中对主板的图像坐标易受光线影响,导致装配不准确的问题

Benefits of technology

[0063]本发明的有益效果在于,首先确定了目标主板在装配至目标机箱需要满足标准装配下的装配关键位置信息和标准装配位置信息。在进行实际装配时,根据装配关键位置信息分别确定目标主板和目标机箱在实际装配下的位置偏差值和角度偏差值,进一步结合标准装配位置信息确定目标主板的最终装配位置信息,以实现目标主板准确装配。在整个装配过程中,机械手抓取主板移动不受相机的视野范围和外部光线的限制,提高了操作便捷性。同时,由于装配过程能够对位置偏差值和角度偏差值进行修正,因此大大地提高了装配的精度,能够适应大多数的对位贴合,极大地提高了装配效率。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118578117B_ABST
    Figure CN118578117B_ABST
Patent Text Reader

Abstract

The application discloses a mainboard assembling method and device, equipment and medium, and relates to the technical field of server assembling. The scheme firstly determines the assembly key position information and the standard assembly position information of the target mainboard under the standard assembly when the target mainboard is assembled into the target case. When actual assembly is performed, the position deviation value and the angle deviation value of the target mainboard and the target case under actual assembly are respectively determined according to the assembly key position information, and the final assembly position information of the target mainboard is further determined in combination with the standard assembly position information, so that the target mainboard is accurately assembled. In the whole assembly process, the movement of the mechanical hand for grabbing the mainboard is not limited by the field of view of the camera and external light, and the operation convenience is improved. Meanwhile, since the position deviation value and the angle deviation value can be corrected in the assembly process, the assembly precision is greatly improved, most alignment and bonding can be adapted, and the assembly efficiency is greatly improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of server assembly technology, and in particular to a motherboard assembly method, apparatus, device and medium. Background Technology

[0002] Currently, server motherboard assembly technology is mainly automated through robotic arms. Cameras mounted on the robotic arms capture images of the motherboard and chassis to aid in precise positioning and manipulation. Another camera in the space beneath the robotic arm also captures images of the motherboard, providing additional visual feedback to ensure assembly accuracy.

[0003] However, in the current server motherboard assembly process, the image coordinates of feature points on the motherboard captured by the camera are easily affected by external light, resulting in low accuracy in identifying the motherboard's position. This, in turn, leads to inaccurate assembly by the robotic arm. This seriously affects server production quality and efficiency.

[0004] Given the above problems, how to solve the problem that the image coordinates of the motherboard are easily affected by light during the current server motherboard assembly process, leading to inaccurate assembly, is an urgent problem for technicians in this field to solve. Summary of the Invention

[0005] The purpose of this invention is to provide a motherboard assembly method, apparatus, device, and medium to solve the problem that the image coordinates of the motherboard are easily affected by light during the current server motherboard assembly process, leading to inaccurate assembly.

[0006] To address the aforementioned technical problems, this invention provides a motherboard assembly method, applied to a server motherboard assembly system comprising a robotic arm, a first camera, and a second camera; the first camera is disposed on the robotic arm, and the second camera is disposed in the space below the robotic arm; the method includes:

[0007] The target motherboard and target chassis to be assembled are determined, and the key assembly position information and standard assembly position information of the target motherboard under standard assembly are determined; wherein, the key assembly position information includes the image coordinates of the target motherboard captured by the first camera when the target motherboard is in the initial position, the image coordinates of the target chassis captured by the first camera, and the image coordinates of the target motherboard captured by the second camera when the target motherboard is gripped by the robotic arm;

[0008] When assembling the target motherboard, the positional deviation and angular deviation values ​​of the target motherboard, as well as the positional deviation and angular deviation values ​​of the target chassis, are determined based on the assembly key position information;

[0009] Based on the standard assembly position information, the position deviation and angle deviation values ​​of the target motherboard, and the position deviation and angle deviation values ​​of the target chassis, the final assembly position information of the target motherboard is determined.

[0010] Based on the final assembly position information, the target motherboard is assembled into the target chassis by the robotic arm.

[0011] On the one hand, determining the target chassis includes:

[0012] The first camera captures images of multiple chassis to obtain training set data;

[0013] The training set data is trained using a support vector machine algorithm and a nonmaximum suppression algorithm to obtain a chassis recognition model for identifying feature points of the chassis.

[0014] The chassis identification model is used to identify feature points of the target chassis in order to determine the type of the target chassis.

[0015] On the other hand, determining the key assembly location information of the target motherboard under standard assembly includes:

[0016] When the target motherboard is in the initial position, control the robotic arm to move to the first robotic arm position and the second robotic arm position;

[0017] Based on the positions of the first robotic arm and the second robotic arm, respectively, the first standard image coordinates and the second standard image coordinates of the feature points of the target motherboard are acquired by the first camera;

[0018] When the target motherboard is grasped by the robotic arm, the robotic arm is controlled to move to the third robotic arm position and the fourth robotic arm position;

[0019] Based on the positions of the third and fourth robotic arms, respectively, the second camera acquires the third and fourth standard image coordinates of the feature points of the target motherboard.

[0020] Control the robotic arm to move to the fifth and sixth robotic arm positions;

[0021] Based on the positions of the fifth and sixth robotic arms, respectively, the first camera acquires the fifth and sixth standard image coordinates of the feature points of the target chassis.

[0022] On the other hand, determining the positional and angular deviation values ​​of the target motherboard and the target chassis based on the assembly key position information includes:

[0023] Control the robotic arm to move to the first robotic arm position and the second robotic arm position;

[0024] Based on the positions of the first robotic arm and the second robotic arm, the first camera acquires the first and second actual image coordinates of the feature points of the target motherboard.

[0025] Determine the first standard midpoint coordinates of the first standard image coordinates and the second standard image coordinates, and determine the first actual midpoint coordinates of the first actual image coordinates and the second actual image coordinates;

[0026] The first position deviation value and the first angle deviation value of the feature points of the target motherboard are determined based on the first standard midpoint coordinates and the first actual midpoint coordinates.

[0027] Based on the first position deviation value and the first angle deviation value, the robotic arm is controlled to grasp the target motherboard;

[0028] Control the robotic arm to grasp the target motherboard and move it to the positions of the third and fourth robotic arms;

[0029] Based on the positions of the third and fourth robotic arms, respectively, the second camera acquires the third and fourth actual image coordinates of the feature points of the target motherboard.

[0030] Determine the second standard midpoint coordinates of the third standard image coordinates and the fourth standard image coordinates, and determine the second actual midpoint coordinates of the third actual image coordinates and the fourth actual image coordinates;

[0031] The second position deviation value and the second angle deviation value of the feature points of the target motherboard are determined based on the second standard midpoint coordinates and the second actual midpoint coordinates.

[0032] Control the robotic arm to move to the fifth robotic arm position and the sixth robotic arm position;

[0033] Based on the positions of the fifth and sixth robotic arms, the first camera acquires the fifth and sixth actual image coordinates of the feature points of the target chassis, respectively.

[0034] Determine the third standard midpoint coordinates of the fifth standard image coordinates and the sixth standard image coordinates, and determine the third actual midpoint coordinates of the fifth actual image coordinates and the sixth actual image coordinates;

[0035] The third position deviation value and the third angle deviation value of the feature points of the target chassis are determined based on the third standard midpoint coordinates and the third actual midpoint coordinates.

[0036] On the other hand, determining the final assembly position information of the target motherboard based on the standard assembly position information, the position deviation value and angle deviation value of the target motherboard, and the position deviation value and angle deviation value of the target chassis includes:

[0037] Determine the coordinates of the rotation center; wherein the rotation center is the center of a circle that keeps the feature points of the target motherboard within the field of view of the second camera when the robotic arm rotates the target motherboard;

[0038] The total angle deviation value is determined based on the difference between the second angle deviation value and the third angle deviation value;

[0039] The target motherboard coordinates are determined based on the coordinates of the rotation center, the total angular deviation value, and the coordinates of the second actual midpoint; wherein, the target motherboard coordinates are the position coordinates of the target motherboard after rotating it around the rotation center by the total angular deviation value.

[0040] The position coordinate compensation value is determined based on the difference between the target motherboard coordinates and the midpoint coordinates of the second standard.

[0041] The final assembly position information of the target motherboard is determined based on the standard assembly position information, the position coordinate compensation value, and the third position deviation value.

[0042] On the other hand, determining the coordinates of the rotation center includes:

[0043] The robotic arm is controlled to move to multiple preset positions;

[0044] Based on each of the preset positions, the first image coordinates of the feature points of the target motherboard are acquired by the second camera;

[0045] Obtain the calibration transformation matrix of the second camera; wherein, the calibration transformation matrix represents the transformation relationship between the position of the robot and the image coordinates of the feature points of the target motherboard;

[0046] Based on the calibration transformation matrix, each preset position, and each first image coordinate, multiple target distances are determined; wherein, the target distance represents the distance from a feature point of the target motherboard to the end effector of the robotic arm;

[0047] Based on the target distances, a target circle is fitted using the least squares method, and the coordinates of the center of the target circle are determined as the coordinates of the rotation center.

[0048] On the other hand, obtaining the calibration transformation matrix of the second camera includes:

[0049] The robotic arm is controlled to move to multiple pre-selected positions;

[0050] Based on each of the pre-selected locations, the second image coordinates of the feature points of the target motherboard are acquired by the second camera;

[0051] Based on each of the pre-selected positions and each of the second image coordinates, multiple transformation matrices are determined respectively;

[0052] The calibration transformation matrix is ​​obtained by fitting each of the transformation matrices using the least squares method.

[0053] To address the aforementioned technical problems, the present invention also provides a motherboard assembly device, applied to a server motherboard assembly system comprising a robotic arm, a first camera, and a second camera; the first camera is disposed on the robotic arm, and the second camera is disposed in the space below the robotic arm; the device includes:

[0054] The first determining module is used to determine the target motherboard and target chassis to be assembled, and to determine the key assembly position information and standard assembly position information of the target motherboard under standard assembly; wherein, the key assembly position information includes the image coordinates of the target motherboard captured by the first camera when the target motherboard is in the initial position, the image coordinates of the target chassis captured by the first camera, and the image coordinates of the target motherboard captured by the second camera when the target motherboard is gripped by the robotic arm;

[0055] The second determining module is used to determine the position deviation value and angle deviation value of the target motherboard, as well as the position deviation value and angle deviation value of the target chassis, based on the assembly key position information when assembling the target motherboard.

[0056] The third determining module is used to determine the final assembly position information of the target motherboard based on the standard assembly position information, the position deviation value and angle deviation value of the target motherboard, and the position deviation value and angle deviation value of the target chassis.

[0057] An assembly module is used to assemble the target motherboard into the target chassis using the robotic arm, based on the final assembly position information.

[0058] To address the aforementioned technical problems, the present invention also provides a motherboard assembly device, comprising:

[0059] Memory, used to store computer programs;

[0060] A processor is used to implement the steps of the motherboard assembly method described above when executing the computer program.

[0061] To address the aforementioned technical problems, the present invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the aforementioned motherboard assembly method.

[0062] The motherboard assembly method provided by this invention is applied to a server motherboard assembly system including a robotic arm, a first camera, and a second camera. The first camera is mounted on the robotic arm, and the second camera is positioned in the space below the robotic arm. Specifically, the method involves determining the target motherboard and target chassis to be assembled, and determining the key assembly position information and standard assembly position information of the target motherboard under standard assembly conditions. The key assembly position information includes the image coordinates of the target motherboard captured by the first camera when it is in its initial position, the image coordinates of the target chassis captured by the first camera, and the image coordinates of the target motherboard captured by the second camera when it is gripped by the robotic arm. When assembling the target motherboard, the method determines the positional and angular deviation values ​​of the target motherboard and the target chassis based on the key assembly position information. Based on the standard assembly position information, the positional and angular deviation values ​​of the target motherboard and the target chassis, the method determines the final assembly position information of the target motherboard. Based on the final assembly position information, the robotic arm assembles the target motherboard into the target chassis.

[0063] The beneficial effects of this invention are as follows: First, it determines the critical assembly position information and standard assembly position information required for the target motherboard to be assembled into the target chassis under standard assembly conditions. During actual assembly, based on the critical assembly position information, it determines the positional and angular deviation values ​​of the target motherboard and the target chassis under actual assembly conditions. Furthermore, it combines this with the standard assembly position information to determine the final assembly position information of the target motherboard, thereby achieving accurate assembly. Throughout the assembly process, the robotic arm's gripping and movement of the motherboard is not limited by the camera's field of view or external lighting, improving operational convenience. Simultaneously, because the assembly process can correct for positional and angular deviation values, it significantly improves assembly accuracy, adapts to most alignment and bonding scenarios, and greatly enhances assembly efficiency.

[0064] On the other hand, this invention specifically acquires images of multiple chassis using a first camera to obtain training set data; trains the training set data using a support vector machine algorithm and a non-maximum suppression algorithm to obtain a chassis recognition model for identifying chassis feature points; and identifies the feature points of the target chassis using the chassis recognition model, thus determining the target chassis. Under standard assembly, by moving a robotic arm to different positions and taking pictures of the feature points of the target motherboard and target chassis at the corresponding positions using a first camera and a second camera respectively, the image coordinates are determined, thus determining the key assembly position information. During actual assembly, the target motherboard is positioned at each key point, and the actual image coordinates of the target motherboard and the target chassis are acquired and compared with the standard image coordinates under standard assembly, thereby determining the positional and angular deviation values ​​of each point.

[0065] In addition, the present invention also provides a motherboard assembly device, equipment and medium, with the same effect as above. Attached Figure Description

[0066] To more clearly illustrate the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0067] Figure 1 A flowchart of a motherboard assembly method provided in an embodiment of the present invention;

[0068] Figure 2 A schematic diagram of a motherboard assembly device provided in an embodiment of the present invention;

[0069] Figure 3 This is a schematic diagram of a motherboard assembly device provided in an embodiment of the present invention. Detailed Implementation

[0070] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of the present invention.

[0071] The core of this invention is to provide a motherboard assembly method, apparatus, device, and medium to solve the problem that the image coordinates of the motherboard are easily affected by light during the current server motherboard assembly process, leading to inaccurate assembly.

[0072] To enable those skilled in the art to better understand the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0073] Currently, server motherboard assembly technology is mainly automated through robotic arms. A first camera on the robotic arm captures images of the motherboard and chassis to aid in precise positioning and manipulation. A second camera beneath the robotic arm also captures images of the motherboard, providing additional visual feedback to ensure assembly accuracy.

[0074] However, in current motherboard assembly processes, the acquisition of image coordinates of feature points on the motherboard by the camera is easily affected by external light, resulting in low accuracy in identifying the motherboard's position, and consequently, inaccurate assembly by the robotic arm. This seriously affects server production quality and efficiency. To solve the above problems, this invention provides a motherboard assembly method. It is understood that the motherboard assembly method is applied to the aforementioned server motherboard assembly system composed of a robotic arm, a first camera, and a second camera.

[0075] Figure 1 This is a flowchart illustrating a motherboard assembly method provided in an embodiment of the present invention. Figure 1 As shown, the method includes:

[0076] S10: Determine the target motherboard and target chassis to be assembled, and determine the key assembly location information and standard assembly location information of the target motherboard under standard assembly.

[0077] The key assembly location information includes the image coordinates of the target motherboard captured by the first camera when the target motherboard is in its initial position, the image coordinates of the target chassis captured by the first camera, and the image coordinates of the target motherboard captured by the second camera when the target motherboard is gripped by the robotic arm.

[0078] In practical implementation, since there are various types of server motherboards and server chassis, and the positions of the feature points used for visual positioning on the motherboard and chassis are not entirely the same, it is necessary to first determine the target motherboard and target chassis to be assembled in order to achieve motherboard assembly. This embodiment does not limit the method for determining the target chassis; it depends on the specific implementation situation.

[0079] Further analysis was conducted to determine the critical assembly location information and standard assembly location information of the target motherboard under standard assembly conditions for its installation in the target chassis. It should be noted that the critical assembly location information and standard assembly location information under standard assembly conditions refer to the critical assembly location information and standard assembly location information under a completely precise motherboard assembly process. The critical assembly location information includes the location information of three key points:

[0080] (1) The image coordinates of the target motherboard captured by the first camera when the target motherboard is in the initial position;

[0081] (2) The image coordinates of the target motherboard captured by the second camera when the target motherboard is gripped by the robotic arm;

[0082] (3) Image coordinates of the target chassis acquired by the first camera.

[0083] It is understandable that, under standard assembly, the positional information of the above three key points are all precise values. This embodiment does not limit the specific process for determining the key assembly position information of the target motherboard under standard assembly; it depends on the specific implementation. Furthermore, the standard assembly position information refers to the standard coordinate position of the robotic arm assembling the target motherboard.

[0084] S11: When assembling the target motherboard, determine the positional and angular deviation values ​​of the target motherboard, as well as the positional and angular deviation values ​​of the target chassis, based on the key assembly position information.

[0085] Furthermore, during the actual assembly of the target motherboard, the robotic arm grips, moves, rotates, and assembles the target motherboard. Due to unavoidable deviations in the assembly process, the critical assembly position information in the actual assembly differs from that in the standard assembly. To eliminate these deviations and achieve accurate assembly, the positional and angular deviation values ​​of the target motherboard, as well as the target chassis, are determined based on the critical assembly position information under the standard assembly. This embodiment does not impose restrictions on the determination process of the positional and angular deviation values ​​of the target motherboard and the target chassis; it depends on the specific implementation.

[0086] S12: Determine the final assembly position information of the target motherboard based on the standard assembly position information, the position deviation value and angle deviation value of the target motherboard, and the position deviation value and angle deviation value of the target chassis.

[0087] S13: Based on the final assembly position information, the target motherboard is assembled into the target chassis by a robotic arm.

[0088] After obtaining the positional and angular deviations of the target motherboard and the target chassis, and combining this with the standard assembly position information under standard assembly, the final assembly position information of the corrected target motherboard is determined. Finally, based on the final assembly position information, a robotic arm assembles the target motherboard into the target chassis, achieving accurate assembly of the target motherboard. This embodiment does not limit the process for determining the final assembly position information of the target motherboard; it depends on the specific implementation.

[0089] In this embodiment, the critical assembly position information and standard assembly position information required for the target motherboard to be assembled into the target chassis under standard assembly conditions are first determined. During actual assembly, the positional and angular deviation values ​​of the target motherboard and target chassis under actual assembly conditions are determined based on the critical assembly position information. This is further combined with the standard assembly position information to determine the final assembly position information of the target motherboard, thereby achieving accurate assembly. Throughout the assembly process, the robotic arm's gripping and movement of the motherboard is not limited by the camera's field of view or external lighting, improving operational convenience. Simultaneously, because the assembly process can correct for positional and angular deviation values, the assembly accuracy is greatly improved, adapting to most alignment and fitting requirements and significantly increasing assembly efficiency.

[0090] Based on the above embodiments, in some embodiments, determining the target chassis includes:

[0091] S101: Acquire images of multiple chassis using the first camera to obtain training set data;

[0092] S102: Train the training set data using the support vector machine algorithm and the nonmaximum suppression algorithm to obtain a chassis recognition model for identifying the feature points of the chassis;

[0093] S103: Identify the feature points of the target chassis through the chassis recognition model to determine the type of the target chassis.

[0094] To identify the type of target chassis, this embodiment optimizes the method for recognizing chassis feature points. Specifically, images of multiple chassis types are acquired using a first camera to obtain training set data. It is understood that each chassis image contains corresponding feature points.

[0095] The training set data is further trained using the Support Vector Machine (SVM) algorithm and a nonmaximum suppression algorithm to obtain a chassis recognition model for identifying feature points of the chassis. Specifically, in the SVM algorithm, the formula for the hyperplane in N-dimensional space is:

[0096] Ax1+Bx2+Cx3+Dx4+……+K=0;

[0097] Where x1, x2, x3... represent the n-dimensional coordinate system, A, B, C... are coefficients, and K is a constant. Systems of different dimensions can be represented by w1, w2, w3, w4,... wn. Therefore, the hyperplane equation in n-dimensional space can be written in the following format:

[0098] W T X+b=0;

[0099] Where W is the normal vector of the hyperplane, b is the intercept of the hyperplane, and X is the sample data. It should be noted that a polynomial kernel is used during training; to improve accuracy, the data can be further segmented.

[0100] Further feature point processing based on maximum suppression was employed. During processing, the gradients of a specific pixel in the image along the x and y directions were calculated, along with the direction of the gradient transformation. Since a maximum value exists along the gradient transformation direction, non-maximum suppression was used to calculate the gradient positions of the two maximum values ​​within the 8-neighborhood. These gradients were then compared with the gradient of the original pixel; if both were greater than the two gradient values, the pixel was marked as an edge point. Through this process, a chassis recognition model was obtained. Finally, the chassis recognition model was used to identify the feature points of the target chassis to determine its type.

[0101] In this embodiment, images of multiple chassis are acquired using a first camera to obtain training set data; the training set data is trained using a support vector machine algorithm and a non-maximum suppression algorithm to obtain a chassis recognition model for identifying feature points of the chassis; the chassis recognition model is used to identify feature points of the target chassis, thereby determining the target chassis.

[0102] Based on the above embodiments, in some embodiments, the assembly key position information of the target motherboard under standard assembly is determined, including:

[0103] S104: When the target motherboard is in the initial position, control the robotic arm to move to the first robotic arm position and the second robotic arm position;

[0104] S105: Based on the positions of the first and second robotic arms, respectively, the first camera acquires the first and second standard image coordinates of the feature points of the target motherboard.

[0105] S106: When the target motherboard is gripped by the robotic arm, control the robotic arm to move to the third robotic arm position and the fourth robotic arm position;

[0106] S107: Based on the positions of the third and fourth robotic arms, respectively, the second camera acquires the third and fourth standard image coordinates of the feature points of the target motherboard.

[0107] S108: Control the robotic arm to move to the fifth and sixth robotic arm positions;

[0108] S109: Based on the positions of the fifth and sixth robotic arms, the fifth and sixth standard image coordinates of the feature points of the target chassis are acquired by the first camera.

[0109] To determine the critical assembly positions of the target motherboard under standard assembly conditions, specifically when the target motherboard is in its initial position, the robotic arm is controlled to move to the first robotic arm position. Second robotic arm position It should be noted that the initial position refers to the position of the target motherboard before the robotic arm grasps it. This is based on the initial robotic arm position. Second robotic arm position The first camera captures images of the feature points of the target motherboard, thereby acquiring the first standard image coordinates of the feature points of the target motherboard. Second standard image coordinates .

[0110] Furthermore, when the target motherboard is grasped by the robotic arm, the robotic arm is controlled to move to the position of the third robotic arm. and the position of the fourth robotic arm Based on the position of the third robotic arm and the position of the fourth robotic arm The second camera captures images of the feature points of the target motherboard, thereby acquiring the third standard image coordinates of the feature points of the target motherboard. and fourth standard image coordinates .

[0111] Finally, since the motherboard needs to be placed into the computer case after being retrieved, the robotic arm needs to be moved to the designated photo-taking point on the case. Specifically, the robotic arm needs to be moved to the fifth robotic arm position. and the position of the sixth robotic arm Based on the position of the fifth robotic arm and the position of the sixth robotic arm The first camera captures images of the feature points of the target chassis, thereby acquiring the fifth standard image coordinates of the feature points of the target chassis. and the sixth standard image coordinates .

[0112] In this embodiment, under standard assembly, the robot arm is moved to different positions, and at the corresponding positions, the first camera and the second camera respectively take pictures of the feature points of the target motherboard and the target chassis to determine their image coordinates, thereby realizing the determination of key position information of standard assembly.

[0113] Based on the above embodiments, in some embodiments, the positional and angular deviation values ​​of the target motherboard and the target chassis are determined according to the assembly key position information, including:

[0114] S110: Control the robotic arm to move to the first robotic arm position and the second robotic arm position;

[0115] S111: Based on the positions of the first and second robotic arms, respectively, the first camera acquires the first and second actual image coordinates of the feature points of the target motherboard.

[0116] S112: Determine the coordinates of the first standard midpoint of the first standard image coordinates and the second standard image coordinates, and determine the coordinates of the first actual midpoint of the first actual image coordinates and the second actual image coordinates;

[0117] S113: Determine the first position deviation value and the first angle deviation value of the feature points of the target motherboard based on the first standard midpoint coordinates and the first actual midpoint coordinates;

[0118] S114: Based on the first position deviation value and the first angle deviation value, control the robotic arm to grasp the target motherboard;

[0119] S115: Control the robotic arm to grasp the target motherboard and move it to the third and fourth robotic arm positions;

[0120] S116: Based on the positions of the third and fourth robotic arms, respectively, the second camera acquires the third and fourth actual image coordinates of the feature points of the target motherboard.

[0121] S117: Determine the coordinates of the second standard midpoint of the third standard image coordinates and the fourth standard image coordinates, and determine the coordinates of the second actual midpoint of the third actual image coordinates and the fourth actual image coordinates;

[0122] S118: Determine the second position deviation value and the second angle deviation value of the feature points of the target motherboard based on the second standard midpoint coordinates and the second actual midpoint coordinates;

[0123] S119: Control the robotic arm to move to the fifth and sixth robotic arm positions;

[0124] S120: Based on the positions of the fifth and sixth robotic arms, respectively, the first camera acquires the fifth and sixth actual image coordinates of the feature points of the target chassis.

[0125] S121: Determine the coordinates of the third standard midpoint of the fifth standard image coordinates and the sixth standard image coordinates, and determine the coordinates of the third actual midpoint of the fifth actual image coordinates and the sixth actual image coordinates;

[0126] S122: Determine the third position deviation value and the third angle deviation value of the feature points of the target chassis based on the third standard midpoint coordinates and the third actual midpoint coordinates.

[0127] In order to determine the deviation between the target motherboard and the target chassis during the actual assembly process, the robotic arm is specifically controlled to move to the first robotic arm position. Second robotic arm position Preparing to grab the target motherboard. Based on the position of the first robotic arm... Second robotic arm position The first camera takes pictures of the feature points of the target motherboard, thereby acquiring the first actual image coordinates of the feature points of the target motherboard. Second actual image coordinates .

[0128] Further determine the coordinates of the first standard image Second standard image coordinates The first standard midpoint coordinates are determined, and the first actual image coordinates are determined. Second actual image coordinates The first actual midpoint coordinates. Specifically, this is determined by determining the coordinates of the first standard image. Second standard image coordinates Connect the two points with a line and determine the coordinates of the midpoint of that line to obtain the coordinates of the first standard midpoint; similarly, determine the coordinates of the first actual image. Second actual image coordinates A line is drawn between the two points, and the coordinates of the midpoint of this line are determined to obtain the first actual midpoint coordinates. Finally, the first positional deviation value of the feature point of the target motherboard is determined based on the first standard midpoint coordinates and the first actual midpoint coordinates. Deviation value from the first angle Therefore, based on the first position deviation value Deviation value from the first angle The robotic arm is controlled to grasp the target motherboard.

[0129] After grasping the target motherboard, it is necessary to reposition it. Specifically, the robotic arm is controlled to move the target motherboard to the position of the third robotic arm. and the position of the fourth robotic arm Based on the position of the third robotic arm and the position of the fourth robotic arm The second camera captures images of the feature points of the target motherboard, thereby acquiring the third actual image coordinates of the feature points of the target motherboard. and the fourth actual image coordinates .

[0130] Further determine the coordinates of the third standard image and fourth standard image coordinates The second standard midpoint coordinates are used to determine the third actual image coordinates. and the fourth actual image coordinates The second actual midpoint coordinates. Specifically, this is determined by determining the coordinates of the third standard image. and fourth standard image coordinates Connect the two points with a line and determine the coordinates of the midpoint of that line to obtain the second standard midpoint coordinates; similarly, determine the third actual image coordinates. and the fourth actual image coordinates A line is drawn between the two points, and the coordinates of the midpoint of this line are determined to obtain the second actual midpoint coordinates. Finally, the second positional deviation value of the feature point of the target motherboard is determined based on the second standard midpoint coordinates and the second actual midpoint coordinates. Second angle deviation value .

[0131] Finally, the target chassis needs to be located. Specifically, the robotic arm needs to be moved to the fifth robotic arm position. and the position of the sixth robotic arm Based on the position of the fifth robotic arm and the position of the sixth robotic arm The first camera takes pictures of the feature points of the target chassis, and the fifth actual image coordinates of the feature points of the target chassis are collected. and the sixth actual image coordinates .

[0132] Further determine the fifth standard image coordinates and the sixth standard image coordinates The coordinates of the third standard midpoint are determined, and the coordinates of the fifth actual image are determined. and the sixth actual image coordinates The third actual midpoint coordinates. Specifically, this is determined by determining the coordinates of the fifth standard image. and the sixth standard image coordinates Connect the two points with a line and determine the coordinates of the midpoint of that line to obtain the coordinates of the third standard midpoint; similarly, determine the coordinates of the fifth actual image. and the sixth actual image coordinates A line is drawn between the two points, and the coordinates of the midpoint of this line are determined to obtain the coordinates of the third actual midpoint. Finally, the third positional deviation value of the feature point of the target chassis is determined based on the third standard midpoint coordinates and the third actual midpoint coordinates. and the deviation value of the third angle .

[0133] In this embodiment, during actual assembly, the target motherboard is positioned at each key point, and the actual image coordinates of the target motherboard and the target chassis are collected and compared with the standard image coordinates under standard assembly to determine the positional deviation and angle deviation values ​​of each point.

[0134] Based on the above embodiments, in some embodiments, the final assembly position information of the target motherboard is determined according to standard assembly position information, the position deviation value and angle deviation value of the target motherboard, and the position deviation value and angle deviation value of the target chassis, including:

[0135] S123: Determine the coordinates of the rotation center; where the rotation center is the center of the circle within the field of view of the second camera where the feature points of the target motherboard are kept in place when the robot arm rotates the target motherboard.

[0136] S124: Determine the total angle deviation value based on the difference between the second angle deviation value and the third angle deviation value;

[0137] S125: Determine the target motherboard coordinates based on the coordinates of the rotation center, the total angular deviation value, and the coordinates of the second actual midpoint; wherein, the target motherboard coordinates are the position coordinates of the target motherboard after rotating it according to the total angular deviation value from the rotation center;

[0138] S126: Determine the position coordinate compensation value based on the difference between the target motherboard coordinates and the midpoint coordinates of the second standard;

[0139] S127: Determine the final assembly position information of the target motherboard based on the standard assembly position information, position coordinate compensation value, and third position deviation value.

[0140] To determine the final assembly position of the target motherboard, the coordinates of the rotation center must first be determined. It should be noted that the rotation center is the center of a circle within the field of view of the second camera, where the target motherboard's feature points are held in place as the robotic arm rotates it. This embodiment does not impose restrictions on the method for determining the coordinates of the rotation center.

[0141] Furthermore, the total angular deviation is determined based on the difference between the second and third angular deviation values:

[0142] ;

[0143] in, This is the total angular deviation value. This is the second angle deviation value. This is the third angle deviation value.

[0144] Determine the target motherboard coordinates based on the coordinates of the rotation center, the total angular deviation, and the coordinates of the second actual midpoint:

[0145] ;

[0146] ;

[0147] in, The x-coordinate of the target motherboard coordinates. The ordinate of the target motherboard coordinates; Let x be the x-coordinate of the center of rotation. The ordinate of the center of rotation Let x be the x-coordinate of the second actual midpoint. This represents the ordinate of the second actual midpoint. It should be noted that the target motherboard coordinates... For the target motherboard based on the rotation center The position coordinates after rotating by the total angular deviation.

[0148] Further, determine the position coordinate compensation value based on the difference between the target motherboard coordinates and the midpoint coordinates of the second standard:

[0149] ;

[0150] in, This is the position coordinate compensation value. These are the coordinates of the midpoint of the second standard.

[0151] Finally, based on the standard assembly position information, position coordinate compensation value, and third position deviation value, the final assembly position information of the target motherboard is determined:

[0152] ;

[0153] in, For the final assembly location information, For standard assembly position information, This is the third position deviation value. .

[0154] This allows the final assembly location information of the target motherboard to be determined, facilitating the actual assembly of the target motherboard.

[0155] In addition, after the automated server motherboard assembly is completed, the following methods can be used to verify the accuracy of the assembly: Visual inspection: Using a machine vision system to acquire and analyze images of the assembled motherboard, and comparing them with preset qualified images or feature points to determine whether the assembly is accurate. Electrical testing: By connecting testing instruments, electrical performance tests are performed on the electronic components and circuits on the motherboard, such as measuring parameters like voltage, current, and resistance, to determine whether they meet design requirements. Functional testing: The assembled motherboard is installed in the server, and system startup, operation, and various functional tests are performed, such as network connectivity, storage read / write, and CPU performance, to verify whether the motherboard can work normally. Automated testing: Using automated testing equipment or software, a series of predetermined tests are performed on the motherboard, such as stress testing, stability testing, and compatibility testing, to comprehensively evaluate the motherboard's performance and reliability. Manual inspection: Although the degree of automation is high, manual final inspection and confirmation are still required, including visual inspection, connector insertion and removal checks, and verification of labels and markings.

[0156] By combining the above methods, the accuracy of automated server motherboard assembly can be effectively verified, ensuring product quality and reliability.

[0157] Based on the above embodiments, in some embodiments, determining the coordinates of the rotation center includes:

[0158] S131: Control the robotic arm to move to multiple preset positions respectively;

[0159] S132: Based on each preset position, the first image coordinates of the feature points of the target motherboard are acquired by the second camera;

[0160] S133: Obtain the calibration transformation matrix of the second camera; wherein, the calibration transformation matrix represents the transformation relationship between the position of the robot and the image coordinates of the feature points of the target motherboard;

[0161] S134: Determine the distances to multiple targets based on the calibration transformation matrix, each preset position, and each first image coordinate;

[0162] Among them, the target distance represents the distance from the feature point of the target motherboard to the end effector of the robot arm;

[0163] S135: Based on the distances to each target, fit the target circle using the least squares method, and determine the coordinates of the center of the target circle as the coordinates of the rotation center.

[0164] A robotic arm is used to grasp the motherboard and move it into the field of view of a second camera for imaging. Then, the robotic arm rotates the object. During rotation, due to the limited field of view of the second camera, the object may move outside the field of view. To achieve higher positioning accuracy, a smaller field of view is typically chosen. If the object is rotated into a circle, it will again move out of the field of view. To avoid this problem, it's necessary to ensure that the rotation points remain within the camera's field of view while simultaneously ensuring that these points are used to rotate the object into a complete circle as much as possible. Theoretically, the more points used, the higher the accuracy of the calculated circle.

[0165] Therefore, in specific implementation, the robotic arm is controlled to move to multiple preset positions. Based on each preset position, the first image coordinates of the feature points of the target motherboard are acquired by the second camera, and the calibration transformation matrix of the second camera is obtained. It should be noted that the calibration transformation matrix represents the transformation relationship between the position of the robotic arm and the image coordinates of the feature points of the target motherboard. In this embodiment, the method of obtaining the calibration transformation matrix is ​​not limited and depends on the specific implementation.

[0166] Further, based on the calibration transformation matrix, preset positions, and coordinates of each first image, the distances to multiple targets are determined:

[0167] ;

[0168] in, Target distance, representing the distance from a feature point on the target motherboard to the end effector of the robotic arm; This is the preset position of the robotic arm. The first image coordinates, This is the calibration transformation matrix corresponding to the second camera.

[0169] Understandably, based on this, it is only necessary to extract the data from the second camera. Fitting the circle to obtain the center of rotation transforms into obtaining... The rotation center is obtained by fitting a circle. The advantage of this transformation is that the robotic arm can be moved freely, allowing the mainboard on the robotic arm to rotate 360° and appear in the second camera's field of view. Theoretically, obtaining three or more points is sufficient to obtain a circle. Therefore, based on the distances to each target, the target circle is fitted using the least squares method, and the coordinates of the center of the target circle are determined as the coordinates of the rotation center, thus achieving the determination of the rotation center.

[0170] Based on the above embodiments, in some embodiments, obtaining the calibration transformation matrix of the second camera includes:

[0171] S141: Control the robotic arm to move to multiple pre-selected positions;

[0172] S142: Based on each pre-selected position, the second image coordinates of the feature points of the target motherboard are acquired by the second camera;

[0173] S143: Determine multiple transformation matrices based on each pre-selected position and each second image coordinate;

[0174] S144: Fit each transformation matrix using the least squares method to obtain the calibration transformation matrix.

[0175] The calibration transformation matrix represents the transformation relationship between the position of the robotic arm and the image coordinates of feature points on the target motherboard. To obtain the calibration transformation matrix, the robotic arm is controlled to move to multiple pre-selected positions. Based on each pre-selected position, the second image coordinates of the feature points on the target motherboard are acquired using a second camera. Further, multiple transformation matrices are determined based on each pre-selected position and each second image coordinate. Specifically, the relationship between the position of the robotic arm and the image coordinates of the feature points on the target motherboard is as follows:

[0176] ;

[0177] in, For rotation matrix, It is a translation matrix.

[0178] Based on the above equation, we can obtain the following system of equations:

[0179] ;

[0180] in, For pre-selected locations, These are the coordinates of the second image.

[0181] Since the above system of equations has six unknowns, at least three sets of points are needed to solve for these six numbers. Therefore, at least three pre-selected positions are required; to ensure accuracy, nine pre-selected positions can be chosen. After obtaining multiple rotation and translation matrices, the least squares method is used to fit each transformation matrix (composed of rotation and translation matrices) to obtain the calibration transformation matrix. .

[0182] It should be noted that, in specific implementation, the calibration transformation matrix corresponding to the first camera can also be obtained simultaneously, and the method of obtaining it is the same as that of obtaining the calibration transformation matrix corresponding to the second camera.

[0183] In the above embodiments, the motherboard assembly method has been described in detail. The present invention also provides embodiments corresponding to the motherboard assembly device.

[0184] Figure 2This is a schematic diagram of a motherboard assembly device provided in an embodiment of the present invention. The device is applied to a server motherboard assembly system including a robotic arm, a first camera, and a second camera; the first camera is disposed on the robotic arm, and the second camera is disposed in the space below the robotic arm; as shown... Figure 2 As shown, the device includes:

[0185] The first determining module 10 is used to determine the target motherboard and target chassis to be assembled, and to determine the key assembly position information and standard assembly position information of the target motherboard under standard assembly. The key assembly position information includes the image coordinates of the target motherboard captured by the first camera when the target motherboard is in the initial position, the image coordinates of the target chassis captured by the first camera, and the image coordinates of the target motherboard captured by the second camera when the target motherboard is gripped by the robotic arm.

[0186] The second determining module 11 is used to determine the positional deviation value and angle deviation value of the target motherboard, as well as the positional deviation value and angle deviation value of the target chassis, based on the key assembly position information when assembling the target motherboard.

[0187] The third determining module 12 is used to determine the final assembly position information of the target motherboard based on the standard assembly position information, the position deviation value and angle deviation value of the target motherboard, and the position deviation value and angle deviation value of the target chassis.

[0188] Assembly module 13 is used to assemble the target motherboard into the target chassis using a robotic arm based on the final assembly position information.

[0189] In some embodiments, the first determining module 10 includes:

[0190] The first acquisition submodule is used to acquire images of multiple chassis through the first camera to obtain training set data;

[0191] The first training submodule is used to train the training set data using the support vector machine algorithm and the nonmaximum suppression algorithm to obtain a chassis recognition model for recognizing the feature points of the chassis.

[0192] The first identification submodule is used to identify the feature points of the target chassis through the chassis identification model in order to determine the type of the target chassis.

[0193] In some embodiments, the first determining module 10 includes:

[0194] The first control submodule is used to control the robotic arm to move to the first robotic arm position and the second robotic arm position when the target motherboard is in the initial position;

[0195] The second acquisition submodule is used to acquire the first standard image coordinates and the second standard image coordinates of the feature points of the target motherboard based on the positions of the first and second robotic arms, respectively, through the first camera.

[0196] The second control submodule is used to control the robotic arm to move to the third and fourth robotic arm positions when the target motherboard is gripped by the robotic arm;

[0197] The third acquisition submodule is used to acquire the third standard image coordinates and the fourth standard image coordinates of the feature points of the target motherboard through the second camera, based on the positions of the third and fourth robotic arms, respectively.

[0198] The third control submodule is used to control the robot arm to move to the fifth and sixth robot arm positions;

[0199] The fourth acquisition submodule is used to acquire the fifth and sixth standard image coordinates of the feature points of the target chassis through the first camera, based on the positions of the fifth and sixth robotic arms, respectively.

[0200] In some embodiments, the second determining module 11 includes:

[0201] The fourth control submodule is used to control the robot arm to move to the first robot arm position and the second robot arm position;

[0202] The fifth acquisition submodule is used to acquire the first actual image coordinates and the second actual image coordinates of the feature points of the target motherboard through the first camera, based on the positions of the first and second robotic arms, respectively.

[0203] The first determining submodule is used to determine the first standard midpoint coordinates of the first standard image coordinates and the second standard image coordinates, and to determine the first actual midpoint coordinates of the first actual image coordinates and the second actual image coordinates.

[0204] The second determining submodule is used to determine the first position deviation value and the first angle deviation value of the feature points of the target motherboard based on the first standard midpoint coordinates and the first actual midpoint coordinates.

[0205] The fifth control submodule is used to control the robotic arm to grasp the target motherboard based on the first position deviation value and the first angle deviation value.

[0206] The sixth control submodule is used to control the robotic arm to move the target motherboard to the third and fourth robotic arm positions;

[0207] The sixth acquisition submodule is used to acquire the third and fourth actual image coordinates of the feature points of the target motherboard through the second camera based on the positions of the third and fourth robotic arms, respectively.

[0208] The third determining submodule is used to determine the coordinates of the second standard midpoint of the third standard image coordinates and the fourth standard image coordinates, and to determine the coordinates of the second actual midpoint of the third actual image coordinates and the fourth actual image coordinates;

[0209] The fourth determination submodule is used to determine the second position deviation value and the second angle deviation value of the feature points of the target motherboard based on the second standard midpoint coordinates and the second actual midpoint coordinates.

[0210] The seventh control submodule is used to control the robot arm to move to the fifth and sixth robot arm positions;

[0211] The seventh acquisition submodule is used to acquire the fifth and sixth actual image coordinates of the feature points of the target chassis through the first camera, based on the positions of the fifth and sixth robotic arms, respectively.

[0212] The fifth determination submodule is used to determine the coordinates of the third standard midpoint of the fifth standard image coordinates and the sixth standard image coordinates, and to determine the coordinates of the third actual midpoint of the fifth actual image coordinates and the sixth actual image coordinates;

[0213] The sixth determination submodule is used to determine the third position deviation value and the third angle deviation value of the feature points of the target chassis based on the third standard midpoint coordinates and the third actual midpoint coordinates.

[0214] In some embodiments, the third determining module 12 includes:

[0215] The seventh determination submodule is used to determine the coordinates of the rotation center; wherein, the rotation center is the center of the circle within the field of view of the second camera when the robot arm rotates the target motherboard and keeps the feature points of the target motherboard in place.

[0216] The eighth determination submodule is used to determine the total angle deviation value based on the difference between the second angle deviation value and the third angle deviation value;

[0217] The ninth determination submodule determines the target motherboard coordinates based on the coordinates of the rotation center, the total angular deviation value, and the second actual midpoint coordinates; wherein, the target motherboard coordinates are the position coordinates of the target motherboard after rotating the rotation center by the total angular deviation value.

[0218] The tenth determination submodule is used to determine the position coordinate compensation value based on the difference between the target motherboard coordinates and the midpoint coordinates of the second standard.

[0219] The eleventh determination submodule is used to determine the final assembly position information of the target motherboard based on the standard assembly position information, position coordinate compensation value, and third position deviation value.

[0220] In some embodiments, the seventh determining submodule includes:

[0221] The eighth control submodule is used to control the robotic arm to move to multiple preset positions;

[0222] The eighth acquisition submodule is used to acquire the first image coordinates of feature points of the target motherboard through the second camera based on each preset position;

[0223] The first acquisition submodule is used to acquire the calibration transformation matrix of the second camera; wherein, the calibration transformation matrix represents the transformation relationship between the position of the robot and the image coordinates of the feature points of the target motherboard;

[0224] The twelfth determination submodule is used to determine multiple target distances based on the calibration transformation matrix, each preset position, and each first image coordinate; wherein, the target distance represents the distance from the feature point of the target motherboard to the end effector of the robot arm;

[0225] The thirteenth determination submodule is used to fit the target circle using the least squares method based on the distance to each target, and determine the coordinates of the center of the target circle as the coordinates of the rotation center.

[0226] In some embodiments, the first acquisition submodule includes:

[0227] The ninth control submodule is used to control the robotic arm to move to multiple pre-selected positions;

[0228] The ninth acquisition submodule is used to acquire the second image coordinates of feature points of the target motherboard through the second camera based on each pre-selected position;

[0229] The fourteenth determination submodule is used to determine multiple transformation matrices based on each pre-selected position and each second image coordinate;

[0230] The fitting submodule is used to fit each transformation matrix using the least squares method to obtain the calibration transformation matrix.

[0231] Since the embodiments of the apparatus and the embodiments of the method correspond to each other, please refer to the description of the embodiments of the method for the embodiments of the apparatus, which will not be repeated here.

[0232] In addition, the present invention also provides a computer program product, including a computer program / instructions, which, when executed by a processor, implement the steps of a motherboard assembly method.

[0233] Figure 3 This is a schematic diagram of a motherboard assembly device provided in an embodiment of the present invention. Figure 3 As shown, the motherboard assembly equipment includes:

[0234] Memory 20 is used to store computer programs;

[0235] The processor 21 is used to execute computer programs to implement the steps of the motherboard assembly method mentioned in the above embodiments.

[0236] The motherboard assembly device provided in this embodiment may include, but is not limited to, smartphones, tablets, laptops, or desktop computers.

[0237] The processor 21 may include one or more processing cores, such as a quad-core processor or an octa-core processor. The processor 21 may be implemented using at least one of the following hardware forms: Digital Signal Processor (DSP), Field-Programmable Gate Array (FPGA), or Programmable Logic Array (PLA). The processor 21 may also include a main processor and a coprocessor. The main processor, also known as the Central Processing Unit (CPU), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, the processor 21 may integrate a Graphics Processing Unit (GPU), which is responsible for rendering and drawing the content to be displayed on the screen. In some embodiments, the processor 21 may also include an Artificial Intelligence (AI) processor, which handles computational operations related to machine learning.

[0238] The memory 20 may include one or more computer-readable storage media, which may be non-transitory. The memory 20 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In this embodiment, the memory 20 is used to store at least the following computer program 201, which, after being loaded and executed by the processor 21, can implement the relevant steps of the motherboard assembly method disclosed in any of the foregoing embodiments. In addition, the resources stored in the memory 20 may also include an operating system 202 and data 203, and the storage method may be temporary storage or permanent storage. The operating system 202 may include Windows, Unix, Linux, etc. The data 203 may include, but is not limited to, the data involved in the motherboard assembly method.

[0239] In some embodiments, the motherboard assembly device may further include a display screen 22, an input / output interface 23, a communication interface 24, a power supply 25, and a communication bus 26.

[0240] Those skilled in the art will understand that Figure 3 The structure shown does not constitute a limitation on the motherboard assembly equipment and may include more or fewer components than shown.

[0241] Finally, the present invention also provides an embodiment corresponding to a computer-readable storage medium. The computer-readable storage medium stores a computer program, which, when executed by a processor, performs the steps described in the above method embodiments.

[0242] It is understood that if the methods in the above embodiments are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and executes all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0243] The foregoing has provided a detailed description of a motherboard assembly method, apparatus, device, and medium provided by the present invention. The various embodiments in the specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to in the method section. It should be noted that those skilled in the art can make several improvements and modifications to the present invention without departing from the principles of the invention, and these improvements and modifications also fall within the protection scope of the present invention.

[0244] It should also be noted that, in this specification, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

Claims

1. A motherboard assembly method, characterized in that, Applications include server motherboard assembly systems containing robotic arms, a first camera, and a second camera; The first camera is mounted on the robotic arm, and the second camera is mounted in the space below the robotic arm; the method includes: The target motherboard and target chassis to be assembled are determined, and the key assembly position information and standard assembly position information of the target motherboard under standard assembly are determined; wherein, the key assembly position information includes the image coordinates of the target motherboard captured by the first camera when the target motherboard is in the initial position, the image coordinates of the target chassis captured by the first camera, and the image coordinates of the target motherboard captured by the second camera when the target motherboard is gripped by the robotic arm; When assembling the target motherboard, the positional deviation and angular deviation values ​​of the target motherboard, as well as the positional deviation and angular deviation values ​​of the target chassis, are determined based on the assembly key position information; Determine the coordinates of the rotation center; wherein the rotation center is the center of a circle that keeps the feature points of the target motherboard within the field of view of the second camera when the robotic arm rotates the target motherboard; determining the coordinates of the rotation center includes: The robotic arm is controlled to move to multiple preset positions; Based on each of the preset positions, the first image coordinates of the feature points of the target motherboard are acquired by the second camera; Obtain the calibration transformation matrix of the second camera; wherein, the calibration transformation matrix represents the transformation relationship between the position of the robot and the image coordinates of the feature points of the target motherboard; Based on the calibration transformation matrix, each preset position, and each first image coordinate, multiple target distances are determined; wherein, the target distance represents the distance from a feature point of the target motherboard to the end effector of the robotic arm; the target distance calculation formula is as follows: ; in, The target distance is... This refers to the preset position where the robotic arm is located. The coordinates of the first image are... This is the calibration transformation matrix corresponding to the second camera; Based on the target distances, a target circle is fitted using the least squares method, and the coordinates of the center of the target circle are determined as the coordinates of the rotation center. Based on the standard assembly position information, the position deviation and angle deviation values ​​of the target motherboard, the position deviation and angle deviation values ​​of the target chassis, and the coordinates of the rotation center, the final assembly position information of the target motherboard is determined. Based on the final assembly position information, the target motherboard is assembled into the target chassis by the robotic arm.

2. The motherboard assembly method according to claim 1, characterized in that, Determining the target chassis includes: The first camera captures images of multiple chassis to obtain training set data; The training set data is trained using a support vector machine algorithm and a nonmaximum suppression algorithm to obtain a chassis recognition model for identifying feature points of the chassis. The chassis identification model is used to identify feature points of the target chassis in order to determine the type of the target chassis.

3. The motherboard assembly method according to claim 1, characterized in that, Determining the critical assembly location information of the target motherboard under standard assembly includes: When the target motherboard is in the initial position, control the robotic arm to move to the first robotic arm position and the second robotic arm position; Based on the positions of the first robotic arm and the second robotic arm, respectively, the first standard image coordinates and the second standard image coordinates of the feature points of the target motherboard are acquired by the first camera; When the target motherboard is grasped by the robotic arm, the robotic arm is controlled to move to the third robotic arm position and the fourth robotic arm position; Based on the positions of the third and fourth robotic arms, respectively, the second camera acquires the third and fourth standard image coordinates of the feature points of the target motherboard. Control the robotic arm to move to the fifth and sixth robotic arm positions; Based on the positions of the fifth and sixth robotic arms, respectively, the first camera acquires the fifth and sixth standard image coordinates of the feature points of the target chassis.

4. The motherboard assembly method according to claim 3, characterized in that, The step of determining the positional and angular deviation values ​​of the target motherboard and the target chassis based on the assembly key position information includes: Control the robotic arm to move to the first robotic arm position and the second robotic arm position; Based on the positions of the first robotic arm and the second robotic arm, the first camera acquires the first and second actual image coordinates of the feature points of the target motherboard. Determine the first standard midpoint coordinates of the first standard image coordinates and the second standard image coordinates, and determine the first actual midpoint coordinates of the first actual image coordinates and the second actual image coordinates; The first position deviation value and the first angle deviation value of the feature points of the target motherboard are determined based on the first standard midpoint coordinates and the first actual midpoint coordinates. Based on the first position deviation value and the first angle deviation value, the robotic arm is controlled to grasp the target motherboard; Control the robotic arm to grasp the target motherboard and move it to the positions of the third and fourth robotic arms; Based on the positions of the third and fourth robotic arms, respectively, the second camera acquires the third and fourth actual image coordinates of the feature points of the target motherboard. Determine the second standard midpoint coordinates of the third standard image coordinates and the fourth standard image coordinates, and determine the second actual midpoint coordinates of the third actual image coordinates and the fourth actual image coordinates; The second position deviation value and the second angle deviation value of the feature points of the target motherboard are determined based on the second standard midpoint coordinates and the second actual midpoint coordinates. Control the robotic arm to move to the fifth robotic arm position and the sixth robotic arm position; Based on the positions of the fifth and sixth robotic arms, the first camera acquires the fifth and sixth actual image coordinates of the feature points of the target chassis, respectively. Determine the third standard midpoint coordinates of the fifth standard image coordinates and the sixth standard image coordinates, and determine the third actual midpoint coordinates of the fifth actual image coordinates and the sixth actual image coordinates; The third position deviation value and the third angle deviation value of the feature points of the target chassis are determined based on the third standard midpoint coordinates and the third actual midpoint coordinates.

5. The motherboard assembly method according to claim 4, characterized in that, The step of determining the final assembly position information of the target motherboard based on the standard assembly position information, the position deviation value and angle deviation value of the target motherboard, the position deviation value and angle deviation value of the target chassis, and the coordinates of the rotation center includes: The total angle deviation value is determined based on the difference between the second angle deviation value and the third angle deviation value; The target motherboard coordinates are determined based on the coordinates of the rotation center, the total angular deviation value, and the coordinates of the second actual midpoint; wherein, the target motherboard coordinates are the position coordinates of the target motherboard after rotating it around the rotation center by the total angular deviation value. The position coordinate compensation value is determined based on the difference between the target motherboard coordinates and the midpoint coordinates of the second standard. The final assembly position information of the target motherboard is determined based on the standard assembly position information, the position coordinate compensation value, and the third position deviation value.

6. The motherboard assembly method according to claim 1, characterized in that, The step of obtaining the calibration transformation matrix of the second camera includes: The robotic arm is controlled to move to multiple pre-selected positions; Based on each of the pre-selected locations, the second image coordinates of the feature points of the target motherboard are acquired by the second camera; Based on each of the pre-selected positions and each of the second image coordinates, multiple transformation matrices are determined respectively; The calibration transformation matrix is ​​obtained by fitting each of the transformation matrices using the least squares method.

7. A motherboard assembly device, characterized in that, Applications include server motherboard assembly systems containing robotic arms, a first camera, and a second camera; The first camera is mounted on the robotic arm, and the second camera is mounted in the space below the robotic arm; The device includes: The first determining module is used to determine the target motherboard and target chassis to be assembled, and to determine the key assembly position information and standard assembly position information of the target motherboard under standard assembly; wherein, the key assembly position information includes the image coordinates of the target motherboard captured by the first camera when the target motherboard is in the initial position, the image coordinates of the target chassis captured by the first camera, and the image coordinates of the target motherboard captured by the second camera when the target motherboard is gripped by the robotic arm; The second determining module is used to determine the position deviation value and angle deviation value of the target motherboard, as well as the position deviation value and angle deviation value of the target chassis, based on the assembly key position information when assembling the target motherboard. The seventh determining submodule is used to determine the coordinates of the rotation center; wherein the rotation center is the center of a circle that keeps the feature points of the target motherboard within the field of view of the second camera when the robot rotates the target motherboard; the seventh determining submodule includes: an eighth control submodule, used to control the robot to move to multiple preset positions respectively; an eighth acquisition submodule, used to acquire the first image coordinates of the feature points of the target motherboard through the second camera based on each preset position; a first acquisition submodule, used to acquire the calibration transformation matrix of the second camera; wherein the calibration transformation matrix represents the transformation relationship between the position of the robot and the image coordinates of the feature points of the target motherboard; a twelfth determining submodule, used to determine multiple target distances according to the calibration transformation matrix, each preset position and each first image coordinate; wherein the target distance represents the distance from the feature point of the target motherboard to the end of the robot; the target distance calculation formula is as follows: ;in, The target distance is... This refers to the preset position where the robotic arm is located. The coordinates of the first image are... The calibration transformation matrix is ​​the one corresponding to the second camera; the thirteenth determining submodule is used to fit the target circle using the least squares method based on each target distance, and determine the coordinates of the center of the target circle as the coordinates of the rotation center; The third determining module is used to determine the final assembly position information of the target motherboard based on the standard assembly position information, the position deviation value and angle deviation value of the target motherboard, the position deviation value and angle deviation value of the target chassis, and the coordinates of the rotation center. An assembly module is used to assemble the target motherboard into the target chassis using the robotic arm, based on the final assembly position information.

8. A motherboard assembly device, characterized in that, include: Memory, used to store computer programs; A processor, configured to implement the steps of the motherboard assembly method as described in any one of claims 1 to 6 when executing the computer program.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the motherboard assembly method as described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Radiator assembling and positioning method and system based on machine vision and medium

    CN112975959A

  • Multi-camera large workpiece positioning and industrial robot position compensation method without public view

    CN113400298A

  • Visual guidance assembly method and device

    CN115194773A

  • Vehicle part identification method and system

    CN116740549A