WO2023130704A1 - 机器人的建图方法、装置、机器人和存储介质 - Google Patents

机器人的建图方法、装置、机器人和存储介质 Download PDF

Info

Publication number
WO2023130704A1
WO2023130704A1 PCT/CN2022/105276 CN2022105276W WO2023130704A1 WO 2023130704 A1 WO2023130704 A1 WO 2023130704A1 CN 2022105276 W CN2022105276 W CN 2022105276W WO 2023130704 A1 WO2023130704 A1 WO 2023130704A1
Authority
WO
WIPO (PCT)
Prior art keywords
point
robot
exploration
target point
explored
Prior art date
Application number
PCT/CN2022/105276
Other languages
English (en)
French (fr)
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 WO2023130704A1 publication Critical patent/WO2023130704A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/587Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content

Definitions

  • the present disclosure relates to the field of robot mapping, in particular to a robot mapping method, device, robot and storage medium.
  • autonomous mobile robots have attracted more and more attention from engineering andTECH.
  • the key technology is to establish a map of the external environment inside the robot for subsequent navigation when the robot is in an unknown environment.
  • the traditional way of robot mapping is to control the movement of the robot manually or using a keyboard or joystick, which will waste time, manpower, and material resources when facing a large and complex indoor environment. Therefore, it is of great significance for the robot to be free from human control and realize autonomous exploration and mapping. On the one hand, it saves manpower and material resources.
  • the robot makes real-time mapping decisions based on its own perception, collection and processing of environmental information, improving the autonomy and Intelligent.
  • the robot moves to different positions for LDS (Laser Distance Sensor, laser ranging sensor) scanning to complete the mapping of the entire space to be explored.
  • LDS Laser Distance Sensor, laser ranging sensor
  • the map building may still continue to move to the target point for map building, which increases the running time of the map building process.
  • selecting the target point according to the principle of distance priority will cause the problem of continuous short-distance movement in the same area, and multiple movements will complete the scanning of different positions in the same area respectively, which will prolong the mapping time.
  • the embodiments of the present disclosure provide a robot mapping method, device, robot and storage medium, by optimizing the selection of target points, to reduce the running time of the robot mapping process.
  • An embodiment of the first aspect of the present disclosure provides a robot mapping method, including:
  • the target point is a first exploration point in the area to be explored, and the first exploration point is in an unexplored state; when the robot is moving to the target point, detect the location corresponding to the preset range where the target point is located.
  • Explore point information process the target point according to the explored point information; based on the robot traveling to the target point, collect the mapping data of the area to be explored to update the robot's environmental space map.
  • the step of processing the target point according to the information of the explored point specifically includes:
  • the target point Based on the exploration point information, there is a second exploration point within the preset range, and the target point is maintained; based on the exploration point information, there is no second exploration point within the preset range, and there is a second exploration point outside the preset range, and the target point is updated is the second exploration point; wherein, the second exploration point is the first exploration point except the target point.
  • the mapping method of the robot further includes:
  • the step of controlling the robot to travel to the target point before the step of controlling the robot to travel to the target point, it also includes:
  • the environmental space map includes the known area and/or the area to be explored, and the known area corresponds to the mapping data; extract multiple boundary points of the area to be explored that overlap with the known area; put the unexplored state The boundary point is determined as the first exploration point.
  • the mapping method of the robot further includes:
  • first exploration points in the area to be explored Based on the number of first exploration points in the area to be explored is multiple, connect multiple first exploration points in turn to obtain a connection line; determine the first distance between each first exploration point and the center point of the connection line; The first exploration point corresponding to the minimum value in a distance is determined as the target point.
  • the step of collecting the mapping data of the area to be explored it also includes:
  • the mapping method of the robot further includes:
  • the robot is controlled to move along the outer edge of the obstacle to bypass the obstacle.
  • An embodiment of the second aspect of the present disclosure provides a robot mapping device, including:
  • the control module is used to control the robot to advance to the target point.
  • the target point is a first exploration point in the area to be explored, and the first exploration point is in an unexplored state;
  • the detection module is used to detect The exploration point information within the preset range where the target point is located;
  • the processing module is used to process the target point according to the exploration point information;
  • the mapping module is used to collect the mapping data of the area to be explored based on the robot traveling to the target point , to update the robot's spatial map of its environment.
  • the processing module is specifically configured to: based on the information of the exploration points, if there is a second exploration point within the preset range, and keep the target point; if there is no second exploration point within the preset range based on the information of the exploration points, And there is a second exploration point outside the preset range, and the target point is updated as the second exploration point; wherein, the second exploration point is the first exploration point other than the target point.
  • control module is also used to control the robot to stop traveling based on the information of the exploration point that there is no second exploration point in the area to be explored;
  • mapping device of the robot also includes: a storage module for storing Environmental space map.
  • the mapping device of the robot further includes: an acquisition module, configured to acquire an environmental space map, the environmental space map includes known areas and/or areas to be explored, and the known areas correspond to mapping data;
  • the extraction module is used to extract multiple boundary points of the area to be explored overlapping with the known area;
  • the first determination module is used to determine the boundary points in the unexplored state as the first exploration points.
  • the mapping device of the robot further includes: a second determination module, configured to sequentially connect multiple first exploration points based on the number of first exploration points in the area to be explored to obtain a connection line; determine the first distance between each first exploration point and the center point of the connecting line; determine the first exploration point corresponding to the minimum value in the first distance as the target point.
  • a second determination module configured to sequentially connect multiple first exploration points based on the number of first exploration points in the area to be explored to obtain a connection line; determine the first distance between each first exploration point and the center point of the connecting line; determine the first exploration point corresponding to the minimum value in the first distance as the target point.
  • the mapping device of the robot further includes: a state update module, configured to update the target point to an explored state.
  • control module is also used to control the robot to travel along the outer edge of the obstacle based on the obstacle between the current position of the robot and the target point during the process of the robot traveling to the target point, so as to Go around obstacles.
  • the embodiment of the third aspect of the present disclosure provides a robot, which includes a processor and a memory; the memory is used to store operation instructions; the processor is used to execute any one of the above first aspects by calling the operation instructions. Item's robot's mapping method.
  • An embodiment of the fourth aspect of the present disclosure provides a storage medium on which a computer program is stored, and when the program is executed by a processor, the robot mapping method in any one of the above-mentioned first aspects is implemented.
  • the robot mapping method optimizes the selection of target points so that the robot can move to fewer positions to complete the mapping of the region. Moreover, it can monitor other exploration points around the target point during the movement to prevent the mapping data of the target point from being collected repeatedly. In this way, the autonomous exploration and mapping of unknown scenes can be completed with fewer exploration times, higher exploration efficiency and less exploration time.
  • FIG. 1 is one of the structural diagrams of a robot provided according to an embodiment of the present disclosure
  • FIG. 2 is the second structural diagram of a robot provided according to an embodiment of the present disclosure
  • FIG. 3 is a schematic flowchart of a robot mapping method provided according to an embodiment of the present disclosure
  • Fig. 4 is a schematic block diagram of a mapping device of a robot provided according to an embodiment of the present disclosure
  • Fig. 5 is a schematic diagram of an electronic structure of a robot provided according to an embodiment of the present disclosure.
  • FIG. 1 and FIG. 2 are schematic structural diagrams of a robot according to an exemplary embodiment of the present disclosure.
  • the robot of the present disclosure may be a sweeping robot, a mopping robot, a vacuum cleaning robot, and the like.
  • this embodiment describes the technical solution of the present disclosure by taking a sweeping robot as an example.
  • the robot may include a mobile platform 100 , a perception system 120 , a human-computer interaction system 130 , a drive system 140 , a cleaning module 150 , an energy system 160 , and a control system 170 . in:
  • the mobile platform 100 may be configured to automatically move in a target direction on the operating surface.
  • the operating surface can be the surface to be cleaned by the robot.
  • the cleaning robot works on the ground, which is the operating surface.
  • the mobile platform 100 may be an autonomous mobile platform or a non-autonomous mobile platform.
  • An autonomous mobile platform means that the mobile platform 100 itself can automatically and adaptively make operational decisions based on unexpected environmental inputs; a non-autonomous mobile platform itself cannot adaptively make operational decisions based on unexpected environmental inputs, but It can execute a predetermined program or run according to a certain logic.
  • the target direction can be independently determined by the robot; when the mobile platform 100 is a non-autonomous mobile platform, the target direction can be set by the system or manually.
  • the mobile platform 100 is an autonomous mobile platform, the mobile platform 100 includes a forward portion 111 and a rearward portion 110 .
  • the perception system 120 includes a position determination device 121 located above the mobile platform 100, a buffer 122 located at the forward portion 111 of the mobile platform 100, a cliff sensor 123 located at the bottom of the mobile platform, an ultrasonic sensor (not shown), an infrared sensor (not shown in the figure), magnetometer (not shown in the figure), accelerometer (not shown in the figure), gyroscope (not shown in the figure), odometer (not shown in the figure) and other sensors
  • the device provides various position information and motion state information of the machine to the control system 170.
  • the position determining device 121 includes but not limited to a camera and a laser distance measuring device.
  • Laser ranging devices such as LDS can measure events (or objects) within a range of measurement heights above the robot.
  • the measuring height range can be set as a range of 8-10 cm above the robot, for example.
  • the robot can travel on the ground through various combinations of movements relative to the following three mutually perpendicular axes defined by the mobile platform 100: the lateral axis x, the front-back axis y and Center vertical axis z.
  • the forward driving direction along the front-rear axis y is designated “forward” and the rearward driving direction along the front-rear axis y is designated “rear”.
  • the transverse axis x extends substantially along the axis defined by the center point of the drive wheel assembly 141 between the right and left wheels of the robot. Among them, the robot can rotate around the x-axis.
  • a “pitch” is when the forward part of the robot is tilted up and the rearward part is tilted down, and a “pitch” is when the forward part of the robot is tilted down and the rearward part is tilted up.
  • the robot can turn around the z-axis. In the forward direction of the robot, when the robot is tilted to the right of the Y axis, it is “right turn”, and when the robot is tilted to the left of the y axis, it is "left turn”.
  • cliff sensors 123 are provided on the bottom of the mobile platform 100 and at the front and rear of the driving wheel assembly 141 , and the cliff sensors are used to prevent the robot from falling when it retreats, thereby preventing the robot from being damaged.
  • the aforementioned "front” refers to the same side relative to the robot's traveling direction, and the aforementioned “rear” refers to the opposite side relative to the robot's traveling direction.
  • Each component in the perception system 120 can operate independently or jointly to achieve the purpose function more accurately.
  • the surface to be cleaned is identified by the cliff sensor 123 and the ultrasonic sensor to determine the physical characteristics of the surface to be cleaned, including surface material, cleanliness, etc., and can be combined with cameras, laser distance measuring devices, etc. to make more accurate judgments.
  • the ultrasonic sensor can be used to determine whether the surface to be cleaned is a carpet. If the ultrasonic sensor determines that the surface to be cleaned is made of carpet, the control system 170 controls the robot to perform carpet mode cleaning.
  • the forward part 111 of the mobile platform 100 is provided with a buffer 122.
  • the buffer 122 detects one or more points in the driving path of the robot via a sensor system, such as an infrared sensor.
  • An event (or object) the robot can pass through the event (or object) detected by the buffer 122, such as an obstacle, a wall, and control the driving wheel assembly 141 to make the robot respond to the event (or object), For example, stay away from obstacles, cross obstacles, etc.
  • the obstacle detection device of the robot may include a buffer 122, an infrared sensor, and the like.
  • the obstacle detection device can be used to detect whether there is a first obstacle between the current position of the robot and the traveling target position of the robot.
  • the height of the first obstacle is smaller than the measuring height range of the robot.
  • the control system 170 is arranged on the main circuit board in the mobile platform 100, and includes a computing processor, such as a central processing unit, an application processor, and a non-transitory memory, such as a hard disk, a flash memory, and a random access memory, which communicate
  • the sensor is configured to receive the environmental information sensed by the plurality of sensors from the perception system 120, and use a positioning algorithm, such as Simultaneous Localization And Mapping (Simultaneous Localization And Mapping, SLAM), drawing an instant map of the environment in which the robot is located, and autonomously determining a driving path according to the environmental information and the environmental map, and then controlling the drive system 140 to perform operations such as forward, backward and/or turning according to the autonomously determined driving path. Further, the control system 170 may also decide whether to activate the cleaning module 150 to perform cleaning operations according to the environmental information and the environmental map.
  • SLAM Simultaneous Localization And Mapping
  • control system 170 can combine the distance information and speed information fed back by the buffer 122, the cliff sensor 123, and ultrasonic sensors, infrared sensors, magnetometers, accelerometers, gyroscopes, and odometers to comprehensively determine that the sweeper is currently in What kind of working status, such as over the threshold, on the carpet, on the cliff, stuck above or below, full of dust boxes, picked up, etc., will also give specific next-step action strategies for different situations, so that the robot's The work is more in line with the requirements of the owner and has a better user experience. Furthermore, the control system 170 can plan the most efficient and reasonable running path and running mode based on the real-time map information drawn by SLAM, greatly improving the running efficiency of the robot.
  • the mapping device of the robot may include a control system 170 .
  • the mapping device of the robot can be used to control the robot to move towards the target point; during the process of the robot moving towards the target point, detect the information of the exploration point within the preset range where the target point is located; process the target point according to the information of the exploration point; Based on the robot traveling to the target point, the mapping data of the area to be explored is collected to update the robot's environmental space map.
  • Drive system 140 may execute drive commands to steer the robot across the ground based on specific distance and angular information, such as x, y, and theta components.
  • the robot may include one or more steering assemblies 142.
  • the steering assembly 142 may be a driven wheel or a driving wheel, and its structure includes but is not limited to The universal wheel, the steering assembly 142 may be located in front of the driving wheel assembly 141 .
  • the driving wheel assembly 141 can be detachably connected to the mobile platform 100 for easy disassembly and maintenance.
  • the driving wheels may have a biased drop suspension system, movably fastened, for example attached in a rotatable manner, to the robot mobile platform 100, and maintained in contact with the robot mobile platform 100 with a certain traction force through elastic elements, such as tension springs or compression springs.
  • the contact and traction of the ground, meanwhile, the cleaning module 150 of the robot also contacts the surface to be cleaned with a certain pressure.
  • the cleaning module 150 may include a dry cleaning module 151 and/or a wet cleaning module 180 .
  • Energy system 160 includes rechargeable batteries, such as NiMH and Lithium batteries.
  • the rechargeable battery can be connected with a charging control circuit, a battery pack charging temperature detection circuit and a battery undervoltage monitoring circuit, and the charging control circuit, a battery pack charging temperature detection circuit, and a battery undervoltage monitoring circuit are connected with the single-chip microcomputer control circuit.
  • the main unit is charged by being connected to the charging pile through the charging electrodes arranged on the side or the bottom of the fuselage. If there is dust on the exposed charging electrodes, due to the cumulative effect of charges during the charging process, the plastic body around the electrodes will be melted and deformed, and even the electrodes themselves will be deformed, making it impossible to continue charging normally.
  • the human-computer interaction system 130 includes buttons on the panel of the main unit, which are used for the user to select functions; and may also include a display screen and/or an indicator light and/or a horn, and the display screen, the indicator light and the horn show the user the current state of the machine or Functional options; may also include mobile phone client programs.
  • the robot mapping method described below can be implemented by a robot (such as a sweeping robot, a mopping robot, etc.), that is, a robot can execute the robot
  • a robot can execute the robot
  • Each step of the mapping method, in this case, the mapping device of the robot can be configured in the robot.
  • an embodiment of the present disclosure provides a robot mapping method, including the following method steps:
  • Step S302 controlling the robot to move towards the target point
  • the target point is a first exploration point in the area to be explored, and the first exploration point is in an unexplored state, that is, the target point is the position where the robot has not collected mapping data in the area to be explored on the environmental space map.
  • the target point can avoid the location where the data has been collected, avoid the unnecessary work of the robot, effectively reduce the number of explorations of the robot, and greatly shorten the time for map construction.
  • the first exploration point corresponds to coordinates. After the robot enters the mapping mode, the robot can navigate through the coordinates and then move to the target point to be explored.
  • the overlapping boundary point between the area to be explored and the known area on the environmental space map can be used as the first exploration point, which not only ensures that the mapping data can cover a larger area during scanning, but also prevents Local areas are missed to achieve better mapping results.
  • the number of the first exploration point may be one or more, and the number of the first exploration point is related to the size of the unexplored area.
  • the number of the first exploration point is related to the size of the unexplored area.
  • Step S304 during the process of the robot moving towards the target point, detect the information of the exploration point corresponding to the preset range where the target point is located;
  • the preset range can be centered on the target point and reasonably set according to the scanning area of the robot.
  • the scanning area is the range of mapping data that the robot can collect at the target point.
  • the field of view of a robotic camera For example, the field of view of a robotic camera.
  • Step S306 process the target point according to the search point information
  • the exploration point information corresponding to the preset range is periodically detected according to the preset time interval, wherein the setting of the preset time interval is related to the speed of the robot and the environment in which it travels;
  • the exploration point information is used to indicate whether there is a first exploration point other than the target point within the preset range, and whether there is a first exploration point other than the target point outside the preset range.
  • the information of the exploration point can be used to change the target point in time, which can prevent the data of the scannable area of the target point from being collected repeatedly while allowing the robot to move less and complete the area mapping , and then fewer exploration times, higher exploration efficiency and less exploration time to complete the autonomous exploration and mapping of unknown scenes.
  • step S308 based on the robot traveling to the target point, the mapping data of the area to be explored is collected, so as to update the environmental space map of the robot.
  • the data acquisition device of the robot when the robot arrives at the target point, the data acquisition device of the robot is started to collect the mapping data of the scannable area of the robot at the target point, and use the mapping data to expand the creation of the environmental space map.
  • the robot uses the movement and measurement of the mapping robot to perform positioning and mapping. More specifically, first collect laser data and odometer data to estimate the pose of the robot, then map the environment, and then correct the pose of the robot according to the established map to build an accurate map model.
  • the environment space map model can be a grid map.
  • the grid map can directly obtain the occupancy state of the environment through the distance information of the sensor, provide detailed environmental characteristic data, and is suitable for the spatial representation of the unstructured environment. It is an important basis for robot navigation and path planning.
  • Each grid in the grid map has three states: idle, occupied, and unknown. Idle indicates that there is no obstacle at the grid, occupied indicates that there is an obstacle at the grid, and unknown indicates that the grid has not been sensed by the robot and belongs to the waiting list. environment to explore.
  • the target point is removed from the first exploration point, avoiding the problem of repeated point selection in the next point selection, which is conducive to improving the speed of point selection, preventing unnecessary work of the robot, and reducing the overall running time of the mapping process.
  • the step of processing the target point according to the information of the explored point specifically includes:
  • Step S306-1 based on the search point information, there is a second search point within the preset range, and keep the target point;
  • Step S306-2 based on the information of the exploration point, there is no second exploration point within the preset range, and there is a second exploration point outside the preset range, and the target point is updated to the second exploration point.
  • the second exploration point is the first exploration point other than the target point.
  • the target point can be kept unchanged, so that the robot continues to travel according to the set target point until it reaches the target point, and the data collection of the target point has been completed.
  • the robot when it is determined that there is no second exploration point within the preset range, that is, the surroundings of the currently set target point have been fully scanned, the robot does not need to perform data collection again at this point. At this point, it can be approximated that the target point has been explored.
  • the state of the target point before the update can be changed to the explored state, that is, the target point before the update is changed from the first explored point to Eliminate it, and then update the target point.
  • the search point information of the preset range related to the updated target point may also be re-detected. If the search point information still indicates that there is no second search point within the preset range, and there is a second search point outside the preset range, continue to update the target point until the data collection is completed.
  • mapping method of the robot further includes:
  • Step S310 based on the information of the exploration point, there is no second exploration point in the area to be explored, and the robot is controlled to stop moving;
  • Step S312 storing the environment space map.
  • the first exploration point to explore confirm that the mapping has been completed, and directly control the robot to stop exploring.
  • the final environmental space map is stored for subsequent use. In this way, unnecessary work of the robot in the exploration process is prevented, the time required for exploration is saved, and the efficiency of autonomous exploration is improved.
  • the only second exploration point will be used as a new target point to control the robot to move forward.
  • the robot After the robot completes the mapping data collection at the second exploration point, it can confirm that there are no unexplored points, and the robot can save the completed environmental space map, exit the mapping mode, and output the exploration completion information.
  • the preset rule is used to select a second exploration point from multiple second exploration points, and can be reasonably set according to exploration requirements. For example, define the default rule as selecting the second exploration point closest to the current position of the robot to reduce the time required for the robot to travel, or define the default rule as selecting the second exploration point closest to the current target point to avoid the robot as much as possible Continuous short-distance movement in the same area, or define preset rules as obstacles between the robot and the second exploration point, etc.
  • the embodiments of the present disclosure do not specifically limit the preset rules.
  • the step of controlling the robot to travel to the target point before the step of controlling the robot to travel to the target point, it also includes:
  • Step S402 obtaining an environmental space map
  • the environmental space map includes known areas and/or areas to be explored, and the known areas correspond to mapping data.
  • the environmental space map can be obtained through information transmission between the control terminal and the robot, or it can be created by the robot itself or retrieved from the built-in memory of the robot.
  • Step S404 extracting multiple boundary points of the area to be explored overlapping with the known area
  • an image segmentation technique is used to extract boundary points between known and unexplored areas in the local grid map.
  • boundary point is defined as the coordinate point at the junction of open (known) and unknown (unknown) in the map, that is, the boundary of the area not scanned by the lidar.
  • the environment space where the robot is located is the area to be explored, and the current position of the robot is used as the target point for the first data collection to form an environmental space map where the known area and the area to be explored coexist. Then use the boundary algorithm to continue to map the area to be explored.
  • Step S406 determining a boundary point in an unexplored state as a first exploration point.
  • all the boundary points adjacent to the known area on the environmental space map to be explored are extracted first, and the unexplored boundary points are selected from all the boundary points through state identification as the first exploration point.
  • mapping method of the robot further includes:
  • Step S502 based on the fact that there are multiple first exploration points in the area to be explored, sequentially connect multiple first exploration points to obtain a connecting line;
  • Step S504 determining a first distance between each first search point and the center point of the connection line;
  • Step S506 determining the first search point corresponding to the minimum value in the first distance as the target point.
  • first search points in the area to be explored that is, multiple unexplored boundary points
  • connect multiple first search points in sequence to form a connection line in order to cover Larger area, better mapping effect, calculate the first distance between each first exploration point and the center point of the connection line, the first exploration point corresponding to the minimum value in the first distance is the closest to the center point The first exploration point, and use the first exploration point as the target point for exploration.
  • the robot when selecting a target point, check all the points in the map in turn. After finding the first exploration point that meets the conditions (adjacent to the known area and not explored), since the laser ranging sensor is a straight line , all boundary points are similar to a straight line in shape, and the center of the line segment composed of multiple first exploration points is selected as the target point as much as possible. If the target point cannot be found, all the mapping has been completed. When the robot is moving towards the target point, regularly check whether there is still an unchecked first exploration point around the target point.
  • the mapping method of the robot further includes:
  • Step S602 during the process of the robot traveling to the target point, based on the obstacle existing between the current position of the robot and the target point, the robot is controlled to travel along the outer edge of the obstacle so as to bypass the obstacle.
  • the robot if an obstacle is detected between the robot's current position and the target point during the robot's travel, the robot is controlled to travel along the outer edge of the obstacle to bypass the obstacle and reach the travel target point, avoiding The robot stops running due to obstacles, which increases the continuity of the robot's work and improves the operating efficiency of the robot.
  • the step of controlling the robot to travel along the outer edge of the obstacle specifically includes: when the second distance between the current position of the robot and the obstacle is less than a distance threshold, controlling the robot to deflect by a preset angle and move toward a distance away from the obstacle. direction; if the third distance between the current position of the robot and the obstacle is greater than the distance threshold after advancing, the robot is controlled to reverse the preset angle and move towards the first obstacle.
  • the preset angle may refer to an angle at which the robot adjusts the direction of travel during travel.
  • the setting of the distance threshold may be different.
  • an embodiment of the second aspect of the present disclosure provides a robot mapping device 700 , which may include: a control module 702 , a detection module 704 , a processing module 706 and a mapping module 708 .
  • control module 702 is used to control the robot to advance to the target point, the target point is a first exploration point in the area to be explored, and the first exploration point is in an unexplored state;
  • detection module 704 is used to advance the robot to the target point During the process, the information of the exploration point within the preset range where the target point is detected;
  • processing module 706 is used to process the target point according to the information of the exploration point; Mapping data of the explored area to update the robot's spatial map of its environment.
  • the processing module 706 is specifically configured to: based on the exploration point information, there is a second exploration point within the preset range, and keep the target point; based on the exploration point information, there is no second exploration point within the preset range, and the preset There is a second exploration point outside the range, and the target point is updated as the second exploration point; wherein, the second exploration point is the first exploration point other than the target point.
  • control module 702 is also used to control the robot to stop traveling based on the information of the exploration points that there is no second exploration point in the area to be explored;
  • the mapping device 700 of the robot also includes: a storage module (not shown in the figure) ), which stores the map of the environment space.
  • the mapping device 700 of the robot also includes: an acquisition module (not shown in the figure), configured to acquire an environmental space map, the environmental space map includes known areas and/or areas to be explored, and the known areas correspond to Mapping data; an extraction module (not shown in the figure), used to extract a plurality of boundary points of the region to be explored overlapping with known regions; a first determination module (not shown in the figure), used to place The boundary point of the state is determined as the first exploration point.
  • the robot mapping device 700 also includes: a second determination module (not shown in the figure), which is used to sequentially connect multiple first exploration points based on the number of first exploration points in the area to be explored. points to obtain the connection line; determine the first distance between each first exploration point and the center point of the connection line; determine the first exploration point corresponding to the minimum value in the first distance as the target point.
  • a second determination module (not shown in the figure), which is used to sequentially connect multiple first exploration points based on the number of first exploration points in the area to be explored. points to obtain the connection line; determine the first distance between each first exploration point and the center point of the connection line; determine the first exploration point corresponding to the minimum value in the first distance as the target point.
  • the robot mapping device 700 further includes: a state update module (not shown in the figure), configured to update the target point to an explored state.
  • a state update module (not shown in the figure), configured to update the target point to an explored state.
  • control module 702 is also configured to control the robot to travel along the outer edge of the obstacle based on the obstacle between the current position of the robot and the target point during the process of the robot traveling to the target point, so as to bypass the obstacle thing.
  • the embodiment of the third aspect of the present disclosure provides a robot, including a processor and a memory, the memory stores computer program instructions that can be executed by the processor, and when the processor executes the computer program instructions, the implementation of any embodiment The steps of the robot's mapping method.
  • the robot may include a processing device 801 (such as a central processing unit, a graphics processing unit, etc.), which may be loaded into a random access memory (RAM 803) according to a program stored in a read-only memory (ROM 802) or loaded from a storage device 808. ) to perform various appropriate actions and processing.
  • RAM 803 various programs and data necessary for the operation of the electronic robot are also stored.
  • the processing device 801 , ROM 802 , and RAM 803 are connected to each other through a bus 804 .
  • An input/output (I/O) interface is also connected to bus 804 .
  • the following devices can be connected to the I/O interface 805: input devices 806 including, for example, a touch screen, touchpad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; including, for example, a liquid crystal display (LCD), speaker, vibration an output device 807 such as a computer; a storage device 808 including, for example, a hard disk; and a communication device 809.
  • the communication means 809 may allow electronic robots to communicate wirelessly or wiredly with other robots to exchange data. While Figures 1 and 2 illustrate an electronic robot having various devices, it should be understood that implementing or possessing all of the devices shown is not a requirement. More or fewer means may alternatively be implemented or provided.
  • an embodiment of the present disclosure includes a robot software program product, which includes a computer program carried on a readable medium, and the computer program includes program code for executing the method shown in flowchart 4 .
  • the computer program may be downloaded and installed from a network via communication means 809 , or from storage means 808 , or from ROM 802 .
  • the processing device 801 the above-mentioned functions defined in the methods of the embodiments of the present disclosure are executed.
  • the above-mentioned readable medium in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two.
  • a computer-readable storage medium may be, for example but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or any combination thereof. More specific examples of computer readable storage media may include, but are not limited to: electrical connections with one or more wires, portable computer diskettes, hard disks, random access memory (RAM 803), read only memory (ROM 802), erasable Programmable read only memory (EPROM 802 or flash memory), fiber optics, portable compact disk read only memory (CD-ROM 802), optical storage devices, magnetic storage devices, or any suitable combination of the above.
  • the embodiment of the fourth aspect of the present disclosure provides a storage medium storing computer program instructions.
  • the computer program instructions When the computer program instructions are invoked and executed by a processor, the steps of the robot mapping method according to any of the above embodiments are implemented.
  • a storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
  • a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing.
  • a computer readable signal medium may also be any readable medium other than a storage medium that can transmit, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
  • Program code embodied on a readable medium may be transmitted by any suitable medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.
  • the above-mentioned readable medium may be included in the above-mentioned robot, or may exist independently without being assembled into the robot.
  • Computer program code for carrying out the operations of the present disclosure may be written in one or more programming languages, or combinations thereof, including object-oriented programming languages such as Java, Small talk, C++, and conventional A procedural programming language such as the "c" language or similar programming language.
  • the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer may be connected to the user computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (such as via the Internet using an Internet service provider). connect).
  • LAN local area network
  • WAN wide area network
  • connect an external computer (such as via the Internet using an Internet service provider).
  • each block in a flowchart or block diagram may represent a module, program segment, or portion of code that contains one or more logical functions for implementing specified executable instructions.
  • the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved.
  • each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations can be implemented by a dedicated hardware-based system that performs the specified functions or operations , or may be implemented by a combination of dedicated hardware and computer instructions.
  • the device embodiments described above are only illustrative, and the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in One place, or it can be distributed to multiple network elements. Part or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment. It can be understood and implemented by those skilled in the art without any creative efforts.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Library & Information Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本公开实施例公开了一种机器人的建图方法、装置、机器人和存储介质。机器人的建图方法包括:控制机器人向目标点行进,目标点为待探索区域的一个第一探索点,第一探索点为未探索状态;在机器人向目标点行进的过程中,检测目标点所处的预设范围对应的探索点信息;按照探索点信息对目标点进行处理;基于机器人行进至目标点,采集待探索区域的建图数据,以更新机器人的环境空间地图。 (图3)

Description

机器人的建图方法、装置、机器人和存储介质
相关申请的交叉引用
本申请基于申请日为2022年1月4日、申请号为202210006545.8号的中国专利申请,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入作为参考。
技术领域
本公开涉及机器人建图领域,具体而言涉及一种机器人的建图方法、装置、机器人和存储介质。
背景技术
随着机器人技术的快速发展和社会需求的变革,自主移动机器人越来越受到工程界和学术界的关注。为了自主移动机器人能够在非结构化、非确定的环境中自主地帮助人们完成日常生活任务,比较关键的技术是当机器人处于未知环境时,建立外界环境在机器人内部表示的地图,用于后续导航。但是传统机器人建图的方式是人工手动或使用键盘、游戏杆控制机器人移动,在面对大而复杂的室内环境时会浪费时间、人力、物力。因此机器人脱离人为控制,实现自主探索建图具有重要意义,一方面节约人力物力资源,另一方面,机器人根据自身感知、收集和处理环境信息,实时做出建图决策,提高机器人的自主性和智能化。
相关技术中,通过机器人运动到不同位置进行LDS(Laser Distance Sensor,激光测距传感器)扫描,完成整个待探索空间的建图。但在运动过程中,若目标点可达区域内已经完成建图,后续仍可能出现继续移动到该目标点进行建图的情况,增加了建图过程的运行时间。例如,按照距离优先原则选择目标点,会造成在同一区域内连续短距离运动的问题,多次运动分别完成同一区域不同位置的扫描,拉长建图时间。
发明内容
有鉴于此,本公开实施例提供一种机器人的建图方法、装置、机器人和存储介质,通过优化目标点的选择,以减少机器人建图过程的运行时间。
本公开第一方面的实施例,提供了一种机器人的建图方法,包括:
控制机器人向目标点行进,目标点为待探索区域的一个第一探索点,第一探索点为未探索状态;在机器人向目标点行进的过程中,检测目标点所处的预设范围对应的探索点信息;按照探索点信息对目标点进行处理;基于机器人行进至目标点,采集待探索区域的建图数据,以更新机器人的环境空间地图。
在本公开的一些实施例中,按照探索点信息对目标点进行处理的步骤,具体包括:
基于探索点信息为预设范围内存在第二探索点,保持目标点;基于探索点信息为预设 范围内不存在第二探索点,且预设范围外存在第二探索点,将目标点更新为第二探索点;其中,第二探索点为除目标点以外的第一探索点。
在本公开的一些实施例中,机器人的建图方法还包括:
基于探索点信息为待探索区域内不存在第二探索点,控制机器人停止行进;存储环境空间地图。
在本公开的一些实施例中,控制机器人向目标点行进的步骤之前,还包括:
获取环境空间地图,环境空间地图包括已知区域和/或待探索区域,已知区域对应有建图数据;提取与已知区域重叠的待探索区域的多个边界点;将处于未探索状态的边界点确定为第一探索点。
在本公开的一些实施例中,机器人的建图方法还包括:
基于待探索区域内第一探索点的数量为多个,依次连接多个第一探索点,得到连接线;确定每个第一探索点与连接线的中心点之间的第一距离;将第一距离中最小值对应的第一探索点确定为目标点。
在本公开的一些实施例中,采集待探索区域的建图数据的步骤之后,还包括:
将目标点更新为已探索状态。
在本公开的一些实施例中,机器人的建图方法还包括:
在机器人向目标点行进的过程中,基于机器人的当前位置与目标点之间存在障碍物,控制机器人沿障碍物的外边缘行进,以绕过障碍物。
本公开第二个方面的实施例,提供了一种机器人的建图装置,包括:
控制模块,用于控制机器人向目标点行进,目标点为待探索区域的一个第一探索点,第一探索点为未探索状态;检测模块,用于在机器人向目标点行进的过程中,检测目标点所处的预设范围内的探索点信息;处理模块,用于按照探索点信息对目标点进行处理;建图模块,用于基于机器人行进至目标点,采集待探索区域的建图数据,以更新机器人的环境空间地图。
在本公开的一些实施例中,处理模块,具体用于基于探索点信息为预设范围内存在第二探索点,保持目标点;基于探索点信息为预设范围内不存在第二探索点,且预设范围外存在第二探索点,将目标点更新为第二探索点;其中,第二探索点为除目标点以外的第一探索点。
在本公开的一些实施例中,控制模块,还用于基于探索点信息为待探索区域内不存在第二探索点,控制机器人停止行进;机器人的建图装置还包括:存储模块,用于存储环境空间地图。
在本公开的一些实施例中,机器人的建图装置还包括:获取模块,用于获取环境空间地图,环境空间地图包括已知区域和/或待探索区域,已知区域对应有建图数据;提取模块,用于提取与已知区域重叠的待探索区域的多个边界点;第一确定模块,用于将处于未探索状态的边界点确定为第一探索点。
在本公开的一些实施例中,机器人的建图装置还包括:第二确定模块,用于基于待探索区域内第一探索点的数量为多个,依次连接多个第一探索点,得到连接线;确定每个第一探索点与连接线的中心点之间的第一距离;将第一距离中最小值对应的第一探索点确定为目标点。
在本公开的一些实施例中,机器人的建图装置还包括:状态更新模块,用于将目标点更新为已探索状态。
在本公开的一些实施例中,控制模块,还用于在机器人向目标点行进的过程中,基于机器人的当前位置与目标点之间存在障碍物,控制机器人沿障碍物的外边缘行进,以绕过障碍物。
本公开的第三个方面的实施例,提供了一种机器人,其包括处理器和存储器;存储器,用于存储操作指令;处理器,用于通过调用操作指令,执行上述第一个方面任一项的机器人的建图方法。
本公开的第四个方面的实施例,提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一个方面中任一项的机器人的建图方法。
本公开实施例提供的机器人的建图方法,通过优化目标点的选择,使得机器人可运动较少位置完成区域的建图。而且能够运动过程中监控目标点周围的其他探索点,以防止该目标点位置的建图数据被重复采集的情况。从而以较少的探索次数,更高的探索效率和更少的探索时间完成对未知场景的自主探索建图。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为根据本公开的实施例提供的机器人的结构图之一;
图2为根据本公开的实施例提供的机器人的结构图之二;
图3为根据本公开的实施例提供的机器人的建图方法的流程示意图;
图4为根据本公开的实施例提供的机器人的建图装置的示意框图;
图5为根据本公开的实施例提供的机器人的电子结构示意图。
具体实施方式
下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本公开,而不能解释为对本公开的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、 “所述”和“该”也可包括复数形式。应该进一步理解的是,本公开的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“相接”到另一元件时,它可以直接连接或相接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“相接”可以包括无线连接或无线稠接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
现在,将参照附图更详细地描述根据本公开的示例性实施例。然而,这些示例性实施例可以多种不同的形式来实施,并且不应当被解释为只限于这里所阐述的实施例。应当理解的是,提供这些实施例是为了使得本公开的公开彻底且完整,并且将这些示例性实施例的构思充分传达给本领域普通技术人员。
本公开实施例提供一种可能的应用场景,该应用场景包括机器人,图1和图2是根据本公开的示例性实施方式的机器人的结构示意图。如图1和图2所示,本公开机器人可以是扫地机器人、拖地机器人、真空洗地机器人等等。为了便于描述,本实施方式以扫地机器人为例来描述本公开的技术方案。
该机器人可以包含移动平台100、感知系统120、人机交互系统130、驱动系统140、清洁模组150、能源系统160、控制系统170。其中:
移动平台100可以被配置为在操作面上自动沿着目标方向移动。操作面可以为机器人待清洁的表面。在一些实施例中,扫地机器人在地面上工作,该地面为操作面。
在一些实施例中,移动平台100可以是自主移动平台,也可以是非自主移动平台。自主移动平台是指移动平台100本身可以根据预料之外的环境输入自动地及适应性地做出操作决策;非自主移动平台本身不能根据预料之外的环境输入适应性地做出操作决策,但可以执行既定的程序或者按照一定的逻辑运行。相应地,当移动平台100为自主移动平台时,目标方向可以是机器人自主决定的;当移动平台100为非自主移动平台时,目标方向可以是系统或人工设置的。当移动平台100是自主移动平台时,移动平台100包括前向部分111和后向部分110。
感知系统120包括位于移动平台100上方的位置确定装置121、位于移动平台100的前向部分111的缓冲器122、位于移动平台底部的悬崖传感器123和超声传感器(图中未示出)、红外传感器(图中未示出)、磁力计(图中未示出)、加速度计(图中未示出)、陀螺仪(图中未示出)、里程计(图中未示出)等传感装置,向控制系统170提供机器的各种位置信息和运动状态信息。
位置确定装置121包括但不限于摄像头、激光测距装置。激光测距装置(如LDS)可以测量机器人上方测量高度范围内的事件(或对象)。测量高度范围例如可以设置为机器人上方8-10厘米的范围。
为了更加清楚地描述机器人的行为,进行如下方向定义:机器人可通过相对于由移动平台100界定的如下三个相互垂直轴的移动的各种组合在地面上行进:横向轴x、前后轴 y及中心垂直轴z。沿着前后轴y的前向驱动方向标示为“前向”,且沿着前后轴y的后向驱动方向标示为“后向”。横向轴x实质上是沿着由驱动轮组件141的中心点界定的轴心在机器人的右轮与左轮之间延伸。其中,机器人可以绕x轴转动。当机器人的前向部分向上倾斜,后向部分向下倾斜时为“上仰”,且当机器人的前向部分向下倾斜,后向部分向上倾斜时为“下俯”。另外,机器人可以绕z轴转动。在机器人的前向方向上,当机器人向Y轴的右侧倾斜为“右转”,当机器人向y轴的左侧倾斜为“左转”。
如图2所示,在移动平台100底部上并且在驱动轮组件141的前方和后方设置有悬崖传感器123,该悬崖传感器用于防止在机器人后退时发生跌落,从而能够避免机器人受到损坏。前述的“前方”是指相对于机器人行进方向相同的一侧,前述的“后方”是指相对于机器人行进方向相反的一侧。
感知系统120中的各个组件,既可以独立运作,也可以共同运作以更准确的实现目的功能。通过悬崖传感器123和超声波传感器对待清洁表面进行识别,以确定待清洁表面的物理特性,包括表面材质、清洁程度等等,并可以结合摄像头、激光测距装置等进行更准确的判定。
例如,可以通过超声波传感器对待清洁表面是否为地毯进行判断,若超声波传感器判断待清洁表面为地毯材质,则控制系统170控制机器人进行地毯模式清洁。
移动平台100的前向部分111设置有缓冲器122,在清洁过程中驱动轮组件141推进机器人在地面行进时,缓冲器122经由传感器系统,例如红外传感器,检测机器人的行驶路径中的一或多个事件(或对象),机器人可以通过由缓冲器122检测到的事件(或对象),例如障碍物、墙壁,而控制驱动轮组件141使机器人来对所述事件(或对象)做出响应,例如远离障碍物、跨越障碍物等。
在本公开的示例性实施方式中,机器人的障碍物检测装置可以包括缓冲器122、红外传感器等。障碍物检测装置可以用于检测机器人的当前位置与机器人的行进目标位置之间是否存在第一障碍物。
其中,第一障碍物的高度小于机器人的测量高度范围。
控制系统170设置在移动平台100内的电路主板上,包括与非暂时性存储器,例如硬盘、快闪存储器、随机存取存储器,通信的计算处理器,例如中央处理单元、应用处理器,应用处理器被配置为接收感知系统120传来的所述多个传感器的感受到的环境信息,根据激光测距装置反馈的障碍物信息等利用定位算法,例如同步定位与建图(Simultaneous Localization And Mapping,SLAM),绘制机器人所在环境中的即时地图,并根据所述环境信息和环境地图自主决定行驶路径,然后根据所述自主决定的行驶路径控制驱动系统140进行前进、后退和/或转向等操作。进一步地,控制系统170还可以根据所述环境信息和环境地图决定是否启动清洁模组150进行清洁操作。
具体地,控制系统170可以结合缓冲器122、悬崖传感器123和超声传感器、红外传感器、磁力计、加速度计、陀螺仪、里程计等传感装置反馈的距离信息、速度信息综合判 断扫地机当前处于何种工作状态,如过门槛,上地毯,位于悬崖处,上方或者下方被卡住,尘盒满,被拿起等等,还会针对不同情况给出具体的下一步动作策略,使得机器人的工作更加符合主人的要求,有更好的用户体验。进一步地,控制系统170能基于SLAM绘制的即时地图信息规划最为高效合理的运行路径和运行方式,大大提高机器人的运行效率。
在本公开的示例性实施方式中,机器人的建图装置可以包括控制系统170。机器人的建图装置可以用于控制机器人向目标点行进;在机器人向目标点行进的过程中,检测目标点所处的预设范围内的探索点信息;按照探索点信息对目标点进行处理;基于机器人行进至目标点,采集待探索区域的建图数据,以更新机器人的环境空间地图。
驱动系统140可基于具体的距离和角度信息,例如x、y及θ分量,执行驱动命令而操纵机器人跨越地面行驶。为了机器人能够在地面上更为稳定地运动或者更强的运动能力,机器人可以包括一个或者多个转向组件142,转向组件142可为从动轮,也可为驱动轮,其结构形式包括但不限于万向轮,转向组件142可以位于驱动轮组件141的前方。
驱动轮组件141可以可拆卸地连接到移动平台100上,方便拆装和维修。驱动轮可具有偏置下落式悬挂系统,以可移动方式紧固,例如以可旋转方式附接,到机器人移动平台100,并通过弹性元件,如拉簧或者压簧以一定的捉地力维持与地面的接触及牵引,同时机器人的清洁模组150也以一定的压力接触待清洁表面。清洁模组150可包括干式清洁模组151和/或湿式清洁模组180。
能源系统160包括充电电池,例如镍氢电池和锂电池。充电电池可以连接有充电控制电路、电池组充电温度检测电路和电池欠压监测电路,充电控制电路、电池组充电温度检测电路、电池欠压监测电路再与单片机控制电路相连。主机通过设置在机身侧方或者下方的充电电极与充电桩连接进行充电。如果裸露的充电电极上沾附有灰尘,会在充电过程中由于电荷的累积效应,导致电极周边的塑料机体融化变形,甚至导致电极本身发生变形,无法继续正常充电。
人机交互系统130包括主机面板上的按键,按键供用户进行功能选择;还可以包括显示屏和/或指示灯和/或喇叭,显示屏、指示灯和喇叭向用户展示当前机器所处状态或者功能选择项;还可以包括手机客户端程序。
需要说明的是,在本公开的示例性实施方式中,下面所述的机器人的建图方法可以由机器人(如,扫地机器人、拖地机器人等)来实现,也就是说,可以由机器人执行机器人的建图方法的各个步骤,在这种情况下,机器人的建图装置可以配置在该机器人中。
如图3所示,本公开实施例提供一种机器人的建图方法,包括如下方法步骤:
步骤S302,控制机器人向目标点行进;
其中,目标点为待探索区域的一个第一探索点,第一探索点为未探索状态,也即目标点为环境空间地图上待探索区域中机器人未采集过建图数据的位置,从而在选取目标点时能够规避已经采集过数据的位置,避免机器人无谓工作,有效减少机器人的探索次数,大大缩短建图时间。可以理解的是,第一探索点对应有坐标,在机器人进入建图模式后,机 器人能够通过坐标位置进行导航,进而移动至需要被探索的目标点位置。
进一步地,可将待探索区域的与环境空间地图上的已知区域之间重叠的边界点作为第一探索点,不仅保证建图数据扫描时可以覆盖更大面积,而且还能在探索时防止局部区域遗漏,以取得更好的建图效果。
更具体的是,第一探索点的数量可以是一个也可以是多个,第一探索点的数量与未探索区域的大小相关。在第一探索点的数量为多个的情况下,需要从多个第一探索点中选取一个作为目标点。
步骤S304,在机器人向目标点行进的过程中,检测目标点所处的预设范围对应的探索点信息;
其中,预设范围可以以目标点为中心,根据机器人扫描区域合理设置,扫描区域即机器人在目标点能够采集到的建图数据的范围。例如,机器人摄像装置的可视范围。
步骤S306,按照探索点信息对目标点进行处理;
在该实施例中,考虑到机器人能够对完整的扫描区域进行数据采集,那么当机器人位于相近的两个第一探索点进行数据采集时,可能出现至少部分区域重复扫描的情况,这将拉长建图时间,不利于提升建图效率。为此,在机器人向目标点行进的过程中,按照预设时间间隔周期性的检测预设范围对应的探索点信息,其中,预设时间间隔的设置与机器人行进的速度、行进的环境相关;探索点信息用于指示预设范围内是否存在除目标点以外的第一探索点,以及预设范围外是否存在除目标点以外的第一探索点。检测到探索点信息后,再利用探索点信息及时变更目标点,在使得机器人可运动较少位置完成区域的建图的同时,还能够防止该目标点的可扫描区域的数据被重复采集的情况,进而较少的探索次数,更高的探索效率和更少的探索时间完成对未知场景的自主探索建图。
步骤S308,基于机器人行进至目标点,采集待探索区域的建图数据,以更新机器人的环境空间地图。
在该实施例中,当机器人到达目标点后,启动机器人的数据采集装置来采集目标点位置的机器人可扫描区域的建图数据,并利用该建图数据扩大环境空间地图创建。
在具体实施过程中,机器人在未知环境进行自主探索时,基于SLAM(Simultaneous Localization And Mapping)算法,通过建图机器人的运动、测量进行定位、建图。更具体的,先收集激光数据、里程计数据估计机器人的位姿,再对环境建图,然后根据建立的地图修正机器人位姿,从而构建准确的地图模型。可以理解的是,环境空间地图模型可以是栅格地图。栅格地图能够通过传感器的距离信息直接得到环境的占用状态,提供详细的环境特征数据,适合非结构化环境的空间表示,是机器人导航和路径规划的重要基础。栅格地图中每个栅格有三种状态:空闲、占用、未知,空闲表示该栅格处没有障碍物,占用表示栅格处有障碍物,未知表示栅格还未被机器人感知到,属于待探索的环境。
进一步地,采集待探索区域的建图数据的步骤之后,将目标点更新为已探索状态。从而将该目标点从第一探索点中剔除,避免下一选点时出现重复选点的问题,有利于提高选 点速度,防止机器人无谓工作,减少了建图过程的整体运行时间。
在本公开提供的一些可以实现的实施例中,按照探索点信息对目标点进行处理的步骤,具体包括:
步骤S306-1,基于探索点信息为预设范围内存在第二探索点,保持目标点;
步骤S306-2,基于探索点信息为预设范围内不存在第二探索点,且预设范围外存在第二探索点,将目标点更新为第二探索点.
其中,第二探索点为除目标点以外的第一探索点。
在该实施例中,若检测到预设范围内存在第二探索点,也即预设范围内有还未进行数据采集的第一探索点也就是说,机器人未在同一区域的不同位置进行扫描;此时,可维持目标点不变,以使机器人继续按照设定的目标点行进,直至到达目标点,已完成该目标点的数据采集。
若检测到预设范围内不存在第二探索点,也即目标点周围没有未进行探索的点,说明机器人在位于其他探索点进行探索时,可能已经采集了目标点对应的建图数据;此时,已不需要运动到当前设定的目标点,机器人停止运动,查找下一个新的目标点,再控制机器人向新的目标点行进,换言之,根据预设范围外的第二探索点,也即待探索区域内其他未被探索的第一探索点来更新目标点,以及时变更机器人采集数据的目的地,使机器人能够向更新后的目标点行进。从而避免在同一区域内连续短距离运动,加快建图速度,实现了以较少的探索次数、更高的探索效率和更少的探索时间完成对未知场景的自主探索建图,提高了机器人完成建图的自主性和智能化。
可以理解的是,在确定预设范围内不存在第二探索点的情况下,也即当前设定的目标点周围已经被充分扫描,机器人无需在该点再次执行数据采集。此时,可近似的看作该目标点已经被探索,为了避免后续重复选点,可以先将更新前的目标点的状态变更为已探索状态,也即将更新前的目标点从第一探索点中剔除,之后再进行目标点的更新。
需要说明的是,在控制机器人向更新后的目标点行进的过程中,还可以重新检测与更新后的目标点相关的预设范围的探索点信息。若探索点信息仍旧指示了预设范围内不存在第二探索点,且预设范围外存在第二探索点,则继续更新目标点,直至数据采集完成。
在本公开提供的一些可以实现的实施例中,机器人的建图方法还包括:
步骤S310,基于探索点信息为待探索区域内不存在第二探索点,控制机器人停止行进;
步骤S312,存储环境空间地图。
在该实施例中,若检测到待探索区域内不存在第二探索点,也即预设范围内和预设范围外均不存在第二探索点,换言之,待探索区域内已不存在没有被探索的第一探索点。此时,确认建图已完成,直接控制机器人停止探索行进。同时,将最终的环境空间地图进行存储,以便于后续使用。从而防止了机器人在探索过程中的无谓工作,节省探索所需的时间,提升自主探索效率。
需要说明的是,预设范围内的区域和预设范围外的区域共同构成了待探索区域。
示例性的,当确定预设范围内不存在第二探索点时,可能出现以下三种情况:
(一)预设范围外也不存在第二探索点,也即未探索区域内已没有未被探索的第一探索点,换言之,环境空间地图完成自主探索,建图完成,此时,控制机器人停止探索,保存构建完成的环境空间地图,退出建图模式,并输出探索完成信息。
(二)预设范围外存在有且仅有一个第二探索点,则将唯一的第二探索点作为新的目标点控制机器人行进。机器人在该第二探索点完成建图数据采集后,可以确定已没有未探索的点,机器人可保存构建完成的环境空间地图,退出建图模式,并输出探索完成信息。
(三)预设范围外存在有多个第二探索点,此时,按照预设规则继续对多个第二探索点进行筛选,以便于选取最优的第二探索点来更新目标点,再按照更新后的目标点控制机器人行进。具体地,预设规则用于从多个第二探索点中选取一个第二探索点,可按照探索需求合理设置。例如,定义预设规则为选取距离机器人当前位置最近的第二探索点,以减少机器人行进所需的时间,或者定义预设规则为选取距离当前目标点最近的第二探索点,尽可能避免机器人在同一区域内连续短距离运动,或者定义预设规则为机器人与第二探索点之间障碍物等。本公开的实施例对预设规则不做具体限定。
在本公开提供的一些可以实现的实施例中,控制机器人向目标点行进的步骤之前,还包括:
步骤S402,获取环境空间地图;
其中,环境空间地图包括已知区域和/或待探索区域,已知区域对应有建图数据。环境空间地图可以通过控制终端与机器人之间的信息传输获得,亦可以由机器人自身创建或从机器人内置的存储器中调取。
进一步地,在通过控制终端与机器人之间的信息传输获得环境空间地图的情况下,若检测到环境空间地图全部为已知区域,则无需进行探索,同时向控制终端发送提示信息,以避免地图误传。
步骤S404,提取与已知区域重叠的待探索区域的多个边界点;
示例性的,基于边界探索算法(Froniter-Based),通过图像分割技术提取局部栅格地图中已知和未探索区域之间的边界点。
需要说明的是,边界点的定义为在地图中open(已知)和unknown(未知)交界处的坐标点,也即激光雷达未扫描到区域的边界。
进一步地,在机器人首次进行探索时,机器人所处环境空间即待探索区域,则以机器人当前位置为目标点进行第一次数据采集,以形成已知区域和待探索区域共存的环境空间地图,再利用边界算法继续进行待探索区域的建图。
步骤S406,将处于未探索状态的边界点确定为第一探索点。
在本实施例中,先提取需要探索的环境空间地图上所有与已知区域相邻的边界点,在通过状态识别,所有的边界点中筛选出未进行探索的边界点作为第一探索点。控制机器人 从最优的边界点(目标)对带探索区域进行探测,扩充栅格地图。不仅实现建图过程中的自动选点,不需要人工操作,节省人力,达到机器人自主建图的目的;而且选取目标点时,能够避免同一个坐标多次采集数据的情况,大大提高建图效率。
在本公开提供的一些可以实现的实施例中,机器人的建图方法还包括:
步骤S502,基于待探索区域内第一探索点的数量为多个,依次连接多个第一探索点,得到连接线;
步骤S504,确定每个第一探索点与连接线的中心点之间的第一距离;
步骤S506,将第一距离中最小值对应的第一探索点确定为目标点。
在本实施例中,若待探索区域内存在多个第一探索点,也即多个未被探索的边界点时,依次连接多个第一探索点以形成连接线,为了在扫描时可以覆盖更大面积,取得更好的建图效果,计算每个第一探索点与连接线的中心点之间的第一距离,第一距离中最小值对应的第一探索点即最接近中心点的第一探索点,并将该第一探索点作为目标点进行探索。
具体举例来说,选择目标点时,依次检查地图中所有的点,在找到符合条件(与已知区域相邻,且未探索)的第一探索点后,由于激光测距传感器是以直线打出,所有边界点形态上近似一条直线,尽可能选择多个第一探索点组成的线段中心作为目标点。如找不到目标点,则全部建图已经完成。在机器人往目标点运动时,定时检查目标点周围是否仍存在尚未检查的第一探索点,如已经不存在这样的点,则已不需要运动到当前目标点,停止运动,查找下一个目标点,并向新的目标点运动,直至已不存在有效目标点,该区域建图已经完成。如存在,则继续往当前目标点运动,完成当前目标点的数据采集后,继续查找下一个目标点。使得机器人运动较少位置即可完成区域的建图,同时减少了建图过程的整体运行时间。
在本公开提供的一些可能实现的实施例中,机器人的建图方法还包括:
步骤S602,在机器人向目标点行进的过程中,基于机器人的当前位置与目标点之间存在障碍物,控制机器人沿障碍物的外边缘行进,以绕过障碍物。
在本实施例中,在机器人行进过程中,若检测到机器人当前位置与目标点之间存在障碍物,则控制机器人沿障碍物的外边缘行进,以绕过障碍物,达到行进目标点,避免因障碍物使得机器人停止运行,增加了机器人工作的连续性,同时提高了机器人的运行效率。
进一步地,控制机器人沿障碍物的外边缘行进的步骤具体包括:在机器人当前位置与障碍物之间的第二距离小于距离阈值的情况下,控制机器人偏转预设角度,并向远离障碍物的方向前进;若前进后机器人的当前位置与障碍物之间的第三距离大于距离阈值,则控制机器人反向偏转预设角度,并向靠近第一障碍物的方向行进。其中,预设角度可以指机器人的在行进中调整行进方向的角度。
需要说明的是,针对不同检测方法,距离阈值的设置可以是不相同的。
如图4所示,本公开的第二方面的实施例,提供了一种机器人的建图装置700,可以包括:控制模块702、检测模块704、处理模块706和建图模块708。
其中,控制模块702,用于控制机器人向目标点行进,目标点为待探索区域的一个第一探索点,第一探索点为未探索状态;检测模块704,用于在机器人向目标点行进的过程中,检测目标点所处的预设范围内的探索点信息;处理模块706,用于按照探索点信息对目标点进行处理;建图模块708,用于基于机器人行进至目标点,采集待探索区域的建图数据,以更新机器人的环境空间地图。
作为一种示例,处理模块706,具体用于基于探索点信息为预设范围内存在第二探索点,保持目标点;基于探索点信息为预设范围内不存在第二探索点,且预设范围外存在第二探索点,将目标点更新为第二探索点;其中,第二探索点为除目标点以外的第一探索点。
作为一种示例,控制模块702,还用于基于探索点信息为待探索区域内不存在第二探索点,控制机器人停止行进;机器人的建图装置700还包括:存储模块(图中未示出),用于存储环境空间地图。
作为一种示例,机器人的建图装置700还包括:获取模块(图中未示出),用于获取环境空间地图,环境空间地图包括已知区域和/或待探索区域,已知区域对应有建图数据;提取模块(图中未示出),用于提取与已知区域重叠的待探索区域的多个边界点;第一确定模块(图中未示出),用于将处于未探索状态的边界点确定为第一探索点。
作为一种示例,机器人的建图装置700还包括:第二确定模块(图中未示出),用于基于待探索区域内第一探索点的数量为多个,依次连接多个第一探索点,得到连接线;确定每个第一探索点与连接线的中心点之间的第一距离;将第一距离中最小值对应的第一探索点确定为目标点。
作为一种示例,机器人的建图装置700还包括:状态更新模块(图中未示出),用于将目标点更新为已探索状态。
作为一种示例,控制模块702,还用于在机器人向目标点行进的过程中,基于机器人的当前位置与目标点之间存在障碍物,控制机器人沿障碍物的外边缘行进,以绕过障碍物。
本公开的第三个方面的实施例,提供了一种机器人,包括处理器和存储器,存储器存储有能够被处理器执行的计算机程序指令,处理器执行计算机程序指令时,实现任一实施例的机器人的建图方法步骤。
如图5所示,机器人可以包括处理装置801(例如中央处理器、图形处理器等),其可以根据存储在只读存储器(ROM802)中的程序或者从存储装置808加载到随机访问存储器(RAM803)中的程序而执行各种适当的动作和处理。在RAM803中,还存储有电子机器人操作所需的各种程序和数据。处理装置801、ROM802以及RAM803通过总线804彼此相连。输入/输出(I/O)接口也连接至总线804。
通常,以下装置可以连接至I/O接口805:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置806;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置807;包括例如硬盘等的存储装置808;以及通信装置809。通信装置809可以允许电子机器人与其他机器人进行无线或有线通信以交换数据。虽然图 1和图2示出了具有各种装置的电子机器人,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为机器人软件程序。例如,本公开的实施例包括一种机器人软件程序产品,其包括承载在可读介质上的计算机程序,该计算机程序包含用于执行流程图4所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置809从网络上被下载和安装,或者从存储装置808被安装,或者从ROM802被安装。在该计算机程序被处理装置801执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以但不限于:电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM803)、只读存储器(ROM802)、可擦式可编程只读存储器(EPROM802或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM802)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本公开的第四个方面的实施例,提供了一种存储介质,存储有计算机程序指令,计算机程序指令在被处理器调用和执行时实现如上述任一实施例的机器人的建图方法步骤。
在本公开中,存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是存储介质以外的任何可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述可读介质可以是上述机器人中所包含的;也可以是单独存在,而未装配入该机器人中。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言诸如Java、Small talk,C++,还包括常规的过程式程序设计语言诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。
在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,如包括局域网(LAN)或广域网(WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
最后应说明的是:以上实施例仅用以说明本公开的技术方案,而非对其限制:尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换:而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的精神和范围。

Claims (22)

  1. 一种机器人的建图方法,包括:
    控制所述机器人向目标点行进,所述目标点为待探索区域的一个第一探索点,所述第一探索点为未探索状态;
    在所述机器人向所述目标点行进的过程中,检测所述目标点所处的预设范围对应的探索点信息;
    按照所述探索点信息对所述目标点进行处理;
    基于所述机器人行进至所述目标点,采集所述待探索区域的建图数据,以更新所述机器人的环境空间地图。
  2. 根据权利要求1所述的机器人的建图方法,其中,所述按照所述探索点信息对所述目标点进行处理的步骤,具体包括:
    基于所述探索点信息为所述预设范围内存在第二探索点,保持所述目标点;
    基于所述探索点信息为所述预设范围内不存在第二探索点,且所述预设范围外存在所述第二探索点,将所述目标点更新为所述第二探索点;
    其中,所述第二探索点为除所述目标点以外的所述第一探索点。
  3. 根据权利要求2所述的机器人的建图方法,其中,所述方法还包括:
    基于所述待探索区域内不存在所述第二探索点,控制所述机器人停止行进;
    存储所述环境空间地图。
  4. 根据权利要求1所述的机器人的建图方法,其中,所述控制所述机器人向目标点行进的步骤之前,还包括:
    获取所述环境空间地图,所述环境空间地图包括已知区域和/或待探索区域,所述已知区域对应有建图数据;
    提取与所述已知区域重叠的所述待探索区域的多个边界点;
    将处于未探索状态的边界点确定为所述第一探索点。
  5. 根据权利要求1所述的机器人的建图方法,其中,所述方法还包括:
    基于所述待探索区域内所述第一探索点的数量为多个,依次连接多个所述第一探索点,得到连接线;
    确定每个所述第一探索点与所述连接线的中心点之间的第一距离;
    将所述第一距离中最小值对应的所述第一探索点确定为所述目标点。
  6. 根据权利要求1至5中任一项所述的机器人的建图方法,其中,所述采集所述待探索区域的建图数据的步骤之后,还包括:
    将所述目标点更新为已探索状态。
  7. 根据权利要求1至5中任一项所述的机器人的建图方法,其中,所述方法还包括:
    在所述机器人向所述目标点行进的过程中,基于所述机器人的当前位置与所述目标点之间存在障碍物,控制所述机器人沿所述障碍物的外边缘行进,以绕过所述障碍物。
  8. 一种机器人的建图装置,其中,包括:
    控制模块,用于控制所述机器人向目标点行进,所述目标点为待探索区域的一个第一探索点,所述第一探索点为未探索状态;
    检测模块,用于在所述机器人向所述目标点行进的过程中,检测所述目标点所处的预设范围对应的探索点信息;
    处理模块,用于按照所述探索点信息对所述目标点进行处理;
    建图模块,用于基于所述机器人行进至所述目标点,采集所述待探索区域的建图数据,以更新所述机器人的环境空间地图。
  9. 一种机器人,其中,包括处理器和存储器;
    所述存储器,用于存储操作指令;
    所述处理器,用于通过调用所述操作指令,执行以下操作:
    控制所述机器人向目标点行进,所述目标点为待探索区域的一个第一探索点,所述第一探索点为未探索状态;
    在所述机器人向所述目标点行进的过程中,检测所述目标点所处的预设范围对应的探索点信息;
    按照所述探索点信息对所述目标点进行处理;
    基于所述机器人行进至所述目标点,采集所述待探索区域的建图数据,以更新所述机器人的环境空间地图。
  10. 根据权利要求9所述的机器人,其中,所述处理器还用于通过调用所述操作指令,执行以下操作:
    基于所述探索点信息为所述预设范围内存在第二探索点,保持所述目标点;
    基于所述探索点信息为所述预设范围内不存在第二探索点,且所述预设范围外存在所述第二探索点,将所述目标点更新为所述第二探索点;
    其中,所述第二探索点为除所述目标点以外的所述第一探索点。
  11. 根据权利要求10所述的机器人,其中,所述处理器还用于通过调用所述操作指令,执行以下操作:
    基于所述待探索区域内不存在所述第二探索点,控制所述机器人停止行进;
    存储所述环境空间地图。
  12. 根据权利要求9所述的机器人,其中,所述处理器还用于通过调用所述操作指令,执行以下操作:
    获取所述环境空间地图,所述环境空间地图包括已知区域和/或待探索区域,所述已知区域对应有建图数据;
    提取与所述已知区域重叠的所述待探索区域的多个边界点;
    将处于未探索状态的边界点确定为所述第一探索点。
  13. 根据权利要求9所述的机器人,其中,所述处理器还用于通过调用所述操作指令, 执行以下操作:
    基于所述待探索区域内所述第一探索点的数量为多个,依次连接多个所述第一探索点,得到连接线;
    确定每个所述第一探索点与所述连接线的中心点之间的第一距离;
    将所述第一距离中最小值对应的所述第一探索点确定为所述目标点。
  14. 根据权利要求9至13中任一项所述的机器人,其中,所述处理器还用于通过调用所述操作指令,执行以下操作:
    将所述目标点更新为已探索状态。
  15. 根据权利要求9至13中任一项所述的机器人,其中,所述处理器还用于通过调用所述操作指令,执行以下操作:
    在所述机器人向所述目标点行进的过程中,基于所述机器人的当前位置与所述目标点之间存在障碍物,控制所述机器人沿所述障碍物的外边缘行进,以绕过所述障碍物。
  16. 一种存储介质,其中,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下操作:
    控制机器人向目标点行进,所述目标点为待探索区域的一个第一探索点,所述第一探索点为未探索状态;
    在所述机器人向所述目标点行进的过程中,检测所述目标点所处的预设范围对应的探索点信息;
    按照所述探索点信息对所述目标点进行处理;
    基于所述机器人行进至所述目标点,采集所述待探索区域的建图数据,以更新所述机器人的环境空间地图。
  17. 根据权利要求16所述的存储介质,其中,所述计算机程序被处理器执行时还实现以下操作:
    基于所述探索点信息为所述预设范围内存在第二探索点,保持所述目标点;
    基于所述探索点信息为所述预设范围内不存在第二探索点,且所述预设范围外存在所述第二探索点,将所述目标点更新为所述第二探索点;
    其中,所述第二探索点为除所述目标点以外的所述第一探索点。
  18. 根据权利要求17所述的存储介质,其中,所述计算机程序被处理器执行时还实现以下操作:
    基于所述待探索区域内不存在所述第二探索点,控制所述机器人停止行进;
    存储所述环境空间地图。
  19. 根据权利要求16所述的存储介质,其中,所述计算机程序被处理器执行时还实现以下操作:
    获取所述环境空间地图,所述环境空间地图包括已知区域和/或待探索区域,所述已知区域对应有建图数据;
    提取与所述已知区域重叠的所述待探索区域的多个边界点;
    将处于未探索状态的边界点确定为所述第一探索点。
  20. 根据权利要求16所述的存储介质,其中,所述计算机程序被处理器执行时还实现以下操作:
    基于所述待探索区域内所述第一探索点的数量为多个,依次连接多个所述第一探索点,得到连接线;
    确定每个所述第一探索点与所述连接线的中心点之间的第一距离;
    将所述第一距离中最小值对应的所述第一探索点确定为所述目标点。
  21. 根据权利要求16至20中任一项所述的存储介质,其中,所述计算机程序被处理器执行时还实现以下操作:
    将所述目标点更新为已探索状态。
  22. 根据权利要求16至20中任一项所述的存储介质,其中,所述计算机程序被处理器执行时还实现以下操作:
    在所述机器人向所述目标点行进的过程中,基于所述机器人的当前位置与所述目标点之间存在障碍物,控制所述机器人沿所述障碍物的外边缘行进,以绕过所述障碍物。
PCT/CN2022/105276 2022-01-04 2022-07-12 机器人的建图方法、装置、机器人和存储介质 WO2023130704A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210006545.8 2022-01-04
CN202210006545.8A CN114595354A (zh) 2022-01-04 2022-01-04 机器人的建图方法、装置、机器人和存储介质

Publications (1)

Publication Number Publication Date
WO2023130704A1 true WO2023130704A1 (zh) 2023-07-13

Family

ID=81814054

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/105276 WO2023130704A1 (zh) 2022-01-04 2022-07-12 机器人的建图方法、装置、机器人和存储介质

Country Status (2)

Country Link
CN (1) CN114595354A (zh)
WO (1) WO2023130704A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114595354A (zh) * 2022-01-04 2022-06-07 北京石头创新科技有限公司 机器人的建图方法、装置、机器人和存储介质
CN116449391B (zh) * 2023-04-17 2024-05-17 深圳直角设计工程有限公司 一种基于3d点云的室内全景成像方法与系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111309011A (zh) * 2019-11-11 2020-06-19 弗徕威智能机器人科技(上海)有限公司 一种自主探索目标的决策方法、系统、设备及存储介质
CN111638526A (zh) * 2020-05-20 2020-09-08 电子科技大学 一种陌生环境下机器人自主建图的方法
US20210131822A1 (en) * 2017-09-12 2021-05-06 RobArt GmbH Exploration of an unknown environment by an autonomous mobile robot
CN113050632A (zh) * 2021-03-11 2021-06-29 珠海市一微半导体有限公司 用于机器人探索未知区域的地图探索方法、芯片及机器人
CN114595354A (zh) * 2022-01-04 2022-06-07 北京石头创新科技有限公司 机器人的建图方法、装置、机器人和存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210131822A1 (en) * 2017-09-12 2021-05-06 RobArt GmbH Exploration of an unknown environment by an autonomous mobile robot
CN111309011A (zh) * 2019-11-11 2020-06-19 弗徕威智能机器人科技(上海)有限公司 一种自主探索目标的决策方法、系统、设备及存储介质
CN111638526A (zh) * 2020-05-20 2020-09-08 电子科技大学 一种陌生环境下机器人自主建图的方法
CN113050632A (zh) * 2021-03-11 2021-06-29 珠海市一微半导体有限公司 用于机器人探索未知区域的地图探索方法、芯片及机器人
CN114595354A (zh) * 2022-01-04 2022-06-07 北京石头创新科技有限公司 机器人的建图方法、装置、机器人和存储介质

Also Published As

Publication number Publication date
CN114595354A (zh) 2022-06-07

Similar Documents

Publication Publication Date Title
EP4140381A1 (en) Obstacle avoidance method and apparatus for self-walking robot, robot, and storage medium
WO2022041740A1 (zh) 一种障碍物探测方法、装置、自行走机器人和存储介质
WO2023130704A1 (zh) 机器人的建图方法、装置、机器人和存储介质
WO2021208530A1 (zh) 一种机器人避障方法、装置和存储介质
TWI789625B (zh) 一種清潔機器人及其控制方法
CN110136704B (zh) 机器人语音控制方法、装置、机器人和介质
TWI682258B (zh) 自主移動機器人及其尋樁方法、控制裝置以及智能清潔系統
TWI689801B (zh) 自主移動機器人及其尋樁方法、控制裝置以及智能清潔系統
CN114468898B (zh) 机器人语音控制方法、装置、机器人和介质
WO2022041737A1 (zh) 一种测距方法、装置、机器人和存储介质
CN114010102B (zh) 一种清洁机器人
TW202115516A (zh) 清掃機器人及其控制方法
WO2023103515A1 (zh) 自行走设备的控制方法、自行走设备和存储介质
WO2022077945A1 (zh) 障碍物识别信息反馈方法、装置、机器人和存储介质
CN113625700A (zh) 自行走机器人控制方法、装置、自行走机器人和存储介质
CN112022026A (zh) 自行走机器人及障碍物检测方法
CN114601373B (zh) 清洁机器人的控制方法、装置、清洁机器人和存储介质
CN115211763B (zh) 一种用于自动清洁设备的识别方法、设备及存储介质
CN220534229U (zh) 光伏发电场调度机器人
CN114610013A (zh) 自行走机器人的遇障处理方法、装置、机器人和存储介质
AU2023201499A1 (en) Method and apparatus for detecting obstacle, self-moving robot, and storage medium
WO2023249979A1 (en) Ground clutter avoidance for a mobile robot

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: 22918160

Country of ref document: EP

Kind code of ref document: A1