EP4551961A1 - Verfahren zum bestimmen einer position eines vorbestimmten objekts - Google Patents

Verfahren zum bestimmen einer position eines vorbestimmten objekts

Info

Publication number
EP4551961A1
EP4551961A1 EP23738665.1A EP23738665A EP4551961A1 EP 4551961 A1 EP4551961 A1 EP 4551961A1 EP 23738665 A EP23738665 A EP 23738665A EP 4551961 A1 EP4551961 A1 EP 4551961A1
Authority
EP
European Patent Office
Prior art keywords
points
mobile device
predetermined
predetermined object
docking station
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.)
Pending
Application number
EP23738665.1A
Other languages
English (en)
French (fr)
Inventor
Michal KRAMARCZYK
Dominik KIRCHNER
Marek MALINOWSKI
Kristina Daniel
Maximilian Wenger
Andrey Rudenko
Marco Lampacrescia
Thilak Raj CHIKMAGALORE
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority claimed from PCT/EP2023/068162 external-priority patent/WO2024008615A1/de
Publication of EP4551961A1 publication Critical patent/EP4551961A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • G01S17/42Simultaneous measurement of distance and other co-ordinates
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/4802Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00 using analysis of echo signal for target characterisation; Target signature; Target cross-section
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/4808Evaluating distance, position or velocity data
    • 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/20Control system inputs
    • G05D1/24Arrangements for determining position or orientation
    • G05D1/244Arrangements for determining position or orientation using passive navigation aids external to the vehicle, e.g. markers, reflectors or magnetic means
    • 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/60Intended control result
    • G05D1/656Interaction with payloads or external entities
    • G05D1/661Docking at a base station
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2105/00Specific applications of the controlled vehicles
    • G05D2105/10Specific applications of the controlled vehicles for cleaning, vacuuming or polishing
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2107/00Specific environments of the controlled vehicles
    • G05D2107/40Indoor domestic environment
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2109/00Types of controlled vehicles
    • G05D2109/10Land vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2111/00Details of signals used for control of position, course, altitude or attitude of land, water, air or space vehicles
    • G05D2111/10Optical signals
    • G05D2111/17Coherent light, e.g. laser signals

Definitions

  • the present invention relates to a method for determining a position of a predetermined object, in particular a docking station, in an environment in which a mobile device, in particular a robot, is located, as well as a system for data processing, a mobile device, an object with or for Use with a system, and a computer program for carrying it out.
  • Mobile devices such as robots typically move in an environment, in particular an environment to be processed or a work area, such as an apartment or in a garden. Such a mobile device should typically move again and again to predetermined positions or objects in the environment, such as to a docking station where the mobile device can be charged, for example.
  • the invention generally deals with mobile devices that move or are intended to move in an environment or, for example, in a work area, and in particular with determining a position of predetermined objects in such an environment.
  • Examples of such mobile devices include robots and/or drones and/or vehicles that move in a partially automated or (fully) automated manner (on land, water or in the air).
  • Suitable robots include, for example, household robots such as vacuum and/or mopping robots, floor or street cleaning devices or lawn mowing robots, as well as other so-called service robots, such as at least partially automated moving vehicles, such as passenger transport vehicles or goods transport vehicles (also so-called industrial trucks, e.g. in warehouses). ), but also aircraft such as so-called drones or watercraft.
  • Such a mobile device in particular has a control and/or regulating unit and a drive unit for moving the mobile device, so that the mobile device can be moved in the environment, for example also along a movement path or a trajectory.
  • a mobile device can have one or more sensors by means of which the environment or information in the environment can be recorded.
  • Mobile devices such as B. household and service robots are usually equipped with a built-in power supply (energy storage, especially battery), so that the mobile device must automatically recognize and connect to an external power source in order to charge itself.
  • an external power source is typically provided at a so-called docking station.
  • a docking station for mobile devices or robots has an electrical charging system with a series of contacts. The complementary contacts on the robot enable it to detect the contact point and receive an electrical charging current.
  • a docking station can also serve other purposes.
  • a loading and/or unloading process of goods to be transported can take place at a docking station (this can be done manually and/or automatically).
  • the battery can also be charged, for example.
  • a laser scan in particular a 2D laser scanner (e.g. a so-called lidar sensor), is, for example, a cost-efficient sensor solution for a mobile robot.
  • a 2D laser scanner e.g. a so-called lidar sensor
  • its limited sensing capabilities make it difficult to detect the docking station with a scan or 2D scan alone.
  • a predetermined object such as a docking station in an environment, based on the number of points in the environment, the points in particular each being characteristic of a distance between the mobile device and objects in the environment are.
  • a typical example of such a set of points is a so-called lidar point cloud, which results from a lidar scan.
  • This amount of points is provided. For example, this can be the case by receiving a lidar point cloud from a lidar sensor on the mobile device.
  • This set of points is then analyzed with respect to a predetermined relationship between several points of the set of points, the predetermined relationship being determined by an outer contour of the predetermined object.
  • a preferred example of such a predetermined relationship is that points lie on a line of a certain length.
  • this analyzing is done by determining several groups of points from the set of points and then analyzing each of these groups with respect to the predetermined relationship. This determination of several groups can also be referred to as clustering.
  • a group of points from the set - or one of several groups of points from the set - fulfill the predetermined relationship, for example lie on a line of a certain length, or at least lie on a line of the predetermined length within predetermined tolerances, this will Group of points determined as a subset of points. This subset then shows in particular which object it is.
  • the group that has the shortest distance from the mobile device can preferably be determined as the subset.
  • the smallest distance can, for example, apply on average to every point in the group or to a middle point in the group.
  • That group can be determined as the subset that best fulfills the specified relationship, i.e. corresponds most precisely to the specific length.
  • the position of the predetermined object is then determined; In particular, navigation information for the mobile device is also determined based on the position of the predetermined object.
  • an outer contour of the predetermined object is searched for in the existing set of points, for example the lidar point cloud, or an image of this outer contour through the set of points.
  • a predetermined object that is to be recognized such as the docking station
  • a flat plate can be attached to the object or the docking station, which is arranged at the level of the lidar sensor of the mobile device (or another sensor) and has a certain width in the detection direction of the sensor, for example parallel to a surface , on which this is located mobile device moves.
  • This plate as an outer contour of the object, then results in a subset of points in the lidar scan (or set of points) that lie on a line. This line then has (at least approximately) a length that corresponds to the mentioned width of the plate.
  • the predetermined relationship includes that the plurality of points lie within a two- or three-dimensional area predetermined by the outer contour of the predetermined object, in particular lie on a line of a predetermined length.
  • the (straight) line other relationships also come into consideration; For example, it can be provided that the several points should lie on a circular arc section or another curved line.
  • the length and/or the radius can be specified. It is particularly useful to form a simple geometric shape on the outer contour of the predetermined object, which can then be easily found in the set of points. It goes without saying that this contour does not necessarily have to be specifically designed; Existing contours can also be used.
  • the one or at least one, preferably each, of the multiple groups of points that fulfill the predetermined relationship are analyzed among themselves with regard to a predetermined pattern of points of the respective group. This occurs in particular after the analysis regarding the given relationship, but before determining the subset.
  • the one or more of the analyzed groups that corresponds to the given pattern is then determined as the subset.
  • the specified pattern includes a variation of the intensity values of the points.
  • the variation of intensity values can be determined in particular by a variation of a reflectivity of a surface of the predetermined object in the area of the contour.
  • predetermined patterns may include at least two, preferably at least three, areas that alternately have intensity values above an upper threshold and below a lower threshold.
  • the threshold values relate to an intensity of the points, with the upper threshold indicating a higher intensity than the lower threshold.
  • a variation in reflectivity can be achieved on the object or its surface, for example through different colors or matt and shiny areas. However, certain coatings in certain areas are also conceivable in order to increase or reduce reflectivity.
  • a pattern of such variation in reflectivity then affects the intensity of the points, which correspondingly have a pattern of variation in intensity values. For example, if the points are detected using lidar or laser ranging, points corresponding to lidar beams that have been reflected from a surface with lower reflectivity will have a lower intensity than those that have been reflected from a surface with higher reflectivity.
  • lidar laser distance measurement
  • a lidar sensor a time-of-flight camera, a time-of-flight depth camera or, in general, a time-of-flight sensor can also be used.
  • a specific object such as the docking station can be identified even more precisely. For example, if several groups of points meet the specified relationship, i.e. lie on a line of a certain length, the desired object can be identified from them. For example, a box in the environment can provide a comparable relationship between the points as the docking station.
  • the desired object can be provided with the pattern of variation in reflectivity. In this context it should be mentioned that in practice only one of several groups will fulfill the pattern, since this is explicitly specified and, in particular, can be chosen or specified very specifically. In the event that only a group of points fulfills the specified relationship, the pattern can also be analyzed. In this case this is a verification. If only the switches were recorded in the example above, this would otherwise be identified as the docking station, for example.
  • a new set of points that is different from the set of points is preferably provided, in particular after moving the mobile device. The procedure mentioned above can then be carried out again.
  • a position and/or orientation of the mobile device relative to the predetermined object is also determined based on the position of the predetermined object.
  • Navigation information and in particular also movement control variables, are then determined for the mobile device in order to move the mobile device to the predetermined object. For example, a so-called docking maneuver can then be carried out to dock the mobile device to the docking station.
  • the determination of the position and/or orientation of the mobile device relative to the predetermined object is in particular further based on at least one property of the predetermined object and/or the environment, which before the property has an effect on the points.
  • This at least one property includes, for example, a reflectivity of a surface of the predetermined object (whereby the reflectivity can be considered here in particular independently of the pattern mentioned) and/or an inclination of a surface in front of the predetermined object. This makes it even easier to approach the predetermined object or dock it to the docking station.
  • a potential, e.g. estimated, position of the predetermined object is first provided. Based on the potential position of the predetermined object, the position as explained above and in particular the navigation information are then determined in order to move the mobile device to the predetermined object. If the predetermined object cannot be reached with the navigation information or has not been reached, a different potential position of the predetermined object can in particular be provided. The procedure can then be carried out again.
  • a data processing system comprises means for carrying out the method according to the invention or its method steps.
  • the system can be a computer or server, for example in a so-called cloud or cloud environment. From there - in the case of an application for a mobile device - the position of the predetermined object can be transmitted to the mobile device (e.g. via a wireless data connection). Likewise, information about the environment, such as the number of points, can be transmitted from the mobile device to the system.
  • a data processing system is a computer or a control device in such a mobile device.
  • the invention also relates to a mobile device that is set up to provide a set of points in an environment and to obtain a position of a predetermined object in the environment that has been determined from the set of points according to a method according to the invention, and in particular to use for navigation,
  • the mobile device preferably has a distance measurement or lidar sensor for detecting the number of points in the environment, more preferably a control and/or regulating unit and a drive unit for moving the mobile device.
  • the data processing system can also be included in the device.
  • the mobile device is preferably an at least partially automated moving vehicle, in particular as a passenger transport vehicle or as a goods transport vehicle, and/or as a robot, in particular as a household robot, e.g. vacuum and/or mopping robot, floor or street cleaning device or lawn mowing robot, and/or as a drone educated.
  • a robot in particular as a household robot, e.g. vacuum and/or mopping robot, floor or street cleaning device or lawn mowing robot, and/or as a drone educated.
  • the invention also relates to an object, in particular a docking station, with or for use with a data processing system according to the invention or a mobile device according to the invention.
  • the object has an outer contour, based on which a relationship between several points of the set of points can be determined.
  • the object can have the flat plate mentioned, which has a certain width. It is also useful if this outer contour or plate is at the level of the distance measuring or lidar sensor of the mobile device.
  • the object preferably also has a variation of a reflectivity of a surface in the area of the contour, for example a correspondingly predetermined pattern. It is conceivable, for example, to alternate different colors or alternate matt and shiny areas.
  • a machine-readable storage medium is provided with a computer program stored thereon as described above.
  • Suitable storage media or data carriers for providing the computer program are in particular magnetic, optical and electrical memories, such as hard drives, flash memories, EEPROMs, DVDs, etc.
  • Figure 1 shows schematically a mobile device and a predetermined object in an environment to explain the invention in a preferred embodiment.
  • Figures 2a, 2b and 2c show schematically the mobile device and the predetermined object from Figure 1 in other views.
  • Figure 3 shows schematically a method according to the invention in a preferred embodiment.
  • Figure 4 shows schematically a method according to the invention in a further preferred embodiment.
  • FIGS. 5a, 5b, 5c and 5d show schematic diagrams to explain the invention in a preferred embodiment.
  • FIGS. 6a, 6b and 6c show schematic diagrams to explain the invention in a preferred embodiment. Embodiment(s) of the invention
  • the mobile device 100 is, for example, a vacuum cleaner robot with a control or regulating unit 102 and a drive unit 104 (with wheels) for moving the vacuum cleaner robot 100 in the environment 120, for example an apartment or a room.
  • the vacuum cleaner robot 100 has, for example, a sensor 106 designed as a 2D lidar sensor with a detection field (indicated by dashed lines).
  • the detection field is chosen to be relatively small here; In practice, the field of view can also be up to 360° (e.g. at least 180° or at least 270°).
  • the vacuum cleaner robot 100 has a system 108 for data processing, for example a control device, by means of which data can be exchanged with a higher-level system 110 for data processing, for example via an indicated radio connection.
  • a system 110 eg a server, it can also stand for a so-called cloud
  • navigation information can be determined, which is then transmitted to the system 108 in the vacuum cleaner robot 100, according to which it should then be operated.
  • navigation information is determined in the system 108 itself or is otherwise received there.
  • the system 108 can, for example, also receive control information that has been determined based on navigation information and according to which the control or regulation unit 102 can move the vacuum cleaner robot 100 via the drive unit 104.
  • a docking station 130 is shown in the environment 120 as an example of a predetermined object.
  • the docking station 130 has, for example, contacts 132 (eg electrical contacts) for charging an energy storage device of the vacuum cleaner robot 100, and, for example, a plate with a flat plane 134 on one side (a surface).
  • the flat plane 132 is an example of an outer geometric contour of the object or the docking station 130.
  • FIGs 2a and 2b Further different views of the vacuum cleaner robot 100 and in particular the docking station 130 are shown in Figures 2a and 2b. While a top view can be seen in FIG moves and on the other hand the docking station is stationary.
  • the flat plane 134 is at the level of the 2D lidar sensor 106, the height of which above the ground 122 is designated HS. This ensures that the 2D lidar sensor can capture the flat plane 134. With a different sensor or, for example, a 3D lidear sensor, this does not need to be taken into account or paid less attention to.
  • FIG. 2b shows the docking station 130 and in particular the flat plane 134 in a front view, as can be seen, for example, from the perspective of the vacuum cleaner robot 100 or the 2D lidar sensor.
  • Two concrete dimensions of the flat plane 134 are now shown here, namely its width B and its height H. While the height H, for example, serves to provide a certain amount of leeway for the detection with the 2D lidar sensor or the positioning at the height of the 2D lidar sensor allows (e.g. even on uneven ground), the width B serves to identify the flat plane 134 in a lidar scan, a so-called point cloud, as will be explained below.
  • the flat plane 134 or any other surface or contour to be detected can be, for example, white, in particular matt white, for example painted white or covered with a white material in order to reduce or prevent any reflections.
  • 2c shows a docking station 130', which can correspond more fundamentally to the docking station 130 according to FIGS. 2a, 2b. In particular, the docking station 130' is also shown in the same view.
  • the flat plane 134' is understood to have a pattern that has a variation in reflectivity of the surface.
  • four areas 134a, 134b, 134c, 134d are provided, each of which has a length L (seen along the width B).
  • the flat 134' is therefore divided into the four areas 134a, 134b, 134c, 134d. These areas now alternately have different reflectivity, so that when lidar beams or comparable are reflected therein, a pattern with alternating intensity values above an upper threshold value and below a lower threshold value is created.
  • the areas 134a and 134c can be light and/or shiny, while the areas 134b and 134d can be dark and/or matt.
  • the 2D lidar perceives this surface with four clearly distinguishable areas or regions, which correspond to the four areas in Figure 2c. Each area in the lidar scan will include points with similar reflectance values.
  • FIG 3 a method according to the invention is shown schematically in a preferred embodiment as a type of flow chart or flowchart.
  • a procedure for docking should be included here.
  • a vacuum cleaner robot as a mobile device
  • a docking station as a predetermined object, as also shown in Figures 1a to 2c.
  • an (initial) potential position 304 (possibly also with orientation) of the docking station is first provided in a step 302.
  • potential positions or poses of the docking station can be provided to the vacuum cleaner robot. This can e.g. B. be the initial position from which it started, a position or pose specified by the user (e.g. in response to a message from the robot when it cannot detect the docking station at its previous position); It is also possible to have a list of possible positions or poses that is collected during the robot's runtime (e.g. by running the docking station detection algorithm, which can be particularly helpful when the robot is driving near walls). Another possibility is that these new positions or poses of the docking station are created by another process that can be started on demand, for example by exploring the drivable area in search of docking station signatures.
  • a step 306 the robot vacuum cleaner moves to or near the docking station; this is done based on the potential position 304. If the vacuum cleaner robot is then in the vicinity of the docking station, i.e. at or near the potential position, in a step 310 navigation information 308 is determined in order to move the vacuum cleaner robot to the docking station . This is done on the one hand based on the potential position 304, but on the other hand also by determining the position of the docking station based on a 2D lidar scan (set of points). This will be explained in more detail below with reference to FIG. 4.
  • This navigation information can also include, for example, instructions on how the vacuum cleaner robot should navigate exactly (e.g. how far it should travel and when, when it should turn, etc.).
  • movement control variables for controlling the drive unit can also be determined. So in step 310 a docking machine is created növer carried out, ie the vacuum cleaner robot drives to the docking station according to the navigation information 308 or at least tries to do so. The detection of the docking station, ie the determination of its position, is carried out continuously or repeatedly during the docking process (the control is based on this input).
  • step 312 it is then checked whether the docking maneuver was successful or not. If yes (Y), i.e. if the vacuum cleaner robot is successfully docked at the docking station and, for example, has established electrical contact to charge the battery, then the method is ended in step 314. This can be the case, for example, if the potential position is already very close to the actual position.
  • step 316 if the docking maneuver was not successful (N), i.e. if the docking station with the navigation information was not reached, a check is made in step 316 as to whether the docking station was recognized at all. If the docking station has been recognized, i.e. if the position of the docking station (or of any docking station at all) has been determined (Y), the process switches again to step 306 to drive close to the docking station again, based on the potential position 304 or a new potential position derived from the position of the docking station detected in the previous step 310. For example, with the same potential position of the docking station (it was actually recognized), a docking maneuver is attempted again, for example by moving back and then approaching the docking station again with, for example, a slightly changed approach angle or the like.
  • step 316 a new potential position of the docking station can be searched for or requested in step 318. If a new or different potential position of the docking station was found or provided in step 320 (as mentioned for example in step 302) (Y), you can go back to step 306. The entire process can be repeated until it is successful or there are no positions or poses left (N); then the process ends with step 322.
  • a method according to the invention is shown schematically in a further preferred embodiment as a type of flow chart or flowchart. This will be explained again as an example using a vacuum cleaner robot as a mobile device and a docking station as a predetermined object, as also shown in Figures 1a to 2c.
  • a set 500 of points in the environment is first provided in step 400, for example using the 2D lidar scan.
  • a set 500 of points is shown as an example as a 2D lidar scan, as is obtained, for example, in an environment with the docking station in front of a wall from the 2D lidar sensor, similar to that in Figure 1.
  • This set 500 is then analyzed in a step 410 with regard to a predetermined relationship 412 of several points of the set of points to one another.
  • This predetermined relationship is determined, for example, by the flat plane 134 of the docking station and requires that points lie on a straight line of a certain length (which corresponds to the width B of the flat plane 134).
  • step 414 several groups of points can be determined, which, for example, have a similar relationship between several points; this can be referred to as a clustering operation.
  • FIG 5b the set 500 of points is shown again, but after a clustering process in which several groups 510, 512, 514, 516, 518 of points have been determined.
  • a possible algorithm by which these groups (or clusters) can be determined is, for example, as follows: For example, a cluster criterion such as a certain distance can be specified. For each point, it is then gradually checked whether its distance from the previous point corresponds at most to the certain distance. If yes, then this point belongs to the same cluster or group. If not, a new cluster or group is formed.
  • These groups can then be analyzed in step 416, specifically with regard to the predetermined relationship 412 of several points of the set of points to one another.
  • a possible algorithm by which a group (or cluster) can be analyzed to determine whether it or its points fulfill the specified relationship is, for example, as follows.
  • a relationship criterion such as a certain length can be specified.
  • a distance in the x and y directions is then determined for each two consecutive points in the group or in the cluster (this applies, for example, to an analysis in 2D in a Cartesian coordinate system; this is only an example here). This is designated Axi or Ayi in Figure 5c.
  • a standard deviation is then determined for these distances, i.e. once in the x and once in the y direction. If their sum is smaller than the relationship criterion, it can be assumed that these points lie on a line.
  • a group here 512, can be determined that satisfy the predetermined relationship; This group 512 should then be a subset of points, i.e. the selected group that is used to determine the position of the docking station.
  • the group that has the shortest distance to the vacuum cleaner robot or to the lidar sensor is determined as the subset.
  • the distance can be determined, for example, as the average distance of all points in the group to the vacuum cleaner robot or to the lidar sensor.
  • the group 510 or 516 can also fulfill the specified relationship. It also depends on how exactly the specified relationship is fulfilled.
  • another preference criterion can also be used, based on which the several groups are ordered and/or one of the groups is determined as the subset.
  • a suitable algorithm that determines the group can be used. An algorithm can also be used to determine the smallest distance.
  • step 424 these multiple groups of points that meet the predetermined relationship can be analyzed among themselves with regard to a predetermined pattern of points of the respective group .
  • the predetermined pattern includes a variation of intensity values of the points, the variation of intensity values being determined in particular by a variation of a reflectivity of a surface, for example the surface 134 'as shown in Figure 2c.
  • the group 512 from Figure 5b is shown again as an example.
  • this group 512 includes, for example, 16 points, with four consecutive points each forming an area or a segment, here 512a, 512b, 512c, 512d with four points each.
  • the points of each of these segments have the same or at least approximately the same intensity value within the segment, but the intensity values differ between the segments. So there are four different intensity values.
  • Each segment has a length L, which corresponds, for example, to the length L of the four areas of the flat plane 134 'according to FIG. 2c. If the four areas of the flat plane 134 'according to FIG. 2c each have different, thus a total of four, different reflectivities, this could correspond to the group here in FIG. 5c. However, as mentioned above in relation to Figure 2c, if there are only two different reflectivities, the result would be: Group 12, for example, the segments 512a and 512c on the one hand and the segments 512b and 512d on the other hand each had the same intensity value.
  • the pattern in the group results.
  • each group of points that satisfies the specified relationship with respect to the contour can be analyzed with regard to the pattern assigned by the docking station or the object.
  • the group of points can be divided into four equal numbers of points - or corresponding lengths, for example if the points are unevenly distributed. In practice it may happen that the points cannot be divided exactly accordingly; However, an approximately precise division is sufficient, especially since in practice there will be not just 16, but a significantly higher number of points per group.
  • the individual intensity values of the points can be compared with each other, i.e. a relative value is considered instead of an absolute value.
  • average intensity values can also be determined for each segment (e.g. as the arithmetic mean of the individual intensity values of the segment), which are then compared across the segments.
  • the position 432 of the docking station is then determined in step 430.
  • the position 432 as the position of the docking station is then used in relation to FIG. 3 in step 310 for the continuous provision of the navigation information 308 or, as mentioned in relation to FIG.
  • the docking station can also be defined, for example, by a circular arc with a specific radius and/or a specific length instead of a straight line.
  • a group 612 of points is shown in FIG. 6a, which is defined by a circular arc with radius r es t.
  • a group 612' of points is shown, which is defined by a circular arc with a different radius r' es t.
  • a group 612" of points with positions xi to x n is shown, which is defined by a circular arc with length L.
  • the points from a cluster can be fitted to a circle, e.g. using a closed least squares method (e.g. according to https://lucidar.me/en/mathematics/least-squares-fitting-of- circle/, or https://www.emis.de/journals/BBMS/Bulletin/sup962/gander.pdf).
  • This determines the radius of the circle and the coordinates of the center of the circle x c and the radius and/or the calculated arc length L es t (e.g.
  • a pattern with variation in the intensity values can be specified and the groups of points can be analyzed accordingly.
  • two or more different objects can also be distinguished with such predetermined patterns by specifying a different pattern for each of the desired objects; Care should be taken to ensure that different patterns in the intensity values of the points are clearly distinguishable from one another. This makes it possible, for example, to differentiate between different docking stations, e.g. a docking station for charging the robot and one for emptying a dust container or the like.

Landscapes

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

Abstract

Die Erfindung betrifft ein Verfahren zum Bestimmen einer Position eines vorbestimmten Objekts, insbesondere einer Dockingstation, in einer Umgebung, in der sich ein mobiles Gerät, befindet, umfassend: Bereitstellen einer Menge von Punkten (500) in der Umgebung, wobei die Punkte insbesondere jeweils charakteristisch für einen Abstand zwischen dem mobilen Gerät und Objekten in der Umgebung sind, Analysieren der Menge von Punkten hinsichtlich einer vorgegebenen Beziehung mehrerer Punkte der Menge von Punkten untereinander, wobei die vorgegebene Beziehung durch eine äußere Kontur des vorbestimmten Objekts bestimmt ist, Bestimmen, wenn eine oder eine von mehreren Gruppen (512) von Punkten aus der Menge die vorgegebene Beziehung erfüllt, dieser Gruppe von Punkten als eine Untermenge von Punkten, Bestimmen, basierend auf der Untermenge von Punkten, der Position des vorbestimmten Objekts.

Description

Beschreibung
Titel
Verfahren zum Bestimmen einer Position eines vorbestimmten
Die vorliegende Erfindung betrifft ein Verfahren zum Bestimmen einer Position eines vorbestimmten Objekts, insbesondere einer Dockingstation, in einer Umgebung, in der sich ein mobiles Gerät, insbesondere ein Roboter, befindet, sowie ein System zur Datenverarbeitung, ein mobiles Gerät, ein Objekt mit oder zur Verwendung mit einem System, und ein Computerprogramm zu dessen Durchführung.
Hintergrund der Erfindung
Mobile Geräte wie z.B. Roboter bewegen sich typischerweise in einer Umgebung, insbesondere einer zu bearbeitenden Umgebung oder einem Arbeitsbereich, wie z.B. einer Wohnung oder in einem Garten. Ein solches mobiles Gerät soll sich dabei typischerweise immer wieder zu vorbestimmten Positionen oder Objekten in der Umgebung bewegen, wie z.B. zu einer Dockingstation, an der das mobile Gerät z.B. geladen werden kann.
Offenbarung der Erfindung
Erfindungsgemäß werden ein Verfahren zum Bestimmen einer Position eines vorbestimmten Objekts, sowie ein System zur Datenverarbeitung, ein mobiles Gerät, ein Objekt mit oder zur Verwendung mit einem System, und ein Computerprogramm zu dessen Durchführung mit den Merkmalen der unabhängigen Patentansprüche vorgeschlagen. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche sowie der nachfolgenden Beschreibung. Die Erfindung beschäftigt sich allgemein mit mobilen Geräten, die sich in einer Umgebung oder dort z.B. in einem Arbeitsbereich bewegen bzw. bewegen sollen, sowie insbesondere mit dem Bestimmen einer Position von vorbestimmten Objekten in einer solchen Umgebung.
Beispiele für solche mobilen Geräte (oder auch mobile Arbeitsgeräte) sind z.B. Roboter und/oder Drohnen und/oder auch sich teilautomatisiert oder (vollständig) automatisiert (zu Land, Wasser oder in der Luft) bewegende Fahrzeuge. Als Roboter kommen z.B. Haushaltsroboter wie Saug- und/oder Wischroboter, Bodenoder Straßenreinigungsgeräte oder Rasenmähroboter in Betracht, ebenso aber auch andere sog. Service-Roboter, als sich zumindest teilweise automatisiert bewegende Fahrzeuge z.B. Personenbeförderungsfahrzeuge oder Güterbeförderungsfahrzeuge (auch sog. Flurförderfahrzeuge, z.B. in Lagerhäusern), aber auch Luftfahrzeuge wie sog. Drohen oder Wasserfahrzeuge.
Ein solches mobiles Gerät weist insbesondere eine Steuer- und/oder Regeleinheit und eine Antriebseinheit zum Bewegen des mobilen Geräts auf, sodass das mobile Gerät in der Umgebung, z.B. auch entlang eines Bewegungspfads oder einer Trajektorie, bewegt werden kann. Außerdem kann ein mobiles Gerät einen oder mehrere Sensoren aufweisen, mittels welcher die Umgebung bzw. Informationen in der Umgebung erfasst werden können.
Nachfolgend soll die Erfindung insbesondere am Beispiel eines Staubsaugerroboters als mobiles Gerät erläutert werden, wenngleich sich das Prinzip auch auf andere Arten von mobilen Geräten übertragen lässt.
Mobile Geräte, wie z. B. Haushalts- und Serviceroboter, sind in der Regel mit einer eingebauten Stromversorgung (Energiespeicher, insbesondere Batterie) ausgestattet, so dass das mobile Gerät automatisch eine externe Stromquelle erkennen und sich an diese anschließen muss, um sich aufzuladen. Eine solche externe Stromquelle wird typischerweise an einer sog. Dockingstation bereitgestellt. Eine Dockingstation mobiler Geräte oder Roboter verfügt z.B. über ein elektrisches Ladesystem mit einer Reihe von Kontakten. Die komplementären Kontakte am Roboter ermöglichen es ihm, die Kontaktstelle zu erkennen und einen elektrischen Ladestrom zu empfangen. Je nach Art des mobilen Geräts kann eine Dockingstation aber auch anderen Zwecken dienen. Für den Fall von Güterbeförderungsfahrzeugen kann an einer Dockingstation z.B. ein Lade- und/oder Entladevorgang von zu transportierenden Gütern erfolgen (dies kann manuell und/oder automatisiert erfolgen). Ebenso kann zusätzlich aber z.B. auch das Laden der Batterie erfolgen.
Solche Roboter sind, wie erwähnt, in der Regel mit Sensoren ausgestattet, die sie in die Lage versetzen, die Umgebung wahrzunehmen und darin zu navigieren. Ein Laserscann, insbesondere ein 2D-Laserscanner (z.B. sog. Lidar-Sensor) ist z.B. eine kosteneffiziente Sensorlösung für einen mobilen Roboter. Seine begrenzten Wahrnehmungsfähigkeiten machen es jedoch schwierige, die Dockingstation allein mit einem Scan oder 2D-Scan zu erkennen.
Vor diesem Hintergrund wird eine Möglichkeit vorgeschlagen, ein vorbestimmtes Objekt wie z.B. eine Dockingstation in einer Umgebung zu bestimmen, und zwar basierend auf Menge von Punkten in der Umgebung, wobei die Punkte insbesondere jeweils charakteristisch für einen Abstand zwischen dem mobilen Gerät und Objekten in der Umgebung sind. Ein typisches Beispiel für eine solche Menge von Punkten ist eine sog. Lidar-Punktwolke, die aus einem Lidar-Scan resultiert.
Hierbei wird diese Menge von Punkten bereitgestellt. Beispielsweise kann dies durch Erhalt einer Lidar-Punktwolke von einem Lidar-Sensor am mobilen Gerät der Fall sein. Diese Menge von Punkten wird dann hinsichtlich einer vorgegebenen Beziehung mehrerer Punkte der Menge von Punkten untereinander analysiert, wobei die vorgegebene Beziehung durch eine äußere Kontur des vorbestimmten Objekts bestimmt ist. Ein bevorzugtes Beispiel für eine solche vorgegebene Beziehung ist, dass Punkte auf einer Linie einer gewissen Länge liegen. Vorzugsweise erfolgt dieses Analysieren, indem mehrere Gruppen von Punkten aus der Menge von Punkten bestimmt werden, und dass dann jede dieser Gruppen hinsichtlich der vorgegebenen Beziehung analysiert wird. Dieses bestimmen mehrerer Gruppen kann auch als Clustern bezeichnet werden. Wenn eine Gruppe von Punkten aus der Menge - oder eine von mehreren Gruppen von Punkten aus der Menge - die vorgegebene Beziehung erfüllen, also z.B. auf einer Linie einer bestimmten Länge liegen, oder zumindest innerhalb vorgegebener Toleranzen auf einer Linie der vorbestimmten Länge liegen, wird diese Gruppe von Punkten als eine Untermenge von Punkten bestimmt. Diese Untermenge zeigt dann insbesondere an, um welches Objekt es sich handelt.
Falls mehr als eine der mehreren Gruppen die vorgegebene Beziehung erfüllen, kann vorzugsweise diejenige Gruppe als die Untermenge bestimmt werden, die einen geringsten Abstand vom mobilen Gerät aufweist. Der geringste Abstand kann z.B. im Mittel für jeden Punkt der Gruppe gelten oder für einen mittleren Punkt der Gruppe.
Alternativ kann auch, falls mehr als eine der mehreren Gruppen die vorgegebene Beziehung erfüllen (also z.B. zumindest innerhalb vorgegebener Toleranzen auf einer Linie der vorbestimmten Länge liegen, z.B. aber in der Länge etwas voneinander abweichen), diejenige Gruppe als die Untermenge bestimmt werden, die die vorgegebenen Beziehung am besten erfüllt, also z.B. am genauesten der bestimmten Länge entspricht.
Basierend auf der Untermenge von Punkten wird dann die Position des vorbestimmten Objekts bestimmt; insbesondere werden auch Navigationsinformationen für das mobile Gerät bestimmt, und zwar basierend auf der Position des vorbestimmten Objekts.
Mit anderen Worten wird also in der vorhandenen Menge von Punkten, z.B. der Lidar-Punktwolke, eine äußere Kontur des vorbestimmten Objekts gesucht bzw. eine Abbildung dieser äußeren Kontur durch die Menge von Punkten. Dies erlaubt es, ein solches vorbestimmtes Objekt, das erkannt werden soll, wie z.B. die Dockingstation, besonderes einfach zu gestalten oder zu designen. Beispielsweise kann eine ebene Platte an dem Objekt bzw. der Dockingstation angebracht werden, die auf Höhe des Lidar-Sensors des mobilen Geräts (oder eines anderen Sensors) angeordnet ist und eine bestimmte Breite in der Erfassungsrichtung des Sensors aufweist, also z.B. parallel zu einem Untergrund, auf dem sich das mobile Gerät bewegt. Diese Platte als eine äußere Kontur des Objekts führt dann in dem Lidar-Scan (bzw. der Menge von Punkten) zu einer Untermenge von Punkten, die auf einer Linie liegen. Diese Linie hat dann (zumindest in etwa) eine Länge, die der erwähnten Breite der Platte entspricht.
Es ist somit möglich, die Signatur der Dockingstation auf eine gerade Linie bekannter Länge zu reduzieren (im Gegensatz zu z.B. eindeutig codierten Strukturen, die bei anderen Ansätzen wie z.B. der Mustererkennung bei Kameras verwendet werden).
Vorzugsweise umfasst die vorgegebene Beziehung, dass die mehreren Punkte innerhalb eines durch die äußere Kontur des vorbestimmten Objekts vorgegeben zwei- oder dreidimensionalen Bereichs liegen, insbesondere auf einer Linie einer vorgegebenen Länge liegen. Neben der (geraden) Linie kommen aber auch andere Beziehungen in Betracht; z.B. kann vorgesehen sein, dass die mehreren Punkte auf einem Kreisbogenabschnitt oder einer anderweitig gebogenen Linie liegen sollen. Auch hier kann die Länge und/oder der Radius vorgegeben sein. Besonders zweckmäßig ist es, eine einfache geometrische Form an der äußeren Kontur des vorbestimmten Objekts auszubilden, die sich dann einfach in der Menge von Punkten finden lässt. Es versteht sich, dass diese Kontur nicht notwendigerweise gezielt designt werden muss; ebenso lassen sich vorhandene Konturen verwenden.
In einer Ausführungsform ist weiterhin vorgesehen, dass die eine oder zumindest eine, vorzugsweise jede, der mehreren Gruppen von Punkten, die die vorgegebene Beziehung erfüllen, hinsichtlich eines vorgegebenen Musters von Punkten der jeweiligen Gruppe untereinander analysiert werden. Dies erfolgt insbesondere nach der Analyse hinsichtlich der vorgegebenen Beziehung, aber vor dem Bestimmen der Untermenge. Die eine oder eine solche der analysierten Gruppen, die dem vorgegebenen Muster entspricht, wird dann als die Untermenge bestimmt. Das vorgegebene Muster umfasst dabei eine Variation von Intensitätswerten der Punkte. Die Variation von Intensitätswerten kann insbesondere durch eine Variation einer Reflektivität einer Oberfläche des vorbestimmten Objekts im Bereich der Kontur bestimmt sein. Beispielsweisekann vorgegebene Muster wenigstens zwei, vorzugsweise wenigstens drei, Bereiche umfassen, die abwechselnd Intensitätswerte oberhalb eines oberen Schwellwerts und unterhalb eines unteren Schwellwerts aufweist. Die Schwellwerte beziehen sich dabei auf eine Intensität der Punkte, wobei der obere Schwellwert ein höhere Intensität angibt als der untere Schwellwert.
Eine Variation in der Reflektivität kann auf dem Objekt bzw. dessen Oberfläche z.B. durch verschiedene Farben oder matte und glänzende Bereiche erreicht werden. Denkbar sind aber auch bestimmte Beschichtungen in bestimmten Bereichen, um die Reflektivität zu erhöhen bzw. zu verringern. Ein Muster einer solchen Variation in der Reflektivität wirkt sich dann in der Intensität der Punkte aus, die entsprechend ein Muster einer Variation von Intensitätswerten aufweisen. Wenn die Punkte z.B. mittels Lidar bzw. Laserentfernungsmessung erfasst sind, werden Punkte, die Lidarstrahlen entsprechen, die von einer Oberfläche mit geringerer Reflektivität reflektiert worden sind, eine geringere Intensität aufweisen als solche, die von einer Oberfläche mit höherer Reflektivität reflektiert worden sind. Anstelle von Lidar (Laserentfernungsmessung) bzw. eines Lidar-Sensors kann z.B. auch eine Time-of-Flight-Kamera, eine Time-of-Flight-Tiefen-Kamera oder allgemein ein Time-of-Flight-Sensor verwendet werden.
Auf diese Weise lässt sich ein bestimmtes Objekt wie z.B. die Dockingstation noch genauer identifizieren. So kann z.B. dann, falls mehrere Gruppen von Punkten die vorgegebene Beziehung erfüllen, also z.B. auf einer Linie bestimmter Länge liegen, davon das gewünschte Objekt identifiziert werden. Beispielsweise kann eine Schachtel in der Umgebung eine vergleichbare Beziehung der Punkte untereinander liefern wie die Dockingstation. Das gewünschte Objekt kann nämlich entsprechend mit dem Muster der Variation in der Reflektivität versehen werden. In diesem Zusammenhang sei erwähnt, dass in der Praxis nur eine von mehreren Gruppen das Muster erfüllen wird, da dies explizit vorgegeben ist und insbesondere auch sehr speziell gewählt bzw. vorgegeben werden kann. Für den Fall, dass nur eine Gruppe von Punkten die vorgegebene Beziehung erfüllt, kann ebenfalls nach dem Muster analysiert werden. In diesem Fall ist dies eine Verifizierung. Wenn in obigem Beispiel nur die Schalter erfasst wurde, würde dies nämlich andernfalls z.B. als die Dockingstation identifiziert.
Auf diese Weise kann ein Umkreis oder Radius, in dem die Erkennung des Objekts bzw. das Bestimmen dessen Position durchgeführt wird, deutlich erweitert werden, da auch andere Objekte erfasst werden dürfen, die eine vergleichbare Beziehung in der Kontur aufweisen; durch das zusätzliche Muster der Intensitätswerte kann nämlich konkret nach dem gewünschten Objekt gesucht werden.
Wenn aus der Menge von Punkten keine Gruppe von Punkten bestimmbar ist, die die vorgegebene Beziehung erfüllen, wird vorzugsweise eine neue Menge von Punkten bereitgestellt, die von der Menge von Punkten verschieden ist, insbesondere nach Bewegen des mobilen Geräts. Das vorstehend erwähnte Vorgehen kann dann erneut durchgeführt werden.
Dies gilt gleichermaßen, wenn aus der Menge von Punkten keine Gruppe von Punkten bestimmbar ist, die das vorgegebene Muster erfüllen, sofern dieses Kriterium verwendet wird.
Bevorzugt wird zudem, basierend auf der Position des vorbestimmten Objekts, eine Position und/oder Orientierung des mobilen Geräts relativ zu dem vorbestimmten Objekt bestimmt. Es werden dann Navigationsinformationen bestimmt, und insbesondere auch Bewegungssteuergrößen, für das mobile Gerät, um das mobile Gerät zu dem vorbestimmten Objekt zu bewegen. Es kann dann also z.B. ein sog. Dockingmanöver zum Andocken des mobilen Geräts an die Dockingstation durchgeführt werden.
Das Bestimmen der Position und/oder Orientierung des mobilen Geräts relativ zu dem vorbestimmten Objekt erfolgt insbesondere weiterhin basierend auf zumindest einer Eigenschaft des vorbestimmten Objekts und/oder der Umgebung, wel- ehe Eigenschaft eine Auswirkung auf die Punkte hat. Diese zumindest eine Eigenschaft umfasst z.B. eine Reflektivität einer Oberfläche des vorbestimmten Objekts (wobei die Reflektivität hier insbesondere unabhängig von dem erwähnten Muster betrachtet werden kann) und/oder eine Neigung eines Untergrunds vor dem vorbestimmten Objekt. Dies erleichtert das Anfahren des vorbestimmten Objekts bzw. das Andocken an der Dockingstation noch weiter.
Vorzugsweise wird zunächst eine potentielle, z.B. geschätzte, Position des vorbestimmten Objekts bereitgestellt. Basierend auf der potentiellen Position des vorbestimmten Objekts werden dann die Position wie vorstehend erläutert, sowie insbesondere die Navigationsinformationen bestimmt, um das mobile Gerät zu dem vorbestimmten Objekt zu bewegen. Wenn nun das vorbestimmten Objekt mit den Navigationsinformationen nicht erreichbar ist oder nicht erreicht worden ist, kann insbesondere aber eine andere potentielle Position des vorbestimmten Objekts bereitgestellt werden. Das Verfahren kann dann wieder durchgeführt werden.
Ein erfindungsgemäßes System zur Datenverarbeitung umfasst Mittel zur Ausführung des erfindungsgemäßen Verfahrens bzw. von dessen Verfahrensschritten. Es kann sich bei dem System um einen Computer oder Server handeln, z.B. in einer sog. Cloud oder Cloud-Umgebung. Von dort kann dann - im Falle der Anwendung für ein mobiles Gerät - die die Position des vorbestimmten Objekts an das mobile Gerät übermittelt werden (z.B. über eine drahtlose Datenverbindung). Ebenso können z.B. Informationen zur Umgebung, z.B. die Menge von Punkten, vom mobilen Gerät auf das System übermittelt werden. Denkbar ist aber auch, dass ein solches System zur Datenverarbeitung ein Computer oder ein Steuergerät in einem solchen mobilen Gerät ist.
Die Erfindung betrifft auch ein mobiles Gerät, das eingerichtet ist, eine Menge von Punkten in einer Umgebung bereitzustellen, und eine Position eines vorbestimmten Objekts in der Umgebung, die gemäß einem erfindungsgemäßen Verfahren aus der Menge von Punkten bestimmt worden ist, zu erhalten, und insbesondere zur Navigation zu verwenden, Bevorzugt weist das mobile Gerät einen Entfernungsmessungs- oder Lidar-Sen- sor zum Erfassen der Menge der Punkte in der Umgebung, auf, weiter bevorzugt eine Steuer- und/oder Regeleinheit und eine Antriebseinheit zum Bewegen des mobilen Geräts. Auch das System zur Datenverarbeitung kann, wie erwähnt, von dem Gerät umfasst sein.
Das mobile Gerät ist vorzugsweise als sich zumindest teilweise automatisiert bewegendes Fahrzeug, insbesondere als Personenbeförderungsfahrzeug oder als Güterbeförderungsfahrzeug, und/oder als Roboter, insbesondere als Haushaltsroboter, z.B. Saug- und/oder Wischroboter, Boden- oder Straßenreinigungsgerät oder Rasenmähroboter, und/oder als Drohne ausgebildet.
Die Erfindung betrifft auch ein Objekt, insbesondere eine Dockingstation, mit oder zur Verwendung mit einem erfindungsgemäßen System zur Datenverarbeitung oder einem erfindungsgemäßen mobilen Gerät. Das Objekt weist hierbei eine äußere Kontur auf, anhand welcher eine Beziehung mehrerer Punkte der Menge von Punkten untereinander bestimmbar ist. Beispielsweise kann das Objekt die erwähnte ebene Platte aufweisen, die ein bestimmte Breite hat. Außerdem ist es zweckmäßig, wenn diese äußere Kontur bzw. diese Platte auf Höhe des Entfernungsmessungs- oder Lidar-Sensors des mobilen Geräts ist.
Bevorzugt weist das Objekt weiterhin eine Variation einer Reflektivität einer Oberfläche im Bereich der Kontur auf, also z.B. ein entsprechend vorgegebenes Muster. Denkbar sind z.B. abwechselnd verschiedene Farben oder abwechseln matte und glänzende Bereiche.
Auch die Implementierung eines erfindungsgemäßen Verfahrens in Form eines Computerprogramms oder Computerprogrammprodukts mit Programmcode zur Durchführung aller Verfahrensschritte ist vorteilhaft, da dies besonders geringe Kosten verursacht, insbesondere wenn ein ausführendes Steuergerät noch für weitere Aufgaben genutzt wird und daher ohnehin vorhanden ist. Schließlich ist ein maschinenlesbares Speichermedium vorgesehen mit einem darauf gespeicherten Computerprogramm wie oben beschrieben. Geeignete Speichermedien bzw. Datenträger zur Bereitstellung des Computerprogramms sind insbesondere magnetische, optische und elektrische Speicher, wie z.B. Festplatten, Flash- Speicher, EEPROMs, DVDs u.a.m. Auch ein Download eines Programms über Computernetze (Internet, Intranet usw.) ist möglich. Ein solcher Download kann dabei drahtgebunden bzw. kabelgebunden oder drahtlos (z.B. über ein WLAN- Netz, eine 3G-, 4G-, 5G- oder 6G-Verbindung, etc.) erfolgen.
Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.
Die Erfindung ist anhand eines Ausführungsbeispiels in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung beschrieben.
Kurze Beschreibung der Zeichnungen
Figur 1 zeigt schematisch ein mobiles Gerät und ein vorbestimmtes Objekt in einer Umgebung zur Erläuterung der Erfindung in einer bevorzugten Ausführungsform.
Figuren 2a, 2b und 2c zeigen schematisch das mobiles Gerät und das vorbestimmte Objekt aus Figur 1 in anderen Ansichten.
Figur 3 zeigt schematisch ein erfindungsgemäßes Verfahren in einer bevorzugten Ausführungsform.
Figur 4 zeigt schematisch ein erfindungsgemäßes Verfahren in einer weiteren bevorzugten Ausführungsform.
Figuren 5a, 5b, 5c und 5d zeigen schematisch Diagramme zur Erläuterung der Erfindung in einer bevorzugten Ausführungsform.
Figuren 6a, 6b und 6c zeigen schematisch Diagramme zur Erläuterung der Erfindung in einer bevorzugten Ausführungsform. Ausführungsform(en) der Erfindung
In Figur 1 sind schematisch ein mobiles Gerät 100 und ein vorbestimmtes Objekt 130 in einer Umgebung 120 zur Erläuterung der Erfindung in einer bevorzugten Ausführungsform. Bei dem mobilen Gerät 100 handelt es sich beispielhaft um einen Staubsaugerroboter mit einer Steuer- oder Regeleinheit 102 und einer Antriebseinheit 104 (mit Rädern) zum Bewegen des Staubsaugerroboters 100 in der Umgebung 120, z.B. einer Wohnung oder einem Raum.
Weiterhin weist der Staubsaugerroboter 100 beispielhaft einen als 2D-Lidar-Sen- sor ausgebildeten Sensor 106 mit einem Erfassungsfeld (gestrichelt angedeutet) auf. Zur besseren Veranschaulichung ist das Erfassungsfeld hier relativ klein gewählt; in der Praxis kann das Blickfeld aber auch bis zu 360° betragen (z.B. aber mindestens 180° oder mindestens 270°). Mittels des 2D-Lidar-Sensors 106 können Abstände zwischen dem mobilen Gerät 100 (bzw. dem Sensor 106) und Objekten in der Umgebung erfasst oder bestimmt werden.
Weiterhin weist der Staubsaugerroboter 100 ein System 108 zur Datenverarbeitung, z.B. ein Steuergerät, auf, mittels dessen z.B. über eine angedeutete Funkverbindung Daten mit einem übergeordneten System 110 zur Datenverarbeitung ausgetauscht werden können. In dem System 110 (z.B. ein Server, es kann auch für eine sog. Cloud stehen) können z.B. Navigationsinformationen bestimmt werden, die dann auf das System 108 im Staubsaugerroboter 100 übermittelt werden, gemäß welcher dieser dann betrieben werden soll. Ebenso kann aber vorgesehen sein, dass Navigationsinformationen im System 108 selbst bestimmt werden oder anderweitig dort erhalt werden. Anstelle von Navigationsinformationen kann das System 108 aber z.B. auch Steuerinformationen erhalten, die anhand ei von Navigationsinformationen bestimmt worden sind, und gemäß welcher die Steuer- oder Regeleinheit 102 über die Antriebseinheit 104 den Staubsaugerroboter 100 bewegen kann. Weiterhin ist in der Umgebung 120 eine Dockingstation 130 als Beispiel für ein vorbestimmtes Objekt dargestellt. Die Dockingstation 130 weist beispielhaft Kontakte 132 (z.B. elektrische Kontakte) zum Laden eines Energiespeichers des Staubsaugerroboters 100 auf, sowie beispielhaft eine Platte mit einer flachen Ebene 134 auf einer Seite (einer Oberfläche) auf. Bei der flachen Ebene 132 handelt es sich um ein Beispiel für eine äußere geometrische Kontur des Objekts bzw. der Dockingstation 130.
In den Figuren 2a und 2b sind weitere verschiedene Ansichten des Staubsaugerroboters 100 sowie insbesondere der Dockingstation 130 gezeigt. Während in Figur 1 eine Draufsicht zu sehen ist, zeigt Figur 2a eine Seitenansicht, in der insbesondere zu sehen ist, dass die Platte mit der flachen Ebene 134 in einer gewissen Höhe über einem Untergrund (Boden) 122, auf dem sich einerseits der Staubsaugerroboter 100 bewegt und andererseits die Dockingstation steht. Die flache Ebene 134 befindet sich auf Höhe des 2D-Lidar-Sensors 106, dessen Höhe über dem Untergrund 122 mit HS bezeichnet ist. Dies stellt sicher, dass der 2D-Lidar-Sensor die flache Ebene 134 erfassen kann. Bei einem anderen Sensor oder z.B. einem 3D-Lidear-Sensor muss hierauf z.B. nicht oder weniger stark geachtet werden.
In Figur 2b ist die Dockingstation 130 und insbesondere die flache Ebene 134 in einer Frontansicht gezeigt, wie sie z.B. aus Sicht des Staubsaugerroboters 100 bzw. des 2D-Lidar-Sensors zu sehen ist. Hier sind nun auch zwei konkrete Abmessung der flachen Ebene 134 gezeigt, nämlich deren Breite B sowie deren Höhe H. Während die Höhe H z.B. dazu dient, einen gewissen Spielraum für die Erfassung mit dem 2D-Lidar-Sensor bzw. der Positionierung auf Höhe des 2D- Lidar-Sensors erlaubt (z.B. auch bei unebenem Untergrund), dient die Breite B dazu, die flache Ebene 134 in einem Lidar-Scan, einer sog. Punktwolke, zu identifizieren, wie nachfolgend erläutert werden soll.
Außerdem kann die flache Ebene 134 oder auch jede andere zu erfassende Oberfläche oder Kontur z.B. weiß, insbesondere matt weiß, sein, also z.B. weiß lackiert oder mit einem weißen Material überzogen, um etwaige Reflexionen zu verringern oder zu verhindern. In Figur 2c ist eine Dockingstation 130‘ gezeigt, die grundsätzlicher der Dockingstation 130 gemäß Figuren 2a, 2b entsprechen kann. Insbesondere ist die Dockingstation 130‘ auch in derselben Ansicht gezeigt.
Anders als in Figur 2b ist in Figur 2c die flache Ebene 134‘ mit einem Muster verstehen, das eine Variation einer Reflektivität der Oberfläche aufweist. Hierzu sind beispielhaft vier Bereiche 134a, 134b, 134c, 134d vorgesehen, die jeweils eine Länge L (entlang der Breite B gesehen) aufweisen. Die flache eben 134‘ ist also in die vier Bereiche 134a, 134b, 134c, 134d unterteilt. Diese Bereiche weisen nun abwechselnd verschiedene Reflektivität auf, sodass bei daran reflektierten Lidarstrahlen oder vergleichbarem ein Muster mit abwechselnd Intensitätswerte oberhalb eines oberen Schwellwerts und unterhalb eines unteren Schwellwerts entsteht.
Beispielsweise können die Bereiche 134a und 134c hell und/oder glänzend sein, die Bereiche 134b und 134d hingegen dunkel und/oder matt. Das 2D-Lidar nimmt diese Oberfläche mit vier deutlich unterscheidbaren Bereichen bzw. Regionen wahr, die den vier Bereichen in Figur 2c entsprechen. Jeder Bereich wird im Li- dar-Scan Punkte mit ähnlichem Reflexionswert umfassen.
Es sei erwähnt, dass dies lediglich ein Beispiel für ein Muster ist. Ebenso könnten z.B. drei oder vier oder mehr verschiedene Reflektivität verwendet werden, die beliebig zusammengestellt werden können. Dabei sollte jedoch darauf geachtet werden, dass die verschiedenen Reflektivitäten ausreichend verschiedene Intensitätswerte in den Punkten erzeugen, um diese unterscheiden zu können. Außerdem müssen die Längen der Bereiche nicht identisch sein, diese können auch verschieden sein.
In Figur 3 ist schematisch ein erfindungsgemäßes Verfahren in einer bevorzugten Ausführungsform als eine Art Flussdiagramm oder Ablaufdiagramm dargestellt. Insbesondere soll hier ein Vorgehen für das Andocken umfasst sein. Bei- spielhaft soll dies an einem Staubsaugerroboter als mobilem Gerät und einer Dockingstation als vorbestimmtem Objekt, wie auch in den Figuren 1a bis 2c gezeigt, erläutert werden.
Nach einem Start 300 wird in einem Schritt 302 zunächst eine (initiale) potentielle Position 304 (ggf. auch mit Orientierung) der Dockingstation bereitgestellt. Es gibt verschiedene Möglichkeiten, wie dem Staubsaugerroboter potentielle Positionen oder Posen der Dockingstation zur Verfügung gestellt werden können. Dies kann z. B. die Ausgangsposition sein, von der aus er gestartet ist, eine vom Benutzer festgelegte Position oder Pose (z.B. als Reaktion auf eine Meldung des Roboters, wenn er die Dockingstation an seiner vorherigen Position nicht erkennen kann); ebenso ist eine Liste möglicher Positionen oder Posen denkbar, die während der Laufzeit des Roboters gesammelt wird (z.B. durch Ausführen des Algorithmus zur Erkennung von Dockingstation, was besonders hilfreich sein kann, wenn der Roboter in der Nähe von Mauern fährt). Eine andere Möglichkeit ist, dass diese neuen Positionen oder Posen der Dockingstation durch einen anderen Prozess erstellt werden, der bei Bedarf gestartet werden kann, z.B. durch eine Erkundung des befahrbaren Bereichs bei der Suche nach Signaturen der Dockingstation.
In einem Schritt 306 bewegt sich der Staubsaugerroboter zu oder in die Nähe der Dockingstation; dies erfolgt basierend auf der potentiellen Position 304. Wenn der Staubsaugerroboter sich dann in der Nähe der Dockingstation, also an oder in der Näher der potentiellen Position, befindet, werden, in einem Schritt 310 Navigationsinformationen 308 bestimmt, um den Staubsaugerroboter zu der Dockingstation zu bewegen. Dies erfolgt zum einen basierend auf der potentiellen Position 304, zum anderen aber auch durch Bestimmen der Position der Dockingstation basierend auf einem 2D-Lidar-Scan (Menge von Punkten). Dies soll nachfolgend in Bezug auf Figur 4 näher erläutert werden. Diese Navigationsinformationen können hierzu z.B. auch Anweisungen umfassen, wie der Staubsaugerroboter genau navigieren soll (z.B. wie weit er wann fahren soll, wann er wenden soll, etc.). Insbesondere können auch Bewegungssteuergrößen zum Ansteuern der Antriebseinheit bestimmt werden. In Schritt 310 wird also ein Dockingma- növer durchgeführt, d.h. der Staubsaugerroboter fährt entsprechend der Navigationsinformationen 308 zur Dockingstation oder versucht dies jedenfalls. Die Detektion der Dockingstation, d.h. das Bestimmen von deren Position, wird insbesondere kontinuierlich bzw. wiederholt während des Dockingprozesses durchgeführt (die Regelung basiert auf diesem Input).
In Schritt 312 wird dann geprüft, ob das Dockingmanöver erfolgreich war oder nicht. Falls ja (Y), d.h. wenn der Staubsaugerroboter erfolgreich an der Dockingstation angedockt ist und z.B. einen elektrischen Kontakt zum Laden der Batterie hergestellt hat, so wird das Verfahren in Schritt 314 beendet. Dies kann z.B. dann der Fall sein, wenn die potentielle Position schon sehr genau an der tatsächlichen Position liegt.
Falls das Dockingmanöver hingegen nicht erfolgreich war (N), d.h. wenn die Dockingstation mit den Navigationsinformationen nicht erreicht worden ist, wird in Schritt 316 geprüft, ob die Dockingstation überhaupt erkannt worden ist. Falls die Dockingstation erkannt worden ist, d.h. wenn die Position der Dockingstation (bzw. von überhaupt einer Dockingstation) bestimmt worden ist (Y), wird erneut zu Schritt 306 gewechselt, um wieder in die Nähe der Dockingstation zu fahren, basierend auf der potentiellen Position 304 oder einer neuen potentiellen Position abgeleitet aus der im vorherigen Schritt 310 detektierten Position der Dockingstation. Es wird z.B. mit derselben potentiellen Position der Dockingstation (sie wurde an sich ja erkannt) erneut ein Dockingmanöver versucht, z.B. durch zurückfahren und erneutem Anfahren der Dockingstation mit z.B. etwas geändertem Anfahrwinkel oder dergleichen.
Falls in Schritt 316 jedoch keine Dockingstation erkannt wurde (N), kann in Schritt 318 eine neue potentielle Position der Dockingstation gesucht oder angefordert werden. Wenn in Schritt 320 eine neue oder andere potentielle Position der Dockingstation gefunden oder bereitgestellt (wie z.B. zu Schritt 302 erwähnt) wurde (Y), kann wieder zu Schritt 306 gewechselt werden. Der gesamte Prozess kann so lange wiederholt werden, bis er erfolgreich ist oder keine Positionen oder Posen mehr übrig sind (N); dann endet der Vorgang mit Schritt 322. In Figur 4 ist schematisch ein erfindungsgemäßes Verfahren in einer weiteren bevorzugten Ausführungsform als eine Art Flussdiagramm oder Ablaufdiagramm dargestellt. Beispielhaft soll dies erneut an einem Staubsaugerroboter ais mobilem Gerät und einer Dockingstation als vorbestimmtem Objekt, wie auch in den Figuren 1a bis 2c gezeigt, erläutert werden.
Insbesondere soll hier nun das Bestimmen der Position der Dockingstation basierend auf der Menge von Punkten umfasst sein, wie dies vorstehend in Bezug auf Figur 3 in Schritt 310 zur Bestimmung der Navigationsinformationen sowie in Schritt 316, wenn das Dockingmanöver mit der potentiellen Position nicht erfolgreich war, erwähnt wurde.
Hierzu wird dann zunächst in Schritt 400 eine Menge 500 von Punkten in der Umgebung bereitgestellt, z.B. mittels des 2D-Lidar-Scans. In Figur 5a ist hierzu eine solche Menge 500 von Punkten beispielhaft als ein 2D-Lidar-Scan gezeigt, wie sie z.B. in einer Umgebung mit der Dockingstation vor einer Wand von dem 2D-Lidar-Sensor, ähnlich wie in Figur 1 , erhalten wird.
Diese Menge 500 wird dann in einem Schritt 410 analysiert, und zwar hinsichtlich einer vorgegebenen Beziehung 412 mehrerer Punkte der Menge von Punkten untereinander. Diese vorgegebene Beziehung ist z.B. durch die flache Ebene 134 der Dockingstation bestimmt und fordert, dass Punkte auf einer geraden Linie einer gewissen Länge (die der Breite B der flachen Ebene 134 entspricht) liegen.
Es können hierzu, in Schritt 414, mehrere Gruppen von Punkten bestimmt werden, die z.B. eine ähnliche Beziehung mehrerer Punkte untereinander aufweisen; dies kann als ein Cluster-Vorgang bzw. als Clustern bezeichnet werden. In Figur 5b ist die Menge 500 an Punkten erneut dargestellt, allerdings nach einem Cluster-Vorgang, bei dem mehrere Gruppen 510, 512, 514, 516, 518 von Punkten bestimmt worden sind. Ein möglicher Algorithmus, mittels dessen diese Gruppen (oder Cluster) bestimmt werden können, ist z.B. wie folgt: Es kann z.B. ein Cluster-Kriterium wie ein gewisser Abstand vorgegeben werden. Für jeden Punkt wird dann nach und nach geprüft, ob dessen Abstand zum vorherigen Punkt höchstens dem gewissen Abstand entspricht. Falls ja, gehört dieser Punkt zum selben Cluster bzw. zur selben Gruppe. Falls nicht, wird ein neues Cluster bzw. eine neue Gruppe gebildet.
Anhand der Figur 5b ist z.B. zu erkennen, dass die Punkte, beginnend unten links, zunächst jeweils sehr nahe beieinanderliegen, dann liegt einmal der nächst Punkt nach vorne versetzt mit größerem Abstand. Dort wird eine neue Gruppe, die Gruppe 512, begonnen.
Diese Gruppen können dann, in Schritt 416 jeweils analysiert werden, und zwar hinsichtlich der vorgegebenen Beziehung 412 mehrerer Punkte der Menge von Punkten untereinander. Ein möglicher Algorithmus, mittels dessen eine Gruppe (oder Cluster) dahingehend analysiert werden kann, ob sie bzw. deren Punkte die vorgegebene Beziehung erfüllen, ist z.B. wie folgt.
Es kann z.B. ein Beziehungs-Kriterium wie eine gewisse Länge vorgegeben werden. Für jeweils zwei aufeinanderfolgende Punkte in der Gruppe bzw. im Cluster dann jeweils ein Abstand in x- und y-Richtung (dies gilt z.B. für eine Analyse in 2D in einem kartesischen Koordinatensystem; dies ist hier nur beispielhaft) bestimmt. Dies ist in Figur 5c mit Axi bzw. Ayi bezeichnet. Für diese Abstände wird dann jeweils eine Standardabweichung, also einmal in x- und einmal in y-Rich- tung bestimmt. Wenn deren Summe kleiner als das Beziehungs-Kriterium ist, kann davon ausgegangen werden, dass diese Punkte auf einer Linie liegen.
Auf diese Weise kann, in Schritt 420, eine Gruppe, hier 512, bestimmt werden, die die vorgegebene Beziehung erfüllen; diese Gruppe 512 soll dann eine Untermenge von Punkten sein, d.h. diejenige ausgewählte Gruppe, die für die Bestimmung der Position der Dockingstation verwendet wird.
Wenn mehr als eine der mehreren Gruppen die vorgegebene Beziehung erfüllen, wird in Schritt 422 diejenige Gruppe als die Untermenge bestimmt wird, die einen geringsten Abstand zum Staubsaugerroboter bzw. zum Lidar-Sensor hat. Der Abstand kann hierzu z.B. als mittlerer Abstand aller Punkte der Gruppe zum Staubsaugerroboter bzw. zum Lidar-Sensor bestimmt werden. Im Fall von Figur 5b kann z.B. auch die Gruppe 510 oder 516 die vorgegebene Beziehung erfüllen Hier kommt es auch darauf an, wie die vorgegebene Beziehung genau erfüllt ist. Anstelle des geringsten Abstands kann aber auch ein anderes Vorzugskriterium verwendet werden, basierend worauf die mehreren Gruppen geordnet und/oder eine der Gruppen als die Untermenge bestimmt wird. Beispielsweise kann ein geeigneter Algorithmus verwendet werden, der die Gruppe bestimmt. Auch für die Bestimmung des geringsten Abstands kann ein Algorithmus verwendet werden.
Optional können aber, z.B. anstelle des Schrittes 422, wenn mehr als eine der mehreren Gruppen die vorgegebene Beziehung erfüllen, in Schritt 424, diese mehreren Gruppen von Punkten, die die vorgegebene Beziehung erfüllen, hinsichtlich eines vorgegebenen Musters von Punkten der jeweiligen Gruppe untereinander analysiert werden. Dabei umfasst das vorgegebene Muster eine Variation von Intensitätswerten der Punkte, wobei die Variation von Intensitätswerten insbesondere durch eine Variation einer Reflektivität einer Oberfläche z.B. der Fläche 134‘ wie in Figur 2c gezeigt, bestimmt ist.
In Figur 5d ist hierzu beispielhaft die Gruppe 512 aus Figur 5b erneut dargestellt. Hier umfasst diese Gruppe 512 beispielhaft 16 Punkte, wobei jeweils vier aufeinanderfolgende Punkte einen Bereich oder ein Segment bilden, hier 512a, 512b, 512c, 512d mit jeweils vier Punkten. Die Punkte eines jeden dieser Segmente weisen dabei einen zwar innerhalb des Segments gleiche oder zumindest annähernd gleichen Intensitätswert auf, zwischen den Segmenten unterscheiden sich die Intensitätswerte jedoch. Es gibt also vier verschiedene Intensitätswerte.
Jedes Segment ist dabei eine Länge L lang, was z.B. der Länge L der vier Bereiche der flachen Ebene 134‘ gemäß Figur 2c entspricht. Wenn die vier Bereiche der flachen Ebene 134‘ gemäß Figur 2c jeweils verschiedene, damit also insgesamt vier verschiedene Reflektivität aufweisen, könnte dies der Gruppe hier in Figur 5c entsprechen. Wenn jedoch, wie in Bezug auf Figur 2c vorstehend erwähnt, es nur zwei verschiedene Reflektivität gibt, wäre das Resultat bei der Gruppe 12, dass z.B. die Segmente 512a und 512c einerseits und die Segmente 512b und 512d andererseits jeweils denselben Intensitätswert aufwiesen.
Je nach Muster auf der Dockingstation bzw. allgemein dem Objekt ergibt sich das Muster in der Gruppe. Mit anderen Worten kann eine jeder Gruppe von Punkten, die die vorgegebenen Beziehung bzgl. der Kontur erfüllt, hinsichtlich des durch die Dockingstation bzw. das Objekt vergebene Muster analysiert werden. Wenn das vorgegebenen Muster vier gleich lange Segmente aufweist, kann die Gruppe der Punkte jeweils in vier gleiche Anzahlen an Punkten - oder aber auch entsprechende Längen, falls z.B. die Punkten ungleichmäßig verteilt vorliegen - unterteilt werden. Dabei kann es in der Praxis vorkommen, dass die Punkte sich nicht genau entsprechend aufteilen lassen; es ist jedoch eine annähernd genaue Aufteilung ausreichend, zumal in der Praxis nicht nur 16, sondern eine deutlich höhere Anzahl an Punkten je Gruppe vorhanden sein wird.
Dabei können die einzelnen Intensitätswerte der Punkte insbesondere untereinander verglichen werden, d.h. es wird ein relativer Wert betrachtet, anstelle eines absoluten Wertes. Außerdem können auch je Segment mittlere Intensitätswerte (z.B. als arithmetisches Mittel der einzelnen Intensitätswerte des Segments) bestimmt werden, die dann über die Segmente hinweg verglichen werden.
Wenn dann eine der mehreren Gruppen dieses Muster erfüllt, kann diese Gruppe als die Untermenge bestimmt werden.
Basierend auf der Untermenge von Punkten wird dann in Schritt 430 die Position 432 der Dockingstation bestimmt. Die Position 432 als Position der Dockingstation wird dann in Bezug auf Figur 3 im Schritt 310 zur kontinuierlichen Bereitstellung der Navigationsinformationen 308 verwendet oder es kann dann wie in Bezug auf Figur 3 erwähnt aus Schritt 320 kommend wieder mit Schritt 306 fortgefahren werden. Wie erwähnt, kann die Dockingstation anstelle durch eine gerade Linie z.B. auch durch einen Kreisbogen mit bestimmtem Radius und/oder bestimmter Länge definiert sein. Hierzu ist in Figur 6a eine Gruppe 612 von Punkten gezeigt, die durch einen Kreisbogen mit Radius rest definiert ist. In Figur 6b eine Gruppe 612‘ von Punkten gezeigt, die durch einen Kreisbogen mit anderem Radius r‘est definiert ist. In Figur 6c eine Gruppe 612“ von Punkten mit Positionen xi bis xn gezeigt, die durch einen Kreisbogen mit Länge L definiert ist.
In solchen Fällen können die Punkte aus einem Cluster (Gruppe) auf einen Kreis gefittet werden, z.B. mit einer geschlossenen Least-Squares-Methode (z.B. gemäß https://lucidar.me/en/mathematics/least-squares-fitting-of-circle/, oder https://www.emis.de/journals/BBMS/Bulletin/sup962/gander.pdf). Dadurch werden der Radius des Kreises sowie die Koordinaten des Kreismittelpunkts xc bestimmt und der Radius und/oder die berechnete Kreisbogenlänge Lest (z.B.
Lest=0*rest) wird mit dem erwarteten Radius der Dockingstation oder ihrer Kreisbogenlänge verglichen. Das Cluster wird als Treffer akzeptiert, wenn die Abweichungen) für den Radius und/oder die Länge zwischen gemessenem und erwartetem Wert jeweils unter bestimmten Schwellwerten liegen.
Auch in diesem Fall lässt sich ein Muster mit Variation in den Intensitätswerten vorgeben und entsprechend können die Gruppen von Punkten dahingehend analysiert werden.
Es versteht sich, dass mit solchen vorgegebenen Mustern auch zwei oder mehr verschiedene Objekte unterschieden werden können, indem für jedes der gewünschten Objekte jeweils ein anderes Muster vorgegeben wird; dabei sollte darauf geachtet werden, dass verschiedene Muster in den Intensitätswerten der Punkte deutlich voneinander unterscheidbar sind. Damit kann z.B. nach verschiedenen Dockingstationen unterschieden werden, z.B. eine Dockingstation zum Laden des Roboters und eine zum Entleeren eines Staubbehälters oder dergleichen.

Claims

Ansprüche
1 . Verfahren zum Bestimmen einer Position eines vorbestimmten Objekts (130), insbesondere einer Dockingstation, in einer Umgebung (120), in der sich ein mobiles Gerät (100), insbesondere ein Roboter, befindet, und zu dem das mobile Gerät insbesondere navigieren soll, umfassend:
Bereitstellen (400) einer Menge von Punkten (500) in der Umgebung, wobei die Punkte insbesondere jeweils charakteristisch für einen Abstand zwischen dem mobilen Gerät (100) und Objekten (130) in der Umgebung sind,
Analysieren (410) der Menge von Punkten hinsichtlich einer vorgegebenen Beziehung (412) mehrerer Punkte der Menge von Punkten untereinander, wobei die vorgegebene Beziehung (412) durch eine äußere Kontur (134) des vorbestimmten Objekts (130) bestimmt ist,
Bestimmen (420), wenn eine oder eine von mehreren Gruppen (512) von Punkten aus der Menge die vorgegebene Beziehung erfüllt, dieser Gruppe von Punkten als eine Untermenge von Punkten,
Bestimmen (430), basierend auf der Untermenge von Punkten, der Position des vorbestimmten Objekts (130), und insbesondere Bestimmen von Navigationsinformationen (308) für das mobile Gerät (100), basierend auf der Position (432) des vorbestimmten Objekts.
2. Verfahren nach Anspruch 1 , wobei das Analysieren (410) der Menge (500) von Punkten umfasst:
Bestimmen (414) mehrerer Gruppen (510-518) von Punkten aus der Menge von Punkten, und
Analysieren (416) jeder der mehreren Gruppen hinsichtlich der vorgegebenen Beziehung.
3. Verfahren nach Anspruch 1 oder 2, weiterhin umfassend, Analysieren der einen oder zumindest einer, vorzugsweise jeder, der mehreren Gruppen von Punkten, die die vorgegebene Beziehung erfüllen, hinsichtlich eines vorgegebenen Musters von Punkten der jeweiligen Gruppe untereinander, wobei das vorgegebene Muster eine Variation von Intensitätswerten der Punkte umfasst, wobei die Variation von Intensitätswerten insbesondere durch eine Variation einer Reflektivität einer Oberfläche des vorbestimmten Objekts (130) im Bereich der Kontur bestimmt ist, wobei die eine oder eine solche der analysierten Gruppen als die Untermenge bestimmt wird, die dem vorgegebenen Muster entspricht. Verfahren nach Anspruch 3, wobei das vorgegebene Muster wenigstens zwei, vorzugsweise wenigstens drei, Bereiche umfasst, die abwechselnd Intensitätswerte oberhalb eines oberen Schwellwerts und unterhalb eines unteren Schwellwerts aufweisen. Verfahren nach einem der vorstehenden Ansprüche, wobei die vorgegebene Beziehung umfasst, dass die mehreren Punkte innerhalb eines durch die äußere Kontur (134) des vorbestimmten Objekts (130) vorgegeben zwei- oder dreidimensionalen Bereichs liegen, insbesondere auf einer Linie einer vorgegebenen Länge (B) liegen. Verfahren nach einem der vorstehenden Ansprüche, wobei, wenn aus der Menge von Punkten keine Gruppe von Punkten bestimmbar ist, die die vorgegebene Beziehung oder, in Rückbezug auf Anspruch 3, das vorgegebenen Muster erfüllen, eine neue Menge von Punkten bereitgestellt wird, die von der Menge von Punkten verschieden ist, insbesondere nach Bewegen des mobilen Geräts (100). Verfahren nach einem der vorstehenden Ansprüche, weiterhin umfassend:
Bestimmen, basierend auf der Position des vorbestimmten Objekts (130), einer Position und/oder Orientierung des mobilen Geräts (100) relativ zu dem vorbestimmten Objekt (130), und Bestimmen von Navigationsinformationen (308), und insbesondere von Bewegungssteuergrößen, für das mobile Gerät (100), um das mobile Gerät (100) zu dem vorbestimmten Objekt (130) zu bewegen.
8. Verfahren nach Anspruch 7, wobei das Bestimmen der Position und/oder Orientierung des mobilen Geräts (100) relativ zu dem vorbestimmten Objekt (130) weiterhin basierend auf zumindest einer Eigenschaft des vorbestimmten Objekts (130) und/oder der Umgebung (120) erfolgt, welche Eigenschaft eine Auswirkung auf die Punkte hat, wobei die zumindest eine Eigenschaft insbesondere eine Reflektivität einer Oberfläche des vorbestimmten Objekts (130) und/oder eine Neigung eines Untergrunds (122) vor dem vorbestimmten Objekt (120) umfasst.
9. Verfahren nach einem der vorstehenden Ansprüche, weiterhin umfassend:
Bereitstellen (302) einer potentiellen Position (304) des vorbestimmten Objekts, wobei das Bestimmen (430), der Position des vorbestimmten Objekts (130), und insbesondere der Navigationsinformationen (308) für das mobile Gerät (100), weiterhin basierend auf der potentiellen Position (304) des vorbestimmten Objekts erfolgt,, um das mobile Gerät zu dem vorbestimmten Objekt (130) zu bewegen.
10. Verfahren nach Anspruch 9, wobei, wenn das vorbestimmten Objekt (130) mit den Navigationsinformationen (308) nicht erreichbar ist oder nicht erreicht worden ist, eine andere potentielle Position des vorbestimmten Objekts bereitgestellt wird (320).
11. System (108, 110) zur Datenverarbeitung, umfassend Mittel zur Ausführung des Verfahrens nach einem der vorstehenden Ansprüche.
12. Mobiles Gerät (100), das eingerichtet ist, eine Menge von Punkten in einer Umgebung (120), bereitzustellen, wobei das mobile Gerät (100) weiter eingerichtet ist, eine Position eines vorbestimmten Objekts (130) in der Umgebung, die gemäß einem Verfahren nach einem der Ansprüche 1 bis 10 aus der Menge von Punkten bestimmt worden ist, zu erhalten, und insbesondere zur Navigation zu verwenden, bevorzugt mit einem Entfernungsmessungs- oder Lidar-Sensor (106) zum Erfassen der Menge der Punkte in der Umgebung, weiter bevorzugt mit einer Steuer- oder Regeleinheit (102) und einer Antriebseinheit (104) zum Bewegen des mobilen Geräts (100), und weiter bevorzugt mit einem System (108) nach Anspruch 10, wobei das mobile Gerät (100) insbesondere als Roboter, insbesondere als Haushaltsroboter, z.B. Saug- und/oder Wischroboter, Boden- oder Straßenreinigungsgerät oder Rasenmähroboter, als sich zumindest teilweise automatisiert bewegendes Fahrzeug, insbesondere als Personenbeförderungsfahrzeug oder als Güterbeförderungsfahrzeug, und/oder als Drohne ausgebildet ist.
13. Objekt (130), insbesondere Dockingstation, mit oder zur Verwendung mit einem System (108, 110) nach Anspruch 11 oder einem mobilen Gerät (100) nach Anspruch 12, wobei das Objekt (130) eine äußere Kontur (134) aufweist, anhand welcher eine Beziehung mehrerer Punkte der Menge von Punkten untereinander bestimmbar ist, und wobei das Objekt (130) bevorzugt weiterhin eine Variation einer Reflektivität einer Oberfläche im Bereich der Kontur aufweist.
14. Computerprogramm, umfassend Befehle, die bei der Ausführung des Programms durch einen Computer diesen veranlassen, die Verfahrensschritte eines Verfahrens nach einem der Ansprüche 1 bis 10 durchzuführen, wenn es auf der dem Computer ausgeführt wird.
15. Computerlesbares Speichermedium, auf dem das Computerprogramm nach Anspruch 14 gespeichert ist.
EP23738665.1A 2022-07-08 2023-07-03 Verfahren zum bestimmen einer position eines vorbestimmten objekts Pending EP4551961A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102022206983 2022-07-08
PCT/EP2023/068162 WO2024008615A1 (de) 2022-07-08 2023-07-03 Verfahren zum bestimmen einer position eines vorbestimmten objekts

Publications (1)

Publication Number Publication Date
EP4551961A1 true EP4551961A1 (de) 2025-05-14

Family

ID=89386931

Family Applications (1)

Application Number Title Priority Date Filing Date
EP23738665.1A Pending EP4551961A1 (de) 2022-07-08 2023-07-03 Verfahren zum bestimmen einer position eines vorbestimmten objekts

Country Status (3)

Country Link
EP (1) EP4551961A1 (de)
CN (1) CN119522377A (de)
DE (1) DE102023206256A1 (de)

Also Published As

Publication number Publication date
CN119522377A (zh) 2025-02-25
DE102023206256A1 (de) 2024-01-11

Similar Documents

Publication Publication Date Title
EP3482622B1 (de) Verfahren zur automatischen führung eines fahrzeugs entlang eines virtuellen schienensystems
DE102019114796A1 (de) Führungssystem und -verfahren für autonome fahrzeuge
EP3095016B1 (de) Vorrichtung zur orientierung für automatisch in werkshallen geführte, elektrisch betriebene, transportfahrzeuge
EP1987371B1 (de) Verfahren zur detektion von objekten mit einer schwenkbaren sensoreinrichtung
DE112020004644T5 (de) Systeme und verfahren zur autonomenbewegung von material
EP2479584B1 (de) Verfahren zur Bestimmung der Position eines selbsttätig verfahrbaren Geräts
EP3559773B1 (de) Verfahren zur navigation und selbstlokalisierung eines sich autonom fortbewegenden bearbeitungsgerätes
WO2021175403A1 (de) Container-verladeanlage und verfahren zur betriebsüberwachung darin
DE102020206144A1 (de) Parkassistent und Verfahren zum adaptiven Parken eines Fahrzeugs zur Optimierung eines übergreifenden Sensorerfassungsbereichs einer Verkehrsumgebung
DE10323643B4 (de) Sensorsystem für ein autonomes Flurförderfahrzeug
EP4551961A1 (de) Verfahren zum bestimmen einer position eines vorbestimmten objekts
WO2024008615A1 (de) Verfahren zum bestimmen einer position eines vorbestimmten objekts
EP4227707A1 (de) Verfahren zum bestimmen einer position und/oder orientierung eines mobilen geräts in einer umgebung
EP4296815A1 (de) Verfahren zum bestimmen einer trajektorie für ein mobiles gerät
DE112023004509T5 (de) Dezentralisierte verkehrsbeachtende Navigationsplanung für mobile Roboter
DE102016001839B3 (de) Fahrerloses Transportsystem
DE102023208364A1 (de) Verfahren zum Bestimmen einer Trajektorie für ein mobiles Gerät
DE102023136270B4 (de) Autonom fahrendes Transportsystem und ein Verfahren zum Betrieb eines solchen autonom fahrenden Transportsystems
EP4357808A1 (de) Verfahren zum bestimmen von markern für eine position und/oder orientierung eines mobilen geräts in einer umgebung
DE102024208733A1 (de) Verfahren zum Bestimmen eines Bewegungspfads für ein mobiles Gerät
EP4443261B1 (de) Verfahren zum bestimmen einer trajektorie für ein autonomes fahrzeug
DE102024208730A1 (de) Verfahren zum Bestimmen eines Bewegungspfads für ein mobiles Gerät
DE102024205556A1 (de) Verfahren zum Bestimmen einer Trajektorie für ein mobiles Gerät
DE112024001690T5 (de) Steuerverfahren, programm und bewegungskörper
DE102022201427A1 (de) Verfahren zum Bestimmen einer Position und/oder Orientierung eines mobilen Geräts in einer Umgebung

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20250210

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)