Polishing methods for curved surfaces

By automatically generating interpolation curves and target trajectory points for the surface model, the problems of low generation efficiency and uneven density in surface model polishing are solved, achieving efficient and uniform polishing results.

CN117182713BActive Publication Date: 2025-10-28SHENZHENSHI YUZHAN PRECISION TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202311238237.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-09-22
Publication Date
2025-10-28
Estimated Expiration
2043-09-22

AI Technical Summary

Technical Problem

In existing technologies, the generation efficiency of grinding motion trajectories for curved surface models is low and the grinding density is uneven, mainly because it is difficult to ensure the consistency of waveform intervals and the accuracy of each point when manually drawing trajectories.

Method used

By acquiring multiple contour lines of the curved surface model, an interpolation curve is generated using a spline interpolation algorithm. The target trajectory points are calculated by combining the preset number of waves, functions, and grid points, and the target motion trajectory is automatically generated. The robotic arm is then controlled to grind the target based on the trajectory points.

Benefits of technology

It improves the efficiency of generating target motion trajectories, ensures the uniformity and accuracy of grinding, and enhances the grinding effect.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117182713B_ABST
    Figure CN117182713B_ABST
Patent Text Reader

Abstract

This application provides a method for polishing a curved surface model, comprising: acquiring multiple contour lines of the curved surface model, each contour line including multiple contour points; generating an interpolation curve based on each group of contour points with the same point number on the multiple contour lines, each interpolation curve including multiple grid points; determining multiple target trajectory points of the multiple grid points of each interpolation curve according to a preset wave number, a preset function, a first number of multiple interpolation curves, and a second number of grid points in each interpolation curve, and generating a target motion trajectory based on the multiple target trajectory points; calculating the posture of a robotic arm passing through each target trajectory point based on the coordinates of each target trajectory point; and controlling the robotic arm to polish the curved surface model according to the target motion trajectory and the posture corresponding to each target trajectory point. Using the above method, the accuracy and continuity of the multiple target trajectory points can be ensured, thereby improving the efficiency of generating the robotic arm's motion trajectory and the polishing effect on the curved surface.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of intelligent manufacturing, and in particular to a method for polishing curved surface models. Background Technology

[0002] In manufacturing, to remove machining marks (such as tool marks) from the surface of curved models, it is necessary to control a robotic arm to polish the model according to its motion trajectory. In related technologies, the motion trajectory of the robotic arm is often manually drawn, a very complex and time-consuming process that results in low efficiency in generating motion trajectories.

[0003] Furthermore, since manually drawn motion trajectories cannot guarantee the consistency of the intervals between multiple waveforms in the motion trajectory, as well as the accuracy and continuity of each trajectory point on the motion trajectory, the grinding density is uneven, affecting the grinding effect. Summary of the Invention

[0004] In view of the above, it is necessary to provide a surface model polishing method to improve the efficiency of target motion trajectory generation and polishing effect.

[0005] On one hand, this application provides a method for polishing a curved surface model. The method includes: acquiring multiple contour lines of a curved surface model, wherein each contour line includes multiple contour points with different point numbers; determining multiple sets of contour points for the multiple contour lines based on the point numbers of the contour points on each contour line; generating an interpolation curve based on each set of contour points, wherein each interpolation curve includes multiple grid points; determining multiple target trajectory points of the multiple grid points of each interpolation curve based on a preset wave number, a preset function, a first number of multiple interpolation curves, and a second number of grid points in each interpolation curve; generating a target motion trajectory based on the multiple target trajectory points; each target trajectory point has a corresponding posture; calculating the posture of a robotic arm passing through each target trajectory point based on the coordinates of each target trajectory point; and controlling the robotic arm to polish the curved surface model based on the target motion trajectory and the posture corresponding to each target trajectory point.

[0006] In some embodiments of this application, the step of determining multiple sets of contour points for multiple contour lines based on the point numbers of contour points on each contour line, and generating an interpolation curve based on each set of contour points, includes: determining the point number of each contour point on each contour line, determining multiple contour points corresponding to any identical point number in the multiple contour lines as a set of contour points, and using a spline interpolation algorithm to fit each set of contour points to obtain the interpolation curve corresponding to each set of contour points.

[0007] In some embodiments of this application, determining multiple target trajectory points of multiple grid points of each interpolation curve based on a preset wave number, a preset function, a first number of multiple interpolation curves, and a second number of grid points in each interpolation curve includes: determining the curve number corresponding to each interpolation curve; calculating the target number corresponding to each interpolation curve based on the preset function, the preset wave number, the first number, the second number, and the curve number of each interpolation curve; and determining the grid point corresponding to any target number on the interpolation curve as the target trajectory point.

[0008] In some embodiments of this application, the calculation method of the target number further includes: obtaining a preset trajectory function, and calculating the target number corresponding to each interpolation curve based on the preset trajectory function, the second quantity, and the curve number of each interpolation curve.

[0009] In some embodiments of this application, the step of calculating the target number corresponding to each interpolation curve based on the preset trajectory function, the second quantity, and the curve number of each interpolation curve includes: calculating the function value of each interpolation curve in the preset trajectory function based on the curve number of each interpolation curve, and calculating the target number corresponding to each interpolation curve based on the second quantity and the function value of each interpolation curve.

[0010] In some embodiments of this application, calculating the posture of the robotic arm passing through each target trajectory point based on the coordinates of each target trajectory point includes: determining multiple neighboring grid points corresponding to each target trajectory point on multiple interpolation curves corresponding to each target trajectory point, and calculating the posture of the robotic arm passing through the target trajectory point based on the coordinates of any target trajectory point and the coordinates of the multiple neighboring grid points corresponding to the target trajectory point.

[0011] In some embodiments of this application, calculating the posture of the robotic arm passing through the target trajectory point based on the coordinates of the target trajectory point and the coordinates of multiple neighboring grid points corresponding to the target trajectory point includes: calculating the target normal vector and tangent vector of the target trajectory point based on the coordinates of the target trajectory point and the coordinates of multiple neighboring grid points corresponding to the target trajectory point; calculating the target vector of the target trajectory point based on the target normal vector and the tangent vector; and calculating the posture of the target trajectory point based on the target vector, the tangent vector, and the target normal vector.

[0012] In some embodiments of this application, the plurality of neighboring grid points include the previous grid point, the next grid point on the interpolation curve to which any target trajectory point belongs, and the target grid point corresponding to the next interpolation curve of the interpolation curve to which the target trajectory point belongs, wherein the point number of the target grid point is the same as the target number of any target trajectory point.

[0013] In some embodiments of this application, calculating the target normal vector and tangent vector of any target trajectory point based on the coordinates of any target trajectory point and the coordinates of multiple neighboring grid points corresponding to the target trajectory point includes: calculating a first difference vector of the target trajectory point based on the coordinates of the target trajectory point and the coordinates of the previous grid point of the target trajectory point on the interpolation curve to which it belongs; calculating a second difference vector of the target trajectory point based on the coordinates of the target trajectory point and the coordinates of the next grid point of the target trajectory point on the interpolation curve to which it belongs; calculating a tangent vector of the target trajectory point based on the coordinates of the target trajectory point and the coordinates of the target grid point of the target trajectory point; and calculating the target normal vector of the target trajectory point based on the first difference vector, the second difference vector, and the tangent vector.

[0014] In some embodiments of this application, obtaining multiple contour lines of a surface model includes: modeling the surface model to obtain a virtual model, and extracting the multiple contour lines from the virtual model.

[0015] Through the above implementation method, the surface model can be reconstructed using all interpolation curves corresponding to multiple sets of contour points. Based on the preset number of waves, preset function, a first number of multiple interpolation curves, and a second number of grid points in each interpolation curve, multiple target trajectory points of multiple grid points of each interpolation curve are determined. The target motion trajectory is automatically generated based on these multiple target trajectory points, without relying on manual drawing, thus saving time and improving the efficiency of target motion trajectory generation. Since the interpolation curves are obtained through interpolation methods rather than manual drawing, the consistency of the intervals between multiple waveforms in the target motion trajectory and the accuracy and continuity of each target trajectory point can be ensured. Because the target motion trajectory is calculated using multiple contour lines of a virtual model corresponding to the surface model, and these contour lines accurately reflect the contour features of the surface model, the fit between the target motion trajectory and the surface model can be ensured. When controlling the robotic arm to polish the surface model according to the target motion trajectory and the posture corresponding to each target trajectory point, the uniformity and accuracy of the polishing can be ensured, thereby improving the polishing effect. Attached Figure Description

[0016] Figure 1This is an application scenario diagram of the surface model polishing method provided in one embodiment of this application.

[0017] Figure 2 This is a flowchart of a surface model polishing method provided in an embodiment of this application.

[0018] Figure 3 This is a schematic diagram of a curved surface model provided in an embodiment of this application.

[0019] Figure 4 This is a schematic diagram of multiple outlines provided in an embodiment of this application.

[0020] Figure 5 This is a schematic diagram of a surface model 40 restored by multiple interpolation curves according to an embodiment of this application.

[0021] Figure 6 This is a schematic diagram of an interpolation curve provided in an embodiment of this application.

[0022] Figure 7 This is a comparison diagram of the target motion trajectory corresponding to different numbers of grid points provided in an embodiment of this application.

[0023] Figure 8 This is a schematic diagram of the target motion trajectory provided in an embodiment of this application.

[0024] Figure 9 This is a schematic diagram of the target motion trajectory and the attitude of each target trajectory point provided in an embodiment of this application.

[0025] Figure 10 This is a flowchart of determining target trajectory points provided in an embodiment of this application.

[0026] Figure 11 This is a flowchart of a method for calculating the target number provided in another embodiment of this application.

[0027] Figure 12 This is a waveform diagram of a preset trajectory function provided in an embodiment of this application.

[0028] Figure 13 This is a schematic diagram of a target motion trajectory generated according to a preset trajectory function, provided in an embodiment of this application.

[0029] Figure 14 This is a flowchart of a method for generating a target motion trajectory provided in an embodiment of this application.

[0030] Figure 15 This is a schematic diagram illustrating the calculation of the first difference vector, the second difference vector, the tangent vector, and the target normal vector provided in an embodiment of this application.

[0031] Figure 16This is a structural diagram of an electronic device 10 provided in an embodiment of this application. Detailed Implementation

[0032] To make the objectives, technical solutions, and advantages of this application clearer, the application will be described in detail below with reference to the accompanying drawings and specific embodiments.

[0033] It should be noted that 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 represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The terms "first," "second," "third," "fourth," etc. (if present) in the specification, claims, and drawings of this application are used to distinguish similar objects, not to describe a specific order or sequence.

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

[0035] In manufacturing, to remove machining marks (such as tool marks) from the surface of curved models, it is necessary to control a robotic arm to polish the curved model according to a target motion trajectory. However, the generation of the target motion trajectory requires manual drawing, which is a very complex and time-consuming process, resulting in low efficiency in generating the target motion trajectory.

[0036] In addition, because manually drawn target motion trajectories cannot guarantee the consistency of the intervals between multiple waveforms in the target motion trajectory as well as the accuracy and continuity of each point, the grinding density is uneven, which affects the grinding effect.

[0037] To address the aforementioned technical problems, this application provides a surface model polishing method that improves the efficiency of generating target motion trajectories and the polishing effect. The surface model polishing method provided in this application can be applied to one or more electronic devices.

[0038] like Figure 1The diagram illustrates an application scenario of a surface model polishing method provided in an embodiment of this application. In this embodiment, the electronic device 10 can calculate multiple contour lines of the surface model 30 to obtain the target motion trajectory of the robotic arm 20 polishing the surface model 30 and the posture of each target trajectory point. Based on the target motion trajectory and the posture of each target trajectory point, the robotic arm 20 is controlled to polish the surface model 30. The calculation steps for the target motion trajectory can be found in steps S11-S15 below. The electronic device 10 and the robotic arm 20 can be connected via a wired connection or via wireless communication such as Wireless Fidelity (Wi-Fi) or Bluetooth. For example, the electronic device 10 can control the robotic arm 20 to use a grinding wheel to polish the surface model 30.

[0039] The electronic device 10 can be a computer device, mobile phone, tablet computer, or industrial personal computer (IPC), etc. This application embodiment does not impose any restrictions on the specific type of electronic device 10.

[0040] The robotic arm 20 is a mechanical device used to perform various tasks. It can move and manipulate objects in space, such as grinding them. The robotic arm 20 can consist of multiple joints and can be precisely controlled by computer equipment or industrial control computers.

[0041] The curved surface model 30 refers to a model with a non-fixed curvature (the curvature varies continuously from 0 to 0.51 / mm). For example, the curved surface model 30 can be a model with a length of 110 to 160 mm, a width of 110 to 160 mm, and a height of 70 to 110 mm.

[0042] like Figure 2 The diagram shown is a flowchart of a surface model polishing method provided in an embodiment of this application. Depending on different needs, the order of the steps in this flowchart can be adjusted according to actual requirements, and some steps can be omitted. The main body executing the method is... Figure 1 Electronic device 10.

[0043] S11, obtain multiple contour lines of surface model 30.

[0044] In some embodiments, the surface model 30 can be a model with a non-fixed curvature (curvature continuously varying within a range of 0–0.5 L / mm). For example, the surface model 30 can be a model with a length of 110–160 mm, a width of 110–160 mm, and a height of 70–110 mm. Figure 3 The image shown is a schematic diagram of a surface model provided in an embodiment of this application.

[0045] In other embodiments of this application, Figure 3 The surface model 30 in this application is only an example and is not limited to this in actual applications. This application does not impose any restrictions on the surface model 30.

[0046] In other embodiments of this application, multiple contour lines refer to curves used to describe the contours of the surface model 30. The electronic device 10 acquires multiple contour lines of the surface model 30 by: scanning the surface model 30 using scanning technology (such as 3D laser scanning technology) to obtain features such as the shape and size of the surface model 30; modeling based on the shape and size features of the surface model 30 to obtain a virtual model of the surface model 30; and extracting multiple contour lines from the virtual model. The multiple contour lines can be selected by the user or extracted using a contour extraction tool or command. This application does not limit the method of contour line extraction. For example, the electronic device 10 can receive a contour extraction command from the user and use an edge detection algorithm (such as the Canny algorithm, Sobel algorithm, and Laplace algorithm) to extract multiple contour lines from the virtual model; or, the electronic device 10 can extract multiple contour lines from the virtual model using a contour line extraction function (such as the findContours() function). The number of contour lines can be determined by the surface model 30.

[0047] For example, if the shape of surface model 30 is like Figure 3 As shown, the number of the multiple contour lines can be three.

[0048] In some embodiments of this application, each contour line includes multiple contour points with different point numbers. The number n of contour points on each contour line and the point spacing between any two contour points can be set by the user, and this application does not impose any restrictions on this. The number of contour points on each contour line can be the same.

[0049] For example, such as Figure 4 The diagram shown is a schematic diagram of multiple contour lines provided in an embodiment of this application. Figure 4 The device includes three contour lines: a first contour line P1, a second contour line P2, and a third contour line P3. Each of the three contour lines P1, P2, and P3 is composed of n contour points, where n can be set arbitrarily and is not limited in this application. For example, n can be greater than or equal to 2000. For example, the distance between any two contour points on each contour line can be less than or equal to 5.9 mm.

[0050] In some embodiments of this application, the electronic device 10 can construct one or more three-dimensional coordinate systems, so that the virtual model of the curved surface model 30 is located in one or more three-dimensional coordinate systems. If there are multiple three-dimensional coordinate systems, the multiple three-dimensional coordinate systems can be parallel to each other. The origin, the direction, unit, positive axis, and negative axis of the horizontal axis (x-axis), the vertical axis (y-axis), and the vertical axis (z-axis) in the three-dimensional coordinate system can all be set by the user, and this application does not impose any restrictions on this. The coordinates of each contour point are coordinates in the three-dimensional coordinate system. For example, the coordinates of each contour point include the horizontal coordinate, the vertical coordinate, and the vertical coordinate. The horizontal coordinate of each contour point is the coordinate of the contour point perpendicular to the horizontal axis in the three-dimensional coordinate system, the vertical coordinate of each contour point is the coordinate of the contour point perpendicular to the vertical axis in the three-dimensional coordinate system, and the vertical coordinate of each contour point is the coordinate of the contour point perpendicular to the vertical axis in the three-dimensional coordinate system.

[0051] For example, following the above embodiments, if the surface model 30 includes a first contour line P1, a second contour line P2, and a third contour line P3, and the first contour line P1, the second contour line P2, and the third contour line P3 are each composed of 2000 contour points, as shown in Table 1, which is an example of the coordinates of the first contour line P1 provided in an embodiment of this application.

[0052] Table 1

[0053]

[0054] For example, following the above embodiments, Table 2 shows an example of the coordinates of the second contour line P2 provided in an embodiment of this application.

[0055] Table 2

[0056]

[0057] For example, following the above embodiments, as shown in Table 3, is an example of the coordinates of the third contour line P3 provided in an embodiment of this application.

[0058] Table 3

[0059]

[0060] S12, based on the point number of the contour points on each contour line, determine multiple sets of contour points for multiple contour lines, and generate an interpolation curve based on each set of contour points.

[0061] In some embodiments of this application, before determining multiple sets of contour points on multiple contour lines based on the point numbers of contour points on each contour line, the electronic device 10 can number the contour points on each contour line so that each contour point on each contour line has a corresponding point number. The method of numbering the contour points on multiple contour lines can be set by the user and is not limited in this application.

[0062] In some embodiments of this application, a set of contour points refers to multiple contour points with the same point number on multiple contour lines.

[0063] In some embodiments of this application, the electronic device 10 determines multiple sets of contour points for multiple contour lines based on the point numbers of contour points on each contour line, and generates an interpolation curve based on each set of contour points. This includes: the electronic device 10 determining the point number of each contour point on each contour line, and determining multiple contour points corresponding to any given point number across multiple contour lines as a set of contour points, where each contour point in each set has the same point number; the electronic device 10 then uses a spline interpolation algorithm to fit each set of contour points to obtain the interpolation curve corresponding to each set of contour points. Since a set of contour points is formed by selecting one contour point from each contour line based on a point number, the number of the multiple sets of contour points is the same as the number n of contour points on each contour line. For example, when there are n contour points on a contour line, the number of the multiple sets of contour points is also n.

[0064] For example, following the above embodiments, if multiple contour lines include a first contour line P1, a second contour line P2, and a third contour line P3, for any point numbered i, contour points numbered i can be selected from the first contour line P1, the second contour line P2, and the third contour line P3 respectively as a group of contour points (3 contour points).

[0065] In some embodiments of this application, the method of fitting each set of contour points using a spline interpolation algorithm can be found in related technologies. Since a set of contour points can generate one interpolation curve, the first number of multiple interpolation curves obtained based on multiple sets of contour points is the same as the number of the multiple sets of contour points (n) or the number of contour points on each contour line (n). For example, if the number of contour points on each contour line (or the number of multiple sets of contour points) is n = 2000, the first number of multiple interpolation curves obtained based on the multiple sets of contour points is n = 2000. Since each interpolation curve can approximate and approximate the surface model 30, the surface model 30 can be reconstructed through the multiple interpolation curves. For example, as... Figure 5 The image shown is a schematic diagram of a surface model 40 reconstructed from multiple interpolation curves according to an embodiment of this application. From... Figure 5 As can be seen, the restored surface model 40 is basically the same as the surface model 30.

[0066] In some embodiments of this application, each interpolation curve includes multiple grid points. When the second number m of grid points in the multiple interpolation curves is greater than or equal to 2000, the continuity of the generated target motion trajectory can be ensured (see the description of step S13 below). Where m = preset wave number * preset wave period * 2 * 100, the preset wave number is the number of waves on each interpolation curve, and the preset wave period is the length or width of each wave. Both the preset wave number and the preset wave period can be set independently, and this application does not impose any restrictions on them. For example, the preset wave number can be greater than or equal to 20, and the preset wave period can be greater than or equal to 0.5.

[0067] For example, following the above embodiments, such as Figure 6 The image shown is a schematic diagram of an interpolation curve provided in an embodiment of this application. Figure 6 In the diagram, P1i, P2i, and P3i form a set of contour points. P1i represents the i-th contour point on the first contour line P1, P2i represents the i-th contour point on the second contour line P2, and P3i represents the i-th contour point on the third contour line P3. Multiple grid points are inserted between P1i and P2i and between P2i and P3i. The grid points between P1i, P2i, P3i, between P1i and P2i, and between P2i and P3i are arranged to form the interpolation curve of the set of contour points P1i, P2i, and P3i.

[0068] In some embodiments of this application, the electronic device 10 can number the grid points on each interpolation curve, so that each grid point on each interpolation curve has a corresponding point number. The method of numbering the grid points on multiple interpolation curves is the same as the method of numbering the contour points on multiple contour lines, so this application will not repeat the description.

[0069] For example, following the above embodiments, if the number of multiple interpolation curves is 2000 and the number of grid points on each interpolation curve is 4000 (greater than 2000), as shown in Table 4, it is an example of the abscissa of each grid point on each interpolation curve provided in an embodiment of this application.

[0070] Table 4

[0071]

[0072] For example, following the above embodiments, if the number of interpolation curves is 2000 and the number of grid points on each interpolation curve is 4000, as shown in Table 5, which is an example of the ordinate of each grid point on each interpolation curve provided in an embodiment of this application.

[0073] Table 5

[0074]

[0075]

[0076] For example, following the above embodiments, if the number of interpolation curves is 2000 and the number of grid points on each interpolation curve is 4000, as shown in Table 6, which is an example of the vertical coordinate of each grid point on each interpolation curve provided in an embodiment of this application.

[0077] Table 6

[0078]

[0079]

[0080] S13. Based on the preset number of waves, preset function, first number of multiple interpolation curves, and second number of grid points in each interpolation curve, determine multiple target trajectory points of multiple grid points of each interpolation curve, and generate target motion trajectory based on multiple target trajectory points.

[0081] In some embodiments of this application, the first quantity is the total number of interpolation curves, and the second quantity is the total number of grid points in each interpolation curve. The description of the preset wave quantity can be found in the detailed description in step S12. The preset function can be a waveform function, including, but not limited to, the sin function and the cos function. The target trajectory point is the grid point that constitutes the target motion trajectory among the multiple grid points of each interpolation curve. Since the target trajectory point corresponds one-to-one with the interpolation curve, the number of target trajectory points is the same as the first quantity of the interpolation curves. For example, if the first quantity of the interpolation curves is n = 2000, then the number of target trajectory points is n = 2000.

[0082] In some embodiments of this application, the total number of grid points constituting multiple interpolation curves affects the continuity of the target motion trajectory. For example... Figure 7 The image shown is a comparison diagram of target motion trajectories corresponding to different numbers of grid points provided in an embodiment of this application. (The diagram is repeated twice in the original text.) Figure 7 (a) and Figure 7 A target trajectory point is marked in (b) of the image. Figure 7 (a) and Figure 7 (b) in the examples includes multiple interpolation curves. Each interpolation curve consists of a column of grid points or a row of grid points. The light-colored grid points on each interpolation curve represent the target trajectory points. The (light-colored) curve formed by the arrangement of multiple light-colored target trajectory points on multiple interpolation curves represents the target motion trajectory. Figure 7 The number of interpolation curves in (b) is greater than Figure 7The number of interpolation curves in (a) of the equation. Therefore, constituting... Figure 7 In (b), the total number of grid points for the multiple interpolation curves is greater than the number of points constituting the curves. Figure 7 The total number of grid points for the multiple interpolation curves in (a) of the diagram. Figure 7 The interval between multiple target trajectory points in (b) is less than Figure 7 The intervals between multiple target trajectory points in (a) are shown. By comparison, it can be seen that... Figure 7 The target trajectory in (b) is relative to Figure 7 The target trajectory in (a) is more continuous.

[0083] In some embodiments of this application, the electronic device 10 determines the target motion trajectory as the curve formed by arranging all the target trajectory points. For example, as Figure 8 The image shown is a schematic diagram of a target motion trajectory provided in an embodiment of this application. From... Figure 8 It can be seen that the overall shape of the target's trajectory is basically the same as the overall shape of the surface model 30. Figure 8 The target's trajectory is on the virtual model and closely matches it.

[0084] S14, Calculate the posture of the robotic arm 20 as it passes through each target trajectory point, based on the coordinates of each target trajectory point.

[0085] In some embodiments of this application, each target trajectory point has a corresponding posture, and the posture of the robotic arm 20 passing through each target trajectory point is the orientation or direction of the robotic arm 20 at each target trajectory point. The posture of each target trajectory point includes multiple Euler angles.

[0086] S15, based on the target motion trajectory and the posture corresponding to each target trajectory point, control the robotic arm 20 to polish the curved surface model 30.

[0087] In some embodiments of this application, the robotic arm 20 can hold grinding tools such as grinding wheels. The electronic device 10 can analyze the coordinates and posture of each target trajectory point in the target motion trajectory according to algorithms such as inverse kinematics to obtain operation commands. The electronic device 10 then sends these operation commands to the robotic arm 20 to control it to use the grinding tools to grind the curved surface model 30, thereby removing machining marks (e.g., tool marks) from the curved surface model 30. The method for analyzing the coordinates and posture of each target trajectory point in the target motion trajectory using algorithms such as inverse kinematics can be found in related technologies. Multiple operation commands can be provided, and each command can include the position and posture of the grinding tool on the robotic arm 20.

[0088] For example, following the above embodiments, as shown in Table 7, there are examples of the coordinates and attitudes of the target trajectory points provided in an embodiment of this application.

[0089] Table 7

[0090]

[0091] For example, such as Figure 9 The diagram shown is a schematic representation of the target motion trajectory and the attitude of each target trajectory point according to an embodiment of this application. Figure 9 In the process, different depths on the target motion trajectory represent different postures of the robotic arm 20. The electronic device 10 (such as an industrial control computer) can control the robotic arm 20 to uniformly polish the curved surface model 30 according to the target motion trajectory and the posture of each target trajectory point.

[0092] In this embodiment, because related technologies require manual drawing of the target motion trajectory of the robotic arm grinding the curved surface model 30, the process involves loading a virtual model of the curved surface model 30, setting a coordinate system, manually drawing and outlining the target motion trajectory, mapping the target motion trajectory to the virtual model to determine if it fits the virtual model, and calculating the posture of each target trajectory point. Each time a target motion trajectory is generated, executing the above process takes at least 4 hours. If it is necessary to change the target motion trajectory or the number of target trajectory points, even more time is required. The generation efficiency of the target motion trajectory is poor. Since the target motion trajectory is drawn manually, the intervals of the waves in each target motion trajectory are easily inconsistent, resulting in uneven grinding density.

[0093] To address the aforementioned technical issues, this application reconstructs the surface model 30 using all interpolation curves corresponding to multiple sets of contour points. Based on a preset number of waves, a first number of interpolation curves, a second number of grid points in each interpolation curve, and a preset function, target trajectory points are determined from multiple grid points of each interpolation curve. The target motion trajectory is then automatically generated based on these multiple target trajectory points, without relying on manual drawing. Each time a target motion trajectory is generated, the steps in this embodiment require only the time to modify the program plus 1 / 360 hours. Comparison shows that the time required to generate the target motion trajectory in this application is far less than the time spent generating the target motion trajectory and the pose of each target trajectory point in related technologies, thus saving time and improving the efficiency of target motion trajectory generation. Since the interpolation curves are obtained through interpolation and utilize a sufficient number of grid points, eliminating the need for manual outlining, the consistency of the intervals between multiple waveforms in the target motion trajectory and the accuracy and continuity of each target trajectory point can be ensured. Since the target motion trajectory is calculated using multiple contour lines of the virtual model corresponding to the curved surface model 30, and these contour lines accurately reflect the contour features of the curved surface model 30, it ensures that the target motion trajectory fits the curved surface model 30. When controlling the robotic arm 20 to polish the curved surface model 30 based on the target motion trajectory and the posture corresponding to each target trajectory point, it ensures the uniformity and accuracy of the polishing, thereby improving the polishing effect.

[0094] In some embodiments of this application, the electronic device 10 determines multiple target trajectory points of multiple grid points of each interpolation curve based on a preset number of waves, a preset function, a first number of multiple interpolation curves, and a second number of grid points in each interpolation curve. For example... Figure 10 The diagram shown is a flowchart of determining a target trajectory point according to an embodiment of this application, including the following steps:

[0095] S131, determine the curve number corresponding to each interpolation curve.

[0096] In some embodiments of this application, the point number of each set of contour points corresponding to each interpolation curve can be determined as the curve number of the interpolation curve. For example, if the point number i = 3 of a set of contour points, then the curve number of the interpolation curve corresponding to that set of contour points is 3.

[0097] S132, calculate the target number corresponding to each interpolation curve based on the preset function for the preset number of waves, the first number, the second number, and the curve number of each interpolation curve.

[0098] In some embodiments of this application, if the preset function is a sin function or a cos function, the calculation method of the operation value can refer to the following formula (1) or (2):

[0099]

[0100]

[0101] Where i represents the curve number of the i-th interpolation curve, i = 1, 2, ..., n, j represents the target number corresponding to the i-th interpolation curve, m represents the second quantity, sin or cos represents the preset function, num represents the preset wave number, π represents pi, and n represents the first quantity. For example, m and n can both be any value greater than or equal to 2000, π can be 3.14, and num can be 5, 10, or 20, etc.

[0102] For example, if the preset function is the sin function, when m = 4000, n = 2000, and num = 20, the target number on the first interpolation curve (i = 1) is... The target number on the second interpolation curve (i=2) If the preset function is a cosine function, when m = 4000, n = 2000, and num = 20, the target number on the first interpolation curve (i = 1) is... The target number on the second interpolation curve (i=2)

[0103] In other embodiments of this application, since different preset functions will cause the target motion trajectory to present different shapes, the preset function can be set according to the desired shape of the target motion trajectory, and this application does not impose any restrictions on this. When the preset function is a sin function, the target number j on the first interpolation curve (i=1) is 2125, while when the preset function is a cos function, the target number j on the first interpolation curve (i=1) is 3996. It can be seen that there is a difference between the size of the target number calculated by different preset functions.

[0104] S133, determine the grid point on the interpolation curve corresponding to any target number as the target trajectory point.

[0105] In some embodiments of this application, the method for determining the target trajectory point can refer to the following formula (3):

[0106] WavePoint(i) = S(i,j); (3)

[0107] Where i represents the curve number of the i-th interpolation curve, WavePoint(i) and S(i,j) both represent the target trajectory points on the i-th interpolation curve, S represents the interpolation curve, and j represents the target number of the i-th interpolation curve.

[0108] For example, following the above embodiment, if the target number corresponding to the first interpolation curve (i=1) is j=2125, the 2125th grid point on the first interpolation curve is determined as a target trajectory point WavePoint(1)=S(1,2125); if the target number corresponding to the second interpolation curve (i=2) is j=2250, the 2250th grid point on the second interpolation curve is determined as another target trajectory point WavePoint(2)=S(2,2250).

[0109] In other embodiments of this application, the target trajectory can be changed by altering a preset function (e.g., changing the shape of the target trajectory). Figure 11 The diagram shown is a flowchart of a method for calculating a target number according to another embodiment of this application, including the following steps:

[0110] S134, obtain the preset trajectory function.

[0111] In some embodiments of this application, the preset trajectory function wave(x) can be set by the user. For example, as... Figure 12 The image shown is a waveform diagram of a preset trajectory function provided in an embodiment of this application. From... Figure 12 As can be seen, the waveform of the preset trajectory function is in the shape of an "8".

[0112] S135, calculate the target number corresponding to each interpolation curve based on the preset trajectory function, the second quantity, and the curve number of each interpolation curve.

[0113] In some embodiments of this application, the electronic device 10 calculates the target number corresponding to each interpolation curve based on the preset trajectory function, the second quantity, and the curve number of each interpolation curve, including: the electronic device 10 calculates the function value of each interpolation curve in the preset trajectory function based on the curve number of each interpolation curve, and calculates the target number corresponding to each interpolation curve based on the second quantity and the function value of each interpolation curve.

[0114] For example, following the above embodiments, the method for calculating the target number can also refer to the following formula (4):

[0115]

[0116] Where i represents the curve number of the i-th interpolation curve, j represents the target number corresponding to the i-th interpolation curve, m represents the second quantity, and wave(i) represents the function value of the i-th interpolation curve obtained by substituting i into wave(x). For example, m can be any value greater than or equal to 2000.

[0117] For example, such as Figure 13The image shown is a schematic diagram of a target motion trajectory generated according to a preset trajectory function, provided in an embodiment of this application. From... Figure 13 As can be seen from this, according to... Figure 12 The target motion trajectory generated by the waveform of the preset trajectory function shown also presents an "8" shape.

[0118] In some embodiments of this application, the electronic device 10 calculates the posture of the robotic arm 20 as it passes through each target trajectory point based on the coordinates of that point, such as... Figure 14 The diagram shown is a flowchart of a method for generating a target motion trajectory according to an embodiment of this application, including the following steps:

[0119] S141, determine multiple neighboring grid points corresponding to each target trajectory point on multiple interpolation curves corresponding to each target trajectory point.

[0120] In some embodiments of this application, the multiple interpolation curves corresponding to each target trajectory point include the interpolation curve to which each target trajectory point belongs and the next interpolation curve to which each target trajectory point belongs. Multiple neighboring grid points include the previous grid point, the next grid point on the interpolation curve to which each target trajectory point belongs, and the target grid point whose midpoint number in the next interpolation curve is the same as the target number of each target trajectory point. For example, if the target trajectory point on the i-th interpolation curve is S(i,j), and the curve number of the next interpolation curve to which the target trajectory point S(i,j) belongs is i+1, then the multiple neighboring grid points corresponding to the target trajectory point S(i,j) include the previous grid point S(i,j-1), the next grid point S(i,j+1), and the target grid point S(i+1,j) on the i-th interpolation curve to which the target trajectory point S(i,j) belongs, and the target grid point S(i+1,j) whose midpoint number in the (i+1)-th interpolation curve is the same as the target number j of each target trajectory point.

[0121] S142, calculate the posture of the robotic arm 20 as it passes through any target trajectory point based on the coordinates of any target trajectory point and the coordinates of multiple neighboring grid points corresponding to any target trajectory point.

[0122] In some embodiments of this application, the electronic device 10 calculates the posture of the robotic arm 20 passing through any target trajectory point based on the coordinates of any target trajectory point and the coordinates of multiple neighboring grid points corresponding to any target trajectory point. This includes: the electronic device 10 calculates the target normal vector and tangent vector of any target trajectory point based on the coordinates of any target trajectory point and the coordinates of multiple neighboring grid points corresponding to any target trajectory point; furthermore, the electronic device 10 calculates the target vector of any target trajectory point based on the target normal vector and tangent vector, and calculates the posture of any target trajectory point based on the target vector, tangent vector, and target normal vector.

[0123] Specifically, the electronic device 10 calculates the target normal vector and tangent vector of any target trajectory point based on the coordinates of any target trajectory point and the coordinates of multiple neighboring grid points corresponding to the target trajectory point. This includes: the electronic device 10 calculates a first difference vector of the target trajectory point based on the coordinates of the target trajectory point and the coordinates of the previous grid point of the target trajectory point on the interpolation curve to which it belongs; calculates a second difference vector of the target trajectory point based on the coordinates of the target trajectory point and the coordinates of the next grid point of the target trajectory point on the interpolation curve to which it belongs; furthermore, the electronic device 10 calculates the tangent vector of the target trajectory point based on the coordinates of the target trajectory point and the coordinates of the target grid point of the target trajectory point; and calculates the target normal vector of the target trajectory point based on the first difference vector, the second difference vector, and the tangent vector.

[0124] For example, the calculation method for the first difference vector can be referred to as formula (5) below, the calculation method for the second difference vector can be referred to as formula (6) below, the calculation method for the tangent vector can be referred to as formula (7) below, and the calculation formula for the target normal vector can be referred to as formulas (8)-(10) below:

[0125] V i1 =P s(i,j-1) -P s(i,j) (5)

[0126] V i2 =P s(i,j+1) -P s(i,j) (6)

[0127] TangentV i =P s(i+1,j) -P s(i,j) (7)

[0128] n i1 =TangentV i ×V i1 (8)

[0129] n i2 =V i2 ×TangentV i (9)

[0130]

[0131] Where i represents the curve number of the i-th interpolation curve, j represents the target number corresponding to the i-th interpolation curve, and V i1 Let P represent the first difference vector. s(i,j-1) P represents the coordinates of the target trajectory point on the i-th interpolation curve. S(i,j-1)V represents the coordinates of the target trajectory point S(i,j) on the previous grid point on the i-th interpolation curve. i2 Let P represent the second difference vector. s(i,j+1) TangentV represents the coordinates of the next grid point on the i-th interpolation curve of the target trajectory point S(i,j). i Let P represent the tangent vector. s(i+1,j) n represents the coordinates of the target grid point. i1 Let n represent the first initial normal vector of the target trajectory point S(i,j). i2 N represents the second initial normal vector of the target trajectory point S(i,j). i This represents the target normal vector.

[0132] For example, if i = 1 and j = 2125, then the target trajectory point is S(1, 2125). If the coordinates P of the target trajectory point S(1, 2125) are... S(1,2125) = [39.977 0.4508 -47.110], the coordinates P of the previous grid point on the interpolation curve of the target trajectory point S(1, 2125). S(1,2124) = [39.6878 0.45439 -46.1527], then the first difference vector V of the target trajectory point S(1, 2125) 11 =[-0.28920.003590.9573] =[39.6878 0.45439 -46.1527]-[39.9770.4508 -47.110]. If the target trajectory point S(1, 2125) has coordinates P of the next grid point on its corresponding interpolation curve. s(1,2126) = [40.266 0.44721 -48.0673], then the second difference vector V of the target trajectory point S(1, 2125) 12 =[0.2890 -0.00359 -0.9573] =[40.266 0.44721 -48.0673]-[39.977 0.4508 -47.110]. If the coordinates P of the target grid point S(2, 2125) of any target trajectory point... s(2,2125) =[40.980037 1.4397 -46.9618], then the tangent vector of the target trajectory point S(1, 2125) is TangentV1 = [0.003037 0.9889 0.1482] = [40.980037 1.4397 -46.9618] - [39.977 0.4508 -47.110].

[0133] The first initial normal vector of the target trajectory point S(1, 2125) is n 11 =TangentV1×V 11=[0.9461 -0.045 0.2860] =[0.003037 0.9889 0.1482]×[-0.2892 0.00359 0.9573], the second initial normal vector of the target trajectory point S(1, 2125) is n. 12 =V 12 ×TangentV1=[0.9462 -0.045 0.2859]=[0.2890-0.00359 -0.9573]×[0.003037 0.9889 0.1482],Target normal vector of target trajectory point S(1, 2125)

[0134]

[0135] For example, such as Figure 15 The diagram shown is a schematic representation of the calculation of the first difference vector, the second difference vector, the tangent vector, and the target normal vector provided in an embodiment of this application. Figure 14 In the diagram, S(i,j) represents the target trajectory point on the i-th interpolation curve, S(i,j-1) represents the grid point preceding the target trajectory point S(i,j) on the i-th interpolation curve, S(i,j+1) represents the grid point following the target trajectory point S(i,j) on the i-th interpolation curve, and S(i+1,j) represents the target grid point corresponding to the target trajectory point S(i,j). V i1 V represents the first difference vector of the target trajectory points S(i,j). i2 TangentV represents the second difference vector of the target trajectory point S(i,j). i N represents the tangent vector of the target trajectory point S(i,j). i Let S(i,j) represent the target normal vector of the target trajectory point S(i,j).

[0136] For example, following the above embodiments, the method for calculating the target vector can refer to the following formula (11):

[0137] ThirdV i =TangentV i ×N i (11)

[0138] Among them, ThirdV i V represents the target vector of the target trajectory point on the i-th interpolation curve. i N represents the tangent vector of the target trajectory point on the i-th interpolation curve. iLet represent the target normal vector of the target trajectory point on the i-th interpolation curve. If i = 1, when TangentV1 = [0.003037 0.9889 0.1482] and N1 = [0.9462 -0.045 0.2859], ThirdV1 = [0.2896 0.1394 -0.9359] = [0.003037 0.9889 0.1482] × [0.9462 -0.045 0.2859].

[0139] For example, following the above embodiments, the pose of each target trajectory point can be a vector composed of multiple Euler angles, and the method for calculating the pose of each target trajectory point can refer to the following formula (12):

[0140]

[0141] in, R represents the pose of the target trajectory point on the i-th interpolation curve. xi R represents the Euler angle of rotation about the X-axis in the pose of the target trajectory point on the i-th interpolation curve. yi R represents the Euler angle of rotation about the Y-axis in the pose of the target trajectory point on the i-th interpolation curve. zi ThirdV represents the Euler angle of rotation about the Z-axis in the pose of the target trajectory point on the i-th interpolation curve. i V represents the target vector of the target trajectory point on the i-th interpolation curve. i N represents the tangent vector of the target trajectory point on the i-th interpolation curve. i Let represent the target normal vector of the target trajectory point on the i-th interpolation curve.

[0142] For example, if i = 1, when ThirdV1 = [0.2896 0.1394 -0.9359], TangentV1 = [0.003037 0.9889 0.1482], and N1 = [0.9462 -0.045 0.2859],

[0143] like Figure 16 The diagram shown is a structural diagram of an electronic device 10 provided in an embodiment of this application. Figure 16 As shown, the electronic device 10 may include a communication module 101, a memory 102, a processor 103, an input / output (I / O) interface 104, and a bus 105. The processor 103 is coupled to the communication module 101, the memory 102, and the input / output interface 104 via the bus 105.

[0144] Communication module 101 may include a wired communication module and / or a wireless communication module. The wired communication module may provide one or more wired communication solutions such as Universal Serial Bus (USB) and Controller Area Network (CAN). The wireless communication module may provide one or more wireless communication solutions such as Wireless Fidelity (Wi-Fi), Bluetooth (BT), mobile communication networks, frequency modulation (FM), near-field communication (NFC), and infrared (IR).

[0145] The memory 102 may include one or more random access memories (RAM) and one or more non-volatile memories (NVM). The random access memory may include static random-access memory (SRAM), dynamic random-access memory (DRAM), synchronous dynamic random-access memory (SDRAM), double data rate synchronous dynamic random-access memory (DDRSDRAM), etc.

[0146] The memory 102 is used to store one or more computer programs. The one or more computer programs are configured to be executed by the processor 103. The one or more computer programs include multiple instructions that, when executed by the processor 103, can implement a surface model polishing method executed on the electronic device 10.

[0147] The processor 103 may include one or more processing units, such as an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), and / or a neural network processing unit (NPU).

[0148] The processor 103 provides computing and control capabilities. For example, the processor 103 is used to execute computer programs stored in the memory 102 to implement the above-described surface model polishing method.

[0149] The input / output interface 104 is used to provide a channel for user input or output. For example, the input / output interface 104 can be used to connect various input / output devices, such as a mouse, keyboard, touch device, display screen, etc., so that users can enter information or visualize information.

[0150] Bus 105 is used at least to provide a channel for communication between communication modules 101, memory 102, processor 103, and input / output interface 104 in electronic device 10.

[0151] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the electronic device 10. In other embodiments of this application, the electronic device 10 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements.

[0152] This application also provides a computer-readable storage medium storing a computer program, which includes program instructions. When the program instructions are executed, the method implemented can refer to the methods in the above embodiments of this application.

[0153] The computer-readable storage medium can be the internal memory of the electronic device described in the above embodiments, such as the hard disk or memory of the electronic device. Alternatively, the computer-readable storage medium can be an external storage device of the electronic device, such as a plug-in hard disk, Smart Media Card (SMC), Secure Digital (SD) card, or Flash Card.

[0154] In the embodiments provided in this application, it should be understood that the disclosed devices / electronic devices and methods can be implemented in other ways. For example, the device / electronic device embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual couplings or direct couplings or communication connections may be through some interfaces; indirect couplings or communication connections between devices or units may be electrical, mechanical, or other forms.

[0155] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present application, and should all be included in the scope of protection of the present application.

Claims

1. A method for polishing a curved surface model, characterized in that, The method includes: Obtain multiple contour lines of the surface model, where each contour line includes multiple contour points with different point numbers; Based on the point number of the contour points on each contour line, multiple sets of contour points for multiple contour lines are determined, and an interpolation curve is generated based on each set of contour points. Each interpolation curve includes multiple grid points. Based on the preset number of waves, the preset function, the first number of multiple interpolation curves, and the second number of grid points in each interpolation curve, multiple target trajectory points of multiple grid points of each interpolation curve are determined, and a target motion trajectory is generated based on the multiple target trajectory points; each target trajectory point has a corresponding attitude. Based on the coordinates of each target trajectory point, calculate the posture of the robotic arm as it passes through each target trajectory point; Based on the target motion trajectory and the posture corresponding to each target trajectory point, the robotic arm is controlled to polish the curved surface model.

2. The surface model polishing method as described in claim 1, characterized in that, The process of determining multiple sets of contour points for multiple contour lines based on the point numbers of contour points on each contour line, and generating an interpolation curve based on each set of contour points, includes: Determine the point number of each contour point on each contour line, and determine a group of contour points corresponding to any multiple contour points with the same point number in the multiple contour lines. The spline interpolation algorithm is used to fit each set of contour points to obtain the interpolation curve corresponding to each set of contour points.

3. The surface model polishing method as described in claim 1, characterized in that, The step of determining multiple target trajectory points of multiple grid points of each interpolation curve based on a preset number of waves, a preset function, a first number of multiple interpolation curves, and a second number of grid points in each interpolation curve includes: Determine the curve number corresponding to each interpolation curve; Based on the preset function, the target number corresponding to each interpolation curve is calculated for the preset number of waves, the first number, the second number, and the curve number of each interpolation curve. The grid point on the interpolation curve corresponding to any target number is determined as the target trajectory point.

4. The surface model polishing method as described in claim 3, characterized in that, The method for calculating the target number also includes: Obtain the preset trajectory function; Based on the preset trajectory function, the second quantity, and the curve number of each interpolation curve, calculate the target number corresponding to each interpolation curve.

5. The surface model polishing method as described in claim 4, characterized in that, The step of calculating the target number corresponding to each interpolation curve based on the preset trajectory function, the second quantity, and the curve number of each interpolation curve includes: Calculate the function value of each interpolation curve in the preset trajectory function based on the curve number of each interpolation curve; Based on the second quantity and the function value of each interpolation curve, calculate the target number corresponding to each interpolation curve.

6. The surface model polishing method as described in claim 1, characterized in that, The calculation of the robotic arm's posture as it passes through each target trajectory point, based on the coordinates of each target trajectory point, includes: On the multiple interpolation curves corresponding to each target trajectory point, determine multiple neighboring grid points corresponding to each target trajectory point; The posture of the robotic arm as it passes through any target trajectory point is calculated based on the coordinates of any target trajectory point and the coordinates of multiple neighboring grid points corresponding to that target trajectory point.

7. The surface model polishing method as described in claim 6, characterized in that, The step of calculating the posture of the robotic arm as it passes through any target trajectory point based on the coordinates of any target trajectory point and the coordinates of multiple neighboring grid points corresponding to that target trajectory point includes: Based on the coordinates of any target trajectory point and the coordinates of multiple neighboring grid points corresponding to the target trajectory point, calculate the target normal vector and tangent vector of the target trajectory point. Calculate the target vector of any target trajectory point based on the target normal vector and the tangent vector; The pose of any target trajectory point is calculated based on the target vector, the tangent vector, and the target normal vector.

8. The surface model polishing method as described in claim 7, characterized in that, The plurality of neighboring grid points include the previous grid point, the next grid point on the interpolation curve to which any target trajectory point belongs, and the target grid point corresponding to the next interpolation curve of the interpolation curve to which the target trajectory point belongs, wherein the point number of the target grid point is the same as the target number of any target trajectory point.

9. The surface model polishing method as described in claim 8, characterized in that, The step of calculating the target normal vector and tangent vector of any target trajectory point based on the coordinates of any target trajectory point and the coordinates of multiple neighboring grid points corresponding to the target trajectory point includes: Calculate the first difference vector of any target trajectory point based on the coordinates of any target trajectory point and the coordinates of the previous grid point on the interpolation curve to which the target trajectory point belongs; Calculate the second difference vector of any target trajectory point based on the coordinates of any target trajectory point and the coordinates of the next grid point on the interpolation curve to which the target trajectory point belongs; The tangent vector of any target trajectory point is calculated based on the coordinates of the target trajectory point and the coordinates of the target grid point of the target trajectory point, and the target normal vector of the target trajectory point is calculated based on the first difference vector, the second difference vector and the tangent vector.

10. The surface model polishing method as described in claim 1, characterized in that, The multiple contour lines for obtaining the surface model include: The surface model is modeled to obtain a virtual model, and the multiple contour lines are extracted from the virtual model.

Citation Information

Patent Citations

  • Curved surface model polishing method

    CN117161898A