CN117773933A - Collision detection method and device of mobile robot and electronic equipment - Google Patents

Collision detection method and device of mobile robot and electronic equipment Download PDF

Info

Publication number
CN117773933A
CN117773933A CN202311870180.4A CN202311870180A CN117773933A CN 117773933 A CN117773933 A CN 117773933A CN 202311870180 A CN202311870180 A CN 202311870180A CN 117773933 A CN117773933 A CN 117773933A
Authority
CN
China
Prior art keywords
mobile robot
preset
obstacle
chassis
point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311870180.4A
Other languages
Chinese (zh)
Inventor
刘轶凡
吴加春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Hikrobot Co Ltd
Original Assignee
Hangzhou Hikrobot Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Hikrobot Co Ltd filed Critical Hangzhou Hikrobot Co Ltd
Priority to CN202311870180.4A priority Critical patent/CN117773933A/en
Publication of CN117773933A publication Critical patent/CN117773933A/en
Pending legal-status Critical Current

Links

Abstract

The embodiment of the application provides a collision detection method and device of a mobile robot and electronic equipment, and relates to the technical field of robots. Sampling position points in a preset moving path of the mobile robot from the current position of the mobile robot to a path from the end point of the preset moving path to obtain a plurality of position points including the current position and the end point; acquiring obstacle contour information of the contour of an obstacle detected by the mobile robot at the current position under a preset coordinate system; determining motion space description information when the mobile robot is positioned at each position point when traversing to the position point; when traversing to each position point, judging whether the chassis and the executing mechanism collide with the obstacle or not when the mobile robot is positioned at the position point based on the outline information and the motion space description information of the obstacle, and obtaining a collision detection result about the mobile robot and the obstacle. By applying the scheme provided by the embodiment of the application, the operation safety of the mobile robot can be ensured.

Description

Collision detection method and device of mobile robot and electronic equipment
Technical Field
The present disclosure relates to the field of robots, and in particular, to a method and an apparatus for detecting collision of a mobile robot, and an electronic device.
Background
With the rapid development of electronic technology, mobile robots are widely used in various fields, for example, AGVs (Automated Guided Vehicl, also called automatic guided vehicles) are used for carrying goods, and sweeping robots are used for home cleaning and the like.
In general, a mobile robot for performing tasks may include a chassis and an actuator. Wherein the chassis is a moving structure for realizing a mobile robot, for example, a base of the mobile robot, etc.; the actuator is an operation structure mounted on the chassis for performing a specified action, for example, a robot arm of a mobile robot or the like.
The mobile robot may be controlled to move along the moving path while performing a designated task with the mobile robot. However, various obstacles may exist on the moving path of the mobile robot, and if the mobile robot cannot avoid the obstacle, the chassis or the actuator of the mobile robot collides with the obstacle, thereby causing damage to the mobile robot.
Disclosure of Invention
An object of the embodiment of the application is to provide a collision detection method, a device and electronic equipment for a mobile robot, so as to determine a collision detection result of a chassis and an executing mechanism of the mobile robot and an obstacle on a moving path, and ensure operation safety of the mobile robot. The specific technical scheme is as follows:
in a first aspect, an embodiment of the present application provides a collision detection method of a mobile robot, the method including:
sampling position points in a preset moving path of a mobile robot from the current position of the mobile robot to a path from the end point of the preset moving path to obtain a plurality of position points including the current position and the end point;
acquiring obstacle contour information of the contour of the obstacle detected by the mobile robot at the current position under a preset coordinate system;
traversing each position point in the plurality of position points according to the direction from the current position to the end point, and determining motion space description information when the mobile robot is positioned at the position point when traversing to each position point; wherein the motion space description information includes: chassis contour information of the chassis of the mobile robot under the preset coordinate system and spatial contour information of a pose coverage space of an executing mechanism of the mobile robot under the preset coordinate system from the current moment to the process that the executing mechanism executes a preset instruction;
And when traversing to each position point, judging whether the chassis and the executing mechanism collide with the obstacle or not when the mobile robot is positioned at the position point based on the obstacle contour information and the motion space description information, and obtaining a collision detection result about the mobile robot and the obstacle.
Optionally, in a specific implementation manner, the method further includes:
while traversing to each location point, the following steps are performed:
if the collision detection result represents: the chassis and the executing mechanism do not collide with the obstacle, so that the next position point is traversed;
if the collision detection result represents: the chassis and/or the executing mechanism collides with the obstacle, and the position point is the current position, so that the mobile robot is controlled to stop moving;
if the collision detection result represents: the chassis and/or the executing mechanism collides with the obstacle, and the position point is a position point except the current position, and the corresponding relation between the collision distance and the moving speed of the mobile robot is determined based on the distance between the current position and the position point; controlling the chassis to move along the preset moving track according to the moving speed determined based on the corresponding relation, and controlling the executing mechanism to execute the preset instruction; wherein, the collision distance is: and the distance between the position of the mobile robot and the position point.
Optionally, in a specific implementation manner, the method further includes:
when the chassis is detected to meet a preset moving condition, determining a new current position of the mobile robot, and returning to a path from the current position of the mobile robot to the end point of the preset moving path for sampling position points in the preset moving path of the mobile robot; wherein, the preset moving condition includes: moving a specified distance or a specified duration;
when the mobile robot is detected to meet any one of a plurality of preset stopping conditions, controlling the chassis and the executing mechanism to stop moving; wherein the preset stopping condition includes: the distance between the position covered space of the executing mechanism and the outline of the obstacle when the executing mechanism executes the preset instruction is smaller than or equal to a preset distance, the mobile robot moves to the end point, the mobile robot does not move to the end point, and the moving speed of the chassis is 0.
Optionally, in a specific implementation manner, the method further includes:
and outputting a notification message for prompting removal of the obstacle if the distance between the position covered by the pose and the outline of the obstacle when the executing mechanism executes the preset instruction is detected to be smaller than or equal to a preset distance, or if the mobile robot does not move to the end point and the movement speed of the chassis is 0.
Optionally, in a specific implementation manner, the correspondence between the collision distance and the moving speed of the mobile robot is represented by specifying a curve in a two-dimensional coordinate system;
the abscissa of the specified two-dimensional coordinate system represents the collision distance, the ordinate of the specified two-dimensional coordinate system represents the moving speed of the mobile robot, and the abscissa of the intersection point of the curve and the horizontal axis of the specified two-dimensional coordinate system represents the preset stopping distance; the curve comprises a plurality of curve segments, each curve segment represents a deceleration section, the slope of each curve segment is the acceleration of the mobile robot in the deceleration section represented by the curve segment, and in each deceleration section, the collision distance is positively related to the moving speed of the mobile robot;
the preset stopping distance is as follows: when the mobile robot stops moving, the position of the mobile robot is at a preset minimum distance from the position point; the acceleration is not greater than a maximum acceleration of the mobile robot and not less than a minimum acceleration of the mobile robot.
Optionally, in a specific implementation manner, the controlling the executing mechanism to execute the preset instruction includes:
If the distance between the position covered space of the executing mechanism for executing the preset instruction and the outline of the obstacle is larger than the preset executing distance, controlling the executing mechanism to execute the preset instruction;
and if the distance between the position covered space of the executing mechanism and the outline of the obstacle when executing the preset instruction is not greater than the preset executing distance, controlling the executing mechanism to stop executing the preset instruction.
Optionally, in a specific implementation manner, the method for determining chassis contour information includes:
determining a first minimum rectangle projected in a specified plane by a contour surrounding the chassis in the specified plane in a specified plane parallel to a horizontal plane of the preset coordinate system based on first size information of the chassis of the mobile robot, and determining a chassis lowest point coordinate and a chassis highest point coordinate of the contour of the chassis on a specified coordinate axis perpendicular to the specified plane of the preset coordinate system;
and constructing a first cuboid taking the coordinate of the highest point of the chassis and the coordinate of the lowest point of the chassis as high and taking the rectangle of the minimum chassis as the bottom surface in the preset coordinate system, and determining the coordinate of each vertex of the first cuboid under the preset coordinate system as chassis contour information of the contour of the chassis under the preset coordinate system.
Optionally, in a specific implementation manner, the method for determining the spatial profile information includes:
determining a process from the current moment to the execution of the execution mechanism of the mobile robot to finish the preset instruction based on second size information of the execution mechanism of the mobile robot, the pose of the mobile robot at the current moment and the execution action of the execution mechanism indicated by the preset instruction, wherein the pose of the execution mechanism covers a space;
in a designated plane parallel to a horizontal plane of the preset coordinate system, determining a second minimum rectangle which surrounds the projection of the pose coverage space in the designated plane, and determining a pose highest point coordinate and a pose lowest point coordinate of the pose coverage space on a designated coordinate axis perpendicular to the designated plane of the preset coordinate system;
and constructing a second cuboid which takes the highest point coordinate of the pose and the lowest point coordinate of the pose as high and takes the second minimum rectangle as the bottom surface in the preset coordinate system, and determining the coordinates of each vertex of the second cuboid under the preset coordinate system as the process from the current moment to the completion of executing the preset instruction by an executing mechanism of the mobile robot, wherein the pose of the executing mechanism covers the spatial contour information of the space under the preset coordinate system.
In a second aspect, an embodiment of the present application provides a collision detection apparatus of a mobile robot, the apparatus including:
the sampling module is used for sampling position points of paths from the current position of the mobile robot to the end point of the preset moving path in the preset moving path of the mobile robot to obtain a plurality of position points including the current position and the end point;
the obstacle profile information acquisition module is used for acquiring obstacle profile information of the profile of the obstacle detected by the mobile robot at the current position under a preset coordinate system;
the motion space description information acquisition module is used for traversing each position point in the plurality of position points according to the direction from the current position to the end point, and determining motion space description information when the mobile robot is positioned at the position point when traversing to each position point; wherein the motion space description information includes: chassis contour information of the chassis of the mobile robot under the preset coordinate system and spatial contour information of a pose coverage space of an executing mechanism of the mobile robot under the preset coordinate system from the current moment to the process that the executing mechanism executes a preset instruction;
And the judging module is used for judging whether the chassis and the executing mechanism collide with the obstacle or not when the mobile robot is positioned at each position point based on the obstacle contour information and the motion space description information when traversing to each position point, and obtaining a collision detection result about the mobile robot and the obstacle.
Optionally, in a specific implementation manner, the apparatus further includes:
the traversing module is used for, when traversing to each position point, if the collision detection result represents: the chassis and the executing mechanism do not collide with the obstacle, so that the next position point is traversed;
the first control module is used for, when traversing to each position point, if the collision detection result represents that: the chassis and/or the executing mechanism collides with the obstacle, and the position point is the current position, so that the mobile robot is controlled to stop moving;
the relation determining module is used for, when traversing to each position point, if the collision detection result represents: the chassis and/or the executing mechanism collides with the obstacle, and the position point is a position point except the current position, and the corresponding relation between the collision distance and the moving speed of the mobile robot is determined based on the distance between the current position and the position point; controlling the chassis to move along the preset moving track according to the moving speed determined based on the corresponding relation, and controlling the executing mechanism to execute the preset instruction; wherein, the collision distance is: and the distance between the position of the mobile robot and the position point.
Optionally, in a specific implementation manner, the apparatus further includes:
a return module, configured to determine a new current position of the mobile robot when the chassis is detected to meet a preset movement condition, and return to the path of the preset movement of the mobile robot, where the path from the current position of the mobile robot to the end point of the preset movement path performs position point sampling; wherein, the preset moving condition includes: moving a specified distance or a specified duration;
the second control module is used for controlling the chassis and the executing mechanism to stop moving when detecting that the mobile robot meets any one of a plurality of preset stopping conditions; wherein the preset stopping condition includes: the distance between the position covered space of the executing mechanism and the outline of the obstacle when the executing mechanism executes the preset instruction is smaller than or equal to a preset distance, the mobile robot moves to the end point, the mobile robot does not move to the end point, and the moving speed of the chassis is 0.
Optionally, in a specific implementation manner, the apparatus further includes:
and the message output module is used for outputting a notification message for prompting removal of the obstacle if the distance between the position covered space of the executing mechanism and the outline of the obstacle is detected to be smaller than or equal to a preset distance or the moving robot does not move to the end point and the moving speed of the chassis is 0.
Optionally, in a specific implementation manner, the correspondence between the collision distance and the moving speed of the mobile robot is represented by specifying a curve in a two-dimensional coordinate system;
the abscissa of the specified two-dimensional coordinate system represents the collision distance, the ordinate of the specified two-dimensional coordinate system represents the moving speed of the mobile robot, and the abscissa of the intersection point of the curve and the horizontal axis of the specified two-dimensional coordinate system represents the preset stopping distance; the curve comprises a plurality of curve segments, each curve segment represents a deceleration section, the slope of each curve segment is the acceleration of the mobile robot in the deceleration section represented by the curve segment, and in each deceleration section, the collision distance is positively related to the moving speed of the mobile robot;
the preset stopping distance is as follows: when the mobile robot stops moving, the position of the mobile robot is at a preset minimum distance from the position point; the acceleration is not greater than a maximum acceleration of the mobile robot and not less than a minimum acceleration of the mobile robot.
Optionally, in a specific implementation manner, the relationship determining module is specifically configured to:
If the distance between the position covered space of the executing mechanism for executing the preset instruction and the outline of the obstacle is larger than the preset executing distance, controlling the executing mechanism to execute the preset instruction;
and if the distance between the position covered space of the executing mechanism and the outline of the obstacle when executing the preset instruction is not greater than the preset executing distance, controlling the executing mechanism to stop executing the preset instruction.
Optionally, in a specific implementation manner, the motion space description information acquisition module includes a first determination submodule; the first determining submodule is specifically configured to:
determining a first minimum rectangle projected in a specified plane by a contour surrounding the chassis in the specified plane in a specified plane parallel to a horizontal plane of the preset coordinate system based on first size information of the chassis of the mobile robot, and determining a chassis lowest point coordinate and a chassis highest point coordinate of the contour of the chassis on a specified coordinate axis perpendicular to the specified plane of the preset coordinate system;
and constructing a first cuboid taking the coordinate of the highest point of the chassis and the coordinate of the lowest point of the chassis as high and taking the rectangle of the minimum chassis as the bottom surface in the preset coordinate system, and determining the coordinate of each vertex of the first cuboid under the preset coordinate system as chassis contour information of the contour of the chassis under the preset coordinate system.
Optionally, in a specific implementation manner, the motion space description information acquisition module includes a second determination submodule; the second determining sub-module is specifically configured to:
determining a process from the current moment to the execution of the execution mechanism of the mobile robot to finish the preset instruction based on second size information of the execution mechanism of the mobile robot, the pose of the mobile robot at the current moment and the execution action of the execution mechanism indicated by the preset instruction, wherein the pose of the execution mechanism covers a space;
in a designated plane parallel to a horizontal plane of the preset coordinate system, determining a second minimum rectangle which surrounds the projection of the pose coverage space in the designated plane, and determining a pose highest point coordinate and a pose lowest point coordinate of the pose coverage space on a designated coordinate axis perpendicular to the designated plane of the preset coordinate system;
and constructing a second cuboid which takes the highest point coordinate of the pose and the lowest point coordinate of the pose as high and takes the second minimum rectangle as the bottom surface in the preset coordinate system, and determining the coordinates of each vertex of the second cuboid under the preset coordinate system as the process from the current moment to the completion of executing the preset instruction by an executing mechanism of the mobile robot, wherein the pose of the executing mechanism covers the spatial contour information of the space under the preset coordinate system.
In a third aspect, an embodiment of the present application provides an electronic device, including:
a memory for storing a computer program;
and the processor is used for realizing the steps of any method embodiment when executing the program stored in the memory.
In a fourth aspect, embodiments of the present application provide a computer-readable storage medium having a computer program stored therein, which when executed by a processor, implements the steps of any of the method embodiments described above.
In a fifth aspect, the present application embodiment also provides a computer program product comprising instructions which, when run on a computer, cause the computer to perform the steps of any of the method embodiments described above.
The beneficial effects of the embodiment of the application are that:
in the foregoing, in order to obtain the collision detection result of the mobile robot and the obstacle on the preset moving path, the solution provided by the embodiment of the present application may first sample the position point of the path from the current position of the mobile robot to the end point of the preset moving path in the preset moving path of the mobile robot, so as to obtain a plurality of position points including the current position and the end point; then, obtaining obstacle contour information of the contour of the obstacle detected by the mobile robot at the current position under a preset coordinate system; then, traversing each position point in the plurality of position points according to the direction from the current position to the end point, so that when traversing to each position point, the motion space description information of the mobile robot when the mobile robot is positioned at the position point can be determined, wherein the motion space description information comprises chassis contour information of the chassis of the mobile robot under a preset coordinate system and space contour information of the pose coverage space of the executing mechanism under the preset coordinate system from the current moment to the process that the executing mechanism of the mobile robot executes the preset instruction; and when traversing to each position point, judging whether the mobile robot is positioned at the position point based on the barrier contour information and the motion space description information, and judging whether the chassis and the executing mechanism collide with the barrier or not to obtain a collision detection result about the mobile robot and the barrier.
Therefore, by applying the scheme provided by the embodiment of the application, the collision detection result of the mobile robot and the obstacle can be determined by determining the outline information of the obstacle and the motion space description information of the mobile robot at each position point according to the current position of the mobile robot in the process that the mobile robot moves along the preset moving path, so that the moving strategy of the mobile robot can be planned through the collision detection result, the collision of the mobile robot and the obstacle on the path is avoided, and the safety of the mobile robot in the moving process is improved.
Further, since the collision detection result is determined based on the obstacle profile information and the movement space description information including the chassis profile information of the profile of the chassis of the mobile robot and the spatial profile information of the actuator. Therefore, the obtained collision detection result comprehensively considers the situation that the chassis and/or the actuating mechanism of the mobile robot collide with the obstacle, so that the chassis and the obstacle of the mobile robot can be prevented from colliding, and the situation that the actuating mechanism of the mobile robot collides with the obstacle due to the execution of a preset instruction can be prevented, and the safety of the mobile robot in the moving process is further improved.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following description will briefly introduce the drawings that are required to be used in the embodiments or the description of the prior art, and it is obvious that the drawings in the following description are only some embodiments of the present application, and other embodiments may also be obtained according to these drawings to those skilled in the art.
Fig. 1 is a schematic flow chart of a collision detection method of a mobile robot according to an embodiment of the present application;
fig. 2 (a) is a schematic diagram of obstacle profile information provided in an embodiment of the present application;
FIG. 2 (b) is a schematic diagram of chassis contour information provided in an embodiment of the present application;
fig. 3 is a schematic diagram of a correspondence relationship between a collision distance and a moving speed of a mobile robot according to an embodiment of the present disclosure;
fig. 4 (a) is another schematic diagram of the correspondence relationship between the collision distance and the moving speed of the mobile robot according to the embodiment of the present application;
fig. 4 (b) is a schematic diagram of a correspondence relationship between a collision distance and a moving speed of a mobile robot according to an embodiment of the present disclosure;
fig. 5 is a schematic view of a first cuboid provided in an embodiment of the present application;
Fig. 6 is a schematic diagram of a three-dimensional convex bounding box of a mobile robot according to an embodiment of the present disclosure;
FIG. 7 is a schematic flow chart of a barrier control process according to an embodiment of the present disclosure;
fig. 8 is a schematic structural diagram of a collision detection device of a mobile robot according to an embodiment of the present disclosure;
fig. 9 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are only some, but not all, of the embodiments of the present application. Based on the embodiments herein, a person of ordinary skill in the art would be able to obtain all other embodiments based on the disclosure herein, which are within the scope of the disclosure herein.
The mobile robot may be controlled to move along the moving path while performing a designated task with the mobile robot. However, various obstacles may exist on the moving path of the mobile robot, and if the mobile robot cannot avoid the obstacle, the chassis or the actuator of the mobile robot collides with the obstacle, thereby causing damage to the mobile robot.
In order to solve the above technical problems, an embodiment of the present application provides a collision detection method for a mobile robot.
The method can be suitable for various application scenes in which collision detection is required for the mobile robot, for example, in a freight center, the collision detection is carried out on the bin robot which performs the picking and placing tasks; in a factory, collision detection and the like are performed on an unmanned forklift in operation.
Also, the method may be applied to a mobile robot itself, for example, in which a processing module is mounted to perform the method; the present invention can also be applied to an electronic device capable of communicating with a mobile robot, for example, a management platform or the like; when the execution subject of the method is an electronic device, the electronic device may be an independent electronic device or may be a device cluster composed of a plurality of electronic devices. For clarity of the text, the execution subject of the method will be referred to below simply as an electronic device.
Based on this, the embodiment of the present application does not specifically limit the application scenario and execution subject of the method.
The collision detection method of the mobile robot provided by the embodiment of the application can comprise the following steps:
sampling position points in a preset moving path of a mobile robot from the current position of the mobile robot to a path from the end point of the preset moving path to obtain a plurality of position points including the current position and the end point;
Acquiring obstacle contour information of the contour of the obstacle detected by the mobile robot at the current position under a preset coordinate system;
traversing each position point in the plurality of position points according to the direction from the current position to the end point, and determining motion space description information when the mobile robot is positioned at the position point when traversing to each position point; wherein the motion space description information includes: chassis contour information of the chassis of the mobile robot under the preset coordinate system and spatial contour information of a pose coverage space of an executing mechanism of the mobile robot under the preset coordinate system from the current moment to the process that the executing mechanism executes a preset instruction;
and when traversing to each position point, judging whether the chassis and the executing mechanism collide with the obstacle or not when the mobile robot is positioned at the position point based on the obstacle contour information and the motion space description information, and obtaining a collision detection result about the mobile robot and the obstacle.
In the foregoing, in order to obtain the collision detection result of the mobile robot and the obstacle on the preset moving path, the solution provided by the embodiment of the present application may first sample the position point of the path from the current position of the mobile robot to the end point of the preset moving path in the preset moving path of the mobile robot, so as to obtain a plurality of position points including the current position and the end point; then, obtaining obstacle contour information of the contour of the obstacle detected by the mobile robot at the current position under a preset coordinate system; then, traversing each position point in the plurality of position points according to the direction from the current position to the end point, and determining motion space description information when the mobile robot is positioned at the position point when traversing to each position point, wherein the motion space description information comprises chassis contour information of the chassis of the mobile robot under a preset coordinate system and space contour information of the position covering space of the actuating mechanism under the preset coordinate system in the process from the current moment to the moment when the actuating mechanism of the mobile robot executes a preset instruction; and when traversing to each position point, judging whether the mobile robot is positioned at the position point based on the barrier contour information and the motion space description information, and judging whether the chassis and the executing mechanism collide with the barrier or not to obtain a collision detection result about the mobile robot and the barrier.
Therefore, by applying the scheme provided by the embodiment of the application, the collision detection result of the mobile robot and the obstacle can be determined by determining the outline information of the obstacle and the motion space description information of the mobile robot at each position point according to the current position of the mobile robot in the process of controlling the mobile robot to move along the preset moving path, so that the moving strategy of the mobile robot can be planned through the collision detection result, the collision of the mobile robot and the obstacle on the path is avoided, and the safety of the mobile robot in the moving process is improved.
Further, since the collision detection result is determined based on the obstacle profile information and the movement space description information including the chassis profile information of the profile of the chassis of the mobile robot and the spatial profile information of the actuator. Therefore, the obtained collision detection result comprehensively considers the situation that the chassis and/or the actuating mechanism of the mobile robot collide with the obstacle, so that the chassis and the obstacle of the mobile robot can be prevented from colliding, and the situation that the actuating mechanism of the mobile robot collides with the obstacle due to the execution of a preset instruction can be prevented, and the safety of the mobile robot in the moving process is further improved.
Next, a collision detection method of a mobile robot according to an embodiment of the present application will be specifically described with reference to the accompanying drawings.
Fig. 1 is a schematic flow chart of a collision detection method of a mobile robot according to an embodiment of the present application, as shown in fig. 1, the method may include the following steps S101 to S104.
S101: sampling position points in a preset moving path of the mobile robot from the current position of the mobile robot to a path from the end point of the preset moving path to obtain a plurality of position points including the current position and the end point;
to meet business needs, a mobile robot may include a chassis and an actuator.
The chassis of the mobile robot consists of a chassis structural member, a driving wheel group and a driving unit. The electronic equipment can control the driving wheel group to move through the driving unit, so that the mobile robot is instructed to move, rotate and the like.
The actuator is an additional mechanical mechanism device designed based on the chassis of the mobile robot. The electronic device may instruct the actuator to perform various types of actions for fulfilling the business needs. Such as lifting actuators, transplanting actuators, forking actuators, clamping actuators, grabbing actuators, etc.
The chassis and the actuator can also be different for various mobile robots of different service types. For example, for an unmanned forklift, the base is the body of the unmanned forklift, and the actuator is the fork mechanism of the unmanned forklift; aiming at the bin robot, the base is the bin of the bin robot, and the executing mechanism is a clamping mechanism of the bin robot.
When executing business operation, the mobile robot can move in the operation area according to a preset moving path, and in the moving process, an executing mechanism of the mobile robot can execute an action for completing the business operation.
Alternatively, the electronic device may first determine a preset movement path of the mobile robot to perform the business job. Then, the electronic device may issue a movement instruction carrying a preset movement path to the mobile robot, and issue a preset instruction about an action of completing the business operation. In this way, the mobile robot can receive the movement instruction and the preset instruction, and further, the chassis of the mobile robot can move according to the preset movement path, and in the moving process, the executing mechanism of the mobile robot can execute the action indicated by the preset instruction.
Optionally, the electronic device may issue a movement instruction carrying a path start point, a plurality of service operation points, and a wheel diameter end point to the mobile robot, and issue a preset instruction regarding an action of completing the service operation. In this way, the mobile robot can receive the moving instruction and the preset instruction, and then the mobile robot can automatically plan the moving path to obtain the preset path and report the preset path to the electronic equipment. Then, the chassis of the mobile robot may move according to a preset moving path, and in the moving process, the executing mechanism of the mobile robot may execute the action indicated by the preset instruction.
The preset instructions generally include action instructions of all actions required to be executed by an execution mechanism of the mobile robot to complete the business task, and thus, the preset instructions are used for indicating all actions required to be executed by the mobile robot to complete the business task. For example, when the mobile robot is an unmanned forklift, the preset instruction is for the task of taking goods, and therefore, the preset instruction may include: the action instruction of lifting or lowering the fork tooth mechanism to the first height, the action instruction of lifting or lowering the fork tooth mechanism to the second height and the action instruction of lifting or lowering the fork tooth mechanism to the first height, lifting or lowering the fork tooth mechanism of the unmanned forklift to the first height, lifting or lowering the fork tooth mechanism to the second height and lifting or lowering the fork tooth mechanism to the designated goods on the goods shelf, thereby completing the business task of lifting or lowering the goods. Therefore, through the moving instruction and the preset instruction, the unmanned forklift can realize moving operation.
In order to avoid collision between the mobile robot and various obstacles during execution of the business operation, collision detection may be performed for the mobile robot to obtain a collision detection result of the mobile robot, and then the mobile robot is controlled according to the collision detection result.
Specifically, in a preset moving path of the mobile robot, position point sampling can be performed on a path from a current position of the mobile robot to an end point of a preset moving path point to obtain a plurality of position points including the current position and the end point of the path, and then each position point is traversed to determine a collision detection result when the mobile robot is located at each position point. For smooth travel, a path from the current position of the mobile robot to the end point of the preset moving path point in the preset moving path may be referred to as a front path.
The current position of the mobile robot may be the starting point of the preset moving path, or may be the current position of the mobile robot in the preset moving path, which is reasonable, and is not specifically limited in the embodiment of the present application.
Alternatively, the current position of the mobile robot and the end point of the preset moving path may be respectively determined as the position points, and then, from the current position, each position point is sequentially determined in the path from the current position to the end point in the preset moving path of the mobile robot according to the preset sampling interval, so as to obtain a plurality of position points including the current position and the end point. The preset sampling interval can be set according to actual needs, for example, 5 meters, 10 meters, etc.; it is also reasonable to set the path length between the current position and the end point and the preset number of position points, which is not specifically limited in the embodiment of the present application.
For example, if the preset sampling interval is 5 meters and the path length of the path in front of the current position is 99 meters, the position point is sampled from the current position, and after the 19 position points are determined, the remaining path length between the 19 th position point and the path end point of the preset moving path is 4 meters, and is smaller than the preset sampling interval, the path end point can be determined as the last position point.
S102: acquiring obstacle contour information of the contour of an obstacle detected by the mobile robot at the current position under a preset coordinate system;
the mobile robot can sense the environmental obstacle on the front path, and further, environmental obstacle sensing information comprising three-dimensional description information of the obstacle is obtained, wherein the three-dimensional description information of the obstacle comprises the position of the obstacle and the space occupied by the outline of the obstacle.
When the mobile robot detects the environmental obstacle sensing information, in order to perform obstacle detection on the mobile robot, the obstacle contour information of the contour of the obstacle in the preset coordinate system may be determined according to the position and the size of the obstacle included in the environmental obstacle sensing information.
The preset coordinate system may be a preset global coordinate system or a preset vehicle body coordinate system, which is reasonable, and is not specifically limited in the embodiment of the present application. The preset global coordinate system is a coordinate system established based on a working space of the mobile robot; the preset vehicle body coordinate system is a right hand coordinate system in which the center of motion of the mobile robot is the origin and the positive direction of the vehicle body of the mobile robot is the direction along the X axis.
Optionally, when the execution body in the embodiment of the present application is a mobile robot, when the mobile robot detects environmental obstacle sensing information, the mobile robot may determine, according to three-dimensional description information of an obstacle, obstacle profile information of a profile of the obstacle in a preset coordinate system.
Optionally, when the execution body of the embodiment of the present application is an electronic device, when the mobile robot detects environmental obstacle sensing information, the mobile robot may send the environmental obstacle sensing information to the electronic device, so that the electronic device may receive the environmental obstacle sensing information, and determine, based on three-dimensional description information of the obstacle, obstacle profile information of a profile of the obstacle in a preset coordinate system.
The coordinates of the contour of the obstacle in the preset coordinate system can be used for representing the contour information of the obstacle, wherein the contour information of the obstacle is in the preset coordinate system. Alternatively, the coordinates of each vertex of the contour of the obstacle in the preset coordinate system may be used to characterize the obstacle contour information of the contour of the obstacle in the preset coordinate system.
As shown in fig. 2 (a), the preset coordinate system is a preset global coordinate system, the size of the space occupied by the obstacle may be represented by a minimum cube including the contour of the obstacle, and then, according to the position information of the obstacle, it is determined that the space occupied by the contour of the obstacle under the preset global coordinate system is cube 210, and then, the contour information of the obstacle under the preset global coordinate system may be coordinates of 8 vertices of cube 210.
Furthermore, the electronic device may acquire obstacle profile information of the profile of the obstacle detected by the mobile robot at the current position under the preset coordinate system, and then may perform collision detection according to the obstacle profile information.
S103: traversing each position point in the plurality of position points according to the direction from the current position to the end point, and determining motion space description information when the mobile robot is positioned at the position point when traversing to each position point;
wherein the motion space description information includes: chassis contour information of the chassis of the mobile robot under a preset coordinate system, and space contour information of the pose coverage space of the executing mechanism under the preset coordinate system from the current moment to the process that the executing mechanism of the mobile robot executes the preset instruction.
After the obstacle contour information of the contour of the obstacle under the preset coordinate system is obtained, each of a plurality of position points can be traversed in sequence according to the direction from the current position to the end point, and when each position point is traversed, the motion space description information of the mobile robot is determined when the mobile robot is located at the position point.
The motion space description information may include chassis contour information of the chassis of the mobile robot in a preset coordinate system, and space contour information of the pose coverage space of the execution mechanism in the preset coordinate system from the current moment to the process that the execution mechanism of the mobile robot executes the preset instruction. Alternatively, the coordinates of each vertex of the contour of the obstacle in the preset coordinate system may be used to characterize the obstacle contour information of the contour of the obstacle in the preset coordinate system.
Further, to determine the movement space description information of the mobile robot, the electronic device may first acquire structural size information of the mobile robot, including first size information of a chassis of the mobile robot, and second size information of an actuator. Further, for each location point, chassis contour information of the contour of the chassis of the mobile robot under a preset coordinate system when the mobile robot is located at the location point may be determined according to the first size information of the chassis.
Illustratively, as shown in fig. 2 (b), the preset coordinate system is a preset global coordinate system, and the size of the space occupied by the outline of the chassis of the mobile robot can be represented by a minimum cuboid including the outline. When the mobile robot is located at the position point a, the space occupied by the outline of the chassis is a cuboid 220, and then chassis outline information of the outline of the chassis under a preset coordinate system can be coordinates of 8 vertexes of the cuboid 220; when the mobile robot is located at the position point B, the space occupied by the outline of the chassis is the cuboid 230, and then the chassis outline information of the outline of the chassis under the preset coordinate system may be the coordinates of 8 vertices of the cuboid 230.
Alternatively, since the shape of the chassis of the mobile robot may be irregular, and thus in order to save computational resources, the chassis profile information may be represented using a minimum regular three-dimensional volume that can include the chassis profile information, e.g., cubes, spheres, etc.
Since in order to execute the business operation, in the process that the chassis of the mobile robot moves according to the preset moving path, the executing mechanism of the mobile robot needs to execute the preset instruction, that is, execute each action indicated by the preset instruction. In addition, as the pose of the executing mechanism can be changed continuously in the process of executing the preset instruction, when the executing mechanism is in any pose, if the executing mechanism collides with an obstacle, the mobile robot collides with the obstacle. That is, the space covered by each pose that the executing mechanism can present in the process of executing the preset instruction is the space that the executing mechanism can reach, and when any space in each space that the executing mechanism can reach is overlapped with the space occupied by the outline of the obstacle, the executing mechanism of the mobile robot collides with the obstacle.
Based on the above, when determining the spatial profile information of the actuator, the pose coverage space of the actuator can be determined from the current moment to the time when the actuator of the mobile robot completes the execution of the preset instruction according to the second size information of the actuator and the preset instruction. The pose coverage space of the executing mechanism comprises a space covered by any pose which can be presented by the executing mechanism in the process of executing a preset instruction.
For example, when the mobile robot is a compound robot, the actuator of the compound robot is a mechanical arm of the compound robot. When the mechanical arm is static, the space occupied by the mechanical arm is the space occupied by the contour of the mechanical arm; when the mechanical arm executes a preset instruction, the pose of the mechanical arm is changed continuously, and when the pose of the mechanical arm is changed each time, the space of the mechanical arm covered by the mechanical arm is also changed. Therefore, for the compound robot, the space which can be covered by the mechanical arm is the space covered by all the pose of the mechanical arm from the current moment to the process that the mechanical arm executes the preset instruction. If the preset instruction indicates that the mechanical arm rotates for one circle, the space covered by the mechanical arm is the space covered by all the pose positions in the process of rotating the mechanical arm for one circle.
Based on the above, when traversing to each position point, chassis contour information of the chassis of the mobile robot under a preset coordinate system when the mobile robot is positioned at the position point and space contour information of the pose coverage space of the executing mechanism under the preset coordinate system from the current moment to the process that the executing mechanism of the mobile robot executes the preset instruction can be determined, so that motion space description information of the mobile robot is obtained.
Alternatively, since the shape of the pose coverage space of the actuator may be irregular from the current moment to the time when the actuator of the mobile robot performs the preset instruction, in order to save calculation resources, the space profile information of the actuator may be represented by using a minimum regular three-dimensional space capable of surrounding the pose coverage space, for example, a cube, a sphere, etc., under the preset coordinate system.
S104: when traversing to each position point, judging whether the chassis and the executing mechanism collide with the obstacle or not when the mobile robot is positioned at the position point based on the outline information and the motion space description information of the obstacle, and obtaining a collision detection result about the mobile robot and the obstacle.
When traversing to each position point, the electronic device can judge whether the chassis of the mobile robot collides with the obstacle or not when the mobile robot is positioned at the position point according to the acquired outline information of the obstacle and the motion space description information of the mobile robot, and judge whether the actuating mechanism of the mobile robot collides with the obstacle or not, so that a collision detection result about the mobile robot and the obstacle is obtained.
In the embodiment of the application, since the mobile robot includes the chassis and the executing mechanism, the collision of the mobile robot with the obstacle means that: the chassis and/or the actuators of the mobile robot collide with obstacles. That is, if the chassis of the mobile robot collides with an obstacle and the actuator of the mobile robot does not collide with the obstacle, or if the actuator of the mobile robot collides with the obstacle and the chassis of the mobile robot does not collide with the obstacle; or the chassis of the mobile robot collides with the obstacle, and the actuating mechanism of the mobile robot collides with the obstacle, so that the mobile robot collides with the obstacle; and when the chassis of the mobile robot does not collide with the obstacle and the actuating mechanism of the mobile robot does not collide with the obstacle, the mobile robot does not collide with the obstacle.
Specifically, in this embodiment of the present application, when traversing to each location point, it may be determined whether there is a region of overlap between chassis contour information of a chassis of the mobile robot under a preset coordinate system and barrier contour information of a contour of a barrier under the preset coordinate system when the mobile robot is located at the location point, and whether there is a region of overlap between the space contour information of a pose coverage space of the actuating mechanism under the preset coordinate system and the barrier contour information of the contour of the barrier under the preset coordinate system from the current moment to the process that the actuating mechanism of the mobile robot has executed a preset instruction is determined, and then, whether the chassis of the mobile robot and the actuating mechanism collide with the barrier is determined according to the determination result.
Further, for each position point, if when the mobile robot is located at the position point, the chassis contour information and the obstacle contour information do not have a superposition area and the space contour information and the obstacle contour information do not have a superposition area, then the chassis obstacle of the mobile robot does not collide and the actuating mechanism does not collide with the obstacle, and then the collision detection result is that the mobile robot does not collide with the obstacle;
For each position point, if an overlapping area exists between the chassis contour information and the obstacle contour information and an overlapping area exists between the space contour information and the obstacle contour information when the mobile robot is positioned at the position point, the chassis and the executing mechanism of the mobile robot collide with the obstacle, and the collision detection result is that the mobile robot collides with the obstacle;
for each position point, if the chassis contour information and the obstacle contour information have no overlapping area and the space contour information and the obstacle contour information have overlapping areas when the mobile robot is positioned at the position point, an actuating mechanism of the mobile robot collides with the obstacle, and a collision detection result is that the mobile robot collides with the obstacle;
for each position point, if an overlapping area exists between the chassis contour information and the obstacle contour information and an overlapping area does not exist between the spatial contour information and the obstacle contour information when the mobile robot is positioned at the position point, the chassis of the mobile robot collides with the obstacle, and the collision detection result is that the mobile robot collides with the obstacle.
Alternatively, when determining the collision detection result regarding the mobile robot and the obstacle, the electronic device may output the above-described collision detection result so that the worker looks up the collision detection result.
Therefore, by applying the scheme provided by the embodiment of the application, the collision detection result of the mobile robot and the obstacle can be determined by determining the outline information of the obstacle and the motion space description information of the mobile robot at each position point according to the current position of the mobile robot in the process of controlling the mobile robot to move along the preset moving path, so that the moving strategy of the mobile robot can be planned through the collision detection result, the collision of the mobile robot and the obstacle on the path is avoided, and the safety of the mobile robot in the moving process is improved.
Further, since the collision detection result is determined based on the obstacle profile information and the movement space description information including the chassis profile information of the profile of the chassis of the mobile robot and the spatial profile information of the actuator. Therefore, the obtained collision detection result comprehensively considers the situation that the chassis and/or the actuating mechanism of the mobile robot collide with the obstacle, so that the chassis and the obstacle of the mobile robot can be prevented from colliding, and the situation that the actuating mechanism of the mobile robot collides with the obstacle due to the execution of a preset instruction can be prevented, and the safety of the mobile robot in the moving process is further improved.
After determining the collision detection result with respect to the mobile robot and the obstacle, a control strategy with respect to the mobile robot may be determined according to the determined collision detection result.
Optionally, in a specific implementation manner, the method for detecting collision of a mobile robot provided in the present application may further include the following steps 11 to 13:
11: while traversing to each position point, if the collision detection result represents: the chassis and the executing mechanism do not collide with the obstacle, so that the next position point is traversed;
12: while traversing to each position point, if the collision detection result represents: the chassis and/or the executing mechanism collides with the obstacle, and the position point is the current position, so that the mobile robot is controlled to stop moving;
13: while traversing to each position point, if the collision detection result represents: the chassis and/or the executing mechanism collides with the obstacle, and the position point is a position point except the current position, and the corresponding relation between the collision distance and the moving speed of the mobile robot is determined based on the distance between the current position and the position point; controlling the chassis to move along a preset moving track according to the moving speed determined based on the corresponding relation, and controlling the executing mechanism to execute a preset instruction; wherein, collision distance is: distance between the position of the mobile robot and the position point.
In this specific implementation manner, when traversing to each position point, if the collision detection result characterizes: the chassis and the executing mechanism do not collide with the obstacle, and the next position point is traversed.
Since the determined respective position points include the current position of the mobile robot, when traversing the respective position points in a direction from the current position to the end point of the preset movement path, the first traversed point is the current position. If the mobile robot is located at the current position, the collision detection result about the mobile robot and the obstacle is characterized by: the chassis and/or the actuator collides with an obstacle, and then the mobile robot may be immediately controlled to stop moving in order to avoid further damage to the mobile robot. The control of the mobile robot to stop motion is: and controlling the base of the mobile robot to stop moving, and controlling the executing mechanism of the mobile robot to stop executing the preset instruction.
When traversing to each position point except the current position, if the collision detection result represents: if the chassis and/or the executing mechanism collides with the obstacle, in order to avoid the collision between the mobile robot and the obstacle, the corresponding relation between the collision distance and the moving speed of the mobile robot can be determined based on the distance between the current position and the position point; wherein, collision distance is: distance between the position of the mobile robot and the position point.
That is, in order to avoid collision between the mobile robot and the obstacle, the distance between the points where the mobile robot collides with the obstacle and the collision distance between the position of the mobile robot and the points may be represented according to the current position and the collision detection result, and a reasonable speed plan may be performed on the mobile robot to obtain a correspondence between the collision distance and the movement speed of the mobile robot, so that the chassis of the mobile robot may be controlled to move along the preset movement track according to the movement speed determined based on the correspondence, and in the process of controlling the movement of the mobile robot, the execution mechanism may be controlled to execute the preset instruction. Therefore, by utilizing the corresponding relation between the collision distance and the moving speed of the mobile robot, the chassis of the mobile robot can be decelerated when meeting the obstacle, and the safety obstacle stopping of the mobile robot can be realized.
Specifically, during the movement of the mobile robot, the electronic device may acquire a collision distance between the mobile robot and the location point, and then determine, in the correspondence, a target movement speed corresponding to the collision distance, and issue, to the mobile robot, a control instruction indicating that the mobile robot moves according to the target movement speed, so that the mobile robot may receive the control instruction and move according to the target movement speed indicated by the control instruction. Further, as the collision distance decreases, the moving speed of the mobile robot decreases, thereby realizing obstacle meeting deceleration of the mobile robot.
Above, for each position point, if the mobile robot is located at the position point, when the chassis and/or the executing mechanism of the mobile robot collides with the obstacle, the position point can be determined as the collision point, then, according to the distance between the current position of the mobile robot and the collision point, the collision distance between the position of the mobile robot and the collision point in the process of moving the mobile robot to the collision point is determined, and the moving speed of the mobile robot corresponding to the collision distance is determined, so that the corresponding relation between the collision distance and the moving speed of the mobile robot is obtained, and therefore, by reasonably planning the speed of the mobile robot, the mobile robot can be controlled to stop moving before reaching the collision point, and further, the collision between the mobile robot and the obstacle is avoided. The process of ensuring that the mobile robot stops moving before reaching the collision point may be referred to as obstacle-stopping control of the mobile robot. That is, so-called barrier control is: and when an obstacle exists on the motion track of the moving object, ensuring that the moving object stops in front of the obstacle and does not collide with the obstacle.
Alternatively, the mobile robot may be controlled to perform uniform deceleration motion according to a preset acceleration from the current position, and further, the correspondence between the collision distance and the moving speed of the mobile robot may be represented by specifying a straight line in a two-dimensional coordinate system.
As shown in fig. 3, the abscissa of the specified two-dimensional coordinate system represents the collision distance, the ordinate of the specified two-dimensional coordinate system represents the moving speed of the mobile robot, the slope of the straight line represents the preset acceleration, and the slope is greater than 0; the abscissa n of the intersection point of the straight line and the transverse axis of the appointed two-dimensional coordinate system is a preset stopping distance; the preset stopping distance is as follows: when the mobile robot stops moving, the preset minimum distance between the position of the mobile robot and the position point can be set according to actual needs, for example, can be 2 meters, 5 meters and the like, which are reasonable, and the method is not particularly limited in the embodiment of the application. Further, the mobile robot is controlled to move along the preset moving path according to the corresponding relation, so that the collision distance between the mobile robot and the position point is continuously reduced as the mobile robot gradually approaches the position point, and the moving speed of the mobile robot is continuously reduced; when the collision distance is reduced to n, the moving speed of the mobile robot is reduced to 0, and the movement is stopped.
In order to avoid the influence of the uniform deceleration motion for a long time on the equipment performance of the mobile robot, the mobile robot can be controlled to perform multi-stage deceleration motion from the current position.
Based on this, in an optional specific implementation manner, the correspondence between the collision distance and the moving speed of the mobile robot is represented by specifying a curve in a two-dimensional coordinate system;
wherein, the abscissa of the specified two-dimensional coordinate system represents the collision distance, the ordinate of the specified two-dimensional coordinate system represents the moving speed of the mobile robot, and the abscissa of the intersection point of the curve and the horizontal axis of the specified two-dimensional coordinate system represents the preset stopping distance; the curve comprises a plurality of curve sections, each curve section represents a deceleration section, the slope of each curve section is the acceleration of the mobile robot in the deceleration section represented by the curve section, and in each deceleration section, the collision distance is positively related to the moving speed of the mobile robot;
the preset stopping distance is as follows: when the mobile robot stops moving, the position of the mobile robot is at a preset minimum distance from the position point; the acceleration is not greater than the maximum acceleration of the mobile robot and not less than the minimum acceleration of the mobile robot.
In this specific implementation manner, a preset minimum distance between a position where the mobile robot is located and a position point where the mobile robot collides with an obstacle when the mobile robot stops moving may be set as the preset stopping distance.
In order to avoid the influence of the uniform deceleration motion performed for a long time on the device performance of the mobile robot, a correspondence relationship between the collision distance and the moving speed of the mobile robot including a plurality of deceleration sections may be constructed, and in each deceleration section, the collision distance is positively correlated with the moving speed of the mobile robot, that is, the moving speed of the mobile robot decreases with a decrease in the collision distance for each deceleration section. Thus, by the multi-stage deceleration, the mobile robot can be controlled to stop moving when the distance between the mobile robot and the position point is the preset stopping distance.
A specified two-dimensional coordinate system may be constructed, wherein an abscissa of the specified two-dimensional coordinate system represents the collision distance and an ordinate of the specified two-dimensional coordinate system represents the moving speed of the mobile robot.
Then, the correspondence between the collision distance of the mobile robot and the moving speed of the mobile robot is identified by using a curve in the specified two-dimensional coordinate system, and the preset stopping distance can be represented by a curve in the specified two-dimensional coordinate system, and the abscissa of the intersection point of the curve and the horizontal axis of the specified two-dimensional coordinate system.
Wherein the curve includes a plurality of curve segments, each curve segment characterizing a deceleration interval. For each curve segment, the slope of the curve segment is the acceleration of the mobile robot in the deceleration interval represented by the curve segment, and in order to protect the equipment performance of the mobile robot, the acceleration may be not greater than the maximum acceleration of the mobile robot and not less than the minimum acceleration of the mobile robot. The acceleration in each deceleration section may be the same or different.
In this way, by setting the correspondence relationship between the collision distance including a plurality of deceleration sections and the moving speed of the mobile robot, it is possible to realize the obstacle-stopping control of the mobile robot while satisfying the device performance requirements of the mobile robot.
As shown in fig. 4 (a), the abscissa of the coordinate system represents the collision distance, and the ordinate represents the moving speed of the mobile robot. The abscissa a of the intersection point of the curve and the transverse axis of the appointed two-dimensional coordinate system is a preset stopping distance; the curve includes a plurality of curve segments (a, b), curve segments (b, c), and curve segments (c, d). Wherein, the deceleration starting point of the deceleration section A is b, the deceleration ending point is a, and the target acceleration of the mobile robot in the deceleration section A is a 1 The method comprises the steps of carrying out a first treatment on the surface of the The deceleration starting point of the deceleration section B is c, the deceleration ending point is d, and the target acceleration of the mobile robot in the deceleration section B is a 2 The method comprises the steps of carrying out a first treatment on the surface of the The deceleration starting point of the deceleration section C is d, the deceleration ending point is C, and the target acceleration of the mobile robot in the deceleration section C is a 3
Next, a method of constructing the correspondence relationship between the collision distance and the moving speed of the mobile robot will be described with reference to fig. 4 (a).
For the deceleration section A, the collision distance range (a, b) corresponding to the deceleration section and the acceleration a of the mobile robot in the deceleration section can be determined 1 And the moving speed 0 of the deceleration stop point of the mobile robot in the deceleration section, then the moving speed of the mobile robot corresponding to each collision distance in the deceleration section a can be calculated according to the collision distance range, the acceleration and the moving speed of the deceleration stop point, so as to obtain the sub-corresponding relation between the collision distance and the moving speed of the mobile robot in the deceleration section and the moving speed v of the deceleration starting point of the deceleration section 1
For the deceleration section B, the collision distance range (B, c) corresponding to the deceleration section and the acceleration a of the mobile robot in the deceleration section can be determined 2 And a moving speed v of the mobile robot at a deceleration termination point of the deceleration section 1 Then, the moving speed of the mobile robot corresponding to each collision distance in the deceleration section B can be calculated according to the collision distance range, the acceleration and the moving speed of the deceleration ending point, and the sub-corresponding relation between the collision distance and the moving speed of the mobile robot in the deceleration section and the moving speed v of the deceleration starting point of the deceleration section can be obtained 2
For the deceleration section C, the collision distance range (C, d) corresponding to the deceleration section and the acceleration a of the mobile robot in the deceleration section can be determined 3 The moving speed v of the moving robot at the deceleration termination point of the deceleration section 2 And a moving speed v of the mobile robot at a deceleration start point of the deceleration section 3 Then, the sub-correspondence relationship between the collision distance and the moving speed of the moving robot in the deceleration section can be obtained by calculating the moving speed of the moving robot corresponding to each collision distance in the deceleration section C based on the collision distance range, the acceleration, the moving speed of the moving robot at the deceleration start point, and the moving speed of the moving robot at the deceleration end point. When the collision distance is greater than d, the moving speed of the mobile robot is kept as v 3
After determining the sub-correspondence between the collision distance and the moving speed of the mobile robot in each deceleration section, the correspondence between the collision distance and the moving speed of the mobile robot can be obtained. By setting the corresponding relation between the collision distance comprising a plurality of deceleration intervals and the moving speed of the mobile robot, the obstacle stopping control of the mobile robot can be realized under the condition of meeting the equipment performance requirement of the mobile robot.
Alternatively, a constant speed interval may exist between every two adjacent deceleration intervals, that is, a collision distance exists between every two adjacent deceleration intervals corresponding to the moving speed of the fixed mobile robot. In this case, however, the deceleration end point of the preceding deceleration section and the deceleration start point of the following deceleration section may be different in every adjacent two deceleration sections. In this way, for each two adjacent deceleration intervals, the collision distance range between the deceleration ending point of the previous deceleration interval and the deceleration starting point of the next deceleration interval can be determined, and further, when the collision distance is within the collision distance range, the moving speed of the mobile robot is determined to be the moving speed corresponding to the deceleration ending point of the previous deceleration interval, and when the collision distance is within the collision distance range, the sub-corresponding relation between the collision distance and the moving speed of the mobile robot is obtained. Since the moving speed of the mobile robot is kept constant in this collision distance range, the collision distance range may be referred to as a constant velocity section. In addition, the moving speed of the mobile robot does not change with the change of the collision distance in each uniform speed section.
As shown in fig. 4 (b), the curve includes three deceleration sections, i.e., a deceleration section D (E, F), a deceleration section E (g, h), and a deceleration section F (i, j); wherein, the deceleration ending point of the deceleration section D is e, the deceleration starting point is f, and the target acceleration of the mobile robot in the deceleration section D is a 4 The method comprises the steps of carrying out a first treatment on the surface of the The deceleration ending point of the deceleration section E is g, the deceleration starting point is h, and the target acceleration of the mobile robot in the deceleration section E is a 5 The method comprises the steps of carrying out a first treatment on the surface of the The deceleration ending point of the deceleration section F is i, the deceleration starting point is j, and the target of the mobile robot in the deceleration section FAcceleration a 6
Since the deceleration start point f of the deceleration section D is different from the deceleration end point g of the deceleration section E, the collision distance between the deceleration start point f and the deceleration end point g is (f, g), and when the collision distance is within the collision distance range (f, g), the moving speed of the mobile robot is the moving speed v corresponding to the deceleration end point g 4 Then, (f, g) is a constant velocity interval.
Correspondingly, the sections (h, i) and (j, k) are also uniform sections, and the moving speed of the mobile robot in the sections (h, i) is v 5 The moving speed of the mobile robot in the section (j, k) is v 6
In this way, after the sub-correspondence between the collision distance and the moving speed of the mobile robot is determined in each deceleration section and the uniform speed section on the curve, the correspondence between the collision distance and the moving speed of the mobile robot can be obtained.
Optionally, in a specific implementation manner, the method for detecting collision of a mobile robot provided in the embodiment of the present application may further include the following steps 21 to 22:
step 21: when the chassis is detected to meet the preset moving condition, determining a new current position of the mobile robot, and returning to a path from the current position of the mobile robot to the end point of the preset moving path for sampling the position points in the preset moving path of the mobile robot;
the preset moving conditions comprise: moving a specified distance or a specified duration;
step 22: when the mobile robot is detected to meet any one of a plurality of preset stopping conditions, controlling the chassis and the executing mechanism to stop moving;
wherein, the preset stopping condition comprises: the distance between the position covered by the pose and the outline of the obstacle when the executing mechanism executes the preset instruction is smaller than or equal to the preset distance, the mobile robot moves to the end point, and the mobile robot does not move to the end point and the moving speed of the chassis is 0.
In this specific implementation manner, in the moving process of the mobile robot, there may be multiple situations that the detected obstacle is removed, a new obstacle appears on the moving path, etc., so, in order to improve the safety of the moving robot during operation, the current position of the mobile robot may be updated in the moving process of the mobile robot, and when the current position is updated each time, the steps S101 to S104 are executed to perform collision detection on the path in front of the current position.
In order to determine the update timing of the current position of the mobile robot, a preset movement condition may be preset, so that when the mobile robot meets the preset movement condition, the current position may be updated, that is, a new current position of the mobile robot is determined, and a step of performing position point sampling on a path from the current position of the mobile robot to an end point of the preset movement path in a preset movement path of the mobile robot is returned, so as to perform collision detection on a path in front of the new current position of the mobile robot.
The preset movement condition may be set according to actual needs, and may be a movement specified duration, for example: move for 10 seconds, etc.; it may also be moved a specified distance, for example: it is reasonable to move 10 meters, etc., and is not particularly limited in the embodiments of the present application.
Correspondingly, in the specific implementation manner, when the mobile robot is detected to meet any one of a plurality of preset stopping conditions, the chassis of the mobile robot can be controlled to stop moving, and the executing mechanism of the mobile robot can be controlled to stop moving.
Wherein, the preset stopping condition may include: the distance between the position covered by the pose and the outline of the obstacle when the executing mechanism executes the preset instruction is smaller than or equal to the preset distance, the mobile robot moves to the end point, and the mobile robot does not move to the end point and the moving speed of the chassis is 0.
When the mobile robot moves to the end point of the preset moving path, the chassis of the mobile robot can be controlled to stop moving as the mobile robot does not need to move along the preset moving path any more, and the executing mechanism of the mobile robot is controlled to stop moving and the collision detection is stopped.
When the moving robot does not move to the end point but the speed of the chassis is reduced to 0 due to the approach of the obstacle, at this time, the chassis of the moving robot stops moving due to the moving speed of the chassis of the moving robot being 0, and the actuator of the moving robot is controlled to stop moving and to stop performing collision detection on the moving robot in order to avoid collision due to the presence of the obstacle in front.
When the distance between the space covered by the pose when the executing mechanism executes the preset instruction and the outline of the obstacle is smaller than or equal to the preset distance in the moving process of the mobile robot, if the mobile robot continues to move, the executing mechanism of the mobile robot collides with the obstacle. Furthermore, if the distance between the position covered by the gesture and the outline of the obstacle when the executing mechanism executes the preset instruction is smaller than or equal to the preset distance, the executing mechanism of the mobile robot can be controlled to stop moving, and the executing mechanism can not execute the preset instruction because of stopping moving, and the service task fails to execute, so that the chassis of the mobile robot can be controlled to stop moving. Accordingly, since the mobile robot is not moved forward any more, collision detection of the forward path is unnecessary.
The preset distance may be set according to actual needs, for example, 1 meter, 3 meters, etc.; the preset distance may be the same as or different from the preset execution distance, and is not particularly limited in the embodiment of the present application.
Characterization of detection results about mobile robots and obstacles: when the chassis and/or the executing mechanism collides with the obstacle, in order to avoid the obstacle from affecting the mobile robot to carry out business operation, the operator can be instructed to remove the obstacle.
Optionally, in a specific implementation manner, the method for detecting collision of a mobile robot provided in the embodiment of the present application may further include the following step 31:
step 31: if the distance between the position covered by the gesture and the outline of the obstacle when the executing mechanism executes the preset instruction is detected to be smaller than or equal to the preset distance, or the mobile robot does not move to the end point and the moving speed of the chassis is 0, a notification message for prompting removal of the obstacle is output.
In this embodiment, if it is detected that the distance between the outline of the obstacle and the space covered by the pose when the executing mechanism executes the preset instruction is smaller than or equal to the preset distance, the distance between the executing mechanism of the mobile robot and the obstacle is too short, so as to avoid the influence of the obstacle on the mobile robot to perform the business operation, a notification message for prompting the removal of the obstacle may be output, so that the worker may remove the obstacle when receiving the notification message.
If the mobile robot does not move to the destination and the movement speed of the chassis is 0, the mobile robot is affected by the obstacle along the preset movement path and continues to execute the business operation because the mobile robot does not move to the destination, so that a notification message for prompting removal of the obstacle can be output, the worker can remove the obstacle when receiving the notification message, and further, after the obstacle is removed, the electronic device can control the mobile robot to continue to move along the preset movement path.
By outputting the notification message of removing the obstacle when the distance between the actuating mechanism of the mobile robot and the obstacle is too short, collision between the actuating mechanism of the mobile robot and the obstacle can be avoided; when the speed of the mobile robot is reduced to 0 due to the obstacle, a notification message for removing the obstacle is output, so that the obstacle can be prevented from blocking the mobile robot to execute business operation for a long time, and the working efficiency of the mobile robot is improved.
In some cases, to avoid damage to the actuator of the mobile robot, a safety distance threshold for the operation of the actuator, that is, the preset execution distance, may be defined according to the type of the service job and the type of the actuator.
Based on this, in an optional implementation manner, in step 13, the controlling the executing mechanism to execute the preset instruction may include the following steps 41-42:
step 41: if the distance between the position covered space of the executing mechanism and the outline of the obstacle is larger than the preset executing distance when the executing mechanism executes the preset instruction, the executing mechanism is controlled to execute the preset instruction;
step 42: and if the distance between the position covered by the pose and the outline of the obstacle when the executing mechanism executes the preset instruction is not greater than the preset executing distance, controlling the executing mechanism to stop executing the preset instruction.
In this specific implementation manner, the chassis is controlled to move along a preset moving track according to the moving speed determined based on the corresponding relation, so that the executing mechanism can be controlled to execute the preset instruction.
If the distance between the position covered space of the executing mechanism and the outline of the obstacle is larger than the preset executing distance, the executing mechanism can be controlled to execute the preset instruction;
when the executing mechanism executes the preset instruction, if the distance between the position covered space and the outline of the obstacle when the executing mechanism executes the preset instruction is not greater than the preset executing distance, the executing mechanism can be controlled to stop executing the preset instruction in order to avoid the damage of the executing mechanism. The preset execution distance may be set according to actual needs, for example, may be 2 meters, 5 meters, and the like, which are all reasonable, and are not specifically limited in the embodiment of the present application.
For example, the safe distance threshold s_safe for the execution mechanism to run may be defined according to the type of the execution mechanism and the type of the service task. The chassis is controlled to move along a preset moving track according to the moving speed determined based on the corresponding relation, and if the distance S_column between the position covered space and the outline of the obstacle when the executing mechanism executes the preset instruction is greater than S_safe, the preset instruction is output, so that the executing mechanism normally executes the preset instruction; when the executing mechanism executes the preset instruction, if the distance S_color between the covered space of the pose and the outline of the obstacle when the executing mechanism executes the preset instruction is not greater than S_safe, outputting a movement stopping instruction to control the executing mechanism to stop executing the preset instruction.
In some cases, the shape of the chassis and/or the actuators of the mobile robot may be irregular, so that, at each location point, in order to accurately determine the chassis space information and the motion space information of the mobile robot at the location point, the accuracy of the calculation is required to be high, which in turn results in a large occupied calculation resource.
Based on this, in an optional specific implementation manner, in the above step S102, the method for determining chassis contour information may include the following steps 51-52:
Step 51: determining a first minimum rectangle projected in a specified plane by a contour surrounding the chassis in the specified plane in a specified plane parallel to the horizontal plane of a preset coordinate system based on first size information of the chassis of the mobile robot, and determining a chassis lowest point coordinate and a chassis highest point coordinate of the contour of the chassis on a specified coordinate axis perpendicular to the specified plane of the preset coordinate system;
step 52: in a preset coordinate system, a first cuboid which takes the coordinate of the highest point of the chassis and the coordinate of the lowest point of the chassis as high and takes the minimum chassis rectangle as the bottom surface is constructed, and the coordinates of each vertex of the first cuboid under the preset coordinate system are determined and used as chassis contour information of the contour of the chassis under the preset coordinate system.
In this specific implementation, a first minimum rectangle projected in a specified plane by an outline surrounding the chassis in the specified plane may be determined in the specified plane parallel to the horizontal plane of the preset coordinate system based on the first size information of the chassis of the mobile robot. Then, the chassis lowest point coordinates and the chassis highest point coordinates of the outline of the chassis on the specified coordinate axes perpendicular to the specified plane of the preset coordinate system are determined. Then, a first cuboid with the difference value between the highest point coordinate of the chassis and the lowest point coordinate of the chassis as high and the minimum chassis rectangle as the bottom surface can be constructed in a preset coordinate system. That is, the bottom surface of the first rectangular parallelepiped is the first minimum rectangle; the high numerical value is the difference between the chassis lowest point coordinate and the chassis highest point coordinate of the outline of the chassis, and on the appointed coordinate axis, the high lowest point coordinate is the chassis lowest point coordinate, and the high highest point coordinate is the chassis highest point coordinate.
After the first cuboid is determined, coordinates of each vertex of the first cuboid under a preset coordinate system can be determined and used as chassis contour information of the chassis under the preset coordinate system.
The process of constructing the first cuboid is a process of constructing a three-dimensional convex bounding box of the outline of the chassis; the above process of determining the coordinates of each vertex of the first cuboid under the preset coordinate system is a process of describing the three-dimensional convex bounding box. The three-dimensional convex bounding box is composed of a set of convex polygon vertices { v_1, v_2, v_3, …, v_n } defined by a planar x-y coordinate system, and a convex polygon bottom height value (h_bottom) and a top height value (h_top) defined along the z-axis.
For example, as shown in fig. 5, the preset coordinate system is the xyz coordinate system in fig. 5, and the first minimum rectangle v_1v_2v_3v_4 surrounding the projection of the chassis of the mobile robot in the xy plane may be determined based on the first size information of the chassis of the mobile robot in the xy plane of the xyz coordinate system. Then, the chassis lowest point coordinates h_bottom and the chassis highest point coordinates h_top of the chassis in the z-plane are determined. Then, in the xyz coordinate system, a first cuboid with the difference between h_bottom and h_top being high and v_1v_2v_3v_4 being the bottom surface is constructed as chassis contour information of the chassis in the xyz coordinate system.
Accordingly, in an optional specific implementation manner, in the above step S102, the method for determining spatial profile information may include the following steps 53-55:
step 53: determining a process from the current moment to the fact that the executing mechanism of the mobile robot executes the preset instruction based on second size information of the executing mechanism of the mobile robot, the pose of the mobile robot at the current moment and the executing action of the executing mechanism indicated by the preset instruction, wherein the pose of the executing mechanism covers a space;
step 54: in a designated plane parallel to a horizontal plane of a preset coordinate system, determining a second minimum rectangle projected in the designated plane around the pose coverage space, and determining a pose highest point coordinate and a pose lowest point coordinate of the pose coverage space on a designated coordinate axis perpendicular to the designated plane of the preset coordinate system;
step 55: and constructing a second cuboid which takes the highest point coordinate of the pose and the lowest point coordinate of the pose as high and takes the second smallest rectangle as the bottom surface in a preset coordinate system, and determining the coordinates of each vertex of the second cuboid under the preset coordinate system as the space contour information of the pose coverage space of the actuating mechanism under the preset coordinate system from the current moment to the process that the actuating mechanism of the mobile robot executes the preset instruction.
In this specific implementation manner, the process from the current moment to the fact that the execution mechanism of the mobile robot executes the preset instruction and the pose coverage space of the execution mechanism can be determined based on the second size information of the execution mechanism of the mobile robot, the pose of the mobile robot at the current moment and the execution action of the execution mechanism indicated by the preset instruction.
Then, in a specified plane parallel to the horizontal plane of a preset coordinate system, a second minimum rectangle projected in the specified plane around the pose coverage space is determined, and pose highest point coordinates and pose lowest point coordinates of the pose coverage space on a specified coordinate axis perpendicular to the specified plane of the preset coordinate system are determined.
Then, a second cuboid with the difference value between the highest point coordinates of the pose and the lowest point coordinates of the pose as high and the second minimum rectangle as the bottom surface can be constructed in a preset coordinate system. That is, the bottom surface of the second rectangular parallelepiped is the second minimum rectangle; the high numerical value is the difference between the pose lowest point coordinate and the pose highest point coordinate of the outline of the chassis, and on the appointed coordinate axis, the high lowest point coordinate is the pose lowest point coordinate, and the high highest point coordinate is the pose highest point coordinate.
Further, coordinates of each vertex of the second cuboid under a preset coordinate system can be determined as a process from the current moment to the completion of executing the preset instruction by the execution mechanism of the mobile robot, and the pose of the execution mechanism covers spatial contour information of the space under the preset coordinate system.
Because the chassis cuboid and the pose cuboid are regular shapes, the space occupied by the outline of the chassis can be represented by the first cuboid under a preset coordinate system, and the pose coverage space of the executing mechanism can be converted into regular space by using the second cuboid to represent the space occupied by the outline of the chassis in the process from the current moment to the fact that the executing mechanism of the mobile robot executes a preset instruction. Therefore, the requirement on calculation precision can be reduced, and further, the calculation resources required for determining chassis contour information and space contour information are reduced. In addition, the first cuboid is close to the space occupied by the outline of the chassis of the mobile robot, and the first cuboid is close to the pose coverage space, so that the obtained collision detection result is relatively accurate when the first cuboid and the second cuboid are used for collision detection.
In addition, if the mobile robot is composed of a plurality of parts, the mobile robot may be split into a plurality of parts, a three-dimensional convex bounding box of each part may be constructed, and then coordinates of each vertex of each three-dimensional convex bounding box under a preset coordinate system may be used as motion space description information of the mobile robot.
For example, as shown in fig. 6, the mobile robot may be split into three parts A, B and B2, and the three-dimensional convex bounding boxes a_1 and b_1 of the three-dimensional convex bounding boxes a_1 and B1 and b_2 of the preset coordinate system are obtained respectively.
According to the collision detection method for the mobile robot, the mobile robot can be subjected to obstacle stopping control.
Next, a process of collision detection and obstacle stop control of the mobile robot will be described with reference to fig. 7. As shown in fig. 7, the process of performing collision detection and obstacle stop control on the mobile robot may include the following steps S701 to S707.
S701: acquiring structural size information of the mobile robot;
s702: acquiring current positioning information and environmental obstacle perception information;
s703: sampling position points from the current position to the end point along a preset moving track;
S704: based on the motion space description information of the mobile robot and the obstacle outline information, collision detection is carried out, and a collision detection result is output;
s705: calculating the distance between the current position of the mobile robot and the collision position point;
s706: carrying out reasonable speed planning on the mobile robot according to the collision distance;
s707: the mobile robot is controlled to move, so that the chassis is decelerated and the barrier is safely stopped when meeting the barrier.
In order to improve the operation safety of the mobile robot, the structural size information of the mobile robot can be acquired first, and the current positioning information and the environmental obstacle sensing information of the mobile robot can be acquired.
And then, sampling the position points from the current position to the end point of the preset moving path along the preset moving track to obtain a plurality of position points. Traversing each position point, and determining motion space description information when the mobile robot is positioned at the position point when traversing to each position point. Then, based on the motion space description information of the mobile robot and the perceived outline information of the obstacle, collision detection is performed, so that a collision detection result about the mobile robot and the obstacle is obtained, and the collision detection result is output.
Then, the distance between the current position of the mobile robot and the collision position point is calculated, and the corresponding relation between the collision distance and the moving speed of the mobile robot is determined based on the distance between the current position and the position point, so that the mobile robot is reasonably speed planned according to the collision distance. And further, controlling the mobile robot to move along a preset moving track according to the moving speed determined based on the corresponding relation, and controlling the mobile robot to stop moving when the distance from the obstacle is a preset stopping distance, so as to realize the speed reduction of the chassis when meeting the obstacle and safe stopping of the obstacle.
Based on the same inventive concept, the embodiment of the present application further provides a collision detection device of the mobile robot, corresponding to the collision detection method of the mobile robot shown in fig. 1 provided in the embodiment of the present application.
Fig. 8 is a schematic structural diagram of a collision detection device of a mobile robot according to an embodiment of the present application, and as shown in fig. 8, the device may include the following modules:
the sampling module 810 is configured to sample, from a current position of a mobile robot to a path from a destination of the preset moving path, a position point in a preset moving path of the mobile robot, to obtain a plurality of position points including the current position and the destination;
An obstacle profile information acquisition module 820, configured to acquire obstacle profile information of a profile of an obstacle detected by the mobile robot at the current position under a preset coordinate system;
a motion space description information obtaining module 830, configured to traverse each of the plurality of location points according to a direction from the current location to the end point, and determine motion space description information when the mobile robot is located at the location point when traversing to each location point; wherein the motion space description information includes: chassis contour information of the chassis of the mobile robot under the preset coordinate system and spatial contour information of a pose coverage space of an executing mechanism of the mobile robot under the preset coordinate system from the current moment to the process that the executing mechanism executes a preset instruction;
and the judging module 840 is configured to judge, when traversing to each position point, whether the chassis and the executing mechanism collide with the obstacle or not when the mobile robot is located at the position point based on the obstacle contour information and the motion space description information, so as to obtain a collision detection result about the mobile robot and the obstacle.
Therefore, by applying the scheme provided by the embodiment of the application, the collision detection result of the mobile robot and the obstacle can be determined by determining the outline information of the obstacle and the motion space description information of the mobile robot at each position point according to the current position of the mobile robot in the process of controlling the mobile robot to move along the preset moving path, so that the moving strategy of the mobile robot can be planned through the collision detection result, the collision of the mobile robot and the obstacle on the path is avoided, and the safety of the mobile robot in the moving process is improved.
Further, since the collision detection result is determined based on the obstacle profile information and the movement space description information including the chassis profile information of the profile of the chassis of the mobile robot and the spatial profile information of the actuator. Therefore, the obtained collision detection result comprehensively considers the situation that the chassis and/or the actuating mechanism of the mobile robot collide with the obstacle, so that the chassis and the obstacle of the mobile robot can be prevented from colliding, and the situation that the actuating mechanism of the mobile robot collides with the obstacle due to the execution of a preset instruction can be prevented, and the safety of the mobile robot in the moving process is further improved.
Optionally, in a specific implementation manner, the apparatus further includes:
the traversing module is used for, when traversing to each position point, if the collision detection result represents: the chassis and the executing mechanism do not collide with the obstacle, so that the next position point is traversed;
the first control module is used for, when traversing to each position point, if the collision detection result represents that: the chassis and/or the executing mechanism collides with the obstacle, and the position point is the current position, so that the mobile robot is controlled to stop moving;
the relation determining module is used for, when traversing to each position point, if the collision detection result represents: the chassis and/or the executing mechanism collides with the obstacle, and the position point is a position point except the current position, and the corresponding relation between the collision distance and the moving speed of the mobile robot is determined based on the distance between the current position and the position point; controlling the chassis to move along the preset moving track according to the moving speed determined based on the corresponding relation, and controlling the executing mechanism to execute the preset instruction; wherein, the collision distance is: and the distance between the position of the mobile robot and the position point.
Optionally, in a specific implementation manner, the apparatus further includes:
a return module, configured to determine a new current position of the mobile robot when the chassis is detected to meet a preset movement condition, and return to the path of the preset movement of the mobile robot, where the path from the current position of the mobile robot to the end point of the preset movement path performs position point sampling; wherein, the preset moving condition includes: moving a specified distance or a specified duration;
the second control module is used for controlling the chassis and the executing mechanism to stop moving when detecting that the mobile robot meets any one of a plurality of preset stopping conditions; wherein the preset stopping condition includes: the distance between the position covered space of the executing mechanism and the outline of the obstacle when the executing mechanism executes the preset instruction is smaller than or equal to a preset distance, the mobile robot moves to the end point, the mobile robot does not move to the end point, and the moving speed of the chassis is 0.
Optionally, in a specific implementation manner, the apparatus further includes:
and the message output module is used for outputting a notification message for prompting removal of the obstacle if the distance between the position covered space of the executing mechanism and the outline of the obstacle is detected to be smaller than or equal to a preset distance or the moving robot does not move to the end point and the moving speed of the chassis is 0.
Optionally, in a specific implementation manner, the correspondence between the collision distance and the moving speed of the mobile robot is represented by specifying a curve in a two-dimensional coordinate system;
the abscissa of the specified two-dimensional coordinate system represents the collision distance, the ordinate of the specified two-dimensional coordinate system represents the moving speed of the mobile robot, and the abscissa of the intersection point of the curve and the horizontal axis of the specified two-dimensional coordinate system represents the preset stopping distance; the curve comprises a plurality of curve segments, each curve segment represents a deceleration section, the slope of each curve segment is the acceleration of the mobile robot in the deceleration section represented by the curve segment, and in each deceleration section, the collision distance is positively related to the moving speed of the mobile robot;
the preset stopping distance is as follows: when the mobile robot stops moving, the position of the mobile robot is at a preset minimum distance from the position point; the acceleration is not greater than a maximum acceleration of the mobile robot and not less than a minimum acceleration of the mobile robot.
Optionally, in a specific implementation manner, the relationship determining module is specifically configured to:
If the distance between the position covered space of the executing mechanism for executing the preset instruction and the outline of the obstacle is larger than the preset executing distance, controlling the executing mechanism to execute the preset instruction;
and if the distance between the position covered space of the executing mechanism and the outline of the obstacle when executing the preset instruction is not greater than the preset executing distance, controlling the executing mechanism to stop executing the preset instruction.
Optionally, in a specific implementation manner, the motion space description information obtaining module 830 includes a first determining sub-module; the first determining submodule is specifically configured to:
determining a first minimum rectangle projected in a specified plane by a contour surrounding the chassis in the specified plane in a specified plane parallel to a horizontal plane of the preset coordinate system based on first size information of the chassis of the mobile robot, and determining a chassis lowest point coordinate and a chassis highest point coordinate of the contour of the chassis on a specified coordinate axis perpendicular to the specified plane of the preset coordinate system;
and constructing a first cuboid taking the coordinate of the highest point of the chassis and the coordinate of the lowest point of the chassis as high and taking the rectangle of the minimum chassis as the bottom surface in the preset coordinate system, and determining the coordinate of each vertex of the first cuboid under the preset coordinate system as chassis contour information of the contour of the chassis under the preset coordinate system.
Optionally, in a specific implementation manner, the motion space description information obtaining module 830 includes a second determining sub-module; the second determining sub-module is specifically configured to:
determining a process from the current moment to the execution of the execution mechanism of the mobile robot to finish the preset instruction based on second size information of the execution mechanism of the mobile robot, the pose of the mobile robot at the current moment and the execution action of the execution mechanism indicated by the preset instruction, wherein the pose of the execution mechanism covers a space;
in a designated plane parallel to a horizontal plane of the preset coordinate system, determining a second minimum rectangle which surrounds the projection of the pose coverage space in the designated plane, and determining a pose highest point coordinate and a pose lowest point coordinate of the pose coverage space on a designated coordinate axis perpendicular to the designated plane of the preset coordinate system;
and constructing a second cuboid which takes the highest point coordinate of the pose and the lowest point coordinate of the pose as high and takes the second minimum rectangle as the bottom surface in the preset coordinate system, and determining the coordinates of each vertex of the second cuboid under the preset coordinate system as the process from the current moment to the completion of executing the preset instruction by an executing mechanism of the mobile robot, wherein the pose of the executing mechanism covers the spatial contour information of the space under the preset coordinate system.
The embodiment of the application also provides an electronic device, as shown in fig. 9, including:
a memory 901 for storing a computer program;
the processor 902 is configured to implement the steps of the collision detection method of any mobile robot provided in the embodiment of the present application when executing the program stored in the memory 901.
And the electronic device may further include a communication bus and/or a communication interface, where the processor 902, the communication interface, and the memory 901 perform communication with each other via the communication bus.
The communication bus mentioned above for the electronic devices may be a peripheral component interconnect standard (Peripheral Component Interconnect, PCI) bus or an extended industry standard architecture (Extended Industry Standard Architecture, EISA) bus, etc. The communication bus may be classified as an address bus, a data bus, a control bus, or the like. For ease of illustration, the figures are shown with only one bold line, but not with only one bus or one type of bus.
The communication interface is used for communication between the electronic device and other devices.
The Memory may include random access Memory (Random Access Memory, RAM) or may include Non-Volatile Memory (NVM), such as at least one disk Memory. Optionally, the memory may also be at least one memory device located remotely from the aforementioned processor.
The processor may be a general-purpose processor, including a central processing unit (Central Processing Unit, CPU), a network processor (Network Processor, NP), etc.; but also digital signal processors (Digital Signal Processor, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), field programmable gate arrays (Field-Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
In yet another embodiment provided herein, there is also provided a computer-readable storage medium having stored therein a computer program which, when executed by a processor, implements the steps of the collision detection method of any one of the mobile robots described above.
In yet another embodiment provided herein, there is also provided a computer program product containing instructions that, when run on a computer, cause the computer to perform the collision detection method of any of the mobile robots of the above embodiments.
In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, produces a flow or function in accordance with embodiments of the present application, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another, for example, by wired (e.g., coaxial cable, optical fiber, digital Subscriber Line (DSL)), or wireless (e.g., infrared, wireless, microwave, etc.). The computer readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that contains an integration of one or more available media. The usable medium may be a magnetic medium (e.g., a floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a Solid State Disk (SSD), etc.
It is noted that relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
In this specification, each embodiment is described in a related manner, and identical and similar parts of each embodiment are all referred to each other, and each embodiment mainly describes differences from other embodiments. In particular, for the apparatus embodiments, the electronic device embodiments, the computer-readable storage medium embodiments, and the computer program product embodiments, the description is relatively simple, and reference should be made to the description of method embodiments in part, since they are substantially similar to the method embodiments.
The foregoing description is only of the preferred embodiments of the present application and is not intended to limit the scope of the present application. Any modifications, equivalent substitutions, improvements, etc. that are within the spirit and principles of the present application are intended to be included within the scope of the present application.

Claims (11)

1. A collision detection method of a mobile robot, the method comprising:
sampling position points in a preset moving path of a mobile robot from the current position of the mobile robot to a path from the end point of the preset moving path to obtain a plurality of position points including the current position and the end point;
acquiring obstacle contour information of the contour of the obstacle detected by the mobile robot at the current position under a preset coordinate system;
traversing each position point in the plurality of position points according to the direction from the current position to the end point, and determining motion space description information when the mobile robot is positioned at the position point when traversing to each position point; wherein the motion space description information includes: chassis contour information of the chassis of the mobile robot under the preset coordinate system and spatial contour information of a pose coverage space of an executing mechanism of the mobile robot under the preset coordinate system from the current moment to the process that the executing mechanism executes a preset instruction;
And when traversing to each position point, judging whether the chassis and the executing mechanism collide with the obstacle or not when the mobile robot is positioned at the position point based on the obstacle contour information and the motion space description information, and obtaining a collision detection result about the mobile robot and the obstacle.
2. The method according to claim 1, wherein the method further comprises:
while traversing to each location point, the following steps are performed:
if the collision detection result represents: the chassis and the executing mechanism do not collide with the obstacle, so that the next position point is traversed;
if the collision detection result represents: the chassis and/or the executing mechanism collides with the obstacle, and the position point is the current position, so that the mobile robot is controlled to stop moving;
if the collision detection result represents: the chassis and/or the executing mechanism collides with the obstacle, and the position point is a position point except the current position, and the corresponding relation between the collision distance and the moving speed of the mobile robot is determined based on the distance between the current position and the position point; controlling the chassis to move along the preset moving track according to the moving speed determined based on the corresponding relation, and controlling the executing mechanism to execute the preset instruction; wherein, the collision distance is: and the distance between the position of the mobile robot and the position point.
3. The method according to claim 2, wherein the method further comprises:
when the chassis is detected to meet a preset moving condition, determining a new current position of the mobile robot, and returning to a path from the current position of the mobile robot to the end point of the preset moving path for sampling position points in the preset moving path of the mobile robot; wherein, the preset moving condition includes: moving a specified distance or a specified duration;
when the mobile robot is detected to meet any one of a plurality of preset stopping conditions, controlling the chassis and the executing mechanism to stop moving; wherein the preset stopping condition includes: the distance between the position covered space of the executing mechanism and the outline of the obstacle when the executing mechanism executes the preset instruction is smaller than or equal to a preset distance, the mobile robot moves to the end point, the mobile robot does not move to the end point, and the moving speed of the chassis is 0.
4. A method according to claim 3, characterized in that the method further comprises:
and outputting a notification message for prompting removal of the obstacle if the distance between the position covered by the pose and the outline of the obstacle when the executing mechanism executes the preset instruction is detected to be smaller than or equal to a preset distance, or if the mobile robot does not move to the end point and the movement speed of the chassis is 0.
5. The method according to claim 2, characterized in that the correspondence of the collision distance to the moving speed of the mobile robot is represented by specifying a curve in a two-dimensional coordinate system;
the abscissa of the specified two-dimensional coordinate system represents the collision distance, the ordinate of the specified two-dimensional coordinate system represents the moving speed of the mobile robot, and the abscissa of the intersection point of the curve and the horizontal axis of the specified two-dimensional coordinate system represents the preset stopping distance; the curve comprises a plurality of curve segments, each curve segment represents a deceleration section, the slope of each curve segment is the acceleration of the mobile robot in the deceleration section represented by the curve segment, and in each deceleration section, the collision distance is positively related to the moving speed of the mobile robot;
the preset stopping distance is as follows: when the mobile robot stops moving, the position of the mobile robot is at a preset minimum distance from the position point; the acceleration is not greater than a maximum acceleration of the mobile robot and not less than a minimum acceleration of the mobile robot.
6. The method of claim 2, wherein controlling the actuator to execute the preset instruction comprises:
If the distance between the position covered space of the executing mechanism for executing the preset instruction and the outline of the obstacle is larger than the preset executing distance, controlling the executing mechanism to execute the preset instruction;
and if the distance between the position covered space of the executing mechanism and the outline of the obstacle when executing the preset instruction is not greater than the preset executing distance, controlling the executing mechanism to stop executing the preset instruction.
7. The method according to any one of claims 1-6, wherein the method for determining chassis contour information comprises:
determining a first minimum rectangle projected in a specified plane by a contour surrounding the chassis in the specified plane in a specified plane parallel to a horizontal plane of the preset coordinate system based on first size information of the chassis of the mobile robot, and determining a chassis lowest point coordinate and a chassis highest point coordinate of the contour of the chassis on a specified coordinate axis perpendicular to the specified plane of the preset coordinate system;
and constructing a first cuboid taking the coordinate of the highest point of the chassis and the coordinate of the lowest point of the chassis as high and taking the rectangle of the minimum chassis as the bottom surface in the preset coordinate system, and determining the coordinate of each vertex of the first cuboid under the preset coordinate system as chassis contour information of the contour of the chassis under the preset coordinate system.
8. The method according to any one of claims 1-6, wherein the method for determining spatial profile information comprises:
determining a process from the current moment to the execution of the execution mechanism of the mobile robot to finish the preset instruction based on second size information of the execution mechanism of the mobile robot, the pose of the mobile robot at the current moment and the execution action of the execution mechanism indicated by the preset instruction, wherein the pose of the execution mechanism covers a space;
in a designated plane parallel to a horizontal plane of the preset coordinate system, determining a second minimum rectangle which surrounds the projection of the pose coverage space in the designated plane, and determining a pose highest point coordinate and a pose lowest point coordinate of the pose coverage space on a designated coordinate axis perpendicular to the designated plane of the preset coordinate system;
and constructing a second cuboid which takes the highest point coordinate of the pose and the lowest point coordinate of the pose as high and takes the second minimum rectangle as the bottom surface in the preset coordinate system, and determining the coordinates of each vertex of the second cuboid under the preset coordinate system as the process from the current moment to the completion of executing the preset instruction by an executing mechanism of the mobile robot, wherein the pose of the executing mechanism covers the spatial contour information of the space under the preset coordinate system.
9. A collision detection apparatus of a mobile robot, the apparatus comprising:
the sampling module is used for sampling position points of paths from the current position of the mobile robot to the end point of the preset moving path in the preset moving path of the mobile robot to obtain a plurality of position points including the current position and the end point;
the obstacle profile information acquisition module is used for acquiring obstacle profile information of the profile of the obstacle detected by the mobile robot at the current position under a preset coordinate system;
the motion space description information acquisition module is used for traversing each position point in the plurality of position points according to the direction from the current position to the end point, and determining motion space description information when the mobile robot is positioned at the position point when traversing to each position point; wherein the motion space description information includes: chassis contour information of the chassis of the mobile robot under the preset coordinate system and spatial contour information of a pose coverage space of an executing mechanism of the mobile robot under the preset coordinate system from the current moment to the process that the executing mechanism executes a preset instruction;
And the judging module is used for judging whether the chassis and the executing mechanism collide with the obstacle or not when the mobile robot is positioned at each position point based on the obstacle contour information and the motion space description information when traversing to each position point, and obtaining a collision detection result about the mobile robot and the obstacle.
10. An electronic device, comprising:
a memory for storing a computer program;
a processor for implementing the method of any of claims 1-8 when executing a program stored on a memory.
11. A computer readable storage medium, characterized in that the computer readable storage medium has stored therein a computer program which, when executed by a processor, implements the method of any of claims 1-8.
CN202311870180.4A 2023-12-29 2023-12-29 Collision detection method and device of mobile robot and electronic equipment Pending CN117773933A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311870180.4A CN117773933A (en) 2023-12-29 2023-12-29 Collision detection method and device of mobile robot and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311870180.4A CN117773933A (en) 2023-12-29 2023-12-29 Collision detection method and device of mobile robot and electronic equipment

Publications (1)

Publication Number Publication Date
CN117773933A true CN117773933A (en) 2024-03-29

Family

ID=90381473

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311870180.4A Pending CN117773933A (en) 2023-12-29 2023-12-29 Collision detection method and device of mobile robot and electronic equipment

Country Status (1)

Country Link
CN (1) CN117773933A (en)

Similar Documents

Publication Publication Date Title
US11016493B2 (en) Planning robot stopping points to avoid collisions
CN109154827B (en) Positioning of robotic vehicles
EP3566821B1 (en) Robot movement control method, and robot
US10037029B1 (en) Roadmap segmentation for robotic device coordination
CN109901578B (en) Method and device for controlling multiple robots and terminal equipment
CN112539749B (en) Robot navigation method, robot, terminal device, and storage medium
CN110356760B (en) Control method and device based on transfer robot
CN110849366A (en) Navigation method and system based on fusion of vision and laser radar
CN113867347A (en) Robot path planning method, device, management system and computer storage medium
CN113168189A (en) Flight operation method, unmanned aerial vehicle and storage medium
CN113671965B (en) Path planning method and device
CN116700298B (en) Path planning method, system, equipment and storage medium
CN117773933A (en) Collision detection method and device of mobile robot and electronic equipment
CN111207754A (en) Particle filter-based multi-robot formation positioning method and robot equipment
US20240111585A1 (en) Shared resource management system and method
CN115060279B (en) Path planning method, path planning device, electronic equipment and computer readable medium
US20240150159A1 (en) System and method for definition of a zone of dynamic behavior with a continuum of possible actions and locations within the same
CN115562296B (en) Robot scheduling method, system and device based on hybrid control strategy
CN116954265B (en) Method and device for rescheduling local motion trail and electronic equipment
US20240152148A1 (en) System and method for optimized traffic flow through intersections with conditional convoying based on path network analysis
US20240131703A1 (en) Local Idle Time Utilization in Centrally Controlled Mobile Robots
CN115686010A (en) Path planning method, path planning device, electronic device, and storage medium
JP2023168996A (en) Movement control system, movement control method, movement controller, moving apparatus, movement control program, and program for moving apparatuses
WO2023192333A1 (en) Automated identification of potential obstructions in a targeted drop zone
CN116175549A (en) Track planning method, track planning device, electronic equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination