Patent Description:
Robots were developed for industrial use and prompted automation of production operations. Recently, they are being used more widely, for example, in the medical industry and the aerospace industry. There are even domestic robots used for household chores. Among such robots, a type of robot capable of traveling on it own is called a moving robot. A typical example of a moving robot used for a home's outdoor environment is a lawn mower robot.

For a moving robot travelling in an indoor space, an movable area is restricted by a wall or furniture, and, for a moving robot travelling an outdoor space, it is necessary to set a movable area in advance. In addition, a movable area needs to be limited to allow the lawn mower robot to travel on a grass area.

In a prior art <NUM>(<CIT>), a wire for setting an area to be travelled by a lawn mower robot may be installed in the lawn mower robot, and the lawn mower robot may sense a magnetic field formed by currents flowing by the wire and move in an area set by the wire.

In addition, when limiting movement by setting a border, a virtual wall may be set by transmitting a signal in a beacon method to limit the movement of the moving robot.

In this way, the lawn mower robot travels within a limited travel area and performs lawn mowing.

The lawn mower robot may mow the lawn while traveling in a travel area randomly, but there is a problem in that efficiency is deteriorated by repeatedly visiting the same place.

Prior art <NUM> (<CIT>) returns to a plurality of preset trajectories according to a magnetic strength of the area wires arranged at the periphery of the work area in order to solve the problem of running the same trajectory whenever returning to a charger.

The prior art <NUM> has a limitation that it cannot be applied to a wireless method without a wire, and cannot be used when travelling other than return such as lawn mowing work.

<CIT> relates to navigation of an autonomous surface treatment apparatus, wherein a given area is divided into cells, each of which is being indicated as treated, untreated or occupied by an obstacle, and navigation route is determined to an untreated cell that requires the smallest amount of energy according to a predetermined energy cost function.

<CIT> relates to a method for controlling the navigation of a mobile robot, in which a control unit applies a drive control signal to a robot driving unit to control the navigation of the mobile robot using sensing information of a sensing unit and preset data that is stored in a storage unit and includes grid information for a navigation environment, the method comprising a path planning step of calculating a navigation path of the mobile robot from a departure point to a destination point based on congestion map information calculated using grid map information for a navigation environment included in the preset data and the sensing information.

Route planning and travelling of the prior art has a problem in that an efficiency is low and a large possibility of lawn damage. An object of the present invention is to minimize damage to the lawn and improve efficiency by minimizing visits to the same point.

An object of the present invention is to provide a moving robot with high efficiency and reliability in an outdoor environment and a control method thereof.

It is an object of the present invention to provide a moving robot and a control method thereof capable of reducing the possibility of lawn damage and improving efficiency in a wire method and a wireless method by minimizing an area that repeatedly travels independently of a wire.

Another object of the present invention is to provide a moving robot capable of effectively establishing a route according to a situation and a control method thereof.

In order to achieve the above or other objects, a moving robot and a control method thereof according to an aspect of the present invention may minimize damage to the lawn and improve efficiency by minimizing visits to the same point.

In order to achieve the above or other objects, a moving robot and a control method thereof according to an aspect of the present invention may minimize visits to the same point by reflecting the cost of a route passed during travelling in a later route plan.

These and other objects are solved by the subject-matter of the independent claims. Advantageous embodiments are solved by the respective dependent claims.

A moving robot according to an aspect of the present invention includes a body configured to define an exterior, a travelling unit configured to move the body against a travelling surface of a travelling area, a storage configured to store a grid map corresponding to a travelling area and cost information of grids included in the grid map, and a controller configured to generate a movement route based on the cost information, control the travelling unit to travel according to the generated movement route, and increase a stay cost of a grid corresponding to a route that has passed during the travelling and control the storage to store the increased stay cost.

Meanwhile, the cost information may include an intrinsic cost assigned based on environmental information of the travelling area, and the stay cost.

In addition, the stay cost may be separately stored in a stay map composed of grids corresponding to the travelling area and stay costs of each grid.

Alternatively, the intrinsic cost and the stay cost may be stored on the grid map.

Meanwhile, the controller may calculate a travelling cost by summing the intrinsic cost, the stay cost, and an adjacent cost with respect to a distance generated when moving from a starting point to an arrival point, and may generate movement route as a route with minimum travelling cost. In addition, the controller may increase the stay cost equal to a difference value of adjacent costs between two adjacent grids during one travelling.

In addition, the adjacent cost may be proportional to the moving distance.

Meanwhile, the controller may initialize all stay costs when the stay cost of any one grid exceeds a minimum value of the intrinsic cost.

Meanwhile, the intrinsic cost may be set to a first value for a risk area corresponding to a fixed object or a border line and a second value lower than the first value for a predicted risk area adjacent to the risk area. In this case, the controller may initialize all stay costs when the stay cost of any one grid is equal to or greater than the second value.

In order to achieve the above or other objects, a method of controlling a moving robot according to an aspect of the present invention comprises: setting cost information on grids of a grid map corresponding to a travelling area, travelling based on the cost information, and, increasing and storing a stay cost of a grid corresponding to a route passed during the travelling.

In order to achieve the above or other objects, the method for controlling a moving robot according to an aspect of the present invention may further include calculating a travelling cost by summing the intrinsic cost, the stay cost, and an adjacent cost with respect to a distance generated when moving from a starting point to an arrival point, and generating movement route as a route with minimum travelling cost.

In addition, the increasing and storing the stay cost may increase the stay cost equal to a difference value of adjacent costs between two adjacent grids during one travelling.

Meanwhile, the adjacent cost may be proportional to the moving distance.

In order to achieve the above or other objects, the method for controlling a moving robot according to an aspect of the present invention may further include initializing all stay costs when the stay cost of any one grid becomes more than a minimum value of the intrinsic cost.

Meanwhile, the intrinsic cost may be set to a first value for a risk area corresponding to a fixed object or a border line and a second value lower than the first value for a predicted risk area adjacent to the risk area, and further include initializing all stay costs when the stay cost of any one grid is equal to or greater than the second value.

According to at least one of the embodiments of the present invention, there is an advantage in that damage to the lawn may be minimized and efficiency may be improved by minimizing visits to the same point.

In addition, according to at least one of the embodiments of the present invention, it is possible to provide a moving robot having high efficiency and reliability in an outdoor environment and a control method thereof.

In addition, according to at least one of the embodiments of the present invention, it is possible to provide a moving robot and a control method thereof capable of reducing the possibility of lawn damage and improving efficiency in a wire method and a wireless method by minimizing an area that repeatedly travels independently of a wire.

In addition, according to at least one of the embodiments of the present invention, a route may be effectively established according to the situation.

The terms "forward (F)/rearward (R)/upward (U)/downward (D)/indoor (I)/outdoor (O)" mentioned in the following description are defined as shown in the drawings. However, the terms are used merely to clearly understand the present invention, and therefore the above-mentioned directions may be differently defined.

The terms "first", "second" etc. are used to distinguish elements, and not related to a sequence, importance levels, or a master-servant relationship of elements. For example, only a second element may be included without a first element.

Hereinafter, a moving robot is described as a lawn mower <NUM> with reference to <FIG>, but the present disclosure is not necessarily limited thereto.

With reference to <FIG>, a moving robot <NUM> includes a body <NUM> that defines an exterior of the moving robot <NUM>. The body <NUM> forms an inner space. The moving robot <NUM> includes a travelling unit <NUM> that moves the body <NUM> against a travel surface. The moving robot <NUM> includes an operation unit <NUM> that performs a predetermined operation.

The body <NUM> includes a frame <NUM> to which a driving motor module <NUM>, which will be described later, is fixed. A blade motor <NUM>, which will be described later, is fixed to the frame <NUM>. The frame <NUM> supports a battery which will be described later. The frame <NUM> provides a structure which supports even other components which are not mentioned herein. The frame <NUM> is supported by an auxiliary wheel <NUM> and a driving wheel <NUM>.

The body <NUM> includes a lateral blocking part 111a which prevent a user's finger from entering a blade <NUM> from a side of the blade <NUM>. The lateral blocking part 111a is fixed to the frame <NUM>. The lateral blocking part 111a is projected downward, compared to a button surface of an other part of the frame <NUM>. The lateral blocking part <NUM>1a is arranged to cover an upper side of a space between the driving wheel <NUM> and the auxiliary wheel <NUM>.

A pair of lateral blocking parts 111a-<NUM> and 111a-<NUM> is arranged on the left and right sides to the blade <NUM>. The lateral blocking part 111a is spaced a predetermined distance apart from the blade <NUM>.

A front surface 111af of the lateral blocking part 111a is formed in a round shape. The front surface 111af forms a surface that is bent in a round manner upwardly in a forward direction from a bottom surface of the lateral blocking part 111a. By use of the shape of the front surface 111af, the lateral blocking parts 111a is able to easily go over an obstacle of a predetermined height or lower thereunder when the moving robot <NUM> moves forward.

The body <NUM> includes a front blocking part 111b which prevents a user's finger from entering between the blade <NUM> from the front of the blade <NUM>. The front blocking part <NUM>1b is fixed to the frame <NUM>. The front blocking part 111b is arranged to partially cover an upper side of a space between a pair of auxiliary wheels <NUM>(L) and <NUM>(R).

The front blocking part 111b includes a projected rib 111ba which is projected downward compared to a bottom surface of another part of the frame <NUM>. The projected rib <NUM>1ba extends in a front-rear direction. An upper portion of the projected rib 111ba is fixed to the frame <NUM>, and a lower portion of the projected rib 111ba forms a free end.

A plurality of projected ribs <NUM>1ba may be spaced apart leftward and rightward from each other. The plurality of projected ribs 111ba may be arranged in parallel to each other. A gap is formed between two adjacent projected ribs 111ba.

A front surface of the projected ribs 111ba is formed in a round shape. The front surface of the projected rib 111ba forms a surface that is bent in a round manner upwardly in a forward direction from a bottom surface of the projected rib 111ba. By use of the shape of the front surface of the projected rib 111ba, the projected rib 111ba is able to easily go over an obstacle of a predetermined height or lower thereunder when the moving robot <NUM> moves forward.

The front blocking part 111b includes an auxiliary rib 111bb which reinforces rigidity. The auxiliary ribs 111bb for reinforcing rigidity of the front blocking part 111b is arranged between upper portions of two adjacent projected ribs 111ba. The auxiliary rib 111bb may be projected downward and may be in a lattice shape which extends.

In the frame <NUM>, a caster which supports the auxiliary wheel <NUM> rotatably is arranged. The caster is arranged rotatable with respect to the frame <NUM>. The caster is disposed rotatable about a vertical axis. The caster is disposed in a lower side of the frame <NUM>. The caster is provided as a pair of casters corresponding to the pair of auxiliary wheels <NUM>.

The body <NUM> includes a case <NUM> which covers the frame <NUM> from above. The case <NUM> defines a top surface and front/rear/left/right surfaces of the moving robot <NUM>.

The body <NUM> may include a case connection part (not shown) which fixes the case <NUM> to the frame <NUM>. An upper portion of the case connection part may be fixed to the case <NUM>. The case connection part may be arranged movable with respect to the frame <NUM>. The case connection part may be arranged movable only upwardly and downwardly with the frame <NUM>. The case connection part may be provided movable in a predetermined range. The case connection part moves integrally with the case <NUM>. Accordingly, the case <NUM> is movable with respect to the frame <NUM>.

The body <NUM> includes a bumper 112b which is disposed at the front. The bumper 112b absorbs an impact upon collision with an external obstacle. At a front surface of the bumper 112b, a bumper groove recessed rearward and elongated in a left-right direction may be formed. The bumper groove may be provided as a plurality of bumper grooves spaced apart from each other in an upward-downward direction. A lower end of the projected rib 111ba is positioned lower than a lower end of the auxiliary rib 111bb.

The front surface and the left and right surfaces of the bumper 112b are connected. The front surface and the left and right surfaces of the bumper 112b are connected in a round manner.

The body <NUM> may include an auxiliary bumper 112c which is disposed embracing an exterior surface of the bumper 112b. The auxiliary bumper 112c is coupled to the bumper 112b. The auxiliary bumper 112c embraces lower portions of the front, left, and right surfaces of the bumper 112b. The auxiliary bumper 112c may cover the lower half portions of the front, left, and right surfaces of the bumper 112b.

The front surface of the auxiliary bumper 112c is disposed ahead of the front surface of the bumper 112b. The auxiliary bumper 112c forms a surface projected from a surface of the bumper 112b.

The auxiliary bumper 112c may be formed of a material which is advantageous in absorbing impact, such as rubber. The auxiliary bumper 112c may be formed of a flexible material.

The frame <NUM> may be provided with a movable fixing part (not shown) to which the bumper 112b is fixed. The movable fixing part may be projected upward of the frame <NUM>. The bumper 112b may be fixed to an upper portion of the movable fixing part.

The bumper 112b may be disposed movable in a predetermined range with the frame <NUM>. The bumper 112b may be fixed to the movable fixing part and thus movable integrally with the movable fixing part.

The movable fixing part may be disposed movable with respect to the frame <NUM>. The movable fixing part may be rotatable about a virtual rotation axis in a predetermined range with the frame <NUM>. Accordingly, the bumper 112b may be movable integrally with the movable fixing part with respect to the frame <NUM>.

The body <NUM> includes a handle <NUM>. The handle <NUM> may be disposed at the rear of the case <NUM>.

The body <NUM> includes a battery slot <NUM> which a battery is able to be inserted into and separated from. The battery slot <NUM> may be disposed at a bottom surface of the frame <NUM>. The battery slot <NUM> may be disposed at the rear of the frame <NUM>.

The body <NUM> includes a power switch <NUM> to turn on/off power of the moving robot <NUM>. The power switch <NUM> may be disposed at the bottom surface of the frame <NUM>.

The body <NUM> includes a blade protector <NUM> which hides the lower side of the central portion of the blade <NUM>. The blade protector <NUM> is provided to expose centrifugal portions of blades of the blade <NUM> while hiding the central portion of the blade <NUM>.

The body <NUM> includes a first opening and closing door <NUM> which opens a portion in which a height adjuster <NUM> and a height indicator <NUM> are arranged. The first opening and closing door <NUM> is hinge-coupled to the case <NUM> to be opened and closed. The first opening and closing door <NUM> is arranged in a top surface of the case <NUM>.

The first opening and closing door <NUM> is formed in a plate shape, and, when closed, covers the top of the height adjuster <NUM> and the height indicator.

The body <NUM> includes a second opening and closing door <NUM> which opens and closes a portion in which a display module <NUM> and an input unit <NUM> is arranged. The second opening and closing door <NUM> is hinge-coupled to the case <NUM> to be opened and closed. The second opening and closing door <NUM> is arranged in a top surface of the case <NUM>. The second opening and closing door <NUM> is disposed behind the first opening and closing door <NUM>.

The second opening and closing door <NUM> is formed in a plate shape, and, when closed, covers the display module <NUM> and the input unit <NUM>.

An available opening angle of the second opening and closing door <NUM> is predetermined to be smaller than an available opening angle of the first opening and closing door <NUM>. In doing this, even when the second opening and closing door <NUM> is opened, a user is allowed to easily open the first opening and closing door <NUM> and easily manipulate the height adjuster <NUM>. In addition, even when the second opening and closing door <NUM> is opened, the user is allowed to visually check content of the height display <NUM>.

For example, the available opening angle of the first opening and closing door <NUM> may be about <NUM> to <NUM> degrees with reference to the closed state of the first opening <NUM>. For example, the available opening angle of the second opening and closing door <NUM> may be about <NUM> to <NUM> degrees with reference to the closed state of the second opening and closing door <NUM>.

A rear of the first opening and closing door <NUM> is lifted upward from a front thereof to thereby open the first opening and closing door <NUM>, and a rear of the second opening and closing door <NUM> is lifted upward from a front thereof to thereby open the second opening and closing door <NUM>. In doing so, even while the lawn mower <NUM> moves forward, a user located in an area behind the lawn mower <NUM>, which is a safe area, is able to open and close the first opening and closing door <NUM> and the second opening and closing door <NUM>. In addition, in doing so, opening of the first opening and closing door <NUM> and opening of the second opening and closing door <NUM> may be prevented from intervening each other.

The first opening and closing door <NUM> may be rotatable with respect to the case <NUM> about a rotation axis which extends from the front of the first opening and closing door <NUM> in a left-right direction. The second opening and closing door <NUM> may be rotatable with respect to the case <NUM> about a rotation axis which extends from the front of the second opening and closing door <NUM> in the left-right direction.

The body <NUM> may include a first motor housing 119a which accommodates a first driving motor <NUM>(L), and a second motor housing 119b which accommodates a second driving motor <NUM>(R). The first motor housing 119a may be fixed to the left side of the frame <NUM>, and the second motor housing 119b may be fixed to the right side of the frame <NUM>. A right end of the first motor housing 119a is fixed to the frame <NUM>. A left end of the second motor housing 119b is fixed to the frame <NUM>.

The first motor housing 119a is formed in a cylindrical shape that defines a height in the left-right direction. The second motor housing 119b is formed in a cylindrical shape that defines a height in the left-right direction.

The traveling unit <NUM> includes the driving wheel <NUM> that rotates by a driving force generated by the driving motor module <NUM>. The traveling unit <NUM> may include at least one pair of driving wheels <NUM> which rotate by a driving force generated by the driving motor module <NUM>. The driving wheel <NUM> may include a first wheel <NUM>(L) and a second wheel <NUM>(R), which are provided on the left and right sides and rotatable independently of each other. The first wheel <NUM>(L) is arranged on the left side, and the second wheel <NUM>(R) is arranged on the right side. The first wheel <NUM>(L) and the second wheel <NUM>(R) are spaced apart leftward and rightward from each other. The first wheel <NUM>(L) and the second wheel <NUM>(R) are arranged in a lower side at the rear of the body <NUM>.

The first wheel <NUM>(L) and the second wheel <NUM>(R) are rotatable independently of each other so that the body <NUM> is rotatable and forward movable relative to a ground surface. For example, when the first wheel <NUM>(L) and the second wheel <NUM>(R) rotate at the same speed, the body <NUM> is forward movable relative to the ground surface. For example, when a rotation speed of the first wheel <NUM>(L) is faster than a rotation speed of the second wheel <NUM>(R) or when a rotation direction of the first wheel <NUM>(L) and a rotation direction of the second wheel <NUM>(R) are different from each other, the body <NUM> is rotatable against the ground surface.

The first wheel <NUM>(L) and the second wheel <NUM>(R) may be formed to be greater than the auxiliary wheel <NUM>. A shaft of the first driving motor <NUM>(L) may be fixed to the center of the first wheel <NUM>(L), and a shaft of the second driving motor <NUM>(R) may be fixed to the center of the second wheel <NUM>(R).

The driving wheel <NUM> includes a wheel circumference part 121b which contacts the ground surface. For example, the wheel circumference part 121b may be a tire. In the wheel circumference part 121b, a plurality of projections for increasing a frictional force with the ground surface may be formed.

The driving wheel <NUM> may include a wheel fame (not shown), which fixes the wheel circumference part 121b and receives a driving force for the motor <NUM>. A shaft of the motor <NUM> is fixed to the center of the wheel frame to receive a rotation force. The wheel circumference part 121b is arranged surrounding a circumference of the wheel frame.

The driving wheel <NUM> includes a wheel cover 121a which covers an exterior surface of the wheel frame. With reference to the wheel frame, the wheel cover 121a is arranged in a direction opposite to a direction in which the motor <NUM> is arranged. The wheel cover 121a is arranged at the center of the wheel circumference part 121b.

The traveling unit <NUM> includes the driving motor module <NUM> which generates a driving force. The traveling unit <NUM> includes the driving motor module <NUM> which provides a driving force for the driving wheel <NUM>. The driving motor module <NUM> includes the first driving motor <NUM>(L) which provides a driving force for the first wheel <NUM>(L), and the second driving motor <NUM>(R) which provides a driving force for the second wheel <NUM>(R). The first driving motor <NUM>(L) and the second driving motor <NUM>(R) may be spaced apart leftward and rightward from each other. The first driving motor <NUM>(L) may be disposed on the left side of the second driving motor <NUM>(R).

The first driving motor <NUM>(L) and the second driving motor <NUM>(R) may be arranged at a lower side of the body <NUM>. The first driving motor <NUM>(L) and the second driving motor <NUM>(R) may be arranged at the rear of the body <NUM>.

The first driving motor <NUM>(L) may be arranged on the right side of the first wheel <NUM>(L), and the second driving motor <NUM>(R) is arranged on the left side of the second wheel <NUM>(R). The first driving motor <NUM>(L) and the second driving motor <NUM>(R) are fixed to the body <NUM>.

The first driving motor <NUM>(L) may be arranged inside the first motor housing 119a, with a motor shaft being projected leftward. The second driving motor <NUM>(R) may be arranged inside the second motor housing 119b, with a motor shaft being projected rightward.

In this embodiment, the first wheel <NUM>(L) and the second wheel <NUM>(R) may be connected to a rotation shaft of the first driving motor <NUM>(L) and a rotation shaft of the second driving motor <NUM>(R), respectively. Alternatively, a component of a shaft or the like may be connected to the first wheel <NUM>(L) and the second wheel <NUM>(R). Alternatively, a rotation force of the motor <NUM>(L) or <NUM>(R) may be transferred to the wheel 121a or 121b by a gear or a chain.

The traveling unit <NUM> may include the auxiliary wheel <NUM> which supports the body <NUM> together with the driving wheel <NUM>. The auxiliary wheel <NUM> may be disposed ahead of the blade <NUM>. The auxiliary wheel <NUM> is a wheel which does not receives a driving force generated by a motor, and the auxiliary wheel <NUM> auxiliarily supports the body <NUM> against the ground surface. The caster supporting a rotation shaft of the auxiliary wheel <NUM> is coupled to the frame <NUM> to be rotatable about a vertical axis. There may be provided a first auxiliary wheel <NUM>(L) arranged on the left side, and a second auxiliary wheel <NUM>(R) arranged on the right side.

The operation unit <NUM> is provided to perform a predetermined operation. The operation unit <NUM> is arranged at the body <NUM>.

In one example, the operation unit <NUM> may be provided to perform an operation such as cleaning or lawn mowing. In another example, the operation unit <NUM> may be provided to perform an operation such as transferring an object or finding an object. In yet another embodiment, the operation unit <NUM> may perform a security function such as sensing an intruder or a dangerous situation in the surroundings.

In this embodiment, the operation unit <NUM> is described as moving lawn, but there may be various types of operation performed by the operation unit <NUM> and not limited to this embodiment.

The operation unit <NUM> may include the blade <NUM> which are rotatably provided to mow lawn. The operation unit <NUM> may include a blade motor <NUM> which provides a rotation force for the blade <NUM>.

The blade <NUM> is arranged between the driving wheel <NUM> and the auxiliary wheel <NUM>. The blade <NUM> is arranged on a lower side of the body <NUM>. The blade <NUM> is exposed from the lower side of the body <NUM>. The blade <NUM> mows lawn by rotating about a rotation shaft which extends in an upward-downward direction.

A blade motor <NUM> may be arranged ahead of the first wheel <NUM>(L) and the second wheel <NUM>(R). The blade motor <NUM> is disposed in a lower side of the center in the inner space of the body <NUM>. The blade motor <NUM> may be disposed at the rear of the auxiliary wheel <NUM>. The blade motor <NUM> may be arranged in a lower side of the body <NUM>. A rotational force of the motor axis is transferred to the blade <NUM> using a structure such as a gear.

The moving robot <NUM> includes a battery (not shown) which provides power for the driving motor module <NUM>. The battery provides power to the first driving motor <NUM>(L). The battery provides power for the second driving motor <NUM>(R). The battery may provide power for the blade motor <NUM>. The battery may provide power for a controller <NUM>, an azimuth angle sensor <NUM>, and an output unit <NUM>. The battery may be arranged in a lower side of the rear in the indoor space of the body <NUM>.

The moving robot <NUM> is able to change a height of the blade <NUM> from the ground, and change a lawn cutting height. The moving robot <NUM> includes the height adjuster <NUM> by which a user is able to change a height of the blade <NUM>. The height adjuster <NUM> may include a rotatable dial and may change the height of the blade <NUM> by rotating the dial.

The moving robot <NUM> includes the height indicator <NUM> which displays a degree of the height of the blade <NUM>. When the height of the blade <NUM> is changed upon manipulation of the height adjuster <NUM>, the height displayed by the height display <NUM> is also changed. For example, the height display <NUM> may display a height value of grass that is expected after the moving robot <NUM> mows lawn with the current height of the blade <NUM>.

The moving robot <NUM> includes a docking insertion part <NUM> which is connected to a docking device <NUM> when the moving robot <NUM> is docked to the docking device <NUM>. The docking insertion part <NUM> is recessed such that a docking connection part <NUM> of the docking device <NUM> is inserted into the docking insertion part <NUM>. The docking insertion part <NUM> is arranged in the front surface of the body <NUM>. Due to connection of the docking insertion part <NUM> and the docking connection part <NUM>, the moving robot <NUM> may be guided to a correct position upon a need of charge.

The moving robot <NUM> may include a charging counterpart terminal <NUM> which is disposed at a position to be in contact with a charging terminal <NUM>, which will be described later, when the docking connection part <NUM> is inserted into the docking insertion part <NUM>. The charging counterpart terminal <NUM> includes a pair of charging counterpart terminals which are disposed at positions corresponding to a pair of charging terminals 211a and 211b. The pair of charging counterpart terminals 159a and 159b may be disposed on the left and right sides of the docking insertion part <NUM>.

A terminal cover (not shown) for openably/closably covering the pair of charging terminals 211a and 211b may be provided. While the moving robot <NUM> travels, the terminal cover may cover the docking insertion part <NUM> and the pair of charging terminals 211a and 211b. When the moving robot <NUM> is connected with the docking device <NUM>, the terminal cover may be opened, and therefore, the docking insertion part <NUM> and the pair of charging terminals 211a and 211b may be exposed.

Meanwhile, referring to <FIG>, the docking device <NUM> includes a docking base <NUM> disposed at a floor, and a docking support <NUM> projected upwardly from the front of the docking base <NUM>. The docking device <NUM> includes the docking connection part <NUM> which is inserted into the docking insertion part <NUM> to charge the moving robot <NUM>. The docking connection part <NUM> may be projected rearward of the docking support <NUM>.

The docking connection part <NUM> may be formed to have a vertical thickness smaller than a horizontal thickness. A horizontal width of the docking connection part <NUM> may be narrowed toward the rear. As viewed from above, the docking connection part <NUM> is broadly in a trapezoidal shape. The docking connection part <NUM> is vertically symmetrical. The rear of the docking connection part <NUM> forms a free end, and the front of the docking connection part <NUM> is fixed to the docking support <NUM>. The rear of the docking connection part <NUM> may be formed in a round shape.

When the docking connection part <NUM> is fully inserted into the docking insertion part <NUM>, charging of the moving robot <NUM> by the docking deice <NUM> may be performed.

The docking device <NUM> includes the charging terminal <NUM> to charge the moving robot <NUM>. As the charging terminal <NUM> and the charging counterpart terminal <NUM> of the moving robot <NUM> are brought into contact with each other, charging power may be supplied from the docking device <NUM> to the moving robot <NUM>.

The charging terminal <NUM> includes a contact surface facing rearward, and the charging counterpart terminal <NUM> includes a contact counterpart surface facing forward. As the contact surface of the charging terminal <NUM> is brought into contact with the contact counterpart surface of the charging counterpart terminal <NUM>, power of the docking device <NUM> is connected with the moving robot <NUM>.

The charging terminal <NUM> may include a pair of charging terminals 211a and 211b which form a positive polarity (+) and a negative polarity (-), respectively. The first charging terminal 211a is provided to come into contact with the first charging counterpart terminal 159a, and the second charging terminal 211b is provided to come into contact with the second charging counterpart terminal 159b.

The pair of charging terminals 211a and 211b may be arranged with the docking connection part <NUM> therebetween. The pair of charging terminals 211a and 211b may be arranged on the left and right sides of the docking connection part <NUM>.

The docking base <NUM> includes a wheel guard <NUM> on which the driving wheel <NUM> and the auxiliary wheel <NUM> of the moving robot <NUM> are to be positioned. The wheel guard <NUM> includes a first wheel guard 232a which guides movement of the first auxiliary wheel <NUM>(L), and a second wheel guard 232b which guides movement of the second auxiliary wheel <NUM>(R). Between the first wheel guard 232a and the second wheel guard 232b, there is a central base <NUM> which is convex upwardly. The docking base <NUM> includes a slip prevention part <NUM> to prevent slipping of the first wheel <NUM>(L) and the second wheel <NUM>(R). The slip prevention part <NUM> may include a plurality of projections which are projected upwardly.

Meanwhile, a wire (not shown) for setting a border of a travel area of the moving root <NUM> may be provided. The wire may generate a predetermined border signal. By detecting the border signal, the moving robot <NUM> is able to recognize the border of the travel area set by the wire.

For example, as a predetermined current is allowed to flow along the wire, a magnetic field may be generated around the wire. The generated magnetic field is the aforementioned border signal. As an alternating current with a predetermined pattern of change are allowed to flow in the wire, a magnetic field generated around the wire may change in the predetermined pattern of change. Using a border signal detector <NUM> for detecting a magnetic field, the moving robot <NUM> may recognize that the moving robot <NUM> has approached the wire within a predetermined distance, and accordingly, the moving robot <NUM> may travel only in a travel area within a border set by the wire.

The docking unit <NUM> may play a role of transferring a predetermined current to the wire. The docking device <NUM> may include a wire terminal <NUM> connected to the wire. Both ends of the wire may be connected to a first wire terminal 250a and a second wire terminal 250b. Through the connection between the wire and the wire terminal <NUM>, a power supply of the docking device <NUM> may supply a current to the wire.

The wire terminal <NUM> may be disposed at the front (F) of the docking device <NUM>. That is, the wire terminal <NUM> may be disposed at a position opposite to a direction in which the docking connection part <NUM> is projected. The wire terminal <NUM> may be disposed in the docking support <NUM>. The first wire terminal 250a and the second wire terminal 250b may be spaced apart leftward and rightward from each other.

The docking device <NUM> may include a wire terminal opening and closing door <NUM> which openably/closably covers the wire terminal <NUM>. The wire terminal opening and closing door <NUM> may be disposed at the front (F) of the docking support <NUM>. The wire terminal opening and closing door <NUM> may be hinge-coupled to the docking support <NUM> to be opened and closed by rotation.

Meanwhile, referring to <FIG>, the moving robot <NUM> may include the input unit <NUM> through which various instructions from a user is allowed to be input. The input unit <NUM> may include a button, a dial, a touch-type display, etc. The input unit <NUM> may include a microphone to recognize a voice. In this embodiment, a plurality of buttons is arranged in an upper side of the case <NUM>.

The moving robot <NUM> may include the output unit <NUM> to output various types of information to a user. The output unit <NUM> may include a display module which displays visual information. The output unit <NUM> may include a speaker (not shown) which outputs audible information.

In this embodiment, the display module <NUM> outputs an image in an upward direction. The display module <NUM> is arranged in the upper side of the case <NUM>. In one example, the display module <NUM> may include a thin film transistor Liquid-Crystal Display (LCD). In addition, the display module <NUM> may be implemented using various display panels such as a plasma display panel, an organic light emitting diode display panel, etc..

The moving robot <NUM> includes a storage <NUM> which stores various types of information. The storage <NUM> stores various types of information necessary to control the moving robot <NUM>, and the storage <NUM> may include a volatile or non-volatile recording medium. The storage <NUM> may store information input through the input unit <NUM> or information received through a communication unit <NUM>. The storage <NUM> may store a program required to control the moving robot <NUM>.

The moving robot <NUM> may include the communication unit <NUM> to communicate with an external device (a terminal and the like), a server, a router, etc. For example, the communication unit <NUM> may be capable of performing wireless communication with a wireless communication technology such as IEEE <NUM> WLAN, IEEE <NUM> WPAN, UWB, Wi-Fi, Zigbee, Z-wave, Blue-Tooth, etc. The communication unit <NUM> may differ depending on a target device to communication or a communication method of a server.

The moving robot <NUM> includes a sensing unit <NUM> which senses a state of the moving robot <NUM> or information relating to an environment external to the moving robot <NUM>. The sensing unit <NUM> may include at least one of a remote signal detector <NUM>, an obstacle detector <NUM>, a rain detector <NUM>, a case movement sensor <NUM>, a bumper sensor <NUM>, an azimuth angle sensor <NUM>, a border signal detector <NUM>, a Global Positioning System (GPS) detector <NUM>, or a cliff detector <NUM>.

The remote signal detector <NUM> receives an external remote signal. Once a remote signal from an external remote controller is transmitted, the remote signal detector <NUM> may receive the remote signal. For example, the remote signal may be an infrared signal. The signal received by the remote signal detector <NUM> may be processed by a controller <NUM>.

A plurality of remote signal detectors <NUM> may be provided. The plurality of remote signal detectors <NUM> may include a first remote signal detector 171a disposed at the front of the body <NUM>, and a second remote signal detector 171b disposed at the rear of the body <NUM>. The first remote signal detector 171a receives a remote signal transmitted from the front. The second remote signal detector 171b receives a remote signal transmitted from the rear.

The obstacle detector <NUM> senses an obstacle around the moving robot <NUM>. The obstacle detector <NUM> may sense an obstacle in the front. A plurality of obstacle detectors 172a, 172b, and 172c may be provided. The obstacle detector <NUM> is disposed at a front surface of the body <NUM>. The obstacle detector <NUM> is disposed higher than the frame <NUM>. The obstacle detector <NUM> may include an infrared sensor, an ultrasonic sensor, a Radio Frequency (RF) sensor, a geomagnetic sensor, a Position Sensitive Device (PSD) sensor, etc..

The rain detector <NUM> senses rain when it rains in an environment where the moving robot <NUM> is placed. The rain detector <NUM> may be disposed in the case <NUM>.

The case movement sensor <NUM> senses movement of the case connection part. If the case <NUM> is lifted upward from the frame <NUM>, the case connection part moves upward and accordingly the case movement sensor <NUM> senses the lifted state of the case <NUM>. If the case movement sensor <NUM> senses the lifted state of the case <NUM>, the controller <NUM> may perform a control action to stop operation of the blade <NUM>. For example, if a user lifts the case <NUM> or if a considerable-sized obstacle underneath lifts the case <NUM>, the case movement sensor <NUM> may sense the lift.

The bumper sensor <NUM> may sense rotation of the movable fixing part. For example, a magnet may be disposed in one side of the bottom of the movable fixing part, and a sensor for sensing a change in a magnetic field of the magnet may be disposed in the frame. When the movable fixing part rotates, the bumper sensor <NUM> senses a change in the magnetic field of the magnet. Thus, the bumper sensor <NUM> capable of sensing rotation of the movable fixing part may be implemented. When the bumper 112b collides with an external obstacle, the movable fixing part rotates integrally with the bumper 112b. As the bumper sensor <NUM> senses the rotation of the movable fixing part, the bumper sensor <NUM> may sense the collision of the bumper 112b.

The sensing unit <NUM> includes a tilt information acquisition unit <NUM> which acquires tilt information on a tilt of a traveling surface (S). By sensing a tilt of the body <NUM>, the tilt information acquisition unit <NUM> may acquire the tilt information on inclination of the traveling surface (S) on which the body <NUM> is placed. In one example, the tilt information acquisition unit <NUM> may include a gyro sensing module 176a. The tilt information acquisition unit <NUM> may include a processing module (not shown) which converts a sensing signal from the gyro sensing module 176a into the tilt information. The processing module may be implemented as an algorithm or a program which is part of the controller <NUM>. In another example, the tilt information acquisition unit <NUM> may include a magnetic field sensing module 176c, and acquire the tilt information based on sensing information about the magnetic field of the Earth.

The gyro sensing module 176a may acquire information on a rotational angular speed of the body <NUM> relative to the horizontal plane. Specifically, the gyro sensing module 176a may sense a rotational angular speed which is parallel to the horizontal plane about the X and Y axes orthogonal to each other. By merging a rotational angular speed (roll) about the X axis and a rotational angular speed (pitch) about the Y axis with the processing module, it is possible to calculate a rotational angular speed relative to the horizontal plane. By integrating the rotational angular speed relative to the horizontal plane, it is possible calculate a tilt value.

The gyro sensing module 176a may sense a predetermined reference direction. The tilt information acquisition unit <NUM> may acquire the tilt information based on the reference direction.

The azimuth angle sensor (AHRS) <NUM> may have a gyro sensing function. The azimuth angle sensor <NUM> may further include an acceleration sensing function. The azimuth angle sensor <NUM> may further include a magnetic field sensing function.

The azimuth angle sensor <NUM> may include a gyro sensing module 176a which performs gyro sensing. The gyro sensing module 176a may sense a horizontal rotational speed of the body <NUM>. The gyro sensing module 176a may sense a tilting speed of the body <NUM> relative to a horizontal plane.

The gyro sensing module 176a may include a gyro sensing function regarding three axes orthogonal to each other in a spatial coordinate system. Information collected by the gyro sensing module 176a may be roll, pitch, and yaw information. The processing module may calculate a direction angle of a cleaner <NUM> or <NUM>' by integrating the roll, pitch, and yaw angular speeds.

The azimuth angle sensor <NUM> may include an acceleration sensing module 176b which senses acceleration. The acceleration sensing module 176b has an acceleration sensing function regarding three axes orthogonal to each other in a spatial coordinate system. A predetermined processing module calculates a speed by integrating the acceleration, and may calculate a movement distance by integrating the speed.

The azimuth angle sensor <NUM> may include a magnetic field sensing module 176c which performs magnetic field sensing. The magnetic sensing module 176c may have a magnetic field sensing function regarding three axes orthogonal to each other in a spatial coordinate system. The magnetic field sensing module 176c may sense the magnetic field of the Earth.

The border signal detector <NUM> detects the border signal of the wire outside the moving robot <NUM>. The border signal detector <NUM> may be disposed at the front of the body <NUM>. In doing so, while the moving robot <NUM> moves in a forward direction which is the primary travel direction, it is possible to sense the border of the travel area in advance. The border signal detector <NUM> may be disposed in an inner space of the bumper 112b.

The border signal detector <NUM> may include a first border signal detector 177a and a second border signal detector 177b which are arranged leftward and rightward from each other. The first border signal detector 177a and the second border signal detector 177b may be disposed at the front of the body <NUM>.

When the border signal is a magnetic field signal, the border signal detector <NUM> includes a magnetic field sensor. The border signal detector <NUM> may be implemented using a coil to detect a change in a magnetic field. The border signal detector <NUM> may sense at least a magnetic field of an upward-downward direction. The border signal detector <NUM> may sense a magnetic field on three axes which are spatially orthogonal to each other.

The GPS detector <NUM> may be provided to detect a GPS signal. The GPS detector <NUM> may be implemented using a Printed Circuit Board (PCB).

The cliff detector <NUM> detects presence of a cliff in a travel surface. The cliff detector <NUM> may be disposed at the front of the body <NUM> to detect presence of a cliff in the front of the moving robot <NUM>.

The sensing unit <NUM> may include an opening/closing detector (not shown) which detects opening/closing of at least one of the first opening and closing door <NUM> or the second opening and closing door <NUM>. The opening/closing detector may be disposed at the case <NUM>.

The moving robot <NUM> includes the controller <NUM> which controls autonomous traveling. The controller <NUM> may process a signal from the sensing unit <NUM>. The controller <NUM> may process a signal from the input unit <NUM>.

The controller <NUM> may control the first driving motor <NUM>(L) and the second driving motor <NUM>(R). The controller <NUM> may control driving of the blade motor <NUM>. The controller <NUM> may control outputting of the output unit <NUM>.

The controller <NUM> includes a main board (not shown) which is disposed in the inner space of the body <NUM>. The main board means a PCB.

The controller <NUM> may control autonomous traveling of the moving robot <NUM>. The controller <NUM> may control driving of the traveling unit <NUM> based on a signal received from the input unit <NUM>. The controller <NUM> may control driving of the traveling unit <NUM> based on a signal received from the sensing unit <NUM>.

Previously, an example of setting the border of the traveling area of the moving robot <NUM> using a wire has been described, but the present invention is not limited thereto, and various wireless methods may be used. For example, the moving robot <NUM> may determine the current location and the traveling area based on the location information received from the traveling area or a location information transmitter installed around it, a GPS signal using a GPS satellite, or location information received from other terminals. The location information signal may be a GPS signal, an ultrasonic signal, an infrared signal, an electromagnetic signal, or a UWB (Ultra Wide Band) signal.

The moving robot <NUM> collects location information in order to set the traveling area and the border. The moving robot <NUM> collects location information by setting a point in an area as a reference location. The moving robot <NUM> may set any one of an initial starting point, a location of a charging station, and a location information transmitter as a reference location. The moving robot <NUM> may set a reference position, generate coordinates and a map for an area based on the reference position, and store it in the storage <NUM>. When a map for a traveling area is generated, the moving robot <NUM> may move based on the stored map. The map for the traveling area may be an environment map including information such as borders and obstacles for the traveling area.

The map for the traveling area stored in the storage <NUM> is data in which predetermined information of the traveling area is stored in a predetermined format, at least one of a navigation map used for traveling, and a SLAM (Simultaneous localization and mapping) map used for location recognition, an obstacle recognition map in which information on the recognized obstacle is recorded, or a combination of one or more maps may be used.

In addition, a map of the traveling area stored in the storage <NUM> may be expressed in various forms, such as a grid map and a topology map. For example, the grid map may be a map in which the surrounding space is represented by cells or grids (hereinafter, referred to as grids) of the same size and the presence or absence of objects in each grid. For example, a white grid may represent an area without an object, and a black grid may represent an area with the object. Therefore, the line connecting the black grid may represent a border line (wall, obstacle, etc.) of a certain space. Depending on the embodiment, a predicted risk area may be set for stable traveling. For example, the predicted risk area may be one or more grids adjacent to a border line (wall, obstacle, etc.). Meanwhile, the predicted risk area may be represented by a gray grid. The color of the grid may be changed through image processing.

The size of the grid may be set differently. For example, if both the length and width of the moving robot <NUM> are <NUM>, the length and width of the grid may be set to <NUM>. In this case, the moving robot <NUM> may be positioned when the <NUM> by <NUM> grid is an area of an empty space. The length and width of the grid may be set to <NUM>. In this case, the moving robot <NUM> may be positioned when the <NUM> by <NUM> grid is an area of an empty space. Alternatively, the size of the grid may be set based on the operation unit <NUM> such as the blade <NUM> of the moving robot <NUM>.

According to an embodiment, a cost representing predetermined information may be assigned to each grid. For example, a relatively high cost is given to a grid corresponding to the border line, and the controller <NUM> may control travelling based on the cost. The moving robot <NUM> according to an embodiment of the present invention may use a gradient method-based route planning using the concept of travelling cost to generate an optimal route from a starting point to a target point.

Hereinafter, controlling travel of the moving robot <NUM> will be described in detail with reference to FIGS. <NUM> to 19c.

<NUM> is a flowchart of a method for controlling a moving robot according to an embodiment of the present invention, and <FIG> are views referenced for description of a method for controlling a moving robot according to an embodiment of the present invention.

The moving robot <NUM> according to an aspect of the present invention may minimize lawn damage and improve efficiency by minimizing visits to the same point. To this end, the controller <NUM> according to an aspect of the present invention may minimize visits to the same point by reflecting the cost of a route that has passed during travelling in a later route plan.

Referring to FIG. <NUM>, the controller <NUM> may assign a cost to an environment of the travelling area. For example, the controller <NUM> may set cost information on grids of a grid map corresponding to the travelling area based on environment information of the travelling area (S810).

<FIG> illustrates a grid map <NUM>, a black grid indicates a border line (wall, obstacle, etc.) of a travelling area, and a white grid indicates the travelling area in which the moving robot <NUM> may travel.

In addition, costs based on environmental information, such as whether an obstacle exists, the type of the obstacle, the size of the obstacle, and whether the obstacle is adjacent, may be assigned to the grids of the grid map <NUM>.

In addition, a cost value may be set based on environmental information such as whether an obstacle exists, the type of the obstacle, the size of the obstacle, and whether the obstacle is adjacent.

For example, a first value may be set for a risk area <NUM> corresponding to a fixed object or a border line, and a second value lower than the first value may be set for a predicted risk area <NUM> adjacent to the risk area <NUM>. Depending on the embodiment, the cost given to the grid included in the risk area <NUM> may be set differently according to the type of obstacle and the size of the obstacle, and the cost given to the grid included in the predicted risk area <NUM> may also be set differently according to the type, size, and distance of adjacent obstacles.

The cost may be set to zero in the grid of a general area <NUM> without obstacles. Alternatively, a relatively low cost may be set on the grid of the general area <NUM> without obstacles based on the distance to the obstacle.

The cost information of each grid may mean a possibility that the moving robot <NUM> avoids or collides with an obstacle, or a possibility of moving adjacent to an obstacle when the corresponding grid is moved. In the grid <NUM> where the cost is zero or the cost is low, the moving robot <NUM> may be far away from an obstacle such as a fixed object or a moving object.

Meanwhile, the grid may be displayed in a different display state according to environmental information and cost of the grid in the grid map <NUM>. For example, the color and chroma of the risk area <NUM>, the risk prediction area <NUM>, and the general area <NUM> may be displayed differently. Accordingly, the cost of the grid map <NUM> may be intuitively displayed in the form of a contour line.

The moving robot <NUM> according to an embodiment of the present invention may use a gradient method-based route planning using the concept of travelling cost to generate an optimal route from a starting point to a target point, and the cost set based on the environmental information may be an intrinsic cost.

The intrinsic cost is a cost representing the characteristics of an area set in relation to the environment, and may be given to an area that obstructs travelling, such as a fixed obstacle. Intrinsic cost may be given according to the presence or absence of an obstacle, and may be given in proportion to the distance between each grid and the obstacle, and the travelling risk of the corresponding grid space.

In the example of <FIG>, the intrinsic cost is set to '<NUM>' for the grids of the risk area <NUM> corresponding to the fixed obstacle, and is set to '<NUM>' lower than '<NUM>' for the grids of the predicted risk area <NUM> adjacent to the risk area <NUM>.

A relatively high cost is set for the fixed obstacle so that the moving robot <NUM> does not collide with the fixed obstacle, and a certain amount of cost is set for the adjacent area of the fixed obstacle so as not to approach the fixed obstacle as much as possible.

Meanwhile, the gradient method-based route planning may calculate the minimum cost including adjacent cost and establish a route.

Adjacent cost is a route cost related to movement between two points, and is a virtual cost to create a route from a starting point to an arrival point. In most cases, the cost of the adjacent cost will be proportional to the distance traveled.

The adjacent cost from the starting point <NUM> to the arrival point <NUM> is shown on the grid map <NUM> of <FIG>.

Adjacent cost is the cost of the distance incurred to travel from one starting point <NUM> grid to the arrival point <NUM> grid. In the example of <FIG>, '<NUM>' is set as the inter-grid movement cost. For example, the adjacent cost from the grids <NUM> and <NUM> adjacent to the arrival point <NUM> to the arrival point <NUM> is '<NUM>'. In addition, the adjacent cost of the grid <NUM> adjacent to the grid <NUM> adjacent to the arrival point <NUM>, that is, the grid <NUM> separated by one grid from the arrival point <NUM>, is '<NUM>'. In the same way, the adjacent cost of the starting point <NUM> and the grids <NUM>, <NUM>, <NUM> near the starting point <NUM> may be determined.

Meanwhile, a value other than '<NUM>' illustrated in <FIG> may be set for the inter-grid movement cost. In addition, the arrival point <NUM> is set to '<NUM>' and the adjacent cost increases by '<NUM>' per grid in <FIG>, but the starting point <NUM> may be set to '<NUM>' and the adjacent cost increases by '<NUM>' per grid.

Meanwhile, the cost set based on the environmental information of the travelling area may be a sum of the adjacent cost and the intrinsic cost. When establishing a route plan for the movement of the moving robot <NUM> from the starting point <NUM> to the arrival point <NUM>, the controller <NUM> may establish the route of the least cost by comparing the sum of the adjacent cost and intrinsic cost from the starting point <NUM> to the arrival point <NUM> for each expected route.

<FIG> is an illustration of a grid map <NUM> including an environmental cost in which the intrinsic cost of <FIG> and the adjacent cost of <FIG> are summed, and the starting point <NUM> and the arrival point <NUM> of <FIG> is the same as the starting point <NUM> and the arrival point <NUM>.

Referring to <FIG>, it may be seen that the environmental cost assigned to the grids <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and <NUM> in <FIG> is the sum of the adjacent cost assigned to the grids <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) in <FIG> and the intrinsic cost illustrated in <FIG>.

<FIG> illustrates a grid map <NUM> in which a route <NUM> of a minimum cost established based on a gradient method is displayed.

Referring to <FIG>, the controller <NUM> may establish a route <NUM> of minimum cost from a starting point <NUM> to an arrival point <NUM> based on the environmental cost of the grids.

The moving robot <NUM> may travel based on cost information (S820). The controller <NUM> may control the travelling unit <NUM> to move according to the minimum cost route <NUM> (S820).

Meanwhile, the controller <NUM> may calculate a minimum cost as an environmental cost, establish a route plan, and control the traveling of the moving robot <NUM>. At this time, if the starting point and arrival point are the same, they will always drive the same route. Since intrinsic cost is given to fixed obstacles, there is almost no change, and adjacent costs are the same as long as they move between the same points. Therefore, if the starting point and arrival point are the same, there is only one route <NUM> of least cost, and it continues to travel in the only least cost route <NUM> Accordingly, the area of the least cost route <NUM> has a greater possibility of lawn damage compared to areas corresponding to other grids.

According to an embodiment of the present invention, a cost is given even when mowing a lawn or moving a corresponding area, so that a previously passed moving route is considered in the route plan when establishing a route plan, thereby minimizing revisiting the same area.

Meanwhile, various maps such as the grid map <NUM> and map-related data may be stored in the storage <NUM>. Accordingly, the grid map <NUM> and cost information of grids included in the grid map <NUM> may be stored in the storage <NUM>.

The cost given to the passing route may be referred to as a stay cost, and the controller <NUM> may increase the stay cost of the grid corresponding to the route passed during travelling and store it in the storage <NUM>(S830).

The stay cost may be separately stored in a stay map composed of grids corresponding to the travelling area and stay costs of each grid. When establishing a route plan, the controller <NUM> may call stay costs of the stay map and add them to other environmental costs.

Alternatively, the intrinsic cost and the stay cost may be stored on the grid map. In addition, when the starting point and the arrival point are determined and the adjacent cost is calculated, the intrinsic cost and the stay cost are summed with the adjacent cost, and the total cost may be stored in association with the grid map.

The stay cost is accumulated from the initial environment map generation, and if the travelling to which the initial stay cost is assigned is the first travelling, the controller <NUM> may plan a route based on the stay cost accumulated from the first travelling when planning the route from the next second travelling (S840). Accordingly, revisiting the same area may be minimized without additional hardware such as wires.

<FIG> illustrates a process in which the cost of the grid map <NUM> is changed according to the movement of the moving robot <NUM>.

Referring to <FIG>, the cost assigned to the route <NUM> that has passed increases by a set increase amount as the moving robot <NUM> moves. The amount of increase is a cost that increases each time the moving robot <NUM> passes.

When the moving robot <NUM> passes once, the increase in the stay cost may be determined based on the adjacent cost.

For example, the controller <NUM> may increase the stay cost equal to a difference value of adjacent costs between two adjacent grids during one travelling. That is, when passing once, the increase in stay cost may be equal to the increase in adjacent cost per grid. Accordingly, the cost related to 'movement' of the moving robot <NUM> may be equally managed.

<FIG> illustrates an example in which the increase amount of stay cost is set to ' <NUM>' during one travelling, which is the same as the increase amount of adjacent cost T1'.

<FIG> illustrates a stay map <NUM> generated after the movement of the moving robot <NUM> is finished, and <FIG> illustrates a grid map <NUM> in which the total travelling cost changed after the movement of the moving robot <NUM> is finished is reflected.

Referring to <FIG>, the stay cost is given to the grids of the route <NUM> on which the moving robot <NUM> has moved among the grids included in the stay map <NUM> by '<NUM>'.

Referring to <FIG>, it may be seen that the total cost of the grids of the route <NUM> in which the moving robot <NUM> has moved increases by '<NUM>' as the stay cost increases by '<NUM>'.

Alternatively, the controller <NUM> may significantly increase the stay cost from the difference value of the adjacent cost of two adjacent grids during one travelling. That is, the increase in the stay cost once passed may be greater than the increase in the adjacent cost per grid. Accordingly, the cost of stay may be more reflected in the route planning.

According to an embodiment of the present invention, the controller <NUM> may generate a movement route based on cost information, control the travelling unit <NUM> to travel according to the generated movement route (S820), increase the stay cost of the grid corresponding to the passed route during the travelling and control the storage <NUM> to store the increased stay cost (S830).

In addition, the controller <NUM> may reflect the stay cost stored in the storage <NUM> in subsequent route planning establishment (S840 and S810).

The controller <NUM> may determine the minimum cost route based on cost information including the intrinsic cost and the stay cost.

In addition, the controller <NUM> may calculate a travelling cost by summing the intrinsic cost, the stay cost, and the adjacent cost for a distance that occurs when moving from the starting point to the arrival point, and generate the travel route as a route with the minimum travelling cost.

<FIG> illustrates a process of establishing a route plan reflecting the stay cost from the same starting point <NUM> to the arrival point <NUM> in the travelling cost state illustrated in <FIG>.

Referring to <FIG>, the total travelling cost in which the intrinsic cost, the adjacent cost, and the stay cost reflecting the travelling up to the previous round are added on the grid map <NUM> is illustrated.

The controller <NUM> may generate the minimum cost route <NUM> by using the total travelling cost including the stay cost. Accordingly, a route <NUM> different from the route <NUM> of the previous round is generated, and the route <NUM> of the previous round may not be visited repeatedly.

According to an embodiment, if there are a plurality of minimum cost paths, priority may be given to stay cost, and a route with low stay cost may be selected.

Meanwhile, after the moving robot <NUM> travels the second time along the route <NUM> selected in <FIG>, the increase in stay cost according to the result of the second travel may be reflected in the stay map.

<FIG> illustrates a stay map <NUM> including a stay cost according to the first and second travellings.

Referring to <FIG>, the stay map <NUM> may reflect the stay cost <NUM> according to the first travelling and the stay cost <NUM> according to the second travelling. In this way, the stay cost according to the traveling of the moving robot <NUM> may be accumulated and updated in the stay map <NUM>.

According to an embodiment of the present invention, the stay cost is accumulated. If the cumulative value of the stay cost is too large, it may be greater than the cost set for risk avoidance, and there may be situations in which the moving robot enter or come close to the risk area. Accordingly, the controller <NUM> may reset the stay cost according to a certain condition.

The controller <NUM> may initialize all stay costs when the stay cost of any one grid becomes more than the minimum value of the intrinsic cost.

In some cases, a first value may be set for the risk area <NUM> corresponding to the fixed object or the border line, and a second value lower than the first value may be set for the predicted risk area <NUM> adjacent to the risk area <NUM>. In this case, the controller <NUM> may initialize all stay costs when the stay cost of any one of the grids is equal to or greater than the second value.

According to an exemplary embodiment of the present invention, when the stay cost of one grid is equal to or greater than the intrinsic cost of an adjacent grid, all stay costs may be initialized. Alternatively, if the predicted risk area <NUM> may perform a sufficient role as a buffer area, all stay costs may be initialized when the total stay cost exceeds the second value.

Referring to <FIG>, a grid map <NUM> in which the intrinsic cost and the stay cost are summed is illustrated. In the example of <FIG>, a first value (eg, '<NUM>') is assigned as a cost to the grids of the risk area <NUM> corresponding to the fixed obstacle, and a second value (eg, ' <NUM>') lower than the first value is assigned as a cost to the grids of the predicted risk area <NUM> adjacent to the risk area <NUM>.

Referring to <FIG>, when the stay cost of one grid <NUM> is equal to or greater than the minimum value (eg, <NUM>) of the intrinsic cost, all stay costs may be initialized to zero.

Alternatively, when all the stay costs are equal to or greater than the second value (eg, '<NUM>'), all stay costs may be set to be initialized to zero.

According to an embodiment of the present invention, the stay cost reflecting the travelling history of the moving robot <NUM> may be additionally included in the cost in cost-based route planning.

That is, the stay cost is an additional cost given to the area where the moving robot <NUM> stayed, and by planning the route including the stay cost when planning the route, it is possible to minimize the movement of the same area in the same area and reduce damage to the lawn.

<FIG> are diagrams referenced for explanation of shortest route plan that minimizes revisiting.

First the first route <NUM> may be selected from the first starting point <NUM> to the arrival point <NUM> according to the shortest route plan in the overall cost state as shown in <FIG>, and the moving robot <NUM> may travel from the first starting point <NUM> to the arrival point <NUM> along the first route <NUM> in the first travelling, and reflect this in the stay cost.

If the second travelling is to move from the second starting point <NUM> to the arrival point <NUM>, the second route <NUM> may be selected as shown in <FIG> according to the shortest distance route plan.

The first and second travelling s differ from the starting point, and there is a difference in some sections <NUM> from the second starting point <NUM>. However, since the arrival point <NUM> for the first and second travelling is the same, the first route <NUM> and the second route <NUM> may include the same section <NUM>. Therefore, the same section <NUM> is visited repeatedly.

According to an embodiment of the present invention, revisiting the same area may be minimized by adding a stay cost reflecting the first travelling to the cost to establish a route.

Referring to <FIG>, the stay cost is reflected in the grids <NUM> and <NUM> where the moving robot <NUM> stayed during the first travelling. Accordingly, when the second travelling is to move from the second starting point <NUM> to the arrival point <NUM>, if a route plan is established at the minimum cost, the third route <NUM> may be selected.

Referring to <FIG> and <FIG>, the third route <NUM> does not overlap with the previous route <NUM> in most of the sections <NUM> and <NUM>, and the redundant visit section <NUM> may be minimized.

According to an embodiment of the present invention, a route minimizing revisiting may be established based on the location of the moving robot <NUM> and the location of a destination such as a charging station and a route at the time of previous travelling. And the moving robot traveled based on the route minimizing revisiting. Accordingly, it is possible to effectively establish a route according to the situation.

According to an embodiment of the present invention, it may be applied to both a wire method and a wireless method, and there is an advantage that an additional wire installation is not required.

The moving robot and a method of controlling the moving robot according to the present invention are not limited to the configuration and method of the embodiments described as described above, but the embodiments may be configured by selectively combining all or part of each of the embodiments so that various modifications may be made.

Likewise, while depicting the actions in the drawings in a specific order, it should not be understood that such actions should be performed in that particular order or sequential order shown, or that all illustrated actions should be performed in order to obtain a desired result. In certain cases, multitasking and parallel processing may be advantageous.

Claim 1:
A moving robot (<NUM>) comprising:
a body (<NUM>) defining an exterior;
a travelling unit (<NUM>) configured to move the body against a travelling surface of a travelling area;
a storage (<NUM>) configured to store a grid map corresponding to a travelling area and cost information of grids included in the grid map; and
a controller (<NUM>) configured to generate a movement route based on the cost information, control the travelling unit to move the body according to the generated movement route,
characterized in that the controller is further configured to increase a stay cost of a grid corresponding to a route that has passed during the movement of the body and control the storage to store the increased stay cost.