WO2022152875A2 - Situationsbewertung mittels objekterkennung in autonomen mobilen robotern - Google Patents

Situationsbewertung mittels objekterkennung in autonomen mobilen robotern Download PDF

Info

Publication number
WO2022152875A2
WO2022152875A2 PCT/EP2022/050787 EP2022050787W WO2022152875A2 WO 2022152875 A2 WO2022152875 A2 WO 2022152875A2 EP 2022050787 W EP2022050787 W EP 2022050787W WO 2022152875 A2 WO2022152875 A2 WO 2022152875A2
Authority
WO
WIPO (PCT)
Prior art keywords
area
robot
amr
information
objects
Prior art date
Application number
PCT/EP2022/050787
Other languages
English (en)
French (fr)
Other versions
WO2022152875A3 (de
Inventor
Harold Artes
Dominik Seethaler
Reinhard Vogel
Jorge Perez MINGUEZ
Michael Schahpar
Hubert STREICHER
Ondrej Hlinka
Ondrej SLUCIAK
Marc EGGER
Original Assignee
RobArt 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 RobArt GmbH filed Critical RobArt GmbH
Publication of WO2022152875A2 publication Critical patent/WO2022152875A2/de
Publication of WO2022152875A3 publication Critical patent/WO2022152875A3/de

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0219Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0251Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision

Definitions

  • the present description relates to the field of autonomous mobile robots, in particular concepts and techniques for object recognition and situation assessment based thereon in autonomous mobile robots.
  • autonomous mobile robots autonomous mobile robots
  • service robots are increasingly being used in the household sector, for example for cleaning or for monitoring an apartment.
  • AMRs can have various sensors to sense their surroundings. Sensors can, for example, detect the position of obstacles (e.g. walls, doors, furniture and other objects standing on the floor, etc.) and create a map of the robot's area of operation. The map serves as the basis for the robot's movement and work planning, so that it can carry out its task efficiently.
  • obstacles e.g. walls, doors, furniture and other objects standing on the floor, etc.
  • Some AMRs are able to identify specific objects in their vicinity and plot their position on the map.
  • the object can be identified, for example, by an artificial marking such as an RFID tag or by means of digital image processing (if the robot has a camera). If the robot is additionally equipped with a manipulator such as a robot arm, the robot can use the manipulator to transport the object to a desired location.
  • the following description relates to the further development of an AMR to enable improved recognition and assessment of a situation that the robot is currently confronted with.
  • a method for an autonomous mobile robot includes: navigating the AMR through a deployment area using one or more navigation sensors while the AMR is performing a service task; Acquiring information about the surroundings of the AMR in the operational area using at least one first sensor, for example the navigation sensor; automatically detecting objects and classifying the detected objects by means of a classifier based on the detected information, an object class being determined; and storing detected objects, including the determined object class, in an electronic map of the AMR.
  • a method of controlling an AMR includes constructing a map of the robot's operational area; the subdivision of the operational area into sub-areas and entries of the sub-areas in the map; and determining a metric for each sub-area and a specific service task of the robot, wherein the metric represents a probability or duration with which the robot can complete the service task in the respective sub-area.
  • a method for controlling an AMR includes navigating the robot through a robot deployment area and performing a surface finishing task or a surface inspection task in at least a portion of the robot deployment area; detecting at least part of the robot deployment area by means of an optical sensor; and the classification of the data supplied by the optical sensor by means of a classifier, the classifier calculating a value which represents a property of the surface.
  • a further exemplary embodiment relates to a method which comprises the following: acquiring information in an application area of an AMR by means of at least one first sensor, for example a navigation sensor; automatically detecting areas in the recorded information by means of a classifier, and examining the recorded information for objects belonging to a specific class and which are considered data protection objects.
  • a further exemplary embodiment relates to a method comprising the acquisition of information in an area of application by means of at least one first sensor, for example the navigation sensor; storing the operational area on a map; and the definition of data protection areas in the map, which determine whether the information in this area may be sent to a communication link-connected entity, in particular a cloud server
  • FIG. 1 illustrates an example of an autonomous, mobile robot in its robot application area with 2 objects shown (both walls W1 and W2).
  • Figure 2 is an exemplary block diagram showing various units of an autonomous mobile robot and peripherals such as a base station of the robot.
  • FIG. 3 illustrates an AMR which detects objects in the environment using external and internal sensors, classifies them and assigns attributes to the classified objects.
  • FIG. 4 shows an example in which a cleaning AMR recognizes based on a situation (a) that a partial area cannot be cleaned. Due to its functions, the first subtask is postponed and a service task 2 is generated. The same AMR then performs service task 2 and then (b) resumes service task 1 (cleaning).
  • FIG. 5 shows an example in which a cleaning AMR recognizes on the basis of a situation (a) that a partial area cannot be cleaned. Due to its functions, the first subtask is postponed and a service task 2 is generated. Another AMR (101) AMR then performs service task 2. The AMR 100 can then resume service task 1 (cleaning).
  • FIG. 6 shows an example of the surroundings of an AMR and the detected objects and their attributes.
  • FIG. 7 shows examples in which situations are recognized and, based on the situations, service tasks are started, modified or stopped.
  • FIG. 8 shows an example of a table in which, in addition to the standard command and the associated standard solution, other conditions are monitored and situations can thus be identified. If these circumstances occur, special solutions can be used to react. This can either be generated by experience already present in the robot or by a higher-level unit.
  • FIG. 9 shows a living space whose areas have been broken down into sub-areas and/or zones, with the sub-areas being assigned metrics (in this case completion probabilities). Based on these metrics, the order in which processing takes place can be determined.
  • FIG. 10 shows the way in which an AMR can make requests to higher entities. These can be structured hierarchically as shown. Eg intermediate server, cloud service, etc. The determined results can optionally be sent to all intermediate stations or other AMRs.
  • FIG. 11 shows an object (water stain) which cannot be fully detected due to the field of view of the AMR. It is shown that the AMR can fully record this by taking additional measurements at other positions.
  • FIG. 12 schematically illustrates a floor area that has soiling. Based on this, the AMR can determine the degree of contamination and determine whether cleaning should take place or not.
  • Figure 13 Shows a probability map that can be created over time. It can be used to determine where objects are likely to be.
  • FIG. 14 shows a robot which, based on the internal diagnosis and additional knowledge such as map structure or cloud services, proposes the purchase of spare parts to the user.
  • FIG. 15 shows the map of a living space in which data protection areas, data protection objects and various restricted areas are entered. These can be entered both automatically and manually.
  • Figure 16 illustrates a robot card
  • An autonomous mobile robot (AMR) as a service robot automatically performs one or more tasks in a robot deployment area.
  • Examples of the tasks mentioned are cleaning a floor area in the area of application, monitoring and inspection of the area of application for the robot, transporting objects within the area of application (e.g. an apartment) or other activities, for example to entertain a user.
  • Such tasks correspond to the actual determination of the service robot and are therefore referred to as service tasks.
  • the exemplary embodiments described here mostly relate to a cleaning robot. However, the concepts and examples described here can easily be applied to all applications in which an AMR is to carry out a task in a defined operational area in which it can move and navigate independently using a map.
  • 1 illustrates an exemplary cleaning robot 100 as an example of an AMR.
  • AMRs include service robots, surveillance robots, telepresence robots, etc.
  • Modern AMRs navigate map-based, ie they have an electronic map of the robot's operational area. In some situations, however, the AMR has no or no up-to-date map of the robot's area of operation and has to explore and map its (unfamiliar to it) surroundings. This process is also known as “exploration”.
  • the AMR detects obstacles as it moves through the robot's area of application. In the example shown, the AMR 100 has already detected portions of walls W1 and W2 of a room. Methods for exploring the area surrounding an AMR are known per se. A commonly used method is called SLAM (Simultaneous Localization and Mapping).
  • the AMR recognizes obstacles and enters them on a map.
  • obstacles can be walls, doors, furniture and other objects standing on the floor.
  • Most AMRs only recognize obstacles based on their outer contours and store them in their electronic map of the area.
  • the AMR usually does not distinguish whether a detected obstacle is a piece of furniture, a suitcase standing around or a pile of clothing lying on the floor. That is, an obstacle is essentially recognized as a boundary line that cannot be driven over, but an obstacle is not identified as a specific object (e.g. a suitcase).
  • the identification of an obstacle as an object (or as an object of a specific category) is possible, for example, using a camera and image processing. Alternatively, certain objects can also be provided with a marking that the AMR can easily detect (e.g. an RFID tag).
  • the object recognition - ie the identification of an obstacle as a specific object or as an object of a certain category - allows the AMR to react in a specific way to a recognized object.
  • the AMR In order to be able to make the behavior of the AMR more "intelligent", it is desirable that the AMR not only be able to recognize certain objects, but also evaluate the situation with which the AMR is currently confronted and adapt its behavior based on this evaluation.
  • a "situation" is determined by the relevant objects in the work area or on the robot, or the information derived from them that is available to the AMR (e.g. maps, errors and message history).
  • a unit or a module can be an independent assembly or part of software for controlling the robot.
  • a unit can have multiple sub-units.
  • the software responsible for the behavior of the robot 100 can be executed by the control unit 150 of the robot 100 .
  • the control unit 150 includes a processor 155 configured to execute software instructions contained in a memory 156 .
  • Some functions of the control unit 150 can also be carried out, at least in part, with the aid of an external computer. This means that the computing power required by the control unit 150 can be at least partially outsourced to an external computer which can be reached, for example, via a home network or via the Internet (cloud).
  • the AMR 100 includes a drive unit 170, which can have, for example, electric motors, gears and wheels, whereby the robot 100 - at least theoretically - can reach any point in its field of application.
  • the drive unit 170 is designed to convert commands or signals received from the control unit 150 into a movement of the robot 100 .
  • the AMR 100 includes a communication unit 140 to establish a communication link 145 to a human-machine interface (HMI) 200 and/or other external devices 300.
  • the communication connection 145 is, for example, a direct wireless connection (e.g. Bluetooth), a local wireless network connection (e.g. WLAN or ZigBee) or an internet connection (e.g. to a cloud service).
  • the HMI 200 can output information relating to the AMR 100 to a user, for example in a visual, acoustic, tactile or other form (e.g. battery status, current service order, card information such as a cleaning card, etc.) and user commands for the AMR 100 can be received.
  • Examples of an HMI 200 are tablet PCs, smartphones, smartwatches and other wearables, home computers, smart TVs, or devices with a digital voice assistant.
  • An HMI 200 can be integrated directly into the robot, as a result of which the robot 100 can be operated using buttons, gestures and/or voice input and output, for example.
  • Examples of external devices 300 are computers, tablet PCs, smartphones and servers on which calculations and/or data are offloaded, external sensors that provide additional information, or other household devices (e.g. other AMRs) with with which the AMR 100 may collaborate and/or exchange information.
  • the AMR 100 may include at least one service unit 160 to perform a service task.
  • the service unit 160 is, for example, a cleaning unit for cleaning a floor surface (e.g. brush, suction device, wiping device or combinations thereof) or a device for gripping and/or transporting objects (e.g. gripping arm).
  • the service unit 160 can be a multimedia unit consisting of, for example, a microphone, camera and screen in order to enable communication between a number of people who are physically far away.
  • a robot for monitoring or inspection detects unusual events (e.g. fire, light, unauthorized persons, etc.) with the help of suitable sensors (camera, motion detector, thermometer) on control trips and informs a control point about them, for example.
  • the AMR 100 includes a sensor unit 120 with various sensors, for example one or more sensors for collecting information about the structure of the environment of the robot in its area of application, such as the position and extent of obstacles - often also known as landmarks (landmarks). designated - in the operational area.
  • Sensors for capturing information about the environment are, for example, sensors for measuring distances from the AMR to objects (e.g. walls or other obstacles, etc.) such as an optical, acoustic or other sensor that uses triangulation, time-of-flight measurement of an emitted signal or other methods , can measure distances (triangulation sensor, 3D camera, laser scanner, ultrasonic sensors, etc.).
  • a camera or chemical analysis sensors may be used to gather information about the environment.
  • the control unit 150 can be designed to provide all the functions that the robot needs to move independently in its area of use and to perform a task.
  • the control unit 150 includes, for example, the processor 155 and the memory module 156 in order to run software.
  • the control unit 150 can based on the information received from the sensor unit 120 and the communication unit 140 control commands (z. B. control signals) for the service unit 160 and the Produce drive unit 170.
  • the service unit can be equipped with drives, for example to perform mechanical work, but it can also be designed in any other form, for example as a transmission unit to operate external devices or as an interface to provide performance information.
  • the drive unit 170 can convert these control signals or control commands into a movement of the robot.
  • the software contained in the memory 156 can also be of modular design.
  • a navigation module 152 provides, for example, functions for automatically creating a map of the operational area and the position of the robot 100 in this, as well as for planning the movement of the robot 100 .
  • the control software module 151 provides, for example, general (global) control functions and can form an interface between the individual modules.
  • control unit 150 can include functions for navigating the robot in its area of application, which are provided by the navigation module 152 mentioned above. These functions are known per se and may include, but are not limited to, any of the following:
  • map-based path planning (trajectory planning) from a current position of the robot (starting point) to a destination;
  • an (electronic) map 500 that can be used by the AMR 100 is a collection of (map) data for storing location-based information about a field of application of the robot and the environment relevant to the robot in this field of application.
  • a map thus represents a large number of data sets with map data, and the map data can contain any location-related information. Partial aspects of these data records, such as a recognized contamination, a cleaning that has been carried out or recognized rooms, can also be referred to as a map (in particular a contamination map, cleaning map, room map). From the overall map partial maps can also be extracted. On the one hand, this affects locally defined areas of the map. On the other hand, partial maps are also conceivable, which depict information from the overall map that is dependent on the category.
  • Coordinates are used to describe the location reference of information. For example, when using a raster map for navigation, these coordinates can refer to the cells of the raster map. Alternatively or additionally, the position, extent and/or orientation of obstacles, objects, rooms, partial areas or other structures relative to a suitably chosen coordinate system can be described by means of coordinates.
  • some structures can be provided with a label in order to be able to clearly identify them for a user-robot interaction.
  • Such named structures are e.g. area objects or attributes. Areas represent working areas or their depiction on the map. Objects are the items located in the working area or the corresponding depiction on the map. This can also result in nesting.
  • objects can also contain areas or objects, or areas can contain sub-areas. Both areas and objects can have attributes. These attributes are, for example, the color or temperature of the object or area.
  • the r coordinates, the position and/or extent of the structure and the alignment can also be understood as attributes of the areas or objects. It should be noted that attributes can also change.
  • the naming of areas, objects and attributes can in principle be done by the user, by a name suggestion by third parties or devices, or automatically based on standard identifiers that are selected by object recognition.
  • the robot can use its sensors to identify an area with tables and chairs and, based on this, determine the coordinates of a sub-area that is given the designation dining room.
  • All names can be in natural language, such as room names (living room, dining room) or object names (couch, table). This is favorable, for example, when the user chooses the name.
  • the name can also be an abstract identifier.
  • Various natural language identifiers can be mapped to this abstract identifier. This allows the underlying data structures to be easily applied to different national natural languages.
  • the exemplary embodiments described below aim to improve the AMR's understanding of the environment by recognizing the situation and evaluating the position in which the robot is located, thereby enabling optimized behavior, new possibilities and possible uses for Realize AMRs, as well as increase the efficiency and quality of service tasks.
  • An AMR usually has sensors that enable it to recognize obstacles in the immediate vicinity and, for example, to prevent a collision with them.
  • the data recorded by the sensors often lead to a direct change in behavior.
  • Detected obstacles can also be entered on a permanent or temporary map and are then usually used for path planning or navigation. Such methods are known per se and will not be discussed in more detail here. There is usually no extended analysis of the sensor data when an obstacle is entered on the map.
  • AI artificial Intelligence
  • the measurement data from numerous sensors can be used to classify/categorize objects.
  • Object recognition is currently often carried out by analyzing digital images.
  • objects can also be recognized on the basis of other characteristics.
  • spectral analyzes or sensors that detect molecules through direct contact can provide meaningful data on objects.
  • data from a number of sensors could also be combined, or sensor data could be used in a temporal or spatial sequence.
  • a classification accuracy can also be calculated and optionally saved. This indicates the probability of a specific object being involved. If the results of object detection are not consistent, it is also possible to classify the object as a multi-object. Such an object either cannot be determined with sufficient accuracy using the previous analysis and could fall into several classes or corresponds to a class that cannot be assigned.
  • a further sensor is arranged in an external device 300 (eg another AMR) which is configured to communicate with the AMR 100 via a wireless communication link 145 (cf. FIG. 2).
  • the external device 300 can be any device such as a drone with a camera. That is, the sensors available to the AMR can be permanently or movably mounted on the AMR or also be "outsourced" to another device.
  • the external device 300 does not have to be a mobile device, but can also be arranged in a stationary manner in the area where the robot is used, such as a surveillance camera, for example.
  • the sensors 121, 122, 123, etc. of the sensor unit 120 can also use additional auxiliary or supporting elements.
  • one or more lighting units can be used to better illuminate the environment (or part of it).
  • a suitable light source can also be necessary for the aforementioned spectral analysis for the detection of substances. Evaluating objects based on their shadows can also require suitable lighting. Tests have shown, for example, that small objects lying on the ground can be recognized very well by the shadow if the light source is placed close to the ground and the light is approximately parallel to the ground. In order to evaluate the resulting shadow, a parallax of transmitter and receiver is of course necessary.
  • the sensor unit 120 thus contains all internal and external sensors which provide the AMR with data about its surroundings.
  • the sensor unit 200 is not a physical component of the robot, but a functional unit.
  • the sensor unit can also monitor internal states of the AMR or internal states can be interpreted as signals available to the sensor unit. For example, internal messages, warnings or error messages that occur on the AMR and are only recognizable within the system can be understood as sensor signals.
  • External data sources such as cloud-based databases or internet services that provide information (e.g. weather forecasts) can also be interpreted as AMR sensor signals.
  • the AMR 100 includes an object classifier 157 that may be implemented as part of the AMR's controller 150 .
  • This object classifier 157 can essentially be seen as software that is executed on the processor 155, for example. Alternatively, the execution of the software can be completely or partially outsourced to an external server (cloud computing).
  • the object detected as an obstacle can be assigned to a class/category of objects (object classification).
  • object classification can be assigned to a classified object.
  • an object can be assigned a name (e.g. "chair", “plant"), geometric data (e.g. floor plan, height%), physical parameters (temperature, chemical composition, state of aggregation) and other attributes.
  • the Attributes can be determined from a direct measurement using one or more sensors, by evaluating (analyzing) data from a number of sensors, or by calculating using already existing attributes. If the classification of an object is repeated later, these attributes can be changed if they have changed. The history of the attributes can also be saved. When performing a service task, it can be relevant what temperature an object has, how large a specific object is.
  • a service task is currently being performed by an AMR, it can evaluate the situation in which the AMR is currently located based on one or more recognized and classified objects (and optionally their attributes).
  • the situation of the AMR is determined by the relevant objects in the work area or on the robot, or the information derived from them that is available to the AMR and optionally other circumstances.
  • a situation can be evaluated more precisely the more information the AMR has about the objects in its environment. When a situation is detected, a specific combination of these derived information and circumstances is sought. If a situation is recognized, it can be checked whether the AMR has already responded appropriately to this situation. If so, this reaction can be initiated. If not, the AMR can try to develop or request a corresponding response.
  • the advantage of this situation detection is that the AMR can easily “learn” new situations by reloading them. (E.g. by the user specifying them or by adding them via a network connection) This allows service orders to be better adapted to the area of application.
  • the classification of detected obstacles/objects the determination of attributes of the object (which can depend on the object class) and possibly the consideration of other environmental parameters (e.g. time, weather, room temperature, etc.) enable the assessment of the current situation , with which he is confronted.
  • the AMR can change its behavior "intelligently” and adapt it to a specific situation.
  • the robot can select an appropriate behavior depending on the assessment of a situation or adapt its current parameters, which determine the behavior of the AMR, and thus react "intelligently” and specifically to the situation.
  • service tasks can be performed better and more efficiently.
  • Objects to be classified can be inanimate objects as well as people, animals or plants.
  • the AMR may display a specific behavior which depends, for example, on the person or animal specifically identified. For example, it might be desirable to provide items needed for certain people, or to change the volume of a service task in the case of pets (eg, by slowing down the AMR and, in the case of a cleaning robot, reducing the suction power).
  • object classification and situation assessment There are numerous applications for the concepts of object classification and situation assessment described here, some of which are described below.
  • vacuum robots could avoid puddles on the floor, since liquid dirt is not part of the robot's area of responsibility.
  • it makes sense for example, to record the geometric size of the object and the relative path or orientation of the object to the AMR and, based on this, to generate blocked areas in the area of use, for example.
  • these restricted areas would be lifted or deleted again due to changed circumstances or a new situation.
  • strategies for adequately fulfilling the service task can be derived.
  • the supply of devices with energy or information or other consumables is also conceivable. For example, batteries from devices that are not powered by the mains could be charged regularly, when needed or on demand.
  • a supply of information e.g. updates from devices that cannot be reached directly, would also be conceivable.
  • the objects to be maintained can provide information or issue situation-related orders.
  • an update routine in the cloud or in the device could ask whether outdated firmware is being used. If so, an update mechanism could be started under optional additional situational conditions (e.g. physical accessibility).
  • the firmware would then be loaded onto the AMR in a first step. The AMR then moves to an area that is suitable for data transfer to the device and, in the last step, starts the update program.
  • object recognition This is how an object could be recognized by classical image processing. However, it is also conceivable, for example, to recognize an electronic device based on its presence in the WLAN or a transmission signal. Another possibility is spectral analysis, which can be used to gain insights into the chemical structure. This makes it possible to recognize certain objects or situations and to optimize desired behavior when performing a service task through the AMR and to avoid undesirable behavior.
  • an AMR can check the current work area to see whether it is consistent with the service task. If this is the case, the service task can be processed in the conventional manner. If it is recognized that the situation meets certain criteria, an event is triggered that allows the AMR to react in a suitable way. (Fig.
  • the decision on how to react in the respective situation could be calculated both by the AMR (local special solution) and by a higher-level decision-making authority (external special solution) which the AMR requests. The decision could then cause changes in the service task of the AMR as well as reactions from other external devices.
  • the AMR can perform more than one service task. In this way, the AMR can be reloaded with simple functionalities for new situations. In this way, a cleaning AMR could also take over control or maintenance functions in an apartment at the same time. If the AMR then carries out a service task, it can also take care of situation detection with regard to other service tasks at the same time. If a corresponding situation is recognized, an event mentioned above is triggered and a calculation is made as to how to proceed.
  • a further possibility of improving the service tasks can be achieved in that the sequence in which the service tasks are carried out is based on how likely it is that the service task will be completed, what priority certain service tasks have or how quickly they can be carried out.
  • a logical sequence of service orders can also be implemented.
  • a task completion probability could thus be assigned to a service task or parts of the service task according to the situation.
  • the AMR can determine which activities or tasks are to be performed next and in what form these actions (ie activities or tasks) are performed. For example, depending on the situation, current service tasks can be changed or interrupted in order to first carry out another task before the original service task is continued.
  • FIG. 9 shows an apartment in which completion probabilities have been assigned to the rooms.
  • FIG. 9 shows a room in which completion probabilities have been assigned to the rooms. This could, for example, be generated from the detected objects that are in the room or also be based on other estimates. Because of the mapping in this case, the order would be: 1(99%) / 3(90%) / 2(70%) / 5 (50%). Area 6 would not be processed at all and would be treated like a restricted area. Such an event could of course result in further actions such as a message to the user.
  • the examples presented could also be implemented with metrics other than probability of completion.
  • the calculated completion time or the energy expenditure could also be used or used. In this case, depending on the setting for cleaning in room 1 (99%), area 5 (50%) could be bypassed once (e.g. if the detour is short) and driven through once (e.g. if the detour is short).
  • a currently performed task can be aborted and a new task can be started.
  • the robot can react to a specific situation in which it is currently located and which it has evaluated according to specific, definable criteria.
  • the AMR based on a situation assessment, comes to the conclusion that a necessary measure cannot be carried out by the AMR itself (for example opening a closed door or moving an obstacle).
  • the AMR can inform the user so that he can take the necessary action.
  • Cooperation with other AMRs or other external devices is also possible.
  • an AMR could then commission other AMRs or external devices, or itself be assigned an order by another AMR.
  • such generation of orders does not necessarily have to be carried out by AMR itself, but can also be carried out, for example, by a higher-level unit Fig. 10 (sketch 6).
  • An AMR would then make a query (A1) in a situation that cannot be solved by itself.
  • the higher-level unit e.g. cloud server
  • the higher-level unit e.g. cloud server
  • computers can also be interposed.
  • this could be a hotel computer that is responsible for several AMRs. It could be that if the cloud finds insufficient solutions, a human will be assigned to assess the request Al.
  • orders are generated and commissioned for available AMRs.
  • the LI solution is made available for other AMRs.
  • FIG. 3 based on a similar request (A2) from another AMR (100(2)), for example, an L2 is calculated from LI and then made available directly by the cloud.
  • a sequence of actions or multiple parallel actions could also be triggered based on a specific situation. For example, it is possible that a The cleaning robot encounters an obstacle and is therefore unable to completely clean a certain area (Fig. 4 (a). In such a situation, the AMR could react, for example, by instructing one or more transport robots to move the obstacle (transport robot not shown) After the chairs have been moved, there is a changed room (Fig. 4(b)). After feedback that this transport task has been completed or at a specified time, the cleaning robot (AMR) could continue and complete the service order "Clean room A".
  • the AMR could be conditioned so that the user or the entity that commissioned the AMR provides feedback on the quality of the service performed.
  • the feedback could e.g. be given after assessment by the user, or also on the basis of before and after comparisons made by the AMR itself.
  • the appraisal could of course also be carried out by a separate inspection unit.
  • the user could be provided with an evaluation option with which he can report his satisfaction with the completion of a service order as good or bad (or e.g. on a scale from 5 to 1).
  • the evaluation of individual actions or areas in which a task was performed could also be queried in this way and used to condition the behavior of the AMR.
  • the AMR then has the opportunity to react differently (better) in the same or similar situations. Over time, the AMR could therefore adapt very well to the area of application.
  • a major advantage of an AMR compared to other devices is, among other things, that it can move autonomously without the user having to do anything and can also perform manipulations.
  • the AMR can therefore change its position during a measurement or between two measurements. This also makes it possible, for example, to carry out manipulations for the purpose of object identification. It could happen that clothes lying around (see Fig. 5, AMR 100 detects an object "Load of laundry") is identified as clothing, but the type of clothing (socks, pants, etc.) cannot be assigned due to its location. If the algorithm used for object classification comes to the conclusion that, for example, a manipulation such as unfolding the clothing makes identification more likely, the AMR could try to unfold the clothing or change its position or lighting, and then repeat detection and classification.
  • the unfolding of the clothing could only be triggered if the manipulation is classified as certain or if a significant increase in the classification quality can be expected as a result of the manipulation.
  • the points mentioned depend heavily on the construction of the AMR.
  • an AMR with gripping arms may be better suited for unfolding clothing than an AMR that can perform manipulations solely by pushing.
  • the AMR can outsource the calculations or parts thereof to a higher-level control system such as a server (e.g. a cloud computing service).
  • a server e.g. a cloud computing service
  • the quality of the classification can often be improved in this way.
  • the AMR can request the server to check an object classification that has already been carried out.
  • the higher-level unit can then confirm or correct the previous classification. Similar requests can also be directed to the user. It can also depend on the result of the first object classification carried out by the AMR (e.g. on the classification quality achieved) whether a request for verification is sent to the server. It is also conceivable that requests to the server or the user relate to the assessment of a situation, or that further steps for service orders are requested.
  • the object classification by the server could result in a request being sent to the user, in which case an image of the situation ascertained should be sent to the user. He can then decide how to proceed
  • an AMR 100 is executing a service task (cf. Fig. 5, step S50) and it cannot continue, for example due to a specific situation (i.e. the evaluation of a recognized situation shows that the service task cannot be continued - see Fig. 5 , Area X cannot be reached because of a mountain of laundry, step S51), the AMR 100 could, for example, request a solution from the higher-level unit (eg a server), such as changing the situation (See Fig. 5, step S52). If there are other AMRs in the operational area (see FIG.
  • the higher-level unit could then generate a sequence of service orders to the AMRs 100, 101, 102 in the operational area, which aim to change the problematic situation. This sequence of service orders could then be performed by one or more AMRs 100, 101, 102 in the field.
  • the AMRs that are available in the operational area could either be transmitted by the requesting AMR or be known to the higher-level system in some other way.
  • a decision as to whether and how a service order (to perform a task) should be carried out can be made, for example, depending on the configuration by the higher-level unit, by a local controller in the area of operation, on site, after feedback from the user, or depending on the recognized situation .
  • the AMR can “learn” additional object classes in the course of an update of the classifier. For example, a cleaning robot could then receive modified/extended class definitions based on data from previously detected objects (e.g. clothes or toys lying around).
  • a request to a higher-level control system is usually associated with greater effort, it can make sense, depending on the application, to make decisions that affect the behavior of the AMR locally (i.e. the robot decides for itself) and only if necessary, to forward inquiries to the higher-level control system. Whether inquiries are carried out could be done, for example, by a cost-benefit analysis. If the effort is too high, work is done locally. If the effort is justifiable, an inquiry will be made. The effort could be monetary, temporal, energetic or a combination of these aspects. The probability of success could also be calculated and taken into account.
  • the higher-level control system can also have a user interface in order to be able to communicate with a user and to give the user the opportunity to make decisions based on the data determined by the robot and output via the user interface, to make classifications / categorizations or other tasks take over (e.g. to remove the mountain of laundry mentioned).
  • An evaluation of the decisions and classifications made by the user can also be used to train a learning algorithm. In the course of time, such an algorithm could take over the evaluation/assessment of the data determined, and queries to the user become superfluous.
  • the adaptability of a robot could go so far that it does not require any special adjustment by the user after it has been set up and switched on. For example, he could start immediately with a reconnaissance or cleaning trip, since almost all users do this. He could then create a suitable work plan based on the area of work and then carry it out. For example, he could start cleaning in the mornings on weekdays. If people or pets are detected, he could reschedule service orders in areas where nobody is currently, etc. Only if the user is dissatisfied could the user send feedback to the AMR for the first time. The robot could then, for example, search specifically for the reasons for dissatisfaction or adopt the most likely change. Of course, this is of particular advantage for users who do not want to deal with the AMR and its possibilities in detail.
  • the evaluation of the (measurement) distribution determined by the robot can be carried out by different entities.
  • an AMR could request a higher-level cloud server. This algorithm can determine that a request cannot be specified with sufficient accuracy. The algorithm then commissions a person with this evaluation, for example. If this person cannot make a decision either, the request could be forwarded to a specialist. Once the decision is made, the decision could be fed back to some or all of the previous decision-making bodies.
  • the decision could be fed back to some or all of the previous decision-making entities. For example, an AMR could recognize an object but not assign it to a class clearly enough, a request could be made. After a sufficiently precise assignment by a higher authority, this decision can optionally be used in the future for lower-level authorities
  • requests to the higher-level control system are designed to be configurable, since not all users are interested in having their data processed by external entities (servers, cloud services, people, etc.).
  • external entities servers, cloud services, people, etc.
  • requests to the higher-level control system are designed to be configurable, since not all users are interested in having their data processed by external entities (servers, cloud services, people, etc.).
  • servers, cloud services, people, etc. There is the possibility that, for example, before the transmission of data to the superordinate Control system data or parts thereof are manipulated, removed or made unrecognizable. For example, faces could be hidden before transmission.
  • Certain areas of the robot's field of application can also be subject to restrictions.
  • the robot can be configured so that no images from the study or the bathroom are allowed to be transmitted. Encryption or abstraction is also conceivable. Thus, only authorized entities or users could use this data.
  • a possible variant also results from the fact that the “knowledge” (e.g. learned data used for object classification) of the same or similar AMRs is combined. In this way, AMRs could learn from each other. Such dissemination of knowledge can also be restricted to individual AMRs or a group of AMRs. For example, mutual learning could only be allowed within the group of AMRs deployed e.g. in the same hotel.
  • knowledge e.g. learned data used for object classification
  • Sub-areas determined by classification/situation assessment When performing a service task, the AMR can also enter the objects identified (by means of classification) in temporary or permanent maps.
  • Fig. 6/sketch 4 shows a possible implementation. In this case, a map and an associated table in which the objects and their attributes have been entered. In this way, for example, automatic restricted areas or risk areas in relation to one or more service tasks can be saved in the map and reused later.
  • the floor area occupied by an object classified as carpet can be qualified as a sub-area (of the entire robot area of use) that is unsuitable for a floor mopping robot and stored as such in the map.
  • areas of ground occupied by objects classified as “pet excrement” can be noted as restricted areas or special zones.
  • Such a special zone can, for example, be treated specifically insofar as the robot does not drive through this area, only at reduced speed or with the service module (cleaning module) switched off. It is also possible to eliminate such special zones using other AMRs or special tools. Services could also extend to recognized sub-area changes. For example, a spreading or draining pool of water could be viewed as an object changing in spread. . It may also happen that when the AMR first detects the object, it is not yet able to determine the overall size of the relevant ground area. The possibility then arises of expanding or reducing the extent of the initially identified ground area by exploring the immediate vicinity, and thereby determining its overall extent. On the one hand, this can be done while the service is running, but it could also be achieved by separately exploring the surrounding area.
  • objects or ground areas that are occupied by the object receive a customized service based on object-specific properties.
  • additional service units of the robot could be switched on or off, or parameters such as speed, volume, or power could be adjusted.
  • a further advantage of object recognition and object classification results from the possibility of checking the result of a service task.
  • a cleaning robot can carry out measurements (e.g. take pictures) after cleaning has been completed and check whether the service task was carried out with sufficient quality. It would be possible to have processed areas then checked with a classifier or to add the attribute "degree of cleanliness" to the object classified as "kitchen floor”. A classification of the object before and after cleaning would probably also result in changes in the "degree of cleanliness" attribute. For example, depending on the application, the service task could only be evaluated as successfully completed if the attribute reaches or exceeds a certain limit value.
  • the development of classifiers with a correspondingly high quality is relatively easy with the help of machine learning and a correspondingly large number of correctly assigned training data.
  • a classifier is generated that is trained using known measurement data. By training with many dirty and many clean photos of floors, a classifier can be generated which, for example, can assign a value in the soiling class to a kitchen floor that has never been classified. E.g. Clean vs. Dirty. Or values in between.
  • Figure 12 sketch 7, 2 soils are shown, both of which are contaminated with dirt (SM).
  • SM dirt
  • the dirt level (SG) is large in one case and small in the other case. This degree of protection could, for example, be used directly as a value for pollution. This could be implemented as a separate class or as an attribute of the Boden (B) object.
  • a more active intervention of the AMR is also possible. For example, a cleaning robot could recognize that an area cannot be cleaned because an object area blocked. However, if the object classification or the situation assessment indicates that the object can be moved, the AMR could do this. In some exemplary embodiments, the AMR will only move the object if this is possible without risk, or if the object can then also be pushed back to its original position.
  • a particular advantage for applications of an AMR is the possibility of moving or manipulating objects in the field of application. In contrast to non-mobile devices, this allows an AMR to perform numerous service tasks. The possibilities are particularly extensive when the system correctly recognizes situations and derives suitable conclusions from them.
  • Object recognition and classification and, if necessary, situation detection or solution search and evaluation can make it possible for the AMR to reach ground areas that were previously avoided due to the robot's lack of knowledge. For example, a robot that interprets a curtain as a wall and therefore does not touch it, could decide after object recognition to accept a collision in order to be able to clean better under the curtain.
  • a carpet with fringes can be recognized as such and the edge of the carpet, which has fringes on two sides, can be automatically saved in the map as a "semi-transparent border".
  • the robot only passes through this semi-permeable boundary when it leaves the carpet. This behavior can probably prevent tangling on fringes.
  • Probabilities with which the service task can be carried out can also be calculated for the detected and classified objects or ground areas derived therefrom (e.g. those which are occupied or influenced by the object).
  • the service task is performed in the respective area depending on the determined probability (i.e. the risk of a problem when performing the service task) or not. For example, areas in which a certain risk is exceeded cannot be worked at all, or that risky areas are only carried out after the non-risky work has been completed. A combination of different priorities is of course also possible.
  • Maps with objects - probabilities for objects can also be recorded in the map of the operational area. It could happen that an object is found that has a 40% probability of being clothing, a 30% probability of being a toy and a 30% probability of being another object that cannot be further classified. They can be used to evaluate a situation and select the AMR's behavior based on it. It would be possible, for example, that when a distribution socket is detected in the surrounding area, there are cables to be expected. Places could also be marked in which similar objects are located. The robot can then move more slowly and/or react more sensitively to external forces (which counteract the movement of the robot) in floor areas in which there is a relatively high probability of cables lying around.
  • This information about the probabilities can also be used to generate a map of the robot deployment area with probabilities for object classes. Above all, global and local maxima and minima are particularly interesting.
  • a subsequent application is the provision of information about objects with an unusual location.
  • Fig. 13 sketch 8 Shows for example 2 objects (O) of the same class.
  • WG probability area
  • the object (OW) is in a probability area
  • the object (OU) is outside of a probability area. The detection of the objects (OW) or (OU) could again cause corresponding reactions.
  • a key left under the sofa could be reported as this is unlikely.
  • Transport by transport-AMR to a suitable location is also possible.
  • the AMR could learn over time which objects are commonly found where and update the probability map. If an object is frequently in an undesirable position, this could also cause the probability map to assume undesirable shapes. In this case, countermeasures could be taken by using information from the user.
  • a “search and bring function” can also be implemented, with the robot first searching through those areas of the operational area in which there is a high probability of finding the object being searched for.
  • a user could then also commission a transport AMR to bring specific objects to specific locations. If the AMR has the appropriate capabilities (for recognizing and classifying a large number of objects), it is also possible to implement more complicated processes. If the AMR also has suitable voice recognition, the following service instruction would be conceivable, for example: "AMR, please put all the empty glasses from the dining table in the dishwasher".
  • all the clothes could be collected in one place. Items of clothing would then be objects that, in the classification, meet at least a certain limit probability for items of clothing. According to a further exemplary embodiment, recognized and classified objects are additionally sorted. It would be possible, for example, to sort the clothes by color. An analysis of the objects, for example by means of spectroscopic or chemical sensors (molecular sensors) or changed lighting, could also differentiate between dirty and clean items of clothing. A situation-dependent sorting would also be conceivable, for example, that depending on Washing machine condition suitable dirty laundry is already collected in the washing machine. An optional start of the next service unit is also conceivable in the future.
  • Object recognition would also make it possible to identify the danger area and to initiate appropriate measures such as, for example, to defuse the danger or to report the danger. Examples of this would be e.g. shards on the ground, which could be detected by image analysis, changes in the chemical composition of the air can be detected, e.g. using chemical or spectroscopic sensors.
  • the AMR provides camera images with unusual situations. For example, photos or videos of improbable or funny situations could be taken and made available to the user, for example via the human-machine interface.
  • Extensive analysis of the attributes of people or animals could also make predictions about their state of health. Changes in attributes can be an indication of undesired developments. For example, gait analyzes or noise analyses, eg coughing or the like, could be diagnosed and appropriate measures taken or suggested.
  • Another advantage of object classification and situation assessment is that behavior of the AMR can be triggered based on the presence or absence of an object or a person. If, for example, a specific person is identified as coming to the deployment area, it is possible to have work carried out specifically for this person. Users can also be reminded of a task list (e.g. sports or medication) when they are present. Performing work or adapting service orders is also possible for animals.
  • the result of a situation assessment can also indicate a specific future event.
  • the AMR recognizes, e.g. based on GPS data, that the user will probably arrive home in 10 minutes.
  • a plan currently being processed (PI) is then changed to (P2).
  • the orders are relocated, sometimes carried out faster, stopped or postponed.
  • Drinking a coffee in the morning could also indicate that the user is about to leave (see FIG. 7, diagram (b)).
  • the AMR recognizes probable future behavior through the behavior of the user.
  • Such triggers could complete plans (PI) with helpful work (A).
  • water for wet cleaning could be requested (A1)
  • weather data could be transmitted to the user
  • suitable clothing suggested or brought A2
  • Service orders for other service units are also possible.
  • the car could be preheated (A3), or service orders could be modified (A4) due to the weather or times of high allergen exposure.
  • wet cleaning could then be carried out in addition to dry cleaning.
  • Another application would be, for example, wet cleaning in the entrance area after a user has returned home in rainy weather.
  • An AMR for surveillance can also benefit from object classification and situation detection. If, for example, nobody is usually at home at certain times and a person who cannot be assigned enters the area of operation, this can indicate a burglary. In this case, corresponding service tasks be listed. (e.g. take a picture, send an emergency call, trigger acoustic or light signals). Of course, this can still be improved by object and/or situation recognition. For example, an alarm could only be triggered if the person is not recognized as a valid user.
  • AMRs can also be used for this, the main task of which is transport or cleaning, for example. Times when the robot has no other service task to perform could be used for this. For example, it could monitor the front door or other points of interest during relevant periods of the night. A large number of possibilities are again possible as sensors. These range from simple switches to complex sensors based on the evaluation of several sensors or on the temporal evaluation of the signals.
  • Evaluations of the mood of users can also be used for the behavior of the AMR. So it would be conceivable that at certain times or because of certain situations, they prefer a particular type of music, lighting or room fragrance. Orders could also be sent to service units for this.
  • the setting of the desired parameters is of course not limited to evaluating the mood. For example, there could be a basic user setting that configures the appropriate defaults. Permissible adaptations could be made based on this.
  • Object recognition also makes it possible to improve the visualization for humans. For example, recognized standard objects such as a kitchen block could be visualized as such objects in the HMI. The visualized map could then be constructed based on the detected objects. The use of surface information such as textures or furnishings could also be displayed in an HMI or displayed in a simplified way. This offers the advantage that the user can be provided with an intuitive interface. the The map generated in this way could, for example, also be visualized as a 3D model and used for future service tasks.
  • classified objects in the operational area can be stored in a map, together with their pose and attributes. Information on this can then be called up if required. This would allow, for example, to create lists of existing objects. Inventory tasks could be completed in this way or lists of certain groups could be generated, e.g. a catalog of all available books or tools.
  • Another application is monitoring for potential damage. For example, water damage could be recognized by the change in the walls. Chemical signatures of environmental conditions could also come into question here and would be recognizable via the attributes of the objects to be checked. It would thus be possible to check air quality, oxygen content or humidity. Temperature changes, contamination or pest infestation would also be recognizable in this way. It would also be possible to use microphones or other sensors to diagnose damage at an early stage. For example, bearing damage in a washing machine could be diagnosed in this way on the basis of the noise.
  • the data of the maps that are generated can also be used for future search tasks. For example, you could search for rooms that meet certain criteria. It would be possible to search for a place with a certain size, temperature or light conditions and other properties. It is also possible to assign a map to objects in which their location is recorded. This information could be used for optimization tasks. For example, based on the data, the paths could be optimized or an optimal area for storing the object could be suggested. It would be possible, for example, to save transport time or distances.
  • a further added value for the user consists in the possibility of suggesting suitable products based on extracted data from the apartment or objects available there. It would be conceivable to make relevant information available to the user or the seller.
  • the provision of this data may include external products or services as well as products and services deemed useful for the system or AMR.
  • the AMR could use internal reports to diagnose that spare parts or consumables should be ordered (see Fig. 14 sketch 8). Internal information such as the history (e.g. error messages) or learned information such as objects in the operational area or maps could be used for this.
  • external information e.g. from cloud services
  • Information to the user could be made available both via cloud services and via the AMR directly via the HMI.
  • the detection of a cot could indicate the presence of a child and appropriate home changes or appropriate advertising could be provided
  • the methods described here can be implemented via software.
  • the software can be run on an AMR, on an HMI and/or on any other computer, such as in particular a home server or a cloud server.
  • individual parts of the method can be divided into different software modules that are executed on different devices.
  • the exemplary embodiments described below relate to a method for an autonomous, mobile robot (AMR).
  • the method includes, in particular, navigating the AMR 100 through a deployment area using one or more navigation sensors coupled to the navigation module 152 . Information about the surroundings of the AMR in the operational area is recorded with the aid of the navigation sensor and/or with additional sensors.
  • Positions in the operational area can be assigned to this information in order to create an electronic map of the operational area or to supplement an existing map.
  • the method further includes the automatic detection of objects within the deployment area and classification of the detected objects by means of a classifier based on the recorded information.
  • the classifier can contain, for example, a (trained) neural network that can carry out a classification of the detected objects, ie the classification determines an area class for each of the detected partial areas.
  • the detected partial areas, including the determined area classes can be saved in the map of the AMR.
  • the classifier contains a neural network, this is trained in advance with training data.
  • objects can also be classified according to specific, deterministic criteria. For example, an object can also be identified by meeting certain specifications in terms of size, shape, or color. It could also be determined based on the respective sub-area or based on other objects in the vicinity of the object. For example, a new object in a child's play area, or near other toys, suggests that this object is also a toy.
  • An electronic map of the operational area with stored and classified objects enables the user of the AMR to use the map of the operational area (e.g. visualized on an HMI) more easily/intuitively. Furthermore, the classification of the sub-areas enables the AMR to execute simple commands that are intuitive for the user, such as “clean around the couch” (abstractly speaking: “clean area around object of class X”).
  • the classification of objects by means of an "intelligent" classifier enables the AMR to assign a descriptive name to an object (based on the previously determined object class).
  • the Names of the sub-areas are displayed and the user does not have to make any manual assignments.
  • attributes can be assigned to objects (e.g. color) This allows objects of the same class to add distinguishing features. For example, it would be possible to execute commands that would not be unique due to the pure object class. For example, the command “clean around the RED couch” could be given. Or with the command “clean around the couch” corresponding queries could be made, e.g. should the red or the blue couch be cleaned?" Attributes are of course not limited to the color, they can be material. temperature, size and many other characteristics.
  • classifiers are known per se.
  • classifiers contain one or more (pre-trained) neural networks, which not only deliver an object class as a result of the classification, but also a measure of the probability of the correctness of the classification.
  • the result of a classification can be that an object is 80% a toy and 30% a shoe.
  • the probabilities do not have to add up to 100%.
  • the result with the highest probability can be used as the object class. It is also possible to only assign an area class when the probability of two area classes shows a certain difference. If the probability values are too low, the AMR can repeat the measurements and, for example, use additional sensors or lighting for the measurement. It is also possible to repeat the measurement if the position has changed.
  • a classification does not meet the necessary requirements to make an assignment, it is also possible for the classification to be carried out by another classifier. This could, for example, be a classifier that can be reached via a network connection and has extensive training data. It would also be conceivable for this task to be handed over to humans. Through this extended classification options, correct object detection is possible fully automatically in many cases.
  • HMI human-machine interface
  • An example also includes the possibility of providing objects or object classes with information that provides information about which actions with corresponding objects are permitted or not. This assignment could be done automatically by the robot in a first run based on the object class and later changed by the user. Possibilities for such actions are, for example, the creation of restricted areas for specific service tasks. For example, the detection of animal excrement or a vase could result in a restricted area being set up. Another example would be that data protection is set up for certain objects in which the robot is prohibited from sending data of the object via a communication interface (see FIG. 15). It is also possible to provide objects with the "Edit/Check" action. For example, the detection of a houseplant could lead to the irrigation status being checked and watered if necessary.
  • the permitted moving of objects can also be provided in this way. It could be permissible to move packages that are on the ground or to close doors to open. In a further expansion stage, it would even be possible for a manipulation to only be carried out if it can be undone by the robot. In this case, a package could only be moved if it could be pushed back afterwards.
  • the benefit of linking objects or object classes with tasks is that the robot has significantly more options to deal with a situation.
  • Classifiers usually get better and better with an increasing database.
  • classifiers can be extended by additional classes. For this reason, it makes sense to set up the system in such a way that the classifiers can be exchanged using an update process.
  • the robot can recognize additional object classes over time and, based on this, additional functions can also be added.
  • training data In order to be able to generate classifiers with the appropriate reliability, it is important that a sufficiently large amount of training data is available.
  • One way to get suitable training data is, for example, to use data that the robot has sent to a higher-level classifier for evaluation. In order to enable training with this data, this data must first be assigned to one or more classes. This assignment could be done by humans, for example, or by using that area class that the user ultimately confirms or specifies. Of course, data could also be used in areas that have already been correctly assigned, provided the user makes this data available. This makes it possible to continuously improve the classification.
  • Another possibility is that the user or a unit connected via a communication unit is informed that an object of a specific class has been recognized. Information about the attributes of the object can also be passed on. Typical objects that lend themselves to such a function are objects that indicate damage or a future problem. For example, a water stain on the wall could indicate a burst water pipe.
  • the user In the case of an object requiring maintenance (e.g. a houseplant), the user might only be informed if certain attributes indicate so. In this way, the user can be informed when a review makes sense or when there is a need for action.
  • an object requiring maintenance e.g. a houseplant
  • Robots can also be used in a relatively simple manner for the maintenance of devices in the operational area. It would be conceivable, for example, for them to establish a connection with devices using a communication interface and to provide information for these devices. Of course, this is of particular advantage above all when the devices themselves do not have direct access to the information. In this way, devices could, for example, carry out an update even though they do not have access to the WLAN due to their location. A similar problem arises with devices that have to be supplied with energy. Since most devices are not mobile, they cannot be self-sufficient or are wired. A robot could supply such devices with energy by serving as an interface between the energy source and the device. For example, a robot could have a module that provides a QI loading function.
  • This module could also be designed as an option, so that it is not populated in the standard variant and the charging function is only available later as an upgrade when the corresponding module is purchased.
  • the corresponding counterpart could either be the device to be supplied directly, but it could also be a connecting device.
  • this connection device could be integrated into the piece of furniture or retrofitted with it.
  • the connection device could be designed, for example, in such a way that it has a charging function interface in an area that can be reached by the robot, for example near the ground. This charging function interface allows the device to charge its own battery when the robot provides its charging function.
  • the connection device also has an energy delivery area which is connected to the battery with a cable, for example.
  • This energy delivery area then forms the actual charging function of the mobile phone. If this is again equipped with a wireless charging function, for example, a mobile phone could be conveniently charged on almost any piece of furniture.
  • a wireless charging function for example, a mobile phone could be conveniently charged on almost any piece of furniture.
  • supply with the help of electromagnetic radiation is an option.
  • This function could also be set up in such a way that a supply is only carried out if this is recognized as necessary.
  • a specially provided energy source could be provided on the robot as an energy store, which is made available, for example, in a free option module, but the battery provided on the robot anyway could also be used.
  • the recognition of objects can also be used to make further information about objects available.
  • the 3D structure of the object could be extracted and saved.
  • the extraction of the texture of an object can also be extracted and stored.
  • the exemplary embodiments described below relate to a method for an autonomous, mobile robot (AMR).
  • the method includes, in particular, navigating the AMR 100 through a deployment area using one or more navigation sensors coupled to the navigation module 152 .
  • Information about the surroundings of the AMR in the operational area is recorded with the aid of the navigation sensor and/or with additional sensors. Positions in the operational area can be assigned to this information in order to create an electronic map of the operational area or to supplement an existing map.
  • the method further includes the automatic detection of sub-areas within the deployment area and classification of the detected sub-areas using a classifier based on the recorded information. On the one hand, the detection can take place by dividing the area of use into sub-areas (eg, rooms) in advance, and then classifying these sub-areas.
  • the robot detects one or more objects and then creates an area in which the objects are located. Another possibility is that the robot has information about its Records surroundings and classifies them and the areas classified in this way are used as a basis for determining the partial area. Walls Objects Doors Floor coverings can also be used to determine the boundaries of the subarea.
  • the classifier can contain, for example, a neural network that can carry out a classification of the detected partial areas, ie the classification determines a respective area class for the detected partial areas.
  • the detected partial areas, including the determined area classes, can be saved in the map of the AMR.
  • the classifier contains a neural network, this is trained in advance with training data.
  • partial areas can also be classified according to specific, deterministic criteria. For example, a “kitchen” sub-area can be detected by detecting the presence of an oven and/or a coil (for example using image processing/object recognition based on camera images).
  • An electronic map of the operational area with stored and classified partial areas enables the user of the AMR to use the map of the operational area (e.g. visualized on an HMI) more easily/intuitively. Furthermore, the classification of the sub-areas enables the AMR to execute simple commands that are intuitive for the user, such as “clean the kitchen” (abstractly speaking: “clean area of class X”).
  • the classification of partial areas by means of an "intelligent" classifier enables the AMR to assign a descriptive name to a partial area (based on the previously determined area class).
  • the names of the sub-areas can be displayed and the user does not have to make any manual assignments.
  • classifiers are known per se.
  • classifiers contain one or more (pre-trained) neural networks, which not only provide an area class as the result of the classification, but also a measure of the probability of the correctness of the classification.
  • the result of a classification can be that a sub-area is 80% kitchen and 30% bathroom.
  • the probabilities do not have to add up to 100%.
  • the result with the highest probability can be used as the area class.
  • the AMR can repeat the measurements and, for example, use additional sensors or lighting for the measurement. It is also possible to repeat the measurement if the position has changed. It is also possible to manipulate objects in the area or to process the area before a new measurement is taken.
  • the area classifications in the surrounding area could also be included in the current area detection.
  • a classification does not meet the necessary requirements for making an assignment, it is also possible for the classification to be carried out by another classifier. For example, this could be a classifier that can be reached via a network connection and has extensive training data. It would also be conceivable for this task to be handed over to humans. Due to this expanded possibility of classification, partial area detection is possible fully automatically in many cases.
  • HMI human-machine interface
  • Classifiers usually get better and better with an increasing database.
  • classifiers can be extended by additional classes. For this reason, it makes sense to set up the system in such a way that the classifiers can be exchanged using an update process.
  • the robot can recognize additional area classes over time and, based on this, additional functions can also be added.
  • training data In order to be able to generate classifiers with the appropriate reliability, it is important that a sufficiently large amount of training data is available.
  • One way to get suitable training data is, for example, to use data that the robot sends to a higher-level classifier for evaluation Has. In order to enable training with this data, this data must first be assigned to one or more classes. This assignment could be done by humans, for example, or by using that area class that the user ultimately confirms or specifies. Of course, data could also be used in areas that have already been correctly assigned, provided the user makes this data available.
  • An example also includes the possibility of providing sub-areas with information that provides information about which actions are permitted or not in the corresponding area. This assignment could be done automatically by the robot in a first run based on the area class and later changed by the user. Possibilities for such actions are, for example, the creation of restricted areas for specific service tasks. For example, the detection of a carpet could result in a restricted area (SG) being set up for wet cleaning. Another example would be that a privacy area (DG) is set up for a bathroom in which the robot is prohibited from sending data via a communication interface (See Fig. 15). The data protection area and restricted areas can be implemented both automatically and user-defined. It is also possible to provide partial areas with the "Edit" action.
  • the detection of a tiled floor could lead to this sub-area being treated with wet cleaning.
  • the benefit here lies in the high level of customizability. Despite this adaptability, the necessary interaction with the user can be reduced to a necessary level due to automation options.
  • Another example includes the possibility of providing areas with restricted areas or directional restricted areas depending on their area class. Areas in which toys or similar objects are set up could be excluded from processing in this way. A carpet with fringes on two sides, for example, could also be configured in such a way that it can leave the carpet on the fringed side, but not drive on it from this side. A snagging of a brush of the robot could probably be prevented in this way.
  • a further possibility of partial area detection results from the fact that areas in which objects are located are also made available as such in the HMI.
  • the map of the operational area could be shown in more detail in this way (see Fig. 16).
  • objects in robot maps are often represented as walls.
  • the resulting map is distorted by the objects.
  • a more intuitive display would be possible if the space is displayed in full size and the objects are displayed as sub-areas of the space that cannot be driven on, for example.
  • Such a correction is possible through object and/or partial area recognition. 16 shows possible variants with which this problem can be solved.
  • a kitchen block (KB) restricts the correct measurement of the room.
  • a further example also includes the possibility of providing partial areas with information which provides information about which parameters are permissible or not for an action in the corresponding area.
  • this assignment could be carried out automatically by the robot in a first run based on the area class and later changed by the user. Possibilities for such actions are, for example, changing the processing speed or the volume in a certain area. Allowing contact between the robot and objects such as a curtain could also be configured in this way.
  • the benefit here lies in the high level of customizability. Despite this adaptability, the necessary interaction with the user can be reduced to a necessary level due to automation options.
  • the method includes navigating the AMR 100 through a deployment area using one or more navigation sensors coupled to the navigation module 152.
  • Information about the surroundings of the AMR in the operational area is recorded with the aid of the navigation sensor and/or with additional sensors. Positions in the operational area can be assigned to this information in order to create an electronic map of the operational area or to supplement an existing map.
  • the method further includes automatically detecting sub-areas within the deployment area. On the one hand, the detection can take place by dividing the area of use into sub-areas (eg, rooms) in advance, and then classifying these sub-areas. Another possibility is that the robot detects one or more objects, and then creates an area in which the objects are located. Another possibility is for the robot to record and store information about its surroundings.
  • the robot's state changes When the robot's state changes, the current position of the robot and its state change are saved. By analyzing this history, it is possible to extract areas where typical state changes occur. Walls, objects, doors, floor coverings can also be used to determine the boundaries of the sub-area.
  • the detected partial areas, including the determined area classes, can be saved in the map of the AMR.
  • a combination of the partial area detection described is also possible. This can result in partial areas that correspond to rooms, for example. However, partial areas of rooms can also arise, such as carpeting, areas in which cables are located. Areas in which toys or dirt lie are created.
  • a measure can be determined for the areas from the history, which indicates how likely it is that a service task will be completed in a specific area. For example, error messages or a temporary stuck in an area could reduce the likelihood of a service task. It could also be measured how long the robot is in an area to complete a service task.
  • the objects that are in the room, or their number, can influence the measure positively or negatively.
  • a seating group could take more time due to the complex path planning, or cables lying around could lead to the robot getting caught or, in the worst case, to damage.
  • a further possibility of determining the task completion duration or task completion probability is to estimate this using a classifier.
  • an external unit could be assigned the task of assigning a corresponding task completion duration or task completion probability to the sub-area.
  • the method includes, in particular, navigating the AMR 100 through a deployment area using one or more navigation sensors coupled to the navigation module 152.
  • the method further includes detecting at least part of the robot deployment area by means of an optical sensor.
  • the area is then classified using a classifier based on the recorded information.
  • the classifier can contain, for example, a neural network that can carry out a classification of the detected areas, i.e. the classification determines a value for each area that says a state about the area.
  • the condition for which the area is checked can take on a wide variety of characteristics. This state could take on various properties that represent the surface. For example, the evenness of a surface or the cleanliness could be examined. (Fig. 12. Sketch 7)
  • the property of the degree of contamination could also be determined.
  • a classifier can also calculate a classification with regard to the degree of soiling for other images that have little to do with the images.
  • the property can of course also be calculated by a classifier which is connected to the robot via a communication link.
  • a neural network could also be used which was trained with a very large amount of data. Due to the higher amount of underlying data, better and more reliable values usually result when determining the respective property.
  • the calculation of the property is of particular interest, of course, if it can be used to determine whether the surface is to be processed. For example, processing could be aborted if no significant change in the measure is to be expected. Editing could also be aborted if damage could result from editing. A further possibility arises from repeated determination and the calculation being carried out before and after a service task in the area. This makes it possible to generate metrics that show whether the service task has caused a change. This could also be used to check whether an undesired deterioration in the classified property has occurred. [00175]
  • results from multiple determination of the measure is that, based on the results, a decision can be made as to whether the service task should be carried out again.
  • uploading information and evaluating the information makes sense in many cases, it may be that this is not desired by the user. Examples of this can be, for example, that users do not want to upload information about certain objects, for example people, faces or furnishings such as pictures or the like.
  • DO data protection objects
  • the user can enter certain object classes that are made unrecognizable before information is uploaded. The rest of the information can then be uploaded and processed further. A pre-processing of the information takes place for the removal of the information. For example, an image could be recorded by the robot on which a person is located. The image is then checked for the presence of objects.
  • uploading information and evaluating the information makes sense in many cases, it may be that this is not desired by the user. Examples of this can be, for example, that users do not want to upload any information from the work area or private areas such as the bathroom.
  • it makes sense to set up data protection areas see Fig. 15 Sketch 9).
  • the user can mark areas from which no information is forwarded to one or specific units connected via a network.
  • the setting up of these data protection areas could be done by the user himself by entering data protection areas in the map created, or semi-automatically by the robot by already suggesting a proposal for the creation of data protection prayers.
  • the method includes, in particular, navigating the AMR 100 through a deployment area using one or more navigation sensors coupled to the navigation module 152.
  • navigating the AMR 100 through a deployment area using one or more navigation sensors coupled to the navigation module 152.
  • the sensor is intended to detect chemical substances.
  • One or more chemical substances can be detected.
  • the sensor information can be used to identify objects or their attributes. For example, liquids on the floor could be checked to see if they are water. A distinction between liquids is also possible. For example, water could be distinguished from urine. Walls could also be examined to determine whether and how damp they are. Plants could be examined for their watering status. The use of fluorescence is also conceivable in this study. In this case, spectroscopic investigations are a particularly suitable method. In this way, conclusions can be drawn about the composition of the object based on the wavelengths emanating from the object. Since many analysis options for electromagnetic wavelengths are outside the visible range, there are options here that are not immediately obvious at first glance. For example, plastics could be recognized, organic waste classified and so on. Special application possibilities result from the use of hyperspectral imaging cameras.
  • the method includes, in particular, navigating the AMR 100 through a deployment area using one or more navigation sensors coupled to the navigation module 152.
  • Information about the surroundings of the AMR in the operational area is recorded with the aid of the navigation sensor and/or with additional sensors. Positions in the operational area can be assigned to this information in order to create an electronic map of the operational area or to supplement an existing map.
  • the method further includes automatically detecting objects within the deployment area and classifying the objects using a classifier based on the information collected. This creates at least one object class.
  • a situation detection is carried out based on at least this detected object class. With this, the current status of the data recorded by the robot is analyzed using a classifier and a situation class is determined.
  • the current states of the robot could be compared with one or more fixed situation states. If it is determined based on the situation class that the robot is currently in a certain situation, an action is started that depends on this situation class. In this way, the robot can respond to a situation and generate behavior that is specially adapted to the situation. It is also possible to provide the robot with additional functions that go beyond a standard task.
  • object attributes can also be determined. For example, this could be the color or other properties of the object. For a cleaning robot, for example, it could be important whether a curtain touches the floor or not, or whether a carpet has a certain design (e.g. fringes).
  • the previously determined object class can play a decisive role in the classification of the situation. Often, however, the condition in which an object is located is decisive for the situation.
  • the attributes of the objects can also be considered when classifying the situation. For example, shoes with laces hanging on the ground could be bypassed by setting up a restricted area, or the side brush of a robot could be switched off in this case. For example, if there are no shoelaces hanging on the floor, there is little risk of a cleaning robot catching them. In this case, it could also be decided that even shifting shoes while performing the task is permissible.
  • the criteria with which the situation classification is carried out can be stored in a database. This could be directly on the robot, making it can act very autonomously. However, the database could also be external, enabling it to provide a vast range of situations and the appropriate response. Of course, it is of particular advantage if the situation database can be changed or expanded. This would allow the robot to learn additional situations and provide new functionalities.
  • the situation detection can be very complex, depending on the implementation, it is expedient to carry this out only in certain situations. It has proven to be particularly sensible that a situation check is only carried out when a new object is detected, it is detected again or it is no longer detected although it should be present.
  • Triggering by an external event could also be useful in numerous applications.
  • a cloud service could send a signal that a user is on his way home or that the weather is about to change. Based on such external triggers, the robot can recognize corresponding situations and initiate appropriate reactions. In the event of a storm warning, for example, it could close the windows or doors. After entering the apartment, the entrance area could also be cleaned, for example optionally wet if the weather report indicates that it has rained or damp dirt is detected in the entrance area.
  • a situation is, of course, the current state of a robot.
  • the service task that is currently being carried out is particularly important. This can be used as a criterion for determining the situation.
  • information from the history of the robot or external information about information made available by a communication unit can also be used as a criterion.
  • classifiers are known per se.
  • classifiers contain one or more (pre-trained) neural networks, which not only provide a situation class as a result of the classification, but also a measure of the probability of the correctness of the classification.
  • the result of a classification can be that 80% of a situation is caused by contamination of a work area and 30% by faulty sensors on the robot.
  • the probabilities do not have to add up to 100%.
  • a classified (partial) area or a classified object can be saved in the robot's map (e.g. if the probability is sufficiently high) or not saved. The result with the highest probability can be used as the situation class.
  • the AMR can repeat the measurements and, for example, use additional sensors or lighting for the measurement. It is also possible to repeat the measurement if the position has changed. Manipulation of objects in the area or processing of the area before a new measurement is also possible.
  • the area classifications in the surrounding area could also be included in the current area detection.
  • the robot it is conceivable for the robot to have the situation classified or checked by a higher-level entity. This could be made available via a cloud service, for example. Especially the
  • the current service task could be changed or stopped entirely.
  • the current service task or tasks can also be postponed or paused to solve the situation.
  • a higher entity, another service robot or the user could also be commissioned to create a situation that enables subsequent work to continue.
  • a sequence of work orders could be generated that represents a solution to a specific situation.
  • the robot could then carry out these work orders. For example, a puddle of water on the floor that occurs during a dry clean (e.g., vacuum) could cause the job to pause and create an area around the puddle that is intended for a wipe clean.
  • the robot switches to wiping cleaning and works on the area, after a subsequent drying phase in which other service jobs can be carried out, the suction process in this area is started again.
  • a further possibility offered by situation recognition is that parameters are adjusted when the service task is carried out in such a way that the service function can be carried out better.
  • the suction power of a vacuum robot could be increased. If the robot carries out the cleaning in the presence of people or animals, or if it takes place at a certain time (e.g. at night), it could be switched to a "quiet mode". Similar possibilities arise with other parameters, e.g. speeds, distances, threshold detections and the like.
  • the method includes, in particular, an AMR.
  • Internal states e.g. error messages, changes in the state machine
  • This information can then be queried via an external unit, for example a cloud service, and examined to determine whether a specific internal state is present. If this is the case, information will be sent to the user.
  • This can be made available, for example, via an HMI on the robot or via an HMI with which the user can control the AMR. In this way, the user can be provided with information that is highly relevant to his application. Thus, he does not get an overload of information and will react more honest to relevant information. (See Fig. 14 sketch 8)
  • This method is of particular advantage if the AMR can also trigger this action itself. For example, it would be possible for an AMR to repeatedly receive the same internal warning. (e.g. the job was canceled at position X, Y due to a warning Z. In this way, a robot could provide specific information and offer suggested solutions.
  • warnings can be accepted as common to the application.
  • the warning "pause cleaning to charge the battery recharge" is common in large apartments. However, if it is a small apartment, this should not happen often. In this case, it makes sense that information that can be extracted from the map is also examined.
  • the status of robot components can also be relevant.
  • the number of square meters cleaned, the running time of motors, fans, filters, etc. could indicate certain signs of wear and suitable information for the user can be useful.
  • This function is particularly relevant for the timely provision of spare parts.
  • the warning "Pause cleaning to charge the battery Recharge” could indicate that the battery is aging. Information about this could be displayed to the user.
  • spare parts such as brushes and filters for cleaning robots. Additional information could also be included. For example, a message could only be sent to the user when spare parts that are needed soon can be purchased cheaply.
  • a wiping extension could be recommended if the floors required for this are available in the apartment.
  • Software that is suitable for the apartment could also be suggested or downloaded.
  • a WiFi repeater function could be suggested if WiFi is only available in part of the apartment.
  • the robot could then drive into a border area of the apartment where it still has a connection to the Internet and increase this access with a repeater function.
  • Information about furnishings or products from third-party suppliers, for example, could also be made available. Above all, the map data and the objects already in the living room could be evaluated and useful extensions suggested.
  • HMI human machine interface
  • an HMI that is attached directly to the robot offers the user the advantage that information can be exchanged directly with the robot. In this case, the user does not need any additional devices to operate the robot or to obtain information from the robot.
  • An HMI via the robot can take place via buttons, lighting, screen as well as voice input and/or voice output.
  • the HMI can be adapted in such a way that a certain degree of configurability is possible for the user.
  • the user could set special colors for the HMI or select different dialects and languages. This offers the advantage that better communication with the user is possible and the robot can be better adapted to the environment. This offers great advantages, especially in cases where the robot is subject to certain restrictions due to the area of application. For example, a bedroom or lab might need a setting where the robot emits as little light or noise as possible.
  • Customization could also provide certain themes that make a pre-selection of settings. E.g.
  • a "dark mode”, "quiet mode”, "Happiness mode” etc. there is also the option of equipping the robot with character traits. This can also be done visually, but is primarily possible for linguistic and textual HMI.
  • the robot could use it to communicate the same information in different ways, depending on the setting. For example, he could give the impression that he is happy, annoyed by certain errors or tasks, excited when he can try something new, adds funny points to information, tells anecdotes, etc. This offers the advantage that the user has a stronger builds an emotional bond with the robot and thus probably takes better care of and maintains it. In this way, the robot can in turn be better adapted to the area of application and the user benefits from better completion of the work carried out by the AMR.
  • a decision In order to determine the relevance of a message for a user, a decision must be made on the basis of the information available whether it should be made available.
  • a targeted option is to determine a metric that expresses how relevant a message is.
  • a metric that expresses how relevant a message is.
  • a relevance classifier could be developed using a neural network.
  • certain states could also be checked and used to determine a measure.
  • a human analyzes the data and thus determines a measure of relevance.
  • Example 1 A method for an autonomous mobile robot (AMR); which includes the following:
  • Example 2 The method according to example 1, wherein the classified objects are visualized for the user in a map or provided with a descriptive name and their attributes are optionally made available.
  • Example 3 A method according to one of the previous examples, in which, in addition to the object class of a detected object, one or more object attributes and/or a pose of a classified object is also determined and stored.
  • Example 4 A method according to one of the previous examples, wherein the classification of the detected objects comprises the following: determining a measure for the probability of the correctness of the classification; and storing this measure for at least one object class in the map.
  • Example 5 A method according to one of the previous examples, wherein the classification of the detected objects comprises the following: determining a measure for the probability of the correctness of the classification; and if the probability is below a limit value, repeating the classification of the detected object with a changed position of the robot and/or with the aid of additional sensor data and/or illumination of the detected object.
  • Example 6 A method according to one of the previous examples, wherein the classification of the detected objects comprises the following: determining a measure for the probability of the correctness of the classification; and if the probability is below a threshold, repeating the classification of the detected after manipulation of the detected object.
  • Example 7 A method according to one of the previous examples, wherein the classification of the detected objects comprises the following: determining a measure for the probability of the correctness of the classification; and if the probability is below a threshold, repeating the classification of the detected object by an external entity connected to the robot via a communication link, in particular a cloud server.
  • Example 8 A method according to one of the previous examples, the detected objects being made available to the user, who has the option of entering or changing the class.
  • Example 9 A method according to one of the previous examples, the detected objects being made available to the user, for which the measure of the probability of correctness falls below a specified value.
  • Example 10 A method according to any of the previous examples, in which the robot is provided with an association in which classes are associated with at least one permissible action.
  • the permitted actions include at least one of the following:
  • Example 11 The method according to any of the previous examples, wherein the specific action comprises:
  • Example 12 A method according to any of the previous examples, wherein the classifier can be updated by means of an update over a network connection
  • Example 13 A method according to any of the previous examples, further comprising:
  • Example 14 A method according to any of the previous examples, further comprising:
  • Example 15 A method according to any of the previous examples, further comprising:
  • Example 16 A method according to any of the previous examples, further comprising:
  • Example 17 A method according to any of the previous examples, further comprising:
  • Example 18 A method according to any of the previous examples, further comprising:
  • Example 19 A method according to any of the previous examples, further comprising:
  • Example 20 A method according to any of the previous examples, further comprising: Making energy or information available for objects if it is detected that the object should be supplied with energy or information. (e.g. due to loading status, firmware version).
  • Example 21 A method according to any of the previous examples, further comprising:
  • Example 22 A method according to any of the previous examples, further comprising:
  • Example 23 A method according to any of the previous examples, further comprising:
  • Example 24 A method according to any of the previous examples, further comprising:
  • Example 25 A method for an autonomous mobile robot (AMR); which includes the following:
  • Example 26 The method according to example 25, wherein sensor information relating to one or more detected chemical substances is taken into account in the object classification or the determination of object attributes.
  • Example 27 The method according to example 25 or 26, wherein the first sensor is a hyperspectral imaging camera or a spectrometer or an olfactory sensor.
  • Example 28 The method according to any one of examples 25 to 27, wherein sensor information relating to one or more detected chemical substances is taken into account in an object classification or in the determination of object attributes.
  • Example 29 A method for an autonomous mobile robot (AMR); which includes the following:
  • Example 30 The method according to example 29, wherein in addition to the object class of a detected object, one or more object attributes and/or a pose of a classified object are also determined.
  • Example 31 The method of example 29 or 30, wherein the criteria further comprises one or more object attributes and/or a pose of the object of a classified object.
  • Example 32 The method according to any one of examples 29 to 31, wherein the criteria further include the presence of at least one other object of the same or a different object class in the deployment area
  • Example 33 The method according to any one of examples 29 to 32, wherein the criteria are stored in a database and the method further comprises updating and/or expanding the criteria stored in the database.
  • Example 34 The method according to any one of examples 29 to 33, wherein detecting the situation the robot is currently in comprises:
  • Example 35 The method according to any one of Examples 29 to 34, wherein recognizing the situation the robot is currently in is performed when: a new object is detected; an object that previously existed in the operational area is no longer available; an external trigger event triggers recognition of the situation; a cyclic trigger triggers recognition of the situation; an internal trigger event due to a status change of the robot, for example when an error occurs, triggers recognition of the situation.
  • Example 36 The method according to any one of examples 29 to 35, wherein the criteria further included: an internal state of the robot, in particular a current service order of the
  • robots information derived from the history of the robot; external information that is received in particular via a communication link, for example an Internet connection.
  • a communication link for example an Internet connection.
  • Example 37 The method according to any one of Examples 29 to 36, wherein the specific action comprises:
  • Verification of the situation by requesting a higher-level entity, in particular a server linked to the AMR by means of a network connection, or a user.
  • Example 38 The method according to any one of Examples 29 to 37, wherein the specific action comprises:
  • Example 39 The method according to any one of Examples 29 to 38, wherein the specific action comprises:
  • Example 40 The method according to any one of examples 29 to 39, wherein the robot performing a certain action depending on the recognized situation comprises:
  • Example 41 A method for an autonomous mobile robot (AMR); which includes the following: Capturing and collecting information about the internal states (e.g.
  • Example 42 The method according to example 41, wherein the method according to example 69 is triggered by a condition that occurs at the AMR, for example when switching on.
  • Example 43 The method according to example 41 or 42, wherein the collected information additionally includes information from the map of the operational area.
  • Example 44 The method according to any one of examples 41 to 43, wherein the collected information additionally includes information about the status of components of the robot. (exchange of spare parts)
  • Example 45 The method according to any one of examples 41 to 44, wherein the information sent includes information about possible spare parts, wearing parts or accessories for the robot.
  • Example 46 The method according to any one of examples 41 to 45, wherein the information sent includes information about possible objects for the area of application (advertising). or where the information sent contains information about possible additional functions for the area of application (advertising).
  • Example 47 The method according to any one of examples 41 to 46, wherein the information sent provides information about the possibilities of a changed use of the robot.
  • Example 48 The method according to any one of examples 41 to 47, wherein the sending of the information is via a voice HMI.
  • Example 49 The method according to any one of examples 41 to 48, wherein the information is sent via a messenger service.
  • Example 50 The method according to any one of Examples 41 to 49, wherein the sending of the information to the robot is and. which outputs them via an HMI on the robot.
  • Example 51 Method g according to one of Examples 41 to 50, the information being individualized (adapted to the user).
  • Example 52 The method according to any one of examples 41 to 51, wherein the method according to example 69 can be switched on or off or switched on by the user or the manufacturer.
  • Example 53 The method according to any one of Examples 41 to 52,
  • a measure is determined with which the relevance for the user is determined.
  • Example 54 The method according to one of examples 41 to 53, wherein information is also used to determine the measure, which is obtained via a communication link connected unit, in particular a cloud server (price comparisons)
  • Example 55 The method according to any one of Examples 41 to 54,
  • the information is only sent if this measure assumes a certain range of values.

Landscapes

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

Abstract

RAT026WO Robart GmbH 72 ZUSAMMENFASSUNG / ABSTRACT Es wird ein Verfahren für einen autonomen, mobilen Roboter (AMR) beschrieben. Gemäß einem Ausführungsbeispiel umfasst das Verfahren das Navigieren des AMR durch ein Einsatzgebiet mit Hilfe eines oder mehrerer Navigationssensoren; das Erfassen von Informationen über die Umgebung des AMR im Einsatzgebiet; das automatische Detektieren von Teilgebieten innerhalb des Einsatzgebiets und Klassifizieren der detektierten Teilgebiete mittels eines Klassifikators basierend auf den erfassten Informationen, wobei eine Gebietsklasse bestimmt wird; und das Speichern detektierter Teilgebiete inklusiver der ermittelten Gebietsklasse in eine elektronische Karte des AMR.

Description

SITUATIONSBEWERTUNG MITTELS OBJEKTERKENNUNG IN AUTONOMEN
MOBILEN ROBOTERN
TECHNISCHES GEBIET
[0001] Die vorliegende Beschreibung betrifft das Gebiet der autonomen, mobilen Roboter, insbesondere Konzepte und Techniken zur Objekterkennung und darauf basierender Situationsbewertung in autonomen mobilen Robotern.
HINTERGRUND
[0002] In den letzten Jahren finden autonome mobile Roboter (autonomous mobile robots, AMR), insbesondere Serviceroboter, zunehmend Verwendung im Haushaltsbereich, beispielsweise zur Reinigung oder zur Überwachung einer Wohnung. Zu diesem Zweck können AMRs verschiedene Sensoren zur Erfassung ihrer Umgebung haben. Durch Sensoren kann z.B. die Position von Hindernissen (z.B. Wände, Türen, Möbel und andere am Boden stehende Gegenstände, etc.) erkannt werden und eine Karte des Robotereinsatzgebiets erstellt werden. Die Karte dient hierbei als Grundlage für die Bewegungs- und Arbeitsplanung des Roboters, so dass er seine Aufgabe effizient verrichten kann.
[0003] Einige AMRs sind in der Lage, spezifische Objekte in ihrer Umgebung zu identifizieren und ihre Position in die Karte einzutragen. Das Objekt kann beispielsweise durch eine künstliche Markierung wie beispielsweise einen RFID-Tag oder mittels digitaler Bildverarbeitung (sofern der Roboter eine Kamera aufweist) identifiziert werden. Wenn der Roboter zusätzlich mit einem Manipulator wie z.B. einem Roboterarm ausgestattet ist, kann der Roboter mit Hilfe des Manipulators das Objekt an einen gewünschten Ort transportieren.
[0004] Die folgende Beschreibung betrifft die Weiterentwicklung eines AMR, um eine verbesserte Erkennung und Bewertung einer Situation, mit der der Roboter aktuell konfrontiert ist, zu ermöglichen.
ZUSAMMENFASSUNG
[0005] Im Folgenden wird ein Verfahren für einen autonomen, mobilen Roboter (AMR) beschrieben. Gemäß einem Ausführungsbeispiel umfasst das Verfahren folgendes: Navigieren des AMR durch ein Einsatzgebiet mit Hilfe eines oder mehrerer Navigationssensoren während der AMR eine Serviceaufgabe verrichtet; Erfassen von Informationen über die Umgebung des AMR im Einsatzgebiet mittels mindestens eines ersten Sensors, beispielsweise des Navigationssensors; automatisches Detektieren von Objekten und Klassifizieren der detektierten Objekte mittels eines Klassifikators basierend auf den erfassten Informationen, wobei eine Objektklasse bestimmt wird; und Speichern detektierter Objekte inklusiver der ermittelten Objektklasse in eine elektronische Karte des AMR.
[0006] Gemäß einem weiteren Ausführungsbeispiel umfasst ein Verfahren zum Steuern eines AMR den Aufbau einer Karte des Einsatzgebietes des Roboters; das Unterteilen des Einsatzgebietes in Teilgebiete und Einträgen der Teilgebiete in die Karte; und das Ermitteln einer Maßzahl für jedes Teilgebiet und eine bestimmte Serviceaufgabe des Roboters, wobei die Maßzahl eine Wahrscheinlichkeit oder Dauer repräsentiert, mit der der Roboter die Serviceaufgabe in dem jeweiligen Teilgebiet abschließen kann.
[0007] Gemäß einem weiteren Ausführungsbeispiel umfasst ein Verfahren zum Steuern eines AMR das Navigieren des Roboters durch ein Robotereinsatzgebiet und Durchführen einer Oberflächenbearbeitungsaufgabe oder einer Oberflächenprüfaufgabe in zumindest einem Bereich des Robotereinsatzgebiet; das Erfassen von zumindest einem Teil des Robotereinsatzgebietes mittels eines optischen Sensors; und die Klassifizierung der von dem optischen Sensor gelieferten Daten mittels eines Klassifikators, wobei der Klassifikator einen Wert berechnet, der eine Eigenschaft der Oberfläche repräsentiert.
[0008] Ein weiteres Ausführungsbeispiel betrifft ein Verfahren welches folgendes umfasst: das Erfassen von Informationen in einem Einsatzgebiet eines AMR mittels mindestens eines ersten Sensors, beispielsweise eines Navigationssensors; automatisches Detektieren von Bereichen in den erfassten Informationen mittels eines Klassifikators, und das Untersuchen der erfassten Information auf Objekte die einer bestimmten Klassen angehören und die als Datenschutzobjekte gelten.
[0009] Ein weiteres Ausführungsbeispiel betrifft schließlich ein Verfahren umfassend das Erfassen von Informationen in einem Einsatzgebiet mittels mindestens eines ersten Sensors, beispielsweise des Navigationssensors; das Speichern des Einsatzgebietes in einer Karte; und das Festlegen von Datenschutzgebiet Bereichen in der Karte die bestimmen ob der Informationen in diesem Bereich an eine Kommunikationsverbindung verbundene Einheit, insbesondere einem Cloud-Server gesendet werden dürfen
KURZE BESCHREIBUNG DER ABBILDUNGEN
[0010] Die Erfindung wird nachfolgend anhand von den in den Abbildungen dargestellten Beispielen näher erläutert. Die Darstellungen sind nicht zwangsläufig maßstabsgetreu und die Erfindung beschränkt sich nicht nur auf die dargestellten Aspekte. Vielmehr wird Wert darauf gelegt, die der Erfindung zugrunde liegenden Prinzipien darzustellen.
[0011] Figur 1 illustriert exemplarischen einen autonomen, mobilen Roboter in seinem Robotereinsatzgebiet mit 2 dargestellten Objekten (W1 und W2 beide Wände).
[0012] Figur 2 ist ein exemplarisches Blockdiagramm, in dem verschiedene Einheiten eines autonomen mobilen Roboters sowie Peripheriegeräte wie beispielsweise eine Basisstation des Roboters dargestellt sind.
[0013] Figur 3 illustriert einen AMR der durch externe und interne Sensoren Objekte in der Umgebung erfasst, diese klassifiziert und den klassifizierten Objekten Attributen zuordnet.
[0014] Figur 4 zeigt ein Beispiel in der ein Reinigungs-AMR aufgrund einer Situation (a) erkennt das ein Teilbereich nicht gereinigt werden kann. Aufgrund seiner Funktionen wird die erste Teilaufgabe verschoben und eine Serviceaufgabe 2 generiert. Der gleiche AMR führt dann die Serviceaufgabe 2 durch und nimmt anschließend (b) wieder die Serviceaufgabe 1 (Reinigung) auf.
[0015] Figur 5 zeigt ein Beispiel in der ein Reinigungs-AMR aufgrund einer Situation (a) erkennt das ein Teilbereich nicht gereinigt werden kann. Aufgrund seiner Funktionen wird die erste Teilaufgabe verschoben und eine Serviceaufgabe 2 generiert. Ein anderer AMR (101) AMR führt dann die Serviceaufgabe 2 durch. Anschließend kann der AMR 100 wieder die Servicaufgabe 1 (Reinigung) aufnehmen.
[0016] Figur 6 Zeigt exemplarisch die Umgebung eines AMR und die erkannten Objekte und deren Attribute.
[0017] Figur 7 zeigt Beispiele in denen Situationen erkannt werden und aufgrund der Situationen Serviceaufgaben gestartet abgeändert oder gestoppt werden.
[0018] Figur 8 zeigt exemplarisch eine Tabelle, bei der zusätzlich zum Standardbefehl und der zugehörigen Standardlösung, weitere Gegebenheiten überwacht werden und somit Situationen erkannt werden können. Treten diese Gegebenheiten ein kann mit Speziallösungen reagiert werden. Dies kann entweder durch bereits im Roboter vorhandene Erfahrung generiert werden oder von einer übergeordneten Einheit.
[0019] Figur 9 zeigt einen Wohnraum dessen Gebiete in Teilgebiete und oder Zonen zerlegt wurden, wobei den Teilgebieten Maßzahlen (in diesem Fall Abschlusswahrscheinlichkeiten) zugeordnet wurden, Aufgrund dieser Maßzahlen kann die Reihenfolge in der die Bearbeitung erfolgt, festgelegt werden. [0020] Figur 10 zeigt in welcher Art ein AMR Anfragen an höhere Entitäten stellen kann. Diese Können wie dargestellt hierarchisch aufgebaut sein. Z.B Zwischenserver, Cloud- Service usw. Auch die ermittelten Ergebnisse können optional an alle Zwischenstationen oder andere AMRs gesendet werden.
[0021] Figur 11 zeigt ein Objekt (Wasserfleck) der aufgrund des Sichtbereiches des AMR nicht vollständig erfasst werden kann. Es wird veranschaulicht, dass der AMR dies durch zusätzliche Messung an weiteren Positionen vollständig erfassen kann.
[0022] Figur 12 illustriert schematisch eine Bodenfläche die eine Verschmutzung aufweist. Darauf aufbauend kann der AMR einen Verschmutzungsgrad bestimmen und festlegen ob eine Reinigung erfolgen soll oder nicht.
[0023] Figur 13. Zeigt eine Wahrscheinlichkeitskarte die im Laufe der Zeit angelegt werden kann. Mit ihr kann bestimmt werden wo sich Objekte wahrscheinlich aufhalten.
[0024] Figur 14 zeigt einen Roboter der aufgrund der internen Diagnose und Zusatzwissen wie Kartenaufbau bzw. Cloud-Services dem Nutzer den Kauf von Ersatzteilen vorschlägt.
[0025] Figur 15 zeigt die Karte eines Wohnraums in dem Datenschutzgebiete, Datenschutzobjekte, und verschiedene Sperrbereiche eingetragen sind. Diese können sowohl automatisch als auch manuell eingetragen werden.
[0026] Figur 16 illustriert eine Roboterkarte.
DETAILLIERTE BESCHREIBUNG
[0027] Ein autonomer mobiler Roboter (AMR) führt als Serviceroboter selbsttätig eine oder mehrere Aufgaben in einem Robotereinsatzgebiet aus. Beispiele für die genannten Aufgaben sind die Reinigung einer Bodenfläche in dem Einsatzgebiet, die Überwachung und Inspektion des Robotereinsatzgebiets, der Transport von Gegenständen innerhalb des Einsatzgebiets (z.B. eine Wohnung) oder sonstige Tätigkeiten beispielsweise zur Unterhaltung eines Nutzers. Derartige Aufgaben entsprechen der eigentlichen Bestimmung des Serviceroboters und werden daher Serviceaufgaben bezeichnet. Die hier beschriebenen Ausführungsbeispiele betreffen zumeist einen Reinigungsroboter. Die hier beschriebenen Konzepte und Beispiele können jedoch problemlos auf alle Anwendungen, in denen ein AMR eine Aufgabe in einem definierten Einsatzgebiet durchführen soll, in dem er sich selbstständig mithilfe einer Karte bewegen und navigieren kann. [0028] Fig. 1 illustriert exemplarisch einen Reinigungsroboter 100 als Beispiel für einen AMR. Andere Beispiele für AMRs sind u.a. Serviceroboter, Überwachungsroboter, Telepräsenzroboter, etc. Moderne AMRs navigieren kartenbasiert, d.h. sie verfügen über eine elektronische Karte des Robotereinsatzgebietes. In manchen Situationen hat der AMR jedoch keine oder keine aktuelle Karte des Robotereinsatzgebietes und er muss seine (ihm unbekannte) Umgebung erkunden und kartieren. Dieser Prozess wird auch als „Exploration“ bezeichnet. Dabei detektiert der AMR Hindernisse, während er sich durch das Robotereinsatzgebiet bewegt. In dem dargestellten Beispiel hat der AMR 100 bereits Teile der Wände W1 und W2 eines Raumes erkannt. Verfahren zur Exploration der Umgebung eines AMRs sind an sich bekannt. Eine häufig eingesetzte Methode wird als SLAM (Simultaneous Localization and Mapping) bezeichnet.
[0029] Bei der Exploration erkennt der AMR Hindernisse und trägt diese in eine Karte ein. Hindernisse können wie erwähnt Wände, Türen, Möbel und andere auf dem Boden stehende Objekte sein. Die meisten AMRs erkennen Hindernisse nur anhand ihrer Außenkontur und speichern diese in ihrer elektronischen Karte der Umgebung. Der AMR unterscheidet dabei in der Regel nicht, ob ein detektiertes Hindernis ein Möbelstück, ein herumstehender Koffer oder ein Haufen auf dem Boden liegende Kleidungsstücke ist. Das heißt, ein Hindernis wird im Wesentlichen als Begrenzungslinie erkannt, die nicht überfahren werden kann, jedoch wird ein Hindernis nicht als ein bestimmtes Objekt (z.B. ein Koffer) identifiziert. Die Identifizierung eines Hindernisses als Objekt (oder als Objekt einer bestimmten Kategorie) ist beispielsweise mittels einer Kamera und Bildverarbeitung möglich. Alternativ können bestimmte Objekte auch mit einer Markierung versehen werden, die der AMR einfach detektieren kann (beispielsweise einen RFID-Tag).
[0030] Die Objekterkennung - d.h. die Identifizierung eines Hindernisses als spezifisches Objekt oder als Objekt einer bestimmten Kategorie - erlaubt dem AMR in zu bestimmter Weise auf ein erkanntes Objekt zu reagieren. Um das Verhalten des AMRs „intelligenter“ gestalten zu können, ist es wünschenswert, dass der AMR nicht nur bestimmte Objekte erkennen kann, sondern auch die Situation, mit der der AMR aktuell konfrontiert ist, bewerten und basierend auf dieser Bewertung sein Verhalten anpassen kann. Eine „Situation“ wird dabei bestimmt durch die relevanten Objekte im Arbeitsbereich oder am Roboter, beziehungsweise der daraus abgeleiteten Information, die dem AMR zur Verfügung steht (z.B. Karten, Fehler und Meldungshistorie). Optional können auch äußere Einflussfaktoren wie z.B. Uhrzeit, Umweltgegebenheiten, Wetter, Feiertage, Infos aus Cloud-Services oder die derzeitig durchgeführte Serviceaufgabe als Teil der Situation betrachtet werden. Bevor auf verschiedene Konzepte der Situationsbewertung durch einen AMR genauer eingegangen wird, soll zunächst der Aufbau eines AMRs kurz beschrieben werden.
[0031] Fig. 2 zeigt beispielhaft anhand eines Blockdiagramms verschiedene Einheiten (Module) eines AMRs 100. Eine Einheit bzw. ein Modul kann dabei eine eigenständige Baugruppe oder ein Teil einer Software zur Steuerung des Roboters sein. Eine Einheit kann mehrere Untereinheiten aufweisen. Die für das Verhalten des Roboters 100 zuständige Software kann von der Steuereinheit 150 des Roboters 100 ausgeführt werden. In dem dargestellten Beispiel beinhaltet die Steuereinheit 150 einen Prozessor 155, der dazu ausgebildet ist, in einem Speicher 156 enthaltene Software-Instruktionen auszuführen. Einige Funktionen der Steuereinheit 150 können zumindest teilweise auch mit Hilfe eines externen Rechners durchgeführt werden. Das heißt, die von der Steuereinheit 150 benötigte Rechenleistung kann zumindest teilweise auf einen externen Rechner ausgelagert sein, welcher beispielsweise über ein Heimnetzwerk oder über das Internet (Cloud) erreichbar sein kann.
[0032] Der AMR 100 umfasst eine Antriebseinheit 170, welche beispielsweise Elektromotoren, Getriebe und Räder aufweisen kann, wodurch der Roboter 100 - zumindest theoretisch - jeden Punkt seines Einsatzgebiets erreichen kann. Die Antriebseinheit 170 ist dazu ausgebildet, von der Steuereinheit 150 empfangene Kommandos oder Signale in eine Bewegung des Roboters 100 umzusetzen.
[0033] Der AMR 100 umfasst eine Kommunikationseinheit 140, um eine Kommunikationsverbindung 145 zu einer Mensch-Maschine-Schnittstelle (human-machine interface, HMI) 200 und/oder anderen externen Geräten 300 herzustellen. Die Kommunikationsverbindung 145 ist beispielsweise eine direkte drahtlose Verbindung (z. B. Bluetooth), eine lokale drahtlose Netzwerkverbindung (z. B. WLAN oder ZigBee) oder eine Internetverbindung (z. B. zu einem Cloud- Service). Die HMI 200 kann einem Nutzer Informationen betreffend den AMR 100 beispielsweise in visueller, akustischer, taktiler oder sonstiger Form ausgeben (z. B. Batteriestatus, aktueller Serviceauftrag, Karteninformationen wie eine Reinigungskarte, etc.) und Nutzerkommandos für den AMR 100 entgegennehmen.
[0034] Beispiele für ein HMI 200 sind Tablet-PC, Smartphone, Smartwatch und andere Wearables, Home-Computer, Smart-TV, oder Geräte mit einem digitalen Sprachassistenten. Ein HMI 200 kann direkt in den Roboter integriert sein, wodurch der Roboter 100 beispielsweise über Tasten, Gesten und/oder Sprachein- und -ausgabe bedient werden kann. [0035] Beispiele für externe Geräte 300 sind Computer, Tablet-PC, Smartphones und Server, auf denen Berechnungen und/oder Daten ausgelagert werden, externe Sensoren, die zusätzliche Informationen liefern, oder andere Haushaltsgeräte (z. B. andere AMRs), mit denen der AMR 100 Zusammenarbeiten und/oder Informationen austauschen kann.
[0036] Der AMR 100 kann zumindest eine Serviceeinheit 160 aufweisen, um eine Serviceaufgabe zu verrichten. Die Serviceeinheit 160 ist beispielsweise eine Reinigungseinheit zur Reinigung einer Bodenfläche (z. B. Bürste, Saugvorrichtung, Wischvorrichtung oder Kombinationen davon) oder eine Vorrichtung zum Fassen und/oder Transportieren von Gegenständen (z. B. Greifarm). Bei einem Telepräsenz -Roboter kann die Serviceeinheit 160 eine Multimediaeinheit bestehend aus beispielsweise Mikrofon, Kamera und Bildschirm sein, um die Kommunikation zwischen mehreren räumlich weit entfernten Personen zu ermöglichen. Ein Roboter zur Überwachung oder Inspektion ermittelt auf Kontrollfahrten mit Hilfe von hierfür geeigneten Sensoren (Kamera, Bewegungsmelder, Thermometer) ungewöhnliche Ereignisse (z. B. Feuer, Licht, unautorisierte Personen, etc.) und informiert beispielsweise eine Kontrollstelle hierüber.
[0037] Der AMR 100 umfasst eine Sensoreinheit 120 mit verschiedenen Sensoren, beispielsweise einen oder mehrere Sensoren zur Erfassung von Informationen über die Struktur der Umgebung des Roboters in seinem Einsatzgebiet, wie z.B. die Position und Ausdehnung von Hindernissen - oft auch als Landmarken (landmarks) bezeichnet - im Einsatzgebiet. Sensoren zur Erfassung von Informationen über die Umgebung sind beispielsweise Sensoren zur Messung von Abständen vom AMR zu Objekten (z.B. Wänden oder anderen Hindernissen, etc.) wie beispielsweise einen optischen, akustischen oder sonstigen Sensor, der mittels Triangulation, Laufzeitmessung eines ausgesandten Signals oder sonstigen Verfahren, Abstände messen kann (Triangulationssensor, 3D-Kamera, Laserscanner, Ultraschall sensoren, etc.). Alternativ oder zusätzlich kann eine Kamera oder Sensoren zur chemischen Analyse genutzt werden, um Informationen über die Umgebung zu sammeln.
[0038] Die Steuereinheit 150 kann dazu ausgebildet sein, alle Funktionen bereit zu stellen, die der Roboter benötigt, um sich selbstständig in seinem Einsatzgebiet zu bewegen und eine Aufgabe zu verrichten. Hierzu umfasst die Steuereinheit 150 beispielsweise den Prozessor 155 und das Speichermodul 156, um eine Software auszuführen. Die Steuereinheit 150 kann basierend auf den von der Sensoreinheit 120 und der Kommunikationseinheit 140 erhaltenen Informationen Steuerkommandos (z. B. Steuersignale) für die Serviceeinheit 160 und die Antriebseinheit 170 erzeugen. Die Serviceeinheit kann einerseits mit Antrieben ausgestattet sein um beispielsweise mechanische Arbeit en zu verrichten sie kann aber auch in beliebiger anderer Form ausgeführt sein z.B. als Sendeeinheit um externe Geräte zu bedienen oder auch als Schnittstelle um Leistung Information zur Verfügung zu stellen. Die Antriebseinheit 170 kann wie bereits erwähnt diese Steuersignale bzw. Steuerkommandos in eine Bewegung des Roboters umsetzen. Auch die in dem Speicher 156 enthaltene Software kann modular ausgebildet sein. Ein Navigationsmodul 152 stellt beispielsweise Funktionen zum automatischen Erstellen einer Karte des Einsatzgebietes und der Position des Roboters 100 in dieser, sowie zur Bewegungsplanung des Roboters 100 bereit. Das Steuersoftwaremodul 151 stellt z.B. allgemeine (globale) Steuerfunktionen bereit und kann eine Schnittstelle zwischen den einzelnen Modulen bilden.
[0039] Damit der Roboter autonom eine Serviceaufgabe verrichten kann, kann die Steuereinheit 150 Funktionen zur Navigation des Roboters in seinem Einsatzgebiet umfassen, die von dem oben erwähnten Navigationsmodul 152 bereitgestellt werden. Diese Funktionen sind an sich bekannt und können unter anderem eine der folgenden umfassen:
• das Bestimmen der Position des Roboters in einer Karte ohne oder mit nur beschränktem Vorwissen basierend auf den mit den Sensoren der Sensoreinheit 120 ermittelten Informationen der Umgebung (globale Selbstlokalisierung);
• eine kartenbasierte Pfadplanung (Trajektorienplanung) von einer aktuellen Position des Roboters (Startpunkt) zu einem Ziel;
• Funktionen zur Interpretation der Karte und der Umgebung wie z. B. zum Erkennen von Räumen;
• das Management von einer oder mehreren Karten zu einem oder mehreren den Karten zugeordneten Einsatzgebieten des Roboters.
[0040] Generell ist eine vom AMR 100 verwendbare (elektronische) Karte 500 eine Sammlung von (Karten-)Daten zur Speicherung von ortsbezogenen Informationen über ein Einsatzgebiet des Roboters und die für den Roboter relevante Umgebung in diesem Einsatzgebiet. Eine Karte repräsentiert somit eine Vielzahl von Datensätzen mit Kartendaten, und die Kartendaten können beliebige ortsbezogenen Information enthalten. Teilaspekte dieser Datensätze wie beispielsweise eine erkannte Verschmutzung, eine vorgenommene Reinigung oder erkannte Räume können ebenfalls als Karte (insbesondere Verschmutzungskarte, Reinigungskarte, Raumkarte) bezeichnet werden. Aus der Gesamtkarte können auch Teilkarten extrahiert werden. Dies betrifft einerseits örtlich abgegrenzte Bereiche der Karte. Andererseits sind auch Teilkarten denkbar, die von der Kategorie abhängige Informationen der Gesamtkarte abbilden.
[0041] Zu Beschreibung des Ortsbezugs von Informationen werden Koordinaten verwendet. Bei Verwendung einer Rasterkarte zur Navigation können diese Koordinaten beispielsweise auf die Zellen der Rasterkarte verweisen. Alternativ oder zusätzlich können mittels Koordinaten die Position, Ausdehnung und/oder Orientierung von Hindernissen, Objekten, Räumen, Teilgebieten oder anderer Strukturen relativ zu einem geeignet gewählten Koordinatensystem beschrieben werden.
[0042] Darüber hinaus können einige Strukturen mit einem Label versehen werden, um diese für eine Nutzer-Roboter-Interaktion eindeutig identifizieren zu können. Solche benannten Strukturen, sind z.B. Gebiet Objekte oder Attribute. Gebiete stellen dabei Arbeitsbereiche bzw. deren Abbildung in der Karte dar. Objekte sind die im Arbeitsbereich befindlichen Gegenstände bzw. der entsprechenden Abbildung in der Karte. Dabei können auch Verschachtelungen entstehen. Z.B. Können Objekte auch Gebiete bzw. Objekte enthalten oder Gebiete Subgebiete beinhalten. Sowohl Gebiete als auch Objekte können Attribute aufweisen. Diese Attribute sind beispielsweise die Farbe oder Temperatur des Objektes oder des Gebiets. Auch die r Koordinaten die Position und/oder Ausdehnung der Struktur sowie die Ausrichtung können als Attribute der Gebiete oder Objekte verstanden werden. Dabei ist zu beachten, dass es sich Attribute auch ändern können.
[0043] Die Benennung von Gebieten, Objekten und Attributen kann prinzipiell durch den Nutzer erfolgen, durch Namensvorschlag von dritten Personen oder Geräten, oder automatisiert basierend auf Standardbezeichnern, die durch Objekterkennung ausgewählt werden. Beispielsweise kann der Roboter mit Hilfe seiner Sensoren einen Bereich mit Tischen und Stühlen erkennen, und basierend hierauf die Koordinaten eines einen Teilbereichs bestimmen, der den Bezeichner Esszimmer erhält.
[0044] Alle Namen können in natürlicher Sprache sein, wie beispielsweise Raumnamen (Wohnzimmer, Esszimmer) oder Objektnamen (Couch, Tisch). Dies ist beispielsweise günstig, wenn der Nutzer den Namen wählt. Alternativ oder zusätzlich kann der Name auch ein abstrakter Bezeichner sein. Diesem abstrakten Bezeichner können verschiedene Bezeichner in natürlicher Sprache zugeordnet werden. Hierdurch können die zugrunde liegenden Datenstrukturen einfach auf verschiedene nationale natürliche Sprachen angewendet werden. [0045] Die im Folgenden Beschriebenen Ausführungsbeispiele zielen darauf ab, mittels einer Erkennung der Situation und Bewertung der Lage, in der sich der Roboter befindet, das Verständnis der Umgebung durch den AMR zu verbessern und dadurch optimiertes Verhalten zu ermöglichen, neue Möglichkeiten und Einsatzmöglichkeiten für AMRs zu verwirklichen, sowie die Effizienz und die Qualität der Serviceaufgaben zu steigern.
[0046] Ein AMR verfügt üblicherweise über Sensoren, die es ihm ermöglichen Hindernisse in der näheren Umgebung zu erkennen und z.B. eine Kollision mit diesen zu verhindern. Die von den Sensoren aufgenommenen Daten führen oftmals zu einer direkten Verhaltensänderung. Detektierte Hindernisse können auch in einer permanenten oder temporären Karte eingetragen und dienen dann meist der Bahnplanung bzw. der Navigation. Derartige Verfahren sind an sich bekannt und werden hier nicht detaillierter diskutiert. Üblicherweise erfolgt über die Eintragung eines Hindernisses in die Karte keine erweiterte Analyse der Sensordaten.
[0047] Eine erweiterte Analyse der Sensordaten könnte auch Rückschlüsse auf Funktionen und Eigenschaften der detektierten Objekte (Hindernisse) ermöglichen. Durch das Einbeziehen dieser Information ist es möglich, dass Verhalten des AMR kontextbezogen (auf die Situation angepasst) zu verbessern. Um Rückschlüsse auf Funktion und Eigenschaften von Objekten zu ermöglichen, ist es nötig, die Position von Objekten zu bestimmen und die lokalisierten Objekte zu identifizieren, beispielsweise indem diese einer bestimmten Objektkategorie (Klasse von Objekten) zugeordnet werden.
[0048] Es ist bekannt, mittels Bildverarbeitungstechniken Objekte in Bildern zu lokalisieren. Das Berechnen von Objektposen in Bildern und in weiterer Folge von Objektposen in der Umgebung ist mit entsprechendem Rechenaufwand möglich. Ähnlich gilt bei der Kategorisierung/Klassifizierung von Objekten also bei der Zuordnung der aus einem Bild extrahierten Objekte zu einer bestimmten Kategorie/Klasse von Objekten. Beides benötigt aber je nach verwendeter Methode teilweise hohen Rechenaufwand.
[0049] Generell stehen für eine Klassifizierung von Daten verschiedene Methoden zur Verfügung, die von denen hier nur einige beispielhaft aufgeführt werden. Beispielsweise existieren fest vorgegebene Algorithmen, die Daten (z.B. aus Bildern extrahierte Objekte), anhand fester Merkmale bestimmten Kategorien zuordnen. Es gibt aber auch Algorithmen, die sich durch Konfiguration adaptieren lassen und somit etwas flexibler sind. Des Weiteren gibt es auch selbstlernende Algorithmen, die z.B. unter der Bezeichnung „künstliche Intelligenz“ (KI) zusammengefasst werden. Diese Algorithmen werden meist (aber nicht notwendigerweise) als neuronale Netze implementiert.
[0050] Bei selbstlernenden Algorithmen besteht derzeit noch das Problem, dass auch zufällige, nicht relevante Korrelationen erkennt werden und somit ein sinnvoller Einsatz eines alleinigen selbstlernenden Algorithmus nicht ohne weiteres möglich ist. Es wird deshalb häufig ein selbst lernender Algorithmus verwendet, der mit Hilfe von Expertenwissen derart konfiguriert wird, dass die gewünschte Aufgabe mit hinreichender zuverlässiger Wahrscheinlichkeit erfüllt wird.
[0051] Zur Klassifizierung/Kategorisierung von Objekten können die Messdaten von zahlreichen Sensoren verwendet werden. Derzeit wird Objekterkennung häufig mittels Analyse von digitalen Bildern durchgeführt. Es lassen sich Objekte aber auch aufgrund anderer Merkmale erkennen. Beispielsweise können Spektralanalysen oder auch Sensoren, die Moleküle durch direkten Kontakt detektieren, aussagekräftige Daten zu Objekten liefern. Es ist auch möglich, anhand der geometrischen Abmessungen (z.B. anhand des Grundrisses oder des Umrisses) Objekte zu analysieren und einer Klassifikation zu unterziehen. Daten über die Größe können beispielsweise durch Bilder aber auch durch Scannen oder taktile Messungen ermittelt werden. Auch eine Klassifizierung durch typische Bewegungen oder Geräusche ist möglich und führt oft zu zuverlässigen Aussagen. Für eine weitere Qualitätserhöhung der Klassifizierung/Kategorisierung von Objekten könnten auch Daten mehrerer Sensoren kombiniert werden, oder Sensordaten in einer zeitlichen oder räumlichen Abfolge herangezogen werden. Zusätzlich kann auch eine Klassifizierungsgenauigkeit errechnet und optional auch gespeichert werden. Diese gibt an mit welcher Wahrscheinlichkeit es sich um ein bestimmtes Objekt handelt. Bei nicht konsistenten Ergebnissen bei der Objekterkennung ist es auch möglich, das Objekt als Multi objekt zu klassifizieren. Ein derartiges Objekt kann mit der bisherigen Analyse entweder nicht hinreichend genau bestimmt werden und könnte in mehrere Klassen fallen oder entspricht einer nicht zuordenbaren Klasse.
[0052] Klassifizierung von Objekten und Bewertung von Situationen — In dem in Fig. 3 gezeigten Beispiel weist ein AMR 100 mehrere Sensoren 121, 122, 123, etc. auf. Ein weiterer Sensor ist in einem externen Gerät 300 (z.B. einem anderen AMR) angeordnet, welches dazu ausgebildet ist, mit dem AMR 100 über eine drahtlose Kommunikationsverbindung 145 zu kommunizieren (vgl. Fig. 2). Das externe Gerät 300 kann ein beliebiges Gerät sein wie z.B. eine Drohne mit einer Kamera. Das heißt, die dem AMR zur Verfügung stehenden Sensoren können fest oder beweglich am AMR montiert sein oder auch auf ein anderes Gerät „ausgelagert“ sein. Das externe Gerät 300 muss kein mobiles Gerät sein, sondern kann auch stationär im Robotereinsatzgebiet angeordnet sein wie z.B. eine Überwachungskamera.
[0053] Die Sensoren 121, 122, 123, etc. der Sensoreinheit 120 können auch zusätzliche Hilfs- oder Unterstützungselemente verwenden. So kann beispielsweise zur besseren Ausleuchtung der Umgebung (oder eines Teils davon) eine oder mehrere Beleuchtungseinheiten eingesetzt werden. Auch bei der erwähnten Spektralanalyse zur Detektion von Substanzen kann eine geeignete Lichtquelle notwendig sein. Auch ein Auswerten von Objekten anhand ihres Schattens kann eine geeignete Beleuchtung benötigen. Tests haben beispielsweise gezeigt, dass kleine am Boden liegende Objekte anhand des Schattens sehr gut erkannt werden können, wenn die Lichtquelle bodennah platziert wird und diese annähernd parallel zum Boden abstrahlt. Um den entstehenden Schatten auszuwerten ist natürlich eine Parallaxe von Sender und Empfänger nötig. Die Sensoreinheit 120 beinhaltet damit alle internen und externen Sensoren welche dem AMR Daten über seine Umgebung liefern. Die Sensoreinheit 200 ist in diesem Fall keine physische Komponente des Roboters, sondern eine funktionale Einheit. Die Sensoreinheit kann auch interne Zustände des AMR überwachen bzw. interne Zustände können als der Sensoreinheit zur Verfügung stehende Signale aufgefasst werden. So können z.B. interne Meldungen, Warnungen oder Fehlermeldungen die am AMR auftreten und nur systemintern erkennbar sind als Sensorsignale verstanden werden. Auch externe Datenquellen wie Beispielsweise cloudbasierte Datenbanken oder Internetservices die Informationen zur Verfügung stellen (z.B. Wetterprognosen), können als Sensorsignale des AMR aufgefasst werden.
[0054] Gemäß Fig. 3 weist der AMR 100 einen Objektklassifikator 157 auf, der als Bestandteil der Steuereinheit 150 des AMRs implementiert sein kann. Dieser Objektklassifikator 157 kann im Wesentlichen als Software gesehen werden, die beispielsweise auf dem Prozessor 155 ausgeführt wird. Alternativ kann die Ausführung der Software ganz oder teilweise auf einem externen Server ausgelagert sein (Cloud-Computing).
[0055] Nach der Detektion eines Hindernisses H kann das als Hindernis detektierte Objekt einer Klasse/Kategorie von Objekten zugeordnet werden (Objektklassifizierung). Danach können einem klassifizierten Objekt ein oder mehrere Attribute zugewiesen werden. Beispielsweise können einem Objek,t ein Namen (z.B. „Sessel“, „Pflanze“), geometrischen Daten (z.B. Grundriss, Höhe. . .), physikalische Parameter (Temperatur, chemische Zusammensetzung, Aggregatzustand) und weitere Attribute zugewiesen werden. Die Attribute können aus direkter Messung mittels eines oder mehrerer Sensoren, durch Auswertung (Analyse) von Daten mehrerer Sensoren oder auch durch Berechnung unter Einbeziehen bereits vorhandener Attribute ermittelt werden. Bei einer späteren Wiederholung der Klassifikation eines Objekts können diese Attribute ggf. geändert werden falls diese sich geändert haben. Es kann auch die Historie der Attribute gespeichert werden. Es kann es bei der Verrichtung einer Serviceaufgabe relevant sein, welche Temperatur ein Objekt hat, wie groß ein bestimmtes Objekt ist.
[0056] Wird von einem AMR aktuell eine Serviceaufgabe ausgeführt, kann er basierend auf einem oder mehreren erkannten und klassifizierten Objekten (und optional ihrer Attribute) die Situation evaluieren, in der sich der AMR gerade befindet. Wie erwähnt, wird die Situation des AMR durch die relevanten Objekte im Arbeitsbereich oder am Roboter, beziehungsweise der daraus abgeleiteten Information, die dem AMR zur Verfügung steht sowie optional weiterer Gegebenheiten, bestimmt. Dabei kann eine Situation umso genauer evaluiert werden, je mehr Informationen der AMR über die Objekte in seiner Umgebung hat. Bei der Detektion einer Situation wird nach einer bestimmten Kombination, dieser abgeleiteten Informationen und Gegebenheiten gesucht. Wird eine Situation erkannt, kann geprüft werden ob bereits eine geeignete Reaktion des AMR für diese Situation vorliegt. Falls ja kann diese Reaktion eingeleitet werden. Falls nein kann der AMR versuchen eine entsprechende Reaktion zu erarbeiten oder anzufragen. Der Vorteil dieser Situationsdetektion liegt darin, dass der AMR auf einfache Weise neue Situationen „erlernen“ kann in dem sie nachgeladen werden. (z.B. indem der Nutzer diese vorgibt, oder sie per über eine Netzwerkverbindung hinzugefügt werden) Dadurch können Serviceaufträge besser an das Einsatzgebiet anpasst werden.
[0057] Durch die erwähnte Objektklassifikation und dem Zuweisen von Attributen an klassifizierte Objekte können für das Verhalten des AMR relevante Informationen betreffend seine Umgebung bei der Situationsdetektion berücksichtigt werden. Bei Evaluieren einer Situation können auch vorhandene Karteneinträge oder eine Kombination von Kartendaten und aktuell detektierten Objekten berücksichtigt werden. Abhängig von der vom Roboter durchgeführten Situationsbewertung kann der Roboter sein Verhalten anpassen.
[0058] Natürlich können auch weitere Rahmenbedingungen einen Einfluss auf das Roboterverhalten haben. Es kann auch die derzeitige Situation einbezogen werden. So kann beispielsweise die Uhrzeit, Tageszeit, Jahreszeit oder derzeitige Aufgabe herangezogen werden. Ein Roboter kann somit einen anstehenden Task. (z. B. aufgrund einer Sprachanweisung ..dean around the table“ eine entsprechende Reaktion ableiten. Dazu sucht er nach dem Objekt ..table"" und reinigt diesen mit der „dean around" Funktion. Die gleiche ..dean around" Funktion könnte auch mit artverwandten Anweisungen wie ..dean the dining table area"" aufgerufen werden. Dabei kann es auch zu unerwünschten Anweisungen kommen. Ist es beispielsweise bereits sehr spät könnte eine situationsabhängige Implementierung davor warnen, dass es zu laut sein könnte und eventuelle Alternativen vorschlagen. Z.B. „it is already very late should I clean it tomorrow at 8 am? Eine weitere Problematik ergibt sich durch nicht eindeutige Befehle. Gibt es zum Beispiel mehrere Tische könnte eine situationsabhängige Steuerung nachfragen. Z.B.: „the table in the dining room or in the children's room“. Statt der Anfrage beim Anweisungsgeber könnte die Situationserkennung auch Lösungen für die Problemstellung bei anderen z.B. übergeordneten Diensten anfragen.
[0059] Situationen können auch durch die Bewertung von Veränderung von Objekten entstehen. So wird beispielsweise eine Zimmerpflanze, die nicht gegossen wird üblicherweise im Laufe der Zeit ihren Farbton ändern. Aus dem Farbton oder aus der Veränderung des Farbtons kann der Bewässerungszustand der Pflanze abgeleitet werden. Falls - wie in diesem Fall - das detektierte Hindernis als „Pflanze“ klassifiziert wurde, kann diesem Objekt der Objektklasse „Pflanze“ ein Attribut wie „Farbton“ oder „Bewässerungszustand“ zugewiesen werden. An dieser Stelle sei darauf hingewiesen, dass die Menge möglicher Attribute, die einem Objekt zugeordnet werden können, durch die jeweilige Objektklasse bestimmt wird. Der AMR kann als Reaktion auf die Klassifikation eines Objekts als Pflanze sein Verhalten adaptieren, indem beispielsweise dieses Objekt einer Liste zu überwachender Objekte hinzugefügt wird. Dabei wird eine Situationsdetektion zu diesem Objekt angelegt und bei jeder erneuten Detektion dieses Objekts (beispielsweise bei regelmäßigen Kontrollfahrten) der Bewässerungszustand der Pflanze anhand der Veränderung ihres Farbtons überwacht.
[0060] Wie erwähnt ermöglicht die Klassifikation detektierter Hindernisse/Objekte, das Ermitteln von Attributen des Objekts (die von der Objektklasse abhängen können) sowie ggf. die Berücksichtigung weiterer Umweltparametem (z.B. Uhrzeit, Wetter, Raumtemperatur, etc.) die Bewertung der aktuellen Situation, mit der der konfrontiert ist. Abhängig von dieser Situationsbewertung kann der AMR sein Verhalten „intelligent“ verändern und an eine konkrete Situation anpassen. Das heißt, der Roboter kann abhängig von der Bewertung einer Situation ein adäquates Verhalten auswählen oder seine aktuellen Parameter, welche das Verhalten des AMRs bestimmen, anpassen und somit „intelligent“ und spezifisch auf die Situation reagieren. Serviceaufgaben können dadurch besser und effizienter erfüllt werden. [0061] Zu klassifizierende Objekte können sowohl unbelebte Objekte als auch Personen, Tiere oder Pflanzen sein. Insbesondere bei der Anwesenheit von Personen, Tieren oder Pflanzen kann es wünschensweist sein, dass der AMR ein bestimmtes Verhalten an den Tag legt, das z.B. von der konkret erkannten Person oder dem konkret erkannten Tier abhängt. So könnte es z.B. wünschenswert sein, für bestimmte Personen benötigte Gegenstände bereitzustellen oder bei Haustieren die Lautstärke einer Serviceaufgabe zu ändern (z.B. indem der AMR langsamer fährt und, im Falle eines Reinigungsroboters, die Saugleistung reduziert). Für die hier beschriebenen Konzepte der Objektklassifikation und Situationsbewertung gibt es sich zahlreiche Anwendungsfälle von denen im folgendem einige beschrieben werden.
[0062] Zum Beispiel könnten Saugroboter Pfützen am Boden meiden, da flüssige Verschmutzungen nicht im Aufgabengebiet Roboters liegen. Um Gebiete zu meiden, ist es beispielsweise sinnvoll die geometrische Größe des Objektes und den relativen Weg bzw. die Orientierung des Objektes zum AMR zu erfassen und basierend darauf beispielsweise Sperrbereiche im Einsatzgebiet zu erzeugen. Es wäre natürlich auch denkbar, dass aufgrund geänderter Umstände oder einer neuen Situation diese Sperrbereiche wieder aufgehoben oder gelöscht werden. Auf diese Weise können Strategien zur adäquaten Erfüllung der Serviceaufgabe abgeleitet werden. Auch die Versorgung von Geräten mit Energie oder Information oder anderen Verbrauchsgegenständen ist denkbar. So könnte beispielsweise Akkus von Geräten die nicht über das Stromnetz versorgt werden regelmäßig, bei Bedarf oder auf Abruf geladen werden. Dies wäre beispielsweise über ein Wireless-Charching-Modul denkbar. Auch eine Versorgung mit Information z.B. Updates von Geräten die nicht direkt erreichbar sind wäre so denkbar. Für derartige und ähnlich Aufgaben ist es sinnvoll das zu wartende Objekte Informationen bereitstellen oder Situationsbedingte Aufträge erteilen können. Z.B könnte eine Updateroutine in der Cloud oder im Gerät nachfragen ob eine veraltete Firmware verwendet wird. Falls ja könnte unter optionalen weiteren Situationsbedingungen (z.B. physikalische Erreichbarkeit) ein Updatemechanismus gestartet werden. Dir Firmware würde dann in einem ersten Schritt auf den AMR geladen. Der AMR begibt sich dann in einen Bereich der Für eine Datenübertragung auf das Gerät geeignet ist und Startet im Letzten Schritt das Updateprogramm.
[0063] Um AMRs mit intelligenten Servicefunktionen zur Verfügung zu stellen, sind eine Objekterkennung und eine darauf basierende Evaluierung einer Situation zielführend. Dies trifft bereits bei der Erstellung der Serviceaufgabe zu, kann aber auch erst im Verlauf der Durchführung einer Serviceaufgabe entstehen. Ein Beispiel für eine Situationsanalyse bei der Erstellung eines Auftrages ist der bereits angesprochen Punkt der möglichen Uneindeutigkeit von Befehlen. Ein Beispiel für eine Situationsanalyse während der Durchführung eines Auftrages ist der bereits angesprochene Punkt der Überwachung von Zimmerpflanzen.
[0064] Für die Objekterkennung sind verschiedenste Möglichkeiten denkbar. So könnte ein Objekt durch klassische Bildverarbeitung erkannt werden. Es ist aber auch denkbar z.B. ein elektronisches Gerät anhand ihre Anwesenheit im WLAN oder eines Sendesignals zu erkennen. Eine weitere Möglichkeit bildet die Spektralanalyse, mit der Erkenntnisse zum chemischen Aufbau erlangt werden können. Dadurch ist es möglich, bestimmte Objekte oder Situationen zu erkennen und gewünschtes Verhalten beim Verrichten einer Serviceaufgabe durch den AMR zu optimieren und unerwünschtes Verhalten zu vermeiden. Ein AMR kann im Zuge seiner Serviceaufgabe bzw. vorab das derzeitig vorliegende Arbeitsgebiet darauf hin prüfen ob diese mit der Serviceaufgabe in Einklang stehen. Trifft dies zu kann die Serviceaufgabe in herkömmlicher weise abgearbeitet werden. Wird erkannt, dass die Situation bestimmte Kriterien erfüllt wird ein Event ausgelöst, das den AMR in geeigneter Art reagieren lässt. (Fig. 8) Die Entscheidung wie in der jeweiligen Situation reagiert wird könnte sowohl vom AMR errechnet werden (lokale Speziallösung), als auch von einer übergeordneten Entscheidungsinstanz (externe Speziallösung) die der AMR anfordert. Die Entscheidung könnte anschließend sowohl Änderungen der Serviceaufgabe des AMR also auch Reaktionen anderer externer Geräte verursachen.
[0065] Von besonderem Vorteil ist dies wenn der AMR mehr als eine Serviceaufgabe erfüllen kann. Auf diese Weise können dem AMR einfache Funktionalitäten für neue Situationen nachgeladen werden. So könnte ein Reinigungs-AMR parallel auch Kontrolloder Wartungsfunktionen in einer Wohnung übernehmen. Führt der AMR dann eine Serviceaufgabe aus kann er in diesem Zug auch die Situationsdetektion bezüglich anderer Serviceaufgaben miterledigen. Wird eine entsprechende Situation erkannt so wird ein oben genanntes Event ausgelöst und errechnet wie weiter vorzugehen ist.
[0066] Eine weitere Möglichkeit der Verbesserung der Serviceaufgaben kann dadurch erreicht werden, dass die Abfolge in der die Serviceaufgaben durchgeführt werden sich daran orientiert wie wahrscheinlich der Abschluss der Serviceaufgabe ist, welche Priorität bestimmte Serviceaufgaben haben oder wie schnell diese durchgeführt werden können. Auch eine logische Abfolge von Serviceaufträgen kann implementiert werden. So könnte einer Serviceaufgabe oder Teile der Serviceaufgabe entsprechend der Situation eine Aufgabenabschusswahrscheinlichkeit zugeordnet werden. Abhängig von der ermittelten Aufgabenabschlusswahrscheinlichkeit kann der AMR festlegen, welche Tätigkeiten oder Aufgaben als nächste durchgeführt werden und in welcher Form diese Aktionen (d.h. Tätigkeiten oder Aufgaben) durchgeführt werden. Beispielsweise können situationsabhängig aktuelle Serviceaufgaben verändert oder unterbrochen werden, um zuerst eine andere Aufgabe durchzuführen, bevor die ursprüngliche Serviceaufgabe fortgesetzt wird. Fig. 9 zeigt beim ersten Beispiel eine Wohnung, bei der den Zimmern Abschlusswahrscheinlichkeiten zugeordnet wurden. Dies könnte z.B. aus den bisherigen Reinigungsabläufen generiert werden oder auch aufgrund anderer Abschätzungen erfolgen. Aufgrund der der Zuordnung in diesem Fall würde die Reihenfolge folgende sein: 1(90%) / 3(90%) / 5(80%) / 2 (70%) / 4(60%). Fig. 9 zeigt beim zweiten Beispiel einen Raum bei der den Zimmern Abschlusswahrscheinlichkeiten zugeordnet wurden. Dies könnte z.B. aus den detektierten Gegenständen die im Raum sind generiert werden oder auch aufgrund anderer Abschätzungen erfolgen. Aufgrund der der Zuordnung in diesem Fall würde die Reihenfolge folgende sein: 1(99%) / 3(90%) / 2(70%) / 5 (50%). Der Bereich 6 würde gar nicht bearbeitet werden und wie ein Sperrbereich behandelt werden. Ein derartiges Ereignis könnte natürlich weitere Aktionen wie z.B. eine Meldung an den Nutzer zur Folge haben. Die dargestellten Beispiele könnten auch mit anderen Maßzahlen als der Abschlusswahrscheinlichkeit implementiert werden. So könnte auch die Berechnete Abschlussdauer oder der Energieaufwand verwendet oder mitverwendet werden. In diesem Fall könnte je nach Einstellung bei der Reinigung im Raum 1(99%), das Gebiet 5 (50%) einmal umfahren (z.B. wenn der Umweg kurz ist) und einmal durchfahren werden (z.B. wenn der Umweg kurz ist).
[0067] Des Weiteren kann auch situationsabhängig eine aktuell verrichtete Aufgabe abgebrochen und eine neue Aufgabe begonnen werden. In all diesen Beispielen kann der Roboter auf eine bestimmte Situation reagieren, in der er sich gerade befindet und die er nach bestimmten, vorgebbaren Kriterien evaluiert hat.
[0068] Als mögliche Reaktionen des AMR auf eine bestimmte, erkannte Situation kommen beispielsweise folgende in Frage:
• Auswählen und Starten einer Serviceaufgabe,
• Fortsetzen der Serviceaufgabe
• Ändern von Parametern der Serviceaufgabe (Geschwindigkeit, Leistung, Lautstärke...),
• Pausieren oder Verschieben einer Serviceaufgabe um einen bestimmten oder unbestimmten Zeitraum, Benachrichtigungen bzw. Anfragen von Lösungen an einens Nutzers oder eine andere Einheiten (anderer AMRs oder anderer externe Geräte),
• Abbrechen von Serviceaufgaben, und
• Speichern oder Löschen von Daten in einer elektronischen Karte des AMSs oder in anderen Datenbanken.
[0069] Es versteht sich, dass die obige Aufzählung nicht vollständig, sondern nur exemplarisch ist. Je nach Anwendungsfall können, basierend auf den klassifizierten Objekten oder der erkannten Situation, verschiedene Optionen des AMR evaluiert werden und basierend auf dieser Evaluierung eine oder auch mehrere geeignete Aktion ausgewählt und ausgeführt werden.
[0070] Es ist auch möglich, dass der AMR aufgrund einer Situationsbewertung zu dem Ergebnis kommt, dass eine notwendige Maßnahme nicht vom AMR selbst ausgeführt werden kann (beispielsweise das Öffnen einer geschlossenen Tür oder das Verschieben eines Hindernisses). In diesem Fall kann der AMR den Nutzer informieren damit dieser die notwendige Maßnahme durchführen kann. Auch die Kooperation mit weiteren AMRs oder anderen externen Geräten ist möglich. In diesem Fall könnte ein AMR dann andere AMRs oder externen Geräten beauftragen oder selbst einen Auftrag von einem anderen AMR zugewiesen bekommen. Derartige Generierung von Aufträgen muss natürlich nicht zwangsweise von AMR selbst durchgeführt werden, sondern kann auch z.B. von einer übergeordneten Einheit durchgeführt werden Fig. 10 (Skizze 6). Ein AMR würde dann bei einer nicht selbst lösbaren Situation eine Anfrage (Al) stellen. Die übergeordnete Einheit (z.B. Cloud-Server) prüft anschließend die zur Verfügung stehenden Möglichkeiten um die Problematik der Situation zu lösen. Optional können auch ein oder mehrere Rechner (Server) zwischengeschaltet werden. Dies könnte z.B. Rechner eines Hotels sein die die für mehrere AMRs zuständig sind. Es könnte auf sein, dass wenn die Cloud nur unzureichende Lösungen findet, ein Mensch mit der Beurteilung der Anfrage Al beauftragt wird. Nach Entscheidung der besten Methode werden Aufträge (LI) an zur Verfügung stehende AMRs generiert und in Auftrag gegeben. Je nach Implementierung ist es auch möglich dass die Lösung LI für andere AMRs zur Verfügung gestellt wird. Im Fall von Fig. 3 wird aufgrund einer ähnlichen Anfrage (A2) von einem anderen AMR (100(2)) Beispielsweise aus LI ein L2 errechnet und dann direkt von der Cloud zur Verfügung gestellt.
[0071] Auch eine Folge von Aktionen oder mehrere parallele Aktionen könnten aufgrund einer bestimmten Situation ausgelöst werden. So ist es beispielsweise möglich, dass ein Reinigungsroboter auf ein Hindernis stößt und er deshalb einen bestimmten Bereich nicht vollständig reinigen kann (Fig. 4 (a). In so einer Situation könnte der AMR beispielsweise reagieren, indem er einen oder mehrere Transportroboter beauftragt, das Hindernis zu verschieben (Transportroboter nicht eingezeichnet). Nach dem Verschieben der Sessel liegt ein veränderter Raum (Fig. 4(b)) vor. Nach Rückmeldung der Erledigung dieser Transportaufgabe oder zu einem festgelegten Zeitpunkt könnte der Reinigungsroboter (AMR) den Serviceauftrag „Reinige Zimmer A“ fortsetzen und fertigstellen. Fig. 4 (Skizze 2)
[0072] Lernen des AMR — Um dem AMR die Möglichkeit zu geben, sich an sein Einsatzgebiet anzupassen, können auch Funktionen zu Verfügung gestellt werden, die es ermöglichen das Verhalten des AMR bei künftigen Servicefunktionen anzupassen. So könnte z.B. eine Konditionierung des AMR dahingehend erfolgen, dass der Nutzer oder die Einheit, die den AMR beauftragt hat, Rückmeldung über die Qualität des ausgeführten Service erteilt. Die Rückmeldung könnte z.B. nach Begutachtung durch den Nutzer erfolgen, oder auch aufgrund von vorher nachher Vergleichen die der AMR selbst erstellt. Die Begutachtung könnte natürlich auch durch eine separate Inspektionseinheit erfolgen. Beispielsweise könnte dem Nutzer eine Bewertungsmöglichkeit zur Verfügung gestellt werden, mit der dieser seine Zufriedenheit mit der Erledigung eines Serviceauftrags, als gut oder schlecht (oder z.B. auf einer Skala von 5 bis 1) rückmelden kann. Auch die Bewertung einzelner Aktionen oder Bereiche, in denen eine Aufgabe verrichtet wurde, könnte auf diese Weise abgefragt und zur Konditionierung des Verhaltens des AMRs genutzt werden. Der AMR hat dann die Möglichkeit, in gleichen oder ähnlichen Situationen anders (besser) zu reagieren. Im Laufe der Zeit könnte der AMR sich somit sehr gut an das Einsatzgebiet anpassen.
[0073] Für die Entscheidungsfindung bei entsprechenden Situationen, ist es wichtig, dass Objekte möglichst korrekt erkannt werden. Detektiert beispielsweise der AMR ein Objekt, das er nicht eindeutig eine Objektklasse zuordnen kann, könnte er versuchen, durch Messungen mit anderen Sensoren oder auch eine durch eine veränderte Roboterposition während der Messung eine zuverlässigere Klassifizierung zu erhalten.
[0074] Ein großer Vorteil eines AMRs gegenüber anderen Geräten ist unter anderem, dass sich dieser autonom ohne Zutun des Nutzers bewegen kann und auch Manipulationen vornehmen kann. Der AMR kann also während einer Messung oder zwischen zwei Messungen seine Position verändern. Dadurch ist es beispielsweise auch möglich, Manipulationen zum Zwecke einer Objektidentifikation vorzunehmen. So könnte es vorkommen, dass herumliegende Kleidung (siehe Fig. 5, AMR 100 detektiert Objekt „Wäscheberg“) zwar als Kleidung identifiziert wird, jedoch der Kleidungstyp (Socken, Hose, etc.) aufgrund der Lage nicht zugeordnet werden kann. Kommt der für die Objektklassifikation verwendete Algorithmus zum Ergebnis, dass z.B. eine Manipulation wie ein Entfalten der Kleidung eine Identifikation wahrscheinlicher macht, könnte der AMR versuchen, die Kleidung zu entfalten oder deren Position oder Beleuchtung zu verändern, und anschließend Detektion und Klassifikation zu wiederholen. Natürlich ist dieses Verhalten um weitere Entscheidungszweige erweiterbar. So könnte es beispielsweise das Entfalten der Kleidung nur ausgelöst werden, wenn die Manipulation als sicher einstuft wird oder wenn durch die Manipulation eine deutliche Steigerung der Klassifikationsgüte erwarten lässt. Die genannten Punkte hängen natürlich stark von der Konstruktion des AMR ab. So ist ein AMR z.B. mit Greifarmen (siehe Fig. 5, AMR 101) unter Umständen besser für ein Entfalten von Kleidung geeignet als ein AMR der Manipulationen ausschließlich durch Schieben ausführen kann.
[0075] Wie erwähnt kann der AMR bei der Objektklassifikation und/oder der Evaluierung einer Situation die Berechnungen oder Teile davon an ein übergeordnetes Steuersystem wie z.B. ein Server (z.B. einen Cloud-Computing Service) auslagern. Häufig kann auf diese Weise die Güte der Klassifikation verbessert werden. Beispielsweise kann der AMR bei dem Server eine Überprüfung einer bereits durchgeführten Objektklassifikation anf ordern. Die übergeordnete Einheit kann dann die bisherige Klassifizierung bestätigen oder korrigieren. Ähnliche Anfragen können auch an den Nutzer gerichtet werden. Es kann auch vom Ergebnis der vom AMR durchgeführten ersten Objektklassifikation abhängen (z.B. von der erzielten Klassifikationsgüte), ob an den Server eine Anfrage zur Überprüfung gerichtet wird. Es ist auch denkbar, dass Anfragen an den Server oder den Nutzer die Bewertung einer Situation betreffen, oder dass die weiteren Schritte zu Serviceaufträgen angefragt werden.
Beispielsweise könnte bei der Objektklassifizierung durch den Server ergeben, dem Nutzer eine Anfrage geschickt werden, wobei dem Nutzer ein Bild der festgestellten Situation gesendet werden soll. Dieser kann dann entscheiden wie weiter vorzugehen ist
[0076] Vor allem komplexe Aufgabenstellungen könnten von einer übergeordneten Einheit gut gemanagt werden. Ein Beispiel ist in Fig. 5 skizziert. Wenn z.B. ein AMR 100 eine Serviceaufgabe (vgl. Fig. 5, Schritt S50) ausführt und er diese z.B. aufgrund einer bestimmten Situation nicht fortsetzen kann (d.h. die Bewertung einer erkannten Situation ergibt, dass die Serviceaufgabe nicht fortsetzen werden kann - siehe Fig. 5, Fläche X ist wegen Wäscheberg nicht erreichbar, Schritt S51), könnte der AMR 100 beispielsweise bei der übergeordneten Einheit (z.B. einem Server) eine Lösung wie z.B. die Veränderung der Situation anfordem (vgl. Fig. 5, Schritt S52). Befinden sich andere AMRs im Einsatzgebiet (siehe Fig. 5, Transport- AMR 101, Wisch- AMR 102), könnte er diese Information seiner Anfrage hinzufügen. Die übergeordnete Einheit könnte dann eine Abfolge von Serviceaufträgen an die AMRs 100, 101, 102 im Einsatzgebiet generieren, die zum Ziel haben, die problematische Situation zu verändern. Diese Abfolge von Serviceaufträgen könnte dann von einem oder mehreren AMRs 100, 101, 102 im Einsatzgebiet ausgeführt werden. Die AMRs, die im Einsatzgebiet zur Verfügung stehen, könnten sowohl vom anfragenden AMR übermittelt werden oder dem übergeordneten System auch auf andere Weise dem bekannt sein. Eine Entscheidung, ob und wie ein Serviceauftrag (zur Verrichtung einer Aufgabe) ausgeführt werden soll, kann beispielsweise je nach Konfiguration von der übergeordneten Einheit, von einer lokalen Steuerung im Einsatzgebiet, vor Ort, nach Rückmeldung des Nutzers, oder abhängig von der erkannten Situation erfolgen.
[0077] Anfrage an übergeordnete Entität — Ein weiterer Anwendungsfall ergibt sich durch die Möglichkeit einer Adaption oder Erweiterung der oben erwähnten Situationsbewertung mittels Klassifizierung von erkannten Objekten. In manchen Ausführungsbeispielen kann der AMR im Zuge eines Updates des Klassifikators zusätzliche Objektklassen „erlernen“. Beispielsweise könnte ein Reinigungsroboter dann geänderte/erweiterte Klassendefinitionen erhalten, die auf Daten von zuvor detektierten Objekten (z.B. herumliegender Kleidung oder Spielzeug) basieren.
[0078] Da üblicherweise eine Anfrage an ein übergeordnetes Steuersystem (z.B. Server) mit höherem Aufwand verbunden ist, kann es je nach Anwendung sinnvoll sein, Entscheidungen, die das Verhalten des AMR betreffen, lokal (d.h. der Roboter entscheidet selbst) zu treffen und nur bei Bedarf Anfragen an das übergeordnete Steuersystem weiter zu reichen. Ob Anfragen durchgeführt werden, könnte beispielsweise durch eine Kosten-Nutzen-Analyse geschehen. Ist der Aufwand zu hoch, wird lokal gearbeitet. Ist der Aufwand vertretbar, wird angefragt. Der Aufwand könnte monetär, zeitlichen, energetisch oder eine Kombination dieser Aspekte sein. Auch die Erfolgswahrscheinlichkeit könnte berechnet und berücksichtigt werden.
[0079] Das übergeordnete Steuersystem kann auch eine Benutzerschnittstelle aufweisen, um mit einem Benutzer kommunizieren zu können und dem Benutzer die Möglichkeit zu geben, aufgrund der vom Roboter ermittelten und über die Benutzerschnittstelle ausgegebenen Daten Entscheidungen zu treffen, Klassifikationen/Kategorisierungen vorzunehmen oder andere Aufgaben zu übernehmen (z.B. den erwähnten Wäscheberg zu entfernen). Eine Auswertung der vom Benutzer getroffenen Entscheidungen und Klassifizierungen kann auch zum Training eines lernenden Algorithmus genutzt werden. Im Laufe der Zeit könnte ein derartiger Algorithmus die Auswertung/Beurteilung der ermittelten Daten übernehmen, und Anfragen an den Benutzer werden überflüssig.
[0080] Die Adaptionsfähigkeit eines Roboters könnte so weit gehen, dass dieser nach dem Aufbau und einschalten keinerlei gesonderte Anpassung des Nutzers benötigt. Er könnte beispielsweise z.B. sofort mit einer Erkundungs- oder Reinigungsfahrt starten da dies nahezu alle Nutzer so machen. Anschließend könnte er aufgrund des Arbeitsgebietes einen geeigneten Arbeitsplan erstellen und diesen dann durchführen. Z.B. könnte er an Wochentagen vormittags mit der Reinigung beginnen. Bei Detektion von Personen oder Haustieren könnte er auf Serviceaufträge in Gebiete um planen in denen derzeit niemand ist usw. Erst bei Unzufriedenheit des Nutzers könnte eine erstmalige Rückmeldung des Nutzers an den AMR erfolgen. Der Roboter könnte dann z.B. gezielt nach den Gründen der Unzufriedenheit suchen oder die wahrscheinlichste Änderung übernehmen. Von besonderem Vorteil ist dies natürlich für Nutzer die sich nicht mit dem AMR und seinen Möglichkeiten im Detail auseinandersetzen wollen.
[0081] In manchen Ausführungsbeispielen kann die Auswertung der vom Roboter ermittelten (Mess-) verteilt von unterschiedlichen Entitäten durchgeführt werden. Beispielsweise könnte ein AMR einen übergeordnete Cloud-Server anfragen. Kann dieser Algorithmus feststellen, dass eine Anfrage nicht genügen genau bestimmt werden kann. Der Algorithmus beauftrage dann z.B. eine Person mit dieser Auswertung. Kann auch diese Person keine Entscheidung treffen könnte die Anfrage an einen Spezialisten weitergeleitet werden. Sobald die Entscheidung getroffen ist könnte eine Rückkoppelung der Entscheidung an einige oder alle vorherigen Entscheidungsinstanzen erfolgen.
[0082] Sobald die Entscheidung getroffen ist könnte eine Rückkoppelung der Entscheidung an einige oder alle vorherigen Entscheidungsinstanzen erfolgen. Beispielsweise könnte ein AMR ein Objekt erkennen aber nicht eindeutig genug einer Klasse zuordnen, könnte eine Anfrage gestellt werden. Nach hinreichender genauer Zuordnung durch eine höhere Instanz kann diese Entscheidung optional künftig für darunterliegende Instanzen genutzt werden
[0083] In manchen Ausführungsbeispielen werden Anfragen an das übergeordnete Steuersystem konfigurierbar gestaltet, da nicht alle Nutzer Interesse haben, ihre Daten durch externe Entitäten (Server, Cloud-Dienste, Personen, etc.) verarbeiten zu lassen. Dabei besteht die Möglichkeit, dass beispielsweise vor der Übermittelung von Daten an das übergeordnete Steuersystem Daten bzw. Teile davon manipuliert, entfernt oder diese unkenntlich gemacht werden. So könnten beispielsweise Gesichter vor einer Übermittlung ausgeblendet werden. Auch bestimmte Bereiche des Robotereinsatzgebiets können mit Einschränkungen belegt werden. Beispielsweise kann der Roboter so konfiguriert werden, dass keine Bilder aus dem Arbeitszimmer oder dem Badezimmer übermittelt werden dürfen. Auch eine Verschlüsselung oder Abstrahierung ist denkbar. So könnten nur Einheiten oder Nutzer mit entsprechender Autorisierung diese Daten verwenden.
[0084] Eine mögliche Variante ergibt sich weiter dadurch, dass das „Wissen“ (z.B. erlernte Daten, die für die Objektklassifizierung verwendet werden) gleichartiger oder ähnlicher AMRs kombiniert wird. Auf diesem Weg könnten AMRs voneinander lernen. Eine derartige Verbreitung von Wissen kann auch auf einzelne AMRs oder eine Gruppe von AMRs eingeschränkt werden. So könnte wechselseitiges Lernen beispielsweise nur innerhalb der Gruppe von AMRs erlaubt werden, die z.B. im selben Hotel eingesetzt werden.
[0085] Karte eines Gebietes mit Objekten und zugehörigen Attributen
[0086] Durch Klassifikation/Situationsbewertung ermittelte Teilgebiete — Bei der Verrichtung einer Serviceaufgabe kann der AMR die (mittels Klassifizierung) identifizierten Objekte auch in temporäre oder permanente Karten eintragen. Fig. 6/Skizze 4 zeigt eine mögliche Implementierung. In diesem Fall, eine Karte und eine zugehörige Tabelle, in der die Objekte samt Attributen eingetragen wurden. Auf dieser Weise können z.B. automatische Sperrgebiete oder Risikogebiete in Bezug auf eine oder mehrere Serviceaufgaben in der Karte gespeichert und später wiederverwendet werden. Es kann so beispielsweise der Bodenbereich, der von einem als Teppich klassifizierten Objekt belegt wird, als für einen Wischroboter nicht geeignetes Teilgebiet (des gesamten Robotereinsatzgebietes) qualifiziert und als solches in der Karte gespeichert werden. Auf ähnliche Weise können Bodenbereiche, die mit als „Exkremente von Haustieren“ klassifizierten Objekten belegt sind, als Sperrgebiete oder Sonderzonen vermerkt werden. Gleiches gilt für Bodenbereiche mit Flüssigkeiten bedeckt sind (Fig. 6 (6)). Eine solche Sonderzone kann z.B. insofern speziell behandelt werden, als der Roboter nicht, nur mit verringerter Geschwindigkeit oder mit ausgeschaltetem Servicemodul (Reinigungsmodul) durch dieses Gebiet fährt. Auch die Beseitigung solcher Sonderzonen durch andere AMRs oder spezielle Werkzeuge ist möglich. Services könnten sich auch auf erkannte Änderungen der Teilgebiete erstrecken. Beispielsweise könnte eine sich ausbreitende oder abfließende Wasserlache als sich in der Ausbreitung veränderndes Objekt betrachtet werden. [0087] . Es kann auch passieren, dass der AMR beim ersten Erkennen des Objekts noch nicht die Gesamtgröße des betreffenden Bodenbereichs erkennen kann. Es bietet sich dann die Möglichkeit an, die Ausdehnung des zunächst erkannten Bodenbereichs mittels Erkundung der näheren Umgebung zu erweitern oder zu reduzieren, und dadurch seine Gesamtausdehnung festzustellen. Dies kann einerseits bei laufendem Servicebetrieb erfolgen, könnte aber auch durch eine gesonderte Erkundung der näheren Umgebung erreicht werden.
[0088] Es ist auch möglich, dass Objekte bzw. Bodenbereiche, die von dem Objekt belegt sind, aufgrund objektspezifischer Eigenschaften ein angepasstes Service erhalten. Beispielsweise könnten zusätzliche Serviceeinheiten des Roboters an- bzw. ausgeschaltet werden oder Parameter wie Geschwindigkeit, Lautstärke oder Leistung angepasst werden.
[0089] Ein weiterer Vorteil der Objekterkennung und Objektklassifikation ergibt sich durch die Möglichkeit, das erreichte Ergebnis einer Serviceaufgabe zu kontrollieren. Beispielsweise kann ein Reinigungsroboter nach dem Abschluss einer Reinigung Messungen durchführen (z.B. Bilder aufnehmen) und überprüfen, ob die Serviceaufgabe in ausreichender Qualität durchgeführt wurde. Es wäre möglich, bearbeitete Gebiete anschließend mit einem Klassifikator überprüfen zu lassen oder dem als „Küchenboden“ klassifizierten Objekt das Attribut „Sauberkeitsgrad“ hinzuzufügen. Eine Klassifikation des Objekts vor und nach der Reinigung, würde voraussichtlich auch Änderungen im Attribut „Sauberkeitsgrad“ bewirken. Je nach Anwendung könnte die Serviceaufgabe z.B. nur dann als erfolgreich abgeschlossen bewertet werden, wenn das Attribut einen bestimmten Grenzwert erreicht bzw. überschreitet. Die Entwicklung von Klassifikatoren mit entsprechend hoher Güte ist mit Hilfe von maschinellem Lernen und bei entsprechend hoher Anzahl an korrekt zugeordneten Trainingsdaten relativ einfach möglich. Dabei wird ein Klassifikator erzeugt der anhand bekannter Messdaten trainiert wird. Durch das Training mit viele schmutzigen und vielen sauberen Fotos von Böden kann ein Klassifikator erzeugt werden der z.B. einem noch nie klassifizierten Küchenboden einen Wert in der Klasse Verschmutzung zuordnen kann. Z.B. Sauber vs. Schmutzig. Bzw. Werte dazwischen. In Fig.12 Skizze 7 sind 2 Böden dargestellt die beide mit Schmutz (SM) verunreinigt sind. Der Schmutzgrad (SG) ist in einem Fall groß und im anderen Fall klein. Dieser Schutzgrad könnte z.B. direkt als Wert für Verschmutzung verwendet werden. Dies könnte sowohl als eigene Klasse als auch als Attribut des Objektes Boden (B) implementiert werden.
[0090] Auch ein aktiveres Eingreifen des AMR ist möglich. Ein Reinigungsroboter könnte beispielsweise erkennen, dass ein Gebiet nicht gereinigt werden kann, weil ein Objekt dieses Gebiet blockiert. Ist zufolge der Objektklassifikation oder der Situationsbewertung jedoch ein Verschieben des Objekts möglich, könnte der AMR dies durchführen. In manchen Ausführungsbeispielen wird der AMR ein Verschieben des Objekts nur dann durchführen, wenn dies risikolos möglich ist, oder das Objekt anschließend auch wieder an seine ursprüngliche Position zurückgeschoben werden kann.
[0091] Ein besonderer Vorteil für Anwendungen eines AMR, ist Möglichkeit des Verschiebens bzw. Manipulationsmöglichkeiten von Objekten im Einsatzgebiet. Im Gegensatz zu nicht mobilen Geräten kann ein AMR dadurch zahlreiche Serviceaufgaben durchführen. Besonders umfangreich werden die Möglichkeiten, dadurch wenn das System Situationen richtig erkennt und daraus geeignete Schlussfolgerungen ableitet.
[0092] Eine Objekterkennung und Klassifikation und ggf. eine Situationsdetektion bzw Lösungssuche und Bewertung kann es ermöglichen, dass Bodenbereiche vom AMR erreichbar werden, die vorher aufgrund mangelndem Wissen des Roboters gemieden wurden. So könnte ein Roboter, der einen Vorhang als Wand interpretiert und diesen deshalb nicht berührt, nach einer Objekterkennung zur Entscheidung kommen, eine Kollision zu akzeptieren, um unter dem Vorhang besser Reinigen zu können.
[0093] Eine ähnliche Anwendung ergibt sich folglich auch bei angelehnten, aber nicht geschlossenen Türen. Wird erkannt, dass es sich um eine Tür handelt, kann der AMR versuchen, diese vorsichtig zu öffnen. Damit hat er die Möglichkeit, auch weitere Zimmer zu erreichen und Serviceaufgaben in einem größeren Einsatzgebiet durchzuführen. Dabei kann unter anderem darauf geachtet werden, dass eine Serviceaufgabe so durchgeführt wird, dass keine Türen geschlossen werden und der AMR alle Gebiete, insbesondere seine Basisstation möglichst gut erreichen kann. Das gilt natürlich im Speziellen für Basisstationen, an denen der AMR selbst gewartet wird.
[0094] Auch Bodenbereiche, in denen verschiedene Bodenbeläge aneinandergrenzen, könnten in der Karte vermerkt werden. Bei der Reinigung stellen diese Bodenbereiche eine besondere Herausforderung dar, da sie häufig zusätzliche Strukturen wie Spalte oder Höhenunterschiede beinhalten. Wenn der AMR in der Lage ist, derartige Bodenbereiche als Objekte zu erkennen und als „Übergangsbereich zwischen verschiedenen Bodenbelägen“ zu klassifizieren und in eine Karte einzutragen. Es wäre dann möglich gesonderte Behandlung aufgrund dieser Daten möglich. (z.B. durch eine zusätzliche Sonderreinigung des Übergangsbereichs). [0095] Mittels Erkennung von speziellen Eigenschaften und Begrenzungen von Objekten können automatisiert Bodenbereiche (z.B. Grenzlinien) in einer Karte eingetragen werden, die richtungsabhängig passiert werden dürfen. Beispielsweise kann ein Teppich mit Fransen als solcher erkannt werden und der Rand des Teppichs, an dem sich an zwei Seiten Fransen befinden, automatisiert in der Karte als „halbdurchlässige Begrenzung“ gespeichert werden. Dies hat zur Folge, dass der Roboter diese halbdurchlässige Begrenzung nur passiert, wenn er den Teppich verlässt. Dieses Verhalten kann ein Verheddern an Fransen wahrscheinlich verhindern.
[0096] Zu den erkannten und klassifizierten Objekten bzw. daraus abgeleiteten Bodenbereichen (z.B. jene, die von dem Objekt belegt oder beeinflusst werden) können auch Wahrscheinlichkeiten errechnet werden, mit denen die Serviceaufgabe durchgeführt werden kann. Die Serviceaufgabe wird in dem jeweiligen Bereich abhängig von der ermittelten Wahrscheinlichkeit (d.h. dem Risiko eines Problems bei der Durchführung der Serviceaufgabe) durchgeführt oder nicht. Beispielsweise können Gebiete, in denen ein bestimmtes Risiko überschritten wird, gar nicht bearbeitet werden, oder, dass riskante Gebiete erst nach Beendigung der nicht riskanten Arbeiten durchgeführt werden. Auch eine Kombination von verschiedenen Prioritäten ist natürlich möglich.
[0097] Karten mit Objekten — Es können in der Karte des Einsatzgebietes auch Wahrscheinlichkeiten für Objekte verzeichnet werden. So könnte es passieren, dass ein Objekt gefunden wird, das mit einer Wahrscheinlichkeit von 40% eine Kleidung, mit einer Wahrscheinlichkeit von 30% ein Spielzeug und mit einer Wahrscheinlichkeit von 30% ein nicht näher klassifizierbares anderes Objekt ist. Sie können für die Bewertung einer Situation und der darauf basierenden Auswahl des Verhaltens des AMRs verwendet werden. Es wäre beispielsweise möglich, dass beim Erkennen einer Verteilersteckdose im umliegenden Gebiet mit Kabeln zu rechnen ist. Es könnten auch Orte gekennzeichnet, werden in denen sich ähnliche Objekte befinden. Der Roboter kann dann beispielsweise Bodenbereiche, in denen mit relativ hoher Wahrscheinlichkeit mit herumliegenden Kabeln zu rechnen ist, langsamer fahren und/oder sensibler auf äußere Kräfte (die der Bewegung des Roboters entgegenwirken) reagieren.
[0098] Diese Informationen über die Wahrscheinlichkeiten können auch verwendet werden, um zu Objektklassen eine Karte des Robotereinsatzgebietes mit Aufenthaltswahrscheinlichkeiten zu erzeugen Vor allem globale und lokale Maxima und Minima sind besonders interessant. [0099] Eine daraus folgende Anwendung ist das zur Verfügung stellen von Informationen über Objekte mit ungewöhnlicher Aufenthaltsort. (Fig. 13 Skizze 8) Zeigt beispielsweise 2 Objekte (O) der gleichen Klasse. Zusätzlich wird ein Wahrscheinlichkeitsgebiet (WG) in der Karte dargestellt. Dieses gibt wo ein Objekt der jeweiligen Klasse wahrscheinlich zu finden ist. Zur Erstellung der Wahrscheinlichkeitsklasse könnte beispielsweise die Historie verwendet werden. Es könnte aber auch der Nutzer derartige Bereiche definieren. Das Objekt (OW) befindet sich in einem Wahrscheinlichkeitsgebiet, Das Objekt (OU) befindet sich außerhalb eines Wahrscheinlichkeitsgebiets. Die Detektion der Objekte (OW) oder (OU) könnten wieder entsprechende Reaktionen hervorrufen. Beispielsweise könnte so ein Schlüssel, der unter dem Sofa liegt, gemeldet werden da dies unwahrscheinlich ist. Auch ein Transport, per Transport-AMR an einen geeigneten Ort, ist möglich. Der AMR könnte im Laufe der Zeit lernen, welche Objekte üblicherweise wo zu finden sind und die Wahrscheinlichkeitskarte aktualisieren. Befindet sich ein Gegenstand häufig in einer ungewünschten Position könnte dies auch dazu führen dass die Wahrscheinlichkeitskarte unerwünschte Formen annimmt. In diesem Fall könnte gegengesteuert werden in dem Informationen des Nutzers verwendet werden.
[00100] Es kann auf dieser Weise auch eine „Such- und Bringfunktion“ realisiert werden, wobei der Roboter zuerst jene Bereiche des Einsatzgebietes durchsucht, in denen eine hohe Wahrscheinlichkeit besteht, das gesuchte Objekt zu finden.
[00101] Ein Nutzer könnte dann auch einen Transport AMR beauftragen, bestimmte Objekte an bestimmte Orte zu bringen. Hat der AMR entsprechende Fähigkeiten (zur Erkennung und Klassifikation einer Vielzahl von Objekten) so ist es möglich, auch kompliziertere Abläufe zu realisieren. Verfügt der AMR auch über eine geeignete Spracherkennung, so wäre beispielsweise folgende Serviceanweisung denkbar: „AMR, bitte bring alle leeren Gläser vom Esstisch in die Spülmaschine“
[00102] Es könnten beispielsweise alle Kleidungsstücke an einem Ort gesammelt werden. Kleidungsstücke wären dann Objekte, die bei der Klassifizierung zumindest eine bestimme Grenzwahrscheinlichkeit für Kleidungsstücke erfüllen. Gemäß einem weiteren Ausführungsbeispiel werden erkannte und klassifizierte Objekt zusätzlich sortiert. So wäre ist es möglich z.B. die Kleidungsstücke nach Farbe zu ordnen. Eine Analyse der Objekte z.B. mittels spektroskopischer oder chemischer Sensoren (molekulare Sensoren) oder veränderter Beleuchtung könnte auch verschmutzte und saubere Kleidungsstücke unterscheiden. Auch ein Situationsabhängiges sortieren wäre somit beispielsweise auch denkbar, dass abhängig vom Waschmaschinenzustand geeignete Schmutzwäsche bereits in der Waschmaschine gesammelt wird. Auch ein optionales Starten der nächsten Serviceeinheit ist in weiterer Folge denkbar.
[00103] Das vorangegangene Beispiel lässt sich natürlich auch auf zahlreiche weitere Anwendungen übertragen, wie z.B. auf das Wegräumen von Gegenständen (z.B. Werkzeug oder Spielzeug). Natürlich könnten auch Essensreste oder Müll einem Sortiervorgang unterzogen werden. Auch eine Sortierung von Gegenständen bei Verrichtung einer anderen Serviceaufgabe ist möglich. Beispielsweise könnte ein Reinigungsroboter neben der eigentlichen Reinigung Spielzeug wegräumen oder aufgenommenem Müll sortieren. Auch chemische Analysen von Objekten könnten in diesem Zuge durchgeführt werden.
[00104] Durch Objekterkennung wäre es auch möglich, Gefahrenbereich zu identifizieren und entsprechende Maßnahmen einzuleiten wie beispielsweise die Gefahr zu entschärfen oder die Gefahr zu melden. Beispiele dafür wären z.B. Scherben auf dem Boden, die durch Bildanalyse erkannt werden könnten, Änderungen der chemischen Luftzusammensetzung, können z.B. mittels chemischen oder spektroskopischen Sensoren detektiert werden.
[00105] In einem weiteren Ausführungsbeispiel stellt der AMR Kamerabilder mit ungewöhnlichen Situationen zur Verfügung. Es könnten z.B. Fotos oder Videos von unwahrscheinlichen oder auch lustigen Situationen angefertigt und z.B. über die Mensch- Maschine-Schnittstelle dem Nutzer zur Verfügung gestellt werden.
[00106] Pflege von Lebewesen — Eine weitere interessante Möglichkeit bietet sich bei der Pflege von Pflanzen. So wäre es für einen AMR mit vergleichsweise geringem Aufwand möglich, Pflanzen zu erkennen und diese auf Unter- bzw. Überwässerung zu prüfen. Erinnerungen oder Arbeitsaufträge könnten dann an Nutzer oder andere Serviceeinheiten gesendet werden.
[00107] Ähnliche Prüfungen sind auch für Tiere oder Menschen denkbar. So könnten durchaus relativ einfach das Vorhandensein von Tierfutter und Wasser geprüft werden. Auch qualitative oder quantitative Untersuchungen von Konsumgütern sind denkbar. Bei Bedarf könnte nachbestellt werden.
[00108] Durch umfangreiche Analyse der Attribute von Personen oder Tieren könnten auch Prognosen zu deren Gesundheitszustand gemacht werden. Änderungen in den Attributen können Anzeichen von unerwünschten Entwicklungen sein. Beispielsweise könnten Ganganalysen oder Geräuschanalysen, z.B. Husten oder ähnliches diagnostiziert und geeignete Maßnahmen ergriffen oder vorschlagen werden. [00109] Ein weiterer Vorteil der Objektklassifikation und Situationsbewertung ist, dass ein Verhalten des AMR basierend auf An- bzw. Abwesenheit eines Objekts oder einer Person getriggert werden kann. Wird beispielsweise eine bestimmte Person erkannt, die in das Einsatzgebiet kommt, ist es möglich, Arbeiten speziell für diese Person ausführen zu lassen. Nutzer können bei Anwesenheit auch an eine Aufgabenliste (z.B. Sport oder Medikamente) erinnert werden. Das Ausführen von Arbeiten oder das Adaptieren von Serviceaufträgen ist auch für Tiere möglich.
[00110] Das Ergebnis einer Situationsbewertung kann auch auf ein bestimmtes künftiges Ereignis hindeuten. In (Fig. 7) erkennt der AMR, z.B. aufgrund von GPS Daten, dass der Nutzer in 10 min wahrscheinlich Zuhause eintrifft. Ein derzeit in Bearbeitung befindlicher Plan (PI) wird daraufhin auf (P2) abgeändert. Die Aufträge werden umgeschichtet, teilweise schneller durchgeführt, gestoppt oder verschoben.
[00111] Auch beispielsweise das Trinken eines Kaffees am Vormittag, könnte auf ein baldiges Verlassen des Nutzers hindeuten (siehe Fig. 7, Diagramm (b)). Hier erkennt der AMR durch das Verhalten des Nutzers, ein wahrscheinliches künftiges Verhalten. Durch derartige Auslöser könnten ganze Pläne (PI) mit hilfreiche Arbeiten (A) erledigt werden. Beispielsweise könnte Wasser für die Nassreinigung angefordert werden (Al), Wetterdaten an den Nutzer übermittelt , geeignete Kleidung vorgeschlagen oder gebracht werden (A2). Auch Serviceaufträge für andere Serviceeinheiten sind möglich. So könnte beispielsweise das Auto vorgeheizt werden(A3), oder aufgrund von Wetter oder Zeitpunkten mit hohen Allergenbelastungen Serviceaufträge abgeändert werden (A4). Z.B. könnte dann zusätzlich zur Trockenreinigung auch eine Nassreinigung durchgeführt werden. Eine weitere Anwendung wäre beispielsweise die Durchführung einer Nassreinigung im Eingangsbereich nachdem ein Nutzer bei Regenwetter nachhause gekommen ist. Optional könnte dies natürlich auch erst nach Rückfrage an eine höhere Entität durchgeführt werden. Ähnliche Szenarien sind für Feiertage Urlaubstage usw. vorstellbar sofern das System Zugriff auf die entsprechenden Informationen hat. Gleiches gilt für Attribute von Objekten. So könnten Fenster die geöffnet sind, Spielzeug das aufgebaut ist usw. entsprechende Änderungen im Verhalten auslösen.
[00112] Auch ein AMR zur Überwachung (Nachtwächter- AMR) kann von Objektklassifikation und Situationsdetektion profitieren. Ist üblicherweise z.B. zu bestimmten Zeiten niemand Zuhause und eine nicht zuordenbare Person betritt das Einsatzgebiet, kann dies auf einen Einbruch hindeuten. In diesem Fall könnten entsprechende Serviceaufgaben aufgeführt werden. (z.B. Foto machen, Notruf senden, Akustische oder Lichtsignale auslösen). Die kann natürlich durch Objekt und/oder Situationserkennung noch verbessert werden. Ein Alarm könnte beispielsweise nur dann ausgelöst werden wenn die Person nicht als zulässiger Nutzer erkannt wird. Dafür können auch AMRs genutzt werden, deren Hauptaufgabe z.B. der Transport oder die Reinigung ist. Zeiten in denen der Roboter keine andere Serviceaufgabe auszuführen hat könnten hierfür verwendet werden. Er könnte beispielsweise die Eingangstür oder andere interessante Punkte in relevanten Zeiträumen in der Nacht überwachen. Als Sensoren kommt hierbei wieder eine Vielzahl an Möglichkeiten in Frage. Diese reichen von einfachen Schaltern bis hin zur komplexen Sensoren die eine Auswertung mehrerer Sensoren oder auf zeitlicher Auswertung der Signale beruht.
[00113] Auch Auswertungen der Stimmung von Nutzem können für das Verhalten des AMR genutzt werden. So wäre es denkbar, dass diese zu bestimmten Zeiten oder aufgrund bestimmter Situationen eine spezielle Musikrichtung, Beleuchtung oder Raumduft bevorzugen. Auch dafür könnten Aufträge an Serviceeinheiten gesendet werden. Die Einstellung der gewünschten Parameter ist natürlich nicht nur auf die Auswertung der Stimmung beschränkt. Es könnte z.B. eine grundl egende Einstellung des Nutzers geben die entsprechende Voreinstellungen konfiguriert. Darauf basierend könnten zulässige Adaptionen erfolgen.
[00114] Analyse des Einsatzgebietes'. Eine Objekt- bzw. Situationserkennung hat auch den Vorteil, dass Teilgebiete des Einsatzgebietes detailliert erkundet werden können. So bietet sich die Möglichkeit, bestimmte Teilgebiete anhand typischer Objekte (Stühle, Tisch, Herd, Kühlschrank, Sofa, Spielsachen, etc.) in den jeweiligen Einsatzgebieten einzuordnen. Darauf aufbauend kann beispielsweise eine namentliche Zuordnung des Teilgebiets erfolgen. Beispielsweise könnten auf diese Weise ein Esszimmer, eine Küche, ein Kinderzimmer, etc. als solche identifiziert werden.
[00115] Durch eine Objekterkennung ist auch möglich, die Visualisierung für den Menschen zu verbessern. So könnten beispielsweise erkannte Standardobjekte wie ein Küchenblock in der HMI als derartige Objekte visualisiert werden. Die visualisierte Karte könnte dann basierend auf den erkannten Objekten aufgebaut werden. Auch die Verwendung von Oberflächeninformationen wie beispielsweise Texturen oder Einrichtungsgegenstände könnten in einer HMI angezeigt oder auch vereinfacht dargestellt werden. Dies bietet den Vorteil, dass dem Nutzer eine intuitive Schnittstelle zu Verfügung gestellt werden kann. Die so erzeugte Karte könnte z.B. auch als 3D-Modell visualisiert und für künftige Serviceaufgaben verwendet werden.
[00116] Es wäre auch denkbar, dass, beispielsweise Objekte oder Texturen vermessen und aufgenommen und diese Daten interessierten Branchen zur Verfügung gestellt werden. Beispielsweise könnten 3D Objekte für die Entwicklung von Computer spiele verwendet oder auch virtuelle Museen erzeugt werden. Die Anwendungen in diesem Gebiet sind mannigfaltig und reichen von Kultur- bis, Industrieanlagenkontrolle, über schwer zugängliche oder gefährliche Gebiete, Bereiche in denen Menschen Schaden anrichten könnten wie antiken Kulturräumen.
[00117] Die Analyse von Räumen bietet auch weitere Möglichkeiten. So können klassifizierte Objekte im Einsatzgebiet samt deren Pose und Attribute in einer Karte gespeichert werden. Informationen dazu können dann bei Bedarf abgerufen werden. Dies würde es beispielsweise ermöglichen, Listen der vorhandenen Objekte zu erstellen. Es könnten so Inventuraufgaben erledigt oder auch Listen von bestimmten Gruppen erzeugt werden z.B. ein Katalog aller vorhandenen Bücher oder Werkzeuge.
[00118] Bei der Verrichtung der Serviceaufgaben könnte auch nach speziellen Gebieten Ausschau gehalten werden, die für bestimmte Aufgaben sinnvoll sind. So könnten beispielsweise gute Plätze für Basisstationen oder jene Bereiche gesucht werden, die für eine spätere Kalibrierung von Sensoren geeignet sind.
[00119] Eine weitere Anwendung ist die Überwachung auf potentielle Schäden. So könnten z.B. Wasserschäden an der Änderung der Wände erkennbar sein. Auch chemische Signaturen von Umweltbedingungen könnten hier in Frage kommen und wären über die Attribute der zu prüfenden Objekte erkennbar. Es wäre somit möglich, Luftqualität, Sauer stoffgehalt, oder Luftfeuchtigkeit zu prüfen. Auch Temperaturänderungen, Verunreinigungen oder ein Schädlingsbefall wären auf diese Weise erkennbar. Des Weiteren wäre es möglich, durch Mikrophone oder weitere Sensoren, Schäden frühzeitig zu diagnostizieren. Beispielsweise könnte aufgrund des Geräusches ein Lagerschaden einer Waschmaschine auf diese Weise diagnostiziert werden.
[00120] Die Daten der Karten, die generiert werden, können auch für künftige Suchaufgaben verwendet werden. Es könnte beispielsweise nach Räumen gesucht werden, die bestimmte Kriterien erfüllen. So wäre die Suche nach einem Platz mit bestimmter Größe, Temperatur oder Lichtverhältnisse und weitere Eigenschaften aufweist, möglich. [00121] Es ist auch möglich, Objekten eine Karte zuzuordnen, in der deren Standort, verzeichnet ist. Diese Information könnte für Optimierungsaufgaben genutzt werden. Beispielsweise könnte basierend auf den Daten, die Wege zu optimiert oder ein optimaler Bereich zu Lagerung des Objektes vorgeschlagen werden. Es wäre so beispielsweise möglich, Transportzeit oder Wege zu sparen.
[00122] Ein weiterer Mehrwert für den Nutzer besteht in der Möglichkeit, anhand von extrahierten Daten der Wohnung oder dort vorhandener Objekte, geeignete Produkte vorzuschlagen. So wäre das Zurverfügungstellen diesbezüglicher Informationen an den Nutzer oder auch den Verkäufer denkbar. Das zur Verfügung stellen dieser Daten kann sowohl externe Produkte oder Dienstleistungen beinhalten sowie auch Produkte und Dienstleistungen die für das System oder den AMR als sinnvoll erachtet werden. Z.B. könnte der AMR aufgrund interner Meldungen diagnostizieren das Ersatzteile oder Verbrauchsgegenständen bestellt werden sollen (Siehe Fig. 14 Skizze 8). Dafür könnten sowohl Interne Infos wie die Historie (z.B. Fehlermeldungen), oder gelernte Infos wie Objekte im Einsatzgebiet oder Karten, verwendet werden. Zusätzlich könnten auch externe Infos (z.B. aus Cloud-Services) verwendet werden. Infos an den Nutzer könnten sowohl über Cloud-Services wie auch über den AMR direkt über die HMI zu Verfügung gestellte werden.
[00123] So könnte z.B. die Detektion eines Kinderbettes auf das Vorhandensein eines Kindes deuten und geeignete Änderungen der Wohnung oder entsprechende Werbung zur Verfügung gestellt werden
[00124] Für den Nutzer bietet sich dadurch die Möglichkeit, dass dieser nicht mit unnötiger Werbung überschwemmt wird, sondern er nur für ihn relevante Informationen zu aktuell relevanten Situationen bekommt. Er könnte auch aufgrund des speziellen Aufbaus der Wohnung, auf die Möglichkeiten anderer AMRs hinweisen oder Änderungsmöglichkeiten in seinen Services hinweisen. Die Hinweise können Beispielsweise mit Meldungen an den Nutzer zur Verfügung gestellt werden. Es ist auch denkbar, dass dem Nutzer Informationen durch einen Chat-Bot, zur Verfügung gestellt werden
[00125] Die hier beschriebenen Verfahren können via Software implementiert sein. Die Software kann auf einem AMR, auf einer HMI und/oder auf einem beliebigen anderen Computer, wie insbesondere einem Home-Server oder einem Cloud-Server ausgeführt werden. Insbesondere können einzelne Teile des Verfahrens können in verschiedene Softwaremodule unterteilt sein, die auf verschiedenen Geräten ausgeführt werden. [00126] Objekt klassifizieren und in Karte eintragen (Fig. 3): Die im Folgenden beschriebenen Ausführungsbeispiele betreffen ein Verfahren für einen autonomen, mobilen Roboter (AMR). Das Verfahren umfasst, insbesondere das Navigieren des AMR 100 durch ein Einsatzgebiet mit Hilfe eines oder mehrerer Navigationssensoren, die mit dem Navigationsmodul 152 gekoppelt sind. Mit Hilfe des Navigationssensors und/oder mit weiteren Sensoren werden Informationen über die Umgebung des AMR im Einsatzgebiet erfasst. Diesen Informationen können jeweils Positionen in dem Einsatzgebiet zugeordnet werden, um eine elektronische Karte des Einsatzgebiets zu erstellen, oder eine vorhandene Karte zu ergänzen. Das Verfahren umfasst weiter das automatische Detektieren von Objekten innerhalb des Einsatzgebiets und Klassifizieren der detektierten Objekte mittels eines Klassifikators basierend auf den erfassten Informationen. Der Klassifikator kann beispielsweise ein (trainiertes) neuronales Netz enthalten, der eine Klassifikation der detektierten Objekte durchführen kann, d.h. der Klassifikation bestimmt für die detektieren Teilgebiete jeweils eine Gebietsklasse. Die detektierten Teilgebiete inklusiver der ermittelten Gebietsklassen können in der Karte des AMR gespeichert werden.
[00127] Falls der Klassifikator ein neuronales Netz enthält, wird dieses vorab mit Trainingsdaten trainiert. Der Klassifikation von Objekten kann jedoch auch nach bestimmten, deterministischen Kriterien erfolgen. Beispielsweise kann ein Objekt auch dadurch bestimmt werden, indem es bestimmte Vorgaben von Größen, Formen oder Farben entspricht. Es könnte auch anhand des jeweiligen Teilgebiets oder anhand von anderen Objekten in der Nähe des Objektes bestimmt werden. So deutet ein neues Objekt im Spielbereich eines Kindes, oder in der Nähe von andern Spielsachen darauf hin, dass es sich bei diesem Objekt auch um Spielzeug handelt.
[00128] Eine elektronische Karte des Einsatzgebiets mit gespeicherten und klassifizierten Objekten ermöglicht dem Nutzer des AMR eine einfachere/intuitivere Nutzung der (z.B. auf einer HMI visualisierten) Karte des Einsatzgebiets. Des Weiteren ermöglicht die Klassifikation der Teilgebiete dem AMR die Ausführung von einfachen, für den Nutzer intuitiven Kommandos wie beispielsweise, „reinige um die Couch“ (abstrakt gesprochen: „reinige Gebiet um Objekt der Klasse X“).
[00129] Die Klassifikation von Objekten mittels eines „intelligenten“ Klassifikators ermöglicht es dem AMR ein Objekt (basierend auf der zuvor bestimmten Objektklasse) einen sprechenden Namen zuzuweisen. Bei der Visualisierung der Karte auf der HMI können die Namen der Teilgebiete angezeigt werden und der Nutzer muss keine manuelle Zuordnung vornehmen.
[00130] Zusätzlich können den Objekten Attribute zugeordnet werden (z.B. die Farbe) Dies ermöglicht es Objekte der gleichen Klasse Unterscheidungsmerkmale hinzuzufügen. Es wären dadurch beispielsweise möglich Befehle auszuführen die durch die reine Objektklasse nicht eindeutig wären. Z.B könnte der Befehl „reinige um die ROTE Couch“ angegeben werden. Oder beim Befehl „reinige um die Couch“ könnten entsprechende Rückfragen erfolgen z.B. soll um die rote oder die blaue Couch gereinigt werden?“ Attribute sind natürlich nicht auf die Farbe beschränkt, sie können Material. Temperatur Größe und viele weitere Merkmale darstellen.
[00131] Es sind verschiedene Klassifikatoren an sich bekannt. Üblicherweise enthalten Klassifikatoren ein oder mehrere (vortrainierte) neuronale Netze, welche als Ergebnis der Klassifikation nicht nur eine Objektklasse liefern, sondern auch eine Maßzahl für die Wahrscheinlichkeit der Richtigkeit der Klassifikation. So kann beispielsweise das Ergebnis einer Klassifikation sein, dass ein Objekt zu 80% ein Spielzeug und zu 30% ein Schuh ist. Die Wahrscheinlichkeiten müssen sich dabei nicht auf 100% ergänzen. Als Objektklasse kann jenes Ergebnis mit der höchsten Wahrscheinlichkeit verwendet werden. Es ist auch möglich eine Gebietsklasse erst dann zuzuweisen, wenn die Wahrscheinlichkeit von zwei Gebietsklassen einen bestimmten Unterschied aufweist. Bei zu geringen Wahrscheinlichkeitswerten kann der AMR die Messungen wiederholen und beispielsweise zusätzliche Sensoren oder Beleuchtung für die Messung verwenden. Auch das Wiederholen der Messung bei einer veränderten Position ist möglich. Dies kann auch verwendet werden, wenn das Objekt so groß ist, dass es nicht mit einer Messung des Roboters erfasst werden kann (Fig. 11 Skizze 7). Auch eine Manipulation von Objekten vor einer neuerlichen Messung ist möglich. Auch die Objektklassifizierungen anhand Objekten in der näheren Umgebung, oder eine Gebietsklassifikation in der sich das Objekt befindet, könnten bei der Objektklassifizierung einfließen.
[00132] Falls eine Klassifikation nicht den nötigen Anforderungen entspricht um eine Zuordnung zu treffen, ist es auch möglich, dass die Klassifizierung von einem anderen Klassifikator durchgeführt werden kann. Dieser könnte beispielsweise ein Klassifikator sein der über eine Netzwerkverbindung erreichbar ist und über umfangreichere Trainingsdaten verfügt. Es wäre auch denkbar, dass diese Aufgabe an Menschen übergeben wird. Durch diese erweiterten Klassifizierungsmöglichkeiten ist eine korrekte Objektdetektion in vielen Fällen vollautomatisch möglich.
[00133] Falls eine Klassifizierung nicht korrekt ist oder der Nutzer diese aus anderen Gründen ändern möchte (z.B. weil das Objekt anders Verwendet wird, oder es keinem Standardobjekt entspricht), kann er dies über eine Mensch-Maschinen-Schnittstelle (HMI) entsprechend adaptieren. In diesem Fall könnte der Nutzer aus einem Set von möglichen Standard Gebietsklassen auswählen, oder auch individualisierte Gebietsklassen anlegen die das System so noch nicht zur Verfügung stellt.
[00134] Im Zuge dieser Individualisierung könnten dem Nutzer auch Objekte zur Überprüfung vorgeschlagen werden bei denen die Klassifizierung weniger eindeutig als erwünscht ist. Auf diese Weise kann das System einerseits stark individualisierbar und andererseits durch hohe Automatisierung auch wartungsarm aufgebaut werden.
[00135] Ein Beispiel umfasst auch die Möglichkeit, Objekte oder Objektklassen mit einer Information zu versehen, die Aufschluss darüber gibt, welche Aktionen mit entsprechenden Objekten zulässig sind oder nicht. Diese Zuordnung könnte vom Roboter in einem ersten Durchlauf automatisch anhand der Objektklasse erfolgen sowie später vom Nutzer abgeändert werden. Möglichkeiten für derartige Aktionen sind beispielsweise das Erzeugen von Sperrbereichen für bestimmte Serviceaufgaben. So könnte die Detektion eines Tierexkrements, oder einer Vase dazu führen, dass ein Sperrbereich eingerichtet wird. Ein weiteres Beispiel wäre, dass für bestimmte Objekte ein Datenschutz eingerichtet wird, in dem es dem Roboter untersagt ist Daten des Objektes über eine Kommunikationsschnittstelle zu senden (Siehe Fig. 15). Auch das versehen von Objekten mit der Aktion „Bearbeiten/Überprüfen“ ist dabei möglich. So könnte Beispielsweise die Detektion einer Zimmerpflanze dazu führen, dass diese auf den Bewässerungszustand geprüft wird und bei Bedarf gegossen wird. Es wäre auch denkbar, dass eine Detektion von größeren Schmutzpartikeln den Roboter dazu veranlass diese sofort in einer kleinen Routine zu beseitigen und anschließend wieder mit der üblichen Reinigung fortsetzt. Dies könnte natürlich auch nur dann durchgeführt werden, wenn Schmutz in einem Bereich detektiert wird der bereits bearbeitet wurde. Von Vorteil ist dieses auch Verfahren wenn vermieden werden soll das Schmutz nicht gereinigt wird weil er sich beispielsweise bewegen kann. Die kann z. B. durch die Seitenreinigungsbürsten des Roboters selbst verursacht werden.
[00136] Auch das erlaubte Verschieben von Objekten kann auf diese Weise vorgesehen werden. So könnte es zulässig sein, Pakete die am Boden stehen zu verschieben oder Türen zu öffnen. In einer weiteren Ausbaustufe wäre es sogar möglich, dass eine Manipulation nur dann durchgeführt wird, wenn diese durch den Roboter wieder Rückgängig gemacht werden kann. Ein Paket könnte in diesem Fall nur dann verschoben werden, wenn es nachher auch wieder zurückgeschoben werden kann. Der Nutzen der Verknüpfung von Objekten oder Objektklassen mit Aufgaben hierbei liegt darin, dass der Roboter deutlich mehr Möglichkeiten erhält mit einer Situation umzugehen. Außerdem bietet sich einerseits eine hohe Individualisierbarkeit und trotzdem kann aufgrund von Automatisierungsmöglichkeiten die nötige Interaktion mit dem Nutzer auf ein nötiges Maß reduziert werden.
[00137] Klassifikatoren werden üblicherweise mit zunehmender Datenbasis immer besser. Außerdem können Klassifikatoren um zusätzliche Klassen erweitert werden. Aus diesem Grund ist es sinnvoll das System so aufzubauen, dass die Klassifikatoren mittels eines Updatevorgangs ausgetauscht werden können. Dies führt dazu, dass der Roboter im Laufe der Zeit zusätzliche Objektklassen erkennen kann und darauf aufbauend auch um zusätzliche Funktionen erweitert werden kann.
[00138] Um Klassifikatoren mit entsprechender Zuverlässigkeit erzeugen zu können, ist es wichtig, dass eine genügend große Menge an Trainingsdaten zur Verfügung steht. Eine Möglichkeit um an geeignete Trainingsdaten zu gelangen ist beispielsweise die Verwendung von Daten die der Roboter zur Auswertung an einen übergeordneten Klassifikator gesendet hat. Um ein Training mit diesen Daten zu ermöglichen müssen diese Daten vorher einer oder mehrerer Klassen zugeordnet werden. Diese Zuordnung könnte beispielsweise durch Menschen erfolgen oder durch Verwendung jener Gebietsklasse die der Nutzer letztendlich bestätigt oder vorgibt. Es könnten natürlich auch Daten verwendet werden in bereits korrekt zugeordneten Bereichen entstehen sofern der Nutzer diese Daten zur Verfügung stellt. Dadurch ist es möglich der Klassifikation stetig weiter zu verbessern.
[00139] Eine Möglichkeit ergibt sich auch dadurch, dass der Nutzer oder eine über eine Kommunikationseinheit verbundene Einheit darüber informiert wird das ein Objekt einer bestimmten Klasse erkannt wurde. Dabei können auch Informationen über die Attribute des Objektes weitergegeben werden. Typische Objekte die sich für eine derartige Funktion anbieten sind Objekte die auf einen Schaden oder ein künftiges Problem hindeuten. So könnte beispielsweise Ein Wasserfleck an der Wand auf einen Wasserrohrbruch hindeuten.
[00140] Um den Nutzer nicht mit unnötigen Informationen zu versorgen wäre es auch möglich ihn nur dann zu informieren, wenn ein Objekt das erste Mal erkannt wird. Er könnte dann z.B. die entsprechende Zuordnung der Objektklasse kontrollieren und bei Bedarf Konfigurationen dazu vornehmen. Z.B ob diese Objekt verschoben werden darf.
[00141] Im Fall eines Objektes mit Wartungsaufwand (z.B. einer Zimmerpflanze) könnte der Nutzer nur dann informiert werden, wenn bestimmte Attribute dies anzeigen. So kann der Nutzer dann informiert werden, wenn eine Überprüfung sinnvoll ist oder Handlungsbedarf besteht.
[00142] Roboter können auch auf relativ einfache Weise zur Wartung von Geräten im Einsatzgebiet verwendet werde, Es wäre beispielsweise denkbar, dass sie mittels Kommunikationsschnittstelle eine Verbindung mit Geräten aufbauen und für diese Geräte Informationen zur Verfügung stellen. Von besonderem Vorteil ist dies natürlich vor allem dann wenn die Geräte selbst keinen direkten Zugang zu den Informationen haben. Auf diese Weise Könnten Geräte beispielsweise ein Update durchführen obwohl sie aufgrund ihres Ortes keinen Zugriff auf das WLAN haben. Eine ähnliche Problematik ergibt sich bei Geräten die mit Energie versorgt werden müssen. Da die meisten Geräte nicht mobil sind können sie sich nicht selbst versorgen oder sind Kabelgebunden. Ein Roboter könnte derartige Geräte mit Energie versorgen in dem er als Schnittstelle zwischen Energiequelle und dem Gerät zur Verfügung dient. So könnte ein Roboter ein Modul haben das eine QI Ladefunktion zur Verfügung stellt. Dieses Modul könnte auch optional ausgeführt sein, so dass es in der Standardvariante nicht bestückt ist und die die Ladefunktion erst später als Upgrade bei Kauf des entsprechenden Moduls zur Verfügung steht. Das entsprechende Gegenstück könnte kann entweder direkt das zu versorgende Gerät sein, es könnte aber auch ein Verbindungsgerät sein. Um Beispielsweise ein Handy auf einem Möbelstück zu laden, dass keinen Zugang zum Energieversorgungsnetz hat könnte dieses Verbindungsgerät in das Möbelstück integriert sein, oder damit nachgerüstet werden. Das Verbindungsgerät könnte beispielsweise so ausgeführt werden, dass es an einem für den Roboter erreichbaren Gebiet, z.B. im Bodennähe eine Ladefunktionsschnittstelle aufweist. Diese Ladefunktionsschnittstelle ermöglicht es dem Gerät seinen eigenen Akku aufzuladen, wenn der Roboter seine Ladefunktion zur Verfügung stellt. Das Verbindungsgerät verfügt zusätzlich über einen Energieabgabebereich welcher Beispielsweise mit einem Kabel mit dem Akku verbunden ist. Dieser Energieabgabebereich bildet dann die eigentliche Ladefunktion des Handys. Ist dies z.B. wieder mit einer Drahtlosladefunktion ausgestattet könnte ein Handy bequem an nahezu allen Einrichtungsgegenständen geladen werden. [00143] In erster Linie bieten sich natürlich, neben der Versorgung per Kabel, die Versorgung mit Hilfe elektromagnetischer Strahlung an.
[00144] Auch bei der Versorgung mit Energie könnte dies mit Kabeln oder kabellos z.B. mit QI Ladetechnik erfolgen.
[00145] Diese Funktion könnte auch derart aufgebaut werden, dass eine Versorgung nur dann durchgeführt wird, wenn dies als notwendig erkannt wird.
[00146] Als Energiespeicher könnte einerseits eine speziell dafür vorgesehene Energiequelle am Roboter vorgesehen sein, welche beispielsweise in einem freien Optionsmodul zur Verfügung gestellt wird, es könnte aber auch die am Roboter sowieso vorgesehene Batterie verwendet werden.
[00147] Die Erkennung von Objekten kann auch dazu genutzt werden weitere Infos von Objekten verfügbar zu machen. So könnte beispielsweise die 3D Struktur des Objektes extrahiert und gespeichert werden.
[00148] Auch die Extraktion der Textur eines Objektes kann extrahiert und gespeichert werden.
[00149] Sowohl die 3D Stuktur als auch die Textur könnten in der HMI dazu verwendet werden um dem Nutzer eine verbesserte Visualisierung zu ermöglichen.
[00150] Die im Folgenden beschriebenen Ausführungsbeispiele betreffen ein Verfahren für einen autonomen, mobilen Roboter (AMR). Das Verfahren umfasst, insbesondere das Navigieren des AMR 100 durch ein Einsatzgebiet mit Hilfe eines oder mehrerer Navigationssensoren, die mit dem Navigationsmodul 152 gekoppelt sind. Mit Hilfe des Navigationssensors und/oder mit weiteren Sensoren werden Informationen über die Umgebung des AMR im Einsatzgebiet erfasst. Diesen Informationen können jeweils Positionen in dem Einsatzgebiet zugeordnet werden, um eine elektronische Karte des Einsatzgebiets zu erstellen, oder eine vorhandene Karte zu ergänzen. Das Verfahren umfasst weiter das automatische Detektieren von Teilgebieten innerhalb des Einsatzgebiets und Klassifizieren der detektierten Teilgebiete mittels eines Klassifikators basierend auf den erfassten Informationen. Die Detektion kann dabei einerseits dadurch erfolgen, dass das Einsatzgebiet vorab in Teilgebiete (z.B.) Räume aufgeteilt wird, und diese Teilgebiete anschließend klassifiziert werden. Eine weitere Möglichkeit besteht darin, dass der Roboter ein oder mehrere Objekte detektiert, und dann ein Gebiet erzeugt in dem sich die Objekte befinden. Eine weitere Möglichkeit besteht darin, dass der Roboter Informationen über seine Umgebung aufnimmt und diese klassifiziert und die so klassifizierten Bereiche als Grundlage für die Teilgebietsbestimmung verwendet werden. Zur Bestimmung der Grenzen des Teilgebiets können auch Wände Objekte Türen Bodenbelege verwendet werden. Der Klassifikator kann beispielsweise ein neuronales Netz enthalten, der eine Klassifikation der detektierten Teilgebiete durchführen kann, d.h. der Klassifikation bestimmt für die detektieren Teilgebiete jeweils eine Gebietsklasse. Die detektierten Teilgebiete inklusiver der ermittelten Gebietsklassen können in der Karte des AMR gespeichert werden.
[00151] Falls der Klassifikator ein neuronales Netz enthält, wird dieses vorab mit Trainingsdaten trainiert. Der Klassifikation von Teilgebieten kann jedoch auch nach bestimmten, deterministischen Kriterien erfolgen. Beispielsweise kann ein Teilgebiet „Küche“ detektiert werden, indem die Anwesenheit eines Ofens und/oder einer Spule detektiert wird (beispielsweise mittels Bildverarbeitung/Objekterkennung auf Grundlage von Kamerabildem).
[00152] Eine elektronische Karte des Einsatzgebiets mit gespeicherten und klassifizierten Teilgebieten ermöglicht dem Nutzer des AMR eine einfachere/intuitivere Nutzung der (z.B. auf einer HMI visualisierten) Karte des Einsatzgebiets. Des Weiteren ermöglicht die Klassifikation der Teilgebiete dem AMR die Ausführung von einfachen, für den Nutzer intuitiven Kommandos wie beispielsweise, „Reinige die Küche“ (abstrakt gesprochen: „reinige Gebiet der Klasse X“).
[00153] Die Klassifikation von Teilgebieten mittels eines „intelligenten“ Klassifikators ermöglicht es dem AMR einem Teilgebiet (basierend auf der zuvor bestimmten Gebietsklasse) einen sprechenden Namen zuzuweisen. Bei der Visualisierung der Karte auf der HMI können die Namen der Teilgebiete angezeigt werden und der Nutzer muss keine manuelle Zuordnung vornehmen.
[00154] Es sind verschiedene Klassifikatoren an sich bekannt. Üblicherweise enthalten Klassifikatoren ein oder mehrere (vortrainierte) neuronale Netze, welche als Ergebnis der Klassifikation nicht nur eine Gebietsklasse liefern, sondern auch eine Maßzahl für die Wahrscheinlichkeit der Richtigkeit der Klassifikation. So kann beispielsweise das Ergebnis einer Klassifikation sein, dass ein Teilgebiet zu 80% eine Küche und zu 30% ein Badezimmer ist. Die Wahrscheinlichkeiten müssen sich dabei nicht auf 100% ergänzen. Als gebietsklasse kann jenes Ergebnis mit der höchsten Wahrscheinlichkeit verwendet werden. Es ist auch möglich eine Gebietsklasse erst dann zuzuweisen, wenn die Wahrscheinlichkeit von zwei Gebietsklassen einen bestimmten Unterschied aufweist. Bei zu geringen Wahrscheinlichkeitswerten kann der AMR die Messungen wiederholen und beispielsweise zusätzliche Sensoren oder Beleuchtung für die Messung verwenden. Auch das Wiederholen der Messung bei einer veränderten Position ist möglich. Auch eine Manipulation von Objekten in dem Gebiet, oder ein Bearbeiten des Gebietes vor einer neuerlichen Messung ist ist möglich. Auch die Gebietsklassifikationen in der angrenzenden Umgebung könnten bei der aktuellen Gebietsdetektion einfließen.
[00155] Falls eine Klassifizierung nicht den nötigen Anforderungen entspricht, um eine Zuordnung zu treffen, ist es auch möglich die Klassifizierung von einem anderen Klassifikator durchgeführt werden kann. Dieser könnte beispielsweise ein Klassifikator sein der über eine Netzwerkverbindung erreichbar ist und über eine umfangreichere Trainingsdaten verfügt. Es wäre auch denkbar, dass diese Aufgabe an Menschen übergeben wird. Durch diese erweiterte Möglichkeit der Klassifikation, ist eine Teilgebietsdetektion in vielen Fällen vollautomatisch möglich.
[00156] Falls eine Klassifizierung nicht korrekt ist oder der Nutzer diese aus anderen Gründen ändern möchte (z. B. weil das Gebiet anders verwendet wird als es sich laut Klassifikation ergibt), kann er dies über eine Mensch-Maschinen-Schnittstelle (HMI) entsprechend adaptieren. In diesem Fall könnte der Nutzer aus einem Set von möglichen Standard Gebietsklassen auswählen, oder auch individualisierte Gebietsklassen anlegen die das System so noch nicht zur Verfügung stellt.
[00157] Im Zuge dieser Individualisierung könnten dem Nutzer auch Teilgebietsklassen zur Überprüfung vorgeschlagen werden bei denen die Klassifizierung weniger eindeutig als erwünscht ist. Auf diese Weise kann das System einerseits stark individualisierbar und andererseits durch hohe Automatisierung auch wartungsarm aufgebaut werden.
[00158] Klassifikatoren werden üblicherweise mit zunehmender Datenbasis immer besser. Ausserdem können Klassifikatoren um zusätzliche Klassen erweitert werden. Aus diesem Grund ist es sinnvoll das System so aufzubauen, dass die Klassifikatoren mittes eines Updatevorgangs ausgetauscht werden können. Dies führt dazu, dass der Roboter im Laufe der Zeit zusätzliche Gebietsklassen erkennen kann und darauf aufbauend auch um zusätzliche Funktionen erweitert werden kann.
[00159] Um Klassifikatoren mit entsprechender Zuverlässigkeit erzeugen zu können, ist es wichtig, dass eine genügend große Menge an Trainingsdaten zur Verfügung steht. Eine Möglichkeit um an geeignete Trainingsdaten zu gelangen ist beispielsweise die Verwendung von Daten die der Roboter zur Auswertung an einen übergeordneten Klassifikator gesendet hat. Um ein Training mit diesen Daten zu ermöglichen müssen diese Daten vorher einer oder mehrerer Klassen zugeordnet werden. Diese Zuordnung könnte beispielsweise durch Menschen erfolgen oder durch Verwendung jener Gebietsklasse die der Nutzer letztendlich bestätigt oder vorgibt. Es könnten natürlich auch Daten verwendet werden in bereits korrekt zugeordneten Bereichen entstehen sofern der Nutzer diese Daten zur Verfügung stellt.
[00160] Ein Beispiel umfasst auch die Möglichkeit, Teilgebieten mit einer Information zu versehen, die Aufschluss darüber gibt, welche Aktionen im entsprechendem Gebiet zulässig sind oder nicht. Diese Zuordnung könnte vom Roboter in einem ersten Durchlauf automatisch anhand der Gebietsklasse erfolgen sowie später vom Nutzer abgeändert werden. Möglichkeiten für derartige Aktionen sind beispielsweise das Erzeugen von Sperrbereichen für bestimmte Serviceaufgaben. So könnte die Detektion eines Teppichs dazu führen, dass ein Sperrbereich (SG) für die Nassreinigung eingerichtet wird. Ein weiteres Beispiel wäre, dass für ein Badezimmer ein Datenschutzgebiet (DG) eingerichtet wird in dem es dem Roboter untersagt ist Daten über eine Kommunikationsschnittstelle zu senden (Siehe Fig. 15). Dabei Können Datenschutzgebiet als auch Sperrgebiete sowohl automatisiert als auch Nutzerdefiniert implementiert sein. Auch das Versehen von Teilgebieten mit der Aktion „Bearbeiten“ ist dabei möglich. So könnte Beispielsweise die Detektion eines Fliesenbodens dazu führen, dass dieses Teilgebiet mit einer Nassreinigung bearbeitet werden soll. Der Nutzen hierbei liegt einerseits wieder in der hohen Individualisierbarkeit. Trotz dieser Anpassungsfähigkeit kann aufgrund von Automatisierungsmöglichkeiten die nötige Interaktion mit dem Nutzer auf ein nötiges Maß reduziert werden.
[00161] Ein weiteres Beispiel umfasst die Möglichkeit Gebiete abhängig von ihre Gebietsklasse mit Sperrbereichen oder Richtungsabhängigen Sperrbereichen zu versehen. Bereiche in denen Spielzeug oder ähnliche Gegenstände aufgebaut sind könnten auf diese Weise von einer Bearbeitung ausgenommen werden. Auch beispielsweise ein Teppich mit Fransen an zwei Seiten, könnte so konfiguriert werden, dass er auf der Fransenseite den Teppich zwar verlassen kann diesen aber ihn nicht aus dieser Seite befährt. Ein Verhaken einer Bürste des Roboters könnte auf diese Weise wahrscheinlich verhindert werden.
[00162] Eine weitere Möglichkeit der Teilgebietsdetektion ergibt sich dadurch, dass Gebiete auf denen sich Objekte befinden diese auch als solche in der HMI zur Verfügung gestellt werden. Die Karte des Einsatzgebietes könnte auf diese Weise detaillierter dargestellt werden (siehe Fig. 16). [00163] Derzeit werden Objekte in den Karten von Robotern häufig als Wände dargestellt. Für den Nutzer ist die daraus entstehende Karte durch die Gegenstände entstellt. Eine intuitivere Darstellung wäre möglich wenn der Raum in voller Größe dargestellt wird, und die Objekte als Teilgebiete des Raumes dargestellt werden die beispielsweise nicht befahren werden können. Durch Objekt und oder Teilgebietserkennung ist eine derartige Korrektur möglich. In Fig. 16 werden mögliche Varianten gezeigt mit denen dieses Problem gelöst werden kann. Ein Küchenblock (KB) schränkt die einwandfreie Vermessung des Raumes ein. Es wäre möglich wie in (KB1) Informationen über Wände aus der bisherigen Karte verwenden und durch Extrapolation von Wänden die tatsächliche Raumgröße zu errechnen. Eine weitere Möglichkeit zu Abschätzung der Objektgröße ergibt sich durch die Verwendung von typischen Größen dieser Objekte wie in KB2 gezeigt. So kann Beispielsweise ein Küchenblock in vielen Fällen ähnliche Tiefen aufweisen. Die reale Position einer Wand kann z.B. wie in (KB3) gezeigt auch durch zusätzliche Messung erfolgen.
[00164] Ein weiteres Beispiel umfasst auch die Möglichkeit, Teilgebieten mit einer Information zu versehen, die Aufschluss darüber gibt, welche Parameter bei einer Aktion im entsprechendem Gebiet zulässig sind oder nicht. Diese Zuordnung könnte wie zuvor vom Roboter in einem ersten Durchlauf automatisch anhand der Gebietsklasse erfolgen sowie später vom Nutzer abgeändert werden. Möglichkeiten für derartige Aktionen sind beispielsweise das eine Änderung der Bearbeitungsgeschwindigkeit oder der Lautstärke in einem bestimmten Bereich. Auch das Zulassen von Kontakt zwischen Roboter und Objekten wie z.B. einem Vorhang könnte so konfigurierbar gestaltet sein. Der Nutzen hierbei liegt einerseits wieder in der hohen Individualisierbarkeit. Trotz dieser Anpassungsfähigkeit kann aufgrund von Automatisierungsmöglichkeiten die nötige Interaktion mit dem Nutzer auf ein nötiges Maß reduziert werden.
[00165] Das Verfahren umfasst, das Navigieren des AMR 100 durch ein Einsatzgebiet mit Hilfe eines oder mehrerer Navigationssensoren, die mit dem Navigationsmodul 152 gekoppelt sind. Mit Hilfe des Navigationssensors und/oder mit weiteren Sensoren werden Informationen über die Umgebung des AMR im Einsatzgebiet erfasst. Diesen Informationen können jeweils Positionen in dem Einsatzgebiet zugeordnet werden, um eine elektronische Karte des Einsatzgebiets zu erstellen, oder eine vorhandene Karte zu ergänzen. Das Verfahren umfasst weiter das automatische Detektieren von Teilgebieten innerhalb des Einsatzgebiets. Die Detektion kann dabei einerseits dadurch erfolgen, dass das Einsatzgebiet vorab in Teilgebiete (z.B.) Räume aufgeteilt wird, und diese Teilgebiete anschließend klassifiziert werden. Eine weitere Möglichkeit besteht darin, dass der Roboter ein oder mehrere Objekte detektiert, und dann ein Gebiet erzeugt in dem sich die Objekte befinden. Eine weitere Möglichkeit besteht darin, dass der Roboter Informationen über seine Umgebung aufnimmt und diese abspeichert. Beim Eintreten von Zustandsänderungen des Roboters werden die derzeitige Position des Roboters und seine Zustandsänderung gespeichert. Durch Analyse dieser Historie ist es möglich Gebiete zu extrahieren in denen typische Zustandsänderungen auftreten. Zur Bestimmung der Grenzen des Teilgebiets können zusätzlich auch Wände Objekte Türen Bodenbelege verwendet werden. Die detektierten Teilgebiete inklusiver der ermittelten Gebietsklassen können in der Karte des AMR gespeichert werden. Auch eine Kombination der beschriebenen Teilgebietsdetektion ist möglich. Es können dadurch Teilegebiete entstehen die z.B. Räumen entsprechen. Es können aber auch Teilgebiete von Räumen entstehen wie z.B. Teppichboden, Gebiete in denen Kabel liegen. Gebiete in denen Spielzeug oder Schmutz liegt entstehen.
[00166] Für die Gebiete kann aus der Historie eine Maßzahl ermittelt werden die angibt wie Wahrscheinlichkeit der Abschluss einer Serviceaufgabe in einem Bestimmten Bereich ist. Beispielsweise könnten Fehlermeldungen oder ein vorrübergehendes feststecken in einem Bereich die Wahrscheinlichkeit für eine Serviceaufgabe reduzieren. Es könnte auch gemessen werden wie lange sich der Roboter in einem Bereich befindet um eine Serviceaufgabe abzuschließen.
[00167] Auch die Objekte die sich in dem Raum befinden, oder ihre Anzahl, können die Maßzahl positiv oder negativ beeinflussen. So könnte beispielsweise eine Sitzgruppe aufgrund der aufwändigen Bahnplanung mehr Zeit beanspruchen oder herumliegende Kabel zu einem Verfangen des Roboters oder im schlimmsten Fall zu Schäden führen.
[00168] Eine weitere Möglichkeit die Aufgabenabschlussdauer oder Aufgabenabschlusswahrscheinlichkeit zu ermitteln ist dies durch einen Klassifikator abzuschätzen. Beispielsweise könnte eine externe Einheit mit der Aufgabe betraut werden, dem Teilgebiet eine entsprechende Aufgabenabschlussdauer oder Aufgabenabschlusswahrscheinlichkeit zuzuordnen.
[00169] Durch vergleich der Maßzahl kann dann eine Reihung der Abfolge der Bearbeitung mehrerer Teilgebiete erfolgen. Es könnten Teilgebiete, die entsprechende Maßzahlen haben auch dazu führen, dass das Gebiet gar nicht bearbeitet wird. Für den Kunden ist dies vor allem dann zielführend wenn sichergestellt werden soll, dass der Roboter möglichst rasch seine Aufgaben verrichtet und es dabei zu keinem Abbruch kommt. Auf diese Weise [00170] Das Verfahren umfasst, insbesondere das Navigieren des AMR 100 durch ein Einsatzgebiet mit Hilfe eines oder mehrerer Navigationssensoren, die mit dem Navigationsmodul 152 gekoppelt sind. Das Verfahren umfasst weiter das Erfassen von zumindest einem Teil des Robotereinsatzgebietes mittels eines optischen Sensors. Anschließend erfolgt ein Klassifizieren des Gebietes mittels eines Klassifikators basierend auf den erfassten Informationen.
[00171] Der Klassifikator kann beispielsweise ein neuronales Netz enthalten, der eine Klassifikation der detektierten Gebiete durchführen kann, d.h. der Klassifikation bestimmt für die Gebiete jeweils einen Wert der einen Zustand über das Gebiet aussagt. Der Zustand auf den das Gebiet geprüft wird kann verschiedenste Eigenschaften annehmen. Dieser Zustand könnte verschiedenste Eigenschaften annehmen der die Oberfläche repräsentiert. Es könnte beispielsweise die Gleichmäßigkeit einer Oberfläche oder die Sauberkeit untersucht werden. (Fig. 12. Skizze 7)
[00172] Es könnte aber auch die Eigenschaft des Verschmutzungsgrades bestimmt werden. Wird beispielsweise ein neuronales Netz mit hinreichend vielen Bildern trainiert bei denen der Verschmutzungsgrad bekannt ist, kann ein Klassifikator auch zu andere Bildern die nur wenig mit den Bildern zu tun haben eine Klassifizierung bezüglich Verschmutzungsgrad errechnen.
[00173] Das Berechnen der Eigenschaft kann natürlich auch von einem Klassifikator erfolgen der über eine Kommunikationsverbindung mit dem Roboter in Verbindung steht. Es könnte also auch ein neuronales Netz verwendet werden welches mit sehr großer Datenmenge trainiert wurde. Durch die höhere zugrundeliegende Datenmenge, entstehen üblicherweise auch bessere und zuverlässigere Werte bei der Bestimmung der jeweiligen Eigenschaft.
[00174] Das Berechnen der Eigenschaft ist natürlich dann von besonderem Interesse, wenn daraus bestimmt werden kann ob eine Bearbeitung der Oberfläche erfolgen soll. So könnte Beispielsweise eine Bearbeitung abgebrochen werden, wenn keine signifikante Änderung der Maßzahl zu erwarten ist. Es könnte auch eine Bearbeitung abgebrochen werden, wenn durch die Bearbeitung Schäden entstehen könnten. Eine weitere Möglichkeit ergibt sich durch mehrmalige Ermittlung und wobei die Berechnung vor und nach einer Serviceaufgabe in dem Gebiet durchgeführt wird. Dadurch ist es möglich Maßzahlen zu generieren die zeigen ob die Serviceaufgabe eine Veränderung bewirkt hat. Es könnte damit auch überprüft werden, ob eine ungewünschte Verschlechterung der klassifizierten Eigenschaft entstanden ist. [00175] Eine Möglichkeit die sich durch mehrfache Bestimmung der Maßzahl ergibt, ist das aufgrund der Ergebnisse entschieden werden kann, ob die Serviceaufgabe noch einmal durchgeführt werden soll. Dies könnte beispielsweise dann der Fall sein wenn sich die Maßzahl in genügendem Maß verändert hat und ein weiterer Durchlauf, eine weitere gewünschte Veränderung bewirkt, die auch als groß genug eingestuft wird. Selbstverständlich können in derartige Entscheidung auch mit andere Vorgaben eingerechnet werden. Beispielsweise könnte die benötigte Zeit für die Aufgabe eine Rolle spielen, oder ob noch weitere Aufträge oder Zeitpunkte existieren wann bestimmte Aufgaben abgeschlossen sein müssen.
[00176] Obwohl ein Hochladen von Informationen und Bewerten der Information in vielen Fällen sinnvoll ist, kann es sein, dass dies von Nutzer nicht erwünscht ist. Beispiele dafür können zum Beispiel sein, dass Nutzer keine Informationen von bestimmten Objekten zum Beispiel Personen, Gesichtern oder Einrichtungsgegenständen wie Bildern oder ähnliches, hochladen wollen. Um diese Problemstellung für den Nutzer in zufriedenstellendem Maß zu lösen ist die Einrichtung von Datenschutzobjekten (DO) sinnvoll (Siehe Fig. 15 Skizze 9). Hier kann der Nutzer bestimmte Objektklassen eingeben die vor einem hochladen von Information unkenntlich gemacht werden. Die verbleibende Restinformation kann dann hochgeladen und weiterverarbeitet werden. Für das Entfernen der Information findet eine Vorverarbeitung der Informationen statt. Beispielsweise könnte ein Bild vom Roboter aufgezeichnet werden auf dem sich eine Person befindet. Anschließend wird das Bild wird auf das vorhanden sein von Objekten geprüft. Ist auf dem Bild ein Objekt erkennbar, dass in eine Datenschutzobjektklasse fällt wird das Bild nicht übermittelt. Es wäre auch denkbar das nur jener Bereich in dem sich das Datenschutzobjekt befindet nicht übermittelt wird. Das Entfernen der markierten Bereiche aus dem Gebiet könnte beispielsweise durch Versehen der Pixel mit einem einheitlichen Wert erfolgen. Um auch Informationen von Konturen zu entfernen, könnten beispielsweise Rechtecke „ausgegraut“ werden. Die Einrichtung dieser Datenschutzobjekte könnte einerseits vom Nutzer selbst erfolgen in dem er Datenschutzobjekte festlegt, oder andererseits halbautomatisch vom Roboter erfolgen indem dieser bereits einen Vorschlag über die Anlegung von Datenschutzobjekten vorschlägt. Es wäre auch denkbar, dass von Haus aus alle Objekte als Datenschutzgebiete angelegt werden und der Nutzer anschließend Bestimmte Objekteklassen frei gibt bei denen ein Hochladen von Informationen möglich ist. Es ist auch denkbar, dass bestimmte Datenschutzobjekte nur von bestimmten Einheiten bearbeitet werden dürfen. So könnte es sein, dass in einem Bürogebäude zwar ein Hochladen von Informationen an einen Server der Firma möglich ist aber die Informationen nicht an Server des Roboterherstellers weitergeleitet werden dürfen.
[00177] Obwohl ein Hochladen von Informationen und Bewerten der Information in vielen Fällen sinnvoll ist, kann es sein, dass dies von Nutzer nicht erwünscht ist. Beispiele dafür können zum Beispiel sein, dass Nutzer keine Informationen aus dem Arbeitsbereich oder privaten Bereich wie dem Badezimmer hochladen wollen. Um diese Problemstellung für den Nutzer in zufriedenstellendem Maß zu lösen ist die Einrichtung von Datenschutzgebieten sinnvoll (Siehe Fig. 15 Skizze 9). Hier kann der Nutzer Bereiche markieren aus denen keine Informationen an eine oder bestimmte über ein Netzwerk verbundene Einheiten weitergeleitet werden. Die Einrichtung dieser Datenschutzgebiete könnte einerseits vom Nutzer selbst erfolgen in dem er Datenschutzgebiete in der erstellten Karte einträgt, oder andererseits halbautomatisch vom Roboter erfolgen indem dieser bereits einen Vorschlag über die Anlegung von Datenschutzgebeten vorschlägt. Es wäre auch denkbar, dass von Haus aus alle Gebiete als Datenschutzgebiete angelegt werden und der Nutzer anschließend Bestimmte Gebiete freigibt in denen ein hochladen von Informationen möglich ist. Es ist auch denkbar, dass bestimmte Datenschutzgebiete nur von bestimmten Einheiten bearbeitet werden dürfen. So könnte es sein, dass in einem Bürogebäude zwar ein hochladen von Informationen an einen Server der Firma möglich ist aber die Informationen nicht an Server des Roboterherstellers weitergeleitet werden dürfen.
[00178] Das Verfahren umfasst, insbesondere das Navigieren des AMR 100 durch ein Einsatzgebiet mit Hilfe eines oder mehrerer Navigationssensoren, die mit dem Navigationsmodul 152 gekoppelt sind. Mit Hilfe eines chemischen Sensors oder eines Sensors, der Licht analysiert, welches außerhalb des sichtbaren Bereichs liegt, werden Informationen über die Umgebung des AMR im Einsatzgebiet erfasst. Der Sensor ist dazu vorgesehen, chemische Substanzen zu detektieren. Dabei können sowohl eine als auch mehrere Chemische Substanzen detektiert werden.
[00179] Die Sensor Informationen können dazu genutzt werden um Objekte oder deren Attribute zu identifizieren. So könnten beispielsweise Flüssigkeiten auf dem Boden darauf überprüft werden ob es sich um Wasser handelt. Auch eine Unterscheidung von Flüssigkeiten ist möglich. So könnte Wasser z.B. von Urin unterschieden werden. Auch Wände könnten daraufhin untersucht werden ob und wie feucht sie sind. Pflanzen könnten auf ihren Bewässerungszustand untersucht werden. Auch die Ausnutzung von Fluoreszenz ist in dieser Untersuchung denkbar. [00180] Als besonders geeignete Methode bieten sich in diesem Fall spektroskopische Untersuchungen an. Hierbei kann aufgrund der Wellenlängen die von Objekt ausgehen auf die Zusammensetzung des Objekts geschlossen werden. Da viele Analysemöglichkeiten bei elektromagnetischen Wellenlängen außerhalb des sichtbaren Bereichs liegen, bieten sich hier Möglichkeiten die auf den ersten Blick nicht direkt einsichtig sind. So könnten Beispielsweise Kunststoffe erkannt werden, Organische Abfälle eingeordnet werden und so weiter. Besondere Möglichkeiten der Anwendung ergeben sich durch die Verwendung von Hyperspectral Imaging Kameras. Sie ermöglichen die Aufnahme von Bilder und eine gleichzeitige Spektralanalyse des Bildes. Dadurch können sogar einzelne Gebiete von Objekten auf ihre Zusammensetzung geprüft werden. Auch die Verwendung von Terahertztechnologie ist in diesem Zusammenhang erwähnenswert. Die Technologie ist derzeit zwar noch sehr kostspielig bietet aber die Möglichkeit bestimmte Materialien gut zu durchdringen. Es wäre damit möglich die Umgebung des Roboters besser zu scannen und teilweise hinter Wände zu blicken. Natürlich kann auch ein Sensor verwendet werden der chemische Moleküle in der Luft detektiert. Dadurch könnten Objekte untersucht werden die Gerüche verbreiten. Ein möglicher Einsatzbereich wäre hier beispielsweise die Erkennung von Tierexkrementen. Auch die Luftqualität könnte auf diese Weise überprüft werden. Befindet sich z.B. zu wenig Sauerstoff in der Luft könnte der AMR entsprechende Gegenmaßnamen einleiten oder Mitteilungen veranlassen.
[00181] In besonderer Weise sind die Verwendung dieser Sensoren (Spektroskopische Sensoren, Geruchssensor, etc.) zur Bestimmung von Objektklassen oder Attributen von Objekten geeignet. Wobei diese natürlich auch Informationen auch anderen Sensoren in eine Bewertung einfließen können.
[00182] Das Verfahren umfasst, insbesondere das Navigieren des AMR 100 durch ein Einsatzgebiet mit Hilfe eines oder mehrerer Navigationssensoren, die mit dem Navigationsmodul 152 gekoppelt sind. Mit Hilfe des Navigationssensors und/oder mit weiteren Sensoren werden Informationen über die Umgebung des AMR im Einsatzgebiet erfasst. Diesen Informationen können jeweils Positionen in dem Einsatzgebiet zugeordnet werden, um eine elektronische Karte des Einsatzgebiets zu erstellen, oder eine vorhandene Karte zu ergänzen. Das Verfahren umfasst weiter das automatische Detektieren von Objekten innerhalb des Einsatzgebiets und Klassifizieren der Objekte mittels eines Klassifikators basierend auf den erfassten Informationen. Dabei entsteht mindestens eine Objektklasse. [00183] Basierend auf mindestens dieser detektierten Objektklasse, wird eine Situationserkennung durchgeführt. Bei dieser, wird die aktuelle Stand der der vom Roboter aufgenommenen Daten mittels eines Klassifikators analysiert und eine Situationsklasse bestimmt. Im einfachsten Fall könnten Beispielsweise die derzeitigen Zustände des Roboters mit einer oder mehreren fest vorgegebenen Situationszuständen verglichen werden. Wird aufgrund der Situationsklasse festgestellt, dass sich der Roboter derzeit in einer bestimmten Situation befindet, wird eine Aktion gestartet die abhängig von dieser Situationsklasse ist. Auf diese Weise kann der Roboter auf eine Situation eingehen und ein speziell auf die Situation angepasstes Verhalten erzeugen. Es ist auch möglich dem Roboter dadurch Zusatzfunktionen zur Verfügung zu stellen die über eine Standardaufgabe hinausgeht.
[00184] Zusätzlich zu Objektklassifizierung können auch Objektattribute bestimmt werden. Dies Könnte beispielsweise die Farbe, oder andere Eigenschaften des Objekts sein. Für einen Reinigungsroboter könnte es Beispielsweise eine Rolle spielen ob ein Vorhang den Boden berührt oder nicht oder ob ein Teppich eine Bestimmte Ausführungsform (z.B. Fransen) hat.
[00185] Bei der Klassifizierung der Situation kann wie bereits beschrieben die zuvor bestimmte Objektklasse eine Entscheidende Rolle spielen. Häufig ist aber auch der Zustand in dem sich ein Objekt befindet entscheidend für die Situation. Um dies zu berücksichtigen kann bei der Klassifikation der Situation auch auf die Attribute der Objekte eingegangen werden. Beispielsweise könnten Schuhe an denen Schnürsenkel auf den Boden hängen durch Einrichtung eines Sperrgebiets umfahren werden, oder die Seitenbürste eines Roboters in diesem Fall abgeschaltet werden. Hängen beispielsweise Keine Schnürsenkel auf den Boden besteht kaum Gefahr, dass sie ein Reinigungsroboter verfangen kann. In diesem Falls könnte auch entschieden werden, dass sogar ein verschieben der Schuhe bei der Verrichtung der Aufgabe zulässig ist.
[00186] Es ist auch sinnvoll bestimmte Situationen zu erkennen die dann auftreten, wenn Objekte der gleichen Klasse mehrfach auftreten. So könnte die Anweisung des Nutzers „reinige den Teppich“ dazu führen, dass der Roboter nicht eindeutig bestimmen kann welchen Teppich er reinigen soll. In diesem Fall gibt es mehrere Möglichkeiten wie damit umgegangen werden kann. So könnten Beispielsweise alle Teppiche gereinigt werden, nur jener Teppich der in der Nähe des Nutzers ist, oder eine entsprechende Rückfrage an den Nutzer ausgelöst werden.
[00187] Die Kriterien mit denen die Situationsklassifikation durchgeführt werden kann in einer Datenbank gespeichert sein. Diese könnte direkt auf dem Roboter sein, wodurch dieser sehr autonom agieren kann. Die Datenbankkönnte aber auch extern liegen und somit ermöglichen, dass sie einen riesigen Umfang an Situationen und der entsprechenden Reaktion zur Verfügung stellt. Von besonderem Vorteil ist es natürlich wenn die Situationsdatenbank verändert oder erweitert werden kann. Dadurch könnte der Roboter zusätzliche Situationen lernen und neue Funktionalitäten zur Verfügung stellen.
[00188] Vor allem komplexere Situationen können erst dann erkannt werden, wenn eine genauere Analyse erfolgt. Es kann vorkommen, dass das Vorhandensein eines Objektes ein Indiz für eine Situation ist die spezielle Reaktion darauf aber eine genauere Analyse erfordert. Bei der genaueren Analyse können weitere Informationen als Kriterien einbezogen werden. Dies könnte sowohl durch direkte Messung als auch durch Abfrage aus Datenbanken erfolgen. Es könnte beispielsweise eine detektierte Zimmerpflanze dazu führen, dass eine Farbbestimmung durchgeführt wird, anhand derer dann entschieden wird, ob ein Gießen sinnvoll ist. Es wäre auch denkbar, dass weitere Informationen die extern zur Verfügung stehen einbezogen werden. So könnte beispielsweise ein online Wetterservice die zu erwartende Luftfeuchtigkeit einbeziehen und dadurch eine Situation besser einschätzen.
[00189] Da die Situationsdetektion je nach Implementierung sehr aufwändig sein kann, ist es zielführend dies nur in bestimmten Situationen durchzuführen. Als besonders sinnvoll erweist sich, dass eine Situationsprüfung nur dann durchgeführt wird wenn ein neues Objekt detektiert wird, es wieder detektiert wird oder es nicht mehr detektiert wird obwohl es vorhanden sein müsste.
[00190] Auch das Triggern durch ein externes Ereignis könnte in zahlreichen Anwendungen sinnvoll sein. So könnte beispielsweise ein Cloud-Dienst ein Signal schicken, dass ein Nutzer sich auf dem Weg nach Hause befindet oder dass das Wetter sich verändern wird. Ausgehend von solchen externen Triggern kann der Roboter entsprechende Situationen erkennen und entsprechende Reaktionen einleiten. Er könnte beispielsweise bei einer Unwetterwarnung das Schließen der Fenster oder Türen veranlassen. Nach Betreten der Wohnung könnte auch der Eingangsbereich gesäubert werden, dies beispielsweise optional nass falls der Wetterbericht darauf schließen lässt, dass es geregnet hat oder im Eingangsbereich feuchte Verunreinigungen detektiert werden.
[00191] Auch interne zyklische Trigger können verwendet werden um zwischenzeitlich eine Situationserkennung durchführen zu lassen. Auf diese Weise kann einerseits auf Situationen geprüft werden und andererseits sichergestellt werden, dass die eigentlichen Hauptaufgaben des Roboters weiter ausgeführt werden können. [00192] Ein weiterer besonders hilfreicher Zeitpunkt, um eine Situationsprüfung durchzuführen ist, wenn dies bei einem oder bestimmten internen Zustandsänderungen des Roboters auftritt. Beispielsweise könnten Fehlermeldungen oder Warnungen darauf hin deuteten das der Roboter sich nicht in einer Standardsituation befindet. Ein Auslösen einer Situationsbewertung ist in diesem Fall natürlich besonders sinnvoll, da darauf aufbauend eine geeignete Reaktion erfolgen kann.
[00193] Von besonderer Bedeutung, für eine Situation, ist natürlich der derzeitige Zustand eines Roboters. Besonders wichtig ist dabei die Serviceaufgabe die derzeitig durchgeführt wird. Diese kann als Kriterium für die Bestimmung der Situation verwendet werden. Zusätzlich kann natürlich auch Information aus der Historie des Roboters, oder externe Infos über eine Kommunikationseinheit zur Verfügung gestellte Information als Kriterium verwendet werden.
[00194] Es sind verschiedene Klassifikatoren an sich bekannt. Üblicherweise enthalten Klassifikatoren ein oder mehrere (vortrainierte) neuronale Netze, welche als Ergebnis der Klassifikation nicht nur eine Situationsklasse liefern, sondern auch eine Maßzahl für die Wahrscheinlichkeit der Richtigkeit der Klassifikation. So kann beispielsweise das Ergebnis einer Klassifikation sein, dass ein Eines Situation zu 80% eine Verunreinigung eines Arbeitsgebiets und zu 30% durch fehlerhafte Sensoren am Roboter entsteht. Die Wahrscheinlichkeiten müssen sich dabei nicht auf 100% ergänzen. Abhängig von der ermittelten Wahrscheinlichkeit kann ein klassifiziertes (Teil-) Gebiet oder ein klassifiziertes Objekt in der Karte des Roboters abgespeichert werden (z.B. bei ausreichend hoher Wahrscheinlichkeit) oder eben nicht abgespeichert werden. Als Situationsklasse kann jenes Ergebnis mit der höchsten Wahrscheinlichkeit verwendet werden. Es ist auch möglich eine Situationsklasse erst dann zuzuweisen, wenn die Wahrscheinlichkeit von zwei Gebietsklassen einen bestimmten Unterschied aufweist. Bei zu geringen Wahrscheinlichkeitswerten kann der AMR die Messungen wiederholen und beispielsweise zusätzliche Sensoren oder Beleuchtung für die Messung verwenden. Auch das Wiederholen der Messung bei einer veränderten Position ist möglich. Auch eine Manipulation von Objekten in dem Gebiet, oder ein Bearbeiten des Gebietes vor einer neuerlichen Messung ist möglich. Auch die Gebietsklassifikationen in der angrenzenden Umgebung könnten bei der aktuellen Gebietsdetektion einfließen. Des Weiteren ist es denkbar, dass der Roboter die Situation durch eine übergeordnete Entität klassifizieren oder überprüfen lässt. Dies könnte beispielsweise über einen Cloud-Service zur Verfügung gestellt werden. Vor Allem die
Situationsklassifikation kann auf diese Weise deutlich verbessert werden, da Situationen sehr komplexe Gegebenheiten darstellen können die erst von einem entsprechend komplexen Klassifikator richtig eingeordnet werden können. Es wäre in diesem Zug auch möglich Situationen von Menschen klassifizieren zu lassen.
[00195] Aufgrund einer erkannten Situation können zahlreiche Aktionen eingeleitet werden. Vor allem sind die folgenden Aktionen als besonders geeignet angesehen die ein direktes Reagieren auf die Situation zur Folge haben. So könnte die Derzeitige Serviceaufgabe abgeändert oder gänzlich gestoppt werden. Auch ein Verschieben oder Pausieren der aktuellen Serviceaufgabe oder Serviceaufgaben kann zur Lösung der Situation erfolgen. Es könnte auch eine höhere Entität, ein anderer Serviceroboter oder der Nutzer beauftragt werden eine Situation herzustellen die ein anschließendes Weiterarbeiten ermöglicht.
[00196] Bei der Beauftragung einer höheren Entität oder des Nutzers könnte eine Abfolge von Arbeitsaufträgen generiert werden, die eine Lösung zu einer bestimmten Situation darstellt. Anschließend könnte der Roboter diese Arbeitsaufträge ausführen. So könnte beispielsweise eine Wasserpfütze am Boden die während einer Trockenreinigung (z.B. Saugen) auftritt, dazu führen, dass der Auftrag pausiert wird und ein Gebiet um die Pfütze erzeugt wird, die für eine Wischreinigung vorgesehen ist. Der Roboter wechselt auf eine Wischreinigung und bearbeitet das Gebiet, nach einer anschließenden Trocknungsphase, in der andere Serviceaufträge durchgeführt werden können, wird der Saugvorgang in diesem Gebiet wieder gestartet.
[00197] Eine weitere Möglichkeit die sich durch Situationserkennung bietet, ist das Parameter bei Durchführung der Serviceaufgabe so angepasst werden, dass die Servicefunktion besser durchgeführt werden kann. So könnte z.B. bei starker Verunreinigung die Saugleistung eines Saugroboters erhöht werden. Führt der Roboter die Reinigung in Anwesenheit von Personen oder Tieren aus, oder findet sie zu einer bestimmten Zeit (z.B. in der Nacht), statt könnte auf einen „leisen Modus“ gewechselt werden. Ähnliche Möglichkeiten ergeben sich bei anderen Parametern z.B. Geschwindigkeiten, Abständen, Schwellwertdetektionen und Ähnlichem.
[00198] Das Verfahren umfasst, insbesondere einen AMR. Dabei werden internen Zuständen (z.B. Fehlermeldungen, Änderungen der Zustandsmaschine) erfasst und aufgezeichnet. Diese Informationen können dann über eine externe Einheit z.B. ein Cloud-Service abgefragt darauf hin untersucht werden ob ein bestimmter interner Zustand vorliegt. Falls dies zutrifft wird dem Nutzer, Information zugesendet. Dies kann zum Beispiel über ein HMI am Roboter zur Verfügung gestellt werden oder über ein HMI mit dem der Nutzer den AMR steuern kann. Auf diese Weise kann dem Nutzer Information zur Verfügung gestellt werden, die für seine Anwendung von hoher Relevanz ist. Er bekommt somit nicht eine Überlast an Informationen und wird Zufriedener auf relevante Informationen reagieren. (Siehe Fig. 14 Skizze 8)
[00199] Von besonderem Vorteil ist dieses Verfahren wenn auch der AMR diese Aktion selbst triggern kann. Es wäre beispielsweise möglich, dass ein AMR wiederholt die gleiche interne Warnung bekommt. (z.B. Der Auftrag wurde an Position X, Y aufgrund eines Warnung Z abgebrochen. Auf diese Weise könnte ein Roboter gezielte Informationen veranlassen und Lösungsvorschläge anbieten.
[00200] Einige Warnungen können als für die Anwendung üblich hingenommen werden. Die Warnung „Reinigung pausieren um den Akku zu laden Wiederaufladen“ ist bei großen Wohnungen häufig der Fall. Handelt es sich jedoch um eine kleine Wohnung dürfte das nicht häufig passieren. In diesem Fall bietet es sich an, dass auch Informationen, die die aus der Karte extrahiert werden können, untersucht werden.
[00201] Auch der Status von Roboterbestandteilen kann relevant sein. So könnten die gereinigte Quadratmeterzahl, die Laufzeit von Motoren, Ventilatoren, Filtern usw. auf bestimmte Abnutzungserscheinungen hindeuten und eine geeignete Info an den Nutzer kann sinnvoll sein.
[00202] Besonders relevant ist diese Funktion für das rechtzeitige zur Verfügung stellen von Ersatzteilen. Beispielsweise könnte die Warnung „Reinigung pausieren um den Akku zu laden Wiederaufladen“ darauf hindeuten, dass ein die Batterie altert. Informationen darüber könnten dem Nutzer angezeigt werden. Gleiches gilt für Ersatzteile wie Bürsten und Filter von Reinigungsrobotem. Dabei könnten auch weitere Infos einfließen. Z.B. Könnte dem Nutzer erst dann eine Meldung geschickt werden, wenn derzeit bald benötigte Ersatzteile günstig erworben werden können.
[00203] Es könnte auch für Produkte geworben werden die sich aufgrund des Einsatzgebietes als besonders relevant darstellen. So könnte eine Wischerweiterung empfohlen werden, wenn die dafür benötigten Böden in der Wohnung vorhanden sind. Auch Software die für die Wohnung passend ist könnte vorgeschlagen oder nachgeladen werden. So könnte beispielsweise eine WLAN-Repeaterfunktion vorgeschlagen werden, wenn WLAN nur in einem Teil der Wohnung zur Verfügung steht. Der Roboter könnte dann in einen Grenzbereich der Wohnung fahren in dem er selbst noch eine Verbindung zum Internet hat und diesen Zugang durch eine Repeaterfunktion vergrößern. [00204] Die Anwendungsmöglichkeit geht in diesem Fall natürlich weit über Ersatzteile oder Roboter software hinaus. Es könnten auch z.B. Informationen zu Einrichtungsgegenständen oder Produkten von Drittanbietern zur Verfügung gestellt werden. Vor allem die Kartendaten und die bereits im Wohnraum befindlichen Gegenstände könnten ausgewertet werden und sinnvolle Erweiterungen vorgeschlagen werden.
[00205] Ähnliche Möglichkeiten ergeben sich wenn festgestellt wird das Nutzer bestimmte Funktionen des AMR gar nicht nutzen obwohl diese für ihre Anwendungszwecke gut geeignet wären. In diesem Fall könnte ein Hinweis auf nicht genutzte oder neu hinzugefügte Funktionen ermöglicht werden.
[00206] Für die oben genannten Anwendungen ist selbstverständlich auch die Verwendung eines Human Machine Interfaces (HMI) möglich das über Sprachsteuerung verfügt. So könnte der Roboter beispielsweise direkt mit dem Nutzer sprechen oder die Ausgabe oder Eingabe auch via Smartphone oder eine Smarthome Lösung erfolgen.
[00207] Auch die Verwendung von Textbasierten Messenger Diensten wie Whatsapp, Telegramm, SMS, E-Mail oder ähnlichem wäre möglich und hat je nach Anwendungsfall für den Nutzer verschiedene Vorteile. Durch die Nutzungsmöglichkeit verschiedener Kommunikationssysteme kann der der Nutzer häufig auf sein gewohntes oder bevorzugtes Kommunikationsmedium zurückgreifen kann um auch Infos mit dem Roboter auszutauschen.
[00208] Selbstverständlich bietet ein HMI das direkt am Roboter angebracht ist für den Nutzer den Vorteil, dass dieser den Roboter direkt Informationen ausgetauscht werden können der Nutzer benötigt in diesem Fall keine weiteren Geräte um den Roboter zu Bedienen bzw. Informationen vom Roboter zu bekommen.
[00209] Ein HMI über den Roboter kann sowohl über Knöpfe, Beleuchtung, Bildschirm als auch Spracheingabe und/oder Sprachausgabe erfolgen. Das HMI kann zusätzlich so angepasst werden, dass eine gewisse Konfigurierbarkeit für den Kutzer möglich ist. So könnte der Nutzer spezielle Farben für das HMI einstellen oder verschiedene Dialekte und sprachen auswählen. Das bietet den Vorteil das eine bessere Kommunikation mit dem Nutzer möglich ist und der Roboter an die Umgebung besser angepasst werden kann. Speziell in Fällen in denen der Roboter aufgrund des Einsatzgebietes bestimmten Restriktionen unterliegt bietet dies große Vorteile. Beispielsweise könnte ein Schlafzimmer oder ein Labor eine Einstellung benötigen in der der Roboter möglichst wenig Licht oder Geräusche verursacht. Eine Individualisierbarkeit könnte auch bestimmte Themen zu Verfügung stellen die eine Vorauswahl an Einstellungen treffen. Z.B. ein „Dunkelmodus“, „leise Modus“, „Fröhlichkeitsmodus“ usw. zusätzlich gibt es die Möglichkeit den Roboter mit charakterlichen Eigenschaften auszustatten. Dies geht auch visuell ist aber in erster Linie für Sprachliche und textuelle HMI möglich. Der Roboter könnte damit Gleiche Informationen, je nach Einstellung, auf verschiedene Weise kommunizieren. Er könnte beispielsweise den Eindruck vermitteln, dass er glücklich ist, sich über bestimmte Fehler oder Aufgaben ärgert, aufgeregt ist, wenn er was Neues probieren darf, Infos mit witzigen Punkten versieht, Anekdoten erzählt usw. Dies bietet den Vorteil, dass der Nutzer eine stärkere emotionale Bindung zum Roboter aufbaut und ihn dadurch wahrscheinlich auch besser pflegt bzw. wartet. Auf diese Weise kann wiederum der Roboter besser an das Einsatzgebiet angepasst werden und der Nutzer profitiert von einer besseren Erledigung der vom AMR ausgeführten Arbeiten.
[00210] Da nicht jeder Nutzer bzw. Hersteller Interesse an einem Derartigen System hat ist es sinnvoll derartige Funktionen ein bzw. ausschaltbar zu gestalten. So könnte sowohl der Nutzer als auch der Hersteller diese Funktionen teilweise oder ganz deaktivieren. Es wäre auch denkbar, dass nur der Nutzer oder nur der Hersteller diese Möglichkeiten bekommt. Außerdem ist es möglich derartige Funktionen zu modifizieren oder diese nachzuladen. So könnte beispielsweise ein spezieller Dialekt nachgeladen werden oder Nachrichten aus bestimmten Kategorien unterdrückt werden. Solche Funktionen zu aktivieren bzw. zu deaktivieren bietet auch die Möglichkeit einer Monetarisierung.
[00211] Um die Relevanz einer Nachricht für einen Nutzer zu bestimmen, muss aufgrund der vorhandenen Informationen entschieden werden ob diese zu Verfügung gestellt werden soll. Eine zielgerichtete Möglichkeit bietet die Ermittlung einer Maßzahl mit der Ausgedrückt wird wie relevant eine Nachricht ist. Zur Ermittlung der Maßzahl kommen wieder zahlreiche Möglichkeiten in Betracht. Es könnte beispielsweise ein Klassifikator für die Relevanz entwickelt werden, der ein neuronales Netz nutz. Es könnten aber auch bestimmte Zustände abgeprüft werden und diese zur Ermittlung einer Maßzahl verwendet werden. Eine weitere Möglichkeit ist das ein Mensch die Daten analysiert und so eine Maßzahl für die Relevanz festlegt.
[00212] Zur Ermittlung der Maßzahl können zahlreiche Informationen einfließen. Von besonderem Interesse ist dabei der Möglichkeit auch Cloud- Services zu nutzen. Mit ihnen ist es möglich z.B. zusätzlich Sonderangebote, Preisvergleiche, Wetterdaten, Gesundheitsinformationen und weitere Informationen in die Relevanzberechnung einfließen zu lassen. So könnte auf eine neue Batterie erst aufmerksam gemacht werden, wenn der Preis 20% unter dem bisherigen Durchschnittswert liegt. Oder bei bevorstehender Pollenallergiezeit könnte rechtzeitig vorher auf die Möglichkeit eines speziellen Pollenfilters oder eines Wischtuches verwiesen werden.
[00213] Natürlich ergibt sich durch die Verwendung einer derartigen Maßzahl die Möglichkeit Information nur dann zu senden, wenn sie in einem bestimmten Wertebereich liegen. Dies wir häufig so sein, dass die relevantesten Funktionen zu Verfügung gestellt werden. Je nach Aufbau der Maßzahlberechnung kann dies auf bestimmte Wertebereiche zutreffen.
[00214] Die hier beschriebenen Ausführungsbeispiele werden im Folgenden zusammengefasst, wobei es sich nicht um eine abschließende, sondern lediglich um eine exemplarische Auflistung von Ausführungsbeispielen handelt:
[00215] Beispiel 1 : Ein Verfahren für einen autonomen, mobilen Roboter (AMR); welches folgendes umfasst:
Navigieren des AMR durch ein Einsatzgebiet mit Hilfe eines oder mehrerer Navigationssensoren während der AMR eine Serviceaufgabe verrichtet;
Erfassen von Informationen über die Umgebung des AMR im Einsatzgebiet mittels mindestens eines ersten Sensors, beispielsweise des Navigationssensors; automatisches Detektieren von Objekten und Klassifizieren der detektierten Objekte mittels eines Klassifikators basierend auf den erfassten Informationen, wobei eine Objektklasse bestimmt wird;
Speichern detektierter Objekte inklusiver der ermittelten Objektklasse in eine elektronische Karte des AMR.
[00216] Beispiel 2:. Das Verfahren gemäß Beispiel 1, wobei die klassifizierten Objekte für den Nutzer in einer Karte visualisiert oder mit einem sprechenden Namen versehen werden und optional ihre Attribute zur Verfügung gestellt werden.
[00217] Beispiel 3: Ein Verfahren gemäß einem der vorherigen Beispiele, wobei zusätzlich zur Objektklasse eines detektierten Objekts auch ein oder mehrere Objektattribute und/oder eine Pose eines klassifizierten Objekts bestimmt wird und abgespeichert wird. [00218] Beispiel 4: Ein Verfahren gemäß einem der vorherigen Beispiele, wobei das Klassifizieren der delektierten Objekte folgendes umfasst: ermitteln einer Maßzahl für die Wahrscheinlichkeit der Richtigkeit der Klassifizierung; und abspeichern dieser Maßzahl für zumindest eine Objektklasse in der Karte.
[00219] Beispiel 5: Ein Verfahren gemäß einem der vorherigen Beispiele, wobei das Klassifizieren der detektierten Objekte folgendes umfasst: ermitteln einer Maßzahl für die Wahrscheinlichkeit der Richtigkeit der Klassifizierung; und wenn die Wahrscheinlichkeit unter einem Grenzwert liegt, wiederholen der Klassifizierung des detektieren Objekts bei veränderter Position des Roboters, und/oder mit Hilfe zusätzlicher Sensordaten und/oder Beleuchtung des detektierten Objekts.
[00220] Beispiel 6: Ein Verfahren gemäß einem der vorherigen Beispiele, wobei das Klassifizieren der detektierten Objekte folgendes umfasst: ermitteln einer Maßzahl für die Wahrscheinlichkeit der Richtigkeit der Klassifizierung; und wenn die Wahrscheinlichkeit unter einem Grenzwert liegt, wiederholen der Klassifizierung des detektieren nach Manipulation des detektierten Objekts.
[00221] Beispiel 7: Ein Verfahren gemäß einem der vorherigen Beispiele, wobei das Klassifizieren der detektierten Objekte folgendes umfasst: ermitteln einer Maßzahl für die Wahrscheinlichkeit der Richtigkeit der Klassifizierung; und wenn die Wahrscheinlichkeit unter einem Grenzwert liegt, wiederholen der Klassifizierung des detektieren Objekts durch eine externe, mit dem Roboter über eine Kommunikationsverbindung verbundene Einheit, insbesondere einem Cloud-Server.
[00222] Beispiel 8: Ein Verfahren gemäß einem der vorherigen Beispiele, wobei die detektierten Objekte dem Nutzer, zur Verfügung gestellt werden, und dieser die Möglichkeit hat die Klasse einzutragen oder zu Verändern. [00223] Beispiel 9: Ein Verfahren gemäß einem der vorherigen Beispiele, wobei die delektierten Objekte dem Nutzer, zur Verfügung gestellt werden, bei denen die Maßzahl für die Wahrscheinlichkeit der Richtigkeit, einen festgelegten Wert unterschreitet.
[00224] Beispiel 10: Ein Verfahren gemäß einem der vorherigen Beispiele, bei dem, dem Roboter eine Zuordnung zur Verfügung gestellt wird, in der Klassen mit mindestens einer zulässigen Aktion verknüpft werden. Wobei die zulässigen Aktionen, mindestens eine der folgenden umfasst:
Erzeugen eines Sperrgebiets um das Objekt,
Bearbeiten des Objektes zulassen,
Wartung / Überprüfung des Objektes aufnehmen,
Verschieben des Objektes zulassen.
[00225] Beispiel 11 : Das Verfahren gemäß einem der vorherigen Beispiele, wobei die bestimmte Aktion folgendes umfasst:
Manipulieren eines Objekts durch den Roboter, wobei zuvor basierend auf der Zuordnung der Klasse und der zulässigen Aktion, geprüft wird ob dies erlaubt ist.
(Sofern die Maßzahl für die Wahrscheinlichkeit der Richtigkeit, der dem Objekt zugeordneten Klasse, als hinreichend bestimmt.
[00226] Beispiel 12: Ein Verfahren gemäß einem der vorherigen Beispiele, wobei der Klassifikator mittels Update über eine Netzwerkverbindung aktualisiert werden kann
[00227] Beispiel 13: Ein Verfahren gemäß einem der vorherigen Beispiele, das weiter aufweist:
Übermitteln zumindest eines Teils der erfassten Informationen sowie die darauf basierende Klassifikation eines Objekts eine übergeordnete Entität; und
Verwenden der übermittelten Informationen als Trainingsdaten für die Erzeugung und/oder Optimierung eines weiteren Klassifikators. [00228] Beispiel 14: Ein Verfahren gemäß einem der vorherigen Beispiele, das weiter aufweist:
Senden von Information, an den Nutzer oder eine über eine Kommunikationseinheit verbundene Einheit, über den Zustand eines Objekts sofern die in einer gewissen Klasse liegt oder die Attribute dies anzeigen(Wasserschaden Zimmerpflanze)
[00229] Beispiel 15: Ein Verfahren gemäß einem der vorherigen Beispiele, das weiter aufweist:
Zur senden von Information über den Zustand eines Objektes sofern das Objekt ein erstes Mal erkannt wird
[00230] Beispiel 16: Ein Verfahren gemäß einem der vorherigen Beispiele, das weiter aufweist:
Zur senden von Information über den Zustand eines Objektes sofern die Attribute des Objekts in einem bestimmten Wertebereich einer Maßzahl liegen.
[00231] Beispiel 17: Ein Verfahren gemäß einem der vorherigen Beispiele, das weiter aufweist:
Zur Verfügung stellen von Energie oder Information für Objekte.
[00232] Beispiel 18: Ein Verfahren gemäß einem der vorherigen Beispiele, das weiter aufweist:
Zur Verfügung stellen von Energie oder Information für Objekte, mit elektrischer Kontakte oder mithilfe elektromagnetischer Strahlung.
[00233] Beispiel 19: Ein Verfahren gemäß einem der vorherigen Beispiele, das weiter aufweist:
Zur Verfügung stellen von Energie oder Information für Objekte, mit Hilfe einer kontaktlosen Ladeeinheit.
[00234] Beispiel 20: Ein Verfahren gemäß einem der vorherigen Beispiele, das weiter aufweist: Zur Verfügung stellen von Energie oder Information für Objekte, sofern detektiert wird, dass das Objekt mit Energie oder Information versorgt werden soll. (z.B. aufgrund von Ladestatus, Firmwareversion).
[00235] Beispiel 21 : Ein Verfahren gemäß einem der vorherigen Beispiele, das weiter aufweist:
Zur Verfügung stellen von Energie oder Information für Objekte, mit Hilfe einer Energiequelle des Roboters.
[00236] Beispiel 22: Ein Verfahren gemäß einem der vorherigen Beispiele, das weiter aufweist:
3D-Extraktion der Abmessungen des Objektes und speichern der Information.
[00237] Beispiel 23: Ein Verfahren gemäß einem der vorherigen Beispiele, das weiter aufweist:
Texturextraktion des Objektes und Speichern der Information.
[00238] Beispiel 24: Ein Verfahren gemäß einem der vorherigen Beispiele, das weiter aufweist:
Verwenden der Daten aus der 3D-Extraktion oder der Texturextraktion zur Visualisierung in der HMI.
[00239] Beispiel 25: Ein Verfahren für einen autonomen, mobilen Roboter (AMR); welches folgendes umfasst:
Navigieren des AMR durch ein Einsatzgebiet mit Hilfe eines oder mehrerer Navigationssensoren während der AMR eine Serviceaufgabe verrichtet;
Erfassen von Informationen über die Umgebung des AMR im Einsatzgebiet mittels mindestens eines ersten Sensors, wobei der mindestens eine, erste Sensor, dazu ausgebildet ist, chemische Substanzen zu detektieren oder elektromagnetische Wellen untersucht die außerhalb des sichtbaren Bereichs liegen. [00240] Beispiel 26: Das Verfahren gemäß Beispiel 25 wobei Sensorinformation betreffend eine oder mehrerer detektierter chemischen Substanzen bei der Objektklassifizierung oder der Bestimmung von Objektattributen berücksichtigt werden.
[00241] Beispiel 27: Das Verfahren gemäß Beispiel 25 oder 26, wobei der erste Sensor eine Hyperspectral Imaging Kamera oder ein Spektrometer oder ein Geruchssensor ist.
[00242] Beispiel 28: Das Verfahren gemäß einem der Beispiele 25 bis 27, wobei Sensorinformation betreffend eine oder mehrerer detektierter chemischen Substanzen bei einer Objektklassifizierung oder der Bestimmung von Objektattributen berücksichtigt werden.
[00243] Beispiel 29: Ein Verfahren für einen autonomen, mobilen Roboter (AMR); welches folgendes umfasst:
Navigieren des AMR durch ein Einsatzgebiet mit Hilfe eines oder mehrerer Navigationssensoren während der AMR eine Serviceaufgabe verrichtet;
Erfassen von Informationen über die Umgebung des AMR im Einsatzgebiet mittels mindestens eines ersten Sensors, beispielsweise des Navigationssensors; automatisches Detektieren von Objekten und Klassifizieren der detektierten Objekte mittels eines Klassifikators basierend auf den erfassten Informationen, wobei eine Objektklasse bestimmt wird;
Erkennen einer Situation, in der sich der Roboter aktuell befindet, anhand eines oder mehrerer Kriterien, die zumindest die Anwesenheit oder Abwesenheit eines Objekts einer bestimmten Objektklasse im Einsatzgebiet umfassen, oder Erkennen einer Situation, in der sich der Roboter aktuell befindet mittels eines Klassifikators basierend auf den erfassten Informationen, wobei eine Situationsklasse bestimmt wird; und
Durchführen einer bestimmten Aktion durch den Roboter abhängig von der erkannten Situation.
[00244] Beispiel 30: Das Verfahren gemäß Beispiel 29, wobei zusätzlich zur Objektklasse eines detektierten Objekts auch ein oder mehrere Objektattribute und/oder eine Pose eines klassifizierten Objekts bestimmt werden. [00245] Beispiel 31 : Das Verfahren gemäß Beispiel 29 oder 30, wobei die Kriterien weiter ein oder mehrere Objektattribute und/oder eine Pose des Objekts eines klassifizierten Objekts umfassen.
[00246] Beispiel 32: Das Verfahren gemäß einem der Beispiele 29 bis 31, wobei die Kriterien weiter die Anwesenheit von mindestens einem weiteren Objekt derselben oder einer anderen Objektklasse im Einsatzgebiet umfassen
[00247] Beispiel 33: Das Verfahren gemäß einem der Beispiele 29 bis 32, wobei die Kriterien in einer Datenbank gespeichert sind und das Verfahren weiter das Aktualisieren und/oder Erweitern der in der Datenbank gespeicherten Kriterien umfasst.
[00248] Beispiel 34: Das Verfahren gemäß einem der Beispiele 29 bis 33, wobei das Erkennen der Situation, in der sich der Roboter aktuell befindet, folgendes umfasst:
Prüfen eines ersten Kriteriums, nämlich, ob ein Objekt einer bestimmten Objektklasse sich im Robotereinsatzgebiet befindet;
Prüfen eines oder mehrerer weiterer Kriterien, die von der Objektklasse oder den Objektattributen abhängen.
[00249] Beispiel 35: Das Verfahren gemäß einem der Beispiele 29 bis 34, wobei das Erkennen der Situation, in der sich der Roboter aktuell befindet, durchgeführt wird, wenn: ein neues Objekt detektiert wird; ein zuvor im Einsatzgebiet vorhandenes Objekt nicht mehr vorhanden ist; ein externes Trigger-Ereignis das Erkennen der Situation auslöst; ein zyklischer Trigger das Erkennen der Situation auslöst; ein internes Trigger-Ereignis aufgrund einer Zustandsänderung des Roboters, beispielsweise beim Auftreten eines Fehlers, das Erkennen der Situation auslöst.
[00250] Beispiel 36: Das Verfahren gemäß einem der Beispiele 29 bis 35, wobei die Kriterien weiter umfassten: ein interner Zustand des Roboters, insbesondere ein aktueller Serviceauftrag des
Roboters; aus der Historie des Roboters abgeleitete Informationen; externe Informationen, die insbesondere über eine Kommunikationsverbindung, beispielsweise eine Internetverbindung empfangen werden.
[00251] Beispiel 37: Das Verfahren gemäß einem der Beispiele 29 bis 36, wobei die bestimmte Aktion folgendes umfasst:
Verifizierung der Situation durch zusätzliche Messungen; und/oder
Verifizierung der Situation durch Anfrage an eine übergeordnete Entität, insbesondere einen mittels einer Netzwerkverbindung mit dem AMR gekoppelten Server, oder einen Nutzer.
[00252] Beispiel 38: Das Verfahren gemäß einem der Beispiele 29 bis 37, wobei die bestimmte Aktion folgendes umfasst:
Abändern der aktuellen Serviceaufgabe;
Stoppen, Verschieben oder Pausieren der aktuellen Serviceaufgabe für einen festen oder variablen Zeitraum;
Beauftragen einer anderen Serviceeinheit, des Nutzers oder einer höheren Entität.
[00253] Beispiel 39: Das Verfahren gemäß einem der Beispiele 29 bis 38, wobei die bestimmte Aktion folgendes umfasst:
Senden einer Anfrage an eine übergeordnete Entität oder den Nutzer, und Empfangen eines oder mehrerer Aufträge zur Bewältigung oder Veränderung der Situation von der übergeordneten Entität oder dem Nutzer; und
Durchführen der empfangenen Arbeitsaufträge.
[00254] Beispiel 40: Das Verfahren gemäß einem der Beispiele 29 bis 39, wobei das Durchführen einer bestimmten Aktion durch den Roboter abhängig von der erkannten Situation folgendes umfasst:
Verändern von Parametern einer aktuell durchgeführten Serviceaufgabe, beispielsweise die Geschwindigkeit des Roboters.
[00255] Beispiel 41 : Ein Verfahren für einen autonomen, mobilen Roboter (AMR); welches folgendes umfasst: Erfassen und Sammeln von Informationen über die internen Zustände (z.B.
Fehlermeldungen) des AMR;
Abfragen, dieser Informationen oder daraus extrahierter Information, über eine externe Einheit, ob eine bestimmter interner Zustand vorliegt; und falls ja, Senden von Information an den Roboter oder ein HMI, mittels der ein Nutzer mit dem Roboter verbunden ist.
[00256] Beispiel 42: Das Verfahren gemäß Beispiel 41, wobei das Verfahren gemäß Beispiel 69 durch einen Zustand, der am AMR auftritt, beispielsweise beim Einschalten, getriggert wird.
[00257] Beispiel 43: Das Verfahren gemäß Beispiel 41 oder 42, wobei die gesammelte Information zusätzlich Information aus der Karte des Einsatzgebietes beinhaltet.
[00258] Beispiel 44: Das Verfahren gemäß einem der Beispiele 41 bis 43, wobei die gesammelte Information zusätzlich Information über den Status von Bestandteilen des Roboters beinhaltet. (Tausch von Ersatzteilen)
[00259] Beispiel 45: Das Verfahren gemäß einem der Beispiele 41 bis 44, wobei die gesendete Information Auskunft über mögliches Ersatzteil, Verschleißteil oder Zubehör für den Roboter beinhaltet.
[00260] Beispiel 46: Das Verfahren gemäß einem der Beispiele 41 bis 45, wobei die gesendete Information Auskunft über mögliche Gegenstände für das Einsatzgebiet beinhaltet (Werbung). oder wobei die gesendete Information Auskunft über mögliche Zusatzfunktionen für das Einsatzgebiet beinhaltet (Werbung).
[00261] Beispiel 47: Das Verfahren gemäß einem der Beispiele 41 bis 46, wobei die gesendete Information Auskunft über die Möglichkeiten einer geänderten Nutzung des Roboters Auskunft gibt. [00262] Beispiel 48: Das Verfahren gemäß einem der Beispiele 41 bis 47, wobei das Senden der Information über eine Sprach HMI erfolgt.
[00263] Beispiel 49: Das Verfahren gemäß einem der Beispiele 41 bis 48, wobei das Senden der Information über einen Messenger-Dienst erfolgt.
[00264] Beispiel 50: Das Verfahren gemäß einem der Beispiele 41 bis 49, wobei das Senden der Information an den Roboter erfolgt und. dieser sie über eine HMI am Roboter ausgibt.
[00265] Beispiel 51 : Das Verfahren g gemäß einem der Beispiele 41 bis 50, wobei die Information individualisiert (an den Nutzer angepasst) erfolgt
[00266] Beispiel 52: Das Verfahren gemäß einem der Beispiele 41 bis 51, wobei das Verfahren gemäß Beispiel 69 durch den Nutzer oder den Hersteller an oder ausgeschaltet oder eingeschaltet werden kann.
[00267] Beispiel 53: Das Verfahren gemäß einem der Beispiele 41 bis 52,
Wobei eine Maßzahl ermittelt wird mit der die Relevanz für den Nutzer bestimmt wird.
[00268] Beispiel 54: Das Verfahren gemäß einem der Beispiele 41 bis 53, wobei zur Ermittlung der Maßzahl auch Information verwendet werden, die über eine Kommunikationsverbindung verbundene Einheit, insbesondere einem Cloud-Server erlangt werden (Preisvergleiche)
[00269] Beispiel 55: Das Verfahren gemäß einem der Beispiele 41 bis 54,
Wobei ein Senden der Information nur dann erfolgt, wenn diese Maßzahl einen bestimmten Wertebereich annimmt.

Claims

PATENTANSPRÜCHE
1. Ein Verfahren für einen autonomen, mobilen Roboter (AMR); welches folgendes umfasst:
Navigieren des AMR durch ein Einsatzgebiet mit Hilfe eines oder mehrerer
Navigationssensoren;
Erfassen von Informationen über die Umgebung des AMR im Einsatzgebiet; automatisches Detektieren von Teilgebieten innerhalb des Einsatzgebiets und Klassifizieren der detektierten Teilgebiete mittels eines Klassifikators basierend auf den erfassten Informationen, wobei eine Gebietsklasse bestimmt wird; und
Speichern detektierter Teilgebiete inklusiver der ermittelten Gebietsklasse in eine elektronische Karte des AMR, wobei der Klassifikator bei der Klassifizierung eines Teilgebiets berücksichtigt, welche Objekte in dem jeweiligen Teilgebiet detektiert werden, und/oder wobei eine Maßzahl für die Wahrscheinlichkeit der Richtigkeit der Klassifizierung eines Teilgebiets ermittelt wird und das Speichern des jeweiligen Teilgebiets in der Karte in Abhängigkeit von dieser Maßzahl erfolgt.
2. Das Verfahren gemäß Anspruch 1, wobei die Klasse für den Nutzer in einer Karte auf einer Mensch-Maschine- Schnittstelle visualisiert und/oder mit einem sprechenden Namen versehen wird.
3. Das Verfahren gemäß Anspruch 1 oder 2, wobei das Klassifizieren des detektierten Gebiets folgendes umfasst: ermitteln einer Maßzahl für die Wahrscheinlichkeit der Richtigkeit der Klassifizierung eines Teilgebiets; und abspeichern dieser Maßzahl für zumindest eine Gebietsklasse in der Karte.
4. Das Verfahren gemäß Anspruch 1 bis 3, wobei das Klassifizieren der detektierten Teilgebiete folgendes umfasst: ermitteln einer Maßzahl für die Wahrscheinlichkeit der Richtigkeit der Klassifizierung; und wenn die Maßzahl eine vorgegebene Bedingung erfüllt, wiederholen der Klassifizierung des detektieren Teilgebiets bei veränderter Position des Roboters, und/oder mit Hilfe zusätzlicher Sensordaten und/oder Beleuchtung des detektierten Teilgebiets.
65
5. Das Verfahren Anspruch 1 bis 4, wobei das Klassifizieren, der delektierten Gebiets folgendes umfasst: ermitteln einer Maßzahl für die Wahrscheinlichkeit der Richtigkeit der Klassifizierung; und, wenn die Maßzahl eine vorgegebene Bedingung erfüllt, Wiederholen der Klassifizierung des detektieren nach Manipulation des detektierten Teilgebiets, insbesondere durch Verschieben eines Objekts in dem Teilgebiet oder Durchführen einer Serviceaufgabe in dem Teilgebiet.
6. Das Verfahren gemäß Anspruch 1 bis 5, wobei das Klassifizieren des detektierten Gebiets folgendes umfasst: ermitteln einer Maßzahl für die Wahrscheinlichkeit der Richtigkeit der Klassifizierung; und wenn die Maßzahl eine vorgegebene Bedingung erfüllt, , wiederholen der Klassifizierung des detektieren Gebiets durch eine externe, mit dem Roboter über eine Kommunikationsverbindung verbundene Einheit, insbesondere einem Cloud-Server.
7. Das Verfahren gemäß einem der Ansprüche 1 bis 6, wobei die detektierten Teilgebiete mittels einer HMI visualisiert werden, und ein Nutzer die Möglichkeit hat die Gebietsklasse einzutragen oder zu verändern.
8. Das Verfahren gemäß einem der Ansprüche 1 bis 7, wobei jene der detektierten Teilgebiete mittels einer HMI visualisiert werden, bei denen die Maßzahl für die Wahrscheinlichkeit der Richtigkeit eine vorgegebene Bedingung erfüllt.
9. Das Verfahren gemäß einem der Ansprüche 1 bis 8, wobei der Klassifikator mittels Update über eine Netzwerkverbindung aktualisiert wird.
10. Das Verfahren gemäß einem der Ansprüche 1 bis 9, das weiter aufweist:
Übermitteln zumindest eines Teils der erfassten Informationen sowie die darauf basierende Klassifikation eines Gebiets an eine übergeordnete Entität; und
Verwenden der übermittelten Informationen als Trainingsdaten für die Erzeugung und/oder Optimierung eines weiteren Klassifikators.
66
11. Das Verfahren gemäß einem der Ansprüche 1 bis 10, das weiter aufweist:
Auswählen - basierend auf einer Gebietsklasse - einer Aktion aus einer Tabelle, in der Gebietsklassen Aktionen zugeordnet sind, wobei die Aktionen, mindestens eine der folgenden umfasst:
Erzeugen eines Sperrgebiets in dem Teilgebiet;
Bearbeiten des Teilgebietes zulassen; und
Datenschutzgebiet erzeugen.
12. Das Verfahren gemäß einem der Ansprüche 1 bis 11 welches folgendes umfasst: automatisches Detektieren von Objekten und Klassifizieren der detektierten
Objekte mittels eines Klassifikators basierend auf den erfassten Informationen, wobei eine Objektklasse bestimmt wird;
Einträgen eines Sperrgebietes in einer Karte des Roboters, insbesondere um das detektierte und klassifizierte Objekt, oder
Einträgen von Sperrlinien, welche nur aus einer Richtung überfahren werden dürfen, in die Karte des Roboters.
13. Das Verfahren gemäß einem der Ansprüche 1 bis 12, welches weiter folgendes umfasst:
Zusätzliches Detektieren von Objekten in einem der detektierten Teilgebiete,
Erweitern des jeweiligen Teilgebiets sodass für den Nutzer, der Raum den das Objekt einnimmt, nicht als Wand bzw. Grenze des Raumes, visualisiert wird.
14. Das Verfahren gemäß Anspruch 13, welches weiter folgendes umfasst:
Detektieren einer Wand; und
Erweitern des Teilgebiets um einen von dem detektierten Objekt besetzten Bereich bis hin zu der detektierten Wand und Aktualisieren der Karte.
15. Das Verfahren gemäß Anspruch 13, welches weiter folgendes umfasst:
Extrapolieren des Verlaufs der Wand neben dem detektierten Objekt, um auf die Position der Wand hinter dem Objekt zu schließen; und
Erweitern des Teilgebiets um den vom Objekt besetzten Bereich bis zu der Position der Wand hinter dem Objekt und Aktualisieren der Karte.
67
16. Das Verfahren gemäß Anspruch 13, welches weiter folgendes umfasst:
Erweitern des Teilgebiets um einen Bereich, der für das detektierte Objekt eine Typische Größe aufweist.
17. Das Verfahren gemäß einem der Ansprüche 1 bis 16; das weiter aufweist:
Durchführen einer Serviceaufgabe, welche durch einen oder mehrere Parameter charakterisiert ist, in einer Teilgebiete;
Verändern von Parametern der Serviceaufgabe, abhängig von der Gebietsklasse des Teilgebiets, beispielsweise die Geschwindigkeit des Roboters oder das Zulassens von Kontakt zwischen Roboter und mit Objekten wie z.B. einem Vorhang.
18. Ein Verfahren zum Steuern eines Roboters, das aufweist:
Aufbau einer Karte des Einsatzgebietes des Roboters;
Unterteilen des Einsatzgebietes in Teilgebiete und Einträgen der Teilgebiete in die Karte;
Ermitteln einer Maßzahl für jedes Teilgebiet und eine bestimmte Serviceaufgabe des Roboters, wobei die Maßzahl eine Wahrscheinlichkeit oder Dauer repräsentiert, mit der der Roboter die Serviceaufgabe in dem jeweiligen Teilgebiet abschließen kann.
19. Das Verfahren gemäß Anspruch 18, wobei für das Ermitteln der Maßzahl während des Betriebs und für jedes Teilgebiet Hindernisse und Fehler bei der Durchführung der Serviceaufgabe protokolliert werden und die protokollierten Hindernisse und Fehler in die Ermittlung der Maßzahl für das jeweilige Teilebiet einfließen.
20. Das Verfahren gemäß einem der Ansprüche 18 oder 19, wobei für das Ermitteln der Maßzahl während des Betriebs und für jedes Teilgebiet Objekte bei der Durchführung der Serviceaufgabe protokolliert werden und die Objekte und ggf. Objektklassen für die Ermittlung der Maßzahl für das jeweilige Teilebiet einfließen.
21. Das Verfahren gemäß einem der Ansprüche 18 bis 20, wobei für das Ermitteln der Maßzahl während des Betriebs und für jedes Teilgebiet Informationen über die Umgebung des AMR erfasst werden und diese Informationen mithilfe
68 einer über eine Kommunikationsverbindung verbundenen Einheit verarbeitet werden und die Ergebnisse daraus in die Ermittlung der Maßzahl für das jeweilige Teilebiet einfließen.
22. Das Verfahren gemäß einem der Ansprüche 18 bis 21, wobei die ermittelte Maßzahl für verschiedene detektierte und klassifizierte Teilgebiete in einer Datenbank oder Karte des Roboters eingetragen wird und wobei die Durchführung einer Serviceaufgabe in den Teilgebieten abhängig von den zugehörigen Maßzahlen priorisiert wird, und/oder die Durchführung der Serviceaufgabe in einem bestimmten Teilgebiet verhindert wird, wenn die zugehörige Maßzahl eine vorgegebene Bedingung erfüllt.
23. Ein Verfahren zum Steuer eines Roboters, das umfasst:
Navigieren des Roboters durch ein Robotereinsatzgebiet und Durchführen einer Oberflächenbearbeitungsaufgabe oder einer Oberflächenprüfaufgabe in zumindest einem Bereich des Robotereinsatzgebiet
Erfassen von zumindest einem Teil des Robotereinsatzgebietes mittels eines optischen Sensors; und
Klassifizierung der von dem optischen Sensor gelieferten Daten mittels eines Klassifikators, wobei der Klassifikator einen Wert berechnet, der eine Eigenschaft der Oberfläche repräsentiert.
24. Das Verfahren gemäß Anspruch 23; wobei der Klassifikator ein neuronales Netz beinhaltet, und der vom Klassifikator berechnete Wert die Sauberkeit der Oberfläche repräsentiert.
25. Das Verfahren gemäß Anspruch 23 oder 24; wobei das neuronale Netz mit Trainingsdaten vortrainiert ist und das neuronale Netz dem Roboter mittels einer Kommunikationsverbindung zur Verfügung gestellt wird.
26. Das Verfahren gemäß einem der Ansprüche 23 bis 25; wobei der Roboter die Klassifikation vor und nach einer Serviceaufgabe durchführt und eine Maßzahl ermittelt, welche von den jeweils von dem Klassifikator berechneten Werten abhängt.
69
27. Das Verfahren gemäß Anspruch 26; wobei der Roboter die Serviceaufgabe noch einmal durchführt, wenn die Maßzahl ein vorgegebenes Kriterium erfüllt.
28. Ein Verfahren welches folgendes umfasst:
Erfassen von Informationen in einem Einsatzgebiet mittels mindestens eines ersten Sensors, beispielsweise des Navigationssensors; automatisches Detektieren von Bereichen in den erfassten Informationen mittels eines Klassifikators,
Untersuchen der erfassten Information auf Objekte, die einer bestimmten Klasse angehören und die als Datenschutzobjekte gelten.
29. Das Verfahren nach Anspruch 28, welches weiter folgendes umfasst:
Verwerfen von Informationen welche Datenschutzobjekte beinhalten.
Insbesondere sicherstellen dass diese Informationen nicht an eine über eine Kommunikationsverbindung verbundene Einheit, insbesondere einem Cloud-Server weitergeleitet werden.
30. Das Verfahren nach Anspruch 28 oder 29, welches weiter folgendes umfasst:
Erfassen von Informationen in einem Einsatzgebiet mittels mindestens eines ersten Sensors, beispielsweise des Navigationssensors; automatisches Detektieren von Bereichen in den erfassten Informationen mittels eines Klassifikators,
Manipulation der erfassten Information sodass Bereiche die bestimmten Klassen angehören unkenntlich gemacht werden.
31. Das Verfahren nach einem der Ansprüche 28 bis 30, welches weiter folgendes umfasst:
Übermittlung der manipulierten Daten über eine Kommunikationsverbindung verbundene Einheit, insbesondere einem Cloud-Server.
Wobei diese Einheit eine Klassifikation der übermittelten Daten vornimmt und diese zur Verfügung stellt.
32. Ein Verfahren welches folgendes umfasst:
70 Erfassen von Informationen in einem Einsatzgebiet mittels mindestens eines ersten Sensors, beispielsweise eines Navigationssensors, eines autonomen, mobilen Roboters;
Speichern des Einsatzgebietes in einer Karte des autonomen, mobilen Roboters;
Festlegen eines Datenschutzgebiets oder eines Datenschutzobjekts in der Karte, um festzulegen, dass Informationen betreffend das Datenschutzgebiet oder das Datenschutzobjekt nicht an eine über eine Kommunikationsverbindung mit dem Roboter verbundene Einheit, insbesondere einem Cloud-Server, gesendet werden dürfen.
33. Das Verfahren gemäß Anspruch 32, welches weiter folgendes umfasst:
Übermittlung von Daten über eine Kommunikationsverbindung verbundene Einheit, sofern dies nicht im Widerspruch zum Datenschutzgebiet oder zum Datenschutzobjekt steht. wobei diese Einheit eine Klassifikation der übermittelten Daten vomimmt und diese zur Verfügung stellt.
PCT/EP2022/050787 2021-01-15 2022-01-14 Situationsbewertung mittels objekterkennung in autonomen mobilen robotern WO2022152875A2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102021100775.5 2021-01-15
DE102021100775 2021-01-15

Publications (2)

Publication Number Publication Date
WO2022152875A2 true WO2022152875A2 (de) 2022-07-21
WO2022152875A3 WO2022152875A3 (de) 2022-09-09

Family

ID=80683097

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2022/050787 WO2022152875A2 (de) 2021-01-15 2022-01-14 Situationsbewertung mittels objekterkennung in autonomen mobilen robotern

Country Status (2)

Country Link
DE (1) DE102022100849A1 (de)
WO (1) WO2022152875A2 (de)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9704043B2 (en) * 2014-12-16 2017-07-11 Irobot Corporation Systems and methods for capturing images and annotating the captured images with information
KR102612822B1 (ko) * 2018-07-23 2023-12-11 엘지전자 주식회사 인공지능 이동 로봇의 제어 방법
DE102018121365A1 (de) * 2018-08-31 2020-04-23 RobArt GmbH Exploration eines robotereinsatzgebietes durch einen autonomen mobilen roboter

Also Published As

Publication number Publication date
WO2022152875A3 (de) 2022-09-09
DE102022100849A1 (de) 2022-07-21

Similar Documents

Publication Publication Date Title
EP3814067B1 (de) Exploration eines robotereinsatzgebietes durch einen autonomen mobilen roboter
EP2898382B1 (de) Roboter und verfahren zur autonomen inspektion oder bearbeitung von bodenflächen
CN111657798B (zh) 基于场景信息的清扫机器人控制方法、装置和清扫机器人
DE102017109219A1 (de) Verfahren für die Roboternavigation
CN104769962B (zh) 包括移动机器人的环境管理系统以及其使用方法
EP3417350A1 (de) Verfahren zur steuerung eines autonomen mobilen roboters
CN109195751A (zh) 用于基于区分类的机器人的可配置操作的系统和方法
WO2018024897A1 (de) Verfahren zur steuerung eines autonomen mobilen roboters
WO2019053062A1 (de) Exploration einer unbekannten umgebung durch einen autonomen mobilen roboter
DE102015119501A1 (de) Unterteilung von Karten für die Roboternavigation
WO2018202337A1 (de) Verfahren zur steuerung von reinigungsgeräten
CN111973075B (zh) 基于户型图的地面清扫方法、装置、扫地机和计算机介质
DE102013113426A1 (de) Verfahrbares Reinigungsgerät sowie Verfahren zum Betreiben eines solchen Gerätes
CN108107886B (zh) 扫地机器人的行驶控制方法及装置、扫地机器人
CN111643017B (zh) 基于日程信息的清扫机器人控制方法、装置和清扫机器人
DE102017121127A1 (de) Exploration einer unbekannten Umgebung durch einen autonomen mobilen Roboter
CN109079772A (zh) 机器人及机器人系统
DE102011006062A1 (de) Verfahren zur autonomen Inspektion einer Umgebung oder Bearbeitung von Bodenflächen
CN110928282A (zh) 清扫机器人的控制方法及装置
WO2022152875A2 (de) Situationsbewertung mittels objekterkennung in autonomen mobilen robotern
DE102017113612A1 (de) Autonomes Reinigungssystem und Reinigungsverfahren
DE102020129026A1 (de) Sich selbsttätig fortbewegendes Reinigungsgerät
WO2022012471A1 (zh) 自移动设备的控制方法、装置、存储介质及自移动设备
Hofmann et al. Towards Adaptive Environment Perception and Understanding for Autonomous Mobile Robots
DE102017211165A1 (de) Mobile Einheit, mobiles Endgerät und dazugehöriges Verfahren

Legal Events

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

Ref document number: 22708312

Country of ref document: EP

Kind code of ref document: A2

ENP Entry into the national phase

Ref document number: 2022708312

Country of ref document: EP

Effective date: 20230816