Indoor-facing robot localization method, electronic device, localization system, and medium

By combining a laser rangefinder with a line-laying robot, the target line trajectory is acquired, and pose data planning and error calculation are performed to generate control signals and adjust the robot's motion in real time. This solves the problem of insufficient accuracy in indoor line laying and achieves high-precision line laying.

CN119292262BActive Publication Date: 2025-12-16HARBIN INSTITUTE OF TECHNOLOGY (SHENZHEN) (INSTITUTE OF SCIENCE AND TECHNOLOGY INNOVATION HARBIN INSTITUTE OF TECHNOLOGY SHENZHEN)
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411292184.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-14
Publication Date
2025-12-16
Estimated Expiration
2044-09-14

AI Technical Summary

Technical Problem

In the current indoor layout process, manual operation relies on workers' experience, which leads to inaccuracy. Sensor perception and positioning are affected by interference, resulting in serious error accumulation, which cannot meet the requirements of high-precision layout.

Method used

By combining a laser rangefinder with a line-laying robot, control signals are generated by acquiring the target line-drawing trajectory, pose data planning, error calculation, and predictive motion model. The robot's motion is adjusted in real time to ensure that the line-drawing trajectory conforms to the target trajectory.

Benefits of technology

It achieves high-precision control of indoor robot layout, reduces deviations caused by manual operation and sensor errors, and meets the needs of decoration construction for high-precision layout.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119292262B_ABST
    Figure CN119292262B_ABST
Patent Text Reader

Abstract

The embodiment of the application provides a kind of indoor-oriented robot positioning method, electronic equipment, positioning system and medium, belong to robot control technical field.The method comprises: obtaining target line drawing track, and its pose data planning is carried out, obtains the target pose data of multiple time steps.Then the distance data between laser range finder and line laying robot and the laser point coordinate matrix of laser point are acquired, and pose data calculation is carried out according to laser point coordinate matrix and distance data, obtains the initial pose data of line laying robot relative to laser range finder at target time step, then according to initial pose data and target pose data of target time step, error calculation is carried out, and motion error data is obtained.Then the control signal generation is carried out to motion error data by preset prediction motion model, and the expected offset signal is obtained.Finally, according to the expected offset signal, line laying robot is moved.The embodiment of the application can realize the accurate line laying in room.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robot control technology, and in particular to a robot positioning method, electronic device, positioning system and medium for indoor use. Background Technology

[0002] In the construction industry, setting out refers to marking baselines on the construction site according to the requirements of the design drawings. For interior decoration applications, baseline positioning often relies on manual labor or uses environmental perception sensors within robots. These sensors utilize Simultaneous Localization and Mapping (SLAM) laser technology to perceive the environment, and the robot's hardware is equipped with an automatic line-drawing mechanism to perform the setting out. However, manual setting out depends on the worker's skill and experience, making it difficult to guarantee accuracy. Furthermore, sensors are susceptible to various interferences during perception and positioning, such as sensor accuracy, environmental noise, and electromagnetic interference, leading to errors in robot movement. These errors accumulate and compound during construction, ultimately resulting in excessively large positioning errors. Additionally, limitations in sensor accuracy mean that the final setting out accuracy may fall short of expectations.

[0003] Therefore, how to achieve accurate indoor layout has become a technical problem that urgently needs to be solved. Summary of the Invention

[0004] The main objective of this application is to propose a robot positioning method, electronic device, positioning system, and medium for indoor applications, aiming to achieve accurate indoor cable laying.

[0005] To achieve the above objectives, a first aspect of this application proposes an indoor robot positioning method. This method is applied to a positioning system comprising a wire-laying robot and a laser rangefinder. The wire-laying robot is equipped with a receiving screen, which receives a laser beam emitted by a laser emitting module of the laser rangefinder, resulting in laser dots on the surface of the receiving screen. The method includes:

[0006] Obtain the target line trajectory;

[0007] The target line trajectory is used for pose data planning to obtain target pose data at multiple time steps;

[0008] The distance data between the laser rangefinder and the line-laying robot and the laser point coordinate matrix of the laser point are obtained. Based on the laser point coordinate matrix and the distance data, the pose data is calculated to obtain the initial pose data of the line-laying robot relative to the laser rangefinder at the target time step. The target time step belongs to multiple time steps.

[0009] Error calculation is performed based on the initial pose data and the target pose data at the target time step to obtain motion error data;

[0010] The motion error data is controlled by a preset predictive motion model to generate a control signal, thereby obtaining the desired offset signal.

[0011] The line-laying robot is controlled to move according to the desired offset signal so that the movement trajectory formed by the line-laying robot during line drawing conforms to the target line drawing trajectory.

[0012] In some embodiments, the laser rangefinder is further equipped with a turntable connected to the laser emitting module to allow the laser emitting module to rotate; the step of calculating pose data based on the laser point coordinate matrix and the distance data to obtain the initial pose data of the line-laying robot relative to the laser rangefinder at the target time step includes:

[0013] Acquire the screen image of the receiving screen;

[0014] Laser point coordinate recognition is performed on the screen image to obtain the laser point coordinate matrix in the screen coordinate system; the screen coordinate system is a coordinate system with any point on the screen as the origin;

[0015] Obtain the rotation angle of the turntable;

[0016] The coordinates of the origin of the module coordinate system are transformed to the origin of the turntable coordinate system; the module coordinate system is a coordinate system with any point of the laser emission module as the origin, and the turntable coordinate system is a coordinate system with any point of the turntable as the origin.

[0017] A first transformation matrix is ​​obtained by calculating the transformation matrix based on the turntable rotation angle and the origin transformation coordinates; wherein, the first transformation matrix is ​​used to represent the transformation relationship between the turntable coordinate system and the module coordinate system;

[0018] The beam coordinate matrix of the laser beam in the module coordinate system is obtained based on the distance data.

[0019] A second transformation matrix is ​​obtained by performing a least-squares operation on the laser point coordinate matrix, the first transformation matrix, and the beam coordinate matrix; the second transformation matrix is ​​used to represent the transformation relationship between the turntable coordinate system and the screen coordinate system.

[0020] The pose parameters are extracted from the second transformation matrix to obtain the initial pose data.

[0021] In some embodiments, the laser rangefinder is further equipped with a first image acquisition device; acquiring the turntable rotation angle includes:

[0022] Acquire robot motion images captured by the first image acquisition device of the wire-laying robot;

[0023] Laser point identification is performed on two adjacent robot motion images at time steps to obtain the coordinate change of the laser point;

[0024] The first rotation angle is determined based on the coordinate change, and the first rotation angle is used as the rotation angle of the turntable.

[0025] In some embodiments, obtaining the beam coordinate matrix of the laser beam in the module coordinate system based on the distance data includes:

[0026] Obtain the first angle between the beam projection line and the horizontal axis, wherein the beam projection line is the projection of the laser beam onto a preset light source plane;

[0027] Obtain the second angle between the laser beam and the normal axis, wherein the normal axis is perpendicular to the light source plane;

[0028] The beam coordinate matrix is ​​obtained by calculating the geometric relationship based on the distance data, the angle of the first included angle, and the angle of the second included angle.

[0029] In some embodiments, before obtaining the turntable rotation angle, the method further includes:

[0030] Obtain the heading angle of the wire-laying robot;

[0031] A second rotation angle is determined based on the heading angle, wherein the angle value of the second rotation angle is the same as the angle value of the heading angle, and the direction of the second rotation angle is opposite to the direction of the heading angle;

[0032] The receiving screen is controlled to rotate according to the second rotation angle.

[0033] In some embodiments, the initial pose data includes initial position coordinates and an initial heading angle, and the target pose data includes desired coordinates and a desired heading angle; the step of calculating the motion error data based on the initial pose data and the target pose data at the target time step includes:

[0034] The position difference between the initial position coordinates and the desired coordinates is calculated to obtain position error data;

[0035] The angle difference between the initial heading angle and the desired heading angle is calculated to obtain heading angle error data;

[0036] The motion error data is determined based on the position error data and the heading angle error data.

[0037] In some embodiments, the step of generating a control signal from the motion error data using a preset predictive motion model to obtain a desired offset signal includes:

[0038] Obtain the initial velocity of the wire-laying robot at the target time step, and obtain the velocity increment of the wire-laying robot at the target time step compared to the previous time step;

[0039] The initial pose data is predicted based on the predicted motion model to obtain predicted pose data corresponding to multiple consecutive time steps.

[0040] For each time step, the prediction error is calculated based on the predicted pose data and the target pose data to obtain the prediction error data;

[0041] Tracking performance evaluation data is obtained by integrating and calculating the preset error weight matrix, the preset incremental weight matrix, the motion error data, the prediction error data, and the velocity increment.

[0042] The speed increment is numerically adjusted based on the tracking performance evaluation data to obtain the target speed increment.

[0043] The wheel speed data of the wire-laying robot is determined based on the target speed increment and the initial speed;

[0044] The desired offset signal is obtained by generating a control signal based on the wheel speed data.

[0045] To achieve the above objectives, a second aspect of this application provides 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 method described in the first aspect.

[0046] To achieve the above objectives, a third aspect of this application provides a positioning system, the apparatus comprising:

[0047] The electronic device, laser rangefinder, and line-laying robot described in the second aspect above; wherein the laser rangefinder is equipped with a first image acquisition device, a turntable, and a laser emitting module; the line-laying robot is equipped with a second image acquisition device, a receiving screen, and a rotary motor; the second image acquisition device is used to acquire screen images of the receiving screen; the laser emitting module is used to emit a laser beam; the first image acquisition device is used to acquire images of the line-laying robot; the turntable is mounted on the bottom of the laser emitting module and is used to rotate the laser emitting module so that the laser beam is emitted to the receiving screen; the receiving screen is used to receive the laser beam; the rotary motor is mounted on the bottom of the receiving screen and is used to rotate the receiving screen so that the receiving screen faces the laser emitting module; the first image acquisition device, the second image acquisition device, the turntable, and the rotary motor are respectively communicatively connected to the electronic device.

[0048] To achieve the above objectives, a fourth aspect of the present application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method described in the first aspect.

[0049] This application proposes an indoor robot localization method, electronic device, localization system, and medium. First, it obtains the target line trajectory by analyzing design drawings, laying the foundation for precise line laying. Then, it performs pose data planning on these trajectories, decomposing the complex trajectory into target pose data for multiple time steps, providing detailed reference for subsequent precise control. Next, it acquires the distance data between the laser rangefinder and the line-laying robot, as well as the laser point coordinate matrix. Based on the laser point coordinate matrix and distance data, it calculates pose data to obtain the initial pose data of the line-laying robot relative to the laser rangefinder at the target time step. Furthermore, by comparing the initial pose data with the target pose data, it calculates the motion error data. Then, it processes the motion error data using a preset predictive motion model to generate a control signal, i.e., the desired offset signal. This achieves prediction and compensation for potential errors, thereby adjusting the robot's motion trajectory in advance to ensure its consistency with the target trajectory. Finally, the line-laying robot is controlled to move according to the generated expected offset signal, and the position and attitude of the robot are adjusted in real time to ensure that its line-drawing trajectory strictly conforms to the target line-drawing trajectory. This closed-loop control process effectively reduces the line-laying deviation caused by manual operation. Compared with the technical solution of using SLAM technology for line laying, since the initial pose data is the pose data of the line-laying robot relative to a fixed laser rangefinder, rather than relying on the robot's own continuous perception of the environment and map building, the robot's initial pose data is not affected by the previous pose estimation error, so there is no cumulative error. Therefore, the embodiment of this application can achieve accurate line laying and meet the needs of high-precision line laying in the field of interior decoration construction. Attached Figure Description

[0050] Figure 1 This is a flowchart of an indoor robot localization method provided in an embodiment of this application;

[0051] Figure 2 This is a schematic diagram of the system structure of the positioning system provided in the embodiments of this application;

[0052] Figure 3 This is a schematic diagram of the structure of the laser emitting module according to an embodiment of this application;

[0053] Figure 4 This is a schematic diagram of the line drawing mechanism according to an embodiment of this application;

[0054] Figure 5 yes Figure 1 The flowchart of step S103 in the process;

[0055] Figure 6 This is a schematic diagram showing the positions of the turntable coordinate system, module coordinate system, and screen coordinate system provided in the embodiments of this application;

[0056] Figure 7 yes Figure 5 The flowchart of step S503 in the process;

[0057] Figure 8 yes Figure 5 The flowchart of step S506 in the process;

[0058] Figure 9 This is a schematic diagram of the hardware structure of the electronic device provided in the embodiments of this application;

[0059] Figure 10 yes Figure 1 The flowchart of step S104 in the process;

[0060] Figure 11 yes Figure 1 The flowchart of step S105 in the process;

[0061] Figure 12 This is a schematic diagram of a calibration block structure provided in an embodiment of this application;

[0062] Figure 13 This is a schematic diagram of a scenario for the beam origin calibration method provided in an embodiment of this application;

[0063] Figure 14 This is a schematic diagram of another scenario for the beam origin calibration method provided in the embodiments of this application;

[0064] Figure 15 This is a schematic diagram of another scenario for the beam origin calibration method provided in the embodiments of this application;

[0065] Figure 16 This is a schematic diagram of the hardware structure of the electronic device provided in the embodiments of this application. Detailed Implementation

[0066] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0067] It should be noted that although functional modules are divided in the device schematic diagram and a logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than the module division in the device or the order in the flowchart. The terms "first," "second," etc., in the specification, claims, and the aforementioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.

[0068] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.

[0069] In the construction industry, setting out lines refers to marking baselines on the construction site according to the requirements of design drawings. For large-scale, unconstrained outdoor scenarios, existing positioning solutions combine internal sensors and external benchmarks. This involves setting benchmarks in the environment, such as road signs, total stations, or utilizing 3D drawing information, combined with the robot's internal sensors for precise positioning. However, these technologies are not entirely suitable for indoor environments because they often require high economic costs, and the limited space indoors makes it difficult to deploy these large devices. Therefore, in interior decoration-related technical solutions, baseline positioning still commonly relies on manual methods, or on using environmental perception sensors carried by the robot to perceive the decoration environment, such as Simultaneous Localization and Mapping (SLAM) laser technology, while simultaneously automating the line-drawing execution mechanism on the robot hardware. However, manual line setting out depends on the worker's technical skills and experience, which cannot guarantee accuracy. Furthermore, sensors are affected by various interferences during perception and positioning, such as sensor accuracy, environmental noise, and electromagnetic interference, leading to errors in robot movement. These errors accumulate and compound during construction, ultimately resulting in excessively large errors in line setting and positioning. Therefore, improving the accuracy of line laying has become an urgent technical problem to be solved.

[0070] Based on this, embodiments of this application provide a robot positioning method, electronic device, positioning system, and medium for indoor use, aiming to achieve accurate cable laying indoors.

[0071] The indoor robot positioning method, electronic device, positioning system, and medium provided in this application are specifically described through the following embodiments. First, the indoor robot positioning method in this application is described.

[0072] Figure 1 This is an optional flowchart of an indoor robot positioning method provided in this application embodiment. The indoor robot positioning method provided in this application embodiment is applied to a positioning system, which includes a line-laying robot and a laser rangefinder. The line-laying robot is equipped with a receiving screen, which is used to receive the laser beam emitted by the laser emitting module of the laser rangefinder, so that there are laser dots on the surface of the receiving screen. The specific structure of the positioning system will be described in detail in the following embodiments. Figure 1 The method may include, but is not limited to, steps S101 to S106.

[0073] Step S101: Obtain the target line trajectory.

[0074] Step S102: Perform pose data planning on the target line trajectory to obtain target pose data for multiple time steps.

[0075] Step S103: Obtain the distance data between the laser rangefinder and the wire-laying robot and the laser point coordinate matrix of the laser point. Calculate the pose data based on the laser point coordinate matrix and the distance data to obtain the initial pose data of the wire-laying robot relative to the laser rangefinder at the target time step. The target time step belongs to multiple time steps.

[0076] Step S104: Calculate the error based on the initial pose data and the target pose data at the target time step to obtain motion error data.

[0077] Step S105: The motion error data is used to generate a control signal through a preset predictive motion model to obtain the desired offset signal.

[0078] Step S106: Control the movement of the line-laying robot according to the desired offset signal so that the movement trajectory formed by the line-laying robot in drawing lines conforms to the target line-drawing trajectory.

[0079] Steps S101 to S106 as illustrated in this embodiment first involve analyzing the design drawings to obtain the target line trajectory, laying the foundation for precise line laying. Then, pose data planning is performed on these trajectories, decomposing the complex trajectory into target pose data for multiple time steps, providing detailed reference for subsequent precise control. Next, the distance data between the laser rangefinder and the line-laying robot, as well as the laser point coordinate matrix, are acquired. Based on the laser point coordinate matrix and distance data, pose data calculation is performed to obtain the initial pose data of the line-laying robot relative to the laser rangefinder at the target time step. Furthermore, by comparing the initial pose data and the target pose data, motion error data is calculated. Then, the motion error data is processed using a preset predictive motion model to generate a control signal, i.e., the desired offset signal. This achieves prediction and compensation for potential errors, thereby adjusting the robot's motion trajectory in advance to ensure its consistency with the target trajectory. Finally, the line-laying robot is controlled to move according to the generated expected offset signal, and the position and attitude of the robot are adjusted in real time to ensure that its line-drawing trajectory strictly conforms to the target line-drawing trajectory. This closed-loop control process effectively reduces the line-laying deviation caused by manual operation. Compared with the technical solution of using SLAM technology for line laying, since the initial pose data is the pose data of the line-laying robot relative to a fixed laser rangefinder, rather than relying on the robot's own continuous perception of the environment and map building, the robot's initial pose data is not affected by the previous pose estimation error, so there is no cumulative error. Therefore, the embodiment of this application can achieve accurate line laying and meet the needs of high-precision line laying in the field of interior decoration construction.

[0080] In step S101 of some embodiments, the target drawing trajectory is the specific drawing trajectory that the robot needs to execute, which is extracted from the construction design drawings. It may include the starting point, ending point, and any specific curvature or angle change of the line.

[0081] In step S102 of some embodiments, the target line drawing trajectory is decomposed into multiple time steps in the time dimension. Each time step corresponds to a specific pose. In other words, the continuous line drawing task is decomposed into a series of discrete control points. Each control point defines the precise position and heading angle that the robot should reach at the end of a specific time step. The above control points are the target pose data.

[0082] It should be noted that the target pose data is determined based on the reference coordinate system established by the laser rangefinder provided in the embodiments of this application. That is, when the line-laying robot performs the line-drawing task, the predetermined position and posture it should reach at the end of each time step are determined and calibrated relative to the coordinate system defined by the laser rangefinder. To more clearly understand the execution process of the robot positioning method in the embodiments of this application, the positioning system provided in the embodiments of this application will be described below in conjunction with the following examples.

[0083] Please see Figure 2 This application also provides a positioning system, which includes an electronic device, a laser rangefinder, and a wire-laying robot that implement the methods provided in this application.

[0084] Specifically, the laser rangefinder is equipped with a first image acquisition device, a turntable, and a laser emission module. In this embodiment, the first image acquisition device is an infrared camera, and the laser emission module is assembled from three laser ranging units and a bracket, as shown below. Figure 3 As shown, Figure 3 This is a schematic diagram of the laser emitting module according to an embodiment of this application. The first image acquisition device is used to acquire images of the wire-laying robot. The device is mounted on an L-shaped component, which stabilizes the first image acquisition device and ensures the quality of the acquired images. The turntable is an electric turntable with two degrees of freedom, mounted on the bottom of the laser emitting module via a U-shaped component. The turntable is used to rotate the laser emitting module. The bottom of the support is designed with a T-shaped structure, securely connected to the U-shaped component via threads. The wire-laying robot is equipped with a second image acquisition device, a receiving screen, a rotary motor, a robot main controller, and a line-drawing mechanism. The second image acquisition device is used to acquire images from the receiving screen, which is mounted on the top of the wire-laying robot. A rotary motor is located at the bottom of the receiving screen. The motion control of the wire-laying robot is controlled by the robot main controller.

[0085] In some embodiments, a line-drawing mechanism is provided in the middle of the robot's chassis. Please refer to [reference needed]. Figure 4 , Figure 4 This is a schematic diagram of the line-drawing mechanism according to an embodiment of this application. Specifically, the mechanism consists of the following key components: a mounting base with a reinforcing rib structure, and two extension plates connected to the mounting base. At the ends of these extension plates, a pair of miniature ball bearings are fitted, each equipped with a stepped flange for securing the mounting base. During the line-drawing process, the reaction force generated by the pen contacting the ground causes the pen to bounce, thus affecting the uniformity of the line. Therefore, a copper column is placed between the two extension plates. This copper column is connected to a through hole at the upper end of the rotating groove of the mounting base via a rubber band, forming a torque application system. The function of this system is to provide the necessary torque to the pen, ensuring the stability and reliability of the line-drawing mechanism throughout the entire operation.

[0086] In the process of implementing the method provided in this application embodiment, the laser emitting module emits a laser beam, and the turntable is used to rotate the laser emitting module so that the laser beam is emitted parallel to the receiving screen. The receiving screen of the line-laying robot is used to receive the laser beam, so that laser dots appear on the surface of the receiving screen. A rotary motor is installed at the bottom of the receiving screen. The rotary motor can be a DC brushless motor, used to rotate the receiving screen so that the receiving screen faces the laser emitting module. It should be noted that, since the pose of the receiving screen needs to be calculated later, the number of laser dots must be at least 3 to determine the plane of the receiving screen. Therefore, the number of laser ranging units is also designed to be at least 3.

[0087] In some embodiments, the first image acquisition device, the second image acquisition device, the turntable, and the rotary motor are respectively communicatively connected to an electronic device. It should be noted that the positioning system provided in this application embodiment has a lower economic cost compared to outdoor lofting robots with a larger range and ultra-high precision.

[0088] The indoor robot localization method provided in this application can be applied to a terminal, a server, or software running on either a terminal or a server. In some embodiments, the terminal can be a smartphone, tablet, laptop, desktop computer, etc.; the server can be configured as an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms; the software can be an application that implements the indoor robot localization method, but is not limited to the above forms.

[0089] This application can be used in a wide variety of general-purpose or special-purpose computer system environments or configurations. Examples include: personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, and distributed computing environments including any of the above systems or devices. This application can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform specific tasks or implement specific abstract data types. This application can also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.

[0090] In step S103 of some embodiments, the distance data between the laser rangefinder and the wire-laying robot and the laser point coordinate matrix of the laser point are acquired. Based on the laser point coordinate matrix and the distance data, pose data is calculated to obtain the initial pose data of the wire-laying robot relative to the laser rangefinder at the target time step. Here, the target time step comprises multiple time steps, and the initial pose data refers to the actual position and attitude information of the wire-laying robot at the beginning of each target time step.

[0091] Please see Figure 5 In some embodiments, for each target time step, step S103 may include, but is not limited to, steps S501 to S508:

[0092] Step S501: Obtain the screen image of the receiving screen.

[0093] Step S502: Perform laser point coordinate recognition on the screen image to obtain the laser point coordinate matrix in the screen coordinate system.

[0094] Step S503: Obtain the rotation angle of the turntable.

[0095] Step S504: Obtain the coordinate transformation of the origin of the module coordinate system to the origin of the turntable coordinate system.

[0096] Step S505: Calculate the transformation matrix based on the turntable rotation angle and the origin transformation coordinates to obtain the first transformation matrix.

[0097] Step S506: Obtain the beam coordinate matrix of the laser beam in the module coordinate system based on the distance data.

[0098] Step S507: Perform least squares operation based on the laser point coordinate matrix, the first transformation matrix, and the beam coordinate matrix to obtain the second transformation matrix.

[0099] Step S508: Extract pose parameters from the second transformation matrix to obtain initial pose data.

[0100] In step S501 of some embodiments, the receiving screen is used to receive the laser beam emitted by the laser emitting module of the laser rangefinder, so that laser dots are present on the surface of the receiving screen. The screen image is an image captured by the second image acquisition device on the receiving screen, and the screen image can be transmitted to the master node of the electronic device through the Robot Operating System Topics (ROS).

[0101] In step S502 of some embodiments, the screen coordinate system is a coordinate system with any point on the screen as the origin, and the laser point coordinates are two-dimensional coordinates. For example, the coordinates of the three laser points in the screen coordinate system are obtained through visual recognition technology (x...).s1 ,y s1 ), (x s2 ,y s2 ) and (x s3 ,y s3 If the laser point coordinate matrix Ps is then expressed as... .

[0102] In step S503 of some embodiments, since the turntable has two degrees of freedom, the turntable rotation angle includes the turntable deflection angle. and turntable pitch angle Please refer to Figure 6 Turntable deflection angle Let be the angle of rotation about the YO axis of the turntable coordinate system O, and let be the angle of rotation about the XO axis of the turntable coordinate system O. The turntable coordinate system O is a coordinate system with any point on the turntable as its origin. In this embodiment, the origin of the turntable coordinate system O is the center of the turntable base. Please refer to [link to relevant documentation]. Figure 7 In some embodiments, step S503 may include, but is not limited to, steps S701 to S703:

[0103] Step S701: Obtain robot motion images captured by the first image acquisition device on the wire-laying robot.

[0104] Step S702: Perform laser point recognition on two adjacent robot motion images at time steps to obtain the coordinate change of the laser points.

[0105] Step S703: Determine the first rotation angle based on the coordinate change, and use the first rotation angle as the turntable rotation angle.

[0106] In step S701 of some embodiments, the robot motion image is a real-time acquired image of the wire-laying robot. Since the laser emitted by the laser rangefinder is infrared light, the first imaging device can be an infrared camera, which can more effectively capture the laser point and maintain good imaging effect even in bright ambient light conditions.

[0107] In step S702 of some embodiments, the robot motion images acquired in two consecutive time steps are analyzed to identify the coordinates of laser points in the images. The change in coordinates can be obtained by calculating the difference between the two laser point coordinate data, which reflects the adjustment of the movement direction of the wire-laying robot between the two time steps. For example, if the positive direction of the x-axis is horizontal to the right, and the change in the x-coordinate is negative, it reflects that the wire-laying robot is moving to the left.

[0108] In step S703 of some embodiments, the angular direction of the first rotation angle needs to be determined based on the sign of the coordinate change. The angle value of the first rotation angle can be obtained by performing specific geometric calculations based on the coordinate change and the distance data between the laser rangefinder and the wire-laying robot. Alternatively, it can be a pre-set angle, as long as the laser beam emitted by the laser rangefinder can hit the receiving screen of the wire-laying robot.

[0109] Steps S701 to S703, as illustrated in the embodiments of this application, through effective image acquisition by the first image acquisition device, accurate measurement of the change in laser point coordinates, and calculation of rotation angles based on these data, ensure high precision and efficiency for the robot when performing line drawing tasks. This not only improves construction quality but also significantly enhances the level of automation in the operation.

[0110] In step S504 of some embodiments, the module coordinate system O L In this embodiment of the application, a coordinate system is established with any point on the laser emitting module as the origin. Figure 6 As shown, the module coordinate system O L The origin is the center of the support. Since the geometric relationship between the laser emission module and the turntable is predetermined, the module coordinate system O... L The origin of the turntable coordinate system O is known when the coordinates are transformed.

[0111] In step S505 of some embodiments, the first transformation matrix is ​​used to represent the transformation from the turntable coordinate system O to the module coordinate system O. L The transformation relationship, the first transformation matrix It can be represented as Where (x, y, z) represent the coordinates transformed from the origin. Indicates the turntable deflection angle, and This indicates the pitch angle of the turntable.

[0112] In step S506 of some embodiments, since the laser beam diverges as the emission distance increases, it is necessary to obtain the beam coordinate matrix of the laser beam in the module coordinate system. The beam coordinate matrix is ​​used to represent the laser point coordinate vector relative to the module coordinate system O. L The coordinate matrix. Please refer to... Figure 8 In some embodiments, step S506 may also include, but is not limited to, steps S801 to S803:

[0113] Step S801: Obtain the first angle between the beam projection line and the horizontal axis. The beam projection line is the projection of the laser beam onto the preset light source plane.

[0114] Step S802: Obtain the second included angle between the laser beam and the normal axis, where the normal axis is perpendicular to the light source plane.

[0115] Step S803: Calculate the geometric relationship based on the distance data, the angle of the first included angle, and the angle of the second included angle to obtain the beam coordinate matrix.

[0116] In step S801 of some embodiments, the light source plane is the module coordinate system O. L X L OY L Plane, horizontal axis and axis X L .

[0117] In step S803 of some embodiments, the normal axis, i.e., the axis Z, is... L .

[0118] In step S803 of some embodiments, the beam coordinate matrix P L It can be represented as Where D1, D2, and D3 represent the lengths of the three laser beams, and H1, H2, and H3 are the coordinate systems of the beam origin distance module for the three laser ranging units. L The heights of the origin, L1, L2, and L3, represent the distances of the origins of the three laser ranging units from the module coordinate system O along the x-axis. L The distance from the origin, where L3 is 0, l1, l2 and l3 represent the lengths of the beam projection lines corresponding to the three laser beams, a, b and c represent the first included angles corresponding to the three beam projection lines, and α, β and γ represent the second included angles between the three laser beams and the normal axis.

[0119] Steps S801 to S803, as shown in the embodiments of this application, calculate the coordinate matrix of the laser point coordinate vector relative to the module coordinate system through a series of geometric relationships, providing the necessary data foundation for subsequent calculation of robot pose parameters.

[0120] In step S507 of some embodiments, the second transformation matrix The second transformation matrix is ​​used to represent the transformation relationship from the turntable coordinate system to the screen coordinate system. It can be represented as , where θ, Δx, Δy, and Δz are the pose parameters of the receiving screen, θ, , These represent the rotation angle, yaw angle, and roll angle of the receiving screen, respectively, while Δx, Δy, and Δz are position coordinate information.

[0121] It should be noted that the second transformation matrix Satisfy the following analytical expression (1):

[0122] = (1),

[0123] The laser point coordinate matrix is ​​represented as follows: The first transformation matrix is ​​represented as The beam coordinate matrix is ​​represented as Least squares operations can be performed using the Levenberg-Marquardt method on the second transformation matrix. The final pose parameters are obtained through calculation.

[0124] In step S508 of some embodiments, the second transformation matrix is... θ in , The parameters Δx, Δy, and Δz serve as the initial pose data for the target time step, which is the robot pose at the current moment.

[0125] In steps S501 to S508 of this embodiment, by acquiring the screen image of the receiving screen, this embodiment can capture the laser point formed on the screen by the laser beam emitted by the laser rangefinder. Subsequently, by processing and analyzing these images, the coordinates of the laser point can be identified, and the coordinate changes between adjacent time steps can be calculated. This data provides an important basis for determining the robot's rotation angle. Then, this embodiment uses these coordinate changes and known geometric relationships to calculate the robot's rotation angle relative to its initial pose, i.e., the turntable rotation angle. Through this series of steps, real-time tracking of the robot's pose changes is achieved to ensure that it accurately performs its task along a predetermined path.

[0126] Please see Figure 9 Prior to step S503 in some embodiments, the indoor-oriented robot localization method also includes, but is not limited to, steps S901 to S903:

[0127] Step S901: Obtain the heading angle of the wire-laying robot.

[0128] Step S902: Determine the second rotation angle based on the heading angle.

[0129] Step S903: Control the receiving screen to rotate according to the second rotation angle.

[0130] In step S901 of some embodiments, the heading angle of the wire-laying robot can be obtained by the robot's built-in inertial measurement unit (IMU).

[0131] In step S902 of some embodiments, the angle value of the second rotation angle is the same as the angle value of the heading angle, and the direction of the second rotation angle is opposite to the direction of the heading angle.

[0132] In step S903 of some embodiments, the rotating motor below the receiving screen can be controlled to rotate by a PID control algorithm.

[0133] In the embodiments of this application, steps S901 to S903 are used to adaptively control the receiving screen to rotate in the opposite direction by obtaining the heading angle of the wire-laying robot, thereby ensuring that the laser point can hit the receiving screen.

[0134] In step S104 of some embodiments, error calculation is performed based on the initial pose data and the target pose data at the target time step to obtain motion error data. It should be noted that the initial pose data includes initial position coordinates and initial heading angle, and the target pose data includes desired coordinates and desired heading angle.

[0135] Please see Figure 10 In some embodiments, step S104 may include, but is not limited to, steps S1001 to S1003:

[0136] Step S1001: Calculate the position difference between the initial position coordinates and the desired coordinates to obtain position error data.

[0137] Step S1002: Calculate the angle difference between the initial heading angle and the desired heading angle to obtain heading angle error data.

[0138] Step S1003: Determine motion error data based on position error data and heading angle error data.

[0139] In step S1001 of some embodiments, the position error data, i.e. the difference between the actual position coordinates and the expected position coordinates of the wire-laying robot, can be obtained by subtracting the expected coordinates from the initial position coordinates.

[0140] In step S1002 of some embodiments, the heading angle error data, i.e. the difference between the current heading and the desired heading of the wire-laying robot, can be used to guide how the wire-laying robot adjusts its direction to move in the desired direction. It can be obtained by subtracting the desired heading angle from the initial heading angle.

[0141] In step S1003 of some embodiments, position error data and heading angle error data are integrated to obtain motion error data, which can be in the form of a matrix.

[0142] In some embodiments, the initial position coordinates and initial heading angle of the wire-laying robot are used as a system state variable, and the desired coordinates and desired heading angle are used as desired system state variables. The motion error data is obtained by calculating the difference in matrix form.

[0143] Steps S1001 to S1003 shown in the embodiments of this application obtain detailed motion error data by detecting the actual state of the robot in real time and comparing it with the preset target state. This provides a systematic method to accurately calculate and evaluate the position and orientation deviation of the wire-laying robot during the execution of the task.

[0144] In step S105 of some embodiments, a control signal is generated from the motion error data using a preset predictive motion model to obtain a desired offset signal. The predictive motion model can be a Model Predictive Control (MPC). The desired offset signal is a control signal that controls the movement direction of the wire-laying robot. In this embodiment, the wire-laying robot has two drive wheels, so only the speed difference between the left and right wheels needs to be controlled to control the heading angle of the wire-laying robot.

[0145] Please see Figure 11 In some embodiments, step S105 may include, but is not limited to, steps S1101 to S1107:

[0146] Step S1101: Obtain the initial velocity of the wire-laying robot at the target time step, and obtain the velocity increment of the wire-laying robot at the target time step compared to the previous time step.

[0147] Step S1102: Based on the predicted motion model, the initial pose data is predicted to obtain the predicted pose data corresponding to multiple consecutive time steps.

[0148] Step S1103: For each time step, calculate the prediction error based on the predicted pose data and the target pose data to obtain the prediction error data.

[0149] Step S1104: Based on the preset error weight matrix, the preset incremental weight matrix, motion error data, prediction error data and velocity increment, the tracking performance evaluation data is obtained by integrating and calculating.

[0150] Step S1105: Adjust the speed increment numerically based on the tracking performance evaluation data to obtain the target speed increment.

[0151] Step S1106: Determine the wheel speed data of the wire-laying robot based on the target speed increment and the initial speed.

[0152] Step S1107: Generate control signals based on wheel speed data to obtain the desired offset signal.

[0153] In step S1101 of some embodiments, the speed increment can be obtained by subtracting the running speed of the previous time step from the current initial speed.

[0154] In step S1102 of some embodiments, the predicted consecutive time steps are multiple consecutive future time steps, and these time steps are used as the prediction time domain. The predicted pose data are the position coordinates and heading angle that the line-laying robot may be in in the prediction time domain.

[0155] In step S1103 of some embodiments, the pose data of future time steps obtained from the predicted motion model are compared with the target pose data, and the error value at each future time step is calculated. The prediction error data is an array composed of prediction errors at multiple time steps, reflecting the degree to which the system may deviate from the target trajectory without any additional control corrections.

[0156] In step S1104 of some embodiments, the tracking performance evaluation data can be calculated according to the following analytical expression (2):

[0157] (2),

[0158] Wherein, the tracking performance evaluation data is represented by J, the current time step by k, the time step index by j, the length of the prediction time domain by Np, the error weight matrix by Q, the incremental weight matrix by R, and the prediction motion error data by [missing information]. The speed increment is expressed as The speed increment refers to the speed increment of the left and right wheels of the wire-laying robot.

[0159] In step S1105 of some embodiments, the analytical expression (2) is transformed into a standard quadratic programming form and solved. The constraint on the velocity increment during the optimization function is expressed by the following analytical expression (3):

[0160] (3),

[0161] Where Δumin is the lower limit of the speed increment, Δumax is the upper limit of the speed increment, i is the index of the current optimization time step, and Nc is the length of the control time domain, indicating how many time steps the control input will be optimized in the future during the optimization process of the MPC controller. Nc is usually less than Np. In other words, Nc determines the number of time steps in which the MPC actively adjusts the control input in the prediction time domain.

[0162] In step S1106 of some embodiments, the target speed increment is added to the initial speed to obtain the wheel speed data of the wire-laying robot. The wheel speed data includes the speed of the left wheel and the speed of the right wheel. The difference between the speeds of the left and right wheels is controlled within a desired value, thereby controlling the movement direction of the wire-laying robot.

[0163] In step S1107 of some embodiments, the desired offset signal, i.e. the final generated control signal, is sent to the robot master to realize subsequent robot motion control.

[0164] Steps S1001 to S1007, as illustrated in this embodiment, utilize a progressively optimized control method to precisely adjust the movement direction and speed of the wire-laying robot in future time steps. This ensures that the speed difference between the left and right wheels is controlled within the desired range, guaranteeing that the robot follows a predetermined trajectory. Finally, the generated desired offset signal acts on the robot's drive system, guiding the robot to correct the current deviation based on the difference in left and right wheel speeds, achieving precise tracking of the target position. This embodiment, through the combination of closed-loop feedback and predictive control, significantly improves the motion accuracy and stability of the wire-laying robot, ensuring that the robot can efficiently complete wire-laying tasks in complex environments.

[0165] In step S106 of some embodiments, the line-laying robot is controlled to move according to the desired offset signal, so that the movement trajectory formed by the line-laying robot during line drawing conforms to the target line drawing trajectory. The desired offset signal is transmitted by the robot's main controller to the drive motors of the left and right wheels, driving the robot to perform corresponding speed adjustments to guide the robot to move towards the target direction and correct the deviation between the current position and the target position.

[0166] In some embodiments, during the process of acquiring robot pose parameters, it is necessary to utilize the origins of the beams of the three laser ranging units in the module coordinate system O. L The coordinate data in the laser rangefinder directly affects the accuracy of obtaining the robot's pose. Therefore, it is essential to calibrate the positional relationship between the origin of the laser rangefinder beam and the hardware casing of the laser ranging unit beforehand. The calibration method for the origin of the laser beam will be described in detail below with reference to the following embodiments.

[0167] First, the calibration block structure used in the embodiments of this application is introduced, such as... Figure 12 As shown, Figure 12 This is a schematic diagram of a calibration block structure provided in an embodiment of this application. In some embodiments, the bottom surface of the calibration block is fixed on a horizontal platform, the calibration surface C is perpendicular to the bottom surface, the angle between calibration surface A and calibration surface C can be 15°, and the angle between calibration surface B and calibration surface C can be 15°.

[0168] Please refer to Figure 13 , Figure 13This is a schematic diagram of a scenario for the beam origin calibration method provided in this application embodiment. The laser ranging unit is placed on a coordinate measuring platform, and the bottom surface of the calibration block is fixed on a horizontal micro-motion stage. A coordinate measuring machine is used to measure the midpoint of the front edge of the laser ranging unit to establish a coordinate system with the midpoint as the origin. The direction along the edge is the x-axis direction, the direction normal to the top surface is the z-axis direction, and the direction perpendicular to the x-axis is the y-axis direction.

[0169] Next, the position of the fine-motion stage is manually adjusted so that the laser emitted by the laser ranging unit hits the calibration surface C, and the length D of the laser beam at this time is obtained. C1 The surface C is measured using a coordinate measuring machine, and the equation of surface C is obtained. Based on the laser beam length DC1 and the equation of surface C, the equation of surface C1 is obtained, as shown in analytical formula (4):

[0170] (4),

[0171] Among them, A C1 x+B C1 y+C C1 z=0 represents the equation of surface C, D C1 The length of the laser beam.

[0172] Next, adjust the fine-motion stage so that the laser beam hits the edge where calibration surface C and calibration surface A intersect, and obtain the laser beam length D at this point. AC .like Figure 14 As shown, Figure 14 This is a schematic diagram of another scenario for the beam origin calibration method provided in this application embodiment. By using a coordinate measuring machine to measure surfaces C and A at this time, the equations of the intersecting edges of surfaces C and A can be obtained. At this time, surface AC is the plane obtained by translating the intersecting edges of calibration surfaces C and A along the laser beam direction. The plane equation of surface AC is shown in analytical equation (5):

[0173] (5),

[0174] Among them, A AC B AC and C AC All are known constants, D AC The length of the laser beam.

[0175] Continue adjusting the fine-motion stage until the laser beam hits the edge where calibration surfaces C and B intersect, and obtain the laser beam length D at this point. BC .like Figure 15 As shown, Figure 15This is a schematic diagram of another scenario for the beam origin calibration method provided in the embodiments of this application. Using a coordinate measuring machine to measure surfaces C and B at this time, the equations of the intersecting edges of surfaces C and B can be obtained. Then, translating the lines of the intersecting edges of the two surfaces along the beam direction yields surface BC, and the plane equation of surface BC is shown in analytical formula (6):

[0176] (6),

[0177] Among them, A BC B BC and C BC All are known constants, D BC The length of the laser beam.

[0178] By combining analytical equations (4), (5) and (6), the coordinates of the intersection of the three planes are obtained, which are the coordinates of the origin of the beam, and the calibration of the origin of the beam is finally achieved.

[0179] This application also provides 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 above-described indoor robot positioning method. This electronic device can be any smart terminal, including tablet computers, in-vehicle computers, etc.

[0180] Please see Figure 16 , Figure 16 The hardware structure of an electronic device according to another embodiment is illustrated. The electronic device includes:

[0181] The processor 1601 can be implemented using a general-purpose CPU (Central Processing Unit), microprocessor, application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of this application.

[0182] The memory 1602 can be implemented as a read-only memory (ROM), static storage device, dynamic storage device, or random access memory (RAM). The memory 1602 can store the operating system and other applications. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 1602 and is called and executed by the processor 1601 to implement the indoor robot positioning method of the embodiments of this application.

[0183] The input / output interface 1603 is used to implement information input and output;

[0184] The communication interface 1604 is used to enable communication and interaction between this device and other devices. Communication can be achieved through wired means (such as USB, Ethernet cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.).

[0185] Bus 1605 transmits information between various components of the device (e.g., processor 1601, memory 1602, input / output interface 1603, and communication interface 1604);

[0186] The processor 1601, memory 1602, input / output interface 1603 and communication interface 1604 are connected to each other within the device via bus 1605.

[0187] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described indoor robot positioning method.

[0188] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs. Furthermore, memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, memory may optionally include memory remotely located relative to the processor, and these remote memories can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.

[0189] The indoor robot positioning method, electronic device, positioning system, and storage medium provided in this application first obtain the target line trajectory by analyzing the design drawings, laying the foundation for accurate line laying. Then, pose data planning is performed on these trajectories, decomposing the complex trajectory into target pose data for multiple time steps, providing detailed reference for subsequent precise control. Next, the distance data between the laser rangefinder and the line-laying robot, as well as the laser point coordinate matrix, are acquired. Based on the laser point coordinate matrix and distance data, pose data calculation is performed to obtain the initial pose data of the line-laying robot relative to the laser rangefinder at the target time step. Furthermore, by comparing the initial pose data and the target pose data, motion error data is calculated. Then, the motion error data is processed using a preset predictive motion model to generate a control signal, i.e., a desired offset signal. This achieves prediction and compensation for potential errors, thereby adjusting the robot's motion trajectory in advance to ensure its consistency with the target trajectory. Finally, the line-laying robot is controlled to move according to the generated expected offset signal, and the position and attitude of the robot are adjusted in real time to ensure that its line-drawing trajectory strictly conforms to the target line-drawing trajectory. This closed-loop control process effectively reduces the line-laying deviation caused by manual operation. Compared with the technical solution of using SLAM technology for line laying, since the initial pose data is the pose data of the line-laying robot relative to a fixed laser rangefinder, rather than relying on the robot's own continuous perception of the environment and map building, the robot's initial pose data is not affected by the previous pose estimation error, so there is no cumulative error. Therefore, the embodiment of this application can achieve accurate line laying and meet the needs of high-precision line laying in the field of interior decoration construction.

[0190] The embodiments described in this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided by the embodiments of this application. As those skilled in the art will know, with the evolution of technology and the emergence of new application scenarios, the technical solutions provided by the embodiments of this application are also applicable to similar technical problems.

[0191] Those skilled in the art will understand that the technical solutions shown in the figures do not constitute a limitation on the embodiments of this application, and may include more or fewer steps than shown, or combine certain steps, or different steps.

[0192] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.

[0193] Those skilled in the art will understand that all or some of the steps in the methods disclosed above, as well as the functional modules / units in the systems and devices, can be implemented as software, firmware, hardware, or appropriate combinations thereof.

[0194] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification 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 orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0195] It should be understood that in this application, "at least one (item)" means one or more, and "more than" means two or more. "And / or" is used to describe the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.

[0196] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of the units described above is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.

[0197] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0198] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0199] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes multiple instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing programs, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0200] The preferred embodiments of the present application have been described above with reference to the accompanying drawings, but this does not limit the scope of the claims of the present application. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and substance of the embodiments of the present application shall be within the scope of the claims of the present application.

Claims

1. A robot localization method for indoor environments, characterized in that, The method is applied to a positioning system, which includes a wire-laying robot and a laser rangefinder. The wire-laying robot is equipped with a receiving screen, which receives a laser beam emitted by the laser emitting module of the laser rangefinder, so that a laser spot is formed on the surface of the receiving screen. Obtain the target line trajectory; The target line trajectory is used for pose data planning to obtain target pose data at multiple time steps; The distance data between the laser rangefinder and the line-laying robot and the laser point coordinate matrix of the laser point are obtained. Based on the laser point coordinate matrix and the distance data, the pose data is calculated to obtain the initial pose data of the line-laying robot relative to the laser rangefinder at the target time step. The target time step belongs to multiple time steps. Error calculation is performed based on the initial pose data and the target pose data at the target time step to obtain motion error data; The motion error data is controlled by a preset predictive motion model to generate a control signal, thereby obtaining the desired offset signal. The line-laying robot is controlled to move according to the desired offset signal so that the movement trajectory formed by the line-laying robot during line drawing conforms to the target line drawing trajectory.

2. The method according to claim 1, characterized in that, The laser rangefinder is also equipped with a turntable, which is connected to the laser emitting module to allow the laser emitting module to rotate; the step of calculating pose data based on the laser point coordinate matrix and the distance data to obtain the initial pose data of the wire-laying robot relative to the laser rangefinder at the target time step includes: Acquire the screen image of the receiving screen; Laser point coordinate recognition is performed on the screen image to obtain the laser point coordinate matrix in the screen coordinate system; the screen coordinate system is a coordinate system with any point on the screen as the origin; Obtain the rotation angle of the turntable; The coordinates of the origin of the module coordinate system are transformed to the origin of the turntable coordinate system; the module coordinate system is a coordinate system with any point of the laser emission module as the origin, and the turntable coordinate system is a coordinate system with any point of the turntable as the origin. A first transformation matrix is ​​obtained by calculating the transformation matrix based on the turntable rotation angle and the origin transformation coordinates; wherein, the first transformation matrix is ​​used to represent the transformation relationship between the turntable coordinate system and the module coordinate system; The beam coordinate matrix of the laser beam in the module coordinate system is obtained based on the distance data. A second transformation matrix is ​​obtained by performing a least-squares operation on the laser point coordinate matrix, the first transformation matrix, and the beam coordinate matrix; the second transformation matrix is ​​used to represent the transformation relationship between the turntable coordinate system and the screen coordinate system. The pose parameters are extracted from the second transformation matrix to obtain the initial pose data.

3. The method according to claim 2, characterized in that, The laser rangefinder is also equipped with a first image acquisition device; acquiring the rotation angle of the turntable includes: Acquire robot motion images captured by the first image acquisition device of the wire-laying robot; Laser point identification is performed on two adjacent robot motion images at time steps to obtain the coordinate change of the laser point; The first rotation angle is determined based on the coordinate change, and the first rotation angle is used as the rotation angle of the turntable.

4. The method according to claim 2, characterized in that, The step of obtaining the laser beam coordinate matrix in the module coordinate system based on the distance data includes: Obtain the first angle between the beam projection line and the horizontal axis, wherein the beam projection line is the projection of the laser beam onto a preset light source plane; Obtain the second angle between the laser beam and the normal axis, wherein the normal axis is perpendicular to the light source plane; The beam coordinate matrix is ​​obtained by calculating the geometric relationship based on the distance data, the angle of the first included angle, and the angle of the second included angle.

5. The method according to claim 2, characterized in that, Before obtaining the turntable rotation angle, the method further includes: Obtain the heading angle of the wire-laying robot; A second rotation angle is determined based on the heading angle, wherein the angle value of the second rotation angle is the same as the angle value of the heading angle, and the direction of the second rotation angle is opposite to the direction of the heading angle; The receiving screen is controlled to rotate according to the second rotation angle.

6. The method according to any one of claims 1 to 5, characterized in that, The initial pose data includes initial position coordinates and initial heading angle, and the target pose data includes desired coordinates and desired heading angle; the step of calculating the motion error data based on the initial pose data and the target pose data at the target time step includes: The position difference between the initial position coordinates and the desired coordinates is calculated to obtain position error data; The angle difference between the initial heading angle and the desired heading angle is calculated to obtain heading angle error data; The motion error data is determined based on the position error data and the heading angle error data.

7. The method according to any one of claims 1 to 5, characterized in that, The step of generating a desired offset signal by controlling the motion error data through a preset predictive motion model includes: Obtain the initial velocity of the wire-laying robot at the target time step, and obtain the velocity increment of the wire-laying robot at the target time step compared to the previous time step; The initial pose data is predicted based on the predicted motion model to obtain predicted pose data corresponding to multiple consecutive time steps. For each time step, the prediction error is calculated based on the predicted pose data and the target pose data to obtain the prediction error data; Tracking performance evaluation data is obtained by integrating and calculating the preset error weight matrix, the preset incremental weight matrix, the motion error data, the prediction error data, and the velocity increment. The speed increment is numerically adjusted based on the tracking performance evaluation data to obtain the target speed increment. The wheel speed data of the wire-laying robot is determined based on the target speed increment and the initial speed; The desired offset signal is obtained by generating a control signal based on the wheel speed data.

8. 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 computer program to implement the method according to any one of claims 1 to 7.

9. A positioning system, characterized in that, The positioning system includes the electronic device, laser rangefinder, and line-laying robot as described in claim 8; wherein the laser rangefinder is equipped with a first image acquisition device, a turntable, and a laser emitting module; the line-laying robot is equipped with a second image acquisition device, a receiving screen, and a rotary motor; the second image acquisition device is used to acquire screen images of the receiving screen, and the laser emitting module is used to emit a laser beam; the first image acquisition device is used to acquire images of the line-laying robot; the turntable is mounted on the bottom of the laser emitting module, and the turntable is used to rotate the laser emitting module so that the laser beam is emitted to the receiving screen; the receiving screen is used to receive the laser beam; the rotary motor is mounted on the bottom of the receiving screen, and the rotary motor is used to rotate the receiving screen so that the receiving screen faces the laser emitting module; the first image acquisition device, the second image acquisition device, the turntable, and the rotary motor are respectively communicatively connected to the electronic device.

10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the method of any one of claims 1 to 7.