Method and apparatus for assembling electronic equipment

By using the Kalman filter algorithm to calculate the alignment position of the robotic arm, the optimal alignment position of electronic device parts can be found automatically and quickly, solving the problem of low efficiency of manual adjustment and improving assembly efficiency and automation.

CN117754247BActive Publication Date: 2025-10-28HONOR DEVICE CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211137925.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-19
Publication Date
2025-10-28
Estimated Expiration
2042-09-19

AI Technical Summary

Technical Problem

In the process of assembling electronic devices, manual adjustment of parts alignment is inefficient and lacks automation. Furthermore, when the alignment system structure changes, experience needs to be re-accumulated, which affects production efficiency.

Method used

The Kalman filter algorithm is used to calculate the relationship between the initial and final alignment positions of the robotic arm. The Kalman coefficients are used to estimate the initial alignment position for the next alignment. The robotic arm can automatically and quickly find the optimal alignment position, reducing alignment time.

Benefits of technology

It improves the automation efficiency of parts alignment, reduces alignment time, lowers labor costs, and increases production efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117754247B_ABST
    Figure CN117754247B_ABST
Patent Text Reader

Abstract

A method and apparatus for assembling electronic devices improve the alignment efficiency of assembled parts in the electronic devices. The method includes: acquiring an initial alignment coordinate set and a final alignment coordinate set of a robotic arm in an alignment system during n alignment operations; obtaining Kalman coefficients based on the initial and final alignment coordinate sets; calculating the (n+1)th initial alignment coordinate of the robotic arm in the (n+1)th alignment operation based on the Kalman coefficients; and controlling the robotic arm to pick up the (n+1)th first component and move it to the (n+1)th initial alignment coordinate for the (n+1)th alignment operation. This method utilizes a Kalman filtering algorithm to calculate the relationship between the initial and final alignment positions of the robotic arm to estimate the initial alignment position for the next alignment operation, enabling automatic and rapid identification of optimal alignment positions, thereby reducing alignment time and improving alignment efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of terminal technology, and more particularly to methods and apparatus for assembling electronic devices. Background Technology

[0002] In the assembly process of electronic devices, the alignment and fitting of two parts are often involved. For example, taking the display screen and mid-frame of a mobile phone as an example, the display screen and mid-frame need to be aligned during the assembly process to ensure that they are precisely fitted together.

[0003] During the alignment process between the display screen and the mid-frame, factors such as display screen size processing deviations, mid-frame processing deviations, upper position, pick-up placement, and tooling gaps can affect the alignment. Therefore, the alignment system needs to acquire the display screen for high-precision photography and image processing to determine the geometric relationship between the display screen and the mid-frame. According to the product design requirements, the alignment system needs to perform translational and rotational movements to correctly align the display screen onto the mid-frame. Generally, experienced professionals are required to adjust the initial alignment position to minimize the deviation between the initial and final alignment positions, thereby reducing alignment time, increasing equipment efficiency, and improving economic benefits.

[0004] However, this manual adjustment method is time-consuming and has a low degree of automation. If the structure of the alignment system changes, experience needs to be re-accumulated, affecting production efficiency. Therefore, the industry urgently needs a solution to improve the alignment efficiency of assembling electronic equipment. Summary of the Invention

[0005] This application provides a method and apparatus for assembling electronic devices, which can improve the alignment efficiency of parts in assembling electronic devices.

[0006] In a first aspect, embodiments of this application provide a method for assembling an electronic device, comprising: obtaining an initial alignment coordinate set and a final alignment coordinate set of a robotic arm in an alignment system during n alignment operations, wherein the robotic arm is used to pick up and move the i-th first component of the electronic device in the i-th alignment operation to achieve alignment between the i-th first component and the i-th second component, where n is an integer greater than or equal to 1, n≥i≥1, the initial alignment coordinates are used to indicate the initial position of the robotic arm in each alignment process, and the final alignment coordinates are used to indicate the final position of the robotic arm in each alignment process; obtaining Kalman coefficients based on the initial alignment coordinate set and the final alignment coordinate set; calculating the (n+1)-th initial alignment coordinate of the robotic arm in the (n+1)-th alignment operation based on the Kalman coefficients; and controlling the robotic arm to pick up the (n+1)-th first component and move it to the (n+1)-th initial alignment coordinate to perform the (n+1)-th alignment operation.

[0007] This application provides a method for assembling electronic devices. To overcome the shortcomings of manual adjustment, a Kalman filter algorithm is used to calculate the relationship between the initial and final alignment positions of the robotic arm, in order to estimate the initial alignment position for the next alignment. This method can automatically and quickly find the optimal alignment position, thereby reducing alignment time and improving alignment efficiency.

[0008] In conjunction with the first aspect, in one possible implementation, the initial alignment coordinates and the final alignment coordinates respectively include an X component, a Y component, and a Z component, wherein the X component represents the translation component of the robotic arm along the X-axis, the Y component represents the translation component of the robotic arm along the Y-axis, and the R component represents the rotation component R of the robotic arm along the Z-axis; obtaining the Kalman coefficients based on the initial alignment coordinate set and the final alignment coordinate set includes: assuming that each component in the initial alignment coordinate set and each component in the final alignment coordinate set conforms to a normal distribution, obtaining the mean and variance of each component in the initial alignment coordinates and the mean and variance of each component in the final alignment coordinates; obtaining the Kalman coefficient corresponding to each component based on the mean and variance of each component in the initial alignment coordinates and the mean and variance of each component in the final alignment coordinates.

[0009] In conjunction with the first aspect, in one possible implementation, the step of obtaining the mean and variance of each component in the initial alignment coordinates and the mean and variance of each component in the final alignment coordinates, assuming that each component in the initial alignment coordinate set and the final alignment coordinate set conforms to a normal distribution, includes: obtaining the following items based on the initial alignment coordinate set and the final alignment coordinate set:

[0010] The expected value of the X component of the initial alignment coordinates. μ1 and variance X δ1 ;

[0011] The expected value of the Y component of the initial alignment coordinates. μ1 and variance Y δ1 ;

[0012] The expected value R of the R component of the initial alignment coordinates μ1 and variance R δ1 ;

[0013] The expected value of the X component of the final alignment coordinate. μ2 and variance X δ2 ;

[0014] The expected value of the Y component of the final alignment coordinate. μ2 and variance Y δ2 ;

[0015] The expected value R of the final positional coordinate R componentμ2 and variance R δ2 .

[0016] In conjunction with the first aspect, in one possible implementation, obtaining the Kalman coefficients corresponding to each component based on the mean and variance of each component in the initial alignment coordinates and the mean and variance of each component in the final alignment coordinates includes: determining the Kalman coefficients corresponding to each component according to the following formula:

[0017]

[0018] Where K represents the Kalman coefficient corresponding to each component, δ1 represents the variance corresponding to each component in the initial alignment coordinates, and δ2 represents the variance corresponding to each component in the final alignment coordinates.

[0019] In conjunction with the first aspect, in one possible implementation, calculating the (n+1)th initial alignment coordinate of the robotic arm in the (n+1)th alignment based on the Kalman coefficients includes: determining the (n+1)th initial alignment coordinate according to the following formula:

[0020] X n+1 =X n +K X (X n '-X n );

[0021] Y n+1 =Y n +K Y (Y n '-Y n );

[0022] R n+1 =R n +K R (R n '-R n );

[0023] Among them, (X) n+1 ,Y n+1 ,R n+1 () represents the (n+1)th initial alignment coordinate, (X) n ,Y n ,R n () represents the nth initial alignment coordinate, (X) n ',Y n ',R n ') represents the nth final alignment coordinate, K X K Y K R These represent the Kalman coefficients corresponding to the X, Y, and R components, respectively.

[0024] Secondly, embodiments of this application provide an apparatus for assembling electronic devices, comprising: an acquisition unit, configured to acquire an initial alignment coordinate set and a final alignment coordinate set of a robotic arm in an alignment system during n alignment operations, wherein the robotic arm is used to pick up and move the i-th first component of the electronic device in the i-th alignment operation to achieve alignment between the i-th first component and the i-th second component, where n is an integer greater than or equal to 1, n≥i≥1, the initial alignment coordinates are used to indicate the initial position of the robotic arm in each alignment process, and the final alignment coordinates are used to indicate the final position of the robotic arm in each alignment process; a processing unit, configured to obtain Kalman coefficients based on the initial alignment coordinate set and the final alignment coordinate set; the processing unit is further configured to calculate the (n+1)-th initial alignment coordinate of the robotic arm in the (n+1)-th alignment operation based on the Kalman coefficients; and a control unit, configured to control the robotic arm to pick up the (n+1)-th first component and move it to the (n+1)-th initial alignment coordinate to perform the (n+1)-th alignment operation.

[0025] Thirdly, embodiments of this application provide an apparatus for assembling electronic devices, comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the apparatus performs the method as described in the first aspect or any possible implementation thereof.

[0026] Fourthly, embodiments of this application provide a computer-readable storage medium storing instructions that, when executed, cause a computer to perform the method described in the first aspect or any implementation thereof.

[0027] Fifthly, a computer program product comprising a computer program that, when run, causes a computer to perform the methods described in the first aspect or any implementation thereof.

[0028] It should be understood that the second to fifth aspects of this application correspond to the technical solutions of the first aspect of this application, and the beneficial effects achieved by each aspect and the corresponding feasible implementation are similar, and will not be repeated here. Attached Figure Description

[0029] Figure 1 This is a schematic diagram of the structure of an alignment system 100 according to an embodiment of this application;

[0030] Figure 2 This is an example diagram of an alignment process for assembling an electronic device according to an embodiment of this application;

[0031] Figure 3This is a schematic flowchart of a method for assembling an electronic device according to an embodiment of this application;

[0032] Figure 4 This is a schematic diagram of the normal distribution of different alignment coordinates according to an embodiment of this application;

[0033] Figure 5 This is a schematic flowchart of an alignment method for assembling electronic devices according to an embodiment of this application;

[0034] Figure 6 A schematic diagram of the structure of an apparatus 600 for assembling electronic devices provided in an embodiment of this application;

[0035] Figure 7 This is a schematic diagram of the structure of an apparatus 700 for assembling electronic devices according to an embodiment of this application. Detailed Implementation

[0036] To facilitate a clear description of the technical solutions in the embodiments of this application, the terms "first" and "second" are used in the embodiments of this application to distinguish identical or similar items with essentially the same function and effect. For example, the first value and the second value are only used to distinguish different values ​​and do not limit their order. Those skilled in the art will understand that the terms "first" and "second" do not limit the quantity or execution order, and the terms "first" and "second" are not necessarily different.

[0037] It should be noted that, in this application, the terms "exemplary" or "for example" are used to indicate that something is being described as an example, illustration, or illustration. Any embodiment or design described as "exemplary" or "for example" in this application should not be construed as being more preferred or advantageous than other embodiments or design solutions. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner.

[0038] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can mean: a, b, c, a and b, a and c, b and c, or a, b, and c, where a, b, and c can be single or multiple.

[0039] As mentioned earlier, during the alignment process between the display screen and the mid-frame, the alignment system needs to perform translational and rotational movements to correctly align the display screen onto the mid-frame. Therefore, at the start of alignment, the operator needs to adjust the initial alignment position of the robotic arm to minimize the deviation between the initial and final alignment positions. However, manual adjustment has disadvantages such as long time consumption and low automation. To solve the above problems, this application provides a method for assembling electronic devices. To overcome the shortcomings of manual adjustment, a Kalman filter algorithm is used to calculate the relationship between the initial and final alignment positions of the robotic arm to estimate the initial alignment position for the next alignment, thereby automatically and quickly finding the optimal alignment position. After multiple iterations, a more accurate distribution is obtained, the initial alignment position becomes increasingly suitable, and the required alignment time decreases, thus improving alignment efficiency.

[0040] Kalman filtering is an algorithm that uses the state equations of a linear system to optimally estimate the system state using observed input and output data. Since the observed data includes noise and interference from the system, the optimal estimation can also be viewed as a filtering process. Specifically, when the observed data and the state jointly follow a Gaussian distribution, the conditional mean and conditional variance of the Gaussian random variable are calculated using the Kalman recursive formula. The Kalman filtering algorithm then provides a linear minimum variance estimate, i.e., a minimum variance estimate, to update the conditional probability density of the state.

[0041] Figure 1 This is a schematic diagram of the structure of an alignment system 100 according to an embodiment of this application. Figure 1 As shown, the alignment system 100 includes a robotic arm 101, a camera 104, a controller 110, and a support platform 105. The components shown can be implemented in hardware, software, or a combination of both.

[0042] The robotic arm 101 is used to grasp and move parts to be assembled, such as display screens, mid-frames, etc. In some examples, the robotic arm 101 has four degrees of freedom of motion: translational components along the X, Y, and Z axes and a rotational component R along the Z-axis.

[0043] It should be noted that the embodiments of this application involve the alignment and assembly process between parts, so the coordinates involved do not include the Z-axis coordinate, that is, the translation component in the vertical direction, but mainly consider the three dimensions of X, Y and R.

[0044] In some examples, the alignment system 100 may include a selective compliance assembly robot arm (SCARA): also known as a SCARA robot, it is a robotic arm used for assembly operations.

[0045] The support platform 105 is equipped with a positioning base for fixing the parts to be assembled. The support platform 105 can perform translational and lifting movements, allowing the positioning base to move horizontally and vertically. For example, if it is necessary to assemble a display screen onto the middle frame, the middle frame can be fixed on the support platform 105, the robotic arm 101 can be used to grip the display screen, and by moving the robotic arm 101 and / or the support platform 105, the display screen can be assembled onto the middle frame.

[0046] Camera 104 is used to capture images of the parts to be assembled in order to determine their positions. As an example, the image sensor used in camera 104 can be a charge-coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) sensor. Depending on the type of image sensor, camera 104 can also be called a CCD camera or a CMOS camera.

[0047] The controller 110 is used to acquire information from external sensors, perform internal processing and calculations, and issue commands to control the robotic arm 101 or the camera 104. In some examples, the controller 110 may include a vision processing unit 108 and a motion control unit 106.

[0048] The camera 104 can receive the shooting command sent by the vision processing unit 108, take pictures of the parts to be assembled placed on the support platform 105, and send the captured images to the vision processing unit 108 so that the vision processing unit 108 can process the acquired images, such as obtaining the position coordinates of the middle frame.

[0049] The vision processing unit 108 can generate commands to control the movement of the robotic arm 101 or the support platform 105 based on the position coordinates of the mid-frame, and send the commands to the motion control unit 106. The motion control unit 106 can manipulate the robotic arm 101 or the support platform 105 according to the commands. For example, it can control the robotic arm 101 to grasp and move objects, or control the support platform 105 to translate or lift.

[0050] Optionally, the vision processing unit 108 and the motion control unit 106 may be integrated into the same processor, and this embodiment of the application does not limit this.

[0051] Figure 2 This is an example diagram illustrating the alignment process for assembling an electronic device according to an embodiment of this application. The description uses a display screen and a mid-frame as examples of the assembled components. Figure 2As shown in (a) and (b), the display screen and the middle frame can first be placed in the fixture, and the controller 110 (not shown) can operate the robotic arm 101 to pick up the display screen. Figure 2 As shown in (c), before each alignment begins, the robotic arm 101 picks up the display screen and moves it to the initial alignment position, i.e., the position of the initial alignment coordinates. The initial alignment position is also called the loading position, and is typically adjusted manually. After the display screen moves to the initial alignment position, precise alignment between the display screen and the frame is not yet possible. Based on the alignment algorithm, the controller 110 adjusts and moves the robotic arm 101 until the display screen moves to the desired position. Figure 2 The final alignment position in (d) means that the display screen and the middle frame are precisely aligned, and one alignment process is completed. During the alignment process, the controller 110 can operate the robotic arm 101 to pick up and move the display screen, moving it directly above the middle frame to achieve precise alignment between the two. Specifically, the robotic arm 101 moves in the X and Y directions and adjusts the rotation component R along the Z axis to adjust the position of the display screen.

[0052] During the alignment process, the controller 110 needs to continuously adjust the movement position of the robotic arm using a dedicated alignment algorithm to achieve the final alignment position, which requires time and computing resources. The smaller the deviation between the initial alignment position and the final alignment position, the less time and computing resources are required for alignment. However, manually adjusting the initial alignment position takes a long time and has a low degree of automation. Therefore, in this embodiment, by obtaining the initial alignment coordinate set and the final alignment coordinate set, using the Kalman filter algorithm to calculate the Kalman filter coefficients, and deriving the initial alignment coordinates for the next step based on the Kalman coefficients, the initial alignment position can be automatically and quickly determined without manual adjustment, thereby improving alignment efficiency and reducing labor costs.

[0053] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. The following specific embodiments can be implemented independently or in combination with each other. The same or similar concepts or processes may not be described again in some embodiments.

[0054] Figure 3 This is a schematic flowchart illustrating a method for assembling an electronic device according to an embodiment of this application. The method can be performed by... Figure 3 The method can be executed by the alignment system 100, or by the controller 110 within the alignment system 100. For example... Figure 3 As shown, the method includes the following.

[0055] S301. Obtain the initial alignment coordinate set and the final alignment coordinate set of the robotic arm in the alignment system during n alignments. The robotic arm is used to pick up and move the i-th first component of the electronic device in the i-th alignment to achieve alignment between the i-th first component and the i-th second component. n is an integer greater than or equal to 1, n≥i≥1. The initial alignment coordinates are used to indicate the initial position of the robotic arm in each alignment process, and the final alignment coordinates are used to indicate the final position of the robotic arm in each alignment process.

[0056] The initial alignment coordinate set includes n initial alignment coordinates, and the final alignment coordinate set includes n final alignment coordinates. The initial and final alignment coordinates each include an X component, a Y component, and a Z component, where the X component represents the translation component of the robotic arm along the X-axis, the Y component represents the translation component of the robotic arm along the Y-axis, and the R component represents the rotation component R of the robotic arm along the Z-axis.

[0057] As an example, the initial alignment coordinates can be represented as (X, Y, Z), and the final alignment coordinates can be represented as (X', Y', Z').

[0058] The embodiments of this application do not limit the size of n, which can be determined according to practice. The embodiments of this application do not limit the selection principles for the coordinates in the initial alignment coordinate set and the final alignment coordinate set. In some examples, the aforementioned n initial alignment coordinates and n final alignment coordinates can be the position coordinate data of the robotic arm in the most recent n alignment processes, or they can be n sample data selected from more sample data.

[0059] This application does not limit the type of electronic device. Electronic devices may include, but are not limited to, mobile phones, tablets, smartwatches, or any other electronic devices that require alignment during assembly. The aforementioned first component and second component can refer to any part of the electronic device that requires alignment. As an example, the first component can be a display screen, and the second component can be a mid-frame, wherein the mid-frame refers to the frame between the display screen and the back cover, used to support internal components.

[0060] S302. Obtain the Kalman coefficients based on the initial and final alignment coordinate sets.

[0061] Figure 4 This is a schematic diagram of the normal distribution of different alignment coordinates according to an embodiment of this application. For example... Figure 4 As shown, the initial alignment coordinates, the final alignment coordinates, and the initial alignment coordinates for the next alignment all conform to the characteristics of a normal distribution. Therefore, based on this normal distribution characteristic, the Kalman filter algorithm, along with the initial and final alignment coordinate sets, can be used to optimally estimate the initial alignment coordinates for the next alignment.

[0062] The X, Y, and R components in the initial and final alignment coordinate sets conform to normal distributions (or Gaussian distributions). The probability density functions of the normal distributions of these components can be expressed by the following formulas.

[0063]

[0064]

[0065]

[0066]

[0067]

[0068]

[0069] Where (X, Y, R) represents the coordinates of each component in the initial alignment coordinate set, and (X', Y', R') represents the coordinates of each component in the final alignment coordinate set.

[0070] Regarding formulas (1) to (6), the expected value and variance of the probability density function corresponding to each component can be obtained through the initial and final alignment coordinate sets.

[0071] For example, for formula (1), the coordinate set of the X component in the initial alignment coordinate set can be represented as an array X1. By taking the average value of array X1, the expected value X of the probability density function corresponding to the X component of the initial alignment coordinate set can be obtained. μ1 By taking the variance of array X1, we obtain the expected value X of the probability density function corresponding to the components of the initial alignment coordinate set X. δ1 .

[0072] Similarly, for formula (2), the coordinate set of the Y component in the initial alignment coordinate set is represented by the array Y1. After calculation, the expected value Y of the probability density function corresponding to the Y component of the initial alignment coordinate set can be obtained. μ1 and variance Y δ1 .

[0073] For formula (3), the coordinate set of the R component in the initial alignment coordinate set is represented by array R1. After calculation, the expected value R of the probability density function corresponding to the R component of the initial alignment coordinate set can be obtained. μ1 and variance R δ1 .

[0074] For formula (4), the coordinate set of the X component in the final alignment coordinate set is represented by array X2. After calculation, the expected value X of the probability density function corresponding to the X component of the final alignment coordinate set can be obtained. μ2 and variance X δ2 .

[0075] For formula (5), the coordinate set of the Y component in the final alignment coordinate set is represented by the array Y2. After calculation, the expected value Y of the probability density function corresponding to the Y component of the final alignment coordinate set can be obtained. μ2 and variance Y δ2 .

[0076] For formula (6), the coordinate set of the R component in the final alignment coordinate set is represented by array R2. After calculation, the expected value R of the probability density function corresponding to the R component of the final alignment coordinate set can be obtained. μ2 and variance R δ2 .

[0077] After obtaining the expected value and variance of each component, the Kalman coefficients can be calculated using the Kalman filtering algorithm. Specifically, the Kalman coefficients for each component can be calculated. The Kalman coefficients for the X, Y, and R components can be represented as K... X K Y K R .

[0078] Specifically, the Kalman coefficients for each component can be determined using the following formula:

[0079]

[0080] Where K represents the Kalman coefficient corresponding to each component, δ1 represents the variance corresponding to each component in the initial alignment coordinates, and δ2 represents the variance corresponding to each component in the final alignment coordinates.

[0081] Substituting the variances of the initial and final alignment coordinates corresponding to each component into formula (7), we can obtain the following Kalman coefficients for each component:

[0082]

[0083]

[0084]

[0085] S303. Based on the Kalman coefficient, calculate the (n+1)th initial alignment coordinate of the robotic arm in the (n+1)th alignment.

[0086] After obtaining the Kalman coefficients corresponding to each component, the initial alignment coordinates of the robotic arm in the next (n+1)th alignment can be calculated. The positions in the initial alignment coordinates of the (n+1)th alignment also follow a normal distribution. The probability density of the initial alignment coordinates for the next alignment can be expressed by the following formula.

[0087] P next ~N(μ,δ) (11)

[0088] Among them, P next Indicates the initial alignment coordinates (X) for the next alignment. n+1 ,Y n+1 ,R n+1 μ represents the mean, and δ represents the variance.

[0089] Therefore, the optimal position for the next initial alignment can be estimated using the Kalman filter algorithm. Specifically, the next initial alignment coordinates can be determined based on the most recent initial alignment coordinates, the final alignment coordinates, and the Kalman coefficients.

[0090] For example, the (n+1)th initial alignment coordinates can be determined using the following formula:

[0091] X n+1 =X n +K X (X n '-X n (12)

[0092] Y n+1 =Y n +K Y (Y n '-Y n (13)

[0093] R n+1 =R n +K R (R n '-R n (14)

[0094] Among them, (X) n+1 ,Y n+1 ,R n+1 () represents the (n+1)th initial alignment coordinate, (X) n ,Y n ,R n () represents the nth initial alignment coordinate, (X) n ',Y n ',R n ') represents the nth final alignment coordinate, K X K Y K RThese represent the Kalman coefficients corresponding to the X, Y, and R components, respectively.

[0095] S304. Control the robotic arm to pick up the (n+1)th first component and move it to the (n+1)th initial alignment coordinate to perform the (n+1)th alignment.

[0096] After obtaining the estimated initial alignment coordinates, the controller can control the robotic arm to pick up the first part and move it to the position of the next initial alignment coordinates to begin alignment.

[0097] Optionally, after each alignment, the controller can add the newly generated initial and final alignment coordinates to the initial and final alignment coordinate sets, respectively, to estimate the initial alignment coordinates for the next alignment. Through multiple iterations, more accurate initial alignment coordinates can be obtained, thereby reducing the final alignment time and improving alignment efficiency.

[0098] In this application embodiment, a method for assembling electronic devices is provided. In order to overcome the shortcomings of manual adjustment, the Kalman filter algorithm is used to calculate the relationship between the initial alignment position and the final alignment position of the robotic arm, so as to estimate the initial alignment position for the next alignment. This method can automatically and quickly find the optimal alignment position, thereby reducing alignment time and improving alignment efficiency.

[0099] In some examples, the Kalman coefficient can be used to monitor the error between the estimated initial alignment coordinates and the final alignment coordinates. If the error is less than a preset threshold, the initial alignment coordinates will not be re-estimated in subsequent alignment processes, but the previously estimated initial alignment coordinates will be used instead.

[0100] For example, since each position in the initial alignment coordinates of the (n+1)th alignment also satisfies a normal distribution (see formula (11)), the mean μ and variance δ in formula (11) can be predicted by the Kalman coefficients.

[0101] The mean μ and variance δ can be obtained from the following formulas:

[0102] μ=μ1+K(μ2-μ1) (15)

[0103] δ 2 =δ1 2 +Kδ2 2 (16)

[0104] Where K represents the Kalman coefficient corresponding to each component, δ1 represents the variance corresponding to each component in the initial alignment coordinates, and δ2 represents the variance corresponding to each component in the final alignment coordinates.

[0105] If the variance δ is less than the preset threshold, it can be considered that the accuracy of the estimated initial alignment coordinates is high enough. In subsequent alignment processes, the next initial alignment coordinates can be calculated by using the most recently estimated initial alignment coordinates, thereby further saving computational resources.

[0106] Figure 5 This is a schematic flowchart illustrating a specific alignment method for assembling electronic devices according to an embodiment of this application. Figure 5 The following description uses the display screen and mid-frame as examples of the parts to be assembled. Figure 5 As shown, the method includes the following.

[0107] S501. Place the display screen and the middle frame in their respective fixtures.

[0108] Tooling can refer to a structure used to place parts. By operating the tooling, the parts can be moved to avoid contamination or damage to the parts themselves.

[0109] S502. The controller controls the camera to take pictures of the mid-frame and processes the photo information to obtain the size information of the mid-frame.

[0110] S503. The controller determines the initial alignment coordinates for this alignment.

[0111] The process by which the controller determines the initial alignment coordinates is as follows.

[0112] A1. The controller obtains the initial alignment coordinate set and the final alignment coordinate set.

[0113] Each component in the initial alignment coordinate set is represented as array X1, array Y1, and array R1, respectively.

[0114] Each component in the final alignment coordinate set is represented by arrays X2, Y2, and R2.

[0115] A2. Based on the initial and final alignment coordinate sets, obtain the expectation and variance of the probability density function corresponding to each component.

[0116] Specifically, each component of the initial and final alignment coordinate sets conforms to a normal distribution. The probability density functions of the normal distributions of the above components can be found in formulas (1) to (6), which will not be elaborated here.

[0117] Based on the initial and final alignment coordinate sets, the following items can be obtained:

[0118] The expected value of the X component of the initial alignment coordinates. μ1 and variance X δ1 ;

[0119] The expected value of the Y component of the initial alignment coordinates. μ1 and variance Y δ1 ;

[0120] The expected value R of the R component of the initial alignment coordinates μ1 and variance R δ1 ;

[0121] The expected value of the X component of the final alignment coordinate. μ2 and variance X δ2 ;

[0122] The expected value of the Y component of the final alignment coordinate. μ2 and variance Y δ2 ;

[0123] The expected value R of the final positional coordinate R component μ2 and variance R δ2 .

[0124] A3. Calculate the Kalman coefficient K for each component. X K Y K R .

[0125] For example, the Kalman coefficients can be obtained by substituting the expected value and variance of each component in the initial and final alignment coordinate sets into formula (7).

[0126] A4. Use the Kalman filter algorithm to estimate the initial alignment coordinates for this alignment.

[0127] Specifically, the initial alignment coordinates for this alignment can be determined according to formulas (12) to (14).

[0128] S504. The controller controls the robotic arm to pick up the display screen and move it to the initial alignment coordinates.

[0129] S505. The controller controls the camera to take pictures of the display screen and processes the pictures to obtain the size data information of the display screen.

[0130] S506. The controller calculates the geometric positional relationship between the display screen and the middle frame based on the alignment algorithm, and determines the offset amount that the robotic arm needs to move.

[0131] S507. The controller controls the robotic arm to move the display screen until it reaches the final alignment position.

[0132] S508. The controller controls the robotic arm to achieve the alignment and bonding action between the display screen and the middle frame.

[0133] Optionally, after alignment, the final alignment position of the robotic arm is recorded. Based on this final alignment position, iterative estimation calculations are performed using the initial alignment position data. Through multiple iterations, more accurate initial alignment coordinates can be obtained, thereby reducing the final alignment time and improving alignment efficiency.

[0134] It should be understood that the structure of the alignment system in the embodiments of this application does not constitute a specific limitation on the system. In some examples, the alignment system may include more or fewer components than illustrated, or the illustrated components may be replaced by other components with similar functions.

[0135] The above combination Figure 1-Figure 5 The methods provided in the embodiments of this application have been described. The apparatus for executing the above methods, provided in the embodiments of this application, is described below. Figure 6 As shown, Figure 6 This is a schematic diagram of a device 600 for assembling electronic devices provided in an embodiment of this application. The device 600 may be a controller in the alignment system in the embodiment of this application, or a chip or chip system within the controller.

[0136] like Figure 6 As shown, the device 600 includes: an acquisition unit 610, a processing unit 620, and a control unit 630.

[0137] The acquisition unit 610 is used to acquire the initial alignment coordinate set and the final alignment coordinate set of the robotic arm in the alignment system during n alignments. The robotic arm is used to pick up and move the i-th first component of the electronic device in the i-th alignment to achieve alignment between the i-th first component and the i-th second component. n is an integer greater than or equal to 1, n≥i≥1. The initial alignment coordinates are used to indicate the initial position of the robotic arm in each alignment process, and the final alignment coordinates are used to indicate the final position of the robotic arm in each alignment process.

[0138] The processing unit 620 is used to obtain the Kalman coefficients based on the initial alignment coordinate set and the final alignment coordinate set.

[0139] The processing unit 620 is also used to calculate the (n+1)th initial alignment coordinate of the robotic arm in the (n+1)th alignment based on the Kalman coefficient;

[0140] The control unit 630 is used to control the robotic arm to pick up the (n+1)th first component and move it to the (n+1)th initial alignment coordinate for the (n+1)th alignment.

[0141] Figure 7 This is a schematic diagram of the structure of an apparatus 700 for assembling electronic devices according to an embodiment of this application, as shown below. Figure 7As shown, the device 700 includes a processor 701, a communication line 704, and at least one communication interface. Figure 7 (The example described uses communication interface 703). The device 700 can be a controller in the alignment system of the embodiments of this application, or it can be a chip or chip system within the controller.

[0142] The processor 701 may be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits used to control the execution of the program of the present application.

[0143] Communication line 704 may include circuitry for transmitting information between the aforementioned components.

[0144] The communication interface 703 uses any transceiver-like device for communicating with other devices or communication networks, such as Ethernet, wireless local area networks (WLAN), etc.

[0145] Possibly, the device 700 may also include a memory 702.

[0146] The memory 702 may be a read-only memory (ROM) or other type of static storage device capable of storing static information and instructions, random access memory (RAM) or other type of dynamic storage device capable of storing information and instructions, or electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital versatile optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but not limited thereto. The memory may exist independently and be connected to the processor via communication line 704. The memory may also be integrated with the processor.

[0147] The memory 702 stores computer execution instructions for implementing the present application's solution, and its execution is controlled by the processor 701. The processor 701 executes the computer execution instructions stored in the memory 702, thereby implementing the method for assembling electronic devices provided in the embodiments of the present application.

[0148] It is possible that the computer execution instructions in the embodiments of this application may also be referred to as application code, and the embodiments of this application do not specifically limit this.

[0149] In a specific implementation, as one example, the processor 701 may include one or more CPUs, for example... Figure 7 CPU0 and CPU1 in the CPU.

[0150] In a specific implementation, as one embodiment, device 700 may include multiple processors, for example... Figure 7 Processors 701 and 705 are described in the text. Each of these processors can be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor. Here, "processor" can refer to one or more devices, circuits, and / or processing cores used to process data (e.g., computer program instructions).

[0151] In the above embodiments, the instructions stored in the memory for execution by the processor can be implemented in the form of a computer program product. This computer program product can be pre-written into the memory, or it can be downloaded and installed into the memory as software.

[0152] A computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the flow or function according to the embodiments of this application is generated. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a server or data center that integrates one or more available media. For example, available media may include magnetic media (e.g., floppy disks, hard disks, or magnetic tapes), optical media (e.g., digital versatile discs (DVDs)), or semiconductor media (e.g., solid-state disks (SSDs)).

[0153] This application also provides a computer-readable storage medium. The methods described in the above embodiments can be implemented, in whole or in part, by software, hardware, firmware, or any combination thereof. The computer-readable medium may include computer storage media and communication media, and may also include any medium capable of transferring a computer program from one place to another. The storage medium can be any target medium accessible by a computer.

[0154] As one possible design, computer-readable media may include compact disc read-only memory (CD-ROM), RAM, ROM, EEPROM, or other optical disc storage; computer-readable media may also include disk storage or other disk storage devices. Furthermore, any connecting cable may also be appropriately referred to as computer-readable media. For example, if software is transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave, then coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of media. As used herein, disks and optical discs include optical discs (CD), laser discs, optical discs, digital versatile discs (DVD), floppy disks, and Blu-ray discs, where disks typically reproduce data magnetically, while optical discs optically reproduce data using lasers.

[0155] The above combinations should also be included within the scope of computer-readable media. The above are merely specific embodiments of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.

Claims

1. A method for assembling electronic devices, characterized in that, include: Obtain the initial alignment coordinate set and the final alignment coordinate set of the robotic arm in the alignment system during n alignments. The robotic arm is used to pick up and move the i-th first component of the electronic device in the i-th alignment to achieve alignment between the i-th first component and the i-th second component. n is an integer greater than or equal to 1, n≥i≥1. The initial alignment coordinates are used to indicate the initial position of the robotic arm in each alignment process, and the final alignment coordinates are used to indicate the final position of the robotic arm in each alignment process. The Kalman coefficients are obtained based on the initial alignment coordinate set and the final alignment coordinate set. Based on the Kalman coefficients, calculate the (n+1)th initial alignment coordinates of the robotic arm in the (n+1)th alignment; The robotic arm is controlled to pick up the (n+1)th first component and move it to the (n+1)th initial alignment coordinate to perform the (n+1)th alignment.

2. The method as described in claim 1, characterized in that, The initial alignment coordinates and the final alignment coordinates each include an X component, a Y component, and an R component, wherein the X component represents the translation component of the robotic arm along the X-axis, the Y component represents the translation component of the robotic arm along the Y-axis, and the R component represents the rotation component of the robotic arm. Based on the initial alignment coordinate set and the final alignment coordinate set, the Kalman coefficients are obtained, including: Assuming that each component in the initial alignment coordinate set and each component in the final alignment coordinate set conform to a normal distribution, the mean and variance of each component in the initial alignment coordinate set and the mean and variance of each component in the final alignment coordinate set are obtained. Based on the mean and variance of each component in the initial alignment coordinates and the mean and variance of each component in the final alignment coordinates, obtain the Kalman coefficient corresponding to each component.

3. The method as described in claim 2, characterized in that, The step of obtaining the mean and variance of each component in the initial alignment coordinate set and the final alignment coordinate set, assuming that each component in the initial alignment coordinate set and the final alignment coordinate set conforms to a normal distribution, includes: Based on the initial alignment coordinate set and the final alignment coordinate set, the following items are obtained: The expected value of the X component of the initial alignment coordinates. μ1 and variance X δ1 ; The expected value of the Y component of the initial alignment coordinates. μ1 and variance Y δ1 ; The expected value R of the R component of the initial alignment coordinates μ1 and variance R δ1 ; The expected value of the X component of the final alignment coordinate. μ2 and variance X δ2 ; The expected value of the Y component of the final alignment coordinate. μ2 and variance Y δ2 ; The expected value R of the final positional coordinate R component μ2 and variance R δ2 .

4. The method as described in claim 2 or 3, characterized in that, The step of obtaining the Kalman coefficients corresponding to each component based on the mean and variance of each component in the initial alignment coordinates and the mean and variance of each component in the final alignment coordinates includes: The Kalman coefficients for each component are determined using the following formula: Where K represents the Kalman coefficient corresponding to each component, δ1 represents the variance corresponding to each component in the initial alignment coordinates, and δ2 represents the variance corresponding to each component in the final alignment coordinates.

5. The method as described in claim 4, characterized in that, The step of calculating the (n+1)th initial alignment coordinates of the robotic arm in the (n+1)th alignment based on the Kalman coefficients includes: The (n+1)th initial alignment coordinates are determined according to the following formula: X n+1 =X n +K X (X n '-X n ); AND n+1 And n +K Y (AND n '-AND n ); R n+1 =R n +K R (R n '-R n ); Among them, (X) n+1 ,Y n+1 ,R n+1 () represents the (n+1)th initial alignment coordinate, (X) n ,Y n ,R n () represents the nth initial alignment coordinate, (X) n ',Y n ',R n ') represents the nth final alignment coordinate, K X K Y K R These represent the Kalman coefficients corresponding to the X, Y, and R components, respectively.

6. An apparatus for assembling electronic devices, characterized in that, include: The acquisition unit is used to acquire the initial alignment coordinate set and the final alignment coordinate set of the robotic arm in the alignment system during n alignments. The robotic arm is used to pick up and move the i-th first component of the electronic device in the i-th alignment to achieve alignment between the i-th first component and the i-th second component. n is an integer greater than or equal to 1, n≥i≥1. The initial alignment coordinates are used to indicate the initial position of the robotic arm in each alignment process, and the final alignment coordinates are used to indicate the final position of the robotic arm in each alignment process. The processing unit is used to obtain Kalman coefficients based on the initial alignment coordinate set and the final alignment coordinate set; The processing unit is also used to calculate the (n+1)th initial alignment coordinate of the robotic arm in the (n+1)th alignment based on the Kalman coefficient; The control unit is used to control the robotic arm to pick up the (n+1)th first component and move it to the (n+1)th initial alignment coordinate to perform the (n+1)th alignment.

7. The apparatus as claimed in claim 6, characterized in that, The initial alignment coordinates and the final alignment coordinates each include an X component, a Y component, and an R component, wherein the X component represents the translation component of the robotic arm along the X-axis, the Y component represents the translation component of the robotic arm along the Y-axis, and the R component represents the rotation component of the robotic arm. The processing unit is specifically used to obtain the mean and variance of each component in the initial alignment coordinates and the mean and variance of each component in the final alignment coordinates, assuming that each component in the initial alignment coordinate set and each component in the final alignment coordinate set conforms to a normal distribution; and to obtain the Kalman coefficients corresponding to each component based on the mean and variance of each component in the initial alignment coordinates and the mean and variance of each component in the final alignment coordinates.

8. The apparatus as claimed in claim 7, characterized in that, The processing unit is specifically used to obtain the following items based on the initial alignment coordinate set and the final alignment coordinate set: The expected value of the X component of the initial alignment coordinates. μ1 and variance X δ1 ; The expected value of the Y component of the initial alignment coordinates. μ1 and variance Y δ1 ; The expected value R of the R component of the initial alignment coordinates μ1 and variance R δ1 ; The expected value of the X component of the final alignment coordinate. μ2 and variance X δ2 ; The expected value of the Y component of the final alignment coordinate. μ2 and variance Y δ2 ; The expected value R of the final positional coordinate R component μ2 and variance R δ2 .

9. The apparatus as claimed in claim 7 or 8, characterized in that, The processing unit is specifically used to determine the Kalman coefficients corresponding to each component according to the following formula: Where K represents the Kalman coefficient corresponding to each component, δ1 represents the variance corresponding to each component in the initial alignment coordinates, and δ2 represents the variance corresponding to each component in the final alignment coordinates.

10. The apparatus as claimed in claim 9, characterized in that, The processing unit is specifically used to determine the (n+1)th initial alignment coordinates according to the following formula: X n+1 =X n +K X (X n '-X n ); AND n+1 And n +K Y (AND n '-AND n ); R n+1 =R n +K R (R n '-R n ); Among them, (X) n+1 ,Y n+1 ,R n+1 () represents the (n+1)th initial alignment coordinate, (X) n ,Y n ,R n () represents the nth initial alignment coordinate, (X) n ',Y n ',R n ') represents the nth final alignment coordinate, K X K Y K R These represent the Kalman coefficients corresponding to the X, Y, and R components, respectively.

11. An apparatus for assembling electronic devices, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it causes the device to perform the method as described in any one of claims 1 to 5.

12. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it causes the computer to perform the method as described in any one of claims 1 to 5.

13. A computer program product, characterized in that, Includes a computer program that, when run, causes a computer to perform the method as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Precise bonding device and method for mobile phone screen and middle frame

    CN108772684A

  • Multi-shaft-hole automatic aligning method based on laser tracker

    CN109093376A