Robot control method and apparatus, computer device, and readable storage medium
By acquiring the target operating area of the sensing unstable elements, the robot's task and path in the initial and target areas are determined, solving the problem of path instability and collisions in difficult-to-perceive environments, and achieving efficient and accurate path planning.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-08-08
- Publication Date
- 2026-04-02
AI Technical Summary
In environments where physical objects are difficult to perceive stably, robots' path planning is unstable and prone to collisions, leading to inaccurate movement paths and low efficiency.
By acquiring the target operating area of the perceived unstable element, the positional relationship between the initial and target operating areas is determined based on the map, and a targeted movement path is generated to execute the task.
In environments with perceptually unstable elements, the robot achieves efficient and accurate path planning, avoiding collisions and completing all tasks.
Smart Images

Figure CN2025113654_02042026_PF_FP_ABST
Abstract
Description
Robot control method, device, computer device and readable storage medium
[0001] Cross-reference to related applications
[0002] The present application claims priority to the Chinese patent application No. 202411331789.9, filed on September 24, 2024, and entitled "Robot control method, device, computer device and readable storage medium", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD
[0003] The present application relates to the field of robot control technology, in particular to a robot control method, device, computer device, computer readable storage medium and computer program product. BACKGROUND
[0004] In the field of robot control technology, in the scene of robot operation, the robot plans a path according to the surrounding environment.
[0005] However, in the related art, when the scene in which the robot operates has a physical object that is difficult to stably perceive, due to the performance of the sensor carried by the robot body, the robot may have instability and inaccuracy in observing the physical object, thereby making it difficult to efficiently and accurately generate a moving path for the robot, and collision failures are likely to occur. SUMMARY
[0006] According to various embodiments of the present application, a robot control method, device, computer device and readable storage medium are provided.
[0007] A robot control method comprises:
[0008] obtaining a target operating area corresponding to a perception unstable element in a map; the target operating area is a region determined according to an influence range of the perception unstable element;
[0009] obtaining an initial operating area based on the map, and determining a first operating task corresponding to the initial operating area and a second operating task corresponding to the target operating area according to a positional relationship between the initial operating area and the target operating area;
[0010] generating a moving path corresponding to the target operating task according to the target operating task to be executed, and executing the target operating task according to the moving path corresponding to the target operating task until all target operating tasks are executed one by one; the target operating task is one of the first operating task and the second operating task.
[0011] A robot control device comprises:
[0012] an acquisition module configured to acquire a target operating area corresponding to the unstable perception element in the map, the target operating area being determined according to an influence range of the unstable perception element;
[0013] a determination task module configured to acquire an initial operating area based on the map, and determine a first operating task corresponding to the initial operating area and a second operating task corresponding to the target operating area according to a positional relationship between the initial operating area and the target operating area, the first operating task being used to operate the robot in the initial operating area based on a region not involving the target operating area, and the second operating task being used to operate the robot based on the target operating area;
[0014] a generation module configured to generate a movement path corresponding to the target operating task according to the target operating task to be executed, and execute the target operating task according to the movement path corresponding to the target operating task until all the target operating tasks are executed one by one, the target operating task being one of the first operating task and the second operating task.
[0015] A computer device, comprising a memory and a processor, the memory storing a computer program, and the processor implementing the steps of the robot control method when executing the computer program.
[0016] A computer readable storage medium, having a computer program stored thereon, the computer program being executed by a processor to implement the steps of the robot control method.
[0017] A computer program product, comprising a computer program, the computer program being executed by a processor to implement the steps of the robot control method.
[0018] The details of one or more embodiments of the application are set forth in the accompanying drawings and the description below. Other features and advantages of the application will become apparent from the description, the drawings, and the claims. BRIEF DESCRIPTION OF DRAWINGS
[0019] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the drawings needed to be used in the embodiments or the prior art description will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and those skilled in the art can also obtain other drawings of embodiments according to these drawings without any creative effort.
[0020] FIG. 1 is a flowchart of a robot control method in an embodiment;
[0021] FIG. 2 is a schematic diagram of a structure for perceiving an unstable element in an embodiment;
[0022] FIG. 3 is a schematic diagram of determining a target operating area corresponding to the perceived unstable element in an embodiment;
[0023] FIG. 4 is a schematic diagram of determining a target point corresponding to the target operating area in an embodiment;
[0024] FIG. 5 is a schematic diagram of determining a moving path corresponding to the target operating area in an embodiment;
[0025] FIG. 6 is a schematic diagram of a flow of a robot control method in another embodiment;
[0026] FIG. 7 is a block diagram of a structure of a robot control device in an embodiment;
[0027] FIG. 8 is a diagram of an internal structure of a computer device in an embodiment. DETAILED DESCRIPTION
[0028] For the purpose of promoting a fuller understanding of the present application, reference is now made to the following descriptions taken in conjunction with the accompanying drawings. The preferred embodiments of the present application are illustrated in the drawings. It should be noted, however, that the present application can be carried out in a variety of ways and is not limited to the embodiments described herein. Rather, the embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the application to those skilled in the art.
[0029] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the application belongs. The terminology used in the description of the application herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items.
[0030] In an example embodiment, a robot control method is provided, which is exemplarily described by taking the application of the method to a terminal. It should be understood that the method can also be applied to a server, and can also be applied to a system including a terminal and a server, and can be realized by interaction between the terminal and the server, or can be realized by interaction between terminals. The terminal can be a computer device, such as a robot, a smart wearable device, a self-balancing vehicle, etc. It should be understood that the robot can be a delivery robot (commercial delivery robot, industrial delivery robot, AGV (Automated Guided Vehicle) robot), a guide robot, a disinfection robot, a cleaning robot, a patrol robot, etc. self-moving robot, which is not specifically limited here. The server can be a standalone physical server, or a service node in a blockchain system, in which each service node forms a P2P (Peer To Peer) network, and the P2P protocol is an application layer protocol running on the TCP (Transmission Control Protocol) protocol. In addition, the server can also be a server cluster composed of multiple physical servers, which can be a cloud server providing cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. Basic cloud computing services such as platform. The robot and the server can be connected through communication connection modes such as Bluetooth, USB (Universal Serial Bus), or network, which are not limited in the present application.
[0031] In an example embodiment, as shown in FIG. 1, a robot control method is provided, which is exemplarily described by taking the application of the method to a robot, which includes the following steps S102 to S106, wherein:
[0032] Step S102, obtaining a target operating area corresponding to a perception unstable element in a map; the target operating area is determined according to the influence range of the perception unstable element.
[0033] The map is a planar representation of a physical space, which reflects the layout of the physical space. Further, the map is a planar representation of the working area of the robot, which reflects the layout of the working area of the robot. That is, each element in the map is a label and description of physical objects such as obstacles, terrain, landmarks, etc. in the working area of the robot.
[0034] The perceptionally unstable element in the map can represent that it is difficult for the robot to stably perceive the planar representation of the physical object in the map in the physical space; that is, when the robot detects the physical object through sensors, cameras, or other devices, it is prone to false detection, missed detection, and inability to detect.
[0035] Optionally, the physical object that is difficult for the robot to stably perceive can be a physical object with a transparent feature, for example, a physical object with a glass material or a glass appearance, such as a glass door, a glass table, a glass display cabinet, a glass shelf, and the like; or a physical object with a transparent or translucent plastic material or a plastic appearance, such as a plastic table and chair, a plastic box, and the like.
[0036] Optionally, the physical object that is difficult for the robot to stably perceive can be a physical object with a high light reflection feature, for example, a physical object with a metal material or a metal appearance, such as a bronze vessel, stainless steel furniture, and the like; or a physical object with a mirror material, such as a plane mirror, a stereoscopic mirror, and the like; or a physical object with a light reflection coating material, such as a light reflection label, a light reflection cover, and the like.
[0037] Optionally, the physical object that is difficult for the robot to stably perceive can be a physical object with a strong light source feature, for example, a light source device for generating light, such as a spotlight, an LED lamp, a laser, and the like; or an optical device for processing light, such as a laser projector, a condenser, and the like.
[0038] Optionally, the physical object that is difficult for the robot to stably perceive can be a physical object with a strong electromagnetic field feature, for example, a device related to electromagnetic field generation, adjustment control, or energy conversion, such as a power supply, an electric motor, a transformer, an inverter, and the like; or a device related to electromagnetic field communication, such as an antenna, a radio transmitter and receiver, and the like.
[0039] The running area represents an area in the physical space where the robot runs; the target running area represents a running area where the physical object that is difficult for the robot to stably perceive exists; one perceptionally unstable element corresponds to one target running area.
[0040] Optionally, if the robot is a cleaning robot, the running area represents an area in the physical space that needs to be cleaned by the cleaning robot; if the robot is a delivery robot, the running area represents an area in the physical space that needs to be delivered by the delivery robot; if the robot is a patrol robot, the running area represents an area in the physical space that needs to be patrolled by the patrol robot.
[0041] The running area can also represent an area in the physical space where the robot runs, and the planar representation in the map; the target running area can represent the planar representation in the map of the running area where the physical object that is difficult for the robot to stably perceive exists.
[0042] Exemplarily, in the map, a corresponding target operating area of the perception unstable element in the map is determined according to an influence range of the perception unstable element; further, the target operating area is mapped to the physical space to obtain a target operating area corresponding to a physical object of the perception unstable element in the physical space.
[0043] Optionally, the influence range of the perception unstable element can represent a planar representation in the map of an influence range corresponding to the physical object in the physical space. Wherein, the influence range corresponding to the physical object in the physical space can represent an activity range of the physical object in the physical space, i.e. a space occupied by the physical object in the activity process, for example, the activity range of the sliding door includes the position when it is completely closed, the position when it is completely opened, and all the positions of the intermediate opening angles, and the activity range of the glass shelf includes the initial position, the final position, and all the positions passed in the middle.
[0044] Optionally, the influence range corresponding to the physical object in the physical space can also represent a surrounding area affected by the activity of the physical object in the physical space, for example, in the activity process of the sliding door or the glass shelf, the area where there is a risk of collision with other objects, or the safety buffer area set according to the activity range, or the area that the protruding part such as the equipment handle of the physical object can touch.
[0045] In step S104, an initial operating area is obtained based on the map, and a first operating task corresponding to the initial operating area and a second operating task corresponding to the target operating area are determined according to the positional relationship between the initial operating area and the target operating area; the first operating task is used to operate the robot in the initial operating area based on the area not involving the target operating area, and the second operating task is used to operate the robot based on the target operating area.
[0046] Wherein, the initial operating area can represent an operating area preliminarily determined in the map or in the physical space corresponding to the map according to actual robot business requirements; the number of initial operating areas can be at least one.
[0047] Exemplarily, the positional relationship between the initial operating area and the target operating area includes: a separation relationship between the initial operating area and the target operating area, i.e. the two are completely separated, or only the boundary is in contact without overlapping part; an overlapping relationship between the initial operating area and the target operating area, i.e. the two are completely coincident, or partially coincident with overlapping part; a containing relationship between the initial operating area and the target operating area, i.e. the initial operating area completely contains the target operating area, or the target operating area completely contains the initial operating area.
[0048] Exemplarily, whether the target running area is involved in the initial running area is determined according to the positional relationship between the initial running area and the target running area, so as to adaptively determine the actual running area involved in the first running task corresponding to the initial running area, and the target running area is targetedly taken as the running area involved in the second running task.
[0049] Exemplarily, if there are multiple initial running areas and multiple target running areas, the positional relationship between each initial running area and each target running area can be traversed to adaptively determine the first running task corresponding to each initial running area and the second running task corresponding to each target running area.
[0050] Optionally, the whole area corresponding to the map can be directly taken as the initial running area, or a certain area in the map can be specified as the initial running area; or the whole area corresponding to the map can be divided according to a specified area division manner, and the initial running area can be determined according to the sub-areas obtained by the division, for example, the whole area is divided into multiple sub-areas arranged in a grid shape and having equal areas, and each sub-area is taken as a different initial running area.
[0051] Optionally, if the robot is a cleaning robot, the first running task is used to clean the area in the initial running area which does not involve the target running area, and the second running task is used to clean the target running area; if the robot is a delivery robot, the first running task is used to deliver the articles corresponding to the area in the initial running area which does not involve the target running area, and the second running task is used to deliver the articles corresponding to the target running area; if the robot is a patrol robot, the first running task is used to perform safety patrol on the area in the initial running area which does not involve the target running area, and the second running task is used to perform safety patrol on the target running area.
[0052] In step S106, the moving path corresponding to the target running task is generated according to the target running task to be executed, so as to execute the target running task according to the moving path corresponding to the target running task, until all the target running tasks are executed one by one; the target running task is one of the first running task and the second running task.
[0053] The moving path corresponding to the target running task can represent the corresponding moving path in the overall flow of the running task in which the robot enters the running area corresponding to the target running task to work and leaves the running area after completing the work.
[0054] The mobile path corresponding to the target running task can also represent, in the running area corresponding to the target running task, if the robot detects that a collision with an obstacle has occurred or is about to occur, the corresponding mobile path in the running task burst process in which the robot makes an avoidance action. The avoidance action can mean staying in place, detouring in the running area, or leaving the running area.
[0055] Optionally, according to each target running task to be executed, a mobile path corresponding to each target running task is generated, that is, according to the type of the running area corresponding to the target running task, the mobile path corresponding to the target running task is generated in a targeted manner; wherein the type of the running area includes the target running area and the area in the initial running area other than the target running area.
[0056] Optionally, the mobile path corresponding to the target running task can also be further determined in multiple dimensions and comprehensively according to parameters such as the area, shape, environmental conditions, and importance of the running area corresponding to the target running task.
[0057] Optionally, each target running task can be executed in a specified order, for example: each first running task is executed one by one, and then each second running task is executed one by one; each second running task is executed one by one, and then each first running task is executed one by one; the initial running area and the target running area are sorted according to a specified sorting method, and the corresponding target running task is executed in sequence according to the sorting result, for example, the initial running area and the target running area are sorted according to factors such as the importance, environmental conditions, and arrangement position in the map.
[0058] In this embodiment, first, the target running area corresponding to the unstable perception element in the map is obtained, and the initial running area is obtained based on the map. According to the positional relationship between the initial running area and the target running area, the running tasks corresponding to the initial running area and the target running area are adaptively determined, and then the mobile path in the initial running area and the target running area is accurately generated according to each running task. Based on this, in a scene where the robot has difficulty in stably perceiving a physical object, the area involved and the area not involved by the physical object can be adaptively distinguished in the geographical position level and in the running task level, and then the mobile path of the robot can be efficiently and accurately planned in a targeted manner according to the distinguished geographical position and the corresponding running task.
[0059] In one exemplary embodiment, the target running area corresponding to the unstable perception element in the map is obtained, including steps S202 to S206, wherein:
[0060] In step S202, the position information and configuration information of the perception-unstable element in the map are obtained.
[0061] For example, when a physical object in the physical space is mapped to the map, the position information of the physical object in the physical space is correspondingly mapped to the position information of the perception-unstable element in the map; wherein the position information of the perception-unstable element can represent the position, orientation, etc. of the perception-unstable element in the map.
[0062] For example, when a physical object in the physical space is mapped to the map, the configuration information of the physical object in the physical space is correspondingly mapped to the configuration information of the perception-unstable element in the map; wherein the configuration information of the perception-unstable element can represent the type of the perception-unstable element, the configuration mode of the components of the perception-unstable element, the size of the perception-unstable element and its components in the map.
[0063] Optionally, as shown in FIG. 2, when the robot in the physical space has difficulty in stably perceiving a physical object with a glass material, the refrigerator is mapped to the map to obtain the corresponding perception-unstable element. In the configuration information of the perception-unstable element: the type of the perception-unstable element represents that the perception-unstable element is a planar representation of the refrigerator type physical object; the configuration mode of the components of the perception-unstable element represents the type, number and activity mode of the components, i.e. the components of the perception-unstable element include glass door X, glass door Y, glass door Z and a containing space W, when the glass door is in a closed state, each glass door is sequentially arranged on the same side of the containing space W, and the opening and closing of the outward pushing glass door is realized by the circular motion around one end.
[0064] Optionally, in the above-mentioned perception-unstable element, the size of the perception-unstable element and its components in the map represents the thickness, arc, rotation radius, etc. of the glass door X, glass door Y, glass door Z, and the length, width, area, etc. of the containing space W.
[0065] Optionally, a field survey can be performed in the physical space in advance to obtain the position information and configuration information of the physical object that is difficult for the robot to stably perceive in the physical space; when the physical object in the physical space is mapped to the perception-unstable element in the map, the position information and configuration information of the perception-unstable element are correspondingly mapped.
[0066] In step S204, the geometric feature corresponding to the influence range of the perception-unstable element is determined in the map according to the position information and configuration information of the perception-unstable element.
[0067] The geometric feature corresponding to the influence range of the unstable perception element indicates that the influence range of the unstable perception element is defined and described in a geometric manner.
[0068] For example, the influence range of the unstable perception element can be described by a specified geometric shape. For example, as shown in FIG. 3, with reference to the physical object that is difficult for the robot to stably perceive in FIG. 2, one side of each glass door is arranged as a glass wall surface, the length of the glass wall surface is taken as the length of the rectangle, and the width of the glass door is taken as the width of the rectangle, so as to define and describe the influence range of the unstable perception element by the geometric shape of the rectangle.
[0069] Alternatively, a suitable geometric shape can be selected by the configuration information of the unstable perception element to adaptively define and describe the influence range of the unstable perception element, or a suitable geometric shape can be selected by the position information between different unstable perception elements to adaptively define and describe the influence range of different unstable perception elements respectively, so as to avoid the influence ranges corresponding to different unstable perception elements from overlapping.
[0070] For example, the influence range of the unstable perception element can be described by a specified labeling manner. For example, on the basis of describing the influence range of the unstable perception element by the geometric shape, the points of the geometric shape are labeled, as shown in FIG. 3, in the rectangular influence range corresponding to the physical object that is difficult for the robot to stably perceive, the left bottom vertex, the right bottom vertex, the right top vertex, and the left top vertex of the rectangle are sequentially labeled as A, B, C, and D in a clockwise labeling order.
[0071] Alternatively, on the basis of describing the influence range of the unstable perception element by the geometric shape, the area, the side length, the perimeter, and other information of the geometric shape can also be labeled.
[0072] In step S206, the target running area corresponding to the unstable perception element is obtained according to the geometric feature corresponding to the influence range of the unstable perception element.
[0073] For example, the robot can determine the influence range of the unstable perception element in the map by a specified geometric shape and labeling manner according to the position information and the configuration information of the unstable perception element, so as to take the influence range of the unstable perception element in the map as the target running area of the unstable perception element in the map. For example, the rectangle determined by the points ABCD in FIG. 3 is the target running area.
[0074] Optionally, the physical space can also be pre-surveyed in the field, and the corresponding influence range of the physical object in the physical space is determined according to the measured position information and configuration information of the physical object in the physical space that the robot is difficult to stably perceive, and the corresponding influence range of the physical object in the physical space is taken as the corresponding target running area of the physical object in the physical space. Then, the corresponding target running area of the physical object in the physical space is mapped to the map to obtain the corresponding target running area of the perception unstable element in the map. Thus, the target running area corresponding to the perception unstable element is directly obtained by the robot.
[0075] In this embodiment, the influence range described by the geometric features corresponding to the perception unstable element is adaptively and visually determined in the map through the position information and configuration information of the perception unstable element, and the target running area corresponding to the perception unstable element is efficiently and accurately obtained.
[0076] In one exemplary embodiment, according to the positional relationship between the initial running area and the target running area, the first running task corresponding to the initial running area and the second running task corresponding to the target running area are determined, including steps S302 to S306, wherein:
[0077] In step S302, if the target running area exists in the initial running area, the first running task is taken as a task for running the robot in the initial running area based on the area other than the target running area.
[0078] Exemplarily, if the target running area exists in the initial running area, it can be indicated that there is an overlapping relationship or a containing relationship between the initial running area and the target running area.
[0079] Optionally, if an initial running area and a target running area have an overlapping relationship, the actual running area corresponding to the first running task can be determined according to the overlapping area, for example: if an initial running area and a target running area have a partially overlapping area, the area other than the partially overlapping area is taken as the actual running area corresponding to the first running task; if an initial running area and a target running area completely coincide, the initial running area is taken as the target running area, and the first running task corresponding to the initial running area has no actual running area, that is, it can be understood that the initial running area has no corresponding first running task.
[0080] Optionally, if an initial running area and a target running area have a containing relationship, the actual running area corresponding to the first running task can be determined according to the contained area, for example, if an initial running area completely contains a target running area, the area in the initial running area except the target running area is taken as the actual running area corresponding to the first running task; if a target running area completely contains an initial running area, the initial running area is taken as a part of the target running area, and the first running task corresponding to the initial running area has no actual running area, that is, it can be understood that the initial running area has no corresponding first running task.
[0081] Optionally, if the robot is a cleaning robot and there is a target running area in the initial running area, the first running task is taken as a task for cleaning the area in the initial running area except the target running area.
[0082] Step S304, if there is no target running area in the initial running area, the first running task is taken as a task for running the robot based on the initial running area.
[0083] Exemplarily, if there is no target running area in the initial running area, it can be indicated that the initial running area and the target running area have a separation relationship.
[0084] Optionally, if an initial running area and a target running area have a separation relationship, the actual running area corresponding to the first running task can be determined according to the initial running area, for example, if an initial running area and a target running area are completely separated or only have a boundary contact without an overlapping part, the initial running area is taken as the actual running area corresponding to the first running task.
[0085] Optionally, if the robot is a cleaning robot and there is no target running area in the initial running area, the first running task is taken as a task for cleaning the initial running area.
[0086] Step S306, the second running task is taken as a task for running the robot based on the target running area, and only when the second running task is executed, the target running area is taken as an area allowing passage.
[0087] Exemplarily, the target running area is directly taken as the actual running area corresponding to the second running task, that is, a running task is independently set for a physical object that is difficult for a certain robot to stably perceive, and the actual running area corresponding to the running task is completely set according to the influence range of the physical object.
[0088] Exemplarily, for one target running area, only when the robot executes the second running task corresponding to the target running area, the target running area is labeled as a passable area by the robot; when the robot executes a running task other than the second running task corresponding to the target running area, for example, executes the first running task corresponding to an area outside the target running area, or executes the second running task corresponding to another target running area, the target running area is labeled as a non-passable area by the robot.
[0089] Exemplarily, when the robot completes the first running task corresponding to one initial running area and goes to the next initial running area, the moving path corresponding to the transition between the two initial running areas does not pass through any target running area.
[0090] Optionally, when the robot is a cleaning robot, the second running task is taken as a task for cleaning the target running area.
[0091] In this embodiment, according to the positional relationship between the initial running area and the target running area, the actual running area of the first running task corresponding to the initial running area is adaptively determined, and the target running area is determined as the actual running area of the corresponding second running task.
[0092] In one exemplary embodiment, the target running task is the second running task, and the moving path corresponding to the target running task is generated according to the target running task to be executed, including steps S402 to S406, wherein:
[0093] In step S402, the target pose of the robot when entering the target running area is determined according to the geometric features of the target running area, and a candidate point is determined from the point outside the target running area according to the target pose.
[0094] The target pose of the robot when entering the target running area can represent that the robot enters the target running area through a specified position and a specified direction; the candidate point is a point preliminarily determined to correspond to the target pose of the robot when entering the target running area, that is, the robot can enter the target running area in the target pose when entering the target running area from the candidate point.
[0095] Exemplarily, the target pose of the robot when entering the target running area is determined according to the geometric features of the target running area, which can represent that in the target running area described by the geometric features, the specified position and the specified direction of the robot when entering the target running area are determined considering factors such as improving the work efficiency of the robot as much as possible and avoiding collision with physical objects.
[0096] Optionally, if the robot is a cleaning robot, the specified position and the specified direction of the cleaning robot when entering the target operating area are determined by taking into account the factors of avoiding missing cleaning as much as possible and improving cleaning efficiency.
[0097] Exemplarily, as shown in FIG. 4, with reference to the target operating area (the rectangular area surrounded by ABCD) in FIG. 3, on the one hand, in order to avoid the problem of collision between the robot and the physical object when the robot enters the target operating area as much as possible, the layout direction of the glass wall surface of the target operating area, i.e., the layout direction of the AB side, is taken as the direction of the robot when entering the target operating area, i.e., entering the target operating area according to the direction perpendicular to the AD side or entering the target operating area according to the direction perpendicular to the BC side; on the other hand, in order to avoid the problem of missing cleaning as much as possible, the midpoint of the AD side or the midpoint of the BC side of the target operating area is taken as the position of the robot when entering the target operating area.
[0098] Based on the direction and the position of the robot when entering the target operating area determined above, in the target operating area, a straight line is drawn which is parallel to the AB side and passes through the midpoint P of the AD side and the midpoint Q of the BC side, and the point positions on the straight line and outside the target operating area are taken as candidate point positions, i.e., the point positions to the left of the midpoint P on the straight line and the point positions to the right of the midpoint Q on the straight line are taken as candidate point positions.
[0099] In step S404, the target point position corresponding to the target operating area is determined from the candidate point positions according to the distances between the candidate point positions and the target operating area.
[0100] The target point position is the final actually determined point position corresponding to the target pose of the robot when entering the target operating area, i.e., the robot can enter the target operating area in the target pose when entering the target operating area from the target point position.
[0101] Exemplarily, the candidate point position corresponding to the minimum distance can be directly taken as the target point position corresponding to the target operating area according to the distances between the candidate point positions and the target operating area.
[0102] Exemplarily, the candidate point positions satisfying the distance threshold condition can be preliminarily screened from the candidate point positions according to the specified distance threshold condition, and then the candidate point position corresponding to the minimum distance can be determined as the target point position corresponding to the target running region according to the distances between the candidate point positions satisfying the distance threshold condition and the target running region respectively.
[0103] As shown in FIG. 4, two circular regions can be obtained with the midpoint P and the midpoint Q as the origins and the preset threshold as the radii respectively, the candidate point positions in the circular regions can be determined as the candidate point positions satisfying the distance threshold condition, and then the candidate point position corresponding to the minimum distance can be determined as the target point position corresponding to the target running region according to the distances between the candidate point positions satisfying the distance threshold condition and the target running region respectively.
[0104] Exemplarily, the candidate point position corresponding to the minimum distance and having no obstacle in the advancing direction can be determined as the target point position corresponding to the target running region according to the distances between the candidate point positions and the target running region respectively and in combination with the roadblock condition in the running environment of the robot.
[0105] In step S406, the target running region is determined as the region allowing passage when the robot moves to the target point position, and the moving path corresponding to the second running task is generated.
[0106] Exemplarily, the target running region is marked as the region allowing passage by the robot when the robot moves to the target point position, and the moving path corresponding to the second running task is generated in advance, so that the robot runs in the target running region according to the generated moving path.
[0107] In the embodiment, when the target running task is the second running task, firstly, the target pose of the robot entering the target running region is adaptively determined at the level of the geometric features of the target running region, then the candidate point positions are preliminarily screened according to the target pose at the level of the pose of the robot entering the target running region, and then the target point position is further determined from the candidate point positions at the level of the distances between the candidate point positions and the target running region, so that the robot enters the target running region in the target pose from the target point position is accurately realized.
[0108] In an example embodiment, the target running task is a second running task, and the mobile path corresponding to the target running task is generated according to the target running task to be executed, including steps S502 to S506.
[0109] In step S502, the unit coverage range of the robot is acquired. The unit coverage range is the range that can be covered by the robot in a preset working state.
[0110] Optionally, if the robot is a cleaning robot, the unit coverage range of the cleaning robot can represent the cleaning range that can be covered by the cleaning device of the cleaning robot in a preset cleaning state. The cleaning device of the cleaning robot can represent a device for realizing a cleaning function, which can realize cleaning effects such as removing dust and dirt, dissolving stubborn stains, collecting liquid and debris, etc. The preset cleaning state of the cleaning device can represent the normal working state of the cleaning robot in the cleaning process.
[0111] Optionally, if the robot is an inspection robot, the unit coverage range of the inspection robot can represent the monitoring range that can be covered by the monitoring device of the inspection robot in a preset monitoring state. The monitoring device of the inspection robot can represent a device for realizing a monitoring function, which can include a camera, a sensor, to realize monitoring effects such as image data acquisition, sensor data acquisition, etc. The preset monitoring state of the monitoring device can represent the normal working state of the inspection robot in the safety inspection process.
[0112] Optionally, if the robot is a delivery robot, the unit coverage range of the delivery robot can represent the article receiving range or the article delivery range that can be covered by the article handling device of the delivery robot in a preset handling state. The article handling device of the delivery robot can represent a device for realizing an article receiving function or an article delivery function, which can include a mechanical arm, a transmission belt, a clamp, to realize the effect of grabbing and placing articles. The preset handling state of the article handling device can represent the normal working state of the delivery robot in the process of receiving or delivering articles.
[0113] Optionally, if the robot is a cleaning robot, the unit coverage range of the cleaning robot can represent the unit cleaning range that can be covered by the cleaning device in the normal working state, for example, the coverage area, coverage radius, coverage diameter, etc. corresponding to the rotating brush in the cleaning device, or the coverage area, coverage width, etc. corresponding to the wiping pad in the cleaning device; for another example, it can also represent the effective adsorption area corresponding to the cleaning device when collecting liquid and debris, and also represent the effective spraying area corresponding to the cleaning device when spraying cleaning liquid to dissolve stubborn stains.
[0114] Step S504: Based on the robot's unit coverage area, determine the interval between each movement path segment of the robot in the target operating area, and obtain each movement path segment covering the target operating area.
[0115] For example, the movement path in the target operating area can consist of multiple movement path segments, so that the robot can move comprehensively in the target operating area by passing through each movement path segment; if the robot is a cleaning robot, then the cleaning robot will uniformly and thoroughly clean the target operating area by passing through each movement path segment.
[0116] For example, each movement path segment can represent a sequentially embedded rectangular path segment, so that the cleaning robot passes through each movement path segment in turn to achieve comprehensive cleaning of the target operating area in a "U"-shaped movement path.
[0117] As shown in Figure 5, referring to the target running area in Figure 3, the movement path in the target running area consists of a first movement path segment corresponding to rectangle abcd and a second movement path segment corresponding to rectangle efgh, and the second movement path segment is embedded in the first movement path segment.
[0118] First, based on the unit cleaning range of the cleaning robot, determine the intervals between each side of the first moving path segment and the boundary of the target operating area. For example, the coverage radius corresponding to the rotating brush in the cleaning device is used as the interval between the ab side of the first moving path segment and the AB side of the target operating area, the interval between the bc side of the second moving path segment and the BC side of the target operating area, the interval between the cd side of the first moving path segment and the CD side of the target operating area, and the interval between the da side of the first moving path segment and the DA side of the target operating area.
[0119] Furthermore, based on the unit cleaning range of the cleaning robot, the intervals between each side of the first moving path segment and the corresponding side of the second moving path segment are determined. For example, the coverage radius corresponding to the rotating brush in the cleaning device is used as the interval between the ab side of the first moving path segment and the ef side of the second moving path segment, the interval between the bc side of the first moving path segment and the fg side of the second moving path segment, the interval between the cd side of the first moving path segment and the gh side of the second moving path segment, and the interval between the da side of the first moving path segment and the he side of the second moving path segment.
[0120] Optionally, each movement path segment can also represent a U-shaped path segment connected end to end in sequence, so that the cleaning robot passes through each movement path segment in turn and achieves comprehensive cleaning of the target operating area in a "bow" shaped movement path.
[0121] Exemplarily, in the case that the number of the moving path segments in the target operation area is not explicitly known, the interval between the current moving path segment and the next moving path segment can be determined according to the unit coverage range of the robot, and a new moving path segment is constructed according to the determined interval until the robot realizes full coverage of the target operation area by all the constructed moving path segments, thereby obtaining the number of the moving path segments in the target operation area.
[0122] In step S506, the moving path corresponding to the second operation task is generated according to the moving order and the moving direction of each moving path segment.
[0123] The moving order of the moving path segment can represent that each moving path segment is sorted according to the arrangement of each moving path segment in the target operation area, so that the robot sequentially passes through different moving path segments in the target operation area according to the sorting result.
[0124] The moving direction of the moving path segment can represent the corresponding advancing direction of the robot when passing through the moving path segment.
[0125] Exemplarily, as shown in FIG. 5, the moving order of each moving path segment is determined according to the order from outside to inside, that is, the moving order of the first moving path segment corresponding to the rectangle abcd is prior to the moving order of the second moving path segment corresponding to the rectangle efgh; and the same passing direction of all the moving path segments is taken as the moving direction of each moving path segment, that is, the moving direction of the first moving path segment and the second moving path segment can both be the counterclockwise passing direction, that is, the moving direction of the first moving path segment is the counterclockwise direction corresponding to the order of a, b, c, d, and the moving direction of the second moving path segment is the counterclockwise direction corresponding to the order of e, f, g, h.
[0126] Exemplarily, between the moving path segments of adjacent moving orders, when the robot completes the passing on the moving path segment of the current moving order, the point position corresponding to the minimum distance on the moving path segment of the next moving order is determined according to the minimum distance between the current position of the robot and the moving path segment of the next moving order, and a path segment between the current position and the point position is generated, so that the robot transfers from the moving path segment of the current moving order to the moving path segment of the next moving order through the path segment.
[0127] Exemplarily, when the robot finishes the movement on the movement path segment in the last movement order, then in the area outside the target running area, a point position with the minimum distance from the current position of the robot is determined, and the point position is a safe point position without collision risk with obstacles; a corresponding straight line path segment can be directly determined according to the straight line distance between the current position of the robot and the point position, so that the robot can pass through the straight line path segment to leave the target running area and reach the point position; or according to the current roadblock condition, a path segment between the current position of the robot and the point position can be correspondingly set, so that the robot can pass through the path segment to leave the target running area and safely reach the point position while bypassing the obstacles.
[0128] In the embodiment, when the target running task is the second running task, firstly, the arrangement interval between each movement path segment of the robot is accurately determined according to the unit coverage range of the robot, so as to ensure the comprehensive coverage running of the robot on the target running area, and secondly, the movement path corresponding to the second running task is accurately and completely fused according to the movement order and the movement direction corresponding to each movement path segment.
[0129] In one exemplary embodiment, the target running task is the second running task, and the target running task is executed according to the movement path corresponding to the target running task, including steps S602 to S606.
[0130] In step S602, in the target running area, if it is detected that the robot has a collision risk with the target object at the current position, then in the point positions in the area outside the target running area, the avoidance point position is determined according to the distance between each point position and the current position of the robot.
[0131] The target object can represent a physical object in the target running area, which can represent a physical object that the robot can hardly stably perceive, or a physical object that the robot can stably perceive.
[0132] Exemplarily, in the point positions in the area outside the target running area, the point position with the minimum distance from the current position of the robot is taken as the avoidance point position, and the avoidance point position is a safe point position without collision risk with obstacles.
[0133] In step S604, the avoidance path from the current position to the avoidance point position is determined according to the activity range of the target object.
[0134] Exemplarily, the avoidance path from the current position of the robot to the avoidance point position is determined according to the activity range of the target object in the physical space, and the avoidance path bypasses the activity range of the target object as much as possible to avoid collision with the target object.
[0135] Exemplarily, when the robot detects a target object with a collision risk in the physical space, the target object is mapped from the physical space to the map to obtain a planar representation of the target object in the map and a planar representation of the activity range of the target object in the map; and a collision avoidance path between the current position of the robot and the avoidance point is planned according to the target object and the planar representations of the target object and the activity range of the target object in the map.
[0136] At step S606, an updated movement path is obtained according to the collision avoidance path, and the second operation task is interrupted after the robot leaves the target operation area according to the updated movement path.
[0137] Exemplarily, the movement path of the robot in the target operation area is updated according to the generated collision avoidance path to obtain an updated movement path during execution of the second operation task by the robot, and the second operation task is interrupted and the target operation area is marked as a forbidden area after the robot leaves the target operation area according to the updated movement path.
[0138] Exemplarily, interrupting the second operation task can mean setting the second operation task to an end state, i.e., setting to end the operation of the robot in the target operation area corresponding to the second operation task; or can mean setting the second operation task to a suspension state, i.e., setting to temporarily stop the operation of the robot in the target operation area corresponding to the second operation task, and the second operation task can be resumed after a preset time period to perform a full coverage operation in the target operation area by the robot or continue to operate in a region that has not been operated in when the second operation task is interrupted.
[0139] Optionally, if the robot is a cleaning robot, interrupting the second operation task can mean setting the second operation task to an end state, i.e., setting to end the cleaning of the target operation area corresponding to the second operation task; or can mean setting the second operation task to a suspension state, i.e., setting to temporarily stop the cleaning of the target operation area corresponding to the second operation task, and the second operation task can be resumed after a preset time period to perform a full cleaning in the target operation area or continue to clean a region that has not been cleaned when the second operation task is interrupted.
[0140] In the embodiment, if it is detected that the robot has a risk of collision with a target object at the current position in the target operation area, the avoidance point and the collision avoidance path of the robot are adaptively determined to enable the robot to efficiently and safely avoid the collision risk during operation in the target operation area.
[0141] In one exemplary embodiment, as shown in FIG. 6, the method is applied to a cleaning robot, and the method further includes the following steps:
[0142] In step S702, the sensing unstable element in the map and the target running area corresponding to the sensing unstable element are acquired; the target running area corresponding to the sensing unstable element is defined by the geometric shape of the polygon, and each vertex of the polygon is sorted and numbered in counterclockwise order.
[0143] In step S704, the initial running area is acquired based on the map, and the first running task corresponding to the initial running area and the second running task corresponding to the target running area are determined according to the positional relationship between the initial running area and the target running area.
[0144] In step S706, before the cleaning robot executes the second running task, the target pose of the cleaning robot when entering the target running area is determined according to the geometric features of the target running area, a plurality of candidate points matching the target pose are determined from the point positions of the area outside the target running area, and the candidate point with the minimum distance from the target running area and no obstacle conflict is taken as the target point position of the cleaning robot before entering the target cleaning area.
[0145] In step S708, when the cleaning robot moves to the target point position, the target running area is marked as an area allowing passage, the interval between each moving path segment of the cleaning robot in the target running area is determined according to the acquired unit coverage range of the cleaning robot, and the moving path corresponding to the second running task is generated according to the moving order and moving direction corresponding to each moving path segment, respectively.
[0146] In step S710, the cleaning robot enters the target running area in the target pose from the target point position, and starts to execute the second running task and cleans according to the moving path corresponding to the second running task.
[0147] In step S712, if the cleaning robot completes the cleaning of the target running area in the target running area, the point position with the minimum distance from the current position and no obstacle conflict is taken as the end point position from the point positions of the area outside the target running area, the disengagement path from the current position to the end point position is determined according to the positional relationship between the current position and the end point position, and the second running task is ended after the cleaning robot leaves the target running area according to the disengagement path, and the target running area is marked as an area prohibiting passage.
[0148] In step S714, if the cleaning robot is in the target running area and it is detected that there is a risk of collision with the target object at the current position, a point position in an area outside the target running area is determined as an avoidance point position, which has the smallest distance from the current position and no obstacle conflict. An avoidance path is determined for the cleaning robot to move from the current position to the avoidance point position according to the activity range of the target object. After the cleaning robot leaves the target running area according to the avoidance path, the second running task is ended, and the target running area is marked as a forbidden area.
[0149] Optionally, before the cleaning robot performs the first running task, the first running task can correspond to a moving path generation manner that is the same as the moving path generation manner of the second running task in step S708. However, the initial running area corresponding to the first running task does not need to be marked as a permitted area in advance.
[0150] Optionally, after the cleaning robot completes cleaning of the initial running area corresponding to the first running task, the cleaning robot can directly move to a next initial running area for cleaning, or move to a target point position corresponding to a target running area to wait for performing a second running task corresponding to the target running area.
[0151] Optionally, when the cleaning robot performs the first running task, if it is detected that there is a risk of collision with the target object at the current position, the cleaning robot can bypass the target object and continue to clean the initial running area according to the original moving path, or generate a moving path in the initial running area again after bypassing.
[0152] Optionally, the end point position in step S712 and the avoidance point position in step S714 can be calculated by traversing each point position in the map through a graph search method, such as a breadth-first search (BFS) algorithm.
[0153] It should be understood that, although each step in the flowchart involved in each embodiment described above is shown in sequence according to the arrow, these steps are not necessarily executed in the order indicated by the arrow. Unless otherwise specified herein, the execution of these steps is not strictly limited in sequence, and these steps can be executed in other orders. Moreover, at least part of the steps in the flowchart involved in each embodiment described above can include multiple steps or stages, which are not necessarily executed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be executed in rotation or alternation with at least part of other steps or stages in other steps.
[0154] Based on the same inventive concept, the embodiments of the present application also provide a robot control device for implementing the robot control method described above. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme described in the above method, so the specific limitations in one or more robot control device embodiments provided below can refer to the limitations of the robot control method described above, which will not be repeated here.
[0155] In an exemplary embodiment, as shown in FIG. 7, a robot control device is provided, comprising: an acquisition module 702, a task determination module 704, and a generation module 706, wherein:
[0156] The acquisition module 702 is configured to acquire a target operating area corresponding to the perception unstable element in the map; the target operating area is a region determined according to the influence range of the perception unstable element;
[0157] The task determination module 704 is configured to acquire an initial operating area based on the map, and determine a first operating task corresponding to the initial operating area and a second operating task corresponding to the target operating area according to the positional relationship between the initial operating area and the target operating area; the first operating task is used to operate the robot in the initial operating area based on a region not involving the target operating area, and the second operating task is used to operate the robot based on the target operating area;
[0158] The generation module 706 is configured to generate a movement path corresponding to the target operating task according to the target operating task to be executed, and execute the target operating task according to the movement path corresponding to the target operating task until all the target operating tasks are executed one by one; the target operating task is one of the first operating task and the second operating task.
[0159] In an exemplary embodiment, the acquisition module 702 is further configured to: acquire position information and configuration information corresponding to the perception unstable element in the map; determine the geometric feature corresponding to the influence range of the perception unstable element in the map according to the position information and the configuration information corresponding to the perception unstable element; and obtain the target operating area corresponding to the perception unstable element according to the geometric feature corresponding to the influence range of the perception unstable element.
[0160] In an example embodiment, the determining module 704 is further configured to: if the target running area exists in the initial running area, take the first running task as a task for running the robot in the initial running area based on an area other than the target running area; if the target running area does not exist in the initial running area, take the first running task as a task for running the robot based on the initial running area; take the second running task as a task for running the robot based on the target running area, and only when the second running task is executed, take the target running area as an area allowing passage.
[0161] In an example embodiment, the generating module 706 is further configured to: according to the geometric feature corresponding to the target running area, determine a target pose of the robot when entering the target running area, from the point positions of the area other than the target running area, determine a candidate point position according to the target pose; determine a target point position corresponding to the target running area from the candidate point positions according to the distance between each candidate point position and the target running area; when the robot moves to the target point position, take the target running area as an area allowing passage, and generate a moving path corresponding to the second running task.
[0162] In an example embodiment, the generating module 706 is further configured to: obtain a unit coverage range of the robot; the unit coverage range is a range that can be covered by the robot in a preset working state; according to the unit coverage range of the robot, determine intervals between each moving path segment of the robot in the target running area, to obtain each moving path segment covering the target running area; according to the moving order and the moving direction corresponding to each moving path segment, generate a moving path corresponding to the second running task.
[0163] In an example embodiment, the apparatus further comprises an executing module configured to: in the target running area, if it is detected that there is a risk of collision between the robot and the target object at the current position, in the point positions of the area other than the target running area, determine an avoidance point position according to the distance between each point position and the current position of the robot; determine an avoidance path from the current position to the avoidance point position according to the activity range of the target object; according to the avoidance path, obtain an updated moving path, and after leaving the target running area according to the updated moving path, interrupt the second running task.
[0164] The modules in the above robot control apparatus can be realized by software, hardware, and combinations thereof, in whole or in part. The modules can be embedded in or independent of the processor in the computer device in hardware form, or stored in the memory in the computer device in software form, so as to be called and executed by the processor to perform the operations corresponding to the modules.
[0165] In an example embodiment, a computer device is provided, which can be a terminal, and an internal structure diagram of the computer device can be as shown in FIG. 8. The computer device includes a processor, a memory, an input / output interface, a communication interface, a display unit and an input device. Among them, the processor, the memory and the input / output interface are connected through a system bus, and the communication interface, the display unit and the input device are connected to the system bus through the input / output interface. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operating system and the computer program in the non-volatile storage medium to run. The input / output interface of the computer device is used to exchange information between the processor and external devices. The communication interface of the computer device is used to communicate with external terminals in a wired or wireless manner, and the wireless manner can be achieved through WIFI, mobile cellular network, near field communication (NFC) or other technologies. The computer program is executed by the processor to implement a robot control method. The display unit of the computer device is used to form a visually visible picture, which can be a display screen, a projection device or a virtual reality imaging device. The display screen can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer overlaid on the display screen, or a key, trackball or touchpad arranged on the shell of the computer device, or an external keyboard, touchpad or mouse, etc.
[0166] Those skilled in the art can understand that the structure shown in FIG. 8 is only a block diagram of part of the structure related to the scheme of the present application, and does not constitute a limitation on the computer device to which the scheme of the present application is applied. A specific computer device can include more or fewer components than those shown in the figure, or combine certain components, or have a different component arrangement.
[0167] In an example embodiment, a computer device is provided, which includes a memory and a processor, and the memory stores a computer program, and the processor executes the computer program to implement the above steps.
[0168] In an example embodiment, a computer device is provided, which includes a memory and a processor, and the memory stores a computer program, and the processor executes the computer program to implement the above steps.
[0169] In an example embodiment, a computer device is provided, which includes a memory and a processor, and the memory stores a computer program, and the processor executes the computer program to implement the above steps.
[0170] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer readable storage medium, and when executed, can include the processes of the above-mentioned embodiment methods. Any reference to memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. The non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical storage, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. The volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration but not limitation, the RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The database involved in the embodiments provided in the present application can include at least one of a relational database and a non-relational database. The non-relational database can include a distributed database based on a block chain, etc., without being limited thereto. The processor involved in the embodiments provided in the present application can be a general-purpose processor, a central processing unit, a graphics processing unit, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., without being limited thereto.
[0171] The technical features of the above-mentioned embodiments can be combined arbitrarily. In order to make the description simple, all possible combinations of the technical features in the above-mentioned embodiments are not described, however, as long as the combinations of the technical features do not exist contradictory, they should be considered as the scope of the present application.
[0172] The above embodiments only express several implementation ways of the present application, and the description is relatively specific and detailed, but it should not be understood as a limitation to the patent scope of the application. It should be pointed out that for ordinary skilled persons in the art, several modifications and improvements can be made without departing from the concept of the present application, which all belong to the protection scope of the present application. Therefore, the protection scope of the patent of the present application should be subject to the appended claims.
Claims
1. A robot control method, comprising: obtaining a target operating area corresponding to a perception unstable element in a map; the target operating area is determined according to an influence range of the perception unstable element; obtaining an initial operating area based on the map, and determining a first operating task corresponding to the initial operating area and a second operating task corresponding to the target operating area according to a positional relationship between the initial operating area and the target operating area; the first operating task is used to operate a robot in the initial operating area based on a region not involving the target operating area, and the second operating task is used to operate a robot based on the target operating area; generating a movement path corresponding to a target operating task to be executed according to the target operating task, and executing the target operating task according to the movement path corresponding to the target operating task until all target operating tasks are executed one by one; the target operating task is one of the first operating task and the second operating task.
2. The method of claim 1, wherein, The obtaining of the target operating area corresponding to the perception unstable element in the map comprises: obtaining position information and configuration information corresponding to the perception unstable element in the map; determining a geometric feature corresponding to the influence range of the perception unstable element in the map according to the position information and the configuration information corresponding to the perception unstable element; obtaining the target operating area corresponding to the perception unstable element according to the geometric feature corresponding to the influence range of the perception unstable element.
3. The method of claim 1, wherein, The positional relationship between the initial operating area and the target operating area comprises: a separation relationship between the initial operating area and the target operating area, i.e., the two are completely separated or only border contact without overlapping parts; an overlapping relationship between the initial operating area and the target operating area, i.e., the two are completely coincident or partially coincident with overlapping parts; an inclusion relationship between the initial operating area and the target operating area, i.e., the initial operating area completely contains the target operating area, or the target operating area completely contains the initial operating area.
4. The method of claim 1, wherein, The determination of the first operating task corresponding to the initial operating area and the second operating task corresponding to the target operating area according to the positional relationship between the initial operating area and the target operating area comprises: determining whether the initial operating area involves the target operating area according to the positional relationship between the initial operating area and the target operating area; determining an actual operating area involved by the first operating task corresponding to the initial operating area; taking the target operating area as an operating area involved by the second operating task.
5. The method of claim 2, wherein, The obtaining of the target operating area corresponding to the perception unstable element according to the geometric feature corresponding to the influence range of the perception unstable element comprises: determining the target operating area corresponding to the perception unstable element in the map according to the influence range of the perception unstable element; mapping the target operating area to a physical space to obtain a target operating area corresponding to a physical object of the perception unstable element in the physical space. 6. The method of claim 1, wherein, The method further comprises: if one initial running area and one target running area exist a partially overlapped area, then the area except the partially overlapped area is regarded as the actual running area corresponding to the first running task; if one initial running area and one target running area are completely overlapped, then the initial running area is regarded as the target running area, and the first running task corresponding to the initial running area has no actual running area, i.e., the initial running area has no corresponding first running task; if one initial running area completely contains one target running area, then the area in the initial running area except the target running area is regarded as the actual running area corresponding to the first running task; if one target running area completely contains one initial running area, then the initial running area is regarded as a part of the target running area, and the first running task corresponding to the initial running area has no actual running area, i.e., the initial running area has no corresponding first running task; if one initial running area and one target running area are completely separated, or only border contact without overlapping part, then the initial running area is regarded as the actual running area corresponding to the first running task.
7. The method of claim 3, wherein, The target running task is a second running task, and the method further comprises: determining a target pose of the robot when entering the target running area according to a geometric feature of the target running area, and determining a candidate point from a point outside the target running area according to the target pose; determining a target point corresponding to the target running area from the candidate points according to a distance between each candidate point and the target running area; when the robot moves to the target point, regarding the target running area as a passable area, and generating a moving path corresponding to the second running task.
8. The method of claim 1, wherein, The method further comprises: determining a target pose of the robot when entering the target running area according to a geometric feature of the target running area, and determining a candidate point from a point outside the target running area according to the target pose; 9. The method of claim 8, wherein, According to the specified distance threshold condition, candidate point positions satisfying the distance threshold condition are preliminarily screened from the respective candidate point positions; According to the distance between each candidate point position satisfying the distance threshold condition and the target operation region, the candidate point position corresponding to the minimum distance is taken as the target point position corresponding to the target operation region; The distance threshold condition is the maximum distance allowed for the robot to enter the target operation region from the current position in time when the robot is in a region outside the target operation region, or the maximum distance allowed for the robot to generate a moving path corresponding to the target operation region from the current position in time.
10. The method of claim 8, wherein, When the robot moves to the target point position, the method further comprises: In the case that the target operation task is a second operation task, the target pose when entering the target operation region is determined at the level of the geometric characteristics of the target operation region; According to the target pose, candidate point positions are screened at the level of the pose for entering the target operation region; The target point position is determined from the candidate point positions at the level of the distance between the candidate point positions and the target operation region, and the robot is controlled to enter the target operation region in the target pose from the target point position.
11. The method of claim 1, wherein, The target operation task is a second operation task, and the generation of the moving path corresponding to the target operation task according to the target operation task to be executed comprises: Obtaining the unit coverage range of the robot; the unit coverage range is the range that can be covered by the robot in a preset working state; According to the unit coverage range of the robot, the interval between each moving path segment of the robot in the target operation region is determined to obtain each moving path segment covering the target operation region; According to the moving order and moving direction corresponding to each moving path segment, the moving path corresponding to the second operation task is generated.
12. The method of claim 11, wherein, According to the unit coverage range of the robot, the interval between each moving path segment of the robot in the target operation region is determined to obtain each moving path segment covering the target operation region, comprising: In the case that the number of moving path segments in the target operation region is not specified, the interval between the current moving path segment and the next moving path segment is determined according to the unit coverage range of the robot; According to the interval, a new moving path segment is constructed until the robot realizes full coverage of the target operation region through all the constructed moving path segments; The number of moving path segments covering the target operation region is obtained.
13. The method of claim 11, wherein, According to the moving order and moving direction corresponding to each moving path segment, the moving path corresponding to the second operation task is generated, comprising: In the case that the target operation task is the second operation task, the arrangement interval between each moving path segment of the robot is determined according to the unit coverage range of the robot to ensure full coverage of the target operation region by the robot; According to the moving order and moving direction corresponding to each moving path segment, the moving path corresponding to the second operation task is fused.
14. The method of claim 1, wherein, The target operation task is a second operation task, and the execution of the target operation task according to the movement path corresponding to the target operation task comprises: In the target operation area, if it is detected that the robot has a risk of collision with the target object at the current position, a point position outside the target operation area is determined as an avoidance point position according to the distance between each point position and the current position of the robot; According to the activity range of the target object, an avoidance path from the current position to the avoidance point position is determined; According to the avoidance path, an updated movement path is obtained, and after leaving the target operation area according to the updated movement path, the second operation task is interrupted.
15. The method of claim 14, wherein, According to the activity range of the target object, an avoidance path from the current position to the avoidance point position is determined, comprising: When the target object with a risk of collision is detected in the physical space, the target object is mapped from the physical space to the map to obtain a planar representation of the target object in the map and a planar representation of the activity range of the target object in the map; According to the planar representation of the target object and its activity range in the map, an avoidance path between the current position and the avoidance point position is determined.
16. The method of claim 1, wherein, The execution of the target operation task according to the movement path corresponding to the target operation task further comprises: In the target operation area, the target operation task of the target operation area is completed, and in the point position of the area outside the target operation area, the point position with the smallest distance from the current position and without obstacle conflict is taken as an end point position; According to the positional relationship between the current position and the end point position, a disengagement path from the current position to the end point position is determined; After leaving the target operation area according to the disengagement path, the second operation task is ended, and the target operation area is marked as a forbidden area.
17. A robot control device, comprising: an acquisition module configured to acquire a target operation area corresponding to a perception unstable element in a map; The target operation area is a region determined according to the influence range of the perception unstable element; a determination task module configured to acquire an initial operation area based on the map, and determine a first operation task corresponding to the initial operation area and a second operation task corresponding to the target operation area according to the positional relationship between the initial operation area and the target operation area; The first operation task is used to operate the robot in the initial operation area based on a region not involving the target operation area, and the second operation task is used to operate the robot based on the target operation area; a generation module configured to generate a movement path corresponding to a target operation task according to the target operation task to be executed, so as to execute the target operation task according to the movement path corresponding to the target operation task until all target operation tasks are executed one by one; The target operation task is one of the first operation task and the second operation task. 18.A computer device, comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the method in any one of claims 1 to 16 when executing the computer program. 19.A computer readable storage medium, having stored thereon a computer program, wherein the computer program, when executed by a processor, implements the steps of the method in any one of claims 1 to 16. 20.A computer program product, comprising a computer program, wherein the computer program, when executed by a processor, implements the steps of the method in any one of claims 1 to 16.
Citation Information
Patent Citations
Robot whole-situation path planning method facing uncertain environment of mixed terrain and region
CN102854880A
Robot control method and device, terminal and medium
CN112506178A
Robot operation control method and device, electronic equipment and storage medium
CN112783171A
Robot control method, robot and storage medium
CN116572241A
Path planning method and device, computer equipment and storage medium
CN117553804A