Elevator Riding Position Adjustment Method, Elevator Riding Position Adjustment Device and Robot
By determining the temporary elevator point in the elevator and adjusting the purpose of the navigation task, the problem that the robot cannot reach the predetermined elevator point due to the congestion of the elevator is solved, and the success rate of the robot is improved.
Patent Information
- Application Number
- CN202211699704.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-28
- Publication Date
- 2025-07-08
- Estimated Expiration
- 2042-12-28
AI Technical Summary
The robot cannot reach the predetermined elevator point due to congestion in the elevator, resulting in the elevator failure.
The robot determines the temporary elevator point in the elevator and adjusts the purpose point of the navigation task to improve the success rate. Through path planning and moving to the temporary elevator point until the elevator is successfully taken.
By intelligently adjusting the elevator position, the robot cannot enter the elevator and improve the success rate of elevator.
Smart Images

Figure CN116119474B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the technical field of robots, and particularly relates to a method for adjusting the elevator boarding position, a device for adjusting the elevator boarding position, a robot, and a computer-readable storage medium. Background Art
[0002] In multi-story buildings, robots often need to take elevators to work across floors. However, the area of an elevator is generally small, and the elevator is a public area, which may cause a relatively crowded situation inside the elevator. In this case, the robot may not be able to reach the originally scheduled elevator boarding point, resulting in the failure of the robot to board the elevator. Summary of the Invention
[0003] This application provides a method for adjusting the elevator boarding position, a device for adjusting the elevator boarding position, a robot, and a computer-readable storage medium, which can intelligently adjust the elevator boarding position of the robot when the robot boards the elevator, and help improve the success rate of the robot boarding the elevator.
[0004] In a first aspect, this application provides a method for adjusting the elevator boarding position. The method for adjusting the elevator boarding position is applied to a robot, and the method for adjusting the elevator boarding position includes:
[0005] After receiving an elevator boarding instruction, start a navigation task, where the navigation task is to plan a path and move with the target elevator boarding point in the elevator as the destination point;
[0006] Determine whether the navigation task is successful;
[0007] If the navigation task fails, determine a temporary elevator boarding point in the elevator;
[0008] Change the navigation task to use the temporary elevator boarding point as the destination point, restart the navigation task, and return to execute the steps of determining whether the navigation task is successful and subsequent steps until the navigation task is successful.
[0009] In a second aspect, this application provides a device for adjusting the elevator boarding position. The device for adjusting the elevator boarding position is applied to a robot, and the device for adjusting the elevator boarding position includes:
[0010] A start module, configured to start a navigation task after receiving an elevator boarding instruction, where the navigation task uses the target elevator boarding point in the elevator as the destination point;
[0011] A first determination module, configured to determine whether the navigation task is successful;
[0012] A second determination module, configured to determine a temporary elevator boarding point in the elevator if the navigation task fails;
[0013] A change module, configured to change the navigation task to use the temporary elevator boarding point as the destination point;
[0014] It is also used to restart the navigation task after the change module changes the navigation task to use the temporary elevator boarding point as the destination point, and sequentially trigger the operation of other modules until the navigation task is successful.
[0015] In a third aspect, the present application provides a robot, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the steps of the method in the first aspect are implemented.
[0016] In a fourth aspect, the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the steps of the method in the first aspect are implemented.
[0017] In a fifth aspect, the present application provides a computer program product, which includes a computer program. When the computer program is executed by one or more processors, the steps of the method in the first aspect are implemented.
[0018] The beneficial effects of the present application compared with the prior art are as follows: After receiving the elevator boarding instruction, the robot first starts a navigation task, which is to plan a path and move with the target elevator boarding point in the elevator as the destination point. Then, it can determine whether the navigation task is successful. If the navigation task fails, a temporary elevator boarding point is determined in the elevator, the navigation task is changed to use the temporary elevator boarding point as the destination point, the navigation task is restarted, and the steps of determining whether the navigation task is successful and subsequent steps are returned to be executed until the navigation task is successful. Through the above process, the robot no longer adheres to boarding the elevator at a fixed boarding point, but will change to a new elevator boarding point when the original boarding point cannot be reached, thereby realizing the intelligent adjustment of the robot's elevator boarding position, reducing the situation where the robot cannot enter the elevator, and helping to improve the elevator boarding success rate of the robot.
[0019] It can be understood that the beneficial effects of the second to fifth aspects can refer to the relevant descriptions in the first aspect, and will not be elaborated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for use in the embodiments or the description of the prior art. Obviously, the following drawings are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0021] Figure 1 It is a schematic flowchart of the implementation of the elevator boarding position adjustment method provided by the embodiment of the present application;
[0022] Figure 2 It is a schematic diagram of the feasible region provided by an embodiment of the present application;
[0023] Figure 3 It is a structural block diagram of the elevator riding position adjustment device provided by an embodiment of the present application;
[0024] Figure 4 It is a schematic structural diagram of the robot provided by an embodiment of the present application. Specific embodiments
[0025] In the following description, specific details such as specific system structures and technologies are presented for the purpose of illustration rather than limitation, so as to thoroughly understand the embodiments of the present application. However, those skilled in the art should clearly understand that the present application can also be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to avoid unnecessary details from interfering with the description of the present application.
[0026] The following describes a method for adjusting the elevator riding position provided by an embodiment of the present application. Among them, this elevator riding position adjustment method can be applied to a robot; of course, it can also be applied to other devices that are communicatively connected to the robot and can control the robot, such as a user terminal or a server, etc. The embodiments of the present application do not limit this. For the sake of convenience of description, the following takes this elevator riding position adjustment method applied to a robot as an example to explain and illustrate this elevator riding position adjustment method. Please refer to Figure 1 , the elevator riding position adjustment method in the embodiments of the present application includes:
[0027] Step 101, after receiving an elevator riding instruction, start a navigation task.
[0028] When the robot executes the navigation task, it needs to perform two aspects of operations:
[0029] In the first aspect, the robot should perform path planning according to the destination point in the navigation task. This path planning includes: global path planning and local path planning. In the embodiments of the present application, the manner of global path planning and the manner of local path planning of the robot are not limited.
[0030] In the second aspect, the robot should control itself to move towards the destination point in the navigation task according to the result of the path planning. In the embodiments of the present application, the moving manner of the robot is determined by the type of the robot and is not limited here.
[0031] After receiving the elevator ride instruction, the robot can perform a series of analysis and processing based on the instruction to determine the elevator it is going to take and the target boarding point in the elevator. It can be understood that the target boarding point in the elevator represents the ideal position point of the robot when taking the elevator. The target boarding point can be the center point of the elevator or other specific positions, and the embodiments of the present application do not limit this.
[0032] After the robot determines the target boarding point, it can start the navigation task. Among them, the destination point of the navigation task can initially be set as the target boarding point. That is, when the robot first executes the navigation task, it will plan the path and move with the target boarding point as the destination point.
[0033] Step 102, determine whether the navigation task is successful.
[0034] After the robot executes the navigation task for a period of time, it can receive the execution result of the navigation task, and the execution result is used to indicate whether the navigation task is successful. It can be understood that if the execution result indicates that the navigation task is successful, it means that the robot has successfully reached the destination point of the navigation task, that is, the robot has successfully entered the elevator. On the contrary, if the execution result indicates that the navigation task fails, it means that the robot fails to reach the destination point of the navigation task, that is, the robot has not entered the elevator yet.
[0035] Step 103, if the navigation task fails, determine a temporary boarding point in the elevator.
[0036] The failure of the navigation task indicates that the currently set destination point of the navigation task is temporarily unreachable. In order to successfully take the elevator, the robot can determine a temporary boarding point in the elevator when the navigation task fails. It can be understood that compared with the target boarding point, this temporary boarding point is only a transitional position point for the robot when taking the elevator.
[0037] Step 104, change the navigation task to use the temporary boarding point as the destination point, restart the navigation task and return to execute Step 102 and subsequent steps until the navigation task is successful.
[0038] Generally speaking, in the case of the failure of the navigation task, the robot will suspend the execution of the navigation task. To improve the success rate of taking the elevator, in this case, the robot can adjust the navigation task, change the destination point to the newly determined temporary boarding point, and restart the navigation task. That is, when the robot executes the navigation task again, it will plan the path and move with the newly determined temporary boarding point as the destination point. After restarting the navigation task, the robot can return to execute Step 102 and subsequent steps until the navigation task is successful.
[0039] In some embodiments, the robot can record each elevator stop point that has been set as the destination point during this elevator ride (including the target elevator stop point and the temporary elevator stop points determined in the past). For the convenience of distinction, each elevator stop point that has been set as the destination point when attempting to take this elevator can be denoted as the historical elevator stop point. Then, when the robot determines a temporary elevator stop point inside the elevator, the temporary elevator stop point should be different from each historical elevator stop point to prevent the robot from repeatedly attempting to move to the same elevator stop point that is temporarily unreachable, thereby improving the elevator ride efficiency.
[0040] In some embodiments, to reduce the number of attempts of invalid navigation tasks, regardless of whether the robot is equipped with environmental detectors such as radar or cameras, the robot can determine a temporary elevator stop point through the following steps:
[0041] A1. Determine the feasible area inside the elevator.
[0042] For the convenience of distinction, in this embodiment, the complete area corresponding to the elevator can be denoted as the elevator area. The robot can thus determine a feasible area within the elevator area of the floor map of the current floor. It can be understood that the robot only determines a temporary elevator stop point when the previous navigation task fails, and the failure of the navigation task means that the destination point is temporarily unreachable for the robot. Also, the volume of the robot itself brings limitations to its movement. Therefore, the feasible area determined in this step should meet the following condition: the area is smaller than the total area of the elevator.
[0043] A2. Determine the temporary elevator stop point within the feasible area.
[0044] The robot can select a point within the determined feasible area as the temporary elevator stop point. Specifically, the robot can set the selection probability of each point within the feasible area and randomly select the temporary elevator stop point within the feasible area according to this selection probability.
[0045] In some examples, the robot can set the selection probability of all points within the feasible area to be the same.
[0046] In other examples, the robot can also set the selection probability of each point within the feasible area according to a certain probability setting rule. For example, when a passenger sees a robot attempting to take the elevator, to avoid colliding with the robot, the passenger generally stands as close as possible to the inner wall of the elevator car, which leaves a certain space in the area from the center of the elevator to near the elevator door; thus, the probability setting rule can be: the selection probability of a point whose distance from the elevator door is less than or equal to a preset distance threshold is the first probability value, and the selection probability of a point whose distance from the elevator door is greater than this distance threshold is the second probability value, where the first probability value is greater than the second probability value.
[0047] In some embodiments, in order to reduce the number of ineffective navigation task attempts, when the robot is equipped with an environmental detector such as a radar or a camera, the robot can also determine a temporary elevator boarding point through the following steps:
[0048] B1. Determine the feasible area inside the elevator.
[0049] Step B1 is the same as or similar to step A1. For the specific description of step A1, please refer to it, and it will not be elaborated here.
[0050] B2. Detect the elevator through the environmental detector, and determine any point inside the elevator without obstacles as the detection point.
[0051] In the case where the navigation task fails, although the robot has paused moving, it can still keep the environmental detector working and obtain the detection data of the elevator by the environmental detector. Through the analysis of this detection data, the robot can roughly determine the distribution and position of the obstacles (generally passengers) inside the elevator, and based on this, determine any point inside the elevator without obstacles as the detection point.
[0052] B3. Determine whether the detection point is within the feasible area. If so, execute step B4. If not, execute step B2.
[0053] As described above, the feasible area is a restriction on the temporary elevator boarding point considering the volume of the robot. In the case where the detection point is not within the feasible area, when the robot moves towards the detection point, there is still a possibility of colliding with obstacles due to its volume. Based on this, after determining the feasible area and the detection point, the robot can determine whether the detection point is within the feasible area.
[0054] When the detection point is not within the feasible area, the robot can return to execute step B2 to re-determine a new detection point and execute step B3 again, which will not be elaborated here.
[0055] B4. Determine the detection point as the temporary elevator boarding point.
[0056] When the detection point is within the feasible area, the detection point already meets all the restrictions on the temporary elevator boarding point. In this case, the robot can determine the detection point as the temporary elevator boarding point for this time.
[0057] In some embodiments, in order to reduce the situation where it is difficult to succeed in the navigation task due to the feasible area being too large or too small, the robot can determine a suitable feasible area through the following steps:
[0058] C1. Obtain the coordinates of the four vertices of the elevator in the map coordinate system.
[0059] The floor environment where the robot is actually located is a three-dimensional space. After the three-dimensional space is projected on the ground plane or the horizontal plane, the map formed is a plane map. The coordinate system used by the plane map is the map coordinate system. It can be understood that after the elevator is projected on the plane map, it presents a quadrilateral shape in the plane map, and the four vertices of the quadrilateral shape are the four vertices of the elevator. The robot can thus obtain the coordinates of the four vertices of the elevator in the map coordinate system.
[0060] C2. Determine the indentation multiple.
[0061] As described above, the area of the feasible area is smaller than the area of the elevator area, so the robot can retract the elevator area to a certain extent to obtain the feasible area. In this embodiment, in order to avoid the feasible area being too large or too small, the robot can first determine a retraction multiple. The retraction multiple is within a preset multiple range.
[0062] In some examples, considering the risk of touching the wall due to the size of the robot, the minimum value of the multiple interval can be determined according to the radius of the robot, for example, the minimum value can be the radius. Also, considering that when retracting, the robot can only retract to the midpoint of the elevator at the minimum, the maximum value of the multiple interval can be determined according to the distance between two diagonal vertices of the four vertices, specifically, not more than half of the distance.
[0063] C3. Determine the feasible area inside the elevator in the map coordinate system based on the coordinates of the four vertices and the indentation multiples.
[0064] After determining the indentation multiple, the robot can calculate the coordinates of the four vertices after indentation according to the coordinates of the four vertices obtained and the indentation multiple. The area framed by the four vertices after indentation is the feasible area.
[0065] Please refer to Figure 2 , Figure 2 An example of a feasible region is given. It can be understood that Figure 2 The white area in the figure is the feasible area in the elevator. Figure 2 The gray area in the figure is other areas in the elevator that are not in the feasible area. Figure 2 , steps C1 to C3 are described:
[0066] The robot knows the coordinates of the four vertices of the elevator in the map coordinate system; in addition, it can also determine the indentation multiple α. Figure 2 As shown in the figure, the four vertices are recorded as A, B, C and D. To facilitate the subsequent vector operations, the robot can use any point as the origin. In this example, point A is used as the origin, and the coordinates of each vertex are expressed as follows: (Xa, Ya), (Xb, Yb), (Xc, Yc), (Xd, Yd).
[0067] Accordingly, each vector is represented as follows:
[0068]
[0069]
[0070]
[0071]
[0072] From this, it can be obtained that:
[0073]
[0074]
[0075] As Figure 2 shown, the four vertices after indentation are respectively denoted as A', B', C' and D'. Then, according to the indentation multiple and vector operation, it can be obtained that:
[0076]
[0077]
[0078]
[0079]
[0080] Thus, the coordinates of A', B', C' and D' can be obtained.
[0081] In some embodiments, in order to achieve a gradual indentation of the feasible region, step C2 may specifically include:
[0082] C21. Determine the multiple adjustment interval value.
[0083] As can be seen from the foregoing, generally, it is only when the elevator is relatively crowded that it may cause the robot to be unable to reach the originally scheduled target elevator boarding point. It can be imagined that the more crowded the elevator is, the less space is left for the robot. In this case, the robot can consider determining the feasible region through a large-scale indentation; on the contrary, the less crowded the elevator is, the more space is left for the robot. In this case, the robot can consider determining the feasible region through a small-scale indentation.
[0084] Based on this, when the robot is equipped with an environmental detector, it can determine the multiple adjustment interval value according to the detection result of the environmental detector. Specifically:
[0085] The robot pre-stores a comparison table for storing the multiple adjustment interval values corresponding to different congestion levels. After obtaining the detection result of the environmental detector, the robot can analyze the congestion level in the elevator according to the detection result and determine the current congestion level in the elevator. The robot queries in the comparison table according to the current congestion level in the elevator to determine the final multiple adjustment interval value.
[0086] Of course, when the robot is not equipped with an environmental detector, it cannot accurately analyze the congestion level in the elevator. In this case, the robot can directly determine a preset value as the multiple adjustment interval value.
[0087] C22. Determine the indentation multiple according to the number of times the navigation task has been changed, the multiple adjustment interval value, the minimum value of the multiple range, and the maximum value of the multiple range.
[0088] The robot can default the initial indentation multiple to the minimum value of the multiple range. According to the number of times the navigation task has been changed, the multiple adjustment interval value, and the minimum value of the multiple range, the robot can calculate an indentation multiple. Specifically, denote the minimum value of the multiple range as α min , the number of times changed as β, and the multiple adjustment interval value as γ. Then the indentation multiple can be calculated by the following formula: α = α min + β * γ.
[0089] It should be noted that the final indentation multiple should not exceed the maximum value of the multiple range. Therefore, the robot can also compare the calculated indentation multiple with the maximum value. When the calculated indentation multiple is less than or equal to the maximum value, the robot can determine the calculated indentation multiple as the final indentation multiple; otherwise, when the calculated indentation multiple is greater than the maximum value, the robot can determine the maximum value of the multiple range as the final indentation multiple.
[0090] As can be seen from the above, in the embodiment of the present application, after receiving the elevator riding instruction, the robot first starts a navigation task, which is: performing path planning and movement with the target elevator riding point in the elevator as the destination point. Then it can determine whether the navigation task is successful. If the navigation task fails, it determines a temporary elevator riding point in the elevator, changes the navigation task to use the temporary elevator riding point as the destination point, and returns to execute the steps of determining whether the navigation task is successful and subsequent steps until the navigation task is successful. Through the above process, the robot no longer adheres to taking the elevator at a fixed elevator riding point, but will change to a new elevator riding point in the elevator when the original elevator riding point cannot be reached, thereby realizing the intelligent adjustment of the robot's elevator riding position, reducing the situation where the robot cannot enter the elevator, and helping to improve the elevator riding success rate of the robot.
[0091] It should be understood that the magnitudes of the sequence numbers of the steps in the above embodiments do not imply the order of execution. The order of execution of each process should be determined according to its function and internal logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.
[0092] Corresponding to the elevator boarding position adjustment method provided above, an embodiment of the present application further provides an elevator boarding position adjustment device. The above elevator boarding position adjustment device can be integrated into a robot; alternatively, the elevator boarding position adjustment device can also be integrated into other devices that establish a communication connection with the robot and can control the robot. The embodiments of the present application do not limit this. Please refer to Figure 3 , the elevator boarding position adjustment device 3 in the embodiments of the present application includes:
[0093] A start module 301, configured to start a navigation task after receiving an elevator boarding instruction, where the navigation task aims at a target elevator boarding point in the elevator;
[0094] A first determination module 302, configured to determine whether the navigation task is successful;
[0095] A second determination module 303, configured to determine a temporary elevator boarding point in the elevator if the navigation task fails;
[0096] A change module 304, configured to change the navigation task to aim at the temporary elevator boarding point;
[0097] The start task 301 is further configured to restart the navigation task after the change module 304 changes the navigation task to aim at the temporary elevator boarding point, and sequentially trigger the operation of other modules until the navigation task is successful.
[0098] In some embodiments, the second determination module 303 includes:
[0099] A feasible area determination sub-module, configured to determine a feasible area in the elevator, where the area of the feasible area is smaller than the total area of the elevator;
[0100] A temporary elevator boarding point determination sub-module, configured to determine a temporary elevator boarding point within the feasible area.
[0101] In some embodiments, the feasible area determination sub-module includes:
[0102] A coordinate acquisition unit, configured to acquire the coordinates of the four vertices of the elevator in the map coordinate system;
[0103] A multiple determination unit, configured to determine an indentation multiple, where the indentation multiple is within a preset multiple range;
[0104] An area determination unit, configured to determine a feasible area in the elevator in the map coordinate system according to the coordinates of the four vertices and the indentation multiple.
[0105] In some embodiments, the multiple determination unit includes:
[0106] A first determination subunit, configured to determine a multiple adjustment interval value;
[0107] A second determination subunit, configured to determine an indentation multiple according to the number of times the navigation task has changed, the multiple adjustment interval value, the minimum value of the multiple interval, and the maximum value of the multiple interval.
[0108] In some embodiments, the first determination subunit is specifically configured to determine that the multiple adjustment interval value is a preset value when the robot is not equipped with an environment detector, and determine the multiple adjustment interval value according to the detection result of the environment detector when the robot is equipped with an environment detector.
[0109] In some embodiments, determining the multiple adjustment interval value according to the detection result of the environment detector includes:
[0110] Determine the congestion level in the elevator according to the detection result;
[0111] Determine the multiple adjustment interval value according to the congestion level, where the multiple adjustment interval value is positively correlated with the congestion level.
[0112] In some embodiments, the minimum value of the multiple interval is determined according to the radius of the robot, and the maximum value of the multiple interval is determined according to the distance between two diagonal vertices among the four vertices.
[0113] As can be seen from the above, in the embodiments of the present application, after the robot receives the elevator riding instruction, it first starts a navigation task, which is to perform path planning and movement with the target elevator riding point in the elevator as the destination point. Then, it can determine whether the navigation task is successful. If the navigation task fails, a temporary elevator riding point is determined in the elevator, the navigation task is changed to use the temporary elevator riding point as the destination point, and the steps of determining whether the navigation task is successful and subsequent steps are returned to be executed until the navigation task is successful. Through the above process, the robot no longer insists on taking the elevator at a fixed elevator riding point, but will replace the elevator riding point in the elevator with a new one when the original elevator riding point cannot be reached, thereby realizing intelligent adjustment of the robot's elevator riding position, reducing the situation where the robot cannot enter the elevator, and helping to improve the elevator riding success rate of the robot.
[0114] Corresponding to the elevator riding position adjustment method provided above, the embodiments of the present application further provide a robot. Please refer to Figure 4 , the robot 4 in the embodiments of the present application includes: a memory 401, one or more processors 402 ( Figure 4Only one is shown (in the figure), and a computer program stored on the memory 401 and executable on the processor. Among them: the memory 401 is used to store software programs and modules, and the processor 402 executes various functional applications and data processing by running the software programs and units stored in the memory 401, so as to obtain the resources corresponding to the above preset events. Specifically, when the processor 402 runs the above computer program stored in the memory 401, the following steps are implemented:
[0115] After receiving the elevator riding instruction, start the navigation task, and the navigation task is: perform path planning and movement with the target elevator riding point in the elevator as the destination point;
[0116] Determine whether the navigation task is successful;
[0117] If the navigation task fails, determine a temporary elevator riding point in the elevator;
[0118] Change the navigation task to use the temporary elevator riding point as the destination point, and return to execute the steps of determining whether the navigation task is successful and subsequent steps until the navigation task is successful.
[0119] Assume the above is the first possible implementation manner. Then, in the second possible implementation manner provided based on the first possible implementation manner, determining a temporary elevator riding point in the elevator includes:
[0120] Determine the feasible area in the elevator, and the area of the feasible area is smaller than the total area of the elevator;
[0121] Determine a temporary elevator riding point within the feasible area.
[0122] In the third possible implementation manner provided based on the above second possible implementation manner, determining the feasible area in the elevator includes:
[0123] Obtain the coordinates of the four vertices of the elevator in the map coordinate system;
[0124] Determine the indentation multiple, where the indentation multiple is within a preset multiple range;
[0125] Determine the feasible area in the elevator in the map coordinate system according to the coordinates of the four vertices and the indentation multiple.
[0126] In the fourth possible implementation manner provided based on the above third possible implementation manner, determining the indentation multiple includes:
[0127] Determine the multiple adjustment interval value;
[0128] Determine the indentation multiple according to the number of times the navigation task has been changed, the multiple adjustment interval value, the minimum value of the multiple range, and the maximum value of the multiple range.
[0129] In a fifth possible implementation manner provided based on the above fourth possible implementation manner, determining the multiple adjustment interval value includes:
[0130] When the robot is not equipped with an environment detector, determining the multiple adjustment interval value as a preset value;
[0131] When the robot is equipped with an environment detector, determining the multiple adjustment interval value according to the detection result of the environment detector.
[0132] In a sixth possible implementation manner provided based on the above fifth possible implementation manner, determining the multiple adjustment interval value according to the detection result of the environment detector includes:
[0133] Determining the congestion level in the elevator according to the detection result;
[0134] Determining the multiple adjustment interval value according to the congestion level, where the multiple adjustment interval value is positively correlated with the congestion level.
[0135] In a seventh possible implementation manner provided based on the above third possible implementation manner, the minimum value of the multiple range is determined according to the radius of the robot, and the maximum value of the multiple range is determined according to the distance between two diagonal vertices among the four vertices.
[0136] It should be understood that in the embodiments of the present application, the so-called processor 402 may be a central processing unit (CPU), and this processor may also be other general-purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or this processor may also be any conventional processor, etc.
[0137] The memory 401 may include a read-only memory and a random access memory, and provide instructions and data to the processor 402. A part or all of the memory 401 may also include a non-volatile random access memory. For example, the memory 401 may also store information about the device type.
[0138] As can be seen from the above, in the embodiments of the present application, after receiving the elevator riding instruction, the robot first starts a navigation task, which is to perform path planning and movement with the target elevator riding point in the elevator as the destination point. Then, it can determine whether the navigation task is successful. If the navigation task fails, a temporary elevator riding point is determined in the elevator, the navigation task is changed to use the temporary elevator riding point as the destination point, and the steps of determining whether the navigation task is successful and subsequent steps are returned to be executed until the navigation task is successful. Through the above process, the robot no longer adheres to taking the elevator at a fixed elevator riding point, but will replace the elevator riding point in the elevator with a new one when the original elevator riding point cannot be reached, thereby realizing the intelligent adjustment of the robot's elevator riding position, reducing the situation where the robot cannot enter the elevator, and helping to improve the elevator riding success rate of the robot.
[0139] Those skilled in the art can clearly understand that for the convenience and conciseness of description, only the above division of each functional unit and module is used as an example for illustration. In practical applications, the above functions can be allocated to different functional units and modules according to needs, that is, the internal structure of the above device is divided into different functional units or modules to complete all or part of the functions described above. Each functional unit and module in the embodiments can be integrated into one processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above integrated unit can be implemented in the form of hardware or in the form of a software functional unit. In addition, the specific names of each functional unit and module are only for the convenience of mutual distinction and do not limit the protection scope of the present application. The specific working process of the units and modules in the above system can refer to the corresponding process in the foregoing method embodiments and will not be repeated here.
[0140] In the above embodiments, the descriptions of the various embodiments have their own emphases. For parts not detailed or recorded in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0141] Those of ordinary skill in the art can realize that the units and algorithm steps of each example described in combination with the embodiments disclosed in this article can be implemented by electronic hardware, or a combination of external device software and electronic hardware. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.
[0142] In the embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the system embodiments described above are merely illustrative. For example, the division of the above-mentioned modules or units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed coupling or direct coupling or communication connection to each other can be through some interfaces. The indirect coupling or communication connection of the devices or units can be in electrical, mechanical or other forms.
[0143] The units described above as separate components may or may not be physically separated. The components displayed as units may or may not be physical units, that is, they can be located in one place, or they can be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0144] If the above-mentioned integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on such an understanding, to implement all or part of the processes in the above-mentioned method embodiments of the present application, it can also be completed by a computer program instructing the relevant hardware. The above-mentioned computer program can be stored in a computer-readable storage medium. When the computer program is executed by a processor, the steps of the above-mentioned method embodiments can be implemented. Among them, the above-mentioned computer program includes computer program code, and the above-mentioned computer program code can be in the form of source code, object code, executable file or some intermediate form, etc. The above-mentioned computer-readable storage medium can include: any entity or device that can carry the above-mentioned computer program code, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disc, computer-readable memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electrical carrier signal, telecommunication signal, and software distribution medium, etc. It should be noted that the content included in the above-mentioned computer-readable storage medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, the computer-readable storage medium does not include electrical carrier signals and telecommunication signals.
[0145] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit it; although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that: they can still modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements on some of the technical features; and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included within the protection scope of the present application.
Claims
1. A method for adjusting the position of taking an elevator, characterized in that The elevator riding position adjustment method is applied to a robot, and the elevator riding position adjustment method includes: After receiving an elevator riding instruction, start a navigation task, where the navigation task is: perform path planning and movement with the target elevator riding point in the elevator as the destination; Determine whether the navigation task is successful; If the navigation task fails, obtain the coordinates of the four vertices of the elevator in the map coordinate system, determine the indentation multiple, and determine the feasible area in the elevator in the map coordinate system according to the coordinates of the four vertices and the indentation multiple, and determine a temporary elevator riding point within the feasible area, where the indentation multiple is within a preset multiple range, and the area of the feasible area is smaller than the total area of the elevator; Change the navigation task to use the temporary elevator riding point as the destination, restart the navigation task, and return to execute the step of determining whether the navigation task is successful and subsequent steps until the navigation task is successful.
2. The method for adjusting the boarding position according to claim 1, wherein The determination of the indentation multiple includes: Determine the multiple adjustment interval value; Determine the indentation multiple according to the number of times the navigation task has been changed, the multiple adjustment interval value, the minimum value of the multiple range, and the maximum value of the multiple range.
3. The method for adjusting the boarding position according to claim 2, wherein The determination of the multiple adjustment interval value includes: When the robot is not equipped with an environmental detector, determine that the multiple adjustment interval value is a preset value; When the robot is equipped with an environmental detector, determine the multiple adjustment interval value according to the detection result of the environmental detector.
4. The method for adjusting the boarding position according to claim 3, wherein, The determination of the multiple adjustment interval value according to the detection result of the environmental detector includes: Determine the congestion level in the elevator according to the detection result; Determine the multiple adjustment interval value according to the congestion level, where the multiple adjustment interval value is positively correlated with the congestion level.
5. The method for adjusting the riding position according to claim 1, wherein The minimum value of the multiple range is determined according to the radius of the robot, and the maximum value of the multiple range is determined according to the distance between two diagonal vertices among the four vertices.
6. A device for adjusting the boarding position, characterized in that, The elevator riding position adjustment device is applied to a robot, and the elevator riding position adjustment device includes: A start module, configured to start a navigation task after receiving an elevator riding instruction, where the navigation task uses the target elevator riding point in the elevator as the destination; A first determination module, configured to determine whether the navigation task is successful; A second determination module, configured to determine a temporary elevator riding point in the elevator if the navigation task fails; A change module, configured to change the navigation task to use the temporary elevator riding point as the destination; The start module is further configured to restart the navigation task after the change module changes the navigation task to use the temporary elevator riding point as the destination, and sequentially trigger the operation of other modules until the navigation task is successful; Wherein, the second determination module includes: A feasible area determination sub-module, configured to determine the feasible area in the elevator, where the area of the feasible area is smaller than the total area of the elevator; A temporary elevator riding point determination sub-module, configured to determine the temporary elevator riding point within the feasible area; Wherein, the feasible area determination sub-module includes: A coordinate acquisition unit, configured to acquire the coordinates of the four vertices of the elevator in the map coordinate system; A multiple determination unit for determining an indentation multiple, where the indentation multiple is within a preset multiple range; An area determination unit for determining a feasible area inside the elevator in the map coordinate system according to the coordinates of the four vertices and the indentation multiple.
7. A robot, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, the method according to any one of claims 1 to 5 is implemented.
8. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, the method according to any one of claims 1 to 5 is implemented.
Citation Information
Patent Citations
Robot control method, robot and readable storage medium
CN110861094A
Robot elevator taking guiding method and device, terminal equipment and readable storage medium
CN112537702A