WO2016048077A1 - 청소 로봇 및 청소 로봇의 제어 방법 - Google Patents

청소 로봇 및 청소 로봇의 제어 방법 Download PDF

Info

Publication number
WO2016048077A1
WO2016048077A1 PCT/KR2015/010132 KR2015010132W WO2016048077A1 WO 2016048077 A1 WO2016048077 A1 WO 2016048077A1 KR 2015010132 W KR2015010132 W KR 2015010132W WO 2016048077 A1 WO2016048077 A1 WO 2016048077A1
Authority
WO
WIPO (PCT)
Prior art keywords
map
main device
map image
area
unit
Prior art date
Application number
PCT/KR2015/010132
Other languages
English (en)
French (fr)
Inventor
한성주
홍준표
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to AU2015322263A priority Critical patent/AU2015322263B2/en
Priority to EP15843361.5A priority patent/EP3199083B1/en
Priority to US15/514,466 priority patent/US10660496B2/en
Priority to CN201580062584.8A priority patent/CN107000207B/zh
Priority claimed from KR1020150135897A external-priority patent/KR102431994B1/ko
Publication of WO2016048077A1 publication Critical patent/WO2016048077A1/ko
Priority to IL251298A priority patent/IL251298B/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls

Definitions

  • the present invention relates to a cleaning robot for displaying a map including obstacle information as an image and a control method thereof.
  • the cleaning robot is a device that automatically cleans the cleaning space by driving foreign matter such as dust accumulated on the floor while driving the cleaning space without a user's operation. That is, the cleaning robot travels through the cleaning space and cleans the cleaning space.
  • the cleaning robot displays the structure of the house in which the cleaning robot is located by correcting it on a map including obstacle information or by setting a map of the house on the cleaning robot in advance.
  • the user has difficulty in intuitively recognizing the structure of the house and the position of the cleaning robot.
  • the user sets the map of the house in advance, the current position of the cleaning robot is displayed and the position of the obstacle. There was difficulty adapting to change.
  • the present invention provides a cleaning robot and a method of controlling the cleaning robot that analyzes the structure of the map and generates and displays a map having a simplified shape composed of a plurality of divided regions.
  • Cleaning robot is a sensor unit for detecting obstacle information; And a controller configured to generate a map based on a value detected by the sensor unit, analyze a structure of the map by detecting a region division point in the generated map, and generate a map image based on the analysis result.
  • the structure may be analyzed to determine a plurality of divided regions included in the map, replace each divided region with a figure, and generate a map image by combining a plurality of figures respectively corresponding to the plurality of divided regions.
  • the controller may detect the region splitting point based on the width of the section formed by the at least one pixel.
  • the controller may detect the region dividing point based on the width of a section formed by one or more pixels marked as obstacles while moving the detection point from the branch node to the leaf node of the skeleton of the map.
  • the controller may detect the detection point as an area dividing point when one or more pixels marked as obstacles form a width that is less than a reference value while moving the detection point.
  • the controller controls the detection point corresponding to the section having a width less than the reference value when one or more pixels marked as obstacles pass through the section having a width greater than or equal to the reference value while moving the detection point. It can detect as a split point.
  • the controller may determine a width of at least one of a horizontal direction, a vertical direction, and an arbitrary angular direction of one or more pixels as the width of the section based on the moving direction of the detection point.
  • the controller may determine a width of at least one of a horizontal direction, a vertical direction, and an arbitrary angular direction of one or more pixels as the width of the section based on the detection point.
  • the controller may generate a skeleton of the map and move the detection point outward from the center of the skeleton.
  • the control unit may include a skeleton generation unit for generating a skeleton of a map, an edge processing unit for removing unnecessary edges among one or more edges included in the skeleton, and separating the central node from another node of the skeleton, and the processing result and sensor unit of the edge processing unit.
  • the structure analyzer may include a region split point detector configured to detect a region split point formed between the center node and another node based on the detected value.
  • the region division point detector may distinguish one or more pixels formed in the direction of another node from the region division point as one division region.
  • the cleaning robot may further include a map processing unit which smoothly trims the appearance of the map.
  • the controller may further include an area divider configured to determine a plurality of divided areas included in the map based on the structure of the map analyzed by the structure analyzer.
  • the controller may further include a post processor that replaces each divided region with a preset figure based on the information about the divided regions.
  • the preset figure may have a shape of at least one of a rectangle, an ellipse, a circle, and a polygon.
  • the cleaning robot may further include a communication unit for transmitting the map image to the remote device.
  • the controller may search for a floor plan corresponding to the generated map image, and generate another map image based on the corresponding floor plan.
  • the cleaning robot may further include a storage unit in which plan view data including a plurality of plan views is stored, and the controller may search for a plan view corresponding to the generated map image among the plurality of plan views.
  • the controller may post-process the corresponding floor plan to generate another map image.
  • the controller may rotate the direction of the corresponding plan view as a post-processing and remove unnecessary space of the map image.
  • the controller may generate a map from the binarization data based on the value detected by the sensor unit.
  • a cleaning robot includes a storage unit in which at least one program is stored, and a controller for displaying a map image by executing at least one program, wherein the at least one program receives a map generation command from a user. ; Receiving a map image from a main device; And instructions for executing a step of displaying a map image, wherein the map image may include information on an area division point and a partition area generated based on an obstacle detection result of the main device.
  • the map image may be composed of a combination of preset figures.
  • the region division point may be displayed in the vertical direction or the horizontal direction.
  • the displaying of the map image may include displaying a location of the main device.
  • the at least one program may further include a command for selecting an arbitrary region from among the plurality of regions displayed on the map image from the user and moving the main device to the selected region.
  • a control method of a cleaning robot includes: detecting obstacle information; Generating a map based on the detected obstacle information; Analyzing the structure of the map by detecting region division points and partition regions in the map; And generating a map image based on the structure of the map.
  • the analyzing may include the map by analyzing the structure of the map.
  • the determining of the plurality of partitions may include determining a plurality of partitions, and generating the map image by replacing each partition with a figure and applying the plurality of partitions to the plurality of partitions.
  • the method may include generating a map image by combining a plurality of corresponding figures, respectively.
  • the analyzing may include detecting an area division point based on a width of a section formed by at least one pixel.
  • the visibility of the map image can be increased to easily grasp the state of the cleaning robot and easily command a control command based thereon.
  • 1 is an external view of a cleaning robot.
  • FIG. 2A is a bottom view of the main device according to one embodiment
  • FIG. 2B is an inside view of the main device according to one embodiment.
  • FIG. 3 is a block diagram of a control configuration of the cleaning robot.
  • FIG. 4A is a control block diagram of a communication unit according to an embodiment
  • FIG. 4B is a control block diagram of the communication unit according to another embodiment.
  • FIG. 5 is an exemplary diagram of a home screen of a remote device user interface.
  • FIG. 6 is an exemplary diagram of a menu selection screen of a remote device user interface.
  • FIG. 7A is an exemplary diagram of a map management screen of a remote device user interface
  • FIG. 7B is an exemplary diagram of a map management screen of a remote device user interface.
  • FIG. 8A is a control block diagram of a main device generating a map image, according to an exemplary embodiment.
  • FIG. 8B is a control block diagram of a main device generating a map image, according to another exemplary embodiment.
  • FIG. 9 is a control block diagram of the detailed configuration of the structural analysis unit according to the function.
  • FIG. 10 is a flowchart illustrating a control method of a cleaning robot for generating a map image, according to an exemplary embodiment.
  • FIG. 11 is a flowchart illustrating a control method of a cleaning robot for generating a map image, according to another exemplary embodiment.
  • FIG. 12 is a conceptual diagram illustrating a process of generating a map image by a main device according to an embodiment.
  • FIG. 13 is an exemplary view of a map image generated according to an embodiment.
  • FIG. 14 is a conceptual diagram for describing a process of finding a plan view corresponding to a map on the plan view data.
  • 15 is a plan view containing three rooms of plan data.
  • FIG. 16 is a diagram of a map image generated based on a plan view.
  • 17 is an exemplary view of a map image displayed on a remote device user interface of a cleaning robot according to an exemplary embodiment.
  • FIG. 18 is an exemplary view of a map image displayed on a remote device user interface of a cleaning robot according to another embodiment.
  • 19A to 19C are conceptual views illustrating a process of a user commanding a cleaning operation of a cleaning robot based on a map image displayed by a remote device user interface of the cleaning robot, according to an exemplary embodiment.
  • 20A to 20C are conceptual views illustrating a process of a user commanding a cleaning operation of a cleaning robot based on a map image displayed by a remote device user interface of the cleaning robot according to another embodiment.
  • 21 is another screen displayed on the remote device user interface of the cleaning robot according to another embodiment.
  • 1 is an external view of a cleaning robot.
  • the cleaning robot 1 performs at least one cleaning or movement to generate a map including obstacle information of the currently located space, and generate a map image similar to the generated map and display the generated map image on the user interface.
  • the cleaning robot 1 may grasp obstacle information of the currently located space through the sensor unit through at least one cleaning or moving of the currently located space.
  • the cleaning robot 1 may generate a map including obstacle information of the currently located space based on the detected obstacle information.
  • the cleaning robot 1 may analyze the structure of the map including the obstacle information, and may divide the space identified through at least one cleaning or movement into a plurality of divided regions based on the analyzed structure.
  • the cleaning robot 1 may generate a map image in which a plurality of preset figures are combined to have different areas or positions by replacing the plurality of divided regions with preset figures.
  • the cleaning robot 1 may generate a map image that replaces the map based on a plan view corresponding to the analyzed structure among previously stored plan data.
  • the cleaning robot 1 may display the generated map image on the user interface so that the user may easily grasp the structure of the space where the cleaning robot 1 is currently located and the location of the cleaning robot 1.
  • the cleaning robot 1 is a remote device that moves on the cleaning space and performs the cleaning of the main device 200 and the main device 200 to perform the cleaning at a distance and display the current status of the main device 200, etc. 100 may be included.
  • the remote device 100 may employ a mobile phone as shown in FIG. 1, but is not limited thereto.
  • a remote device 100 may employ a PDA, a notebook computer, a digital camera, an MP3 player, or the like.
  • the remote device 100 includes a remote device user interface 110 that provides a user interface. can do.
  • the remote device user interface 110 may include a remote device input 111 and a remote device display 112.
  • the remote device user interface 110 may receive a user command for controlling the main device 200 or display various information of the main device 200.
  • the remote device input unit 111 may use various buttons, switches, pedals, keyboards, mice, track-balls, levers, handles, sticks, and the like to input a user. It may include a hardware device. In addition, the remote device input unit 111 may include a graphical user interface (GUI), that is, a software device, such as a touch pad, for user input. The touch pad may be implemented as a touch screen panel (TSP) to form a mutual layer structure with the remote device display unit 112.
  • GUI graphical user interface
  • TSP touch screen panel
  • the remote device display unit 112 includes a cathode ray tube (CRT), a digital light processing (DLP) panel, a plasma display penal, a liquid crystal display (LCD) panel, Electro Luminescence (EL) Panels, Electrophoretic Display (EPD) Panels, Electrochromic Display (ECD) Panels, Light Emitting Diode (LED) Panels, or Organic Light Emitting Diode (OLED) panel, etc., but is not limited thereto.
  • CTR cathode ray tube
  • DLP digital light processing
  • plasma display penal a liquid crystal display
  • LCD liquid crystal display
  • EL Electro Luminescence
  • EPD Electrophoretic Display
  • ECD Electrochromic Display
  • LED Light Emitting Diode
  • OLED Organic Light Emitting Diode
  • the remote device display unit 112 may be used as an input unit in addition to the display unit.
  • the remote device display unit 112 will be described in detail with a touch screen panel.
  • the main device 200 includes a main body 2-1 including a main body 2-1 and a sub body 2-2, a driving wheel assembly 30, and a main brush unit. 20, a power supply unit 250, a dust collector, a main device communication unit 220, and a user interface unit 210 may be included.
  • the main body 2-1 may have a substantially semi-cylindrical shape
  • the sub body 2-2 may have a rectangular parallelepiped shape.
  • the appearance of the remote device 100 and the main device 200 shown in FIG. 1 is just an example of the appearance of the cleaning robot 1, and the cleaning robot 1 may have various forms.
  • the main device power supply unit 250 supplies driving power for driving the main device 200.
  • the main device power supply 250 includes a battery electrically connected to each driving device for driving various components mounted on the main body 2 to supply driving power.
  • the battery is provided as a rechargeable secondary battery, and can be charged by receiving power from the docking station.
  • the docking station is a device in which the main device 200 is docked when the main device 200 completes a cleaning process or the amount of the battery becomes lower than a reference value.
  • the docking station is a main device 200 that is docked using an external or internal power source. ) Can be powered up.
  • the main device power supply unit 250 may be mounted on the lower portion of the main body 2 as shown in FIGS. 2A to 2B, but is not limited thereto.
  • the main device communication unit 220 may be provided inside the main body 2, and may allow the main body 2 to communicate with a docking station, a virtual guard, and a remote device 100.
  • the main device communication unit 220 transmits whether the cleaning of the main device 200 is completed, the remaining amount of battery provided in the main body 2, the position of the main body 2, and the like to the docking station, and the location of the docking station and the main device 200. May receive a docking signal from the docking station that induces docking.
  • the main device communication unit 220 may transmit and receive an entry restriction signal with the virtual guard forming the virtual wall.
  • the virtual guard forms a virtual wall by transmitting an entrance restriction signal to a connection passage between the current cleaning area and a specific area when the main device 200 is driven, and the main device communication unit 220 receives the entrance restriction signal to receive the main device ( 200 may be blocked from entering a specific area.
  • the main device communication unit 220 may receive a command input by the user through the remote device 100. For example, a user may input a cleaning start / end command, a map generation command of a cleaning area, a movement command of the main device 200, and the like through the remote device 100, and the main device communication unit 220 may input the remote device. Receiving a user command from the 100, the main device 200 to perform the corresponding operation. A more detailed description of the main device communication unit 220 will be described later.
  • the driving wheel assembly 30 may be provided in plural, and as shown in FIGS. 2A to 2B, two driving wheel assemblies 30 may be provided to be symmetrical with each other at left and right edges from the lower center of the main body 2. .
  • the drive wheel assembly 30 includes driving wheels 33 and 35 to enable a moving operation such as forward, backward and rotational driving in the process of cleaning.
  • the drive wheel assembly 30 may be modularized and detachably mounted to the lower part of the main body 2. Therefore, when a failure occurs in the drive wheels 33 and 35 and requires repair, only the drive wheel assembly 30 can be separated and repaired from the lower part of the main body 2 without disassembling the entire body 2.
  • the drive wheel assembly 30 may be mounted to the bottom of the body 2 in such a manner as hooking, screwing and fitting.
  • the caster 31 is provided at the front edge from the lower center of the main body 2 so that the main body 2 can maintain a stable posture.
  • the caster 31 may constitute one assembly, such as the drive wheel assembly 30.
  • the main brush unit 20 is mounted on the suction port 23 side formed under the main body 2.
  • the main brush unit 20 includes a main brush 21 and a roller 22.
  • the main brush 21 is provided on the outer surface of the roller 22, and as the roller 22 rotates, the dust accumulated on the bottom surface is stirred to guide the suction port 23.
  • the main brush 21 may be formed of various materials having an elastic force.
  • the roller 22 may be formed of a rigid body, but is not limited thereto.
  • a blower for generating a suction force may be provided inside the suction port 23, and may be moved to a dust collecting part for collecting and filtering dust introduced into the suction port 23.
  • the main body 2 may be equipped with various sensors.
  • the various sensors may include at least one of an obstacle detecting sensor 261 and an image sensor 263.
  • the obstacle detecting sensor 261 is a sensor for detecting an obstacle existing on a driving path of the main device 200, for example, household appliances, furniture, walls, wall edges, and the like, and is an ultrasonic sensor capable of distance recognition. It may be provided as, but is not limited thereto.
  • Obstacle detection sensor 261 may be provided in a plurality of front and side of the main body 2 to form a circumference of the main body 2, the front of the plurality of obstacle detection sensor 261 is provided with a sensor window obstacle detection sensor ( 261) can be protected and blocked from the outside.
  • the image sensor 263 refers to a sensor for recognizing a location of the main device 200 and forming a map of a driving or cleaning area of the main device 200.
  • the image sensor 263 may be implemented as a device capable of acquiring image data, such as a camera, and may be provided on an upper portion of the main body 2.
  • the image sensor 263 extracts a feature point from the image data on the main device 200, recognizes the position of the main device 200 using the feature point, and generates a map for the cleaning area.
  • the obstacle detecting sensor 261 and the image sensor 263 that can be mounted on the main body 2 will be described in detail later.
  • the main device user interface 280 may be provided above the main body 2.
  • the main device user interface 280 may include a main device input unit 281 for receiving a user command and a main device display unit 282 displaying various states of the main device 200 to provide a user interface. .
  • the battery charging state or whether the dust collecting part is full, the cleaning mode of the main device 200, the sleep mode, etc. may be displayed through the main device display unit 282.
  • the implementation form of the main device input unit 281 and the main device display unit 282 is the same as the remote device input unit 111 and the remote device display unit 112 described above, a description thereof will be omitted.
  • FIG. 3 is a block diagram of a control configuration of the cleaning robot.
  • the cleaning robot 1 may include a remote device 100 and a main device 200 connected by wired or wireless communication.
  • the remote device 100 may include a remote device communication unit 120, a remote device control unit 130, a remote device storage unit 140, and a remote device user interface 110.
  • the remote device communication unit 120 transmits and receives various signals and data to the main device 200 or an external server through wired or wireless communication.
  • the remote device communication unit 120 may execute an application for managing the main device 200 according to a user command through the remote device user interface 110, using an external server (eg, a web server, a mobile communication server, etc.). Can be downloaded from
  • the remote device communication unit 120 may download the floor plan data of the cleaning area from the external server.
  • the floor plan is a picture representing the structure of the space where the main device 200 is located
  • the floor plan data is data in which floor plans of a plurality of different houses are collected.
  • the remote device communication unit 120 may transmit a user's “map generation” command to the main device 200, and receive the generated map image from the main device 200. In addition, the remote device communication unit 120 may transmit the map image edited by the user to the main device 200.
  • the remote device communication unit 120 may transmit a "cleaning start” command or a “cleaning end” command or "specify the cleaning area” input by the user to the main device 200.
  • the remote device communication unit 120 may include various communication modules such as a wireless Internet module, a short range communication module, and a mobile communication module.
  • remote device communication unit 120 A detailed description of the remote device communication unit 120 will be described with reference to FIG. 4A below.
  • the remote device controller 130 controls the overall operation of the remote device 100.
  • the remote device controller 130 is configured based on a user command input through the remote device user interface 110, that is, each component of the remote device 100, that is, the remote device communication unit 120, the remote device display unit 112, and the remote device.
  • the device storage unit 140 may be controlled.
  • the remote device controller 130 can generate a control signal for the remote device communication unit 120. For example, when a user inputs a "map generation" command, a control signal may be generated to transmit a map image generation command in which a preset figure is combined to the remote device controller 130 main device 200. In addition, when a user inputs a "download floor plan data" command, the remote device controller 130 may generate a control signal to download floor plan data including a plurality of floor plans of different houses from an external server.
  • the remote device controller 130 can generate a control signal for the remote device display 112. For example, the remote device controller 130 may generate a control signal to output a screen corresponding to the user input. The remote device controller 130 may generate a control signal to perform screen switching. In addition, the remote device controller 130 may generate a control signal to display the received map image.
  • the remote device controller 130 can generate a control signal for the remote device storage 140.
  • the remote device controller 130 may generate a control signal to store the received map image.
  • the remote device controller 130 may be various processors including at least one chip in which an integrated circuit is formed.
  • the remote device controller 130 may be provided in one processor or may be provided separately in a plurality of processors.
  • the remote device storage 140 temporarily or non-temporarily stores data and programs for the operation of the remote device 100.
  • the remote device storage 140 may store an application for managing the main device 200.
  • the remote device storage unit 140 may store the map image received from the main device 200 and store the floor plan data downloaded from the external server.
  • the remote device storage unit 140 may include a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (for example, SD or XD). Memory, etc.), random access memory (RAM), static random access memory (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), programmable read-only memory (PROM)
  • RAM random access memory
  • SRAM static random access memory
  • ROM read-only memory
  • EEPROM electrically erasable programmable read-only memory
  • PROM programmable read-only memory
  • At least one type of storage medium may include a magnetic memory, a magnetic disk, and an optical disk.
  • the remote device 100 may operate a web storage that performs a storage function on the Internet.
  • the remote device user interface 110 may receive various commands for controlling the main device 200 from the user.
  • a user may, via the user interface, specify a "map generation” command to generate a map image combining a plurality of preset figures, designate one or more partitions displayed on the map image as a room or position a docking station.
  • "Room / Charge Positioning” command "Generate floor plan” to generate a map image based on the floor plan corresponding to the structure of the map
  • "Download floor plan data” command to download floor plan data combining the floor plans of a plurality of houses
  • a “cleaning management” command for moving the main device 200 by designating a cleaning area may be input.
  • the remote device user interface 110 may display various information of the main device 200.
  • the remote device user interface 110 may display a map image of a cleaning area in which the main device 200 will travel.
  • the remote device user interface 110 may display the received map image.
  • the main device 200 includes a main device power supply unit 250, a main device sensor unit 260, a main device communication unit 220, a main device controller 230, a main device driver 270, a main device user interface 280, and The main device storage unit 240 may be included.
  • the main device power supply unit 250 is provided with a battery as described with reference to FIGS. 2A to 2B and supplies driving power for driving the main device 200.
  • the main device communication unit 220 transmits and receives various signals and data with the remote device 100 or an external device through wired or wireless communication.
  • the main device communication unit 220 may receive a user's "map generation" command from the remote device 100 and transmit the generated map to the remote device 100.
  • the main device communication unit 220 may receive a map stored in the remote device 100 and a cleaning schedule stored in the remote device 100.
  • the stored map may mean a finally stored map
  • the stored cleaning schedule may mean a finally stored cleaning schedule.
  • the main device communication unit 220 may transmit the current state value and the cleaning history data of the main device 200 to the remote device 100.
  • the main device communication unit 220 may receive a cleaning start command or cleaning end command of the user from the remote device 100. While the main device 200 is in the process of cleaning, when a situation in which the transmission environment is inconsistent occurs, the main device communication unit 220 may transmit a message indicating that the environment is inconsistent to the remote device 100. Similarly, when a non-cleanable area occurs, the main device communication unit 220 may transmit a message to the remote device 100 indicating that cleaning is impossible.
  • main device communication unit 220 A detailed description of the main device communication unit 220 will be described with reference to FIG. 4A below.
  • the main device sensor unit 260 detects a state of obstacles and the ground required for driving the main device 200.
  • the main device sensor unit 260 may include an obstacle detecting sensor 261 and an image sensor 263.
  • a plurality of obstacle detecting sensors 261 are provided on the outer circumferential surface of the main body 2 to detect obstacles existing in front or side of the main device 200, and transmit the detection result to the main device controller 230.
  • the obstacle detecting sensor 261 may be provided as a contact sensor, or may be provided as a non-contact sensor depending on whether the obstacle is in contact with the obstacle, or a contact sensor and a non-contact sensor may be used in combination.
  • the contact sensor actually means a sensor that detects an obstacle by collision of the main body 2 with the obstacle
  • the non-contact sensor means a sensor that detects the obstacle before the main body 2 collides with the obstacle or before the collision with the obstacle. do.
  • the non-contact sensor may include an ultrasonic sensor, an optical sensor or an RF sensor.
  • the obstacle detecting sensor 261 When the obstacle detecting sensor 261 is implemented as an ultrasonic sensor, the obstacle may be detected by transmitting an ultrasonic wave on a driving path and receiving the reflected ultrasonic wave.
  • the obstacle detecting sensor 261 When the obstacle detecting sensor 261 is implemented as an optical sensor, the obstacle may be detected by emitting light in an infrared region or a visible ray region and receiving reflected light.
  • the Doppler effect may be used to transmit radio waves of a specific frequency, for example, microwaves, and detect an obstacle by detecting a change in frequency of the reflected wave.
  • the image sensor 263 may be provided as a device capable of acquiring image data such as a camera, and may be mounted on the main body 2 to recognize a position of the main device 200.
  • the image sensor 263 extracts a feature point from the image data on the upper part of the main device 200, and recognizes the position of the main device 200 by using the feature point.
  • the location information detected by the image sensor 263 may be transmitted to the main device controller 230.
  • the sensor values of the main device sensor unit 260 that is, the obstacle detection sensor 261, and the sensor values of the image sensor 263 are transmitted to the main device controller 230, and the main device controller 230 cleans based thereon. You can create a map for the area. Since the map generation method based on the sensor value is a known technique, a description thereof will be omitted.
  • FIG. 4A illustrates an example of the main device sensor unit 260. If a map of the cleaning area can be generated, another sensor may be further included, or some sensors may be omitted.
  • the main device driver 270 may include a driving wheel driver 271 for controlling the driving of the driving wheel assembly 30, and a main brush driver 272 for controlling the driving of the main brush unit 20. .
  • the driving wheel driver 271 controls the driving wheels 33 and 35 mounted on the lower part of the main body 2 under the control of the main device controller 230 to allow the main device 200 to move.
  • the driving wheel drive 271 controls the driving of the driving wheels 33 and 35, and accordingly the main device ( 200 is to drive the cleaning area.
  • Drive wheel drive 271 may be included in the drive wheel assembly 30 to form a modular together.
  • the main brush drive unit 272 drives the roller 22 mounted on the suction port 23 side of the main body 2 under the control of the main device controller 230. As the roller 22 rotates, the main brush 21 rotates to clean the bottom surface. When the user's "start cleaning" command is transmitted to the main device 200, the main brush drive unit 272 controls the driving of the roller 22.
  • the main device controller 230 controls the overall operation of the main device 200.
  • the main device controller 230 may control each configuration of the main device 200, that is, the main device communication unit 220, the main device driver 270, and the main device storage unit 240.
  • the main device controller 230 may generate a control signal for the main device driver 270.
  • the main device controller 230 may generate a control signal to the driving wheel driver 271 to drive the driving wheels 33 and 35. While the driving wheels 33 and 35 are driven, the main device controller 230 may receive a sensor value from the main device sensor unit 260 and generate a map image of the cleaning area based on the sensor value.
  • the main device controller 230 may control the main brush driver 272 to drive the main brush unit 20.
  • the main device controller 230 may generate a control signal for the main device communication unit 220.
  • the main device controller 230 When receiving the "map generation" command, the main device controller 230 generates a map image of the cleaning area based on the sensor value of the main device sensor unit 260, and generates the map image from the remote device 100.
  • the main device communication unit 220 may be controlled to transmit the data to the main device communication unit 220.
  • the main device controller 230 may determine whether the environment is inconsistent while the cleaning is in progress. If the environment is inconsistent, the main device controller 230 may control the main device communication unit 220 to transmit a message that the environment is inconsistent to the remote device 100. The user may confirm a message that the environment is inconsistent and determine whether to update the map image. When receiving the "map update" command, the main device controller 230 updates the map image based on the user command. If the environment is inconsistent, the main device controller 230 may update the map image automatically.
  • the main device controller 230 may control the main device 100 to stop cleaning and return to charging.
  • the main device controller 230 may determine whether there is an area that cannot be cleaned while the cleaning is in progress. When the non-cleanable area exists, the main device controller 230 may control the main device communication unit 220 to transmit a message indicating that the non-cleanable area exists. The user may confirm that there is a non-cleanable area and determine whether to move the cleaning area. When receiving the "move area" command, the main device controller 230 generates a control signal to move to the next priority cleaning area based on the user command. If there is an area that cannot be cleaned, the main device controller 230 may automatically generate a control signal for moving to the next priority cleaning area. Even in this case, the main device controller 230 may control the main device 100 to stop cleaning and return charging.
  • the main device controller 230 may generate a control signal for the main device storage 240.
  • the main device controller 230 may generate a control signal to store the generated map.
  • the main device controller 230 may generate a control signal to store the map and the cleaning schedule received from the remote device 100.
  • main device controller 230 may be various processors including at least one chip in which an integrated circuit is formed.
  • the main device controller 230 may be provided in one processor or may be provided separately in a plurality of processors.
  • the main device controller 230 may receive a sensor value from the main device sensor unit 260 to generate a map including obstacle information, analyze the structure of the generated map, and divide the map into a plurality of regions. .
  • the divided area is referred to as "divided area”.
  • the main device controller 230 may generate a map image in which a plurality of preset figures are combined by replacing the plurality of divided regions with different preset figures.
  • the main device controller 230 may find a plan view corresponding to the structure of the analyzed map from the plan view data stored in the main device storage unit 240, and post-process the plan to generate a map image.
  • the main device controller 230 may transfer the generated map image to the main device communication unit 220 or the main device user interface 280. A detailed description of generating the map image will be described with reference to FIGS. 8A to 18 below.
  • the main device user interface 280 may display a current image of the main operation state of the main device 200 and a map image of a currently located area, and display a current location of the main device 200 on the displayed map image. In addition, the main device user interface 280 may receive an operation command of the user and transmit it to the controller. Main device user interface 280 may be the same as or different from main device user interface 280 described with reference to FIGS.
  • the main device storage unit 240 temporarily or non-temporarily stores data and programs for the operation of the main device 200.
  • the main device storage unit 240 may temporarily or non-temporarily store the state value of the main device 200.
  • the main device storage unit 240 may store cleaning history data, and the cleaning history data may be periodically or aperiodically updated.
  • the main device controller 230 When the main device controller 230 generates a map image or updates the map image, the main device storage unit 240 may store the generated map image or the updated map image.
  • the main device storage unit 240 may store the map image received from the remote device 100.
  • the main device storage unit 240 may generate a map image or store a program for updating the map image.
  • the main device storage unit 240 may store a program for generating or updating cleaning history data.
  • the main device storage unit 240 may store a program for determining whether the environment matches, a program for determining whether or not the cleaning area is impossible.
  • the main device storage unit 240 may include a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (for example, SD or XD). Memory, etc.), random access memory (RAM), static random access memory (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), programmable read-only memory (PROM)
  • RAM random access memory
  • SRAM static random access memory
  • ROM read-only memory
  • EEPROM electrically erasable programmable read-only memory
  • PROM programmable read-only memory
  • At least one type of storage medium may include a magnetic memory, a magnetic disk, and an optical disk.
  • the present invention is not limited thereto and may be implemented in any other form known in the art.
  • FIG. 4A is a control block diagram of a communication unit according to an embodiment
  • FIG. 4B is a control block diagram of the communication unit according to another embodiment.
  • the communication unit may include a remote device communication unit 120 included in the remote device 100 and a main device communication unit 220 included in the main device 200.
  • the remote device communication unit 120, the main device communication unit 220, and a network may be connected to each other to exchange data.
  • the main device communication unit 220 transmits the map image generated by the main device control unit 230 and the current location of the main device 200 to the remote device 100, and the remote device communication unit 120 allows a user.
  • the input operation command may be transmitted to the main device 200.
  • the remote device communication unit 120 may be connected to a network to receive an operation state of another home appliance 330 and transmit a control command thereto.
  • the main device communication unit 220 may be connected to another remote device 320 to receive a control command.
  • the main device communication unit 220 may be connected to a network to download the plan view data from the server 310.
  • the remote device communication unit 120 may include a remote device short range communication module 121 that is a short range communication module, a remote device wired communication module 122 that is a wired communication module, and a remote device mobile communication module 123 that is a mobile communication module.
  • the main device communication unit 220 may include a main device short range communication module 221 which is a short range communication module, a main device wired communication module 222 which is a wired communication module, and a main device mobile communication module 223 which is a mobile communication module. Can be.
  • the short range communication module may be a module for short range communication within a predetermined distance.
  • Near field communication technologies include Wireless LAN, Wi-Fi, Bluetooth, Zigbee, Wi-Fi Direct, Ultra Wideband, UWB, Infrared Data Association (IrDA), and BLE. (Bluetooth Low Energy) and NFC (Near Field Communication) may be, but are not limited thereto.
  • the wired communication module means a module for communication using an electrical signal or an optical signal.
  • the wired communication technology 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 wireless signals with at least one of a base station, an external terminal, and a server 310 on a mobile communication network.
  • the wireless signal may include various types of data according to transmission and reception of a voice call signal, a video call call signal, or a text / multimedia message.
  • FIG. 5 is an exemplary diagram of a home screen of a remote device user interface.
  • a remote device user interface 110 including a remote device input unit 111 and a remote device display unit 112 may be provided on a front surface of the remote device 100.
  • the remote device input unit 111 may be provided with a plurality of buttons.
  • the button may be a hardware button or may be a software button.
  • the remote device display unit 112 may be configured as a touch screen panel to detect a user input.
  • An application for managing the main device 200 may be installed in the remote device 100.
  • an application for managing the main device 200 will be referred to simply as a "cleaning robot application.”
  • the remote device display unit 112 may display the installed application on the home screen and provide convenience to a user's access to the application.
  • the remote device display unit 112 may display the installed application as an icon 150 called "cleaning robot.”
  • the user may execute the cleaning robot application by touching the "cleaning robot" icon 150.
  • the remote device display unit 112 may perform screen switching to a screen as shown in FIG. 6.
  • FIG. 6 is an exemplary diagram of a menu selection screen of a remote device user interface.
  • the “home screen” icon 190a may be displayed at the top of the remote device display 112 to return to the home screen. That is, when the "home screen” icon 190a is selected, the screen shown in FIG. 5 may be returned.
  • the "map management” icon 160 is an icon provided to manage a map image of an area to which the main device 200 runs or to be cleaned by the main device 200, that is, a cleaning area.
  • the “cleaning management” icon 170 is an icon provided to move or clean the main device 200 by designating a specific partition based on the generated map image.
  • the "start / end” icon 180 is an icon for inputting a user command of cleaning start or cleaning end.
  • the user may select the "map management" icon 160 to convert the screen of the remote device display unit 112 into a screen for map management.
  • FIG. 7A is an exemplary diagram of a map management screen of a remote device user interface
  • FIG. 7B is an exemplary diagram of a map management screen of a remote device user interface.
  • a “home screen” icon 190a and a “previous screen” icon 190b may be displayed on the top of the remote device display unit 112 according to an embodiment to return to the previous screen. have. That is, when the "previous screen” icon 190b is selected, the screen may return to the previous screen.
  • a "map generation” icon 161 and a "room / charger position designation” icon 164 may be displayed at the bottom of the "home screen” icon 190a and the "previous screen” icon 190b.
  • the "map generation” icon 161 is an icon that analyzes the structure of the map, divides the map into a plurality of partitions, and then generates and displays a map image of the divided partitions.
  • the "room / charging stand location” icon 164 is an icon for displaying a screen that allows the user to designate one or more partitions displayed on the map image as a room or to specify the location of the docking station.
  • the user may select the “map generation” icon 161 to recognize that the main image 200 displays a map image which is divided into a plurality of partitions or rooms and plotted.
  • the user can select the "room / charger location" icon 164 to designate each partition divided on the map image as, for example, bedroom 1, bedroom 2, etc., and designate a point at which the docking station is located. It is also possible to assign an already designated room to another room or to modify the location of the docking station.
  • a “map generation” icon 161 and a “plan view” are shown at the bottom of the “home screen” icon 190a and the “previous screen” icon 190b of the remote device display unit 112 according to another embodiment.
  • Create ”icon 162 and“ download plan data ”icon 163 may be displayed sequentially.
  • the "Generate Plan View” icon 162 analyzes the structure of the map to find a plan view corresponding to the structure of the analyzed map from among a plurality of different plan views, and generates and displays a map image using the plan view. It is an icon.
  • the "download floor plan data” icon 163 is an icon connected to a network for downloading data of a floor plan of a house from an external server.
  • the user may select the “Generate Plan View” icon 162 to analyze the structure of the map, find a plan view corresponding to the analyzed structure, and recognize that the map image is displayed.
  • the user may select the "download floor plan data” icon 163 to download data about the floor plan of the house.
  • the "map generation" icon 161 may be omitted, and in this case, a map may be generated by selecting the plan view generation icon 162.
  • FIG. 8A is a control block diagram of a main device generating a map image, according to an exemplary embodiment.
  • FIG. 8B is a control block diagram of a main device generating a map image, according to another exemplary embodiment.
  • the main device 200 may clean or move a space currently located at least once to generate a map including obstacle information, and analyze the structure of the map based on the generated map.
  • the main apparatus 200 may generate a map image by dividing the map into a plurality of regions based on the analyzed map structure, and plotting the plurality of divided regions.
  • the main device 200 may include a main device sensor unit 260, a main device storage unit 240, a main device control unit 230, a main device communication unit 220, and a main device user interface 280. have.
  • the main device sensor unit 260 may detect obstacle information of the space identified through cleaning or moving of the space in which the main device 200 is located, and transmit the presence or absence of an obstacle in the corresponding space to the main device controller 230.
  • main device sensor unit 260 may be the same as or different from the main device sensor unit 260 described with reference to FIGS. 2A to 3.
  • the main device storage unit 240 stores data for generating a map image.
  • the main device storage unit 240 may store a program for generating a map image, or may store a map including previously acquired obstacle information.
  • main device storage unit 240 may store a map image generated by a user's "map generation" command.
  • main device storage unit 240 may be the same as or different from the main device storage unit 240 described with reference to FIG. 3.
  • the main device controller 230 may receive the obstacle information of the space in which the main device 200 is located from the main device sensor unit 260, generate a map of the corresponding space, and analyze the structure of the generated map. In addition, the main device controller 230 may divide the divided regions into a plurality of regions based on the analyzed map structure, and then replace each divided region with a figure corresponding to the structure of the map, or generate a schematic map image by replacing it with a plan view. Can be.
  • the main device controller 230 may include a map generator 231, a structure analyzer 232, an area divider 233, and a post processor 234.
  • the map generator 231 collects obstacle information received from the main device sensor unit 260 to generate a map including obstacle information on which the main device 200 is currently located.
  • the map generator 231 is an obstacle zone part of the point where the main device 200 moves from the initial start point based on the moving direction and the moving distance of the main device 200 at the point where the main device 200 is currently located. Can be represented on the map. The main device 200 may perform this until all of the partition walls in which the obstacles in the outermost part of the map exist are connected.
  • the map generated by the map generator 231 may be binarization data indicating only whether an obstacle exists or an obstacle does not exist at a corresponding point. For example, the map generator 231 may display the pixel at the point where the obstacle exists as 1, and display the pixel at the point where the obstacle does not exist as 0.
  • the structure analyzer 232 analyzes the structure of the map generated by the map generator 231 to analyze the partition of the space in which the main device 200 is located and the structure of the layout of the partition. A detailed description of the structure analyzer 232 will be described later with reference to FIG. 9.
  • the region dividing unit 233 divides the map into a plurality of regions based on the structure of the map analyzed by the structure analyzing unit 232 (that is, determining the plurality of divided regions). A detailed description of the area divider 233 will also be described later with reference to FIG. 9.
  • the post-processing unit 234 is a user of the binary map generated for the operation of the main device 200 based on the structure of the map analyzed by the structure analyzer 232 and the region divider 233 for information on the partition area. Replace with easily understandable and recognizable images.
  • the post-processing unit 234 replaces the plurality of divided regions with the shapes corresponding to the size or shape of the divided regions in the region divider 233, and the images including the plurality of divided regions are combined with the plurality of figures.
  • the map image may be generated to be represented as.
  • the figure may include a figure having various sizes so as to correspond to the divided region, and may include a figure having a shape such as a rectangle, a square, a trapezoid, a chamfer, an ellipse circle, and a polygon, and a straight line or It may also include degrees of freedom consisting of curves.
  • the post-processing unit 234 may transmit the generated map image to the remote device 100 and transmit the generated map image to the main device communication unit 220 for display on the remote device user interface 110, and the main device user interface 280. It may also be passed to the main device user interface 280 for display.
  • main unit controller 230 functions as a central processing unit, and the type of central processing unit may be a microprocessor, and the microprocessor may include an arithmetic logic operator, a register, a program counter, an instruction decoder or a control on at least one silicon chip. It is a processing apparatus provided with a circuit.
  • the microprocessor may include a graphic processing unit (GPU) for graphic processing of an image or video.
  • the microprocessor may be implemented in the form of a system on chip (SoC) including a core and a GPU.
  • SoC system on chip
  • the microprocessor may include a single core, dual cores, triple cores, quad cores, and multiples thereof.
  • main device controller 230 may include a graphic processing board including a GPU, a RAM, or a ROM on a separate circuit board electrically connected to the microprocessor.
  • the main device 200 may find a plan view corresponding to a structure of a map analyzed from the plan view data, and generate a map image based on the plan view.
  • the main device storage unit 240 provides a plan view corresponding to the structure of the map analyzed when the map image is generated. That is, the main device storage unit 240 may store floor plan data including a plurality of house floor plans.
  • the main device controller 230 may generate a map image by dividing into a plurality of areas based on the analyzed map structure and replacing the plan with a plan view.
  • the main device controller 230 may include a map generator 231, a structure analyzer 232, an area divider 233, and a post processor 234.
  • a detailed description of the map generator 231, the structure analyzer 232, and the region divider 233 will be described later with reference to FIG. 9.
  • the post-processing unit 234 is analyzed from the floor plan data including the floor plans of the plurality of different houses based on the structure of the map analyzed by the structure analyzer 232 and the information about the partitions generated by the area divider 233.
  • the floor plan corresponding to the structure of the map may be searched.
  • the post-processing unit 234 may post-process the plan view in a forward direction, 90, 180, 270 [deg] rotated directions, or a vertically reversed direction of the plan view, based on the retrieved plan view, to generate a map image.
  • the post-processing unit 234 may generate a map image from which a space such as a balcony or a porch that the main device 200 cannot enter in the plan view is removed.
  • the post processor 234 may match the generated map image with the map.
  • the post-processing unit 234 may generate transform coordinates so that the position of a specific point in the generated map corresponds to one point in the map.
  • the post-processing unit 234 converts a specific point in the map image to a point of the map when the map image corresponds to rotating the map by 90, 180, or 270 [deg] or up-down symmetry of the map. To generate the transform coordinates.
  • the post processor 234 may match the point of the map corresponding to the point closest to the specific point among the points corresponding to the map.
  • the post-processing unit 234 may transmit the generated map image to the remote device 100 and transmit the generated map image to the main device communication unit 220 for display on the remote device user interface 110, and the main device user interface 280. It may also be passed to the main device user interface 280 for display.
  • FIG. 9 is a control block diagram illustrating the detailed configuration of the structure analyzer according to functions.
  • the structure analyzer 232 includes a map processor 232-1, a skeleton generator 232-2, an edge processor 232-3, and an area splitting point detector 232-4. can do.
  • the map generated by the map generator 231 is moved by the main device 200 and records obstacle information on the corresponding space. Accordingly, the map processor 232-1 smoothly trims the outline of the map by using an image processing technique to uniformly trim the outline of the map.
  • the map processor 232-1 may remove grooves or protrusions on the outside of the map by using morphology.
  • morphology is an image processing technique that transforms the shape of a specific object in an image by approaching the image from a morphological point of view. Morphology is mainly used to remove noise in binary image processing or to describe the shape of an object in an image, and to use set relation, movement, symmetry, filter set and difference set.
  • the skeleton generating unit 232-2 uniforms the shape of the map generated by the map generating unit 231, extracts the centers of a plurality of spaces in which no obstacles exist, and connects them to generate a skeleton of the map.
  • a skeletonizing technique may be used as an image processing technique for generating a skeleton.
  • the edge processor 232-3 removes unnecessary edges of one or more branches, that is, edges, included in the generated skeleton. For example, the edge processing unit 232-3 detects a point that becomes a branch point of the edge in the skeleton as a node, determines unnecessary edges according to angles and lengths of edges subsequent from each node, and removes unnecessary edges. A detailed description thereof will be described later with reference to FIG. 12.
  • the edge processor 232-3 may distinguish a node into a branch node that is a center of a skeleton and a leaf node that is a node other than the branch node. There may be a plurality of branch nodes.
  • the area dividing point detection unit 232-4 analyzes the separated space of the cleaning area in the map and designates a space to be divided in the area dividing unit 233.
  • the area division point detection unit 233-4 moves the detection point on the edge from the branch node toward any one of the leaf nodes, and displays pixels (eg, 0) indicated that there is no obstacle around it. In this case, if the detection point passes a narrow section, it may be determined that the region division point exists at the detection point.
  • the area dividing point may be a location of a visit in the real life, or an obstacle location due to furniture.
  • the area division point detector 233-4 may classify pixels existing in one leaf node direction from the area division point as one division area.
  • the region division point detection unit 233-4 may divide the region where the branch node exists.
  • the partition where the and the leaf nodes exist may be determined to be the same partition.
  • the area dividing point detection unit 233-4 divides the divided areas so as to correspond to the number of area dividing points.
  • the region dividing unit 233 may designate each divided region divided by the structure analyzing unit 232 as one room and perform the entire map to designate a plurality of rooms in one map. Through this, the post-processing unit 234 replaces one room with a preset figure.
  • the combination of figures corresponding to the plurality of rooms may be represented by an image by the post processor 234.
  • FIGS. 10 and 11 are flowchart illustrating a control method of a cleaning robot for generating a map image, according to an exemplary embodiment.
  • the control method may be performed.
  • Each component of the cleaning robot 1 described with reference to FIG. 10 is the same as the component described with reference to FIGS. 1 to 9 above, and uses the same reference numerals.
  • the map generator 231 of the main device 200 detects obstacle information by performing cleaning or moving of a currently located space and generates a map by combining them (S1110). do.
  • the main device controller 230 generates the entire skeleton of the map by trimming or analyzing the structure of the generated map (S1120). In this case, the main device controller 230 uniformly trims the appearance of the map, extracts the centers of a plurality of spaces in which no obstacles exist, and connects them to generate a skeleton of the map.
  • the main device controller 230 removes unnecessary edges among one or more edges included in the generated skeleton, and detects a point that becomes a branch point of each edge as a node (S1130). In this case, the main device controller 230 may distinguish the detected node from the branch node that is the center of the skeleton and the leaf node that is a node other than the branch node.
  • the main device controller 230 detects an area division point in the map (S1140). In this case, the main device controller 230 moves the detection point on the edge from the branch node toward the leaf node, searches for pixels marked as obstacle-free (for example, pixels marked as 0), and the detection point is narrow. In case of passing through, it can be determined that the region division point exists at the corresponding detection point.
  • the main device controller 230 configures a divided area based on the detected area dividing point (S1150). In this case, the main device controller 230 configures one or more pixels existing in the leaf node direction from the detected region division point as one division region. However, if the area division point is not detected while moving the detection point from the branch node toward the leaf node, the main device controller 230 divides the partition where the branch node exists and the partition where the leaf node exists into the same one. It can be configured as an area. By such a partition configuration, the map may be composed of a combination of one or more partitions.
  • the main device controller 230 performs an outline process on the pixels constituting each divided area, replaces each divided area with a figure, and sets an area division point previously detected in each divided area (S1160). ).
  • the main device controller 230 may set a partition including a branch node as an area of a living room characteristic.
  • the main device controller 230 may replace each partition (eg, room 1) with a rectangle, and the partition included in the rectangle may include all pixels constituting the room 1.
  • the main device controller 230 may replace the area of the living room characteristic including the branch node with a free shape corresponding to the outline of the corresponding area, and the free shape corresponding to the outline includes all the pixels constituting the corresponding divided area. It may include.
  • the main device controller 230 may determine whether the direction of the area dividing point is horizontal or vertical based on the detected angle of the area dividing point, thereby setting the entry / exit path between the respective dividing areas on the map. have.
  • the angle of the area dividing point will be described later with reference to FIG. 12.
  • the main device controller 230 post-processes a map composed of one or more partitions and region division points replaced with graphics into an image suitable for representing the operation of the main device 200, and generates a map image. Transferring to the interface allows the user interface to display the map image (S1170).
  • the skeleton generation step S1120 after the map generation step S1110 or the step S1170 displaying on the user interface may be performed by the remote device 100.
  • the main device according to another embodiment may be performed. 200 may intuitively display the map image to the user by generating the map image represented as a figure.
  • the map image according to another embodiment may be replaced with a corresponding floor plan and displayed to the user.
  • a flowchart of a control method of a cleaning robot for generating a map image is shown. In the case of FIG. 11, when the user selects the “map generation” icon 161 or the “plan view” icon 162 of FIG. 7B, the control method may be performed.
  • the main apparatus 200 may also perform cleaning of the space or perform a movement to detect obstacle information and generate a map by combining them (S1210), generate a skeleton of the map (S1220), and generate the Remove unnecessary edges among the one or more edges included in the skeleton, detect a point that is a branch point of each edge as a node (S1230), detect an area split point on the map (S1240), and based on the detected area split point Compose the partitions (S1250), perform an outline process on the pixels constituting the partitions, replace each partition with a figure, and based on the area division point previously detected in each partition, the main device.
  • An entry / exit path of 100 is set (S1260).
  • the main device controller 230 compares (S1270) a plan view including a map in which one or more partitions are set and a plurality of plan views of a house, and finds a plan view corresponding to the map.
  • the main device controller 230 determines whether plan view data is stored in the main device storage unit 240, and when the plan view data is not stored, the plan view data is not stored to the user through the user interface 280. If a message indicating that it has not been displayed and the user selects the "top view data download" icon 163 of FIG. 7B, the floor plan data may be downloaded from an external server 310 (see FIG. 4B). The map can then be compared with the downloaded floor plan data.
  • the main device controller 230 determines whether the floor plan data is stored in the main device storage unit 240, and if the floor plan data is not stored, the main device controller 230 automatically outputs the floor plan data to an external server 310 (see FIG. 4B). You can download it from. The map can then be compared with the downloaded floor plan data.
  • the main device controller 230 post-processes the floor plan into an image suitable for representing the operation of the main device 200 based on the floor plan corresponding to the map (S1280) to generate a map image, and transfer the generated map image to the user interface.
  • the user interface displays the map image (S1290).
  • the main apparatus 200 may precisely display the map image to the user by comparing the previously stored plan data with the map to generate a map image represented as the plan view.
  • FIG. 12 is a conceptual diagram of a process of generating a map image by a main apparatus according to an embodiment
  • FIG. 13 is an exemplary diagram of a map image generated according to an embodiment.
  • the main device controller 230 generates a map GM in which obstacle information is displayed for each pixel coordinate based on the obstacle information detected by the main device sensor unit 260 and the movement of the main device 200 detected by the geomagnetic sensor. do.
  • the map may be represented by binarization data indicating only whether the obstacle exists or whether there is no obstacle.
  • the main device controller 230 may uniformly shape the appearance of the map by using an image processing technique.
  • the main device controller 230 extracts the centers of the plurality of pixels where no obstacles exist and connects them to generate the skeleton SM1 of the map.
  • the skeleton of the map includes one or more edges E1, E2, E3 and one or more nodes N1, N2, N3, N4.
  • the main device controller 230 removes unnecessary edges E2 and E3 from one or more edges E1, E2, and E3 included in the generated skeleton (SM2).
  • the main device controller 230 detects the point of the branch point of the edges E1, E2, E3 in the skeleton as the nodes N1, N2, N3, N4, and each node N1, N2, N3, N4.
  • the unnecessary edges E2 and E3 are determined according to the angles and lengths of the edges E1, E2, E3, E5, and E6 leading from N5 and N6, and the unnecessary edges E2 and E3 are removed.
  • the main device controller 230 may determine an edge having a length less than a preset reference length and having an angle less than another edge and a preset reference angle as an unnecessary edge.
  • the main device controller 230 may use the nodes N1, N2, N3, N4, N5, and N6 as branch nodes N1, which are the centers of the skeleton, and leaf nodes N2, N3, which are nodes other than the branch node N1. N4, N5, N6).
  • the main device controller 230 moves the detection point on the edge from the branch node N1 in the direction of the leaf nodes N2, N3, N4, N5, and N6, and the pixels around the detection point pass through the narrow section to the wide section. Determine if it moves.
  • the main device controller 230 moves the detection point along the edge from the branch node N1 to the leaf nodes N2, N3, N4, N5, and N6, and displays a pixel area (for example, at each detection point). For example, the width of the pixels is checked, and if the width of the pixels satisfies a preset size (for example, about 90 cm from the first reference value or less than 90 cm) (Di1 to Di3), it is determined as passing through a narrow section. .
  • a preset size for example, about 90 cm from the first reference value or less than 90 cm
  • the main device controller 230 may detect the detection point in the narrow section as the area dividing points D1, D2, and D3. However, when the detection point moves from one narrow section to another narrow section (i.e., no longer moves to the wide section), the detection point corresponding to any one narrow section is not detected as the area dividing point.
  • the main device controller 230 may i) measure the width in the horizontal direction and the vertical direction Di1 to Di4 based on the moving direction at every detection point, and ii) In order to measure the width, the width may also be measured in any direction having various angles in addition to the horizontal and vertical directions. Subsequently, the main device controller 230 divides the pixels existing in the leaf node direction as each divided region from each detected region division point, and divides the remaining pixels as other divided regions. That is, pixels existing in the N3 leaf node direction from the D1 region division point are divided as the R1 region, pixels existing in the N2 leaf node direction from the D2 region division point as the R2 region, and N4 leaf from the D3 region division point]. Each partition is constituted by dividing pixels existing in the node direction as an R3 region.
  • the main device controller 230 may set the R4 region including the N1 branch node as another partition region.
  • the main device controller 230 measures the size of each divided area, and, in the case of a divided area having a size smaller than the second reference value, cancels the division as one divided area and deletes the area divided point.
  • the main device controller 230 is a method for measuring the size of each partition, the number of grids of the map, the total length of the outline of the partition, the radius of the partition, the width of the smallest rectangle including the partition, and the partition At least one of the lengths of the sides of the smallest quadrangle included may be measured.
  • R1 to R4 have a size equal to or greater than the second reference value and are described as being divided into divided regions.
  • the above-described embodiment has been described as i) detecting an area division point based on pixel information included in the map and dividing the division area based on the detected area division point. 3) Detecting an area division point such as a visit based on the captured image of the obstacle detecting sensor 261 or the image sensor 261 implemented as a camera module, or iii) detecting the identification tag attached to the area division point. ) To divide the divided areas based on the detected area splitting points by a wireless communication module such as RFID (radio frequency identification) or a combination of two or more of the aforementioned i), ii) and iii). It is also possible.
  • a wireless communication module such as RFID (radio frequency identification) or a combination of two or more of the aforementioned i), ii) and iii). It is also possible.
  • the main device controller 230 performs an outline process on pixels constituting each of the divided regions R1, R2, R3, and R4, replaces each divided region with a figure, and divides each divided region R1, R2.
  • the region division points D1, D2, and D3 previously detected at R3 and R4 are displayed (DM).
  • each of the divided regions R1, R2, R3, and R4 is replaced by a figure proportional to the size of each of the divided regions R1, R2, R3, and R4, or is divided into Regardless of the size, it may be replaced by a figure of the same size.
  • the main device controller 230 generates the map image FM by combining the figures.
  • the post-processed map image is illustrated as being composed of a combination of a segmented region represented by a rectangle and a segmented region represented by a free form, but is not necessarily limited thereto, and is represented by a rectangle, a circle, or a free form having a chamfer. It may be made of a combination of partitions, but is not limited to that shown in FIG.
  • the map image FM generated by the main device controller 230 is divided into one partition region at the lower left, one partition region at the upper right, and a lower right corner with respect to the central partition. It can have a layout where one area is located.
  • the main device controller 230 may define the lower left partition as the first area Z1, the upper right partition as the second area Z2, and the lower right partition as the center partition.
  • the central divided region may be designated and divided into the fourth region Z4.
  • the map image FM generated as described above may be displayed to the user through the remote device display 112.
  • the main device controller 230 may perform the cleaning command of the user by matching each position in the map image FM with a position in the map.
  • the main device controller 230 according to another exemplary embodiment may further include: Furthermore, the map image represented by the plan view may be generated by matching the map image FM combined with the figure with the plan view data.
  • FIG. 14 is a conceptual diagram illustrating a process of finding a plan view corresponding to a map on plan view data
  • FIG. 15 is a plan view including three divided regions of the plan view data
  • FIG. 16 is a view illustrating a map image generated based on the plan view. Drawing.
  • the main device controller 230 searches for a plan view corresponding to a map image FM in which a structure of an analyzed map, a partition of a map, or a preset figure is combined.
  • the main device controller 230 may include a first area Z1 at the lower left, a second area Z2 at the upper right, and a third area at the lower right, based on the partition area close to the living room characteristic located in the center of the floor plan data.
  • region Z4 of the center is searched.
  • the floor plan data includes a first floor plan (PFD1) having a living room on the left side and three rooms on the right side, a second floor plan (PFD2) having a living room at the center and one room at the top right and a bottom at the bottom left. And a third floor plan PFD3 in which the living room in the center and the two rooms on the left and the two rooms on the right are included.
  • the main device controller 230 determines that the first floor plan PFD1 has three rooms but the layout of the rooms does not correspond to the map, and the third floor plan PFD3 does not correspond to the map with four rooms. The determination may determine that the number and arrangement of rooms in the second floor plan PFD2 correspond to the map. Accordingly, the main device controller 230 may determine that the plan view corresponding to the map among the plan view data is the second plan view PFD2.
  • the second floor plan PFD2 corresponding to the generated map has three rooms and one living room, with a living room at the center, bedroom 1 at the lower left, bedroom 2 at the lower right, and bedroom at the upper right. It can be seen that the arrangement in which 3 is located.
  • the main device controller 230 determines a plan view corresponding to the map in the plan view data as the second plan view PFD2, and a map that allows the user to easily recognize the space of the house based on the determined second plan view PFD2. Generate an image (FPF).
  • the main device controller 230 replaces the map in a forward direction by removing two toilets, one porch, and two balconies in which the main device 200 cannot move and clean in the second plan view.
  • a map image FFP may be generated based on the plan view.
  • the generated map image FFP may be displayed to the user through the remote device display 112.
  • the main device controller 230 may perform a cleaning command of the user by matching each position in the map image FFP with a position in the map.
  • FIG. 17 is an exemplary view of a map image displayed by a remote device user interface of a cleaning robot according to an exemplary embodiment
  • FIG. 18 is an exemplary view of a map image displayed by a remote device user interface of a cleaning robot according to another embodiment.
  • the map image generated by the main device controller 230 is transmitted to the remote device 100 through the main device communication unit 220 and the remote device communication unit 120, and the transferred map image is a remote device user interface. Is indicated at 110.
  • the fourth area Z4 which is a living room
  • the map image may be generated such that the rooms of the first area Z1 are located on the left side and the second area Z2 and the third area Z3 are located on the left side and the right side around the fourth area Z4. have.
  • the first region Z1 to the third region Z3 generate a map image 161 in which a rectangle corresponding to the size of each segment is located, and the generated map image 161 is a remote device user interface 110. ) May be displayed.
  • main device controller 230 may search for the floor plan 162 corresponding to the map image as shown in FIG. 18, and display the searched floor plan 162 on the remote device user interface 110. .
  • the cleaning robot 1 may display the generated map image on the user interface. However, in addition to this, the current location of the main device 200 may be displayed on the displayed map image, and the user may designate a desired partition area to move the main device 200 to the designated partition area or perform cleaning. .
  • FIGS. 19A to 19C are conceptual views illustrating a process of a user commanding a cleaning operation of a cleaning robot based on a map image displayed by a remote device user interface of the cleaning robot, according to an exemplary embodiment.
  • the cleaning operation and the screen of the cleaning robot 1 disclosed in FIGS. 19A to 19C may be performed and displayed when the user selects the "cleaning management" icon 170 shown in FIG. 6. After the map image is generated, it may be automatically performed and displayed.
  • the remote device user interface 110 indicates that the main device 200 is located at the bottom center of the fourth area Z4, which is a living room, on a map image generated by combining preset shapes. 171a can be performed.
  • the user U may designate and specify a second area Z2 with which a user wants to perform cleaning or move the main device 200.
  • the remote device user interface 110 may display the second area Z2, which is the designated area 410, in different colors so as to be distinguished from other partitions. have.
  • FIG. 19B it is disclosed as specifying only one region Z2 with a finger.
  • the user U may specify and specify a plurality of divided regions and a cleaning order of the plurality of divided regions.
  • the main device 200 may perform the cleaning by moving the divided area in the designated cleaning order.
  • the remote device user interface 110 may express the degree of cleaning (for example, the degree of completion of cleaning) as a color, a figure, a numerical value, or the like.
  • the remote device user interface 110 may display a path that the main device 200 has already moved, display a partition which has already been cleaned in a different color than the uncleaned area, or display text. have.
  • the remote device controller 130 sets a path to move from the current location of the main device 200 to the designated area 410 and displays it on the remote device user interface 110.
  • the remote device controller 130 or the main device controller 230 may move on the fourth area Z4 to move the main device 200 to the designated area 410 at the point where the main device 200 is currently located. You can set the path to move up and then to the right. Thereafter, the remote device user interface 110 can display the location of the main device 200 in real time 171c.
  • the path that the main device 200 has already passed may also be removed in real time, and when the main device 200 completes the moving, the main device 200 Paths that have already passed may be removed.
  • the remote device control unit 130 or the main device control unit 230 sets the movement path according to the designated cleaning order
  • the remote device user interface 110 can display the established travel path.
  • the remote device control unit 130 or the main device control unit 230 automatically sets the moving path, and the remote device user interface 110 sets the moving path. Can be displayed.
  • the remote device controller 130 or the main device controller 230 may set the priority of the partitions in the order of the partitions adjacent to the main device 200 and set the movement path according to the priority.
  • FIGS. 20A to 20C are conceptual views illustrating a process of a user commanding a cleaning operation of a cleaning robot based on a plan view displayed by a remote device user interface of the cleaning robot according to another embodiment.
  • the cleaning operation and the screen of the cleaning robot 1 disclosed in FIGS. 20A to 20C may be performed and displayed when the user selects the "cleaning management" icon 170 shown in FIG. 6, and in another embodiment Accordingly, after the plan view corresponding to the map image is searched, the plan view may be automatically performed and displayed.
  • the remote device user interface 110 is located in a floor plan (or a post-processed floor plan) corresponding to the structure of the map, at the bottom lower end of the fourth area Z4 where the main device 200 is the living room. It can be expressed 172a that it is located.
  • the user U may designate the second area Z2 to be cleaned or move the main device 200 with a finger.
  • the remote device user interface 110 may display the second area Z2, which is the designated area 410, in different colors to distinguish it from other partitions 172b. have.
  • FIG. 20B it is disclosed as specifying only one region Z2 with a finger.
  • the user U may specify and specify a plurality of divided regions and a cleaning order of the plurality of divided regions.
  • the main device 200 may perform the cleaning by moving the divided area in the designated cleaning order.
  • the remote device user interface 110 may express the degree of cleaning (for example, the degree of completion of cleaning) as a color, a figure, a numerical value, or the like.
  • the remote device user interface 110 may display a path that the main device 200 has already moved, display a partition which has already been cleaned in a different color than the uncleaned area, or display text. have.
  • the remote device controller 130 sets a path to move from the current location of the main device 200 to the designated area 410 and displays it on the remote device user interface 110.
  • the remote device controller 130 or the main device controller 230 may move on the fourth area Z4 to move the main device 200 to the designated area 410 at the point where the main device 200 is currently located. You can set the path to move to the left, move to the top, and then move to the left to the top. The remote device user interface 110 can then display 172c the location of the main device 200 in real time.
  • the path that the main device 200 has already passed may also be removed in real time, and when the main device 200 completes the moving, the main device 200 Paths that have already passed may be removed.
  • the remote device control unit 130 or the main device control unit 230 sets the movement path according to the designated cleaning order
  • the remote device user interface 110 can display the established travel path.
  • the remote device control unit 130 or the main device control unit 230 automatically sets the moving path, and the remote device user interface 110 sets the moving path. Can be displayed.
  • the remote device controller 130 or the main device controller 230 may set the priority of the partitions in the order of the partitions adjacent to the main device 200 and set the movement path according to the priority.
  • 21 is another screen displayed on the remote device user interface of the cleaning robot according to another embodiment.
  • the remote device user interface 110 may further display (DS) the location of the docking station on the generated map image or plan view.
  • DS the location of the docking station
  • the remote device user interface 110 may select each partition Z1, Z2, Z3, Z4 on a map image or a plan view, for example.
  • a screen for designating a bedroom 1, a bedroom 2, etc. may be displayed, and a screen for designating a point DS at which the docking station is located may be displayed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Human Computer Interaction (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Electric Vacuum Cleaner (AREA)

Abstract

청소 로봇은 장애물 정보를 감지하는 센서부; 및 센서부에서 감지한 값에 기초하여 맵을 생성하고, 생성된 맵에서 영역분할점을 검출함으로써 맵의 구조를 분석하고, 분석 결과에 기초하여 맵 영상을 생성하는 제어부를 포함할 수 있다.

Description

청소 로봇 및 청소 로봇의 제어 방법
장애물 정보가 포함된 맵을 영상으로 표시하는 청소 로봇 및 그 제어방법에 대한 것이다.
청소 로봇은 유저의 조작 없이 청소 공간을 주행하면서 바닥에 쌓인 먼지 등의 이물질을 흡입함으로써 청소 공간을 자동으로 청소하는 장치이다. 즉, 청소 로봇은 청소 공간을 주행하며 청소 공간을 청소한다.
종래 청소 로봇은 청소 로봇이 위치한 주택 내의 전체 구조에 대해서 장애물 정보가 포함된 맵에 보정을 통해 표시하거나 미리 유저가 청소 로봇에 주택의 맵을 설정하여 표시하였다.
그러나 맵에 보정을 통해 표시하는 경우, 유저가 직관적으로 주택의 구조와 청소 로봇의 위치를 인지하는데 어려움이 있었고, 유저가 미리 주택의 맵을 설정하는 경우, 청소 로봇의 현재 위치 표시 및 장애물의 위치 변화에 대한 적응에 어려움이 있었다.
따라서, 최근 이러한 청소 로봇이 위치한 공간을 표시하여 유저의 직관력을 증가시키는 연구가 활발히 진행되고 있다.
또한, 종래 청소 로봇은 유저가 청소 공간 가운데 특정 위치를 먼저 청소하기를 원하는 경우 유저가 직접 청소 로봇의 위치를 확인하고 원격 제어기를 이용하여 청소 로봇을 특정 위치로 이동시켜야 했다.
그러나, 유저가 청소 로봇의 위치를 알지 못하는 경우에는 유저가 청소 로봇을 찾아야만 했고, 청소 로봇이 소파 또는 침대 등의 밑을 청소하고 있으면 유저가 청소 로봇을 찾는 것에 어려움이 있었다.
또한, 청소 로봇을 특정 위치를 이동시키기 위하여 원격 제어기를 이용하여 유저가 청소 로봇의 주행을 조작하여야 하는 불편함이 있었다.
또한, 청소 로봇을 드레그 기능을 통해 특정 위치로 이동시키는 경우, 청소 로봇이 추종하는 광 신호를 청소 로봇이 특정 위치로 이동할 때까지 출력해야 되는 문제가 있었다.
따라서, 최근 이러한 불편 없이 청소 로봇을 특정 위치로 이동시키는 방법에 대한 연구가 활발히 진행되고 있다.
맵의 구조를 분석하여 다수의 분할된 영역으로 구성된 간략화된 형상의 맵을 생성하여 표시하는 청소 로봇 및 청소 로봇의 제어 방법을 제공한다.
일 측면에 따른 청소 로봇은 장애물 정보를 감지하는 센서부; 및 센서부에서 감지한 값에 기초하여 맵을 생성하고, 생성된 맵에서 영역분할점을 검출함으로써 맵의 구조를 분석하고, 분석 결과에 기초하여 맵 영상을 생성하는 제어부를 포함할 수 있다.
구조를 분석하여 맵이 포함하는 복수개의 분할영역을 판단하고, 각 분할영역을 도형으로 대체하고, 복수 개의 분할영역에 각각 대응하는 복수 개의 도형을 조합하여 맵 영상을 생성할 수 있다.
제어부는 적어도 하나 이상의 픽셀이 형성하는 구간의 너비에 기초하여 영역분할점을 검출할 수 있다.
제어부는 맵의 뼈대 중 브랜치노드로부터 뼈대 엣지를 따라 리프노드로 검출 지점을 이동시키는 동안, 장애물이 없는 것으로 표시된 하나 이상의 픽셀이 형성하는 구간의 너비에 기초하여 영역분할점을 검출할 수 있다.
제어부는 검출 지점을 이동시키는 동안, 장애물이 없다고 표시된 하나 이상의 픽셀이 기준값 미만의 너비를 갖는 구간을 형성하는 경우, 검출 지점을 영역분할점으로서 검출할 수 있다.
제어부는 검출 지점을 이동시키는 동안, 장애물이 없다고 표시된 하나 이상의 픽셀이 기준값 미만의 너비를 갖는 구간에서 기준값 이상의 너비를 갖는 구간을 통과하는 경우, 기준값 미만의 너비를 갖는 구간에 대응하는 검출 지점을 영역분할점으로서 검출할 수 있다.
제어부는 검출 지점의 이동 방향을 기준으로 하나 이상의 픽셀의 수평 방향, 수직 방향, 및 임의의 각도 방향 중 적어도 어느 한 방향의 폭을 구간의 너비로서 판단할 수 있다.
제어부는 검출 지점을 기준으로 하나 이상의 픽셀의 수평 방향, 수직 방향, 및 임의의 각도 방향 중 적어도 어느 한 방향의 폭을 구간의 너비로서 판단할 수 있다.
제어부는 맵의 뼈대를 생성하고, 뼈대의 중심으로부터 바깥으로 검출 지점을 이동시킬 수 있다.
제어부는, 맵의 뼈대를 생성하는 뼈대 생성부, 뼈대가 포함하는 하나 이상의 엣지 중 불필요한 엣지를 제거하고, 뼈대의 중심 노드와 다른 노드를 구분하는 엣지 처리부, 및 엣지 처리부의 처리 결과 및 센서부에서 감지한 값에 기초하여 중심 노드와 다른 노드 사이에 형성된 영역분할점을 검출하는 영역분할점 검출부를 포함하는 구조 분석부를 포함할 수 있다.
영역분할점 검출부는 영역분할점이 검출된 경우, 영역분할점으로부터 다른 노드 방향으로 형성된 하나 이상의 픽셀을 하나의 분할영역으로서 구분할 수 있다.
청소 로봇은 맵의 외형을 균일하게 다듬는 맵 처리부를 더 포함할 수 있다.
제어부는 구조 분석부가 분석한 맵의 구조에 기초하여 맵이 포함하는 복수개의 분할영역을 판단하는 영역 분할부를 더 포함할 수 있다.
제어부는 분할영역에 대한 정보에 기초하여 각 분할영역을 미리 설정된 도형으로 대체하는 후 처리부를 더 포함할 수 있다.
미리 설정된 도형은 사각형, 타원, 원, 및 다각형 중 적어도 어느 하나의 형태를 가질 수 있다.
청소 로봇은 맵 영상을 원격 장치에 전달하는 통신부를 더 포함할 수 있다.
제어부는 생성된 맵 영상에 대응하는 평면도를 검색하고, 대응하는 평면도에 기초하여 다른 맵 영상을 생성할 수 있다.
청소 로봇은 복수 개의 평면도가 포함된 평면도 데이터가 저장된 저장부를 더 포함하되, 제어부는 복수 개의 평면도 중 생성된 맵 영상에 대응하는 평면도를 검색할 수 있다.
제어부는 대응하는 평면도를 후처리하여 다른 맵 영상을 생성할 수 있다.
제어부는 후처리로서 대응하는 평면도의 방향을 회전시키고, 맵 영상의 불필요한 공간을 제거할 수 있다.
제어부는 센서부에서 감지한 값에 기초하여 이진화 데이터로 맵을 생성할 수 있다.
다른 측면에 따른 청소 로봇은 적어도 하나의 프로그램이 저장되는 저장부, 및 적어도 하나의 프로그램을 실행함으로써 맵 영상을 표시하는 제어부를 포함하되, 적어도 하나의 프로그램은, 사용자로부터 맵 생성 명령을 입력 받는 단계; 메인 장치로부터 맵 영상을 수신하는 단계; 및 맵 영상을 표시하는 단계를 실행하는 명령어들을 포함하고, 맵 영상은 메인 장치의 장애물 감지 결과에 기초하여 생성된 영역분할점과 분할영역에 대한 정보를 포함할 수 있다.
맵 영상은 미리 설정된 도형의 조합으로 구성될 수 있다.
영역분할점은 세로 방향 또는 가로 방향으로 표시될 수 있다.
맵 영상을 표시하는 단계는 메인 장치의 위치를 표시하는 단계를 포함할 수 있다.
적어도 하나의 프로그램은 사용자로부터 맵 영상 상에서 표시되는 복수의 분할영역중 임의의 분할영역을 선택 받고, 메인 장치를 선택된 분할영역으로 이동시키는 단계를 실행하는 명령어를 더 포함할 수 있다.
또 다른 측면에 따른 청소 로봇의 제어방법은 장애물 정보를 감지하는 단계; 감지된 장애물 정보에 기초하여 맵을 생성하는 단계; 맵에서 영역분할점과 분할영역을 검출함으로써 맵의 구조를 분석하는 단계; 및 맵의 구조에 기초하여 맵 영상을 생성하는 단계를 포함하는 청소 로봇의 제어방법.
분석하는 단계는 맵의 구조를 분석하여 맵이 포함할 수 있다.복수개의 분할영역을 판단하는 단계를 포함하고, 맵 영상을 생성하는 단계는 각 분할영역을 도형으로 대체하고, 복수 개의 분할영역에 각각 대응하는 복수 개의 도형을 조합하여 맵 영상을 생성하는 단계를 포함할 수 있다.
분석하는 단계는 적어도 하나 이상의 픽셀이 형성하는 구간의 너비에 기초하여 영역분할점을 검출하는 단계를 포함할 수 있다.
상술한 청소 로봇 및 청소 로봇의 제어 방법에 의하면, 맵 영상의 가시성을 증가시켜 청소 로봇의 상태를 쉽게 파악하고 그에 기초한 제어 명령을 쉽게 명령할 수 있다.
도 1은 청소 로봇의 외관도이다.
도 2a는 일 실시예에 따른 메인 장치의 저면도이고, 도 2b는 일 실시예에 따른 메인 장치의 내부도이다.
도 3은 청소 로봇의 제어 구성에 대한 블록도이다.
도 4a는 일 실시예에 따른 통신부의 제어 블록도이고, 도 4b는 다른 실시예에 따른 통신부의 제어 블록도이다.
도 5는 원격 장치 유저 인터페이스의 홈 화면의 예시도이다.
도 6은 원격 장치 유저 인터페이스의 메뉴 선택 화면의 예시도이다.
도 7a는 원격 장치 유저 인터페이스의 맵 관리 화면의 예시도이고, 도 7b는 원격 장치 유저 인터페이스의 맵 관리 화면의 예시도이다.
도 8a는 일 실시예에 따른 맵 영상을 생성하는 메인 장치의 제어 블록도이고, 도 8b는 다른 실시예에 따른 맵 영상을 생성하는 메인 장치의 제어 블록도이다.
도 9는 구조 분석부)의 세부 구성을 기능에 따라 구분한 제어 블록도이다.
도 10은 일 실시예에 따른 맵 영상을 생성하는 청소 로봇의 제어방법에 대한 순서도이다.
도 11은 다른 실시예에 따른 맵 영상을 생성하는 청소 로봇의 제어방법에 대한 순서도이다.
도 12는 일 실시예에 따른 메인 장치가 맵 영상을 생성하는 과정에 대한 개념도이다.
도 13은 일 실시예에 따라 생성된 맵 영상에 대한 예시도이다.
도 14는 맵에 대응되는 평면도를 평면도 데이터 상에서 찾는 과정을 설명하기 위한 개념도이다.
도 15는 평면도 데이터 중 3개의 방을 포함하는 평면도이다.
도 16은 평면도에 기초하여 생성된 맵 영상에 대한 도면이다.
도 17은 일 실시예에 따른 청소 로봇의 원격 장치 유저 인터페이스가 표시하는 맵 영상의 예시도이다.
도 18은 다른 실시예에 따른 청소 로봇의 원격 장치 유저 인터페이스가 표시하는 맵 영상의 예시도이다.
도 19a 내지 도 19c는 일 실시예에 따른 청소 로봇의 원격 장치 유저 인터페이스가 표시하는 맵 영상에 기초하여 사용자가 청소 로봇의 청소 동작을 명령하는 과정을 설명하기 위한 개념도이다.
도 20a 내지 도 20c는 다른 실시예에 따른 청소 로봇의 원격 장치 유저 인터페이스가 표시하는 맵 영상에 기초하여 사용자가 청소 로봇의 청소 동작을 명령하는 과정을 설명하기 위한 개념도이다.
도 21은 다른 실시예에 따른 청소 로봇의 원격 장치 유저 인터페이스가 표시하는 다른 화면이다.
이하, 첨부된 도면을 참조하여 기술되는 실시예를 통하여 발명을 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 기술하기로 한다. 다만, 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 발명 실시예들의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.
이하에서 사용되는 용어들은 실시예에서의 기능을 고려하여 선택된 용어들로서, 그 용어의 의미는 유저, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로, 후술하는 실시예들에서 사용된 용어의 의미는, 이하에서 구체적으로 정의된 경우에는 그 정의에 따르며, 구체적인 정의가 없는 경우는 통상의 기술자들이 일반적으로 인식하는 의미로 해석되어야 할 것이다.
아울러, 이하에서 선택적으로 기재된 양상이나 선택적으로 기재된 실시예의 구성들은 비록 도면에서 단일의 통합된 구성으로 도시되었다 하더라도 달리 기재가 없는 한, 통상의 기술자에게 기술적으로 모순인 것이 명백하지 않다면 상호간에 자유롭게 조합될 수 있는 것으로 이해하여야 한다.
이하, 첨부된 도면을 참조하여 청소 로봇 및 청소 로봇의 제어 방법의 실시예에 대해서 설명하도록 한다.
이하, 도 1을 참조하여 청소 로봇의 구성의 일 실시예에 대해서 설명하도록 한다.
도 1은 청소 로봇의 외관도이다.
청소 로봇(1)은 적어도 1회의 청소 또는 이동을 수행하여 현재 위치한 공간의 장애물 정보가 포함된 맵을 생성하고, 생성된 맵과 유사한 맵 영상을 생성하여 유저 인터페이스에 표시한다.
구체적으로, 청소 로봇(1)은 현재 위치한 공간에 대해서 적어도 1회의 청소 또는 이동을 통해 현재 위치한 공간의 장애물 정보를 센서부를 통해 파악할 수 있다. 또한, 청소 로봇(1)은 파악된 장애물 정보에 기초하여 현재 위치한 공간의 장애물 정보가 포함된 맵을 생성할 수 있다. 또한, 청소 로봇(1)은 장애물 정보가 포함된 맵의 구조를 분석할 수 있고, 분석된 구조에 기초하여 적어도 1회의 청소 또는 이동을 통해 파악된 공간을 복수 개의 분할영역으로 분할할 수 있다. 또한, 청소 로봇(1)은 분할된 복수 개의 분할영역을 미리 설정된 도형으로 대체하여 복수 개의 미리 설정된 도형이 상이한 면적 또는 위치를 갖도록 조합한 맵 영상을 생성할 수 있다. 또한, 청소 로봇(1)은 미리 저장된 평면도 데이터 중에서 분석된 구조에 대응되는 평면도에 기초하여 맵을 대체하는 맵 영상을 생성할 수 있다. 또한, 청소 로봇(1)은 생성된 맵 영상을 유저 인터페이스에 표시하여 유저가 현재 청소 로봇(1)이 위치한 공간의 구조 및 청소 로봇(1)의 위치를 쉽게 파악하도록 할 수 있다.
또한, 청소 로봇(1)은 청소 공간 상을 이동하며 청소를 수행하는 메인 장치(200) 및 메인 장치(200)의 동작을 원거리에서 제어하고 메인 장치(200)의 현재 상황 등을 표시하는 원격 장치(100)를 포함할 수 있다. 또한, 원격 장치(100)는 도 1에 도시된 바와 같이 휴대폰을 채용할 수 있으나, 이에 한정되는 것은 아니며, 휴대폰 외에 PDA, 노트북, 디지털 카메라, MP3 플레이어 등을 채용할 수도 있다.
도 2a는 일 실시예에 따른 메인 장치의 저면도이고, 도 2b는 일 실시예에 따른 메인 장치의 내부도이다.원격 장치(100)는 유저 인터페이스를 제공하는 원격 장치 유저 인터페이스(110)를 포함할 수 있다. 원격 장치 유저 인터페이스(110)는 원격 장치 입력부(111) 및 원격 장치 디스플레이부(112)를 포함할 수 있다. 또한, 원격 장치 유저 인터페이스(110)는 메인 장치(200)의 제어를 위한 유저 명령을 입력받거나, 메인 장치(200)의 각종 정보를 표시할 수 있다.
원격 장치 입력부(111)는 유저의 입력을 위해 각종 버튼이나 스위치, 페달(pedal), 키보드, 마우스, 트랙볼(track-ball), 각종 레버(lever), 핸들(handle)이나 스틱(stick) 등과 같은 하드웨어적인 장치를 포함할 수 있다. 또한, 원격 장치 입력부(111)는 유저 입력을 위해 터치 패드(touch pad) 등과 같은 GUI(Graphical User interface), 즉 소프트웨어인 장치를 포함할 수도 있다. 터치 패드는 터치 스크린 패널(Touch Screen Panel: TSP)로 구현되어 원격 장치 디스플레이부(112)와 상호 레이어 구조를 이룰 수 있다.
원격 장치 디스플레이부(112)는 음극선관(Cathode Ray Tube: CRT), 디지털 광원 처리(Digital Light Processing: DLP) 패널, 플라즈마 디스플레이 패널(Plasma Display Penal), 액정 디스플레이(Liquid Crystal Display: LCD) 패널, 전기 발광(Electro Luminescence: EL) 패널, 전기영동 디스플레이(Electrophoretic Display: EPD) 패널, 전기변색 디스플레이(Electrochromic Display: ECD) 패널, 발광 다이오드(Light Emitting Diode: LED) 패널 또는 유기 발광 다이오드(Organic Light Emitting Diode: OLED) 패널 등으로 마련될 수 있으나, 이에 한정되지는 않는다.
전술한 바 있듯이, 터치 패드와 상호 레이어 구조를 이루는 터치 스크린 패널(TSP)로 구성되는 경우, 원격 장치 디스플레이부(112)는 디스플레이부 외에 입력부로도 사용될 수 있다. 이하에서는 설명의 편의를 위해, 원격 장치 디스플레이부(112)가 터치 스크린 패널로 구성되는 것으로 하여 상술하기로 한다.
메인 장치(200)는 도 1 내지 도 2b에 도시된 바와 같이, 메인 바디(2-1)와 서브 바디(2-2)를 포함하는 본체(2), 구동 바퀴 어셈블리(30), 메인 브러쉬 유닛(20), 전원부(250), 집진부, 메인 장치 통신부(220), 유저 인터페이스부(210)를 포함할 수 있다. 도 1에 도시된 바와 같이 메인 바디(2-1)는 대략 반원기둥의 형태를 가질 수 있고, 서브 바디(2-2)는 직육면체의 형태를 가질 수 있다. 도 1에 도시된 원격 장치(100)와 메인 장치(200)의 외관은 청소 로봇(1)의 외관의 일 예에 불과하며, 청소 로봇(1)은 다양한 형태를 가질 수 있다.
메인 장치 전원부(250)는 메인 장치(200)를 구동시키기 위한 구동 전원을 공급한다. 메인 장치 전원부(250)는 본체(2)에 장착된 각종 부품을 구동시키기 위한 각 구동 장치와 전기적으로 연결되어 구동전원을 공급하는 배터리를 포함한다. 배터리는 재충전이 가능한 2차 배터리로 마련되며, 도킹 스테이션으로부터 전력을 공급받아 충전될 수 있다. 여기서, 도킹 스테이션은 메인 장치(200)가 청소 과정을 완료하거나 배터리의 양이 기준치보다 낮아지게 되는 경우 메인 장치(200)가 도킹되는 장치로서, 외부 또는 내부 전원을 이용하여 도킹된 메인 장치(200)에 전력을 공급할 수 있다.
메인 장치 전원부(250)는 도 2a 내지 도 2b에 도시된 바와 같이 본체(2)의 하부에 장착될 수 있으나, 이에 한정되는 것은 아니다.
도시되진 않았으나, 메인 장치 통신부(220)는 본체(2)의 내부에 구비될 수 있으며, 본체(2)가 도킹 스테이션, 버추얼 가드 및 원격 장치(100) 등과 통신을 수행할 수 있도록 한다. 메인 장치 통신부(220)는 메인 장치(200)의 청소 완료 여부, 본체(2)에 마련된 배터리의 잔여량, 본체(2)의 위치 등을 도킹 스테이션에 송신하고, 도킹 스테이션의 위치 및 메인 장치(200)의 도킹을 유도하는 도킹 신호를 도킹 스테이션으로부터 수신할 수 있다.
또한, 메인 장치 통신부(220)는 가상벽을 형성하는 버추얼 가드와 진입 제한 신호를 송수신할 수 있다. 버추얼 가드는 메인 장치(200)의 주행 시, 현재 청소 영역과 특정 영역의 연결 통로에 진입 제한 신호를 송신함으로써 가상벽을 형성하며, 메인 장치 통신부(220)는 진입 제한 신호를 수신하여 메인 장치(200)가 특정 영역으로 진입하는 것을 차단시킬 수 있다.
메인 장치 통신부(220)는 원격 장치(100)를 통해 유저가 입력하는 명령을 수신할 수 있다. 예를 들어, 유저는 청소 시작/종료 명령, 청소영역의 맵 생성 명령, 메인 장치(200)의 이동 명령 등을 원격 장치(100)를 통해 입력할 수 있으며, 메인 장치 통신부(220)는 원격 장치(100)로부터 유저 명령을 수신하여, 메인 장치(200)가 그에 상응하는 동작을 수행할 수 있도록 한다. 메인 장치 통신부(220)에 대한 더욱 구체적인 설명은 후술하기로 한다.
구동 바퀴 어셈블리(30)는 복수 개로 구비될 수 있으며, 도 2a 내지 도 2b에 도시된 것처럼 두 개의 구동 바퀴 어셈블리(30)가 본체(2)의 하부 중앙으로부터 좌우 가장자리에 서로 대칭되도록 마련될 수 있다. 구동 바퀴 어셈블리(30)는 청소를 수행하는 과정에서 전진, 후진 및 회전주행 등의 이동 동작이 가능하도록 하는 구동바퀴(33, 35)를 포함한다. 구동 바퀴 어셈블리(30)는 모듈화되어 본체(2)의 하부에 착탈 가능하도록 장착될 수 있다. 따라서, 구동 바퀴(33,35) 등에 장애가 발생하여 수리를 요하는 경우, 본체(2)의 전체를 분해하지 않고 구동 바퀴 어셈블리(30)만을 본체(2)의 하부에서 분리하여 수리할 수 있다. 구동 바퀴 어셈블리(30)는 후크 결합, 스크류 결합 및 끼워 맞춤 등과 같은 방식으로 본체(2)의 하부에 장착될 수 있다.
캐스터(31)는 본체(2)의 하부 중심으로부터 전방 가장자리에 마련되어, 본체(2)가 안정된 자세를 유지할 수 있도록 한다. 캐스터(31)는 구동 바퀴 어셈블리(30)와 같이 하나의 어셈블리를 구성할 수도 있다.
메인 브러쉬 유닛(20)은 본체(2)의 하부에 형성된 흡입구(23) 측에 장착된다. 메인 브러쉬 유닛(20)은 메인 브러쉬(21)와 롤러(22)를 포함한다. 메인 브러쉬(21)는 롤러(22)의 외부면에 구비되고, 롤러(22)가 회전함에 따라 바닥면에 쌓인 먼지를 휘저어 흡입구(23)로 유도한다. 이 때, 메인 브러쉬(21)는 탄성력을 가지는 다양한 재질로 형성될 수 있다. 그리고 롤러(22)는 강체로 형성될 수 있으나, 이에 한정되는 것은 아니다.
도면에 도시되어 있지는 않으나, 흡입구(23)의 내부에는 흡입력을 발생시키는 송풍 장치가 마련되어, 흡입구(23)에 유입된 먼지를 집진하여 필터링하는 집진부로 이동시킬 수 있다.
본체(2)에는 각종 센서가 장착될 수 있다. 각종 센서는 장애물 감지 센서(261), 및 이미지 센서(263) 중 적어도 하나를 포함할 수 있다.
장애물 감지 센서(261)는 메인 장치(200)의 주행 경로 상에 존재하는 장애물 예를 들어, 집안의 집기, 가구, 벽면, 벽 모서리 등을 감지하기 위한 센서로서, 거리 인식이 가능한 초음파 센서의 형태로 마련될 수 있으나, 이에 한정되는 것은 아니다.
장애물 감지 센서(261)는 본체(2)의 전방부 및 측면에 복수 개로 마련되어 본체(2)의 둘레를 형성할 수 있으며, 복수의 장애물 감지 센서(261)의 전면에는 센서창이 마련되어 장애물 감지 센서(261)를 외부로부터 보호 및 차단시킬 수 있다.
이미지 센서(263)는 메인 장치(200)의 위치를 인식하고, 메인 장치(200)의 주행 또는 청소 영역에 대한 맵(map)을 형성하기 위한 센서를 의미한다. 이미지 센서(263)는 카메라 등과 같이 영상데이터를 획득할 수 있는 장치로 구현되어, 본체(2)의 상부에 마련될 수 있다. 다시 말하면, 이미지 센서(263)는 메인 장치(200) 상부의 영상데이터로부터 특징점을 추출하고, 특징점을 이용하여 메인 장치(200)의 위치를 인식하며, 청소 영역에 대한 맵을 생성할 수 있도록 할 수 있을 뿐만 아니라, 맵상에서 메인 장치(200)의 현재 위치를 파악할 수 있도록 한다. 본체(2)에 장착 가능한 장애물 감지 센서(261), 및 이미지 센서(263)에 대한 더욱 구체적 설명은 후술하기로 한다.
본체(2)의 상부에는 메인 장치 유저 인터페이스(280)가 구비될 수 있다. 메인 장치 유저 인터페이스(280)는 유저 명령을 입력 받기 위한 메인 장치 입력부(281) 및 메인 장치(200)의 각종 상태를 표시하는 메인 장치 디스플레이부(282)를 포함하여, 유저 인터페이스를 제공할 수 있다. 예를 들어, 메인 장치 디스플레이부(282)를 통해 배터리 충전 상태 또는 집진부에 먼지가 가득 찼는지 여부, 메인 장치(200)의 청소 모드, 휴면 모드 등이 표시될 수 있다. 메인 장치 입력부(281) 및 메인 장치 디스플레이부(282)의 구현 형태는 전술한 원격 장치 입력부(111) 및 원격 장치 디스플레이부(112)와 동일한 바, 그에 대한 설명은 생략하기로 한다.
이상으로 청소 로봇의 일 실시예에 따른 외관을 살펴보았으며, 이하에서는 도 3을 참조하여 청소 로봇의 일 실시예에 따른 구성에 대해 상세히 설명하도록 한다.
도 3은 청소 로봇의 제어 구성에 대한 블록도이다.
청소 로봇(1)은 유무선 통신으로 연결된 원격 장치(100) 및 메인 장치(200)을 포함할 수 있다. 원격 장치(100)는 원격 장치 통신부(120), 원격 장치 제어부(130), 원격 장치 저장부(140) 및 원격 장치 유저 인터페이스(110)를 포함할 수 있다.
원격 장치 통신부(120)는 유무선 통신을 통해 메인 장치(200) 또는 외부 서버 등과 각종 신호 및 데이터를 송수신한다. 예를 들어, 원격 장치 통신부(120)는 원격 장치 유저 인터페이스(110)를 통한 유저 명령에 따라, 메인 장치(200)를 관리하기 위한 어플리케이션을 외부 서버(예를 들어, 웹 서버, 이동통신 서버 등)으로부터 다운로드 받을 수 있다. 또한, 원격 장치 통신부(120)는 외부 서버로부터 청소 영역의 평면도 데이터를 다운로드 받을 수 있다. 여기서, 평면도는 메인 장치(200)가 위치한 공간의 구조를 표현한 그림이고, 또한, 평면도 데이터는 상이한 복수 개의 주택의 평면도가 집합된 데이터이다.
원격 장치 통신부(120)는 유저의 "맵 생성" 명령을 메인 장치(200)에 전송할 수 있고, 생성된 맵 영상을 메인 장치(200)로부터 수신할 수 있다. 또한, 원격 장치 통신부(120)는 유저에 의해 편집된 맵 영상을 메인 장치(200)에 전송할 수 있다.
또한, 원격 장치 통신부(120)는 유저에 의해 입력된 "청소 시작" 명령 또는 "청소 종료" 명령 또는 “청소 영역의 지정”을 메인 장치(200)에 전송할 수도 있다.
이를 위해, 원격 장치 통신부(120)는 무선 인터넷 모듈, 근거리 통신 모듈, 이동통신 모듈 등 다양한 통신 모듈을 포함할 수 있다.
원격 장치 통신부(120)에 대한 구체적인 설명은 이하의 도 4a 를 참조하여 설명하도록 한다.
원격 장치 제어부(130)는 원격 장치(100)의 전반적인 동작을 제어한다. 원격 장치 제어부(130)는 원격 장치 유저 인터페이스(110)를 통해 입력된 유저 명령에 기초하여, 원격 장치(100)의 각 구성 즉, 원격 장치 통신부(120), 원격 장치 디스플레이부(112), 원격 장치 저장부(140) 등을 제어할 수 있다.
원격 장치 제어부(130)는 원격 장치 통신부(120)를 위한 제어 신호를 생성할 수 있다. 예를 들어, 유저가 "맵 생성" 명령을 입력하는 경우, 원격 장치 제어부(130) 메인 장치(200)에 미리 설정된 도형이 조합된 맵 영상 생성 명령을 전송하도록 제어신호를 생성할 수 있다. 또한, 유저가 "평면도 데이터 다운로드" 명령을 입력하는 경우, 원격 장치 제어부(130)는 외부 서버로부터 서로 다른 주택의 평면도가 복수 개 집합된 평면도 데이터를 다운로드 하도록 제어 신호를 생성할 수 있다.
원격 장치 제어부(130)는 원격 장치 디스플레이부(112)를 위한 제어 신호를 생성할 수 있다. 예를 들어, 원격 장치 제어부(130)는 유저 입력에 대응하는 화면을 출력하도록 제어 신호를 생성할 수 있다. 원격 장치 제어부(130)는 화면 전환을 수행하도록 제어 신호를 생성할 수 있다. 또한, 원격 장치 제어부(130)는 수신된 맵 영상을 표시하도록 제어 신호를 생성할 수 있다.
원격 장치 제어부(130)는 원격 장치 저장부(140)를 위한 제어 신호를 생성할 수 있다. 원격 장치 제어부(130)는 수신된 맵 영상을 저장하도록 제어 신호를 생성할 수 있다.
원격 장치 제어부(130)는 집적 회로가 형성된 적어도 하나의 칩을 포함하는 각종 프로세서(processor)일 수 있다. 원격 장치 제어부(130)는 하나의 프로세서에 마련될 수도 있으나, 복수의 프로세서에 분리되어 마련되는 것도 가능하다.
원격 장치 저장부(140)는 원격 장치(100)의 동작을 위한 데이터 및 프로그램을 일시 또는 비일시적으로 저장한다. 예를 들어, 원격 장치 저장부(140)는 메인 장치(200)를 관리하기 위한 어플리케이션을 저장할 수 있다. 또한, 원격 장치 저장부(140)는 메인 장치(200)로부터 수신된 맵 영상을 저장할 수 있고, 외부 서버로부터 다운로드한 평면도 데이터를 저장할 수 있다.
이와 같은 원격 장치 저장부(140)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory: RAM), SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 다만, 이에 한정되는 것은 아니며, 동종 기술 분야에 알려져 있는 임의의 다른 형태로 구현될 수도 있다. 또한, 원격 장치(100)는 인터넷(internet)상에서 저장 기능을 수행하는 웹 스토리지(web storage)를 운영할 수도 있다.
원격 장치 유저 인터페이스(110)는 유저로부터 메인 장치(200)를 제어하기 위한 각종 명령을 입력 받을 수 있다. 예를 들어, 유저는 유저 인터페이스를 통해, 복수 개의 미리 설정된 도형이 조합된 맵 영상을 생성하라는 "맵 생성" 명령, 맵 영상 상에서 표시된 하나 이상의 분할영역을 방으로서 지정하거나 도킹 스테이션의 위치를 지정하기 위한 "방/충전대 위치 지정" 명령, 맵의 구조에 대응되는 평면도에 기초한 맵 영상을 생성하라는 “평면도 생성”, 복수 개의 주택의 평면도를 조합한 평면도 데이터를 다운로드 받으라는 “평면도 데이터 다운로드” 명령, 표시되는 맵 영상에서 청소 영역으로 지정하여 메인 장치(200)를 이동시키는 “청소 관리” 명령 등을 입력할 수 있다.
원격 장치 유저 인터페이스(110)는 메인 장치(200)의 각종 정보를 표시할 수 있다. 예를 들어, 원격 장치 유저 인터페이스(110)는 메인 장치(200)가 주행할 청소 영역의 맵 영상을 표시할 수 있다. 또한, 원격 장치 유저 인터페이스(110)는 수신된 맵 영상을 표시할 수 있다.
메인 장치(200)는 메인 장치 전원부(250), 메인 장치 센서부(260), 메인 장치 통신부(220), 메인 장치 제어부(230), 메인 장치 구동부(270), 메인 장치 유저 인터페이스(280) 및 메인 장치 저장부(240)를 포함할 수 있다.
메인 장치 전원부(250)는 도 2a 내지 도 2b를 참조하여 설명한 바와 같이 배터리로 마련되며, 메인 장치(200)를 구동시키기 위한 구동전원을 공급한다.
메인 장치 통신부(220)는 유무선 통신을 통해 원격 장치(100) 또는 외부 기기와 각종 신호 및 데이터를 송수신한다. 예를 들어, 메인 장치 통신부(220)는 유저의 "맵 생성" 명령을 원격 장치(100)로부터 전송받고, 생성된 맵을 원격 장치(100)에 송신할 수 있다. 또한, 메인 장치 통신부(220)는 원격 장치(100)에 저장된 맵과 원격 장치(100)에 저장된 청소일정을 전송받을 수 있다. 이 때, 저장된 맵은 최종적으로 저장된 맵을 의미하고, 저장된 청소일정은 최종적으로 저장된 청소일정을 의미할 수 있다. 메인 장치 통신부(220)는 원격 장치(100)에 메인 장치(200)의 현 상태값 및 청소이력데이터를 전송할 수도 있다.
또한, 메인 장치 통신부(220)는 원격 장치(100)로부터 유저의 청소 시작명령 또는 청소 종료명령을 전송 받을 수도 있다. 메인 장치(200)가 청소를 진행하는 동안, 전송 환경이 불일치하는 상황이 발생하는 경우, 메인 장치 통신부(220)는 환경이 불일치한다는 메시지를 원격 장치(100)에 전송할 수 있다. 마찬가지로, 청소 불가한 영역이 발생하는 경우, 메인 장치 통신부(220)는 청소가 불가하다는 메시지를 원격 장치(100)에 송신할 수 있다.
메인 장치 통신부(220)에 대한 구체적인 설명은 이하의 도 4a를 참조하여 설명하도록 한다.
메인 장치 센서부(260)는 메인 장치(200)의 주행에 요구되는 장애물 및 지면의 상태를 감지한다. 또한, 메인 장치 센서부(260)는 장애물 감지 센서(261), 및 이미지 센서(263)를 포함할 수 있다.
장애물 감지 센서(261)는 본체(2)의 외주면에 복수개 마련되어, 메인 장치(200)의 전방이나 측면에 존재하는 장애물을 감지하고, 감지 결과를 메인 장치 제어부(230)에 전달한다.
장애물 감지 센서(261)는 장애물과의 접촉 여부에 따라 접촉식 센서로 마련될 수도 있고, 비접촉식 센서로 마련될 수도 있으며, 접촉식 센서와 비접촉식 센서가 혼용되어 마련되는 것도 가능하다. 접촉식 센서는 실제로 본체(2)가 장애물과 충돌함으로써 장애물을 감지하는 센서를 의미하며, 비접촉식 센서는 본체(2)가 장애물과 충돌하지 않고 또는 장애물과의 충돌 전에 장애물을 미리 감지하는 센서를 의미한다.
비접촉식 센서는 초음파 센서, 광 센서 또는 RF 센서 등을 포함할 수 있다. 장애물 감지 센서(261)가 초음파 센서로 구현되는 경우, 주행하는 경로에 초음파를 발신하고, 반사하는 초음파를 수신하여 장애물을 감지할 수 있다. 장애물 감지 센서(261)가 광 센서로 구현되는 경우, 적외선 영역 또는 가시광선 영역의 광을 출사하고, 반사되는 광을 수신하여 장애물을 감지할 수 있다. 장애물 감지 센서(261)가 RF 센서로 구현되는 경우, 도플러 효과를 이용하여 특정주파수의 전파, 예를 들어 극초단파(microwave)를 송신하고, 반사파의 주파수 변화를 검출하여 장애물을 감지할 수 있다.
이미지 센서(263)는 카메라 등과 같은 영상데이터를 획득할 수 있는 장치로 마련되며, 본체(2)의 상부에 장착되어 메인 장치(200)의 위치를 인식할 수 있다. 이미지 센서(263)는 메인 장치(200) 상부의 영상데이터로부터 특징점을 추출하고, 특징점을 이용하여 메인 장치(200)의 위치를 인식한다. 이미지 센서(263)를 통해 감지된 위치 정보는 메인 장치 제어부(230)에 전달될 수 있다.
메인 장치 센서부(260)의 센서값 즉, 장애물 감지 센서(261), 및 이미지 센서(263)의 센서값은 메인 장치 제어부(230)에 전달되고, 메인 장치 제어부(230)는 이에 기초하여 청소 영역에 대한 맵을 생성할 수 있다. 센서값에 기초한 맵 생성 방법은 공지된 기술인 바, 그에 대한 설명은 생략하기로 한다. 또한, 도 4a는 메인 장치 센서부(260)의 일 예를 도시한 것으로, 청소 영역의 맵을 생성할 수 있다면, 다른 종류의 센서가 더 포함하거나, 일부 센서가 생략되는 것도 가능할 것이다.
메인 장치 구동부(270)는 구동 바퀴 어셈블리(30)의 구동을 제어하기 위한 구동 바퀴 구동부(271), 및 메인 브러쉬 유닛(20)의 구동을 제어하기 위한 메인 브러쉬 구동부(272)를 포함할 수 있다.
구동 바퀴 구동부(271)는 메인 장치 제어부(230)의 제어를 받아 본체(2)의 하부에 장착된 구동 바퀴(33,35)를 제어하여 메인 장치(200)가 이동할 수 있도록 한다. 유저의 "맵 생성" 명령이나 또는 "청소 시작" 명령이 메인 장치(200)에 전달되는 경우, 구동 바퀴 구동부(271)는 구동바퀴(33, 35)의 구동을 제어하고, 이에 따라 메인 장치(200)는 청소영역을 주행하게 된다. 구동 바퀴 구동부(271)는 구동 바퀴 어셈블리(30)에 포함되어 함께 모듈화를 구성할 수도 있다.
메인 브러쉬 구동부(272)는 메인 장치 제어부(230)의 제어에 따라 본체(2)의 흡입구(23) 측에 장착된 롤러(22)를 구동시킨다. 롤러(22)의 회전을 따라, 메인 브러쉬(21)가 회전하며 바닥면의 청소를 수행할 수 있다. 유저의 "청소 시작"명령이 메인 장치(200)에 전달되면, 메인 브러쉬 구동부(272)는 롤러(22)의 구동을 구동을 제어하게 된다.
메인 장치 제어부(230)는 메인 장치(200)의 전반적인 동작을 제어한다. 메인 장치 제어부(230)는 메인 장치(200)의 각 구성 즉, 메인 장치 통신부(220), 메인 장치 구동부(270), 메인 장치 저장부(240) 등을 제어할 수 있다.
구체적으로, 메인 장치 제어부(230)는 메인 장치 구동부(270)를 위한 제어 신호를 생성할 수 있다. 예를 들어, "맵 생성" 명령을 전달받는 경우, 메인 장치 제어부(230)는 구동 바퀴(33, 35)를 구동시키도록 구동 바퀴 구동부(271)에 대해 제어 신호를 생성할 수 있다. 구동 바퀴(33, 35)가 구동하는 동안, 메인 장치 제어부(230)는 메인 장치 센서부(260)로부터 센서값을 전송받고, 이에 기초하여 청소 영역에 대한 맵 영상을 생성할 수 있다. "청소 시작" 명령을 전달받는 경우, 메인 장치 제어부(230)는 메인 브러쉬 유닛(20)을 구동시키도록 메인 브러쉬 구동부(272)를 제어할 수 있다.
또한, 메인 장치 제어부(230)는 메인 장치 통신부(220)를 위한 제어 신호를 생성할 수 있다. "맵 생성" 명령을 전달받는 경우, 메인 장치 제어부(230)는 메인 장치 센서부(260)의 센서값에 기초하여 청소영역에 대한 맵 영상을 생성하고, 생성된 맵 영상을 원격 장치(100)에 전송하도록 메인 장치 통신부(220)를 제어할 수 있다.
또한, 메인 장치 제어부(230)는 청소를 진행하는 동안, 환경이 불일치하는지 여부를 판단할 수 있다. 환경이 불일치하는 경우, 메인 장치 제어부(230)는 환경이 불일치한다는 메시지를 원격 장치(100)에 전송하도록 메인 장치 통신부(220)를 제어할 수 있다. 유저는 환경이 불일치한다는 메시지를 확인하고 맵 영상의 갱신 여부를 결정할 수 있다. "맵 갱신" 명령을 전달받는 경우, 메인 장치 제어부(230)는 유저 명령에 기초하여 맵 영상을 갱신하게 된다. 환경이 불일치하는 경우, 메인 장치 제어부(230)는 맵 영상을 자동적으로 갱신할 수도 있다.
또한, 환경 불일치에 따른 오동작을 방지하기 위해, 환경이 불일치하는 경우, 메인 장치 제어부(230)는 메인 장치(100)가 청소를 중단하고 충전 복귀하도록 제어할 수도 있다.
또한, 메인 장치 제어부(230)는 청소를 진행하는 동안, 청소 불가한 영역이 존재하는지 여부를 판단할 수 있다. 청소 불가한 영역이 존재하는 경우, 메인 장치 제어부(230)는 청소 불가한 영역이 존재한다는 메시지를 전송하도록 메인 장치 통신부(220)를 제어할 수 있다. 유저는 청소 불가한 영역이 존재함을 확인하고 청소 영역의 이동 여부를 결정할 수 있다. "영역 이동" 명령을 전달받는 경우, 메인 장치 제어부(230)는 유저 명령에 기초하여 다음 순위 청소 영역으로 이동하도록 제어 신호를 생성한다. 청소 불가한 영역이 존재하는 경우, 메인 장치 제어부(230)는 다음 순위 청소 영역으로 이동하라는 제어 신호를 자동적으로 생성할 수도 있다. 이 경우에도, 메인 장치 제어부(230)는 메인 장치(100)가 청소를 중단하고 충전 복귀하도록 제어할 수도 있다.
또한, 메인 장치 제어부(230)는 메인 장치 저장부(240)를 위한 제어 신호를 생성할 수 있다. 메인 장치 제어부(230)는 생성된 맵을 저장하도록 제어신호를 생성할 수도 있다. 메인 장치 제어부(230)는 원격 장치(100)로부터 전송받은 맵 및 청소일정을 저장하도록 제어 신호를 생성할 수 있다.
또한, 메인 장치 제어부(230)는 집적 회로가 형성된 적어도 하나의 칩을 포함하는 각종 프로세서(processor)일 수 있다. 메인 장치 제어부(230)는 하나의 프로세서에 마련될 수도 있으나, 복수의 프로세서에 분리되어 마련되는 것도 가능하다.
또한, 메인 장치 제어부(230)는 메인 장치 센서부(260)로부터 센서값을 전달받아 장애물 정보가 포함된 맵을 생성하고, 생성된 맵의 구조를 분석하여 맵을 복수 개의 영역으로 분할할 수 있다. 이하, 분할된 영역을 "분할영역"이라 한다.
또한, 메인 장치 제어부(230)는 복수 개의 분할영역을 상이한 미리 설정된 도형으로 대체하여 복수 개의 미리 설정된 도형이 조합된 맵 영상을 생성할 수 있다. 또한, 메인 장치 제어부(230)는 메인 장치 저장부(240)에 저장된 평면도 데이터 중 분석된 맵의 구조에 대응되는 평면도를 찾고, 해당 평면도를 후처리하여 맵 영상을 생성할 수 있다. 또한, 메인 장치 제어부(230)는 생성된 맵 영상을 메인 장치 통신부(220) 또는 메인 장치 유저 인터페이스(280)로 전달할 수 있다. 맵 영상을 생성하는 구체적인 설명은 이하의 도 8a 내지 도 18을 참조하여 설명하도록 한다.
메인 장치 유저 인터페이스(280)는 메인 장치(200)의 현재 동작 상황 및 현재 위치한 구역의 맵 영상을 표시하고, 표시된 맵 영상에 메인 장치(200)의 현재 위치를 표시할 수 있다. 또한, 메인 장치 유저 인터페이스(280)는 유저의 동작 명령을 입력 받아 제어부에 전달할 수 있다. 메인 장치 유저 인터페이스(280)는 도 1 내지 도 2b를 참조하여 설명한 메인 장치 유저 인터페이스(280)와 동일할 수도 있고 상이할 수도 있다.
메인 장치 저장부(240)는 메인 장치(200)의 동작을 위한 데이터 및 프로그램을 일시 또는 비일시적으로 저장한다. 예를 들어, 메인 장치 저장부(240)는 메인 장치(200)의 상태값을 일시 또는 비일시적으로 저장할 수 있다. 메인 장치 저장부(240)는 청소 이력 데이터를 저장할 수 있으며, 청소 이력 데이터는 주기적 또는 비주기적으로 업데이트될 수 있다. 메인 장치 제어부(230)가 맵 영상을 생성하거나, 맵 영상을 갱신하는 경우, 메인 장치 저장부(240)는 생성된 맵 영상 또는 갱신된 맵 영상을 저장할 수 있다. 또한, 메인 장치 저장부(240)는 원격 장치(100)로부터 전송 받은 맵 영상을 저장할 수 있다.
메인 장치 저장부(240)는 맵 영상을 생성하거나, 맵 영상을 갱신하기 위한 프로그램을 저장할 수 있다. 메인 장치 저장부(240)는 청소 이력 데이터를 생성하거나 업데이트하기 위한 프로그램을 저장할 수 있다. 메인 장치 저장부(240)는 환경의 일치 여부를 판단하기 위한 프로그램, 청소 불가 영역인지 여부를 판단하기 위한 프로그램 등을 저장할 수도 있다.
이와 같은 메인 장치 저장부(240)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory: RAM), SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 다만, 이에 한정되는 것은 아니며, 동종 기술 분야에 알려져 있는 임의의 다른 형태로 구현될 수도 있다.
도 4a는 일 실시예에 따른 통신부의 제어 블록도이고, 도 4b는 다른 실시예에 따른 통신부의 제어 블록도이다.
도 4a를 참조하면, 통신부는 원격 장치(100)에 포함된 원격 장치 통신부(120) 및 메인 장치(200)에 포함된 메인 장치 통신부(220)를 포함할 수 있다.
원격 장치 통신부(120), 메인 장치 통신부(220) 및 네트워크는 서로 연결되어 데이터를 주고 받을 수 있다. 예를 들어, 메인 장치 통신부(220)는 메인 장치 제어부(230)에서 생성한 맵 영상 및 현재 메인 장치(200)의 위치를 원격 장치(100)에 전달하고, 원격 장치 통신부(120)는 유저가 입력한 동작 명령을 메인 장치(200)에 전달할 수 있다. 또한, 원격 장치 통신부(120)는 네트워크와 연결되어 다른 가전 기기(330)의 동작 상태를 수신 받고 이에 대한 제어 명령을 전달할 수 있다. 또한, 메인 장치 통신부(220)는 다른 원격 장치(320)와 연결되어 제어 명령을 전달 받을 수 있다.
또한, 도 4b를 참조하면, 메인 장치 통신부(220)는 네트워크와 연결되어 서버(310)에서 평면도 데이터를 다운로드 받을 수도 있다.
원격 장치 통신부(120)는 근거리 통신 모듈인 원격 장치 근거리 통신 모듈(121), 유선 통신 모듈인 원격 장치 유선 통신 모듈(122) 및 이동 통신 모듈인 원격 장치 이동 통신 모듈(123)을 포함할 수 있다. 또한, 메인 장치 통신부(220)는 근거리 통신 모듈인 메인 장치 근거리 통신 모듈(221), 유선 통신 모듈인 메인 장치 유선 통신 모듈(222) 및 이동 통신 모듈인 메인 장치 이동 통신 모듈(223)을 포함할 수 있다.
여기서, 근거리 통신 모듈은 소정 거리 이내의 근거리 통신을 위한 모듈일 수 있다. 근거리 통신 기술은 무선 랜(Wireless LAN), 와이파이(Wi-Fi), 블루투스, 지그비(zigbee), WFD(Wi-Fi Direct), UWB(ultra wideband), 적외선 통신(IrDA, infrared Data Association), BLE(Bluetooth Low Energy) 및 NFC(Near Field Communication) 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
또한, 유선 통신 모듈은 전기적 신호 또는 광 신호를 이용한 통신을 위한 모듈을 의미한다. 유선 통신 기술은 페어 케이블(pair cable), 동축 케이블, 광섬유 케이블, 이더넷(ethernet) 케이블 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
또한, 이동 통신 모듈은 이동 통신망 상에서 기지국, 외부의 단말, 서버(310) 중 적어도 하나와 무선 신호를 송수신할 수 있다. 무선 신호는 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.
이하, 도 5 내지 7b를 참조하여 원격 장치에 표시되는 메뉴 선택 화면의 일 실시예에 대해서 설명하도록 한다.
도 5는 원격 장치 유저 인터페이스의 홈 화면의 예시도이다.
원격 장치(100)의 전면에는 원격 장치 입력부(111) 및 원격 장치 디스플레이부(112)를 포함하는 원격 장치 유저 인터페이스(110)가 마련될 수 있다. 원격 장치 입력부(111)는 복수의 버튼이 마련될 수 있다. 이 때, 버튼은 하드웨어적인 버튼일 수도 있고, 소프트웨어적인 버튼일 수도 있다. 원격 장치 디스플레이부(112)는 원격 장치 디스플레이부(112)가 터치 스크린 패널로 구성되어, 유저의 입력을 감지할 수 있다.
원격 장치(100)에는 메인 장치(200)를 관리하기 위한 어플리케이션이 설치될 수 있다. 이 때, 메인 장치(200)를 관리하기 위한 어플리케이션을 간단히 '청소 로봇 어플리케이션'이라 칭하기로 한다. 원격 장치 디스플레이부(112)는 설치된 어플레이케이션을 홈 화면에 표시하고, 어플리케이션에 대한 유저 접근에 편의를 제공할 수 있다. 예를 들어, 원격 장치 디스플레이부(112)는 설치된 어플리케이션을 "청소 로봇" 이라는 아이콘(150)으로 표시할 수 있다.
유저는 "청소 로봇" 아이콘(150)을 터치하는 방식으로, 청소 로봇 어플리케이션을 실행시킬 수 있다. 청소 로봇 어플리케이션이 실행되면, 원격 장치 디스플레이부(112)는 도 6에 도시된 바와 같은 화면으로 화면 전환을 수행할 수 있다.
도 6은 원격 장치 유저 인터페이스의 메뉴 선택 화면의 예시도이다.
원격 장치 디스플레이부(112)의 상단에는 홈 화면으로 돌아갈 수 있도록 "홈 화면" 아이콘(190a)이 표시될 수 있다. 즉, "홈 화면" 아이콘(190a)의 선택 시, 도 5에 도시된 화면으로 돌아갈 수 있다. "홈 화면" 아이콘(190a) 하단에는, "맵 관리" 아이콘(160), "청소 관리" 아이콘(170), 및 "시작/종료" 아이콘(180)이 순차적으로 표시될 수 있다. 여기서, "맵 관리" 아이콘(160)은 메인 장치(200)가 주행하거나 메인 장치(200)가 청소할 영역 즉, 청소 영역의 맵 영상을 관리하기 위해 마련된 아이콘이다. "청소 관리" 아이콘(170)은 생성된 맵 영상에 기초하여 특정 분할영역을 지정하여 메인 장치(200)를 이동 또는 청소시키기 위해 마련된 아이콘이다. 또한, "시작/종료" 아이콘(180)은 청소시작 또는 청소종료의 유저 명령을 입력하기 위한 아이콘이다.
유저는 "맵 관리" 아이콘(160)을 선택하여, 원격 장치 디스플레이부(112)의 화면을 맵 관리를 위한 화면으로 전환시킬 수 있다.
도 7a는 원격 장치 유저 인터페이스의 맵 관리 화면의 예시도이고, 도 7b는 원격 장치 유저 인터페이스의 맵 관리 화면의 예시도이다.
도 7a를 참조하면, 일 실시예에 따른 원격 장치 디스플레이부(112)의 상단에는 "홈 화면" 아이콘(190a)과, 이전 화면으로 되돌아갈 수 있도록 "이전 화면" 아이콘(190b)이 표시될 수 있다. 즉, "이전 화면" 아이콘(190b)의 선택 시, 이전 화면으로 되돌아갈 수 있다. 또한, "홈 화면" 아이콘(190a) 및 "이전 화면" 아이콘(190b)의 하단에는 "맵 생성" 아이콘(161), "방/충전대 위치 지정" 아이콘(164)이 표시될 수 있다. 여기서, "맵 생성" 아이콘(161)은 맵의 구조를 분석하여 복수 개의 분할영역으로 분할한 뒤 분할된 복수 개의 분할영역을 도식화한 맵 영상을 생성 및 표시하는 아이콘이다. 또한, "방/충전대 위치" 아이콘(164)은 유저가 맵 영상 상에서 표시된 하나 이상의 분할영역을 방으로서 지정하거나 도킹 스테이션의 위치를 지정할 수 있도록 하는 화면을 표시하는 아이콘이다.
유저는 “맵 생성” 아이콘(161)을 선택하여 메인 장치(200)가 맵을 복수 개의 분할영역 또는 방 단위로 분할하여 도식화한 맵 영상이 표시되는 것을 인지할 수 있다. 또한, 유저는 “방/충전대 위치" 아이콘(164)을 선택하여, 맵 영상 상에서 분할된 각 분할영역을 예를 들어, 침실 1, 침실 2 등으로 지정할 수 있고, 도킹 스테이션이 위치된 지점을 지정할 수 있다. 또한, 이미 지정된 방을 다른 방으로 지정하거나 도킹 스테이션의 위치를 수정하는 것도 가능하다.
도 7b를 참조하면, 다른 실시예에 따른 원격 장치 디스플레이부(112)의 "홈 화면" 아이콘(190a) 및 "이전 화면" 아이콘(190b)의 하단에는 "맵 생성" 아이콘(161), "평면도 생성" 아이콘(162), 및 "평면도 데이터 다운로드" 아이콘(163)이 순차적으로 표시될 수 있다. 여기서, "평면도 생성" 아이콘(162)은 맵의 구조를 분석하여 상이한 평면도가 복수 개 집합된 평면도 데이터 중 분석한 맵의 구조에 대응되는 평면도를 찾은 뒤 해당 평면도를 이용하여 맵 영상을 생성 및 표시하는 아이콘이다. 또한, "평면도 데이터 다운로드" 아이콘(163)은 네트워크와 연결되어 외부 서버에서 주택의 평면도에 대한 데이터를 다운하기 위한 아이콘이다.
유저는 “평면도 생성” 아이콘(162)을 선택하여 메인 장치(200)가 맵의 구조를 분석하여 분석된 구조에 대응되는 평면도를 찾고 맵 영상이 표시되는 것을 인지할 수 있다. 또한, 유저는 “평면도 데이터 다운로드” 아이콘(163)을 선택하여 주택의 평면도에 대한 데이터를 다운 받을 수 있다.
"맵 생성" 아이콘(161)은 생략될 수도 있고, 이 경우, 평면도 생성 아이콘(162)의 선택에 의해 맵이 생성될 수 있다.
이하, 도 8a 및 도 8b를 참조하여 메인 장치 제어부의 구성의 다양한 실시예에 대해서 설명하도록 한다.
도 8a는 일 실시예에 따른 맵 영상을 생성하는 메인 장치의 제어 블록도이고, 도 8b는 다른 실시예에 따른 맵 영상을 생성하는 메인 장치의 제어 블록도이다.
도 8a를 참조하면, 메인 장치(200)는 현재 위치한 공간을 적어도 1회 청소 또는 이동하여 장애물 정보를 포함한 맵을 생성하고, 생성된 맵에 기초하여 맵의 구조를 분석할 수 있다. 또한, 메인 장치(200)는 분석한 맵의 구조에 기초하여 맵을 복수 개의 영역으로 분할하고, 분할된 복수 개의 분할영역을 도식화하여 맵 영상을 생성할 수 있다.
구체적으로, 메인 장치(200)는 메인 장치 센서부(260), 메인 장치 저장부(240), 메인 장치 제어부(230), 메인 장치 통신부(220) 및 메인 장치 유저 인터페이스(280)를 포함할 수 있다.
메인 장치 센서부(260)는 메인 장치(200)가 위치한 공간의 청소 또는 이동을 통해 파악된 공간의 장애물 정보를 감지하여 해당 공간의 장애물 존재 여부를 메인 장치 제어부(230)에 전달할 수 있다.
또한, 메인 장치 센서부(260)는 도 2a 내지 도 3에서 설명한 메인 장치 센서부(260)와 동일할 수도 있고, 상이할 수도 있다.
메인 장치 저장부(240)는 맵 영상을 생성하기 위한 데이터를 저장한다.
구체적으로, 메인 장치 저장부(240)는 맵 영상을 생성하기 위한 프로그램을 저장할 수도 있고, 이전에 획득된 장애물 정보가 포함된 맵을 저장할 수도 있다.
또한, 메인 장치 저장부(240)는 유저의 "맵 생성" 명령에 의해 생성된 맵 영상을 저장할 수도 있다.
또한, 메인 장치 저장부(240)는 도 3에서 설명한 메인 장치 저장부(240)와 동일할 수도 있고, 상이할 수도 있다.
메인 장치 제어부(230)는 메인 장치 센서부(260)에서 메인 장치(200)가 위치한 공간의 장애물 정보를 전달 받아 해당 공간의 맵을 생성하고, 생성된 맵의 구조를 분석할 수 있다. 또한, 메인 장치 제어부(230)는 분석된 맵의 구조에 기초하여 복수 개의 영역으로 분할한 뒤 각 분할영역을 맵의 구조에 대응하는 도형으로 대체하거나, 평면도로 대체하여 도식화된 맵 영상을 생성할 수 있다.
또한, 메인 장치 제어부(230)는 맵 생성부(231), 구조 분석부(232), 영역 분할부(233) 및 후처리부(234)를 포함할 수 있다.
맵 생성부(231)는 메인 장치 센서부(260)로부터 전달 받은 장애물 정보를 취합하여 현재 메인 장치(200)가 위치한 장애물 정보를 포함하는 맵을 생성한다.
구체적으로, 맵 생성부(231)는 현재 메인 장치(200)가 위치한 지점에서 메인 장치(200)의 이동 방향 및 이동 거리에 기초하여 초기 시작 지점에서 메인 장치(200)가 이동한 지점의 장애물 존부를 맵에 나타낼 수 있다. 메인 장치(200)는 맵의 가장 외측 부분의 장애물이 존재하는 격벽이 모두 연결될 때까지 이를 수행할 수 있다. 또한, 맵 생성부(231)가 생성하는 맵은 장애물이 존재하는지 또는 장애물이 존재하지 않는지 여부만을 해당 지점에 표시하는 이진화 데이터일 수 있다. 예를 들어, 맵 생성부(231)는 장애물이 존재하는 지점의 픽셀을 1로서 표시하고, 장애물이 존재하지 않는 지점의 픽셀을 0으로서 표시할 수 있다.
구조 분석부(232)는 맵 생성부(231)에서 생성된 맵의 구조를 분석하여 메인 장치(200)가 위치한 공간의 분할영역 및 그 분할영역의 배치에 관한 구조를 분석한다. 구조 분석부(232)에 대한 자세한 설명은 도 9와 관련하여 후술한다.
영역 분할부(233)는 구조 분석부(232)에서 분석한 맵의 구조에 기초하여 맵을 복수 개의 영역으로 분할한다(즉, 복수개의 분할영역을 판단). 영역 분할부(233)에 대한 자세한 설명 또한 도 9와 관련하여 후술한다.
후처리부(234)는 구조 분석부(232)에서 분석한 맵의 구조 및 영역 분할부(233)가 분할영역에 대한 정보에 기초하여 메인 장치(200)의 동작을 위해 생성한 이진화된 맵을 유저가 쉽게 이해 및 인지가 가능한 영상으로 대체한다.
구체적으로, 후처리부(234)는 영역 분할부(233)에서 분할영역의 크기 또는 형태에 대응하는 도형으로 복수 개의 분할영역을 대체하여 복수 개의 분할영역을 포함하는 영상이 복수 개의 도형이 조합된 영상으로 표현되도록 맵 영상을 생성할 수 있다. 여기서, 도형은 분할영역에 대응되도록 다양한 크기를 갖는 도형을 포함할 수 있고, 직사각형, 정사각형, 사다리꼴, 모따기가 존재하는 사각형, 타원 원 및 다각형 등의 형태를 갖는 도형을 포함할 수 있고, 직선 또는 곡선으로 이루어진 자유도형을 포함할 수도 있다.
또한, 후처리부(234)는 생성된 맵 영상을 원격 장치(100)에 전달하여 원격 장치 유저 인터페이스(110)에 표시하기 위해 메인 장치 통신부(220)에 전달할 수 있고, 메인 장치 유저 인터페이스(280)에 표시하기 위해서 메인 장치 유저 인터페이스(280)에 전달할 수도 있다.
또한, 메인 장치 제어부(230)는 중앙 처리 장치로 기능하고, 중앙 처리 장치의 종류는 마이크로 프로세서일 수 있으며, 마이크로 프로세서는 적어도 하나의 실리콘 칩에 산술 논리 연산기, 레지스터, 프로그램 카운터, 명령 디코더나 제어 회로 등이 마련되어 있는 처리 장치이다.
또한, 마이크로 프로세서는 이미지 또는 비디오의 그래픽 처리를 위한 그래픽 프로세서(Graphic Processing Unit, GPU)를 포함할 수 있다. 마이크로 프로세서는 코어(core)와 GPU를 포함하는 SoC(System On Chip) 형태로 구현될 수 있다. 마이크로 프로세서는 싱글 코어, 듀얼 코어, 트리플 코어, 쿼드 코어 및 그 배수의 코어를 포함할 수 있다.
또한, 메인 장치 제어부(230)는 마이크로 프로세서와 전기적으로 연결되는 별개의 회로 기판에 GPU, RAM 또는 ROM을 포함하는 그래픽 프로세싱 보드(graphic processing board)를 포함할 수 있다.
도 8b를 참조하면, 다른 실시예에 따른 메인 장치(200)는 평면도 데이터 중에서 분석한 맵의 구조에 대응되는 평면도를 찾고, 해당 평면도에 기초하여 맵 영상을 생성할 수도 있다.
이를 위하여, 메인 장치 저장부(240)는 맵 영상 생성시 분석한 맵의 구조에 대응되는 평면도를 제공한다. 즉, 메인 장치 저장부(240)는 복수 개의 주택 평면도가 포함된 평면도 데이터를 저장할 수 있다.
메인 장치 제어부(230)는 분석된 맵의 구조에 기초하여 복수 개의 영역으로 분할한 뒤 평면도로 대체하여 맵 영상을 생성할 수 있다.
이 경우에도, 메인 장치 제어부(230)는 맵 생성부(231), 구조 분석부(232), 영역 분할부(233) 및 후처리부(234)를 포함할 수 있다. 맵 생성부(231), 구조 분석부(232), 및 영역 분할부(233)에 대한 자세한 설명은 도 9와 관련하여 후술한다.
후처리부(234)는 구조 분석부(232)가 분석한 맵의 구조 및 영역 분할부(233)가 생성한 분할영역에 대한 정보에 기초해 복수 개의 상이한 주택의 평면도가 포함된 평면도 데이터에서 분석된 맵의 구조에 대응되는 평면도를 검색할 수 있다. 또한, 후처리부(234)는 검색된 평면도에 기초하여 평면도의 정방향, 90, 180, 270[deg] 회전한 방향 또는 상하 반전된 방향으로 평면도를 후처리하여 맵 영상을 생성할 수 있다. 예를 들어, 후처리부(234)는 평면도에서 메인 장치(200)가 진입하지 못하는 발코니 또는 현관과 같은 공간을 제거한 맵 영상을 생성할 수 있다.
또한, 후처리부(234)는 생성된 맵 영상과 맵 사이를 매칭시킬 수 있다. 구체적으로, 후처리부(234)는 생성된 맵에서의 특정 지점의 위치를 맵에서의 일 지점에 대응되도록 변환 좌표를 생성할 수 있다. 또한, 후처리부(234)는 맵 영상이 맵을 90, 180, 또는 270[deg] 회전 시킨 것에 대응되거나 맵을 상하 대칭 시킨 것에 대응되는 경우에 맵 영상에서의 특정 지점을 맵의 일 지점으로 변환시키는 변환 좌표를 생성할 수 있다.
또한, 후처리부(234)는 맵 영상의 특정 지점 중 맵에 대응되는 지점이 없는 경우 맵에 대응되는 지점 중 특정 지점에 가장 근접한 지점에 대응되는 맵의 지점으로 매칭시킬 수 있다.
또한, 후처리부(234)는 생성된 맵 영상을 원격 장치(100)에 전달하여 원격 장치 유저 인터페이스(110)에 표시하기 위해 메인 장치 통신부(220)에 전달할 수 있고, 메인 장치 유저 인터페이스(280)에 표시하기 위해서 메인 장치 유저 인터페이스(280)에 전달할 수도 있다.
이하, 도 9를 참조하여, 구조 분석부(232) 및 영역 분할부(233)의 세부 구성 및 그 기능에 대하여 설명한다.
도 9는 구조 분석부의 세부 구성을 기능에 따라 구분한 제어 블록도이다.
도 9를 참조하면, 구조 분석부(232)는 맵 처리부(232-1), 뼈대 생성부(232-2), 엣지 처리부(232-3), 및 영역분할점 검출부(232-4)를 포함할 수 있다.
맵 생성부(231)에서 생성한 맵은 메인 장치(200)가 이동을 하며 해당 공간에 대한 장애물 정보를 기록한 것으로 형태가 균일하지 않다. 따라서, 맵 처리부(232-1)는 맵의 외형을 균일하게 다듬기 위해서 영상 처리 기법을 이용하여 맵의 외형을 균일하게 다듬는다.
예를 들어, 맵 처리부(232-1)는 모폴로지(Morphology)를 이용하여 맵의 외측의 홈 또는 돌기를 제거할 수 있다. 여기서 모폴로지는 영상을 형태학적 관점에서 접근하여 영상 내 존재하는 특정 객체의 형태를 변형 시키는 영상 처리 기법이다. 모폴로지는 주로 이진 영상의 처리에서 잡음을 제거하거나 영상에서 객체의 모양을 기술하는 용도로 사용되고, 집합의 포함관계, 이동, 대칭, 여집합 및 차집합 등을 이용한다.
뼈대 생성부(232-2)는 맵 생성부(231)에서 생성된 맵의 형태를 균일화 시킨 뒤, 장애물이 존재하지 않는 복수 개의 공간의 중심을 추출하고 이를 연결하여 맵의 뼈대를 생성한다. 뼈대를 생성하는 영상 처리 기법은 예를 들어, 골격화(Skeletonizing) 기법이 이용될 수 있다.
엣지 처리부(232-3)는 생성된 뼈대가 포함하는 하나 이상의 가지, 즉 엣지(Edge) 중 불필요한 엣지를 제거한다. 예를 들어, 엣지 처리부(232-3)는 뼈대에서 엣지의 분기점이 되는 지점을 노드로서 검출하고, 각 노드로부터 이어지는 엣지의 각도 및 길이에 따라 불필요한 엣지를 판단하고 불필요한 엣지를 제거한다. 이에 대한 자세한 설명은 도 12와 관련하여 후술한다.
여기서, 엣지 처리부(232-3)는 노드를 뼈대의 중심이 되는 브랜치(branch) 노드와 브랜치 노드 외의 노드인 리프(leaf) 노드로 구별할 수 있다. 브랜치 노드는 복수 개 존재할 수 있다.
영역분할점 검출부(232-4)는 맵에 있어 청소 영역의 분리된 공간을 분석하여 영역 분할부(233)에서 분할할 공간을 지정한다.
구체적으로, 영역분할점검출부(233-4)는 브랜치 노드로부터 복수의 리프 노드들 중 어느 한 리프 노드 방향으로 엣지 상의 검출 지점을 이동시키며, 주변의 장애물이 없다고 표시된 픽셀들(예를 들어, 0으로써 표시된 픽셀들)을 탐색하고, 검출 지점이 좁은 구간을 통과하는 경우 해당 검출 지점에 영역분할점이 존재하는 것으로서 판단할 수 있다. 여기서, 영역분할점은 실생활에서 방문의 위치, 또는 가구 등에 의한 장애물 위치일 수 있다.
좁은 구간을 통과하는 것에 대해 판단하고 영역분할점을 검출하는 방법에 대한 자세한 설명은 후술한다.
영역분할점 검출부(233-4)는 영역분할점을 검출한 경우, 영역분할점으로부터 어느 한 리프 노드 방향에 존재하는 픽셀들을 어느 한 분할영역으로서 구분할 수 있다.
그러나, 영역분할점 검출부(233-4)가 브랜치 노드로부터 리프 노드 방향으로 검출 지점을 이동시키는 동안 좁은 구간을 검출하지 못한 경우, 영역분할점 검출부(233-4)는 브랜치 노드가 존재하는 분할영역과 리프 노드가 존재하는 분할영역을 동일한 분할영역으로 판단할 수 있다.
한편, 리프 노드는 복수 개 존재할 수 있고, 이에 따라 영역분할점도 복수 개 검출될 수 있다. 이 경우, 영역분할점 검출부(233-4)는 영역분할점의 개수에 대응하도록 분할영역을 구분한다.
영역 분할부(233)는 구조 분석부(232)에서 구분된 각 분할영역을 하나의 방으로 지정하고, 이를 전체 맵에 대해 수행하여 하나의 맵에 복수 개의 방을 지정할 수 있다. 이를 통해 후처리부(234)에서 하나의 방을 미리 설정된 도형으로 대체하도록 한다. 그리고, 복수 개의 방에 대응하는 도형의 조합은 후처리부(234)에 의해 영상으로 표현될 수 있다.
이하, 도 10 및 도 11을 참조하여 맵 영상을 생성하는 청소 로봇(1)의 제어방법에 대해 설명한다. 도 10은 일 실시예에 따른 맵 영상을 생성하는 청소 로봇의 제어방법에 대한 순서도이다. 도 10의 경우, 유저가 도 7a의 "맵 생성" 아이콘(161)을 선택한 경우, 수행되는 제어방법일 수 있다.
도 10과 관련하여 기술되는 청소 로봇(1)의 각 구성요소는 전술한 도 1 내지 도 9와 관련하여 기술된 구성요소와 동일한 바, 동일한 참조부호를 사용한다.
도 10을 참조하면, 일 실시예에 따른 메인 장치(200)의 맵 생성부(231)는 현재 위치한 공간의 청소를 수행하거나 이동을 수행하여 장애물 정보를 감지하고 이를 조합하여 맵을 생성(S1110)한다.
그리고, 메인 장치 제어부(230)는 생성된 맵의 형태를 다듬거나 구조를 분석하여 맵의 전체 뼈대를 생성한다(S1120). 이 경우, 메인 장치 제어부(230)는 맵의 외형을 균일하게 다듬고, 장애물이 존재하지 않는 복수 개의 공간의 중심을 추출하고 이를 연결하여 맵의 뼈대를 생성한다.
이어서, 메인 장치 제어부(230)는 생성된 뼈대가 포함하는 하나 이상의 엣지 중 불필요한 엣지를 제거하고, 각 엣지의 분기점이 되는 지점을 노드로서 검출한다(S1130). 이 경우, 메인 장치 제어부(230)는 검출된 노드를 뼈대의 중심이 되는 브랜치 노드와 브랜치 노드 외의 노드인 리프 노드를 구분할 수 있다.
이어서, 메인 장치 제어부(230)는 맵에서 영역분할점을 검출한다(S1140). 이 경우, 메인 장치 제어부(230)는 브랜치 노드로부터 리프 노드 방향으로 엣지 상의 검출 지점을 이동시키며 장애물이 없다고 표시된 픽셀들(예를 들어, 0으로써 표시된 픽셀들)을 탐색하고, 검출 지점이 좁은 구간을 통과하는 경우 해당 검출 지점에 영역분할점이 존재하는 것으로서 판단할 수 있다.
이어서, 메인 장치 제어부(230)는 검출된 영역분할점을 기초로 분할영역을 구성한다(S1150). 이 경우, 메인 장치 제어부(230)는 검출된 영역분할점으로부터 리프 노드 방향으로 존재하는 하나 이상의 픽셀들을 하나의 분할영역으로 구성한다. 그러나, 브랜치 노드로부터 리프 노드 방향으로 검출 지점을 이동시키는 동안 영역분할점이 검출되지 않은 경우, 메인 장치 제어부(230)는 브랜치 노드가 존재하는 분할영역과 리프 노드가 존재하는 분할영역을 동일한 하나의 분할영역으로 구성할 수 있다. 이와 같은 분할영역 구성에 의해, 맵은 하나 이상의 분할영역의 조합으로 구성될 수 있다.
이어서, 메인 장치 제어부(230)는 각 분할영역을 구성하는 픽셀들에 대해 외곽선 처리를 수행하고, 각 분할영역을 도형으로서 대체하고, 각 분할영역에서 이전에 검출된 영역분할점을 설정한다(S1160). 여기서, 메인 장치 제어부(230)는 브랜치 노드를 포함하는 분할영역을 거실 특성의 영역으로서 설정할 수 있다.
메인 장치 제어부(230)는 각 분할영역(예를 들어, 방 1)을 사각형으로 대체할 수 있고, 사각형이 포함하는 분할영역은 방 1을 구성하는 픽셀들을 모두 포함할 수 있다.
또한, 메인 장치 제어부(230)는 브랜치 노드가 포함된 거실 특성의 영역을 해당 영역의 외곽선에 대응하는 자유 도형으로 대체할 수 있고, 외곽선에 대응하는 자유 도형은 해당 분할영역을 구성하는 픽셀들을 모두 포함할 수 있다.
그리고, 메인 장치 제어부(230)는 검출된 영역분할점의 각도에 기초하여 영역분할점의 방향이 가로인지 또는 세로인지 여부를 판단할 수 있고, 이에 따라 맵 상에서 각 분할영역간의 진출입 경로를 설정할 수 있다. 영역분할점의 각도와 관련하여서는 도 12와 관련하여 후술한다.
그리고, 메인 장치 제어부(230)는 도형으로 대체된 하나 이상의 분할영역과 영역분할점으로 구성된 맵을 메인 장치(200)의 동작을 표현하기에 적절한 영상으로 후처리하여 맵 영상을 생성하고, 이를 유저 인터페이스에 전달하여 유저 인터페이스가 맵 영상을 표시(S1170)하도록 한다.
한편, 맵이 생성된 단계(S1110) 이후의 뼈대 생성 단계(S1120) 내지 사용자 인터페이스에 표시하는 단계(S1170)는 원격 장치(100)에서 수행될 수도 있다.이와 같이 다른 실시예에 따른 메인 장치(200)는 도형으로서 표현된 맵 영상을 생성함으로써 맵 영상을 유저에게 직관적으로 표시할 수 있다.한편, 다른 실시예에 따른 맵 영상은 대응하는 평면도로 대체되어 유저에게 표시될 수 있고, 도 11은 다른 실시예에 따른 맵 영상을 생성하는 청소 로봇의 제어방법에 대한 순서도이다. 도 11의 경우, 유저가 도 7b의 "맵 생성" 아이콘(161) 또는 "평면도 생성" 아이콘(162)을 선택한 경우, 수행되는 제어방법일 수 있다.
다른 실시예에 따른 메인 장치(200) 또한, 공간의 청소를 수행하거나 이동을 수행하여 장애물 정보를 감지하고 이를 조합하여 맵을 생성(S1210)하고, 맵의 뼈대를 생성하고(S1220), 생성된 뼈대가 포함하는 하나 이상의 엣지 중 불필요한 엣지를 제거하고, 각 엣지의 분기점이 되는 지점을 노드로서 검출하고(S1230), 맵에서 영역분할점을 검출하고(S1240), 검출된 영역분할점을 기초로 분할영역을 구성하고(S1250), 각 분할영역을 구성하는 픽셀들에 대해 외곽선 처리를 수행하고, 각 분할영역을 도형으로서 대체하고, 각 분할영역에서 이전에 검출된 영역분할점을 기초로 메인 장치(100)의 진출입 경로를 설정한다(S1260).
이와 같은 S1210단계 내지 S1260단계와 관련된 자세한 설명은 S1110단계 내지 S1160단계와 동일한 바, 중복된 설명을 생략한다.
한편, 다른 실시예에 따른 메인 장치 제어부(230)는 하나 이상의 분할영역이 설정된 맵과 주택의 복수 개의 평면도를 포함하는 평면도 데이터를 비교(S1270)하여 맵에 대응되는 평면도를 찾는다.
일 예로, 메인 장치 제어부(230)는 메인 장치 저장부(240)에 평면도 데이터가 저장되어 있는지 판단하고, 평면도 데이터가 저장되어 있지 않은 경우, 유저 인터페이스(280)를 통해 사용자에게 평면도 데이터가 저장되지 않았음을 알리는 메시지를 출력하고, 유저가 도 7b의 "평면도 데이터 다운로드" 아이콘(163)을 선택한 경우, 평면도 데이터를 외부 서버(310; 도 4b 참조)에서 다운로드할 수 있다. 그리고 다운로드된 평면도 데이터와 맵을 비교할 수 있다.
다른 예로, 메인 장치 제어부(230)는 메인 장치 저장부(240)에 평면도 데이터가 저장되어 있는지 판단하고, 평면도 데이터가 저장되어 있지 않은 경우, 자동으로 평면도 데이터를 외부 서버(310; 도 4b 참조)에서 다운로드할 수 있다. 그리고 다운로드된 평면도 데이터와 맵을 비교할 수 있다.
그리고, 메인 장치 제어부(230)는 맵에 대응되는 평면도에 기초하여 평면도를 메인 장치(200)의 동작을 표현하기에 적절한 영상으로 후처리(S1280)하여 맵 영상을 생성하고, 이를 유저 인터페이스에 전달하여 유저 인터페이스가 맵 영상을 표시(S1290)하도록 한다.
이와 같이 다른 실시예에 따른 메인 장치(200)는 미리 저장된 평면도 데이터와 맵을 비교하여 평면도로서 표현된 맵 영상을 생성함으로써 유저에게 맵 영상을 정교하게 표시할 수 있다.
도 12는 일 실시예에 따른 메인 장치가 맵 영상을 생성하는 과정에 대한 개념도이고, 도 13은 일 실시예에 따라 생성된 맵 영상에 대한 예시도이다.
메인 장치 제어부(230)는 메인 장치 센서부(260)에서 감지한 장애물 정보 및 지자기 센서에서 감지한 메인 장치(200)의 이동에 기초하여 각 픽셀의 좌표마다 장애물 정보가 표시된 맵(GM)을 생성한다. 이 경우, 맵은 장애물이 존재하는지 또는 장애물이 존재하지 않는지 여부만을 해당 픽셀에 표시하는 이진화 데이터로 표현될 수 있다. 또한, 메인 장치 제어부(230)는 영상 처리 기법을 이용하여 맵의 외형을 균일하게 다듬을 수 있다.
이어서, 메인 장치 제어부(230)는 장애물이 존재하지 않는 복수 개의 픽셀의 중심을 추출하고 이를 연결하여 맵의 뼈대(SM1)를 생성한다. 맵의 뼈대는 하나 이상의 엣지(E1, E2, E3)와 하나 이상의 노드(N1, N2, N3, N4)를 포함한다.
이어서, 메인 장치 제어부(230)는 생성된 뼈대가 포함하는 하나 이상의 엣지(E1, E2, E3) 중 불필요한 엣지(E2, E3)를 제거한다(SM2). 이 경우, 메인 장치 제어부(230)는 뼈대에서 엣지(E1, E2, E3)의 분기점이 되는 지점을 노드(N1, N2, N3, N4)로서 검출하고, 각 노드(N1, N2, N3, N4, N5, N6)로부터 이어지는 엣지(E1, E2, E3, E5, E6)의 각도 및 길이에 따라 불필요한 엣지(E2, E3)를 판단하고 불필요한 엣지(E2, E3)를 제거한다. 예를 들어, 메인 장치 제어부(230)는 길이가 미리 설정된 기준길이 미만이고, 다른 엣지와 미리 설정된 기준각 미만의 각도를 갖는 엣지를 불필요한 엣지로 판단할 수 있다.
또한, 메인 장치 제어부(230)는 노드(N1, N2, N3, N4, N5, N6)를 뼈대의 중심이 되는 브랜치 노드(N1)와 브랜치 노드(N1) 외의 노드인 리프 노드(N2, N3, N4, N5, N6)로 구별할 수 있다.
이어서, 메인 장치 제어부(230)는 브랜치 노드(N1)로부터 리프 노드(N2, N3, N4, N5, N6) 방향으로 엣지 상의 검출 지점을 이동시키며 검출 지점 주변의픽셀들이 좁은 구간을 지나 넓은 구간으로 이동하는지 판단한다.
구체적으로, 메인 장치 제어부(230)는 브랜치 노드(N1)로부터 리프 노드(N2, N3, N4, N5, N6) 방향으로 엣지를 따라 검출 지점을 이동시키며, 매 검출 지점에서의 픽셀 영역(예를 들어, 픽셀들의 폭)을 확인하고, 픽셀들의 폭이 미리 설정된 크기(예를 들어, 90cm로부터 제 1 기준값 내외 또는 90cm미만)를 만족하는 경우(Di1 내지 Di3), 좁은 구간을 통과하는 것으로서 판단한다. 그리고, 엣지를 따라 계속 검출 지점을 이동시키며 픽셀들의 폭이 미리 설정된 크기 이상인 경우(Di4 내지 Di6), 넓은 구간을 통과하는 것으로서 판단한다.
그리고, 메인 장치 제어부(230)는 검출 지점이 좁은 구간에서 넓은 구간으로 이동하는 경우, 좁은 구간에서의 검출 지점을 영역분할점(D1, D2, D3)으로서 검출할 수 있다. 그러나, 검출 지점이 어느 한 좁은 구간에서 다른 좁은 구간으로 이동하는 경우(즉, 더 이상 넓은 구간으로 이동하지 않는 경우), 어느 한 좁은 구간에 대응하는 검출 지점은 영역분할점으로서 검출되지 아니한다.
이 경우, 메인 장치 제어부(230)는 픽셀들의 폭을 측정함에 있어서, i) 매 검출 지점에서 이동 방향을 기준으로 수평 방향 및 수직 방향(Di1 내지 Di4)으로 폭을 측정할 수 있고, ii) 세밀한 폭의 측정을 위해 수평 방향 및 수직 방향 외에도 여러 각도를 갖는 임의의 방향으로도 폭을 측정할 수도 있다. 이어서, 메인 장치 제어부(230)는 검출된 각 영역분할점으로부터 리프 노드 방향에 존재하는 픽셀들을 각 분할영역으로서 구분하고, 나머지 픽셀들을 다른 분할영역으로서 구분한다. 즉, D1 영역분할점으로부터 N3리프 노드 방향에 존재하는 픽셀들을 R1 영역으로서 구분하고, D2 영역분할점으로부터 N2리프 노드 방향에 존재하는 픽셀들을 R2영역으로서 구분하고, D3 영역분할점]으로부터 N4리프 노드 방향에 존재하는 픽셀들을 R3 영역으로서 구분함으로써 각 분할영역을 구성한다. 여기서, 메인 장치 제어부(230)는 N1브랜치 노드를 포함하는 R4 영역을 또 하나의 분할영역으로" 설정할 수 있다.
이 경우, 메인 장치 제어부(230)는 각 분할영역의 크기를 측정하고, 제 2 기준값 미만의 크기를 갖는 분할영역의 경우, 어느 한 분할영역으로서의 구분을 취소하고, 영역분할점을 삭제한다.
메인 장치 제어부(230)는 각 분할영역의 크기를 측정하는 방법으로서, 맵의 격자 개수, 분할영역의 외곽선 총 길이, 분할영역의 반경, 분할영역을 포함하는 가장 작은 사각형의 넓이, 및 분할영역을 포함하는 가장 작은 사각형의 변의 길이 중 적어도 어느 하나를 측정할 수 있다.
도 12의 경우, R1 내지 R4가 제 2 기준값 이상의 크기를 갖고, 분할영역으로 구분되는 것으로서 설명한다.
한편, 전술한 실시예는 i) 맵이 포함하는 픽셀 정보에 기초하여 영역분할점을 검출하고, 검출된 영역분할점에 기초하여 분할영역을 구분하는 것으로서 기술되었으나, 메인 장치 제어부(230)는 ii) 카메라 모듈로서 구현된 장애물 감지 센서(261) 또는 이미지 센서(261)의 촬영 영상에 기초하여 방문과 같은 영역분할점을 감지하거나, iii) 영역분할점에 부착된 인식표를 NFC(near field communication]), RFID(radio frequency identification) 등의 무선 통신 모듈을 통해 감지하거나, 전술한 i), ii), iii) 중 두 가지 이상을 조합한 방법으로 감지된 영역분할점에 기초하여 분할영역을 구분하는 것도 가능하다.
이어서, 메인 장치 제어부(230)는 각 분할영역 (R1, R2, R3, R4)을 구성하는 픽셀들에 대해 외곽선 처리를 수행하고, 각 분할영역을 도형으로서 대체하고, 각 분할영역 (R1, R2, R3, R4)에서 이전에 검출된 영역분할점 (D1, D2, D3)을 표시한다(DM). 이 경우, 각 분할영역 (R1, R2, R3, R4)은 각 분할영역(R1, R2, R3, R4)의 크기에 비례하는 도형으로서 대체되거나, 분할영역 (R1, R2, R3, R4)의 크기에 관계 없이 동일한 크기의 도형으로 대체될 수도 있다.
이어서, 메인 장치 제어부(230)는 도형을 조합하여 맵 영상(FM)을 생성한다. 이 경우, 후처리된 맵 영상은 직사각형으로 표현된 분할영역과 자유 도형으로 표현된 분할영역의 조합으로 이루어진 것으로 도시되었으나, 반드시 이에 한정되지 아니하고, 모따기가 존재하는 사각형, 원형 또는 자유 도형으로 표현된 분할영역의 조합으로 이루어질 수도 있는 바, 도 12에 도시된 바에 한정되지 아니한다.
예를 들어, 메인 장치 제어부(230)에 의해 생성된 맵 영상(FM)은 도 13을 참조하면 중앙의 분할영역을 기준으로 좌측 하단에 분할영역 하나와 우측 상단에 분할영역 하나와 우측 하단에 분할영역 하나가 위치한 배치를 가질 수 있다.
이 경우, 메인 장치 제어부(230)는 중앙 분할영역을 기준으로 좌측 하단의 분할영역을 제 1 영역(Z1)으로, 우측 상단의 분할영역을 제 2 영역(Z2)으로, 우측 하단의 분할영역을 제 3 영역(Z3)으로, 중앙의 분할영역을 제 4 영역(Z4)으로 지정 및 분할할 수 있다.
이와 같이 생성된 맵 영상(FM)은 유저에게 원격 장치 디스플레이부(112)를 통해 표시될 수 있다. 또한, 메인 장치 제어부(230)는 맵 영상(FM)에서의 각 위치와 맵에서의 위치를 매칭하여 유저의 청소 명령을 수행하도록 한다.한편, 다른 실시예에 따른 메인 장치 제어부(230)는 더 나아가 도형으로 조합된 맵 영상(FM)과 평면도 데이터를 매칭시킴으로써 평면도로 표현된 맵 영상을 생성할 수도 있다.
도 14는 맵에 대응되는 평면도를 평면도 데이터 상에서 찾는 과정을 설명하기 위한 개념도이고, 도 15는 평면도 데이터 중 3개의 분할영역을 포함하는 평면도이며, 도 16은 평면도에 기초하여 생성된 맵 영상에 대한 도면이다.
도 14에 도시된 바와 같이, 메인 장치 제어부(230)는 분석된 맵의 구조, 맵의 분할영역 또는 미리 설정된 도형이 조합된 맵 영상(FM)에 대응되는 평면도를 검색한다.
구체적으로, 메인 장치 제어부(230)는 평면도 데이터 중 중앙에 위치한 거실 특성에 가까운 분할영역을 기준으로 좌측 하단의 제 1 영역(Z1), 우측 상단의 제 2 영역(Z2), 우측 하단의 제 3 영역(Z3) 및 중앙의 제 4 영역(Z4)에 대응되는 배치를 갖는 평면도를 검색한다.
예를 들어, 평면도 데이터는 좌측에 거실, 우측에 방 3개가 위치하는 제 1 평면도(PFD1), 중앙에 거실과 좌측 하단에 방 1개 우측 상단 및 하단에 방 2개가 위치하는 제 2 평면도(PFD2) 및 중앙에 거실과 좌측에 방 2개, 우측에 방 2개가 위치하는 제 3 평면도(PFD3)를 포함한다고 가정한다. 메인 장치 제어부(230)는 제 1 평면도(PFD1)는 방의 개수는 3개이지만 방의 배치가 맵에 대응되지 않음을 판단하고, 제 3 평면도(PFD3)는 방의 개수가 4개로 맵에 대응되지 않음을 판단하고, 제 2 평면도(PFD2)의 방의 개수와 배치가 맵과 대응됨을 판단할 수 있다. 따라서, 메인 장치 제어부(230)는 평면도 데이터 중 맵에 대응되는 평면도가 제 2 평면도(PFD2)임을 결정할 수 있다.
생성된 맵에 대응되는 제 2 평면도(PFD2)는 도 15에 도시된 바와 같이 3개의 방과 1개의 거실을 갖고, 중앙에 거실이 위치하고 좌측 하단에 침실 1, 우측 하단에 침실 2, 우측 상단에 침실 3이 위치하는 배치임을 알 수 있다.
이후, 메인 장치 제어부(230)는 평면도 데이터 중 맵에 대응되는 평면도를 제 2 평면도(PFD2)로 결정하고, 결정된 제 2 평면도(PFD2)에 기초하여 유저가 쉽게 주택의 공간을 인지할 수 있는 맵 영상(FPF)을 생성한다.
도 16을 참조하면, 메인 장치 제어부(230)는 제 2 평면도에서 메인 장치(200)가 이동 및 청소를 수행하지 못하는 2개의 화장실, 1개의 현관 및 2개의 발코니를 제거하여 정방향으로 맵을 대체하여 평면도에 기초한 맵 영상(FPF)을 생성할 수 있다.
이와 같이 생성된 맵 영상(FPF)은 유저에게 원격 장치 디스플레이부(112)를 통해 표시될 수 있다. 또한, 메인 장치 제어부(230)는 맵 영상(FPF)에서의 각 위치와 맵에서의 위치를 매칭하여 유저의 청소 명령을 수행하도록 한다.
이하, 도 17 내지 도 21을 참조하여 생성된 맵 영상을 표시하는 실시예에 대해서 설명하도록 한다.
도 17은 일 실시예에 따른 청소 로봇의 원격 장치 유저 인터페이스가 표시하는 맵 영상의 예시도이고, 도 18은 다른 실시예에 따른 청소 로봇의 원격 장치 유저 인터페이스가 표시하는 맵 영상의 예시도이다.
일 실시예에 따른 메인 장치 제어부(230)가 생성한 맵 영상은 메인 장치 통신부(220) 및 원격 장치 통신부(120)를 통해 원격 장치(100)에 전달되고, 전달된 맵 영상은 원격 장치 유저 인터페이스(110)에 표시된다.
구체적으로, 메인 장치 제어부(230)가 복수 개의 미리 설정된 도형 4개를 조합하여 1개의 거실과 3개의 방을 표현한 맵 영상을 생성한 경우에는 도 17과 같이 거실인 제 4 영역(Z4)이 중앙에 위치하고, 제 4 영역(Z4)을 중심으로 좌우에 제 1 영역(Z1)의 방이 좌측에 위치하고, 제 2 영역(Z2) 및 제 3 영역(Z3)이 우측에 위치하도록 맵 영상이 생성될 수 있다. 또한, 제 1 영역(Z1) 내지 제 3 영역(Z3)은 각 분할영역의 크기에 대응되는 직사각형이 위치한 맵 영상(161)이 생성되고, 생성된 맵 영상(161)이 원격 장치 유저 인터페이스(110)에 표시될 수 있다.
또한, 다른 실시예에 따른 메인 장치 제어부(230)는 도 18과 같이 맵 영상에 대응되는 평면도(162)를 검색하고, 검색된 평면도(162)가 원격 장치 유저 인터페이스(110)에 표시되도록 할 수 있다.
이하, 도 19a 내지 도 19c를 참조하여 맵 영상에 기초하여 청소 로봇에 명령을 입력하는 과정에 대해서 설명하도록 한다.
청소 로봇(1)은 유저 인터페이스에 생성된 맵 영상을 표시할 수 있다. 그러나, 이외에도 표시된 맵 영상 상에 현재 메인 장치(200)가 위치한 지점을 표시할 수 있고, 유저가 원하는 분할영역을 지정하여 메인 장치(200)를 지정한 분할영역으로 이동시키거나 청소를 수행시킬 수 있다.
도 19a 내지 도 19c는 일 실시예에 따른 청소 로봇의 원격 장치 유저 인터페이스가 표시하는 맵 영상에 기초하여 유저가 청소 로봇의 청소 동작을 명령하는 과정을 설명하기 위한 개념도이다. 도 19a 내지 도 19c에 개시되는 청소 로봇(1)의 청소 동작 및 화면은 유저가 도 6에 도시된 "청소 관리" 아이콘(170)을 선택한 경우, 수행 및 표시되는 것일 수 있고, 일 실시예에 따른 맵 영상이 생성된 이후, 자동으로 수행 및 표시되는 것일 수도 있다.
도 19a에 도시된 바와 같이, 원격 장치 유저 인터페이스(110)는 미리 설정된 도형을 조합하여 생성한 맵 영상에 현재 메인 장치(200)가 거실인 제 4 영역(Z4)의 하단 중앙에 위치하고 있다는 것을 표시(171a)할 수 있다.
또한, 도 19b에 도시된 바와 같이, 유저(U)는 청소를 수행시키거나 메인 장치(200)를 이동시키길 원하는 제 2 영역(Z2)을 손가락으로 특정하여 지정할 수 있다. 유저(U)가 제 2 영역(Z2)을 지정한 경우 원격 장치 유저 인터페이스(110)는 지정 영역(410)인 제 2 영역(Z2)을 다른 분할영역과 구별되도록 상이한 색으로 표시(171b)할 수 있다.
도 19b에서는 어느 한 영역(Z2)만을 손가락으로 특정하는 것으로서 개시되었으나, 유저(U)는 복수개의 분할 영역 및 복수개의 분할 영역의 청소 순서를 특정하여 지정할 수도 있다. 이 경우, 메인 장치(200)는 지정된 청소 순서에 따라 분할 영역을 이동하며 청소를 수행할 수 있다.
또한, 원격 장치 유저 인터페이스(110)는 청소의 수행 정도(예를 들어, 청소의 완료 정도)를 색상, 도형, 수치 등 이미지로 표현할 수 있다. 예를 들어, 원격 장치 유저 인터페이스(110)는 메인 장치(200)가 이미 이동한 경로를 표시하거나, 이미 청소가 된 분할영역을 청소가 되지 않은 영역과 다른 색상으로 표시하거나, 텍스트로 표시할 수 있다.
또한, 도 19c에 도시된 바와 같이, 유저가 제 2 영역(Z2)을 지정 영역(410)으로 설정하여 제 2 영역(Z2)이 다른 분할영역에 비해 다른 색으로 표시된 후, 원격 장치 제어부(130) 또는 메인 장치 제어부(230)는 현재 메인 장치(200)의 위치에서 지정 영역(410)까지 이동할 경로를 설정하고, 이를 원격 장치 유저 인터페이스(110)에 표시한다.
예를 들어, 원격 장치 제어부(130) 또는 메인 장치 제어부(230)는 현재 메인 장치(200)가 위치한 지점에서 지정 영역(410)으로 메인 장치(200)가 이동하기 위해서 제 4 영역(Z4) 상에서 상부로 이동한 다음 우측으로 이동하도록 경로를 설정할 수 있다. 이후, 원격 장치 유저 인터페이스(110)는 메인 장치(200)의 위치를 실시간으로 표시(171c)할 수 있다.
메인 장치(200)가 이동 경로를 따라 실시간으로 이동하는 경우, 메인 장치(200)가 이미 지나간 경로 또한 실시간으로 제거될 수 있고, 메인 장치(200)가 이동을 완료한 경우, 메인 장치(200)가 이미 지나간 경로가 제거될 수도 있다.
또한, 유저(U)가 복수개의 분할 영역 및 복수개의 분할 영역의 청소 순서를 특정하여 지정한 경우, 원격 장치 제어부(130) 또는 메인 장치 제어부(230)는 지정된 청소 순서에 따라 이동 경로를 설정하고, 원격 장치 유저 인터페이스(110)는 설정된 이동 경로를 표시할 수 있다.
또한, 유저(U)가 복수개의 분할 영역만을 특정하여 지정한 경우, 원격 장치 제어부(130) 또는 메인 장치 제어부(230)는 자동으로 이동 경로를 설정하고, 원격 장치 유저 인터페이스(110)는 설정된 이동 경로를 표시할 수 있다. 예를 들어, 원격 장치 제어부(130) 또는 메인 장치 제어부(230)는 메인 장치(200)와 인접한 분할영역 순으로 분할영역의 우선순위를 설정하고, 우선순위에 따라 이동 경로를 설정할 수 있다.
도 20a 내지 도 20c는 다른 실시예에 따른 청소 로봇의 원격 장치 유저 인터페이스가 표시하는 평면도에 기초하여 사용자가 청소 로봇의 청소 동작을 명령하는 과정을 설명하기 위한 개념도이다. 도 20a 내지 도 20c에 개시되는 청소 로봇(1)의 청소 동작 및 화면은 유저가 도 6에 도시된 "청소 관리" 아이콘(170)을 선택한 경우, 수행 및 표시되는 것일 수 있고, 다른 실시예에 따라 맵 영상에 대응하는 평면도가 검색된 이후, 자동으로 수행 및 표시되는 것일 수도 있다.
도 20a에 도시된 바와 같이, 원격 장치 유저 인터페이스(110)는 맵의 구조에 대응하는 평면도(또는 후처리된 평면도)에 현재 메인 장치(200)가 거실인 제 4 영역(Z4)의 하단 하단에 위치하고 있다는 것을 표현(172a)할 수 있다.
또한, 도 20b에 도시된 바와 같이, 유저(U)는 청소를 수행시키거나 메인 장치(200)를 이동시키길 원하는 제 2 영역(Z2)을 손가락으로 특정하여 지정할 수 있다. 유저(U)가 제 2 영역(Z2)을 지정한 경우 원격 장치 유저 인터페이스(110)는 지정 영역(410)인 제 2 영역(Z2)을 다른 분할영역과 구별되도록 상이한 색으로 표시(172b)할 수 있다.
도 20b에서는 어느 한 영역(Z2)만을 손가락으로 특정하는 것으로서 개시되었으나, 유저(U)는 복수개의 분할 영역 및 복수개의 분할 영역의 청소 순서를 특정하여 지정할 수도 있다. 이 경우, 메인 장치(200)는 지정된 청소 순서에 따라 분할 영역을 이동하며 청소를 수행할 수 있다.
또한, 원격 장치 유저 인터페이스(110)는 청소의 수행 정도(예를 들어, 청소의 완료 정도)를 색상, 도형, 수치 등 이미지로 표현할 수 있다. 예를 들어, 원격 장치 유저 인터페이스(110)는 메인 장치(200)가 이미 이동한 경로를 표시하거나, 이미 청소가 된 분할영역을 청소가 되지 않은 영역과 다른 색상으로 표시하거나, 텍스트로 표시할 수 있다.
또한, 도 20c에 도시된 바와 같이, 유저가 제 2 영역(Z2)을 지정 영역(410)으로 설정하여 제 2 영역(Z2)이 다른 분할영역에 비해 다른 색으로 표시된 후, 원격 장치 제어부(130) 또는 메인 장치 제어부(230)는 현재 메인 장치(200)의 위치에서 지정 영역(410)까지 이동할 경로를 설정하고, 이를 원격 장치 유저 인터페이스(110)에 표시한다.
예를 들어, 원격 장치 제어부(130) 또는 메인 장치 제어부(230)는 현재 메인 장치(200)가 위치한 지점에서 지정 영역(410)으로 메인 장치(200)가 이동하기 위해서 제 4 영역(Z4) 상에서 좌측으로 이동하고, 상부로 이동한 다음 좌측으로 이동하여 상부로 이동하도록 경로를 설정할 수 있다. 이후, 원격 장치 유저 인터페이스(110)는 메인 장치(200)의 위치를 실시간으로 표시(172c)할 수 있다.
메인 장치(200)가 이동 경로를 따라 실시간으로 이동하는 경우, 메인 장치(200)가 이미 지나간 경로 또한 실시간으로 제거될 수 있고, 메인 장치(200)가 이동을 완료한 경우, 메인 장치(200)가 이미 지나간 경로가 제거될 수도 있다.
또한, 유저(U)가 복수개의 분할 영역 및 복수개의 분할 영역의 청소 순서를 특정하여 지정한 경우, 원격 장치 제어부(130) 또는 메인 장치 제어부(230)는 지정된 청소 순서에 따라 이동 경로를 설정하고, 원격 장치 유저 인터페이스(110)는 설정된 이동 경로를 표시할 수 있다.
또한, 유저(U)가 복수개의 분할 영역만을 특정하여 지정한 경우, 원격 장치 제어부(130) 또는 메인 장치 제어부(230)는 자동으로 이동 경로를 설정하고, 원격 장치 유저 인터페이스(110)는 설정된 이동 경로를 표시할 수 있다. 예를 들어, 원격 장치 제어부(130) 또는 메인 장치 제어부(230)는 메인 장치(200)와 인접한 분할영역 순으로 분할영역의 우선순위를 설정하고, 우선순위에 따라 이동 경로를 설정할 수 있다.
도 21은 다른 실시예에 따른 청소 로봇의 원격 장치 유저 인터페이스가 표시하는 다른 화면이다.
도 21을 참조하면, 원격 장치 유저 인터페이스(110)는 더 나아가 생성된 맵 영상 또는 평면도에 도킹 스테이션의 위치를 표시(DS)할 수도 있다. 또한, 도 7a와 관련하여 전술한 “방/충전대 위치" 아이콘이 선택된 경우, 원격 장치 유저 인터페이스(110)는 맵 영상 또는 평면도 상에서 각 분할영역(Z1, Z2, Z3, Z4)을 예를 들어, 침실 1, 침실 2 등으로 지정할 수 있는 화면을 표시할 수 있고, 도킹 스테이션이 위치된 지점(DS)을 지정할 수 있는 화면을 표시할 수도 있다.
상기의 설명은 기술적 사상을 예시적으로 설명한 것에 불과한 것으로서, 해당 기술 분야에서 통상의 지식을 가진 자라면 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 상기에 개시된 실시예 및 첨부된 도면들은 기술적 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 기술적 사상의 범위가 한정되는 것은 아니다. 그 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술적 사상은 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (29)

  1. 장애물 정보를 감지하는 센서부; 및
    상기 센서부에서 감지한 값에 기초하여 맵을 생성하고, 생성된 맵에서 영역분할점을 검출함으로써 상기 맵의 구조를 분석하고, 분석 결과에 기초하여 맵 영상을 생성하는 제어부를 포함하는 청소 로봇.
  2. 제1항에 있어서,
    상기 제어부는 상기 맵의 구조를 분석하여 상기 맵이 포함하는 복수개의 분할영역을 판단하고, 각 분할영역을 도형으로 대체하고, 상기 복수 개의 분할영역에 각각 대응하는 복수 개의 도형을 조합하여 맵 영상을 생성하는 청소 로봇.
  3. 제 1 항에 있어서,
    상기 제어부는 적어도 하나 이상의 픽셀이 형성하는 구간의 너비에 기초하여 영역분할점을 검출하는 청소 로봇.
  4. 제 1 항에 있어서,
    상기 제어부는 상기 맵의 뼈대 중 브랜치노드로부터 뼈대 엣지를 따라 리프노드로 검출 지점을 이동시키는 동안, 장애물이 없는 것으로 표시된 하나 이상의 픽셀이 형성하는 구간의 너비에 기초하여 영역분할점을 검출하는 청소 로봇.
  5. 제 4 항에 있어서,
    상기 제어부는 상기 검출 지점을 이동시키는 동안, 상기 장애물이 없다고 표시된 하나 이상의 픽셀이 기준값 미만의 너비를 갖는 구간을 형성하는 경우, 상기 검출 지점을 영역분할점으로서 검출하는 청소 로봇.
  6. 제 4 항에 있어서,
    상기 제어부는 상기 검출 지점을 이동시키는 동안, 상기 장애물이 없다고 표시된 하나 이상의 픽셀이 기준값 미만의 너비를 갖는 구간에서 기준값 이상의 너비를 갖는 구간을 통과하는 경우, 상기 기준값 미만의 너비를 갖는 구간에 대응하는 검출 지점을 영역분할점으로서 검출하는 청소 로봇.
  7. 제 4 항에 있어서,
    상기 제어부는 상기 검출 지점의 이동 방향을 기준으로 상기 하나 이상의 픽셀의 수평 방향, 수직 방향, 및 임의의 각도 방향 중 적어도 어느 한 방향의 폭을 상기 구간의 너비로서 판단하는 청소 로봇.
  8. 제 4 항에 있어서,
    상기 제어부는 상기 검출 지점을 기준으로 상기 하나 이상의 픽셀의 수평 방향, 수직 방향, 및 임의의 각도 방향 중 적어도 어느 한 방향의 폭을 상기 구간의 너비로서 판단하는 청소 로봇.
  9. 제 4 항에 있어서,
    상기 제어부는 상기 맵의 뼈대를 생성하고, 상기 뼈대의 중심으로부터 바깥으로 상기 검출 지점을 이동시키는 청소 로봇.
  10. 제 1 항에 있어서,
    상기 제어부는,
    상기 맵의 뼈대를 생성하는 뼈대 생성부, 상기 뼈대가 포함하는 하나 이상의 엣지 중 불필요한 엣지를 제거하고, 상기 뼈대의 중심 노드와 다른 노드를 구분하는 엣지 처리부, 및 상기 엣지 처리부의 처리 결과 및 상기 센서부에서 감지한 값에 기초하여 상기 중심 노드와 상기 다른 노드 사이에 형성된 영역분할점을 검출하는 영역분할점 검출부를 포함하는 구조 분석부를 포함하는 청소 로봇.
  11. 제 10 항에 있어서,
    상기 영역분할점 검출부는 상기 영역분할점이 검출된 경우, 상기 영역분할점으로부터 상기 다른 노드 방향으로 형성된 하나 이상의 픽셀을 하나의 분할영역으로서 구분하는 청소 로봇.
  12. 제 10 항에 있어서,
    상기 맵의 외형을 균일하게 다듬는 맵 처리부를 더 포함하는 청소 로봇.
  13. 제 10 항에 있어서,
    상기 제어부는 상기 구조 분석부가 분석한 맵의 구조에 기초하여 상기 맵이 포함하는 복수개의 분할영역을 판단하는 영역 분할부를 더 포함하는 청소 로봇.
  14. 제 13 항에 있어서,
    상기 제어부는 상기 분할영역에 대한 정보에 기초하여 각 분할영역을 미리 설정된 도형으로 대체하는 후 처리부를 더 포함하는 청소 로봇.
  15. 제 14 항에 있어서,
    상기 미리 설정된 도형은 사각형, 타원, 원, 및 다각형 중 적어도 어느 하나의 형태를 갖는 청소 로봇.
  16. 제 14 항에 있어서,
    상기 맵 영상을 원격 장치에 전달하는 통신부를 더 포함하는 청소 로봇.
  17. 제 1 항에 있어서,
    상기 제어부는 생성된 맵 영상에 대응하는 평면도를 검색하고, 대응하는 평면도에 기초하여 다른 맵 영상을 생성하는 청소 로봇.
  18. 제 17 항에 있어서,
    복수 개의 평면도가 포함된 평면도 데이터가 저장된 저장부를 더 포함하되,
    상기 제어부는 상기 복수 개의 평면도 중 상기 생성된 맵 영상에 대응하는 평면도를 검색하는 청소 로봇.
  19. 제 17 항에 있어서,
    상기 제어부는 상기 대응하는 평면도를 후처리하여 상기 다른 맵 영상을 생성하는 청소 로봇.
  20. 제 19 항에 있어서,
    상기 제어부는 상기 후처리로서 상기 대응하는 평면도의 방향을 회전시키고, 상기 맵 영상의 불필요한 공간을 제거하는 청소 로봇.
  21. 제 1 항에 있어서,
    상기 제어부는 상기 센서부에서 감지한 값에 기초하여 이진화 데이터로 맵을 생성하는 청소 로봇.
  22. 적어도 하나의 프로그램이 저장되는 저장부, 및 상기 적어도 하나의 프로그램을 실행함으로써 맵 영상을 표시하는 제어부를 포함하되,
    상기 적어도 하나의 프로그램은,
    사용자로부터 맵 생성 명령을 입력 받는 단계;
    메인 장치로부터 맵 영상을 수신하는 단계; 및
    상기 맵 영상을 표시하는 단계를 실행하는 명령어들을 포함하고,
    상기 맵 영상은 상기 메인 장치의 장애물 감지 결과에 기초하여 생성된 영역분할점과 분할영역에 대한 정보를 포함하는 청소 로봇.
  23. 제 22 항에 있어서,
    상기 맵 영상은 미리 설정된 도형의 조합으로 구성되는 청소 로봇.
  24. 제 22 항에 있어서,
    상기 영역분할점은 세로 방향 또는 가로 방향으로 표시되는 청소 로봇.
  25. 제 22 항에 있어서,
    상기 맵 영상을 표시하는 단계는 메인 장치의 위치를 표시하는 단계를 포함하는 청소 로봇.
  26. 제22항에 있어서,
    상기 적어도 하나의 프로그램은 사용자로부터 상기 맵 영상 상에서 표시되는 복수의 분할영역중 임의의 분할영역을 선택 받고, 상기 메인 장치를 상기 선택된 분할영역으로 이동시키는 단계를 실행하는 명령어를 더 포함하는 청소 로봇.
  27. 장애물 정보를 감지하는 단계;
    감지된 장애물 정보에 기초하여 맵을 생성하는 단계;
    상기 맵에서 영역분할점과 분할영역을 검출함으로써 상기 맵의 구조를 분석하는 단계; 및
    상기 맵의 구조에 기초하여 맵 영상을 생성하는 단계를 포함하는 청소 로봇의 제어방법.
  28. 제 27 항에 있어서,
    상기 분석하는 단계는 상기 맵의 구조를 분석하여 상기 맵이 포함하는 복수개의 분할영역을 판단하는 단계를 포함하고,
    상기 맵 영상을 생성하는 단계는 각 분할영역을 도형으로 대체하고, 상기 복수 개의 분할영역에 각각 대응하는 복수 개의 도형을 조합하여 맵 영상을 생성하는 단계를 포함하는 청소 로봇의 제어방법.
  29. 제 27 항에 있어서,
    상기 분석하는 단계는 적어도 하나 이상의 픽셀이 형성하는 구간의 너비에 기초하여 영역분할점을 검출하는 단계를 포함하는 청소 로봇의 제어방법.
PCT/KR2015/010132 2014-09-24 2015-09-24 청소 로봇 및 청소 로봇의 제어 방법 WO2016048077A1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
AU2015322263A AU2015322263B2 (en) 2014-09-24 2015-09-24 Cleaning robot and method for controlling cleaning robot
EP15843361.5A EP3199083B1 (en) 2014-09-24 2015-09-24 Cleaning robot and method for controlling cleaning robot
US15/514,466 US10660496B2 (en) 2014-09-24 2015-09-24 Cleaning robot and method of controlling the cleaning robot
CN201580062584.8A CN107000207B (zh) 2014-09-24 2015-09-24 清洁机器人和控制清洁机器人的方法
IL251298A IL251298B (en) 2014-09-24 2017-03-21 A cleaning robot and a method for controlling a cleaning robot

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20140127946 2014-09-24
KR10-2014-0127946 2014-09-24
KR1020150135897A KR102431994B1 (ko) 2014-09-24 2015-09-24 청소 로봇 및 청소 로봇의 제어 방법
KR10-2015-0135897 2015-09-24

Publications (1)

Publication Number Publication Date
WO2016048077A1 true WO2016048077A1 (ko) 2016-03-31

Family

ID=55581496

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2015/010132 WO2016048077A1 (ko) 2014-09-24 2015-09-24 청소 로봇 및 청소 로봇의 제어 방법

Country Status (1)

Country Link
WO (1) WO2016048077A1 (ko)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10860029B2 (en) 2016-02-15 2020-12-08 RobArt GmbH Method for controlling an autonomous mobile robot
US11175670B2 (en) 2015-11-17 2021-11-16 RobArt GmbH Robot-assisted processing of a surface using a robot
US11188086B2 (en) 2015-09-04 2021-11-30 RobArtGmbH Identification and localization of a base station of an autonomous mobile robot
US11550054B2 (en) 2015-06-18 2023-01-10 RobArtGmbH Optical triangulation sensor for distance measurement
JP2023009121A (ja) * 2017-06-02 2023-01-19 アイロボット・コーポレーション 自律式ロボットを制御するための方法およびその命令を格納する非一時的なコンピュータ可読媒体
US11709489B2 (en) 2017-03-02 2023-07-25 RobArt GmbH Method for controlling an autonomous, mobile robot
US11768494B2 (en) 2015-11-11 2023-09-26 RobArt GmbH Subdivision of maps for robot navigation
US11789447B2 (en) 2015-12-11 2023-10-17 RobArt GmbH Remote control of an autonomous mobile robot

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100791384B1 (ko) * 2006-07-05 2008-01-07 삼성전자주식회사 특징점을 이용한 영역 구분 방법 및 장치와 이를 이용한이동 청소 로봇
KR20090077547A (ko) * 2008-01-11 2009-07-15 삼성전자주식회사 이동 로봇의 경로 계획 방법 및 장치
KR20130027349A (ko) * 2011-09-07 2013-03-15 엘지전자 주식회사 로봇 청소기, 단말 장치, 및 로봇 청소기의 원격 제어 시스템과 방법
KR20130092729A (ko) * 2012-02-13 2013-08-21 엘지전자 주식회사 로봇청소기 및 그 제어방법
KR20130120307A (ko) * 2012-04-25 2013-11-04 주식회사 하이로시 주행로봇 및 주행로봇의 제어방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100791384B1 (ko) * 2006-07-05 2008-01-07 삼성전자주식회사 특징점을 이용한 영역 구분 방법 및 장치와 이를 이용한이동 청소 로봇
KR20090077547A (ko) * 2008-01-11 2009-07-15 삼성전자주식회사 이동 로봇의 경로 계획 방법 및 장치
KR20130027349A (ko) * 2011-09-07 2013-03-15 엘지전자 주식회사 로봇 청소기, 단말 장치, 및 로봇 청소기의 원격 제어 시스템과 방법
KR20130092729A (ko) * 2012-02-13 2013-08-21 엘지전자 주식회사 로봇청소기 및 그 제어방법
KR20130120307A (ko) * 2012-04-25 2013-11-04 주식회사 하이로시 주행로봇 및 주행로봇의 제어방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3199083A4 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11550054B2 (en) 2015-06-18 2023-01-10 RobArtGmbH Optical triangulation sensor for distance measurement
US11188086B2 (en) 2015-09-04 2021-11-30 RobArtGmbH Identification and localization of a base station of an autonomous mobile robot
US11768494B2 (en) 2015-11-11 2023-09-26 RobArt GmbH Subdivision of maps for robot navigation
US11175670B2 (en) 2015-11-17 2021-11-16 RobArt GmbH Robot-assisted processing of a surface using a robot
US11789447B2 (en) 2015-12-11 2023-10-17 RobArt GmbH Remote control of an autonomous mobile robot
US10860029B2 (en) 2016-02-15 2020-12-08 RobArt GmbH Method for controlling an autonomous mobile robot
US11709497B2 (en) 2016-02-15 2023-07-25 RobArt GmbH Method for controlling an autonomous mobile robot
US11709489B2 (en) 2017-03-02 2023-07-25 RobArt GmbH Method for controlling an autonomous, mobile robot
JP2023009121A (ja) * 2017-06-02 2023-01-19 アイロボット・コーポレーション 自律式ロボットを制御するための方法およびその命令を格納する非一時的なコンピュータ可読媒体
US12089801B2 (en) 2017-06-02 2024-09-17 Irobot Corporation Scheduling and control system for autonomous robots

Similar Documents

Publication Publication Date Title
WO2016048077A1 (ko) 청소 로봇 및 청소 로봇의 제어 방법
WO2021006677A2 (en) Mobile robot using artificial intelligence and controlling method thereof
WO2018135870A1 (en) Mobile robot system and control method thereof
WO2016027957A1 (ko) 청소 로봇, 청소 로봇의 제어 장치, 제어 시스템, 및 제어 방법
WO2014175605A1 (en) Cleaning robot, home monitoring apparatus, and method for controlling the cleaning robot
WO2015183005A1 (en) Mobile device, robot cleaner, and method for controlling the same
WO2018155999A2 (en) Moving robot and control method thereof
WO2018139865A1 (ko) 이동 로봇
WO2018131884A1 (en) Moving robot and control method thereof
AU2019262468B2 (en) A plurality of robot cleaner and a controlling method for the same
AU2020209330B2 (en) Mobile robot and method of controlling plurality of mobile robots
EP3993961A1 (en) Moving robot and control method thereof
WO2018117616A1 (ko) 이동 로봇
AU2018216517B2 (en) Cleaner
WO2019212240A1 (en) A plurality of robot cleaner and a controlling method for the same
WO2019194636A1 (ko) 이동로봇과 이동로봇의 제어방법
AU2020362530B2 (en) Robot cleaner and method for controlling the same
WO2022240274A1 (ko) 로봇 장치, 그 제어 방법, 및 프로그램이 기록된 기록매체
WO2020256370A1 (en) Moving robot and method of controlling the same
WO2021006674A2 (ko) 이동 로봇 및 그 제어방법
WO2020017752A1 (ko) 드로잉을 통한 이동 로봇 제어 장치 및 그것의 동작 방법
WO2020080769A1 (ko) 사용자 단말기, 이를 포함하는 청소 로봇 및 그 제어 방법
WO2019194631A1 (ko) 이동로봇과 이동로봇의 제어방법
WO2019004773A1 (ko) 이동 단말기 및 이를 포함하는 로봇 시스템
WO2017116131A1 (ko) 청소 로봇 및 청소 로봇의 제어 방법

Legal Events

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

Ref document number: 15843361

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 251298

Country of ref document: IL

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2015843361

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 15514466

Country of ref document: US

Ref document number: 2015843361

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2015322263

Country of ref document: AU

Date of ref document: 20150924

Kind code of ref document: A