Mobile robot movement control method, device, apparatus, and medium
By acquiring and processing 3D point cloud data, the planar features and entrance corners of the elevator area are identified, and precise control commands are generated. This solves the problem of unstable recognition by mobile robots in elevators and improves the reliability and safety of elevator entry and exit processes.
Patent Information
- Application Number
- CN202611336937.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-31
- Publication Date
- 2026-11-06
AI Technical Summary
In existing technologies, mobile robots have difficulty in stably and accurately identifying elevators when working across floors, resulting in instability and safety issues in the process of entering and exiting elevators. This is especially true in narrow spaces where positioning is unstable, making it difficult to identify elevator doors, car side walls, and entrance corners. Furthermore, they are significantly affected by lighting, metal reflections, and passenger obstruction.
By acquiring 3D point cloud data of the target area where the mobile robot is located, performing ROI clipping and plane extraction, the front plane, left plane, and right plane of the elevator door area or car area are identified, the entrance corner point and center line are determined, and control commands are generated in combination with attitude angles to achieve precise elevator entry and exit control.
This improves the accuracy of elevator recognition and the reliability and safety of mobile robots' autonomous passage in elevator door and car areas, ensuring stable operation of mobile robots inside elevators.
Smart Images

Figure CN123047570A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of mobile robot navigation and control technology, and in particular to a mobile robot movement control method, device, equipment and storage medium. Background Technology
[0002] In scenarios where mobile platforms such as delivery vehicles, service robots, and inspection robots operate across floors within a park, the robots need to autonomously enter the elevator, maintain a safe posture inside the elevator, and autonomously exit after reaching the target floor. This process takes place in a confined space, and elevator doors, car side walls, passengers, and reflective metal surfaces can all cause positioning instability, placing high demands on entrance corner point recognition, vehicle posture correction, close-range obstacle avoidance, and task status feedback.
[0003] Currently, there are three common methods for handling elevators. The first is to use manual markers such as QR codes, magnetic strips, RFID, or reflective panels to assist in positioning. However, this type of solution requires modification of the site environment, and the markers are prone to wear, obstruction, or displacement, resulting in high maintenance costs. Furthermore, reconstruction or recalibration is required when moving to different elevator scenarios. The second method is to use cameras to identify elevator doors, floor signs, or car edges for visual guidance. However, this method is greatly affected by lighting, metal reflections, door gaps, and passenger obstruction, and the accuracy of three-dimensional distance measurement in the door area and inside the car is insufficient. The third method is to use two-dimensional lidar or ultrasonic ranging to follow along the wall to enter and exit the elevator. However, this method usually only obtains two-dimensional line segments or discrete distances, making it difficult to stably distinguish the front wall, left and right side walls, and entrance corners of the elevator. It is also prone to shaking when encountering thresholds, passenger legs, or partial obstruction.
[0004] Therefore, there is an urgent need for a mobile robot motion control method that can accurately and stably control the movement of mobile robots. Summary of the Invention
[0005] The purpose of this application is to provide a mobile robot movement control method, device, equipment, and storage medium to solve the technical problem in the prior art where mobile robots are unable to reliably and accurately identify elevators, resulting in unstable and unsafe entry and exit processes. This improves the accuracy of elevator identification and thus enhances the reliability and safety of the mobile robot's autonomous passage in the elevator door area and car area.
[0006] In a first aspect, embodiments of this application provide a mobile robot movement control method, including: Acquire 3D point cloud data of the target area where the mobile robot is located, and perform ROI cropping on the 3D point cloud data. The target area is the elevator door area or the car area. Based on the point cloud data after ROI cropping, planar extraction processing is performed to obtain the front plane, left plane, and right plane of the target region; Based on the front plane, the left plane, and the right plane, determine the first and second entrance corner points of the target area; Based on the first entrance corner point, the second entrance corner point, and the normal vector of the front plane, determine the entrance centerline, lateral deviation, and attitude angle of the target area; The control commands for the mobile robot to enter and exit the elevator are obtained based on the entrance centerline, the lateral deviation, and the attitude angle, and the control commands are sent to the mobile robot.
[0007] Secondly, embodiments of this application provide a mobile control device for a mobile robot, comprising: The data processing module is used to acquire three-dimensional point cloud data of the target area where the mobile robot is located, and to perform ROI cropping on the three-dimensional point cloud data. The target area is the elevator door area or the car area. The planar extraction module is used to perform planar extraction processing on the point cloud data after ROI cropping to obtain the front plane, left plane and right plane of the target region. The first analysis module is used to determine the first entrance corner point and the second entrance corner point of the target area based on the front plane, the left plane and the right plane; The second analysis module is used to determine the entrance centerline, lateral deviation, and attitude angle of the target area based on the first entrance corner point, the second entrance corner point, and the normal vector of the front plane. The instruction generation module is used to obtain control instructions for the mobile robot to enter and exit the elevator based on the entrance centerline, the lateral deviation and the attitude angle, and send the control instructions to the mobile robot.
[0008] Thirdly, embodiments of this application provide an electronic device, which includes a processor, a memory, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the steps in the mobile robot movement control method described in any of the above claims.
[0009] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the mobile robot movement control method described in any of the preceding claims.
[0010] This application provides a mobile robot movement control method, apparatus, device, and storage medium, including: acquiring three-dimensional point cloud data of a target area where the mobile robot is located, and performing ROI clipping on the three-dimensional point cloud data, wherein the target area is an elevator door area or a car area; performing planar extraction processing on the point cloud data after ROI clipping to obtain a front plane, a left plane, and a right plane of the target area; determining a first entrance corner point and a second entrance corner point of the target area based on the front plane, the left plane, and the right plane; determining the entrance centerline, lateral deviation, and attitude angle of the target area based on the first entrance corner point, the second entrance corner point, and the normal vector of the front plane; obtaining control commands for the mobile robot to enter and exit the elevator based on the entrance centerline, the lateral deviation, and the attitude angle, and sending the control commands to the mobile robot. By acquiring 3D point cloud data and performing ROI clipping to reduce environmental interference, reliable front, left, and right planes are obtained based on planar extraction processing. This allows for the determination of entrance corner points, entrance center lines, lateral deviations, and attitude angles, generating precise control commands. This improves the separation accuracy of planar features in the elevator entrance area and accurately identifies entrance corner points, thereby enhancing the reliability and safety of the mobile robot's autonomous passage in the elevator door and car areas. Attached Figure Description
[0011] Figure 1 This is a flowchart illustrating the steps of a mobile robot movement control method provided in an embodiment of this application; Figure 2 This is a schematic diagram of a process for obtaining multiple planes according to an embodiment of this application; Figure 3 This is a schematic diagram of a process for determining an entry corner point provided in an embodiment of this application; Figure 4 This is a block diagram of a mobile robot's motion control system provided in an embodiment of this application; Figure 5 This is a schematic diagram of a mobile robot motion control device provided in an embodiment of this application; Figure 6 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application; Figure 7 This is another structural schematic diagram of the electronic device provided in the embodiments of this application. Detailed Implementation
[0012] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.
[0013] It should be understood that the steps described in the method embodiments disclosed in this application may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this application is not limited in this respect.
[0014] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.
[0015] In traditional mobile robot cross-floor operations, dynamic interference factors in confined spaces, including elevator door opening and closing actions, car sidewall reflection characteristics, random passenger movement, and reflective metal surfaces, cause significant noise and distortion during 3D point cloud data acquisition. This directly affects the accuracy of entrance corner point recognition, the reliability of vehicle posture correction, the real-time performance of near-distance obstacle avoidance, and the completeness of task status feedback. Consequently, it has a systematic negative impact on the robot's navigation accuracy, task execution success rate, and operational safety.
[0016] To address the technical problems existing in related technologies, this application provides a mobile robot movement control method. Please refer to [link to relevant documentation]. Figure 1 , Figure 1 This is a flowchart illustrating the steps of a mobile robot movement control method provided in this application embodiment, which includes steps 101 to 105.
[0017] Step 101: Obtain the 3D point cloud data of the target area where the mobile robot is located, and perform ROI cropping on the 3D point cloud data. The target area is the elevator door area or the car area. Step 102: Perform planar extraction processing on the point cloud data after ROI cropping to obtain the front plane, left plane and right plane of the target area; Step 103: Determine the first and second entrance corner points of the target area based on the front plane, left plane, and right plane; Step 104: Determine the entrance centerline, lateral deviation, and attitude angle of the target area based on the first entrance corner point, the second entrance corner point, and the normal vector of the front plane; Step 105: Obtain control commands for the mobile robot to enter and exit the elevator based on the entrance centerline, lateral deviation, and attitude angle, and send the control commands to the mobile robot.
[0018] In this context, the target area is the specific spatial range within which the mobile robot needs to operate. In the scenario of the mobile robot entering and exiting an elevator, the target area specifically refers to the elevator door area or the car area. The elevator door area is the space at the elevator entrance, while the car area is the space inside the elevator. 3D point cloud data refers to a dataset composed of a large number of points with 3D coordinate information, acquired by sensors such as LiDAR and depth cameras. ROI clipping refers to filtering the original 3D point cloud data based on the Region of Interest (ROI) to remove irrelevant background points and retain only the point cloud data within the target area. Plane extraction processing refers to identifying and separating geometric structures with planar features from the point cloud data after ROI clipping. Through this processing, the main planes within the target area can be obtained, including the front plane, left plane, and right plane. The first and second entrance corner points are two key geometric points at the elevator entrance, which together define the width and position of the elevator entrance. A normal vector is a vector perpendicular to a plane, and its direction indicates the orientation of the plane. The entrance centerline is the target path for the mobile robot to perform longitudinal centering. Lateral deviation is the vertical offset of the mobile robot's body center relative to the entrance centerline, indicating the degree of alignment between the mobile robot and the entrance centerline. Attitude angle is the rotation angle of the mobile robot in the horizontal plane, which can be represented by the angle between its forward direction and a reference direction.
[0019] In one embodiment, when controlling the mobile robot's entry and exit from an elevator, firstly, 3D point cloud data of the target area where the mobile robot is located is acquired, and then the ROI (Region of Interest) is cropped from this 3D point cloud data. The target area is either the elevator door area or the car area. Specifically, the mobile robot can be equipped with 3D sensors such as LiDAR or depth cameras to acquire 3D point cloud data of its surrounding environment in real time. To focus on key areas at the elevator entrance or inside the car, the acquired raw point cloud data can be cropped to the ROI. For example, a rectangular or cubic area roughly matching the elevator entrance can be preset, retaining only the point cloud data within this area. Alternatively, a region of interest can be defined based on the mobile robot's current position and orientation, and the point cloud data can be cropped accordingly.
[0020] Then, based on the point cloud data after ROI cropping, planar extraction processing is performed to obtain the front plane, left plane, and right plane of the target area. Specifically, after obtaining the cropped point cloud data, it is necessary to identify the main planes constituting the elevator entrance or the interior of the car. When obtaining and determining the front plane, left plane, and right plane, cluster analysis can be performed on the point cloud data to group points belonging to the same plane into one category. Then, a plane equation is fitted to each point cluster, and the planes are classified according to their position and orientation. For example, the plane facing in front of the mobile robot is identified as the front plane, the plane facing to the left is identified as the left plane, and the plane facing to the right is identified as the right plane.
[0021] Next, based on the front plane, the left plane, and the right plane, the first and second entrance corner points of the target area are determined. Specifically, after identifying the main planes inside the elevator entrance or car, the precise location and dimensions of the elevator entrance need to be determined. The elevator entrance can be determined based on the obtained first and second entrance corner points. When determining the first and second entrance corner points, the intersection lines of the front and left planes, and the front and right planes can be calculated. Then, points on these two intersection lines that are close to the ground level can be found as entrance corner points. Alternatively, known elevator structural information, such as the width of the elevator doors, can be used in conjunction with the identified planes to determine the two entrance corner points through geometric calculations. For example, one entrance corner point can be determined first, and then the location of the other entrance corner point can be calculated based on the elevator width and the direction of the plane normal vector.
[0022] Furthermore, based on the first entrance corner point, the second entrance corner point, and the normal vector of the front plane, the entrance centerline, lateral deviation, and attitude angle of the target area are determined. Specifically, after determining the two corner points of the elevator entrance, the geometric midpoint of the line segment connecting these two corner points can be calculated, and the direction passing through this midpoint and perpendicular to this line segment is taken as the entrance centerline. The lateral deviation can be obtained by measuring the vertical distance from the center of the mobile robot's body to the entrance centerline. The attitude angle can be determined by analyzing the normal vector of the front plane. For example, the projection direction of the normal vector of the front plane onto the horizontal plane is taken as the orientation of the elevator entrance, and then the angle between the mobile robot's forward direction and this orientation is calculated.
[0023] Finally, control commands for the mobile robot to enter and exit the elevator are obtained based on the entrance centerline, the lateral deviation, and the attitude angle, and are used to control the robot's movement. Specifically, after obtaining key parameters such as the entrance centerline, lateral deviation, and attitude angle, corresponding control commands can be generated to guide the mobile robot to accurately enter and exit the elevator. For example, an angular velocity command can be generated based on the magnitude of the attitude angle to adjust the robot's orientation and align it with the entrance centerline. After the attitude adjustment is completed, a lateral velocity command can be generated based on the lateral deviation to move the robot laterally and align its body center with the entrance centerline. After lateral alignment is completed, a linear velocity command can be generated based on the longitudinal distance between the mobile robot and the entrance centerline to control the robot to move forward or backward to complete the elevator entry and exit operation.
[0024] Based on the above processing method, by adjusting the movement of the mobile robot in real time and dynamically, the safety, reliability and efficiency of the mobile robot autonomously entering and exiting elevators are improved.
[0025] Furthermore, in the above implementation, the mobile robot needs to perform planar extraction processing on the point cloud data after ROI cropping to obtain the front plane, left plane, and right plane of the target area. To this end, it is proposed that when processing to obtain multiple planes, the process includes: continuously performing planar segmentation processing on the point cloud data after ROI cropping to extract the plane equations of multiple planes; obtaining the centroids of the point cloud data after ROI cropping; and classifying the extracted multiple planes according to the centroids and plane equations to obtain the front plane, left plane, and right plane of the target area.
[0026] In this embodiment, the point cloud data after ROI clipping is continuously processed for planar segmentation to extract the planar equations of multiple planes. Specifically, multiple planar structures constituting the environmental surface are identified and separated from the point cloud data after ROI clipping, and the mathematical descriptions of these planes, i.e., the planar equations, are obtained. During planar segmentation of the ROI-clipped point cloud data, the points in the point cloud data are classified into different planes to complete the segmentation and classification process. During processing, iterative plane fitting can be performed based on the RANSAC (Random Sample Consensus) algorithm. A planar model is fitted by randomly selecting a set of points, and the number of interior points satisfying the model is counted. This process is repeated multiple times to find the optimal plane. Then, the interior points are removed, and the remaining point cloud is segmented again until a stopping condition is met. Alternatively, a region-growing-based planar segmentation algorithm can be used. Starting from a seed point, neighboring points are gradually added to the current planar region based on the similarity of the point's normal vector and a distance threshold until no more points can be added. Then, a new seed point is selected to continue segmentation until the stopping condition is met.
[0027] Simultaneously, the centroid of the point cloud data after ROI cropping will be obtained to determine the geometric center of the point cloud data after ROI cropping. The centroid is the average coordinate of all points in the point cloud, representing the overall positional information of the entire point cloud and providing an important reference point for subsequent planar classification. When obtaining the centroid, the average coordinates of all points in the point cloud can be calculated. The centroid can be obtained by the arithmetic mean of the coordinates, or by using a weighted average method, such as assigning different weights based on the density or confidence level of the points.
[0028] Furthermore, after obtaining the plane equations and point cloud centroids, the extracted planes are classified according to the point cloud centroids and plane equations to obtain the front plane, left plane, and right plane of the target region. By utilizing the overall positional information of the point cloud (point cloud centroids) and the geometric characteristics of each plane (plane equations), the multiple planes obtained through plane segmentation are accurately identified and classified as the front plane, left plane, and right plane of the target region (such as the elevator door area or car area).
[0029] For example, after acquiring the 3D point cloud data of the target area where the mobile robot is located and performing ROI clipping, the system first performs continuous plane segmentation processing on the clipped point cloud data. Then, it acquires the centroid of the point cloud data after the entire ROI clipping. Finally, based on these extracted plane equations and point cloud centroids, the system classifies all identified planes.
[0030] Based on the above processing method, by first performing continuous plane segmentation processing, the complex point cloud data is decomposed into multiple independent planar structures. Then, semantic classification is performed by combining the point cloud centroid as a global geometric reference, which improves the accuracy and robustness of plane extraction, avoids the difficulty of performing fuzzy matching directly in noisy and unstructured environments, and ensures the accurate identification of the front plane, left plane and right plane.
[0031] Furthermore, in the above embodiment, a method is proposed to continuously perform planar segmentation processing on the point cloud data after ROI clipping to extract the planar equations of multiple planes. Obtaining the planar equations of multiple planes includes: continuously performing planar segmentation processing on the point cloud data after ROI clipping to extract the planar equations of multiple planes; obtaining the centroids of the point cloud data after ROI clipping; and classifying the extracted multiple planes according to the centroids and planar equations to obtain the front plane, left plane, and right plane of the target region.
[0032] In one embodiment, continuous planar segmentation is performed on the point cloud data after ROI cropping to obtain the front, left, and right planes of the target region. Specifically, the first salient plane is first identified and extracted from the point cloud data, and its plane equation and corresponding interior points are recorded. Subsequently, to avoid repeatedly detecting the identified planes and to improve the efficiency of subsequent processing, the interior points corresponding to the first plane are removed from the original point cloud data. Based on the remaining point cloud data after removing the interior points, the system continues to perform planar segmentation. This iterative process continues until a preset termination condition is met, i.e., the number of extracted planes reaches a preset value, or the number of remaining point clouds is lower than a preset threshold.
[0033] For example, point cloud data is extracted from the point cloud data after ROI clipping to obtain a first plane, and the plane equation and the first interior point corresponding to the first plane are recorded. The RANSAC (Random Sample Consensus) algorithm can be used to identify the plane in the point cloud. This involves randomly selecting the minimum number of points to fit a model, iteratively finding interior points that support the model, and selecting the model with the most interior points as the optimal plane. Alternatively, a normal vector-based clustering method can be used. First, the normal vector of each point in the point cloud is calculated. Then, the normal vectors are clustered, grouping points with similar normal vector directions into one class. Finally, plane fitting is performed on the points in each class to extract the plane. The plane equation is typically expressed as... In the form of, Let be the normal vector of the plane, and D be a constant. The first interior point refers to the set of points that are determined to belong to the first plane when it is extracted.
[0034] Then, after removing the first inlier from the point cloud data after ROI cropping, plane segmentation is performed again until the number of extracted planes reaches a preset number or the number of remaining point clouds is below a preset threshold. In other words, plane extraction is a cyclical process, but it requires removing the point clouds contained in already identified planes to avoid repeatedly detecting the same plane. When performing plane segmentation after removing inliers, the RANSAC algorithm can be applied again to the remaining point cloud data for plane extraction. This process can be repeated until a preset termination condition is met. Alternatively, after removing inliers, connected component analysis or clustering can be performed on the remaining point cloud, and then plane fitting can be performed again on each cluster or connected component. The preset number can be set according to the geometric characteristics of the target region. For example, if the target region (such as an elevator door area) typically contains three main planes (front, left, and right), the preset number can be set to 3. The preset threshold refers to the point at which segmentation can stop when the amount of remaining point cloud data is very small and insufficient to form a meaningful plane.
[0035] Based on the above processing method, by using iterative extraction and removal of interior points for continuous plane segmentation, multiple independent planes can be efficiently and accurately identified in point cloud data. This avoids repeatedly processing the data of already identified planes during each plane segmentation, thus improving the efficiency and accuracy of plane extraction.
[0036] Furthermore, in the above embodiment, after obtaining the front plane, left plane, and right plane of the target region, the centroid of the point cloud is acquired, and then the extracted multiple planes are classified according to the point cloud centroid and the plane equation. For this, refer to... Figure 2 , Figure 2 This is a schematic diagram of a process for obtaining multiple planes according to an embodiment of this application, wherein the step includes steps 201 to 204.
[0037] Step 201: Normalize the normal vectors of the plane equations of each extracted plane to obtain the unit normal vectors corresponding to each plane. Step 202: Perform plane classification based on the unit normal vector; Step 203: Classify the planes whose absolute value of the X component of the unit normal vector is greater than a first preset threshold as front planes; Step 204: Classify the planes whose absolute value of the Y component of the unit normal vector is greater than the second preset threshold as side planes, classify the planes whose Y coordinate of the centroid of the point cloud in the side planes is negative as left planes, and classify the planes whose Y coordinate of the centroid of the point cloud in the side planes is positive as right planes.
[0038] In one embodiment, during processing, the normal vectors of the extracted plane equations of each plane are normalized to obtain standardized unit normal vectors. Then, the absolute values of the X and Y components of the unit normal vectors are compared with preset thresholds to distinguish the planes into front planes and side planes. For planes classified as side planes, the Y coordinates of their point cloud centroids are combined to distinguish the left plane and the right plane.
[0039] For example, the normal vectors of the extracted plane equations are normalized to obtain the unit normal vectors corresponding to each plane. This means converting the normal vectors (A, B, C) of each plane equation (e.g., Ax + By + Cz + D = 0) into unit vectors of length 1. Specifically, this can be achieved by dividing each component of the normal vector by its magnitude (i.e., √(A²+B²+C²)) to eliminate the scale effect of the normal vector, making it represent only the orientation of the plane. Then, plane classification is performed based on the unit normal vectors. For example, in the vehicle coordinate system of a mobile robot, the X component of the normal vector of the front plane is usually larger, and the Y component of the normal vector of the side plane is usually larger. By setting an appropriate threshold, planes with specific orientations can be identified from among many planes.
[0040] When dividing the planes, planes whose absolute value of the X-component of the unit normal vector is greater than a first preset threshold are classified as front planes, typically in the direction the robot moves forward. Planes whose absolute value of the Y-component of the unit normal vector is greater than a second preset threshold are classified as side planes, typically in the robot's lateral direction. For the side planes, further division is based on the Y-coordinate of the point cloud centroid within the side plane. For example, planes with negative Y-coordinates of the point cloud centroids are classified as left planes, and planes with positive Y-coordinates of the point cloud centroids are classified as right planes. In a typical robot body coordinate system, if the positive Y-axis points to the right, then the point cloud centroids with negative Y-coordinates will be located on the left side of the robot, and the corresponding plane is the left plane; conversely, the point cloud centroids with positive Y-coordinates will be located on the right side of the robot, and the corresponding plane is the right plane. Of course, the left and right planes can be set based on actual conditions.
[0041] Based on the above processing method, by combining the directional information of the plane (unit normal vector) and the spatial position information (point cloud centroid Y coordinate), the plane classification is more accurate, which improves the accuracy of subsequent entrance corner point determination. This ensures the accuracy of the calculation of the entrance centerline, lateral deviation and attitude angle, and provides more reliable control commands for the mobile robot to enter and exit the elevator, thereby improving the stability and safety of the mobile robot navigation.
[0042] Furthermore, in the above embodiment, the first and second entrance corner points of the target area are determined based on the front plane, the left plane, and the right plane. Specifically, refer to... Figure 3 , Figure 3 This is a flowchart illustrating the determination of an entry corner point provided in an embodiment of this application, wherein the step includes steps 301 to 302.
[0043] Step 301: Determine the first entrance corner point based on the intersection of the front plane and the right plane on the preset height plane. The preset height plane is the plane with a Z coordinate of zero. Step 302: Project the normal vector of the right plane onto the horizontal plane, and translate the first entrance corner point according to the preset elevator width to obtain the second entrance corner point.
[0044] In one embodiment, a key corner point of the elevator entrance, namely the first entrance corner point, is first accurately identified. The first entrance corner point is determined by the geometric intersection of the front plane, the right side plane, and a preset height plane (a plane with a Z-coordinate of zero). Then, the normal vector of the right side plane is projected onto the horizontal plane to obtain a two-dimensional vector indicating the direction. Combined with the prior knowledge of the preset elevator width, the determined first entrance corner point is translated along the projection direction to obtain the second entrance corner point.
[0045] For example, the front plane typically refers to the plane inside the elevator door or car facing the mobile robot, while the right-side plane refers to the plane on the right side of the elevator door frame or car interior. The preset height plane is the plane with a Z-coordinate of zero, usually representing the ground reference plane where the mobile robot is located. Determining the corner point on this plane helps ensure it matches the actual movement height of the mobile robot. The first entry corner point is the intersection of these three planes. Specifically, the three-dimensional coordinates of this intersection point can be obtained by simultaneously solving the equations of the front plane, the right-side plane, and the plane with Z=0. Alternatively, the intersection lines of the front plane and the Z=0 plane, and the right-side plane and the Z=0 plane can be calculated first, and then the intersection point of these two lines can be determined to identify the first entry corner point.
[0046] Then, when obtaining the second entrance corner point, a two-dimensional vector can be obtained by projecting the right-side plane onto the horizontal plane (i.e., the XY plane). The second entrance corner point can then be obtained by translating the first entrance corner point along the projection direction of the normal vector of the right-side plane onto the horizontal plane (or its opposite direction, depending on the specific definition) by a predetermined elevator width. For example, if the normal vector of the right-side plane is... Its projection on the horizontal plane is After normalizing this projection vector, multiply it by the preset elevator width, and add or subtract it from the coordinates of the first entrance corner point to obtain the second entrance corner point. Alternatively, the depth direction of the elevator entrance can be determined based on the normal vector of the front plane, and then, based on the preset elevator width, the second entrance corner point can be obtained by translating from the first entrance corner point on a horizontal plane perpendicular to that depth direction.
[0047] Based on the above processing method, the first entrance corner point is determined by the intersection of the front plane, the right side plane, and the preset height plane. Then, by using the projection direction of the normal vector of the right side plane onto the horizontal plane and combining it with the preset elevator width for translation, the second entrance corner point is effectively derived. This improves the reliability and accuracy of the entrance corner point determination.
[0048] Furthermore, in the above implementation, due to factors such as point cloud data acquisition and plane fitting algorithms, the direction of the extracted normal vector of the right side plane may be uncertain or inconsistent with the preset expected direction. This may lead to deviations in the subsequent calculation of entrance corner points, entrance center lines, lateral deviations, and attitude angles, thereby affecting the control accuracy and safety of the mobile robot entering and exiting the elevator. To address this, it is proposed that before determining the first entrance corner point based on the intersection of the front plane and the right side plane on a preset height plane, the following steps are also included: determining whether the direction of the normal vector of the right side plane is consistent with the preset direction; if inconsistent, inverting the coefficients of the plane equation of the right side plane to make the direction of the normal vector of the right side plane consistent with the preset direction.
[0049] In one embodiment, by determining whether the direction of the normal vector of the right-side plane is consistent with a preset direction, the direction of the normal vector of the right-side plane can be made to conform to the expected geometric definition of the system. This can be done by calculating the dot product of the normal vector of the right-side plane and a reference direction vector (e.g., the external normal direction of the elevator door area or car area). If the dot product is positive, the directions are consistent; if it is negative, the directions are opposite. Alternatively, it can be determined by checking whether a specific component of the normal vector (e.g., in the coordinate system of the mobile robot body, the component of the normal vector of the right-side plane in the Y-axis direction should be positive or negative, depending on the coordinate system definition) satisfies a preset sign condition. When inverting the coefficients of the plane equation of the right-side plane, the direction of the normal vector is corrected by modifying the coefficients of the plane equation to make it consistent with the preset direction without changing the spatial position of the plane itself. For the general form of the plane equation Ax + By + Cz + D = 0, if the direction of the normal vector (A, B, C) is opposite to the preset direction, all coefficients A, B, C, and D can be inverted simultaneously, becoming -Ax - By - Cz - D = 0. In this way, the new normal vector (-A, -B, -C) will be in the opposite direction to the original normal vector, thus achieving the purpose of correction.
[0050] For example, a verification and correction mechanism for the direction of the normal vector of the right plane is introduced before determining the first entry corner point based on the intersection of the front plane and the right plane on a preset height plane. Specifically, before performing geometric calculations using the right plane (such as determining the first entry corner point), it is first determined whether the direction of the normal vector of the right plane is consistent with the preset expected direction. If an inconsistency in the normal vector direction is detected, i.e., opposite to the preset direction, the plane equation coefficients of the right plane are immediately inverted.
[0051] Based on the above processing method, judging and correcting the direction of the normal vector on the right plane before determining the first entrance corner point of the target area can effectively solve the problem of uncertainty in the direction of the normal vector caused by the plane fitting algorithm. This improves the accuracy of positioning and attitude estimation when the mobile robot enters and exits the elevator, provides a reliable guarantee for generating accurate control commands, and thus improves the stability and safety of the mobile robot's operation when entering and exiting the elevator.
[0052] Furthermore, when determining the entrance centerline, lateral deviation, and attitude angle of the target area based on the first entrance corner point, the second entrance corner point, and the normal vector of the front plane, the process includes: calculating the geometric midpoint of the first and second entrance corner points on the horizontal plane based on the first coordinates of the first entrance corner point and the second coordinates of the second entrance corner point, and determining the direction passing through the geometric midpoint and perpendicular to the line connecting the first and second entrance corner points as the entrance centerline; calculating the vertical offset of the mobile robot's body center relative to the entrance centerline based on the position of the geometric midpoint in the mobile robot's vehicle coordinate system, and using the vertical offset as the lateral deviation; obtaining the unit normal vector of the front plane, and calculating the mobile robot's attitude angle based on the X and Y components of the unit normal vector of the front plane.
[0053] In one embodiment, during processing, the geometric features of the elevator entrance (corners and planes) are transformed into navigation parameters (entrance centerline, lateral deviation, and attitude angles) that the mobile robot can directly understand and utilize. Specifically, firstly, using the determined first and second entrance corners, their geometric midpoints are calculated on the horizontal plane. Then, the centerline of the elevator entrance is determined through this geometric midpoint and perpendicular to the direction of the line segment connecting the two corners. This centerline provides the mobile robot with a clear reference path for lateral alignment. Subsequently, to quantify the deviation of the mobile robot's current position from this centerline, the geometric midpoint is transformed into the mobile robot's vehicle coordinate system, and the vertical offset of the mobile robot's vehicle center relative to the entrance centerline is calculated, which is used as the lateral deviation. This lateral deviation reflects how much the robot needs to move left or right to align with the entrance centerline. Simultaneously, to determine the mobile robot's orientation relative to the elevator entrance, the unit normal vector of the front plane is obtained. By analyzing the X and Y components of this unit normal vector on the horizontal plane, the mobile robot's attitude angles are calculated.
[0054] For example, the geometric midpoints of the first and second entrance corner points on the horizontal plane are calculated, and the direction passing through the geometric midpoints and perpendicular to the line segment connecting the first and second entrance corner points is determined as the entrance centerline. The first and second entrance corner points represent two key boundary points of the elevator entrance on the horizontal plane. By calculating the geometric midpoints of these two corner points on the horizontal plane, the center position of the entrance can be obtained. The centerline of the elevator entrance can then be determined by passing through this geometric midpoint and perpendicular to the line segment connecting the two corner points.
[0055] When obtaining the lateral deviation, the vertical distance between the robot's center and the entrance centerline can be calculated by transforming the geometric midpoint to the robot's body coordinate system; this is the lateral offset. This offset directly reflects the amount of lateral adjustment the robot needs and is a key parameter for achieving lateral alignment. For example, the coordinates of the geometric midpoint can be transformed from the world coordinate system to the robot's body coordinate system using a coordinate transformation matrix, and then its component along the Y-axis in the robot's body coordinate system can be calculated as the vertical offset. Alternatively, the equation of the entrance centerline in the world coordinate system can be determined first, and then the distance from the robot's center to this line can be calculated as the vertical offset.
[0056] When obtaining the attitude angle, the rotation angle of the mobile robot relative to the elevator entrance is calculated by obtaining the unit normal vector of the front plane and extracting its X and Y components on the horizontal plane. The attitude angle can be calculated using the arctangent function (atan2) based on the X and Y components of the unit normal vector; this function can handle angles in all quadrants. Alternatively, the normal vector of the front plane can be projected onto the horizontal plane, and the angle between this projected vector and the robot's forward direction (usually the X-axis of the vehicle coordinate system) can be calculated as the attitude angle.
[0057] Based on the above processing methods, determining the entrance centerline provides the robot with a clear alignment target; calculating the lateral deviation allows the robot to quantify its lateral offset from the entrance center, thus achieving precise lateral alignment; and acquiring the attitude angle allows the robot to adjust its orientation to keep it parallel to the elevator entrance. By accurately acquiring the relevant parameters, the positioning accuracy and attitude control capabilities of the mobile robot during elevator entry and exit can be effectively improved, avoiding collisions and jamming, and ensuring that the mobile robot can safely and efficiently complete the elevator riding task.
[0058] Furthermore, in the above embodiments, the control commands for the mobile robot include elevator entry commands and elevator exit commands. When controlling the robot based on different control commands, different data is acquired to complete the control of the mobile robot. Specifically, when the control command is an elevator entry command, the control commands for the mobile robot to enter and exit the elevator are obtained based on the entrance centerline, lateral deviation, and attitude angle, including: The attitude adjustment is completed when the angular velocity command is output according to the attitude angle and the number of times the attitude angle is continuously less than the preset angle tolerance reaches the first preset number. After the attitude adjustment is completed, the lateral speed command is output according to the lateral deviation. The lateral alignment is completed when the number of times the lateral deviation is continuously less than the preset lateral tolerance reaches the second preset number. After lateral alignment is completed, with a preset safe distance in front of the entrance centerline as the target, a longitudinal control command is generated to control the mobile robot to move longitudinally closer based on the longitudinal error output linear velocity command. When the mobile robot moves longitudinally closer, the forward ultrasonic ranging value of the mobile robot is obtained, and a start-stop control command is generated based on the forward ultrasonic ranging value. The start-stop control command includes a command to control the mobile robot to move forward at low speed when the forward ultrasonic ranging value is greater than a preset distance threshold, and a stop command to control the mobile robot to stop moving forward when the forward ultrasonic ranging value reaches the preset distance threshold.
[0059] The attitude angle represents the angular deviation between the mobile robot's current orientation and the centerline of the target entrance. It indicates the robot's rotational error relative to the elevator entrance and is used for orientation adjustment. The attitude angle can be obtained through fusion localization using the mobile robot's inertial measurement unit (IMU) combined with visual or lidar data, or directly calculated from the X and Y components of the unit normal vector of the front plane. The angular velocity command is the command that controls the mobile robot's rotational motion to adjust its attitude. This command can be a specific angular velocity value or a control quantity proportional to the attitude angle deviation. The preset angle tolerance is the upper limit of the allowed attitude angle deviation. When the attitude angle is less than this tolerance, the attitude adjustment is considered to have reached sufficient accuracy. This tolerance value is usually set according to the positioning accuracy requirements of the actual application scenario and the motion characteristics of the mobile robot. The first preset number refers to the number of times the attitude angle is continuously less than the preset angle tolerance. The attitude adjustment is considered truly complete only when the attitude angle meets the accuracy requirements for multiple consecutive sampling periods.
[0060] Lateral deviation represents the vertical distance between the current center position of the mobile robot and the center line of the target entrance. It indicates the lateral offset of the robot relative to the elevator entrance and is the basis for lateral adjustment. It can be calculated using the mobile robot's positioning system (such as SLAM) combined with the position of the geometric midpoint of the elevator entrance in the robot's body coordinate system. Lateral velocity command is the command that controls the lateral movement of the mobile robot, used to adjust its lateral position. It can be a specific lateral velocity value or a control variable proportional to the lateral deviation. Preset lateral tolerance is the upper limit of the allowed lateral deviation. When the lateral deviation is less than this tolerance, the lateral alignment is considered to have achieved sufficient accuracy. This tolerance value is also set according to the positioning accuracy requirements of the actual application scenario and the motion characteristics of the mobile robot. The second preset number of times refers to the number of times the lateral deviation is continuously less than the preset lateral tolerance, similar to the first preset number of times.
[0061] The preset safety distance in front of the entrance centerline is the target longitudinal distance between the leading edge of the mobile robot and the elevator entrance centerline when the robot enters the elevator. Setting this distance allows sufficient buffer space before the robot fully enters the elevator for final fine-tuning or emergency braking. The longitudinal error is the difference in longitudinal distance between the mobile robot's current position and the target position at the preset safety distance in front of the entrance centerline. The linear velocity command is a command to control the mobile robot's forward or backward movement, used to adjust its longitudinal position. It can be a specific linear velocity value or a control variable proportional to the longitudinal error. The forward ultrasonic ranging value is the distance measured by the ultrasonic sensor in front of the mobile robot to obstacles in front (such as the elevator car wall), providing accurate ranging information for precise longitudinal positioning and collision avoidance. The start / stop control command is generated based on the forward ultrasonic ranging value and is used to control the mobile robot to move forward or stop. The preset distance threshold is a distance value used to determine whether the mobile robot should stop moving forward. When the ultrasonic ranging value reaches or falls below this threshold, the robot should stop. This threshold is usually set slightly larger than the minimum distance required for the mobile robot to stop safely.
[0062] In one embodiment, the control process of a mobile robot entering an elevator is decomposed into three stages: attitude adjustment, lateral alignment, and longitudinal approach. A refined feedback control mechanism is designed for each stage, thereby enabling the mobile robot to enter the elevator safely and accurately. Specifically, in the attitude adjustment stage, the system continuously monitors the mobile robot's attitude angle and outputs corresponding angular velocity commands based on this angle. This process continues until the attitude angle is less than a preset angle tolerance for multiple consecutive sampling periods, ensuring the mobile robot is aligned with the elevator entrance direction. Then, after attitude adjustment, the system enters the lateral alignment stage. At this stage, the system outputs lateral velocity commands based on the mobile robot's lateral deviation, causing the robot to approach the entrance centerline. Similarly, this process continues until the lateral deviation is less than a preset lateral tolerance for multiple consecutive sampling periods, ensuring the mobile robot is located at the center of the elevator entrance. Finally, after lateral alignment, the system enters the longitudinal approach stage. At this stage, with a preset safe distance in front of the entrance centerline as the target, the system outputs linear velocity commands based on the longitudinal error, causing the mobile robot to move forward.
[0063] Meanwhile, as the robot approaches longitudinally, the system acquires forward ultrasonic ranging values in real time. When the ultrasonic ranging value is greater than a preset distance threshold, the robot moves forward at a low speed to ensure a smooth approach; and when the ultrasonic ranging value reaches the preset distance threshold, the system immediately issues a stop command, causing the mobile robot to stop precisely at a safe position in front of the elevator entrance.
[0064] Based on the above processing methods, posture adjustment ensures the robot's orientation is aligned with the elevator entrance, avoiding the collision risk that might occur with oblique entry. Subsequently, lateral centering ensures the robot is precisely positioned at the center of the elevator entrance, providing favorable initial conditions for subsequent longitudinal entry. Finally, start-stop control is achieved by combining longitudinal error control and forward ultrasonic ranging values, enabling the mobile robot to approach the elevator interior smoothly at a controlled low speed and stop accurately when it reaches a preset safe distance. This effectively avoids collisions with the elevator car's inner wall, improving the safety, accuracy, and smoothness of the mobile robot's entry into the elevator.
[0065] Furthermore, when the control commands include elevator exit control commands, the control commands for the mobile robot to enter and exit the elevator are obtained based on the entrance centerline, lateral deviation, and attitude angle, including: Acquire ultrasonic ranging values from the front left, rear left, front right, and rear right of the mobile robot; The left angle error is calculated based on the first difference between the ultrasonic ranging values at the left front and left rear, and the right angle error is calculated based on the second difference between the ultrasonic ranging values at the right front and right rear. The average of the left angle error and the right angle error is taken as the body angle error of the mobile robot. The angular velocity command is output based on the vehicle body angle error. When the number of times the vehicle body angle error is continuously less than the preset angle tolerance reaches a preset number, the side distance correction stage is entered. During the side distance correction phase, the average distance on the left and the average distance on the right are obtained, and the mobile robot is controlled to leave the elevator when both the average distance on the left and the average distance on the right meet the safety threshold.
[0066] In one embodiment, as the mobile robot exits the elevator, ultrasonic ranging values are acquired in real time from its left front, left rear, right front, and right rear. Based on these ranging values, the robot's body angle error is precisely calculated. Subsequently, the system outputs angular velocity commands based on this body angle error, guiding the mobile robot to perform fine-tuned attitude adjustments until its body is precisely aligned with the elevator exit direction. After attitude adjustment is completed, the system enters the lateral distance correction stage, continuously monitoring and acquiring the average distances on the left and right sides of the elevator's side walls. Only when both average distances meet preset safety thresholds, i.e., when the mobile robot is also in a safe, centered position laterally, is a command issued to control the mobile robot to exit the elevator.
[0067] For example, when acquiring ultrasonic ranging values from the left front, left rear, right front, and right rear of a mobile robot, the sensor system mounted on the mobile robot can acquire real-time distance information between the robot's left front, left rear, right front, and right rear and the surrounding environment (e.g., an elevator car wall). Specifically, multiple ultrasonic sensors can be configured on the mobile robot, installed at the left front, left rear, right front, and right rear of the robot respectively, to acquire distance data in these directions in real-time and in parallel.
[0068] When obtaining the robot's body angle error, the difference in ultrasonic ranging values between the front and rear sides of the robot is used to quantify the robot's attitude deviation relative to obstacles on its sides (such as elevator walls). Specifically, the left-side angle error can be calculated using the arctangent function. For example, the difference between the left-front and left-rear ranging values is divided by the distance between the sensors in the robot's front-rear direction, and then the arctangent is calculated. The right-side angle error is calculated similarly. Finally, the calculated left-side and right-side angle errors are averaged to obtain a more representative mobile robot body angle error.
[0069] When processing vehicle angle errors, the mobile robot is guided to achieve precise attitude alignment, ensuring its body is parallel to the elevator exit direction. A proportional-integral-derivative (PID) controller can be used, taking the vehicle angle error as input. The controller outputs corresponding angular velocity commands based on the error magnitude and trend. The mobile robot rotates according to these commands until the vehicle angle error is consistently less than a preset angle tolerance (e.g., 0.5 degrees) and reaches a preset number of consecutive values (e.g., 50 times). At this point, the attitude adjustment is considered complete, and the system proceeds to the next stage.
[0070] During the lateral distance correction phase, after the mobile robot completes its posture adjustment, it is further ensured that it maintains a safe and centered position with respect to the two side walls of the elevator in the lateral direction. This is achieved by acquiring and continuously monitoring the average distances on the left and right sides, and comparing these average distances with preset safety thresholds. These safety thresholds can be set based on the width of the mobile robot, the width of the elevator door, and the required minimum safe distance. Only when both the average distances on the left and right sides are within the safety threshold range (e.g., neither less than the minimum safe distance nor greater than the maximum allowable distance to ensure centering), will the system issue a command to control the mobile robot to exit the elevator.
[0071] Based on the above processing method, the mobile robot can perceive its posture and position inside the elevator in real time and perform precise self-correction. This two-stage correction mechanism, which first performs angle alignment and then performs lateral distance safety checks, improves the safety and accuracy of the mobile robot when exiting the elevator. It avoids the risk of collisions caused by posture or position deviations in the narrow elevator space, ensuring that the mobile robot can exit the elevator smoothly and steadily, thereby enhancing the mobile robot's autonomous navigation capability in complex environments.
[0072] Furthermore, referring to Figure 4 , Figure 4 This is a block diagram of a mobile robot mobility control system provided in an embodiment of this application. The system can be deployed on a mobile robot and mainly includes: a 3D LiDAR, a 12-channel ultrasonic array, an onboard computing controller, a chassis drive control interface, and a task scheduling interface.
[0073] As the core environmental perception sensor, the 3D LiDAR is responsible for acquiring 3D point cloud data of the elevator door area and the interior of the car, providing raw data support for subsequent ROI clipping, RANSAC continuous plane extraction, and elevator front / side wall recognition.
[0074] A 12-channel ultrasonic array is deployed around the mobile robot's body, providing redundant distance and angle verification information at close range. During the elevator entry phase, forward ultrasonic waves are used to confirm the final stopping distance; during the elevator exit phase, multiple ultrasonic ranging values from the left front, left rear, right front, and right rear are used to estimate the angle between the robot body and the side wall of the elevator car, and to ensure safe exit when the point cloud features are degraded due to obstacles or reflection interference inside the elevator car.
[0075] The onboard computing controller, as the core of the system's decision-making and computation, runs the ROS Noetic operating system and deploys point cloud detection nodes (lift_detection.cpp), elevator entry control nodes (Into_Elevator.cpp), and elevator exit control nodes (out_Elevator.cpp). It performs computational tasks such as point cloud filtering, plane extraction and classification, corner point calculation, and phased control logic.
[0076] The chassis drive control interface is responsible for converting the speed commands (linear velocity, lateral velocity, angular velocity) generated by the computing controller into drive signals for the chassis actuators, thereby realizing the motion control of the mobile robot.
[0077] The task scheduling interface is responsible for receiving elevator entry / exit instructions issued by the upper-level task scheduling module, and reporting the task completion status to the task scheduling module after the elevator entry / exit control is completed, thereby realizing closed-loop management of the entire elevator entry / exit operation.
[0078] The aforementioned hardware modules communicate with each other via ROS topics, based on... Figure 4 The flowchart shown realizes the movement control of the mobile robot. Specifically, the 3D LiDAR point cloud data is published to the point cloud detection node, the ultrasonic ranging value is published to the elevator entry / exit control node, the control command is sent to the actuator through the chassis drive interface, and the task status is reported through the task scheduling interface to form a complete closed loop from perception, calculation, control to task feedback.
[0079] Furthermore, when implementing mobile robot movement control based on the system framework shown in Figure 4, the elevator point cloud detection and feature calculation are first completed, specifically including the following steps: 1. Startup conditions: When the task scheduling module issues an elevator entry detection command, the point cloud detection node enters the working state. In the non-working state, it does not perform high-frequency point cloud calculation, thereby reducing the computing load.
[0080] 2. Point cloud input and coordinate processing: Subscribe to the 3D LiDAR point cloud, convert the point cloud to the vehicle / radar unified reference frame, and perform rotation compensation according to the radar installation angle when necessary.
[0081] 3. Three-axis ROI trimming: Trim the ROI according to the parameters in the example. PassThrough filtering is performed on the direction, for example The range is from 1.64m to 7.5m. Range -2.0m to 2.0m, Range from -0.9m to 2.0m, skip the frame when the number of filtered points is below the threshold.
[0082] 4. Continuous plane extraction: Perform RANSAC plane segmentation on the remaining point cloud, extracting a maximum of three principal planes. After extracting each plane, remove its interior points from the remaining point cloud before extracting the next plane.
[0083] 5. Classification of planes: Classification of plane equations Normalization of the normal vector, when When it is determined to be the plane in front of the elevator, when When the plane is determined to be a side plane, the left or right side is distinguished by the positive or negative y-coordinate of the centroid of the plane point cloud.
[0084] 6. Entrance corner point calculation: Previous plane and the right side plane The coefficients are used to construct a two-dimensional linear system of equations, and the intersection point on the plane at z=0 is obtained to find the right entrance corner. When the direction of the normal vector of the right plane is opposite to the preset direction, its coefficient is inverted to unify the direction.
[0085] 7. Width Compensation: Project the normal vector of the right-side plane onto the xy-plane and normalize it, then translate it according to the elevator width W. The left entrance corner point is obtained. W can be set to 1.689m, or it can be parameterized according to the actual elevator width.
[0086] 8. Attitude and Stability Output: Calculate attitude angles using the front plane normal vector. Averaging of pose and lateral errors across multiple consecutive frames, the resulting output includes... , , , , angle Elevator feature message.
[0087] Furthermore, when controlling the mobile robot to enter the elevator, the elevator control node subscribes to elevator feature messages and ultrasonic array messages. It first calculates the relative lateral deviation between the elevator entrance midpoint and the vehicle body based on the left and right entrance corner points. Then, it controls the chassis in stages based on the attitude angle, lateral deviation, and longitudinal target distance. The specific process is as follows: 1. Posture Adjustment Phase: When If the angle is less than the tolerance and the preset number of consecutive adjustments is reached, the attitude adjustment is considered complete; otherwise, according to... Output angular velocity.
[0088] 2. Lateral alignment stage: When the lateral error... If the value is continuously less than the tolerance, the centering is considered complete; otherwise, the lateral speed is output for fine-tuning.
[0089] 3. Longitudinal Approach Phase: Aiming for a safe distance in front of the midpoint of the entrance, proceed according to... Calculate the longitudinal error and combine it with the attitude error and lateral error to approach at low speed.
[0090] 4. Close approach phase: measured using forward ultrasonic waves. front_dis After final confirmation, the vehicle will move forward at a low speed when the current distance is greater than the threshold, and once the threshold is reached, it will move at zero speed and report that the task is completed.
[0091] 5. Speed limiting and stabilization strategy: Set maximum and minimum effective values for linear velocity, lateral velocity and angular velocity; use continuous target counting for all state transitions to avoid jitter caused by misjudgment in a single frame.
[0092] Meanwhile, when controlling the mobile robot to exit the elevator, the elevator exit control node uses an ultrasonic array as short-range redundancy information to read distance values from the left front, left rear, right front, and right rear. Based on the distance differences between the left and right sides, it estimates the angle between the robot body and the side wall of the elevator car, and completes the exit based on the side clearance and the floor's task status. The specific process is as follows: 1. According to and Estimate the angles on the left and right sides separately, and take the average as the vehicle body angle error.
[0093] 2. When the angle error is continuously less than the tolerance, enter the side distance correction; otherwise, output the angular velocity to make the car body parallel to the side wall of the car.
[0094] 3. When the average distances on both the left and right sides meet the safety threshold, select the exit action according to the floor status; otherwise, output the lateral speed to avoid being too close to the side wall.
[0095] 4. Control the final distance traveled using forward or backward ultrasonic distance control, and release the mission completion status upon completion.
[0096] In addition, other optional parameters can be set during control, such as point cloud ROI: , , , , , Elevator width parameters: Target distance to elevator: Control tolerance: , RANSAC plane extraction: , Options range from 0.01 to 0.02. Options range from 100 to 200.
[0097] In summary, the above embodiments provide a mobile robot movement control method. This method involves acquiring 3D point cloud data of the target area where the mobile robot is located, and performing ROI clipping on the 3D point cloud data. The target area is either the elevator door area or the car area. Plane extraction processing is performed on the point cloud data after ROI clipping to obtain the front plane, left plane, and right plane of the target area. Based on the front plane, left plane, and right plane, the first entrance corner point and the second entrance corner point of the target area are determined. Based on the first entrance corner point, the second entrance corner point, and the normal vector of the front plane, the entrance centerline, lateral deviation, and attitude angle of the target area are determined. Control commands for the mobile robot to enter and exit the elevator are obtained based on the entrance centerline, lateral deviation, and attitude angle, and these control commands are sent to the mobile robot. By acquiring 3D point cloud data and performing ROI clipping to reduce environmental interference, reliable front, left, and right planes are obtained based on planar extraction processing. This allows for the determination of entrance corner points, entrance center lines, lateral deviations, and attitude angles, generating precise control commands. This improves the separation accuracy of planar features in the elevator entrance area and accurately identifies entrance corner points, thereby enhancing the reliability and safety of the mobile robot's autonomous passage in the elevator door and car areas.
[0098] Based on the method described in the above embodiments, this embodiment will further describe it from the perspective of the mobile robot's mobile control device. The mobile robot's mobile control device can be implemented as an independent entity or integrated into an electronic device, such as a terminal, which may include a mobile phone, tablet computer, etc.
[0099] Please see Figure 5 , Figure 5 This is a schematic diagram of a mobile robot motion control device provided in an embodiment of this application, such as... Figure 5 As shown, the mobile robot movement control device 500 provided in this application embodiment includes: The data processing module 501 is used to acquire the three-dimensional point cloud data of the target area where the mobile robot is located, and to perform ROI cropping on the three-dimensional point cloud data. The target area is the elevator door area or the car area. The plane extraction module 502 is used to perform plane extraction processing on the point cloud data after ROI cropping to obtain the front plane, left plane and right plane of the target area; The first analysis module 503 is used to determine the first and second entrance corner points of the target area based on the front plane, the left plane, and the right plane. The second analysis module 504 is used to determine the entrance centerline, lateral deviation and attitude angle of the target area based on the first entrance corner point, the second entrance corner point and the normal vector of the front plane; The instruction generation module 505 is used to obtain control instructions for the mobile robot to enter and exit the elevator based on the entrance centerline, lateral deviation and attitude angle, and send the control instructions to the mobile robot.
[0100] In one embodiment, the plane extraction module 502 is further configured to: The point cloud data after ROI clipping is continuously subjected to planar segmentation processing to extract the plane equations of multiple planes; Obtain the centroid of the point cloud data after ROI cropping, and classify the extracted planes according to the centroid and plane equation to obtain the front plane, left plane and right plane of the target region.
[0101] In one embodiment, the plane extraction module 502 is further configured to: Extract the first plane from the point cloud data after ROI clipping, and record the plane equation of the first plane and the first interior point corresponding to the first plane; Remove the first interior point from the point cloud data after ROI cropping and perform plane segmentation until the number of extracted planes reaches a preset number or the number of remaining point clouds is lower than a preset threshold.
[0102] In one embodiment, the plane extraction module 502 is further configured to: The normal vectors of the extracted plane equations are normalized to obtain the unit normal vectors corresponding to each plane. Plane classification is performed based on the unit normal vector; The planes whose absolute value of the X component of the unit normal vector is greater than a first preset threshold are classified as front planes; The planes whose absolute value of the Y component of the unit normal vector is greater than a second preset threshold are classified as side planes, the planes whose Y coordinate of the centroid of the point cloud in the side plane is negative are classified as left planes, and the planes whose Y coordinate of the centroid of the point cloud in the side plane is positive are classified as right planes.
[0103] In one embodiment, the first analysis module 503 is further configured to: The first entrance corner point is determined based on the intersection of the front plane and the right plane on the preset height plane, which is a plane with a Z coordinate of zero. Project the normal vector of the right plane onto the horizontal plane, and translate the first entrance corner point according to the preset elevator width to obtain the second entrance corner point.
[0104] In one embodiment, the second analysis module 504 is further configured to: Based on the first coordinates of the first entrance corner point and the second coordinates of the second entrance corner point, calculate the geometric midpoint of the first entrance corner point and the second entrance corner point on the horizontal plane, and determine the direction passing through the geometric midpoint and perpendicular to the line connecting the first entrance corner point and the second entrance corner point as the entrance centerline; Based on the position of the geometric midpoint in the vehicle coordinate system of the mobile robot, calculate the vertical offset of the vehicle center of the mobile robot relative to the entrance centerline, and use the vertical offset as the lateral deviation. Obtain the unit normal vector of the front plane, and calculate the attitude angle of the mobile robot based on the X and Y components of the unit normal vector of the front plane.
[0105] In one embodiment, the control commands include elevator entry control commands and elevator exit control commands, and the command generation module 505 is further configured to: The attitude adjustment is completed when the angular velocity command is output according to the attitude angle and the number of times the attitude angle is continuously less than the preset angle tolerance reaches the first preset number. After the attitude adjustment is completed, the lateral speed command is output according to the lateral deviation. The lateral alignment is completed when the number of times the lateral deviation is continuously less than the preset lateral tolerance reaches the second preset number. After the lateral alignment is completed, with a preset safe distance in front of the entrance centerline as the target, the longitudinal control command is generated to control the mobile robot to move longitudinally closer based on the longitudinal error output linear velocity command. When the mobile robot moves longitudinally closer, the forward ultrasonic ranging value of the mobile robot is obtained, and start-stop control commands are generated based on the forward ultrasonic ranging value. The start-stop control commands include a command to control the mobile robot to move forward at low speed when the forward ultrasonic ranging value is greater than a preset distance threshold and a stop command to control the mobile robot to stop moving forward when the forward ultrasonic ranging value reaches the preset distance threshold. as well as; Acquire ultrasonic ranging values from the front left, rear left, front right, and rear right of the mobile robot; The left angle error is calculated based on the first difference between the ultrasonic ranging values at the left front and left rear, and the right angle error is calculated based on the second difference between the ultrasonic ranging values at the right front and right rear. The average of the left angle error and the right angle error is taken as the body angle error of the mobile robot. The angular velocity command is output based on the vehicle body angle error. When the number of times the vehicle body angle error is continuously less than the preset angle tolerance reaches a preset number, the side distance correction stage is entered. During the side distance correction phase, the average distance on the left and the average distance on the right are obtained, and the mobile robot is controlled to leave the elevator when both the average distance on the left and the average distance on the right meet the safety threshold.
[0106] Additionally, please see Figure 6 , Figure 6This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. The electronic device can be a mobile terminal such as a smartphone or tablet computer. Figure 6 As shown, the electronic device 600 includes a processor 601 and a memory 602. The processor 601 and the memory 602 are electrically connected.
[0107] The processor 601 is the control center of the electronic device 600. It connects various parts of the electronic device through various interfaces and lines. By running or loading the application program stored in the memory 602 and calling the data stored in the memory 602, it performs various functions of the electronic device 600 and processes data, thereby monitoring the electronic device 600 as a whole.
[0108] In this embodiment, the processor 601 in the electronic device 600 loads the instructions corresponding to the processes of one or more applications into the memory 602 according to the following steps, and the processor 601 runs the applications stored in the memory 602, thereby realizing any step in the mobile robot movement control method provided in the above embodiment.
[0109] The electronic device 600 can implement the steps of any embodiment of the mobile robot movement control method provided in the embodiments of this application. Therefore, it can achieve the beneficial effects that any mobile robot movement control method provided in the embodiments of this application can achieve. For details, please refer to the previous embodiments, which will not be repeated here.
[0110] Please see Figure 7 , Figure 7 This is another structural schematic diagram of the electronic device provided in the embodiments of this application, such as... Figure 7 As shown, Figure 7 A specific structural block diagram of an electronic device provided in an embodiment of this application is shown. This electronic device can be used to implement the mobile robot movement control method provided in the above embodiments. The electronic device 700 can be a mobile terminal such as a smartphone or laptop computer.
[0111] RF circuit 710 is used to receive and transmit electromagnetic waves, converting electromagnetic waves into electrical signals and vice versa, thereby enabling communication with communication networks or other devices. RF circuit 710 may include various existing circuit elements used to perform these functions, such as antennas, radio frequency transceivers, digital signal processors, encryption / decryption chips, subscriber identity modules (SIM cards), memory, etc. RF circuit 710 can communicate with various networks such as the Internet, corporate intranets, and wireless networks, or communicate with other devices via wireless networks. The aforementioned wireless networks may include cellular telephone networks, wireless local area networks (WLANs), or metropolitan area networks (MANs). The aforementioned wireless networks may use various communication standards, protocols, and technologies, including but not limited to Global System for Mobile Communication (GSM), Enhanced Data GSM Environment (EDGE), Wideband Code Division Multiple Access (WCDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Wireless Fidelity (Wi-Fi) (such as IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, and / or IEEE 802.11n), Voice over Internet Protocol (VoIP), Worldwide Interoperability for Microwave Access (Wi-Max), other protocols for email, instant messaging, and short messages, and any other suitable communication protocols, including those that have not yet been developed.
[0112] The memory 720 can be used to store software programs and modules, such as the program instructions / modules corresponding to the mobile robot's movement control method in the above embodiment. The processor 780 executes various functional applications and the movement control method for the mobile robot by running the software programs and modules stored in the memory 720.
[0113] Memory 720 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, memory 720 may further include memory remotely located relative to processor 780, which can be connected to electronic device 700 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.
[0114] The input unit 730 can be used to receive uploaded digital or character information, and to generate keyboard, mouse, joystick, optical, or trackball signal inputs related to user settings and function control. Specifically, the input unit 730 may include a touch-sensitive surface 731 and other input devices 732. The touch-sensitive surface 731, also known as a touch display or touchpad, can collect touch operations performed by the user on or near it (such as operations performed by the user using a finger, stylus, or any suitable object or accessory on or near the touch-sensitive surface 731), and drive the corresponding connection device according to a pre-set program. Optionally, the touch-sensitive surface 731 may include two parts: a touch detection device and a touch controller. The touch detection device detects the user's touch position and the signal generated by the touch operation, and transmits the signal to the touch controller; the touch controller receives touch information from the touch detection device, converts it into touch point coordinates, sends it to the processor 780, and can receive and execute commands sent by the processor 780. In addition, the touch-sensitive surface 731 can be implemented using various types such as resistive, capacitive, infrared, and surface acoustic wave. In addition to the touch-sensitive surface 731, the input unit 730 may also include other input devices 732. Specifically, other input devices 732 may include, but are not limited to, one or more of the following: physical keyboard, function keys (such as volume control buttons, power buttons, etc.), trackball, mouse, joystick, etc.
[0115] Display unit 740 can be used to display information input by the user or information provided to the user, as well as various graphical user interfaces of electronic device 700. These graphical user interfaces can be composed of graphics, text, icons, video, and any combination thereof. Display unit 740 may include display panel 741, optionally configured as LCD (Liquid Crystal Display), OLED (Organic Light-Emitting Diode), or other similar forms. Further, touch-sensitive surface 731 may cover display panel 741. When touch-sensitive surface 731 detects a touch operation on or near it, it transmits the information to processor 780 to determine the type of touch event. Subsequently, processor 780 provides corresponding visual output on display panel 741 according to the type of touch event. Although in the figures, touch-sensitive surface 731 and display panel 741 are implemented as two separate components to achieve input and output functions, in some embodiments, touch-sensitive surface 731 and display panel 741 can be integrated to achieve input and output functions.
[0116] The electronic device 700 may also include at least one sensor 750, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor can adjust the brightness of the display panel 741 according to the ambient light level, and the proximity sensor can generate an interruption when the flip is closed or shut down. As a type of motion sensor, a gravity acceleration sensor can detect the magnitude of acceleration in various directions (generally three axes), and can detect the magnitude and direction of gravity when stationary. It can be used for applications that recognize the phone's posture (such as landscape / portrait switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc. Other sensors that may be configured in the electronic device 700, such as gyroscopes, barometers, hygrometers, thermometers, and infrared sensors, will not be described in detail here.
[0117] Audio circuitry 760, speaker 761, and microphone 762 provide an audio interface between the user and electronic device 700. Audio circuitry 760 converts received audio data into electrical signals and transmits them to speaker 761, where speaker 761 converts them into sound signals for output. Conversely, microphone 762 converts collected sound signals into electrical signals, which are then received by audio circuitry 760, converted back into audio data, and processed by processor 780. The audio data is then transmitted via RF circuitry 710 to, for example, another terminal, or output to memory 720 for further processing. Audio circuitry 760 may also include an earphone jack to facilitate communication between peripheral headphones and electronic device 700.
[0118] Electronic device 700, through transmission module 770 (e.g., Wi-Fi module), can help users receive requests, send information, etc., providing users with wireless broadband internet access. Although transmission module 770 is shown in the figure, it is understood that it is not an essential component of electronic device 700 and can be omitted as needed without changing the essence of the invention.
[0119] The processor 780 is the control center of the electronic device 700. It connects to various parts of the phone via various interfaces and lines, and performs various functions and processes data of the electronic device 700 by running or executing software programs and / or modules stored in the memory 720, and by calling data stored in the memory 720, thereby providing overall monitoring of the electronic device. Optionally, the processor 780 may include one or more processing cores; in some embodiments, the processor 780 may integrate an application processor and a modem processor, wherein the application processor mainly handles the operating system, user interface, and applications, and the modem processor mainly handles wireless communication. It is understood that the modem processor may also not be integrated into the processor 780.
[0120] The electronic device 700 also includes a power supply 790 (such as a battery) that supplies power to various components. In some embodiments, the power supply may be logically connected to the processor 780 through a power management system, thereby enabling functions such as managing charging, discharging, and power consumption through the power management system. The power supply 790 may also include one or more DC or AC power supplies, recharging systems, power fault detection circuits, power converters or inverters, power status indicators, and other arbitrary components.
[0121] Although not shown, the electronic device 700 also includes cameras (such as front-facing cameras and rear-facing cameras), Bluetooth modules, etc., which will not be described in detail here. Specifically, in this embodiment, the display unit of the electronic device is a touch screen display, and the mobile terminal also includes a memory and one or more programs, wherein one or more programs are stored in the memory and configured to be executed by one or more processors to implement any step of the mobile robot movement control method provided in the above embodiment.
[0122] In practice, the above modules can be implemented as independent entities or combined in any way to be implemented as the same or several entities. For the specific implementation of the above modules, please refer to the previous method implementation examples, which will not be repeated here.
[0123] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be implemented by instructions, or by instructions controlling related hardware. These instructions can be stored in a computer-readable storage medium and loaded and executed by a processor. Therefore, this application provides a storage medium storing multiple instructions that, when executed by a processor, can implement any step in the mobile robot movement control method provided in the above embodiments.
[0124] The storage medium may include: read-only memory (ROM), random access memory (RAM), disk or optical disk, etc.
[0125] Since the instructions stored in the storage medium can execute the steps of any embodiment of the mobile robot movement control method provided in this application, the beneficial effects that any mobile robot movement control method provided in this application can achieve can be realized. For details, please refer to the previous embodiments, which will not be repeated here.
[0126] The foregoing has provided a detailed description of a mobile robot movement control method, apparatus, electronic device, and storage medium according to embodiments of this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are merely for the purpose of helping to understand the method and core ideas of this application. Furthermore, those skilled in the art will recognize that, based on the ideas of this application, there will be changes in specific implementation methods and application scope. Therefore, the content of this specification should not be construed as a limitation of this application. Moreover, those skilled in the art can make several improvements and modifications without departing from the principles of this application, and these improvements and modifications are also considered within the scope of protection of this application.
Claims
1. A method for controlling the movement of a mobile robot, characterized in that, include: Acquire 3D point cloud data of the target area where the mobile robot is located, and perform ROI cropping on the 3D point cloud data. The target area is the elevator door area or the car area. Based on the point cloud data after ROI cropping, planar extraction processing is performed to obtain the front plane, left plane, and right plane of the target region; Based on the front plane, the left plane, and the right plane, determine the first and second entrance corner points of the target area; Based on the first entrance corner point, the second entrance corner point, and the normal vector of the front plane, determine the entrance centerline, lateral deviation, and attitude angle of the target area; The control commands for the mobile robot to enter and exit the elevator are obtained based on the entrance centerline, the lateral deviation, and the attitude angle, and the control commands are sent to the mobile robot.
2. The method according to claim 1, characterized in that, The step of performing planar extraction processing on the point cloud data after ROI cropping to obtain the front plane, left plane, and right plane of the target region includes: The point cloud data after ROI clipping is continuously subjected to planar segmentation processing to extract the plane equations of multiple planes; Obtain the centroid of the point cloud data after ROI cropping, and classify the extracted planes according to the centroid and the plane equation to obtain the front plane, left plane and right plane of the target region.
3. The method according to claim 2, characterized in that, The process of continuously segmenting the point cloud data after ROI cropping to extract the plane equations of multiple planes includes: Extract the first plane from the point cloud data after ROI clipping, and record the plane equation of the first plane and the first interior point corresponding to the first plane; Remove the first interior point from the point cloud data after ROI cropping and perform plane segmentation until the number of extracted planes reaches a preset number or the number of remaining point clouds is lower than a preset threshold.
4. The method according to claim 2, characterized in that, The process of obtaining the centroids of the point cloud data after ROI cropping, and classifying the extracted planes based on the centroids and the plane equations to obtain the front plane, left plane, and right plane of the target region, includes: The normal vectors of the extracted plane equations are normalized to obtain the unit normal vectors corresponding to each plane. Perform plane classification processing based on the unit normal vector; The planes whose absolute value of the X component of the unit normal vector is greater than a first preset threshold are classified as front planes; The planes whose absolute value of the Y component of the unit normal vector is greater than a second preset threshold are classified as side planes, the planes whose Y coordinate of the point cloud centroid in the side planes is negative are classified as left planes, and the planes whose Y coordinate of the point cloud centroid in the side planes is positive are classified as right planes.
5. The method according to claim 1, characterized in that, The step of determining the first and second entrance corner points of the target area based on the front plane, the left plane, and the right plane includes: The first entrance corner point is determined based on the intersection of the front plane and the right plane on a preset height plane, where the preset height plane is a plane with a Z coordinate of zero. Project the normal vector of the right-side plane onto the horizontal plane, and translate the first entrance corner point according to the preset elevator width to obtain the second entrance corner point.
6. The method according to claim 1, characterized in that, The step of determining the entrance centerline, lateral deviation, and attitude angle of the target region based on the first entrance corner point, the second entrance corner point, and the normal vector of the front plane includes: Based on the first coordinates of the first entrance corner point and the second coordinates of the second entrance corner point, calculate the geometric midpoint of the first entrance corner point and the second entrance corner point on the horizontal plane, and determine the direction passing through the geometric midpoint and perpendicular to the line connecting the first entrance corner point and the second entrance corner point as the entrance center line; Based on the position of the geometric midpoint in the vehicle coordinate system of the mobile robot, calculate the vertical offset of the vehicle center of the mobile robot relative to the entrance centerline, and use the vertical offset as the lateral deviation; Obtain the unit normal vector of the front plane, and calculate the attitude angle of the mobile robot based on the X and Y components of the unit normal vector of the front plane.
7. The method according to claim 1, characterized in that, The control commands include elevator entry control commands and elevator exit control commands; When the control command is an elevator entry control command, obtaining the control command for the mobile robot to enter or exit the elevator based on the entrance centerline, the lateral deviation, and the attitude angle includes: The attitude adjustment is completed when the angular velocity command is output according to the attitude angle and the number of times the attitude angle is continuously less than the preset angle tolerance reaches the first preset number. After the attitude adjustment is completed, a lateral speed command is output according to the lateral deviation. Lateral alignment is completed when the number of times the lateral deviation is continuously less than the preset lateral tolerance reaches the second preset number. After lateral alignment is completed, with a preset safe distance in front of the entrance centerline as the target, a longitudinal control command is generated to control the mobile robot to move longitudinally closer based on the longitudinal error output linear velocity command. When the mobile robot moves longitudinally closer, the forward ultrasonic ranging value of the mobile robot is obtained, and a start-stop control command is generated based on the forward ultrasonic ranging value. The start-stop control command includes a command to control the mobile robot to move forward at low speed when the forward ultrasonic ranging value is greater than a preset distance threshold and a stop command to control the mobile robot to stop moving forward when the forward ultrasonic ranging value reaches the preset distance threshold. When the control command is an elevator exit control command, obtaining the control command for the mobile robot to enter or exit the elevator based on the entrance centerline, the lateral deviation, and the attitude angle includes: Acquire ultrasonic ranging values from the left front, left rear, right front, and right rear of the mobile robot; The left angle error is calculated based on the first difference between the ultrasonic ranging values at the left front and the left rear, and the right angle error is calculated based on the second difference between the ultrasonic ranging values at the right front and the right rear. The average of the left angle error and the right angle error is taken as the vehicle body angle error of the mobile robot. Based on the vehicle body angle error, an angular velocity command is output. When the number of times the vehicle body angle error is continuously less than the preset angle tolerance reaches a preset number, the side distance correction stage is entered. During the side distance correction stage, the average distance on the left and the average distance on the right are obtained, and when both the average distance on the left and the average distance on the right meet the safety threshold, the mobile robot is controlled to drive out of the elevator.
8. A mobile control device for a mobile robot, characterized in that, include: The data processing module is used to acquire three-dimensional point cloud data of the target area where the mobile robot is located, and to perform ROI cropping on the three-dimensional point cloud data. The target area is the elevator door area or the car area. The planar extraction module is used to perform planar extraction processing on the point cloud data after ROI cropping to obtain the front plane, left plane and right plane of the target region. The first analysis module is used to determine the first entrance corner point and the second entrance corner point of the target area based on the front plane, the left plane and the right plane; The second analysis module is used to determine the entrance centerline, lateral deviation, and attitude angle of the target area based on the first entrance corner point, the second entrance corner point, and the normal vector of the front plane. The instruction generation module is used to obtain control instructions for the mobile robot to enter and exit the elevator based on the entrance centerline, the lateral deviation and the attitude angle, and send the control instructions to the mobile robot.
9. An electronic device, characterized in that, The electronic device includes a processor, a memory, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the steps of the mobile robot movement control method as described in any one of claims 1 to 7.
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 steps of the mobile robot movement control method as described in any one of claims 1 to 7.
