WO2022110928A1 - Robot mapping method, robot, storage medium and electronic apparatus - Google Patents

Robot mapping method, robot, storage medium and electronic apparatus Download PDF

Info

Publication number
WO2022110928A1
WO2022110928A1 PCT/CN2021/114003 CN2021114003W WO2022110928A1 WO 2022110928 A1 WO2022110928 A1 WO 2022110928A1 CN 2021114003 W CN2021114003 W CN 2021114003W WO 2022110928 A1 WO2022110928 A1 WO 2022110928A1
Authority
WO
WIPO (PCT)
Prior art keywords
area
map
robot
unknown
unknown area
Prior art date
Application number
PCT/CN2021/114003
Other languages
French (fr)
Chinese (zh)
Inventor
田丰溥
丘伟楠
Original Assignee
追觅创新科技(苏州)有限公司
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 追觅创新科技(苏州)有限公司 filed Critical 追觅创新科技(苏州)有限公司
Publication of WO2022110928A1 publication Critical patent/WO2022110928A1/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/24Floor-sweeping machines, motor-driven
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4011Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
    • G01C21/30Map- or contour-matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • the present application relates to the field of communications, and in particular, to a method for mapping a robot, a robot, a storage medium, and an electronic device.
  • the embodiments of the present application provide a robot mapping method, a robot, a storage medium, and an electronic device, so as to at least solve the problem of a long exploration time of a robot in an autonomous exploration process in the related art.
  • a method for mapping a robot includes: searching for an unknown area that satisfies a preset condition from an initial map of a target area, wherein the preset condition includes at least one of the following : The area of the unknown area is greater than the preset threshold, and the robot is allowed to reach the unknown area; after the robot travels to the unknown area, the robot is controlled to perform map reconstruction in the unknown area, and update all maps according to the reconstructed map.
  • the initial map in the case that the unknown area that meets the preset condition cannot be found in the reconstructed map, the current reconstructed map is used as the mapping result of the robot.
  • the method before using the currently reconstructed map as a mapping result of the robot, the method further includes: cyclically executing the following steps: searching for an unknown area that satisfies a preset condition from the initial map of the target area, and controlling the robot After traveling to the unknown area, perform map reconstruction in the unknown area, and update the initial map according to the reconstructed map, until an unknown area that meets the preset conditions cannot be found in the reconstructed map .
  • the method further includes: from the reconstructed The search range is determined from the map of , and the unknown area that satisfies the preset condition is searched from the search range, wherein the search range does not include: the search range that has been searched from the initial map and meets the preset condition the unknown area; control the robot to perform map reconstruction again in the unknown area searched from the search range, and update the reconstructed map according to the reconstructed map again.
  • search for an unknown area that satisfies preset conditions from the initial map of the target area control the robot to perform map reconstruction in the unknown area after traveling to the unknown area, and update all the information according to the reconstructed map.
  • the initial map includes: after updating the initial map according to the reconstructed map, determining a search range from the reconstructed map, and searching again from the search range for unknown unknowns that meet the preset conditions area, wherein the search range does not include: the unknown area that has been searched from the initial map that meets the preset conditions; the robot is controlled to map the unknown area searched from the search range again. Reconstructing, and updating the reconstructed map according to the re-reconstructed map, so as to search for an unknown area that satisfies the preset condition in the re-reconstructed map.
  • searching for an unknown area that satisfies the preset condition from the initial map of the target area includes: setting a fixed shape of the unknown area, wherein the area of the fixed shape is greater than the preset threshold; According to the fixed shape, an unknown area that satisfies the preset condition is searched from the initial map of the target area.
  • searching for an unknown area that satisfies the preset condition from an initial map of the target area includes: determining an edge area and a central area in the initial map of the target area, where the target area includes: the edge area and the center area; search for an unknown area that satisfies the preset condition from the edge area; after the edge area search is completed, search the center area for an unknown area that satisfies the preset condition area.
  • the method further includes: acquiring a navigation path for the robot to travel from the current position to the unknown area; The robot travels to the unknown area according to the navigation path.
  • acquiring a navigation path for the robot to travel from the current position to the unknown area includes: determining at least one navigation path for the robot to travel from the current position to the unknown area; from the at least one navigation path A first navigation path that satisfies a preset rule is determined, wherein the preset rule includes: the travel cost is the smallest; and the robot is instructed to travel to an unknown area corresponding to the first navigation path according to the first navigation path.
  • the method further includes: in the case that there are multiple unknown areas that satisfy the preset condition, obtaining the robot. Travel from the current position to at least one navigation path of a plurality of unknown areas; determine a second navigation path that satisfies a preset rule from the at least one navigation path, wherein the preset rule includes: the travel cost is the smallest; according to the The second navigation path instructs the robot to travel to an unknown area corresponding to the second navigation path.
  • a robot comprising: a processing module for searching an unknown area that satisfies a preset condition from an initial map of a target area, wherein the preset condition includes at least one of the following 1: The area of the unknown area is greater than the preset threshold, and the robot is allowed to reach the unknown area; control the robot to perform map reconstruction in the unknown area after traveling to the unknown area, and update the map according to the reconstructed map the initial map; a determination module, configured to use the currently reconstructed map as the robot's mapping result when an unknown area that meets the preset condition cannot be found in the reconstructed map.
  • a storage medium is also provided, and a computer program is stored in the storage medium, wherein the computer program is configured to execute the steps in any one of the above method embodiments when running.
  • an electronic device comprising a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to execute any one of the above Steps in Method Examples.
  • the unknown area can be determined from the map of the target area, and then the unknown area is mapped, in the case where the unknown area that meets the preset conditions cannot be found in the map corresponding to the target area, the current reconstructed map of the robot
  • the mapping result of the robot the unknown area in the map of the target area can be searched, and the mapping result of the robot is determined after all the unknown areas have been searched, and a new technical solution for autonomous exploration is provided.
  • the above technical solution solves the problems in the related art that special signs are generally arranged in an unknown environment to realize the autonomous exploration process, but due to the complexity of the unknown environment and other reasons, the robot has a long exploration time in the autonomous exploration process. Furthermore, in the process of reconstructing the map of the target area by the robot, the time for autonomous exploration of the robot can be shortened, and the efficiency of autonomous exploration of the robot can be improved.
  • Fig. 1 is a hardware structure block diagram of a robot according to a method for constructing a robot according to an embodiment of the present application
  • FIG. 2 is a flowchart of a method for constructing a map of a robot according to an embodiment of the present application
  • FIG. 3 is a structural block diagram of a robot according to an embodiment of the present application.
  • FIG. 4 is a schematic flowchart of a method for mapping a robot according to an optional embodiment of the present application.
  • FIG. 1 is a hardware structural block diagram of a robot according to a method for constructing a robot in an embodiment of the present application.
  • the robot may include one or more (only one is shown in FIG. 1 ) processors 102 (the processors 102 may include, but are not limited to, a Microprocessor Unit (MPU) or a programmable logic device for short) (Programmable logic device, abbreviated as PLD) etc.
  • MPU Microprocessor Unit
  • PLD programmable logic device
  • the above-mentioned robot may also include a transmission device 106 and an input and output device 108 for communication functions.
  • a transmission device 106 and an input and output device 108 for communication functions.
  • the structure shown in Fig. 1 is only for illustration, and it does not limit the structure of the above-mentioned robot.
  • the robot may also include more or less components than those shown in Fig. 1, or have different components than those shown in Fig. 1 Equivalent function or a different configuration with more functions than shown in Figure 1.
  • the memory 104 can be used to store computer programs, for example, software programs and modules of application software, such as the computer programs corresponding to the method for constructing the robot in the embodiments of the present application. Executing various functional applications and data processing implements the above-mentioned methods.
  • Memory 104 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory.
  • memory 104 may further include memory located remotely from processor 102, which may be connected to robot 10 through a network. Examples of such networks include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
  • the transmission device 106 is used to receive or transmit data via the network.
  • the specific example of the above-mentioned network may include a wireless network provided by the communication provider of the robot 10 .
  • the transmission device 106 includes a network adapter (Network Interface Controller, NIC for short), which can be connected to other network devices through a base station so as to communicate with the Internet.
  • the transmission device 106 may be a radio frequency (Radio Frequency, RF for short) module, which is used to communicate with the Internet in a wireless manner.
  • RF Radio Frequency
  • FIG. 2 is a flowchart of a method for building a map for a robot according to an embodiment of the present application. As shown in FIG. 2 , the process includes the following steps:
  • Step S102 searching for an unknown area that satisfies the preset condition from the initial map of the target area, wherein the preset condition includes at least one of the following: the area of the unknown area is greater than a preset threshold, and the robot is allowed to reach the unknown area;
  • the above preset condition is a limitation on the area of the unknown area and whether the robot can reach it. In actual operation, other limitations may also be made on the above preset condition, which is not limited in the embodiments of the present application. .
  • the initial map of the target area is a preliminary map established by the SLAM module after the robot reaches an unknown area.
  • the robot can subsequently search for the unknown area according to the preliminary map, and reconstruct and update the map.
  • Step S104 control the robot to carry out map reconstruction in the unknown area after traveling to the unknown area, and update the initial map according to the reconstructed map;
  • Step S106 in the case that an unknown area that meets the preset condition cannot be found in the reconstructed map, the currently reconstructed map is used as the mapping result of the robot.
  • the current reconstruction of the robot is carried out.
  • the map is used as the mapping result of the robot, that is, the unknown area in the map of the target area can be searched. After all the unknown areas are searched, the mapping result of the robot is determined, and a new technical solution for autonomous exploration is provided.
  • the above technical solution solves the problem that in related technologies, special signs are generally arranged in an unknown environment to realize the autonomous exploration process.
  • the robot has a long exploration time in the autonomous exploration process. , which can shorten the time of autonomous exploration of the robot and improve the efficiency of autonomous exploration of the robot in the process of reconstructing the map of the target area.
  • the above steps S102 and S104 may be executed cyclically: searching for an unknown area that satisfies the preset conditions from the initial map of the target area, and controlling the robot After traveling to the unknown area, map reconstruction is performed in the unknown area, and the initial map is updated according to the reconstructed map, until an unknown area that meets the preset conditions cannot be found in the reconstructed map.
  • steps S102 and 104 may be performed once, or may be performed repeatedly in a loop, until there is no more unknown area that meets the preset conditions in the map of the target area.
  • the robot is controlled to perform map reconstruction in the unknown region after traveling to the unknown region, and after updating the initial map according to the reconstructed map
  • the The method further includes: determining a search range from the reconstructed map, and searching for an unknown area that satisfies the preset condition from the search range, wherein the search range does not include:
  • the searched unknown area that meets the preset condition can also be understood as the initial map including: the search range, and the unknown area that meets the preset condition searched from the initial map;
  • the robot performs map reconstruction again in the unknown area searched from the search range, and updates the reconstructed map according to the reconstructed map again.
  • the unknown area that has been determined last time can be used as the known area, that is, the unknown area that has been determined last time is not searched, in short , the search range of the unknown area that meets the preset conditions in the next search does not include the unknown area that has been determined last time.
  • an unknown area that satisfies the preset conditions is searched from the initial map of the target area, and the robot is controlled to perform a map in the unknown area after traveling to the unknown area.
  • the cyclic process of reconstructing and updating the initial map according to the reconstructed map may include the following technical solution: after updating the initial map according to the reconstructed map, determining a search range from the reconstructed map , and search for the unknown area that satisfies the preset condition from the search range again, wherein the search range does not include: the unknown area that has been searched from the initial map that satisfies the preset condition; control The robot performs map reconstruction again in the unknown area searched from the search range, and updates the reconstructed map according to the re-reconstructed map, so as to search for the re-reconstructed map that satisfies the predetermined conditions. Unknown region to set conditions.
  • step S102 there may be various ways to determine the unknown area that satisfies the preset condition.
  • searching for the unknown area that satisfies the preset condition from the initial map of the target area mainly includes Do this by:
  • a fixed shape of the unknown area is set, wherein the area of the fixed shape is greater than the preset threshold; an unknown area that satisfies the preset condition is searched from the initial map of the target area according to the fixed shape.
  • the unknown area can be set to a fixed shape, and the area of the fixed shape is set to a fixed value greater than the preset threshold, and then the unknown area that meets the preset conditions can be determined cyclically from the map of the target area according to this fixed shape, for example , you can set the fixed shape of the unknown area to be a rectangle, or a circle or other shapes that can be set, and then you can explore the target area piece by piece according to the unknown area of this fixed shape.
  • the above threshold can be set according to the actual operation experience. Meter to 0.04 square meters, which can avoid searching for an unknown area surrounded by a known area during map search, so as to perform many unnecessary navigations, resulting in a waste of time and cost.
  • the target area includes: the edge area and the center area; search for an unknown area that satisfies the preset condition from the edge area ; after the edge area search is completed, search for an unknown area that satisfies the preset condition from the center area.
  • the edge area and the center area corresponding to the target area can be determined.
  • the center area can be explored.
  • the target area can be An area formed by extending the edge of the map to the central area for a certain area is used as the above-mentioned edge area, and further, the area in the map corresponding to the target area other than the edge area is used as the above-mentioned central area.
  • the center area can be explored first, and then the edge area can be explored.
  • the embodiments do not limit the above process.
  • the method further includes: acquiring a navigation path for the robot to travel from the current position to the unknown area ; control the robot to travel to the unknown area according to the navigation path.
  • the robot needs to locate and determine its current position, and then obtain the navigation path from the current position to the unknown area, and then control the robot to travel from the current position to the unknown area.
  • the navigation of the robot from the current position to the unknown area is obtained.
  • the path can be achieved by: determining at least one navigation path for the robot to travel from the current position to the unknown area; determining a first navigation path that satisfies a preset rule from the at least one navigation path, wherein the The preset rules include: the travel cost is the smallest; and the robot is instructed to travel to the unknown area corresponding to the first navigation path according to the first navigation path.
  • the walking cost refers to the cost calculated by the robot according to the map search module according to the path length from the current position to the target position, obstacle information, and the like. That is, there is at least one navigation path when the robot travels from the current position to the unknown area, the first navigation path is the one with the smallest travel cost, and the robot travels to the unknown area according to the first navigation path.
  • the robot needs to select an unknown area with the smallest walking cost. That is to say, the unknown area that satisfies the preset conditions is In the case of more than one, obtain at least one navigation path for the robot to travel from the current position to a plurality of unknown areas; determine a second navigation path that satisfies a preset rule from the at least one navigation path, wherein the preset The rules include: the travel cost is the smallest; and the robot is instructed to travel to the unknown area corresponding to the second navigation path according to the second navigation path.
  • the target device used with the robot can be uninterrupted or send a recharge signal according to a preset period, then when the robot detects the recharge signal , and when the robot is successfully positioned, the robot is controlled to travel to the target device that sends the recharge signal.
  • the target device may be a charging base.
  • a robot is also provided, and the robot is used to implement the above-mentioned embodiments and preferred implementations, and what has been described will not be repeated.
  • the term "module” may be a combination of software and/or hardware that implements a predetermined function.
  • the apparatus described in the following embodiments is preferably implemented in software, implementations in hardware, or a combination of software and hardware, are also possible and contemplated.
  • FIG. 3 is a structural block diagram of a robot according to an embodiment of the present application. As shown in the figure, the device includes:
  • the processing module 30 is configured to search for an unknown area that meets preset conditions from the initial map of the target area, and control the robot to perform map reconstruction in the unknown area after traveling to the unknown area, and based on the reconstructed map Updating the initial map, the preset conditions include at least one of the following: the area of the unknown area is greater than a preset threshold, and the robot is allowed to reach the unknown area;
  • the above preset condition is a limitation on the area of the unknown area and whether the robot can reach it. In actual operation, other limitations may also be made on the above preset condition, which is not limited in the embodiments of the present application. .
  • the determining module 32 is configured to use the currently reconstructed map as a mapping result of the robot in the event that an unknown area that meets the preset condition cannot be found in the reconstructed map.
  • the current reconstruction of the robot is carried out.
  • the map is used as the mapping result of the robot, that is, the unknown area in the map of the target area can be searched. After all the unknown areas are searched, the mapping result of the robot is determined, and a new technical solution for autonomous exploration is provided.
  • the above technical solution solves the problem that in related technologies, special signs are generally arranged in an unknown environment to realize the autonomous exploration process.
  • the robot has a long exploration time in the autonomous exploration process. , which can shorten the time of autonomous exploration of the robot and improve the efficiency of autonomous exploration of the robot in the process of reconstructing the map of the target area.
  • processing modules may include: a map search module, a navigation module, a SLAM module, and a decision-making module in the robot, which are not limited in this embodiment of the present application.
  • the processing module 30 is further configured to perform the following steps cyclically: searching for an unknown area that satisfies a preset condition from the initial map of the target area, and controlling the robot to proceed in the unknown area after traveling to the unknown area.
  • the map is reconstructed, and the initial map is updated according to the reconstructed map, until an unknown area that meets the preset condition cannot be found in the reconstructed map.
  • the processing module 30 is further configured to determine a search range from the reconstructed map, and search for a search range that satisfies the preset conditions from the search range.
  • Unknown area wherein the search range does not include: the unknown area that meets the preset condition has been searched from the initial map, it can also be understood that the initial map includes: the search range, and The unknown area that meets the preset conditions found in the initial map; controls the robot to perform map reconstruction again in the unknown area searched from the search range, and updates the reconstructed map according to the re-reconstructed map. map.
  • the unknown area that has been determined last time can be used as the known area, that is, the unknown area that has been determined last time is not searched, in short , the search range of the unknown area that meets the preset conditions in the next search does not include the unknown area that has been determined last time.
  • the processing module 30 is further configured to, after updating the initial map according to the reconstructed map, determine a search range from the reconstructed map, and search again from the search range to meet the predetermined requirements.
  • Unknown area with set conditions wherein the search range does not include: unknown areas that have been searched from the initial map that meet the preset conditions; unknown areas that control the robot to search from the search range
  • the map is reconstructed again in the area, and the reconstructed map is updated according to the reconstructed map, so as to search for an unknown area that satisfies the preset condition in the reconstructed map.
  • the process of searching for the unknown area is performed cyclically multiple times until the unknown area that meets the preset conditions cannot be found in the map of the target area.
  • the map search module included in the processing module 30 searches for an unknown area that satisfies the preset conditions from the map corresponding to the target area, which can be implemented mainly in the following ways:
  • the processing module 30 is further configured to set a fixed shape of the unknown area, wherein the area of the fixed shape is greater than the preset threshold; search for the initial map of the target area according to the fixed shape that satisfies the preset Unknown region of the condition.
  • the unknown area can be set to a fixed shape, and the area of the fixed shape is set to a fixed value greater than the preset threshold, and then the unknown area that meets the preset conditions can be determined cyclically from the map of the target area according to this fixed shape, for example , you can set the fixed shape of the unknown area to be a rectangle, or a circle or other shapes that can be set, and then you can explore the target area piece by piece according to the unknown area of this fixed shape.
  • the above threshold can be set according to the actual operation experience. Meter to 0.04 square meters, which can avoid searching for an unknown area surrounded by a known area during map search, so as to perform many unnecessary navigations, resulting in a waste of time and cost.
  • the processing module 30 is further configured to determine an edge area and a center area in the initial map of the target area, wherein the target area includes: the edge area and the center area; The unknown area of the preset condition is searched; after the edge area search is completed, the unknown area that satisfies the preset condition is searched from the central area.
  • the edge area and the center area corresponding to the target area can be determined.
  • the center area can be explored.
  • the target area can be An area formed by extending the edge of the map to the central area for a certain area is used as the above-mentioned edge area, and further, the area in the map corresponding to the target area other than the edge area is used as the above-mentioned central area.
  • the processing module 30 may also, after determining the edge area and the center area, explore the center area first, and then explore the edge area.
  • the center area of the center area may be used as a starting point, and the exploration may be expanded outward.
  • the above process is not limited in the embodiments of the present application.
  • the processing module 30 is further configured to acquire a navigation path for the robot to travel from the current position to the unknown area; and control the robot to travel to the unknown area according to the navigation path.
  • the robot needs to locate and determine its current position, and then obtain the navigation path from the current position to the unknown area, and then control the robot to travel from the current position to the unknown area.
  • the processing module 30 is also used to determine the robot from At least one navigation path from the current position to the unknown area; determining a first navigation path that satisfies a preset rule from the at least one navigation path, wherein the preset rule includes: the travel cost is the smallest; according to the first navigation path A navigation path instructs the robot to travel to an unknown area corresponding to the first navigation path.
  • the walking cost refers to the cost calculated by the machine according to the map search module according to the path length from the current position to the target position, obstacle information, and the like. That is, there is at least one navigation path when the robot travels from the current position to the unknown area, the first navigation path is the one with the smallest travel cost, and the robot travels to the unknown area according to the first navigation path.
  • the processing module 30 is further configured to acquire at least one navigation path for the robot to travel from the current position to the multiple unknown areas when there are multiple unknown areas that satisfy the preset condition; A second navigation path satisfying a preset rule is determined from the at least one navigation path, wherein the preset rule includes: the travel cost is the smallest; instructing the robot to travel to the second navigation path according to the second navigation path The unknown area corresponding to the path.
  • the target device used with the robot can be uninterrupted, or send a recharge signal according to a preset period, then the processing module is also used for When the robot detects the recharging signal, and the robot is successfully positioned, the robot is controlled to travel to the target device that issued the recharging signal.
  • the target device may be a charging base.
  • An optional embodiment of the present application takes a self-moving robot (for example, a sweeping robot) as an example.
  • a self-moving robot for example, a sweeping robot
  • an autonomous exploration scheme is usually used to discover special signs, signals, etc. existing in the environment.
  • the self-moving robot has a long exploration time and an unsatisfactory exploration success rate, which leads to a situation where the robot's mapping efficiency is low or even cannot be constructed.
  • an optional embodiment of the present application provides the following technical solutions:
  • An optional embodiment of the present application provides a technical solution for autonomous exploration and mapping of a self-moving robot, including the following steps:
  • Step 1 Use the map search module to find an unknown area in the map with an area not less than a preset threshold and passable by the self-moving robot with the smallest walking cost.
  • the map can be the initial map of the target area, for example, the initial map obtained by the cleaning robot through the SLAM module after the user places the cleaning robot in the target area for the first time, the map can refer to the bedroom, or the living room.
  • the map select an area larger than a certain threshold from the above-mentioned target areas, and there is no object such as glass to block, and pass through an unknown area whose distance is larger than the width of the robot.
  • the optional embodiments of this application may not be limited. , if the matching area is greater than a certain threshold and there is no object such as glass blocking, passing through an unknown area with a distance greater than the width of the robot, even if the walking cost is the largest, such a target area can be identified as eligible.
  • the preset threshold may be taken from a value range of 0.0025 square meters to 0.04 square meters.
  • Step 2 Control the robot to go to the unknown area determined in step 1 through the navigation module, and then the SLAM module synchronously updates the map and its own pose.
  • Step 3 Repeat the above steps 1 and 2 until the map search module can no longer find a new passable unknown area. At this time, the latest map reconstructed by the SLAM module is used as the mapping result obtained by the robot's autonomous exploration of the target area. .
  • the decision-making module will determine the exploration location of the unknown area in real time according to the update of the map (it can be understood as search range for unknown areas).
  • step I After the robot goes to the unknown area calculated in step I, it reconstructs the map, then in the next process of determining the unknown area that meets the preset conditions, the original unknown area is updated to the known area, and the robot will return to the Step I recalculates the new unknown region.
  • This behavior saves time and cost, and also effectively avoids collisions when there are obstacles in the unknown area.
  • the charging base corresponding to the robot will continuously send out signals, during the above steps 1 and 2, if the recharging sensor in the robot detects the recharging signal of the charging base in real time, the detected conditions will be met. Exit the current exploration process, and then control the robot to return to the position corresponding to the charging base.
  • a fixed exploration range is set in advance, and autonomous exploration is carried out within the fixed exploration range each time, and the entire target area is explored piece by piece according to the fixed exploration range (which can be understood as an unknown area).
  • the fixed exploration range can be, for example, a rectangle with a predetermined size. It can be seen that, since the unknown area to be explored by the robot is fixed, a unified search program can be set for the robot to conduct autonomous exploration in the map according to the fixed search range, saving energy. Time to explore on your own.
  • the embodiment of the present application can be understood as first exploring the edge area according to a unified processing method, and then exploring the center. area to explore.
  • FIG. 4 is a schematic flowchart of a method for mapping a robot according to an optional embodiment of the present application, as shown in FIG. 4 , including:
  • Step S402 the SLAM module is initialized
  • Step S404 the SLAM module acquires or updates the map of the target area
  • Step S406 The map search module searches for an unknown area in the map whose area is not less than a certain threshold and the robot can pass through, with the smallest walking cost;
  • Step S408 The robot exits the autonomous exploration process when it judges that there is no unknown area in the target area; it can be understood that the autonomous exploration process can be understood as including searching for an unknown area in the map, driving to the unknown area, and finding the unknown area.
  • step S410 is performed;
  • Step S410 after the navigation module determines the unknown area, calculates the navigation path from the current position of the robot to the unknown area in real time;
  • Step S412 During the actual driving process of the robot, if the unknown area is found to be unreachable, step S410 is performed to determine a new path that may reach the unknown area. If the unknown area is reachable, after the unknown area is reconstructed, step S410 is performed. S404.
  • the above modules can be implemented by software or hardware, and the latter can be implemented in the following ways, but not limited to this: the above modules are all located in the same processor; or, the above modules can be combined in any combination The forms are located in different processors.
  • Embodiments of the present application further provide a computer-readable storage medium, where a computer program is stored in the storage medium, wherein the computer program is configured to execute the steps in any one of the above method embodiments when running.
  • the above-mentioned storage medium may be configured to store a computer program for executing the following steps:
  • the preset condition includes at least one of the following: the area of the unknown area is greater than a preset threshold, and the robot is allowed to reach the unknown area;
  • the above-mentioned storage medium may include, but is not limited to: U disk, read-only memory ROM, random access memory RAM, removable hard disk, magnetic disk or optical disk and other media that can store computer programs.
  • Embodiments of the present application further provide an electronic device, including a memory and a processor, where a computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.
  • the above-mentioned electronic device may further include a transmission device and an input-output device, wherein the transmission device is connected to the above-mentioned processor, and the input-output device is connected to the above-mentioned processor.
  • the above-mentioned processor may be configured to execute the following steps through a computer program:
  • the preset condition includes at least one of the following: the area of the unknown area is greater than a preset threshold, and the robot is allowed to reach the unknown area;
  • modules or steps of the present application can be implemented by a general-purpose computing device, and they can be centralized on a single computing device, or distributed in a network composed of multiple computing devices Alternatively, they may be implemented in program code executable by a computing device, such that they may be stored in a storage device and executed by the computing device, and in some cases, in a different order than here
  • the steps shown or described are performed either by fabricating them separately into individual integrated circuit modules, or by fabricating multiple modules or steps of them into a single integrated circuit module.
  • the present application is not limited to any particular combination of hardware and software.

Abstract

A robot mapping method, a robot, a storage medium and an electronic apparatus. The method comprises: searching an initial map of a target region for an unknown region satisfying a preset condition, the preset condition comprising at least one of the following: the area of the unknown region being greater than a preset threshold value, and a robot being allowed to reach the unknown region (S102); after the robot travels to the unknown region, controlling the robot to reconstruct a map in the unknown region, and updating the initial map according to the reconstructed map (S104); and when no unknown region satisfying the preset condition is found in the reconstructed map, using the currently reconstructed map as a mapping result of the robot (S106). By means of the method, the problem of the long exploration time for a robot during an autonomous exploration process is solved.

Description

机器人的建图方法、机器人、存储介质、电子装置Robot mapping method, robot, storage medium, electronic device 技术领域technical field
本申请涉及通信领域,具体而言,涉及一种机器人的建图方法、机器人、存储介质、电子装置。The present application relates to the field of communications, and in particular, to a method for mapping a robot, a robot, a storage medium, and an electronic device.
背景技术Background technique
相关技术中,对于机器人如何在未知领域进行探索是机器人领域的研究热点。在机器人进行探索过程中,自主探索技术通常要求机器人具有同步定位和地图构建(Simultaneous localization and mapping,简称为SLAM)等能力,进而使得机器人可以在未知环境中建立环境地图。目前相关技术中主要采用的方式是在未知环境中布置特殊标识等,但采用这种方式进行自主探索的时间比较长,且效率低,成功率也不高,很可能导致机器人无法完成自主探索任务。In related technologies, how to explore robots in unknown fields is a research hotspot in the field of robotics. In the process of robot exploration, autonomous exploration technology usually requires the robot to have the capabilities of simultaneous localization and mapping (SLAM), so that the robot can build an environmental map in an unknown environment. At present, the main method used in related technologies is to arrange special signs in an unknown environment. However, this method takes a long time to conduct autonomous exploration, and has low efficiency and low success rate, which may cause the robot to fail to complete the autonomous exploration task. .
针对相关技术中,机器人在进行自主探索过程中的探索时间长等问题,尚未提出有效的解决方案。Aiming at the problems in related technologies, such as the long exploration time of robots in the process of autonomous exploration, no effective solutions have been proposed.
发明内容SUMMARY OF THE INVENTION
本申请实施例提供了一种机器人的建图方法、机器人、存储介质、电子装置,以至少解决相关技术中机器人在进行自主探索过程中的探索时间长等问题。The embodiments of the present application provide a robot mapping method, a robot, a storage medium, and an electronic device, so as to at least solve the problem of a long exploration time of a robot in an autonomous exploration process in the related art.
根据本申请的一个可选实施例,提供了一种机器人的建图方法,包括:从目标区域的初始地图中搜索满足预设条件的未知区域,其中,所述预设条件包括以下至少之一:所述未知区域的面积大于预设阈值,机器人允许到达所述未知区域;控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图;在所述重建后的地图中未能找到符合所述预设条件的未知区域的情况下,将当前重建的地图作为所述机器人的建图结果。According to an optional embodiment of the present application, a method for mapping a robot is provided, which includes: searching for an unknown area that satisfies a preset condition from an initial map of a target area, wherein the preset condition includes at least one of the following : The area of the unknown area is greater than the preset threshold, and the robot is allowed to reach the unknown area; after the robot travels to the unknown area, the robot is controlled to perform map reconstruction in the unknown area, and update all maps according to the reconstructed map. The initial map; in the case that the unknown area that meets the preset condition cannot be found in the reconstructed map, the current reconstructed map is used as the mapping result of the robot.
可选的,将当前重建的地图作为所述机器人的建图结果之前,所述方法还包括:循环执行以下步骤:从目标区域的初始地图中搜索满足预设条件的未知区域,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图,直至所述重建后的地图中未能找 到符合所述预设条件的未知区域。Optionally, before using the currently reconstructed map as a mapping result of the robot, the method further includes: cyclically executing the following steps: searching for an unknown area that satisfies a preset condition from the initial map of the target area, and controlling the robot After traveling to the unknown area, perform map reconstruction in the unknown area, and update the initial map according to the reconstructed map, until an unknown area that meets the preset conditions cannot be found in the reconstructed map .
可选地,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图之后,所述方法还包括:从所述重建后的地图中确定搜索范围,并从所述搜索范围中搜索满足所述预设条件的未知区域,其中,所述搜索范围未包括:从所述初始地图中已经搜索到的满足所述预设条件的未知区域;控制所述机器人在从所述搜索范围中搜索到的未知区域再次进行地图重建,并根据再次重建后的地图更新所述重建后的地图。Optionally, after controlling the robot to perform map reconstruction in the unknown area after traveling to the unknown area, and after updating the initial map according to the reconstructed map, the method further includes: from the reconstructed The search range is determined from the map of , and the unknown area that satisfies the preset condition is searched from the search range, wherein the search range does not include: the search range that has been searched from the initial map and meets the preset condition the unknown area; control the robot to perform map reconstruction again in the unknown area searched from the search range, and update the reconstructed map according to the reconstructed map again.
可选的,从目标区域的初始地图中搜索满足预设条件的未知区域,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图,包括:在根据所述重建后的地图更新所述初始地图后,从所述重建后的地图中确定搜索范围,并从所述搜索范围中再次搜索满足所述预设条件的未知区域,其中,所述搜索范围未包括:从所述初始地图中已经搜索到的满足所述预设条件的未知区域;控制所述机器人在从所述搜索范围中搜索到的未知区域再次进行地图重建,并根据再次重建后的地图更新所述重建后的地图,以在所述再次重建后的地图中搜索满足所述预设条件的未知区域。Optionally, search for an unknown area that satisfies preset conditions from the initial map of the target area, control the robot to perform map reconstruction in the unknown area after traveling to the unknown area, and update all the information according to the reconstructed map. The initial map includes: after updating the initial map according to the reconstructed map, determining a search range from the reconstructed map, and searching again from the search range for unknown unknowns that meet the preset conditions area, wherein the search range does not include: the unknown area that has been searched from the initial map that meets the preset conditions; the robot is controlled to map the unknown area searched from the search range again. Reconstructing, and updating the reconstructed map according to the re-reconstructed map, so as to search for an unknown area that satisfies the preset condition in the re-reconstructed map.
可选地,从所述目标区域的初始地图中搜索满足所述预设条件的未知区域,包括:设置所述未知区域的固定形状,其中,所述固定形状的面积大于所述预设阈值;按照所述固定形状从所述目标区域的初始地图中搜索满足所述预设条件的未知区域。Optionally, searching for an unknown area that satisfies the preset condition from the initial map of the target area includes: setting a fixed shape of the unknown area, wherein the area of the fixed shape is greater than the preset threshold; According to the fixed shape, an unknown area that satisfies the preset condition is searched from the initial map of the target area.
可选地,从所述目标区域的初始地图中搜索满足所述预设条件的未知区域,包括:确定所述目标区域的初始地图中的边缘区域以及中心区域,其中,所述目标区域包括:所述边缘区域和所述中心区域;从所述边缘区域中搜索满足所述预设条件的未知区域;在所述边缘区域搜索完成后,从所述中心区域搜索满足所述预设条件的未知区域。Optionally, searching for an unknown area that satisfies the preset condition from an initial map of the target area includes: determining an edge area and a central area in the initial map of the target area, where the target area includes: the edge area and the center area; search for an unknown area that satisfies the preset condition from the edge area; after the edge area search is completed, search the center area for an unknown area that satisfies the preset condition area.
可选地,从所述目标区域的初始地图中搜索满足所述预设条件的未知区域之后,所述方法还包括:获取所述机器人从当前位置行进到所述未知区域的导航路径;控制所述机器人按照所述导航路径行进至所述未知区域。Optionally, after searching for an unknown area that satisfies the preset condition from the initial map of the target area, the method further includes: acquiring a navigation path for the robot to travel from the current position to the unknown area; The robot travels to the unknown area according to the navigation path.
可选地,获取所述机器人从当前位置行进到所述未知区域的导航路径,包括:确定所述机器人从当前位置行进到所述未知区域的至少一条导航路径;从所述至少一条导航路径中确定满足预设规则的第一导航路径,其中,所述预设规则包括:行进代价最小;按照所述第一导航路径指示所述机器人行进到所述第一导航路径对应的未知区域。Optionally, acquiring a navigation path for the robot to travel from the current position to the unknown area includes: determining at least one navigation path for the robot to travel from the current position to the unknown area; from the at least one navigation path A first navigation path that satisfies a preset rule is determined, wherein the preset rule includes: the travel cost is the smallest; and the robot is instructed to travel to an unknown area corresponding to the first navigation path according to the first navigation path.
可选地,从所述目标区域的初始地图中搜索满足所述预设条件的未知区域之后,所述方法还包括:在满足预设条件的未知区域为多个的情况下,获取所述机器人从当前位置行进到多个未知区域的至少一条导航路径;从所述至少一条导航路径中确定满足预设规则的第二导航路径,其中,所述预设规则包括:行进代价最小;按照所述第二导航路径指示所述机器人行进到所述第二导航路径对应的未知区域。Optionally, after searching for an unknown area that satisfies the preset condition from the initial map of the target area, the method further includes: in the case that there are multiple unknown areas that satisfy the preset condition, obtaining the robot. Travel from the current position to at least one navigation path of a plurality of unknown areas; determine a second navigation path that satisfies a preset rule from the at least one navigation path, wherein the preset rule includes: the travel cost is the smallest; according to the The second navigation path instructs the robot to travel to an unknown area corresponding to the second navigation path.
根据本申请的另一个实施例,还提供了一种机器人,包括:处理模块,用于从目标区域的初始地图中搜索满足预设条件的未知区域,其中,所述预设条件包括以下至少之一:所述未知区域的面积大于预设阈值,机器人允许到达所述未知区域;控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图;确定模块,用于在所述重建后的地图中未能找到符合所述预设条件的未知区域的情况下,将当前重建的地图作为所述机器人的建图结果。According to another embodiment of the present application, a robot is also provided, comprising: a processing module for searching an unknown area that satisfies a preset condition from an initial map of a target area, wherein the preset condition includes at least one of the following 1: The area of the unknown area is greater than the preset threshold, and the robot is allowed to reach the unknown area; control the robot to perform map reconstruction in the unknown area after traveling to the unknown area, and update the map according to the reconstructed map the initial map; a determination module, configured to use the currently reconstructed map as the robot's mapping result when an unknown area that meets the preset condition cannot be found in the reconstructed map.
根据本申请的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。According to yet another embodiment of the present application, a storage medium is also provided, and a computer program is stored in the storage medium, wherein the computer program is configured to execute the steps in any one of the above method embodiments when running.
根据本申请的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。According to yet another embodiment of the present application, an electronic device is also provided, comprising a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to execute any one of the above Steps in Method Examples.
通过本申请,由于可以从目标区域的地图中确定未知区域,然后对未知区域进行建图,在目标区域对应的地图中无法找到符合预设条件的未知区域的情况下,将机器人当前重建的地图作为所述机器人的建图结果,即可以搜索目标区域的地图中的未知区域,直到所有的未知区域搜索完毕后,确定机器人的建图结果, 提供了一种新的自主探索的技术方案,采用上述技术方案,解决了相关技术中,一般是在未知环境中布置特殊标识来实现自主探索过程,但由于未知环境的复杂度等原因,导致机器人在进行自主探索过程中的探索时间长等问题,进而可以在机器人在对目标区域的地图进行重建的过程中,缩短机器人自主探索的时间,提高了机器人自主探索的效率。Through this application, since the unknown area can be determined from the map of the target area, and then the unknown area is mapped, in the case where the unknown area that meets the preset conditions cannot be found in the map corresponding to the target area, the current reconstructed map of the robot As the mapping result of the robot, the unknown area in the map of the target area can be searched, and the mapping result of the robot is determined after all the unknown areas have been searched, and a new technical solution for autonomous exploration is provided. The above technical solution solves the problems in the related art that special signs are generally arranged in an unknown environment to realize the autonomous exploration process, but due to the complexity of the unknown environment and other reasons, the robot has a long exploration time in the autonomous exploration process. Furthermore, in the process of reconstructing the map of the target area by the robot, the time for autonomous exploration of the robot can be shortened, and the efficiency of autonomous exploration of the robot can be improved.
附图说明Description of drawings
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:The drawings described herein are used to provide further understanding of the present application and constitute a part of the present application. The schematic embodiments and descriptions of the present application are used to explain the present application and do not constitute an improper limitation of the present application. In the attached image:
图1是本申请实施例的一种机器人的建图方法的机器人的硬件结构框图;Fig. 1 is a hardware structure block diagram of a robot according to a method for constructing a robot according to an embodiment of the present application;
图2是根据本申请实施例的机器人的建图方法的流程图;FIG. 2 is a flowchart of a method for constructing a map of a robot according to an embodiment of the present application;
图3是根据本申请实施例的机器人的结构框图;3 is a structural block diagram of a robot according to an embodiment of the present application;
图4为根据本申请可选实施例的机器人的建图方法的流程示意图。FIG. 4 is a schematic flowchart of a method for mapping a robot according to an optional embodiment of the present application.
具体实施方式Detailed ways
下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。Hereinafter, the present application will be described in detail with reference to the accompanying drawings and in conjunction with the embodiments. It should be noted that the embodiments in the present application and the features of the embodiments may be combined with each other in the case of no conflict.
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。It should be noted that the terms "first", "second" and the like in the description and claims of the present invention and the above drawings are used to distinguish similar objects, and are not necessarily used to describe a specific sequence or sequence.
本申请实施例所提供的方法实施例可以在机器人或者类似的运算装置中执行。以运行在机器人上为例,图1是本申请实施例的一种机器人的建图方法的机器人的硬件结构框图。如图1所示,机器人可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器(Microprocessor Unit,简称是MPU)或可编程逻辑器件(Programmable logic device,简称是PLD)等的处理装置和用于存储数据的存储器104,可选地,上述机器人还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述机器人的结构造成限定。例如,机器 人还可包括比图1中所示更多或者更少的组件,或者具有与图1所示等同功能或比图1所示功能更多的不同的配置。The method embodiments provided in the embodiments of the present application may be executed in a robot or a similar computing device. Taking running on a robot as an example, FIG. 1 is a hardware structural block diagram of a robot according to a method for constructing a robot in an embodiment of the present application. As shown in FIG. 1 , the robot may include one or more (only one is shown in FIG. 1 ) processors 102 (the processors 102 may include, but are not limited to, a Microprocessor Unit (MPU) or a programmable logic device for short) (Programmable logic device, abbreviated as PLD) etc. and the memory 104 for storing data, optionally, the above-mentioned robot may also include a transmission device 106 and an input and output device 108 for communication functions. Those of ordinary skill in the art It can be understood that the structure shown in Fig. 1 is only for illustration, and it does not limit the structure of the above-mentioned robot. For example, the robot may also include more or less components than those shown in Fig. 1, or have different components than those shown in Fig. 1 Equivalent function or a different configuration with more functions than shown in Figure 1.
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本申请实施例中的机器人的建图方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至机器人10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。The memory 104 can be used to store computer programs, for example, software programs and modules of application software, such as the computer programs corresponding to the method for constructing the robot in the embodiments of the present application. Executing various functional applications and data processing implements the above-mentioned methods. Memory 104 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, memory 104 may further include memory located remotely from processor 102, which may be connected to robot 10 through a network. Examples of such networks include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
传输设备106用于经由网络接收或者发送数据。上述的网络具体实例可包括机器人10的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。The transmission device 106 is used to receive or transmit data via the network. The specific example of the above-mentioned network may include a wireless network provided by the communication provider of the robot 10 . In one example, the transmission device 106 includes a network adapter (Network Interface Controller, NIC for short), which can be connected to other network devices through a base station so as to communicate with the Internet. In one example, the transmission device 106 may be a radio frequency (Radio Frequency, RF for short) module, which is used to communicate with the Internet in a wireless manner.
在本实施例中提供了一种运行于上述机器人的建图方法,图2是根据本申请实施例的机器人的建图方法的流程图,如图2所示,该流程包括如下步骤:This embodiment provides a method for building a map that runs on the above-mentioned robot. FIG. 2 is a flowchart of a method for building a map for a robot according to an embodiment of the present application. As shown in FIG. 2 , the process includes the following steps:
步骤S102,从所述目标区域的初始地图中搜索满足所述预设条件的未知区域,其中,所述预设条件包括以下至少之一:所述未知区域的面积大于预设阈值,机器人允许到达所述未知区域;Step S102, searching for an unknown area that satisfies the preset condition from the initial map of the target area, wherein the preset condition includes at least one of the following: the area of the unknown area is greater than a preset threshold, and the robot is allowed to reach the unknown area;
需要说明的是,上述预设条件是对未知区域的面积,以及机器人是否可达进行的限定,在实际操作中,还可以对上述预设条件进行其他限定,本申请实施例对此不进行限定。It should be noted that the above preset condition is a limitation on the area of the unknown area and whether the robot can reach it. In actual operation, other limitations may also be made on the above preset condition, which is not limited in the embodiments of the present application. .
可以理解的是,所述目标区域的初始地图是机器人到达一个未知区域后,根据SLAM模块确立的一个初步地图,机器人后续可以根据该初步地图搜索未知区域,进行地图的重建与更新。It can be understood that the initial map of the target area is a preliminary map established by the SLAM module after the robot reaches an unknown area. The robot can subsequently search for the unknown area according to the preliminary map, and reconstruct and update the map.
步骤S104,控制所述机器人在行进至所述未知区域后,在所述未知区域进 行地图重建,并根据重建后的地图更新所述初始地图;Step S104, control the robot to carry out map reconstruction in the unknown area after traveling to the unknown area, and update the initial map according to the reconstructed map;
步骤S106,在所述重建地图中未能找到符合所述预设条件的未知区域的情况下,将当前重建的地图作为所述机器人的建图结果。Step S106, in the case that an unknown area that meets the preset condition cannot be found in the reconstructed map, the currently reconstructed map is used as the mapping result of the robot.
通过上述技术方案,由于可以从目标区域的地图中确定未知区域,然后对未知区域进行建图,在目标区域对应的地图中无法找到符合预设条件的未知区域的情况下,将机器人当前重建的地图作为所述机器人的建图结果,即可以搜索目标区域的地图中的未知区域,直到所有的未知区域搜索完毕后,确定机器人的建图结果,提供了一种新的自主探索的技术方案,采用上述技术方案,解决了相关技术中,一般是在未知环境中布置特殊标识来实现自主探索过程,但由于未知环境的复杂度等原因,导致机器人在进行自主探索过程中的探索时间长等问题,进而可以在机器人在对目标区域的地图进行重建的过程中,缩短机器人自主探索的时间,提高了机器人自主探索的效率。Through the above technical solution, since the unknown area can be determined from the map of the target area, and then the unknown area is mapped, in the case where the unknown area that meets the preset conditions cannot be found in the map corresponding to the target area, the current reconstruction of the robot is carried out. The map is used as the mapping result of the robot, that is, the unknown area in the map of the target area can be searched. After all the unknown areas are searched, the mapping result of the robot is determined, and a new technical solution for autonomous exploration is provided. The above technical solution solves the problem that in related technologies, special signs are generally arranged in an unknown environment to realize the autonomous exploration process. However, due to the complexity of the unknown environment and other reasons, the robot has a long exploration time in the autonomous exploration process. , which can shorten the time of autonomous exploration of the robot and improve the efficiency of autonomous exploration of the robot in the process of reconstructing the map of the target area.
在本申请实施例中,为了更精确的进行机器人的地图重建过程,可以循环执行上述步骤S102以及步骤S104:从目标区域的初始地图中搜索满足所述预设条件的未知区域,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图,直至重建后的地图中未能找到符合预设条件的未知区域。In the embodiment of the present application, in order to perform the map reconstruction process of the robot more accurately, the above steps S102 and S104 may be executed cyclically: searching for an unknown area that satisfies the preset conditions from the initial map of the target area, and controlling the robot After traveling to the unknown area, map reconstruction is performed in the unknown area, and the initial map is updated according to the reconstructed map, until an unknown area that meets the preset conditions cannot be found in the reconstructed map.
也就是说,步骤S102和步骤104可以执行一次,也可以循环执行多次,直至目标区域的地图中不再有符合预设条件的未知区域。That is to say, steps S102 and 104 may be performed once, or may be performed repeatedly in a loop, until there is no more unknown area that meets the preset conditions in the map of the target area.
为了节省机器人在自主探索过程中的自主探索时间,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图之后,所述方法还包括:从所述重建后的地图中确定搜索范围,并从所述搜索范围中搜索满足所述预设条件的未知区域,其中,所述搜索范围未包括:从所述初始地图中已经搜索到的满足所述预设条件的未知区域,也可以理解为所述初始地图包括:所述搜索范围,以及从所述初始地图中搜索到的满足所述预设条件的未知区域;控制所述机器人在从所述搜索范围中搜索到的未知区域再次进行地图重建,并根据再次重建后的地图更新所述重建后的地图。In order to save the autonomous exploration time of the robot during the autonomous exploration process, the robot is controlled to perform map reconstruction in the unknown region after traveling to the unknown region, and after updating the initial map according to the reconstructed map, the The method further includes: determining a search range from the reconstructed map, and searching for an unknown area that satisfies the preset condition from the search range, wherein the search range does not include: The searched unknown area that meets the preset condition can also be understood as the initial map including: the search range, and the unknown area that meets the preset condition searched from the initial map; The robot performs map reconstruction again in the unknown area searched from the search range, and updates the reconstructed map according to the reconstructed map again.
也就是说,在对未知区域进行地图重建之后,在下一次确定未知区域时, 可以将上一次已经确定的未知区域作为已知区域,即不对上一次已经确定的未知区域进行搜索,简而言之,下一次搜索满足预设条件的未知区域的搜索范围中不包括上一次已经确定的未知区域,通过这样的技术方案,每一次循环确定未知区域的地图其实内容都会有所更新,不会对已经进行地图重建的未知区域进行再次搜索了,进而能够有效准确的对所有未知区域进行地图重建,无需执行重复工作,节省了机器人的自主探索时间。That is to say, after the map reconstruction of the unknown area, when the unknown area is determined next time, the unknown area that has been determined last time can be used as the known area, that is, the unknown area that has been determined last time is not searched, in short , the search range of the unknown area that meets the preset conditions in the next search does not include the unknown area that has been determined last time. Through such a technical solution, the content of the map of the unknown area determined in each cycle will actually be updated. The unknown area for map reconstruction is searched again, so that all unknown areas can be effectively and accurately reconstructed, without repeating the work, saving the robot's autonomous exploration time.
此外,在步骤S102至步骤S104循环执行的过程中,从目标区域的初始地图中搜索满足预设条件的未知区域,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图的循环过程中,可以包括以下技术方案:在根据所述重建后的地图更新所述初始地图后,从所述重建后的地图中确定搜索范围,并从所述搜索范围中再次搜索满足所述预设条件的未知区域,其中,所述搜索范围未包括:从所述初始地图中已经搜索到的满足所述预设条件的未知区域;控制所述机器人在从所述搜索范围中搜索到的未知区域再次进行地图重建,并根据再次重建后的地图更新所述重建后的地图,以在所述再次重建后的地图中搜索满足所述预设条件的未知区域。In addition, during the cyclic execution of steps S102 to S104, an unknown area that satisfies the preset conditions is searched from the initial map of the target area, and the robot is controlled to perform a map in the unknown area after traveling to the unknown area. The cyclic process of reconstructing and updating the initial map according to the reconstructed map may include the following technical solution: after updating the initial map according to the reconstructed map, determining a search range from the reconstructed map , and search for the unknown area that satisfies the preset condition from the search range again, wherein the search range does not include: the unknown area that has been searched from the initial map that satisfies the preset condition; control The robot performs map reconstruction again in the unknown area searched from the search range, and updates the reconstructed map according to the re-reconstructed map, so as to search for the re-reconstructed map that satisfies the predetermined conditions. Unknown region to set conditions.
需要说明的是,在具体循环过程中,搜索未知区域的过程是循环执行多次的,直至在目标区域的地图中无法找到符合预设条件的未知区域。It should be noted that, in the specific loop process, the process of searching for the unknown area is performed repeatedly until the unknown area that meets the preset conditions cannot be found in the map of the target area.
上述步骤S102中,确定满足预设条件的未知区域的方式可以有多种,在一个可选实施例中,从所述目标区域的初始地图中搜索满足所述预设条件的未知区域,主要可以通过以下方式实现:In the above step S102, there may be various ways to determine the unknown area that satisfies the preset condition. In an optional embodiment, searching for the unknown area that satisfies the preset condition from the initial map of the target area mainly includes Do this by:
第一种实现方式The first implementation
设置所述未知区域的固定形状,其中,所述固定形状的面积大于所述预设阈值;按照所述固定形状从所述目标区域的初始地图中搜索满足所述预设条件的未知区域。A fixed shape of the unknown area is set, wherein the area of the fixed shape is greater than the preset threshold; an unknown area that satisfies the preset condition is searched from the initial map of the target area according to the fixed shape.
即可以将未知区域设置为一个固定形状,且该固定形状的面积设置为大于预设阈值的一个固定值,然后按照这个固定形状从目标区域的地图中循环确定满足预设条件的未知区域,例如,可以设置未知区域的固定形状是一个矩形,或圆形或者其他可以设置的形状,进而可以按照这个固定形状的未知区域一块 一块的探索目标区域,上述阈值可以根据实际操作经验设置阈值为0.0025平方米~0.04平方米,这样可以避免地图搜索时搜索到一片被已知区域包围的未知区域,从而进行许多不必要的导航,造成时间成本的浪费。That is, the unknown area can be set to a fixed shape, and the area of the fixed shape is set to a fixed value greater than the preset threshold, and then the unknown area that meets the preset conditions can be determined cyclically from the map of the target area according to this fixed shape, for example , you can set the fixed shape of the unknown area to be a rectangle, or a circle or other shapes that can be set, and then you can explore the target area piece by piece according to the unknown area of this fixed shape. The above threshold can be set according to the actual operation experience. Meter to 0.04 square meters, which can avoid searching for an unknown area surrounded by a known area during map search, so as to perform many unnecessary navigations, resulting in a waste of time and cost.
第二种实现方式The second implementation
确定所述目标区域的初始地图中的边缘区域以及中心区域,其中,所述目标区域包括:所述边缘区域和所述中心区域;从所述边缘区域中搜索满足所述预设条件的未知区域;在所述边缘区域搜索完成后,从所述中心区域搜索满足所述预设条件的未知区域。Determine the edge area and the center area in the initial map of the target area, where the target area includes: the edge area and the center area; search for an unknown area that satisfies the preset condition from the edge area ; after the edge area search is completed, search for an unknown area that satisfies the preset condition from the center area.
即在本申请实施例中,可以确定出目标区域对应的边缘区域和中心区域,可以先对边缘区域探索完以后,再探索中心区域,对于边缘区域和中心区域的确定过程,可以将目标区域的地图的边缘向中心区域延伸一定面积形成的区域作为上述边缘区域,进而目标区域对应的地图中除边缘区域以外的区域作为上述中心区域。That is, in the embodiment of the present application, the edge area and the center area corresponding to the target area can be determined. After the edge area is explored, the center area can be explored. For the determination process of the edge area and the center area, the target area can be An area formed by extending the edge of the map to the central area for a certain area is used as the above-mentioned edge area, and further, the area in the map corresponding to the target area other than the edge area is used as the above-mentioned central area.
在另一个可选实施例中,也可以在确定了边缘区域和中心区域后,先探索中心区域,再探索边缘区域,具体地,可以以中心区域的圆心为起点,向外扩展探索,本申请实施例对上述过程不进行限定。In another optional embodiment, after the edge area and the center area are determined, the center area can be explored first, and then the edge area can be explored. The embodiments do not limit the above process.
在本申请实施例中,从所述目标区域的初始地图中搜索满足所述预设条件的未知区域之后,所述方法还包括:获取所述机器人从当前位置行进到所述未知区域的导航路径;控制所述机器人按照所述导航路径行进至所述未知区域。In the embodiment of the present application, after searching for an unknown area that satisfies the preset condition from the initial map of the target area, the method further includes: acquiring a navigation path for the robot to travel from the current position to the unknown area ; control the robot to travel to the unknown area according to the navigation path.
可以看出,在每一次确定了未知区域后,机器人需要进行定位确定自己当前所处的位置,然后获取从当前位置到未知区域的导航路径,进而控制机器人从当前位置行进到未知区域。It can be seen that after each unknown area is determined, the robot needs to locate and determine its current position, and then obtain the navigation path from the current position to the unknown area, and then control the robot to travel from the current position to the unknown area.
实际操作过程中,可能出现确定出的未知区域仅有一个,但从当前位置达到未知区域的路径有至少一条,在此应用场景下,获取所述机器人从当前位置行进到所述未知区域的导航路径,可以通过以下方式实现:确定所述机器人从当前位置行进到所述未知区域的至少一条导航路径;从所述至少一条导航路径中确定满足预设规则的第一导航路径,其中,所述预设规则包括:行进代价最小;按照所述第一导航路径指示所述机器人行进到所述第一导航路径对应的未 知区域。In the actual operation process, there may be only one determined unknown area, but there is at least one path from the current position to the unknown area. In this application scenario, the navigation of the robot from the current position to the unknown area is obtained. The path can be achieved by: determining at least one navigation path for the robot to travel from the current position to the unknown area; determining a first navigation path that satisfies a preset rule from the at least one navigation path, wherein the The preset rules include: the travel cost is the smallest; and the robot is instructed to travel to the unknown area corresponding to the first navigation path according to the first navigation path.
需要说明的是,所述行走代价指机器人根据地图搜索模块依照从当前位置到达目标位置的路径长度、障碍物信息等计算出的代价。也就是说,所述机器人从当前位置行进到所述未知区域存在至少一条导航路径,第一导航路径是行进代价最小的那一条,机器人根据述第一导航路径行走至未知区域。It should be noted that the walking cost refers to the cost calculated by the robot according to the map search module according to the path length from the current position to the target position, obstacle information, and the like. That is, there is at least one navigation path when the robot travels from the current position to the unknown area, the first navigation path is the one with the smallest travel cost, and the robot travels to the unknown area according to the first navigation path.
还有可能出现的一种情况下,确定出的满足预设条件的未知区域有多个,机器人需要从中选择出一个行走代价最小的未知区域,也就是说,在满足预设条件的未知区域为多个的情况下,获取所述机器人从当前位置行进到多个未知区域的至少一条导航路径;从所述至少一条导航路径中确定满足预设规则的第二导航路径,其中,所述预设规则包括:行进代价最小;按照所述第二导航路径指示所述机器人行进到所述第二导航路径对应的未知区域。There may also be a situation where there are multiple unknown areas that meet the preset conditions, and the robot needs to select an unknown area with the smallest walking cost. That is to say, the unknown area that satisfies the preset conditions is In the case of more than one, obtain at least one navigation path for the robot to travel from the current position to a plurality of unknown areas; determine a second navigation path that satisfies a preset rule from the at least one navigation path, wherein the preset The rules include: the travel cost is the smallest; and the robot is instructed to travel to the unknown area corresponding to the second navigation path according to the second navigation path.
在一可选实施例中,在机器人执行上述自动探索的过程中,与机器人配套使用的目标设备可以不间断的,或者按照预设周期发出回充信号,那么在所述机器人检测到回充信号,且所述机器人成功定位的情况下,控制所述机器人行进到发出所述回充信号的目标设备处。在一实例中,该目标设备可以是充电基座。In an optional embodiment, during the process of the robot performing the above automatic exploration, the target device used with the robot can be uninterrupted or send a recharge signal according to a preset period, then when the robot detects the recharge signal , and when the robot is successfully positioned, the robot is controlled to travel to the target device that sends the recharge signal. In one example, the target device may be a charging base.
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。From the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is better implementation. Based on this understanding, the technical solutions of the present application can be embodied in the form of software products in essence or the parts that make contributions to the prior art. Memory, referred to as ROM), Random Access Memory (Random Access Memory, referred to as RAM), magnetic disk, optical disk), including several instructions to make a terminal device (can be a mobile phone, computer, server, or network device) etc.) to perform the methods described in the various embodiments of the present application.
在本实施例中还提供了一种机器人,该机器人用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。In this embodiment, a robot is also provided, and the robot is used to implement the above-mentioned embodiments and preferred implementations, and what has been described will not be repeated. As used below, the term "module" may be a combination of software and/or hardware that implements a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, implementations in hardware, or a combination of software and hardware, are also possible and contemplated.
图3是根据本申请实施例的机器人的结构框图,如图所示,该装置包括:3 is a structural block diagram of a robot according to an embodiment of the present application. As shown in the figure, the device includes:
处理模块30,用于从目标区域的初始地图中搜索满足预设条件的未知区域,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图,所述预设条件包括以下至少之一:所述未知区域的面积大于预设阈值,机器人允许到达所述未知区域;The processing module 30 is configured to search for an unknown area that meets preset conditions from the initial map of the target area, and control the robot to perform map reconstruction in the unknown area after traveling to the unknown area, and based on the reconstructed map Updating the initial map, the preset conditions include at least one of the following: the area of the unknown area is greater than a preset threshold, and the robot is allowed to reach the unknown area;
需要说明的是,上述预设条件是对未知区域的面积,以及机器人是否可达进行的限定,在实际操作中,还可以对上述预设条件进行其他限定,本申请实施例对此不进行限定。It should be noted that the above preset condition is a limitation on the area of the unknown area and whether the robot can reach it. In actual operation, other limitations may also be made on the above preset condition, which is not limited in the embodiments of the present application. .
确定模块32,用于在所述重建后的地图中未能找到符合所述预设条件的未知区域的情况下,将当前重建的地图作为所述机器人的建图结果。The determining module 32 is configured to use the currently reconstructed map as a mapping result of the robot in the event that an unknown area that meets the preset condition cannot be found in the reconstructed map.
通过上述技术方案,由于可以从目标区域的地图中确定未知区域,然后对未知区域进行建图,在目标区域对应的地图中无法找到符合预设条件的未知区域的情况下,将机器人当前重建的地图作为所述机器人的建图结果,即可以搜索目标区域的地图中的未知区域,直到所有的未知区域搜索完毕后,确定机器人的建图结果,提供了一种新的自主探索的技术方案,采用上述技术方案,解决了相关技术中,一般是在未知环境中布置特殊标识来实现自主探索过程,但由于未知环境的复杂度等原因,导致机器人在进行自主探索过程中的探索时间长等问题,进而可以在机器人在对目标区域的地图进行重建的过程中,缩短机器人自主探索的时间,提高了机器人自主探索的效率。Through the above technical solution, since the unknown area can be determined from the map of the target area, and then the unknown area is mapped, in the case where the unknown area that meets the preset conditions cannot be found in the map corresponding to the target area, the current reconstruction of the robot is carried out. The map is used as the mapping result of the robot, that is, the unknown area in the map of the target area can be searched. After all the unknown areas are searched, the mapping result of the robot is determined, and a new technical solution for autonomous exploration is provided. The above technical solution solves the problem that in related technologies, special signs are generally arranged in an unknown environment to realize the autonomous exploration process. However, due to the complexity of the unknown environment and other reasons, the robot has a long exploration time in the autonomous exploration process. , which can shorten the time of autonomous exploration of the robot and improve the efficiency of autonomous exploration of the robot in the process of reconstructing the map of the target area.
需要说明的是,上述处理模块可以包括:机器人中的地图搜索模块、导航模块,SLAM模块、决策模块,本申请实施例对此不进行限定。It should be noted that the above processing modules may include: a map search module, a navigation module, a SLAM module, and a decision-making module in the robot, which are not limited in this embodiment of the present application.
可选的,处理模块30还用于循环执行以下步骤:从目标区域的初始地图中搜索满足预设条件的未知区域,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图,直至所述重建后的地图中未能找到符合所述预设条件的未知区域。Optionally, the processing module 30 is further configured to perform the following steps cyclically: searching for an unknown area that satisfies a preset condition from the initial map of the target area, and controlling the robot to proceed in the unknown area after traveling to the unknown area. The map is reconstructed, and the initial map is updated according to the reconstructed map, until an unknown area that meets the preset condition cannot be found in the reconstructed map.
可选的,为了节省机器人在自主探索过程中的自主探索时间,处理模块30还用于从所述重建后的地图中确定搜索范围,并从所述搜索范围中搜索满足所述预设条件的未知区域,其中,所述搜索范围未包括:从所述初始地图中已经 搜索到的满足所述预设条件的未知区域,也可以理解为所述初始地图包括:所述搜索范围,以及从所述初始地图中搜索到的满足所述预设条件的未知区域;控制所述机器人在从所述搜索范围中搜索到的未知区域再次进行地图重建,并根据再次重建后的地图更新所述重建后的地图。Optionally, in order to save the autonomous exploration time of the robot in the autonomous exploration process, the processing module 30 is further configured to determine a search range from the reconstructed map, and search for a search range that satisfies the preset conditions from the search range. Unknown area, wherein the search range does not include: the unknown area that meets the preset condition has been searched from the initial map, it can also be understood that the initial map includes: the search range, and The unknown area that meets the preset conditions found in the initial map; controls the robot to perform map reconstruction again in the unknown area searched from the search range, and updates the reconstructed map according to the re-reconstructed map. map.
也就是说,在对未知区域进行地图重建之后,在下一次确定未知区域时,可以将上一次已经确定的未知区域作为已知区域,即不对上一次已经确定的未知区域进行搜索,简而言之,下一次搜索满足预设条件的未知区域的搜索范围中不包括上一次已经确定的未知区域,通过这样的技术方案,每一次循环确定未知区域的地图其实内容都会有所更新,不会对已经进行地图重建的未知区域进行再次搜索了,进而能够有效准确的对所有未知区域进行地图重建,无需执行重复工作,节省了机器人的自主探索时间。That is to say, after the map reconstruction of the unknown area, when the unknown area is determined next time, the unknown area that has been determined last time can be used as the known area, that is, the unknown area that has been determined last time is not searched, in short , the search range of the unknown area that meets the preset conditions in the next search does not include the unknown area that has been determined last time. Through such a technical solution, the content of the map of the unknown area determined in each cycle will actually be updated. The unknown area for map reconstruction is searched again, so that all unknown areas can be effectively and accurately reconstructed, without repeating the work, saving the robot's autonomous exploration time.
可选的,处理模块30还用于在根据所述重建后的地图更新所述初始地图后,从所述重建后的地图中确定搜索范围,并从所述搜索范围中再次搜索满足所述预设条件的未知区域,其中,所述搜索范围未包括:从所述初始地图中已经搜索到的满足所述预设条件的未知区域;控制所述机器人在从所述搜索范围中搜索到的未知区域再次进行地图重建,并根据再次重建后的地图更新所述重建后的地图,以在所述再次重建后的地图中搜索满足所述预设条件的未知区域。Optionally, the processing module 30 is further configured to, after updating the initial map according to the reconstructed map, determine a search range from the reconstructed map, and search again from the search range to meet the predetermined requirements. Unknown area with set conditions, wherein the search range does not include: unknown areas that have been searched from the initial map that meet the preset conditions; unknown areas that control the robot to search from the search range The map is reconstructed again in the area, and the reconstructed map is updated according to the reconstructed map, so as to search for an unknown area that satisfies the preset condition in the reconstructed map.
需要说明的是,需要说明的是,在具体循环过程中,搜索未知区域的过程是循环执行多次的,直至在目标区域的地图中无法找到符合预设条件的未知区域。It should be noted that, in the specific loop process, the process of searching for the unknown area is performed cyclically multiple times until the unknown area that meets the preset conditions cannot be found in the map of the target area.
可选的,处理模块30包括的地图搜索模块从目标区域对应的地图中搜索出满足预设条件的未知区域,主要可以通过以下方式实现:Optionally, the map search module included in the processing module 30 searches for an unknown area that satisfies the preset conditions from the map corresponding to the target area, which can be implemented mainly in the following ways:
第一种实现方式The first implementation
处理模块30,还用于设置所述未知区域的固定形状,其中,所述固定形状面积大于所述预设阈值;按照所述固定形状从所述目标区域的初始地图中搜索满足所述预设条件的未知区域。The processing module 30 is further configured to set a fixed shape of the unknown area, wherein the area of the fixed shape is greater than the preset threshold; search for the initial map of the target area according to the fixed shape that satisfies the preset Unknown region of the condition.
即可以将未知区域设置为一个固定形状,且该固定形状的面积设置为大于预设阈值的一个固定值,然后按照这个固定形状从目标区域的地图中循环确定 满足预设条件的未知区域,例如,可以设置未知区域的固定形状是一个矩形,或圆形或者其他可以设置的形状,进而可以按照这个固定形状的未知区域一块一块的探索目标区域,上述阈值可以根据实际操作经验设置阈值为0.0025平方米~0.04平方米,这样可以避免地图搜索时搜索到一片被已知区域包围的未知区域,从而进行许多不必要的导航,造成时间成本的浪费。That is, the unknown area can be set to a fixed shape, and the area of the fixed shape is set to a fixed value greater than the preset threshold, and then the unknown area that meets the preset conditions can be determined cyclically from the map of the target area according to this fixed shape, for example , you can set the fixed shape of the unknown area to be a rectangle, or a circle or other shapes that can be set, and then you can explore the target area piece by piece according to the unknown area of this fixed shape. The above threshold can be set according to the actual operation experience. Meter to 0.04 square meters, which can avoid searching for an unknown area surrounded by a known area during map search, so as to perform many unnecessary navigations, resulting in a waste of time and cost.
第二种实现方式The second implementation
处理模块30,还用于确定所述目标区域的初始地图中的边缘区域以及中心区域,其中,所述目标区域包括:所述边缘区域和所述中心区域;从所述边缘区域中搜索满足所述预设条件的未知区域;在所述边缘区域搜索完成后,从所述中心区域搜索满足所述预设条件的未知区域。The processing module 30 is further configured to determine an edge area and a center area in the initial map of the target area, wherein the target area includes: the edge area and the center area; The unknown area of the preset condition is searched; after the edge area search is completed, the unknown area that satisfies the preset condition is searched from the central area.
即在本申请实施例中,可以确定出目标区域对应的边缘区域和中心区域,可以先对边缘区域探索完以后,再探索中心区域,对于边缘区域和中心区域的确定过程,可以将目标区域的地图的边缘向中心区域延伸一定面积形成的区域作为上述边缘区域,进而目标区域对应的地图中除边缘区域以外的区域作为上述中心区域。That is, in the embodiment of the present application, the edge area and the center area corresponding to the target area can be determined. After the edge area is explored, the center area can be explored. For the determination process of the edge area and the center area, the target area can be An area formed by extending the edge of the map to the central area for a certain area is used as the above-mentioned edge area, and further, the area in the map corresponding to the target area other than the edge area is used as the above-mentioned central area.
在另一个可选实施例中,处理模块30也可以在确定了边缘区域和中心区域后,先探索中心区域,再探索边缘区域,具体地,可以以中心区域的圆心为起点,向外扩展探索,本申请实施例对上述过程不进行限定。In another optional embodiment, the processing module 30 may also, after determining the edge area and the center area, explore the center area first, and then explore the edge area. Specifically, the center area of the center area may be used as a starting point, and the exploration may be expanded outward. , the above process is not limited in the embodiments of the present application.
可选的,处理模块30还用于获取所述机器人从当前位置行进到所述未知区域的导航路径;控制所述机器人按照所述导航路径行进至所述未知区域。Optionally, the processing module 30 is further configured to acquire a navigation path for the robot to travel from the current position to the unknown area; and control the robot to travel to the unknown area according to the navigation path.
可以看出,在每一次确定了未知区域后,机器人需要进行定位确定自己当前所处的位置,然后获取从当前位置到未知区域的导航路径,进而控制机器人从当前位置行进到未知区域。It can be seen that after each unknown area is determined, the robot needs to locate and determine its current position, and then obtain the navigation path from the current position to the unknown area, and then control the robot to travel from the current position to the unknown area.
可选的,实际操作过程中,可能出现确定出的未知区域仅有一个,但从当前位置达到未知区域的路径有至少一条,在此应用场景下,处理模块30还用于确定所述机器人从当前位置行进到所述未知区域的至少一条导航路径;从所述至少一条导航路径中确定满足预设规则的第一导航路径,其中,所述预设规则包括:行进代价最小;按照所述第一导航路径指示所述机器人行进到所述第一 导航路径对应的未知区域。Optionally, in the actual operation process, there may be only one determined unknown area, but there is at least one path from the current position to the unknown area. In this application scenario, the processing module 30 is also used to determine the robot from At least one navigation path from the current position to the unknown area; determining a first navigation path that satisfies a preset rule from the at least one navigation path, wherein the preset rule includes: the travel cost is the smallest; according to the first navigation path A navigation path instructs the robot to travel to an unknown area corresponding to the first navigation path.
需要说明的是,所述行走代价指机器根据地图搜索模块依照从当前位置到达目标位置的路径长度、障碍物信息等计算出的代价。也就是说,所述机器人从当前位置行进到所述未知区域存在至少一条导航路径,第一导航路径是行进代价最小的那一条,机器人根据述第一导航路径行走至未知区域。It should be noted that the walking cost refers to the cost calculated by the machine according to the map search module according to the path length from the current position to the target position, obstacle information, and the like. That is, there is at least one navigation path when the robot travels from the current position to the unknown area, the first navigation path is the one with the smallest travel cost, and the robot travels to the unknown area according to the first navigation path.
可选的,还有可能出现的一种情况下,确定出的满足预设条件的未知区域有至少一条,机器人需要从中选择出一个行走代价最小的未知区域,也就是说,在满足预设条件的未知区域为多个的情况下,处理模块30还用于在满足预设条件的未知区域为多个的情况下,获取所述机器人从当前位置行进到多个未知区域的至少一条导航路径;从所述至少一条导航路径中确定满足预设规则的第二导航路径,其中,所述预设规则包括:行进代价最小;按照所述第二导航路径指示所述机器人行进到所述第二导航路径对应的未知区域。Optionally, there may be a situation where there is at least one unknown area that satisfies the preset conditions determined, and the robot needs to select an unknown area with the smallest walking cost, that is, when the preset conditions are met. In the case that there are multiple unknown areas, the processing module 30 is further configured to acquire at least one navigation path for the robot to travel from the current position to the multiple unknown areas when there are multiple unknown areas that satisfy the preset condition; A second navigation path satisfying a preset rule is determined from the at least one navigation path, wherein the preset rule includes: the travel cost is the smallest; instructing the robot to travel to the second navigation path according to the second navigation path The unknown area corresponding to the path.
在一可选实施例中,在机器人执行上述自动探索的过程中,与机器人配套使用的目标设备可以不间断的,或者按照预设周期发出回充信号,那么处理模块,还用于在所述机器人检测到回充信号,且所述机器人成功定位的情况下,控制所述机器人行进到发出所述回充信号的目标设备处。在一实例中,该目标设备可以是充电基座。In an optional embodiment, during the process of the robot performing the above automatic exploration, the target device used with the robot can be uninterrupted, or send a recharge signal according to a preset period, then the processing module is also used for When the robot detects the recharging signal, and the robot is successfully positioned, the robot is controlled to travel to the target device that issued the recharging signal. In one example, the target device may be a charging base.
为了更好的理解上述机器人的建图过程,以下结合可选实施例对上述技术方案进行解释说明。In order to better understand the mapping process of the above-mentioned robot, the above-mentioned technical solutions are explained below with reference to optional embodiments.
本申请可选实施例以自移动机器人(例如,扫地机器人)为例,在清洁机器人的应用过程中,通常使用自主探索方案来发现环境中存在的特殊标识、信号等,但这种方案下,自移动机器人存在探索时间长,探索成功率不理想等情况,导致机器人建图效率低、甚至出现无法建图的情况,为了解决该技术问题,本申请可选实施例提供了以下技术方案:An optional embodiment of the present application takes a self-moving robot (for example, a sweeping robot) as an example. In the application process of the cleaning robot, an autonomous exploration scheme is usually used to discover special signs, signals, etc. existing in the environment. However, under this scheme, The self-moving robot has a long exploration time and an unsatisfactory exploration success rate, which leads to a situation where the robot's mapping efficiency is low or even cannot be constructed. In order to solve this technical problem, an optional embodiment of the present application provides the following technical solutions:
本申请可选实施例提供了一种自移动机器人自主探索及建图的技术方案,包含以下步骤:An optional embodiment of the present application provides a technical solution for autonomous exploration and mapping of a self-moving robot, including the following steps:
步骤1:通过地图搜索模块寻找地图中面积不小于预设阈值且自移动机器人可通行的,行走代价最小的未知区域。Step 1: Use the map search module to find an unknown area in the map with an area not less than a preset threshold and passable by the self-moving robot with the smallest walking cost.
需要说明的是,在该步骤中,地图可以是目标区域的初始地图,例如用户将清洁机器人首次放置于目标区域后清洁机器人通过SLAM模块获得的初始地图,地图可以指的是卧室,或客厅所对应的地图,从上述目标区域中选择出面积大于一定阈值,且无玻璃等物件阻挡的,通过距离大于机器人宽度的未知区域,至于行走代价是否为最小,本申请可选实施例可以不进行限定,如果符合面积大于一定阈值,且无玻璃等物件阻挡的,通过距离大于机器人宽度的未知区域,即使行走代价最大,也可以将这样的目标区域认定为符合条件。It should be noted that in this step, the map can be the initial map of the target area, for example, the initial map obtained by the cleaning robot through the SLAM module after the user places the cleaning robot in the target area for the first time, the map can refer to the bedroom, or the living room. For the corresponding map, select an area larger than a certain threshold from the above-mentioned target areas, and there is no object such as glass to block, and pass through an unknown area whose distance is larger than the width of the robot. As for whether the walking cost is the smallest, the optional embodiments of this application may not be limited. , if the matching area is greater than a certain threshold and there is no object such as glass blocking, passing through an unknown area with a distance greater than the width of the robot, even if the walking cost is the largest, such a target area can be identified as eligible.
在本申请可选实施例中,预设阈值可以取自数值范围0.0025平方米~0.04平方米。此方法可以避免步骤I中,地图搜索模块搜索到一片被已知区域包围的未知区域,从而进行许多不必要的导航,造成时间成本的浪费;行走代价对应的是机器人根据地图搜索模块依照从当前位置到达目标位置的路径长度、障碍物信息等计算出的代价。In an optional embodiment of the present application, the preset threshold may be taken from a value range of 0.0025 square meters to 0.04 square meters. This method can avoid that in step 1, the map search module searches an unknown area surrounded by a known area, thereby carrying out many unnecessary navigations, causing a waste of time cost; what the walking cost corresponds to is that the robot is based on the map search module according to the current The cost calculated by the path length, obstacle information, etc., from the position to the target position.
步骤2:通过导航模块控制机器人前往到通过步骤1确定的未知区域,进而SLAM模块同步更新地图及自身位姿。Step 2: Control the robot to go to the unknown area determined in step 1 through the navigation module, and then the SLAM module synchronously updates the map and its own pose.
步骤3:重复上述步骤1和2,直到地图搜索模块无法再寻找到可通行的新的未知区域,此时,将SLAM模块重建的最新地图作为机器人对目标区域进行自主探索所得到的建图结果。Step 3: Repeat the above steps 1 and 2 until the map search module can no longer find a new passable unknown area. At this time, the latest map reconstructed by the SLAM module is used as the mapping result obtained by the robot's autonomous exploration of the target area. .
在上述步骤1中确定未知区域的过程中,为了提高自主探索的效率,减少自主探索过程中所需的时间,决策模块会根据地图的更新情况来实时确定未知区域的探索位置(可以理解为是未知区域的搜索范围)。In the process of determining the unknown area in the above step 1, in order to improve the efficiency of autonomous exploration and reduce the time required for the autonomous exploration process, the decision-making module will determine the exploration location of the unknown area in real time according to the update of the map (it can be understood as search range for unknown areas).
例如:机器人在前往步骤I所计算得到未知区域后,对地图进行重建,那么在下一次确定符合预设条件的未知区域的过程中,原本的未知区域更新为已知区域,则机器人会重新回到步骤I重新计算新的未知区域。此行为节约了时间成本,也有效避免了未知区域存在障碍物时产生碰撞的情况。For example: after the robot goes to the unknown area calculated in step I, it reconstructs the map, then in the next process of determining the unknown area that meets the preset conditions, the original unknown area is updated to the known area, and the robot will return to the Step I recalculates the new unknown region. This behavior saves time and cost, and also effectively avoids collisions when there are obstacles in the unknown area.
此外,由于机器人对应的充电基座会不断的发出信号,那么机器人在执行上述步骤1和2期间,如果机器人内的回充传感器实时的检测到充电基座的回充信号,检测到条件满足会退出当前探索流程,然后控制机器人返回到充电基座对应的位置。In addition, since the charging base corresponding to the robot will continuously send out signals, during the above steps 1 and 2, if the recharging sensor in the robot detects the recharging signal of the charging base in real time, the detected conditions will be met. Exit the current exploration process, and then control the robot to return to the position corresponding to the charging base.
对于上述未知区域的确定过程,可以通过以下方案中的一种方案来实现:For the above-mentioned determination process of the unknown area, it can be implemented by one of the following schemes:
1)预先设置好固定探索范围,每次都在固定探索范围内部进行自主探索,按照该固定探索范围(可以理解为是未知区域)一块一块探索整个目标区域。该固定探索范围例如可以是一个预定尺寸的矩形,可以看出,由于机器人要探索的未知区域是固定的,可以为机器人设置统一的搜索程序按照固定的搜索范围在地图中进行自主探索,节省了自主探索时间。1) A fixed exploration range is set in advance, and autonomous exploration is carried out within the fixed exploration range each time, and the entire target area is explored piece by piece according to the fixed exploration range (which can be understood as an unknown area). The fixed exploration range can be, for example, a rectangle with a predetermined size. It can be seen that, since the unknown area to be explored by the robot is fixed, a unified search program can be set for the robot to conduct autonomous exploration in the map according to the fixed search range, saving energy. Time to explore on your own.
2)先沿边(即墙壁等边缘)探索未知区域,当地图边界形成闭合后,对边界的内部进行探索,本申请实施例可以理解为先按照统一处理方式对边缘区域进行探索后,再对中心区域进行探索。2) First explore the unknown area along the edge (that is, the edge of the wall, etc.), and after the map boundary is closed, the interior of the boundary is explored. The embodiment of the present application can be understood as first exploring the edge area according to a unified processing method, and then exploring the center. area to explore.
图4为根据本申请可选实施例的机器人的建图方法的流程示意图,如图4所示,包括:FIG. 4 is a schematic flowchart of a method for mapping a robot according to an optional embodiment of the present application, as shown in FIG. 4 , including:
需要说明的是,以下附图的步骤序号并不用于限定步骤的执行顺序,仅仅用于解释本申请可选实施例的技术方案,在实际操作过程中,一些步骤的执行顺序可以调换。It should be noted that the sequence numbers of the steps in the following drawings are not used to limit the execution order of the steps, but are only used to explain the technical solutions of the optional embodiments of the present application. In the actual operation process, the execution order of some steps can be exchanged.
步骤S402:SLAM模块进行初始化;Step S402: the SLAM module is initialized;
步骤S404:SLAM模块获取或更新目标区域的地图;Step S404: the SLAM module acquires or updates the map of the target area;
步骤S406:地图搜索模块寻找地图中面积不小于一定阈值且机器人可通行的,行走代价最小的未知区域;Step S406: The map search module searches for an unknown area in the map whose area is not less than a certain threshold and the robot can pass through, with the smallest walking cost;
步骤S408:机器人在判断目标区域不存在未知区域的情况下,退出自主探索流程;可以理解的是,自主探索流程可以理解是包括了在地图中搜索未知区域,行驶到未知区域,并在未知区域进行建图的过程,在判断存目标区域存在未知区域的情况下,执行步骤S410;Step S408: The robot exits the autonomous exploration process when it judges that there is no unknown area in the target area; it can be understood that the autonomous exploration process can be understood as including searching for an unknown area in the map, driving to the unknown area, and finding the unknown area. In the process of building a map, when it is judged that there is an unknown area in the storage target area, step S410 is performed;
步骤S410:导航模块在确定了未知区域后,实时计算机器人的当前位置到未知区域的导航路径;Step S410: after the navigation module determines the unknown area, calculates the navigation path from the current position of the robot to the unknown area in real time;
步骤S412:机器人在实际行驶过程中,如果发现未知区域不可达,则执行步骤S410,以确定一条新的可能到达未知区域的路径,如果未知区域可达,则在对未知区域重建后,执行步骤S404。Step S412: During the actual driving process of the robot, if the unknown area is found to be unreachable, step S410 is performed to determine a new path that may reach the unknown area. If the unknown area is reachable, after the unknown area is reconstructed, step S410 is performed. S404.
需要说明的是,在上述步骤执行的过程中,如果机器人内的回充传感器检测到回充信号,那么就会退出当前自主探索流程。It should be noted that during the execution of the above steps, if the recharge sensor in the robot detects a recharge signal, it will exit the current autonomous exploration process.
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。It should be noted that the above modules can be implemented by software or hardware, and the latter can be implemented in the following ways, but not limited to this: the above modules are all located in the same processor; or, the above modules can be combined in any combination The forms are located in different processors.
本申请的实施例还提供了一种计算机可读的存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。Embodiments of the present application further provide a computer-readable storage medium, where a computer program is stored in the storage medium, wherein the computer program is configured to execute the steps in any one of the above method embodiments when running.
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:Optionally, in this embodiment, the above-mentioned storage medium may be configured to store a computer program for executing the following steps:
S1,从目标区域的初始地图中搜索满足预设条件的未知区域,其中,所述预设条件包括以下至少之一:所述未知区域的面积大于预设阈值,机器人允许到达所述未知区域;S1, searching for an unknown area that satisfies a preset condition from an initial map of the target area, wherein the preset condition includes at least one of the following: the area of the unknown area is greater than a preset threshold, and the robot is allowed to reach the unknown area;
S2,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图;S2, control the robot to perform map reconstruction in the unknown area after traveling to the unknown area, and update the initial map according to the reconstructed map;
S3,在所述重建地图中未能找到符合所述预设条件的未知区域的情况下,将当前重建的地图作为所述机器人的建图结果。S3 , in the case that an unknown area that meets the preset condition cannot be found in the reconstructed map, use the currently reconstructed map as a mapping result of the robot.
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器ROM、随机存取存储器RAM、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。Optionally, in this embodiment, the above-mentioned storage medium may include, but is not limited to: U disk, read-only memory ROM, random access memory RAM, removable hard disk, magnetic disk or optical disk and other media that can store computer programs.
本申请的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。Embodiments of the present application further provide an electronic device, including a memory and a processor, where a computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。Optionally, the above-mentioned electronic device may further include a transmission device and an input-output device, wherein the transmission device is connected to the above-mentioned processor, and the input-output device is connected to the above-mentioned processor.
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:Optionally, in this embodiment, the above-mentioned processor may be configured to execute the following steps through a computer program:
S1,从目标区域的初始地图中搜索满足预设条件的未知区域,其中,所述预设条件包括以下至少之一:所述未知区域的面积大于预设阈值,机器人允许到达所述未知区域;S1, searching for an unknown area that satisfies a preset condition from an initial map of the target area, wherein the preset condition includes at least one of the following: the area of the unknown area is greater than a preset threshold, and the robot is allowed to reach the unknown area;
S2,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图;S2, control the robot to perform map reconstruction in the unknown area after traveling to the unknown area, and update the initial map according to the reconstructed map;
S3,在所述重建地图中未能找到符合所述预设条件的未知区域的情况下,将当前重建的地图作为所述机器人的建图结果。S3 , in the case that an unknown area that meets the preset condition cannot be found in the reconstructed map, use the currently reconstructed map as a mapping result of the robot.
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。Optionally, for specific examples in this embodiment, reference may be made to the examples described in the foregoing embodiments and optional implementation manners, and details are not described herein again in this embodiment.
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。Obviously, those skilled in the art should understand that the above-mentioned modules or steps of the present application can be implemented by a general-purpose computing device, and they can be centralized on a single computing device, or distributed in a network composed of multiple computing devices Alternatively, they may be implemented in program code executable by a computing device, such that they may be stored in a storage device and executed by the computing device, and in some cases, in a different order than here The steps shown or described are performed either by fabricating them separately into individual integrated circuit modules, or by fabricating multiple modules or steps of them into a single integrated circuit module. As such, the present application is not limited to any particular combination of hardware and software.
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。The above descriptions are only preferred embodiments of the present application, and are not intended to limit the present application. For those skilled in the art, the present application may have various modifications and changes. Any modification, equivalent replacement, improvement, etc. made within the principles of this application shall be included within the protection scope of this application.

Claims (12)

  1. 一种机器人的建图方法,其特征在于,包括:A method for mapping a robot, comprising:
    从目标区域的初始地图中搜索满足预设条件的未知区域,其中,所述预设条件包括以下至少之一:所述未知区域的面积大于预设阈值,机器人允许到达所述未知区域;Searching for an unknown area that satisfies a preset condition from the initial map of the target area, wherein the preset condition includes at least one of the following: the area of the unknown area is greater than a preset threshold, and the robot is allowed to reach the unknown area;
    控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图;control the robot to perform map reconstruction in the unknown area after traveling to the unknown area, and update the initial map according to the reconstructed map;
    在所述重建后的地图中未能找到符合所述预设条件的未知区域的情况下,将当前重建的地图作为所述机器人的建图结果。In the case that an unknown area that meets the preset condition cannot be found in the reconstructed map, the currently reconstructed map is used as the mapping result of the robot.
  2. 根据权利要求1所述的方法,其特征在于,将当前重建的地图作为所述机器人的建图结果之前,所述方法还包括:The method according to claim 1, characterized in that before using the currently reconstructed map as the mapping result of the robot, the method further comprises:
    循环执行以下步骤:从目标区域的初始地图中搜索满足预设条件的未知区域,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图,直至所述重建后的地图中未能找到符合所述预设条件的未知区域。The following steps are performed cyclically: searching for an unknown area that satisfies preset conditions from the initial map of the target area, controlling the robot to perform map reconstruction in the unknown area after traveling to the unknown area, and updating according to the reconstructed map From the initial map, until the reconstructed map fails to find an unknown area that meets the preset condition.
  3. 根据权利要求1所述的方法,其特征在于,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图之后,所述方法还包括:The method according to claim 1, wherein the robot is controlled to perform map reconstruction in the unknown area after traveling to the unknown area, and after updating the initial map according to the reconstructed map, the Methods also include:
    从所述重建后的地图中确定搜索范围,并从所述搜索范围中搜索满足所述预设条件的未知区域,其中,所述搜索范围未包括:从所述初始地图中已经搜索到的满足所述预设条件的未知区域;A search range is determined from the reconstructed map, and an unknown area that satisfies the preset condition is searched from the search range, wherein the search range does not include: the search range from the initial map that satisfies the preset condition is not included. the unknown area of the preset condition;
    控制所述机器人在从所述搜索范围中搜索到的未知区域再次进行地图重建,并根据再次重建后的地图更新所述重建后的地图。The robot is controlled to perform map reconstruction again in the unknown area searched from the search range, and the reconstructed map is updated according to the reconstructed map again.
  4. 根据权利要求2所述的方法,其特征在于,从目标区域的初始地图中搜索满足预设条件的未知区域,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图,包括:The method according to claim 2, characterized in that, searching for an unknown area that satisfies a preset condition from an initial map of the target area, and controlling the robot to perform map reconstruction in the unknown area after traveling to the unknown area , and update the initial map according to the reconstructed map, including:
    在根据所述重建后的地图更新所述初始地图后,从所述重建后的地图中确定搜索范围,并从所述搜索范围中再次搜索满足所述预设条件的未知区域,其 中,所述搜索范围未包括:从所述初始地图中已经搜索到的满足所述预设条件的未知区域;After the initial map is updated according to the reconstructed map, a search range is determined from the reconstructed map, and an unknown area that satisfies the preset condition is searched again from the search range, wherein the The search range does not include: the unknown area that has been searched from the initial map and meets the preset condition;
    控制所述机器人在从所述搜索范围中搜索到的未知区域再次进行地图重建,并根据再次重建后的地图更新所述重建后的地图,以在所述再次重建后的地图中搜索满足所述预设条件的未知区域。Controlling the robot to perform map reconstruction again in the unknown area searched from the search range, and updating the reconstructed map according to the reconstructed map, so as to search the reconstructed map to meet the requirements of the Unknown areas of preset conditions.
  5. 根据权利要求1所述的方法,其特征在于,从所述目标区域的初始地图中搜索满足所述预设条件的未知区域,包括:The method according to claim 1, wherein searching for an unknown area that satisfies the preset condition from an initial map of the target area comprises:
    设置所述未知区域的形状为固定形状,其中,所述固定形状的面积大于所述预设阈值;setting the shape of the unknown region as a fixed shape, wherein the area of the fixed shape is greater than the preset threshold;
    按照所述固定形状从所述目标区域的初始地图中搜索满足所述预设条件的未知区域。According to the fixed shape, an unknown area that satisfies the preset condition is searched from the initial map of the target area.
  6. 根据权利要求1所述的方法,其特征在于,从所述目标区域的初始地图中搜索满足所述预设条件的未知区域,包括:The method according to claim 1, wherein searching for an unknown area that satisfies the preset condition from an initial map of the target area comprises:
    确定所述目标区域的初始地图中的边缘区域以及中心区域,其中,所述目标区域包括:所述边缘区域和所述中心区域;Determine the edge area and the center area in the initial map of the target area, wherein the target area includes: the edge area and the center area;
    从所述边缘区域中搜索满足所述预设条件的未知区域;Searching for an unknown area that satisfies the preset condition from the edge area;
    在所述边缘区域搜索完成后,从所述中心区域搜索满足所述预设条件的未知区域。After the edge area search is completed, an unknown area that satisfies the preset condition is searched from the center area.
  7. 根据权利要求1所述的方法,其特征在于,从所述目标区域的初始地图中搜索满足所述预设条件的未知区域之后,所述方法还包括:The method according to claim 1, characterized in that after searching for an unknown area that satisfies the preset condition from the initial map of the target area, the method further comprises:
    获取所述机器人从当前位置行进到所述未知区域的导航路径;obtaining the navigation path of the robot from the current position to the unknown area;
    控制所述机器人按照所述导航路径行进至所述未知区域。The robot is controlled to travel to the unknown area according to the navigation path.
  8. 根据权利要求7所述的方法,其特征在于,获取所述机器人从当前位置行进到所述未知区域的导航路径,包括:The method according to claim 7, wherein acquiring the navigation path of the robot from the current position to the unknown area comprises:
    确定所述机器人从当前位置行进到所述未知区域的至少一条导航路径;determining at least one navigation path for the robot to travel from the current location to the unknown area;
    从所述至少一条导航路径中确定满足预设规则的第一导航路径,其中,所述预设规则包括:行进代价最小;A first navigation path that satisfies a preset rule is determined from the at least one navigation path, wherein the preset rule includes: the travel cost is the smallest;
    按照所述第一导航路径指示所述机器人行进到所述第一导航路径对应的未知区域。According to the first navigation path, the robot is instructed to travel to the unknown area corresponding to the first navigation path.
  9. 根据权利要求1所述的方法,其特征在于,从所述目标区域的初始地图中搜索满足所述预设条件的未知区域之后,所述方法还包括:The method according to claim 1, characterized in that after searching for an unknown area that satisfies the preset condition from the initial map of the target area, the method further comprises:
    在满足所述预设条件的未知区域为多个的情况下,获取所述机器人从当前位置行进到多个未知区域的至少一条导航路径;In the case that there are multiple unknown areas satisfying the preset condition, acquiring at least one navigation path for the robot to travel from the current position to the multiple unknown areas;
    从所述至少一条导航路径中确定满足预设规则的第二导航路径,其中,所述预设规则包括:行进代价最小;A second navigation path that satisfies a preset rule is determined from the at least one navigation path, wherein the preset rule includes: minimum travel cost;
    按照所述第二导航路径指示所述机器人行进到所述第二导航路径对应的未知区域。According to the second navigation path, the robot is instructed to travel to the unknown area corresponding to the second navigation path.
  10. 一种机器人,其特征在于,包括:A robot, characterized in that it includes:
    处理模块,用于从目标区域的初始地图中搜索满足预设条件的未知区域,控制所述机器人在行进至所述未知区域后,在所述未知区域进行地图重建,并根据重建后的地图更新所述初始地图,其中,所述预设条件包括以下至少之一:所述未知区域的面积大于预设阈值,机器人允许到达所述未知区域;The processing module is used to search for an unknown area that meets preset conditions from the initial map of the target area, control the robot to perform map reconstruction in the unknown area after traveling to the unknown area, and update according to the reconstructed map In the initial map, the preset conditions include at least one of the following: the area of the unknown area is greater than a preset threshold, and the robot is allowed to reach the unknown area;
    确定模块,用于在所述重建后的地图中未能找到符合所述预设条件的未知区域的情况下,将当前重建的地图作为所述机器人的建图结果。A determination module, configured to use the currently reconstructed map as a mapping result of the robot when an unknown area that meets the preset condition cannot be found in the reconstructed map.
  11. 一种计算机可读的存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至9任一项中所述的方法。A computer-readable storage medium, characterized in that a computer program is stored in the storage medium, wherein the computer program is configured to execute the method described in any one of claims 1 to 9 when running .
  12. 一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至9任一项中所述的方法。An electronic device comprising a memory and a processor, characterized in that, a computer program is stored in the memory, and the processor is configured to run the computer program to execute any one of the claims 1 to 9. method described.
PCT/CN2021/114003 2020-11-24 2021-08-23 Robot mapping method, robot, storage medium and electronic apparatus WO2022110928A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011331029.XA CN114532898B (en) 2020-11-24 2020-11-24 Drawing method of robot, storage medium and electronic device
CN202011331029.X 2020-11-24

Publications (1)

Publication Number Publication Date
WO2022110928A1 true WO2022110928A1 (en) 2022-06-02

Family

ID=81660423

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/114003 WO2022110928A1 (en) 2020-11-24 2021-08-23 Robot mapping method, robot, storage medium and electronic apparatus

Country Status (2)

Country Link
CN (1) CN114532898B (en)
WO (1) WO2022110928A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116091607A (en) * 2023-04-07 2023-05-09 科大讯飞股份有限公司 Method, device, equipment and readable storage medium for assisting user in searching object

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140350839A1 (en) * 2013-05-23 2014-11-27 Irobot Corporation Simultaneous Localization And Mapping For A Mobile Robot
CN106813672A (en) * 2017-01-22 2017-06-09 深圳悉罗机器人有限公司 The air navigation aid and mobile robot of mobile robot
CN109540155A (en) * 2019-02-01 2019-03-29 西安全志科技有限公司 A kind of path planning and navigation method, computer installation and the computer readable storage medium of sweeping robot
CN109974722A (en) * 2019-04-12 2019-07-05 珠海市一微半导体有限公司 A kind of the map rejuvenation control method and map rejuvenation control system of vision robot
CN110412619A (en) * 2019-08-12 2019-11-05 珠海市一微半导体有限公司 The area coverage method and laser master chip of laser robot
US10571925B1 (en) * 2016-08-29 2020-02-25 Trifo, Inc. Autonomous platform guidance systems with auxiliary sensors and task planning
CN111239768A (en) * 2020-01-13 2020-06-05 南京七宝机器人技术有限公司 Method for automatically constructing map and searching inspection target by electric power inspection robot
CN111643008A (en) * 2020-05-13 2020-09-11 深圳市银星智能科技股份有限公司 Expanded partition cleaning method and device and computer readable storage medium

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103884330B (en) * 2012-12-21 2016-08-10 联想(北京)有限公司 Information processing method, mobile electronic equipment, guiding equipment and server
US9939814B1 (en) * 2017-05-01 2018-04-10 Savioke, Inc. Computer system and method for automated mapping by robots
CN107544502A (en) * 2017-09-25 2018-01-05 华中科技大学 A kind of Planning of Mobile Robot under known environment
JP2020166630A (en) * 2019-03-29 2020-10-08 本田技研工業株式会社 Map providing system and map providing method
CN110448241B (en) * 2019-07-18 2021-05-18 华南师范大学 Robot trapped detection and escaping method
CN110806211A (en) * 2019-11-29 2020-02-18 炬星科技(深圳)有限公司 Method and device for robot to autonomously explore and establish graph and storage medium
CN111104933B (en) * 2020-03-20 2020-07-17 深圳飞科机器人有限公司 Map processing method, mobile robot, and computer-readable storage medium
CN111638526B (en) * 2020-05-20 2022-08-26 电子科技大学 Method for robot to automatically build graph in strange environment

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140350839A1 (en) * 2013-05-23 2014-11-27 Irobot Corporation Simultaneous Localization And Mapping For A Mobile Robot
US10571925B1 (en) * 2016-08-29 2020-02-25 Trifo, Inc. Autonomous platform guidance systems with auxiliary sensors and task planning
CN106813672A (en) * 2017-01-22 2017-06-09 深圳悉罗机器人有限公司 The air navigation aid and mobile robot of mobile robot
CN109540155A (en) * 2019-02-01 2019-03-29 西安全志科技有限公司 A kind of path planning and navigation method, computer installation and the computer readable storage medium of sweeping robot
CN109974722A (en) * 2019-04-12 2019-07-05 珠海市一微半导体有限公司 A kind of the map rejuvenation control method and map rejuvenation control system of vision robot
CN110412619A (en) * 2019-08-12 2019-11-05 珠海市一微半导体有限公司 The area coverage method and laser master chip of laser robot
CN111239768A (en) * 2020-01-13 2020-06-05 南京七宝机器人技术有限公司 Method for automatically constructing map and searching inspection target by electric power inspection robot
CN111643008A (en) * 2020-05-13 2020-09-11 深圳市银星智能科技股份有限公司 Expanded partition cleaning method and device and computer readable storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116091607A (en) * 2023-04-07 2023-05-09 科大讯飞股份有限公司 Method, device, equipment and readable storage medium for assisting user in searching object
CN116091607B (en) * 2023-04-07 2023-09-26 科大讯飞股份有限公司 Method, device, equipment and readable storage medium for assisting user in searching object

Also Published As

Publication number Publication date
CN114532898B (en) 2023-06-23
CN114532898A (en) 2022-05-27

Similar Documents

Publication Publication Date Title
CN107837044B (en) Partitioned cleaning method and device of cleaning robot and robot
CN109059924B (en) Accompanying robot incremental path planning method and system based on A-x algorithm
US11275380B2 (en) Virtual wall system for mobile devices and implementation method thereof
CN107773164B (en) Cleaning method and device for cleaning robot and robot
CN113110457B (en) Autonomous coverage inspection method for intelligent robot in indoor complex dynamic environment
WO2022142858A9 (en) Robot moving path planning method and apparatus, method and apparatus for determining degree of deviation of planned path point from history path, and robot and computer-readable storage medium
CN110702117B (en) Path planning method based on map, terminal equipment and computer storage medium
CN108519737B (en) Unmanned equipment path planning method considering energy supply
WO2022110928A1 (en) Robot mapping method, robot, storage medium and electronic apparatus
WO2023005377A1 (en) Map building method for robot, and robot
CN116442245A (en) Control method, device and system of service robot and storage medium
CN111329398A (en) Robot control method, robot, electronic device, and readable storage medium
CN111679677A (en) AGV pose adjusting method and device, storage medium and electronic device
Saha et al. Real-time robot path planning around complex obstacle patterns through learning and transferring options
WO2022110853A1 (en) Passable region exploration method and apparatus, storage medium, and electronic apparatus
CN109977455B (en) Ant colony optimization path construction method suitable for three-dimensional space with terrain obstacles
Rajesh et al. Multi robot exploration and mapping using frontier cell concept
CN113485372B (en) Map searching method and device, storage medium and electronic device
CN111679663A (en) Three-dimensional map construction method, sweeping robot and electronic equipment
Zema et al. Formation control of a mono-operated uav fleet through ad-hoc communications: a q-learning approach
CN112991527B (en) Target object avoiding method and device, storage medium and electronic device
US20220026908A1 (en) Method and apparatus for positioning a robot at start-up, electronic device and storage medium
CN114690771A (en) Path planning method and device for robot
CN113467452A (en) Avoidance method and device for mobile robot, storage medium, and electronic device
Matloob et al. Exploring the Tradeoffs Between Systematic and Random Exploration in Mobile Sensors

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21896433

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21896433

Country of ref document: EP

Kind code of ref document: A1