Patent Description:
A cleaning robot is an apparatus that automatically cleans a space to be cleaned by suctioning foreign substances such as dust accumulated on a floor while traveling the space to be cleaned without a user's manipulation. That is, the cleaning robot cleans the space to be cleaned while traveling the space to be cleaned.

Conventionally, a cleaning robot performs a traveling function and a cleaning function in a region to be cleaned in accordance with the user command. However, since the cleaning robot directly moves or performs cleaning from merely receiving the user command, it is not possible for the user to check a state of the cleaning robot.

Conventionally, in a case in which a user wishes a specific position within a space to be cleaned to be cleaned first, the user has to directly check a position of a cleaning robot and move the cleaning robot to the specific position using a remote controller. <CIT> discloses a method for generating an entry-forbidden area for a cleaning robot using a remote controller, wherein the remote controller is configured to project a light spot of visible light and infrared light onto the floor and the cleaning robot is configured to detect the infrared light reflected from the floor of the cleaning area and move toward the light spot.

It is an aim of the present invention to provide a cleaning robot capable of providing a user interface (UI) corresponding to a user command, and a method of controlling the cleaning robot.

In accordance with the present invention, a cleaning robot is provided in accordance with the appended claims. The cleaning robot may include a user interface to display a map image including one or more divided regions, and the user interface displays an icon corresponding to a state value of a main device on the map image.

The state value may include any one of a first state value which indicates that the main device is performing cleaning, a second state value which indicates that the main device has completed cleaning, and a third state value which indicates that an error has occurred.

The cleaning robot further includes a controller to control the main device to travel or perform cleaning, and the user interface may receive a user command; and the controller may control the main device on the basis of the user command.

The user interface may receive a command to designate at least one divided region, and may change an outline display attribute of the at least one designated divided region.

In a case in which the user interface may receive the command to designate at least one divided region, the user interface may change an outline color or an outline thickness of the at least one designated divided region.

In a case in which the main device is traveling, the user interface displays a translucent layer over the map image.

In a case in which the main device is traveling, the user interface may display an animation which indicates that the main device is traveling.

The user interface may further display a message corresponding to the state value of the main device.

The user interface may receive a command to designate at least one divided region and may change a name display attribute of the at least one designated divided region.

The cleaning robot may further include a controller to set a target point within the divided region, set a virtual wall on the map image, and control the main device to perform cleaning from the target point.

The cleaning robot may further include a storage unit to store the map image, and a controller to set a target point within the divided region, set a virtual wall on the map image, and control the main device to perform cleaning from the target point.

The storage unit may include information on a region dividing point corresponding to each divided region, and the controller may set the virtual wall at the region dividing point.

The cleaning robot may further include a driving wheel driver to control driving of a wheel and a main brush driver to control driving of a main brush unit, and the controller may control the driving wheel driver to allow the main device to move to the target point, and control the main brush driver to perform cleaning from the target point.

The cleaning robot may further include a main device sensor unit, and the main device sensor unit may match a position of the main device with the map image based on position information generated by the main device sensor unit.

The user interface may receive a selection of the divided region from a user; and the controller may set the target point within the divided region selected by the user.

The controller may set at least one of a central point of a divided region, a point farthest from surrounding obstacles within the divided region, and another point that is present within the divided region selected by the user from the map image and the closest to the current position of the main device as the target point.

The controller sets a virtual region on the map image.

The user interface receives a command to designate a virtual region form the user.

The controller controls the main device to perform cleaning outside the virtual region.

The virtual area may include a space in a virtual wall forming a closed loop.

The controller may set a movement path from the current position of the main device to the target point, and move the main device along the movement path.

The controller may set the virtual wall when the main device is located at the target point.

The controller may control the main device to perform autonomous traveling from the target point, and restrict entry of the main device into the virtual wall.

The controller may set a cleaning order for at least one of the divided regions, and move, when the main device completes cleaning for one of the divided areas, the main device to a next divided area.

When the main device completes cleaning for the one of the divided areas, the controller may remove the virtual wall and move the main device to the next divided area.

The controller may set the target point of the next divided area and move the main device to the target point of the next divided area.

In accordance with another aspect of the present disclosure, a remote device is provided in accordance with the appended claims,.

In accordance with another aspect of the present disclosure, a cleaning robot control system is provided in accordance with the appended claims.

According to the above-described cleaning robot, remote device, and cleaning robot control system, by a user recognizing a state of the cleaning robot from a map image, the user can control the cleaning robot in various ways through a user interface (UI) on the basis of state information of the cleaning robot.

Further, according to the above-described cleaning robot, remote device, and cleaning robot control system, by a virtual wall being set around a divided region selected from a map image, a main device can be blocked from entering a space inside the virtual wall.

Hereinafter, the present disclosure will be described in detail using embodiments, which will be described with reference to the accompanying drawings, for those of ordinary skill in the art to easily understand and practice the disclosure. However, in describing the present disclosure, when it is judged that detailed descriptions on a known function or configuration related to the disclosure might unnecessarily blur the gist of the embodiments of the disclosure, the detailed descriptions thereof will be omitted.

The terms used below are terms selected in consideration of functions in the embodiments, and meanings of the terms may vary in accordance with an intention, practice, or the like of a user or an operator. Thus, in a case in which the terms used in the embodiments, which will be described below, are specifically defined below, the terms should be interpreted as having the specifically-defined meanings, and in a case in which the terms are not specifically defined below, the terms should be interpreted as having meanings generally understood by those of ordinary skill in the art.

Further, even when configurations of aspects or embodiments selectively described below are illustrated as a single integrated configuration in the drawings, it should be understood that the configurations may be freely combined with each other when it is not clear to those of ordinary skill in the art that such combinations are technically contradictory, unless described otherwise.

Hereinafter, embodiments of a cleaning robot and a method of controlling the cleaning robot will be described with reference to the accompanying drawings.

Hereinafter, a configuration of a cleaning robot according to one embodiment will be described with reference to <FIG>.

<FIG> is an exterior view of a cleaning robot, <FIG> is a bottom view of a main device according to one embodiment, and <FIG> is an interior view of the main device according to one embodiment.

Referring to <FIG>, a cleaning robot <NUM> performs cleaning or moves at least one time, generates a map including obstacle information of a space in which the cleaning robot <NUM> is currently present, generates a map image that is similar to the generated map, and displays the map image on a user interface (UI. ) Here, "map" refers to spatial image information generated by the cleaning robot <NUM> on the basis of sensed values prior to structural analysis, and "map image" refers to spatial image information including structural information generated by the cleaning robot <NUM> as a result of the structural analysis. By the generation of the map image, a virtual space to be cleaned which matches an actual space to be cleaned in which the cleaning robot <NUM> is present may be provided to a user.

Specifically, the cleaning robot <NUM> may grasp the obstacle information of the space in which the cleaning robot <NUM> is currently present through a sensor unit by performing cleaning or moving at least one time in the space in which the cleaning robot <NUM> is currently present. The cleaning robot <NUM> may generate a map including the obstacle information of the space in which the cleaning robot <NUM> is currently present on the basis of the grasped obstacle information. The cleaning robot <NUM> may analyze a structure of the map including the obstacle information, and divide the space grasped through performing cleaning or moving at least one time into a plurality of divided regions on the basis of the analyzed structure.

The cleaning robot <NUM> may substitute the plurality of divided regions with preset figures and generate a map image in which the plurality of preset figures are combined to have different areas or positions.

The cleaning robot <NUM> may generate a map image that substitutes for the map on the basis of a plan view that corresponds to the analyzed structure among pieces of pre-stored plan view data. The cleaning robot <NUM> may display the generated map image on the UI for the user to easily grasp the structure of the space in which the cleaning robot <NUM> is currently present and the position of the cleaning robot <NUM>.

The cleaning robot <NUM> may include a main device <NUM> configured to perform cleaning while moving on a space to be cleaned, and a remote device <NUM> configured to control the operation of the main device <NUM> from a remote distance and display a current situation or the like of the main device <NUM>. Although a mobile phone may be employed as the remote device <NUM> as illustrated in <FIG>, the remote device <NUM> is not limited thereto, and various hand-held devices other than a mobile phone such as a personal digital assistant (PDA), a laptop, a digital camera, an MP3 player, and a remote controller may also be employed as the remote device <NUM>.

The remote device <NUM> may include a remote device UI <NUM> configured to provide the UI. The remote device UI <NUM> may include a remote device input unit <NUM> and a remote device display unit <NUM>. The remote device UI <NUM> may receive a user command for control of the main device <NUM> or display various pieces of information of the main device <NUM>.

The remote device input unit <NUM> may include hardware devices such as various buttons or switches, a pedal, a keyboard, a mouse, a track-ball, various levers, a handle, or a stick for a user input. The remote device input unit <NUM> may also include a graphical UI (GUI) such as a touch pad, i.e., a software device, for a user input. The touch pad may be implemented as a touchscreen panel (TSP) and form a layered structure with the remote device display unit <NUM>.

A cathode ray tube (CRT), a digital light processing (DLP) panel, a plasma display panel, a liquid crystal display (LCD) panel, an electro-luminescence (EL) panel, an electrophoretic display (EPD) panel, an electrochromic display (ECD) panel, a light emitting diode (LED) panel, an organic LED (OLED) panel, or the like may be provided as the remote device display unit <NUM>, but the remote device display unit <NUM> is not limited thereto.

In a case in which the remote device display unit <NUM> is configured as a TSP that forms a layered structure with the touch pad as described above, the remote device display unit <NUM> may also be used as an input unit in addition to being used as a display unit. Hereinafter, for convenience of descriptions, descriptions will be given by assuming that the remote device display unit <NUM> is configured as a TSP.

As illustrated in <FIG>, the main device <NUM> may include a body <NUM> including a main body <NUM>-<NUM> and a sub-body <NUM>-<NUM>, a driving wheel assembly <NUM>, a main brush unit <NUM>, a power supply unit <NUM>, a dust collector, a main device communication unit <NUM>, and a user interface unit <NUM>. As illustrated in <FIG>, the main body <NUM>-<NUM> may have a substantially semicircular shape, and the sub-body <NUM>-<NUM> may have a rectangular parallelepiped shape. Exteriors of the remote device <NUM> and the main device <NUM> are merely examples of an exterior of the cleaning robot <NUM>, and the cleaning robot <NUM> may have various shapes.

The main device power supply unit <NUM> supplies driving power for driving the main device <NUM>. The main device power supply unit <NUM> includes a battery that is electrically connected to driving devices for driving various components mounted on the body <NUM> and configured to supply the driving power. The battery may be provided as a rechargeable secondary battery and may be charged by receiving electric power from a docking station. Here, the docking station is a device at which the main device <NUM> is docked when the main device <NUM> has completed a cleaning process or when a residual amount of the battery is lower than a reference value. The docking station may supply electric power to the docked main device <NUM> using an external or internal power supply.

The main device power supply unit <NUM> may be mounted at the bottom of the body <NUM> as illustrated in <FIG> and <FIG>, but embodiments are not limited thereto.

Although not illustrated, the main device communication unit <NUM> may be disposed inside the body <NUM> and allow the body <NUM> to communicate with the docking station, a virtual guard, the remote device <NUM>, and the like. The main device communication unit <NUM> may transmit whether the main device <NUM> has completed cleaning, a residual amount of battery provided in the body <NUM>, a position of the body <NUM>, and the like to the docking station, and receive a position of the docking station and a docking signal that guides docking of the main device <NUM> from the docking station.

The main device communication unit <NUM> may transmit and receive an entry restriction signal to and from a virtual guard configured to form a virtual wall. The virtual guard is an external device configured to transmit an entry restriction signal to a connected path between any divided region and a specific divided region when the main device <NUM> is traveling. The virtual guard forms the virtual wall. For example, the virtual guard may sense entry of the main device <NUM> into the specific divided region using an infrared sensor, a magnetic sensor, or the like, and transmit an entry restriction signal to the main device communication unit <NUM> via a wireless communication network. Here, "region to be cleaned" refers to an entire region on which the main device <NUM> may travel that includes a plurality of divided regions.

In this case, the main device communication unit <NUM> may receive an entry restriction signal and block the main device <NUM> from entering a specific region.

The main device communication unit <NUM> may receive a command input by a user via the remote device <NUM>. For example, the user may input a cleaning start/end command, a cleaning region map generation command, a main device <NUM> moving command, and the like via the remote device <NUM>, and the main device communication unit <NUM> may receive a user command from the remote device <NUM> and allow the main device <NUM> to perform an operation corresponding to the received user command. The main device communication unit <NUM> will be described in further detail below.

A plurality of driving wheel assemblies <NUM> may be present. As illustrated in <FIG> and <FIG>, two driving wheel assemblies <NUM> may be provided at left and right edges to be symmetrical to each other from the center of the bottom of the body <NUM>. The driving wheel assemblies <NUM> respectively include driving wheels <NUM> and <NUM> that allow moving operations such as moving forward, moving backward, and rotating during a process of performing cleaning. The driving wheel assemblies <NUM> may be modularized and be detachably mounted on the bottom of the body <NUM>. Therefore, in a case in which a failure occurs in the driving wheels <NUM> and <NUM> and repairing is required, only the driving wheel assemblies <NUM> may be separated from the bottom of the body <NUM> for repair without disassembling the entire body <NUM>. The driving wheel assemblies <NUM> may be mounted on the bottom of the body <NUM> by methods such as hook coupling, screw coupling, and fitting.

A castor <NUM> is provided at a front edge from the center of the bottom of the body <NUM> to allow the body <NUM> to maintain a stable posture. The castor <NUM> may also constitute a single assembly like the driving wheel assemblies <NUM>.

The main brush unit <NUM> is mounted at a side of a suction hole <NUM> formed at the bottom of the body <NUM>. The main brush unit <NUM> includes a main brush <NUM> and a roller <NUM>. The main brush <NUM> is disposed at an outer surface of the roller <NUM> and whirls dust accumulated on a floor surface in accordance with rotation of the roller <NUM> to guide the dust to the suction hole <NUM>. In this case, the main brush <NUM> may be formed with various materials having an elastic force. The roller <NUM> may be formed of a rigid body, but embodiments are not limited thereto.

Although not illustrated in the drawings, a blower device configured to generate a suction force may be provided inside the suction hole <NUM>, and the blower device may move the dust introduced into the suction hole <NUM> to the dust collector configured to collect and filter the dust.

Various sensors may be mounted on the body <NUM>. The various sensors may include at least one of an obstacle sensor <NUM> and an image sensor <NUM>.

The obstacle sensor <NUM> is a sensor configured to sense an obstacle present on a traveling path of the main device <NUM>, e.g., an appliance, a piece of furniture, a wall surface, a wall corner, or the like inside a house. The obstacle sensor <NUM> may be provided in the form of an ultrasonic sensor capable of recognizing a distance, but embodiments are not limited thereto.

A plurality of obstacle sensors <NUM> may be provided at a front portion and a side surface of the body <NUM> and form a circumference of the body <NUM>. A sensor window may be provided at front surfaces of the plurality of obstacle sensors <NUM> to protect and block the obstacle sensors <NUM> from the outside.

The image sensor <NUM> refers to a sensor configured to recognize the position of the main device <NUM> and form a map of a region to be cleaned by the main device <NUM>. The image sensor <NUM> may be implemented with a device capable of acquiring image data such as a camera and be provided at the top portion of the body <NUM>. In other words, in addition to extracting a feature point from image data of the top of the main device <NUM>, allowing the position of the main device <NUM> to be recognized using the feature point, and allowing a map image of a region to be cleaned to be generated, the image sensor <NUM> may also allow the current position of the main device <NUM> to be grasped from the map image. The obstacle sensor <NUM> and the image sensor <NUM> which may be mounted on the body <NUM> will be described in further detail below.

A main device UI <NUM> may be disposed at the top portion of the body <NUM>. The main device UI <NUM> may include a main device input unit <NUM> configured to receive a user command and a main device display unit <NUM> configured to display various states of the main device <NUM>, and provide a UI. For example, a battery charging state, whether the dust collector is fully filled with dust, a cleaning mode, a dormant mode of the main device <NUM>, or the like may be displayed on the main device display unit <NUM>. Since the forms in which the main device input unit <NUM> and the main device display unit <NUM> are implemented are the same as the above-described forms of the remote device input unit <NUM> and the remote device display unit <NUM>, descriptions thereof will be omitted.

The exterior of the cleaning robot according to one embodiment has been described above. Hereinafter, a configuration of the cleaning robot according to one embodiment will be described in detail with reference to <FIG>.

<FIG> is a block diagram of a control configuration of the cleaning robot.

The cleaning robot <NUM> may include the remote device <NUM> and the main device <NUM> connected to each other by wired and wireless communications. The remote device <NUM> may include a remote device communication unit <NUM>, a remote device controller <NUM>, a remote device storage unit <NUM>, and a remote device UI <NUM>.

The remote device communication unit <NUM> transmits and receives various signals and data to and from the main device <NUM> or an external server via wired and wireless communications. For example, in accordance with a user command through the remote device UI <NUM>, the remote device communication unit <NUM> may download an application for managing the main device <NUM> from an external server (for example, a web server, a mobile communication server or the like). The remote device communication unit <NUM> may also download plan view data of a region to be cleaned from the external server. Here, a plan view is a figure depicting a structure of a space in which the main device <NUM> is present, and plan view data is data in which a plurality of different plan views of a house are gathered.

The remote device communication unit <NUM> may transmit a "generate map" command of the user to the main device <NUM> and receive a generated map image from the main device <NUM>. The remote device communication unit <NUM> may transmit a map image edited by the user to the main device <NUM>.

The remote device communication unit <NUM> may also transmit commands for controlling the main device <NUM>, such as a "start cleaning" command, an "end cleaning" command, and a "designate divided region" command input by the user, to the main device <NUM>.

In a case in which the remote device controller <NUM> generates a movement path of the main device <NUM>, the remote device communication unit <NUM> may also transmit information on the generated movement to the main device <NUM>.

For this, the remote device communication unit <NUM> may include various communication modules such as a wireless Internet module, a short range communication module, and a mobile communication module.

The remote device communication unit <NUM> will be described in detail below with reference to <FIG>.

The remote device controller <NUM> controls the overall operation of the remote device <NUM>. The remote device controller <NUM> may control each of the configurations of the remote device <NUM>, i.e., the remote device communication unit <NUM>, the remote device display unit <NUM>, the remote device storage unit <NUM>, and the like, on the basis of a user command input via the remote device UI <NUM>.

The remote device controller <NUM> may generate a control signal for the remote device communication unit <NUM>.

For example, in a case in which the user inputs the "generate map" command, the remote device controller <NUM> may generate a control signal so that the command to generate a map image including one or more divided regions is transmitted to the main device <NUM>.

In a case in which the user inputs the "start cleaning" command, the remote device controller <NUM> may generate a control signal so that the start cleaning command, which moves the main device <NUM> to a designated divided region (hereinafter, a designated region) and makes the main device <NUM> perform cleaning in the designated region, is transmitted to the main device <NUM>. Here, in a case in which the user designates a plurality of divided regions, the remote device controller <NUM> may generate a movement path of the main device <NUM> so that the main device <NUM> moves to any one divided region of the plurality of designated divided regions (for example, a divided region that is the closest to the main device <NUM>), and the main device <NUM> moves along the plurality of designated divided regions in accordance with a set order (for example, an order starting from a divided region which is the closest to the main device <NUM>). Even when the user does not input the "start cleaning" command, the remote device controller <NUM> may control the start cleaning command to be automatically transmitted to the main device <NUM> when a predetermined amount of time elapses after the user designates a divided region.

In a case in which the remote device controller <NUM> generates the movement path, the remote device controller <NUM> may extract region dividing points that respectively correspond to the plurality of divided regions. In a case in which the divided regions are configured as "rooms," the region dividing points may correspond to "doors" of the rooms. A method of generating the movement path and a method of extracting the region dividing points will be described in detail below.

In a case in which the user inputs the "end cleaning" command, the remote device controller <NUM> may generate the stop cleaning command for the main device <NUM> to stop cleaning that is being performed. The remote device controller <NUM> may generate a control signal to transmit the end cleaning command to the main device <NUM>.

The remote device controller <NUM> may generate a control signal for the remote device display unit <NUM>.

Specifically, the remote device controller <NUM> may generate a control signal so that a screen corresponding to a user command or a state of the main device <NUM> is output. The remote device controller <NUM> may generate a control signal so that a screen is switched in accordance with the user command or the state of the main device <NUM>.

For example, in a case in which the user inputs the "generate map" command, the remote device controller <NUM> may generate a control signal so that a map image including one or more divided regions is displayed.

In a case in which the user inputs the "designate divided region" command, the remote device controller <NUM> may generate a control signal so that a designated region outline display attribute is changed or a designated region name display attribute is changed in accordance with the user command. As an example, the remote device controller <NUM> may allow color of an outline or name of a designated region to be changed or allow the outline or name of the designated region to be displayed in bold font.

In a case in which the user has input the "start cleaning" command and the main device <NUM> is moving to a designated region, the remote device controller <NUM> may generate a control signal so that the remote device display unit <NUM> outputs an animation, which indicates that the main device <NUM> is moving.

In a case in which the user has input the "start cleaning" command and the main device <NUM> is performing cleaning in a designated region, the remote device controller <NUM> may generate a control signal so that the remote device display unit <NUM> outputs an icon, which indicates that the main device <NUM> is performing cleaning.

In a case in which a movement path of the main device <NUM> is generated, the remote device controller <NUM> may generate a control signal so that the remote device display unit <NUM> outputs the generated movement path.

In a case in which the main device <NUM> has completed cleaning in the designated region, the remote device controller <NUM> may generate a control signal so that the remote device display unit <NUM> outputs an icon, which indicates that cleaning by the main device <NUM> is completed.

In a case in which an error occurs while the main device <NUM> is moving or performing cleaning, the remote device controller <NUM> may generate a control signal so that the remote device display unit <NUM> outputs an icon notifying of the occurrence of an error in the main device <NUM>.

Screens respectively corresponding to user commands or states of the main device <NUM> will be described in detail below.

The remote device controller <NUM> may generate a control signal for the remote device storage unit <NUM>. The remote device controller <NUM> may generate a control signal so that a map image is stored.

The remote device controller <NUM> may be various processors including at least one chip in which an integrated circuit is formed. Although the remote device controller <NUM> may be provided in a single processor, the remote device controller <NUM> may also be separately provided in a plurality of processors.

The remote device storage unit <NUM> temporarily or non-temporarily stores data and programs for the operation of the remote device <NUM>. For example, the remote device storage unit <NUM> may store an application for managing the main device <NUM>. The remote device storage unit <NUM> may also store the map image received from the main device <NUM> and store plan view data downloaded from an external server.

Such a remote device storage unit <NUM> may include at least one type of storage medium among a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (for example, a secure digital (SD) or extreme digital (XD) memory, or the like), a random access memory (RAM), a static RAM (SRAM), a read-only memory (ROM), an electrically erasable programmable ROM (EEPROM), a PROM, a magnetic memory, a magnetic disk, and an optical disc. However, the remote device storage unit <NUM> is not limited thereto and may also be implemented in other arbitrary forms known in the same technical field. The remote device <NUM> may operate a web storage that performs a storage function on the Internet.

The remote device UI <NUM> may receive various commands for controlling the main device <NUM> from the user. For example, the remote device UI <NUM> may receive the "generate map" command for generating the map image including one or more divided regions, or receive a "manage map" command for modifying the generated map image, the "designate divided region" command for a divided region to be designated, a "manage cleaning" command for moving the main device <NUM> to a designated region and making the main device <NUM> perform cleaning, and the like.

The remote device UI <NUM> may also receive a "start/end" command or the like for starting or ending the cleaning by the main device <NUM>.

The remote device UI <NUM> may display various pieces of information of the main device <NUM>.

For example, the remote device UI <NUM> may display a map image corresponding to a region to be cleaned along which the main device <NUM> travels.

In a case in which the user inputs the "designate divided region" command, the remote device UI <NUM> may change a designated region outline display attribute or change a designated region name display attribute in accordance with a user command. As an example, the remote device controller <NUM> may allow color of an outline or name of a designated region to be changed or allow the outline or name of the designated region to be displayed in bold font.

In a case in which the user has input the "start cleaning" command and the main device <NUM> is moving to a designated region, the remote device UI <NUM> may output an animation, which indicates that the main device <NUM> is moving.

In a case in which the user has input the "start cleaning" command and the main device <NUM> is performing cleaning in a designated region, the remote device UI <NUM> may output an icon, which indicates that the main device <NUM> is performing cleaning.

In a case in which a movement path of the main device <NUM> is generated, the remote device UI <NUM> may display the generated movement path.

In a case in which the main device <NUM> has completed cleaning in the designated region, the remote device UI <NUM> may output an icon, which indicates that cleaning by the main device <NUM> is completed.

In a case in which an error occurs while the main device <NUM> is moving or performing cleaning, the remote device UI <NUM> may output an icon notifying of the occurrence of an error in the main device <NUM>.

The main device <NUM> may include the main device power supply unit <NUM>, a main device sensor unit <NUM>, the main device communication unit <NUM>, a main device controller <NUM>, a main device driver <NUM>, a main device UI <NUM>, and a main device storage unit <NUM>.

As described with reference to <FIG> and <FIG>, the main device power supply unit <NUM> is provided as a battery and supplies driving power for driving the main device <NUM>.

The main device communication unit <NUM> transmits and receives various signals and data to and from the remote device <NUM> or an external device via wired and wireless communications.

For example, the main device communication unit <NUM> may receive the "generate map" command of the user from the remote device <NUM> and transmit a generated map image to the remote device <NUM>. The main device communication unit <NUM> may receive a map image stored in the remote device <NUM> and a cleaning schedule stored in the remote device <NUM>. In this case, the stored map image may refer to a finally-stored map image, and the stored cleaning schedule may refer to a finally-stored cleaning schedule.

The main device communication unit <NUM> may also transmit a current state value of the main device <NUM> and cleaning history data to the remote device <NUM>.

The main device communication unit <NUM> may receive the "start cleaning" command of the user and data related to a designated region from the remote device <NUM>. When a situation in which a transmitted environment is inconsistent occurs while the main device <NUM> is performing cleaning, the main device communication unit <NUM> may transmit an error state value, which indicates that the environment is inconsistent, to the remote device <NUM>. Likewise, in a case in which a region that is unable to be cleaned is generated, the main device communication unit <NUM> may transmit a state value, which indicates that cleaning is impossible, to the remote device <NUM>.

In a case in which the remote device <NUM> generates a movement path, the main device communication unit <NUM> may also receive information on the generated movement path.

The main device communication unit <NUM> may also receive the "end cleaning" command of the user from the remote device <NUM>.

The main device communication unit <NUM> will be described in detail below with reference to <FIG>.

The main device sensor unit <NUM> performs sensing of an obstacle and a state of the ground, which is required for traveling of the main device <NUM>. The main device sensor unit <NUM> may include the obstacle sensor <NUM> and the image sensor <NUM>.

A plurality of obstacle sensors <NUM> are provided at an outer circumferential surface of the body <NUM> and configured to sense an obstacle present in front of or beside the main device <NUM> and transmits a sensed result to the main device controller <NUM>.

The obstacle sensors <NUM> may be provided as contact type sensors or non-contact type sensors in accordance with whether the obstacle sensors <NUM> come into contact with an obstacle, or may also be provided as a combination of a contact type sensor and a non-contact type sensor. A contact type sensor refers to a sensor that senses an obstacle by the body <NUM> actually colliding with an obstacle, and a non-contact type sensor refers to a sensor that senses an obstacle without the body <NUM> colliding with the obstacle or before the body <NUM> collides with the obstacle.

The non-contact type sensor may include an ultrasonic sensor, an optical sensor, a radiofrequency (RF) sensor, or the like. In a case in which the obstacle sensors <NUM> are implemented as ultrasonic sensors, the obstacle sensor <NUM> may transmit ultrasonic waves to a path on which the main device <NUM> travels, receive reflected ultrasonic waves, and sense an obstacle. In a case in which the obstacle sensors <NUM> are implemented as optical sensors, the obstacle sensors <NUM> may project light in an infrared region or visible light region, receive reflected light, and sense an obstacle. In a case in which the obstacle sensors <NUM> are implemented as RF sensors, the obstacle sensors <NUM> may transmit a radio wave having a specific frequency, for example, a microwave, using the Doppler effect, detect changes in a frequency of a reflected wave, and sense an obstacle.

The image sensor <NUM> may be provided as a device capable of acquiring image data such as a camera, and may be mounted on the top portion of the body <NUM> to recognize the position of the main device <NUM>. The image sensor <NUM> extracts a feature point from image data of the top of the main device <NUM> and recognizes the position of the main device <NUM> using the feature point. Position information sensed by the image sensor <NUM> may be transmitted to the main device controller <NUM>.

Sensor values of the main device sensor unit <NUM>, i.e., sensor values of the obstacle sensors <NUM> and the image sensor <NUM>, may be transmitted to the main device controller <NUM>, and the main device controller <NUM> may generate a map of a region to be cleaned on the basis of the received sensor values. Since a method of generating a map on the basis of sensor values is a known technique, descriptions thereof will be omitted. <FIG> merely illustrates one example of the main device sensor unit <NUM>. The main device sensor unit <NUM> may further include other types of sensors or some sensors may be omitted from the main device sensor unit <NUM> as long as a map of a region to be cleaned may be generated.

The main device driver <NUM> may include a driving wheel driver <NUM> configured to control driving of the driving wheel assemblies <NUM>, and a main brush driver <NUM> configured to control driving of the main brush unit <NUM>.

The driving wheel driver <NUM> is controlled by the main device controller <NUM> to control the driving wheels <NUM> and <NUM> mounted on the bottom of the body <NUM> and allow the main device <NUM> to move. In a case in which the "generate map" command, the "start cleaning" command, a "move region" command, or the like of the user is transmitted to the main device <NUM>, the driving wheel driver <NUM> controls driving of the driving wheels <NUM> and <NUM>, and the main device <NUM> travels in accordance with the control. The driving wheel driver <NUM> may also be included in the driving wheel assemblies <NUM> and be modularized together with the driving wheel assemblies <NUM>.

The main brush driver <NUM> drives the roller <NUM> mounted at the side of the suction hole <NUM> of the body <NUM> in accordance with control by the main device controller <NUM>. In accordance with rotation of the roller <NUM>, the main brush <NUM> may be rotated and clean a floor surface. When the "start cleaning" command of the user is transmitted to the main device <NUM>, the main brush driver <NUM> controls driving of the roller <NUM>.

The main device controller <NUM> controls the overall operation of the main device <NUM>. The main device controller <NUM> may control the configurations of the main device <NUM>, i.e., the main device communication unit <NUM>, the main device driver <NUM>, the main device storage unit <NUM>, and the like, and generate a map image.

Specifically, the main device controller <NUM> may generate a control signal for the main device driver <NUM>.

For example, in a case in which the main device controller <NUM> receives the "generate map" command, the main device controller <NUM> may generate a control signal for the driving wheel driver <NUM> to drive the driving wheels <NUM> and <NUM>. While the driving wheels <NUM> and <NUM> are driven, the main device controller <NUM> may receive sensor values from the main device sensor unit <NUM> and generate a map image of a region to be cleaned on the basis of the received sensor values.

In a case in which the main device controller <NUM> receives the "start cleaning" command and data related to a designated region, the main device controller <NUM> may generate a control signal for the driving wheel driver <NUM> for the main device <NUM> to be moved to the designated region by the user. In a case in which the main device <NUM> is moved to the designated region, the main device controller <NUM> may control the main brush driver <NUM> to drive the main brush unit <NUM> while generating a control signal related to the driving wheel driver <NUM> to drive the driving wheels <NUM> and <NUM>.

The main device controller <NUM> may generate a map image.

Specifically, in a case in which the main device controller <NUM> receives the "generate map" command, the main device controller <NUM> may receive sensor values from the main device sensor unit <NUM>, generate a map including obstacle information, analyze a structure of the generated map, and divide the map into a plurality of regions.

The main device controller <NUM> may substitute the plurality of divided regions with preset figures different from each other and generate a map image in which the plurality of preset figures are combined.

The main device controller <NUM> may find a plan view corresponding to the analyzed map structure among pieces of plan view data stored in the main device storage unit <NUM> and postprocess the corresponding plan view to generate a map image.

In a case in which the user designates a plurality of divided regions, although it has been described in the above-described embodiment that the remote device controller <NUM> generates a movement path of the main device <NUM>, the main device controller <NUM> may also generate the movement path. In this case, the main device controller <NUM> may generate a control signal so that the main device communication unit <NUM> transmits information on the generated movement path to the remote device <NUM>, and the main device driver <NUM> travels and performs cleaning along the generated movement path.

When the user inputs the "start cleaning" command or even when the user does not input the "start cleaning" command, the remote device controller <NUM> may generate a control signal so that the main device driver <NUM> travels and performs cleaning along the generated movement path when a predetermined amount of time elapses after the user designates a divided region.

Hereinafter, for convenience of description, a case in which the main device controller <NUM> generates the movement path will be described as an example.

The main device controller <NUM> may generate control signals for the main device communication unit <NUM> and the main device UI <NUM>.

For example, the main device controller <NUM> may generate a control signal so that the main device communication unit <NUM> transmits a generated map image to the remote device <NUM>, and may generate a control signal so that the main device UI <NUM> displays the generated map image.

In a case in which the main device controller <NUM> receives the "start cleaning" command and data related to a designated region, the main device controller <NUM> may generate a control signal so that the main device communication unit <NUM> transmits a state value of the main device <NUM> (for example, whether the main device <NUM> is moving or performing cleaning, has completed cleaning, or whether an error has occurred) to the remote device <NUM>.

In a case in which the main device controller <NUM> generates the movement path of the main device <NUM>, the main device controller <NUM> may also generate a control signal so that the main device communication unit <NUM> transmits information on the generated movement to the remote device <NUM>.

The main device controller <NUM> may determine whether an environment is inconsistent while the main device <NUM> performs cleaning. In a case in which the environment is inconsistent, the main device controller <NUM> may control the main device communication unit <NUM> to transmit an error state value, which indicates that the environment is inconsistent, to the remote device <NUM>. The user may check an error state and decide whether to update a map image. In a case in which the main device controller <NUM> receives an "update map" command, the main device controller <NUM> updates the map image on the basis of a user command. In a case in which the environment is inconsistent, the main device controller <NUM> may also automatically update the map image.

To prevent malfunctioning due to the environmental inconsistency, in a case in which the environment is inconsistent, the main device controller <NUM> may control the main device <NUM> to stop cleaning and return to be charged.

While the main device <NUM> performs cleaning, the main device controller <NUM> may determine whether a region that is unable to be cleaned is present. In a case in which a region unable to be cleaned is present, the main device controller <NUM> may control the main device communication unit <NUM> to transmit the error state value, which indicates that the region unable to be cleaned is present. The user may check that the region unable to be cleaned is present and determine whether to change a region to be cleaned. In a case in which the main device controller <NUM> receives a "move divided region" command, the main device controller <NUM> generates a control signal so that the main device moves to the next divided region. In a case in which a region unable to be cleaned is present, the main device controller <NUM> may automatically generate a control signal for the main device <NUM> to move to the next divided region along the generated movement path. For example, the order of divided regions in which the main device <NUM> moves may be set to be clockwise or counterclockwise from a divided region that is the closest to the main device <NUM> or from a divided region that is the farthest from the main device <NUM>, may be set to be from the largest divided region to the smallest divided region, or may be set to be from the smallest divided region to the largest divided region. In this way, various methods may be employed in accordance with the user's setting. Even in this case, the main device controller <NUM> may control the main device <NUM> to stop cleaning and return to be charged.

The main device controller <NUM> may generate a control signal for the main device storage unit <NUM>. The main device controller <NUM> may also generate a control signal so that a generated map image is stored. The main device controller <NUM> may generate a control signal so that a map image and a cleaning schedule received from the remote device <NUM> are stored.

The main device controller <NUM> may be various processors including at least one chip in which an integrated circuit is formed. Although the main device controller <NUM> may be provided in a single processor, the main device controller <NUM> may also be separately provided in a plurality of processors.

The main device UI <NUM> may display a current operation situation of the main device <NUM> and a map image of a section in which the main device <NUM> is currently present, and display the current position of the main device <NUM> on the displayed map image. The main device UI <NUM> may receive an operation command of the user and transmit the received operation command to a controller. The main device UI <NUM> may be the same as or different from the main device UI <NUM> which has been described with reference to <FIG>.

The main device UI <NUM> may include the main device input unit <NUM> and the main device display unit <NUM>. Since the forms in which the main device input unit <NUM> and the main device display unit <NUM> are implemented may be the same as the above-described forms of the remote device input unit <NUM> and the remote device display unit <NUM>, descriptions thereof will be omitted.

Although it has been described in the above-described embodiment that the remote device input unit <NUM> of the remote device UI <NUM> receives the generate map command, the designate divided region command, the start cleaning command, and the end cleaning command, such user commands may also be directly received by the main device input unit <NUM> of the main device UI <NUM>.

Although it has been described in the above-described embodiment that the remote device display unit <NUM> of the remote device UI <NUM> outputs a screen corresponding to a user command or a state of the main device <NUM>, the screen corresponding to a user command or a state of the main device <NUM> may also be directly output by the main device display unit <NUM> of the main device UI <NUM>.

The main device storage unit <NUM> temporarily or non-temporarily stores data and programs for the operation of the main device <NUM>. For example, the main device storage unit <NUM> may temporarily or non-temporarily store a state value of the main device <NUM>. The main device storage unit <NUM> may store cleaning history data, and the cleaning history data may be periodically or non-periodically updated. In a case in which the main device controller <NUM> generates a map image or updates the map image, the main device storage unit <NUM> may store the generated map image or the updated map image. The main device storage unit <NUM> may store a map image received from the remote device <NUM>.

The main device storage unit <NUM> may store a program for generating the map image or updating the map image. The main device storage unit <NUM> may store a program for generating or updating the cleaning history data. The main device storage unit <NUM> may also store a program for determining whether an environment is consistent, a program for determining whether a certain region is a region unable to be cleaned, or the like.

Such a main device storage unit <NUM> may include at least one type of storage medium from among a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (for example, a SD or XD memory, or the like), a RAM, a SRAM, a ROM, an EEPROM, a PROM, a magnetic memory, a magnetic disk, and an optical disc. However, the main device storage unit <NUM> is not limited thereto and may also be implemented in other arbitrary forms known in the same technical field.

<FIG> is a control block diagram of a communication unit according to one embodiment, and <FIG> is a control block diagram of a communication unit according to another embodiment.

Referring to <FIG>, a communication unit may include a remote device communication unit <NUM> included in a remote device <NUM> and a main device communication unit <NUM> included in a main device <NUM>.

The remote device communication unit <NUM>, the main device communication unit <NUM>, and a network may be connected to each other and transmit and receive data to and from each other. For example, the main device communication unit <NUM> may transmit a map image generated by the main device controller <NUM>, the current position of the main device <NUM>, and a state value of the main device <NUM> to the remote device <NUM>, and the remote device communication unit <NUM> may transmit a user command to the main device <NUM>. The remote device communication unit <NUM> may be connected to the network, receive an operation state of another home appliance <NUM>, and transmit a control command related thereto. The main device communication unit <NUM> may be connected to another remote device <NUM> and receive the control command therefrom.

Referring to <FIG>, the main device communication unit <NUM> may be connected to the network and download plan view data from a server <NUM>.

The remote device communication unit <NUM> may include a remote device short range communication module <NUM>, which is a short range communication module, a remote device wired communication module <NUM>, which is a wired communication module, and a remote device mobile communication module <NUM>, which is a mobile communication module. The main device communication unit <NUM> may include a main device short range communication module <NUM>, which is a short range communication module, a main device wired communication module <NUM>, which is a wired communication module, and a main device mobile communication module <NUM>, which is a mobile communication module.

Here, the short range communication module may be a module for short range communication within a predetermined distance. A short range communication technique may include a wireless local area network (LAN), a wireless fidelity (Wi-Fi), Bluetooth, ZigBee, Wi-Fi Direct (WFD), ultra wideband (UWB), infrared data association (IrDA), Bluetooth low energy (BLE), near field communication (NFC), and the like, but is not limited thereto.

The wired communication module refers to a module for communication using an electrical signal or an optical signal. A wired communication technique may include a pair cable, a coaxial cable, an optical fiber cable, an Ethernet cable, and the like, but is not limited thereto.

The mobile communication module may transmit and receive a wireless signal to and from at least one of a base station, an external terminal, and the server <NUM> in a mobile communication network. The wireless signal may include a voice call signal, a video call signal, or various forms of data in accordance with transmission and reception of text/multimedia messages.

Hereinafter, a menu selection screen displayed on a remote device according to one embodiment will be described with reference to <FIG> and <FIG>.

<FIG> is an exemplary view of a home screen of a remote device UI.

The remote device UI <NUM> including the remote device input unit <NUM> and the remote device display unit <NUM> may be provided at a front surface of the remote device <NUM>. The remote device input unit <NUM> may include a plurality of buttons. In this case, the buttons may be hardware buttons or software buttons. The remote device display unit <NUM> may be configured as a TSP and sense a user's input.

An application for managing the main device <NUM> may be installed in the remote device <NUM>. In this case, the application for managing the main device <NUM> will be simply referred to as a "cleaning robot application.

Although a case in which the cleaning robot application is installed in the remote device <NUM> is employed in the embodiment below, embodiments are not necessarily limited thereto, and the cleaning robot application may also be directly installed in the main device <NUM>.

The remote device display unit <NUM> may display the installed application on the home screen and provide convenience for the user to access the application. For example, the remote device display unit <NUM> may display the installed application with an icon <NUM> titled "cleaning robot.

The user may execute the cleaning robot application by touching the "cleaning robot" icon <NUM>. When the cleaning robot application is executed, the remote device display unit <NUM> may switch the screen to the one illustrated in <FIG>.

<FIG> is an exemplary view of a menu selection screen of the remote device UI.

A "home screen" icon 190a may be displayed at the top of a remote device display unit <NUM> for returning to the home screen. That is, when the "home screen" icon 190a is selected, the screen may be switched back to the one illustrated in <FIG>. A "map management" icon <NUM> and a "cleaning management" icon <NUM> may be sequentially displayed in that order below the "home screen" icon 190a. Here, the "map management" icon <NUM> is an icon provided for generating or managing a map image of a region in which the main device <NUM> travels or cleans, i.e., a region to be cleaned. The "cleaning management" icon <NUM> is an icon provided for designating a specific divided region on the basis of a generated map image and making the main device <NUM> move or perform cleaning.

The user may select the "cleaning management" icon <NUM> and switch the screen of the remote device display unit <NUM> to a screen for making the main device <NUM> move or perform cleaning.

<FIG> is an exemplary view of a map image displayed by the remote device UI of the cleaning robot according to one embodiment, and <FIG> is an exemplary view of a map image displayed by the remote device UI of the cleaning robot according to another embodiment.

In accordance with a user's input on a "map generation" icon, a main device controller <NUM> may perform cleaning or move at least one time in a space in which a main device <NUM> is currently present, generate a map including obstacle information, and analyze a structure of the map on the basis of the generated map. The main device controller <NUM> may divide the map into a plurality of regions on the basis of the analyzed map structure, and generate a map image including the plurality of divided regions.

The map image generated by the main device controller <NUM> according to one embodiment may be transmitted to a remote device <NUM> via a main device communication unit <NUM> and a remote device communication unit <NUM>, and the transmitted map image may be displayed on a remote device UI <NUM>.

Specifically, in a case in which the main device controller <NUM> combines four divided regions (first to fourth regions Z1 to Z4) and generates a map image depicting one living room and three rooms, the map image may be generated so that a fourth region Z4, which is a living room, is disposed at the center, a first region Z1, which is a room, is disposed at the left from the fourth region Z4, and a second region <NUM> and a third region Z3 are disposed at the right from the fourth region Z4 as shown in <FIG>. A map image <NUM> in which figures corresponding to sizes of the divided regions are placed as the first region Z1 to the third region Z3 may be generated, and the generated map image <NUM> may be displayed on the remote device UI <NUM>. Here, the figures include free figures formed as closed loops.

The main device controller <NUM> according to another embodiment may search for a plan view <NUM> corresponding to a map image as shown in <FIG> from the main device storage unit <NUM> and allow the found plan view <NUM> to be displayed on the remote device UI <NUM>.

Cleaning operations and screens of the cleaning robot <NUM> disclosed in <FIG> may be performed and displayed in a case in which the user selects the "cleaning management" icon <NUM> illustrated in <FIG>, or may be automatically performed and displayed after a map image is generated.

Hereinafter, for convenience of description, a process performed in a case in which a "manage cleaning" command is input to the cleaning robot will be described using the map image <NUM> according to one embodiment illustrated in <FIG> as an example. <FIG> are conceptual diagrams for describing processes in which the user commands cleaning operations of the cleaning robot on the basis of a map image displayed by the remote device UI of the cleaning robot and screens output by the remote device UI in accordance with user commands or states of the main device according to one embodiment.

Referring to <FIG>, a "home screen" icon 190a and a "previous screen" icon 190b for returning to the previous screen may be displayed at the top of the remote device UI <NUM> according to one embodiment. That is, when the "previous screen" icon 190b is selected, the screen may be switched back to the previous screen.

The remote device UI <NUM> may display (171a) a map image 171a showing that a main device <NUM> is currently at the center of the bottom of a fourth region Z4, which is a living room.

The current position of the main device <NUM> may be determined by a main device controller <NUM> on the basis of values sensed by a main device sensor unit <NUM>, and the main device controller <NUM> may match the current position of the main device <NUM> to the map image 171a stored in a main device storage unit <NUM> to control the UI <NUM> to display the position of the main device <NUM> on the map image 171a.

As illustrated in <FIG>, a user U may specify and designate a second region <NUM>, in which the user U wishes to perform cleaning or to which the user U wishes to move a main device <NUM>, from a map image 171b-<NUM> using his or her finger. In a case in which the user U designates the second region <NUM>, a remote device UI <NUM> may change an outline display attribute of the second region <NUM> by displaying an outline of the second region <NUM> in a different color or displaying (171b-<NUM>) the outline of the second region <NUM> in bold font so that the second region <NUM>, which is a designated region <NUM>, is differentiated from the other divided regions.

In a case in which at least one divided region is designated by the user U, the remote device UI <NUM> may display a "start cleaning" icon i1 at the bottom of the screen.

By selecting the "start cleaning" icon i1 at the bottom of the screen, the user U may input the start cleaning command so that the main device <NUM> moves to the designated region <NUM> along a generated movement path and performs cleaning. In addition, the user U may input the start cleaning command using various other methods such as a voice command. Various known techniques may be employed as a method of inputting the start cleaning command. The main device <NUM> may also automatically start cleaning along the movement path when a predetermined amount of time elapses after the designate divided region command is input.

In a case in which the start cleaning command is input, the remote device communication unit <NUM> transmits information on the input start cleaning command and the designated region <NUM> designated by the user U to the main device communication unit <NUM>. Then, a main device controller <NUM> moves the main device <NUM> to the designated region <NUM> and, in a case in which the main device <NUM> is moved to the designated region <NUM>, controls the main device <NUM> to perform cleaning. In this case, a main device communication unit <NUM> may transmit a current state value of the main device <NUM> (for example, whether the main device <NUM> is moving or performing cleaning, has completed cleaning, or whether an error occurred) and cleaning history data to the remote device communication unit <NUM>.

In a case in which the main device <NUM> moves to the designated region <NUM>, the main device <NUM> may move along a movement path generated by the main device controller <NUM> or the remote device controller <NUM>. The generation of the movement path will be described below.

According to one embodiment, in a case in which the remote device communication unit <NUM> receives a "moving" state value as the current state value of the main device <NUM> from the main device communication unit <NUM>, as illustrated in <FIG>, the remote device UI <NUM> may display a translucent layer 191a over a map image 171c-<NUM>, and the main device <NUM> may display an animation 191b from which a user may intuitively recognize that the main device <NUM> is moving. In addition, the remote device UI <NUM> may display a message <NUM>, which indicates that the main device <NUM> is moving.

In a case in which the start cleaning command is input, the "start cleaning" icon i1 at the bottom of the screen may be changed to an "end cleaning" icon i2.

By selecting the "end cleaning" icon i2 at the bottom of the screen, the user U may input the end cleaning command so that the main device <NUM> stops cleaning that was being performed. In addition, the user U may input the end cleaning command using various other methods such as a voice command. Various known techniques may be employed as a method of inputting the end cleaning command.

According to another embodiment, as illustrated in <FIG>, in a case in which a remote device communication unit <NUM> receives a "moving" state value as a current state value of a main device <NUM> from a main device communication unit <NUM>, a remote device UI <NUM> may display a movement path <NUM> of the main device <NUM>. The movement path may be a predicted movement path to the designated region <NUM> that is arbitrarily generated by a remote device controller <NUM> or a main device controller <NUM> regardless of an actual movement path of the main device <NUM>, may be an actual path along which the main device <NUM> moves in real time, or may include both the predicted movement path and the actual path.

For example, a predicted movement path <NUM> may be generated for the main device <NUM> to move upward from the fourth region Z4 and then move rightward so as to move from the point at which the main device <NUM> is currently present to the designated region <NUM>. In a case in which a plurality of designated regions are present, the predicted movement path <NUM> may also be a path indicating an order of designated regions in which the main device <NUM> moves.

In a case in which the movement path includes both the predicted movement path and the actual path, a path through which the main device <NUM> has already passed may be removed from the predicted movement path in real time. A path through which the main device <NUM> has already passed may also be removed in a case in which the main device <NUM> has completed moving.

In a case in which the main device <NUM> is moving, the remote device UI <NUM> may re-change the outline display attribute of the designated region <NUM> on a map image 171c-<NUM> and may also change the outline display attribute to correspond to that prior to a divided region being designated. However, since the outline display attribute may also be re-changed in a case in which the remote device communication unit <NUM> receives a "cleaning completed" state value as the current state value of the main device <NUM> from the main device communication unit <NUM>, the outline display attribute being re-changed in a case in which the cleaning completed state value is transmitted will be described below as an example.

In a case in which the remote device communication unit <NUM> receives a "cleaning" state value as the current state value of the main device <NUM> from the main device communication unit <NUM>, as illustrated in <FIG>, the remote device UI <NUM> may display a "cleaning" icon (for example, a hollow circular icon), which indicates that cleaning is being performed, above a name <NUM> of the designated region <NUM>. As illustrated in <FIG>, a "cleaning icon" 190c may also be displayed in the form of animation that moves within the designated region <NUM>.

The remote device UI <NUM> may also display a message <NUM>, which indicates that the main device <NUM> is performing cleaning.

In a case in which the remote device communication unit <NUM> receives the "cleaning completed" state value as the current state value of the main device <NUM> from the main device communication unit <NUM>, as illustrated in <FIG>, the remote device UI <NUM> may display a "cleaning completed" icon (for example, a check icon), which indicates that cleaning is completed, above the name <NUM> of the designated region <NUM>. In a case in which cleaning is completed, the remote device UI <NUM> may re-change the outline display attribute of the designated region <NUM> on the map image 171c-<NUM> or change the outline display attribute to correspond to that prior to a divided region being designated.

The remote device UI <NUM> may also display a message <NUM>, which indicates that the main device <NUM> has completed cleaning.

In a case in which a movement environment is determined to be different from a map image or is determined to not be possible for the main device <NUM> to move or perform cleaning therein while the main device <NUM> is moving or performing cleaning, the main device communication unit <NUM> may transmit a state value, which indicates that cleaning is not possible, to the remote device communication unit <NUM> as illustrated in <FIG>. In a case in which the remote device communication unit <NUM> has received such a state value, the remote device UI <NUM> may display an "error occurrence" icon (for example, an exclamation mark icon), which indicates that an error has occurred.

The remote device UI <NUM> may also display a message <NUM>, which notifies the user of the occurrence of an error.

Although the outline display attribute of the designated region <NUM> being changed in accordance with the current state value of the main device <NUM> has been described as an example in the above-described embodiment, a display attribute of the name <NUM> of the designated region <NUM> may also be changed.

<FIG> and <FIG> are conceptual views of screens of a UI according to another embodiment. <FIG> illustrates a screen through which a designate divided region command is received, and <FIG> illustrates a screen displayed in a case in which cleaning is completed.

Referring to <FIG>, in a case in which a user U designates a second region <NUM>, a remote device UI <NUM> may change a display attribute of the name of the designated region <NUM> by displaying a name <NUM> of the second region <NUM> in a different color or displaying (171b-<NUM>) the name <NUM> in bold font so that the second region <NUM>, which is the designated region <NUM>, is differentiated from the other divided regions.

In a case in which a main device <NUM> is moving, the remote device UI <NUM> may re-change a name display attribute of the designated region <NUM> on a map image 171c-<NUM> and may also change the name display attribute to correspond to that prior to a divided region being designated. The name display attribute may also be re-changed in a case in which the remote device communication unit <NUM> receives the "cleaning completed" state value as the current state value of the main device <NUM> from a main device communication unit <NUM> as illustrated in <FIG>.

Although it has been disclosed in the above-described embodiment that the user U specifies only one divided region using his or her finger, the user U may also specify and designate a plurality of divided regions on a map image and a cleaning order of the plurality of divided regions.

<FIG> is a conceptual diagram of a screen through which commands for specifying and designating a plurality of divided regions and a cleaning order of the plurality of divided regions are received.

Referring to <FIG>, a remote device UI <NUM> may sequentially receive designations of a plurality of divided regions <NUM> and <NUM> from a user U, and an order in which the plurality of divided regions <NUM> and <NUM> are designated may be stored in a remote device storage unit <NUM>.

In a case in which the user U designates the plurality of divided regions <NUM> and <NUM> and an order thereof (<NUM> -> <NUM>) and inputs a start cleaning command, a main device <NUM> may receive information on the designated divided regions <NUM> and <NUM> and the order in which the divided regions are designated, generate a movement path in accordance with the designation order, and move and perform cleaning along the movement path.

Even in a case in which the user U designates only the plurality of divided regions <NUM> and <NUM> and does not designate a cleaning order thereof, a main device controller <NUM> may generate a movement path in accordance with a pre-stored cleaning order (for example, <NUM> -> <NUM>) and control the main device <NUM> to move and perform cleaning along the generated movement path. In this case, the remote device UI <NUM> may display the generated movement path.

For example, the cleaning order may be set to be clockwise or counterclockwise from a divided region that is the closest to the current position of the main device <NUM> or from a divided region that is the farthest from the current position of the main device <NUM>, may be set to be from the largest divided region to the smallest divided region, may be set to be from the smallest divided region to the largest divided region, or may be set to be from a divided region that is the most adjacent to the current position of the main device <NUM>. In this way, various methods may be employed.

Hereinafter, a process in which the main device <NUM> generates a movement path and moves and performs cleaning along the generated movement path will be described in detail with reference to <FIG> is a detailed control block diagram of the main device according to one embodiment.

Referring to <FIG>, a main device <NUM> may include a main device sensor unit <NUM>, a main device storage unit <NUM>, a main device controller <NUM>, and a main device driver <NUM>.

The main device sensor unit <NUM> may recognize a position of the main device <NUM> through movement of the main device <NUM> in a space to be cleaned in which the main device <NUM> is present, and transmit the position information to the main device controller <NUM>. Since detailed descriptions related to the main device sensor unit <NUM> have been given above with reference to <FIG>, repetitive descriptions will be omitted.

The main device storage unit <NUM> stores a map image <NUM> including one or more divided regions. In this case, the main device storage unit <NUM> may store the map image <NUM> generated by the "generate map" command of the user.

The main device storage unit <NUM> may store a program for generating a movement path or store the map image <NUM> downloaded from the outside. Since detailed descriptions related to the main device storage unit <NUM> have been given above with reference to <FIG>, repetitive descriptions will be omitted.

The main device controller <NUM> may include a position determiner <NUM>, a movement path generator <NUM>, a movement controller <NUM>, a virtual wall setter <NUM>, and a cleaning controller <NUM>.

On the basis of position information of the main device <NUM> received from the main device sensor unit <NUM> and the map image <NUM> stored in the main device storage unit <NUM>, the position determiner <NUM> matches the current position of the main device <NUM> with the map image <NUM>.

The movement path generator <NUM> selects a divided region to which the main device <NUM> moves in accordance with a user command and sets a target point to which the main device <NUM> moves within the selected divided region. Then, the movement path generator <NUM> sets a path along which the main device <NUM> moves to the target point.

According to one embodiment, the target point to which the main device <NUM> moves is a point at which the main device <NUM> is the most likely to be actually present within the divided region selected by the user. The target point to which the main device <NUM> moves may be a central point of the divided region or a point farthest from surrounding obstacles within the divided region. The target point to which the main device <NUM> moves will be described below with reference to <FIG>.

Since the generation of a path along which the main device <NUM> moves has been described above, repetitive descriptions will be omitted.

The movement controller <NUM> controls a driving wheel driver <NUM> of the main device driver <NUM> to allow the main device <NUM> to move to the target point along the generated movement path.

In a case in which the main device <NUM> is present at the target point, the virtual wall setter <NUM> generates a virtual wall around the selected divided region. At the virtual wall, an entry of the main device <NUM> is restricted. For example, the virtual wall may be set in the vicinity of a region dividing point of the divided region.

The virtual wall setter <NUM> may also set a virtual wall in accordance with a user command.

A detailed control process of the virtual wall setter <NUM> will be described below with reference to <FIG>.

The cleaning controller <NUM> controls the main device <NUM> to perform cleaning.

Specifically, the cleaning controller <NUM> may control the driving wheel driver <NUM> of the main device driver <NUM> to allow the main device <NUM> to travel, and may control the main brush driver <NUM> and a side-brush driver <NUM> to allow the main device <NUM> to perform cleaning while traveling.

According to one embodiment, the cleaning controller <NUM> may allow the driving wheel driver <NUM> to perform autonomous traveling. In this case, since an actual space to be cleaned in which the main device <NUM> is present is similar to the map image <NUM> stored in the storage unit <NUM>, the main device <NUM> may perform cleaning within the divided region intended by the user by partitions surrounding the divided region of the actual space to be cleaned and the virtual wall set by the virtual wall setter <NUM>.

In this way, in a case in which the main device <NUM> starts autonomous traveling from the target point, since the main device <NUM> performs cleaning throughout the entire divided region of the actual space to be cleaned even in a case in which the main image and the actual space to be cleaned do not exactly match each other, i.e., even when a position recognition error occurs in the main device <NUM>, the actual space to be cleaned may be thoroughly cleaned.

In a case in which a virtual wall is set at a region dividing point, since movement of the main device <NUM> at the virtual wall is restricted even when the main device <NUM> approaches the region dividing point while performing autonomous traveling, the main device <NUM> may be prevented from moving out of the divided region intended by the user.

According to another embodiment, the main device controller <NUM> may further include a virtual region setter configured to set a virtual region. <FIG> is a control block diagram of a virtual wall setter, a virtual region setter, and a cleaning controller of the main device controller <NUM> according to the other embodiment.

A virtual region setter <NUM> may set a virtual region having a boundary spaced a preset reference distance apart from a divided region on a map image selected by the user. The virtual region allows the main device <NUM> to thoroughly perform cleaning within the divided region of the actual space to be cleaned even when there is an error between the divided region of the actual space to be cleaned and a divided region of the map image. The virtual region may be a space within a virtual wall forming a closed loop.

In this case, the cleaning controller <NUM> may allow the driving wheel driver <NUM> to perform autonomous traveling within the virtual region set by the virtual region setter <NUM> and allow the main brush driver <NUM> and the side-brush driver <NUM> to perform cleaning while traveling.

In a case in which the virtual region is set, since movement of the main device <NUM> is restricted to be within the virtual region, the main device <NUM> may be prevented from moving out of the divided region intended by the user.

The cleaning controller <NUM> may also allow the driving wheel driver <NUM> to perform autonomous traveling outside the virtual region set by the virtual region setter <NUM> and allow the main brush driver <NUM> and the side-brush driver <NUM> to perform cleaning while traveling. Here, whether autonomous traveling is performed within the virtual region or outside the virtual region may be selected by the user through UI. The virtual region setter <NUM> may also set the virtual region in accordance with a user command. A method of setting the virtual region in accordance with a user command will be described below with reference to <FIG>.

Hereinafter, a detailed process in which the movement path generator <NUM> of the main device controller <NUM> generates the movement path, the virtual wall setter <NUM> sets the virtual wall, and the virtual region setter <NUM> sets the virtual region according to one embodiment will be described with reference to <FIG>.

<FIG> and <FIG> are exemplary views for describing a method of setting a movement path of a main device set by a movement path generator and a target point of the main device.

Referring to <FIG>, for a main device <NUM> to move to the divided region Z2, which is designated in accordance with a user command, from a point on a map image at which the main device <NUM> is currently present, a movement path generator <NUM> sets a target point within the designated divided region Z2.

For moving the main device <NUM> to the target point, the movement path generator <NUM> may set a movement path so that the main device <NUM> moves upward by a first distance, moves rightward by a second distance, moves upward again by a third distance, and then moves rightward by a fourth distance. Since a method of setting the first to fourth distances as the shortest possible distances is a known technique, descriptions thereof will be omitted.

In this case, a remote device UI <NUM> may display a position of the main device <NUM> in real time and also display a generated movement path.

Referring to <FIG>, a target point Pd may be a central point of a divided region Z2 selected by a user from a map image, or may be a point farthest from surrounding obstacles P1 to P4 within the divided region Z2.

The target point Pd may also be a point that is the closest to the central point of the divided region Z2 selected by the user from the map image and farthest from surrounding obstacles P1 to P4 within the divided region Z2.

The target point Pd may also be any one point that is present within the divided region Z2 selected by the user from the map image and the closest to the current position of the main device <NUM>. In addition, the target point Pd may also be various other points within the divided region Z2.

<FIG> is an exemplary view of a virtual wall set by a virtual wall setter, and <FIG> is a view for describing a process in which a main device performs cleaning in a divided region of an actual space to be cleaned in a case in which the virtual wall is set.

Referring to <FIG>, a virtual wall setter <NUM> may set a virtual wall W1 in the vicinity of a region dividing point corresponding to a divided region Z2 selected by a user from the map image. The virtual wall W1 may include a point at which the region dividing point is formed.

Referring to <FIG>, after a virtual wall W1 is set, a cleaning controller <NUM> may control a main device <NUM> to perform autonomous traveling and cleaning, and the main device <NUM> may thoroughly perform cleaning within the region intended by a user by a partition Z2R that surrounds a divided region of the actual space to be cleaned and the virtual wall W1, which is set by a virtual wall setter <NUM>.

As an example, in a case in which cleaning is performed in a specific divided region Z2-<NUM>, which was not sensed due to an obstacle when a map image was generated, after the obstacle is removed therefrom, the main device <NUM> may also perform cleaning in the specific divided region Z2-<NUM> by autonomous traveling.

In a case in which the main device <NUM> performs cleaning while autonomously traveling in real time, a cleaning controller <NUM> may remove a path through which the main device <NUM> has already passed in real time.

The main device controller <NUM> according to another embodiment may further include the virtual region setter <NUM>. <FIG> and <FIG> are exemplary views of a virtual region set by a virtual region setter automatically or manually.

Referring to <FIG>, a virtual region setter <NUM> may set a virtual region W2 having a boundary spaced a preset reference distance (e.g., <NUM>) apart from a divided region Z2 selected by the user from the map image. In this case, in accordance with control of a cleaning controller <NUM>, a main device <NUM> autonomously travels and performs cleaning within the virtual region W2 set by the virtual region setter <NUM>.

Even in this case, the cleaning controller <NUM> may restrict movement of the main device <NUM> at a virtual wall W1 in a case in which the main device <NUM> approaches the virtual wall W1 set by a virtual wall setter <NUM>. In a case in which the virtual region W2 is generated, the virtual wall W1 set by the virtual wall setter <NUM> may also be removed.

Referring to <FIG>, a virtual region setter <NUM> may also set a virtual region manually in accordance with a user command.

By performing drag-and-drop from any one point of a map image displayed on a remote device UI <NUM> to another point thereon, a user U may designate a virtual region forming a certain figure. In accordance with control of the cleaning controller <NUM>, the main device <NUM> may autonomously travel and perform cleaning within the virtual region W2 set by the virtual region setter <NUM>.

In addition, the user U may also designate the virtual region by a method of drawing a closed loop at any one point of the map image displayed on the remote device UI <NUM>.

Although it has been described in the above-described embodiment that only the virtual region W2 is set in accordance with a user command, the virtual wall W1 may also be set in accordance with a user command. In addition, a plurality of virtual walls W1 may be set.

<FIG> is an exemplary view of a plurality of virtual walls set in accordance with a user command.

By performing drag-and-drop from any one point of a map image displayed on a remote device UI <NUM> to another point thereon, a user U may designate virtual walls W3 and W4 formed in a straight line or a curve on the map image.

The plurality of virtual walls W3 and W4 may be designated.

In this case, a main device <NUM> may autonomously travel in accordance with control of a cleaning controller <NUM>, but in a case in which the main device <NUM> approaches any one of the plurality of virtual walls W3 and W4, traveling of the main device <NUM> to the corresponding virtual wall W3 or W4 may be restricted.

In a case in which it is determined that the main device <NUM> has completed traveling in all paths, the cleaning controller <NUM> controls a main device driver <NUM> to stop traveling, and a movement path generator <NUM> removes a virtual wall and a virtual region.

The movement path generator <NUM> sets a target point in the next divided region in accordance with a set cleaning order, and generates a movement path to the target point.

Like the target point described above, the target point in the next divided region may also be at least one of a central point of the divided region, a point farthest from surrounding obstacles, and any one point that is present within the next divided region and the closest to the current position of the main device <NUM>.

Although it has been described in the above-described embodiment that a position determiner <NUM>, the movement path generator <NUM>, the movement controller <NUM>, a virtual wall setter <NUM>, the cleaning controller <NUM>, and the virtual region setter <NUM> are implemented as separate modules that implement different functions, embodiments are not necessarily limited thereto, and at least two or more of the position determiner <NUM>, the movement path generator <NUM>, the movement controller <NUM>, the virtual wall setter <NUM>, the cleaning controller <NUM>, and the virtual region setter <NUM> may be implemented in a single module. In addition, although it has been described in the above-described embodiment that the position determiner <NUM>, the movement path generator <NUM>, the movement controller <NUM>, the virtual wall setter <NUM>, the cleaning controller <NUM>, and the virtual region setter <NUM> are implemented in the main device <NUM>, each of the elements may also be implemented in a remote device <NUM>, and in this case, sensor values of the main device sensor unit <NUM> and a control signal for controlling the main device driver <NUM> may be transmitted and received through the remote device communication unit <NUM> and the main device communication unit <NUM>.

Hereinafter, a method of controlling the cleaning robot <NUM> according to one embodiment will be described with reference to <FIG> is a flowchart of a method of controlling the cleaning robot according to one embodiment.

The reference numerals of the elements described with reference to <FIG> will be referenced for reference numerals of the elements of the cleaning robot <NUM> which will be described with reference to <FIG>.

In a method of controlling a cleaning robot <NUM> according to one embodiment, at least one divided region is designated by a user (S1110).

The designating of the divided region may be performed by a remote device input unit <NUM> of a remote device UI <NUM>.

In the method of controlling the cleaning robot <NUM>, a plurality of divided regions may be designated by a user, and in this case, a remote device controller <NUM> may store an order in which the divided regions are designated in a remote device storage unit <NUM>.

Next, in the method of controlling the cleaning robot <NUM> according to one embodiment, an outline display attribute of the designated divided region is changed (S1120). In the method of controlling the cleaning robot <NUM> according to another embodiment, a name display attribute of the designated divided region may be changed.

As an example, the changing of the outline display attribute may include changing color of the outline of the designated region or displaying the outline in bolt font, and the changing of the name display attribute may include changing color of a displayed name or displaying the name in bold font.

The changing of the outline display attribute or the name display attribute of the divided region includes changing an outline or name of a designated region displayed on a remote device display unit <NUM> by the remote device controller <NUM>.

Next, in the method of controlling the cleaning robot <NUM> according to one embodiment, a main device moving command is received from a user (S1130).

The receiving of the main device moving command may include receiving a "start cleaning" command from the user by a remote device input unit <NUM>. A separate start moving command may also be received in accordance with an implementation form of an application.

Next, in the method of controlling the cleaning robot <NUM> according to one embodiment, an animation and a message, which indicate that the main device <NUM> is moving, are output (S1140).

In a case in which the remote device communication unit <NUM> receives a "moving" state value from the main device <NUM>, the outputting of the animation and message may include displaying a translucent layer over a map image by the remote device display unit <NUM> and displaying an animation from which the user may intuitively recognize that the main device <NUM> is moving.

In a case in which the remote device communication unit <NUM> receives the "moving" state value from the main device <NUM>, the remote device display unit <NUM> may also display a movement path of the main device <NUM>.

The outputting of the animation and message may include re-changing the outline display attribute of the designated divided region. The outputting of the animation and message may include re-changing the name display attribute of the designated divided region.

As an example, the re-changing of the outline display attribute may include restoring the outline display attribute of the designated region to that prior to changes being made, and the re-changing of the name display attribute may include restoring the name display attribute of the designated region to that prior to changes being made. However, the re-changing of the outline display attribute or the name display attribute may also be performed in a case in which a "cleaning completed" state value is received, which will be described below.

Next, in the method of controlling the cleaning robot <NUM> according to one embodiment, a main device cleaning command is received from a user (S1150).

In a case in which receiving a main device moving command includes receiving the "start cleaning" command from the user, the receiving of the main device cleaning command may be omitted.

The receiving of the main device cleaning command from the user may be performed by the remote device input unit <NUM>.

Next, in the method of controlling the cleaning robot <NUM> according to one embodiment, an icon, which indicates that the main device <NUM> is performing cleaning, is displayed, and a message indicating the same is output (S1160).

In a case in which the remote device communication unit <NUM> receives the "cleaning" state value from the main device <NUM>, the displaying of the icon may include displaying a "cleaning" icon (for example, a hollow circular icon) above the name of the designated region by the remote device display unit <NUM>. In addition, the displaying of the icon may include displaying the "cleaning" icon in the form of an animation that moves within a designated region <NUM>.

Next, in the method of controlling the cleaning robot <NUM> according to one embodiment, whether an error has occurred in the main device <NUM> is determined (S1170).

The determining of whether an error has occurred includes receiving an "error occurrence" state value from the main device <NUM>.

Next, in the method of controlling the cleaning robot <NUM> according to one embodiment, in a case in which an error has occurred, i.e., the error occurrence state value is received, the "error occurrence" icon is displayed and an error occurrence message is output (S1180).

The displaying of the error occurrence icon may include, for example, displaying an exclamation mark icon above the name of the divided region in which an error has occurred.

Next, in the method of controlling the cleaning robot <NUM> according to one embodiment, in a case in which an error did not occur, i.e., the error occurrence state value is not received, whether cleaning is completed is determined (S1190).

The determining of whether cleaning is completed includes receiving a "cleaning completed" state value from the main device <NUM> by the remote device communication unit <NUM>.

Next, in the method of controlling the cleaning robot <NUM> according to one embodiment, in a case in which cleaning is completed, i.e., the cleaning completed state value is received, a "cleaning completed" icon is displayed, and a cleaning completed message is output (S1200).

The displaying of the cleaning completed icon may include, for example, displaying a check icon above the name of the divided region in which cleaning is completed.

In the method of controlling the cleaning robot <NUM> according to one embodiment, in a case in which cleaning is not completed, i.e., the cleaning completed state value is not received, the determining of whether an error has occurred (S1170) is performed again.

Although the case in which any one divided region is designated has been described in the above-described embodiment, a plurality of divided regions may be designated by the user, and a cleaning order of the divided regions may be designated. In this case, in the method of controlling the cleaning robot <NUM>, the main device may be allowed to move and perform cleaning in accordance with the designated cleaning order, and various remote device UIs <NUM> may be implemented in accordance with a user command or a state value of the main device <NUM>.

Hereinafter, a method of controlling the cleaning robot <NUM> according to another embodiment will be described with reference to <FIG> is a flowchart of a method of controlling the cleaning robot according to another embodiment.

In a method of controlling a cleaning robot <NUM> according to another embodiment, position information related to the current position of a main device <NUM> is received from a main device sensor unit <NUM>, and a current position of the main device <NUM> is matched with a map image (S2110).

In this case, the map image may be pre-stored in a main device storage unit <NUM> or pre-stored in a remote device storage unit <NUM>. The map image includes information on one or more divided regions and information on a region dividing point of each divided region.

For example, in a case in which a space to be cleaned is a home, a divided region may correspond to a room, and a region dividing point may correspond to a door of the room.

The matching of the current position of the main device <NUM> with the map image may be performed by a position determiner <NUM> of a main device controller <NUM> or may also be performed by a remote device controller <NUM>.

In a case in which the matching is performed by the remote device controller <NUM>, a remote device communication unit <NUM> may receive position information of the main device <NUM> from a main device communication unit <NUM>, and transmit the received position information to the remote device controller <NUM>.

Then, in the method of controlling the cleaning robot <NUM> according to another embodiment, at least one divided region is received as a target divided region from a user through a remote device UI <NUM> (S2120).

Here, the remote device UI <NUM> may directly receive the target divided region from the user or receive a cleaning order of a plurality of divided regions.

Then, in the method of controlling the cleaning robot <NUM> according to another embodiment, a target point is set within the divided region selected by the user, and a movement path of the main device <NUM> to the set target point is generated (S2130).

The target point within the divided region selected by the user may be any one of a central point of the selected divided region, a point farthest from surrounding obstacles within the selected divided region, and any one point that is present within the selected divided region and the closest to the current position of the main device <NUM>.

The setting of the target point and generating of the movement path may be performed by a movement path generator <NUM> of the main device controller <NUM> or may also be performed by the remote device controller <NUM>.

In a case in which the setting of the target point and generating of the movement path are performed by the movement path generator <NUM> of the main device controller <NUM>, the main device communication unit <NUM> may receive a user command from the remote device communication unit <NUM>, and transmit the received user command to the movement path generator <NUM>.

Next, in the method of controlling the cleaning robot <NUM> according to one embodiment, the main device <NUM> is moved to the target point (S2140).

In a case in which the main device <NUM> is moved to the target point, the main device <NUM> may pass through a region dividing point.

The moving of the main device <NUM> to the target point may be performed by a moving controller <NUM> of the main device controller <NUM> or may also be performed by the remote device controller <NUM>.

In a case in which the moving of the main device <NUM> to the target point is performed by the moving controller <NUM> of the main device controller <NUM>, the moving controller <NUM> may control the driving wheel driver <NUM> of a main device driver <NUM> to move the main device <NUM> along the generated movement path.

In a case in which the moving of the main device <NUM> to the target point is performed by the remote device controller <NUM>, a control signal generated by the remote device controller <NUM> may be transmitted to the main device communication unit <NUM> via the remote device communication unit <NUM>, and the main device communication unit <NUM> may transmit the received control signal to the driving wheel driver <NUM> of the main device driver <NUM>.

Next, in the method of controlling the cleaning robot <NUM> according to one embodiment, in a case in which the main device <NUM> is present at the target point, a virtual wall is set (S2150).

For example, the virtual wall may be set to include a region dividing point of a selected divided region, i.e., a divided region on a map image in which the main device <NUM> is present.

The virtual wall may also be manually set in accordance with a user command.

The setting of the virtual wall may be performed by the virtual wall setter <NUM> of the main device controller <NUM> or may also be performed by the remote device controller <NUM>.

Information on the virtual wall may be stored in the main device storage unit <NUM> or the remote device storage unit <NUM>.

The method of controlling the cleaning robot <NUM> according to another embodiment may further include setting a virtual region in a case in which the main device <NUM> is present at the target point.

The virtual region may be automatically set to have a boundary spaced a preset reference distance apart from the divided region in which the main device <NUM> is present, or may also be manually set by the user.

The setting of the virtual region may be performed by the virtual region setter <NUM> of the main device controller <NUM> or may also be performed by the remote device controller <NUM>.

Information on the virtual region may be stored in the main device storage unit <NUM> or the remote device storage unit <NUM>.

Next, in the method of controlling the cleaning robot <NUM> according to one embodiment, the main device <NUM> is controlled to start cleaning (S2160).

The controlling of the main device <NUM> to start cleaning may include controlling the driving wheel driver <NUM> of the main device driver <NUM> by the cleaning controller <NUM> of the main device controller <NUM> to control the main device <NUM> to perform autonomous traveling, and controlling the main brush driver <NUM> and the side-brush driver <NUM> of the main device driver <NUM> by the cleaning controller <NUM> to control the main device <NUM> to perform cleaning while traveling.

The controlling of the main device <NUM> to start cleaning may also be performed by the remote device controller <NUM>. In this case, control signals for respectively controlling the driving wheel driver <NUM>, the main brush driver <NUM>, and the side-brush driver <NUM> may be generated by the remote device controller <NUM> and transmitted to the driving wheel driver <NUM>, the main brush driver <NUM>, and the side-brush driver <NUM> via the remote device communication unit <NUM> and the main device communication unit <NUM>.

Claim 1:
A cleaning robot (<NUM>) comprising:
a body (<NUM>);
a wheel assembly (<NUM>) configured to move the body;
a brush unit (<NUM>) configured to perform cleaning on a bottom surface of a moving path;
a communicator (<NUM>) configured to communicate with a remote device (<NUM>); and
a controller (<NUM>) configured to:
control the wheel assembly and the brush unit to clean a region excluding a virtual region (W2) among a cleanable region,
characterized in that the controller is further configured to determine a region among the cleanable region corresponding to a region selected by the user through the remote device (<NUM>) from a map image of the cleanable region as the virtual region (W2).