Map division for robot navigation

By automatically defining the robot's operating range through sensor detection and preset criteria, and combining hypotheses and human-computer interaction, the problem of robot behavior being difficult to understand in existing technologies has been solved. This enables flexible space division and task planning, and improves the interaction efficiency between the robot and human users.

CN122131807APending Publication Date: 2026-06-02PAPST LICENSING GMBH & CO KG

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
PAPST LICENSING GMBH & CO KG
Filing Date
2016-11-11
Publication Date
2026-06-02

AI Technical Summary

Technical Problem

Existing methods for defining robot usage areas fail to effectively consider the characteristics of the human environment, making robot behavior difficult for human users to understand and hindering flexible spatial allocation and task planning.

Method used

By using robot sensors to detect obstacles and combining preset criteria and assumptions, the robot's operating area is automatically divided into sub-regions. The division results are then adjusted through human-computer interaction, taking into account the passability and functionality of obstacles, and generating an intuitive map for human understanding.

Benefits of technology

It enables flexible division of the robot's usage scope, improves human users' understanding of robot behavior and the efficiency of task planning, and enhances the interaction capabilities between robots and human users.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122131807A_ABST
    Figure CN122131807A_ABST
Patent Text Reader

Abstract

The exemplary embodiments described herein relate to sub-divisions of a map of the robot's usability range for an autonomous mobile robot. According to one embodiment of the invention, the method includes: detecting obstacles and determining their size and location on a map using sensors disposed on the robot; analyzing the map using a processor to identify areas containing groups of obstacles; and defining a first sub-range using the processor such that the first sub-range contains the identified groups.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Divisional application This application is a divisional application of application number 201680078523.5, filed on November 11, 2016, entitled "Map partitioning for robot navigation". Technical Field

[0002] This manual relates to the field of autonomous, movable robots, and in particular to the delineation of a map of the robot's operating area, within which the robot moves and is oriented. Background Technology

[0003] A wide range of autonomous robots can be used in various private or commercial applications, such as cleaning or handling floors, transporting goods, or inspecting the surrounding environment. Simple devices are sufficient without creating and using a map of the robot's area of ​​operation, by moving randomly, for example, across the surface to be cleaned (see, for example, iRobot's published document EP2287697A2). More complex robots use a map of their area of ​​operation, which is created by the robot itself or made available electronically.

[0004] Such maps of robot operating areas are often quite complex and not designed to be readable by human users, but they are necessary for planning the work to be performed by the robot. To simplify work planning, the robot operating area can be automatically subdivided into sub-areas. Numerous methods exist for this purpose. Various abstract methods for delineating areas to be cleaned are known from the academic literature. These methods can, for example, simplify the planning of the robot's path through the area or achieve uniform coverage of the ground surface. Because these abstract methods do not take into account the typical characteristics of human environments (e.g., housing), they often have problems: they do not follow user requirements and make the robot's behavior difficult for human users to understand.

[0005] A very simple approach is to divide the robot's operating area into multiple small sub-areas with predefined shapes and sizes. These sub-areas are then processed sequentially using predefined standard methods (e.g., cleaning). For ease of understanding by human users, the robot's operating area (e.g., a house) can be divided into spaces such as a living room, hallway, kitchen, bedroom, and bathroom. To achieve this, the robot (or its associated processor) attempts to determine the positions of doors and walls, for example, using a ceiling camera, a distance sensor pointing towards the ceiling, or based on typical geometric characteristics such as the width of a door. Another known method is to divide the robot's operating area along the boundaries of floor coverings, which the robot can determine using sensors. This division, for example, makes it possible to select a specific cleaning method based on the type of flooring. The map and its divisions can be displayed to a human user, who can modify the divisions or match them to their needs by moving area boundaries or adding new ones. Summary of the Invention

[0006] The object of this invention is to improve known methods for mapping the usage area of ​​robots and their applications, particularly to make them more flexible. This object is achieved by the method according to any one of claims 1, 14, 26, 32, 34, 40, 46, 53, and 56, and by the robot according to claim 57. Various embodiments and modifications of the invention are the subject of the dependent claims.

[0007] A method for automatically delineating a map of the robot's usability area for an autonomous, movable robot is described. According to one example of the invention, the method includes: detecting obstacles and determining their size and location on the map using sensors disposed on the robot; analyzing the map using a processor to identify areas with groups of obstacles; and defining a first sub-range using the processor such that the first sub-range includes the identified groups.

[0008] According to another example of the invention, the method includes: detecting obstacles and determining the size and location of the obstacles in the map by means of sensors arranged on the robot; analyzing the map by means of a processor, wherein hypotheses about possible sub-region boundaries and / or the functionality of each identified obstacle are automatically established based on at least one preset criterion; and dividing the map of the robot's area of ​​use into sub-regions based on the established hypotheses.

[0009] According to another example of the invention, the method includes: detecting obstacles in the form of limit lines by means of sensors arranged at the robot and determining the size of the obstacles and their positions in the map; dividing the robot's operating area into multiple sub-areas based on the detected limit lines and preset parameters; and displaying a map on a human-machine interface, the map including the sub-areas and detected doorways, wherein user input is awaited regarding preset parameters, the division of the robot's operating area into sub-areas, the positions of the doors, and / or the naming of the functions of the identified sub-areas, and the division of the robot's operating area is changed according to the user input.

[0010] According to another example of the invention, the method includes: detecting obstacles in the form of constraint lines by means of sensors arranged at the robot and determining the size and location of the obstacles in the map; and dividing the robot's operating range into multiple graded sub-ranges based on the detected constraint lines and preset parameters at multiple graded levels. In this case, at a first level of the graded levels, the robot's operating range is divided into multiple first-level sub-ranges. At a second level of the graded levels, the multiple first-level sub-ranges are divided into second-level sub-ranges.

[0011] Another method described herein for automatically mapping the usability of an autonomous, movable robot includes: detecting obstacles in the form of restriction lines using sensors deployed on the robot and determining the size and location of the obstacles in the map. The method further includes covering the restriction lines with a first rectangle such that every point reachable by the robot is within the rectangle, and dividing the first rectangle into at least two adjacent second rectangles, wherein one or more boundary lines between the two adjacent second rectangles extend through the restriction lines, which are determined according to preset criteria.

[0012] Furthermore, a method for automatically planning the work of an autonomous mobile robot within multiple sub-ranges of a robot's operating range is described. According to one embodiment, the method includes: reading a target processing duration from the robot, and automatically selecting sub-ranges to be processed within the target duration and their order based on attributes associated with the sub-ranges, such as the priority of each sub-range and / or the expected processing duration, and the target processing duration.

[0013] Another example of a method for automatically delineating the robot's area of ​​use for an autonomous, movable robot includes: detecting obstacles and determining the size and location of the obstacles in the map by means of sensors deployed on the robot; and delineating the robot's area of ​​use based on the detected obstacles, wherein movable obstacles themselves are identified and ignored when delineating the robot's area of ​​use, so that the delineation is independent of the specific location of the movable obstacles.

[0014] Another example of the method includes detecting obstacles and determining the size and location of the obstacles on the map by means of sensors deployed on the robot, and dividing the robot's usability area based on the detected obstacles, wherein locations obtained at different points in the past are used to determine the location of at least one of the detected obstacles.

[0015] Furthermore, a method for determining the position of an autonomous robot within a map of its operating range is described, wherein at least one region having at least one group of obstacles is drawn in the map. According to one embodiment, the method includes: detecting obstacles and determining their size and location using at least one sensor disposed on the robot; obtaining the position of the robot relative to the region having the group of obstacles; and obtaining the robot's position in the map based on the relative position and the position of the region having the group of obstacles drawn in the map.

[0016] Another embodiment relates to a robot connected to an internal and / or external data processing device configured to execute software programs that, when executed by the data processing device, cause the robot to perform the methods described herein. Attached Figure Description

[0017] The invention will be further explained below with reference to the examples shown in the accompanying drawings. The drawings are not necessarily to scale and the invention is not limited to the aspects shown. Instead, the fundamental principles of the invention are emphasized.

[0018] Figure 1 The map, automatically generated by the movable robot, shows its area of ​​use (housing) with numerous restriction lines. Figure 2 Showing Figure 1 The outer limits of the robot's operating range are obtained based on measurement data (limit lines); Figure 3 Showing Figure 2 The robots can be used in sub-areas (rooms) defined by the recognition of doors and interior walls; Figure 4 Showing the Figure 3The robot's usage area is further divided, which clarifies the inaccessible areas (furniture); Figure 5 Displays pairs of hard-to-pass areas based on identification. Figure 4 Further subdivision of the subrange; Figure 6 Further refinement was shown. Figure 5 The division; Figure 7 Corresponding to Figure 6 The illustration shows the ground coverings and furniture; Figure 8 A-8E illustrates a process for automatically traversing hard-to-reach areas within or sub-ranges of a robot's operating area; Figure 9 A through 9F illustrates another process for dividing the robot's operating area using consecutive segmented rectangles; Figure 10 This schematically illustrates the relationship between the robot path and the subrange. Detailed Implementation

[0019] Technological appliances are most useful to human users in daily life when, on the one hand, their behavior is comprehensible and easily understood by the user, and on the other hand, they can be intuitively operated. Users expect autonomous, mobile robots, such as floor cleaning robots (“vacuum cleaning robots”), to match their working methods and behaviors. To this end, the robot must, through technological methods, articulate its area of ​​use similarly to that of a human user, dividing the area into sub-zones (e.g., living room, bedroom, hallway, kitchen, dining area, etc.). This enables simple communication between the user and the robot, for example, in the form of simple instructions given to the robot (e.g., “Clean the bedroom”) and / or notifications given to the user (e.g., “Bedroom cleaning finished”). Furthermore, the aforementioned sub-zones can be used to display the robot's area of ​​use and to operate the robot with the aid of the map.

[0020] Now, users can divide the robot's area into sub-areas based on both generally accepted conventions and personal preferences (and therefore in a user-specific way, such as a dining area, a children's play area, etc.). An example of known convention is dividing a dwelling into different rooms, such as bedrooms, living rooms, and hallways (see...). Figure 3 Based on a user-specific division, the living room can be divided, for example, into a cooking area, a small dining room (Essecke), or an area in front of and beside the sofa (see [link]). Figure 4The boundaries between these areas can sometimes be very "vague" and are often influenced by the user's interpretation. For example, a cooking area might be characterized by a tiled floor, while a dining area might be characterized simply by the presence of a table and chairs. Matching a robot with a human user can be a very difficult task, and robot-user interaction is often necessary to accurately demarcate the robot's usability areas. To design robot-user interaction simply and understandably, the tool must clarify and prepare map data and automatically demarcated areas. Furthermore, human users expect the behavior of autonomous, movable robots to match the demarcations. Therefore, sub-areas should be able to be assigned attributes by the user or automatically via the robot, and these attributes should influence the robot's behavior.

[0021] The technical premise for this is that the autonomous robot has a map of its operating area in order to orient itself within that area. For example, the map is automatically constructed by the robot and persistently stored. To achieve the goal of visually delineating the robot's operating area for the user, the following technical methods are needed: (1) automatically creating a map of the robot's operating area (e.g., housing) according to preset rules; (2) allowing simple interaction with the user to accommodate user expectations that are not a priori possible at the time of delineation; (3) preprocessing the automatically generated delineations to present them to the user in a simple and understandable way on the map; and (4) automatically deriving certain characteristics from the thus defined delineations as suitable as possible for achieving the behavior expected by the user.

[0022] Figure 1 A possible illustration of a map showing the robot's usability range, as it is constructed by the robot, for example, using sensors and SLAM algorithms. For instance, the robot uses distance sensors to measure distances to obstacles (e.g., walls, individual pieces of furniture, doors, etc.) and calculates line segments from the measurement data (typically a point cloud). These line segments define the boundaries of the robot's usability range. The robot's usability range can be represented, for example, by a closed chain of line segments (most often simple concave polygonal lines), where each line segment has a start point, an end point, and therefore a direction. The direction of a line segment indicates which side of the line segment points into the usability range, or from which side the robot has "seen" an obstacle represented by a particular line segment. Figure 1The polygons shown in the diagram fully describe the robot's area of ​​use, but are highly unsuitable for robot-user communication. Human users may have difficulty identifying their own habitat and orienting themselves within it. An alternative to the chain of the mentioned line segments is a grid map, in which a grid of, for example, 10×10cm is placed over the robot's area of ​​use, and each cell (i.e., a 10×10cm box) is marked as long as it is occupied by an obstacle. Such a grid map is also difficult for human users to understand.

[0023] Not only to simplify interaction with human users, but also to meaningfully "complete" their area of ​​use (from the user's perspective), robots should first automatically divide their operational area into sub-areas. This sub-division makes it easier, more systematic, more varied, and (from the user's perspective) more logical for the robot to perform its tasks within its area of ​​use, thus improving user interaction. To obtain meaningful sub-divisions, the robot must weigh different sensor data. In particular, the robot can use information about the accessibility (difficulty / ease) of areas within its operational area to define sub-areas. Furthermore, the robot can (arguably) assume that the space is generally rectangular. The robot can learn that some changes in the sub-divisions lead to meaningful results (e.g., certain obstacles are located within a certain sub-area with a certain probability).

[0024] As in Figure 1 As illustrated, robots are typically able to identify obstacles using sensors (e.g., laser distance sensors, triangulation sensors, ultrasonic distance sensors, collision sensors, or combinations thereof) and their usability is demarcated on a map as limit lines. However, the limited sensing technology of robots often makes it possible to not clearly identify the obvious division of the usability area into different spaces (e.g., bedroom, living room, hallway, etc.) for the human user. Even determining the limit lines included on the map (e.g., in…) Figure 1 Whether the line between points J and K belongs to a wall or a single piece of furniture cannot be easily determined automatically. Similarly, the "boundary" between two spaces is not easily discernible to a robot.

[0025] To address the aforementioned problem and enable the automatic division of the robot's operating area into different sub-areas (e.g., rooms), the robot constructs its surrounding environment based on sensor data and a "hypothesis," which is tested using various methods. If the hypothesis can be proven false, it is rejected. If two limit lines (e.g., at...) Figure 1In a scenario where lines A-A' and O-O' are approximately parallel and within a common clear width corresponding to a door frame (for which a standard size exists), the robot can hypothesize a "door frame" and deduce that it separates two different rooms. In the simplest case, an automatically created hypothesis can be tested by the robot "asking" the user for feedback. The user can then either accept or reject the hypothesis. However, hypotheses can be tested automatically by examining the reasonableness of the conclusions derived from them. When the space identified by the robot (e.g., by recognizing a threshold) includes, for example, a central space of less than 1 square meter, the hypothesis that ultimately led to this small central space may be incorrect. Another automatic test could be checking whether the conclusions derived from two hypotheses contradict each other. If, for example, six hypotheses about a door can be established and the robot can detect a threshold (small step) only for five of the hypothetical doors, then the hypothesis about a door without a threshold is incorrect.

[0026] When establishing hypotheses using a robot, measurements from various sensors are combined. For a doorway or passageway, this includes, for example, the passageway width, passageway depth (given by wall thickness), and the presence of walls on the right and left sides of the passageway or doors extending into the space. This information can be obtained by the robot, for example, using distance sensors. Potential thresholds can be detected using accelerometers or position sensors (e.g., gyroscopes), which the robot then traverses. Additional information can be obtained through image processing and measuring ceiling height.

[0027] Another example of a feasible assumption is the orientation of the walls within the robot's operating range. The walls are characterized in particular by two parallel lines, the distance between which is typically the thickness of a wall (see [link to article]). Figure 1 (thickness dw) and seen by the robot from two opposite directions (e.g., in) Figure 1 (The lines KL and L'-K' in the diagram). However, other objects (obstacles) may exist in front of the wall, such as cabinets, shelves, flower pots, etc., which can also be identified using assumptions. These assumptions can also be based on other assumptions. For example, a door is an interruption in the wall. Therefore, when a reliable assumption about the orientation of the wall can be given within the robot's operating range, the wall simplifies the identification of doors and the automatic delineation of the robot's operating range.

[0028] To test and evaluate hypotheses, they can be associated with a degree of reasonableness. In a simple embodiment, the hypothesis for each accepted sensor measurement well describes predefined point values. A hypothesis is considered reasonable when it reaches a minimum number of points in this way. A negative number of points may lead to the rejection of the hypothesis. In another developed embodiment, a hypothesis is associated with a probability for that hypothesis. This requires a probabilistic model that considers the correlations between various sensor measurements, but stochastic computation models also make it possible to provide a comprehensive probabilistic description and thus enable more credible predictions for the user's expectations. For example, in some regions (e.g., states) where the robot is used, door widths may be standardized. If the robot measures such a standardized width, this involves a door with a high probability. Deviations from the standard width reduce this probability of involving a door. For this purpose, a probabilistic model based on a normal distribution can be used, for example. Another possible approach for formulating and evaluating hypotheses is to use "machine learning" to develop appropriate models and quality functions (see, for example, *The Elements of Statistical Learning*, 2nd ed., Trevor Hastie, Robert Tibshirani, and Jerome Friedman, Springer, 2008). For this purpose, map data recorded in various living environments could be obtained, for example, by one or more robots. This map data could then be supplemented with floor plans or data input by the user (e.g., regarding the orientation of walls or doors and passageways, or about desired partitions) and evaluated by a learning algorithm.

[0029] Another approach that can be used alternatively or additionally to address the assumptions mentioned above is to divide the robot's operating area (e.g., a dwelling) into multiple rectangular regions (e.g., rooms). This approach is based on the assumption that a room can typically be rectangular or composed of multiple rectangles. In a map created by the robot, this rectangular shape of a room is often unrecognizable because numerous obstacles (e.g., furniture) with complex boundaries within the room limit the robot's operating area.

[0030] Assuming the room is rectangular, rectangles of varying sizes are used to cover the robot's usable area; these rectangles should represent the room. Specifically, the rectangles are chosen so that every point reachable by the robot in the map of the robot's usable area can be explicitly associated with a rectangle. That is, the rectangles generally do not overlap. It is not excluded that rectangles may contain points inaccessible to the robot (e.g., because furniture excludes accessibility). Therefore, the area described by rectangles may be larger and have a geometrically simpler shape than the actual robot's usable area. To determine the orientation and size of each rectangle, long, straight boundary lines are used, for example, along walls in the map of the robot's usable area (see, for example, [link to relevant documentation]). Figure 1 (Straight lines through points L' and K', straight lines through points P and P', and P" and P'"). Various criteria are used to select the constraint lines to be used. A criterion may be, for example, that the relevant constraint line is approximately parallel or perpendicular to a number of other constraint lines. Another criterion may be that the relevant constraint line is approximately on a straight line and / or relatively long (i.e., on the order of magnitude of the outer dimensions of the robot's operating range). Another criterion for selecting the orientation and size of the rectangle is, for example, the identification of doorways or floor covering boundaries. This criterion and other criteria may be evaluated using one or more evaluation functions (similar to the degree of reasonableness of an assumption, such as associating point values ​​with the assumption) to obtain the correct shape and position of the rectangle. For example, constraint lines are points that satisfy the criteria. A constraint line with the maximum point value is used as the boundary between two rectangles.

[0031] Based on the assumption that the space is essentially rectangular, the robot can complete the map from the constraint lines (see...). Figure 1 This is done to make the outer constraint line a right-angled polygon. The result is... Figure 2 As shown in the diagram. Feasibility also lies in drawing a rectangle along the outer boundary lines of the housing (see...). Figure 2 A rectangle enclosing housing W and inaccessible area X), and the inaccessible area is excluded from the rectangle (see...). Figure 2 Region X). Recognition-based gates (see Figure 1 (the door frame between points O and A, and between P' and P") and interior walls (see Figure 1 (Anti-parallel constraint lines at a distance of dw) can automatically divide the housing into three rooms: 100, 200, and 300 (see...) Figure 3 The area detected as a wall extends to the door or to the outer boundary of the dwelling. Inaccessible areas within the room can be interpreted by the robot as individual pieces of furniture or other obstacles and drawn accordingly on the map (see...). Figure 4For example, a single piece of furniture 101 might be identified as a bed (a bed of standard size) based on its dimensions (distance from the limit lines), thus identifying room 100 as a bedroom. Area 102 is identified as a cabinet. However, this could also involve a chimney or fireplace.

[0032] Space 300 can be further subdivided based on sensor data recorded by the robot (see...) Figure 4 For example, this could be a criterion for further subdividing floor coverings. Using sensors, the robot can, for example, distinguish between tiled floors, floored floors, or carpeted floors. Small (detectable) unevenness usually exists at the boundary between two floor coverings, and wheel slippage can differ for different floor coverings. Various floors differ in their optical properties (color, reflection, etc.). In the current example, the robot identifies a sub-area 302 with a tiled floor and a sub-area 303 with carpet in room 300. The remaining sub-area 301 has a floored floor. The tiled area 302 might be defined by the robot, for example, as a cooking area.

[0033] So far, relatively small obstacles have been ignored, where "relatively small" means that the obstacle is similar in size to or smaller than the robot. Figure 5 In the robot's map, numerous small obstacles, only a few centimeters in size, are drawn in the upper right corner of sub-area 301 within room 300. Further subdivision of room 300 (or sub-area 301) can also be based on the passability of the area the robot can operate in. Figure 5 In the scenario shown, the sub-range marked 320 contains a large number of (clustered) obstacles (e.g., table legs and chair legs) that impede the robot's rapid straight-line movement. If the robot wants to quickly travel from one point to another (e.g., to its charging station), it would be more efficient to bypass the range with many small obstacles instead of taking the shortest path. Therefore, it can be useful to define the range that is difficult to traverse due to numerous obstacles as separate sub-ranges. For this purpose, the robot can be configured to analyze a map to identify areas on the map with clusters of obstacles distributed in such a way that the obstacles prevent the robot from traveling straight through the area. "Blocking" here does not necessarily mean that straight-line passage is impossible. It is sufficient as long as there is no straight path through the sub-range (along which the robot can maintain a safe distance from the obstacles) or small changes in the straight path (rotation or movement) that would lead to a collision with the obstacles. If such an area with clusters of obstacles is identified, the robot defines the sub-range so that the first sub-range contains the identified cluster.

[0034] Therefore, in the current example ( Figure 5 The area in the upper right corner of subrange 301 is defined as subrange 320, which is associated with the attribute "difficult to traverse". Subrange 301 (see...) Figure 4 The remaining area is referred to as subrange 310. Based on the size and number of each obstacle, the robot may even identify obstacles as table legs and chair legs, and subrange 320 as a “dinette.” Subrange 320 may also be associated with other cleaning intervals or other cleaning modules, for example, different from other subranges. Therefore, for example, when each obstacle (e.g., its base area or its diameter) is smaller than a preset maximum value and when the number of obstacles is greater than a preset minimum value (e.g., five), it can be identified by the robot as a group of obstacles.

[0035] The boundaries of “difficult-to-pass” sub-regions are not geometrically defined (unlike, for example, boundaries between various ground cover). However, assumptions can be made about their location based on the expected characteristics of the sub-regions to be formed and complementary sub-regions (see [link to relevant documentation]). Figure 4 (320) Difficult-to-pass sub-ranges and 310 complementary sub-ranges. As criteria for defining the boundaries of difficult-to-pass sub-ranges, the robot may use, for example, the following rules: (1.) Difficult-to-pass sub-ranges should be as small as possible. (2.) Sub-ranges should include small obstacles, i.e., obstacles whose base area is smaller than the robot's base area or whose longitudinal extension is smaller than the robot's diameter. (3.) Small obstacles significantly interfere with the robot's straight movement due to their number and spatial distribution; in contrast, for example, a single chair in the center of an otherwise empty range should not define a dedicated sub-range. (4.) The boundaries of difficult-to-pass sub-ranges should be chosen such that cleaning around each small obstacle is feasible without the robot having to leave the sub-range. Difficult-to-pass sub-ranges thus include an area around each obstacle with at least one robot diameter. (5.) Difficult-to-pass sub-ranges should have the simplest possible geometry, such as, for example, a rectangle or a right-angled polygon. (6.) Complementary sub-ranges (which are generated by separating the difficult-to-pass sub-ranges) should be easily passable or easily cleanable. Therefore, complementary sub-ranges should especially avoid very small isolated areas, long narrow strips, or sharp corners.

[0036] In the current example, by using range 301 (see...) Figure 4The difficult-to-pass sub-area 320 is separated from the main sub-area to generate complementary sub-areas 310, which can be further subdivided into smaller, generally rectangular areas 311, 312, and 313. This division follows the existing range boundaries. For example, sub-area 311 is generated by extending downwards the boundary between sub-areas 320 (small dining room) and 302 (cooking area) to sub-area 303 (carpet). Sub-areas 312 and 313 are generated by extending the boundary of sub-area 303 (carpet) to the outer wall. To enable a better presentation of the final division of the dwelling, in Figure 7 The image shows a house including furniture.

[0037] Figure 8 This shows another example of dividing a (sub)range (room) into smaller sub-ranges according to the mentioned passability characteristics. Figure 8 A illustrates an example of a room with a small dining area, shown in a top-down view, which includes a table, six chairs, and a sideboard. Figure 8 B shows a difference from the previous one. Figure 2 The example is similar to a map with constraint lines created by the robot. At the location of the table, the robot "sees" many small obstacles (table legs and chair legs) that interfere with the robot's straight movement (e.g., passing under the table). The sideboard is shown as an abstract single piece of furniture. First, the robot identifies the relatively small obstacles (table legs and chair legs, see rules 2 and 3 above), groups these obstacles, and surrounds them with the smallest possible polygon (see...). Figure 8 C, see Rule No. 1 above). To give the defined sub-area "dining room" the simplest possible geometry, the robot attempts to arrange rectangles around the polygon (see Rule No. 5 above), where the rectangles must adhere to a minimum distance from the polygon. This minimum distance should be so large that the robot does not need to leave the sub-area while cleaning it (see Rule 4 above). Therefore, the minimum distance is generally at least as large as the robot's diameter (or maximum external dimension). In other cases, such as when multiple tables are arranged in a U-shape, as in a guest area, it is often advantageous to define multiple (adjacent) rectangular sub-areas from a group of obstacles, rather than one. In the current example, the rectangular sub-areas are as follows: Figure 8 As shown in D, the rectangle is oriented parallel to the outer wall. Other possibilities for determining a useful orientation of the rectangle include choosing a rectangle with the smallest area or orienting the rectangle according to the principal axis of inertia (the principal axis of the covariance matrix) of the distribution of small obstacles.

[0038] To avoid creating narrow, equally difficult pathways in complementary sub-regions (see Rule 6 above), the (outer) walls and rectangular sub-regions will be... Figure 8 The narrow area between D) is added to the previously defined rectangle. The result is... Figure 8 As shown in E.

[0039] Another possibility for defining the scope of robot use is according to Figure 9 As shown. In many cases, the robot's operating area can be composed of rectangles that share a common boundary, but this common boundary is not obstructed by obstacles. These rectangles can be combined to form right-angled polygons. This could, for example, represent a room with protruding parts or a room 300 composed of a living room and a cooking area, corresponding to... Figure 3 Examples. See below for further details. Figure 7 The example housing more precisely illustrates a feasible way to delineate the robot's usage area. This is based on the robot's measurement data, obtained through distance measurements to obstacles, i.e., in... Figure 1 The chain-like constraint lines are shown in the diagram. These measurement data may include measurement errors, as well as information that is not important for map division and can be filtered out. Therefore, for example, small obstacles (smaller than the entire house, room, or robot) can be ignored below.

[0040] To generate a simplified model of the robot's operational range, a map of the limit lines to be explored by the robot is used (see...). Figure 1 Starting from this point, the constraint lines that are approximately perpendicular to each other are oriented perpendicularly to each other, and the constraint lines that are approximately parallel to each other are oriented parallel to each other (regularization). For this purpose, a first preferred axis is obtained (e.g., an axis parallel to the longest constraint line or to which most constraint lines are approximately parallel). Then, for example, all constraint lines that enclose the preferred axis at an angle of less than 5° are rotated around their midpoint to make them parallel to the preferred axis. Constraint lines that are approximately perpendicular to the preferred axis are treated similarly. In the example shown here, inclined constraint lines are still not considered. The resulting simplified (map) model is then enclosed by a rectangle 500 in the next step, so that the robot's usable area is completely contained within this rectangle (see...). Figure 9 A). Rectangle 500 is oriented here, for example, along a preferred axis (vertical and horizontal) obtained through regularization. In the next step, rectangle 500 is divided into two smaller rectangles 501 and 502 according to a preset rule (see...). Figure 9 B), where in the current case, rectangle 500 is divided in such a way that the common edge of the resulting rectangles 501 and 502 is obtained (see...). Figure 9 B, edge a) extends through the door frame. Rectangle 502 is further divided into rectangles 503 and 504. The common edge of rectangles 503 and 504 (see...) Figure 9 B, edge b) extends through the boundary line representing the outer wall. The result is... Figure 9As shown in C. Rectangle 503 involves a completely inaccessible area and is larger than a case that might involve a single piece of furniture; rectangle 503 can therefore be removed from the map. Rectangle 504 is further subdivided into rectangles 505, 507, and 508. The common edge of rectangles 507 and 508 (see...) Figure 8 C, edge d) extends through what is identified as the inner wall boundary line (see...). Figure 1 (Line L'-K'). The common edge of rectangles 505 and 507 (and also 505 and 508) (see Figure 8 C, edge c) extends through the identified gate (refer to...) Figure 1 , line P'-P). The result is in Figure 9 As shown in D.

[0041] Therefore, regarding the example above, the rectangle can be divided at such intersections, which are obtained, for example, based on previously oriented constraint lines that are parallel or perpendicular to the side edges of the rectangle to be divided. In the current example, this is along a straight line (see...). Figure 9 A, restriction lines a and c) and / or relatively long sections (see Figure 9 A, constraint lines b and d), where “relatively long” means that the relevant constraint line has a length that is on the order of the width of the dwelling (e.g., greater than 30% of the narrow side of the dwelling). Various rules can be used to evaluate which line of intersection divides the rectangle into two rectangles. These rules can relate to the absolute or relative size of the constraint lines, the rectangles to be divided, or the resulting rectangles. This rule particularly considers (1.) the constraint line and a nearby parallel constraint line at a distance corresponding to the wall thickness (see [link to relevant section]). Figure 1 Thickness dw Figure 9 A. (1.) Limiting lines c and d); (2.) Multiple aligned limiting lines (see...) Figure 9 A. Limit lines a and c); (3.) Identified doorways (aligned with limit lines at a distance equal to the typical door width); (4.) Limit lines defining the boundaries of inaccessible areas (see...) Figure 9 A, limit line b); (5.) the absolute size and / or aspect ratio of the resulting rectangle (avoid rectangles with very large or very small aspect ratios); and (6.) the size of the rectangle to be divided.

[0042] Given the rules mentioned above, in rectangle 501 ( Figure 9 There is no possibility of a related separation in B). Because the constraint line completely passes through the larger rectangle 502, rectangle 503 is separated from rectangle 502. Figure 9 C). Because the gate is identified along the constraint line c and the two constraint lines marked c are aligned, rectangle 505 is separated from the larger rectangle 504. Figure 9D). Perform the division along the constraint line d, since constraint line d passes completely through the rectangle to be divided (507 and 508 together). Additionally, walls can be identified along constraint line d.

[0043] Depending on the criteria used to divide the rectangles, rectangles 507 and / or 508 may be further divided. This, for example, results in... Figure 9 The division of E. The rectangles obtained are relatively small, so check if they can be added to other rectangles. For example, the range derived from rectangle 508 has a good connection with rectangle 501 (that is, there are no obstacles between them, such as walls that might completely or partially separate the two ranges) and can be added to rectangle 501 (see...). Figure 9 In F, sub-range 510). The rectangle derived from rectangle 507 can also be reassembled, thereby effectively cutting out the large, inaccessible central area (the bed in the bedroom) (see...). Figure 9 F, subrange 511).

[0044] Human users expect that the defined boundaries of the robot's operating area (boundaries that are very familiar to them) will remain largely unchanged during or after the robot's use. However, human users may be willing to accept some optimizations that lead to improved robot behavior. The basis of the boundary map can change between robot uses due to movable objects. Therefore, over time, the robot should "learn" the boundaries unaffected by this movement. Examples of movable objects are doors, chairs, or furniture with wheels. For example, image recognition methods can be used to identify, classify, and re-identify such objects. The robot can mark objects identified as movable as movable and re-identify them for later use if necessary.

[0045] Only objects with fixed locations (e.g., walls and large single pieces of furniture) can be used for persistent demarcation of the robot's operating range. Objects with constantly changing locations are negligible for demarcation. In particular, a single change in the robot's surrounding environment should not lead to the redefinition of the map and its demarcations. For example, comparing the open and closed states of doors can help define the boundaries between two rooms (sub-ranges). Furthermore, the robot should be aware of sub-ranges that are temporarily inaccessible due to closed doors and inform the user of this information if possible. Sub-ranges that are inaccessible due to closed doors during the robot's first exploration but are re-identified during later explorations are added to the map as new sub-ranges. As mentioned above, chair legs and table legs can be used to determine the boundaries of difficult-to-pass sub-ranges. However, chair legs can change their position due to chair use, which may result in different sub-range boundaries at different times. Over time, the boundaries of difficult-to-pass sub-ranges can be adjusted so that all chairs with a preset high probability are in sub-ranges identified as difficult to pass. That is, based on previously stored data on the location and size of obstacles, the frequency and therefore probability of encountering an obstacle at a certain location (i.e., the parameters of the probabilistic model) can be determined. For example, the frequency of chair legs appearing in a certain area can be obtained by measurement. Additionally or alternatively, the density of chair legs within a certain range, obtained through numerous measurements, can be assessed. Then, based on a probabilistic model, identified areas with clusters of obstacles can be adjusted so that obstacles with a pre-defined probability are located within those areas. Thus, if necessary, the boundaries of "difficult-to-pass" sub-ranges, which contain clusters of (potentially present) obstacles, can be adjusted.

[0046] Furthermore, there exist objects that, while generally remaining in a similar position within a room, may have their specific location slightly altered due to human use, such as a television sofa chair. Simultaneously, such objects may have a size that can be used to define sub-ranges. This could be, for example, "the area between the sofa and the armchair." For these objects (e.g., the television sofa chair), the most likely location is determined over time (e.g., based on the median, expected value, or mode). This location is then used for persistent mapping and subsequent user interaction (e.g., for user-operated and controlled robots).

[0047] Typically, users can be offered the following feasibility: to check and modify the automatically generated map divisions as needed. However, the goal of automatic dividing is to achieve the most realistic map divisions automatically and without user interaction.

[0048] Generally, it should be emphasized that when discussing "map delineation by robot," the delineation can be performed using a processor (including software) located within the robot, but also on a device connected to the robot, transmitting measurement data acquired by the robot to that device (e.g., via radio). Therefore, map delineation calculations can also be performed on a personal computer or on a server connected to the Internet. This is generally indistinguishable to human users.

[0049] By appropriately dividing a robot's operating area into sub-areas, the robot can perform tasks "smarter" and more efficiently. To better match the robot's behavior to user expectations, various characteristics (also called attributes) of the sub-areas can be detected, associated with, or used to form sub-areas. For example, there exists a characteristic that makes it easy for the robot to locate itself within its operating area, such as after being carried by the user to a dirty place. This location allows the robot to automatically return to its base point after cleaning. Favorable environmental characteristics for this location include, for example, ground type, characteristic (wall) color, WLAN field strength, or other electromagnetic field characteristics. Furthermore, small obstacles can provide the robot with clues about its position on a map during location. Here, the specific location of the obstacle need not be used, but only its (frequent) appearance in a certain area. Other characteristics directly affect the robot's behavior or make it possible for the robot to provide suggestions to the user. For example, information about the average level of soiling can be used to suggest the frequency of cleaning for a sub-area (or automatically determine the cleaning interval). When a sub-area is frequently and very unevenly soiled, the robot can suggest to the user that the sub-area be redivided (or the robot can automatically perform further subdivision).

[0050] Information about the floor type (tile, floor, carpet, non-slip, smooth, etc.) can be used to automatically select the appropriate cleaning program for the floor type or to recommend a cleaning program to the user. Furthermore, driving performance (e.g., maximum speed or minimum turning radius) can be automatically adjusted to, for example, correct for increased slippage on carpets. Such sub-ranges, or areas within a sub-range (i.e., where the robot frequently gets stuck (e.g., at the perimeter cables or similar) and can only be freed with the user's assistance), can be stored as characteristics of the sub-range. In the future, such areas can be avoided, cleaned with lower priority (e.g., at the end of the cleaning process), or cleaned only when the user is present.

[0051] As mentioned above, sub-areas identified as rooms can be associated with names (bedroom, hallway, etc.). This can be done by the user or the robot can automatically select the name. Based on the name of the sub-area, the robot can match its behavior. For example, the robot can suggest cleaning actions to the user based on the name associated with the sub-area, thus simplifying robot setup for user needs. For example, consider naming the area as a schedule. Therefore, a sub-area called a bedroom could be associated with a time period (e.g., 10 PM to 8 PM) during which the robot is not allowed to travel through the associated area. Another example is a sub-area called a small dining room (see...). Figure 7 (Subrange 320). This naming infers an enhanced state of soiling (e.g., debris on the ground), thus giving that subrange a high priority during cleaning. These examples demonstrate that the mapping of the robot and the (functional) naming of subranges, as explained above, can decisively influence the robot's subsequent behavior.

[0052] To expedite the cleaning of multiple sub-areas, they can be performed sequentially, minimizing transitional travel between sub-areas. This is ensured when the endpoint of the cleaning process for a sub-area is chosen such that the endpoint is near the starting point of the cleaning process for the next sub-area. Freely traversable areas can be cleaned very well along a zigzag path. The distance of the straight path segments of the zigzag path can be matched to the width of the sub-area to be cleaned, in order to obtain the most uniform cleaning results possible and to end the cleaning process of the sub-area at the desired location. A rectangular area should be cleaned, for example, starting at the upper left corner and ending at the lower right corner, along a zigzag path, with the straight path segments 11 extending horizontally (similar to...). Figure 10 B (The terms right, left, up, down, horizontal, and vertical are illustrated in the map here). Dividing the height of the rectangular sub-range by the maximum distance 'a' of the straight path segment 11 (for cleaning the coverage area) yields the minimum number of trajectories the robot must travel to completely cover the rectangular range. From this, the optimal distance for the path segment to reach the desired endpoint can now be determined. The optimal distance, along with the orientation (horizontal or vertical) of the zigzag path, can be associated with and stored for the relevant sub-range.

[0053] When the robot cleans a sub-area along a zigzag path, it can travel relatively quickly through straight path segments 11, while traversing curves 12 (at 180°) relatively slowly. To clean the sub-area as quickly as possible, it may be advantageous to traverse as few curves 12 as possible. When cleaning a rectangular sub-area, the zigzag path can be oriented such that the straight path segments 11 are parallel to the longest edge of the rectangular sub-area. When the sub-area has a more complex geometry than a rectangle (especially not a convex polygon), the orientation of the zigzag path can be decisive for whether the area can be completely cleaned in one go. According to... Figure 10 In the case of the example U-shaped sub-range, the sub-range can be shown as uniformly covering the area with vertically oriented zigzags (see example U-shaped sub-range). Figure 10 A). Utilizing horizontally oriented zigzags to create an uncleaned area U (see...) Figure 10 B). Therefore, as mentioned above, it is meaningful to associate the orientation of the bend with the relevant subrange and store the orientation of the bend, in addition to the optimal distance of the straight crankshaft path segment.

[0054] Another example is carpet cleaning, where the direction the robot travels along a planned path is crucial. In the case of long-pile carpets, the direction of travel can affect cleaning effectiveness, and varying directions can create undesirable striped patterns on the carpet. To avoid these striped patterns, cleaning can be performed only in the preferred direction, for example, while traveling along a zigzag path. Cleaning can be disabled by cutting off the brush and suction unit upon returning (in the opposite direction to the preferred direction). The preferred direction can be acquired by means of sensors or through user input, associated with relevant sub-ranges, and stored for those sub-ranges.

[0055] As explained, it is often undesirable for a robot to slowly traverse difficult areas (risking collisions with obstacles). Instead, the robot should bypass difficult areas. Therefore, areas identified as difficult (see above) can be associated with the attribute "areas to be avoided." The robot then avoids difficult areas except for planned cleaning. Other areas, such as expensive carpets, can also be marked with the attribute "areas to be avoided" by the user or automatically by the robot. Therefore, the relevant sub-areas are only considered when planning a path for transitional travel (in uncleaned conditions) from one point to another. Furthermore, the numerous obstacles in difficult areas can be a hindrance when cleaning along a zigzag path. Therefore, a specially matched cleaning strategy (instead of zigzag) can be used in difficult areas. This cleaning strategy can be particularly coordinated with minimizing the creation of isolated uncleaned areas while bypassing numerous obstacles. When such areas are created, the robot can store whether and where there is a path leading to such an uncleaned area or whether the area is completely blocked by adjacent obstacles (e.g., chair legs and table legs). In the latter case, the user can be informed about areas that have not been cleaned (due to inaccessibility).

[0056] When using a cleaning robot, there may not be enough time to completely clean the robot's coverage area. It is advantageous in this situation for the robot to automatically schedule cleaning time according to certain presets, such as time presets, and to perform cleaning according to this schedule. The schedule may consider, for example, (1.) the expected time to clean each sub-area to be cleaned, (2.) the time to travel from one sub-area to the next, (3.) the priority of the sub-areas, (4.) the time since the last cleaning of a range, and / or (5.) the degree of soiling of one or more sub-areas based on one or more previous surveys and cleaning trips.

[0057] To predict the duration for cleaning a specific sub-area, the robot can use empirical values ​​from previous cleaning trips and theoretical values ​​obtained through simulation. For example, the expected duration for a small, geometrically simple sub-area (e.g., the number of winding sections multiplied by the length of a section divided by the speed plus the robot's necessary turning time) can be used to formulate a prediction for a more complex area (composed of simple sub-areas). To determine the expected processing duration for multiple sub-areas, the duration for processing each sub-area and the duration for traveling between sub-areas are considered. An automatically generated cleaning schedule can be displayed to a human user, who can change the schedule as needed. Alternatively, the robot can suggest multiple cleaning schedules to the user, who can select one and change the selected schedule as needed. In another example, the robot can automatically begin cleaning according to an automatically generated schedule without user interaction. When the theoretical processing duration is preset, the robot can obtain the schedule based on attributes associated with the sub-area. Attributes in this case could be, for example, priority, expected processing time for each sub-area, and expected soiling level for each sub-area. After a set time has elapsed, the robot may interrupt processing, complete the current sub-range of processing, or exceed the set time until interrupted by the user. The principles illustrated above are explained below with reference to two examples.

[0058] Example 1 (Cleaning until interrupted by the user): In this example, Figures 1 to 7 An exemplary dwelling should utilize a quick cleaning program and a time preset of, for example, 15 minutes (e.g., because the user anticipates a visitor soon). In this case, the actual duration of cleaning need not be fixed (15 minutes), but can be extended or shortened by a few minutes depending on the actual arrival of the visitor. The time preset is a reference value. Therefore, it is expected that the robot will clean until it is interrupted by the user, but simultaneously clean the most urgent areas (i.e., the sub-areas with the highest priority) for, for example, 90% of the time. For this purpose, the user can inform the robot of the sub-areas with the highest priority in the preset or when invoking the quick cleaning program. This might be, for example, the entrance area (see...). Figure 3 (sub-range 200) and living room (see Figure 3 The two spaces together are too large to be completely cleaned within a predetermined timeframe. Therefore, it may be advantageous to further subdivide the sub-areas, especially the large living room 300, into sub-areas. Thus, for example, carpets (see...) Figure 4 Subrange 303) can have high priority and small dining room (see Figure 4The sub-area (320) has a high level of soiling (detected by the robot previously or inferred based on empirical values). It is now possible for the robot to determine that it can reliably clean either the corridor (200) and carpet (303) or only the dining area (320) within a predetermined time. For example, due to the greater cleaning benefits (e.g., area cleaned per unit time), the robot begins cleaning the corridor (see...). Figure 4 (sub-range 200) and carpets (see Figure 4 (sub-range 303), then clean the small dining room (see Figure 4 (320 sub-range) until the user stops cleaning.

[0059] Example 2 (Fixed Time Preset): In the second example, the robot is used, for example, in a department store that only cleans during its closing hours. Therefore, the time available for cleaning is limited and cannot be extended. The robot's operating area is so large that it cannot complete cleaning within the preset time. Therefore, it may be advantageous to preset priorities for different sub-areas of the robot's operating area. For example, a sub-area including the entrance area should be cleaned daily, while other sub-areas, where fewer customers typically linger, only need to be cleaned every three days and therefore have a lower priority. Based on this, the robot can have a temporary weekly work scheduling. It may also be advantageous, for example, for the robot to dynamically match its cleaning schedule to actual needs. For example, the expected level of soiling in a sub-area can be considered. This expected level of soiling is determined by the degree of soiling based on experience or the (measurable) number of actual customers in that area. The number of customers is obtained, for example, from a database, where the data is manually entered by department store staff or automatically detected by sensors such as motion detectors, photoelectric beam detectors, or cameras combined with image processing. Alternatively, department store managers may request short-term cleaning of sub-areas that were not previously included in the plan, because these sub-areas have become particularly soiled, for example, due to an accident. The robot can then automatically include the new sub-areas in the plan and postpone the cleaning of other sub-areas to the next day to adhere to the pre-set timeline.

[0060] The following describes how robot maps divided into multiple sub-scopes can be used to improve robot-user communication and interaction. As mentioned above, the division of robot usage areas is usually intuitive for human users. However, this is often a very difficult task for machines and does not always lead to the desired results (robots lack human intuition). Therefore, users should be able to match the robot-generated division of the space to their requirements. The user's possibilities here range from changing the division by moving the boundaries between adjacent sub-scopes to further dividing the existing sub-scopes until a newly defined user-defined sub-scope is established. These sub-scopes can be, for example, so-called "no-entry zones" into which the robot is not allowed to automatically travel. The sub-scopes (suggested by the robot and, if possible, changed by the user) can therefore be assigned additional attributes by the user, which can also affect the robot's behavior during operation (in the same way as the attributes described above, which can be automatically associated with the sub-scopes). Possible attributes include (1.) Priority (how important the area is to the user), (2.) Surface type (which cleaning strategy should be used (wiping with a brush, wetting, vacuuming, etc.)?), and (3.) Accessibility (whether the relevant sub-area is fully drivable).

[0061] Another possibility is that users can influence the automatic zoning process by, for example, approving or rejecting the robot's assumptions. To do this, users can "designate" the robot to divide its area of ​​use. Users can then influence the zoning by, for example, adding doors to the map or deleting doors incorrectly identified by the robot. The robot can then automatically re-divide the map based on information provided by the user. Furthermore, users can set relevant parameters (e.g., typical door widths, interior wall thicknesses, basic house shape, etc.) so that the robot can generate appropriate zoning of its area of ​​use based on these parameters.

[0062] In a culture, certain sub-areas (e.g., bedrooms) within a robot's usage area (e.g., a dwelling) often resemble each other. Therefore, when a user names a sub-area identified as a room "bedroom," this can be used as a criterion for further automatic subdivision of the bedroom, particularly for formulating a probabilistic model that matches a typical bedroom. In this way, a two-meter-sized object in a bedroom can be reliably identified as a bed. In a room called "kitchen," an object of the same size might be detected as a kitchen workbench. Naming sub-areas is achieved, for example, by selecting a sub-area drawn on a map and then choosing a name from a list preset by the robot. Naming rooms freely selectable by the user is also feasible. To simplify the user's orientation on the robot-generated map while considering the purpose of naming sub-areas, the user can select a sub-area, and then the robot moves within that area. In this way, the user can now recognize the direct relationship between the shown sub-areas and the actual robot position within their dwelling and thus easily assign appropriate names to the sub-areas.

[0063] The premise for users to name sub-ranges of the robot's usage area is that the robot has already generated a division of its usage area that is good enough for the user to identify the bedroom itself (e.g., in...). Figure 3 (A rough division within the map). Users who do not wish to work with such a temporary map can, according to an alternative embodiment, inform the robot which room it is currently in during its first reconnaissance trip (i.e., during the robot's operational phase). Therefore, the name of the room the robot is currently in can be directly used to divide the room into sub-areas. In this way, a high-quality, well-defined map can be presented to the user immediately from the outset. Here, the user can accompany the robot during the reconnaissance trip. Alternatively, the user can, for example, use a remote control to selectively guide the robot to areas that are important to them and then name them. Here, the user can also point out special areas such as the restricted areas mentioned above.

[0064] According to another embodiment, the robot is configured to perform map division or improve the characteristics of identified sub-areas by directly asking the user questions about assumptions made during the survey drive. In this regard, communication between the robot and the user can be achieved, for example, relatively simply by means of a software application installed on a portable device (e.g., a tablet, telephone, etc.). This can especially occur before showing the user the first version of the map, to improve the quality of the map displayed by the robot. Thus, the robot could, for example, ask whether an area difficult to traverse due to tables and chairs is a regularly used dining area. When the answer is yes, the robot can automatically draw conclusions from the answer and associate certain attributes with the relevant sub-area. In the case of a dining area, the robot can assign a higher priority to this sub-area during cleaning, based on the premise that this area is more soiled than other areas. The user may approve, reject, or change the priority of the division.

[0065] When a robot is deployed in a new, unknown area, it can obtain predictive information about its area of ​​use by specifically questioning the user, such as the expected size and number of rooms in the housing (robot's area of ​​use). In particular, the user can inform the robot about deviations from typical housing boundaries or information about the commercial area, such as office floors. This information allows the robot to match parameters relevant to the division of its area of ​​use (e.g., probabilistic models used to formulate hypotheses) to generate better map divisions and / or associate appropriate attributes (e.g., regarding cleaning strategies) with identified sub-areas during subsequent reconnaissance runs.

[0066] To facilitate interaction between human users and robots, a human-machine interface (HMI) can be used to allow the robot to present information (such as a map of the robot's operating area) to the user or to receive user input for robot control. HMIs can be implemented, for example, on tablets (or personal computers, mobile phones, etc.) using software applications. Robot-generated maps are often quite complex and difficult for inexperienced viewers to understand (see example...). Figure 1 To facilitate "smooth" interaction between the robot and the user, the information presented to the user can be filtered and processed. This makes it easy for the user to understand the displayed information and subsequently give the robot the desired instructions. To avoid confusing the user, small details and obstacles can be omitted from the displayed map. This includes, for example, table legs and chair legs, but also shoes or other objects around the user. Typically, the user will be able to recognize a floor plan of their home and identify the rooms within that plan. This is based on measurement data (see...). Figure 1It can automatically generate floor plans; the robot primarily identifies very rough representations of housing in outline form, such as in... Figure 2 As shown in the diagram. Mark the interior walls within this outline to obtain a floor plan of the dwelling, as shown in... Figure 3 As shown in the diagram. The method for automatically determining the scope of the robot's use has been described above.

[0067] According to Figure 3 In the floor plan, bedroom 100, hallway 200, and living room 300 can typically be identified without difficulty by a human user. To further simplify the user-oriented mapping, the space can be shown as areas of different colors, for example. To identify the outline of the dwelling, obstacles and objects entirely within the robot's operating area are ignored. Thus, an area is obtained that defines its boundaries entirely outwards, but also includes numerous obstacles such as interior walls or furniture extending into the area. These obstacles are also filtered out or ignored for the floor plan representation, in order to obtain a simplified map of the entire robot's operating area.

[0068] The simplified map of the robot's operating area can now be automatically supplemented with elements easily identifiable to the user, such as interior walls, doors, and prominent furniture, to obtain a simple floor plan of the dwelling. Sensor data (e.g., the aforementioned limit lines, see...) Figure 1 The robot automatically divides the usable area into sub-areas, and user input from previous user interactions can be used as a basis for this. From this, the robot can now establish assumptions about the orientation of the interior walls and the cabinets standing before them, and finally represent these assumptions on a map. Especially for simplified mapping, the above-described... Figure 9The described method involves dividing a space by sequentially segmenting rectangles. When the name of a space is known, it is also considered in a simplified map representation because it is known, for example, to the user, allowing for faster understanding. This can be done by displaying the corresponding space name or by providing a rough representation of typical objects within the space. For example, an object identified as a bed in a bedroom is also (schematically) shown as a bed in the room. To help the user determine other orientation points, the locations of objects known to the robot, such as the robot's base point, can be plotted on the displayed map. When the robot is connected to a WLAN (Wireless Local Area Network), it can approximate the location of the WLAN access point or other devices present in the wireless network by analyzing the field strength and mark that location on the map. If the robot has a camera, it can use image processing to identify objects (such as table or cabinet types) and roughly plot these objects on the map. For this purpose, for example, an image database with sketches of typical furniture can be used. Other methods for determining the location of objects and identifying them (e.g., tagging using RFID (Radio-Frequency Identification)) are known and will not be discussed further here.

[0069] In daily life, users make various requests of robots. For example, a user might ask them to clean the entire house, or clean specific areas of the house (e.g., the living room). Figure 3 (sub-range 300)) or a part of the clean space (e.g., a carpet in the living room) Figure 6 (Sub-range 303). Here, the user intuitively considers this small area as a sub-range of the living room, which in turn is a sub-range of the entire house. An intuitive, hierarchical representation of the house for human users should be reflected in the division and depiction of the robot's operating area on the map. This will be illustrated exemplarily below. Figures 1 to 7 Let's use an example of housing to explain.

[0070] To ensure users can easily understand the map created by the robot, the first step is to present the map to the user on the FDVII as shown in... Figure 3 A strongly simplified floor plan, like the one in the image. Additional details can be shown when needed and according to user instructions. For example, the user can view the simplified floor plan (…). Figure 3 The living room (300) can be selected by tapping on the map displayed by the FDVII or by using a zoom gesture to enlarge the desired area. The corresponding map portion then zooms in and displays more details. By tapping again (or through other input methods such as mouse clicks, keyboard input, voice input, etc.), the user can select the area and choose an action, such as immediately cleaning the displayed sub-area, scheduling functions, or viewing more details.

[0071] Figure 4 An example is shown where living room 300 is further divided according to various floor coverings such as carpet (number 303) and tile flooring (number 302). Figure 5 The central living room is further divided by identifying the small dining room 320, with its table and chairs, as a difficult-to-drive area. Figure 6 The free range 310 is further divided into smaller, more regular sub-ranges 311, 312, and 313. The selection and order of the methods used for this division can be arbitrarily combined. When a user uses the robot on different floors of a building, these floors can be logically incorporated into and displayed within the hierarchical division of the robot's usage range. Therefore, different floors of a building can be schematically displayed via an HMI, for example. When a user selects a floor, for example, by tapping, the map stored for that floor is displayed in its simplest form (similar to...). Figure 3 (As shown in the image). Here, the user can further zoom in and / or give commands to the robot, as described above. For example, a zoom-out gesture can be used to re-enact views of a house with different floors.

Claims

1. A method for determining the position of an autonomous mobile robot in a map of the robot's operating range, wherein at least one region having at least one group of obstacles is drawn in the map; the method includes: The robot detects obstacles and determines their size and location using at least one sensor located on the robot. Obtain the position of the robot relative to a region with a group of obstacles; The robot's position on the map is obtained based on its relative position and the location of an area with obstacle clusters drawn on the map.

2. A method for automatically delineating the usable area of ​​an autonomous, movable robot, the method comprising: The robot detects obstacles and determines their size and location on the map using sensors deployed on the robot. The robot's operating range is defined based on detected obstacles, wherein movable obstacles are identified and ignored when defining the robot's operating range, so that the definition is independent of the specific location of the movable obstacles.

3. The method according to claim 2, wherein, An obstacle is identified as movable when it is not detected in the same place at different times.

4. The method according to claim 2, wherein, An obstacle is identified as movable when it is detected at different times at different locations separated by a minimum distance from each other.

5. The method according to any one of claims 2-4, wherein the obstacle is identified as movable when it is classified as a movable object by means of a camera and image processing.

6. The method according to any one of claims 2-5, wherein the obstacle identified as movable is associated with a corresponding attribute.

7. The method according to any one of claims 2-5, wherein the map is displayed through a human-computer interface and movable obstacles are highlighted.

8. The method according to any one of claims 2-5, wherein, The map is displayed through a human-computer interface, and obstacles can be marked as movable by user input. The movable obstacles are associated with corresponding attributes, and the attributes are stored.

9. A method for automatically delineating the usable area of ​​an autonomous, movable robot, the method comprising: The robot detects obstacles and determines their size and location on the map using sensors deployed on the robot. The map is analyzed by means of a processor, wherein assumptions about the functionality of possible sub-region boundaries and / or individual identified obstacles are automatically established based on at least one preset criterion; Based on the established assumptions, the map of the robot's usage area is divided into sub-areas.

10. The method according to claim 9, wherein, The robot detects obstacles in the form of restriction lines, which are lines that the robot cannot traverse.

11. The method according to claim 9 or 10, wherein, Each identified obstacle functions as at least one of the following: a door, an interior wall, an exterior wall, a single piece of furniture, a chair leg / table leg, a type of floor covering, and a change in the type of floor covering.

12. The method according to any one of claims 9-11, wherein, The at least one pre-preset criterion used to establish the hypothesis includes at least one of the following: the distance between the two limit lines is within a pre-preset interval; The two limit lines are on a straight line; the function name of the scope of use is preset by the user.

13. The method according to any one of claims 9-12, wherein, The hypotheses about the functions of each identified obstacle are presented in the human-machine interface, and the user is given the option to reject or approve the feasibility of the automatically generated hypotheses.

14. The method according to any one of claims 9-13, wherein, In cases where there are at least two contradictory assumptions, reject at least one.

15. The method according to any one of claims 9-14, wherein, Each hypothesis is associated with a number of points, the number of which depends on the at least one criterion that led to the hypothesis.

16. The method according to claim 15, wherein, The hypothesis is rejected if a certain minimum quantity is not reached.

17. The method according to any one of claims 9-16, wherein, Each hypothesis association has a probability.

18. The method according to any one of claims 9-17, wherein, At least one subrange is associated with at least one attribute that affects the handling of the subrange by the movable robot, the subrange depending on one or more established assumptions.

19. The method according to any one of claims 9-18, wherein, Images of the robot's operating area are captured by a camera positioned at the robot, and objects within the operating area are identified in the images by means of digital image processing.

20. The method according to claim 19, wherein, At least one of the predefined criteria used to establish hypotheses about a subrange is considered in relation to the object being identified by means of digital image processing.

21. A method for automatically delineating the robot's operating range as an autonomous, movable robot, the method comprising: The robot detects obstacles in the form of limiting lines and determines the size and location of the obstacles on the map using sensors deployed on the robot. The robot's operating range is divided into multiple sub-ranges based on the detection limit lines and preset parameters; A map is displayed on the human-machine interface, the map including sub-ranges and detected doorways and passageways; Waiting for user input regarding presettable parameters, the division of sub-ranges of the robot's operating area, the location of doors, and / or the naming of the functions of the identified sub-ranges; The scope of the robot's use is adjusted based on the user input.

22. The method according to claim 21, wherein, Taking user input into account, the robot's usage area is redefined into multiple sub-areas.

23. The method according to claim 21 or 22, wherein, The door between the two rooms is detected and plotted on the map, and the robot's operating area is divided into multiple sub-areas, taking into account the detected door.

24. The method according to any one of claims 21-23, wherein, Taking into account previous user input, sub-ranges are automatically divided into other sub-ranges.

25. The method according to any one of claims 21-24, wherein, The sub-range depends on the user input associated with attributes, which affect the processing method, timing, and / or frequency of the corresponding sub-range.

26. The method according to any one of claims 21-25, wherein, The user input function regarding the identified sub-range is to name a room or a portion of a room, and to divide the room or the portion of the room into other sub-regions based on the name.

27. A method for automatically delineating the robot's operating range as an autonomous, movable robot, the method comprising: The robot detects obstacles in the form of limiting lines and determines the size and location of the obstacles on the map using sensors deployed on the robot. Based on the detected limit lines and preset parameters, the robot's operating range is divided into multiple sub-ranges at multiple hierarchical levels. In the first level of the hierarchical levels, the robot's operating range is divided into multiple first-level sub-ranges, and in the second level of the hierarchical levels, the multiple first-level sub-ranges are divided into second-level sub-ranges.

28. The method of claim 27, further comprising: The human-machine interface displays a map of the robot's operating range, showing the grading levels that can be selected by the user.

29. A method for automatically planning the operation of an autonomous, movable robot in multiple sub-ranges of a robot's operating range, the method comprising: The robot reads the target processing duration. The sub-ranges to be processed within the processing duration and their order are automatically selected based on attributes associated with the sub-ranges, such as the priority of each sub-range and / or the expected processing duration, and the target processing duration.

30. The method according to claim 29, wherein, The priority associated with a subrange depends on the expected soiling state of the corresponding subrange, which is automatically determined based on measurements of soiling state obtained during previous cleaning operations.

31. The method according to claim 29, wherein, The priority associated with a sub-range depends on the expected soiling state of the corresponding sub-range, which is automatically determined based on the human activity in the corresponding sub-range as obtained by the robot.

32. The method according to claim 31, wherein, The robot obtains information about human activity in a corresponding sub-range by querying a database, which manually and / or automatically stores data on the number of people in the corresponding sub-range within at least a certain time period.

33. The method according to claim 32, wherein, Within the corresponding sub-scope, the number of people within a certain time period is obtained using at least one sensor, such as a camera and an image processing unit.

34. The method according to any one of claims 29-33, wherein, The priority of a sub-scope depends on whether the corresponding sub-scope was treated or fully treated in a previous cleaning process.

35. A method for automatically delineating the robot's operating range as an autonomous, movable robot, the method comprising: The robot detects obstacles in the form of limiting lines and determines the size and location of the obstacles on the map using sensors deployed on the robot. The first rectangle covers the constraint line, such that every point reachable by the robot is within the rectangle; The first rectangle is divided into at least two adjacent second rectangles, wherein one or more boundary lines between the two adjacent second rectangles extend through a limiting line, which is obtained according to a preset criterion.

36. The method according to claim 35, further comprising: At least a portion of the limiting line is oriented parallel to and perpendicular to a preferred direction, wherein the side edges of the first rectangle are parallel to the preferred direction.

37. The method according to claim 35 or 36, wherein, At least one second rectangle is divided into at least two adjacent third rectangles, wherein one or more boundary lines between the two adjacent third rectangles extend through a limiting line determined according to a predefined criterion.

38. The method according to any one of claims 35-37, wherein, The first or second rectangle is divided in such a way that the resulting second or third rectangles are adjacent to each other along a constraint line that satisfies at least one of the following properties: The restriction lines represent walls with doorways; The restriction lines represent walls; The restriction lines represent the boundaries between different ground cover materials.

39. The method according to any one of claims 35-38, wherein, Two rectangles can be connected to form more complex sub-ranges according to preset criteria.

40. The method of claim 39, wherein, The pre-defined criteria are: There are no obstacles between the two rectangles to be connected; or At least one of the two rectangles is below the minimum length, minimum width, and / or minimum size.

41. A method for automatically delineating the robot's operating range as an autonomous, movable robot, the method comprising: The robot detects obstacles and determines their size and location on the map using sensors deployed on the robot. The robot's operating range is defined based on the detected obstacles. In order to determine the location of at least one of the detected obstacles, locations obtained at different points in the past are used.

42. The method according to claim 41, wherein, The expected position is obtained based on the positions of obstacles acquired at different points in the past, and the expected position is used to define the robot's operating range, wherein the expected position corresponds, for example, to the expected value, median or average value of the position.

43. The method according to claim 41 or 42, wherein, The map is displayed through a human-computer interface, and the at least one obstacle is shown at a location corresponding to the intended location.

44. A method for automatically delineating the robot's operating range as an autonomous, movable robot, the method comprising: The robot detects obstacles and determines their size and location on the map using sensors deployed on the robot. The processor analyzes the map to identify areas with groups of obstacles; By using the processor, a first sub-range is defined such that the first sub-range includes the identified group.

45. The method according to claim 44, wherein, The group has at least two obstacles, and the distance between each obstacle and its adjacent obstacle in the group does not exceed a preset maximum distance.

46. ​​The method of claim 44, wherein, Analyzing the map with the aid of a processor to identify areas with groups of obstacles includes: Check if each detected obstacle has an adjacent obstacle within a preset maximum distance; If the obstacle and its adjacent obstacles are not associated with the group, then the obstacle and its adjacent obstacles are associated with the group.

47. The method according to any one of claims 44-46, wherein, The identification of groups only considers obstacles that are each smaller than a preset maximum value.

48. The method according to any one of claims 44-47, wherein, A group is only identified and processed when it contains more than the minimum number of preset obstacles.

49. The method according to any one of claims 44-48, wherein, The obstacles in the group are so close together that it is impossible to travel straight through the group while maintaining a safe distance.

50. The method according to claim 49, wherein, The analysis of the map includes: Based on the distance between obstacles, the robot is detected when it travels straight through the area and is blocked by the obstacles.

51. The method according to any one of claims 44-50, further comprising: Associate the first subrange with a first attribute, which represents "difficult to pass through"; The first subrange and the first attribute are stored together in the map.

52. The method according to any one of claims 44-51, wherein, The first sub-range is limited to: The boundaries of the first sub-range are determined by means of a right-angled polygon surrounding the group of obstacles, wherein the right-angled polygon has a first minimum distance from the obstacles.

53. The method according to claim 52, further comprising: Check whether there is at least one such region that is located between the first sub-range and another sub-range or between the first sub-range and another obstacle, and whether the size of the region along the spatial direction is less than the minimum value; Expand the first sub-range so that the region is surrounded by the first sub-range.

54. The method according to any one of claims 44-53, further comprising: The map is stored, including the size and location of detected obstacles. Analysis of the map also includes: The parameters of the probabilistic model are calculated based on the stored data about the size and location of the detected obstacles; Based on the probability model, the sub-range is matched with the obstacle group, so that the obstacles are within the sub-range with a preset probability.

55. The method according to claim 54, wherein, The parameters of the probability model are based on data about the size and location of the detected obstacles, which are acquired within a certain time period and / or a certain number of robot uses.

56. The method according to any one of claims 44-55, wherein, The first subrange is associated with at least one attribute that affects the handling of the subrange by the movable robot.

57. An autonomous robot connected to an internal and / or external data processing device, the data processing device being configured to execute a software program that, when executed by the data processing device, causes the robot to perform the method according to any one of claims 1-56.