GB2590779A - A mobile robot and method of controlling thereof - Google Patents
A mobile robot and method of controlling thereof Download PDFInfo
- Publication number
- GB2590779A GB2590779A GB2016924.9A GB202016924A GB2590779A GB 2590779 A GB2590779 A GB 2590779A GB 202016924 A GB202016924 A GB 202016924A GB 2590779 A GB2590779 A GB 2590779A
- Authority
- GB
- United Kingdom
- Prior art keywords
- mobile robot
- hazard
- area
- environment
- robot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000005259 measurement Methods 0.000 claims description 16
- 238000004140 cleaning Methods 0.000 abstract description 10
- 230000006399 behavior Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 244000025254 Cannabis sativa Species 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/4011—Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L9/00—Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
- A47L9/28—Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
- A47L9/2836—Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means characterised by the parts which are controlled
- A47L9/2847—Surface treating elements
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0055—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0214—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L2201/00—Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
- A47L2201/04—Automatic control of the travelling movement; Automatic obstacle detection
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0088—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/08—Control of attitude, i.e. control of roll, pitch, or yaw
- G05D1/0891—Control of attitude, i.e. control of roll, pitch, or yaw specially adapted for land vehicles
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Aviation & Aerospace Engineering (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Mechanical Engineering (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
A method of controlling 2 a mobile robot 1 comprises storing an environment map 22 in a memory 5, the environment map including data to enable the robot to navigate the environment; further storing in the memory data 24 corresponding to one or more hazard areas encountered by the mobile robot during previous operations, the data corresponding to one or more hazard areas comprising a probability factor associated with each hazard area. The method further comprises updating the hazard data, reducing the probability factor for a particular hazard area when the mobile robot navigates through the hazard area without encountering a further hazard and reducing a tilt threshold 6 of the robot when the mobile robot is navigating within an area of the environment that corresponds to a previously encountered hazard area having a probability factor above a predetermined threshold. The robot is preferably a cleaning robot.
Description
A Mobile Robot and Method of Controlling Thereof The present invention relates to a method of controlling a mobile robot, and in particular to hazard avoidance.
Mobile robots are becoming increasingly commonplace and are used in such diverse fields as space exploration, telepresence, home assistance, lawn mowing and floor cleaning. Recently there has been a rapid advancement in the field of domestic robots, the primary objective of which is to navigate a user's home autonomously and unobtrusively carrying out operations such as vacuuming and cleaning, whilst requiring as little assistance from a human user as possible and preferably none.
In performing such tasks, mobile robots must be able to autonomously navigate and negotiate obstacles within their environment. In order that the mobile robot is able to carry out all operations expected of it to the highest standard possible, it is also important that the mobile robot is able to navigate through as much of the available space within the environment in which it is located. This is often referred to as coverage. For instance, for a robotic vacuum cleaner floor coverage is important to ensure a maximum amount of the floor surface is cleaned autonomously.
In order to maximise coverage, it is desirable to increase the manoeuvrability of the mobile robot over small obstacles. For example, if there is a slight difference in height of a floor surface at a transition from a hard floor surface to a carpet or rug, it is beneficial that the mobile robot is able to manoeuvre over this transition in order that both areas of floor surface can be cleaned. However, in increasing the manoeuvrability of a mobile robot over obstacles, this also increases the possibility that the mobile robot can encounter problems such as getting stuck on an obstacle when attempting to climb over it, or navigating into an area from which the mobile robot is not able to escape. These types of problem events can be considered hazards to the mobile robot. These kinds of hazards can be particularly frustrating to users and owners of mobile robots as it requires human intervention in order to recover the mobile robot before it is able to continue.
Accordingly, improvements to mobile robots are required that help to maximise mobile robot coverage, while minimising the risk of the mobile robot experiencing hazards as it navigates an environment.
This invention provides a method of controlling a mobile robot capable of carrying out an operation within an environment, the method comprising: storing an environment map in a memory, the environment map including data to enable the robot to navigate the environment; further storing in the memory data corresponding to one or more hazard areas encountered by the mobile robot during previous operations, the data corresponding to one or more hazard areas comprising a probability factor associated with each hazard area. The method further comprises reducing the probability factor for a particular hazard area when the mobile robot navigates through the particular hazard area without encountering a further hazard; and reducing a tilt threshold of the robot when the mobile robot is navigating within an area of the environment that corresponds to a previously encountered hazard area having a probability factor above a predetermined threshold.
As a result, the mobile robot will be controlled in a way such that it continues to push its manoeuvring capabilities and therefore the coverage of the mobile robot will be maximised. However in areas where the mobile robot has experienced hazards previously, the mobile robot will behave more cautiously by reducing the tilt-threshold, and will reduce the likelihood that it experiences the hazard again. Crucially, the reduced tilt threshold will only be applied in areas of the environment map where the mobile robot determines it could be at risk, and therefore coverage can be maximised whilst also reducing the risk of the mobile robot experiencing hazards. As a further result, if hazards are removed from an environment, for example by the removal of furniture, then the probability factor of the corresponding hazard areas can be reduced over time. This means that the mobile robot does not have to continue to behave cautiously in an area where the hazard has been removed. This in turn can help to improve coverage of the mobile robot.
The method may further comprise measuring a current tilt of the mobile robot when carrying out an operation within the environment; determining that the mobile robot is experiencing a hazard if the current tilt exceeds a tilt threshold.
The data corresponding to one or more hazard areas may be location data. The data corresponding to one or more hazard areas may be stored as a layer on top of the environment map. As a result, the location of hazard areas can be more easily mapped within the environment map, and without requiring a second full map for hazard areas.
This may reduce the amount of data needed to be stored, and may also reduce the amount of processing required from the control system on the mobile robot.
A hazard area may be an area in which the mobile robot has experienced a hazard event. A hazard event may comprise the mobile robot becoming stuck, or a hazard event may comprise the mobile robot experiencing an over-tilt threshold event. As a result, the mobile robot will reduce the tilt-threshold in areas where it has become stuck or over-tilted previously, and will navigate these areas more cautiously when navigating these areas in operations.
The memory may be on-board memory on the robot. As a result, the mobile robot is able to navigate the environment, and continue to be controlled in the advantageous ways described above even if it loses a connection to a network, for example if the mobile robot navigates into an area of the environment in which a wireless network does not extend.
A hazard area may be an area of predetermined size the centre of which is a location where a hazard was encountered. As a result, the mobile robot will adjust its behaviour to be more cautious in an area surrounding the hazard. This allows for there to be some margin for error in the robot's localisation, or for slight movement of problem obstacles within the environment. For example a bar stool with a curved base which causes the mobile robot difficulty may not be replaced in the exact same position after every time it is used.
The area of predetermined size may be a circle with a radius of between 0.1m and 0.5m. This size area has been found to be particularly beneficial in balancing extending coverage and reducing the risk of the mobile robot experiencing hazards.
The method may further comprise updating the data corresponding to one or more hazard areas when a new hazard is encountered by the mobile robot during an operation. As a result, new hazards within an environment, for example those that are created by the introduction of new obstacles into the environment can be taken into consideration for future operations.
The method may comprise measuring the tilt of the mobile robot while it carries out an operation in an environment using one or more of the list comprising a gryo, an IMU and an accelerometer. As a result, the on board components are able to instantly provide an accurate tilt measurement to the control system of the mobile robot, and this can help the mobile robot quickly identify when it may have encountered a hazard to allow it the best opportunity to resolve the problem itself without requiring intervention from a human.
This invention further provides a mobile robot capable of carrying out an operation within an environment, the mobile robot comprising: storage in memory for storing an environment map; storage in memory for storing data corresponding to one or more hazard areas encountered by the mobile robot during previous operations, the data corresponding to one or more hazard areas comprising a probability factor associated with each hazard area; a control system for controlling the mobile robot while carrying out an operation within the environment. The control system is configured to reduce the probability factor for a particular hazard area when the mobile robot navigates through the particular hazard area without encountering a further hazard, and is configured to use a first tilt threshold in controlling the mobile robot in a normal operation mode, and is configured to use a second tilt threshold in controlling the mobile robot in a cautious operation mode when the mobile robot is navigating within an area of the environment that corresponds to a previously encountered hazard area having a probability factor above a predetermined threshold.
As a result, the manoeuvring capabilities of the mobile robot can be pushed where possible, and the coverage of the mobile robot will be maximised. However in areas where the mobile robot has experienced hazards previously, the mobile robot will behave more cautiously by reducing the tilt-threshold, and will reduce the likelihood that it experiences the hazard again. Crucially, the reduced tilt threshold will only be applied in areas of the environment map where the mobile robot determines it could be at risk, and therefore coverage can be maximised whilst also reducing the risk of the mobile robot experiencing hazards. As a further result, if hazards are removed from an environment, for example by the removal of furniture, then the probability factor of the corresponding hazard areas can be reduced over time. This means that the mobile robot does not have to continue to behave cautiously in an area where the hazard has been removed. This in turn can help to improve coverage of the mobile robot.
The control system may be configured to obtain a measurement of a current tilt of the mobile robot when carrying out an operation within the environment and to determine that the mobile robot is experiencing a hazard if the current tilt exceeds a tilt threshold.
The second tilt threshold may be less than the first tilt threshold. As a result, the mobile robot will be able to react more quickly to events where the tilt of the robot changes.
This in turn can allow it to behave more cautiously in areas where it has experienced hazards during previous operations within the environment.
The data corresponding to hazard areas may be stored as a layer on top of the environment map. As a result, a separate map for hazard areas is not required, and this may reduce the amount of data needed to be stored, and may also reduce the amount of processing required to be carried out by the mobile robot.
The control system may be configured to update the data corresponding to hazard areas when a new hazard is encountered by the mobile robot as it carries out an operation in the environment. As a result, the mobile robot will then be able to behave cautiously around the new hazard the next time it performs n operation in the environment. New hazards could be, for example, those that are created by the introduction of new obstacles into the environment, can be taken into consideration for future operations.
The mobile robot may comprise one or more of a gryo, an IMU and an accelerometer to provide a tilt measurement corresponding to the current tilt of the robot to the control system. As a result, the on board components of the mobile robot are able to instantly provide an accurate tilt measurement to the control system of the mobile robot, and this can help the mobile robot quickly identify when it may have encountered a hazard to allow it the best opportunity to resolve the problem itself without requiring intervention from a human.
In order that the present invention may be more readily understood, embodiments of the invention will now be described, by way of example, with reference to the following accompanying drawings, in which: Figure 1 is a schematic representation of a mobile robot; Figure 2 is a schematic representation of the memory of the mobile robot of Figure 1; Figure 3 is a schematic representation of a floor cleaning system; Figure 4 is a schematic representation of a drive system; Figure 5 is a robot vacuum cleaner; Figure 6 is representation of a hazard area; Figure 7A shows the path of a mobile robot through the hazard area of Figure 6; Figure 7B is a graph showing the tilt threshold being used by the mobile robot while it travels along the path shown in Figure 7A; Figure 8 shows an environment map; and Figure 9 shows the environment map of Figure 8 and a map layer showing known hazard areas within the environment.
The mobile robot 1 schematically illustrated in Figure 1 has a control system 2, a task execution system 3, a drive system 4, memory 5, and a tilt measurement module 6. The control system 2 comprises a processor 20 and a navigation unit 21.
The task execution system 3 is the system provided to the mobile robot for carrying out tasks or operations assigned to the mobile robot. For example, the mobile robot 1 may be a robotic lawn mower in which instance the task execution system 3 could be a grass cutting and/or collection system. In a further example, the mobile robot 1 may be a robotic floor cleaner, and the task execution system 3 would be floor cleaning system. A schematic representation of such a floor cleaning system 30 is shown in Figure 3. The floor cleaning system 30 comprises a cleaner head 32, a separation system 33 and a vacuum motor 34. These features of the floor cleaning system are ordinary features of a floor cleaning system, and no further explanation of these systems will be provided here. Other examples of task execution systems will be apparent.
The navigation unit 21 together with the drive system 4 enable the mobile robot to manoeuvre and navigate around an environment in which it must carry out an operation. A schematic representation of a drive system is provided in Figure 4. The drive system 4 is provided with a drive actuator 40 and a number of navigation sensors 42A-E. The drive actuator 40 may be, for example, driven wheels or tank tracks, and is able to provide odometry measurements to the control system 2 of the mobile robot 1. These odometry measurements can be used by the control system 2, and in particular the navigation unit 21 to estimate the distance and path travelled by the mobile robot 1.
The navigation sensors 42A-E are sensors that are able to provide information to the control system 2 about the environment around the mobile robot 1. For example navigation sensor 42A may be a vision camera, and navigation sensors 42B and 42C may be proximity sensors such as Time of Flight (TOF) sensors, and navigation sensors 42D and 42E may be drop sensors or cliff sensors. Other navigation sensors could be used in addition or as an alternative to these sensors. For example, the mobile robot 1 may comprise a laser range finder. In alternative embodiments, the navigation sensors 42A-E may form part of the navigation unit 21 of the mobile robot 1. The mobile robot 1 will typically use a number of different types of navigation sensor in order to be able to autonomously navigate an environment more successfully. The navigation sensors 42A-E provide information to the control system 2 about the environment around the robot 1 that enables the control system 2 to build up a map of the environment that can be used by the mobile robot 1 to navigate. This environment map can be stored in the memory 5 of the mobile robot 1. Figure 2 shows a representation of the memory 5 of mobile robot 1. The memory 5 is shown containing the environment map 22. Hazard area data 24 is also stored in memory 20. The hazard area data is data corresponding to areas within the environment map which contain hazards that the mobile robot has come across during previous operation within the environment. Hazards may be, for example where the robot has become stuck on an obstacle, or has experienced an over-tilt threshold event.
The mobile robot 1 has a tilt measurement module. This module provides a measurement of the current tilt of the mobile robot 1 to the control system 2. The control system 2 can often determine if the robot is experiencing a hazard or problem if the tilt of the robot changes significantly. For example, if the mobile robot 1 attempts to climb over an obstacle on which it may become stuck, then the tilt measurement module will record the change in tilt of the mobile robot 1 as it starts to manoeuvre over it. Tilt measurements can be provided by one or more of a number of components within the tilt measurement module. These components may be one or more of a gyrometer or gyroscope (gyro), an inertial measurement unit (IMU), and an accelerometer. A tilt threshold can be set such that if the mobile robot's pose changes such that the tilt of the mobile robot exceeds the tilt threshold, then actions can be taken to avoid the hazard from causing an error that the robot is unable to resolve by itself. By monitoring the tilt of the robot, the control system can react to hazard events, and can act to avoid the hazard from occurring in a way that requires human intervention to resolve the problem. For example, on determining that the tilt threshold has been exceeded, the control system 2 may control the drive system to stop and reverse such that the mobile robot 1 does not continue further into the hazard.
The hazard area data 24 is location data that allows the navigation unit 21 in the control system 2 to determine where within the environment map 22 the hazard areas are, and also if the mobile robot 1 enters a hazard area. The control system can then be configured to adjust the behaviour of the robot to avoid experiencing the hazard again. It could be possible to avoid the area altogether, however this would have a negative impact on the coverage of the robot. Instead, the robot's behaviour can be adjusted by reducing the tilt threshold of the mobile robot 1 while it is within a hazard area. This effectively causes the mobile robot 1 to behave more cautiously. Therefore, adopting a lower tilt threshold can be considered to be running the mobile robot in a cautious operation mode. This will be explained in more detail later in respect to Figure 7B.
Figure 5 shows an example of a mobile robot. The mobile robot is a robotic vacuum cleaner 50 and has a floor cleaning system comprising a cyclonic separating system 52 and a cleaner head 54. A vacuum motor (not shown) provided inside the main body of the robot vacuum cleaner 50 draws dirty air in from the cleaner head 54, through the cyclonic separator 52 where the dirt particles are removed from the airflow, and then expels the clean air through a vent (not shown) in the back of the robot. The robot vacuum cleaner 50 has drive actuators in the form of tank tracks 56 which can be driven to move the robotic vacuum cleaner 50 around an environment in which it is located. The robot vacuum cleaner 50 has a navigation sensor comprising a fish-eye lens camera 58 which is able to capture images of the area around the robot vacuum cleaner 50. The robot's control system uses Simultaneous Localisation and Mapping (SLAM) techniques on the images captured by the camera 58 in order to build a map of the environment and to identify the position of the robot within that map. The SLAM techniques carried out by the control system also use odometry measurements provided from the driven tank tracks, and also information provided from other sensors, such as proximity sensors, located in the sensor housings 59 positioned either side of the cyclonic separator 52.
Figure 6 shows a representation of a hazard area 60. At the centre of the hazard area 60 is a point marked with a cross referenced 62. This point is the exact location where a mobile robot has experienced a hazard. Experiencing a hazard can be, for example encountering an error caused by an obstacle or similar located within the environment.
For example, the error may be that the mobile robot has manoeuvred itself onto an obstacle in such a way that its drive actuators a no longer able to make effective contact with the floor surface. This could be referred to a being "beached" on the obstacle. Such an error will require human intervention in order to resolve the error, and allow the robot to continue with the operation. However experiencing a hazard may not necessarily give rise to an error in this way, and may be that the robot detects that it is finding itself in a situation which causes it difficulty in resuming the operation normally. For example, if the robot experiences an over-tilt threshold event, this can be an indication that there is a situation that is likely to cause an error even if the robot does not actually experience the error. It would therefore be prudent for the mobile robot to be more cautious wen navigating in this area of the environment in future.
The hazard area 60 shown in Figure 6 is determined by marking a circular area with a predetermined radius R, the centre of which is the exact location where the mobile robot experienced the hazard. In the embodiment shown in Figure 6, the hazard area is a circle of predetermined radius. However, it will be appreciated that alternative shapes may be adopted. A radius of between 0.1m and 0.5m for the hazard area has been found to be particularly beneficial to allow the robot to behave cautiously in the desired area of the map and to allow for slight tolerances and errors in the navigation system of the mobile robot. The example described above is an embodiment where the radius of the hazard area is a fixed predetermined radius. However, it will also be appreciated that the size of the hazard area may not be fixed, and may be dependent on other factors.
Figure 7A shows a mobile robot 50 travelling on a path 70 which passes through the hazard area 60. Figure 7B shows a graph indicating the tilt threshold that is being adopted by the control system of the mobile robot as it travels along the travel path 70. The mobile robot 50 enters the hazard area 60 at the point marked S. The dotted and dashed lines extending between Figures 7A and 7B indicate corresponding points between the travel path 70 of Figure 7A and the graph of Figure 7B. Prior to point S, the control system of the mobile robot 50 is controlled by its control system in a normal operation mode using a first tilt threshold Ti while controlling the mobile robot 50. Once the mobile robot 50 enters the hazard area at point S, the control system of the mobile robot 50 adopts a lower tilt threshold T2. This lower tilt threshold T2 is used while the robot is navigating through the hazard area 60. By adopting the lower tilt threshold T2, this means that the mobile robot 50 adopts a cautious operation mode in which it will react quicker to when the robot is experiencing a hazard, and the likelihood of the hazard causing an error is greatly reduced. When the mobile robot 50 reaches the other boundary of the hazard area 60 at the point marked T, the tilt threshold returns back to the higher threshold Ti, and the mobile robot 50 returns to a normal operation mode.
As already described earlier, the mobile robot generates and stores an environment map in its memory. The mobile robot is able to triangulate its position within the environment map, and is therefore able to use the map to help it navigate around the environment. Figure 8 shows an example of an environment map 80. A number of separate areas 82, 84, 86, 88 are shown in the environment map 80 and may represent, for example rooms within a house. The environment map 80 shown in Figure 8 is a simplistic representation. However, it will be appreciated that the environment map 80 may include data pertaining to other aspects of the environment, for example the location of furniture, the location of doorways, information on the floor surface type etc. Figure 9 show the environment map 80 of Figure 8, but with an additional map layer applied overlaying the map which shows the location of the hazard areas found within the environment. These hazard areas are represented as the dotted circles labelled H1-H6. The nature of the hazard is not obvious from the environment map view.
However, further data may be stored which allows the mobile robot to determine the type of hazard. This could, for example be stored in a look-up table or similar, or could be stored as metadata associated with the hazard area data stored in the memory of the robot. Room 82 has one hazard area H1 which is located in the corner of the room, room 84 has one hazard area H2, room 86 has no hazard areas associated with it, and room 88 has four hazard areas H3, H4, H5, H6 associated with it. Hazard areas H3, H4, H5 and H6 are shown overlapping, and may correspond, for example, to a set of chairs that cause the mobile robot difficulty when navigating around their chair legs or bases.
The hazard area data is overlaid as a map layer in Figure 9. However, the hazard area data may be stored in other ways such as in a look-up table as shown in Table 1 below.
Hazard Area Location Data Probability Factor H1 [LOC1] 80% H2 [LOC2] 40% H3 [LOC3] 100% H4 [LOC4] 100% H5 [L005] 100% H6 [LOC6] 100%
Table 1
In Table 1, each of the hazard areas of Figure 9 are shown as an entry in the table, with each hazard area entry having corresponding location data, represented by [LOC1]-[LOC6], which enables the mobile robot to determine when the mobile robot is navigating through a hazard area.
Also shown in Table 1 is a probability factor associated with each hazard area. This probability factor enables hazard areas to be effectively removed from the hazard area data if the corresponding hazards are removed from the environment. It will be understood that there are a number of ways in which this can be achieved, one of which will now be described. Each hazard as it is identified by the mobile robot as it navigates an environment is assigned a hazard area as previously described. A probability factor is also associated with each new hazard area, and for newly identified hazard areas this probability factor is set to 100%. When the mobile robot is next navigating in the area, if it passes through a known hazard area without experiencing the hazard again, then the corresponding probability factor for the hazard area is reduced by a predetermined amount, for example 5%. In one embodiment, once the probability factor of a hazard area drops below a threshold level, for example 10%, then the hazard area is deleted from the hazard area data. Alternatively, it may be desirable to maintain historical data, and rather than delete the data, the control system of the mobile robot may be configured to ignore any hazard areas that have a corresponding probability factor below a certain level. The tilt thresholds adopted by the mobile robot within each hazard area may also be relative to the probability factor associated with each hazard area.
This allows for dynamic hazard area data, and also a dynamic hazard area map which can update over time. It will be appreciated that the parameters detailed above can be adjusted to change how dynamic the data is, and how quickly it can be changed.
Whilst particular examples and embodiments have thus far been described, it will be understood that various modifications, some of which are already described above, may be made without departing from the scope of the invention as defined by the claims.
Claims (18)
- CLAIMS1 A method of controlling a mobile robot capable of carrying out an operation within an environment, the method comprising: storing an environment map in a memory, the environment map including data to enable the robot to navigate the environment; further storing in the memory data corresponding to one or more hazard areas encountered by the mobile robot during previous operations, the data corresponding to one or more hazard areas comprising a probability factor associated with each hazard area; reducing the probability factor for a particular hazard area when the mobile robot navigates through the particular hazard area without encountering a further hazard; and reducing a tilt threshold of the robot when the mobile robot is navigating within an area of the environment that corresponds to a previously encountered hazard area having a probability factor above a predetermined threshold.
- 2 A method of controlling a mobile robot as claimed in claim 1, and further comprising: measuring a current tilt of the mobile robot when carrying out an operation within the environment; and determining that the mobile robot is experiencing a hazard if the current tilt exceeds a tilt threshold.
- 3. A method of controlling a mobile robot as claimed in any one of the preceding claims, wherein the data corresponding to one or more hazard areas comprises location data.
- 4. A method of controlling a mobile robot as claimed in any one of the preceding claims, wherein the data corresponding to one or more hazard areas is stored as a layer on top of the environment map.'
- 5. A method of controlling a mobile robot as claimed in any one of the preceding claims, wherein a hazard area is an area in which the mobile robot has experienced a hazard event.
- 6. A method of controlling a mobile robot as claimed in claim 5, wherein a hazard event comprises the mobile robot becoming stuck.
- 7. A method of controlling a mobile robot as claimed in claim 5, wherein a hazard event comprises the mobile robot experiencing an over-tilt threshold event.
- 8. A method of controlling a mobile robot as claimed in any one of the preceding claims, wherein the memory is on-board memory on the robot.
- 9. A method of controlling a mobile robot as claimed in any one of the preceding claims, wherein a hazard area is an area of predetermined size the centre of which is a location where a hazard was encountered.
- 10. A method of controlling a mobile robot as claimed in claim 9, wherein the area of predetermined size is a circle with a radius of between 0.1m and 0.5m.
- 11. A method of controlling a mobile robot as claimed in any one of the preceding claims, wherein the method further comprises updating the data corresponding to one or more hazard areas when a new hazard is encountered by the mobile robot during an operation.
- 12. A method of controlling a mobile robot as claimed in any one of the preceding claims, wherein the method comprises measuring the tilt of the mobile robot while it carries out an operation in an environment using one or more of the list comprising a gryo, an IMU and an accelerometer.
- 13. A mobile robot capable of carrying out an operation within an environment, the mobile robot comprising: storage in memory for storing an environment map; storage in memory for storing data corresponding to one or more hazard areas encountered by the mobile robot during previous operations, the data corresponding to one or more hazard areas comprising a probability factor associated with each hazard area; and a control system for controlling the mobile robot while carrying out an operation within the environment, wherein the control system is configured to reduce the probability factor for a particular hazard area when the mobile robot navigates through the particular hazard area without encountering a further hazard; and wherein the control system is configured to use a first tilt threshold when controlling the mobile robot in a normal operation mode, and is configured to use a second tilt threshold when controlling the mobile robot in a cautious operation mode when the mobile robot is navigating within an area of the environment that corresponds to a previously encountered hazard area having a probability factor above a predetermined threshold.
- 14. A mobile robot as claimed in claim 13, wherein the control system is configured to obtain a measurement of a current tilt of the mobile robot when carrying out an operation within the environment and to determine that the mobile robot is experiencing a hazard if the current tilt exceeds a tilt threshold.
- 15. A mobile robot as claimed in any one of claims 13 or 14, wherein the second tilt threshold is less than the first tilt threshold. 25
- 16. A mobile robot as claimed in any one of claims 13 to 15, wherein the data corresponding to hazard areas is stored as a layer on top of the environment map.
- 17. A mobile robot as claimed in any one of claims 13 to 16, wherein the control system is configured to update the data corresponding to hazard areas when a new hazard is encountered by the mobile robot as it carries out an operation in the environment.
- 18. A mobile robot as claimed in any one of claims 13 to 17, wherein the mobile robot comprises one or more of a gryo, an IMU and an accelerometer to provide a tilt measurement corresponding to the current tilt of the robot to the control system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB2016924.9A GB2590779B (en) | 2018-08-06 | 2018-08-06 | A mobile robot and method of controlling thereof |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB2016924.9A GB2590779B (en) | 2018-08-06 | 2018-08-06 | A mobile robot and method of controlling thereof |
GB1812785.2A GB2576494B (en) | 2018-08-06 | 2018-08-06 | A mobile robot and method of controlling thereof |
Publications (3)
Publication Number | Publication Date |
---|---|
GB202016924D0 GB202016924D0 (en) | 2020-12-09 |
GB2590779A true GB2590779A (en) | 2021-07-07 |
GB2590779B GB2590779B (en) | 2022-03-23 |
Family
ID=73727290
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB2016924.9A Active GB2590779B (en) | 2018-08-06 | 2018-08-06 | A mobile robot and method of controlling thereof |
Country Status (1)
Country | Link |
---|---|
GB (1) | GB2590779B (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110208745A1 (en) * | 2005-12-01 | 2011-08-25 | Adept Technology, Inc. | Mobile autonomous updating of gis maps |
US20160353959A1 (en) * | 2013-12-19 | 2016-12-08 | Aktiebolaget Electrolux | Sensing climb of obstacle of a robotic cleaning device |
JP2018017826A (en) * | 2016-07-26 | 2018-02-01 | 株式会社豊田中央研究所 | Autonomous moving body and environment map update device |
KR20180085589A (en) * | 2017-01-19 | 2018-07-27 | 엘지전자 주식회사 | Robot cleaner and method for controlling the saem |
-
2018
- 2018-08-06 GB GB2016924.9A patent/GB2590779B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110208745A1 (en) * | 2005-12-01 | 2011-08-25 | Adept Technology, Inc. | Mobile autonomous updating of gis maps |
US20160353959A1 (en) * | 2013-12-19 | 2016-12-08 | Aktiebolaget Electrolux | Sensing climb of obstacle of a robotic cleaning device |
JP2018017826A (en) * | 2016-07-26 | 2018-02-01 | 株式会社豊田中央研究所 | Autonomous moving body and environment map update device |
KR20180085589A (en) * | 2017-01-19 | 2018-07-27 | 엘지전자 주식회사 | Robot cleaner and method for controlling the saem |
Also Published As
Publication number | Publication date |
---|---|
GB2590779B (en) | 2022-03-23 |
GB202016924D0 (en) | 2020-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11960304B2 (en) | Localization and mapping using physical features | |
US11583153B2 (en) | Method of controlling a mobile robot | |
EP3833235B1 (en) | A mobile robot and method of controlling thereof | |
US11402850B2 (en) | Robotic cleaning device with operating speed variation based on environment | |
US11829147B2 (en) | Path planning | |
US20140190518A1 (en) | Methods and systems for movement of an automatic cleaning device using video signal | |
US11662743B2 (en) | Robot localization and mapping accommodating non-unique landmarks | |
GB2590779A (en) | A mobile robot and method of controlling thereof | |
JP2024503269A (en) | Mobile robot docking verification | |
EP2325713A2 (en) | Methods and systems for movement of robotic device using video signal |