Steel coil strapping positioning method and device, electronic equipment, storage medium
By acquiring the distance and pose information between the robot and the surface of the steel coil, and using a kinematic model to generate a three-dimensional lattice array, the problem of inaccurate strapping positioning in the metallurgical industry is solved, achieving high-precision and stable strapping positioning and reducing the risk of damage.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- JINGYE STEEL CO LTD
- Filing Date
- 2026-01-28
- Publication Date
- 2026-06-30
AI Technical Summary
In the metallurgical industry, existing technologies such as machine vision systems and proximity switches or contact sensors cannot accurately obtain the spatial coordinate information of steel coil strapping, resulting in poor positioning accuracy and stability during robot unbundling, which can easily cause damage to the steel coil or the robot.
By acquiring the distance and pose information between the robot and the target steel coil surface, a three-dimensional point array is generated using a kinematic model. Combined with a preset height threshold, candidate points for strapping are determined, and the specific location of the strapping points is calculated. This avoids reliance on image acquisition and analysis, thereby improving positioning accuracy.
In metallurgical production environments, it improves the stability and accuracy of strapping positioning, meets the requirements of automated strapping unbundling operations, and reduces the possibility of damage to steel coils and robots.
Smart Images

Figure CN122305989A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of industrial automation control and signal processing technology, and more specifically, relates to a steel coil strapping positioning method and device, electronic equipment, and storage medium. Background Technology
[0002] In the metallurgical industry's production process, steel coil strapping plays a crucial role. It not only ensures the stability of the steel coils during transportation and storage, preventing them from unwinding, but also directly affects the smooth progress of subsequent processing steps and the quality of the final product.
[0003] Currently, in the automated unbundling operations of steel coils in the metallurgical industry, the positioning of the bundled straps mainly employs two technical solutions. First, a machine vision system is used. This system determines the strap position by acquiring and analyzing images from the site. However, in actual metallurgical production environments, numerous interfering factors exist, such as light spots, oil stains, and reflections from metal surfaces. These factors severely affect the imaging quality of the machine vision system, leading to inaccurate and incomplete image information, resulting in extremely poor positioning stability and failing to meet the positioning accuracy requirements of automated unbundling operations. Second, simple proximity switches or contact sensors are used for positioning. These sensors have limited functionality, only able to determine presence or absence—that is, they can only detect the existence of a target object—but cannot obtain the target object's specific spatial location information, let alone provide the necessary spatial coordinate information for the robot to perform precise actions. This makes it difficult for the robot to operate accurately during the unbundling process, easily causing damage to the steel coil or the robot itself. Summary of the Invention
[0004] The purpose of this application is to provide a steel coil bundling positioning method, device, electronic device, storage medium, and product that can improve the accuracy and stability of steel coil bundling positioning by a robot during the unbundling process. To achieve the above objective, the technical solution provided by this application is as follows: Firstly, a method for positioning steel coil strapping is provided, including: The robot obtains the first distance from the target steel coil surface and the robot's pose information; the target steel coil surface is a theoretical cylindrical surface; the robot moves along the axial and circumferential directions of the target steel coil; The first distance is bound to the corresponding pose information according to the preset binding method to obtain the bound array; The kinematic model is used to transform each data point in the bound array to the robot's base coordinate system, generating a three-dimensional point array; The candidate point array for strapping is determined based on the three-dimensional point array and the preset height threshold. Calculate the second distance from each candidate point to the surface of the target steel coil, compare the second distance with the preset strapping feature tolerance, and take the candidate point corresponding to the second distance that does not exceed the preset strapping feature tolerance as the strapping point.
[0005] Secondly, a steel coil strapping positioning device is provided, comprising: The data acquisition module is used to acquire the first distance between the robot and the surface of the target steel coil, as well as the robot's pose information; the surface of the target steel coil is a theoretical cylindrical surface; the robot moves along the axial and circumferential directions of the target steel coil; The array binding module is used to bind the first distance with the corresponding pose information according to a preset binding method to obtain the bound array; The 3D point array acquisition module is used to transform each data point in the bound array to the robot's base coordinate system based on the kinematic model, thereby generating a 3D point array. The candidate point array determination module is used to determine the candidate point array of the strapping based on the three-dimensional point array and the preset height threshold. The strapping positioning module is used to calculate the second distance from each candidate point to the surface of the target steel coil, compare the second distance with the preset strapping feature tolerance, and take the candidate point corresponding to the second distance that does not exceed the preset strapping feature tolerance as the strapping point.
[0006] Thirdly, embodiments of this application also provide an electronic device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the steel coil strapping positioning method provided in any possible implementation of the first aspect.
[0007] Fourthly, embodiments of this application also provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steel coil strapping positioning method provided by any possible implementation of the first aspect.
[0008] The beneficial effects of the technical solution provided in this application are as follows: Compared with related technologies, the steel coil strapping positioning method, device, electronic equipment, and storage medium provided in this application embodiment determine the strapping point by acquiring the first distance between the robot and the target steel coil surface and the robot's pose information, and performing subsequent processing based on these data. The method provided in this embodiment does not rely on on-site image acquisition and analysis, avoiding the influence of interference factors such as light spots, oil stains, and metal surface reflections on the imaging quality of the machine vision system in the metallurgical production environment, thereby improving the stability of the positioning results and meeting the positioning accuracy requirements of automated strapping removal operations. This embodiment, through a series of data processing steps, such as binding the first distance with the pose information, converting to a base coordinate system to generate a three-dimensional point array, determining a candidate strapping point array, and calculating the distance from the candidate points to the target steel coil surface and comparing it with a preset strapping feature tolerance, can obtain the specific spatial location information of the strapping point. This provides the necessary spatial coordinate information for the robot to perform precise actions, enabling the robot to operate accurately during strapping removal and reducing the possibility of damage to the steel coil or itself. Attached Figure Description
[0009] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments of this application will be briefly introduced below.
[0010] Figure 1 A schematic diagram of a steel coil strapping control system provided in an embodiment of this application; Figure 2 A schematic flowchart illustrating the steel coil strapping positioning method provided in this application embodiment; Figure 3 A structural block diagram of the steel coil strapping positioning device provided in the embodiments of this application; Figure 4 A schematic block diagram of an electronic device provided in an embodiment of this application. Detailed Implementation
[0011] The embodiments of this application are described below with reference to the accompanying drawings. It should be understood that the embodiments described below with reference to the accompanying drawings are exemplary descriptions for explaining the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions of the embodiments of this application.
[0012] Those skilled in the art will understand that, unless specifically stated otherwise, the singular forms “a,” “an,” “the,” and “the” used herein may also include the plural forms. It should be further understood that the terms “comprising” and “including” as used in embodiments of this application mean that the corresponding feature can be implemented as the presented feature, information, data, step, operation, element, and / or component, but do not exclude implementation as other features, information, data, step, operation, element, component, and / or combinations thereof supported by the art. It should be understood that when we say that an element is “connected” or “coupled” to another element, the one element can be directly connected or coupled to the other element, or it can mean that the one element and the other element establish a connection relationship through an intermediate element. Furthermore, “connected” or “coupled” as used herein can include wireless connection or wireless coupling. The term “and / or” as used herein indicates at least one of the items defined by the term; for example, “A and / or B” can be implemented as “A,” or as “B,” or as “A and B.” When describing multiple (two or more) items, if the relationship between the multiple items is not explicitly defined, the multiple items can refer to one, several or all of the multiple items. For example, the description of "parameter A includes A1, A2, A3" can be implemented as parameter A includes A1 or A2 or A3, or it can be implemented as parameter A includes at least two of the three items A1, A2 and A3.
[0013] It is understood that in the embodiments of this application, data such as user information are involved. When the embodiments of this application are applied to specific products or technologies, user permission or consent is required, and the collection, use and processing of related data must comply with relevant laws, regulations and standards.
[0014] See Figure 1 The steel coil bundling control system has been deployed and is in operation. This system includes a robot, a PLC controller, an industrial computer, and an HMI. It can be installed on the walking beam at the production line entrance for automated unbundling of incoming cold-rolled steel coils. The robot in this system can be a six-axis robot capable of processing sensor signal arrays in real time; its sixth axis is equipped with a Banner LM series point laser rangefinder. The robot is also equipped with hydraulic shears for cutting and unbundling the bundle ends.
[0015] This system has completely replaced the original three-shift manual unbundling operation with robotic operation. By scanning the generated signal array, the system can reliably identify steel coils and strapping of various specifications and surface conditions, with a spatial coordinate recognition success rate of over 99.8%. It is also unaffected by changes in ambient light on the production line, achieving truly high reliability, full automation, and unmanned unbundling.
[0016] This application provides a method for positioning steel coil strapping, which can be performed by a robot, such as... Figure 2 As shown, the method may include: S101: Obtain the first distance between the robot and the target steel coil surface, as well as the robot's pose information.
[0017] In this embodiment, the surface of the target steel coil is a theoretical cylindrical surface; the robot moves along the axial and circumferential directions of the target steel coil.
[0018] In this embodiment, before scanning the surface of the target steel coil, the target steel coil can be placed horizontally on a support saddle with its cylindrical axis parallel to the ground. The robot is installed at an appropriate distance from the side or front of the target steel coil to ensure that the robot's workspace can completely cover the area of the steel coil to be scanned.
[0019] In one possible implementation, the first distance between the robot and the target steel coil surface, as well as the robot's pose information, are obtained, including: The robot performs segmented scanning of the target steel coil surface along a preset scanning path to obtain multiple scanning line segments. The preset scanning path includes multiple continuous scanning line segments. For each scan line segment, the first distance and the robot's pose information are synchronously collected at a fixed sampling frequency.
[0020] In this embodiment, the first distance can refer to the straight-line distance value to a point on the surface of the target steel coil directly in front of the robot, instantaneously measured by a ranging sensor (e.g., a point laser displacement sensor) installed at the robot's end effector at the sampling moment. The pose information can refer to the spatial position (usually represented by three-dimensional coordinates x, y, z) and attitude (usually represented by attitude angles rx, ry, rz) of the end effector in the robot's base coordinate system, calculated by the robot controller based on the angles of each joint, at the same sampling moment. The base coordinate system is a spatial reference coordinate system fixed to the robot's base and unchanged with the robot's movement, used to uniformly describe the robot's absolute position throughout the workspace.
[0021] In this embodiment, the robot's scanning path is first planned and set. To ensure complete and comprehensive data sampling of the side surface of the target steel coil (whose outer surface is theoretically cylindrical), a preset scanning path covering the area to be measured on the steel coil is pre-planned. This preset scanning path consists of multiple interconnected scanning line segments. Each scanning line segment refers to a straight-line trajectory of the ranging sensor carried by the robot's end effector relative to the surface of the steel coil. The preset scanning path refers to a mesh or grid-like movement route formed by multiple motion trajectory segments arranged in a predetermined order, designed to guide the robot to move systematically along both the axial and circumferential dimensions of the steel coil surface, thereby achieving complete coverage of the theoretical cylindrical surface.
[0022] This embodiment utilizes a robot to perform segmented scanning and synchronous data acquisition. The robot begins scanning according to the preset scanning path, and the scanning process is carried out in segments. For example, the robot starts from the starting point and moves at a constant speed along the first scanning line segment; after completing the scanning of that line segment, it moves to the starting point of the next scanning line segment and continues to move, repeating this process until all lines in the preset scanning path have been traversed.
[0023] In this embodiment, for each scanned line segment, the first distance and pose information are recorded synchronously at a preset fixed sampling frequency (e.g., 500 times per second). At each sampling moment, the first distance and the robot's corresponding pose information are simultaneously and in pairs to ensure that the two are strictly opposite in time.
[0024] For example, 3200 surface array data are established, and the target steel coil surface width (1450mm-1780mm) is used as a reference to divide it into 3200 equal parts, each part being approximately 0.5mm wide.
[0025] The robot carries a point laser sensor to scan the surface of the target steel coil along a preset trajectory. The sensor outputs the distance reading d between the robot and the surface of the target steel coil in real time, while the robot controller provides real-time feedback on the pose information of the center point of the robot's end tool.
[0026] In this embodiment, the robot's pose information can be represented using six degrees of freedom, where the position coordinates are (x, y, z) in millimeters, representing the position of the TCP in the robot's base coordinate system; the attitude angles are (rx, ry, rz) in radians, representing the rotation angles of the TCP around each axis of the base coordinate system.
[0027] Example pose data format can be: Pose=[x=1200.5, y=350.2, z=980.3, rx=0.12, ry=-0.05, rz=1.57].
[0028] S102: Bind the first distance to the corresponding pose information according to the preset binding method to obtain the bound array.
[0029] After completing segmented scanning and synchronous data acquisition, this embodiment obtains a series of data recorded in chronological order. This embodiment then structurally binds and reassembles the acquired "first distance" and "pose information," which are synchronized in time but separate in form, to form a bound array.
[0030] In this embodiment, the first distance is bound to the corresponding pose information according to a preset binding method to obtain a bound array, including: For each acquisition moment, the first distance and pose information are combined and bound to obtain the bound data unit; Based on the data units corresponding to each acquisition time, the data units are combined according to the order of the scan lines and the sampling order to obtain the bound array.
[0031] In this embodiment, for each acquisition moment, the first distance acquired at that moment is combined with the corresponding unique pose information to form a bound data unit. This bound data unit represents all the information of the sampling point on the steel coil surface perceived by the robot at a specific acquisition moment. This information includes both the distance of the sampling point relative to the sensor and the precise position and orientation of the sensor itself (represented by the center point TCP of the robot's end tool) in global space (base coordinate system). In this embodiment, the binding operation ensures a one-to-one correspondence between distance values and spatial poses in space and time.
[0032] In this embodiment, the scanning is performed along a preset scanning path. Therefore, the corresponding data units generated at all acquisition moments are not randomly stacked. Instead, all the data units are logically arranged and combined according to the scanning order of the scanning line segments and the sampling time order within each scanning line segment to form an ordered, structured, bound array.
[0033] For example, each distance reading d is bound to the corresponding pose Pose to form a bound array arranged in time series. The bound array can be BoundArrayi=[di, xi, yi, zi, rxi, ryi, rzi].
[0034] The bound array is associated with the distance and global pose of each acquisition point on the surface of the target steel coil in terms of content, and maintains the original spatial traversal logic of each acquisition point on the surface of the steel coil in terms of structure, thus implicitly containing the two-dimensional topological information of the surface of the steel coil.
[0035] In this embodiment, the scanning order of the scanning lines refers to the order in which the robot traverses each scanning line segment when executing the preset scanning path. The sampling time order refers to the chronological order in which data acquisition events occur during the robot's movement on each sampling line segment.
[0036] S103: Transform each data point in the bound array to the robot's base coordinate system using a kinematic model to generate a three-dimensional point array.
[0037] In this embodiment, each data unit in the bound array obtained above is transformed from the form of sensor distance and robot pose (the form in which the first distance and pose information coexist) to three-dimensional spatial coordinates in the robot's base coordinate system, thereby reconstructing the three-dimensional lattice array of the target steel coil surface based on the three-dimensional spatial coordinates.
[0038] In one possible implementation, each data point in the bound array is transformed to the robot's base coordinate system using a kinematic model to generate a three-dimensional point array, including: For each data point in the bound array, extract the robot's pose information and first distance corresponding to that data point; the pose information includes the robot's position and orientation in the base coordinate system at the time of data acquisition at that data point. Based on the preset parameters of the robot's tool coordinate system, obtain the first three-dimensional coordinates of the data point corresponding to the first distance in the robot's tool coordinate system; Based on the pose information and the kinematic model, the first three-dimensional coordinates are transformed to the robot's base coordinate system to obtain the second three-dimensional coordinates of the data point in the base coordinate system. Arrange the second three-dimensional coordinates corresponding to each data point according to the scanning logic order to obtain a three-dimensional point array.
[0039] In this embodiment, for each data point (i.e., data unit) in the bound array, the first distance and pose information stored in that data point are extracted. The first distance can be the distance value measured by the sensor, and the pose information can be the position (x, y, z) and orientation (rx, ry, rz) of the center point of the robot's end effector in the robot's base coordinate system during the acquisition of the distance value.
[0040] This embodiment performs calculations based on pre-calibrated tool coordinate system parameters. The origin of the tool coordinate system is defined at the tool center point (TCP) of the robot's end effector, and its Z-axis typically coincides with the direction of the measurement beam from the ranging sensor. The extracted first distance value d can be measured along the Z-axis of the tool coordinate system. Therefore, the first three-dimensional coordinates of the measurement point in the tool coordinate system can be (0, 0, d), where the first distance value d represents the measurement point located in the positive Z-axis direction of the tool coordinate system, d units from the origin.
[0041] The kinematic model in this embodiment describes the mathematical relationship between the angles of each joint of the robot and the pose of its end effector TCP in the base coordinate system. After obtaining the first three-dimensional coordinate system, this embodiment uses the robot's kinematic model to transform it to the robot's base coordinate system. A transformation matrix from the tool coordinate system to the base coordinate system can be constructed based on the pose in the base coordinate system. This transformation matrix is then used to transform the first three-dimensional coordinates to a second three-dimensional coordinate system in the base coordinate system. This second three-dimensional coordinate system represents the absolute coordinates of the acquisition points on the steel coil surface in global space.
[0042] In this embodiment, the "second three-dimensional coordinates" corresponding to all the data points are arranged in the scanning logical order of the above data points (that is, according to the order of scanning line segments and the sampling order of each line segment) to form an ordered three-dimensional point array.
[0043] In one possible implementation, after obtaining the three-dimensional point array, the following is also included: The three-dimensional point array is preprocessed to obtain the preprocessed three-dimensional point array; Based on the preprocessed 3D point array, and through cylindrical surface fitting, the axial direction vector, axial position, and radius of the theoretical cylindrical surface are determined.
[0044] To further improve the accuracy of the three-dimensional point array, this embodiment preprocesses the three-dimensional point array to remove abnormal noise points (such as outliers caused by temporary sensor lock-up or the measurement of splashes) and performs smoothing filtering to reduce random measurement noise.
[0045] In this embodiment, the preprocessed 3D point array is input into a cylindrical surface fitting algorithm. This algorithm determines the optimal cylindrical surface model to minimize the distance error between the model and all 3D data points. In this embodiment, the cylindrical surface model is a computational model containing multiple processing layers. The preprocessed 3D point array is input into the model's data organization projection layer, which establishes the mathematical model framework for cylindrical surface fitting. For example, the cylindrical surface equation can be parameterized by the axis direction vector n, a point A on the axis, and the radius R. In this embodiment, an initial or iteratively optimized initial axis direction is pre-defined for the model. Based on this axis direction, the distance from all data points to the assumed initial axis is calculated, and the point cloud data is projected onto a plane perpendicular to the axis, outputting the cylindrical surface optimization objective function and the projected 2D point set data. In this embodiment, the cylindrical surface optimization objective function characterizes the sum of the squares of the distances from all data points in the 3D point array to the cylindrical surface.
[0046] In this embodiment, the objective function for optimizing the cylindrical surface and the two-dimensional point set data are input into the parameter solving layer of the model. In the parameter solving layer, the objective function is minimized using the least squares method. Specifically, a circle is fitted based on the projected two-dimensional point set to obtain the two-dimensional coordinates of the circle's center and the initial value of the radius. Combining the two-dimensional coordinates of the circle's center and the initial value of the radius, iterative optimization is performed in three-dimensional space to accurately solve for the parameter values that minimize the objective function. The preliminary mathematical parameter solution that minimizes the error is output, including the initial axis direction vector, the coordinates of a point on the axis, and the radius value.
[0047] In this embodiment, the mathematical parameter solution obtained above is input into the formatted output layer of the model. The initial axis direction vector is converted into a unit vector to obtain the final axis direction vector. The coordinates of a point on the axis are confirmed to ensure that it is located on the finally determined axis, forming the final axis position. The radius value is used as the radius of the theoretical cylindrical surface. Finally, the geometric parameters of the cylindrical surface model are output, including the axis direction vector of the theoretical cylindrical surface, the axis position, and the radius value of the theoretical cylindrical surface. Among them, the axis direction vector is used to characterize the spatial orientation of the axis of the theoretical cylindrical surface; the axis position is a point located on the theoretical cylindrical surface, used to characterize the position of the axis in space.
[0048] For example, each data point in the bound array is transformed into the robot's base coordinate system using the robot's kinematics model to generate a three-dimensional spatial point array.
[0049] The robot kinematics model describes the mathematical relationship between the robot's joint angles and its end effector pose. This embodiment uses the standard DH parameter method to establish the robot's forward kinematics model, calculating the robot's end effector position and pose using known joint angles. An example of the conversion process is as follows: Input the bound array [di, Posei], determine the coordinates of the sensor measurement points in the tool coordinate system based on the sensor installation position (TCP offset); perform inverse kinematics transformation through the robot kinematics model to transform the points in the tool coordinate system to the base coordinate system, obtaining the global 3D coordinates (Xi, Yi, Zi). Output the 3D point array PointCloud=[(X1,Y1,Z1),(X2,Y2,Z2),...].
[0050] S104: Determine the candidate point array for strapping based on the three-dimensional point array and the preset height threshold.
[0051] In one possible implementation, a candidate point array for the strapping is determined based on a three-dimensional point array and a preset height threshold, including: Along the axial direction vector, obtain the axial distance between each data point in the three-dimensional point array and the preset axial reference plane, and use each axial distance as the theoretical axial height value of each corresponding data point; the preset axial reference plane is a plane that is perpendicular to the axial direction vector and passes through the center point of one end face of the theoretical cylinder. Data points whose theoretical axial height values fall within a preset height threshold range are selected as candidate points for the strapping.
[0052] In this embodiment, an axial coordinate system is established based on the geometric parameters of the theoretical cylindrical surface obtained above. The direction of the preset axial reference plane of the axial coordinate system is perpendicular to the axial direction vector of the theoretical cylindrical surface. The preset axial reference plane passes through the center point of one end of the theoretical cylindrical surface. The center point can be determined by the position of the fitted axial position projected onto the cylindrical end face along the axial direction, or it can be represented by the mean value of one endpoint of the axial point cloud data of the cylindrical surface.
[0053] In this embodiment, for each data point in the three-dimensional point array, the axial distance from the data point to the preset axial reference plane is determined, that is, the theoretical axial height value of the surface sampling point on the theoretical cylindrical surface of the steel coil. For example, taking the inner end face of the steel coil as a reference, if the theoretical axial height value is 0, it indicates that the sampling point is located at the end face; if the theoretical axial height value is positive, it indicates that the sampling point is located at a distance extending outward along the axis.
[0054] This embodiment sets a preset height threshold range, which can be pre-set based on the physical characteristics and process requirements of the strapping. For example, if it is known that a certain strapping should be wound within a range of L1 to L2 millimeters from the end face of the target steel coil, then [L1, L2] constitutes the preset height threshold range.
[0055] In this embodiment, the theoretical axial height value corresponding to each data point is compared with a preset height threshold range; all data points whose theoretical axial height values fall within the preset height threshold range are selected. The three-dimensional coordinates (x, y, z) of the selected points are extracted and formed into a subset array, namely the strapping candidate point array, either in its original order or reorganized.
[0056] For example, in a three-dimensional dot matrix array, the strapping exhibits a localized "bulge" characteristic. This embodiment identifies candidate points through the following steps: calculating the dot matrix height gradient along the scanning direction; setting a height threshold (e.g., 5mm above the reference plane), and extracting all points above the threshold; the extracted points can be clustered to form a candidate dot matrix array.
[0057] S105: Calculate the second distance from each candidate point to the surface of the target steel coil, compare the second distance with the preset strapping feature tolerance, and take the candidate point corresponding to the second distance that does not exceed the preset strapping feature tolerance as the strapping point.
[0058] In one possible implementation, calculating the second distance from each candidate point to the surface of the target steel coil includes: For each candidate point in the strapping candidate point array, calculate the distance from the candidate point to the axis of the theoretical cylindrical surface based on the axis direction vector and the axis position; The absolute value of the difference between the distance and the radius is used as the second distance.
[0059] In this embodiment, for each candidate point, the distance from the candidate point to the axis is calculated based on the axis direction vector n and a point A on the axis, using a distance calculation formula. The distance calculation formula in this embodiment can be: ,in, D This indicates the distance from the candidate point to the axis. Represents the coordinates of the candidate points. Represents a vector. n This represents the direction vector of the axis.
[0060] In this embodiment, the distance from the candidate point to the axis is subtracted from the radius of the theoretical cylindrical surface, and the absolute value of the difference is used as the second distance.
[0061] In this embodiment, the second distance is the distance from a point perfectly situated on a smooth, ideal cylindrical surface to the axis. D It should be strictly equal to the radius. R Therefore, the second distance is zero. However, due to the thickness of the strapping on the steel coil surface, the surface point at that location will either bulge beyond the theoretical cylindrical surface (for outer strapping) or be indented due to strapping pressure (for inner strapping or specific winding methods). Whether bulging or indented, this will cause D at that location to deviate significantly from the theoretical radius R, resulting in a non-zero positive value for the second distance. Based on this, in this embodiment, the second distance characterizes the height by which the candidate point deviates from the ideal cylindrical surface of the steel coil, serving as a key quantitative indicator for identifying surface geometric anomalies caused by the strapping.
[0062] This embodiment sets a preset strapping feature tolerance, which is a positive threshold set according to the actual physical characteristics of the strapping (e.g., strapping thickness, winding tightness, etc.) and noise level.
[0063] In this embodiment, after obtaining the second distance corresponding to each candidate point, the second distance corresponding to each candidate point is compared with the preset strapping feature tolerance: if the second distance of the candidate point is less than or equal to the preset strapping feature tolerance, it is determined that the deviation of the candidate point is within the normal fluctuation range and is not identified as a strapping point; if the second distance of the candidate point is greater than the preset strapping feature tolerance, it is determined that the candidate point has a significant surface geometric deviation that exceeds the normal range and is identified as a strapping point.
[0064] In this embodiment, all candidate points that satisfy the second distance being greater than the preset strapping feature tolerance are marked and output as the final strapping points.
[0065] As can be seen from the above, compared with machine vision systems, this embodiment is unaffected by interference factors such as light spots, oil stains, and metal surface reflections in the metallurgical production environment. It can stably acquire the distance and pose information between the robot and the target steel coil surface, thereby improving the accuracy and stability of steel coil strapping positioning and meeting the positioning accuracy requirements of automated strapping removal operations. Through a series of data processing steps, this embodiment can accurately determine the specific location of the strapping point in space, providing the necessary spatial coordinate information for the robot to perform precise actions. This enables the robot to operate accurately during strapping removal, reducing the possibility of damage to the steel coil or itself.
[0066] This embodiment also employs segmented scanning and synchronously acquires the first distance and robot pose information at a fixed sampling frequency, enabling more comprehensive and accurate acquisition of data from the target steel coil surface and improving positioning accuracy. This embodiment determines a candidate strapping point array based on a three-dimensional point matrix array and a preset height threshold, quickly filtering out data points that may be strapping points, reducing subsequent computation and improving positioning efficiency. Furthermore, for each candidate point in the strapping point array, the distance from the candidate point to the axis of the theoretical cylindrical surface is calculated based on the axis direction vector and axis position. The absolute value of the difference between the distance and the radius is used as the second distance. The second distance is used to determine whether the candidate point is the final strapping point, enabling more accurate calculation of the distance from the candidate point to the target steel coil surface, thereby improving the accuracy of strapping positioning.
[0067] In one possible implementation of this application, after determining the axial direction vector of the theoretical cylindrical surface, the method further includes: Based on the three-dimensional point array, determine the first data point and the second data point located at both ends of the theoretical cylindrical surface; Perform plane fitting on the first data point to obtain the first fitting plane, and determine the first normal vector based on the first fitting plane; Perform plane fitting on the second data point to obtain the second fitting plane, and determine the second normal vector based on the second fitting plane; The first normal vector and the second normal vector are used to determine the correction direction vector; Obtain the deviation angle between the correction direction vector and the axis direction vector; If the deviation angle is greater than the preset angle tolerance threshold, the correction direction vector is used instead of the axis direction vector.
[0068] To further ensure that the axial direction vector is highly consistent with the normal direction of the actual physical end face of the steel coil and improve the accuracy of axial calculation, this embodiment identifies and separates the point sets located near both ends of the theoretical cylindrical surface based on the spatial distribution of the three-dimensional point array. Specifically: the axial height of all points is calculated using the axial parameters obtained by fitting the cylindrical surface. A subset of points with the smallest axial height value (closest to one end) is selected and defined as the first data point set, which corresponds to the surface points near one end face (such as the inner end face) of the steel coil. A subset of points with the largest axial height value (closest to the other end) is selected and defined as the second data point set, which corresponds to the surface points near the other end face (such as the outer end face) of the steel coil.
[0069] In this embodiment, an optimal fitting plane, called the first fitting plane, is calculated for the first set of data points using a plane fitting algorithm (least squares method). The normal direction is determined based on this first fitting plane, which is the first normal vector n1, representing the ideal orientation of the end face in space.
[0070] This embodiment performs plane fitting on the second set of data points based on the same theory to obtain the second fitting plane and its second normal vector n2.
[0071] This embodiment normalizes the values of the first and second normal vectors to obtain the corrected direction vector. Based on the corrected direction vector and the axis direction vector, and using the deviation angle calculation formula, the deviation angle between the corrected direction vector and the axis direction vector is calculated. The deviation angle calculation formula can be: ,in, This represents the deviation angle between the correction direction vector and the axis direction vector. This represents the corrected direction vector. This represents the axis direction vector. The deviation angle is used to characterize the angular difference between the fitted axis and the axis direction vector.
[0072] In this embodiment, the calculated deviation angle is compared with a preset angle tolerance threshold, which can be set according to the allowable axial error of the scene. If the deviation angle is less than or equal to the preset angle tolerance threshold, the axis direction vector is determined to be accurate and no correction is needed; if the deviation angle is greater than the preset angle tolerance threshold, the axis direction vector is determined to be deviated due to uneven point cloud distribution, local feature interference, etc. In this case, the corrected direction vector is used instead of the rotation direction vector as the axis direction used in subsequent steps.
[0073] This embodiment introduces a cross-validation and correction mechanism based on the rigid solid geometry of the steel coil. Cylindrical surface fitting yields a statistically optimal solution based on the entire side surface, while end-face plane fitting yields a local geometric constraint based on the physical features of the end face. By comparing these two, systematic axial deviations caused by limitations of the scanning area, surface deposits, or fitting algorithms can be detected and corrected. Using the corrected direction perpendicular to the physical end face as the final axial direction ensures that the axial reference upon which the subsequent mapping of the 3D point cloud to "axial height" depends is strictly aligned with the actual physical axis of the steel coil, thereby fundamentally improving the absolute accuracy of the strapping axial position positioning and the overall robustness of the method.
[0074] To further improve the accuracy of selecting strapping candidate points, this embodiment can also obtain a strapping candidate point array based on spatial intensity analysis. For example, determining the strapping candidate point array based on a three-dimensional point matrix array and a preset height threshold includes: Based on the axial direction vector, axial position, and radius of the theoretical cylindrical surface, calculate the third distance from each data point in the three-dimensional point array to the theoretical cylindrical surface; Points with a third distance greater than a preset deviation threshold are extracted as potential anomalies; Spatial clustering analysis is performed on potential anomalies to group spatially adjacent potential anomalies into the same spatial cluster, thereby obtaining at least one spatial cluster. Calculate the average axial height of all data points in each spatial point cluster. The axial height is the distance from the data point along the axial direction vector to a preset axial reference plane. The preset axial reference plane is a plane that is perpendicular to the axial direction vector and has a fixed position. Select spatial point clusters whose average axial height falls within a preset height threshold range; All data points contained in the selected spatial point clusters are used to form a bundle candidate point array.
[0075] In this embodiment, based on the determined geometric parameters of the theoretical cylindrical surface (axial direction vector n, axial position A, and radius R), each data point in the three-dimensional point array is traversed, and the normal distance from each data point to the theoretical cylindrical surface is calculated. This normal distance is used as the third distance. The third distance is used to characterize the amount of normal deviation of each sampling point on the steel coil surface relative to the ideal smooth cylindrical surface. For a flat steel coil body surface, the third distance approaches zero; for the location of the strapping or other protrusions / depressions, the third distance will increase significantly.
[0076] This embodiment sets a preset deviation threshold to distinguish between normal surface fluctuations and significant abnormal deviations. Each third distance is compared with the preset deviation threshold, and data points that meet the condition of having a third distance greater than the preset deviation threshold are selected as potential outliers.
[0077] This embodiment performs spatial clustering analysis on all potential anomalies to group adjacent anomalies into the same group based on the three-dimensional spatial distance between them (e.g., Euclidean distance), thereby dividing the discrete set of anomalies into one or more spatial point clusters. Each spatial point cluster represents a spatially continuous anomaly region, which may correspond to a complete strapping, a section of strapping, or a local defect region.
[0078] For each identified cluster of spatial points, a preset axial reference plane is defined. This preset axial reference plane is perpendicular to the axial direction vector n, and its spatial position is fixed (for example, it can be set to a theoretical plane passing through a certain endpoint of the theoretical cylindrical surface, or a plane passing through the minimum axial value of the point cloud).
[0079] In this embodiment, for each data point within a spatial point cluster, the axial distance from its axis n to the preset axial reference plane is determined, and this distance is taken as the axial height H of the data point. Based on the axial heights corresponding to all data points, the average axial height of all points within the point cluster is determined, and this average value is taken as the average axial height of the spatial point cluster. The average axial height characterizes the average position of the abnormal region along the length of the steel coil.
[0080] This embodiment compares the average axial height of each spatial point cluster with a preset height threshold range, and filters out all spatial point clusters whose average axial height values fall within the preset height threshold range. The area corresponding to the filtered point clusters is designated as an abnormal area, whose axial position matches the expected strapping position.
[0081] In this embodiment, all data points that meet the axial position criteria are merged into a new set. This new set constitutes the strapping candidate point array. The points in this array all meet the following conditions: they are surface geometric anomalies; they are located within a spatially continuous anomaly region; and the overall axial position of the anomaly region matches the strapping expectation.
[0082] This embodiment completely abandons easily interfered-prone vision technology, providing a lower-cost, more reliable, and more environmentally adaptable method for acquiring spatial coordinates, offering a new solution for industrial automation positioning technology. This embodiment is completely immune to light, oil, dust, and color changes, and can operate stably in harsh industrial environments where traditional vision systems fail. Through precise modeling from one-dimensional signals to three-dimensional space and multi-level filtering, this embodiment can stably extract weak target features from complex background noise, resulting in high-precision and highly interference-resistant spatial coordinate output. Furthermore, this embodiment uses mature and reliable laser displacement sensors and standard robot / PLC control systems, eliminating the need for expensive vision hardware and complex calibration and maintenance, significantly reducing the total cost of ownership.
[0083] After obtaining the candidate point array for strapping, this embodiment performs a precise feature optimization process to eliminate noise interference, misjudgment of non-strap surface features, and further improve the reliability of the positioning results. This process specifically includes: Based on the physical size constraints of the strapping entity (e.g., width approximately 50mm, protrusion height approximately 8mm), a spatial distribution analysis is performed on the candidate point array to evaluate the distribution pattern of the candidate point set in three-dimensional space. Point sets that have spatial extension shapes that conform to continuous strip characteristics and whose distribution width and protrusion height range match the preset strapping physical parameters are selected and retained. Discrete points that are isolated points or clusters in space and obviously do not conform to the long strip shape of the strapping are removed.
[0084] By combining the theoretical thickness of the strapping with the accuracy of the measurement system, a more refined geometric verification is performed. Using the theoretical cylindrical surface determined in the preceding steps as a reference, the normal distance (i.e., the "second distance" or "third distance") from each candidate point after morphological filtering to this theoretical cylindrical surface is calculated. This embodiment presupposes a characteristic tolerance range that comprehensively considers the sensor measurement accuracy and the strapping thickness tolerance (e.g., theoretical protrusion height ±0.2mm). Subsequently, the calculated distance of each candidate point is compared with this tolerance range, and data points whose distance values exceed the allowable tolerance range are eliminated.
[0085] After the two-stage optimization filtering process described above, the data points that are ultimately retained are identified as high-confidence strapping points. These strapping points accurately describe the three-dimensional spatial position and distribution of the strapping on the surface of the steel coil.
[0086] In this embodiment, the data flow of the positioning process begins with scanning and acquisition. As the robot moves along the preset path, the ranging sensor continuously outputs distance readings, and the robot controller synchronously provides the real-time pose of the end effector. The control system strictly binds the distance value at each moment with the corresponding pose, forming a raw data pair with a timestamp.
[0087] Subsequently, the raw data pairs are converted into a 3D point array in the global coordinate system through coordinate calculation (using the robot's kinematics model). The core processing unit (such as the built-in processor of an industrial computer or robot controller) sequentially performs primary feature recognition (based on cylindrical surface fitting and axial height filtering) and precise feature optimization (based on dual filtering of shape and distance) on this 3D point array, and finally outputs the 3D spatial coordinate information of the strapping.
[0088] Based on the same principle as the steel coil strapping positioning method provided in the embodiments of this application, the embodiments of this application also provide a steel coil strapping positioning device, such as... Figure 3As shown, the steel coil strapping positioning device 20 may specifically include: a data acquisition module 21, an array binding module 22, a three-dimensional dot matrix array acquisition module 23, a candidate point array determination module 24, and a strapping positioning module 25.
[0089] The data acquisition module 21 is used to acquire the first distance between the robot and the surface of the target steel coil, as well as the robot's pose information; the surface of the target steel coil is a theoretical cylindrical surface; the robot moves along the axial and circumferential directions of the target steel coil; The array binding module 22 is used to bind the first distance with the corresponding pose information according to a preset binding method to obtain the bound array; The 3D point array acquisition module 23 is used to transform each data point in the bound array to the robot's base coordinate system according to the kinematic model, and generate a 3D point array. The candidate point array determination module 24 is used to determine the strapping candidate point array based on the three-dimensional point array and the preset height threshold. The strapping positioning module 25 is used to calculate the second distance from each candidate point to the surface of the target steel coil, compare the second distance with the preset strapping feature tolerance, and take the candidate point corresponding to the second distance that does not exceed the preset strapping feature tolerance as the strapping point.
[0090] In one embodiment of this application, when the data acquisition module 21 acquires the first distance between the robot and the target steel coil surface and the robot's pose information, it is specifically used for: The robot performs segmented scanning of the target steel coil surface along a preset scanning path to obtain multiple scanning line segments. The preset scanning path includes multiple continuous scanning line segments. For each scan line segment, the first distance and the robot's pose information are synchronously collected at a fixed sampling frequency; Accordingly, when the array binding module 22 binds the first distance with the corresponding pose information according to the preset binding method to obtain the bound array, it is specifically used for: For each acquisition moment, the first distance and pose information are combined and bound to obtain the bound data unit; Based on the data units corresponding to each acquisition time, the data units are combined according to the order of the scan lines and the sampling order to obtain the bound array.
[0091] In one embodiment of this application, when the three-dimensional point array acquisition module 23 transforms each data point in the bound array to the robot's base coordinate system using a kinematic model to generate a three-dimensional point array, it is specifically used for: For each data point in the bound array, extract the robot's pose information and first distance corresponding to that data point; the pose information includes the robot's position and orientation in the base coordinate system at the time of data acquisition at that data point. Based on the preset parameters of the robot's tool coordinate system, obtain the first three-dimensional coordinates of the data point corresponding to the first distance in the robot's tool coordinate system; Based on the pose information and the kinematic model, the first three-dimensional coordinates are transformed to the robot's base coordinate system to obtain the second three-dimensional coordinates of the data point in the base coordinate system. Arrange the second three-dimensional coordinates corresponding to each data point according to the scanning logic order to obtain a three-dimensional point array.
[0092] In one embodiment of this application, after obtaining the three-dimensional point array, the three-dimensional point array acquisition module 23 is further used for: The three-dimensional point array is preprocessed to obtain the preprocessed three-dimensional point array; Based on the preprocessed 3D point array, and through cylindrical surface fitting, the axial direction vector, axial position, and radius of the theoretical cylindrical surface are determined.
[0093] In one embodiment of this application, when the candidate point array determination module 24 determines the strapping candidate point array based on the three-dimensional point array and a preset height threshold, it is specifically used for: Along the axial direction vector, obtain the axial distance between each data point in the three-dimensional point array and the preset axial reference plane, and use each axial distance as the theoretical axial height value of each corresponding data point; the preset axial reference plane is a plane that is perpendicular to the axial direction vector and passes through the center point of one end face of the theoretical cylinder. Data points whose theoretical axial height values fall within a preset height threshold range are selected as candidate points for the strapping.
[0094] In one embodiment of this application, the strapping positioning module 25, when calculating the second distance from each candidate point to the surface of the target steel coil, is specifically used for: For each candidate point in the strapping candidate point array, calculate the distance from the candidate point to the axis of the theoretical cylindrical surface based on the axis direction vector and the axis position; The absolute value of the difference between the distance and the radius is used as the second distance.
[0095] In one embodiment of this application, the device further includes a correction module. After determining the axial direction vector of the theoretical cylindrical surface, this correction module is specifically used for: Based on the three-dimensional point array, determine the first data point and the second data point located at both ends of the theoretical cylindrical surface; Perform plane fitting on the first data point to obtain the first fitting plane, and determine the first normal vector based on the first fitting plane; Perform plane fitting on the second data point to obtain the second fitting plane, and determine the second normal vector based on the second fitting plane; The first normal vector and the second normal vector are used to determine the correction direction vector; Obtain the deviation angle between the correction direction vector and the axis direction vector; If the deviation angle is greater than the preset angle tolerance threshold, the correction direction vector is used instead of the axis direction vector.
[0096] The apparatus in this application embodiment can execute the method provided in this application embodiment, and the implementation principle is similar. The actions performed by each module in the apparatus of each embodiment of this application correspond to the steps in the method of each embodiment of this application. For detailed functional descriptions of each module of the apparatus, please refer to the descriptions in the corresponding methods shown above, which will not be repeated here.
[0097] Figure 4 A schematic diagram of the structure of an electronic device to which this application embodiment applies is shown, such as... Figure 4 As shown, the electronic device can be used to implement the methods provided in any embodiment of this application.
[0098] like Figure 4 As shown, the electronic device 300 may primarily include at least one processor 301. Figure 4 The diagram shows components such as a memory 302, a communication module 303, and an input / output interface 304. Optionally, these components can be connected and communicate with each other via a bus 305. It should be noted that... Figure 4 The structure of the electronic device 300 shown is merely illustrative and does not constitute a limitation on the electronic devices to which the methods provided in the embodiments of this application are applicable.
[0099] The memory 302 can be used to store operating systems and applications, etc. The applications can include computer programs that implement the methods shown in the embodiments of this application when invoked by the processor 301, and can also include programs for implementing other functions or services. The memory 302 can be ROM (Read Only Memory) or other types of static storage devices that can store static information and instructions, RAM (Random Access Memory) or other types of dynamic storage devices that can store information and computer programs, or it can be EEPROM (Electrically Erasable Programmable Read Only Memory), CD-ROM (Compact Disc Read Only Memory) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited thereto.
[0100] Processor 301 is connected to memory 302 via bus 305 and implements corresponding functions by calling the application programs stored in memory 302. Processor 301 can be a CPU (Central Processing Unit), a general-purpose processor, a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It can implement or execute the various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this application. Processor 301 can also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, etc.
[0101] Electronic device 300 can connect to a network via communication module 303 (which may include, but is not limited to, components such as a network interface) to communicate with other devices (such as user terminals or servers) through the network and achieve data interaction, such as sending data to or receiving data from other devices. Communication module 303 may include wired network interfaces and / or wireless network interfaces, meaning the communication module may include at least one of wired or wireless communication modules.
[0102] The electronic device 300 can connect to necessary input / output devices, such as a keyboard and display device, via the input / output interface 304. The electronic device 300 itself may have a display device, and other display devices can also be connected externally via the interface 304. Optionally, a storage device, such as a hard drive, can also be connected via the interface 304 to store data from the electronic device 300, retrieve data from the storage device, or store data from the storage device in the memory 302. It is understood that the input / output interface 304 can be a wired interface or a wireless interface. Depending on the actual application scenario, the device connected to the input / output interface 304 can be a component of the electronic device 300 or an external device connected to the electronic device 300 when needed.
[0103] The bus 305 used to connect the components may include a path for transmitting information between the components. The bus 305 may be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus, etc. Depending on its function, the bus 305 may be divided into an address bus, a data bus, a control bus, etc.
[0104] Optionally, for the solution provided in the embodiments of this application, the memory 302 can be used to store a computer program that executes the solution of this application, and the processor 301 runs the computer program. When the processor 301 runs the computer program, it implements the operation of the method or apparatus provided in the embodiments of this application.
[0105] Based on the same principle as the method provided in the embodiments of this application, the embodiments of this application provide a computer-readable storage medium storing a computer program, which, when executed by a processor, can implement the corresponding content of the aforementioned method embodiments.
[0106] This application also provides a computer program product, which includes a computer program that, when executed by a processor, can implement the corresponding content of the aforementioned method embodiments.
[0107] It should be noted that the terms "first," "second," "third," "fourth," "1," "2," etc. (if present) in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in a sequence other than that shown in the figures or text.
[0108] In the embodiments of this application, the terms "module" or "unit" refer to a computer program or part of a computer program that has a predetermined function and works with other related parts to achieve a predetermined goal, and can be implemented wholly or partially using software, hardware (such as processing circuitry or memory), or a combination thereof. Similarly, a processor (or multiple processors or memory) can be used to implement one or more modules or units. Furthermore, each module or unit can be part of an overall module or unit that includes the functionality of that module or unit.
[0109] It should be understood that although arrows indicate various operation steps in the flowcharts of this application's embodiments, the order in which these steps are implemented is not limited to the order indicated by the arrows. Unless explicitly stated herein, in some implementation scenarios of this application's embodiments, the implementation steps in each flowchart can be executed in other orders as required. Furthermore, some or all steps in each flowchart, based on the actual implementation scenario, may include multiple sub-steps or multiple stages. Some or all of these sub-steps or stages can be executed at the same time, and each sub-step or stage can also be executed at different times. In scenarios where execution times differ, the execution order of these sub-steps or stages can be flexibly configured according to requirements, and this application's embodiments do not limit this.
[0110] The above description is only an optional implementation method for some implementation scenarios of this application. It should be noted that for those skilled in the art, other similar implementation methods based on the technical concept of this application without departing from the technical concept of this application also fall within the protection scope of the embodiments of this application.
Claims
1. A method for positioning steel coil strapping, characterized in that, Performed by a robot, the method includes: The robot acquires a first distance from the target steel coil surface and the robot's pose information; the target steel coil surface is a theoretical cylindrical surface; the robot moves along the axial and circumferential directions of the target steel coil. The first distance is bound to the corresponding pose information according to a preset binding method to obtain a bound array; The kinematic model is used to transform each data point in the bound array to the robot's base coordinate system, generating a three-dimensional point array; The candidate point array for strapping is determined based on the three-dimensional point array and the preset height threshold. Calculate the second distance from each candidate point to the surface of the target steel coil, compare the second distance with the preset strapping feature tolerance, and select the candidate point corresponding to the second distance that does not exceed the preset strapping feature tolerance as the strapping point.
2. The steel coil strapping positioning method as described in claim 1, characterized in that, The acquisition of the first distance between the robot and the surface of the target steel coil, and the robot's pose information, includes: The robot performs segmented scanning of the target steel coil surface along a preset scanning path to obtain multiple scanning line segments. The preset scanning path includes multiple continuous scanning line segments. For each scan line segment, the first distance and the robot's pose information are synchronously collected at a fixed sampling frequency; Accordingly, the step of binding the first distance with the corresponding pose information according to a preset binding method to obtain a bound array includes: For each acquisition moment, the first distance is combined and bound with the pose information to obtain the bound data unit; Based on the data units corresponding to each acquisition time, the data units are combined according to the order of the scan lines and the sampling order to obtain the bound array.
3. The steel coil strapping positioning method as described in claim 1, characterized in that, The step of transforming each data point in the bound array to the robot's base coordinate system using a kinematic model to generate a three-dimensional point array includes: For each data point in the bound array, extract the robot's pose information and first distance corresponding to that data point; the pose information includes the robot's position and orientation in the base coordinate system at the time of data acquisition at that data point. Based on the preset parameters of the robot's tool coordinate system, obtain the first three-dimensional coordinates of the data point corresponding to the first distance in the robot's tool coordinate system; Based on the pose information and the kinematic model, the first three-dimensional coordinates are transformed to the robot's base coordinate system to obtain the second three-dimensional coordinates of the data point corresponding to the base coordinate system. The second three-dimensional coordinates corresponding to each data point are arranged in the scanning logical order to obtain the three-dimensional point array.
4. The steel coil strapping positioning method as described in claim 3, characterized in that, After obtaining the three-dimensional point array, the method further includes: The three-dimensional point array is preprocessed to obtain a preprocessed three-dimensional point array; Based on the preprocessed three-dimensional point array, and through cylindrical surface fitting, the axial direction vector, axial position, and radius of the theoretical cylindrical surface are determined.
5. The steel coil strapping positioning method as described in claim 4, characterized in that, The step of determining the candidate point array for strapping based on the three-dimensional dot matrix array and a preset height threshold includes: Along the axial direction vector, the axial distance between each data point in the three-dimensional point array and the preset axial reference plane is obtained respectively, and each axial distance is used as the theoretical axial height value of each corresponding data point; the preset axial reference plane is a plane that is perpendicular to the axial direction vector and passes through the center point of one end face of the theoretical cylindrical surface; Data points whose theoretical axial height values fall within a preset height threshold range are selected as candidate points for the strapping.
6. The steel coil strapping positioning method as described in claim 4, characterized in that, The calculation of the second distance from each candidate point to the surface of the target steel coil includes: For each candidate point in the strap candidate point array, the distance from the candidate point to the axis of the theoretical cylindrical surface is calculated based on the axis direction vector and the axis position. The absolute value of the difference between the distance and the radius is taken as the second distance.
7. The steel coil strapping positioning method as described in claim 4, characterized in that, After determining the axial direction vector of the theoretical cylindrical surface, the process also includes: Based on the three-dimensional point array, determine the first data point and the second data point located at both ends of the theoretical cylindrical surface; Perform plane fitting on the first data points to obtain a first fitting plane, and determine the first normal vector based on the first fitting plane; Perform plane fitting on the second data points to obtain a second fitting plane, and determine the second normal vector based on the second fitting plane; The first normal vector and the second normal vector are used to determine the correction direction vector; Obtain the deviation angle between the corrected direction vector and the axis direction vector; If the deviation angle is greater than the preset angle tolerance threshold, then the corrected direction vector is used instead of the axis direction vector.
8. A steel coil strapping positioning device, characterized in that, include: The data acquisition module is used to acquire the first distance between the robot and the surface of the target steel coil, as well as the robot's pose information; The surface of the target steel coil is a theoretical cylindrical surface; The robot moves along the axial and circumferential directions of the target steel coil; The array binding module is used to bind the first distance with the corresponding pose information according to a preset binding method to obtain the bound array; The three-dimensional point array acquisition module is used to transform each data point in the bound array to the robot's base coordinate system according to the kinematic model, thereby generating a three-dimensional point array; The candidate point array determination module is used to determine the strapping candidate point array based on the three-dimensional point array and a preset height threshold. The strapping positioning module is used to calculate the second distance from each candidate point to the surface of the target steel coil, compare the second distance with a preset strapping feature tolerance, and take the candidate point corresponding to the second distance that does not exceed the preset strapping feature tolerance as the strapping point.
9. An electronic device, characterized in that, The electronic device includes a memory and a processor, the memory storing a computer program, and the processor executing the steel coil strapping positioning method according to any one of claims 1 to 7 when running the computer program.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steel coil strapping positioning method according to any one of claims 1 to 7.