WO2014178272A1 - 自律移動体 - Google Patents

自律移動体 Download PDF

Info

Publication number
WO2014178272A1
WO2014178272A1 PCT/JP2014/060499 JP2014060499W WO2014178272A1 WO 2014178272 A1 WO2014178272 A1 WO 2014178272A1 JP 2014060499 W JP2014060499 W JP 2014060499W WO 2014178272 A1 WO2014178272 A1 WO 2014178272A1
Authority
WO
WIPO (PCT)
Prior art keywords
travel
map
obstacle
unit
self
Prior art date
Application number
PCT/JP2014/060499
Other languages
English (en)
French (fr)
Inventor
中野剛
田中昌司
Original Assignee
村田機械株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 村田機械株式会社 filed Critical 村田機械株式会社
Priority to EP14791873.4A priority Critical patent/EP2993544B1/en
Priority to US14/888,261 priority patent/US9740209B2/en
Publication of WO2014178272A1 publication Critical patent/WO2014178272A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device

Definitions

  • the present invention relates to an autonomous mobile body having an environment map creation function, a route planning function, and an autonomous movement function.
  • an autonomous mobile body that moves autonomously in the surrounding environment.
  • an environment map that represents an area where an object (hereinafter referred to as an obstacle) in the moving space exists and an area where the object does not exist is required.
  • Various methods for acquiring such an environmental map have been devised.
  • SLAM Simultaneous Localization and Mapping
  • LRF laser range finder
  • Patent Document 1 proposes to divide the environment map into a plurality of partial maps so that such a circular route problem does not occur.
  • An object of the present invention is to solve the circular route problem of an environmental map in an autonomous mobile body.
  • the autonomous mobile body is a travel that includes a plurality of passage times and a collection of passage point data at the plurality of passage times while being manually traveled from a travel start position to a travel end position by an operator's manual operation.
  • a teaching travel mode for creating a schedule and a reproduction travel mode for autonomously traveling from the travel start position to the travel end position while reproducing the travel schedule are executed.
  • the autonomous mobile body includes a storage unit, a travel unit, a teaching data creation unit, a travel control unit, an obstacle information acquisition unit, a map creation unit, and a self-position estimation unit.
  • the storage unit stores data.
  • the traveling unit includes a plurality of actuators to which control amounts are input.
  • the teaching data creation unit creates a travel schedule and stores it in the storage unit.
  • the obstacle information acquisition unit acquires position information of obstacles existing around.
  • the self-position estimating unit estimates the self-position on the environment map.
  • the environmental map is created from the position information of the obstacle acquired by the obstacle information acquisition unit.
  • the map creation unit stores the obstacle position information in the storage unit as environmental map restoration data in correspondence with the time at which the obstacle position information is acquired.
  • the map creation unit reads the environment map restoration data corresponding to the estimated self-location and updates the environment map.
  • the travel control unit creates a control amount for the actuator from the travel command input by the operator and outputs the control amount to the travel unit.
  • the travel control unit creates a control amount of the actuator so as to travel along the travel schedule on the updated environmental map, and outputs it to the travel unit.
  • the environmental map restoration data is generated and stored in the storage unit.
  • the autonomous mobile body estimates the self-position and time on the environment map in the reproduction travel mode, while updating the environment map using the environment map restoration data corresponding to the estimated self-position and time, Driving according to the driving schedule. This facilitates operability, and even when the travel route is circular, the operator does not need to consider how to create an environmental map, so there is an annular route due to wheel slip and sensor measurement errors. The problem of not closing can be solved.
  • the teaching data creation unit can correspond to the time when the position information of the obstacle is acquired with the self-position and posture on the environmental map as passing point data for each predetermined time schedule. it can.
  • the autonomous mobile body can accurately perform autonomous traveling in the reproduction travel mode by reproducing the travel schedule created in the teaching mode based on the self-position and posture on the environment map.
  • the map creation unit reads out the environment map restoration data corresponding to the time ahead of the current passing point for each predetermined time schedule, and has already created based on the read environment map restoration data
  • the updated environmental map can be updated.
  • the environment map restoration data is read out based on the time estimated from the self-location on the environment map of the autonomous mobile body, and the environment map is updated based on this, the slip of the wheel and the sensor Self-position shift due to measurement error or the like can be corrected.
  • the autonomous mobile body further includes a map matching unit that creates a local map based on the position information of the obstacle acquired by the obstacle information acquisition unit and compares the updated environment map with the created local map.
  • the map creation unit can estimate passing point data in the travel schedule corresponding to the self-position and posture on the environment map and the self-position on the environment map according to the comparison result of the map matching unit.
  • the autonomous mobile body can correct the self position by estimating the passing point data in the travel schedule based on the estimated self position.
  • the map creation unit is an area that has already been passed through the environment map for each predetermined time schedule and that is a certain distance away from the estimated self position (x, y, ⁇ ).
  • the environment map can be deleted.
  • the travel route is annular
  • the problem that the annular route is not closed due to wheel slip or accumulation of sensor measurement errors can be solved, and reliable autonomous traveling in the reproduction travel mode can be reproduced.
  • a method includes a passing time and a set of passing point data at the passing time while the autonomous moving body is manually driven from a travel start position to a travel end position by an operator's manual operation.
  • a travel schedule creation method for creating a travel schedule includes the following steps. A step of causing the autonomous mobile body to travel according to the travel command input from the operator. A step of estimating the self-location on the environmental map. ⁇ Obtaining obstacle position information around the autonomous mobile body. A step of storing the obstacle position information as environmental map restoration data in correspondence with the time at which the obstacle position information is acquired. ⁇ Step of creating a travel schedule and storing it in the storage unit.
  • the self-position and posture on the environmental map may be used as passing point data to correspond to the time when the position information of the obstacle is acquired.
  • the above teaching schedule creation method may further include a step of deleting data in the already passed area of the environmental map.
  • a method is a traveling method for an autonomous mobile body that autonomously travels from a travel start position to a travel end position while reproducing a travel schedule.
  • the autonomous mobile body traveling method includes the following steps. A step of estimating the self-location on the environmental map. ⁇ Obtaining obstacle position information around the autonomous mobile body. A step of reading environment map restoration data corresponding to the estimated self-location and updating the environment map. A step of causing the autonomous mobile body to travel based on a control amount created so as to travel on the updated environmental map according to the travel schedule.
  • the self-location and time on the environment map are estimated, and the environment map is updated using the environment map restoration data corresponding to the estimated self-location and time. I am running according to the schedule. This eliminates the need for the operator to consider how to create an environmental map even when the travel route is annular, thus solving the problem that the annular route does not close due to wheel slips or sensor measurement errors. be able to.
  • the environment map restoration data corresponding to the estimated self-location and updating the environment map In the step of reading the environment map restoration data corresponding to the estimated self-location and updating the environment map, the environment map restoration data corresponding to the time before the current passing point is read and the read environment map is restored.
  • the environmental map that has already been created based on the business data may be updated.
  • the traveling method of the autonomous mobile body may further include a step of creating a local map based on the acquired position information of the obstacle and comparing the updated environmental map with the created local map. .
  • the step of estimating the self-position on the environment map the self-position and posture on the environment map and the self-position on the environment map are determined according to the comparison result between the updated environment map and the created local map.
  • the passing point data in the corresponding travel schedule may be estimated.
  • the above-described autonomous mobile body traveling method may further include a step of deleting data in an already passed area of the environmental map.
  • an autonomous moving body that solves the problem that the circular route does not close in the environmental map and can easily teach the travel route without considering the division of the environmental map. Can provide.
  • the block diagram which shows schematic structure of the autonomous mobile body by one Embodiment.
  • the control flowchart which shows the outline of control operation
  • the control flowchart of the autonomous mobile body in teaching traveling mode.
  • Explanatory drawing which shows an example of the scanning range of a laser range sensor.
  • Explanatory drawing which shows the other example of the scanning range of a laser range sensor.
  • the table which shows an example of the positional information on the obstruction detected by the laser range sensor.
  • the control flowchart of a self-position estimation process Explanatory drawing which shows an example of posterior probability distribution.
  • Explanatory drawing which shows an example of prior probability distribution.
  • FIG. 1 is a block diagram showing a schematic configuration of an autonomous mobile body according to an embodiment of the present invention.
  • the autonomous mobile body 1 includes a control unit 11, a distance measuring sensor 31, an operation unit 32, a display unit 33, and a traveling unit 27 provided in the traveling vehicle main body.
  • the ranging sensor 31 is a sensor that detects an obstacle on the front side in the traveling direction of the autonomous mobile body 1.
  • the distance measuring sensor 31 for example, irradiates a target with laser light pulsed by a laser oscillator, and receives reflected light reflected from the target with a laser receiver, thereby calculating a distance to the target.
  • It is a range finder (LRF: Laser Range Finder).
  • the distance measuring sensor 31 can operate the laser beam in a fan shape at a predetermined angle using a rotating mirror.
  • Such a distance measuring sensor 31 can also be arranged behind the autonomous mobile body 1.
  • the operation unit 32 is a user interface that is operated by an operator when the autonomous mobile body 1 travels by manual operation, and includes a throttle that receives a travel speed instruction, a handle that receives a travel direction instruction, and the like.
  • the display unit 33 displays information related to the current driving situation and various other information, and includes a liquid crystal display, an LED lamp, and the like.
  • the traveling unit 27 includes a plurality of traveling wheels (not illustrated) for traveling on the traveling route, and includes a plurality of traveling motors (not illustrated) as actuators for driving the traveling wheels.
  • the control unit 11 is a computer including a CPU, a RAM, and a ROM, and performs running control by executing a predetermined program.
  • the control unit 11 includes an obstacle information acquisition unit 21, a map creation unit 22, a self-position estimation unit 23, a teaching data creation unit 24, a storage unit 25, and a travel control unit 26.
  • the obstacle information acquisition unit 21 acquires position information of obstacles existing around the own device based on the detection signal of the distance measuring sensor 31.
  • the map creation unit 22 creates an environment map including the travel route of the autonomous mobile body 1 as a global map based on the obstacle position information acquired by the obstacle information acquisition unit 21.
  • the self-position estimating unit 23 estimates the self-position on the global map.
  • the travel control unit 26 interprets the input travel command, generates a control amount for the actuator, and inputs the generated control amount to the travel unit 27.
  • the teaching data creation unit 24 creates a travel schedule including a passage time and a set of passage point data corresponding to the passage time.
  • the storage unit 25 stores the above-described travel schedule and environment map restoration data.
  • the environment map restoration data is data corresponding to the time when the position information of the obstacle around the aircraft is acquired, and is created by the map creation unit 22.
  • the autonomous mobile body 1 executes a teaching traveling mode in which traveling is driven based on an operator's manual operation.
  • a travel command by an operator's manual operation is received through the operation unit 32 from the travel start position to the travel end position, and the travel control unit 26 generates a control amount of the actuator.
  • the traveling unit 27 travels.
  • the obstacle information acquisition unit 21 acquires the position information of the obstacle based on the output signal from the distance measuring sensor 31 for each predetermined time schedule.
  • the self-position estimation unit 23 estimates the self-position and posture based on the amount of movement by the traveling unit 27 for each predetermined time schedule, and further uses the global map and the obstacle information acquisition unit 21 to acquire the obstacle position information. Based on this, the estimated self-position is corrected.
  • the teaching data creation unit 24 uses the self position and orientation on the global map as passing point data, and stores a travel schedule corresponding to the passing time in the storage unit 25.
  • the autonomous mobile body 1 executes a reproduction travel mode in which autonomous travel is performed based on the travel schedule stored in the storage unit 25.
  • the reproduction travel mode the following operation is executed for each predetermined time schedule.
  • the self-position estimation unit 23 estimates the self-position on the global map
  • the obstacle information acquisition unit 21 acquires the position information of the obstacle around the own aircraft.
  • the map creation unit 22 reads the environmental map restoration data stored in the storage unit 25 based on the estimated self-location and updates the global map.
  • the travel control unit 26 creates a control amount of the actuator so as to travel along the travel schedule on the updated global map, and inputs it to the travel unit 27.
  • FIG. 2 is a control block diagram of the cleaning robot in which the first embodiment of the present invention is employed.
  • the cleaning robot 40 includes the autonomous mobile body 1, a throttle 42, and a cleaning unit user interface 43.
  • the cleaning robot 40 further includes a cleaning unit (not shown).
  • the cleaning unit is provided at the lower part of the autonomous mobile body 1 and is a device for cleaning the floor surface along with the movement of the autonomous mobile body 1.
  • the throttle 42 corresponds to the operation unit 32 of FIG. 1 and accepts an instruction input by an operator's manual operation.
  • the throttle 42 can be independently provided with a left and right throttle grip for receiving a control instruction input according to a rotation angle around the axis.
  • the throttle 42 may be a combination of a throttle grip that receives the forward speed and a handle that receives an instruction of the steering direction.
  • the throttle 42 can be a combination of a throttle lever and other input means.
  • the cleaning unit user interface 43 receives an instruction for a cleaning operation by a cleaning unit (not shown) from an operator, and can be configured by a combination of operation buttons, a touch panel, and other operation switches, for example.
  • the autonomous mobile body 1 includes a control board 51, a breaker 52, a front laser range sensor 53, a rear laser range sensor 54, a bumper switch 55, an emergency stop switch 56, a speaker 57, and a traveling unit 27.
  • the breaker 52 is a main power switch, and turns on / off the supply of power supply voltage from a battery (not shown) to each part of the autonomous mobile body 1 based on the operation of the operator.
  • the front laser range sensor 53 detects position information of an obstacle positioned in front of the autonomous mobile body 1, and reflects the laser beam irradiated in the horizontal direction within a predetermined angle range and reflected from the obstacle. Receive light and measure the distance from your aircraft to the obstacle.
  • the rear laser range sensor 54 detects positional information of an obstacle located behind the autonomous mobile body 1, and reflects the laser beam irradiated from the obstacle in the horizontal direction within a predetermined angle range. Receive light and measure the distance from your aircraft to the obstacle.
  • the bumper switch 55 can be a pressure-sensitive switch attached to the outer periphery of the vehicle body of the autonomous mobile body 1, detects contact with an obstacle, and outputs a detection signal.
  • the emergency stop switch 56 receives an instruction to urgently stop the operation of the autonomous mobile body 1, and is a switch that can be operated by an operator.
  • the speaker 57 notifies the operator of various information during operation of the autonomous mobile body 1 by sound.
  • the control board 51 is a circuit board on which a CPU, a ROM, and a RAM are mounted, and includes a control unit 11, a teaching data creation unit 24, a SLAM processing unit 63, a nonvolatile memory 64, an obstacle information acquisition unit 21, a storage unit 25, and travel control. Part 26 is included.
  • the storage unit 25 stores various data, and stores the travel schedule and environment map restoration data created in the teaching travel mode in association with the time or the identifier associated with the time. In addition, the storage unit 25 stores the travel schedule created by the teaching data creation unit 24 (described later) and the environment map restoration data created by the map creation unit 22 (described later).
  • the control unit 11 is a microprocessor mounted on the control board 51, and controls the operation of each unit of the autonomous mobile body 1 by executing a predetermined program.
  • the teaching data creation unit 24 creates a travel schedule that is a set of passage time data corresponding to the passage time and the passage time in the teaching travel mode.
  • the SLAM processing unit 63 is a functional block that performs SLAM (Simultaneous Localization and Mapping) processing that simultaneously performs self-position estimation and environment map creation, and includes a map creation unit 22, a self-position estimation unit 23, and a map matching unit 73. .
  • SLAM Simultaneous Localization and Mapping
  • the map creation unit 22 creates a local map (local map) and a global map (environment map) based on the obstacle position information acquired by the obstacle information acquisition unit 21.
  • the map creation unit 22 corresponds to the time when the position information of the obstacle located around the own aircraft is acquired, and stores it in the storage unit 25 as environmental map restoration data.
  • the map creation unit 22 reads environment map restoration data corresponding to a time earlier than the current passing point from the storage unit 25, and updates the global map based thereon.
  • the self-position estimation unit 23 estimates the current self-position by adding the movement amount from the previous self-position to the previous self-position.
  • the map matching unit 73 compares the local map (local map) created based on the position information of obstacles around the aircraft with the global map (environment map) updated by the map creating unit 22 next. As a result, the self-position estimated by the self-position estimation unit 23 is corrected.
  • the nonvolatile memory 64 stores a boot program for the main control unit 61, a program related to traveling control, various parameters, and the like.
  • the obstacle information acquisition unit 21 acquires position information of obstacles located around the own device based on detection signals from the front laser range sensor 53 and the rear laser range sensor 54.
  • the travel control unit (motion controller) 26 generates a control amount of the actuator of the travel unit 27 based on the input travel command, and inputs it to the travel unit 27.
  • the input travel command is an instruction input from the operator input via the throttle 42 in the teaching travel mode.
  • the input travel command is a travel command generated based on the self-position on the global map estimated by the SLAM processing unit 63, the updated global map, and the travel schedule.
  • the travel control unit 26 includes a calculation unit 81, a determination unit 82, and a movement control unit 83.
  • the determination unit 82 interprets the input travel command.
  • the computing unit 81 calculates the control amount of the actuator of the traveling unit 27 based on the traveling command interpreted by the determining unit 82.
  • the movement control unit 83 outputs the control amount calculated by the calculation unit 81 to the traveling unit 27.
  • the traveling unit 27 includes a pair of motors 93 and 94 corresponding to two traveling wheels (not shown), and includes encoders 95 and 96 that detect the respective rotational positions, and motor drive units 91 and 92. ing.
  • the motor drive unit (motor driver) 91 feedback-controls the motor 93 based on the control amount input from the travel control unit 26 and the rotational position of the motor 93 detected by the encoder 95.
  • the motor drive unit 92 feedback-controls the motor 94 based on the control amount input from the travel control unit 26 and the rotational position of the motor 94 detected by the encoder 96.
  • the teaching data creation unit 24, the obstacle information acquisition unit 21, the travel control unit 26, and the SLAM processing unit 63 can each be a functional block realized by the control unit 11 executing a program. It is also possible to configure with an independent integrated circuit.
  • FIG. 3 is a control flowchart showing an outline of the control operation of the autonomous mobile body.
  • the control unit 11 in FIG. 2 executes the predetermined program to realize the functional blocks of the teaching data creation unit 24, the SLAM processing unit 63, the obstacle information acquisition unit 21, and the travel control unit 26. explain.
  • step S31 the control unit 11 determines whether or not mode selection has been performed by the operator. Specifically, when an instruction input is received by an operation of the operation unit 32 by the operator, or when an instruction input signal is received from the remote controller, the control unit 11 proceeds to step S32.
  • step S32 the control unit 11 determines whether or not the selected mode is the teaching travel mode. When it is determined that the instruction input for selecting the teaching travel mode has been received, the control unit 11 proceeds to step S33, and otherwise proceeds to step S34. In step S33, the control unit 11 executes the teaching travel mode, and then proceeds to step S36. In step S34, the control unit 11 determines whether or not the selected mode is the reproduction travel mode. If the control unit 11 determines that an instruction input for selecting the reproduction travel mode has been received, the control unit 11 proceeds to step S35.
  • step S35 the control unit 11 executes the reproduction travel mode, and then proceeds to step S36.
  • step S ⁇ b> 36 the control unit 11 determines whether an end instruction has been accepted or whether the taught travel schedule has been completed. Specifically, the control unit 11 receives an instruction input indicating that the process is ended by an operation of the operation unit 32 by the operator, receives an instruction input signal indicating that the process is ended by the remote controller, or teach travel If it is determined that the travel schedule created by the mode has been completed, the process is terminated; otherwise, the process proceeds to step S31.
  • FIG. 4 is a control flowchart of the autonomous mobile body in the teaching travel mode.
  • the control unit 11 performs initial setting. Specifically, the control unit 11 acquires the position information of the obstacle located around the own machine based on the detection signals of the front laser range sensor 53 and the rear laser range sensor 54, and based on this, acquires the position information of the own machine. Create a local map around.
  • FIG. 5 is an explanatory diagram illustrating an example of a scanning range of the laser range sensor.
  • the autonomous mobile body 1 has a front laser range sensor 53 attached to the front end thereof, scans the pulsed laser beam in a fan shape with a rotating mirror, and reflects it from an obstacle positioned in front of the autonomous mobile body 1. Receive reflected light.
  • the front laser range sensor 53 transmits laser light to the scanning region 101 of about 180 degrees forward.
  • the front laser range sensor 53 receives the reflected light reflected from the obstacle at a predetermined period, compares the transmitted pulse of the transmitted laser light with the received pulse of the reflected light, and detects the distance to the obstacle. .
  • a rear laser range sensor 54 is attached to the autonomous mobile body 1 at the rear end. Similar to the front laser range sensor 53, the rear laser range sensor 54 scans the pulsed laser beam in a fan shape with a rotating mirror, and as a result, reflects from an obstacle located behind the autonomous mobile body 1. Receive light. In the example shown in FIG. 5, the rear laser range sensor 54 transmits laser light to the scanning region 103 that is about 180 degrees rearward. However, the autonomous mobile body 1 is provided with a mask area 105 that does not detect obstacles in the teaching travel mode described later, and detects position information of obstacles located in the first scanning area 115 and the second scanning area 117. . Note that the mask region 150 is provided corresponding to an operator located behind the autonomous mobile body 1.
  • FIG. 6 is an explanatory diagram showing another example of the scanning range of the laser range sensor.
  • the front laser range sensor 53 and the rear laser range sensor 54 scan the laser beam at an angle of about 180 degrees, whereas in the example shown in FIG. The difference is that the laser beam is scanned at an angle of.
  • the scanning region 101 by the front laser range sensor 53 is an angle range of 240 degrees forward.
  • the scanning area 103 by the rear laser range sensor 54 has an angle range of 240 degrees behind, and detects position information of obstacles located in the first scanning area 115 and the second scanning area 117 excluding the mask area 105.
  • FIG. 7 is a table showing an example of position information of an obstacle detected by the laser range sensor.
  • the front laser range sensor 53 and the rear laser range sensor 54 irradiate a predetermined scanning region with laser light, further receive reflected light from an obstacle, and then transmit the emitted pulse of laser light and the received reflected light.
  • the distance R to the obstacle is calculated as an output value based on the received pulse.
  • the front laser range sensor 53 and the rear laser range sensor 54 also output the sensor angle N when the distance R to the obstacle is obtained.
  • the control unit 11 acquires the outputs of the front laser range sensor 53 and the rear laser range sensor 54 for each predetermined angle, and based on this, a position information table in which the sensor angle N and the distance R to the obstacle are associated with each other. create.
  • the position information table shown in FIG. 7 is an obstacle position information table obtained by obtaining sensor outputs every 0.72 degrees.
  • the control unit 11 executes a local map creation process using the sensor coordinate system. Specifically, the control unit 11 detects the sensor based on the obstacle position information table (for example, the obstacle position information table shown in FIG. 7) acquired by the front laser range sensor 53 and the rear laser range sensor 54. Create a local map, which is an environmental map in the vicinity of its own position in the central coordinate system.
  • the obstacle position information table for example, the obstacle position information table shown in FIG. 7
  • control unit 11 divides the scanning regions 101 and 103 scanned by the front laser range sensor 53 and the rear laser range sensor 54 into a grid having a predetermined area,
  • the obstacle existence probability in each grid is calculated based on the obstacle position information table.
  • FIG. 8 is an explanatory diagram of a local map in a coordinate system centered on a sensor.
  • the control unit 11 uses the sensor center of the front laser range sensor 53 or the rear laser range sensor 54 as the origin 132, and the obstacle existence probability with respect to the grid on the scanning line 131 corresponding to the sensor angle N of the obstacle position information table. To decide.
  • the obstacle existence probability of the grid where the obstacle exists is set to “1.0”
  • the obstacle existence probability of the grid where it is unknown whether the obstacle exists is set to “0”
  • the control unit 11 sets a grid on the scanning line 131 where the distance r from the origin 132 coincides with the distance R to the obstacle as the detection grid 133, and sets the obstacle existence probability of the grid to “1.0”. To do.
  • the control unit 11 determines that there is no obstacle on the grid on the scanning line 131 and whose distance r from the origin 132 is less than the distance R to the obstacle.
  • the control unit 11 determines that it is unknown whether or not there is an obstacle in the grid on the scanning line 131 where the distance r from the origin 132 is further than the distance R to the obstacle. Thus, the obstacle existence probability of the unknown grid 139 is set to “0”.
  • the detection grid 107 having an obstacle existence probability of “1.0” around the front laser range sensor 53 and the rear laser range sensor 54, and the obstacle existence probability A local map based on the sensor coordinate system is created, including the intermediate grid 109 with “ ⁇ 1.0 to 0” and the unknown grid 111 with the obstacle existence probability “0”.
  • the grid located in the mask area 105 of the rear laser range sensor 54 is set to “0” as the obstruction existence probability as the unknown grid 113.
  • the detection grid 107 exists linearly in front of the autonomous mobile body 1, and therefore there is a wall surface or a large obstacle that constitutes the travel route. Can do.
  • the obstacle existence probability of each grid located around the front laser range sensor 53 and the rear laser range sensor 54 is calculated, and this is calculated as the sensor coordinates. Output as a local map of the system.
  • the obstacle information acquisition unit 21 acquires the position information of the obstacle from the detection signals of the front laser range sensor 53 and the rear laser range sensor 54, and
  • the map creation unit 22 creates a local map located around the own device.
  • the control unit 11 causes the self-position (x1, y1, ⁇ 1) including the coordinates and the posture of the self-position at the time (t1) when the position information of the obstacle is acquired to be the origin (or predetermined coordinates) of the absolute coordinate system. Replace the local map with a global map.
  • the control unit 11 determines whether or not the current self position (x1, y1, ⁇ 1) in the global map is appropriate as the travel start position. For example, when there are almost no obstacles around the self-position or when simple shapes are continuous, it is difficult to determine the travel start position in the reproduction travel mode. (Not shown) or the speaker 57 is notified that the travel start position is inappropriate, and prompts the operator to change the travel start position.
  • the control unit 11 determines that the self position (x1, y1, ⁇ 1) is appropriate as the travel start position, the position information of the obstacle acquired by the obstacle information acquisition unit 21 is related to the time (t1). In addition, it is stored in the storage unit 25 as environmental map restoration data. Further, the control unit 11 uses the passing point data (x1, y1, ⁇ 1, t1) associating the coordinates (x1, y1) of the own position with the attitude ( ⁇ 1) of the own device and the time (t1) as a travel schedule. The data is stored in the storage unit 25. Further, the control unit 11 temporarily stores a part of the global map centered on the self-position (x1, y1, ⁇ 1) created by the map creation unit 22 in the storage unit 25.
  • step S41 the control unit 11 creates a control amount of the actuator of the traveling unit 27 based on the traveling command input by the operator, and outputs it to the traveling unit 27.
  • the control unit 11 receives a travel speed input by an operator operating the throttle 42 and an instruction input related to steering, and performs travel control in the travel route.
  • the instruction input by the operator may be a method of receiving an instruction input signal wirelessly from a remote controller.
  • step S42 the control part 11 performs a data measurement process. Specifically, the control unit 11 irradiates the laser beam with the front laser range sensor 53 and the rear laser range sensor 54 and further receives the reflected light reflected from the obstacle, thereby relating to the distance and direction of the obstacle. Get obstacle information. Moreover, the control part 11 acquires the information regarding the movement amount in the fixed time of the autonomous mobile body 1 further. Specifically, the control unit 11 acquires information on the rotational positions of the corresponding motors 93 and 94 from the encoders 95 and 96 of the traveling unit 27, and calculates the movement amount within a predetermined time.
  • the amount of movement within a certain period of time includes the amount of movement from the two-dimensional coordinates (x (t-1), y (t-1)) at the previous measurement time (t-1) of the autonomous mobile body 1 and the traveling direction. It can be expressed as a movement amount (dx, dy, d ⁇ ) having a change amount.
  • step S43 the control unit 11 executes a local map creation process using the sensor coordinate system. Specifically, based on the obstacle position information table acquired by the front laser range sensor 53 and the rear laser range sensor 54 (for example, the obstacle position information table shown in FIG. 7), a coordinate system centered on the sensor is used. A predetermined range located around the own device is divided into grids of a predetermined size, and a local map is created in which the calculated obstacle existence probabilities are associated with each grid.
  • step S44 the control unit 11 adds the movement amount (dx, dy, d ⁇ ) between time (t-1) and time (t) to the self-position at time (t-1) by the self-position estimation unit 23. By doing so, the self-position at time (t) is estimated. Further, the control unit 11 assumes a three-dimensional grid space (x, y, ⁇ ) having two-dimensional coordinates (x, y) and a traveling direction ( ⁇ ) as self-position parameters, and further, before and after the movement. Map matching is performed by calculating the probability distribution of the self-position of the grid.
  • FIG. 9 is a control flowchart of the self-position estimation process.
  • the control unit 11 executes a prior probability calculation process. Using the time (t) that is the current time, the control unit 11 uses the posterior probability distribution at time (t ⁇ 1) and the amount of movement (dx, dy, d ⁇ ) between time (t ⁇ 1) and time (t). ) To calculate the prior probability distribution of the self-position at time (t).
  • FIG. 10 is an explanatory diagram illustrating an example of the posterior probability distribution
  • FIG. 11 is an explanatory diagram illustrating an example of the prior probability distribution.
  • the control unit 11 adds the movement amount (dx, dy, d ⁇ ) between time (t ⁇ 1) and time (t) to the posterior probability distribution at time (t ⁇ 1) shown in FIG. Shift.
  • the control unit 11 further obtains a prior probability distribution at time (t) as shown in FIG. 11 by performing a convolution operation on the normal distribution.
  • the control unit 11 executes such a prior probability calculation process on each grid in the three-dimensional grid space (x, y, ⁇ ), and thus, from the encoders 95 and 96, considering wheel slip and the like.
  • the probability distribution of the self-position with the acquired movement amount (dx, dy, d ⁇ ) added is updated.
  • step S92 the control unit 11 executes likelihood calculation processing.
  • FIG. 12 is a control flowchart of the likelihood calculation process.
  • step S121 the control unit 11 extracts temporary self-position coordinates. Specifically, the control unit 11 extracts one coordinate that exceeds the threshold from the prior probabilities at the time (t) calculated by the prior probability distribution process, and uses this as a temporary self-position coordinate. The control unit 11 calculates the likelihood in the extracted temporary self-position coordinates based on the prior probability distribution at time (t), the local map, and the global map being created.
  • step S122 the control unit 11 performs a coordinate conversion process. Specifically, the control unit 11 converts a local map based on the sensor coordinate system into a local map based on the temporary self-position coordinates.
  • the control unit 11 uses the temporary self-position coordinates extracted based on the prior probability distribution as (x, y, ⁇ ), the coordinates of each grid of the local map by the sensor coordinate system as (lx, ly), and absolute coordinates.
  • the coordinates (gx, gy) of each grid of the local map of the system are calculated by Equation 1.
  • step S123 the control unit 11 executes a map matching process.
  • the control unit 11 performs map matching processing between the global map being created and the local map of the absolute coordinate system, and calculates the obstacle existence probability of each grid on the local map of the absolute coordinate system based on the map matching process.
  • the control unit 11 sets the coordinates of the i-th grid to (gx_occupy (i), gy_occupy (i)) when N grids having an obstacle existence probability “1.0” exist in the local map of the absolute coordinate system.
  • the score s indicating the degree of coincidence is calculated by the following formula 2 with the obstacle existence probability at the coordinates (gx_occupy (i), gy_occupy (i)) on the global map as GMAP (gx_occupy (i), gy_occupy (i)) To do.
  • the control unit 11 calculates a score s for each of a plurality of temporary self-positions, and sets it as the likelihood distribution of the self-position.
  • FIG. 13 is an explanatory diagram illustrating an example of a likelihood distribution obtained by the likelihood calculation process.
  • step S93 the control unit 11 executes a posteriori probability calculation process. Specifically, the control unit 11 multiplies the prior probability distribution at the time (t) by the likelihood distribution at the time (t) to each grid of the local map in the absolute coordinate system, thereby obtaining the time map at the time (t). Calculate the posterior probability.
  • FIG. 14 is an explanatory diagram showing an example of the posterior probability distribution obtained by the posterior probability calculation process.
  • FIG. 14 shows a posterior probability distribution obtained by multiplying the prior probability distribution at time (t) shown in FIG. 11 by the likelihood distribution at time (t) shown in FIG.
  • the control unit 11 can execute the posterior probability calculation process for a plurality of temporary self-positions, and can set the one having the maximum posterior probability as the self-position.
  • the difference in the prior probability can be reflected in the posterior probability with respect to the provisional self-position having the same likelihood value.
  • the output signals of the laser range sensor 54 and the encoders 95 and 96 of the traveling unit 27 it is possible to estimate self-estimation by dead-reckoning. Further, since the a posteriori probability at the time (t ⁇ 1) is used when the prior probability calculation at the time (t) is performed, a slip of a wheel (not shown) in the traveling unit 27, the front laser range sensor 53, A disturbance factor such as noise of the rear laser range sensor 54 can be prevented, that is, the self-position can be accurately estimated.
  • step S45 the control unit 11 causes the obstacle information acquisition unit 21 to acquire position information of obstacles located around the current self-position on the global map.
  • step S ⁇ b> 46 the control unit 11 creates environment map restoration data by associating the position information of the obstacle acquired by the obstacle information acquisition unit 21 with the time, and stores the data in the storage unit 25.
  • the environment map restoration data described in the storage unit 25 divides the surroundings of the self-location on the global map by a unit grid of a predetermined area, and further associates obstacle existence probability with each grid, It is possible to associate the position information with the time (t) at which the position information is acquired.
  • step S47 the control unit 11 executes a global map update process. Specifically, the control unit 11 adds the local map of the absolute coordinate system in which the coordinate transformation is performed based on the self-position estimated by the self-position estimation process to the global map at time (t ⁇ 1). A global map at time (t) is created.
  • FIG. 15 is an explanatory diagram showing a conceptual configuration of the global map update process.
  • a 4 ⁇ 4 grid in the vicinity of the self position is targeted, (a) is a global map at time (t ⁇ 1), and (b) is a local coordinate system local at time (t).
  • the map, (c), shows the global map at the updated time (t).
  • obstacle existence probabilities are stored in the respective grids.
  • the obstacle existence probability of the grid that is estimated to have an obstacle is “1.0”
  • the obstacle existence probability of the grid that is estimated to be no obstacle is “ ⁇ 1”. .0 to 0 ”
  • the obstacle existence probability of the grid where the existence of the obstacle is unknown is set to“ 0 ”.
  • the control unit 11 converts each grid of the local map (FIG. 15B) converted into the absolute coordinate system based on the self-position estimated by the self-position estimation process to each grid of the global map.
  • the obstacle existence probability of each grid is added.
  • the control unit 11 performs a truncation calculation to calculate “1.0”. ”,“ ⁇ 1.0 ”.
  • the obstacle existence probability of the grid that is determined to be repeatedly present is close to “1.0”
  • the obstacle existence probability of the grid that is determined to be the non-repetitive obstacle is “ ⁇ 1”. .0 ".
  • the control unit 11 updates the global map by calculating the obstacle existence probability of each grid of the global map at time (t) shown in FIG.
  • the global map at time (t) includes a range necessary for the control unit 11 to execute the self-position estimation process at least at the next time (t + 1), and is temporarily stored in the storage unit 25. .
  • the obstacle existence probability of each grid of the global map is updated by adding the obstacle existence probability of each grid corresponding to the local map in the absolute coordinate system. The influence of noise based on measurement errors can be reduced as much as possible.
  • step S48 the control part 11 deletes the global map in the passing point after the autonomous mobile body 1 passes.
  • the global map updated at time (t) is really necessary only for the range necessary for the control unit 11 to execute the self-position estimation process at the next time (t + 1). Accordingly, at the next time (t + 1), a range that is not necessary for the control unit to execute the self-position estimation process is deleted in step S48. For this reason, it is not necessary to consider the problem that the circular route does not close in the environment map.
  • FIG. 16 is an explanatory diagram of a travel schedule
  • FIG. 17 is an explanatory diagram of updating / deleting a global map
  • FIG. 18 is an explanatory diagram of an annular travel route.
  • the autonomous mobile body 1 travels along the passing points 1611-1 on the annular travel route 1601 based on the manual operation of the operator.
  • the control unit 11 creates a local map 1712-1 in a predetermined range located around its own position, and thereby updates the global map. .
  • the control unit 11 creates a local map 1712-n within a predetermined range located around its own position, and thereby updates the global map.
  • the control unit 11 deletes data in an area that is a certain distance away from the current passing point 1611-n in the global map.
  • the global map is updated by the local map 1712-m, but the global map updated by the local map 1712-1 at the time (t1) Includes overlapping parts.
  • the global map data updated based on the local map 1712-1 at time (t 1) has already been deleted. Therefore, the global map updated by the local map is prevented from overlapping with the previously created global map in the vicinity of the same coordinates, and even if there is a wheel slip or a sensor measurement error, the loop route is not closed. Can be prevented.
  • step S49 the control unit 11 creates a travel schedule by the teaching data creation unit 24 and stores it in the storage unit 25. Specifically, when traveling along the passing points 1611-1 on the traveling route 1601 as shown in FIG. 17, the control unit 11 determines the global map of the passing points 1611 on the traveling route 1601 at time t.
  • the passing point data (x, y, ⁇ , t) including the coordinates (x, y) above, the posture ( ⁇ ) indicating the traveling direction of the autonomous mobile body 1 and the time (t) is stored in the storage unit 25. .
  • a teaching data creation unit 24 is the passing point data (x1, y1, ⁇ 1, t1), (x2, y2, ⁇ 2, t2) at the first passing point 1611-1, the second passing point 1611-2,... t2)..
  • a travel schedule consisting of a set of (xn, yn, ⁇ n, tn) is stored in the storage unit 25.
  • step S50 the control unit 11 determines whether an end instruction has been received. Specifically, the control unit 11 terminates when the operator inputs an instruction to end the process by operating the operation unit 32 or receives an instruction input signal to end the process by the remote controller. The process is terminated by executing the process. If not, the process proceeds to step S41.
  • FIG. 19 is a control flowchart of the autonomous mobile body in the reproduction travel mode.
  • the control unit 11 executes a data measurement process. Specifically, the control unit 11 receives the reflected light reflected from the obstacle by irradiating the laser beam with the front laser range sensor 53 and the rear laser range sensor 54, and thereby the obstacle related to the distance and direction of the obstacle. Get material information.
  • the data measurement process here is the same as the data measurement process in the teaching travel mode, and detailed description thereof is omitted.
  • step S192 the control unit 11 executes a local map creation process using the sensor coordinate system. Specifically, based on the obstacle position information table acquired by the front laser range sensor 53 and the rear laser range sensor 54 (for example, the obstacle position information table shown in FIG. 7), a coordinate system centered on the sensor is used. A local map in which the obstacle existence probability is made to correspond to each grid in the vicinity of the self-location is created.
  • step S193 the control unit 11 uses the self-position estimation unit 23 to estimate the self-position on the global map.
  • the self-position estimation process is similar to the self-position estimation process in the teaching travel mode, and the amount of movement (dx, dy, d ⁇ ) is added to estimate the self position at time (t). Further, the control unit 11 assumes a three-dimensional grid space (x, y, ⁇ ) having two-dimensional coordinates (x, y) and a traveling direction ( ⁇ ) as parameters of the self position, and before and after the movement. Map matching can be performed by calculating the probability distribution of the self-position of each grid, thereby correcting the self-position.
  • step S194 the control unit 11 restores the global map using the environment map restoration data corresponding to the estimated self-location, and the global map and the obstacle position information acquired by the obstacle information acquisition unit 21
  • the time in the travel schedule corresponding to the current self-position is estimated by comparing with the local map created from the above.
  • step S ⁇ b> 194 the control unit 11 reads from the storage unit 25 the passing point data corresponding to the estimated time in the travel schedule stored in the storage unit 25.
  • step S195 the control unit 11 updates the global map using the environmental map restoration data corresponding to the estimated self-location. Specifically, the obstacle existence of each grid of the global map is added to the obstacle existence probability of each grid of the already created global map by adding the obstacle existence probability of each grid of the restored global map. Update the probability.
  • step 196 the control unit 11 deletes the global map at the passing point after the autonomous mobile body 1 has passed.
  • the global map is updated at time (t)
  • step S198 the control unit 11 creates a control amount of the actuator of the traveling unit 27 and outputs it to the traveling unit 27. Specifically, the control unit 11 determines the control amount of the actuator so as to conform to the travel schedule based on the self-position on the global map and the passing point data read from the storage unit 25. Based on the travel command, the travel unit 27 is input.
  • step S199 the control unit 11 determines whether or not to end the reproduction travel mode. Specifically, when the final stop point data is reached in the travel schedule stored in the storage unit 25, the control unit 11 detects the obstacle by the bumper switch 55 when the emergency stop switch 56 is operated by the operator. When the obstacle position information detected by the obstacle information acquisition unit 21 is close to a predetermined distance or less, the control unit 11 determines to end the reproduction travel mode. If the control unit 11 determines not to end the reproduction travel mode, the control unit 11 proceeds to step S191.
  • the environment map restoration data for restoring the global map and the running schedule that is a set of passing point data are stored in the storage unit 25 in the teaching running mode.
  • the global map in the vicinity of the self position is restored using the environment map restoration data, and the self position on the restored global map is estimated.
  • the circular route problem can be eliminated, that is, inconsistency due to deviation of the global map based on wheel slip or sensor measurement error, etc. Can be prevented.
  • the travel control is performed along the passing point data of the travel schedule in the reproduction travel mode, it does not deviate from the coordinate system of the global map and does not interfere with the autonomous travel.
  • the autonomous mobile body 1 executes the teaching travel mode and the reproduction travel mode.
  • the teaching travel mode by manually operating the autonomous mobile body 1 from the travel start position to the travel end position by the operator's manual operation, passing point data at the passing time and passing time (for example, passing point data (x, y, A travel schedule composed of a set of ⁇ , t)) is created.
  • passing point data for example, passing point data (x, y, A travel schedule composed of a set of ⁇ , t)
  • the autonomous mobile body 1 autonomously travels from the travel start position to the travel end position while reproducing the travel schedule.
  • the autonomous mobile body 1 includes a storage unit 25 (an example of a storage unit), a travel unit 27 (an example of a travel unit), a teaching data creation unit 24 (an example of a travel data creation unit), and a travel control unit 26 (an example of a travel control unit). ), An obstacle information acquisition unit 21 (an example of an obstacle information acquisition unit), a map creation unit 22 (an example of a map creation unit), and a self-position estimation unit 23 (an example of a self-position estimation unit).
  • the storage unit 25 stores data.
  • the traveling unit 27 includes a plurality of motors 93 and 94 (an example of an actuator) to which control amounts are input.
  • the teaching data creation unit 24 creates a travel schedule and stores it in the storage unit 25.
  • the obstacle information acquisition unit 21 acquires position information of obstacles existing around.
  • the self-position estimating unit 23 estimates the self-position on the environment map.
  • the environmental map is created from the position information of the obstacle acquired by the obstacle information acquisition unit 21.
  • the map creation unit 22 stores the obstacle position information in the storage unit as environment map restoration data in association with the time at which the obstacle position information is acquired.
  • the map creation unit 22 reads the environment map restoration data corresponding to the estimated self-location and updates the environment map.
  • the travel control unit 26 creates a control amount for the actuator from the travel command input by the operator, and outputs it to the travel unit 27.
  • the travel control unit 26 creates a control amount of the actuator so as to travel along the travel schedule on the updated environmental map, and outputs it to the travel unit 27.
  • the operator operates the autonomous mobile body 1 by manual operation, thereby generating environment map restoration data and storing it in the storage unit 25.
  • the autonomous mobile body 1 estimates the self-location on the environment map in the reproduction travel mode, and updates the environment map using the environment map restoration data corresponding to the estimated self-location, Running along. Therefore, the operator can easily operate without considering the method of creating the environmental map, and even if the travel route is annular, the annular route due to wheel slip or sensor measurement error does not close. There is no need to consider this problem.
  • the control unit 10 can manage the environment map with a two-layer structure of a static environment map and a dynamic environment map.
  • the static environment map can be restored based on the map restoration data created in the teaching travel mode.
  • the dynamic environment map is superimposed with the dynamic environment map at time (t) and the local map based on the position information of the obstacle in the vicinity of the own position acquired by the obstacle information acquisition unit 21 at time (t + 1). Can be created by combining.
  • the control unit 10 estimates the self-position using the obstacle information acquired by the obstacle information acquisition unit 21 and the surrounding information of the own machine and the static environment map restored from the environment map restoration data. Create a local map of the system.
  • the dynamic environment map at time (t + 1) the obstacle existence probability of each grid is calculated using the dynamic environment map at time (t) and the local map at time (t + 1).
  • DynamicMap (t + 1) DynamicMap (t) + LocalMap (t + 1)
  • the control unit 10 obtains the difference between the dynamic environment map at time (t + 1) and the static environment map, and calculates DiffMap (t + 1) that is the obstacle existence probability of each grid of the difference map at time (t + 1).
  • (T + 1) DynamicMap (t + 1) ⁇ StaticMap ⁇ P1 And update the dynamic environment map using this.
  • FIG. 20 is an explanatory diagram of a dynamic environment map update process.
  • a 4 ⁇ 4 grid in the vicinity of the self-position is targeted,
  • (a) is a dynamic environment map at time (t)
  • (b) is a static environment map
  • (c) is a time.
  • the difference map in (t) is shown.
  • the dynamic environment map DynamicMap (t) at time (t) is calculated.
  • FIG. 21 is an explanatory diagram of likelihood calculation at the time of self-position estimation.
  • a 4 ⁇ 4 grid in the vicinity of the self-position is targeted,
  • (a) is a local map of the absolute coordinate system,
  • (b) is a static environment map, and
  • (c) is a dynamic environment map.
  • FIG. 21A shows the obstacle existence probability of each grid after conversion into the local map of the absolute coordinate system based on the obstacle position information around the own machine acquired by the obstacle information acquisition unit 21. .
  • the coordinates of the i-th grid are (gx_occupy (i), gy_occupy (i)).
  • the obstacle existence probability in the coordinates (gx_occupy (i), gy_occupy (i)) of the static environment map is set to StaticMap (gx_occupy (i), gy_occupy (i)), and the coordinates of the dynamic environment map (gx_occupy (i), gy_occupy) Assume that the obstacle existence probability in (i)) is DynamicMap (gx_occupy (i), gy_occupy (i)).
  • the likelihood calculation is performed using the following formula.
  • the control unit 11 When traveling along a travel route as shown in FIG. 17, at the passing point 1611-1 at time (t1), the control unit 11 moves the motion updated by the local map 1712-1 within a predetermined range located around its own position. A dynamic environment map. Similarly, at the passing point 1611-n at time (tn), the control unit 11 creates a partial global map updated by the local map 1712-n within a predetermined range located around its own position. At this time, the control unit 11 deletes the dynamic environment map created at the passing point (not shown) at time (tn ⁇ 1), and further uses the local map 1712-n at time (tn). The environmental map can be updated.
  • the moving point created at the time (t1) is obtained at the passing point 1611-m at the time (tm) in FIG. Since the target environment map is deleted, the problem that the circular route does not close can be prevented.
  • the difference map is used. It becomes possible to detect a change in the arrangement of the obstacle. Accordingly, the autonomous mobile body 1 can avoid contact with an obstacle in response to a layout change on the travel route or the presence of the mobile body.
  • the present invention can be applied to a cleaning robot, a transfer robot, and other autonomous mobile bodies that perform autonomous traveling. *

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • General Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Electromagnetism (AREA)
  • Optics & Photonics (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

 自律移動体において、環境地図の環状経路問題を解決するとともに、環境地図の分割を自動化することを可能にする。自律移動体は、教示走行モードにおいて、操作者から入力された走行命令からモータの制御量を出力し、環境地図上の自己位置を推定し、自機の周囲における障害物の位置情報を取得し、障害物の位置情報を取得した時刻に対応させて障害物の位置情報を環境地図復元用データとして記憶部に記憶させ、走行スケジュールを作成して記憶部に記憶させる。自律移動体は、再現走行モードにおいて、環境地図上の自己位置を推定し、自機の周囲における障害物の位置情報を取得し、推定された自己位置に対応する環境地図復元用データを読み出して環境地図を更新し、更新された環境地図上を走行スケジュールに沿って走行するようにモータの制御量を作成して走行部に入力する。

Description

自律移動体
 本発明は、環境地図作成機能、経路計画機能、及び自律移動機能を有する自律移動体に関する。
 従来から、周囲環境の中を自律して移動する自律移動体が知られている。自律移動体が周囲環境の中を自律して移動するためには、移動空間内の物体(以下、障害物と称す)が存在する領域と存在しない領域とを表した環境地図が必要となる。このような環境地図の取得方法については、種々の方法が考案されているが、近年、移動しつつ、リアルタイムで自己位置の推定と環境地図の作成とを行う技術としてSLAM(Simultaneous Localization and Mapping)が注目されている。SLAMを利用して、レーザレンジファインダ(LRF:Laser Range Finder)又はカメラによる距離計測の結果得られた地形データを用いて環境地図を生成する移動ロボットが提案されている。
 SLAMを利用して環境地図を作成する方法では、計測誤差が累積することにより、環状の環境地図を作成する場合に、開始部分と終了部分とが一致しないことがある(いわゆる、環状経路問題)。
 特許文献1では、このような環状経路問題が発生しないように、環境地図を複数の部分地図に分割することを提案している。
特開2010-92147号公報
 特許文献1に記載された自律移動体では、環境地図を構成する複数の部分地図を作成する際に、複数の連結点を設定し、設定した連結点の中から連結する部分地図の連結点を選択して連結関係を設定する。
 この場合、環境地図をどのように分割して部分地図を作成するかの計画を立てることが難しく、自動化することが困難である。
 本発明の課題は、自律移動体において、環境地図の環状経路問題を解決することにある。
 以下に、課題を解決するための手段として複数の態様を説明する。これら態様は、必要に応じて任意に組み合せることができる。
 本発明の一見地による自律移動体は、操作者の手動操作により、走行開始位置から走行終了位置まで手動走行させながら、複数の通過時刻と前記複数の通過時刻における通過点データの集合でなる走行スケジュールを作成する教示走行モードと、走行スケジュールを再現しながら、走行開始位置から走行終了位置まで自律的に走行する再現走行モードとを実行する。
 自律移動体は、記憶部、走行部、教示データ作成部、走行制御部、障害物情報取得部、地図作成部、自己位置推定部を備える。記憶部は、データを記憶する。走行部は、制御量が入力される複数のアクチュエータを有する。
 教示データ作成部は、走行スケジュールを作成して記憶部に記憶する。障害物情報取得部は、周囲に存在する障害物の位置情報を取得する。自己位置推定部は、環境地図上の自己位置を推定する。環境地図は、障害物情報取得部により取得した障害物の位置情報から作成される。地図作成部は、教示走行モードにおいては、障害物の位置情報を取得した時刻に対応させて障害物の位置情報を環境地図復元用データとして記憶部に記憶する。一方、再現走行モードにおいては、地図作成部は、推定された自己位置に対応する環境地図復元用データを読み出して環境地図を更新する。走行制御部は、教示走行モードにおいては、操作者から入力された走行命令からアクチュエータの制御量を作成して走行部に出力する。一方、再現走行モードにおいては、走行制御部は、更新された環境地図上を走行スケジュールに沿って走行するようにアクチュエータの制御量を作成して走行部に出力する。
 この自律移動体では、操作者が手動操作により自律移動体を操作することで、環境地図復元用データを生成して記憶部に格納している。また、自律移動体は、再現走行モードにおいて、環境地図上の自己位置及び時刻を推定して、推定された自己位置及び時刻に対応する環境地図復元用データを用いて環境地図を更新しながら、走行スケジュールに沿って走行している。このことから、操作性を容易にし、走行経路が環状である場合であっても、操作者が環境地図の作成方法を考慮する必要がないので、車輪のスリップやセンサの計測誤差による環状経路が閉じない問題を解決することができる。
 ここで、教示走行モードにおいて、教示データ作成部は、所定のタイムスケジュール毎に、環境地図上の自己位置と姿勢とを通過点データとして、障害物の位置情報を取得した時刻に対応させることができる。
 この場合、自律移動体は、環境地図上の自己位置と姿勢に基づいて、教示モードにおいて作成された走行スケジュールを再現することにより、再現走行モードにおける自律走行を正確に行うことが可能となる。
 再現走行モードにおいて、地図作成部は、所定のタイムスケジュール毎に、現在の通過点よりも先の時刻に対応する環境地図復元用データを読み出して、読み出した環境地図復元用データに基づいて既に作成した環境地図を更新することができる。
 この場合、自律移動体の環境地図上における自己位置から推定した時刻に基づいて、環境地図復元用データを読み出して、これに基づいて環境地図を更新していることから、車輪のスリップやセンサの計測誤差などによる自己位置のずれを補正することができる。
 自律移動体は、障害物情報取得部により取得された障害物の位置情報に基づいて局所地図を作成し、更新された環境地図と作成された局所地図とを比較するマップマッチング部をさらに備えることができる。ここで、地図作成部は、マップマッチング部の比較結果に応じて、環境地図上の自己位置と姿勢及び環境地図上の自己位置に対応する走行スケジュール中の通過点データを推定することができる。
 この場合、自律移動体は、推定された自己位置に基づいて走行スケジュール中の通過点データを推定して、自己位置を補正することができる。
 自律移動体において、地図作成部は、所定のタイムスケジュール毎に、環境地図のうち既に通過済みの領域であって、推定した自己位置(x,y,θ)から一定の距離が離れた領域の環境地図を削除することができる。
 この場合、走行経路が環状である場合に、車輪のスリップやセンサの計測誤差の累積により生じる環状経路が閉じない問題を解消して、再現走行モード中における確実な自律走行を再現できる。
 本発明の他の見地に係る方法は、自律移動体を、操作者の手動操作により、走行開始位置から走行終了位置まで手動走行させながら、通過時刻と前記通過時刻における通過点データの集合でなる走行スケジュールを作成する走行スケジュールの作成方法である。
 走行スケジュールの作成方法は、以下のステップを含む。
 ◎操作者から入力された走行命令に従って自律移動体を走行させるステップ。
 ◎環境地図上の自己位置を推定するステップ。
 ◎自律移動体の周囲における障害物の位置情報を取得するステップ。
 ◎障害物の位置情報を取得した時刻に対応させて障害物の位置情報を環境地図復元用データとして記憶するステップ。
 ◎走行スケジュールを作成して記憶部に記憶するステップ。
 走行スケジュールを作成して記憶するステップにおいて、環境地図上の自己位置と姿勢とを通過点データとして、障害物の位置情報を取得した時刻に対応させてもよい。
 上記の教示スケジュールの作成方法は、環境地図のうち既に通過済みの領域におけるデータを削除するステップをさらに含でいてもよい。
 本発明のさらに他の見地に係る方法は、走行スケジュールを再現しながら、走行開始位置から走行終了位置まで自律的に走行する自律移動体の走行方法である。
 自律移動体の走行方法は、以下のステップを含む。
 ◎環境地図上の自己位置を推定するステップ。
 ◎自律移動体の周囲における障害物の位置情報を取得するステップ。
 ◎推定された自己位置に対応する環境地図復元用データを読み出して前記環境地図を更新するステップ。
 ◎更新された環境地図上を走行スケジュールに沿って走行するように作成された制御量に基づいて自律移動体を走行させるステップ。
 上記の自律移動体の走行方法においては、環境地図上の自己位置及び時刻を推定して、推定された自己位置及び時刻に対応する環境地図復元用データを用いて環境地図を更新しながら、走行スケジュールに沿って走行している。このことから、走行経路が環状である場合であっても、操作者が環境地図の作成方法を考慮する必要がないので、車輪のスリップやセンサの計測誤差による環状経路が閉じない問題を解決することができる。
 推定された自己位置に対応する環境地図復元用データを読み出して環境地図を更新するステップにおいて、現在の通過点よりも先の時刻に対応する環境地図復元用データを読み出して、読み出した環境地図復元用データに基づいて既に作成した環境地図を更新してもよい。
 上記の自律移動体の走行方法は、取得された障害物の位置情報に基づいて局所地図を作成し、更新された環境地図と作成された局所地図とを比較するステップをさらに含んでいてもよい。
 このとき、環境地図上の自己位置を推定するステップにおいて、更新された環境地図と作成された局所地図との比較結果に応じて、環境地図上の自己位置と姿勢及び環境地図上の自己位置に対応する走行スケジュールの中の通過点データを推定してもよい。
 上記の自律移動体の走行方法は、環境地図のうち既に通過済みの領域におけるデータを削除するステップをさらに含んでいてもよい。
 本発明の構成によれば、環境地図において環状経路が閉じない問題を解決するとともに、環境地図の分割を考慮することなく、操作者が容易に走行経路の教示を行うことが可能な自律移動体を提供できる。
一実施形態による自律移動体の概略構成を示すブロック図。 一実施形態による清掃用ロボットの制御ブロック図。 自律移動体の制御動作の概略を示す制御フローチャート。 教示走行モードにおける自律移動体の制御フローチャート。 レーザレンジセンサの走査範囲の一例を示す説明図。 レーザレンジセンサの走査範囲の他の例を示す説明図。 レーザレンジセンサにより検出した障害物の位置情報の一例を示すテーブル。 センサを中心とした座標系でのローカルマップの説明図。 自己位置推定処理の制御フローチャート。 事後確率分布の一例を示す説明図。 事前確率分布の一例を示す説明図。 尤度計算処理の制御フローチャート。 尤度計算処理により得られた尤度分布の一例を示す説明図。 事後確率計算処理により得られた事後確率分布の一例を示す説明図。 グローバルマップ更新処理の概念構成を示す説明図。 走行スケジュールの説明図。 グローバルマップの更新・削除の説明図。 環状の走行経路の説明図。 再現走行モードにおける自律移動体の制御フローチャート。 動的環境地図の更新処理の説明図。 自己位置推定時における尤度計算の説明図。
(1)概略構成
(1-1)構成
 以下、図面を参照して本発明の実施形態について詳細に説明する。なお、各図において、同一要素には同一符号を付して重複する説明を省略する。
 図1は、本発明の一実施形態による自律移動体の概略構成を示すブロック図である。
 自律移動体1は、走行車本体内に設けられる制御部11、測距センサ31、操作部32、表示部33、走行部27を備えている。
 測距センサ31は、自律移動体1の走行方向前側にある障害物を検出するセンサである。測距センサ31は、例えば、レーザ発振器によりパルス発振されたレーザ光を目標物に照射し、目標物から反射した反射光をレーザ受信器により受信することにより、目標物までの距離を算出するレーザレンジファインダ(LRF:Laser Range Finder)である。測距センサ31は、照射するレーザ光を回転ミラーを用いて所定の角度で扇状にレーザ光を操作することができる。このような測距センサ31は、自律移動体1の後方にも配置することができる。
 操作部32は、自律移動体1を手動操作により走行させる際に、操作者が操作するユーザインターフェイスであって、走行速度の指示を受け付けるスロットル、走行方向の指示を受け付けるハンドルなどを備える。
 表示部33は、現在の走行状況に関する情報、その他の各種情報を表示するものであって、液晶ディスプレイ、LEDランプなどで構成される。
 走行部27は、走行経路を走行するための複数の走行車輪(図示せず)を備え、これら走行車輪を駆動するためのアクチュエータとしての複数の走行モータ(図示せず)を備えている。
 制御部11は、CPU、RAM、ROMを備えるコンピュータであり、所定のプログラムを実行することで走行制御を行う。
 制御部11は、障害物情報取得部21、地図作成部22、自己位置推定部23、教示データ作成部24、記憶部25、走行制御部26を備える。
 障害物情報取得部21は、測距センサ31の検出信号に基づいて、自機の周囲に存在する障害物の位置情報を取得する。
 地図作成部22は、障害物情報取得部21により取得した障害物の位置情報に基づいて、自律移動体1の走行経路を含む環境地図をグローバルマップとして作成する。
 自己位置推定部23は、グローバルマップ上の自己位置を推定する。
 走行制御部26は、入力される走行命令を解釈し、アクチュエータの制御量を生成して走行部27に入力する。
 教示データ作成部24は、通過時刻と通過時刻に対応する通過点データの集合とからなる走行スケジュールを作成する。
 記憶部25は、前述の走行スケジュールと、環境地図復元用データとを記憶する。環境地図復元用データとは、自機の周囲における障害物の位置情報を取得した時刻に対応させてなるデータであり、地図作成部22によって作成される。
(1-2)教示走行モード
 この自律移動体1は、操作者の手動操作に基づいて走行駆動する教示走行モードを実行する。教示走行モードでは、走行開始位置から走行終了位置までの間、操作者の手動操作による走行命令を操作部32を介して受け付けて、走行制御部26によりアクチュエータの制御量を生成する。その結果、走行部27により走行が実行される。
 この時、所定のタイムスケジュール毎に、障害物情報取得部21が、測距センサ31からの出力信号に基づいて、障害物の位置情報を取得する。
 自己位置推定部23は、所定のタイムスケジュール毎に、走行部27による移動量に基づいて自己位置及び姿勢を推定し、さらにグローバルマップと障害物情報取得部21により取得した障害物の位置情報に基づいて、推定した自己位置の補正を行う。
 教示データ作成部24は、グローバルマップ上の自己位置及び姿勢を通過点データとし、それに通過時刻に対応させた走行スケジュールを、記憶部25に記憶させる。
(1-3)再現走行モード
 自律移動体1は、記憶部25に記憶された走行スケジュールに基づいて、自律走行を行う再現走行モードを実行する。
 再現走行モードでは、所定のタイムスケジュール毎に以下の動作が実行される。最初に、自己位置推定部23がグローバルマップ上の自己位置を推定し、次に、障害物情報取得部21が自機の周囲における障害物の位置情報を取得する。さらに地図作成部22は、推定された自己位置に基づいて、記憶部25に記憶された環境地図復元用データを読み出してグローバルマップを更新する。そして、走行制御部26が、更新されたグローバルマップ上を走行スケジュールに沿って走行するようにアクチュエータの制御量を作成して、それを走行部27に入力する。
(2)機能ブロック
 本発明の第1実施形態による自律移動体を以下に説明する。
 図2は、本発明の第1実施形態が採用される清掃用ロボットの制御ブロック図である。
 清掃用ロボット40は、自律移動体1と、スロットル42、清掃部ユーザインターフェイス43を備える。清掃用ロボット40は、さらに、清掃部(図示せず)を有している。清掃部は、自律移動体1の下部に設けられており、自律移動体1の移動と共に床面を清掃するための装置である。
 スロットル42は、図1の操作部32に対応するものであり、操作者の手動操作による指示入力を受け付ける。スロットル42は、軸周りの回転角度により制御の指示入力を受け付けるスロットルグリップを左右独立して設けることができる。また、スロットル42は、前進速度を受け付けるスロットルグリップと、操舵方向の指示を受け付けるハンドルの組合せとすることも可能である。さらに、スロットル42は、スロットルレバーやその他の入力手段を組み合わせたものとすることができる。
 清掃部ユーザインターフェイス43は、清掃部(図示せず)による清掃動作の指示を操作者から受け付けるものであり、例えば、操作ボタン、タッチパネル、その他操作スイッチの組合せで構成できる。
 自律移動体1は、コントロールボード51、ブレーカ52、前方レーザレンジセンサ53、後方レーザレンジセンサ54、バンパースイッチ55、非常停止スイッチ56、スピーカ57、走行部27を備える。
 ブレーカ52は、主電源スイッチであって、操作者の操作に基づいて、自律移動体1の各部にバッテリ(図示せず)からの電源電圧供給のオン、オフを行う。
 前方レーザレンジセンサ53は、自律移動体1の前方に位置する障害物の位置情報を検出するものであり、所定の角度範囲で水平方向にレーザ光を照射して、障害物から反射される反射光を受信して、自機から障害物までの距離を測定する。
 後方レーザレンジセンサ54は、自律移動体1の後方に位置する障害物の位置情報を検出するものであり、所定の角度範囲で水平方向にレーザ光を照射して、障害物から反射される反射光を受信して、自機から障害物までの距離を測定する。
 バンパースイッチ55は、自律移動体1の車体外周に取り付けられた感圧スイッチとすることができ、障害物に接触したことを検出して、検出信号を出力する。
 非常停止スイッチ56は、自律移動体1の動作を緊急停止させる指示を受け付けるものであって、操作者による操作が可能なスイッチである。
 スピーカ57は、自律移動体1の動作中における各種情報を音により操作者に通知する。
 コントロールボード51は、CPU、ROM、RAMを搭載する回路基板であり、制御部11、教示データ作成部24、SLAM処理部63、不揮発メモリ64、障害物情報取得部21、記憶部25、走行制御部26を含む。
 記憶部25は、各種データを記憶するものであり、教示走行モードにおいて作成された走行スケジュール及び環境地図復元用データを、時刻又は時刻に関連付けた識別子に関連付けて記憶する。また、記憶部25は、教示データ作成部24(後述)により作成された走行スケジュールと、地図作成部22(後述)により作成された環境地図復元用データとを記憶する。
 制御部11は、コントロールボード51に搭載されるマイクロプロセッサであり、所定のプログラムを実行することにより、自律移動体1の各部の動作を制御する。
 教示データ作成部24は、教示走行モードにおける通過時刻と通過時刻に対応する通過点データの集合である走行スケジュールを作成する。
 SLAM処理部63は、自己位置推定と環境地図作成を同時に行うSLAM(Simultaneous Localization and Mapping)処理を実行する機能ブロックであって、地図作成部22、自己位置推定部23、マップマッチング部73を備える。
 地図作成部22は、障害物情報取得部21により取得した障害物の位置情報に基づいて、ローカルマップ(局所地図)及びグローバルマップ(環境地図)を作成する。地図作成部22は、教示走行モードにおいて、自機の周囲に位置する障害物の位置情報を取得した時刻に対応させ、それを環境地図復元用データとして記憶部25に記憶する。また、地図作成部22は、再現走行モードにおいて、現在の通過点よりも先の時刻に対応する環境地図復元用データを記憶部25から読み出して、それに基づいてグローバルマップを更新する。
 自己位置推定部23は、前回の自己位置からの移動量を前回の自己位置に加算することで、現在の自己位置を推定する。
 マップマッチング部73は、自機の周囲に位置する障害物の位置情報に基づいて作成されたローカルマップ(局所地図)を、次に地図作成部22により更新されたグローバルマップ(環境地図)と比較することで、自己位置推定部23により推定された自己位置を補正する。
 不揮発メモリ64は、主制御部61のブートプログラム、走行制御に関するプログラム、各種パラメータなどを記憶する。
 障害物情報取得部21は、前方レーザレンジセンサ53及び後方レーザレンジセンサ54の検出信号に基づいて、自機の周囲に位置する障害物の位置情報を取得する。
 走行制御部(モーションコントローラ)26は、入力される走行命令に基づいて走行部27のアクチュエータの制御量を生成して、それを走行部27に入力する。入力される走行命令は、教示走行モードにおいては、スロットル42を介して入力される操作者からの指示入力である。また、入力される走行命令は、再現走行モードにおいては、SLAM処理部63により推定されるグローバルマップ上の自己位置、更新されたグローバルマップ及び走行スケジュールに基づいて生成される走行命令である。
 走行制御部26は、演算部81、判断部82、移動制御部83を備えている。判断部82は、入力された走行命令を解釈する。演算部81は、判断部82により解釈された走行命令に基づいて、走行部27のアクチュエータの制御量を算出する。移動制御部83は、演算部81により算出された制御量を走行部27に出力する。
 走行部27は、2つの走行車輪(図示せず)に対応して、一対のモータ93、94を有し、それぞれの回転位置を検出するエンコーダ95、96と、モータ駆動部91、92を備えている。
 モータ駆動部(モータドライバ)91は、走行制御部26から入力される制御量と、エンコーダ95により検出されるモータ93の回転位置とに基づいて、モータ93をフィードバック制御する。モータ駆動部92は、同様に、走行制御部26から入力される制御量と、エンコーダ96により検出されるモータ94の回転位置とに基づいて、モータ94をフィードバック制御する。
 教示データ作成部24、障害物情報取得部21、走行制御部26、及びSLAM処理部63は、それぞれ制御部11がプログラムを実行することにより実現される機能ブロックとすることができ、また、それぞれ独立した集積回路で構成することも可能である。
(3)制御動作
 図3は、自律移動体の制御動作の概略を示す制御フローチャートである。以下、図2における制御部11が所定のプログラムを実行することにより、教示データ作成部24、SLAM処理部63、障害物情報取得部21、及び走行制御部26の各機能ブロックを実現するものとして説明する。
 ステップS31において、制御部11は、操作者によりモード選択が行われたか否かを判別する。具体的には、操作者による操作部32の操作により指示入力を受け付けた場合、又はリモコンからの指示入力信号を受信した場合に、制御部11はステップS32に移行する。
 ステップS32において、制御部11は選択されたモードが教示走行モードであるか否かを判別する。制御部11は、教示走行モードを選択する指示入力を受け付けたと判断した場合、ステップS33に移行し、そうでない場合にはステップS34に移行する。
 ステップS33において、制御部11は教示走行モードを実行し、その後、ステップS36に移行する。
 ステップS34において、制御部11は選択されたモードが再現走行モードであるか否かを判別する。制御部11は、再現走行モードを選択する指示入力を受け付けたと判断した場合、ステップS35に移行する。
 ステップS35において、制御部11は再現走行モードを実行し、その後、ステップS36に移行する。
 ステップS36において、制御部11は、終了指示を受け付けたか否か、もしくは教示された走行スケジュールを終えたか否かを判別する。具体的には、制御部11は、操作者による操作部32の操作により処理終了する旨の指示入力があった場合、リモコンにより処理終了する旨の指示入力信号を受信した場合、あるいは、教示走行モードにより作成された走行スケジュールを終了したと判断した場合には、処理を終了し、そうでない場合には、ステップS31に移行する。
(3-1)教示走行モード
 図4は、教示走行モードにおける自律移動体の制御フローチャートである。
 ステップS40において、制御部11は、初期設定を行う。具体的に、制御部11は、前方レーザレンジセンサ53及び後方レーザレンジセンサ54の検出信号に基づいて、自機の周囲に位置する障害物の位置情報を取得し、これに基づいて自機の周囲におけるローカルマップを作成する。
 図5は、レーザレンジセンサの走査範囲の一例を示す説明図である。
 自律移動体1は、前端部に前方レーザレンジセンサ53が取り付けられており、パルス発振されたレーザ光を回転ミラーにより扇状に走査して、そして自律移動体1の前方に位置する障害物から反射する反射光を受信する。
 図5に示す例では、前方レーザレンジセンサ53は、前方約180度の走査領域101にレーザ光を送信する。前方レーザレンジセンサ53は、障害物から反射した反射光を所定周期で受信し、送信したレーザ光の発信パルスと受信した反射光の受信パルスとを比較して、障害物までの距離を検出する。
 自律移動体1には、後端部に後方レーザレンジセンサ54が取り付けられている。後方レーザレンジセンサ54は、前方レーザレンジセンサ53と同様に、パルス発振されたレーザ光を回転ミラーにより扇状に走査して、その結果、自律移動体1の後方に位置する障害物から反射する反射光を受信する。
 図5に示す例では、後方レーザレンジセンサ54は、後方約180度の走査領域103にレーザ光を送信する。ただし、自律移動体1は、後述する教示走行モードにおいて、障害物の検出を行わないマスク領域105を設け、第1走査領域115及び第2走査領域117に位置する障害物の位置情報を検出する。なお、マスク領域150は、自律移動体1の後方に位置する操作者に対応させて設けられている。
 図6は、レーザレンジセンサの走査範囲の他の例を示す説明図である。
 図5に示す例では、前方レーザレンジセンサ53及び後方レーザレンジセンサ54が、約180度の角度でレーザ光の走査を行っているのに対して、図6に示す例では、それぞれ約240度の角度でレーザ光の走査を行っている点で異なる。
 具体的には、前方レーザレンジセンサ53による走査領域101は前方240度の角度範囲である。また、後方レーザレンジセンサ54による走査領域103は後方240度の角度範囲であり、マスク領域105を除く第1走査領域115及び第2走査領域117に位置する障害物の位置情報を検出する。
 図7は、レーザレンジセンサにより検出した障害物の位置情報の一例を示すテーブルである。
 前方レーザレンジセンサ53及び後方レーザレンジセンサ54は、所定の走査領域にレーザ光を照射し、さらに障害物からの反射光を受信して、その後に照射したレーザ光の発信パルスと受信した反射光の受信パルスとに基づいて、障害物までの距離Rを出力値として算出する。また、前方レーザレンジセンサ53及び後方レーザレンジセンサ54は、障害物までの距離Rを得た時のセンサ角度Nも出力する。
 制御部11は、前方レーザレンジセンサ53及び後方レーザレンジセンサ54の出力を、所定の角度毎に取得し、それに基づいてセンサ角度Nと障害物までの距離Rとを対応付けた位置情報テーブルを作成する。図7に示す位置情報テーブルは、0.72度毎にセンサ出力を取得して障害物の位置情報テーブルとしたものである。
 制御部11は、センサ座標系によるローカルマップの作成処理を実行する。具体的には、制御部11は、前方レーザレンジセンサ53及び後方レーザレンジセンサ54により取得した障害物の位置情報テーブル(例えば、図7に示す障害物の位置情報テーブル)に基づいて、センサを中心とした座標系における自己位置近傍の環境地図であるローカルマップを作成する。
 例えば、図5及び図6に示すように、制御部11は、前方レーザレンジセンサ53及び後方レーザレンジセンサ54により走査される走査領域101、103内を、所定の面積のグリッドに分割し、次に、障害物の位置情報テーブルに基づいて、各グリッドにおける障害物存在確率を算出する。
 図8は、センサを中心とした座標系でのローカルマップの説明図である。
 制御部11は、前方レーザレンジセンサ53又は後方レーザレンジセンサ54のセンサ中心を原点132とし、障害物の位置情報テーブルのセンサ角度Nに対応する走査線131上のグリッドに対して障害物存在確率を決定する。ここで、障害物が存在するグリッドの障害物存在確率を「1.0」とし、障害物が存在するか否か不明であるグリッドの障害物存在確率を「0」とし、障害物と原点との間に位置するグリッドの障害物存在確率を「-1+(r/R)=-1.0~0」とする。
 制御部11は、走査線131上であって、原点132からの距離rが障害物までの距離Rと一致するグリッドを検出グリッド133として、そのグリッドの障害物存在確率を「1.0」とする。
 制御部11は、走査線131上であって、原点132からの距離rが障害物までの距離R未満にあるグリッドには障害物が存在しないと判断する。図8において、原点132と検出グリッド133との間に位置する中間グリッド134~138の障害物存在確率を「-1+(r/R)=-1.0~0」とする。
 制御部11は、走査線131上であって、原点132からの距離rが障害物までの距離Rよりも遠くにあるグリッドには、障害物が存在するか否かは不明であると判断して、不明グリッド139の障害物存在確率を「0」とする。
 このことにより、図5又は図6に示すように、前方レーザレンジセンサ53及び後方レーザレンジセンサ54を中心として、障害物存在確率が「1.0」である検出グリッド107と、障害物存在確率が「-1.0~0」である中間グリッド109と、障害物存在確率が「0」である不明グリッド111とを含むセンサ座標系によるローカルマップが作成される。
 ただし、後方レーザレンジセンサ54のマスク領域105に位置するグリッドは、不明グリッド113として障害物存在確率が「0」に設定される。
 図5及び図6に示す例では、自律移動体1の前方に位置して直線状に検出グリッド107が存在しており、したがって走行経路を構成する壁面又は大型の障害物が存在すると推定することができる。
 このようにして、センサ座標系のローカルマップ作成処理では、前方レーザレンジセンサ53及び後方レーザレンジセンサ54を中心とする周囲に位置する各グリッドの障害物存在確率を算出して、これをセンサ座標系のローカルマップとして出力する。
 ステップS40における初期設定では、前述したように、制御部11では、障害物情報取得部21が、前方レーザレンジセンサ53及び後方レーザレンジセンサ54の検出信号から障害物の位置情報を取得し、さらに、地図作成部22が自機の周囲に位置するローカルマップを作成する。制御部11は、障害物の位置情報を取得した時刻(t1)における自己位置の座標と姿勢を含む自己位置(x1,y1,θ1)が絶対座標系の原点(あるいは所定の座標)になるように、ローカルマップをグローバルマップとして置き換える。
 この時、制御部11は、グローバルマップにおける現在の自己位置(x1,y1,θ1)が走行開始位置として適切であるか否かの判断を行う。例えば、自己位置の周辺に障害物がほとんど存在しない場合又は単純形状が連続する場合には、再現走行モードにおいて走行開始位置を判定することが困難であることから、制御部11は表示部(図示せず)又はスピーカ57を通じて、走行開始位置として不適切である旨の通知を行って、操作者に走行開始位置の変更を促す。
 制御部11は、自己位置(x1,y1,θ1)が走行開始位置として適切であると判断した場合には、障害物情報取得部21により取得した障害物の位置情報を時刻(t1)と関係付けて環境地図復元用データとして、それを記憶部25に記憶させる。また、制御部11は、自己位置の座標(x1,y1)と自機の姿勢(θ1)及び時刻(t1)を関係付けた通過点データ(x1,y1,θ1,t1)を走行スケジュールとして、記憶部25に記憶させる。
 さらに、制御部11は、地図作成部22により作成された自己位置(x1,y1,θ1)を中心としたグローバルマップの一部を、記憶部25に一時的に記憶させる。
 ステップS41において、制御部11は、操作者が入力した走行命令に基づいて、走行部27のアクチュエータの制御量を作成し、それを走行部27に出力する。教示走行モードでは、制御部11は、操作者がスロットル42を操作することにより入力する走行速度及び操舵に関する指示入力を受け付け、走行経路内における走行制御を行う。操作者による指示入力は、リモコンによる無線での指示入力信号を受信する方式でもよい。
 ステップS42において、制御部11はデータ計測処理を実行する。具体的には、制御部11は、前方レーザレンジセンサ53及び後方レーザレンジセンサ54により、レーザ光を照射し、さらに障害物から反射した反射光を受信することで、障害物の距離及び方向に関する障害物情報を得る。
 また、制御部11は、さらに自律移動体1の一定時間内の移動量に関する情報を取得する。具体的には、制御部11は、走行部27のエンコーダ95、96から、それぞれ対応するモータ93、94の回転位置に関する情報を取得し、一定時間内の移動量を算出する。
 一定時間内の移動量は、自律移動体1の前回の計測時点(t-1)の2次元座標(x(t-1),y(t-1))からの移動量と、進行方向の変更量とを備える移動量(dx,dy,dθ)として表すことができる。
 ステップS43において、制御部11は、センサ座標系によるローカルマップの作成処理を実行する。具体的には、前方レーザレンジセンサ53及び後方レーザレンジセンサ54により取得した障害物の位置情報テーブル(例えば、図7に示す障害物の位置情報テーブル)に基づいて、センサを中心とした座標系における自機の周囲に位置する所定範囲を所定の大きさのグリッドに分割し、さらに各グリッドに算出された障害物存在確率を対応付けたローカルマップを作成する。
 ステップS44において、制御部11は、自己位置推定部23により、時刻(t-1)における自己位置に時刻(t-1)~時刻(t)間の移動量(dx,dy,dθ)を加算することで時刻(t)の自己位置を推定する。また、制御部11は、自己位置のパラメータとして、2次元座標(x,y)と進行方向(θ)を有する3次元のグリッド空間(x,y,θ)を想定し、さらに移動前後における各グリッドの自己位置の確率分布を算出することで、マップマッチングを行う。
 図9は、自己位置推定処理の制御フローチャートである。
 ステップS91において、制御部11は、事前確率計算処理を実行する。
 制御部11は、現在時刻である時刻(t)を用いて、時刻(t-1)の事後確率分布と、時刻(t-1)~時刻(t)間の移動量(dx,dy,dθ)とに基づいて、時刻(t)における自己位置の事前確率分布を算出する。
 図10は、事後確率分布の一例を示す説明図であり、図11は、事前確率分布の一例を示す説明図である。
 制御部11は、図10に示す時刻(t-1)の事後確率分布に、時刻(t-1)~時刻(t)間の移動量(dx,dy,dθ)を加算して、座標をシフトさせる。
 制御部11は、さらに、正規分布を畳み込み演算することによって、図11に示すような時刻(t)における事前確率分布を得る。
 制御部11は、このような事前確率計算処理を3次元グリッド空間(x,y,θ)内の各グリッドに対して実行することにより、車輪のスリップなどを考慮しながら、エンコーダ95、96から取得した移動量(dx,dy,dθ)を加えた自己位置の確率分布を更新する。
 ステップS92において、制御部11は尤度計算処理を実行する。
 図12は、尤度計算処理の制御ブローチャートである。
 ステップS121において、制御部11は、仮の自己位置座標を抽出する。具体的には、制御部11は、事前確率分布処理により算出された時刻(t)における事前確率のうち閾値を超える座標を1つ抽出し、これを仮の自己位置座標とする。制御部11は、時刻(t)の事前確率分布、ローカルマップ、及び作成中のグルーバルマップに基づいて、抽出した仮の自己位置座標における尤度を算出する。
 ステップS122において、制御部11は、座標変換処理を実行する。具体的には、制御部11は、センサ座標系によるローカルマップを、仮の自己位置座標に基づいて、絶対座標系のローカルマップに変換する。
 制御部11は、事前確率分布に基づいて抽出された仮の自己位置座標を(x,y,θ)とし、センサ座標系によるローカルマップの各グリッドの座標を(lx,ly)として、絶対座標系のローカルマップの各グリッドの座標(gx,gy)を数式1により算出する。
Figure JPOXMLDOC01-appb-M000001

 
 ステップS123において、制御部11は、マップマッチング処理を実行する。
 制御部11は、作成中のグローバルマップと絶対座標系のローカルマップとのマップマッチング処理を行い、それに基づいて絶対座標系のローカルマップ上における各グリッドの障害物存在確率を算出する。
 制御部11は、絶対座標系のローカルマップにおいて、障害物存在確率「1.0」のグリッドがN個存在した場合、i番目のグリッドの座標を(gx_occupy(i),gy_occupy(i))とし、グローバルマップ上の座標(gx_occupy(i),gy_occupy(i))における障害物存在確率をGMAP(gx_occupy(i),gy_occupy(i))として、以下の数式2により一致度を表すスコアsを算出する。
 
Figure JPOXMLDOC01-appb-M000002

 
 制御部11は、複数の仮の自己位置に対してそれぞれスコアsを算出して、それを自己位置の尤度分布とする。
 図13は、尤度計算処理により得られた尤度分布の一例を示す説明図である。
 ステップS93において、制御部11は、事後確率計算処理を実行する。具体的に、制御部11は、絶対座標系のローカルマップの各グリッドに対して、時刻(t)における事前確率分布に、時刻(t)における尤度分布を掛けることにより、時刻(t)における事後確率を算出する。
 図14は、事後確率計算処理により得られた事後確率分布の一例を示す説明図である。図14では、図11に示す時刻(t)における事前確率分布と、図13に示す時刻(t)における尤度分布とを掛けて得られた事後確率分布を示している。
 制御部11は、複数の仮の自己位置に対して事後確率計算処理を実行し、その結果事後確率が最大となるものを自己位置とすることができる。
 上述のような構成とすることにより、尤度が同程度の値を持つ仮の自己位置に対して、事前確率の差を事後確率に反映させることができ、さらに、前方レーザレンジセンサ53、後方レーザレンジセンサ54と走行部27のエンコーダ95,96の出力信号に基づいてデッドレコニング(Dead-Reckoning)により、自己推定を推定することが可能となる。また、時刻(t)における事前確率計算を行う際に、時刻(t-1)の事後確率を用いていることから、走行部27における車輪(図示せず)のスリップや前方レーザレンジセンサ53、後方レーザレンジセンサ54のノイズなどの外乱要因を阻止でき、つまり自己位置を正確に推定できる。
 ステップS45において、制御部11は、障害物情報取得部21により、グローバルマップ上における現在の自己位置の周囲に位置する障害物の位置情報を取得する。
 ステップS46において、制御部11は、障害物情報取得部21により取得した障害物の位置情報を時刻に対応させて環境地図復元用データを作成し、それを記憶部25に記憶させる。
 ここで、記憶部25に記載される環境地図復元用データは、グローバルマップ上の自己位置の周囲を所定面積の単位グリッドで分割し、さらに各グリッドに障害物存在確率を対応付けて、障害物の位置情報を取得した時刻(t)と関連つけたものとすることができる。
 ステップS47において、制御部11は、グローバルマップ更新処理を実行する。具体的に、制御部11は、時刻(t-1)におけるグローバルマップに対して、自己位置推定処理により推定された自己位置により座標変換を行った絶対座標系のローカルマップを足し合わせすることで、時刻(t)におけるグローバルマップを作成する。
 図15は、グローバルマップ更新処理の概念構成を示す説明図である。図15に示す例では、自己位置近傍の4×4のグリッドを対象にしており、(a)は時刻(t-1)におけるグローバルマップ、(b)は時刻(t)における絶対座標系のローカルマップ、(c)は更新された時刻(t)におけるグローバルマップを示す。
 図15に示すように、時刻(t-1)におけるグローバルマップ及び時刻(t)におけるローカルマップでは、それぞれのグリッドに障害物存在確率が記憶されている。前述したように、障害物が存在していると推定されるグリッドの障害物存在確率は「1.0」、障害物が存在していないと推定されるグリッドの障害物存在確率は「-1.0~0」、障害物の存在が不明であるグリッドの障害物存在確率は「0」に設定されるものとする。
 グローバルマップ更新処理では、制御部11は、自己位置推定処理により推定された自己位置に基づいて、絶対座標系に変換されたローカルマップの各グリッド(図15(b))をグローバルマップの各グリッド(図15(a))に対応させ、各グリッドの障害物存在確率を加算する。
 制御部11は、各グリッドの障害物存在確率が演算により「1.0」以上になる場合、及び「-1.0」以下になる場合には、切り捨て計算を行って、それぞれ「1.0」、「-1.0」とする。このことにより、繰り返し障害物が存在すると判別されたグリッドの障害物存在確率は「1.0」に近い値となり、繰り返し障害物が存在しないと判別されたグリッドの障害物存在確率は「-1.0」に近い値となる。
 このようにして、制御部11は、図15(c)に示す時刻(t)におけるグローバルマップの各グリッドの障害物存在確率を算出することで、グローバルマップを更新する。
 時刻(t)におけるグローバルマップは、少なくとも次の時刻(t+1)において、制御部11が自己位置推定処理を実行するために必要な範囲を含むものであり、一時的に記憶部25に記憶される。
 このグローバルマップ更新処理では、グローバルマップの各グリッドの障害物存在確率が、絶対座標系のローカルマップの対応する各グリッドの障害物存在確率を加算することで更新するので、車輪のスリップやセンサの計測誤差に基づくノイズの影響を極力少なくすることができる。
 ステップS48において、制御部11は、自律移動体1が通過後の通過点におけるグローバルマップを削除する。
 前述したように、時刻(t)において更新されるグローバルマップが本当に必要なのは、次の時刻(t+1)において、制御部11が自己位置推定処理を実行するために必要な範囲だけである。したがって、次の時刻(t+1)において、制御部が自己位置推定処理を実行するために必要でない範囲は、ステップS48において削除される。このため、環境地図において、環状経路が閉じないという問題を考慮する必要がなくなる。
 図16は、走行スケジュールの説明図、図17は、グローバルマップの更新・削除の説明図、図18は、環状の走行経路の説明図である。
 図16に示すように、教示走行モードにおいて、自律移動体1が操作者の手動操作に基づいて、環状の走行経路1601上の通過点1611-1・・・に沿って走行するものとする。
 図17に示すように、時刻(t1)における通過点1611-1において、制御部11は自己位置の周囲に位置する所定の範囲でローカルマップ1712-1を作成し、これによりグローバルマップを更新する。同様にして、時刻(tn)における通過点1611-nにおいて、制御部11は自己位置の周囲に位置する所定の範囲でローカルマップ1712-nを作成し、これによりグローバルマップを更新する。この時、制御部11は、グローバルマップのうち、現在の通過点1611-nから一定の距離が離れた領域のデータを削除する。
 図18に示すように、時刻(tm)における通過点1611-mでは、ローカルマップ1712-mによりグローバルマップが更新されるが、時刻(t1)のローカルマップ1712-1により更新されるグローバルマップと重複する部分を含む。
 前述したように、グローバルマップのうち、現在の自己位置から一定の距離が離れた領域を削除していることから、時刻(tm)において自律移動体1が通過点1611-mに到達した時には、時刻(t1)においてローカルマップ1712-1に基づいて更新されたグローバルマップのデータは既に削除されている。したがって、ローカルマップにより更新されるグローバルマップが、前に作成された同一座標近傍のグローバルマップと重複することが防止され、車輪のスリップやセンサの計測誤差などがあっても、環状経路が閉じないという問題を防止できる。
 ステップS49において、制御部11は、教示データ作成部24により、走行スケジュールを作成し記憶部25に記憶させる。具体的には、図17に示すような走行経路1601上の通過点1611-1・・・に沿って走行する場合、制御部11は、時刻tにおいて走行経路1601上の通過点1611のグローバルマップ上における座標(x,y)と、自律移動体1の走行方向を示す姿勢(θ)及び時刻(t)でなる通過点データ(x,y,θ,t)を、記憶部25に記憶させる。
 所定の時間間隔(タイムスケジュール)に基づいて、時刻t1、t2・・・において、自律移動体1が通過点1611-1、1611-2・・・1611-nを通過する場合、教示データ作成部24は、第1通過点1611-1、第2通過点1611-2、・・・第n通過点1611-nにおける通過点データ(x1,y1,θ1,t1)、(x2,y2,θ2,t2)・・・(xn,yn,θn,tn)の集合でなる走行スケジュールを記憶部25に記憶させる。
 ステップS50において、制御部11は、終了指示を受け付けたか否かを判別する。具体的には、制御部11は、操作者による操作部32の操作により処理終了する旨の指示入力があった場合、又はリモコンにより処理終了する旨の指示入力信号を受信した場合には、終了処理を実行することで処理を終了し、そうでない場合には、プロセスはステップS41に移行する。
(3-2)再現走行モード
 図19は、再現走行モードにおける自律移動体の制御フローチャートである。
 ステップS191において、制御部11は、データ計測処理を実行する。具体的には、制御部11は、前方レーザレンジセンサ53及び後方レーザレンジセンサ54により、レーザ光を照射しさらに障害物から反射した反射光を受信することで、障害物の距離及び方向に関する障害物情報を得る。ここでのデータ計測処理は、教示走行モードにおけるデータ計測処理と同様であり、詳細説明は省略する。
 ステップS192において、制御部11は、センサ座標系によるローカルマップの作成処理を実行する。具体的には、前方レーザレンジセンサ53及び後方レーザレンジセンサ54により取得した障害物の位置情報テーブル(例えば、図7に示す障害物の位置情報テーブル)に基づいて、センサを中心とした座標系における自己位置近傍の各グリッドに障害物存在確率を対応させたローカルマップを作成する。
 ステップS193において、制御部11は、自己位置推定部23により、グローバルマップ上の自己位置を推定する。自己位置の推定処理は、教示走行モードにおける自己位置の推定処理と同様に、時刻(t-1)における自己位置に時刻(t-1)~時刻(t)間の移動量(dx,dy,dθ)を加算することで時刻(t)の自己位置として推定する。また、制御部11は、自己位置のパラメータとして、2次元座標(x,y)と進行方向(θ)を有する3次元のグリッド空間(x,y,θ)を想定した上で、移動前後における各グリッドの自己位置の確率分布を算出することでマップマッチングを行って、それにより自己位置の補正を行うことができる。
 ステップS194において、制御部11は、推定された自己位置に対応する環境地図復元用データを用いてグローバルマップを復元し、このグローバルマップと、障害物情報取得部21により取得した障害物の位置情報から作成したローカルマップとを比較することで、現在の自己位置に対応する走行スケジュール中の時刻を推定する。
 ステップS194において、制御部11は、記憶部25に記憶されている走行スケジュールのうち推定した時刻に対応する通過点データを、記憶部25から読み出す。
 ステップS195において、制御部11は、推定された自己位置に対応する環境地図復元用データを用いて、グローバルマップを更新する。具体的には、既に作成されているグローバルマップの各グリッドの障害物存在確率に、復元されたグローバルマップの各グリッドの障害物存在確率を加算することで、グローバルマップの各グリッドの障害物存在確率を更新する。
 ステップ196において、制御部11は、自律移動体1が通過後の通過点におけるグローバルマップを削除する。ここでは、教示走行モードと同様に、時刻(t)においてグローバルマップを更新する際に、次の時刻(t+1)において、制御部11が自己位置推定処理を実行するために必要でない範囲が、グローバルマップから削除される。
 ステップS198において、制御部11は、走行部27のアクチュエータの制御量を作成し、それを走行部27に出力する。具体的には、制御部11は、グローバルマップ上の自己位置と、記憶部25から読み出された通過点データとに基づいて、走行スケジュールに沿うようにアクチュエータの制御量を決定し、これに基づく走行命令を走行部27に入力する。
 ステップS199において、制御部11は、再現走行モードを終了するか否かを判別する。具体的には、制御部11は、記憶部25に記憶された走行スケジュールのうち最終の通過点データに到達した場合、操作者により非常停止スイッチ56が操作された場合、バンパースイッチ55により障害物に衝突したことを検出した場合、障害物情報取得部21により検出された障害物の位置情報が所定距離以下に近接した場合などにおいて、制御部11は再現走行モードを終了すると判断する。制御部11は、再現走行モードを終了しないと判断した場合にはステップS191に移行する。
 以上のようにして、教示走行モードにおいて、グローバルマップを復元するための環境地図復元用データと、通過点データの集合である走行スケジュールとを、記憶部25に記憶させている。このことにより、再現走行モードにおいて、環境地図復元用データを用いて自己位置の周囲近傍のグローバルマップを復元して、さらに復元されたグローバルマップ上の自己位置の推定を行う。この場合に、通過した後のグローバルマップのデータは削除していることから、環状経路問題を排除することができ、つまり、車輪のスリップやセンサの計測誤差などに基づくグローバルマップのずれによる不整合を防止できる。
 また、再現走行モードにおいて、走行スケジュールの通過点データに沿って走行制御を行っていることから、グローバルマップの座標系から外れて自律走行に支障を来すことがない。
(4)実施形態の特徴
 上記実施形態は、下記の構成及び機能を有している。
 自律移動体1(自律移動体の一例)は、教示走行モードと、再現走行モードとを実行する。教示走行モードは、操作者の手動操作により、走行開始位置から走行終了位置まで自律移動体1を手動走行させながら、通過時刻と通過時刻における通過点データ(例えば、通過点データ(x,y,θ,t))の集合でなる走行スケジュールを作成する。再現走行モードは、走行スケジュールを再現しながら、走行開始位置から走行終了位置まで自律移動体1が自律的に走行する。
 自律移動体1は、記憶部25(記憶部の一例)、走行部27(走行部の一例)、教示データ作成部24(走行データ作成部の一例)、走行制御部26(走行制御部の一例)、障害物情報取得部21(障害物情報取得部の一例)、地図作成部22(地図作成部の一例)、自己位置推定部23(自己位置推定部の一例)を備える。記憶部25は、データを記憶する。走行部27は、制御量が入力される複数のモータ93,94(アクチュエータの一例)を有する。
 教示データ作成部24は、走行スケジュールを作成して記憶部25に記憶する。障害物情報取得部21は、周囲に存在する障害物の位置情報を取得する。自己位置推定部23は、環境地図上の自己位置を推定する。環境地図は、障害物情報取得部21により取得した障害物の位置情報から作成される。地図作成部22は、教示走行モードにおいては、障害物の位置情報を取得した時刻に対応させて障害物の位置情報を環境地図復元用データとして記憶部に記憶する。一方、再現走行モードにおいては、地図作成部22は、推定された自己位置に対応する環境地図復元用データを読み出して環境地図を更新する。走行制御部26は、教示走行モードにおいては、操作者から入力された走行命令からアクチュエータの制御量を作成して走行部27に出力する。一方、再現走行モードにおいては、走行制御部26は、更新された環境地図上を走行スケジュールに沿って走行するようにアクチュエータの制御量を作成して走行部27に出力する。
 この自律移動体1では、操作者が手動操作により自律移動体1を操作することで、環境地図復元用データを生成して記憶部25に格納している。また、自律移動体1は、再現走行モードにおいて、環境地図上の自己位置を推定して、推定された自己位置に対応する環境地図復元用データを用いて環境地図を更新しながら、走行スケジュールに沿って走行している。このことから、操作者が環境地図の作成方法を考慮することなく、操作性を容易にし、走行経路が環状である場合であっても、車輪のスリップやセンサの計測誤差による環状経路が閉じないという問題を考慮する必要がなくなる。
(5)他の実施形態
 以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。特に、本明細書に書かれた複数の実施形態及び変形例は必要に応じて任意に組み合せ可能である。
(5-1)環境地図の更新・削除処理
 制御部10は、環境地図を、静的環境地図と動的環境地図の2層構造で管理することが可能である。静的環境地図は、教示走行モードで作成される地図復元用データに基づいて復元することができる。また、動的環境地図は、時刻(t)の動的環境地図と、時刻(t+1)において障害物情報取得部21が取得する自己位置の周辺における障害物の位置情報に基づくローカルマップとの重ね合わせにより作成することができる。
 例えば、時刻(t)の動的環境地図の各グリッドにおける障害物存在確率を、DynamicMap(t)とし、静的環境地図の各グリッドにおける障害物存在確率を、StaticMapとする。また、時刻(t)において、静的環境地図からの障害物の配置変化を示す差分地図の各グリッドにおける障害物存在確率を、DiffMap(t)とする。
 さらに、動的環境地図の各グリッドの値の範囲を決定するパラメータをP1とすると、
DynamicMap(t)=StaticMap・P1+DiffMap(t)
として算出できる。
 制御部10は、障害物情報取得部21により取得した自機の周囲に位置する障害物情報と、環境地図復元用データから復元された静的環境地図を用いて自己位置を推定し、絶対座標系のローカルマップを作成する。
 時刻(t+1)における動的環境地図は、時刻(t)における動的環境地図と、時刻(t+1)におけるローカルマップとを用いて、各グリッドの障害物存在確率が算出される。絶対座標系のローカルマップにおける各グリッドの障害物存在確率をLocalMap(t+1)とすると、
DynamicMap(t+1)=DynamicMap(t)+LocalMap(t+1)
として算出できる。
 制御部10は、時刻(t+1)における動的環境地図と、静的環境地図との差分を求めて、時刻(t+1)における差分地図の各グリッドの障害物存在確率であるDiffMap(t+1)を
DiffMap(t+1)=DynamicMap(t+1)-StaticMap・P1
として作成し、これを用いて動的環境地図を更新する。
 図20は、動的環境地図の更新処理の説明図である。図20に示す例では、自己位置近傍の4×4のグリッドを対象にしており、(a)は時刻(t)における動的環境地図、(b)は静的環境地図、(c)は時刻(t)における差分地図を示す。
 図20に示すように、時刻(t)における差分地図DiffMap(t)中の各グリッドの障害物存在確率と、静的環境地図StaticMap中の各グリッドの障害物存在確率にパラメータP1を乗算した値とを加算して、時刻(t)における動的環境地図DynamicMap(t)が算出される。各グリッドの障害物存在確率は、-1.0~1.0の範囲の値であり、パラメータP1を「0.5」としている。
 このことから、DynamicMap(t)=StaticMap・P1+DiffMap(t)で算出された動的環境地図の各グリッドの障害物存在確率は、図20(c)のようになる。
 図21は、自己位置推定時における尤度計算の説明図である。図21に示す例では、自己位置近傍の4×4のグリッドを対象にしており、(a)は絶対座標系のローカルマップ、(b)は静的環境地図、(c)は動的環境地図である。
 障害物情報取得部21により取得した自機の周辺における障害物位置情報に基づいて、絶対座標系のローカルマップに変換した後の各グリッドの障害物存在確率が、図21(a)に示される。
 絶対座標系のローカルマップにおいて、障害物存在確率が「1.0」であるグリッドがN個存在する時、i番目のグリッドの座標を(gx_occupy(i),gy_occupy(i))とする。静的環境地図の座標(gx_occupy(i),gy_occupy(i))における障害物存在確率をStaticMap(gx_occupy(i),gy_occupy(i))とし、動的環境地図の座標(gx_occupy(i),gy_occupy(i))における障害物存在確率をDynamicMap(gx_occupy(i),gy_occupy(i))とする。
 絶対座標系のローカルマップにおいて、障害物存在確率が「1.0」になるグリッドのそれぞれに対し、静的環境地図と動的環境地図のうち、障害物存在確率が高い方を用いて、以下の数式により尤度計算を行う。
Figure JPOXMLDOC01-appb-M000003

 
 このことにより、図21に示す例では、s=(1.0+1.0+0.3+0.3)/4=0.65として尤度を算出することができる。
 図17に示すような走行経路を走行する場合、時刻(t1)における通過点1611-1において、制御部11は自己位置の周囲に位置する所定の範囲でローカルマップ1712-1により更新された動的環境地図を作成する。同様にして、時刻(tn)における通過点1611-nにおいて、制御部11は自己位置の周囲に位置する所定の範囲でローカルマップ1712-nにより更新された部分グローバルマップを作成する。この時、制御部11は、時刻(tn-1)における通過点(図示せず)において作成された動的環境地図を削除し、さらに、時刻(tn)におけるローカルマップ1712-nを用いて動的環境地図を更新することができる。
 このように、グローバルマップとして静的環境地図と動的環境地図の2層で構成する場合にも、図18の時刻(tm)における通過点1611-mでは、時刻(t1)において作成された動的環境地図が削除されていることから、環状経路が閉じないという問題を防止できる。
 また、教示走行モードで作成された環境地図復元用データを用いて静的環境地図を復元した際に、障害物の位置情報が変化しているような場合であっても、差分地図を用いて障害物の配置の変化を検知することが可能となる。従って、自律移動体1は、走行経路上のレイアウト変更や移動体の存在に対応して、障害物との接触を回避することが可能となる。
 本発明は、清掃用ロボット、搬送用ロボット、その他の自律走行を行う自律移動体に適用することができる。 
1    自律移動体
11   制御部
21   障害物情報取得部
22   地図作成部
23   自己位置推定部
24   教示データ作成部
25   記憶部
26   走行制御部
27   走行部
31   測距センサ
32   操作部
33   表示部
40   清掃用ロボット
42   スロットル
43   清掃部ユーザインターフェイス
51   コントロールボード
52   ブレーカ
53   前方レーザレンジセンサ
54   後方レーザレンジセンサ
55   バンパーセンサ
56   非常停止スイッチ
57   スピーカ
63   SLAM処理部
64   不揮発メモリ
73   マップマッチング部
81   演算部
82   判断部
83   移動制御部
91   モータ駆動部
92   モータ駆動部
93   モータ
94   モータ
95   エンコーダ
96   エンコーダ
101  走査領域
103  走査領域
105  マスク領域
107  検出グリッド
109  中間グリッド
111  不明グリッド
115  第1走査領域
117  第2走査領域
131  走査線
132  原点
133  検出グリッド
134  中間グリッド
135  中間グリッド
136  中間グリッド
137  中間グリッド
138  中間グリッド
139  不明グリッド
1601 走行経路
1611 通過点
1712 ローカルマップ

Claims (12)

  1.  操作者の手動操作により、走行開始位置から走行終了位置まで手動走行させながら、複数の通過時刻と前記複数の通過時刻における通過点データの集合でなる走行スケジュールを作成する教示走行モードと、前記走行スケジュールを再現しながら、前記走行開始位置から前記走行終了位置まで自律的に走行する再現走行モードとを実行する自律移動体であって、
     データを記憶する記憶部と、
     制御量が入力される複数のアクチュエータを有する走行部と、
     前記走行スケジュールを作成して前記記憶部に記憶する教示データ作成部と、
     周囲に存在する障害物の位置情報を取得する障害物情報取得部と、
     前記障害物情報取得部により取得した障害物の位置情報から作成された環境地図上の自己位置を推定する自己位置推定部と、
     前記教示走行モードにおいては前記障害物の位置情報を取得した時刻に対応させて前記障害物の位置情報を環境地図復元用データとして前記記憶部に記憶し、前記再現走行モードにおいては前記推定された自己位置に対応する環境地図復元用データを読み出して前記環境地図を更新する地図作成部と、
     前記教示走行モードにおいては前記操作者から入力された走行命令から前記アクチュエータの制御量を作成して前記走行部に出力し、前記再現走行モードにおいては更新された環境地図上を前記走行スケジュールに沿って走行するように前記アクチュエータの制御量を作成して前記走行部に出力する走行制御部と、
     を備える自律移動体。
  2.  前記教示走行モードにおいて、前記教示データ作成部は、所定のタイムスケジュール毎に、前記環境地図上の自己位置と姿勢とを前記通過点データとして、前記障害物の位置情報を取得した時刻に対応させる、請求項1に記載の自律移動体。
  3.  前記再現走行モードにおいて、前記地図作成部は、所定のタイムスケジュール毎に、現在の通過点よりも先の時刻に対応する前記環境地図復元用データを読み出して、読み出した環境地図復元用データに基づいて既に作成した環境地図を更新する、請求項1又は2に記載の自律移動体。
  4.  前記障害物情報取得部により取得された障害物の位置情報に基づいて局所地図を作成し、前記更新された環境地図と前記作成された局所地図とを比較するマップマッチング部をさらに有し、
     前記地図作成部は、前記マップマッチング部の比較結果に応じて、前記環境地図上の自己位置と姿勢及び前記環境地図上の自己位置に対応する前記走行スケジュールの中の通過点データを推定する、請求項3に記載の自律移動体。
  5.  前記地図作成部は、所定のタイムスケジュール毎に、前記環境地図のうち既に通過済みの領域におけるデータを削除する、請求項1~4のいずれかに記載の自律移動体。
  6.  自律移動体を、操作者の手動操作により、走行開始位置から走行終了位置まで手動走行させながら、通過時刻と前記通過時刻における通過点データの集合でなる走行スケジュールを作成する走行スケジュールの作成方法であって、
     前記操作者から入力された走行命令に従って前記自律移動体を走行させるステップと、
     環境地図上の自己位置を推定するステップと、
     前記自律移動体の周囲における障害物の位置情報を取得するステップと、
     前記障害物の位置情報を取得した時刻に対応させて前記障害物の位置情報を環境地図復元用データとして記憶するステップと、
     走行スケジュールを作成して記憶するステップと、
     を含む走行スケジュールの作成方法。
  7.  走行スケジュールを作成して記憶するステップにおいて、前記環境地図上の自己位置と姿勢とを前記通過点データとして、前記障害物の位置情報を取得した時刻に対応させる、請求項6に記載の走行スケジュールの作成方法。
  8.  前記環境地図のうち既に通過済みの領域におけるデータを削除するステップをさらに含む、請求項6又は7に記載の走行スケジュールの作成方法。
  9.  走行スケジュールを再現しながら、走行開始位置から走行終了位置まで自律的に走行する自律移動体の走行方法であって、
     環境地図上の自己位置を推定するステップと、
     前記自律移動体の周囲における障害物の位置情報を取得するステップと、
     前記推定された自己位置に対応する環境地図復元用データを読み出して前記環境地図を更新するステップと、
     前記更新された環境地図上を前記走行スケジュールに沿って走行するように作成された制御量に基づいて前記自律移動体を走行させるステップと、
     を含む自律移動体の走行方法。
  10.  前記推定された自己位置に対応する環境地図復元用データを読み出して前記環境地図を更新するステップにおいて、現在の通過点よりも先の時刻に対応する前記環境地図復元用データを読み出して、読み出した環境地図復元用データに基づいて既に作成した環境地図を更新する、請求項9に記載の自律移動体の走行方法。
  11.  取得された障害物の位置情報に基づいて局所地図を作成し、前記更新された環境地図と前記作成された局所地図とを比較するステップをさらに含み、
     前記環境地図上の自己位置を推定するステップにおいて、前記更新された環境地図と前記作成された局所地図との比較結果に応じて、前記環境地図上の自己位置と姿勢及び前記環境地図上の自己位置に対応する前記走行スケジュールの中の通過点データを推定する、請求項10に記載の自律移動体の走行方法。
  12.  前記環境地図のうち既に通過済みの領域におけるデータを削除するステップをさらに含む、請求項9~11のいずれかに記載の自律移動体の走行方法。
PCT/JP2014/060499 2013-05-01 2014-04-11 自律移動体 WO2014178272A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP14791873.4A EP2993544B1 (en) 2013-05-01 2014-04-11 Autonomous moving body
US14/888,261 US9740209B2 (en) 2013-05-01 2014-04-11 Autonomous moving body

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013096337A JP6136543B2 (ja) 2013-05-01 2013-05-01 自律移動体
JP2013-096337 2013-05-01

Publications (1)

Publication Number Publication Date
WO2014178272A1 true WO2014178272A1 (ja) 2014-11-06

Family

ID=51843407

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/060499 WO2014178272A1 (ja) 2013-05-01 2014-04-11 自律移動体

Country Status (4)

Country Link
US (1) US9740209B2 (ja)
EP (1) EP2993544B1 (ja)
JP (1) JP6136543B2 (ja)
WO (1) WO2014178272A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016072132A1 (ja) * 2014-11-07 2016-05-12 ソニー株式会社 情報処理装置、情報処理システム、実物体システム、および情報処理方法

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6079415B2 (ja) * 2013-05-01 2017-02-15 村田機械株式会社 自律移動体
JP6240595B2 (ja) * 2014-12-10 2017-11-29 株式会社豊田中央研究所 自己位置推定装置及び自己位置推定装置を備えた移動体
US9630319B2 (en) * 2015-03-18 2017-04-25 Irobot Corporation Localization and mapping using physical features
JP5973610B1 (ja) * 2015-03-27 2016-08-23 本田技研工業株式会社 無人作業車の制御装置
EP3315949B1 (en) * 2015-06-23 2021-04-28 Nec Corporation Detection system, detection method, and program
US10444758B2 (en) * 2015-12-01 2019-10-15 Ricoh Company, Ltd. Autonomous traveling device
AU2015418445B2 (en) * 2015-12-25 2019-08-15 Komatsu Ltd. Control system for work machine, work machine, management system for work machine, and management method for work machine
JP6087475B2 (ja) * 2016-02-29 2017-03-01 株式会社小松製作所 作業機械の制御システム、作業機械、及び作業機械の管理システム
US20170329347A1 (en) 2016-05-11 2017-11-16 Brain Corporation Systems and methods for training a robot to autonomously travel a route
CN105892471B (zh) * 2016-07-01 2019-01-29 北京智行者科技有限公司 汽车自动驾驶方法和装置
US10712746B2 (en) * 2016-08-29 2020-07-14 Baidu Usa Llc Method and system to construct surrounding environment for autonomous vehicles to make driving decisions
JP6640777B2 (ja) * 2017-03-17 2020-02-05 株式会社東芝 移動制御システム、移動制御装置及びプログラム
US10921816B2 (en) * 2017-04-21 2021-02-16 Korea Advanced Institute Of Science And Technology Method and apparatus for producing map based on hierarchical structure using 2D laser scanner
WO2018214825A1 (zh) * 2017-05-26 2018-11-29 杭州海康机器人技术有限公司 一种检测未知位置的障碍物存在概率的方法和装置
KR101957796B1 (ko) * 2017-09-05 2019-03-13 엘지전자 주식회사 차량에 구비된 차량 제어 장치 및 차량의 제어방법
KR101992416B1 (ko) 2017-09-15 2019-06-24 엘지전자 주식회사 차량에 구비된 차량 제어 장치 및 차량의 제어방법
US10838068B2 (en) * 2017-11-07 2020-11-17 Textron Innovations, Inc. Obstacle avoidance system for aircraft
US10906506B2 (en) * 2017-12-28 2021-02-02 Micron Technology, Inc. Security of user data stored in shared vehicles
US10924277B2 (en) 2018-01-25 2021-02-16 Micron Technology, Inc. Certifying authenticity of stored code and code updates
US11320828B1 (en) * 2018-03-08 2022-05-03 AI Incorporated Robotic cleaner
CN112352244B (zh) 2018-04-23 2024-04-09 尚科宁家运营有限公司 控制系统和更新存储器中的地图的方法
KR102601141B1 (ko) * 2018-06-22 2023-11-13 삼성전자주식회사 이미지 센서와 복수의 지자기 센서를 융합하여 위치 보정하는 이동 로봇 장치 및 제어 방법
JP2019220035A (ja) * 2018-06-22 2019-12-26 株式会社明電舎 無人搬送車、無人搬送車の大域地図作成システム及び大域地図作成方法
CN110858076B (zh) * 2018-08-22 2023-06-02 杭州海康机器人股份有限公司 一种设备定位、栅格地图构建方法及移动机器人
CN109188419B (zh) * 2018-09-07 2021-06-15 百度在线网络技术(北京)有限公司 障碍物速度的检测方法、装置、计算机设备及存储介质
JP2020064385A (ja) * 2018-10-16 2020-04-23 ソニー株式会社 情報処理装置、情報処理方法および情報処理プログラム
KR20200084423A (ko) 2018-12-24 2020-07-13 삼성전자주식회사 기계 학습 기반의 로컬 모션 생성 방법 및 장치
EP3940422A4 (en) * 2019-03-13 2022-10-26 Chiba Institute of Technology INFORMATION PROCESSING DEVICE AND MOBILE ROBOT
JP2020154719A (ja) * 2019-03-20 2020-09-24 村田機械株式会社 自律走行台車、及び、制御方法
EP3734388B1 (en) * 2019-04-29 2023-03-15 Commissariat à l'Energie Atomique et aux Energies Alternatives Method and apparatus for performing simultaneous localization and mapping
WO2021106331A1 (ja) * 2019-11-25 2021-06-03 村田機械株式会社 自律走行台車、制御方法、及び、プログラム
US11592299B2 (en) * 2020-03-19 2023-02-28 Mobile Industrial Robots A/S Using static scores to control vehicle operations
KR102431986B1 (ko) * 2020-07-22 2022-08-12 엘지전자 주식회사 로봇 청소기 및 이의 제어방법
JP2022033622A (ja) * 2020-08-17 2022-03-02 村田機械株式会社 自律走行経路計画方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0854927A (ja) * 1994-08-10 1996-02-27 Kawasaki Heavy Ind Ltd ランドマークの決定方法および装置
JPH08326025A (ja) * 1995-05-31 1996-12-10 Tokico Ltd 清掃ロボット
JP2001125643A (ja) * 1999-10-28 2001-05-11 Murata Mach Ltd 無人車の走行制御装置
JP2003345437A (ja) * 2002-05-22 2003-12-05 Toshiba Tec Corp 自律走行ロボット
JP2006242978A (ja) * 2005-02-28 2006-09-14 Mitsubishi Heavy Ind Ltd 移動経路地図作成方法
JP2009163156A (ja) * 2008-01-10 2009-07-23 Hitachi Industrial Equipment Systems Co Ltd 移動ロボットシステム及びその制御方法
JP2010092147A (ja) 2008-10-06 2010-04-22 Murata Machinery Ltd 自律移動装置
JP2010160671A (ja) * 2009-01-08 2010-07-22 Yaskawa Electric Corp 移動ロボットの制御装置、移動ロボットおよび移動ロボットシステム

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100366716B1 (ko) * 1998-10-13 2003-01-06 가부시키가이샤 자나비 인포메틱스 방송형 정보제공 시스템 및 주행환경 정보수집 장치
US6459955B1 (en) * 1999-11-18 2002-10-01 The Procter & Gamble Company Home cleaning robot
US6314341B1 (en) * 1999-11-26 2001-11-06 Yutaka John Kanayama Method of recording trajectory data and sensor data for a manually-driven vehicle
US7015831B2 (en) * 2002-12-17 2006-03-21 Evolution Robotics, Inc. Systems and methods for incrementally updating a pose of a mobile device calculated by visual simultaneous localization and mapping techniques
JP2004362022A (ja) * 2003-06-02 2004-12-24 Toyota Motor Corp 移動体
JP4915417B2 (ja) * 2006-05-16 2012-04-11 村田機械株式会社 ロボット
JP5141507B2 (ja) * 2008-08-25 2013-02-13 村田機械株式会社 自律移動装置
JP5304128B2 (ja) * 2008-09-16 2013-10-02 村田機械株式会社 環境地図修正装置及び自律移動装置
DK2343615T3 (en) * 2008-10-01 2019-02-18 Murata Machinery Ltd Independent movement device
JP5396983B2 (ja) * 2009-04-14 2014-01-22 株式会社安川電機 移動体及び移動体の教示方法
DE102009041362A1 (de) 2009-09-11 2011-03-24 Vorwerk & Co. Interholding Gmbh Verfahren zum Betreiben eines Reinigungsroboters
JP5560979B2 (ja) * 2010-07-13 2014-07-30 村田機械株式会社 自律移動体
US9286810B2 (en) * 2010-09-24 2016-03-15 Irobot Corporation Systems and methods for VSLAM optimization
JP2013031389A (ja) * 2011-08-01 2013-02-14 Original Soft:Kk 自動芝刈り機及びその制御方法
US9297455B2 (en) * 2012-11-20 2016-03-29 GM Global Technology Operations LLC GPS-based predictive shift schedule for automatic transmission
US9052013B2 (en) * 2012-12-14 2015-06-09 Caterpillar Inc. Grade and payload based transmission gear selection strategy
JP6227948B2 (ja) * 2013-09-18 2017-11-08 村田機械株式会社 自律走行式床洗浄機、清掃スケジュールのデータ構造、記憶媒体、清掃スケジュールの生成方法、及びプログラム
US9580080B1 (en) * 2016-03-15 2017-02-28 Uber Technologies, Inc. Drive-by-wire control system
US9616896B1 (en) * 2016-03-15 2017-04-11 Uber Technologies, Inc. System for switching control of an autonomous vehicle

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0854927A (ja) * 1994-08-10 1996-02-27 Kawasaki Heavy Ind Ltd ランドマークの決定方法および装置
JPH08326025A (ja) * 1995-05-31 1996-12-10 Tokico Ltd 清掃ロボット
JP2001125643A (ja) * 1999-10-28 2001-05-11 Murata Mach Ltd 無人車の走行制御装置
JP2003345437A (ja) * 2002-05-22 2003-12-05 Toshiba Tec Corp 自律走行ロボット
JP2006242978A (ja) * 2005-02-28 2006-09-14 Mitsubishi Heavy Ind Ltd 移動経路地図作成方法
JP2009163156A (ja) * 2008-01-10 2009-07-23 Hitachi Industrial Equipment Systems Co Ltd 移動ロボットシステム及びその制御方法
JP2010092147A (ja) 2008-10-06 2010-04-22 Murata Machinery Ltd 自律移動装置
JP2010160671A (ja) * 2009-01-08 2010-07-22 Yaskawa Electric Corp 移動ロボットの制御装置、移動ロボットおよび移動ロボットシステム

Non-Patent Citations (1)

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

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016072132A1 (ja) * 2014-11-07 2016-05-12 ソニー株式会社 情報処理装置、情報処理システム、実物体システム、および情報処理方法
JP2016091423A (ja) * 2014-11-07 2016-05-23 ソニー株式会社 情報処理装置、情報処理システム、実物体システム、および情報処理方法

Also Published As

Publication number Publication date
EP2993544A4 (en) 2017-01-25
US9740209B2 (en) 2017-08-22
JP2014219721A (ja) 2014-11-20
EP2993544A1 (en) 2016-03-09
EP2993544B1 (en) 2020-04-01
JP6136543B2 (ja) 2017-05-31
US20160062361A1 (en) 2016-03-03

Similar Documents

Publication Publication Date Title
JP6136543B2 (ja) 自律移動体
JP6079415B2 (ja) 自律移動体
JP6052045B2 (ja) 自律移動体
JP6867120B2 (ja) 地図作成方法及び地図作成装置
JP5157803B2 (ja) 自律移動装置
KR101202695B1 (ko) 자율 이동 장치
US11560160B2 (en) Information processing apparatus
JP2014219721A5 (ja)
JP6711138B2 (ja) 自己位置推定装置、及び、自己位置推定方法
JP5278283B2 (ja) 自律移動装置及びその制御方法
JP6962007B2 (ja) 自律走行台車の走行制御装置、自律走行台車
JP2009031884A (ja) 自律移動体、自律移動体におけるマップ情報作成方法および自律移動体における移動経路特定方法
JP5298741B2 (ja) 自律移動装置
JP7133251B2 (ja) 情報処理装置および移動ロボット
JP5947644B2 (ja) 無人移動体システム
CN111168669A (zh) 机器人控制方法、机器人和可读存储介质
JP2009174898A (ja) 移動体および環境情報作成方法
US20160231744A1 (en) Mobile body
JP2018022215A (ja) 移動教示装置、及び、移動教示方法
JP2020024618A (ja) 移動経路取得方法、及び、移動経路取得装置
CN112345798A (zh) 位置姿势推定装置以及位置姿势推定方法
WO2022054647A1 (ja) 走行領域決定方法及び自律走行体
JP5895682B2 (ja) 障害物検出装置及びそれを備えた移動体
JP2021096602A (ja) 経路計画装置、経路計画方法及び自律走行台車
WO2022097335A1 (ja) 自律走行経路計画方法

Legal Events

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

Ref document number: 14791873

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14888261

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2014791873

Country of ref document: EP