Methods for mobile robots to autonomously select and stop in elevators in a human-machine collaborative environment
By using a dynamic autonomous point selection and stopping method, combined with a local cost map and an elevator control module, the problem of low efficiency of robots entering elevators in human-robot collaborative environments has been solved, improving the success rate and efficiency of entering elevators, and adapting to dynamic environments and different elevator sizes.
Patent Information
- Application Number
- CN202311004994.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-10
- Publication Date
- 2026-01-06
- Estimated Expiration
- 2043-08-10
AI Technical Summary
In a human-machine collaborative environment, existing technologies result in low efficiency for robots entering elevators, and a low success rate in crowded environments, failing to effectively consider the dynamic changes in a person's stopping position and intentions.
By adopting a dynamic autonomous docking method, new target points are generated and judged by acquiring data from the dynamic detection area and search area. Combined with the local cost map and the elevator control module to control the elevator door, the robot can autonomously select and dock within the elevator.
It improves the success rate and efficiency of robots entering elevators in crowded environments, takes into account the intentions and dynamic changes of pedestrians, enhances the passenger experience, and adapts to environments with different elevator sizes.
Smart Images

Figure CN117208688B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of robot navigation, specifically a method for a mobile robot to autonomously select and stop at an elevator in an environment where robots and pedestrians coexist. Background Technology
[0002] Currently, there are two main types of delivery methods for unmanned delivery robots: indoor delivery and outdoor delivery. Indoor delivery is used in scenarios such as hospitals, hotels, and office buildings, and is only used in enclosed indoor environments to provide convenience for employees and consumers inside the building. Outdoor delivery is used in scenarios such as residential communities, campuses, and some streets, and is responsible for delivering express deliveries and takeout to the ground floor and notifying customers to pick them up themselves. This scenario is the main application scenario of the "last mile delivery" concept in recent years.
[0003] The application scenario of this invention is campus delivery, including two typical delivery methods: indoor and outdoor. Goods can be delivered from outdoor express delivery stations or takeout storage areas to designated rooms or areas indoors. In this process, the autonomous elevator ride of mobile robots becomes a key technology connecting the indoor and outdoor navigation process.
[0004] In a human-machine collaborative environment, the solutions for robots to ride elevators and stop inside the elevator can be generally divided into three categories: The first is represented by RUN, the intelligent delivery robot from Yunji Technology, which operates in scenarios with few people and uses loudspeakers to inform pedestrians to give way; however, its adaptability is not high in more complex situations. The second is represented by Meituan's delivery robot, which employs a conservative elevator entry strategy, adhering to the principle of yielding to pedestrians; however, its efficiency decreases when there is a large flow of people. The third is represented by a planning algorithm for elevator navigation proposed by Kang et al., which constructs a grid within the elevator and calculates the optimal stopping position, enabling efficient elevator entry in scenarios with people, but it does not consider the intentions of the people or the changes in the robot's stopping position due to dynamic changes in the people. Summary of the Invention
[0005] In order to overcome the shortcomings of existing technologies, solve the problem of low efficiency of robots entering elevators, and improve the success rate of robots entering elevators in crowded environments, this invention discloses a method for mobile robots to autonomously select and stop in elevators in a human-machine collaborative environment.
[0006] The technical solution adopted by this invention to solve its technical problem is:
[0007] A method for a mobile robot to autonomously select and stop at an elevator in a human-robot collaborative environment includes the following processes:
[0008] Obtain data from the dynamic detection area. If the area is clear, proceed to the next step; otherwise, continue detecting until the detection timeout, at which point the elevator door will be deactivated.
[0009] Acquire dynamic search area data once, analyze whether there is enough space in the area for the robot to dock. If there is insufficient space, directly cancel the elevator door from always being open. If there is sufficient space, proceed to the next step.
[0010] Entering the loop, a new target point is generated and published. At the same time, dynamic search area data is acquired, and the space of the docking point location is determined to see if it can accommodate the area currently occupied by the robot. If it cannot be accommodated temporarily, it is determined whether the current robot has entered the search area. If it has not yet entered, the current loop is repeated until a suitable docking point is still not found when the robot enters the search area. At this point, the current target point is released and the robot returns to the origin of the world coordinates, and the elevator door is deactivated from always open. If a suitable docking point is found during the loop, the robot sets that point as the navigation target point and continues to publish it until the robot reaches the target location, at which point the elevator door is deactivated from always open.
[0011] Furthermore, when acquiring dynamic detection area data, all pixels within the area are traversed. If a pixel is identified as an obstacle, it indicates that the area is not clear. If no pixel in the area is identified as an obstacle before the detection timeout, it indicates that the area is clear.
[0012] Furthermore, the dynamic detection area and dynamic search area are part of the local cost map. The local cost map is essentially a grid map, where each grid is composed of individual pixels, equivalent to a two-dimensional array. The cost value in this two-dimensional array actually represents the degree of danger the space poses to the robot. The local cost map used during the elevator entry process consists of four layers: a static map layer, a 2D obstacle layer, a 3D obstacle layer, and an expansion layer. The cost value in the cost map is calculated based on the grayscale values of each layer, the expansion distance, and the weights of different layers.
[0013] Furthermore, the method for canceling the elevator door from always being open is as follows: an elevator control module is installed on the elevator to control the elevator operation panel and obtain elevator status information; the elevator control module is installed inside the elevator car and communicates with the elevator mainboard, which controls the DIP switches to control the elevator; through this module, three functions can be realized: obtaining elevator status, calling the elevator to a designated floor, keeping the door always open and canceling the always-open function.
[0014] Preferably, determining whether the space inside the elevator is sufficient is done by comparing S... free With S r The size of the area when S free >S r A time indicates that there is enough free space, and the robot can enter an autonomous point selection and navigation loop; otherwise, the process ends.
[0015] Preferably, the method for generating new target points is to use a one-dimensional vector v at time t. (t)In the process, find the largest continuous interval and publish the center point of the plane corresponding to this interval as the robot's temporary target point.
[0016] Preferably, a one-dimensional vector v (t) The acquisition and processing method is as follows: For dynamic search area data processing, the area is divided into grids, where x and y represent the height and width of the area, respectively, and res is the grid resolution. All obstacles are then processed along the x-axis. w Extending in the positive direction, the remaining area is defined as the currently visible free area within the elevator, thus obtaining the free area vector v at time t. (t) .
[0017] The preferred method for obtaining the maximum continuous interval is: traversing v (t) When the i-th searched free pixel v (t) (i) If the depth is less than λ times the existing average depth, it is considered the starting position of a new plane, where λ is the plane segmentation compensation coefficient, indicating the degree of acceptance of including the current pixel column in the latest plane. If v (t) If (i) > λ*d(j), update S(j) and d(j), and repeat until the entire pixel plane has been searched; find the starting position (i) of the interval corresponding to the maximum interval area S(j). s i e By using the average depth d(j) and the average pixel ordinate of the maximum continuous interval in the local cost map at time t, we can obtain the average pixel ordinate position. and the average depth d of the largest interval area max = d(j), where y s The calculation is based on the intersection of the elevator area and the local cost map, which is the ordinate position of the final pixel of the dynamic search area.
[0018] Preferably, the temporary target point of the robot is calculated as follows: for the horizontal coordinate of the pixel position of the docking point at time t... The selection of the maximum interval area is based on a comprehensive consideration of the average depth d. max And the circumcircle radius R of the robot's footprint r ,Right now Where x s The calculation involves taking the x-coordinate of the terminated pixel of the dynamic search area obtained from the intersection of the elevator region and the local cost map, and then obtaining the pixel position of the target point at time t. and In the future, coordinate transformation will be needed to obtain the actual target position in the world coordinate system. Finally, let That is, the direction of the target point in the world coordinate system is always the same as the current robot direction. This ensures consistency, thus obtaining the robot's temporary target point.
[0019] Preferably, the method for determining the spatial location of the docking point is: in each release After determining the target pose, the position is... The surrounding obstacles are checked to determine whether the current target point is suitable for parking. The check method is to check the position on the local cost map corresponding to the current location. Starting from X, heading towards w Positive direction, Y w Positive direction, Y w The robot radius R is traversed in five directions: the negative direction and the directions of the included angles between each pair of robots. r The length unit is . If all traversed points in all directions do not coincide with obstacles, then the current target point is considered suitable for docking. If a collision point occurs, it indicates that the target point is not suitable for docking.
[0020] The beneficial effects of this invention are mainly reflected in:
[0021] 1. The dynamic autonomous docking algorithm proposed in this invention takes into account some of the human's intentions and the changes in the robot's docking position under dynamic changes, provides effective information to pedestrians, and makes adjustments to the decision based on the pedestrians' feedback, taking into account the passenger's experience and improving the efficiency and success rate of entering the elevator.
[0022] 2. This invention uses an elevator control module as an auxiliary, which ensures accurate signal transmission and fast response. Appropriate parameters can be set for elevator environments of different elevator sizes, making it practical and universal. Attached Figure Description
[0023] Figure 1 This is a schematic diagram of the robot entering the elevator in this invention;
[0024] Figure 2 This is the elevator environment and local cost map in this invention;
[0025] Figure 3 This is a schematic diagram of the elevator lobby area division in this invention. Detailed Implementation
[0026] The present invention will now be further described with reference to the accompanying drawings.
[0027] Reference Figures 1-3 A method for a mobile robot to autonomously select and stop in an elevator in a human-machine collaborative environment includes the following process:
[0028] Obtain data from the dynamic detection area. If the area is clear, proceed to the next step; otherwise, continue detecting until the detection timeout, at which point the elevator door will be deactivated.
[0029] Acquire dynamic search area data once, analyze whether there is enough space in the area for the robot to dock. If there is insufficient space, directly cancel the elevator door from always being open. If there is sufficient space, proceed to the next step.
[0030] Entering the loop, a new target point is generated and published. At the same time, dynamic search area data is acquired, and the space of the docking point location is determined to see if it can accommodate the area currently occupied by the robot. If it cannot be accommodated temporarily, it is determined whether the current robot has entered the search area. If it has not yet entered, the current loop is repeated until a suitable docking point is found when the robot enters the search area. At this time, the current target point is released and the robot returns to the origin of the world coordinates, and the elevator door is canceled from always being open. If a suitable docking point is found during the loop, the robot sets that point as a navigation point and continues to publish it until the robot reaches the target location, at which point the elevator door is canceled from always being open.
[0031] like Figure 1 As shown, the robot is about to enter the elevator. The three black objects represent passengers and other goods inside the elevator. If a fixed location within the elevator, namely target 1, is designated as the stopping point, target 1 will remain occupied if the long, narrow obstacle is not actively avoided. The robot will be unable to complete its navigation task, and the elevator door will remain open, affecting the efficiency of entering the elevator and causing discomfort to some passengers. In fact, it should be noted that... Figure 1 There is enough space at target location 2 for the robot to dock. By giving the robot a certain "selection" ability and allowing it to calculate the best docking point autonomously, efficiency can be greatly improved.
[0032] like Figure 2 The image shows a portion of the elevator map captured in the simulation environment. The robot is outside the elevator, and the dark area centered on the robot represents the local cost map. The local cost map is essentially a grid map, where each grid is composed of individual pixels, equivalent to a two-dimensional array. The cost value in the two-dimensional array actually represents the degree of danger that the space poses to the robot. The color change from light to dark in the image indicates that the degree of danger gradually increases. During local planning, locations with lower levels of danger will be selected as much as possible.
[0033] Specifically, the local cost map used during the elevator entry process consists of the following four layers:
[0034] (1) Static map layer: It is a grayscale image, using 0, 1 and -1 to represent three states: unknown occupancy and idle, and has original static information.
[0035] (2) 2D obstacle layer: Composed of dynamic environmental data acquired by single-line lidar. This layer can only scan the nearest obstacle in each direction of the lidar plane, and there will be some occlusion. It will be updated actively as the lidar data is updated.
[0036] (3) 3D obstacle layer: Composed of dynamic environmental data acquired by the depth camera. After acquiring the 3D point cloud data, it is compressed to only represent the location of the obstacle on a two-dimensional plane, ignoring its height. Similarly, it will also have some occlusion and will be actively updated as the visual sensor data is updated.
[0037] (4) Expansion layer: responsible for expanding the deadly obstacles in the main cost map, setting up a protective barrier around the obstacles to prevent robots from getting too close to the obstacles or even colliding with each other.
[0038] Specifically, the cost value in the cost map is calculated based on the grayscale values, inflation distances, and weights of different layers of the map.
[0039] like Figure 3 As shown, the world coordinate system is O. w Before entering the elevator, the robot was at its origin, facing X. w Positive direction. The gray squares represent local cost maps, and the coordinate system of this map is shown in Figure O. l As shown. By setting the robot at the world coordinate origin, the state of passengers inside the elevator can be directly observed. Additionally, the X-axis of the local cost map... l Y l The axis will always be the same as X. w Y w The axis is parallel and does not rotate with the robot, but only translates with the robot. Therefore, the robot's initial orientation is aligned with X. w The positive direction allows the interior space of the elevator to be represented by pixel positions, which can reduce the difficulty of spatial traversal and speed up the search. Figure 3 The document also defines three regions:
[0040] (1) A1 Dynamic Detection Area: This area will be detected to see if there are any obstacles, which corresponds to the requirement in practical applications to wait for pedestrians inside and outside the elevator to enter and exit the elevator.
[0041] (2) A2 Robot Dock Area: The target point inside the robot elevator will be generated in this area. The reason for setting it in this area is to ensure that the robot can enter the elevator completely and improve the efficiency when exiting the elevator.
[0042] (3) A3 Dynamic Search Area: This area is used to detect changes in the space inside the elevator. Due to the limitations of the local cost map and the standing habits of passengers inside the elevator, only the front half of the elevator space is searched.
[0043] Specifically, when acquiring dynamic detection area data, all pixels in the area are traversed. If a pixel is determined to be an obstacle, that is, the value of the pixel exceeds the preset obstacle value, it indicates that the area is not unobstructed. If no pixel in the area is determined to be an obstacle before the detection timeout, it indicates that the area is unobstructed.
[0044] Specifically, the method for canceling the elevator door's always-open position is as follows: An elevator control module is installed on the elevator to control the elevator operation panel and acquire elevator status information. This module is installed inside the elevator car and communicates with the elevator mainboard, which controls the DIP switches to control the elevator. This module enables three functions: acquiring elevator status, calling the elevator to a designated floor, and keeping the door always open and canceling its always-open position.
[0045] First, obtain the radius R of the robot's circumcircle. r Through the area of the circumcircle This represents the actual grid area occupied by the robot. Next, the dynamic search area data is processed, dividing the area into grids. x and y represent the height and width of the area, respectively, and the number of grid cells. res is the grid resolution. All obstacles are then moved along the x-axis. w Extending in the positive direction, the remaining area is defined as the currently visible free area within the elevator. The free area vector v at time t can be obtained. (t) Then the area S occupied by the idle grid cells can be observed. free It can be represented as:
[0046]
[0047] Where res is the raster resolution size, and n is the vector v (t) The dimension is related to the elevator width, and δ represents the reduction factor. Considering that there is a certain necessary interval between passengers in the elevator, the usable area is further reduced. The specific size can be set according to the actual situation.
[0048] Specifically, determining whether the space inside an elevator is sufficient is done by comparing S... free With S r The size of the area when S free >S r A time indicates that there is enough free space, and the robot can enter an autonomous point selection and navigation loop; otherwise, the process ends.
[0049] The core of the entire elevator entry process is to select a suitable target point and simultaneously initiate navigation. In this invention, this is referred to as the dynamic autonomous point selection and stopping method. The specific implementation process of this method is as follows:
[0050] First, initialize S, d, and j, where j is the current index of vectors S and d; second, take the intersection (x) of the elevator region and the local cost map. s ,y s ,x e ,y e ), which is actually Figure 3 The starting and ending pixel positions of the A3 dynamic search area are used to obtain the free region vector v. (t)At the same time, begin iterating through v. (t) When the i-th searched free pixel v (t) (i) If the depth is less than λ times the existing average depth, it is considered the starting position of a new plane, where λ is the plane segmentation compensation coefficient, indicating the degree of acceptance of including the current pixel column in the latest plane. If v (t) If (i) > λ*d(j), update S(j) and d(j), and repeat until the entire pixel plane has been searched; find the starting position (i) of the interval corresponding to the maximum interval area S(j). s i e By using the average depth d(j) and the average pixel ordinate of the maximum continuous interval in the local cost map at time t, we can obtain the average pixel ordinate position. and the average depth d of the largest interval area max =d(j).
[0051] For the x-coordinate of the pixel position of the docking point at time t The selection of the maximum interval area is based on a comprehensive consideration of the average depth d. max And the circumcircle radius R of the robot's footprint r ,Right now Calculate according to formula (2):
[0052]
[0053] Where res represents the raster resolution. A careful observation of equation (2) reveals that its range of values is... Figure 3 The width of the A2 robot docking area is set in this way to ensure that the robot can fully enter the elevator when docking, but does not stop too far inside the elevator, thus improving the efficiency of exiting the elevator.
[0054] The target pixel position at time t is obtained. and Next, coordinate transformation is needed to obtain the actual target in the world coordinate system. The robot pose at time t will then be obtained. By loading the width and height of the local cost map, we can obtain its position in world coordinates.
[0055]
[0056] The coordinates of the target point in the world coordinate system are:
[0057]
[0058] Finally, let That is, the direction of the target point in the world coordinate system is always the same as the current robot direction. Consistent.
[0059] The above is the specific implementation process of the dynamic autonomous docking method. In each release... After determining the target pose, the position is... The surrounding obstacles are checked to determine if the current target point is suitable for parking. The check is performed by examining the location on the local cost map corresponding to the current position. Starting from X, heading towards w Positive direction, Y w Positive direction, Y w The robot radius R is traversed in five directions: the negative direction and the directions of the included angles between each pair of robots. r The length unit is . If at this time, all traversed points in all directions do not coincide with obstacles, then the current target point is considered suitable for stopping. If a collision point occurs, it indicates that it is not suitable for stopping.
[0060] This embodiment constructs a Gazebo simulation environment for an elevator. The space above the map containing the human model and the robot represents the elevator car space. Only the issue of entering and exiting the elevator is considered; therefore, no elevator door is set, which is equivalent to the elevator door being always open. Most of the human model is set to be stationary, with a small portion moving along a predetermined trajectory. An autonomous point selection service, ` / auto_select_goal`, is added in ROS. Calling this service initiates the elevator entry process. If a suitable stopping point exists within the elevator, the robot continuously updates the target and continues moving, eventually stopping inside the elevator. Note that the dynamic human model inside the elevator is also constantly moving, simulating the avoidance actions of passengers in a real-world environment.
[0061] The embodiments described in this specification are merely examples of implementations of the inventive concept and are for illustrative purposes only. The scope of protection of this invention should not be considered limited to the specific forms described in these embodiments; rather, it extends to equivalent technical means conceived by those skilled in the art based on the inventive concept.
Claims
1. A method for autonomous point selection and stopping of a mobile robot in an elevator in a human-robot coexistence environment, characterized by, The method Comprise the following process: Acquire dynamic detection area data, if the dynamic detection area is unobstructed, enter the next step, otherwise, keep detecting until the detection timeout, cancel the elevator door always open; Acquire dynamic search area data, analyze whether there is enough space for the robot to stop in the dynamic search area, if the space is insufficient, cancel the elevator door always open, if the space is sufficient, enter the next step; Enter the loop, generate a new target point and publish, at the same time, acquire dynamic search area data, judge whether the space of the stop point position can accommodate the current robot area, if it cannot accommodate temporarily, judge whether the current robot has entered the search area, if it has not entered, repeat the current loop until the robot enters the search area and still cannot find a suitable stop point, release the current target point and return to the world coordinate origin, cancel the elevator door always open; if a suitable stop point is found in the loop process, the robot sets the point as a navigation target point and continuously publishes until the robot reaches the target position, cancel the elevator door always open; The way of generating new target points, in A one-dimensional vector of time instants In the method, a maximum continuous interval is found, and a plane center point corresponding to the interval is published as a temporary target point of the robot. The maximum continuous interval is obtained by traversing When the first searched free pixel is less than times of the average depth, it is considered as a new plane start position, where is the plane partition compensation coefficient, which means the acceptance degree of whether to include the current pixel column into the latest plane, if , and are updated, and the loop is repeated until the entire pixel plane is searched; the maximum interval area corresponds to the interval start position and the average depth , so that the average pixel vertical coordinate position of the maximum continuous interval in the local cost map at the moment , and the average depth of the maximum interval area , where is calculated by taking the intersection of the elevator area and the local cost map to obtain the dynamic search area termination pixel vertical coordinate position; The robot temporary target point calculation method is as follows: for the selection of the horizontal coordinate position of the pixel coordinate position of the time stop point, the average depth possessed by the maximum interval area and the circumscribed circle radius of the robot footprint are comprehensively considered , that is , wherein the calculation of the horizontal coordinate position of the termination pixel of the dynamic search area is obtained by taking the intersection of the elevator area and the local cost map , the pixel position of the target point at the time is obtained and , then the real target position in the world coordinate system is obtained through coordinate transformation , finally, let , that is, the direction of the target point in the world coordinate system is always consistent with the current robot direction , so that the robot temporary target point is obtained.
2. The method of claim 1, wherein the method comprises: When acquiring dynamic detection area data, traverse all pixel points in the dynamic detection area, if a pixel is determined as an obstacle, it indicates that the area is unobstructed, if no pixel in the area is determined as an obstacle before the detection timeout, it indicates that the area is unobstructed.
3. The method of claim 1 or 2, wherein the method further comprises: determining a position of the mobile robot; and determining a position of the elevator door. The dynamic detection area and the dynamic search area belong to part of the local cost map, which essentially belongs to a grid map, the grid is composed of individual pixel points, which is equivalent to a two-dimensional array, the cost value in the two-dimensional array actually represents the degree of danger of the space to the robot body; for the local cost map used in the elevator entering process, it is composed of four layers of static map layer, 2D obstacle layer, 3D obstacle layer and inflation layer, the cost value in the cost map is calculated according to the gray value of each layer of map, inflation distance and the weight of different layers.
4. The method of claim 1 or 2, wherein the method further comprises: determining a position of the mobile robot; and determining a position of the elevator door. The method for canceling the elevator door always open is: installing a lift control module on the elevator, which is used to control the elevator operation panel and acquire elevator state information; the lift control module is installed in the elevator box and communicates with the elevator mainboard, and the mainboard controls the code switch to control the elevator; through the module, three functions can be realized: acquiring elevator state, calling elevator to specified floor, keeping door always open and canceling always open.
5. The method for a mobile robot to autonomously select and stop in an elevator in a human-machine collaborative environment as described in claim 1 or 2, characterized in that, To determine if the space inside the elevator is sufficient, the area of the observable free grid is compared to the area of the circumscribed circle If the area of the observable free grid is greater than the area of the circumscribed circle, then the space is sufficient and the robot can enter the autonomous point selection navigation loop. Otherwise, the process ends. 6. The method of claim 1 or 2, wherein the method further comprises: determining a position of the mobile robot; and determining a position of the elevator door. One-dimensional vector The acquisition and processing method is: processing the dynamic search area data, dividing the dynamic search area into grids, and respectively representing the number of grids of the area height and width, is the grid resolution size, extending all obstacles along the positive direction, defining the remaining area as the current elevator visible free area, that is, obtaining the time free area vector .
7. The method of claim 1 or 2, wherein the method further comprises: determining a position of the mobile robot; and determining a position of the elevator door; and determining a position of the mobile robot relative to the elevator door based on the position of the mobile robot and the position of the elevator door. The manner for determining the position space of the stop point is: determining the position space of the stop point in each time of publishing After the target pose is determined, the position The surrounding obstacles are checked to determine whether the current target point is suitable for stopping, and the checking manner is to check the positions in the local cost map corresponding to the current position as the starting point, and the robot radius positive direction, positive direction, negative direction and the direction of the included angle between two directions, a total of 5 directions are traversed by the length unit of the robot radius If all traversal points in all directions do not coincide with the obstacles at this time, it is determined that the current target point is suitable for stopping, and if a collision point appears, it indicates that it is not suitable for stopping.
Citation Information
Patent Citations
Intelligent power plant autonomous polling robot polling system and method
CN109599945A
Robot scheduling method, server and storage medium
CN111874764A