CN114545923A - Robot mapping method, electronic device and computer storage medium - Google Patents

Robot mapping method, electronic device and computer storage medium Download PDF

Info

Publication number
CN114545923A
CN114545923A CN202111630176.1A CN202111630176A CN114545923A CN 114545923 A CN114545923 A CN 114545923A CN 202111630176 A CN202111630176 A CN 202111630176A CN 114545923 A CN114545923 A CN 114545923A
Authority
CN
China
Prior art keywords
node
robot
grid
explored
skeleton
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111630176.1A
Other languages
Chinese (zh)
Other versions
CN114545923B (en
Inventor
林澍
唐剑
刘冬
李智强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Midea Group Co Ltd
Midea Group Shanghai Co Ltd
Original Assignee
Midea Group Co Ltd
Midea Group Shanghai Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Midea Group Co Ltd, Midea Group Shanghai Co Ltd filed Critical Midea Group Co Ltd
Priority to CN202111630176.1A priority Critical patent/CN114545923B/en
Publication of CN114545923A publication Critical patent/CN114545923A/en
Priority to PCT/CN2022/107503 priority patent/WO2023124035A1/en
Application granted granted Critical
Publication of CN114545923B publication Critical patent/CN114545923B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Abstract

The application discloses a robot mapping method, electronic equipment and a computer storage medium. The graph establishing method comprises the following steps: determining nodes in the skeleton based on the skeleton of a grid map, wherein the grid map is constructed based on an environment area where the robot is located, and the grid map comprises a boundary to be explored; determining a root node based on the position of the robot, and determining a node tree according to the root node and nodes in the skeleton; and controlling the robot to explore and build a graph according to the position relation between the leaf nodes in the node tree and the boundary to be explored. Through the mode, the robot can automatically build the image, the intelligent level is improved, and the safety is improved.

Description

机器人的建图方法、电子设备及计算机存储介质Robot mapping method, electronic device and computer storage medium

技术领域technical field

本申请涉及智能建图技术领域,特别是涉及一种机器人的建图方法、电子设备及计算机存储介质。The present application relates to the technical field of intelligent mapping, and in particular, to a mapping method for a robot, an electronic device and a computer storage medium.

背景技术Background technique

机器人在不同的未知环境下进行作业,涉及机器人定位建图与规划技术,首先要求机器人完成对环境地图的构建,从而进行后续导航等作业。Robots operate in different unknown environments, involving robot positioning, mapping and planning technology. First, the robot is required to complete the construction of the environment map, so as to perform subsequent navigation and other operations.

机器人建图技术是机器人通过传感器实现对外界环境的感知,并完成自身定位。传统的建图方式采用手动控制或者跟随的方式控制机器人移动完成建图,该方式需要人为控制,智能化水平有待提高。Robot mapping technology is that the robot realizes the perception of the external environment through sensors and completes its own positioning. The traditional mapping method uses manual control or follow-up to control the robot to move to complete the mapping. This method requires human control, and the level of intelligence needs to be improved.

发明内容SUMMARY OF THE INVENTION

本申请提供一种机器人的建图方法、电子设备及计算机存储介质,以实现机器人自动建图,提高智能化水平,且提高安全性。The present application provides a robot mapping method, electronic equipment and computer storage medium, so as to realize the robot automatic mapping, improve the intelligence level, and improve the safety.

为解决上述技术问题,本申请提出一种机器人的建图方法。该机器人的建图方法包括:基于栅格地图的骨架,确定骨架中的节点,其中,栅格地图是基于机器人所在的环境区域构建,且栅格地图中包括待探索边界;基于机器人的位置确定根节点,根据根节点及骨架中的节点确定节点树;根据节点树中的叶子节点与待探索边界的位置关系,控制机器人探索建图。In order to solve the above technical problems, the present application proposes a method for constructing a map of a robot. The robot's mapping method includes: determining the nodes in the skeleton based on the skeleton of the grid map, wherein the grid map is constructed based on the environmental area where the robot is located, and the grid map includes the boundary to be explored; determining the position based on the robot The root node determines the node tree according to the root node and the nodes in the skeleton; according to the positional relationship between the leaf nodes in the node tree and the boundary to be explored, the robot is controlled to explore and build a map.

其中,上述确定骨架中的节点,包括:将骨架中拐弯处对应的栅格、分支处对应的栅格和/或末端处对应的栅格确定为节点。Wherein, determining the nodes in the skeleton includes: determining the grids corresponding to the corners, the grids corresponding to the branches, and/or the grids corresponding to the ends in the skeleton as nodes.

其中,上述确定骨架中的节点,包括:遍历骨架上的栅格,根据栅格的邻域栅格与骨架的位置关系,判断栅格是否为节点。Wherein, determining the nodes in the skeleton includes: traversing the grid on the skeleton, and judging whether the grid is a node according to the positional relationship between the neighboring grid of the grid and the skeleton.

其中,上述根据栅格的邻域栅格与骨架的关系上,判断栅格是否为节点,包括:基于栅格的邻域栅格中仅一个在骨架上,判定栅格为叶子节点;基于栅格的邻域栅格中仅两个在骨架上,且两个邻域栅格和栅格不在一条直线上,判定栅格为拐弯节点;基于栅格的邻域栅格中至少三个在骨架上,判定栅格为分支节点。Wherein, determining whether the grid is a node or not is based on the relationship between the grid's neighborhood grid and the skeleton, including: only one of the grid-based neighborhood grids is on the skeleton, and determining that the grid is a leaf node; Only two of the neighborhood grids of the grid are on the skeleton, and the two neighborhood grids and the grid are not in a straight line, and the grid is determined to be a turning node; at least three of the grid-based neighborhood grids are on the skeleton. above, determine that the grid is a branch node.

其中,上述栅格地图包括待探索栅格;上述确定节点树中叶子节点与待探索边界的位置关系,包括:基于叶子节点所在栅格的邻域栅格中至少三个为待探索栅格,判定叶子节点与待探索边界的位置关系为叶子节点处于待探索边界。Wherein, the above-mentioned grid map includes grids to be explored; the above-mentioned determining the positional relationship between leaf nodes in the node tree and the boundary to be explored includes: based on at least three of the neighborhood grids of the grid where the leaf nodes are located are grids to be explored, It is determined that the positional relationship between the leaf node and the boundary to be explored is that the leaf node is in the boundary to be explored.

其中,上述根据节点树中叶子节点与待探索边界的位置关系,控制移动机器人探索建图,包括:以处于待探索边界的叶子节点的父节点作为待探索节点;控制机器人移动到待探索节点进行探索建图。Wherein, according to the positional relationship between the leaf nodes in the node tree and the boundary to be explored, controlling the mobile robot to explore and build a map includes: taking the parent node of the leaf node in the boundary to be explored as the node to be explored; controlling the robot to move to the node to be explored for Explore Mapping.

其中,上述建图方法还包括:以机器人所在的位置为当前节点,判断当前节点的叶子节点是否存在待探索节点;若存在,则控制机器人移动至待探索节点;若不存在,则控制机器人移动至当前节点的父节点。Wherein, the above-mentioned mapping method further includes: taking the position of the robot as the current node, judging whether the leaf node of the current node has a node to be explored; if so, controlling the robot to move to the node to be explored; if not, controlling the robot to move to the parent node of the current node.

其中,上述建图方法还包括:计算待探索边界的长度,包括:由位于待探索边界的叶子节点开始,沿着骨架移动,以确定待探索边界的长度;若长度大于阈值,则执行基于处于待探索边界的叶子节点,移动机器人,以进行探索建图的步骤。Wherein, the above-mentioned mapping method further includes: calculating the length of the boundary to be explored, including: starting from the leaf node located at the boundary to be explored, and moving along the skeleton to determine the length of the boundary to be explored; For the leaf nodes of the boundary to be explored, move the robot to perform the steps of exploring and mapping.

为解决上述技术问题,本申请提出一种电子设备。该电子设备包括:包括相互耦接的存储器和处理器,处理器用于执行存储器中存储的程序数据,以实现上述机器人的建图方法。In order to solve the above technical problems, the present application proposes an electronic device. The electronic device includes a memory and a processor coupled to each other, and the processor is used for executing program data stored in the memory, so as to implement the above-mentioned method for constructing a robot.

为解决上述技术问题,本申请提出一种计算机存储介质。该计算机存储介质上存储有程序数据,程序数据能够被执行以实现上述机器人的建图方法。In order to solve the above technical problems, the present application proposes a computer storage medium. Program data is stored on the computer storage medium, and the program data can be executed to realize the above-mentioned method for constructing a robot.

本申请机器人的建图方法先基于栅格地图的骨架,确定骨架中的节点,且该栅格地图包括待探索边界,因此该骨架延伸至了待探索边界,即骨架包括了待探索边界的骨架;进一步,本申请建立骨架中节点的节点树,并基于节点树中叶子节点与待搜索边界的位置关系,控制移动机器人探索建图;通过这种方式,不仅能够实现机器人自动建图,提高建图的智能化水平;而且本申请基于栅格地图的骨架计算探索点,使得探索点能够远离障碍物,能够提高安全性。The mapping method of the robot of the present application first determines the nodes in the skeleton based on the skeleton of the grid map, and the grid map includes the boundary to be explored, so the skeleton extends to the boundary to be explored, that is, the skeleton includes the skeleton of the boundary to be explored Further, the application establishes the node tree of the nodes in the skeleton, and based on the positional relationship between the leaf nodes in the node tree and the boundary to be searched, controls the mobile robot to explore and build a map; in this way, not only can the robot automatically build a map, improve the construction The intelligent level of the map; and the application calculates the exploration point based on the skeleton of the grid map, so that the exploration point can be far away from the obstacle, and the safety can be improved.

附图说明Description of drawings

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,其中:In order to illustrate the technical solutions in the embodiments of the present application more clearly, the following briefly introduces the drawings that are used in the description of the embodiments. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, under the premise of no creative work, other drawings can also be obtained from these drawings, wherein:

图1是本申请机器人的建图方法一实施例的流程示意图;Fig. 1 is a schematic flowchart of an embodiment of a method for constructing a robot of the present application;

图2是图1实施例构建的栅格地图的结构示意图;Fig. 2 is the structural representation of the grid map constructed by the embodiment of Fig. 1;

图3是图2实施例栅格地图及其骨架的结构示意图;Fig. 3 is the structural representation of the grid map of the embodiment of Fig. 2 and its skeleton;

图4是图3实施例部分结构的结构示意图;Fig. 4 is the structural representation of the partial structure of the embodiment of Fig. 3;

图5是图3实施例部分结构的结构示意图;Fig. 5 is the structural representation of the partial structure of the embodiment of Fig. 3;

图6是图3实施例部分结构的结构示意图;Fig. 6 is the structural representation of the partial structure of the embodiment of Fig. 3;

图7是图1实施例中步骤S15的一具体流程示意图;Fig. 7 is a specific flow chart of step S15 in the embodiment of Fig. 1;

图8是图1实施例中步骤S12的一具体流程示意图;Fig. 8 is a specific flow chart of step S12 in the embodiment of Fig. 1;

图9是本申请机器人的建图方法一实施例的流程示意图;9 is a schematic flowchart of an embodiment of a mapping method for a robot of the present application;

图10是本申请建图装置一实施例的结构示意图;10 is a schematic structural diagram of an embodiment of the mapping device of the present application;

图11是本申请电子设备一实施例的结构示意图;11 is a schematic structural diagram of an embodiment of an electronic device of the present application;

图12是本申请计算机存储介质一实施例的结构示意图。FIG. 12 is a schematic structural diagram of an embodiment of a computer storage medium of the present application.

具体实施方式Detailed ways

下面结合附图和实施例,对本申请作进一步的详细描述。特别指出的是,以下实施例仅用于说明本申请,但不对本申请的范围进行限定。同样的,以下实施例仅为本申请的部分实施例而非全部实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。The present application will be further described in detail below with reference to the accompanying drawings and embodiments. It is particularly pointed out that the following examples are only used to illustrate the present application, but do not limit the scope of the present application. Likewise, the following embodiments are only some of the embodiments of the present application but not all of the embodiments, and all other embodiments obtained by those of ordinary skill in the art without creative work fall within the protection scope of the present application.

在本申请实施例的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请实施例中的具体含义。In the description of the embodiments of the present application, it should be noted that, unless otherwise expressly specified and limited, the terms "connected" and "connected" should be understood in a broad sense, for example, it may be a fixed connection or a detachable connection, Or integral connection; it can be mechanical connection or electrical connection; it can be directly connected or indirectly connected through an intermediate medium. Those of ordinary skill in the art can understand the specific meanings of the above terms in the embodiments of the present application in specific situations.

在本申请实施例中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。In the embodiments of the present application, unless otherwise expressly specified and limited, the first feature "on" or "under" the second feature may be in direct contact with the first and second features, or the first and second features pass through the middle indirect contact with the media. Also, the first feature being "above", "over" and "above" the second feature may mean that the first feature is directly above or obliquely above the second feature, or simply means that the first feature is level higher than the second feature. The first feature being "below", "below" and "below" the second feature may mean that the first feature is directly below or obliquely below the second feature, or simply means that the first feature has a lower level than the second feature.

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。In the description of this specification, description with reference to the terms "one embodiment," "some embodiments," "example," "specific example," or "some examples", etc., mean specific features described in connection with the embodiment or example , structures, materials, or features are included in at least one example or example of the embodiments of the present application. In this specification, schematic representations of the above terms are not necessarily directed to the same embodiment or example. Furthermore, the particular features, structures, materials or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, those skilled in the art may combine and combine the different embodiments or examples described in this specification, as well as the features of the different embodiments or examples, without conflicting each other.

下面结合实施例对本申请提供的机器人及其建图方法、计算机存储介质进行详细描述。The robot, its mapping method, and the computer storage medium provided by the present application will be described in detail below with reference to the embodiments.

本申请首先提出一种机器人的建图方法,如图1所示,图1是本申请机器人的建图方法一实施例的流程示意图。本实施例的建图方法具体包括以下步骤:The present application first proposes a method for constructing a map of a robot, as shown in FIG. 1 , which is a schematic flowchart of an embodiment of the method for constructing a robot in the present application. The mapping method of this embodiment specifically includes the following steps:

步骤S11:基于栅格地图的骨架,确定骨架中的节点,其中,栅格地图是基于机器人所在的环境区域构建,且栅格地图中包括待探索边界。Step S11: Determine the nodes in the skeleton based on the skeleton of the grid map, wherein the grid map is constructed based on the environment area where the robot is located, and the grid map includes boundaries to be explored.

机器人设置有能够探测空间障碍物的探测装置及用于移动的移动装置。机器人内还设置有处理器,能够收发指令及处理数据信息。The robot is provided with a detection device capable of detecting space obstacles and a moving device for movement. The robot is also equipped with a processor, which can send and receive instructions and process data information.

本实施例中,机器人可以通过即时定位与地图(Simultaneous Localization AndMapping,SLAM)构建环境区域的栅格地图,该栅格地图包括待探索边界。机器人基于该栅格地图的信息移动到待探索边界,以对待探索边界进行探索建图,扩展构建的栅格地图。In this embodiment, the robot may construct a grid map of the environment area through Simultaneous Localization And Mapping (SLAM), where the grid map includes the boundary to be explored. Based on the information of the grid map, the robot moves to the boundary to be explored to explore and map the boundary to be explored, and expand the constructed grid map.

SLAM构建地图指的是机器人在自身位置不确定的条件下,在完全未知环境中创建地图,同时利用地图进行自主定位和导航。SLAM问题可以描述为:机器人在未知环境中从一个未知位置开始移动,在移动过程中根据位置估计和传感器数据进行自身定位,同时建造增量式地图。SLAM to build a map refers to that the robot creates a map in a completely unknown environment under the condition that its own position is uncertain, and uses the map for autonomous positioning and navigation at the same time. The SLAM problem can be described as: the robot starts moving from an unknown location in an unknown environment, localizes itself according to the position estimate and sensor data during the movement, and builds an incremental map at the same time.

在机器人构建地图时,机器人需要知道自己在环境中的位置及记录环境中特征的位置,机器人在定位的同时建立环境地图。When a robot builds a map, the robot needs to know its position in the environment and record the position of the features in the environment. The robot builds an environment map while positioning.

栅格地图由一个个栅格构成,每一栅格能够表征其所在位置周围环境的状态,该状态包括三种状态:表征存在障碍物的占有状态、表征无障碍物且机器人能够自由通过的空闲状态及机器人还未探测到的未知状态(栅格存在障碍物与否未知)。机器人能够根据栅格地图规划前进路线,且在机器人前进的过程中,不断检测并更新该栅格地图。The grid map is composed of grids, each grid can represent the state of the surrounding environment at its location, which includes three states: the occupancy state representing the presence of obstacles, and the idle state where there are no obstacles and the robot can pass freely. Status and unknown status that the robot has not yet detected (whether there is an obstacle in the grid is unknown). The robot can plan the forward route according to the grid map, and the grid map is continuously detected and updated during the progress of the robot.

机器人可以根据环境分辨率、环境信息存储量及决策速度等参数确定栅格的大小。如环境分辨率较大,环境信息存储量大,决策速度慢,可选小的栅格;又如环境分辨率较小,环境信息存储量小,决策速度快,可以选大的栅格,但在密集障碍物环境中发现路径的能力较弱。The robot can determine the size of the grid according to parameters such as environmental resolution, environmental information storage capacity, and decision-making speed. For example, if the environmental resolution is large, the storage capacity of environmental information is large, and the decision-making speed is slow, a small grid can be selected; if the environmental resolution is small, the storage capacity of environmental information is small, and the decision-making speed is fast, a large grid can be selected, but The ability to find paths in dense obstacle environments is weak.

当然,在其它实施例中,机器人还可以采用其它技术构建环境区域的栅格地图。Of course, in other embodiments, the robot may also use other technologies to construct a grid map of the environment area.

在一应用场景中,本实施例构建的栅格地图如图2所示。其中,虚线矩形框内的区域为机器人的环境区域;实线线条为障碍物区域(对应栅格的状态为占有);实线线条围成的区域为空闲区域(对应栅格的状态为空闲);虚线矩形框内除障碍物区域及空闲区域之外的区域为未知区域(对应栅格的状态为未知);在空闲区域与未知区域之间的交界处为待探索的边界(部分已被虚线矩形框内的虚线记)。In an application scenario, the grid map constructed in this embodiment is shown in FIG. 2 . Among them, the area within the dotted rectangle is the environment area of the robot; the solid line is the obstacle area (the state corresponding to the grid is occupied); the area enclosed by the solid line is the free area (the state corresponding to the grid is free) ; The area other than the obstacle area and the free area in the dashed rectangular frame is the unknown area (the state of the corresponding grid is unknown); the boundary between the free area and the unknown area is the boundary to be explored (part of it has been dashed dotted line inside the rectangle).

机器人利用骨架提取方法对栅格地图进行骨架提取,可以得到栅格地图中空闲区域的中心位置,可以保证骨架位于两侧障碍物的中间位置,即骨架上的栅格处于远离障碍物的最佳位置。The robot uses the skeleton extraction method to extract the skeleton of the grid map, and can obtain the center position of the free area in the grid map, which can ensure that the skeleton is located in the middle of the obstacles on both sides, that is, the grid on the skeleton is in the best position away from the obstacles. Location.

当然,在其它实施例中,为了缩短栅格地图的骨架的长度,空闲区域内的骨架也可以不位于其中心区域,只要保证机器人在沿着骨架运动时,不触碰到两个障碍物即可。Of course, in other embodiments, in order to shorten the length of the skeleton of the grid map, the skeleton in the free area may not be located in the central area, as long as the robot moves along the skeleton without touching two obstacles, namely Can.

具体地,机器人可以先将机器人的初始位置、障碍物区域和待探索边界投影到栅格地图中,确定栅格地图中机器人的可通行区域,然后采用Zhang-Suen算法等对可通行区域进行骨架提取。Specifically, the robot can first project the initial position of the robot, the obstacle area and the boundary to be explored into the grid map, determine the passable area of the robot in the grid map, and then use the Zhang-Suen algorithm to skeletonize the passable area. extract.

提取的图2所示的栅格地图的骨架如图3中加粗黑线线条所示。The skeleton of the extracted raster map shown in Figure 2 is shown in Figure 3 with the bold black line.

进一步地,本实施例可以将骨架中拐弯处对应的栅格、分支处对应的栅格和/或末端处对应的栅格确定为骨架的节点,因为骨架中拐弯处、分支处及末端处能够体现机器人运动方向的改变。Further, in this embodiment, a grid corresponding to a corner, a grid corresponding to a branch, and/or a grid corresponding to an end of the skeleton can be determined as a node of the skeleton, because the corners, branches, and ends of the skeleton can be It reflects the change of the robot's motion direction.

可选地,机器人可以遍历骨架上的栅格,根据栅格的邻域栅格与骨架的位置关系,如邻域栅格是否在骨架上,以判断栅格是否为节点。Optionally, the robot can traverse the grid on the skeleton, and judge whether the grid is a node according to the positional relationship between the neighboring grid of the grid and the skeleton, such as whether the neighborhood grid is on the skeleton.

机器人以其初始位置(启动位置)作为根节点,对骨架上的每一个栅格进行遍历,并判断每一个栅格点是否为节点(包括叶子节点、拐弯节点及分支节点)。The robot takes its initial position (starting position) as the root node, traverses each grid on the skeleton, and determines whether each grid point is a node (including leaf nodes, turning nodes and branch nodes).

在一些实施例中,邻域栅格包括八邻域栅格。In some embodiments, the neighborhood grid includes an eight-neighborhood grid.

具体地,本实施例可以下述方法实现步骤S11:Specifically, in this embodiment, step S11 can be implemented by the following method:

(1)基于栅格的邻域栅格中仅一个在骨架上,判定栅格为叶子节点。(1) Only one of the grid-based neighborhood grids is on the skeleton, and the grid is determined as a leaf node.

若栅格的邻域栅格中仅一个在骨架上,则认为该栅格为位于骨架的末端的节点,确定该栅格为骨架的叶子节点。If only one of the neighboring grids of the grid is on the skeleton, the grid is considered as the node located at the end of the skeleton, and the grid is determined as the leaf node of the skeleton.

例如,如图4所示,若栅格A1的八邻域栅格中有且仅有一个邻域栅格C1在骨架B上,而其他邻域栅格不在骨架B上,则确定栅格A1为骨架的叶子节点。For example, as shown in Figure 4, if there is one and only one neighbor grid C1 on the skeleton B, and the other neighbor grids are not on the skeleton B, then the grid A1 is determined. It is the leaf node of the skeleton.

(2)基于栅格的邻域栅格中仅两个在骨架上,且两个邻域栅格和栅格不在一条直线上,判定栅格为拐弯节点。(2) Only two of the grid-based neighborhood grids are on the skeleton, and the two neighborhood grids and the grid are not in a straight line, and the grid is determined to be a turning node.

若栅格的邻域栅格中有两个在骨架上,则认为该栅格在骨架的中间位置,进一步判断该两个邻域栅格和该栅格是否在一条直线上;若是,则确定该栅格不是骨架的节点;若否,则确定该栅格为骨架的拐弯节点,该拐弯节点位于骨架的拐弯处。If two neighboring grids of the grid are on the skeleton, the grid is considered to be in the middle of the skeleton, and it is further judged whether the two neighboring grids and the grid are on a straight line; if so, determine The grid is not a node of the skeleton; if not, it is determined that the grid is the turning node of the skeleton, and the turning node is located at the turning of the skeleton.

例如,如图5所示,若栅格A2的八邻域栅格中有且仅有两个邻域栅格C2、C3在骨架B上,且邻域栅格C2、C3与栅格A2不位于一条直线上,则确定栅格A2为骨架B的拐弯节点。For example, as shown in Figure 5, if there are only two neighboring grids C2 and C3 in the eight-neighbor grid of grid A2, and the neighboring grids C2 and C3 are not on the skeleton B, and the neighboring grids C2 and C3 are different from grid A2 If it is located on a straight line, the grid A2 is determined as the turning node of the skeleton B.

(3)基于栅格的邻域栅格中至少三个在骨架上,判定栅格为分支节点。(3) Based on at least three of the grid's neighborhood grids on the skeleton, determine that the grid is a branch node.

若栅格的邻域栅格中至少三个在骨架上,则认为该栅格在骨架的中间位置,且确定该栅格为骨架分支处的分支节点。If at least three of the neighboring grids of the grid are on the skeleton, the grid is considered to be in the middle of the skeleton, and the grid is determined as the branch node at the branch of the skeleton.

例如,如图6所示,若栅格A3的八邻域栅格中有三个邻域栅格C4、C5、C6在骨架B上,则确定栅格A3为骨架B分支处的分支节点。For example, as shown in FIG. 6 , if there are three neighboring grids C4 , C5 , and C6 on the skeleton B in the eight neighborhood grids of the grid A3 , then the grid A3 is determined as the branch node at the branch of the skeleton B.

通过上述方法能够确定栅格地图的骨架中的节点。The nodes in the skeleton of the grid map can be determined by the above method.

步骤S12:基于机器人的位置确定根节点,根据根节点及骨架中的节点确定节点树。Step S12: Determine the root node based on the position of the robot, and determine the node tree according to the root node and the nodes in the skeleton.

机器人的位置可以是机器人初始位置,也可以是机器人的当前位置(机器人一直在运动)。The position of the robot can be the initial position of the robot or the current position of the robot (the robot is always moving).

以机器人的位置为根节点,通过树结构存储步骤S12获得的骨架的节点,形成节点树。Taking the position of the robot as the root node, the nodes of the skeleton obtained in step S12 are stored in a tree structure to form a node tree.

具体地,从根节点出发,沿位于骨架上的栅格移动至根节点的下一级节点,然后移动至下一级节点的再下一级节点,直至最后一级节点,即叶子节点;其中,下一级节点与上一级节点为父子关系,即下一级节点是其上一级节点的子节点,上一级节点是其下一级节点的父节点。Specifically, starting from the root node, move along the grid on the skeleton to the next-level node of the root node, and then move to the next-level node of the next-level node, until the last-level node, that is, the leaf node; wherein , the next-level node and the previous-level node have a parent-child relationship, that is, the next-level node is the child node of its previous-level node, and the previous-level node is the parent node of its next-level node.

在上述移动过程可以获取子节点与其父节点之前的距离。基于上述节点之前的层级关系及距离建立节点树。In the above moving process, the distance between the child node and its parent node can be obtained. A node tree is established based on the hierarchical relationship and distance before the above nodes.

基于上述节点树,对叶子节点进行标记,可以得到节点树的一系列叶子节点;该节点树除了包括根节点,还包括位于根节点与叶子节点之间的各级节点,节点树可以体现各个节点之间的父子关系。Based on the above node tree, by marking the leaf nodes, a series of leaf nodes of the node tree can be obtained; the node tree not only includes the root node, but also includes nodes at all levels between the root node and the leaf nodes, and the node tree can reflect each node parent-child relationship.

步骤S13:根据节点树中的叶子节点与待探索边界的位置关系,控制机器人探索建图。Step S13: Control the robot to explore and build a map according to the positional relationship between the leaf nodes in the node tree and the boundary to be explored.

栅格地图进一步包括待探索的栅格,即栅格状态为未知的栅格,包括待探索边界对应的栅格及未知区域对应的栅格。The grid map further includes grids to be explored, that is, grids whose grid status is unknown, including grids corresponding to boundaries to be explored and grids corresponding to unknown areas.

可选地,本实施例中,若叶子节点所在栅格的邻域栅格中至少三个为待探索栅格,判定叶子节点与待探索边界的位置关系为叶子节点处于待探索边界。Optionally, in this embodiment, if at least three neighboring grids of the grid where the leaf node is located are grids to be explored, it is determined that the positional relationship between the leaf node and the boundary to be explored is that the leaf node is on the boundary to be explored.

机器人遍历各个叶子节点,针对每个叶子节点所在栅格,获取其八邻域栅格的状态,并进行统计;若叶子节点所在栅格的八邻域栅格中至少三个栅格的状态为未知,即叶子节点所在栅格的邻域栅格中至少三个为待探索栅格,则确定该叶子节点处于待探索边界。The robot traverses each leaf node, obtains the state of its eight-neighborhood grid for the grid where each leaf node is located, and makes statistics; if the state of at least three grids in the eight-neighborhood grid of the grid where the leaf node is located is If it is unknown, that is, at least three of the neighboring grids of the grid where the leaf node is located are grids to be explored, then it is determined that the leaf node is at the boundary to be explored.

机器人按照上述方法遍历节点树中的各个叶子节点后,获得一系列处于待探索边界的叶子节点。After traversing each leaf node in the node tree according to the above method, the robot obtains a series of leaf nodes in the boundary to be explored.

本实施例机器人的建图方法先基于栅格地图的骨架,确定骨架中的节点,且该栅格地图包括待探索边界,因此该骨架延伸至了待探索边界,即骨架包括了待探索边界的骨架;进一步,本实施例建立骨架中节点的节点树,并基于节点树中叶子节点与待搜索边界的位置关系,控制移动机器人探索建图;通过这种方式,不仅能够实现机器人自动建图,提高建图的智能化水平;而且本申请基于栅格地图的骨架计算探索点,使得探索点能够远离障碍物,能够提高安全性;同时按照一定的顺序性对待探索点进行排列,保证了待探索点的探索有序性。The mapping method of the robot in this embodiment first determines the nodes in the skeleton based on the skeleton of the grid map, and the grid map includes the boundary to be explored, so the skeleton extends to the boundary to be explored, that is, the skeleton includes the boundary to be explored. skeleton; further, in this embodiment, a node tree of nodes in the skeleton is established, and based on the positional relationship between the leaf nodes in the node tree and the boundary to be searched, the mobile robot is controlled to explore and build a map; in this way, not only can the robot automatically build a map, but also The intelligent level of mapping is improved; and the application is based on the skeleton of the grid map to calculate the exploration points, so that the exploration points can be far away from obstacles, and the safety can be improved; at the same time, the exploration points are arranged in a certain order to ensure that the exploration points are to be explored. Exploratory ordering of points.

可选地,本实施例可以通过如图7所示的方法实现步骤S13。本实施例的方法包括步骤S71及步骤S72。Optionally, in this embodiment, step S13 may be implemented by the method shown in FIG. 7 . The method of this embodiment includes step S71 and step S72.

步骤S71:以处于待探索边界的叶子节点的父节点作为待探索节点。Step S71: Take the parent node of the leaf node at the boundary to be explored as the node to be explored.

步骤S72:控制机器人移动到待探索节点进行探索建图。Step S72: Control the robot to move to the node to be explored to explore and build a map.

因整个待探索边界可能为较长的直线,其两端才会出现叶子节点,因此机器人获取待探索边界的叶子节点的父节点作为待探索节点,能够探索整个待探索边界,提高建图精度及效率。Since the entire boundary to be explored may be a long straight line, leaf nodes will appear at both ends of the boundary. Therefore, the robot obtains the parent node of the leaf node of the boundary to be explored as the node to be explored, and can explore the entire boundary to be explored, improving mapping accuracy and performance. efficiency.

在另一实施例中,可以通过如图8所示的方法实现步骤S13。本实施例的方法包括步骤S81至步骤S85。In another embodiment, step S13 may be implemented by the method shown in FIG. 8 . The method of this embodiment includes steps S81 to S85.

步骤S81:以处于待探索边界的叶子节点的父节点作为待探索节点。Step S81: Take the parent node of the leaf node at the boundary to be explored as the node to be explored.

步骤S82:以机器人所在的位置为当前节点,判断当前节点的叶子节点是否存在待探索节点。Step S82: Taking the position where the robot is located as the current node, determine whether there is a node to be explored in the leaf node of the current node.

在一些应用场景中,机器人所在位置可能不位于骨架的节点上,可以选择与机器人所在位置最近的节点为机器人的当前节点。In some application scenarios, the position of the robot may not be located on the node of the skeleton, and the node closest to the position of the robot can be selected as the current node of the robot.

步骤S83:若存在,则控制机器人移动至待探索节点。Step S83: If there is, control the robot to move to the node to be explored.

若机器人的当前节点的叶子节点存在待探索节点,则控制机器人优先对当前节点的待探索节点进行探索建图,能够缩短机器人的运动路径,提高建图的效率。If there are nodes to be explored in the leaf nodes of the current node of the robot, the robot is controlled to preferentially explore the nodes to be explored at the current node, which can shorten the movement path of the robot and improve the efficiency of mapping.

步骤S84:若不存在,则控制机器人移动至当前节点的父节点。Step S84: If it does not exist, control the robot to move to the parent node of the current node.

若机器人的当前节点的叶子节点不存在处于待探索边界的叶子节点,则认为机器人为了对未知区域进行建图,是不会沿当前节点运动到其叶子节点的;此时,可以回溯到当前节点的父节点后进行待探索节点的探索优先级的排序。If the leaf node of the current node of the robot does not have a leaf node at the boundary to be explored, it is considered that the robot will not move to its leaf node along the current node in order to map the unknown area; at this time, it can be traced back to the current node. After the parent node of , the exploration priority of the nodes to be explored is sorted.

最终得到优先性最高的待探索节点作为下一探索点位置,控制机器人到达指定位置。即可以保证机器人优先朝当前方向进行探索。Finally, the node to be explored with the highest priority is obtained as the next exploration point position, and the robot is controlled to reach the specified position. That is, it can be ensured that the robot will preferentially explore in the current direction.

步骤S85:控制机器人在指定位置进行探索建图。Step S85: Control the robot to explore and build a map at the designated position.

本实施例控制机器人优先对当前节点的待探索节点进行探索建图,能够缩短机器人的运动路径,提高建图的效率。In this embodiment, the robot is controlled to preferentially perform exploration and mapping on the nodes to be explored at the current node, which can shorten the movement path of the robot and improve the efficiency of mapping.

本申请进一步提出另一实施例的机器人的建图方法,如图9所示,图9是本申请机器人的建图方法一实施例的流程示意图。本实施例的建图方法具体包括以下步骤:The present application further proposes a method for building a map of a robot according to another embodiment, as shown in FIG. 9 . FIG. 9 is a schematic flowchart of an embodiment of the method for building a map for a robot according to the present application. The mapping method of this embodiment specifically includes the following steps:

步骤S91:基于栅格地图的骨架,确定骨架中的节点,其中,栅格地图是基于机器人所在的环境区域构建,且栅格地图中包括待探索边界。Step S91: Determine the nodes in the skeleton based on the skeleton of the grid map, wherein the grid map is constructed based on the environment area where the robot is located, and the grid map includes boundaries to be explored.

步骤91与上述步骤S11类似,这里不赘述。Step 91 is similar to the above-mentioned step S11 and will not be repeated here.

步骤S92:基于机器人的位置确定根节点,根据根节点及骨架中的节点确定节点树。Step S92: Determine the root node based on the position of the robot, and determine the node tree according to the root node and the nodes in the skeleton.

步骤S92与上述步骤S12类似,这里不赘述。Step S92 is similar to the above-mentioned step S12, and is not repeated here.

步骤S93:根据节点树中的叶子节点与待探索边界的位置关系。Step S93: According to the positional relationship between the leaf node in the node tree and the boundary to be explored.

步骤S93与上述步骤S13类似,这里不赘述。Step S93 is similar to the above-mentioned step S13, and is not repeated here.

步骤S94:计算待探索边界的长度。Step S94: Calculate the length of the boundary to be explored.

可选地,本实施例由位于待探索边界的叶子节点开始,沿着骨架移动,以确定待探索边界的长度。Optionally, this embodiment starts from a leaf node located at the boundary to be explored and moves along the skeleton to determine the length of the boundary to be explored.

具体地,从由位于待探索边界的叶子节点出发沿着骨架上的节点寻找处于待探索边界的节点,构成待探索边界;当待探索边界的长度(可以在构建节点树时计算骨架相邻节点之间的距离)大于一定阈值时,说明未探索区域大,需要进行探索,此时将该叶子节点的父节点加入到待探索节点的集合中。Specifically, starting from the leaf nodes located on the boundary to be explored, along the nodes on the skeleton to find the node at the boundary to be explored, the boundary to be explored is formed; when the length of the boundary to be explored (the adjacent nodes of the skeleton can be calculated when constructing the node tree When the distance between them) is greater than a certain threshold, it means that the unexplored area is large and needs to be explored. At this time, the parent node of the leaf node is added to the set of nodes to be explored.

步骤S95:若长度大于阈值,则控制机器人探索建图。Step S95: If the length is greater than the threshold, control the robot to explore and build a map.

步骤S95与上述步骤S13类似,这里不赘述。Step S95 is similar to the above-mentioned step S13, and is not repeated here.

若长度小于或者等于阈值,说明未探索区域较小,不需要进行探索,舍弃该叶子节点。If the length is less than or equal to the threshold, it means that the unexplored area is small and no exploration is required, and the leaf node is discarded.

在一个实施例中,如图10所示,提供了一种建图装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:骨架节点提取模块111、节点树确定模块112及探索建图模块113,节点树确定模块112分别与骨架节点提取模块111及探索建图模块113连接;其中:骨架节点提取模块111用于基于栅格地图的骨架,确定骨架中的节点,栅格地图是基于机器人所在的环境区域构建,且栅格地图中包括待探索边界;节点树确定模块112用于基于机器人的位置确定根节点,根据根节点及骨架中的节点确定节点树;探索建图模块113用于根据节点树中的叶子节点与待探索边界的位置关系,控制机器人探索建图。In one embodiment, as shown in FIG. 10 , a mapping apparatus is provided, and the apparatus can use software modules or hardware modules, or a combination of the two to become a part of computer equipment, the apparatus specifically includes: skeleton node extraction The module 111, the node tree determination module 112 and the exploration mapping module 113, the node tree determination module 112 is respectively connected with the skeleton node extraction module 111 and the exploration mapping module 113; wherein: the skeleton node extraction module 111 is used for the skeleton based on the grid map , determine the nodes in the skeleton, the grid map is constructed based on the environment area where the robot is located, and the grid map includes the boundary to be explored; the node tree determination module 112 is used to determine the root node based on the position of the robot, according to the root node and the skeleton in the skeleton. The node of the node determines the node tree; the exploration and mapping module 113 is used to control the robot to explore and construct a map according to the positional relationship between the leaf nodes in the node tree and the boundary to be explored.

本实施例的建图装置还用于实现上述机器人的建图方法。The mapping device of this embodiment is also used to implement the above-mentioned method for mapping a robot.

关于建图装置的具体限定可以参见上文中对于机器人的建图方法的限定,在此不再赘述。上述建图装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。For the specific limitation of the mapping device, reference may be made to the limitation of the robot mapping method above, which will not be repeated here. Each module in the above-mentioned mapping apparatus may be implemented in whole or in part by software, hardware and combinations thereof. The above modules can be embedded in or independent of the processor in the computer device in the form of hardware, or stored in the memory in the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.

本申请进一步提出一种电子设备,如图11所示,图11是本申请电子设备一实施例的结构示意图。本实施例电子设备100包括处理器101、与处理器101耦接的存储器102、输入输出设备103以及总线104。The present application further proposes an electronic device, as shown in FIG. 11 , which is a schematic structural diagram of an embodiment of the electronic device of the present application. The electronic device 100 in this embodiment includes a processor 101 , a memory 102 coupled to the processor 101 , an input and output device 103 , and a bus 104 .

该处理器101、存储器102、输入输出设备103分别与总线104相连,该存储器102中存储有程序数据,处理器101用于执行程序数据以实现上述机器人的建图方法。The processor 101, the memory 102, and the input/output device 103 are respectively connected to the bus 104, the memory 102 stores program data, and the processor 101 is used for executing the program data to implement the above-mentioned method for constructing a robot.

上述实施例中的控制器可以集成在处理器101内。The controllers in the above-described embodiments may be integrated in the processor 101 .

在本实施例中,处理器101还可以称为CPU(Central Processing Unit,中央处理单元)。处理器101可能是一种集成电路芯片,具有信号的处理能力。处理器101还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器101也可以是任何常规的处理器等。In this embodiment, the processor 101 may also be called a CPU (Central Processing Unit, central processing unit). The processor 101 may be an integrated circuit chip with signal processing capability. The processor 101 may also be a general purpose processor, digital signal processor (DSP), application specific integrated circuit (ASIC), field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware components . A general purpose processor may be a microprocessor or the processor 101 may be any conventional processor or the like.

本实施例的电子设备100可以是机器人,进一步设置有能够探测空间障碍物的探测装置及移动装置。The electronic device 100 in this embodiment may be a robot, and is further provided with a detection device and a moving device capable of detecting space obstacles.

本申请提供的机器人的建图方法以及装置,通过对当前环境区域的栅格地图进行骨架提取,并将骨架延伸至地图边界;同时基于骨架计算待探索点,所得待探索点远离障碍物,最大程度地提高了安全性;同时按照一定的顺序性对待探索点进行排列,保证了待探索点的探索有序性。The robot mapping method and device provided by the present application extract the skeleton from the grid map of the current environment area, and extend the skeleton to the map boundary; at the same time, the to-be-explored point is calculated based on the skeleton, and the obtained to-be-explored point is far away from obstacles, and the maximum The security is improved to a certain extent; at the same time, the exploration points are arranged in a certain order, which ensures the orderliness of the exploration of the points to be explored.

本申请进一步提出一种计算机可读存储介质,如图12所示,本实施例计算机可读存储介质160用于存储上述实施例的程序数据161,程序数据161能够被执行以实现上述机器人的建图方法。程序数据161已在上述方法实施例中进行了详细的叙述,这里不赘述。The present application further proposes a computer-readable storage medium. As shown in FIG. 12 , the computer-readable storage medium 160 of this embodiment is used to store the program data 161 of the above-mentioned embodiment, and the program data 161 can be executed to realize the construction of the above-mentioned robot. graph method. The program data 161 has been described in detail in the above method embodiments, and will not be repeated here.

本实施例计算机可读存储介质160可以是但不局限于U盘、SD卡、PD光驱、移动硬盘、大容量软驱、闪存、多媒体记忆卡、服务器等。The computer-readable storage medium 160 in this embodiment may be, but is not limited to, a U disk, an SD card, a PD optical drive, a mobile hard disk, a large-capacity floppy drive, a flash memory, a multimedia memory card, a server, and the like.

在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。In one embodiment, there is provided a computer program product or computer program comprising computer instructions stored in a computer readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the steps in the foregoing method embodiments.

区别于现有技术,本申请先基于栅格地图的骨架,确定骨架中的节点,且该栅格地图包括待探索边界,因此该骨架延伸至了待探索边界,即骨架包括了待探索边界的骨架;进一步,本申请建立骨架中节点的节点树,并基于节点树中叶子节点与待搜索边界的位置关系,控制移动机器人探索建图;通过这种方式,不仅能够实现机器人自动建图,提高建图的智能化水平;而且本申请基于栅格地图的骨架计算探索点,使得探索点能够远离障碍物,能够提高安全性;同时按照一定的顺序性对待探索点进行排列,保证了待探索点的探索有序性。Different from the prior art, the present application first determines the nodes in the skeleton based on the skeleton of the grid map, and the grid map includes the boundary to be explored, so the skeleton extends to the boundary to be explored, that is, the skeleton includes the boundary of the boundary to be explored. skeleton; further, the present application establishes a node tree of nodes in the skeleton, and controls the mobile robot to explore and build a map based on the positional relationship between the leaf nodes in the node tree and the boundary to be searched; in this way, not only can the robot automatically build a map, improve the The intelligent level of mapping; and the application is based on the skeleton of the grid map to calculate the exploration points, so that the exploration points can be far away from obstacles, which can improve the safety; at the same time, the exploration points are arranged in a certain order to ensure that the points to be explored are arranged. order of exploration.

另外,上述功能如果以软件功能的形式实现并作为独立产品销售或使用时,可存储在一个移动终端可读取存储介质中,即,本申请还提供一种存储有程序数据的存储装置,所述程序数据能够被执行以实现上述实施例的方法,该存储装置可以为如U盘、光盘、服务器等。也就是说,本申请可以以软件产品的形式体现出来,其包括若干指令用以使得一台智能终端执行各个实施例所述方法的全部或部分步骤。In addition, if the above functions are implemented in the form of software functions and sold or used as independent products, they can be stored in a storage medium readable by a mobile terminal, that is, the present application also provides a storage device storing program data, so The program data can be executed to implement the methods of the above embodiments, and the storage device can be, for example, a USB flash drive, an optical disc, a server, or the like. That is to say, the present application can be embodied in the form of a software product, which includes several instructions to make an intelligent terminal execute all or part of the steps of the methods described in the various embodiments.

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。In addition, the terms "first" and "second" are only used for descriptive purposes, and should not be construed as indicating or implying relative importance or implying the number of indicated technical features. Thus, a feature delimited with "first", "second" may expressly or implicitly include at least one of that feature. In the description of the present application, "plurality" means at least two, such as two, three, etc., unless expressly and specifically defined otherwise.

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的机构、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。Any description of a process or method in a flowchart or otherwise described herein may be understood to represent a mechanism, segment or portion of code comprising one or more executable instructions for implementing a specified logical function or step of the process , and the scope of the preferred embodiments of the present application includes alternative implementations in which the functions may be performed out of the order shown or discussed, including performing the functions substantially concurrently or in the reverse order depending upon the functions involved, which should It is understood by those skilled in the art to which the embodiments of the present application belong.

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(可以是个人计算机,服务器,网络设备或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。The logic and/or steps represented in flowcharts or otherwise described herein, for example, may be considered an ordered listing of executable instructions for implementing the logical functions, may be embodied in any computer-readable medium, For use by an instruction execution system, apparatus or device (which may be a personal computer, server, network device or other system that can fetch instructions from and execute instructions from an instruction execution system, apparatus or apparatus) or in conjunction with such instruction execution system, apparatus or apparatus and use. For the purposes of this specification, a "computer-readable medium" can be any device that can contain, store, communicate, propagate, or transport the program for use by or in connection with an instruction execution system, apparatus, or apparatus. More specific examples (non-exhaustive list) of computer readable media include the following: electrical connections with one or more wiring (electronic devices), portable computer disk cartridges (magnetic devices), random access memory (RAM), Read Only Memory (ROM), Erasable Editable Read Only Memory (EPROM or Flash Memory), Fiber Optic Devices, and Portable Compact Disc Read Only Memory (CDROM). In addition, the computer readable medium may even be paper or other suitable medium on which the program may be printed, as the paper or other medium may be optically scanned, for example, followed by editing, interpretation, or other suitable medium as necessary process to obtain the program electronically and then store it in computer memory.

以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。The above description is only an embodiment of the present application, and is not intended to limit the scope of the patent of the present application. Any equivalent structure or equivalent process transformation made by using the contents of the description and drawings of the present application, or directly or indirectly applied to other related technologies Fields are similarly included within the scope of patent protection of this application.

Claims (10)

1. A robot mapping method is characterized by comprising the following steps:
determining nodes in a skeleton based on the skeleton of a grid map, wherein the grid map is constructed based on an environment area where a robot is located, and the grid map comprises a boundary to be explored;
determining a root node based on the position of the robot, and determining a node tree according to the root node and nodes in the skeleton;
and controlling the robot to explore and build a graph according to the position relation between the leaf nodes in the node tree and the boundary to be explored.
2. The method of claim 1, wherein the determining the nodes in the skeleton comprises:
and determining grids corresponding to corners, branches and/or grids corresponding to tail ends in the skeleton as nodes.
3. The method of claim 1, wherein the determining the nodes in the skeleton comprises:
and traversing the grids on the framework, and judging whether the grids are nodes or not according to the position relation between the neighborhood grids of the grids and the framework.
4. The mapping method according to claim 3, wherein the determining whether the grid is a node according to the position relationship between the grid in the neighborhood of the grid and the skeleton includes:
determining that the grid is a leaf node based on only one of the neighborhood grids of the grid being on the skeleton;
determining that the grid is a turning node based on that only two of the neighborhood grids of the grid are on the framework and the two neighborhood grids and the grid are not on the same straight line;
and judging and determining the grid as a branch node based on that at least three of the neighborhood grids of the grid are on the framework.
5. The mapping method of claim 1, wherein the grid map comprises a grid to be explored; determining the position relation between the leaf nodes in the node tree and the boundary to be explored, wherein the step of determining the position relation comprises the following steps:
and based on that at least three grids in the neighborhood of the grid where the leaf node is located are grids to be explored, judging the position relation between the leaf node and the boundary to be explored to be that the leaf node is located at the boundary to be explored.
6. The mapping method according to claim 1, wherein the controlling the robot exploration mapping according to the position relationship between the leaf nodes in the node tree and the boundary to be explored comprises:
taking a father node of the leaf node positioned on the boundary to be explored as a node to be explored;
and controlling the robot to move to the node to be explored for exploring and building a graph.
7. The mapping method according to claim 6, wherein the mapping method further comprises:
taking the position of the robot as a current node, and judging whether a leaf node of the current node has a node to be explored or not;
if the node exists, controlling the robot to move to the node to be explored;
and if the current node does not exist, controlling the robot to move to the father node of the current node.
8. The mapping method according to claim 1, wherein the mapping method further comprises:
calculating the length of the boundary to be explored, comprising: starting from a leaf node located on the boundary to be explored, moving along the skeleton to determine the length of the boundary to be explored;
and if the length is larger than the threshold value, executing a step of controlling the robot to explore and establish a map.
9. An electronic device, comprising: comprises a memory and a processor which are coupled with each other, wherein the processor is used for executing the program data stored in the memory so as to realize the mapping method of the robot in any one of the claims 1 to 8.
10. A computer storage medium having stored thereon program data executable to implement the method of mapping a robot of any of claims 1 to 8.
CN202111630176.1A 2021-12-28 2021-12-28 Robot mapping method, electronic device and computer storage medium Active CN114545923B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111630176.1A CN114545923B (en) 2021-12-28 2021-12-28 Robot mapping method, electronic device and computer storage medium
PCT/CN2022/107503 WO2023124035A1 (en) 2021-12-28 2022-07-22 Mapping method for robot, electronic device and nonvolatile readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111630176.1A CN114545923B (en) 2021-12-28 2021-12-28 Robot mapping method, electronic device and computer storage medium

Publications (2)

Publication Number Publication Date
CN114545923A true CN114545923A (en) 2022-05-27
CN114545923B CN114545923B (en) 2025-03-11

Family

ID=81668955

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111630176.1A Active CN114545923B (en) 2021-12-28 2021-12-28 Robot mapping method, electronic device and computer storage medium

Country Status (2)

Country Link
CN (1) CN114545923B (en)
WO (1) WO2023124035A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023124035A1 (en) * 2021-12-28 2023-07-06 美的集团(上海)有限公司 Mapping method for robot, electronic device and nonvolatile readable storage medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117128986A (en) * 2023-08-24 2023-11-28 珠海格力智能装备有限公司 Picture construction method, device, equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110956161A (en) * 2019-12-17 2020-04-03 中新智擎科技有限公司 Autonomous map building method and device and intelligent robot
US20210089040A1 (en) * 2016-02-29 2021-03-25 AI Incorporated Obstacle recognition method for autonomous robots
CN113009916A (en) * 2021-03-08 2021-06-22 珠海市一微半导体有限公司 Path planning method, chip and robot based on global map exploration
CN113050632A (en) * 2021-03-11 2021-06-29 珠海市一微半导体有限公司 Map exploration method and chip for robot to explore unknown area and robot
CN113465612A (en) * 2021-07-02 2021-10-01 南京航空航天大学 Parallel path planning method and system based on double-layer index

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11314262B2 (en) * 2016-08-29 2022-04-26 Trifo, Inc. Autonomous platform guidance systems with task planning and obstacle avoidance
CN109993064B (en) * 2019-03-06 2022-04-29 东南大学 Method for extracting connection path between road network nodes in picture
CN110850871B (en) * 2019-10-21 2020-07-17 深圳市银星智能科技股份有限公司 Machine path planning method and mobile robot
CN114779769A (en) * 2020-05-25 2022-07-22 科沃斯机器人股份有限公司 A method for constructing a self-moving cleaning device and the self-moving cleaning device
CN112000754B (en) * 2020-08-11 2024-06-07 珠海格力电器股份有限公司 Map construction method, device, storage medium and computer equipment
CN111966097B (en) * 2020-08-12 2024-06-14 深圳华芯信息技术股份有限公司 Map building method, system and terminal based on grid map regional exploration
CN113189988B (en) * 2021-04-21 2022-04-15 合肥工业大学 An autonomous path planning method based on the combination of Harris algorithm and RRT algorithm
CN113310491A (en) * 2021-05-17 2021-08-27 北京航空航天大学 Unmanned aerial vehicle navigation network automatic generation method considering specific structure
CN114545923B (en) * 2021-12-28 2025-03-11 美的集团(上海)有限公司 Robot mapping method, electronic device and computer storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210089040A1 (en) * 2016-02-29 2021-03-25 AI Incorporated Obstacle recognition method for autonomous robots
CN110956161A (en) * 2019-12-17 2020-04-03 中新智擎科技有限公司 Autonomous map building method and device and intelligent robot
CN113009916A (en) * 2021-03-08 2021-06-22 珠海市一微半导体有限公司 Path planning method, chip and robot based on global map exploration
CN113050632A (en) * 2021-03-11 2021-06-29 珠海市一微半导体有限公司 Map exploration method and chip for robot to explore unknown area and robot
CN113465612A (en) * 2021-07-02 2021-10-01 南京航空航天大学 Parallel path planning method and system based on double-layer index

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023124035A1 (en) * 2021-12-28 2023-07-06 美的集团(上海)有限公司 Mapping method for robot, electronic device and nonvolatile readable storage medium

Also Published As

Publication number Publication date
WO2023124035A1 (en) 2023-07-06
CN114545923B (en) 2025-03-11

Similar Documents

Publication Publication Date Title
CN114545923A (en) Robot mapping method, electronic device and computer storage medium
CN112183710B (en) Method and device for determining path
JP7429933B2 (en) Working area expansion method based on laser mapping, chips and robots
US20140334713A1 (en) Method and apparatus for constructing map for mobile robot
CN110146098A (en) A kind of robot map enlargement method, device, control equipment and storage medium
CN111680747B (en) Method and apparatus for closed loop detection of occupancy grid subgraphs
CN109978243A (en) Track of vehicle planing method, device, computer equipment, computer storage medium
US11255687B2 (en) Method for trajectory planning of a movable object
CN111609853B (en) Three-dimensional map construction method, sweeping robot and electronic equipment
CN114690769B (en) Path planning method, electronic device, storage medium and computer program product
KR102230362B1 (en) Cleaning Robot Apparatus Using Rectangular Map Decomposition and Method for Planning Coverage Path Using the Same
CN115519586A (en) Robot cliff detection method, robot and storage medium
US20200209876A1 (en) Positioning method and apparatus with the same
CN114577217B (en) Path planning method, device, device and storage medium based on von Loney diagram
EP4374763A1 (en) Robotic cleaner and method for controlling robotic cleaner
Laguna et al. Exploration of an unknown environment with a differential drive disc robot
CN114543802B (en) Exploration method, device, storage medium and electronic device for traversable area
KR102147211B1 (en) Controlling method for Artificial intelligence Moving robot
CN114924575B (en) Mobile robot path planning method and device, electronic equipment and storage medium
CN114379592B (en) Target association method, device, electronic equipment and storage medium
CN115047905A (en) Method for selecting optimal path of unmanned aerial vehicle, terminal and storage medium
CN113791610A (en) Global path planning method for mobile robot
Rodriguez-Tirado et al. A pipeline framework for robot maze navigation using computer vision, path planning and communication protocols
CN116266060A (en) Cleaning control method, cleaning control system and cleaning robot
CN112729302A (en) Navigation method and device for inspection robot, inspection robot and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20220706

Address after: Room 1152, area B, 11 / F, building 1, 158 Shuanglian Road, Huangpu District, Shanghai, 201702

Applicant after: Midea Group (Shanghai) Co.,Ltd.

Applicant after: MIDEA GROUP Co.,Ltd.

Address before: 201799 room 1152, block B, floor 11, building 1, No. 158 Shuanglian Road, Qingpu District, Shanghai

Applicant before: Midea Group (Shanghai) Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant