Abstract:
This mobile unit suppresses lateral vibration produced when the mobile unit passes over a step. A stabilizer according to the present invention predicts contact timing at which the mobile unit makes contact with a step, which may be a bump or pit, using sensor information or map information, shifts the center of gravity of the mobile unit laterally by controlling actuators, and shits the center of gravity laterally for the next step after detecting that the mobile unit has passed over the previous step.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    (1) Field of the Invention 
         [0002]    The present invention relates to a mobile robot with a stabilizer for preventing lateral vibration produced when the mobile robot passes over steps and a travelling method for stabilizing the mobile robot. 
         [0003]    (2) Description of the Related Art 
         [0004]    Conventionally, mobile robots that travel over steps on a road surface in various travel manners have been proposed (e.g., JP-A No. 2009-55682 and JP-A No. 2007-168602). 
         [0005]    When there is a bump on a floor surface, an inverted mobile unit disclosed in JP-A No. 2009-55682 inclines itself forward while maintaining contact between its rotary unit and the bump to acquire the torque required to pass over the step through inversion control. 
         [0006]    JP-A No. 2007-168602 discloses a two-wheel travelling carriage that detects steps. The carriage is configured not to change the travel direction when the detected step has a height equal to or less than 10% of the radius of the wheels of the carriage, but to travel over the step with both wheels making contact with the step when the detected step has a height from 10% to 40% of the radius of the wheels. 
       SUMMARY OF THE INVENTION 
       [0007]    The related art focuses on production of torque required to pass over steps; however, toppling caused by lateral vibration produced when a mobile unit travels over the step and deviation of the travel direction derived from the lateral vibration are not considered. 
         [0008]    Specifically, when a mobile unit, which has a high center of gravity and right and left wheels with a short distance therebetween, diagonally travels over a step, the mobile unit may topple due to impact from the step or may change the travel direction and deviate from a route due to lateral vibration. 
         [0009]    For example, according to the technique in JP-A No. 2009-55682, when the mobile unit traveling so fast climbs up to a sidewalk or the like, the wheels make contact with the step one after another. In this case, the mobile unit inclines to move the center of gravity above the bump ahead of the wheels. The wheels in this state can obtain a torque required to easily climb over the step, but the mobile unit may topple over due to the lack of consideration of the impact produced by the contact between the step and wheels or may largely deviate from the route due to lateral vibration. 
         [0010]    Even the technique in JP-A No. 2007-168602 may bring about toppling of the travelling carriage due to the lack of consideration of the impact produced by the contact between the step and wheels or significant deviation from the route due to lateral vibration. 
         [0011]    Furthermore, when the mobile unit and travelling carriage in JP-A No. 2009-55682 and JP-A No. 2007-168602 move down a step, such as into a groove and pit, on a wheel-by-wheel basis, the mobile unit and travelling carriage may also topple due to the lack of consideration of the moment involving the drop of one of the wheels or may deviate from the route due to lateral vibration. 
         [0012]    The present invention has been made in view of the above circumstances and provides a mobile robot capable of mitigating impact from steps to prevent the mobile robot from toppling over and from changing the travel direction and deviating from the route due to lateral vibration. 
         [0013]    In a mobile robot including a plurality of wheels that are suspended by a main body of the mobile robot and travel on a floor surface, a drive mechanism that rotates the wheels, and a drive controller that controls the drive mechanism, the mobile robot includes actuators that are provided to adjust the distance between the mobile robot and the wheels, a suspension control unit that controls the actuators, a sensor that detects steps on the floor surface, and a step prediction unit that predicts the time at which the step makes contact with the wheels from the sensor and the speed of the mobile unit. The suspension control unit controls suspensions to shift the center of gravity in a direction in which impact produced by contact between a step on the floor surface and one of the wheels is mitigated. 
         [0014]    In addition, when the mobile robot moves down to a pit with one wheel at a time, the suspension control unit shifts the center of gravity in a direction opposite to the other wheel that next moves down the pit in advance by controlling the actuators. 
         [0015]    In addition, when a step detecting unit detecting the movement of the wheels over bumps and pits detects that the wheels have passed over a bump or pit, the suspension control unit shifts the center of gravity back to the center of the mobile robot. 
         [0016]    In addition, the suspension control unit adjusts an amount of center of gravity shift of the mobile robot according to an interval of time, predicted by the step prediction unit, at which the right and left wheels make contact with a bump or pit. 
         [0017]    Furthermore, a travelling method for a mobile robot including a step detecting sensor that detects steps includes the steps of detecting the direction to a step and the height of the step obtained by the step detecting sensor, measuring the distance between the step and the mobile robot, calculating contact timing at which the mobile robot makes contact with the step based on a target travelling speed, shifting the center of gravity to the side of a wheel that makes contact with the step first by controlling suspensions upon contact with the step, shifting the center of gravity to the side of the wheel that makes contact with the step first until the wheel passes over the step and then the other wheel makes contact with the step, and shifting the center of gravity back to the center of the mobile robot upon detection that both wheels have passed over the step. 
         [0018]    In addition, the height of and direction to the step are obtained from map information. 
         [0019]    According to the present invention, a mobile robot can be provided, which is capable of mitigating impact from steps to prevent the mobile robot from toppling over and from changing the travel direction and deviating from the route due to lateral vibration. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0020]    Embodiments of the present invention will be described in detail based on the following figures, wherein: 
           [0021]      FIG. 1  depicts the motion of a mobile robot when it passes over a step; 
           [0022]      FIG. 2  depicts the motion of a mobile robot according to an embodiment of the present invention; 
           [0023]      FIGS. 3A and 3B  are diagrams showing the mechanism of the mobile robot according to the embodiment of the invention; 
           [0024]      FIG. 4  is a block diagram showing the system configuration of the mobile robot according to the embodiment of the invention; 
           [0025]      FIG. 5  is a flow chart illustrating route planning by the mobile robot; 
           [0026]      FIG. 6  is a flow chart illustrating step prediction by the mobile robot according to the embodiment of the invention; 
           [0027]      FIG. 7  is a flow chart illustrating position control of the center of gravity of the mobile robot according to the embodiment of the invention; 
           [0028]      FIG. 8  is a flow chart illustrating calculation of an amount of CG shift A of the mobile robot according to the embodiment of the invention; 
           [0029]      FIG. 9  depicts the form of function F used in the mobile robot according to the embodiment of the invention; and 
           [0030]      FIG. 10  is a graph showing the effect of the embodiment of the invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0031]    The inventors of the present invention have been developing mobile robots travelling in the outdoors, and, more specifically speaking, have performed a study aimed at developing personal EVs (Electric Vehicles). The envisioned EV is, for example, a tricycle-like EV that is longer in the travel direction, has two front wheels and one rear wheel and has a relatively high center of gravity. 
         [0032]    Because such a mobile robot is expected to travel on roadways and sidewalks, development of the mobile robot needs to be done under the assumption that it will encounter a step between a roadway and a sidewalk. A possible accident occurring during travel is the toppling of the mobile robot at a step. 
         [0033]    The motion of the mobile robot passing over the step will be briefly described with  FIG. 1 . 
         [0034]      FIG. 1  depicts the motion of the mobile robot passing over the step. 
         [0035]    In  FIG. 1 , a mobile robot A tries to move up a step to a sidewalk through a route indicated by a dotted line B 1 , but cannot, because the mobile robot A does not have enough capability to pass over the step (x). In a route indicated by a dashed dotted line B 2 , a force from the step of the sidewalk produces a turning force in the mobile robot A, resulting in route deviation toward the turning direction while the mobile robot A is passing over the step (x). 
         [0036]    On the other hand, the mobile robot A can pass over the step between the roadway and sidewalk, as indicated by a solid line B 3 , by negotiating the step at a large entrance angle (o). However, the mobile robot A needs to curve largely on the roadway side to form the large entrance angle, and then moves up to the sidewalk. 
         [0037]    As indicated by the solid line B 3  in  FIG. 1 , the mobile robot A that curves largely so as to go beyond the centerline of the roadway exposes itself to considerable safety risk. If the mobile robot is configured to negotiate the step at a small entrance angle rather than at a large entrance angle, the mobile robot developed with a relatively high center of gravity may sway in a lateral direction and topple over. 
         [0038]    In order to solve the problem, the inventors of the present invention have contrived to mitigate the impact by shifting the center of gravity of the mobile robot according to the entrance angle, height of the step, and entering speed when the mobile robot moves up and down the step. 
       Embodiment 1 
       [0039]    An embodiment of the present invention will be described by referring to  FIG. 2 . 
         [0040]      FIG. 2  provides a brief overview of the embodiment of the invention. 
         [0041]    In  FIG. 2 , the mobile robot A travelling in the direction indicated by an arrow detects the entrance angle with respect to an approaching step of the sidewalk, the position and height of the step and entering speed in advance, and then shifts the center of gravity according to the position and height. The center of gravity is shifted opposite to the direction in which the mobile robot inclines when it climbs up the step. 
         [0042]    Specifically, as shown in  FIG. 2 , the mobile robot A having the center of gravity at its center, namely being in a normal state, travels in the direction indicated by the arrow. Then, the mobile robot Al that has detected the presence of the step shifts the center of gravity opposite to the direction in which the mobile robot Al inclines to climb up the step. The mobile robot A 2  on the step immediately shifts the center of gravity in the reverse direction and shifts the center of gravity back to the center of the mobile robot A 2  after both wheels have climbed up the step. 
         [0043]    The structure of the embodiment of the present invention will be described below by referring to drawings. 
         [0044]      FIGS. 3A and 3B  are schematic diagrams showing the mechanism of the mobile robot according to the embodiment of the invention:  FIG. 3A  is a side view; and  FIG. 3B  is a front view. 
         [0045]      FIG. 4  is a block diagram showing the system configuration of the mobile robot according to the embodiment of the invention. 
         [0046]    Note that the term “step” in this description of the embodiment includes steps in the negative direction, such as grooves and pits. 
         [0047]    In  FIG. 3A , a mobile unit  1  includes a travel mechanism  2 , as enclosed by a dotted line, at the bottom of a main body (housing)  10  of the mobile unit  1 . This travel mechanism  2  is controlled by a travel mechanism controller  3 . At approximately the same height as the travel mechanism controller  3 , an environmental sensor  8  is provided that measures the distance between the travel mechanism controller  3  and objects around the mobile unit  1 . A stabilizer  4  enclosed by a dotted line is configured to stabilize the travelling motion of the main body  10 . 
         [0048]      FIG. 3B  shows that the travel mechanism  2  is provided with driving wheels  6  on the opposite sides of the front part of the mobile unit  1 . The travel mechanism  2  is made up with motors  5  whose operations are controlled by electrical signals from the travel mechanism controller  3  and the driving wheels  6  connected to the motors  5 . In addition, the travel mechanism  2  is provided with a driven wheel  7  that is located at the center in a rear part of the mobile unit  1  and can passively change the direction. 
         [0049]    A step detecting sensor  9  attached to the stabilizer  4  includes a laser scanner for detecting steps on a road surface. Actuators  11  change the distance between the driving wheels  6  and main body  10 . Each of the actuators  11  and each of the driving wheels  6  are connected in series with a spring  12 . Step passing sensors  13  measure the length of the springs  12 . A stabilizing controller  14  and inclination sensor  15  are used to control the length of the actuators  11 . The step detecting sensor  9 , actuators  11 , springs  12 , step passing sensors  13 , stabilizing controller  14 , and inclination sensor  15  make up the stabilizer  4 . 
         [0050]    By referring to  FIG. 4 , the system configuration will be described. 
         [0051]    In  FIG. 4 , the travel mechanism controller  3  connected with the environmental sensor  8 , stabilizer  4  and motor  5  serves as a computing machine. The travel mechanism controller  3  includes a location awareness unit  20 , route planning unit  21 , motor control unit  22 , which are implemented in software. The stabilizer  4  includes the actuator  11 , step detecting sensor  9 , step passing sensor  13 , stabilizing controller  14  and inclination sensor  15 . 
         [0052]    The stabilizing controller  14  includes a step prediction unit  31 , step detecting unit  32  and suspension control unit  33 , which are implemented in software, and serves as a computing machine. The mobile unit  1  is connected to a map information database (DB)  40  that is placed outside the mobile unit  1 . This map information database  40  is connected to the stabilizer  4  and travel mechanism controller  3  via a map information I/O unit  30  implemented in software in the mobile unit  1 . 
         [0053]    Processing and operations performed in the travel mechanism controller  3  will be described. 
         [0054]    The location awareness unit  20  obtains distance information about the distance between the mobile unit  1  and surrounding objects from the environmental sensor  8  and map information from the map information I/O unit  30  at a constant frequency. Upon receipt of the map information, the location awareness unit  20  compares the obtained map information with the distance information about the distance between the mobile unit  1  and a surrounding object to calculate the present location of the mobile unit  1  on a map. An area of the map information is divided into grid segments each having a discrete field for storing a pass/fail flag, height, and step determination flag. Based on the present location on the map calculated at a constant frequency and a target destination stored in the route planning unit  21 , the route planning unit  21  calculates a motor control target value used to move the mobile unit  1  to the target destination and sends the motor control target value to the motor control unit  22 . 
         [0055]    The calculation of the route planning will be described with reference to the flow chart in  FIG. 5 . 
         [0056]    At S 1 , the route planning unit  21  determines the route from the present location to the target value using an algorithm (route searching technique) such as A* (A-star). 
         [0057]    At S 2 , the route planning unit  21  calculates the length of the route. 
         [0058]    At S 3 , the route planning unit  21  uses preset adjustable speed and maximum speed to form a trapezoidal speed pattern in order to cover the entire route length obtained at S 2 . 
         [0059]    At S 4 , the route planning unit  21  outputs motor control target values to the motor control unit  22  over time. The motor control unit  22  drives the motors  5  in response to the motor control target values. 
         [0060]    A description will be made about the internal processing of the stabilizer  4 . The processing of the stabilizer  4  includes three processes: step prediction; position control of the center of gravity of the mobile unit  1 ; and passed step detection. 
         [0061]    First of all, step prediction will be described with reference to the flow chart in  FIG. 6 . 
         [0062]    The step prediction process is executed at a preset constant frequency. 
         [0063]    At S 10 , the step prediction unit  31  obtains the route and speed plan of the mobile unit  1  from the route planning unit  21 . 
         [0064]    Then, at S 11 , the step prediction unit  31  obtains present location information from the location awareness unit  20 . 
         [0065]    At S 12 , the step prediction unit  31  obtains map information from the map information I/O unit  30 . 
         [0066]    At S 13 , the step prediction unit  31  obtains the time at which the mobile unit  1  passed over the nearest step and the height of the step from the step detecting unit  32 . 
         [0067]    At S 14 , the step prediction unit  31  calculates the location of a step. More specifically, based on height data in the map information, the step prediction unit  31  extracts a grid segment in which the height of the road surface varies at a high rate, in the same manner as edge extraction used in image processing, with a Sobel filter, Laplacian filter, Prewitt filter or the like to identify the location of the step. 
         [0068]    At S 15 , the step prediction unit  31  calculates the times T 1 R and T 1 L, which are the times the right and left wheels make contact with the step, respectively. More specifically, the step prediction unit  31  compares the obtained route plan with the calculated step location and identifies the nearest step on the route for the respective right and left wheels. Then, the times at which the respective right and left wheels make contact with the step are calculated based on the obtained speed plan, resulting in step contact times T 1 R and T 1 L. The heights H 1 R and H 1 L of the step to make contact are estimated from the map information. 
         [0069]    At S 16 , comparisons are made between the obtained information about the time at which the mobile unit  1  passed over the step and T 1 R and T 1 L and between the obtained height information about the step over which the mobile unit  1  passed and H 1 R and H 1 L. If the respective differences are equal to or less than a predetermined value, the step used for the calculation is regarded as the step that the mobile unit  1  has already passed over and the processing starts again from the calculation of the location of a step other than the step at S 14 . 
         [0070]    On the other hand, at S 17 , the step prediction unit  31  receives an image from the step detecting sensor  9  and subjects the image to image processing to obtain 3D data in order to identify the location of a step. 
         [0071]    At S 18 , the step prediction unit  31  calculates the times TR and TL at which the right and left wheels make contact with the step, respectively. More specifically, the step prediction unit  31  compares the obtained route plan with the calculated step location to identify the step on the route nearest to the right and left wheels. 
         [0072]    Then, the times at which the right and left wheels make contact with the step are calculated based on the obtained speed plan to determine times T 2 R and T 2 L. In addition, the heights H 2 R and H 2 L of the step that the right and left wheels will next make contact with are derived from the image supplied from the step detecting sensor  9  through image processing. 
         [0073]    At S 19 , the step prediction unit  31  makes comparisons between T 1 R and T 2 R and between T 1 L and T 2 L to select earlier contact times as TR and TL. The step prediction unit  31  also selects the step heights HR and HL corresponding to the selected TR and TL from the step heights H 1 R, H 2 R, H 1 L and H 2 L. Through the above-described processing, the step prediction unit  31  can predict when the right and left wheels make contact with the step and how high the step is. 
         [0074]    Secondly, passed step detection will be described. The step detecting unit  32  is connected with the step passing sensor  13  and step prediction unit  31 . The step detecting unit  32  filters information about the length of the spring  12  obtained from the step passing sensor  13  using a notch filter, and then differentiates the filtered information to obtain a value. If the obtained value is a certain value or more, it is determined that the wheel has passed over the step. The obtained value also provides information about the height of the step over which the wheel has passed. 
         [0075]    With reference to the flow chart in  FIG. 7 , a description will be made about position control of the center of gravity of the mobile unit  1 . 
         [0076]    At S 20 , the suspension control unit  33  shown in  FIG. 4  obtains, from the step prediction unit  31 , the times TR and TL at which the right and left wheels make contact with a step and the heights HR and HL of the step. 
         [0077]    At S 21 , the suspension control unit  33  calculates an amount of CG (center of gravity) shift A. 
         [0078]    The specific calculation of the amount of CG shift A will be described with reference to the flow chart in  FIG. 8 . 
         [0079]    At S 30 , the suspension control unit  33  compares TR with TL to determine which of TR or TL makes contact with the step first. If the right wheel makes contact with the step first (TR&lt;TL), a provisional amount of CG shift A′ is determined by Expression 1 at S 31 . 
         [0000]        A′=−K 1· HR   [Expression ]
 
         [0080]    If the left wheel makes contact with the step first (TL&lt;TR), a provisional amount of CG shift A′ is determined by Expression 2 at S 32 . 
         [0000]        A′=K 1 ·HL   [Expression ]
 
         [0081]    K 1  in Expressions 1 and 2 denotes a positive value of scalar quantity. Based on two conditions: the moment produced by a driving wheel  6  passing over the step is proportional to the distance between the driving wheel  6  making contact with the step and the center of gravity of the mobile unit  1 ; and the mobile unit  1  has more resistance to impact from an unexpected step when the amount of CG shift is closer to 0, it is preferable to shift the center of gravity by only a necessary distance according to the predicted step. 
         [0082]    At S 33 , an amount of CG shift A is determined by Expression 3. 
         [0000]        A=A′·K 2  [Expression 3]
 
         [0000]        K 2 =F ( TL−TR )  [Expression 4]
 
         [0083]    K 2  is a result of function F with TL−TR passed as an argument in Expression 4. 
         [0084]    The form of function F is designed so that, as shown in  FIG. 9 , K 2  starts from an origin point and increases in proportion with the absolute value of TL−TR, but is saturated in 1 when the absolute value of TL−TR reaches and exceeds a certain value. This is because there is no need to limit the amount of CG shift A when TL−TR is greater than the convergence time of lateral vibration in the mobile unit  1 . 
         [0085]    Through the above-described processing, the amount of CG shift A is determined. 
         [0086]    On the other hand, at S 22  in  FIG. 7 , the suspension control unit  33  obtains an inclination angle e about Y-axis and inclination angular velocity dθ about Y-axis of the mobile unit  1  from the inclination sensor  15 . At S 23 , the suspension control unit  33  calculates an amount of CG shift B by Expression 5. 
         [0000]        B=Q 1 ·θ+Q 2 ·dθ   [Expression 5]
 
         [0087]    Q 1  and Q 2  denote scalar quantities, which have been previously designed. At S 24 , the suspension control unit  33  calculates the difference L in length between actuators used to shift the position of the center of gravity by Expression 6. 
         [0000]    
       
         
           
             
               
                 
                   L 
                   = 
                   
                     
                       
                         ( 
                         
                           A 
                           + 
                           B 
                         
                         ) 
                       
                        
                       W 
                     
                     H 
                   
                 
               
               
                 
                   [ 
                   
                     Expression 
                      
                     
                         
                     
                      
                     6 
                   
                   ] 
                 
               
             
           
         
       
     
         [0088]    In Expression 6, W denotes the distance between the driving wheels  6  of the mobile unit  1 , and H denotes the distance between the center of the driving wheels  6  and the center of gravity in the mobile unit  1  in direction Z. 
         [0089]    At S 25 , the suspension control unit  33  controls the actuators  11  so that the actuators  11  have the difference L in length. 
         [0090]      FIG. 10  is a graph showing simulation results to verify the effect of the embodiment. 
         [0091]      FIG. 10  shows the results obtained when the center of gravity was shifted and when the center of gravity was not shifted. The graph indicates inclination angles θ, of the upper body, about Y-axis and travelling speed multiplied by 0.01. 
         [0092]    The difference between execution and inexecution of CG shift is in whether the inclination angle e about Y-axis is shifted toward the step with which the mobile unit  1  collides 1.1 seconds before the time the mobile unit  1  collides with the step. 
         [0093]    The two graphs showing the results in the cases with and without CG shift exhibit that shifting the center of gravity in advance reduces the fluctuation of the angle e at a peak by 12% when the mobile unit  1  passes over the step. 
         [0094]    The embodiment of the present invention has been described above; however, the present invention is not limited to the embodiment and can be modified in various ways for reasons of the intended use and implementation. 
         [0095]    For example, although the stabilizer  4  is provided with the map information I/O unit  30  as shown in  FIG. 4 , the stabilizer  4  can make step prediction using only the step detecting sensor  9 . The step prediction also can be made using only the map information without use of the step detecting sensor  9 . In addition, the map information database  40  is externally attached to the mobile unit  1 , but can be built in the mobile unit  1 . 
         [0096]    Furthermore, the step passing sensors  13  are mounted to measure the length of the springs  12 ; however, whether the wheels have passed the step or not can be detected based on accelerations.