Method, system, and device for motion control of at least one machining head

The method and system for motion control of machining heads address the challenge of processing rough edges by using high-precision measuring devices to determine and execute precise motion trajectories, enhancing the efficiency and accuracy of operations on products like 3D wall stickers.

JP7746532B2Active Publication Date: 2025-09-30ZHEJIANG HUARAY TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2024505145
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-07-28
Filing Date
2022-07-21
Publication Date
2025-09-30
Estimated Expiration
2042-07-21

AI Technical Summary

Technical Problem

Existing machining heads face challenges in efficiently and accurately determining motion trajectories and direction changes to process products with rough edges, such as 3D wall stickers, requiring improved motion control methods.

Method used

A method and system for motion control of machining heads that involve acquiring target areas using high-precision measuring devices, determining depth information, and calculating motion trajectories based on this information, including determining turning points and controlling the machining heads to move accordingly.

Benefits of technology

Enables efficient and accurate machining of objects by ensuring precise motion trajectories and direction changes, improving the quality of processed products like 3D wall stickers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007746532000001
    Figure 0007746532000001
  • Figure 0007746532000002
    Figure 0007746532000002
  • Figure 0007746532000003
    Figure 0007746532000003
Patent Text Reader

Abstract

The present disclosure provides a method for motion control of at least one machining head. The method may include acquiring a target area of ​​an object based on a scan of a high-precision measuring device. The method may also include determining depth information corresponding to the target area based on the target area. The method may further include determining a motion trajectory of the at least one machining head based on the depth information.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS This application claims priority to Chinese Patent Application No. 202110853667.6, filed on July 28, 2021, the entire contents of which are incorporated herein by reference.

[0002] The present disclosure relates to the field of image processing, and in particular to methods, systems, and devices for motion control of at least one working head. [Background technology]

[0003] A machining head is a device that can directly complete a certain processing operation (e.g., cutting, painting, welding, etc.) or can cooperate with a specific tool to complete it. Generally, the machining head needs to control its motion state (e.g., motion trajectory, whether to change direction or not) during the motion process so that the product processed by the machining head meets certain processing requirements. For example, some products may have rough edges of different widths or lengths during production. The machining head may cut the rough edges generated during production, and the cutting surface of the product after cutting needs to be smooth. Therefore, it is particularly important to provide a motion control method for the machining head to determine the motion trajectory of the machining head and whether the motion of the machining head needs to change direction, so that the product can be processed more efficiently and accurately. Summary of the Invention [Means for solving the problem]

[0004] An aspect of the present disclosure may provide a method for motion control of at least one machining head, which may include acquiring a target area of ​​an object based on a scan of a high-precision measuring device, determining depth information corresponding to the target area based on the target area, and determining a motion trajectory of the at least one machining head based on the depth information.

[0005] In some embodiments, the method may further include determining scan information of the high precision measurement device based on the coding information of the encoder, and determining depth information based on the scan information.

[0006] In some embodiments, determining a motion trajectory of at least one machining head based on depth information may include determining a motion area of ​​the at least one machining head based on depth information, and determining a motion trajectory based on the motion area.

[0007] In some embodiments, determining a motion trajectory based on the motion area may include determining a motion reference path of at least one machining head based on the motion area and the motion direction, and determining a motion trajectory based on the motion reference path.

[0008] In some embodiments, the motion reference path may include a centerline path of the motion region or a path parallel to the centerline through the motion region.

[0009] In some embodiments, the motion area may include a plurality of sub-areas, and determining the motion trajectory based on the motion area may include determining whether two adjacent sub-areas among the plurality of sub-areas are continuous in the motion direction, and determining whether to add a turning trajectory based on determining whether two adjacent sub-areas among the plurality of sub-areas are continuous in the motion direction.

[0010] In some embodiments, the step of determining whether to add a turning trajectory based on a determination of whether two adjacent sub-regions of the plurality of sub-regions are continuous in the direction of movement may include adding a turning trajectory in a deviation region between the two adjacent sub-regions in response to a determination that the two adjacent sub-regions of the plurality of sub-regions are not continuous in the direction of movement.

[0011] In some embodiments, the method may further include controlling the at least one machining head to move based on the turn trajectory of the at least one machining head.

[0012] In some embodiments, the at least one machining head may include a first machining head and a second machining head, a distance between the first machining head and the second machining head may be constant, and controlling the at least one machining head to move based on the motion trajectory of the at least one machining head may include controlling the first machining head and the second machining head to move based on the motion trajectory of the first machining head.

[0013] In some embodiments, the at least one machining head may include a first machining head and a second machining head, the motion trajectory of the at least one machining head may include a first motion trajectory of the first machining head and a second motion trajectory of the second machining head, and controlling the at least one machining head to move based on the motion trajectory of the at least one machining head may include controlling the first machining head to move based on the first motion trajectory and controlling the second machining head to move based on the second motion trajectory.

[0014] In some embodiments, the method may further include acquiring point cloud data of the target area based on the target area of ​​the object, and determining a set of end points of the target area based on the point cloud data of the target area, and the depth information may include the point cloud data and the set of end points.

[0015] In some embodiments, the step of determining a set of end points of the target area based on the point cloud data of the target area may include the steps of determining second point cloud data and third point cloud data that are a first distance from the first point cloud data, where the first point cloud data among the point cloud data is specified as a start point; obtaining a vector angle by determining an angle between a first vector and a second vector, where the first vector may be composed of the first point cloud data and the second point cloud data, and the second vector may be composed of the first point cloud data and the third point cloud data; obtaining the set of vector angles by scanning the point cloud data; and determining a first set of end points and a second set of end points based on the set of vector angles, where the first set of end points and the second set of end points may belong to the set of end points.

[0016] In some embodiments, the step of determining a set of end points of the target area based on the point cloud data of the target area may include the steps of: determining second point cloud data and third point cloud data that are a first distance from the first point cloud data, where the first point cloud data among the point cloud data is specified as a start point; obtaining a vector angle by determining an angle between a first vector and a second vector, where the first vector may be composed of the first point cloud data and the second point cloud data, and the second vector may be composed of the first point cloud data and the third point cloud data; obtaining the set of vector angles by scanning the point cloud data; determining a first set of end points and a second set of end points based on the set of vector angles; and determining a set of center points based on the first set of end points and the second set of end points, where the set of center points may belong to the set of end points.

[0017] In some embodiments, the step of determining the first set of end points and the second set of end points based on the set of vector angles may include the steps of: obtaining a subset of vector angles in the set of vector angles whose tangent values ​​are greater than a first threshold; obtaining a first candidate set of end points by determining point cloud data in the point cloud data corresponding to the subset of vector angles, the spacing of which satisfies a distance threshold condition; obtaining a second candidate set of end points by determining point cloud data in the first candidate set of end points corresponding to vector angles whose height difference is less than a second threshold; and determining the first set of end points and the second set of end points included in the second candidate set of end points based on directional information of the vector angles corresponding to the point cloud data in the second candidate set of end points.

[0018] In some embodiments, the method may further include determining whether coordinates of the end points in the set of end points are continuous in the direction of movement, and in response to determining that the coordinates of the end points in the set of end points are not continuous in the direction of movement, determining at least one turn point between two adjacent end points based on coordinates of the two adjacent end points that are not continuous in the set of end points, where the at least one turn point may be configured to determine a turn trajectory.

[0019] In some embodiments, the step of determining at least one turning point between two adjacent end points based on the coordinates of two adjacent end points that are not consecutive in the set of end points includes the steps of determining a distance between the coordinates of the two adjacent end points in the direction of movement, determining a number of the at least one turning point based on the number of image frames corresponding to the distance, and determining the coordinates of the at least one turning point based on the distance and the number of the at least one turning point.

[0020] In some embodiments, determining the number of at least one turning point based on the number of image frames corresponding to the distance may include determining a first frame identifier and a second frame identifier corresponding to two adjacent end points, respectively; determining the number of image frames corresponding to the distance based on the first frame identifier and the second frame identifier; and determining that the number of the at least one turning point is equal to the number of image frames.

[0021] In some embodiments, determining the coordinates of the at least one turning point based on the distance and the number of the at least one turning point may include determining at least one turning point corresponding to the number of the at least one turning point on a line segment consisting of two adjacent end points, wherein the at least one turning point may be located between the two adjacent end points, and the distance between two adjacent turning points of the at least one turning point in the direction of movement may be equal.

[0022] In some embodiments, the method may further include controlling the at least one tooling head to move with a change of direction based on the at least one pivot point.

[0023] In some embodiments, the step of controlling the at least one machining head to move with a direction change based on the at least one turning point may further include determining a frame identifier corresponding to each of the at least one turning point, and controlling the at least one machining head to move with a direction change based on the at least one turning point when the encoder triggers the high precision measurement device to scan the target area corresponding to the frame identifier.

[0024] Another aspect of the present disclosure may provide a system for motion control of at least one machining head, the system may include an acquisition module configured to acquire a target area of ​​an object based on a scan of a high-precision measurement device, an information determination module configured to determine depth information corresponding to the target area based on the target area, and a trajectory determination module configured to determine a movement trajectory of the at least one machining head based on the depth information.

[0025] In some embodiments, the system may further include a motion control module configured to control the at least one tooling head to move based on the motion trajectory of the at least one tooling head.

[0026] Another aspect of the present disclosure may provide an electronic device that may include a memory configured to store executable instructions and a processor configured to perform the method of any one of the embodiments of the present disclosure when executing the executable instructions stored in the memory.

[0027] Another aspect of the present disclosure may provide a computer-readable storage medium storing executable instructions that, when executed by a processor, are configured to perform the method of any one of the embodiments of the present disclosure.

[0028] Another aspect of the present disclosure may provide a motion control device for at least one machining head. The motion control device may include an operation platform, a high-precision measuring device disposed on the operation platform, the at least one machining head, and a control assembly configured to control a motion trajectory of the at least one machining head based on scan information of the high-precision measuring device.

[0029] In some embodiments, the high precision measurement device may include a three-dimensional (3D) line laser measurement instrument, the 3D line laser measurement instrument being positioned at one or both ends of the operation platform along the width of the operation platform.

[0030] In some embodiments, at least one machining head may be positioned at one or both ends of the operation platform along the width of the operation platform.

[0031] In some embodiments, the at least one machining head may include a first machining head and a second machining head, and the first machining head and the second machining head may each be positioned at opposite ends of the operation platform along the width direction of the operation platform.

[0032] In some embodiments, the distance between the first machining head and the second machining head along the width of the operation platform is constant, and the high-precision measuring device is positioned at one end of the operation platform along the width of the operation platform.

[0033] In some embodiments, the first machining head and the second machining head may move independently along the width of the operation platform, and the high-precision measurement devices may be positioned at both ends of the operation platform along the width of the operation platform.

[0034] In some embodiments, the motion control device may further include an encoder for detecting position information of the object.

[0035] In some embodiments, the encoder may be located on an operation platform, which is a platform for supporting an object, or on a drive motor of at least one tooling head.

[0036] In some embodiments, the motion control device may further include a limiting plate disposed on the operation platform, the limiting plate configured to limit the position of the object.

[0037] The present disclosure will be further illustrated with respect to exemplary embodiments, which are described in detail with reference to the drawings, in which like numerals refer to like structures, and in which: [Brief explanation of the drawings]

[0038] [Figure 1] 1A-1D illustrate exemplary three-dimensional (3D) wall stickers, according to some embodiments of the present disclosure. [Figure 2] 1 is a device diagram illustrating an exemplary system for motion control of at least one tooling head, according to some embodiments of the present disclosure. FIG. [Figure 3] 1 is a flowchart illustrating an exemplary method for motion control of at least one work head, according to some embodiments of the present disclosure. [Figure 4] 10 is another flowchart illustrating an exemplary method for motion control of at least one work head, according to some embodiments of the present disclosure. [Figure 5] 1 is a schematic diagram illustrating exemplary point cloud data of an image, according to some embodiments of the present disclosure. [Figure 6] 10 is a flowchart illustrating an exemplary process for determining a set of center points of a target area, according to some embodiments of the present disclosure. [Figure 7] 10 is a flowchart illustrating an exemplary process for determining a first set of endpoints and a second set of endpoints included in a target area, according to some embodiments of the present disclosure. [Figure 8] 10 is a flowchart illustrating another exemplary process for determining a first set of endpoints and a second set of endpoints included in a target area, according to some embodiments of the present disclosure. [Figure 9] 1A-1C are schematic diagrams illustrating two wall stickers including edge transition zones according to some embodiments of the present disclosure. [Figure 10] 1 is a flowchart illustrating an exemplary process for determining at least one turning point, according to some embodiments of the present disclosure. [Figure 11] 10 is a flowchart illustrating an exemplary process for determining coordinates of a center point in a direction of motion, according to some embodiments of the present disclosure. [Figure 12] 10 is a flowchart illustrating another exemplary process for determining at least one turning point, according to some embodiments of the present disclosure. [Figure 13] 1A-1C are schematic diagrams illustrating exemplary motion trajectories of at least one machining head relative to an object, according to some embodiments of the present disclosure. [Figure 14] 1 is a flowchart illustrating a process for performing several actions on an object, according to some embodiments of the present disclosure. [Figure 15] 10 is a flowchart illustrating a process for transmitting coordinates of an operating point by using an update function, according to some embodiments of the present disclosure. [Figure 16] 10 is a flowchart illustrating a process for recognizing coordinates of an end point of a frame by using a first function, according to some embodiments of the present disclosure. [Figure 17] 10 is a flowchart illustrating a process for storing coordinates of an end point by using a second function, according to some embodiments of the present disclosure. [Figure 18] 10 is a flowchart illustrating a process for determining coordinates of a center point by using a third function, according to some embodiments of the present disclosure. [Figure 19] FIG. 2 is a block diagram illustrating an exemplary system for controlling the motion trajectory of at least one work head, according to some embodiments of the present disclosure. [Figure 20]FIG. 1 is a structural diagram illustrating an exemplary hardware composition of an electronic device according to some embodiments of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION

[0039] In order to illustrate the technical solutions related to the embodiments of the present disclosure, a brief introduction to the drawings referred to in the description of the embodiments is given below. It is clear that the drawings described below are only some examples or embodiments of the present disclosure. Those skilled in the art can apply the present disclosure to other similar scenarios according to these drawings without further creative efforts. Unless otherwise stated or clear from the context, the same reference numbers in the drawings refer to the same structures and operations.

[0040] It will be understood that the terms "system," "device," "unit," and / or "module" as used herein are one way of distinguishing between different components, elements, parts, sections, or assemblies at different levels in ascending order. However, these terms may be substituted by other expressions that can achieve the same purpose.

[0041] As set forth in this disclosure and in the claims, unless the context clearly dictates otherwise, the words "a," "an," "one," and / or "the" do not specifically refer to the singular but may also include the plural. The terms "comprising" and "comprising" only suggest that the explicitly identified steps and elements are inclusive; these steps and elements do not constitute an exclusive list, and the method or device may include other steps or elements.

[0042] The flowcharts used in this disclosure may illustrate operations performed by a system according to an embodiment of the present disclosure. It should be understood that the operations before or after the flowcharts may not be performed in exact order. Conversely, various operations may be performed in reverse order or simultaneously. Moreover, other operations may be added to the flowcharts, and one or more operations may be removed from the flowcharts.

[0043] One or more embodiments of the present disclosure provide a method and system for motion control of at least one machining head. In some embodiments, the system for motion control of at least one machining head may acquire a target area of ​​an object by using a high-precision measuring device and determine depth information corresponding to the target area based on the target area, so that a motion trajectory of the at least one machining head may be determined based on the depth information of the target area. The target area may refer to an area of ​​the object that needs to be machined (e.g., a cutting area, a coating area, a welding area, etc.). The depth information may include location information of the target area, such as point cloud data information, or coordinate information of the location point. Furthermore, the system for motion control of at least one machining head may also control the machining head to move based on the motion trajectory of the machining head to perform a corresponding operation. The system for motion control of at least one machining head provided in embodiments of the present disclosure may be applied to application scenarios such as cutting with a tool, applying adhesive, welding with a manipulator, etc. For example, the machining head may include a tool (e.g., a cutter), which may move based on a predetermined motion trajectory and cut the object during movement. As another example, the machining head may cooperate with an adhesive joint or welding tool. When the working head moves based on a predetermined motion trajectory, the adhesive joint or welding tool also moves synchronously, and the object can be applied or welded during the movement.

[0044] The system for motion control of at least one tool head is illustrated by taking a scenario in which the tool head is a tool, the object is a wall sticker, and the tool is cutting the wall sticker. FIG. 1 illustrates an exemplary three-dimensional (3D) wall sticker according to some embodiments of the present disclosure. In some embodiments, wall stickers can play an increasingly important role in home decoration. The 3D wall sticker is made of chemically cross-linked polyethylene (XPE), which has the functions of heat storage, moisture resistance, and collision protection. Furthermore, 3D lines on the surface of the wall sticker can enhance the appearance of the wall sticker. An application diagram of a 3D wall sticker is shown in FIG. 1. Generally, 3D wall stickers produced by factories often have wide, uneven, rough edges. Before sale, these wide, uneven, rough edges need to be removed manually or automatically by a cutting device. Therefore, when cutting those edges, a smooth turning path of the tool for cutting and high precision without cutting pattern of the 3D wall sticker are required (for example, the precision of cutting the edges is required to be at least 0.5 mm).

[0045] In some embodiments, depth information of planar points on the corresponding motion contour curves can be determined based on parallax from discrete points on the corresponding motion contour curves (e.g., cutting contour curves in the case of cutting, painting contour curves in the case of painting, or welding contour curves in the case of welding) to images taken by the left camera and the right camera. 3D coordinates of feature points in the corresponding motion contour curves in the motion coordinate system can then be determined. At least one machining head can perform the corresponding operation (such as cutting, painting, or welding) based on the derivation of the 3D coordinates.

[0046] In some embodiments, 3D point cloud data of the working area of ​​at least one machining head may be obtained after determining parameters of a measurement device (e.g., a laser device). The 3D reconstruction data may be obtained by tin difference, noise removal, or edge smoothing, and the depth, area, and volume of the working area may be determined.

[0047] In some embodiments, to further reduce the complexity of the method for motion control of at least one machining head and improve the accuracy of the movement of the at least one machining head during machining, embodiments of the present disclosure may provide a method, system, and device for motion control of at least one machining head for determining a motion trajectory, so that the object can be machined efficiently and accurately. For a detailed description, please refer to Figures 2 to 18 and related descriptions.

[0048] 2 is a device diagram illustrating an exemplary system for motion control of at least one machine head, according to some embodiments of the present disclosure. As shown in FIG. 2, the device 200 for motion control of at least one machine head may include an operation platform 210, a high-precision measuring device 220, at least one machine head 230, and a control assembly. The high-precision measuring device 220 may be disposed on the operation platform 210, and the high-precision measuring device 220 may scan an object (e.g., wall sticker 1) to obtain scan information. The control assembly may be configured to control the motion trajectory of the at least one machine head 230 based on the scan information of the high-precision measuring device 220.

[0049] In some embodiments, the operation platform 210 may include a base 211 for supporting the operation platform 210. In some embodiments, other structures and / or devices, such as different types of servo motors, may be provided on the operation platform 210. The servo motors may control the at least one machining head 230 to move under the action of a control assembly to complete different operations. In some embodiments, different devices may be disposed on the operation platform 210 to implement different functions based on different application scenarios of the system for motion control of at least one machining head. Using the application of the system for motion control of at least one machining head to cutting wall stickers as an example, the operation platform 210 may include a servo motor controller, a servo motor 212 for winding the wall sticker, a servo motor 213 for moving the at least one machining head, a servo motor for cutting, a winding table 214, and a pressure plate. 1 refers to the wall sticker, and 2 refers to the cut wall sticker. The pressure plate may be configured to press the 3D wall sticker being processed to ensure that the wall sticker does not move out of the field of view of the high-precision measuring device 220 due to up and down fluctuations, thereby improving the stability of operation. The process of cutting the wall sticker by the at least one machining head 230 may be as follows: The control assembly controls the wall sticker on the winding table 214 to move forward (e.g., along the direction of movement) by the servo motor 212 for winding the wall sticker, and controls the cutting position of the at least one machining head 230 by the servo motor 213 for moving the at least one machining head. Then, the at least one machining head 230 may be controlled to rotate by the servo motor for cutting the at least one machining head to cut the wall sticker.In some embodiments, the operation platform 210 may be a cabinet operation platform, which may be placed on the ground to improve the dynamic reliability of the device 200 for motion control.

[0050] In some embodiments, the high-precision measuring device 220 may be provided at one or both ends of the operation platform 210 along the width direction of the operation platform 210. The high-precision measuring device 220 may scan an object to obtain scan information. In some embodiments, the high-precision measuring device 220 may include a 3D line laser measuring device, and the laser line generated by the 3D line laser measuring device may be irradiated onto the 3D wall sticker being processed to obtain scan information. In some embodiments, the laser generated by the 3D line laser measuring device may be blue light. Because blue light has strong resistance to ambient light, additional optical environment compensation such as light compensation or shading may not be necessary. This may improve the reliability of at least one machining head. In other embodiments, the laser line generated by the 3D line laser measuring device may be light of another color, such as red light. In some embodiments, the high-precision measuring device 220 may include other devices capable of measurement, such as structured lighting, speckle, or area array cameras. In some embodiments, the number of high-precision measuring devices may be one or more. For example, when the sizes of the regions on both sides of the object along the width direction of the operation platform 210 (e.g., the rough edges of a wall sticker) are the same, the number of high-precision measuring devices may be one. In this case, the high-precision measuring device 220 may be disposed at one end of the operation platform 210 along the width direction. As another example, when the sizes of the regions on both sides of the object along the width direction of the operation platform 210 are different, the number of high-precision measuring devices may be two. In this case, two high-precision measuring devices may be disposed on both sides of the operation platform 210 along the width direction, and the regions on both sides of the object along the width direction of the operation platform 210 may be scanned respectively. In some embodiments, the system for motion control of at least one machining head may determine a movement trajectory of the at least one machining head 230 based on the scan information of the high-precision measuring device 220.

[0051] In some embodiments, the at least one machining head 230 may perform an operation on the object based on the motion trajectory. For example, an operation such as cutting, painting, or welding may be performed on the object. In some embodiments, the number of the at least one machining head 230 may be one or more, and one or more machining heads may be disposed at one or both ends of the operation platform 210 along the width direction. In some embodiments, when only one end of the object along the width direction of the operation platform 210 requires processing, the number of the at least one machining head 230 may be one, and one machining head may be disposed at one end of the operation platform 210 along the width direction. In some embodiments, when both sides of the object along the width direction of the operation platform 210 require processing, the number of the at least one machining head 230 may be two. The two machining heads may include a first machining head and a second machining head, which may be disposed on both sides of the operation platform 210 along the width direction. In some embodiments, the distance between the first machining head and the second machining head along the width direction of the operation platform 210 may be constant. For example, when the sizes of the areas on both sides of the object along the width direction of the operation platform 210 are the same, the motion trajectories of the first and second machine heads may be the same, and the first and second machine heads may move synchronously based on the same motion trajectory. In this case, the motion trajectories of the first machine head and the second joint may be obtained based on scan information from the high-precision measuring device 220, and the high-precision measuring device 220 may be disposed at one end of the operation platform 210 along the width direction. In some embodiments, the first machine head and the second joint may also move independently along the width direction of the operation platform 210.For example, when the sizes of the regions on both sides of the operation platform 210 along the width direction are different, the motion trajectory of the first machine head (also known as the first motion trajectory) and the motion trajectory of the second machine head (also known as the second motion trajectory) may be different, and the first machine head and the second machine head may move independently. That is, the first machine head may move based on the first motion trajectory, and the second machine head may move based on the second motion trajectory. In this case, two high-precision measuring devices may be disposed on both ends of the operation platform 210 along the width direction, and the two high-precision measuring devices may correspond to the first machine head and the second machine head, respectively. The first motion trajectory of the first machine head may be obtained based on scan information of a high-precision measuring device corresponding to the first machine head, and the second motion trajectory of the second machine head may be obtained based on scan information of another high-precision measuring device corresponding to the second machine head.

[0052] In some embodiments, the control assembly may be configured to control the motion trajectory of at least one machining head 230 based on the scan information of the high-precision measuring device 220. In some embodiments, the control assembly may synchronously control the motion trajectories of two machining heads based on the scan information of the high-precision measuring device 220, and the distance between the two machining heads along the width direction of the operation platform 210 may be constant. In some embodiments, the control assembly may control a first motion trajectory of a first machining head and a second motion trajectory of a second machining head based on the scan information of the two high-precision measuring devices, respectively. In some embodiments, the control assembly may include an industrial computer.

[0053] In some embodiments, the device for motion control 200 may also include a limiting plate 240 disposed on the operation platform 210 for limiting the position of an object. For example, when the system for motion control of at least one machining head is applied to a cutting tool for cutting a wall sticker, the limiting plate 240 may limit the position of the wall sticker on the operation platform 210 to ensure that when the wall sticker moves forward driven by the servo motor 212 for winding the wall sticker, the limiting plate 240 will not cause the wall sticker to fall out of the field of view of the high-precision measuring device 220 due to a left-right offset, and to ensure that the cutting region (e.g., groove region) of the edge of the 3D wall sticker is located within the field of view of the high-precision measuring device 220.

[0054] In some embodiments, the motion control device 200 may also include an encoder 250 for detecting position information of the object. The high-precision measuring device 220 may determine depth information corresponding to the target area based on the position information detected by the encoder 250. The depth information may be configured to determine a motion trajectory of the at least one machining head 230. In some embodiments, the encoder 250 may send a trigger signal by recording the number of rotations of a rotating part (e.g., a roller) of the encoder 250, and the trigger signal may be sent to the high-precision measuring device 220 through a control assembly to trigger the high-precision measuring device 220 to acquire an image of the object. In some embodiments, the rotating part of the encoder 250 may be an anti-skid roller. In some embodiments, the encoder 250 may be disposed on the operation platform 210, a table for supporting the object (i.e., the winding table 214), a drive motor of the at least one machining head 230 (e.g., a servo motor for cutting the at least one machining head), etc. In some embodiments, the rotating part of the encoder 250 (e.g., an anti-skid roller) may be pressed against the object. When the object moves forward driven by the servo motor 212 for winding the wall sticker, the anti-skid roller may rotate subsequently, so that a trigger signal may be sent at specific intervals. In some embodiments, the rotation axis of the rotating part (e.g., the anti-skid roller) of the encoder 250 may be disposed perpendicular to the movement direction of the object. Therefore, when the object moves along the movement direction, the rotating part may rotate around the rotation axis.

[0055] It should be noted that the device 200 for motion control for at least one machining head is for illustrative purposes only and does not limit the scope of application of the present disclosure. For those skilled in the art, various modifications and changes can be made to the device 200 for motion control under the guidance of the present disclosure. For example, when the system for motion control of at least one machining head is applied to different scenarios, structural components on the operation platform 210 can be added, deleted, or substituted to implement different functions. However, these modifications and changes still fall within the scope of the present disclosure.

[0056] A method for motion control of at least one work head provided by an embodiment of the present disclosure may be described below in combination with a device 200 for motion control of at least one work head shown in FIG.

[0057] In some embodiments, the high-precision measuring device 220 and the at least one machining head 230 may be calibrated before performing an operation using the device 200 for motion control shown in FIG. 2 . The calibration process may also be referred to as establishing correspondence between a camera coordinate system corresponding to the high-precision measuring device 220 and a machining head coordinate system corresponding to the at least one machining head 230. Specifically, the high-precision measuring device 220 may acquire point cloud data of the 3D object in the camera coordinate system by scanning the 3D object. The at least one machining head 230 may need to change its position (i.e., change its orientation) when performing a certain operation (e.g., cutting burrs with different widths). Because the at least one machining head 230 may only determine coordinate information (or position information) in the machining head coordinate system, it is necessary to calibrate the high-precision measuring device 220 and the at least one machining head 230. In some embodiments, the position of the origin and the positive direction of the at least one machining head 230 may first be determined. The position of the origin of the at least one machining head 230 may be referred to as the initial position of the at least one machining head 230, and the position of the origin may be the center of the entire range when changing the position. When the direction opposite to the movement direction of the object (the left side of the movement direction in FIG. 2) is the positive direction when changing the position, and when the at least one machining head faces left, the coordinate value of the at least one turning point on the X-axis may be larger. Then, the position of the high-precision measuring device 220 may be determined. Specifically, as shown in FIG. 2, the high-precision measuring device 220 may be placed immediately in front of the initial position of the at least one machining head 230 along the movement direction, and the distance between the laser line generated by the high-precision measuring device 220 and the operating point of the at least one machining head 230 may also be determined. This distance may be flexibly adjusted based on the actual installation scene, such as 300 millimeters. Finally, the camera coordinate system may be associated with the machining head coordinate system.Specifically, since the high-precision measuring device 220 is placed immediately in front of the initial position of the at least one machining head 230, the 3D coordinate of the center point of the field of view of the high-precision measuring device 220 after the coordinate conversion may correspond to the coordinate of the origin of the at least one machining head 230. In actual operation, the value of the coordinate in the X-axis may be changed by controlling the at least one machining head 230 to move left or right (i.e., move along the width direction of the operation platform 210). Therefore, after determining the X-axis coordinate of the at least one turning point, the X-axis coordinate of the operating point of the at least one machining head may be determined by subtracting a fixed value from the X-axis coordinate of the at least one turning point. The fixed value may be the coordinate value of the center point of the field of view of the high-precision measuring device 220 in the X-axis direction. Meanwhile, by using the motion control device 200 shown in FIG. 2, the movement of the at least one machining head can be automatically completed based on the movement trajectory without manual operation, thereby improving work efficiency compared to manual operation. Meanwhile, the object can be precisely machined by controlling at least one machining head to move based on a motion trajectory.

[0058] 3 is a flowchart illustrating an exemplary process for motion control of at least one tooling head, according to some embodiments of the present disclosure. As shown in FIG. 3, process 300 may include operations 310 through 340.

[0059] A target area of ​​the object may be acquired at 310. The target area may be acquired based on a scan of a precision measurement device.

[0060] In some embodiments, operation 310 may be performed by the acquisition module 1910 or a high-precision measurement device. The object may be an object to be machined in a particular operation by at least one machining head. For example, the object may include a wall sticker to be cut, a product to be welded, a product to be painted, etc. The target area may refer to an area to be machined on the object. For example, when the object is a wall sticker, the target area may include a pattern area, a groove area, or a burr area of ​​the wall sticker. The pattern area may be considered to be a non-cut area of ​​the wall sticker. The groove area may be considered to be a cut area. The burr area may be considered to be a removal area that needs to be removed from the wall sticker. In some embodiments, a high-precision measurement device, such as a 3D line laser measurement instrument, may generate a laser line, which may be shone on the object, thereby acquiring the target area of ​​the object.

[0061] At 320, depth information corresponding to the target region can be determined based on the target region.

[0062] In some embodiments, operation 320 may be performed by the information determination module 1920 or a processor. The depth information may refer to information about the target area along the depth direction of the object. When combined with the device for motion control 200 shown in FIG. 2, the depth direction of the object may be parallel to the width direction of the operation platform 210. In some embodiments, the depth information about the target area may include position information about the target area, such as point cloud data information and coordinate information. The coordinate information may be coordinate information in the camera coordinate system. Furthermore, according to the above calibration method, the coordinate information in the tool head coordinate system may be determined based on the coordinate information in the camera coordinate system, so that the movement trajectory of at least one tool head may be determined based on the coordinate information in the tool head coordinate system.

[0063] In some embodiments, depth information corresponding to different target regions may be determined based on the different target regions. In some embodiments, the target object may include multiple target regions. For example, when the target object is a wall sticker, the wall sticker may be composed of multiple wall sticker units connected in sequence. Each wall sticker unit may have a pattern region, a groove region, and a burr region. The information determination module may determine depth information corresponding to the target regions based on the target regions. For example, based on each wall sticker unit, depth information corresponding to the pattern region, depth information corresponding to the groove region, and depth information corresponding to the burr region of the corresponding wall sticker unit may be determined, respectively.

[0064] In some embodiments, scan information of the high-precision measuring device may be determined based on the encoded information of the encoder, and depth information corresponding to the target area may be determined based on the scan information. In some embodiments, when the object is moving, a rotating part of the encoder (e.g., an anti-skid roller) may move with the object, so that the encoder may be driven to trigger the high-precision measuring device to scan the object (e.g., multiple single-frame scans), thereby acquiring multiple images of the object. In some embodiments, depth information corresponding to the target area, such as coordinate information of an end point, may be determined based on the multiple images acquired by the high-precision measuring device. In some embodiments, when the encoder triggers the high-precision measuring device for a scan, the encoder may rotate once to trigger the high-precision measuring device for one or more scans. In some embodiments, the frame rate of the high-precision measuring device (e.g., a 3D line laser measuring instrument) may be 5000 frames per second, thereby meeting the operating requirements of an object with a motion speed of 1.5 m / s.

[0065] For more information regarding determining depth information corresponding to a target region, reference may be made to FIGS. 4-8 of this disclosure and their associated discussions.

[0066] At 330, a motion trajectory of the at least one tooling head can be determined based on the depth information.

[0067] In some embodiments, operation 330 may be performed by the trajectory determination module 1930 or a processor. The motion trajectory of the at least one machining head may be a motion trajectory when the at least one machining head is machining. For example, when the at least one machining head is cutting, the motion trajectory is a cutting trajectory of the at least one machining head. In some embodiments, the motion trajectory may include a cutting trajectory, a painting trajectory, a welding trajectory, etc.

[0068] In some embodiments, the motion area of ​​the at least one machining head may be determined based on depth information corresponding to the target area. Then, the motion trajectory of the at least one machining head may be determined based on the motion area. The motion area of ​​the at least one machining head may be an area in which the at least one machining head is operated to move. In some embodiments, the motion area may include a cutting area (e.g., a groove area of ​​a wall sticker), a coating area, a welding area, etc. In some embodiments, the motion area within the target area of ​​the object may be an area that allows the at least one machining head to operate, while other areas may be non-moving areas that do not allow the at least one machining head to operate. For example, a pattern area within the target area of ​​a wall sticker does not allow operation by the at least one machining head. The at least one machining head needs to cut in the groove area to ensure the processing requirements of the wall sticker. In some embodiments, the motion area of ​​the at least one machining head may be determined based on coordinate information of each position point within the target area (e.g., coordinate information of an end point). For example, in the depth information of the object, an area formed by a cluster of points whose coordinate values ​​and / or coordinate differences satisfy a predetermined condition (e.g., the coordinate difference is within a predetermined range (e.g., 5 mm)) can be designated as the motion area of ​​at least one machining head.

[0069] In some embodiments, the motion reference path of the at least one machining head may be determined based on the motion region and motion direction of the object. The motion trajectory of the at least one machining head may be determined based on the motion reference path. In some embodiments, the motion reference path may include a centerline path of the motion region and a path parallel to the centerline in the motion region. The path parallel to the centerline in the motion region may be a motion trajectory determined based on the motion region. For example, the path parallel to the centerline in the motion region may be a trisecting line, a quadrant of the motion region, or a path at a predetermined distance from the edge of the motion region. In some embodiments, any path in the motion reference path of the at least one machining head may be specified as the motion trajectory of the at least one machining head.

[0070] In some embodiments, the motion area may include a plurality of sub-areas, and determining the motion trajectory based on the motion area may include determining whether two adjacent sub-areas among the plurality of sub-areas are continuous in the motion direction, and determining whether to add a turning trajectory based on determining whether two adjacent sub-areas among the plurality of sub-areas are continuous in the motion direction.

[0071] In some embodiments, the movement region may be a region formed by connecting multiple partial regions in series along the movement direction. For example, in the field of wall stickers, two adjacent partial regions may refer to the cut regions (such as groove regions) of two adjacent wall stickers. Whether two adjacent partial regions are continuous in the movement direction may refer to whether the two sides in the depth direction of each of the two adjacent partial regions are aligned (i.e., offset) with respect to the movement direction. For example, in the field of wall stickers, a wall sticker roll is formed by joining multiple wall stickers in order. If the rough edge regions on two adjacent wall stickers are not aligned, the two adjacent groove regions corresponding to the two adjacent wall stickers may not be aligned. This can be understood in combination with two adjacent wall stickers, namely, sticker pattern sheet 1 and sticker pattern sheet 2, shown in Figure 11. The sticker edge of sticker pattern sheet 1 is not aligned with the sticker edge of sticker pattern sheet 2. In this case, the groove regions corresponding to the two sticker edges are not aligned. In some embodiments, determining whether two adjacent subregions among the plurality of subregions are continuous in the movement direction may be determined based on coordinate information of the end points of adjacent edges in the two subregions. For example, when the coordinate values ​​of the end points of adjacent edges are continuous along the movement direction, the two adjacent subregions may be continuous in the movement direction. When the coordinate values ​​of the end points of adjacent edges are not continuous along the movement direction, the two adjacent subregions may not be continuous in the movement direction.

[0072] The turning trajectory may refer to a trajectory along which the direction of the at least one machining head is changed. In some embodiments, to ensure that the movement trajectory of the at least one machining head is accurate and the object is not likely to be damaged, whether to add a turning trajectory may be determined based on determining whether two adjacent sub-regions are continuous in the movement direction.

[0073] In some embodiments, when two adjacent sub-regions are continuous in the direction of movement, there may be no deviation region between the two adjacent sub-regions, and no turning trajectory may be added to the movement trajectory of at least one machining head.

[0074] In some embodiments, when two adjacent subregions are not continuous in the direction of movement, a deviation region may exist between the two adjacent subregions. Therefore, a turning trajectory may be added to the deviation region. The deviation region may refer to a deviation region within a connection zone between the two adjacent subregions. In some embodiments, at least one turning point may be determined between two adjacent end points that are not continuous based on the coordinates of the two adjacent end points, and thus the turning trajectory may be determined based on the at least one turning point. For example, the distance of the deviation region in the direction of movement (i.e., the distance of the projection of a line connecting two adjacent end points located in the two adjacent subregions, respectively, in the direction of movement) may be determined, and the number of at least one turning point may be determined based on the number of image frames corresponding to that distance. Therefore, the coordinates of the at least one turning point may be determined based on the number of at least one turning point and the distance of the deviation region in the direction of movement. For more information on determining the at least one turning point and the turning trajectory, please refer to Figures 4, 10-12, and their related descriptions.

[0075] At 340, the at least one tooling head can be controlled to move based on the motion trajectory of the at least one tooling head.

[0076] In some embodiments, operation 340 may be performed by motion control module 1940 or a control assembly. In some embodiments, after the motion trajectory of the at least one machining head is determined, the at least one machining head may be controlled to move to machine the object. For example, a cutting operation may be performed on the object by the at least one machining head based on the cutting trajectory of the at least one machining head. As another example, a coating operation may be performed on the object by the at least one machining head based on the coating trajectory of the at least one machining head. As yet another example, a welding operation may be performed on the object by the at least one machining head based on the welding trajectory of the at least one machining head.

[0077] In some embodiments, the at least one machining head may include a first machining head and a second machining head, and the distance between the first machining head and the second machining head may be constant. In this case, controlling the at least one machining head to move based on the motion trajectory of the at least one machining head may include controlling the first machining head and the second machining head to move based on the motion trajectory of the first machining head. In some embodiments, when the sizes of the motion regions on both sides of the object in the depth direction are the same, the motion trajectories of the first machining head and the second machining head may be the same, and the first machining head and the second machining head may move synchronously based on the same motion trajectory to perform an operation on the object.

[0078] In some embodiments, when the sizes of the motion regions on both sides of the object in the depth direction are different, the first machining head and the second machining head may move based on different motion trajectories to perform operations on different trajectories on both sides of the object in the depth direction. The motion trajectory of at least one machining head may include a first motion trajectory of the first machining head and a second motion trajectory of the second machining head. In this case, controlling the at least one machining head to move based on the motion trajectory of the at least one machining head may include controlling the first machining head to move based on the first motion trajectory and controlling the second machining head to move based on the second motion trajectory. The first motion trajectory and the second motion trajectory may be determined based on scan information from different high-precision measurement devices.

[0079] It should be noted that the above description of process 300 is for illustrative purposes only and does not limit the scope of application of the present disclosure. For those skilled in the art, under the guidance of the present disclosure, various modifications and changes may be made to process 300. For example, operations 310 and 320 may be combined into one operation. However, these modifications and changes still fall within the scope of the present disclosure.

[0080] 4 is a flowchart illustrating an exemplary process for motion control of at least one tooling head, according to some embodiments of the present disclosure. In some embodiments, as shown in FIG. 4, process 400 may include operations 410 through 450.

[0081] At 410, point cloud data of the target area can be obtained based on the target area of ​​the object.

[0082] In some embodiments, operation 410 may be performed by the acquisition module 1910 or a high-precision measuring device. In some embodiments, the point cloud data of the target area may be acquired by scanning the target area of ​​the object with a high-precision measuring device (e.g., a 3D line laser measuring instrument). For example, the point cloud data may be point cloud data of an edge structure of the object. The edge structure may be a structure to be machined in the object (i.e., the edge structure is the position of the motion area of ​​at least one machining head). The edge structure may include a cutting structure, a coating structure, a welding structure, etc. Using a wall sticker as an example, the edge structure may be a groove area of ​​the wall sticker. By cutting off the groove area of ​​the edge of the wall sticker, the edge of the wall sticker may be smooth and clean.

[0083] In some embodiments, a high-precision measurement device may scan an object to obtain point cloud data of a single frame image of the edge structure. The point cloud data of the image frame may be a portion of the depth information of the edge structure. FIG. 5 is a schematic diagram illustrating exemplary point cloud data of an image according to some embodiments of the present disclosure. In some embodiments, using the 3D wall sticker shown in FIG. 1 as an example, a laser line output by a 3D line laser measurement device may be incident on the edge structure of the wall sticker, and point cloud data of the image frame may be obtained as shown in FIG. 5. The image frame shown in FIG. 5 may include a groove region consisting of a left end point of the groove and a right end point of the groove. The cutting point for cutting off the wall sticker may be the midpoint of the groove region, the left end point of the groove region, the right end point of the groove region, or any point between the left and right end points of the groove region.

[0084] At 420, a set of end points for the target area can be determined based on the point cloud data for the target area.

[0085] In some embodiments, operation 420 may be performed by the information determination module 1920 or a processor. In some embodiments, a straight line composed of a set of end points of a target area (e.g., an edge structure) may be used as an operating point for processing the edge structure of an object. For example, the straight line formed by the set of end points of the edge structure may be used as a cutting point for cutting, a coating point for coating, or a welding point for welding the edge structure of an object. That is, the straight line formed by the set of end points of the edge structure may be determined as a motion trajectory of at least one machining head. In some embodiments, the set of end points of the edge structure may be a set of left end points of the edge structure, a set of right end points of the edge structure, or any set of end points between the set of left end points and the set of right end points of the edge structure (e.g., a set of center points between the set of left end points and the set of right end points). Using a wall sticker as an example, the edge structure may be a groove area of ​​the wall sticker, and the set of center points of the edge structure may be a set composed of the center points of the left end points of the groove and the center points of the right end points of the groove.

[0086] In some embodiments, operation 420 may be performed according to process 600 as shown in Figure 6. Figure 6 shows a flowchart illustrating a process for determining a set of center points of a target area based on point cloud data of the target area, according to some embodiments of the present disclosure.

[0087] At 610, a first set of end points and a second set of end points for the target area may be determined based on the point cloud data for the target area. In some embodiments, multiple point cloud data in the point cloud data may be configured to construct a vector and a set of vector angles, point cloud data in the set of vector angles may be excluded, or fragments of the point cloud data may be deleted, and the first set of end points and the second set of end points may be determined. For example, a point cloud data may be designated as a start point, and two other point cloud data at the same distance from the point cloud data may form two vectors, and the point cloud data may be similarly scanned to obtain a set of vector angles. For more information on determining the first set of end points and the second set of end points, please refer to Figures 7 to 8 and their associated descriptions.

[0088] At 620, a set of center points of the target area may be determined based on the first set of end points and the second set of end points.

[0089] In some embodiments, the target area (e.g., edge structure) of an independent object may be continuous, while the edge structure at the connection of two objects may not be continuous. In some embodiments, when the edge structure of an independent object includes multiple substructures (i.e., the motion area described above may include multiple subregions), two adjacent substructures of the multiple substructures may be continuous or discontinuous. As an example, using two wall stickers as the two objects and the edge structure as a groove, a schematic diagram of two wall stickers including a transition zone is shown in FIG. 9. One wall sticker may be sticker pattern sheet 1, and another wall sticker connected to sticker pattern sheet 1 may be sticker pattern sheet 2. The groove of sticker pattern sheet 1 is continuous, and the groove of sticker pattern sheet 2 is also continuous. The connection between sticker pattern sheet 1 and sticker pattern sheet 2 may be referred to as a transition zone (also referred to as a deviation zone), and the transition zone may not include a first set of end points and a second set of end points.

[0090] In some embodiments, the first set of endpoints and the second set of endpoints may be two sets of corresponding endpoints located at opposite ends of the edge structure. The set of center points may be obtained by counting the midpoints of the line formed by two corresponding endpoints in the first set of endpoints and the second set of endpoints. If the point cloud data in the set of center points is continuous, the set of center points may correspond to an object (or substructure). Alternatively, the set of center points may correspond to multiple objects (or multiple substructures), and the edge structure at the junction of the multiple objects may be continuous. If the point cloud data in the set of center points is not continuous, the set of center points may correspond to two or more objects (or substructures).

[0091] In some embodiments, the first set of endpoints and the second set of endpoints may correspond to point cloud data of multiple image frames. The first set of endpoints and the second set of endpoints may be bilateral sets of endpoints corresponding to an object or bilateral sets of endpoints corresponding to two or more objects. Specifically, the continuity of the point cloud data within the first set of endpoints and / or the continuity of the point cloud data within the second set of endpoints may be used to determine that the first set of endpoints and the second set of endpoints correspond to one or more objects.

[0092] The point cloud data being continuous may refer to the coordinate values ​​of the point cloud data being continuous on a coordinate axis in a 3D coordinate system. In some embodiments, continuous coordinate values ​​may refer to the difference between the coordinate values ​​of two adjacent point cloud data on one coordinate axis being less than a predetermined threshold. In some embodiments, the predetermined threshold may be in the range of 0.05 mm to 0.1 mm.

[0093] At 430, it may be determined whether the coordinates of the endpoints in the set of endpoints are continuous in the direction of motion.

[0094] In some embodiments, operation 430 may be performed by the trajectory determination module 1930 or a processor. In some embodiments, the direction of movement may be the scanning direction of the high-precision measurement device or the direction opposite to the scanning direction. Whether the coordinates of the endpoints in the set of endpoints are continuous in the direction of movement may include whether the coordinates of the endpoints in the set of endpoints are continuous in the scanning direction and whether the coordinates of the endpoints in the set of endpoints are continuous in the direction opposite to the scanning direction. In this scenario, whether the coordinates of the endpoints in the set of endpoints are not continuous in the direction of movement may refer to the distance between the coordinates of two adjacent endpoints in the direction of movement being greater than the distance between the coordinates of any other two endpoints in the direction of movement.

[0095] In other embodiments, the direction of motion may be perpendicular to the scanning direction of the high-precision measuring device. In this scenario, the coordinates of the endpoints that are not consecutive in the direction of motion may refer to the coordinates of two adjacent endpoints being different in the direction of motion.

[0096] At 440, in response to determining that the coordinates of the endpoints in the set of endpoints are not consecutive in the direction of movement, at least one turn point between two adjacent endpoints may be determined based on the coordinates of the two adjacent endpoints that are not consecutive in the set of endpoints.

[0097] In some embodiments, operation 440 may be performed by the trajectory determination module 1930 or a processor. At least one turning point may be configured to determine a turning trajectory. In some embodiments, the at least one turning point may be determined based on coordinate information of coordinates of two adjacent end points in the direction of movement. For example, first coordinate information and second coordinate information of coordinates of two adjacent end points in the direction of movement may be determined, and the distance between the coordinates of the two adjacent end points in the direction of movement may be determined based on the first coordinate information and the second coordinate information. Furthermore, the number of at least one turning point may be determined based on the number of image frames corresponding to the distance, and the coordinates of the at least one turning point may be determined. For further information on determining the at least one turning point, please refer to Figures 10 to 12 and their related descriptions.

[0098] In some embodiments, after the number of at least one turning point and the coordinates of the at least one turning point are determined, a turning trajectory of the at least one machining head can be determined based on the number of at least one turning point and the coordinates of the at least one turning point.

[0099] At 450, at least one tooling head can be controlled to move with a change of direction based on at least one pivot point.

[0100] In some embodiments, operation 450 may be performed by the motion control module 1940 or control assembly. In some embodiments, the operating position of at least one tooling head may be changed at the turn point to perform an operation on the transition zone.

[0101] In some embodiments, at least one frame identifier corresponding to the at least one turning point may be determined, and the at least one machining head may be controlled to perform an operation at the at least one turning point when the high-precision measuring device acquires an image corresponding to the at least one frame identifier. In this way, the at least one machining head may move with a smooth direction change in the transition zone, a smooth transition of the at least one machining head may be achieved, and no sharp edges between operations may be ensured.

[0102] For example, if the anti-skid roller of the encoder rotates a length P in one revolution and Q pulses are generated between two adjacent image frames, the encoder step length may be P / Q. The horizontal distance S between two turning points may be obtained by multiplying the distance between two frame identifiers corresponding to the two turning points by the encoder step length. After the at least one machining head completes an operation at one turning point, the control assembly (e.g., an industrial computer) may control a servo motor for moving the at least one machining head to drive the at least one machining head to move a distance S in the horizontal direction, so that an operation at an adjacent turning point may be performed. Specifically, the industrial computer may control the coordinates of the at least one turning point and the encoder identifier (ID) of the at least one turning point. By controlling the encoder ID of the at least one turning point, it may be determined which transition center point should be machined, and by controlling the coordinates of the at least one turning point, it may be determined the operation position.

[0103] In some embodiments, a high-precision measuring device may be positioned immediately in front of the at least one machining head to identify the nearest turning point. When an object moves toward the at least one machining head, the industrial computer may send coordinate information of the nearest turning point to a servo motor controller, which may then control the servo motor for moving the at least one machining head to move left or right. However, because the edge structures of multiple objects may not be flat, if the servo motor for moving the at least one machining head is not moved left or right at the at least one turning point in time, an error in the operating position or an unsmooth operation may occur. For example, if a wall sticker is continuously wound up, the wall sticker on the winding table may continue to thicken, causing the linear velocity of the wall sticker to increase nonlinearly, and the machining distance of the wall sticker calculated based on the linear velocity may not be accurate. Therefore, in embodiments of the present disclosure, the machining distance of the wall sticker may be determined based on the encoder ID. The anti-skid roller of the encoder rotates a length P per rotation, and the initial encoder ID is known. The value obtained by subtracting the initial encoder ID from the current encoder ID may be multiplied by the length P to obtain a result, which may then be added to the horizontal distance between the high-precision measuring device and the at least one machining head, so that the machining distance of the wall sticker can be accurately determined.

[0104] It should be noted that the above description of process 400 is for illustrative purposes only and does not limit the scope of application of the present disclosure. For those skilled in the art, under the guidance of the present disclosure, various modifications and changes can be made to process 400. For example, operations 430 and 440 can be combined into one operation. However, these modifications and changes still fall within the scope of the present disclosure.

[0105] 7 is a flowchart illustrating an exemplary process for determining a first set of endpoints and a second set of endpoints included in a target area, according to some embodiments of the present disclosure. In some embodiments, operation 610 may be performed according to process 700 of FIG.

[0106] At 710, second point cloud data and third point cloud data that are a first distance from the first point cloud data may be determined. The first point cloud data among the point cloud data may be designated as a starting point.

[0107] In some embodiments, the first point cloud data may be point data at an arbitrary position within the point cloud data. In some embodiments, the first point cloud data may be randomly determined. In some embodiments, the depth of the edge structure along the depth direction may be determined from the point cloud data. In some embodiments, the first distance may be equal to half the depth of the edge structure.

[0108] In some embodiments, the first point cloud data, the second point cloud data, and the third point cloud data may be point cloud data corresponding to the same image frame, and the second point cloud data and the third point cloud data may be located in front of and behind the first point cloud data, respectively.

[0109] At 720, a vector angle may be obtained by determining the angle between a first vector and a second vector, where the first vector may be composed of the first point cloud data and the second point cloud data, and the second vector may be composed of the first point cloud data and the third point cloud data.

[0110] In some embodiments, a cross product multiplication may be performed on the first vector and the second vector, and the result of the cross product multiplication may be a vector angle between the first vector and the second vector.

[0111] At 730, a set of vector angles may be obtained by scanning the point cloud data.

[0112] In some embodiments, for each image frame collected by the high precision measurement device, all point cloud data in the image frame may be scanned, and an angle between a vector formed by the point cloud data and the point cloud data before the point cloud data and another vector formed by the point cloud data and the point cloud data after the point cloud data may be determined, and thus a set of vector angles may be obtained.

[0113] For example, after operations 710 and 720, a third point cloud data in the point cloud data may be designated as a starting point, and the first point cloud data and the fourth point cloud data that are a first distance from the third point cloud data may be determined. A vector formed by the first point cloud data and the third point cloud data may be cross-product-multiplied with a vector formed by the third point cloud data and the fourth point cloud data, thereby obtaining a vector angle. Similarly, a set of vector angles for the image frame may be obtained.

[0114] At 740, a first set of endpoints and a second set of endpoints may be determined based on the set of vector angles.

[0115] In some embodiments, a set of vector angles may be excluded. For example, a fragment of point cloud data may be excluded based on determining whether vertices corresponding to vector angles in the set of vector angles are continuous. If a vertex corresponding to a vector angle in the set of vector angles is not continuous with other vertices corresponding to other vector angles in the set of vector angles based on the coordinates of the vertex corresponding to the vector angle and the coordinates of the other vertices corresponding to the other vector angles, the vertex may be a fragment of point cloud data, and point cloud data corresponding to vectors formed from the vertices may be deleted. Similarly, continuous regions in an image frame (e.g., whether two adjacent sub-regions are continuous) may be determined. In some embodiments, point cloud data corresponding to vector angles and / or vectors in the set of vector angles may be excluded to determine a first set of end points and a second set of end points. For example, tangent values ​​of vector angles in the set of vector angles may be excluded to obtain a subset of vector angles that satisfy an angle condition. As another example, point cloud data corresponding to a subset of vector angles may be excluded to obtain a candidate set of end points that satisfy a distance condition. For a detailed description of determining a first set of end points and a second set of end points based on a set of vector angles, please refer to FIG. 8 and its related description.

[0116] It should be noted that the above description of the partial operations of operation 610 is for illustrative purposes only and does not limit the scope of application of the present disclosure. For those skilled in the art, under the guidance of the present disclosure, various modifications and changes may be made to operation 610. However, these modifications and changes still fall within the scope of the present disclosure.

[0117] 8 is a flowchart illustrating another exemplary process for determining a first set of endpoints and a second set of endpoints included in a target area, according to some embodiments of the present disclosure. Operation 740 may be performed according to process 800 as shown in FIG.

[0118] At 810, a subset of vector angles in the set of vector angles having tangent values ​​greater than a first threshold may be obtained.

[0119] In some embodiments, a set of vector angles may be filtered out based on angle. Using a groove edge structure as an example, the vector angle at the bottom end of the groove is greater than or close to 90°, i.e., the sine value of the vector angle at the bottom end of the groove is close to 1 and the tangent value is close to infinity. Vector angles in the set of vector angles whose tangent value is greater than a first threshold may constitute a subset of vector angles. By setting an appropriate first threshold, vector angles composed of some point cloud data that are not at the bottom end of the groove may be filtered out. In some embodiments, the first threshold may be in the range of 0.5 to 1. For example, the first threshold may be in the range of 0.5 to 0.8.

[0120] At 820, a first candidate set of end points may be obtained by determining point cloud data corresponding to a subset of the vector angles whose spacing satisfies a distance threshold condition.

[0121] In some embodiments, the edge structure may have a depth range. Using a groove as an example, where the edge structure is a wall sticker, the depth range of the groove is typically 3 mm to 5 mm. Therefore, the distance between the bottom endpoints of the groove may be approximately 3 mm to 5 mm, and the distance threshold condition may be the depth range of the groove.

[0122] In some embodiments, the spacing of the point cloud data may be obtained by calculating the spacing between point cloud data corresponding to a subset of the vector angles, and the point cloud data whose spacing satisfies the distance threshold condition may consist of a first candidate set of endpoints, and the data in the first candidate set of endpoints may be endpoints at the bottoms of both sides of the groove.

[0123] At 830, a second candidate set of end points may be obtained by determining point cloud data corresponding to vector angles in the first candidate set of end points whose height difference is less than a second threshold.

[0124] In some embodiments, taking a groove as an example of an edge structure, the bottom of the groove is horizontal, the two bottom corners of the groove are located on the same horizontal line, and the height difference between the two bottom corners of the groove is zero or close to zero. Therefore, point cloud data corresponding to a first set of candidate end points can be excluded by comparing the height difference between two vector angles. If the height difference between the two vector angles is less than a second threshold, the two vector angles may be groove bottom angles, and point cloud data corresponding to the vector angles whose height difference is less than the second threshold may constitute a second set of candidate end points. In some embodiments, the second threshold can be flexibly set based on actual applications. For example, the second threshold can be in the range of 0.1 to 0.5 mm. For example, the second threshold can be set as 0.1 mm, 0.2 mm, etc.

[0125] At 840, the first set of end points and the second set of end points included in the second candidate set of end points may be determined based on the direction information of the vector angles corresponding to the point cloud data in the second candidate set of end points.

[0126] In some embodiments, the point cloud data in the second candidate set of end points may be classified based on the direction information of the vector angles corresponding to the point cloud data in the second candidate set of end points, and the point cloud data corresponding to vector angles with the same direction may be divided into sets of end points to obtain a first set of end points and a second set of end points. The point cloud data in the first set of end points and the point cloud data in the second set of end points may correspond to the end points of the bottoms of both sides of the groove, respectively. The direction information of the vector angles may refer to geometric feature information of the vector angles. For example, the direction information may be the direction from the top of the groove to the bottom of the groove, or the direction from the bottom of the groove to the top of the groove.

[0127] In some embodiments, the 3D coordinate values ​​of point cloud data within any set of end points corresponding to independent objects may not change in two dimensions. For example, the coordinate values ​​of point cloud data within a set of left groove end points in the Z-axis and Y-axis directions may remain unchanged, while the coordinate values ​​of point cloud data within a set of left groove end points in the X-axis direction may change continuously. The coordinate values ​​of point cloud data within a set of right groove end points in the Z-axis and Y-axis directions may remain unchanged, while the coordinate values ​​of point cloud data within a set of right groove end points in the X-axis direction may change continuously. The coordinate values ​​of the left and right groove end points in the Y-axis direction may be different. Therefore, the first set of end points and the second set of end points may also be identified based on the continuity of the 3D coordinates corresponding to the point cloud data. If the coordinate values ​​of two point cloud data in the X-axis and Y-axis directions are different, the two point cloud data may belong to two different sets of end points.

[0128] In some embodiments, the point cloud data corresponding to the image frames may be classified into a first set of end points and a second set of end points based on the direction information of the direction vectors comprising the point cloud data. The first set of end points corresponding to the multiple image frames may also be fused with the first set of end points based on the direction information of the direction vectors comprising the point cloud data, and the second set of end points corresponding to the multiple image frames may be fused with the second set of end points.

[0129] In some embodiments, the point cloud data corresponding to the image frames may also be classified into a first set of end points and a second set of end points based on the direction information of the direction vectors comprising the point cloud data. Then, the first set of end points corresponding to the multiple image frames may be clustered into the first set of end points by clustering, and the second set of end points corresponding to the multiple image frames may be clustered into the second set of end points. During the clustering process, redundant point cloud data included in the first set of end points and the second set of end points corresponding to each image frame may be removed. Using a wall sticker as an example, the redundant point cloud data may be point cloud data corresponding to the rough edges of the wall sticker.

[0130] It should be noted that the above description of operation 740 is for illustrative purposes only and does not limit the scope of application of the present disclosure. For those skilled in the art, under the guidance of the present disclosure, various modifications and changes may be made to operation 740. For example, operation 840 may be omitted, and the first candidate set of endpoints and the second candidate set of endpoints may be regarded as the first set of endpoints and the second set of endpoints. However, these modifications and changes are still within the scope of the present disclosure.

[0131] 10 is a flowchart illustrating an exemplary process for determining at least one turning point, according to some embodiments of the present disclosure. In some embodiments, operation 440 of FIG. 4 may be performed according to process 1000 as shown in FIG.

[0132] At 1010, first coordinate information and second coordinate information of coordinates of two adjacent end points in the direction of movement may be determined.

[0133] In some embodiments, if the coordinates of each end point in the set of end points are discontinuous in the direction of movement, there may be a transition zone between at least two edge structures of an object (or two adjacent substructures of the same edge structure). The first coordinate information and the second coordinate information may refer to the coordinate values ​​of the end points or center points of the edge structures of the two objects (or two adjacent substructures of the same edge structure) that are adjacent to the transition zone in the direction of movement. As shown in FIG. 11 , the first coordinate information may include the coordinate value of the center point of the set of center points of the edge structures of the sticker pattern sheet 1 that is closest to the transition zone in the direction of movement. The second coordinate information may include the coordinate value of the center point of the set of center points of the edge structures of the sticker pattern sheet 2 that is closest to the transition zone in the direction of movement.

[0134] At 1020, the distance between the coordinates of two adjacent end points in the direction of motion can be determined.

[0135] In some embodiments, the coordinates of two adjacent end points may be first coordinate information and second coordinate information, respectively, as shown in Figure 11. The distance between the first coordinate information and the second coordinate information in the movement direction may be represented by L.

[0136] At 1030, a number of at least one turning point may be determined based on the number of image frames corresponding to the distance.

[0137] In some embodiments, a first frame identifier and a second frame identifier corresponding to two adjacent end points may be determined, respectively. The number of image frames corresponding to the distance may be determined based on the first frame identifier and the second frame identifier. Thus, the number of at least one turning point may be equal to the number of image frames.

[0138] In some embodiments, the first and second frame identifiers corresponding to two adjacent end points may be frame identifiers of images corresponding to the end points in the scan, or identifiers of an encoder that triggers a high-precision measurement device (e.g., a 3D line laser measurement instrument) to scan the images corresponding to the end points.

[0139] At 1040, coordinates of the at least one turning point can be determined based on the distance and the number of the at least one turning point.

[0140] In some embodiments, the coordinates of the at least one turning point may be determined based on the frame identifiers corresponding to the two adjacent end points. For example, the number of image frames corresponding to the distance may be determined based on the first frame identifier and the second frame identifier corresponding to the two adjacent end points, so that the at least one turning point may be determined corresponding to the number of image frames on the line segment consisting of the two adjacent end points. For further explanation of determining the coordinates of the at least one turning point based on the distance and the number of the at least one turning point, please refer to FIG. 12 and its related description.

[0141] It should be noted that the above description of operation 440 is for illustrative purposes only and does not limit the scope of application of the present disclosure. For those skilled in the art, under the guidance of the present disclosure, various modifications and changes may be made to operation 440. However, these modifications and changes still fall within the scope of the present disclosure.

[0142] 12 is a flowchart illustrating another process for determining at least one turning point according to some embodiments of the present disclosure. In some embodiments, operation 1040 of FIG. 10 may be performed according to process 1200 as shown in FIG.

[0143] At 1210, a first frame identifier and a second frame identifier corresponding to two adjacent endpoints may be determined, respectively.

[0144] In some embodiments, one endpoint in the set of endpoints with a change in direction of motion may be the center point closest to the transition zone in sticker pattern 1, as shown in Figure 11. Another endpoint in the set of endpoints with a change in direction of motion may be the center point closest to the transition zone in sticker pattern 2.

[0145] In some embodiments, a trigger signal may be sent by marking the frame identifier with each rotation of the anti-skid roller of the encoder, and the trigger signal may be sent to the high-precision measurement device based on the control assembly to trigger the high-precision measurement device to scan the edge structure of the object. Thus, once the encoder ID changes, the high-precision measurement device can collect an image frame. The image frame identifier may be incremented by 1 based on the previous frame identifier, and the encoder ID may also be incremented by 1 accordingly. The encoder ID and the image frame identifier may be changed synchronously.

[0146] At 1220, a number of image frames corresponding to the distance may be determined based on the first frame identifier and the second frame identifier.

[0147] In some embodiments, the difference between the first frame identifier and the second frame identifier may be the number of image frames between two adjacent end points, which may also be referred to as the number of image frames included in the transition zone.

[0148] At 1230, at least one turning point corresponding to a number of at least one turning point may be determined on a line segment made up of two adjacent end points.

[0149] In some embodiments, two adjacent end points with discontinuous coordinates in the direction of movement may be configured to form a line segment, and the length of the line segment in the direction of movement may be divided according to the number of image frames determined based on the first frame identifier and the second frame identifier, so that the number of at least one turning point may be determined as M, and the M turning points may form a set of transition turning points. The M turning points between the two adjacent end points may be distributed at equal intervals in the direction of movement. In some embodiments, the line segment composed of two adjacent end points whose coordinates are discontinuous in the direction of movement may be a curved line such as a circular arc or a polygon.

[0150] It should be noted that the above description of process 1200 is for illustrative purposes only and does not limit the scope of application of the present disclosure. For those skilled in the art, under the guidance of the present disclosure, various modifications and changes may be made to process 1200. However, these modifications and changes still fall within the scope of the present disclosure.

[0151] To achieve excellent results when applying the method for motion control provided in the modified embodiment, the movement trajectory (and turning trajectory) of at least one machining head can be determined on a depth map of the edge structure of the object scanned by the high-precision measuring device. Specifically, point cloud data of each image frame collected by the high-precision measuring device can be stored, and the encoder IDs can be accumulated in the movement direction of the object to obtain all point cloud data corresponding to the object. Then, all point cloud data can be projected onto the depth map. Then, at least one turning point of the object can be projected onto the depth map, and the at least one turning point can be marked. Finally, adjacent turning points can be connected, and the movement trajectory and turning trajectory of at least one machining head relative to the object can be obtained. The movement trajectory of at least one machining head relative to the object can be shown in FIG. 13.

[0152] FIG. 14 shows a flowchart illustrating a process for processing an object according to some embodiments of the present disclosure. After point cloud data of an object is acquired, the point cloud data may be verified to determine whether the point cloud data is valid. Verifying the point cloud data may include determining whether the number of point cloud data is valid (e.g., whether the number of point cloud data is 0; a determination that the number of point cloud data is 0 is invalid), determining whether the point cloud data pointer is empty, etc. If the verification fails, an error code may be returned to terminate the process. If the verification is successful, the coordinates of the end point of the frame image may be identified based on the first function. The second function may store the coordinates of the end point so that when the operating point of the object reaches under at least one machining head, the coordinates of the end point of the operating point may be transmitted. When the number of image frames reaches a predetermined maximum, the third function may construct the coordinates of the center point based on the coordinates of the end point.

[0153] In some embodiments, currently stored center point data of the edge structure may be output and sorted by updating the currently stored center point data of the edge structure based on an update function. Then, when at least one machining head reaches a cutting point, data corresponding to the operating point may be transmitted. For example, FIG. 15 shows a flowchart illustrating a process for transmitting coordinates corresponding to an operating point by using an update function according to some embodiments of the present disclosure. The coordinates of the end point may be obtained based on the update function, and it may be determined whether the number of image frames reaches a predetermined maximum value. If the predetermined maximum value is reached, the operating process may be initiated, the coordinates of the first center point may be output, and the stored coordinates of the center points may be moved forward in sequence. When at least one machining head reaches an operating point, the stored coordinates of the first center point may be output, and the stored order of the stored coordinates of the other center points except for the first center point may be moved forward in sequence.

[0154] For example, FIG. 16 shows a flowchart illustrating a process for using the first function to identify coordinates of end points of an image frame according to some embodiments of the present disclosure. Whether the number of objects with vector angle changes is greater than one may be determined based on a set of vector angles of directional vectors with certain point cloud data as vertices in the point cloud data of the image frame when determining the point cloud data of the image frame. If the number of objects with vector angle changes is greater than one, continuity of the point cloud data of the image may be determined. Then, if the number of objects satisfying the continuity condition is one or more, the vector angles may be determined based on height. If there are vector angles with the same height, a set of coordinates of the end points may be output.

[0155] In some embodiments, FIG. 17 shows a flowchart illustrating a process for using the second function to store coordinates of end points, according to some embodiments of the present disclosure. If the number of end points is not equal to 2, it may be further determined whether the number of identified edge center points is greater than 0. When the number of identified edge center points is greater than 0, a set of edge center points may be constructed. Specifically, a counter count1 may be started. Each time an edge center point is identified, the value of counter count1 may be increased by 1. If the number of end points is equal to 2, the data of the current frame may be stored. When the value of counter counter1 is greater than or equal to a predetermined value N, a third function may be started to determine the coordinates of the center points.

[0156] In some embodiments, Figure 18 is a flowchart illustrating a process for determining the coordinates of the center point by using the third function, according to some embodiments of the present disclosure. To remove outliers, two sets of endpoint data, each consisting of two endpoints, may be excluded. The coordinates of the center point may be determined based on the two sets of endpoint data, and the coordinates of the center point may be stored in a corresponding frame data structure. All stored frame data structure packages may be scanned, and the coordinates of the center points of all endpoint data may be determined.

[0157] It should be noted that the embodiment of the present disclosure uses the operating point as the midpoint of the edge structure as an example, and the actual operating point may be the end point of the edge structure or other points with geometric characteristics. In the embodiment of the present disclosure, images of the object may be collected by a high-precision measuring device to obtain 3D point cloud data. The transition center point may be determined based on the 3D point cloud data, and the measurement accuracy of the coordinate information of the transition center point may be 0.05 mm. At the same time, when at least one machining head performs an operation on the object, the contour curve of the operation may not need to be prepared in advance. As long as the object has certain geometric characteristics, an image acquisition operation may be performed and the operating point of the geometric characteristics may be identified.

[0158] FIG. 19 is a block diagram illustrating an exemplary system for controlling the motion trajectory of at least one work head, according to some embodiments of the present disclosure.

[0159] 19 , a system 1900 for motion control of at least one machining head may include an acquisition module 1910, an information determination module 1920, and a trajectory determination module 1930. The acquisition module 1910 may be configured to acquire a target area of ​​an object based on a scan of a high-precision measuring device. The information determination module 1920 may be configured to determine depth information corresponding to the target area based on the target area. The trajectory determination module 1930 may be configured to determine a motion trajectory of the at least one machining head based on the depth information.

[0160] In some embodiments, the information determination module 1920 may be configured to determine scan information of the high-precision measuring device based on coding information of the encoder. Depth information may be determined based on the scan information. In some embodiments, the information determination module 1920 may be configured to determine a motion region of the at least one machining head based on the depth information. A motion trajectory may be determined based on the motion region. In some embodiments, the information determination module 1920 may be configured to determine a motion reference path of the at least one machining head based on the motion region and the motion direction, and to determine a motion trajectory based on the motion reference path. In some embodiments, the motion reference path may include a centerline path of the motion region or a path parallel to a centerline of the motion region. In some embodiments, the trajectory determination module 1930 may be configured to determine whether two adjacent subregions of the plurality of subregions are continuous in the motion direction, and to determine whether to add a turning trajectory based on the determination of whether two adjacent subregions of the plurality of subregions are continuous in the motion direction. In some embodiments, in response to determining that two adjacent sub-regions of the plurality of sub-regions are not continuous in the direction of movement, a turning trajectory may be added in a deviation region between the two adjacent sub-regions.

[0161] In some embodiments, the system 1900 for motion control of at least one tooling head may also include a motion control module 1940 configured to control the at least one tooling head to move based on a motion trajectory of the at least one tooling head. In some embodiments, the at least one tooling head may include a first tooling head and a second tooling head, and a distance between the first tooling head and the second tooling head is constant. Controlling the at least one tooling head to move based on the motion trajectory of the at least one tooling head may include controlling the first tooling head and the second tooling head to move based on the motion trajectory of the first tooling head. In some embodiments, the at least one tooling head may include a first tooling head and a second tooling head, and the motion trajectory of the at least one tooling head may include a first motion trajectory of the first tooling head and a second motion trajectory of the second tooling head. Controlling at least one machining head to move based on a motion trajectory of the at least one machining head may include controlling a first machining head to move based on a first motion trajectory and controlling a second machining head to move based on a second motion trajectory.

[0162] In some embodiments, the acquisition module 1910 may be configured to acquire point cloud data of the target area based on the target area of ​​the object, the information determination module 1920 may be configured to determine a set of end points of the target area based on the point cloud data of the target area, and the depth information may include the point cloud data and the set of end points.

[0163] In some embodiments, determining a set of end points of the target area based on the point cloud data of the target area may include determining second point cloud data and third point cloud data that are a first distance from the first point cloud data, where the first point cloud data among the point cloud data is designated as a start point; obtaining a vector angle by determining an angle between a first vector and a second vector, where the first vector may be composed of the first point cloud data and the second point cloud data, and the second vector may be composed of the first point cloud data and the third point cloud data; obtaining the set of vector angles by scanning the point cloud data; and determining a first set of end points and a second set of end points based on the set of vector angles, where the first set of end points and the second set of end points may belong to the set of end points.

[0164] In some embodiments, determining a set of end points of the target area based on the point cloud data of the target area may include determining second point cloud data and third point cloud data that are a first distance from the first point cloud data, where the first point cloud data among the point cloud data is designated as a start point; obtaining a vector angle by determining an angle between a first vector and a second vector, where the first vector may be composed of the first point cloud data and the second point cloud data, and the second vector may be composed of the first point cloud data and the third point cloud data; obtaining the set of vector angles by scanning the point cloud data; determining a first set of end points and a second set of end points based on the set of vector angles; and determining a set of center points based on the first set of end points and the second set of end points, where the set of center points belong to the set of end points.

[0165] In some embodiments, determining the first set of end points and the second set of end points based on the set of vector angles may include: obtaining a subset of vector angles in the set of vector angles whose tangent values ​​are greater than a first threshold; obtaining a first candidate set of end points by determining point cloud data in the point cloud data corresponding to the subset of vector angles, the spacing of which satisfies a distance threshold condition; obtaining a second candidate set of end points by determining point cloud data in the first candidate set of end points corresponding to vector angles whose height difference is less than a second threshold; and determining the first set of end points and the second set of end points included in the second candidate set of end points based on direction information of the vector angles corresponding to the point cloud data in the second candidate set of end points.

[0166] In some embodiments, the trajectory determination module 1930 may be configured to determine whether coordinates of the end points in the set of end points are continuous in the direction of movement, and in response to determining that the coordinates of the end points in the set of end points are not continuous in the direction of movement, determine at least one turn point between two adjacent end points based on the coordinates of the two adjacent end points that are not continuous in the set of end points, where the at least one turn point is configured to determine a turn trajectory.

[0167] In some embodiments, determining at least one turning point between two adjacent endpoints that are not consecutive in the set of endpoints based on coordinates of the two adjacent endpoints may include determining a distance between the coordinates of the two adjacent endpoints in the direction of movement, determining a number of at least one point based on a number of image frames corresponding to the distance, and determining coordinates of the at least one turning point based on the distance and the number of the at least one turning point. In some embodiments, determining the number of at least one turning point based on the number of image frames corresponding to the distance may include determining first and second frame identifiers corresponding to the two adjacent endpoints, respectively, determining the number of image frames corresponding to the distance based on the first and second frame identifiers, and determining that the number of the at least one turning point is equal to the number of image frames. In some embodiments, determining the coordinates of the at least one turning point based on the distance and the number of the at least one turning point may include determining at least one turning point corresponding to the number of the at least one turning point on a line segment consisting of two adjacent end points, wherein the at least one turning point may be located between the two adjacent end points, and the distance between two adjacent turning points of the at least one turning point in the direction of movement may be equal.

[0168] In some embodiments, the trajectory determination module 1940 may be configured to control the at least one machining head to move with a change of direction based on the at least one turning point. In some embodiments, controlling the at least one machining head to move with a change of direction based on the at least one turning point may include determining a frame identifier corresponding to each of the at least one turning point, and controlling the at least one machining head to move with a change of direction based on the at least one turning point when the encoder triggers the high precision measurement device to scan a target area corresponding to the frame identifier.

[0169] FIG. 20 is a structural diagram illustrating an exemplary hardware composition of an electronic device according to some embodiments of the present disclosure.

[0170] Embodiments of the present disclosure may provide an electronic device that may include a memory configured to store executable instructions and a processor configured to perform methods provided in embodiments of the present disclosure when executing the executable instructions stored in the memory.

[0171] 20, electronic device 200 may include at least one processor 2100, memory 2200, and at least one network interface 2300. The various assemblies in electronic device 2000 may be coupled by bus system 2400. It should be understood that bus system 2400 is used to realize communication between these assemblies. Bus system 2400 may include a power bus, a control bus, a status signal bus, etc., or a combination thereof, in addition to a data bus.

[0172] It should be understood that memory 2200 may be volatile or nonvolatile memory, or may include volatile and nonvolatile memory. Nonvolatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electronically erasable programmable read-only memory (EEPROM), magnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disk, or compact disc read-only memory (CD-ROM). Magnetic surface memory may be magnetic disk memory or magnetic tape memory. Volatile memory may be random access memory (RAM) used as an external cache. Many forms of RAM may be available, such as, by way of example only, static random access memory (SRAM), synchronous static random access memory (SSRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), sync link dynamic random access memory (SLDRAM), direct rambus random access memory (DRRAM), etc. The memory 2200 described in embodiments of the present disclosure may include, but is not limited to, these types of memory or any other type of memory.

[0173] The memory 2200 in the embodiments of the present disclosure may be configured to store various types of data to support the operation of the electronic device 2000. The data may include any computer program, such as the program 2210, for implementation in the electronic device 2000. A program for performing the methods of the embodiments of the present disclosure may be included in the program 2210.

[0174] The methods disclosed in the embodiments of the present disclosure may be applied to or implemented by the processor 2100. The processor 2100 may be an integrated circuit chip with signal processing capabilities. In the process of implementing the method, each operation of the above method may be implemented by an integrated logic circuit in hardware or by instructions in the form of software in the processor 2100. The processor 2100 may be a general-purpose processor, a digital signal processor (DSP), or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, etc. The processor 2100 may implement or execute the methods, operations, and logic blocks disclosed in the embodiments of the present disclosure. The general-purpose processor may be a microprocessor or any conventional processor. The operations of the methods disclosed in connection with the embodiments of the present disclosure may be directly reflected in the completion of the execution of a hardware decoding processor or a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which may be located in the memory 2200. The processor 2100 may read information in the memory 2200 and perform the operations of the above method in combination with the hardware.

[0175] In an exemplary embodiment, the electronic device 2000 may be implemented by one or more application specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field programmable gate arrays (FPGAs), general purpose processors, controllers, microcontroller units (MCUs), microprocessor units (MPUs), or other electronic components for performing the above-described methods.

[0176] An embodiment of the present disclosure may provide a computer program product or a computer program having computer instructions stored in a computer-readable storage medium. A processor of a computer device may read the computer instructions from the computer-readable storage medium, and the processor may execute the computer instructions to cause the computer device to implement the method for motion control described in the embodiment of the present disclosure.

[0177] Embodiments of the present disclosure may provide a computer-readable storage medium storing executable instructions that, when executed by a processor, are configured to implement methods provided in embodiments of the present disclosure, such as methods for motion control of at least one machining head shown in Figures 1 to 18.

[0178] In some embodiments, the computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, flash memory, magnetic surface memory, optical disk, or CD-ROM, or may be a variety of devices including one or any combination of the above memories.

[0179] In some embodiments, the computer instructions may be written in any form of programming language (including compiled or interpreted, or declarative or procedural languages), such as in the form of software, software modules, scripts or code, and may be deployed in any form, including as a stand-alone program or as a module, component, subroutine or other unit suitable for use in a computing environment.

[0180] For example, computer instructions may, but do not necessarily, correspond to a file in a file system and may be stored in a portion of a file that holds other programs or data, for example, as one or more scripts in HyperText Markup Language (HTML), as a single file dedicated to the program in question, or as multiple cooperating files (e.g., files that store one or more modules, subroutines, or portions of code).

[0181] For example, computer instructions may be deployed to be executed on one computing device, or on multiple computing devices located at one location, or on multiple computing devices distributed across multiple locations and interconnected by a communications network.

[0182] Having thus described the basic concepts, it may be apparent to those skilled in the art after reading this detailed disclosure that the foregoing detailed disclosure is presented by way of example and not by way of limitation. Although not expressly stated herein, various alterations, improvements, and modifications may exist and are contemplated by those skilled in the art. These alterations, improvements, and modifications are intended to be suggested by this disclosure and are within the spirit and scope of the exemplary embodiments of the disclosure.

[0183] Meanwhile, several terms have been used to describe embodiments of the present disclosure. For example, the terms "one embodiment," "an embodiment," and / or "some embodiments" mean that a particular feature, structure, or characteristic described in connection with an embodiment is included in at least one embodiment of the present disclosure. Therefore, it is emphasized and should be understood that two or more references to "an embodiment" or "one embodiment" or "alternative embodiments" in various parts of this specification do not necessarily all refer to the same embodiment. Furthermore, particular features, structures, or characteristics may be combined as appropriate in one or more embodiments of the present disclosure.

[0184] Furthermore, it will be understood by those skilled in the art that aspects of the present disclosure may be illustrated and described herein in any of numerous patentable classes or contexts, including any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof. Accordingly, aspects of the present disclosure may be implemented entirely in hardware, entirely in software (including firmware, resident software, microcode, etc.), or in a combination of software and hardware implementations, all of which may be generally referred to herein as "data blocks," "modules," "engines," "units," "components," or "systems." Furthermore, aspects of the present disclosure may be in the form of a computer program product embodied in one or more computer-readable medium(s) having computer-readable program code embodied therein.

[0185] A computer-readable signal medium may include a propagated data signal in which computer-readable program code is embodied, for example, in baseband or as part of a carrier wave. Such a propagated signal may be in any of a variety of forms, including electromagnetic signals, optical signals, etc., or any suitable combination thereof. A computer-readable signal medium is not a computer-readable storage medium and may be any computer-readable medium that can communicate, propagate, or transport a program used by or associated with an instruction execution system, apparatus, or device. Program code embodied in a computer-readable signal medium may be transmitted using any suitable medium, including wireless, wired, fiber optic cable, RF, etc., or any suitable combination of the above.

[0186] Computer program code for carrying out operations for aspects of the present disclosure may be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java, Scala, Smalltalk, Eiffel, JADE, Emerald, C++, C#, VB.NET, Python, etc.; the “C” programming language; traditional procedural programming languages ​​such as Visual Basic, Fortran 2003, Perl, COBOL 2002, PHP, ABAP, etc.; dynamic programming languages ​​such as Python, Ruby, and Groovy, or other programming languages. The program code may run as a standalone software package, entirely on the operator's computer, partially on the operator's computer, partially on the operator's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter scenario, the remote computer may be connected to the operator's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (e.g., through the Internet using an Internet Service Provider) or in a cloud computing environment, or the connection may be provided as a service, such as Software as a Service (SaaS).

[0187] Furthermore, the described order of process elements or steps, or the use of numbers, letters, or other designations, therefore, are not intended to limit the claimed processes and methods to any order, except as may be specified in the claims. While the above disclosure discusses through various examples what are presently believed to be various useful embodiments of the present disclosure, it should be understood that such details are for purposes of illustration only, and that the appended claims are not limited to the disclosed embodiments, but rather are intended to cover modifications and equivalent arrangements within the spirit and scope of the disclosed embodiments. For example, implementations of the various components described above may be embodied in hardware devices, but they may also be implemented as software-only solutions, for example, installed on existing servers or mobile devices.

[0188] Similarly, in the foregoing description of embodiments of the present disclosure, it should be understood that various features may be grouped together in a single embodiment, drawing, or description thereof for the purpose of streamlining the disclosure and facilitating understanding of one or more of the various embodiments. However, the present disclosure does not intend that the purpose of the present disclosure requires more features than are recited in the claims. Rather, claimed subject matter may lie in fewer than all features of a single foregoing disclosed embodiment.

[0189] In some embodiments, numbers expressing quantities of components, properties, and the like used to describe and claim some embodiments of the present application should be understood to be modified in some instances by the terms "about," "approximately," or "substantially." For example, "about," "approximately," or "substantially" may indicate a ±20% variation from the value it describes, unless otherwise stated. Thus, in some embodiments, the numerical parameters set forth in the written description and appended claims are approximations that can vary depending on the desired properties sought to be obtained in a particular embodiment. In some embodiments, the numerical parameters should be construed in light of the number of reported significant digits and by applying ordinary rounding techniques. Notwithstanding that the numerical ranges and parameters describing the broad scope of some embodiments of the present application are approximations, the numerical values ​​set forth in the specific examples are reported as precisely as practical.

[0190] The contents of each of the patents, patent applications, patent application publications, and other materials, such as articles, literature, specifications, publications, documents, etc., referenced herein are incorporated herein by reference, except for any prosecution document history that is inconsistent or contradictory with this document, or for any documents (now or later associated with this disclosure) that may have the effect of limiting the broadest scope of the claims. It should be noted that if the descriptions, definitions, and / or terminology used in the accompanying materials of this disclosure are inconsistent with or contradictory to the content set forth in this disclosure, the descriptions, definitions, and / or terminology used in this disclosure shall control.

[0191] Finally, it should be understood that the embodiments described in this disclosure merely illustrate the principles of embodiments of the present disclosure. Other modifications may be within the scope of the present disclosure. Thus, by way of example, and not of limitation, alternative configurations of the embodiments of the present disclosure may be considered consistent with the teachings of the present disclosure. Thus, the embodiments of the present disclosure are not limited to the embodiments expressly introduced and described by this disclosure. [Explanation of symbols]

[0192] 1 wall sticker 200 devices 210 Operation Platform 211 units 212 Servo motor 213 Servo motor 214 Winding stand 220 High-Precision Measuring Device 230 Machining Head 240 Restriction Plate 250 encoder 1900 System 1910 Acquisition Module 1920 Information Decision Module 1930 Trajectory Determination Module 1940 Motion Control Module 2000 Electronic Devices 2100 processor 2200 memory 2210 Program 2300 network interface 2400 Bus System

Claims

1. 1. A method for motion control of at least one tooling head, comprising: acquiring a target area of ​​the object based on a scan of a three-dimensional (3D) line laser measurement device; determining depth information corresponding to the target region based on the target region; determining a motion trajectory of the at least one machining head based on the depth information; Equipped with acquiring point cloud data of the target area based on the target area of ​​the object; determining a set of end points for the target area based on the point cloud data for the target area, wherein the depth information includes the point cloud data and the set of end points; determining whether the coordinates of the end points in the set of end points are continuous in a direction of movement, wherein the coordinates of the end points being continuous means that the difference between the coordinate values ​​of two adjacent end points in the direction of movement is less than a predetermined threshold; in response to determining that the coordinates of end points in the set of end points are not consecutive in the direction of motion, determining at least one turn point between the two adjacent end points based on coordinates of the two adjacent end points that are not consecutive in the set of end points, wherein the at least one turn point is configured to determine a turn trajectory added to the motion trajectory; determining, in response to determining that the coordinates of end points in the set of end points are continuous in the direction of motion, that the turn trajectory is not added to the motion trajectory such that the direction of motion of the at least one machining head is not changed; A method comprising:

2. determining scan information of the 3D line laser measuring device based on coding information of an encoder; determining the depth information based on the scan information; The method of claim 1 further comprising:

3. determining a motion trajectory of the at least one machining head based on the depth information; determining a region of motion for the at least one work head based on the depth information; determining the motion trajectory of the at least one working head based on the motion area and the motion direction; 2. The method of claim 1, comprising:

4. the at least one work head includes a first work head and a second work head; The distance between the first machining head and the second machining head is constant, the method further comprising controlling the at least one machining head to move based on the motion trajectory of the at least one machining head; the step of controlling the at least one machining head to move based on the motion trajectory of the at least one machining head, The method of claim 1 , comprising controlling the first tooling head and the second tooling head to move based on the motion trajectory of the first tooling head.

5. the at least one work head includes a first work head and a second work head; the motion trajectory of the at least one machining head includes a first motion trajectory of the first machining head and a second motion trajectory of the second machining head; the method further comprising controlling the at least one machining head to move based on the motion trajectory of the at least one machining head; the step of controlling the at least one machining head to move based on the motion trajectory of the at least one machining head, controlling the first machining head to move based on the first motion trajectory; controlling the second machining head to move based on the second motion trajectory; 2. The method of claim 1, comprising:

6. determining a frame identifier corresponding to each of the at least one turning point; controlling the at least one tooling head to move with a change of direction based on the at least one turning point when an encoder triggers the 3D line laser measurement device to scan the target area corresponding to the frame identifier; 10. The method of claim 1, further comprising controlling the at least one machining head to move with a change of direction based on the at least one pivot point, the change of direction comprising:

7. 1. A system for motion control of at least one machining head, comprising: an acquisition module configured to acquire a target area of ​​the object based on a scan of a three-dimensional (3D) line laser measurement device; an information determination module configured to determine depth information corresponding to the target region based on the target region; a trajectory determination module configured to determine a movement trajectory of the at least one work head based on the depth information; Equipped with The acquisition module: further configured to acquire point cloud data of the target area based on the target area of ​​the object; The information determination module: further configured to determine a set of end points of the target area based on the point cloud data of the target area, the depth information including the point cloud data and the set of end points; The trajectory determination module: Determining whether the coordinates of the end points in the set of end points are continuous in a direction of movement, wherein the coordinates of the end points being continuous refers to the difference between the coordinate values ​​of two adjacent end points in the direction of movement being less than a predetermined threshold; further configured, in response to determining that the coordinates of end points in the set of end points are not consecutive in the direction of motion, to determine at least one turn point between two adjacent end points based on coordinates of the two adjacent end points that are not consecutive in the set of end points, wherein the at least one turn point determines a turn trajectory added to the motion trajectory; and in response to determining that the coordinates of end points in the set of end points are continuous in the direction of motion, determine that the turn trajectory is not added to the motion trajectory such that the direction of motion of the at least one machining head is not changed.

8. a memory configured to store executable instructions; a processor configured to perform the method of any one of claims 1 to 6 when executing executable instructions stored in said memory; An electronic device comprising:

9. a motion control device for at least one tool head, comprising: The operation platform and a three-dimensional (3D) line laser measurement device disposed on the operation platform; at least one work head; a control assembly configured to control a motion trajectory of the at least one tool head based on scan information of the 3D line laser measurement device; Equipped with The control assembly Acquiring point cloud data of a target area based on the target area of ​​an object; determining a set of end points for the target area based on the point cloud data for the target area, wherein depth information comprises the point cloud data and the set of end points; determining whether the coordinates of the end points in the set of end points are continuous in a direction of movement, where the coordinates of the end points being continuous refers to the difference between the coordinate values ​​of two adjacent end points in the direction of movement being less than a predetermined threshold; determining, in response to determining that the coordinates of end points in the set of end points are not consecutive in the direction of motion, at least one turn point between the two adjacent end points based on coordinates of the two adjacent end points that are not consecutive in the set of end points, wherein the at least one turn point is configured to determine a turn trajectory added to the motion trajectory; determining, in response to determining that the coordinates of end points in the set of end points are continuous in the direction of motion, that the turn trajectory is not added to the motion trajectory such that the direction of motion of the at least one machining head is not changed; The motion control device is further configured to:

10. the operation platform includes a servo motor controller, a servo motor for winding the wall sticker, a servo motor for moving the at least one tool head, a servo motor for cutting, a winding table for supporting the wall sticker, and a pressing plate for pressing the wall sticker; 10. The motion control device of claim 9, wherein the control assembly is configured to control the wall sticker on the winding table to move forward by the servo motor for winding the wall sticker, control a cutting position of the at least one tooling head by the servo motor, and control the at least one tooling head to rotate by the servo motor for cutting of the at least one tooling head to cut the wall sticker.

11. determining the at least one turning point between the two adjacent end points based on coordinates of the two adjacent end points that are not consecutive in the set of end points, determining first coordinate information and second coordinate information of the coordinates of the two adjacent end points; determining the distance between the coordinates of the two adjacent end points in the direction of movement; determining the number of the at least one turning point based on a number of image frames corresponding to the distance; determining a coordinate of the at least one turning point based on the distance and the number of the at least one turning point; 2. The method of claim 1, comprising:

12. the object is a wall sticker, the wall sticker is comprised of a plurality of wall sticker units connected in sequence to form a wall sticker roll; Each wall sticker unit has a pattern area, a groove area, and a burr area; The method of claim 1, wherein whether the coordinate values ​​of the end points of adjacent edges are not continuous along the movement direction indicates whether the groove regions of two adjacent wall sticker units are aligned.

Citation Information

Patent Citations

  • JPP6713700B

  • JPP6903777B