Pursuant to 35 U.S.C. §119(a), this application claims the benefit of earlier filing date and right of priority to Korean Application No. 10-2009-0112871, filed in Korea on Nov. 20, 2009, the content of which is incorporated by reference herein in its entirety.
1. Field
The present invention relates to a robot cleaner, and a controlling method of the same.
2. Background
Generally, robots have been developed for use in industrial applications, in factory automation, and have been adapted for use in various fields, such as medical robots, space robots, home robots, and other such applications.
The embodiments will be described in detail with reference to the following drawings in which like reference numerals refer to like elements wherein:
A home robot may be a kind of home electronic appliance capable of performing a cleaning operation, such as, for example, vacuuming, while autonomously moving on a predetermined region. Such a robot cleaner may have a chargeable battery and an obstacle sensor for avoiding obstacles while moving.
In order for the robot cleaner to clean all regions while autonomously moving, a cleaning map may be made, and a cleaning region on the cleaning map may be categorized into regions to be cleaned or regions having already been cleaned. This determination may be performed by a precise position recognition operation carried out by the robot cleaner.
The robot cleaner may be operated using numerous different methods. For example, when operating under a random method, the robot cleaner may easily avoid obstacles and may move arbitrary distances in arbitrary directions to accomplish cleaning of a given region. However, if the region to be cleaned is relatively large, a corresponding cleaning coverage ratio using the random method may be relatively low, and it may take a relatively long time to finish cleaning. The cleaning coverage ratio may represent, for example, a rate, or a proportion, of a cleaned area or range to an overall area or range to be cleaned.
When operating under a spiral method, the robot cleaner may move in an increasing rotation radius by continuously rotating in a predetermined direction from a starting point. This may enhance the cleaning coverage ratio compared to that of the random method, and may more easily clean a specific region. However, the spiral method may not be as effective in cleaning a room having a quadrangular shape, and thus cleaning performance may be affected.
When operating under a zigzag method, the robot cleaner may run along straight lines in a repetitive manner, along a long path and a short path, allowing the robot cleaner to more easily clean a room having a quadrangular shape, and provide a relatively high cleaning coverage ratio compared to that of the random and spiral methods. However, in the zigzag method, cleaning performance may be degraded based on, for example, the presence of obstacles. Thus, in all three moving methods of the robot cleaner, cleaning performance and cleaning efficiency may be degraded based on an environment in which the robot cleaner is to operate.
The robot cleaner may be equipped with a distance sensor to detect its peripheral environment, such as, for example, confines of the space to be cleaned and/or obstacles therein, to set coordinate values with respect to the space to be cleaned based on detected information, and/or to divide the space into a plurality of sectors and then to perform a cleaning operation. This may provide enhanced cleaning performance with respect to a closed space. However, when cleaning an entire region inside a house, the robot cleaner may still have lowered cleaning performance or cleaning efficiency due to, for example, differences in the spaces to be cleaned and other elements of its peripheral environment.
Furthermore, depending on the quality and capability of the position recognition sensor, position recognition error may accumulate/become larger over time, thus lowering cleaning performance and cleaning efficiency when a cleaning region is relatively large.
As shown in
A power supply 400 may include a chargeable power supply means to supply power to the robot cleaner, and a driver 500 may drive one or more wheels to move the robot cleaner. The position recognition device 110 may include one or more distance sensors to recognize a position of the robot cleaner within a cleaning region, and the controller 200 may compensate for the position by calculating a moving path, and may perform a cleaning operation by setting sectors for movement within the cleaning region. The power supply 400 may supply power required for the robot cleaner to move and perform a cleaning operation. If an amount of battery power provided in the power supply 400 is insufficient, a current may be supplied from, for example, a charging plate or other appropriate source. The driver 500 may drive a wheel motor for rotating a plurality of main wheels and one or more supplementary wheels, thereby moving the robot cleaner.
The controller 200 may include a moving path calculation module 210 configured to extract moving points collected during a predetermined period, and to calculate the moving path by connecting the moving points to each other. The controller 200 may also include a moving path gradient calculation module 220 configured to calculate a gradient of an initial moving path by connecting a predetermined number of moving points to each other, and to calculate a gradient change of the moving path based on a position of a next moving point and the gradient of the initial moving path. The controller 200 may also include a moving angle compensation module 230 configured to compensate for a moving angle of the robot cleaner based on changes of the gradient of the moving path. The controller 200 extracts moving points collected during the predetermined period, and calculates the moving path based on the moving points. The controller 200 then calculates a gradient of an initial moving path by connecting the predetermined number of moving points to each other, and calculates a gradient change of the moving path based on a position of a next moving point and the gradient of the initial moving path.
Hereinafter, an operation to compensate for a moving angle of the robot cleaner will be explained with reference to
If a currently calculated moving path is determined to be disposed on essentially the same line as a moving path calculated from a previous sector, the controller 200 compensates for the currently calculated moving path into the moving path of a previous sector. Then, the controller 200 utilizes this compensated moving path as a reference angle for compensating for a moving angle of a next sector.
For example, when the robot cleaner encounters an obstacle, the robot cleaner senses or detects the obstacle, and a position of the robot cleaner at the point where the robot cleaner senses or detects the obstacle becomes a moving point. As the robot cleaner moves along its initial moving path, whenever the robot cleaner collects new moving point, the last moving point (or central point) of the initial moving path along which it is moving, is connected to the newly collected moving point to define a new line. The slope of the newly defined line is compared to the slope of the initial moving path, and an angle error is calculated. Using the calculated angle error, the robot cleaner compensates for the angle error, and determines new moving path.
Referring back to
An operation for setting a sector will be explained with reference to
An operation for determining a type of a sector will be explained with reference to
As shown in
After determining a sector type, as shown in
The controller 200 determines a sector type, and sets a sector reference point, thereby dividing the cleaning region into a plurality of sectors. As shown in
The robot cleaner then determines whether the cleaning operation has been completed. As shown in
The position recognition device 110 may include one or more distance sensors that recognize a position of the robot cleaner within the cleaning region. The position recognition device 110 may be at least one of an acceleration sensor for recognizing a speed and a position, an encoder for detecting a speed by being connected to a wheel motor which drives wheels of the robot cleaner, a gyro sensor for detecting a rotation speed of the robot cleaner, or other type of device as appropriate.
In the exemplary distance sensor shown in
The controller 200 determines a sector type, and sets a sector reference point and a sector size. The controller 200 sets the sector size based on an initial sector size, and an overlapping margin with a neighboring sector.
The robot cleaner as embodied and broadly described herein may also include an obstacle detection device 120 configured to detect a nearby obstacle so that the controller 200 may determine a sector type according to an initial sector size and a detected obstacle.
An operation in which a robot cleaner as embodied and broadly described herein searches for a wall surface will be explained with reference to
The robot cleaner including the obstacle detection device 120 may also be configured to detect an obstacle within the cleaning region, and the storage device 300 may be configured to store therein at least one of obstacle information, position information and sector information. The robot cleaner as embodied and broadly described herein may also include an output device 700 configured to output at least one of the obstacle information, the position information and the sector information, and an input device 600 having one or more buttons and configured to directly receive a control command.
The controller 200 extracts a predetermined number of moving points collected within a predetermined period, and calculates the moving path based on the moving points. The controller 200 calculates a gradient of an initial moving path by connecting the predetermined number of moving points to each other, and calculates a gradient change of the moving path based on a position of a next moving point and the gradient of the initial moving path.
A user may directly input a control command to the robot cleaner through the input device 600. Alternatively, the user may input a command indicating output of information stored in the storage device 300, such as information on an obstacle position or information on a cleaning region, or information detected by the obstacle detection device 110, or information recognized by the position recognition device 120. The input device 600 may include at least one of an OK button, a set button for inputting a command to be set, a reset button for inputting a command to be reset, a deletion button, a cleaning start button and a stop button. The OK button may be used to input a command for checking position information such as an obstacle position or a robot cleaner position, a cleaning region, a plurality of sectors, or a cleaning map.
The obstacle detection device 120 detects an obstacle near the robot cleaner while moving within a cleaning region, or while performing a cleaning operation. The obstacle detection device 120, may be, for example, an infra-RED sensor, a supersonic wave sensor, a radio frequency (RF) sensor, a bumper, and the like.
The storage device 300 stores therein obstacle-related information such as a position of an obstacle detected by the obstacle detection device 120 while the robot cleaner moves. The storage device 300 may be a non-volatile memory (NVM, NVRAM) for maintaining information stored therein even if power is not supplied thereto, and may include a ROM, a flash memory, a magnetic computer memory (e.g., a hard disc, a disc drive, a magnetic tape), an optical disc drive, and the like. Also, the non-volatile memory may include a magnetic RAM, a PRAM, etc. as well as a punch card and a paper tape. The storage device 300 may also store therein records related to movement of the robot cleaner within the cleaning region the cleaning region, and the plurality of sectors.
The output device 700 outputs information stored in the storage device 300, such as information on an obstacle or information on a cleaning region, information detected by the obstacle detection device 110, information recognized by the position recognition device 120, position information compensated through the controller 200, etc. The output device 700 may also display information indicating a current state of each component of the robot cleaner, a current cleaning state, and other such information. The output device 700 may be, for example, a Light Emitting Diode (LED), a Liquid Crystal Display (LCD), a Plasma Display Panel (PDP), an Organic Light Emitting Diode (OLED) or the like. The input device 600 and the output device 700 may be implemented in the form of, for example, a touch screen for input and output.
The robot cleaner may also include a cleaning device equipped with a suction motor configured to suck air therein, and a dust collection means, thereby sucking dust/foreign materials into the cleaner for collection.
Referring to
The wall surface search step (S100) may include detecting an obstacle within the cleaning region, and determining that the detected obstacle is a wall surface if the robot cleaner can move straight along the detected obstacle more than a predetermined distance.
The wall surface search step (S100) will be explained with reference to
Referring to
The moving angle compensation step (S110) will be explained with reference to
Referring back to
In the sector type determination step (S220), a sector type may be determined by forming a closed section by changing a moving direction while the robot cleaner moves along the wall surface, based on a maximum value of the initial size or the detected obstacle.
The sector type determination step (S220) will be explained with reference to
As shown in
In the sector reference point setting step (S230), a reference point of an initial sector is set by searching for the wall surface, and a reference point of a next sector is set according to a change in sector type, the reference point of the next sector including a position and a moving direction of the robot cleaner.
The sector reference point setting step (S230) will be explained with reference to
The sector cleaning step (S300) will be explained with reference to
In certain embodiments, the method of controlling a robot cleaner as embodied and broadly described herein may also include storing information on at least one of a position of a detected obstacle, a position of the robot cleaner, and a cleaning region including the plurality of sectors.
The method of controlling a robot cleaner may also include a cleaning completion determination step (S400).
As aforementioned, in a robot cleaner and associated control method as embodied and broadly described herein, once the robot cleaner is disposed on a cleaning region, the robot cleaner searches for a wall surface. While moving along the wall surface, the robot cleaner generates sectors having a predetermined size, and determines types of the sectors based on peripheral conditions. Then, the robot cleaner performs a cleaning operation in a zigzag pattern manner by dividing the generated sector into sub-sectors, and sequentially moves from one sector to the next to perform cleaning. More specifically, after cleaning a sector, the robot cleaner approaches the wall surface again, and sets a next sector to be cleaned moving along the wall surface, thereby performing a cleaning operation. A gradient of each moving path of the robot cleaner may be stored while the robot cleaner moves along the wall surface and the respective gradients of the robot cleaner may be compared with each other to reposition of the robot cleaner as appropriate. This may prevent increases in position error as the robot cleaner cleans the entire cleaning region.
As aforementioned, in a robot cleaner and associated control method as embodied and broadly described herein, when performing a cleaning operation in a relatively large space, such as, for example, an entire house, the robot cleaner may automatically compensate for a moving angle and a position using an appropriate sensor and a control algorithm. Accordingly, position error may be reduced, a cleaning region may be effectively identified as a region to be cleaned or a region having already been cleaned, and cleaning performance and efficiency may be maintained or enhanced.
A robot cleaner is provided that is capable of having a high cleaning performance and/or high cleaning efficiency when cleaning a wide region such as an entire region inside a house, and a controlling method of the same.
A robot cleaner is provided that is capable of performing a cleaning operation according to each sector by dividing a cleaning region into a plurality of sectors on the basis of a predetermined area or environmental condition, with moving on an entire region inside a house along a wall surface, and a controlling method of the same.
A robot cleaner is provided that is capable of calculating a moving path through a cheap sensor and a control algorithm, capable of reducing a position error by compensating for a moving angle, and capable of efficiently performing wall surface search, and capable of effectively determining whether a cleaning region is a region having been cleaned or a region to be cleaned, and a controlling method of the same.
A robot cleaner as embodied and broadly described herein may include a power unit having a chargeable power supply means, and configured to supply power; a driving unit configured to move by driving one or more wheels; a position recognition unit having one or more distance sensors, and configured to recognize a position of the robot cleaner within a cleaning region; and a control unit configured to compensate for the position by calculating a moving path, and configured to perform a cleaning operation by setting sectors with moving on the cleaning region.
In certain embodiments, the control unit may include a moving path calculation module configured to extract moving points formed according to a predetermined period, and configured to calculate a moving path by connecting the moving points to each other. The control unit may also include a moving path gradient calculation module configured to calculate a gradient of an initial moving path by connecting the predetermined number of moving points to each other, and to calculate a gradient change of the moving path based on a position of a next moving point and the gradient of the initial moving path. The control unit may also include a moving angle compensation module configured to compensate for a moving angle of the robot cleaner based on changes of the gradient of the moving path.
In certain embodiments, the control unit may include a sector size setting module configured to set a sector size based on an initial sector size and an overlapping margin with a neighboring sector. The control unit may also include a sector type determination module configured to determine a sector type according to an initial sector size and an obstacle within the cleaning region. The control unit may also include a sector reference point setting module configured to set a sector reference point, an initial sector position according to a sector type.
The robot cleaner may also include an obstacle detection unit configured to detect the obstacle, a storage unit configured to store therein at least one of obstacle information, position information and sector information, an output unit configured to output at least one of the obstacle information, the position information and the sector information, and an input unit having one or more buttons and configured to directly receive a control command.
A controlling method of a robot cleaner as embodied and broadly described herein may include a wall surface search step of recognizing a position of the robot cleaner, and searching for a cleaning region along a wall surface; a sector setting step of setting sectors with moving on the cleaning region; a sector cleaning step of cleaning the sectors; a moving path calculation step of calculating a moving path of the robot cleaner; and a position compensation step of compensating for the position of the robot cleaner based on the moving path.
The moving path calculation step may include extracting moving points formed according to a predetermined period, and calculating the moving path by connecting the moving points to each other.
The method may also include a moving angle compensation step of compensating for a moving angle of the robot angle according to the moving path. The moving angle compensation step may include calculating a gradient of an initial moving path by connecting the predetermined number of moving points to each other, and calculating a gradient change of the moving path based on a position of a next moving point and the gradient of the initial moving path, wherein the moving angle is compensated based on the gradient change of the moving path.
The wall surface search step may include detecting an obstacle within the cleaning region, and determining the obstacle as a wall surface when the robot cleaner can straight move by a distance more than a predetermined distance along the obstacle.
The sector setting step may include an initial size setting step of setting an initial sector size, a sector type determination step of determining a sector type according to the initial sector size and the obstacle, a sector reference point setting step of setting a sector reference point, an initial sector position according to a sector type, and a sector size resetting step of re-setting a sector size based on the initial sector size and an overlapping margin with a neighboring sector.
In the sector type determination step, a sector type may be determined by forming a closed section by changing a moving direction while moving along the wall surface, according to a maximum value of the initial size or the obstacle.
In the sector reference point setting step, a reference point of an initial sector may be set by searching for the wall surface, and a reference point of a next sector may be set according to change of a sector type, the reference point of the next sector including a position and a moving direction of the robot cleaner.
In the robot cleaner and the controlling method as embodied and broadly described herein, a moving angle may be autonomously compensated through a cheap sensor and a control algorithm in case of cleaning a wide space, e.g., an entire region inside a house.
In the robot cleaner and the controlling method as embodied and broadly described herein, a moving angle may be compensated through a cheap sensor and a control algorithm, thereby reducing a position error and effectively determining a cleaning region as a region to be cleaned or a region having been cleaned.
In the robot cleaner and the controlling method as embodied and broadly described herein, a moving direction (i.e., moving angle) may be compensated while the robot cleaner moves, thereby reducing a position error. Furthermore, a wall surface may be effectively searched by effectively searching for a cleaning region, a cleaning region may be effectively determined as a region to be cleaned or a region having been cleaned, and a high cleaning performance and high cleaning efficiency may be maintained.
Any reference in this specification to “one embodiment,” “an embodiment,” “example embodiment,” etc., means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the invention. The appearances of such phrases in various places in the specification are not necessarily all referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with any embodiment, it is submitted that it is within the purview of one skilled in the art to effect such feature, structure, or characteristic in connection with other ones of the embodiments.
Although embodiments have been described with reference to a number of illustrative embodiments thereof, it should be understood that numerous other modifications and embodiments can be devised by those skilled in the art that will fall within the spirit and scope of the principles of this disclosure. More particularly, various variations and modifications are possible in the component parts and/or arrangements of the subject combination arrangement within the scope of the disclosure, the drawings and the appended claims. In addition to variations and modifications in the component parts and/or arrangements, alternative uses will also be apparent to those skilled in the art.
Number | Date | Country | Kind |
---|---|---|---|
10-2009-0112871 | Nov 2009 | KR | national |