A method, medium and device for planning a polishing path for a workpiece surface
Patent Information
- Application Number
- CN202410056362.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-12
- Publication Date
- 2026-10-09
- Estimated Expiration
- 2044-01-12
AI Technical Summary
[0003]因此,现有打磨方法还存在机器人在加工工件时适应性较低,同时打磨工件表面时会导致工件表面产生明显打磨纹理,影响表面光洁度的问题
[0004] Based on this, the purpose of this application is to provide a method, medium, and equipment for planning the grinding path of a workpiece surface, so as to solve at least one of the above-mentioned technical problems.
Smart Images

Figure CN118046256B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of intelligent robot technology, and in particular to a method, medium, and equipment for planning a grinding path on a workpiece surface. Background Technology
[0002] In the surface grinding process, different grinding paths are typically planned to cover the surface to be ground based on different grinding requirements. Currently, robotic grinding mainly involves simply cutting the surface into strips and then executing the cuts sequentially. This method tends to create noticeable scratches on the surface, affecting the smoothness of the finish. In contrast, manual grinding typically uses circular or small-amplitude oscillating motions to cover the surface. This method ensures a finer finish and reduces noticeable grinding marks, and is particularly common in mechanical surface polishing. Therefore, the surface coverage path can be planned using the same manual grinding methods as in robotic grinding to improve the grinding effect.
[0003] Therefore, existing grinding methods still have the problems of low adaptability of robots when processing workpieces, and the grinding of workpiece surfaces can cause obvious grinding textures, affecting the surface finish. Summary of the Invention
[0004] Based on this, the purpose of this application is to provide a method, medium, and equipment for planning the grinding path of a workpiece surface, so as to solve at least one of the above-mentioned technical problems.
[0005] In a first aspect, the present invention provides a method for planning a grinding path on a workpiece surface, comprising:
[0006] S1: Collect point cloud data of the workpiece surface to obtain the initial grinding path points;
[0007] S2: Based on the initial grinding path points, perform strip-shaped cutting to obtain several strip-shaped grinding paths;
[0008] S3: Determine whether the width of each strip-shaped grinding path is greater than the width threshold;
[0009] S4: If it is greater than the specified value, update to a circular polishing path; if it is not greater than the specified value, update to a swing polishing path. Combine these to obtain the final polishing path.
[0010] Further steps to update the circular polishing path include:
[0011] S41: Draw a circle with the initial polishing path point as the center and the preset length as the radius;
[0012] S42: Discretize each circle into several points to update the grinding path points, and connect all the updated grinding path points in sequence to obtain the circle grinding path.
[0013] Furthermore, step S42 includes:
[0014] Choose any grinding point on the first circle of each strip grinding path as the starting grinding point;
[0015] Connect other grinding points on the circle in a clockwise or counterclockwise direction from the starting grinding point until you return to the starting grinding point;
[0016] Continue connecting the starting polishing point to any other starting polishing point on the next circle until all polishing points on the path are connected, thus obtaining the circle polishing path.
[0017] Furthermore, the starting polishing point includes:
[0018] The starting polishing points on the circle are on the same horizontal line.
[0019] Further, step S42, the step of discretizing each circle into several points, includes:
[0020] The calculation formulas are shown in equations 1-1, 1-2, and 1-3:
[0021]
[0022] P i =P0+R z (θ i V r,0 1-2
[0023]
[0024] Where, N sample d represents the number of update polishing path points on a circle. interp P represents the distance between each update polishing path point on the circle. i Let P0 represent the i-th polishing point on the circumference, and V represent the center position of the circle. r,0 Let R represent a vector originating from the center of the circle, pointing in the positive x-axis direction, with a length equal to the radius. z (θ i ) represents a rotation about the positive z-axis. i Rotation matrix of angle.
[0025] Furthermore, the updated steps for the oscillating polishing path include:
[0026] S43: Obtain the midpoint between each initial polishing point;
[0027] S44: Based on the midpoint, two updated polishing path points are obtained by translating along the set positive and negative directions respectively, and all updated polishing path points are connected with the initial polishing path points in sequence to obtain the swing polishing path.
[0028] Further, step S44 includes:
[0029] The path planning formulas are shown in Equations 1-4 and 1-5:
[0030]
[0031]
[0032] Among them, P i,SwingUp P represents the i-th update polishing path point that oscillates along the positive direction of vector V. i,SwingDown Let d represent the i-th updated grinding path point that swings along the negative direction of vector V, where V represents the swing direction vector of the updated grinding path point, and d represents the swing amplitude.
[0033] Secondly, the present invention provides a robot polishing control method, comprising:
[0034] The final polishing path point is obtained by the method described in any one of the first aspects;
[0035] The robot's grinding trajectory is obtained by performing inverse joint calculations on each final grinding path point.
[0036] Thirdly, this application also provides a computer storage medium storing executable program code; the executable program code is used to execute the workpiece surface grinding path planning method according to any one of the first aspects or the robot grinding control method according to any one of the second aspects.
[0037] Fourthly, this application also provides a terminal device, including a memory and a processor; the memory stores program code that can be executed by the processor; the program code is used to execute the workpiece surface grinding path planning method according to any one of the first aspects or the robot grinding control method according to any one of the second aspects. Attached Figure Description
[0038] Figure 1 This is a flowchart illustrating a method for planning a grinding path on a workpiece surface according to an embodiment of the present invention.
[0039] Figure 2 This is a schematic diagram of strip-shaped segmentation of the grinding path points according to an embodiment of the present invention;
[0040] Figure 3 This is a schematic diagram of the circle grinding path according to an embodiment of the present invention;
[0041] Figure 4 This is a schematic diagram of the swing grinding path according to an embodiment of the present invention;
[0042] Figure 5This is a flowchart of a robot grinding control method according to an embodiment of the present invention. Detailed Implementation
[0043] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of the present invention.
[0044] It should be noted that if the embodiments of the present invention involve directional indications, such as up, down, left, right, front, back, etc., these directional indications are only used to explain the relative positional relationships and movement of the components in a specific posture. If the specific posture changes, the directional indications will also change accordingly. Furthermore, if the embodiments of the present invention involve descriptions such as "first," "second," "S1," "S2," "step one," "step two," etc., these descriptions are for descriptive purposes only and should not be construed as indicating or implying their relative importance, or implicitly indicating the number of technical features indicated or the order of method execution. Those skilled in the art will understand that anything that does not violate the inventive concept and is within the scope of the present invention should be included in the protection scope of the present invention.
[0045] like Figure 1 As shown, the present invention provides a method for planning a grinding coverage path on a workpiece surface, comprising:
[0046] S1: Collect point cloud data of the workpiece surface to obtain the initial grinding path points;
[0047] Specifically, the acquisition module may, but is not limited to, scanning and / or photographing the surface of the workpiece around its perimeter, receiving returned information, obtaining workpiece point cloud data, filtering background point clouds according to the workpiece normal direction to acquire workpiece surface point cloud data, obtaining workpiece corner points based on a preset region of interest, and uniformly distributing initial grinding path points on the workpiece surface based on the workpiece corner points and a preset sampling interval; the acquisition module may, but is not limited to, acquisition devices capable of capturing static images or continuous video, such as cameras, video cameras, and mobile phones; the region of interest may, but is not limited to, being obtained based on the workpiece template, structural diagram, etc.; the preset sampling interval may be arbitrarily set by those skilled in the art.
[0048] S2: Based on the initial grinding path points, perform strip-shaped cutting to obtain several sets of strip-shaped grinding paths;
[0049] Specifically, the workpiece surface is divided into strips according to the set direction and set width to obtain several strip grinding paths; the set direction and set width can be set arbitrarily by those skilled in the art.
[0050] For example, such as Figure 2 As shown in the figure, the black dots represent the grinding path points on the workpiece surface. The grinding path points are divided into several grinding paths according to the set cutting width, with the opposite direction of the y-axis as the cutting direction.
[0051] S3: Determine whether the width of each strip-shaped grinding path is greater than the width threshold;
[0052] The width threshold is specifically set by those skilled in the art based on factors such as whether the polishing tool used can cover the strip polishing path.
[0053] S4: If it is greater than the specified value, update to a circular polishing path; if it is not greater than the specified value, update to a swing polishing path. Combine these to obtain the final polishing path.
[0054] In this embodiment, a method for planning a grinding coverage path on a workpiece surface according to the present invention is presented. Based on the prior art, a strip-shaped grinding path is obtained. The core of the present invention is that grinding path points are obtained by collecting point cloud data of the workpiece surface, and then the grinding path is segmented to obtain the grinding path. Then, the corresponding grinding path is added according to the width of the grinding path, which improves the adaptability of the robot in the workpiece processing process, reduces obvious grinding marks, and makes the grinding surface more delicate. This solves the problem that the robot has low adaptability when processing workpieces in the existing grinding methods, and that grinding the workpiece surface will produce obvious grinding marks, affecting the surface finish.
[0055] Specifically, based on whether the strip-shaped sanding path exceeds a width threshold, the strip-shaped sanding path is updated to either a circular sanding path or an oscillating sanding path to obtain the final sanding path; specifically, step S4 may include, but is not limited to, the following:
[0056] S41: Draw a circle with the initial polishing path point as the center and the preset length as the radius;
[0057] For example, if there are 10 initial polishing path points, then 10 circles are drawn with each path point as the center and a preset length as the radius; the preset length can be arbitrarily set by those skilled in the art based on the distance between each initial polishing path point.
[0058] S42: Discretize each circle into several points to update the grinding path points, and connect all the updated grinding path points in order to obtain the circle grinding path;
[0059] Specifically, the distance between each grinding path point on the circle is set, and each circle is discretized into several points based on the distance. To update the grinding path points, the calculation formula can be selected, but is not limited to, as shown in Equations 1-1, 1-2, and 1-3:
[0060]
[0061] P i =P0+R z (θ i V r,0 1-2
[0062]
[0063] Where, N sample d represents the number of update polishing path points on a circle. interp P represents the distance between each update polishing path point on the circle. i Let P0 represent the i-th polishing point on the circumference, and V represent the center position of the circle. r,0 Let R represent a vector originating from the center of the circle, pointing in the positive x-axis direction, with a length equal to the radius. z (θ i ) represents a rotation about the positive z-axis. i Rotation matrix of angle.
[0064] More specifically, the steps to obtain the circular polishing path by sequentially connecting all updated polishing path points include:
[0065] Choose any grinding point on the first circle of each strip grinding path as the starting grinding point. Connect other grinding points on the circle from the starting grinding point in a clockwise or counterclockwise direction until you return to the starting grinding point. Then connect any starting grinding point on the next circle, and similarly connect other grinding points on the circle in a clockwise or counterclockwise direction until you return to the starting grinding point. Continue until all grinding points on the path are connected. The path formed by connecting all the grinding points is the circular grinding path.
[0066] Preferably, in each strip-shaped grinding path, the starting grinding point on the circle is on the same horizontal line; more preferably, in a coordinate system with the lower left corner of the strip-shaped grinding path as the origin and the initial grinding point located in the positive directions of the x-axis and y-axis, the maximum value of the circle in the x-axis direction is the position of all starting grinding points.
[0067] For example, such as Figure 3 As shown, the starting point for grinding is the maximum value of the circle on the x-axis of the strip grinding path. The grinding path moves clockwise or counterclockwise along the circumference, connecting other grinding points on the circle back to the starting point. Then it moves to the starting point of the next circle, repeating this process until all grinding is done on the connecting path, thus obtaining the final grinding path.
[0068] S43: Obtain the midpoint between each initial polishing point;
[0069] S44: Based on the midpoint, two updated polishing path points are obtained by translating along the set positive and negative directions respectively, and all updated polishing path points are connected with the initial polishing path points in sequence to obtain the swing polishing path.
[0070] For example, such as Figure 4 As shown, the midpoint between each initial grinding point is calculated, and two swing points are obtained by translating all midpoints along the positive and negative x-axis directions, respectively. These swing points are considered as updated grinding path points. The swing points are added to the overall grinding path points, and the initial grinding point and the swing grinding points are connected to each other to obtain the final grinding path. The path planning formula can be selected but is not limited to the formulas shown in Equations 1-4 and 1-5:
[0071]
[0072]
[0073] Among them, P i,SwingUp P represents the i-th update polishing path point that oscillates along the positive direction of vector V. i,SwingDown Let d represent the i-th updated grinding path point that oscillates along the negative direction of vector V, where V represents the oscillation direction vector of the updated grinding path point, and d represents the oscillation amplitude. It is worth noting that the oscillation amplitude can be arbitrarily adjusted by those skilled in the art according to specific needs.
[0074] On the other hand, the present invention provides a robot polishing control method, comprising:
[0075] P1: The final polishing path points are obtained using any of the methods described above;
[0076] P2: Perform inverse joint calculations on each final polishing path point to obtain the robot's polishing trajectory.
[0077] Specifically, the spatial attitude of the grinding head is determined based on the final grinding path points and the installation and grinding methods of the preset grinding head. The spatial attitude of the robot's end effector can then be obtained from this attitude. Using robot kinematic geometry methods, point-by-point inverse kinematics calculations are performed on the path points of each final grinding path and the spatial attitude of the robot's end effector. The spatial attitude of the robot's end effector is then calculated as the rotational changes of each joint, resulting in the robot's grinding trajectory. This trajectory is then used by the robot to grind each strip-shaped grinding path. The robot kinematic geometry methods can be, but are not limited to, Cartesian coordinate method, Denavit-Hartenberg parameter method, transformation matrix method, quaternion method, and other commonly used geometric methods in robot kinematics for analyzing the robot's forward kinematics (calculation of position and attitude) and inverse kinematics (calculation of joint angles).
[0078] On the other hand, the present invention also provides a computer storage medium storing executable program code; the executable program code is used to execute the above-mentioned workpiece surface grinding path planning method or robot grinding control method.
[0079] On the other hand, the present invention also provides a terminal device, including a memory and a processor; the memory stores program code that can be executed by the processor; the program code is used to execute the above-mentioned workpiece surface grinding path planning method or robot grinding control method.
[0080] For example, the program code can be divided into one or more modules / units, which are stored in the memory and executed by the processor to complete the present invention. The one or more modules / units can be a series of computer program instruction segments capable of performing a specific function, which describe the execution process of the program code in the terminal device.
[0081] The terminal device can be a desktop computer, laptop, handheld computer, or cloud server, etc. The terminal device may include, but is not limited to, a processor and memory. Those skilled in the art will understand that the terminal device may also include input / output devices, network access devices, buses, etc.
[0082] The processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor can be a microprocessor or any conventional processor.
[0083] The memory can be an internal storage unit of the terminal device, such as a hard drive or RAM. The memory can also be an external storage device of the terminal device, such as a plug-in hard drive, SmartMedia Card (SMC), Secure Digital (SD) card, or Flash Card. Furthermore, the memory can include both internal and external storage units of the terminal device. The memory is used to store the program code and other programs and data required by the terminal device. The memory can also be used to temporarily store data that has been output or will be output.
[0084] The technical functions and beneficial effects of the above-mentioned workpiece surface grinding path planning method and robot grinding control method will not be elaborated here. The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0085] The embodiments described above are merely illustrative of several implementations of the present invention, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention patent. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of the present invention, and these all fall within the protection scope of the present invention. Therefore, the protection scope of this invention patent should be determined by the appended claims.
Claims
1. A method for planning a grinding path on a workpiece surface, characterized in that, include: S1: Collect point cloud data of the workpiece surface to obtain the initial grinding path points; S2: Based on the initial grinding path points, perform strip-shaped cutting to obtain several strip-shaped grinding paths; S3: Determine whether the width of each strip-shaped grinding path is greater than the width threshold; S4: If it is greater than the specified value, update it to a circular polishing path; if it is not greater than the specified value, update it to a swing polishing path. Combine these to obtain the final polishing path. The steps for updating to a circular polishing path include: S41: drawing a circle with the initial polishing path point as the center and a preset length as the radius; S42: discretizing each circle into several points, which are the updated polishing path points, and connecting all the updated polishing path points in sequence to obtain the circular polishing path. The steps for updating to a swing polishing path include: S43: obtaining the midpoint between each initial polishing point; S44: translating along the set positive and negative directions according to the midpoint to obtain two updated polishing path points, and connecting all updated polishing path points with the initial polishing path points in sequence to obtain the swing polishing path.
2. The method according to claim 1, characterized in that, Step S42 includes: Choose any grinding point on the first circle of each strip grinding path as the starting grinding point; Connect other grinding points on the circle in a clockwise or counterclockwise direction from the starting grinding point until you return to the starting grinding point; Continue connecting the starting polishing point to any other starting polishing point on the next circle until all polishing points on the path are connected, thus obtaining the circle polishing path.
3. The method according to claim 2, characterized in that, The starting polishing point includes: The starting polishing points on the circle are on the same horizontal line.
4. The method according to claim 1, characterized in that, Step S42, the step of discretizing each circle into several points, includes: The calculation formulas are shown in equations 1-1, 1-2, and 1-3: 1-1; 1-2; 1-3; in, This represents the number of update polishing path points on a circle. This represents the distance between each update and polishing path point on the circle. This represents the i-th polishing point on the circumference. Indicates the position of the center of the circle. This represents a vector originating from the center of the circle, pointing in the positive x-axis direction, with a length equal to the radius. This indicates rotation about the positive z-axis. Rotation matrix of angle.
5. The method according to claim 1, characterized in that, Step S44 includes: The path planning formulas are shown in Equations 1-4 and 1-5: 1-4; 1-5; in, Let i represent the i-th update polishing path point that oscillates along the positive direction of vector V. Let d represent the i-th updated grinding path point that swings along the negative direction of vector V, where V represents the swing direction vector of the updated grinding path point, and d represents the swing amplitude.
6. A robot grinding control method, characterized in that, include: The final polishing path points are obtained by using the method described in any one of claims 1-5; The robot's grinding trajectory is obtained by performing inverse joint calculations on each final grinding path point.
7. A computer storage medium, characterized in that, It stores executable program code; the executable program code is used to execute the workpiece surface grinding path planning method according to any one of claims 1-5 or the robot grinding control method according to claim 6.
8. A terminal device, characterized in that, It includes a memory and a processor; the memory stores program code that can be executed by the processor; the program code is used to execute the workpiece surface grinding path planning method according to any one of claims 1-5 or the robot grinding control method according to claim 6.
Citation Information
Patent Citations
DMP-based complex curved surface polishing trajectory planning method
CN116175286A
Tool-path planning method
US20180120800A1