This application claims the benefit of Korean Patent Application No. 10-2006-0043127 and 10-2006-0047756 filed on May 12, 2006 and May 26, 2006, in the Korean Intellectual Property Office, the disclosures of which is incorporated herein by reference in its entirety.
1. Field of the Invention
The present invention relates to navigating a mobile robot, and more particularly, to an indoor map building apparatus and a method and medium for a mobile robot that involves the use of a mobile beacon.
2. Description of the Related Art
Robots were originally developed for industrial purposes and have been widely used for realizing factory automation and performing various functions in hazardous or extreme environments on behalf of humans. Nowadays, robotics has evolved from the field of state-of-the-art space robots to the field of human-friendly home robots. Also, robots can replace conventional medical equipment by being injected into the human body and repairing tissues that might not have been cured otherwise. With recent achievements in the robotics field, robotics has moved into the limelight of the world in anticipation that robotics, as one of the most advanced fields of science, will increasingly replace other fields of science such as Internet-based information technology and biotechnology.
In particular, home robots have expanded the scope of the existing robotics field that focuses more on heavy industrial applications to cover light industrial applications. Typical examples of such home robots include cleaning robots. Cleaning robots generally include a driving unit for driving them to move, a cleaning unit for performing a cleaning function, and an obstacle detection unit for sensing obstacles.
Referring to
Referring to
Mobile robots such as cleaning robots that are supposed to perform functions while navigating within a limited area are generally required to perform localization, which is a process of determining the location of a mobile robot, and map building, which is a process of building a map of an area where a mobile robot is to navigate.
Korean Patent Laid-Open Gazette No. 2002-033303 discloses a technique of determining the location of a mobile robot using the operating principles of a global position system (GPS), the technique involving installing three or more beacons on the walls of a room where the mobile robot is to travel. In addition, Korean patent Laid-Open Gazette No. 2005-0063538 discloses a technique of determining the location of a mobile robot which involves attaching a plurality of ultrasound generators to a charging stand; calculating the time taken for an ultrasound signal transmitted by the charging stand to arrive at a mobile robot based on a radio frequency (RF) signal transmitted at regular intervals of time by the mobile robot; and determining the distance between the charging stand and the mobile robot and the angle between the charging stand and the mobile robot.
The aforementioned techniques, however, do not suggest ways to precisely measure the shortest distance between two points (e.g., between a beacon or a charging stand that is fixed at a predetermined location and a mobile robot that moves about the beacon or the charging stand) that are on the opposite sides of a wall and are thus blocked by the wall. Thus, in order to determine the location of a mobile robot or generate map information using the aforementioned techniques, beacons must be installed in each room, or a charging stand must be moved whenever necessary.
Additional aspects, features, and/or advantages of the invention will be set forth in part in the description which follows and, in part, will be apparent from the description, or may be learned by practice of the invention.
The present invention provides an indoor map building apparatus and a method and medium for a mobile robot which can set an area of movement of a mobile robot and build a map of an entire indoor space where the mobile robot is to travel by moving a beacon that transmits/receives signals for determining the location of the mobile robot from one place to another in the indoor space without the need to install additional beacons and charging stands.
The present invention also provides an apparatus, method, and medium to prevent a mobile robot from leaving spots uncleaned or cleaning the same spots more than one time while performing a cleaning operation by using the indoor map building apparatus, method, and medium of a mobile robot.
According to an aspect of the present invention, there is provided an indoor map building apparatus of a mobile robot. The indoor map building apparatus includes a beacon which transmits/receives signals for determining the location of the mobile robot, a beacon location fixing module which moves the beacon to a predetermined location in an indoor space where the mobile robot is to travel and fixes the beacon at the predetermined location, a data processing module which determines the location of the mobile robot based on signals received from the beacon, and generates map information regarding the indoor space, an obstacle detection module which detects an obstacle when the mobile robot travels in the indoor space, and a driving module which moves the mobile robot.
According to another aspect of the present invention, there is provided an indoor map building method for a mobile robot. The indoor map building method includes (a) moving a beacon that transmits/receives signals for determining the location of the mobile robot to a predetermined location in an indoor space where the mobile robot is to travel, (b) determining the location of the mobile robot based on signals received from the beacon, and generating outline information regarding the indoor space, and (c) determining whether the outline information corresponds to a closed curve and, if it is determined that the outline information does not correspond to a closed curve, enabling the mobile robot to place the beacon to an open space that is nearest to the mobile robot.
According to another aspect of the present invention, there is provided an indoor map building apparatus of a mobile robot, the apparatus including a beacon which transmits/receives signals for determining the location of the mobile robot; a beacon location fixing module which moves the beacon to a predetermined location in an indoor space where the mobile robot is to travel and fixes the beacon at the predetermined location; and a data processing module which determines the location of the mobile robot based on signals received from the beacon, and generates map information regarding the indoor space.
According to another aspect of the present invention, there is provided an indoor map building method for building a map of an indoor space using a mobile robot, the method including (a) determining the location of the mobile robot based on signals received from the beacon, and generating outline information of the indoor space; and (b) determining whether the outline information corresponds to a closed curve and, if it is determined that the outline information does not correspond to a closed curve, enabling the mobile robot to move the beacon to an open space that is nearest to the mobile robot and place the beacon in the open space
According to another aspect of the present invention, there is provided at least one computer readable medium storing computer readable instructions to implement methods of the present invention.
The patent or application file contains at least one drawing executed in color. Copies of this patent or patent application publication with color drawing(s) will be provided by the Office upon request and payment of the necessary fee. These and/or other aspects, features, and advantages of the invention will become apparent and more readily appreciated from the following description of exemplary embodiments, taken in conjunction with the accompanying drawings of which:
Reference will now be made in detail to exemplary embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout. Exemplary embodiments are described below to explain the present invention by referring to the figures.
The structure of the indoor map building apparatus of the mobile robot 100 will hereinafter be described in further detail.
The beacon 200 is initially fixed at a certain location in an indoor space where the mobile robot 100 is to travel, and transmits/receives signals to/from the mobile robot 100 in order to determine the location of the mobile robot 100 relative to the beacon 200. One of the features of the present invention which differentiates the present invention from the prior art is that the present invention enables the beacon 200 to move like the mobile robot 100.
The transmission/reception module 120 transmits/receives signals to/from the beacon 200 that is detached from the mobile robot 100 in order to determine the location of the mobile robot 100 relative to the beacon 200, and provides signals received from the beacon 200 to the data processing module 110. The data processing module 110 determines the distance between the beacon 200 to the mobile robot 100 on a 2D plane whose origin is the location of the beacon 200 based on the signals provided by the transmission/reception module 120 and timing information of the corresponding signals.
Examples of the signals provided by the transmission/reception module 120 include UWB signals, infrared (IR) signals, and radio frequency (RF) signals, but the present invention is not restricted thereto. According to the present exemplary embodiment, assume that the mobile robot 100 uses UWB signals to determine the location of the mobile robot 100 relative to the beacon 200.
The beacon location fixing module 130 includes a beacon loading unit (beacon loader) (not shown) which enables the mobile robot 100 to load the beacon 200 and thus move along with the beacon 200. Also, the beacon location fixing module 130 moves the beacon 200 under the control of the data processing module 110 to a predetermined location in the indoor space. The beacon loading unit may be an electromagnetic unit such as an electromagnet or a mechanical unit that is formed in a rugged shape and can thus engage the beacon 200, but the present invention is not restricted thereto.
The data processing module 110 determines the distance between the mobile robot 100 and the beacon 200 based on the signals provided by the transmission/reception module 120, thereby determining the location and azimuth of the mobile robot 100. Also, the data processing module 110 generates map information regarding the indoor space by sensing walls in the indoor space with the aid of the obstacle detection module 140.
Referring to
Referring to
The self-location determination unit 410 determines the location and azimuth of the mobile robot 100 based on location information provided by a distance measurer 414 and location and azimuth information provided by the movement information calculator 412. In other words, the self-location determination unit 410 determines the location and direction of the mobile robot 100 by estimating an optimum location and an optimum azimuth of the mobile robot 100 using a Kalman filter based on absolute location information of the mobile robot 100 provided by the distance measurer 414 and movement information of the mobile robot 100 provided by the encoder of the movement information calculator 412, wherein the absolute location information indicates the location of the mobile robot 100 relative to the beacon 200. The estimation of the optimum location of the mobile robot 100 by using a Kalman filter is well known to one of ordinary skill in the art to which the present invention pertains, and thus, a detailed description thereof will be skipped.
The operation of the map information generation unit 420, i.e., the generation of map information regarding the indoor space, will hereinafter be described in detail.
The map information generation unit 420 generates map information regarding the space based on the results of the determination performed by the self-location determination unit 410. The obstacle detection module 140 provides an outline generator 422 with wall detection information that is obtained by detecting walls in the indoor space and moving along the detected walls. Then, the outline generator 422 generates outline information regarding the indoor space based on the wall detection information, and this will hereinafter be described in further detail with reference to
The indoor map illustrated in
Referring to
If the outline information provided by the outline generator 422 corresponds to a closed curve, a map information storage 426 stores the corresponding outline information, i.e., closed curve information, as map information regarding the indoor space, thereby finalizing the setting of an area of movement of the mobile robot 100. Accordingly, it is possible for the mobile robot 100 to efficiently navigate and perform its operations with reference to previously built map information stored in the map information storage 426.
The obstacle detection module 140 enables the mobile robot 100 to detect the walls in the region where the mobile robot 100 is to travel and enables the mobile robot 100 to move along the detected walls, when the mobile robot 100 travels around the beacon 200 in the indoor space in order to determine the location of the mobile robot 100 and generate map information.
The movement control module 150 supplies power to the mobile robot 100 so that the mobile robot 100 can move. In detail, the movement control module 150 controls the mobile robot 100 to travel around the beacon 200 and thus to determine the location of the mobile robot 100 and generate map information. Also, the movement control module 150 controls the mobile robot 100 to properly travel along with the beacon 200 in the indoor space when the beacon 200 is attached to the mobile robot 100. The movement control module 150 may include a plurality of wheels and a direction control device. However, the movement control module 150 may include means of transportation for the mobile robot 100, other than the wheels and the direction control device.
The inertial sensor 210 of the beacon 200 periodically measures an inertial sensor value, and outputs the results of the measurement to the data processing module 110. The data processing module 110 determines whether an inertial sensor value (hereinafter referred to as the first inertial sensor value) output by the inertial sensor 210 is higher than a predefined threshold. If the first inertial sensor value is higher than the predefined threshold, the data processing module 110 determines that the location of the beacon 200 has been changed, and controls the movement control module 150 to stop the mobile robot 100 from moving. A predetermined amount of time later, the inertial sensor 210 measures another inertial sensor value (hereinafter referred to as the second inertial sensor value). If the second inertial sensor value is lower than the predefined threshold, the location of the mobile robot 100 relative to the beacon 200 is reset, and new map information regarding the indoor space is generated.
The omnidirectional infrared transmission/reception module 160 measures the angle between the beacon location fixing module 130 of the mobile robot 100 and the beacon 200 on a two-dimensional coordinate plane whose origin corresponds to the location of the beacon which is detached from the mobile robot 100. When the mobile robot 100 is near and approaching the beacon 200 while maintaining a predetermined angle with the beacon 200, the touch sensing module 170 determines whether the mobile robot 100 has touched the beacon 200.
Thereafter, in order to determine the location of the mobile robot 100, a transmission/reception module 120 of the mobile robot 100 transmits/receives signals to/from the beacon 200 which is detached from the mobile robot 100, and provides a data processing module 110 with the signals received from the beacon 200. Then, the data processing module 110 determines the distance between the beacon 200 and the mobile robot based on the signals provided by the transmission/reception module 120 and timing information of the signals provided by the transmission/reception module 120. Examples of the signals provided by the transmission/reception module 120 include UWB signals, infrared signals, and RF signals, but the present invention is not restricted thereto.
Thereafter, in operation S1210, the data processing module 110 determines the location of the mobile robot 100 based on the distance between the beacon 200 and the mobile robot 100, and an obstacle detection module 140 of the mobile robot 100 detects walls in the indoor space, and enables the mobile robot 100 to move along the detected walls, thereby generating outline information regarding the indoor space. Operation S1210 will hereinafter be described in further detail with reference to
As the mobile robot 100 becomes distant from the beacon 200, which is placed at a predetermined location in the indoor space, signals transmitted between the mobile robot 100 and the beacon 200 for detecting, for example, obstacles, become weaker, and thus, it becomes more difficult for the mobile robot 100 to determine the location of the mobile robot 100 and to build a map. Thus, in operation S1330, the data processing module 110 of the mobile robot 100 determines whether the amplitude of a signal transmitted between the mobile robot 100 and the beacon 200 for determining the location of the mobile robot 100 is higher than a predefined threshold. If it is determined in operation S1330 that the amplitude of the signal transmitted between the mobile robot 100 and the beacon 200 for determining the location of the mobile robot 100 is higher than the predefined threshold, the method returns to operation S1300. In operation S1340, if it is determined in operation S1330 that the amplitude of the signal transmitted between the mobile robot 100 and the beacon 200 for determining the location of the mobile robot 100 is not higher than the predefined threshold, a movement control module 150 of the mobile robot 100 controls the mobile robot 100 to move to a current location of the beacon 200, and then a beacon location fixing module 130 of the mobile robot 100 attaches the beacon 200 to the mobile robot 100.
Referring to
Referring to
According to the present invention, it is possible to set an area of movement of a mobile robot by appropriately moving a beacon that transmits/receives signals for determining the location of the mobile robot from one place to another without the need to install additional beacons or charging stands.
In addition, according to the present invention, since a mobile robot that performs its functions while traveling an indoor space comprises a beacon that can be attached to or detached from the mobile robot, the location of the mobile robot in the indoor space and map information regarding the indoor space can be precisely obtained. Thus, it is possible to set an area of movement of the mobile robot to cover the entire indoor space and to enable the mobile robot to stably operate in an actual home environment.
In addition to the above-described exemplary embodiments, exemplary embodiments of the present invention can also be implemented by executing computer readable code/instructions in/on a medium/media, e.g., a computer readable medium/media. The medium/media can correspond to any medium/media permitting the storing and/or transmission of the computer readable code/instructions. The medium/media may also include, alone or in combination with the computer readable code/instructions, data files, data structures, and the like. Examples of code/instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by a computing device and the like using an interpreter. In addition, code/instructions may include functional programs and code segments.
The computer readable code/instructions can be recorded/transferred in/on a medium/media in a variety of ways, with examples of the medium/media including magnetic storage media (e.g., floppy disks, hard disks, magnetic tapes, etc.), optical media (e.g., CD-ROMs, DVDs, etc.), magneto-optical media (e.g., floptical disks), hardware storage devices (e.g., read only memory media, random access memory media, flash memories, etc.) and storage/transmission media such as carrier waves transmitting signals, which may include computer readable code/instructions, data files, data structures, etc. Examples of storage/transmission media may include wired and/or wireless transmission media. For example, storage/transmission media may include optical wires/lines, waveguides, and metallic wires/lines, etc. including a carrier wave transmitting signals specifying instructions, data structures, data files, etc. The medium/media may also be a distributed network, so that the computer readable code/instructions are stored/transferred and executed in a distributed fashion. The computer readable code/instructions may be executed by one or more processors. The computer readable code/instructions may also be executed and/or embodied in at least one application specific integrated circuit (ASIC) or Field Programmable Gate Array (FPGA).
In addition, one or more software modules or one or more hardware modules may be configured in order to perform the operations of the above-described exemplary embodiments.
The term “module”, as used herein, denotes, but is not limited to, a software component, a hardware component, a plurality of software components, a plurality of hardware components, a combination of a software component and a hardware component, a combination of a plurality of software components and a hardware component, a combination of a software component and a plurality of hardware components, or a combination of a plurality of software components and a plurality of hardware components, which performs certain tasks. A module may advantageously be configured to reside on the addressable storage medium/media and configured to execute on one or more processors. Thus, a module may include, by way of example, components, such as software components, application specific software component, object-oriented software components, class components and task components, processes, functions, operations, execution threads, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. The functionality provided for in the components or modules may be combined into fewer components or modules or may be further separated into additional components or modules. Further, the components or modules can operate at least one processor (e.g. central processing unit (CPU)) provided in a device. In addition, examples of a hardware components include an application specific integrated circuit (ASIC) and Field Programmable Gate Array (FPGA). As indicated above, a module can also denote a combination of a software component(s) and a hardware component(s). These hardware components may also be processors.
The computer readable code/instructions and computer readable medium/media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those skilled in the art of computer hardware and/or computer software.
Although a few exemplary embodiments of the present invention have been shown and described, it would be appreciated by those skilled in the art that changes may be made in these exemplary embodiments without departing from the principles and spirit of the invention, the scope of which is defined in the claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
10-2006-0043127 | May 2006 | KR | national |
10-2006-0047756 | May 2006 | KR | national |