Driving system, driving method, and driving program

The driving system optimizes waiting times based on obstacle and path information to enhance traveling efficiency by minimizing unnecessary detours and delays, addressing inefficiencies in conventional fixed-time waiting strategies.

JP7848573B2Active Publication Date: 2026-04-21OMRON CORP
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
OMRON CORP
Filing Date
2022-04-27
Publication Date
2026-04-21

AI Technical Summary

Technical Problem

Conventional traveling devices face inefficiencies due to fixed waiting times that can result in either prolonged delays on avoidance routes or increased frequency of detours, leading to reduced traveling efficiency.

Method used

A driving system that dynamically adjusts waiting times based on obstacle information and avoidance path characteristics, allowing the device to resume travel on the target path if the obstacle clears before the waiting time elapses, or switch to an avoidance route if the obstacle persists.

Benefits of technology

This approach enhances traveling efficiency by optimizing waiting times according to the specific conditions encountered, reducing unnecessary detours and maintaining efficient travel paths.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007848573000001
    Figure 0007848573000001
  • Figure 0007848573000002
    Figure 0007848573000002
  • Figure 0007848573000003
    Figure 0007848573000003
Patent Text Reader

Abstract

To provide a travel system, a travel method, and a travel program which can suppress lowering of travel efficiency of a travel apparatus.SOLUTION: A travel apparatus 10 includes a detection processing unit 412 for detecting an obstacle on a target route, a stop processing unit 413 for stopping the travel of the travel apparatus 10 if the obstacle is detected, a generation processing unit 414 for generating a detour route if the obstacle is detected, a setting processing unit 415 for setting standby time based on at least any of detour route information and obstacle information, and a travel processing unit 411 for causing the travel apparatus 10 to travel along the target route if the obstacle is not detected before expiration of the stand-by time and for causing the travel apparatus 10 to travel along the detour route if the stand-by time passes while the obstacle is detected.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a traveling system, a traveling method, and a traveling program for causing a traveling device to travel.

Background Art

[0002] There is known a traveling device (traveling robot) that autonomously travels according to a preset target route. For example, when the traveling device detects an obstacle (person, object, etc.) on the target route, it stops traveling and waits for a predetermined time. If the obstacle does not exist after the predetermined time has elapsed, it resumes traveling according to the target route. If the obstacle still exists after the predetermined time has elapsed, it starts traveling according to an avoidance route (detour route).

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] However, in the conventional technology, since the waiting time (the predetermined time) of the traveling device is fixed at a constant time, for example, the waiting time may be longer than the required traveling time when traveling on an avoidance route, or the waiting time may be too short and the frequency of avoidance traveling may increase, resulting in a problem of reduced traveling efficiency of the traveling device.

[0005] An object of the present invention is to provide a traveling system, a traveling method, and a traveling program capable of suppressing a decrease in the traveling efficiency of a traveling device.

Means for Solving the Problems

[0006] A driving system according to one aspect of the present invention is a driving system that drives a driving device to a target position according to a target path. The driving system comprises a detection processing unit, a stop processing unit, a generation processing unit, a setting processing unit, and a driving processing unit. The detection processing unit detects obstacles on the target path while the driving device is traveling along the target path. The stop processing unit stops the driving of the driving device when the detection processing unit detects an obstacle. The generation processing unit generates an avoidance path from the stopping position of the driving device to the target position when the detection processing unit detects an obstacle. The setting processing unit sets a waiting time for the driving device to wait at the stopping position based on at least one of the avoidance path information relating to the avoidance path and obstacle information relating to the obstacle. The driving processing unit drives the driving device from the stopping position to the target position according to the target path if the detection processing unit no longer detects an obstacle before the waiting time has elapsed, and drives the driving device from the stopping position to the target position according to the avoidance path if the waiting time has elapsed while the detection processing unit is still detecting an obstacle.

[0007] Another aspect of the present invention is a driving method that causes a driving device to travel to a target position according to a target path. In the driving method, one or more processors perform a detection step in which the driving device detects an obstacle on the target path while the driving device is traveling along the target path; a stop step in which the driving device stops traveling if an obstacle is detected in the detection step; a generation step in which the driving device generates an avoidance path from the stopping position to the target position if an obstacle is detected in the detection step; a setting step in which the driving device waits at the stopping position based on at least one of the avoidance path information relating to the avoidance path and obstacle information relating to the obstacle; and a driving step in which the driving device travels from the stopping position to the target position according to the target path if the obstacle is no longer detected before the waiting time has elapsed, and travels from the stopping position to the target position according to the avoidance path if the waiting time has elapsed while an obstacle is detected.

[0008] A driving program according to another aspect of the present invention is a driving program that causes a driving device to travel to a target position according to a target path. The program is a driving program that causes one or more processors to execute: a detection step of detecting an obstacle on the target path while the driving device is traveling along the target path; a stop step of stopping the driving of the driving device if an obstacle is detected in the detection step; a generation step of generating an avoidance path from the stopping position of the driving device to the target position if an obstacle is detected in the detection step; a setting step of setting a waiting time for the driving device to wait at the stopping position based on at least one of the avoidance path information and obstacle information; and a driving step of driving the driving device from the stopping position to the target position according to the target path if the obstacle is no longer detected before the waiting time has elapsed, and driving the driving device from the stopping position to the target position according to the avoidance path if the waiting time has elapsed while an obstacle is detected. [Effects of the Invention]

[0009] According to the present invention, it is possible to provide a driving system, a driving method, and a driving program that can suppress the decrease in the driving efficiency of the driving device. [Brief explanation of the drawing]

[0010] [Figure 1] Figure 1 is a perspective view showing the external appearance of a traveling device according to an embodiment of the present invention. [Figure 2] Figure 2 is a functional block diagram showing the configuration of a traveling device according to an embodiment of the present invention. [Figure 3] Figure 3 shows an example of map information registered in the storage unit of a driving device according to an embodiment of the present invention. [Figure 4] Figure 4 shows an example of route information registered in the storage unit of a travel device according to an embodiment of the present invention. [Figure 5] Figure 5 shows an example of a target path set for a traveling device according to an embodiment of the present invention. [Figure 6] Figure 6 shows an example of an obstacle on a target path according to an embodiment of the present invention. [Figure 7] Figure 7 shows an example of an avoidance path set for a traveling device according to an embodiment of the present invention. [Figure 8] Figure 8 shows an example of a target path set for a traveling device according to an embodiment of the present invention. [Figure 9] Figure 9 shows an example of an obstacle on a target path according to an embodiment of the present invention. [Figure 10] Figure 10 shows an example of an avoidance path set for a traveling device according to an embodiment of the present invention. [Figure 11] Figure 11 shows an example of an avoidance path set for a traveling device according to an embodiment of the present invention. [Figure 12] Figure 12 shows an example of an obstacle on a target path according to an embodiment of the present invention. [Figure 13]FIG. 13 is a diagram showing an example of an obstacle on a target path according to an embodiment of the present invention. [Figure 14] FIG. 14 is a diagram showing an example of an obstacle on a target path according to an embodiment of the present invention. [Figure 15] FIG. 15 is a flowchart showing an example of a traveling process executed by a traveling device according to an embodiment of the present invention.

Embodiments for Carrying out the Invention

[0011] Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. Note that the following embodiments are an example of embodying the present invention and do not limit the technical scope of the present invention.

[0012] [Traveling Device 10] FIG. 1 is a perspective view showing the appearance of an autonomous traveling type traveling device 10 according to an embodiment of the present invention, and FIG. 2 is a functional block diagram showing the configuration of the traveling device 10. In the following description, the vertical direction D1, the front-rear direction D2, and the left-right direction D3 shown in FIG. 1 are used. The traveling device 10 is an example of the traveling device of the present invention. Note that the traveling device 10 is not limited to the configuration shown in FIG. 1.

[0013] The traveling device 10 is a device that can move by autonomously traveling inside various facilities such as shopping malls, commercial buildings, airports, and stations, and is also referred to as a mobile robot. While moving by autonomous traveling, the traveling device 10 can present various information (such as guidance information) to users in the facility, carry luggage in the facility, perform security in the facility, and perform cleaning in the facility. Further, the traveling device 10 autonomously travels in a predetermined area in the facility according to a preset target path.

[0014] As shown in FIGS. 1 and 2, the traveling device 10 includes a device main body 11 and each functional unit provided on the device main body 11. Specifically, the device main body 11 is provided with a traveling unit 12, a motor (not shown), a battery (not shown), an operation unit 20, a display panel 21, a camera 30, and a control unit 40 (control device), etc.

[0015] As shown in FIG. 1, the apparatus main body 11 has an exterior cover 11A that constitutes its exterior, and has a chassis 11B at its lower part. The chassis 11B is provided substantially parallel to the floor surface. Also, inside the apparatus main body 11, support frames for supporting the above-described respective functional parts are appropriately provided.

[0016] The traveling unit 12 transmits the conveyance force in the traveling direction to the floor surface while maintaining the traveling posture of the apparatus main body 11, and is attached to the chassis 11B. The traveling unit 12 has a pair of traveling wheels 121 and four casters 122.

[0017] The wheels 121 are rotatably supported at both ends in the left-right direction D3 (width direction) at the center in the front-rear direction D2 of the chassis 11B. The four casters 122 are for maintaining the traveling posture of the apparatus main body 11, and are rotatably supported at both ends of the front end of the chassis 11B and at both ends of the rear end of the chassis 11B. In a state where the traveling device 10 is placed on the floor surface, the outer peripheral surfaces of the wheels 121 and the casters 122 are supported by the floor surface. Thereby, the apparatus main body 11 is maintained in the traveling posture shown in FIG. 1.

[0018] The output shaft of the motor is connected to the rotation shaft of the wheel 121 via a transmission mechanism such as a reduction gear. For this reason, when the motor is driven and its rotational driving force is output from the output shaft, the rotational driving force of the motor is transmitted to the wheel 121. In the present embodiment, a motor is provided individually for each of the pair of wheels 121. Therefore, by individually driving and controlling each motor, the rotational speed of each wheel 121 is controlled. For example, when the rotational speeds of each wheel 121 are controlled to be equal, the traveling device 10 travels straight, and when the rotational speeds of each wheel 121 are controlled to be different speeds, the traveling device 10 turns toward the wheel 121 side with a slower rotational speed.

[0019] The battery is provided at the center of the apparatus main body 11. The battery supplies driving power to the motor.

[0020] As shown in Figure 1, a front laser sensor 41, a sonar sensor 42, and a camera 30 are provided on the front of the traveling device 10.

[0021] The front laser sensor 41 is located in a groove 175 extending in the width direction, formed in the lower part of the front of the main body 11 of the device. The front laser sensor 41 is positioned in the center of the groove 175. The front laser sensor 41 includes a laser emitting element, a laser driver that drives the laser emitting element, a light receiving element, and a light receiving processing circuit that converts the output of the light receiving element into a digital signal. The front laser sensor 41 is connected to and controlled by the control unit 40. The front laser sensor 41 scans the laser beam forward in the width direction (horizontal direction) within a predetermined scanning angle (e.g., 120 degrees). When the front laser sensor 41 receives the laser beam that has been reflected back from an irradiated object (such as an obstacle), the control unit 40 measures the time it takes for the laser beam to return and calculates the distance to the object at each scanning position based on the measured value. This allows the control unit 40 to determine the distance and position to an object on the front side (direction of travel side) of the traveling device 10, as well as the shape and size of that object in the width direction.

[0022] The sonar sensor 42 is located on the underside of the display panel 21. The sonar sensor 42 is located at both ends in the width direction on the front of the main body of the device 11. The sonar sensor 42 is connected to the control unit 40 and controlled by the control unit 40. The sonar sensor 42 detects objects (such as obstacles) using sound waves and measures the distance to the object based on the time it takes for the sound waves to reflect off the object and return.

[0023] Camera 30 is a digital camera that captures images of subjects (such as obstacles) and outputs them as digital image data. Camera 30 is located on the front of the main unit 11 and above the display panel 21, and captures images of a predetermined area (field of view) in the front direction of the traveling device 10. The image data of the images captured by camera 30 is transmitted to the control unit 40.

[0024] Side laser sensors 45 are provided on each of the two sides of the main body 11 of the device. The side laser sensors 45 are configured in much the same way as the front laser sensor 41, and include a laser emitting element, a laser driver that drives the laser emitting element, a light receiving element, and a light receiving processing circuit that converts the output of the light receiving element into a digital signal. The side laser sensors 45 are connected to the control unit 40 and controlled by the control unit 40. The side laser sensors 45 scan the laser beam within a predetermined scanning angle (e.g., 180 degrees) from the front downwards and backwards. When the side laser sensors 45 receive the laser beam that has been reflected back from an irradiated object (such as an obstacle), the control unit 40 measures the time it takes for the laser beam to return and calculates the distance to the object at each scanning position based on the measured value. This allows the control unit 40 to understand the distance and position to obstacles on the front side (direction of travel side) of the traveling device 10, as well as steps and obstacles on the floor surface, and their shape and size in the scanning direction.

[0025] The control unit 20 (see Figure 2) is located on the upper rear of the main body 11 of the device. The control unit 20 is attached to the outer cover 11A. The control unit 20 is a device operated by the user of the travel device 10, and is, for example, a device with a touch panel that allows touch operation. The control unit 20 displays an operation screen for the user to perform various operations (teaching operations, registration operations, setting operations, travel instruction operations, etc.). Operation information for the control unit 20 is transmitted to the control unit 40 and used for travel control by the control unit 40. The control unit 20 may also be located on the top surface (top plate) of the main body 11 of the device.

[0026] The display panel 21 is located on the front of the main unit 11 of the device. The display panel 21 is, for example, a liquid crystal panel. Various types of guidance information are displayed on the display panel 21 by the control unit 40. This guidance information includes, for example, advertising information for products in the shopping mall, store information in the shopping mall, and warning information for users within the facility.

[0027] The operating handle 22 is located at the top of the rear of the main body 11 of the device. The operating handle 22 is attached to the outer cover 11A. The operating handle 22 is an operating member that the user grasps when performing a teaching operation (teaching operation) to teach the traveling device 10 a target path. The operating handle 22 is equipped with various operation buttons (travel button, reverse button, left turn button, right turn button, etc.) that accept driving operations from the user. Operation information for the operation buttons is transmitted to the control unit 40 and used for driving control by the control unit 40.

[0028] The communication unit 25 (see Figure 2) is a communication interface for connecting the traveling device 10 to a network by wire or wireless means, and for performing data communication with external devices such as a server (not shown) via the network in accordance with a predetermined communication protocol.

[0029] The storage unit 50 (see Figure 2) is a non-volatile storage unit such as an HDD (Hard Disk Drive) or SSD (Solid State Drive) that stores various types of information. Specifically, the storage unit 50 stores data such as map information 51 and route information 52. Figure 3 shows an example of map information 51. Figure 4 shows an example of route information 52.

[0030] As shown in Figure 3, the map information 51 registers information about the environmental map corresponding to the driving area on which the vehicle 10 travels. One or more environmental maps are registered in the map information 51. Figure 3 shows one environmental map M1 as an example. For example, if an environmental map is generated for each floor of a facility, multiple environmental maps corresponding to each floor of the facility are registered in the map information 51. Specifically, the map information 51 registers the environmental map M1 for floor F1 of the facility, the environmental map M2 for floor F2, and the environmental map M3 for floor F3. The environmental maps may be generated in advance by an external device, or they may be generated based on the distance and position to obstacles detected by each sensor (such as the front laser sensor 41 and the sonar sensor 42) while the vehicle 10 is traveling. In other words, the control unit 40 may generate an environmental map of the driving area by driving the vehicle 10. The following explanation will use the environmental map M1 shown in Figure 3 as an example.

[0031] As shown in Figure 4, the route information 52 stores information about the target route generated based on the teaching operation performed by the user. Specifically, the route information 52 stores information such as "route ID," "route name," and "location information" for each target route. The control unit 40 generates a target route based on the teaching operation performed by the user and registers the information of the generated target route in the route information 52. "Route ID" is identification information for the target route, and "route name" is the name of the target route. "Location information" is information indicating the location (coordinates) of the target route. For example, coordinate information from the starting position to the destination position (ending position) of a single target route is registered in the location information of that target route.

[0032] Figure 5 shows an example of the target route R1. The target route R1 shown in Figure 5 is a route that reaches the destination position G1 via the straight route R11 and the straight route R12 from the starting position S1. Note that the target route R1 corresponds to route ID "0001" in the route information 52 (see Figure 4).

[0033] Furthermore, the route information 52 registers information about avoidance routes generated by the control unit 40. The route names "R1a" and "R2a" included in the route information 52 in Figure 4 show examples of the avoidance routes. Specific examples of the avoidance routes will be described later.

[0034] In another embodiment, some or all of the information, such as map information 51 and route information 52, may be stored on a server accessible from the driving device 10 via a network.

[0035] Furthermore, the storage unit 50 stores control programs, such as a driving program, which causes the control unit 40 to execute the driving process described later (see Figure 15). For example, the driving program is non-temporarily recorded on a computer-readable recording medium such as a CD or DVD, and is read by a reading device (not shown), such as a CD drive or DVD drive, provided by the driving device 10 and stored in the storage unit 50.

[0036] The control unit 40 is located on the upper part of the main body 11 of the device. The control unit 40 includes control devices such as a CPU, ROM, and RAM. The CPU is a processor that performs various arithmetic operations. The ROM is a non-volatile memory unit in which control programs such as a BIOS and OS are pre-stored to cause the CPU to perform various arithmetic operations. The RAM is a volatile or non-volatile memory unit that stores various information and is used as a temporary memory (work area) for the various processes performed by the CPU. The control unit 40 controls the traveling device 10 by executing various control programs pre-stored in the ROM or memory unit 50 using the CPU.

[0037] Specifically, as shown in Figure 2, the control unit 40 includes various processing units such as a driving processing unit 411, a detection processing unit 412, a stop processing unit 413, a generation processing unit 414, and a setting processing unit 415. The control unit 40 functions as these various processing units by executing various processes according to the driving program using the CPU. Some or all of these processing units may be composed of electronic circuits. The driving program may be a program that causes multiple processors to function as processing units.

[0038] The driving processing unit 411 autonomously drives the driving device 10 based on the target path generated by the control unit 40. Specifically, the driving processing unit 411 drives the driving unit 12 by outputting a drive signal corresponding to the target path to the motor, thereby autonomously driving the driving device 10 according to the target path. For example, if the user selects a desired target path on the driving instruction screen (not shown), the driving processing unit 411 autonomously drives the driving device 10 according to that target path. Also, if the user has set a driving schedule in advance, the driving processing unit 411 autonomously drives the driving device 10 based on that driving schedule.

[0039] For example, when the user selects the target route R1 (see Figure 5), the driving processing unit 411 starts the autonomous driving of the driving device 10 at the starting position S1. The driving processing unit 411 causes the driving device 10 to travel in a straight line from the starting position S1 along the straight line route R11, and then in a straight line along the straight line route R12. When the driving device 10 arrives at the destination position G1, the driving processing unit 411 terminates the autonomous driving of the driving device 10.

[0040] The detection processing unit 412 detects obstacles on the target path while the traveling device 10 is traveling along the target path. These obstacles include people in the passage of the target path (facility users, facility staff, etc.) and objects placed in the passage of the target path (goods, materials, carts, etc.). The detection processing unit 412 detects obstacles on the target path based on sensor signals (detection signals) from the front laser sensor 41, sonar sensor 42, and side laser sensor 45. The detection processing unit 412 also determines whether or not obstacles exist on the target path. For example, the detection processing unit 412 detects an object that would prevent the traveling device 10 from traveling along the target path, and detects the object as an obstacle if the distance from the traveling device 10 to the object is less than or equal to a predetermined distance. Therefore, if the detection processing unit 412 detects an object that does not prevent the traveling device 10 from traveling along the target path, that is, an object that does not interfere with the autonomous driving of the traveling device 10, the detection processing unit 412 does not detect the object as an obstacle.

[0041] Figure 6 shows the vehicle 10 autonomously traveling along the target path R1. In the example shown in Figure 6, person A is present on the target path R1 (straight path R12), obstructing the autonomous travel of the vehicle 10. In this case, the detection processing unit 412 detects person A as an obstacle.

[0042] The stop processing unit 413 stops the movement of the travel device 10 when the detection processing unit 412 detects the obstacle. In the example shown in Figure 6, the stop processing unit 413 stops the autonomous movement of the travel device 10 when the detection processing unit 412 detects person A (obstacle). The symbol P1 in Figure 6 indicates the stopping position of the travel device 10. The stopping position P1 may be the current position of the travel device 10 at the time the detection processing unit 412 detects person A, or it may be a position closer to the target position G1 than the current position of the travel device 10 at the time the detection processing unit 412 detects person A. Furthermore, when stopping the travel device 10, the stop processing unit 413 may notify the user of stop information (voice announcement, buzzer sound, etc.) or display the stop information on the display panel 21.

[0043] The generation processing unit 414 generates an avoidance route from the stopping position of the traveling device 10 to the target position when the detection processing unit 412 detects the obstacle. For example, when the detection processing unit 412 detects a person A (obstacle) (see Figure 6), the generation processing unit 414 generates an avoidance route R1a from the stopping position P1 of the traveling device 10 to the target position G1, as shown in Figure 7. The avoidance route R1a shown in Figure 7 is a route that reaches the target position G1 via straight routes R11a, R12a, R13a, R14a, and R15a from the stopping position P1. The avoidance route is a route that connects the stopping position and the target position, and is a route different from the target route. The avoidance route may be one route pattern or multiple route patterns.

[0044] When the generation processing unit 414 generates the avoidance route, it registers the route information of the avoidance route in the route information 52 (see Figure 4). In the route information 52 of Figure 4, the route name "R1a" corresponds to the avoidance route R1a, and the route name "R2a" corresponds to the avoidance route R2a.

[0045] Here, for example, as shown in Figure 6, the traveling device 10 stops at the stopping position P1 when it detects a person A (obstacle). In this case, if person A moves immediately, the traveling device 10 can resume travel with a short waiting time. However, if person A does not move from the spot for a long time, the traveling device 10 will have to wait at the stopping position P1 for a long time. Therefore, it is conceivable to set a waiting time in advance and, if the obstacle still exists after the waiting time has elapsed, to start traveling along the avoidance path. However, if the waiting time is fixed to a certain period of time, as in the conventional method, the waiting time may become longer than the travel time required when traveling along the avoidance path, or the waiting time may be too short, resulting in an increased frequency of avoidance travel and a decrease in the travel efficiency of the traveling device 10.

[0046] Therefore, in this embodiment, the setting processing unit 415 sets the waiting time of the travel device 10 based on, for example, avoidance route information relating to the avoidance route. Specifically, the setting processing unit 415 sets the waiting time according to the length of the avoidance route. For example, in the example shown in Figure 7, the setting processing unit 415 sets the waiting time according to the difference (distance difference) between the distance from the stopping position P1 to the target position G1 on the target route R1 (remaining distance) and the distance from the stopping position P1 to the target position G1 on the avoidance route R1a (avoidance distance). Note that the avoidance distance in the example shown in Figure 7 is the sum of the distances of the straight route R11a, straight route R12a, straight route R13a, straight route R14a, and straight route R15a.

[0047] For example, the setting processing unit 415 sets the waiting time to be longer the greater the distance difference. Figure 8 shows the environmental map M2 of the facility's floor F2. The target path R2 shown in Figure 8 is a path from the starting position S2 to the destination position G2 via the straight path R21 and the straight path R22. As shown in Figure 9, if person A is present on the target path R2 (straight path R22) and the detection processing unit 412 detects person A (obstacle), the stop processing unit 413 stops the autonomous driving of the driving device 10. In addition, the generation processing unit 414 generates an avoidance path R2a from the stopping position P2 of the driving device 10 to the destination position G2, as shown in Figure 10. The avoidance path R2a shown in Figure 10 is a path from the stopping position P2 to the destination position G2 via the straight path R21a, the straight path R22a, the straight path R23a and the straight path R24a. Note that the avoidance distance in the example shown in Figure 10 is the sum of the distances of the straight-line paths R21a, R22a, R23a, and R24a.

[0048] Comparing the example shown in Figure 7 with the example shown in Figure 10, the distance difference corresponding to the avoidance route R1a in Figure 7 is greater than the distance difference corresponding to the avoidance route R2a in Figure 10. In this case, the setting processing unit 415 sets the waiting time in the case shown in Figure 7 to be longer than the waiting time in the case shown in Figure 10.

[0049] In this way, the setting processing unit 415 sets a longer waiting time if traveling along the avoidance route would take a long time to reach the target location (required travel time). This makes it more difficult for the vehicle to switch to avoidance driving and easier to drive along the target route. On the other hand, the setting processing unit 415 sets a shorter waiting time if traveling along the avoidance route would take a short time to reach the target location (required travel time). This makes it easier for the vehicle to switch to avoidance driving.

[0050] When the setting processing unit 415 sets the waiting time, the control unit 40 starts measuring the waiting time. Furthermore, if the detection processing unit 412 stops detecting obstacles after the control unit 40 has started measuring the waiting time, the driving processing unit 411 resumes driving along the target path. For example, in the example shown in Figure 6, if the detection processing unit 412 detects person A and the control unit 40 starts measuring the waiting time, but then person A moves and the detection processing unit 412 stops detecting person A, the driving processing unit 411 autonomously drives the driving device 10 toward the target position G1 along the target path R1 (straight path R12). Similarly, for example, in the example shown in Figure 9, if the detection processing unit 412 detects person A and the control unit 40 starts measuring the waiting time, but then person A moves and the detection processing unit 412 stops detecting person A, the driving processing unit 411 autonomously drives the driving device 10 toward the target position G2 along the target path R2 (straight path R22).

[0051] In response to this, if the control unit 40 starts measuring the waiting time and the detection processing unit 412 detects an obstacle, and the waiting time has elapsed, the driving processing unit 411 will drive along the avoidance path. For example, in the example shown in Figure 7, if the detection processing unit 412 detects person A and the control unit 40 starts measuring the waiting time, and the person A does not move, causing the detection processing unit 412 to continue detecting person A until the waiting time has elapsed, the driving processing unit 411 will autonomously drive the driving device 10 toward the target position G1 along the avoidance path R1a. Similarly, for example, in the example shown in Figure 10, if the detection processing unit 412 detects person A and the control unit 40 starts measuring the waiting time, and the person A does not move, causing the detection processing unit 412 to continue detecting person A until the waiting time has elapsed, the driving processing unit 411 will autonomously drive the driving device 10 toward the target position G2 along the avoidance path R2a.

[0052] [Other methods for setting the aforementioned waiting time] The method for setting the waiting time is not limited to the method of setting the waiting time according to the distance difference, but may also be any of the setting methods shown below.

[0053] For example, the setting processing unit 415 may set the waiting time according to the width of the avoidance path. Figure 11 shows an avoidance path R1a of the same distance as the avoidance path R1a shown in Figure 7. In the environmental map M1 shown in Figure 11, the width L of the avoidance path R1a is wider than the width of the avoidance path R1a in the environmental map M1 shown in Figure 7. When the traveling device 10 travels along the avoidance path R1a shown in Figure 11, for example, if there is an obstacle on the avoidance path R1a, the traveling device 10 has a higher probability of being able to avoid the obstacle because the width L of the path is wider. On the other hand, when the traveling device 10 travels along the avoidance path R1a shown in Figure 7, for example, if there is an obstacle on the avoidance path R1a, the traveling device 10 has a higher probability of being unable to avoid the obstacle because the width of the path is narrow, and will have to wait again at the location where the obstacle was detected.

[0054] Therefore, the setting processing unit 415 sets the waiting time to be shorter the wider the passage width of the avoidance path, and longer the waiting time to be longer the narrower the passage width of the avoidance path. In the case shown in Figure 11, the setting processing unit 415 sets the waiting time to be shorter than in the case shown in Figure 7. For example, the setting processing unit 415 multiplies the total distance of the avoidance path, which is input into the calculation formula for calculating the waiting time, by a predetermined coefficient. In the calculation formula, the longer the total distance, the longer the waiting time, and the shorter the total distance, the shorter the waiting time. Specifically, the setting processing unit 415 sets the coefficient to a smaller value the wider the passage width of the avoidance path, and sets the coefficient to a larger value the narrower the passage width of the avoidance path. For example, the setting processing unit 415 sets the coefficient to "0.8" in the case shown in Figure 11, and sets the coefficient to "1.2" in the case shown in Figure 7. As a result, in the case shown in Figure 11, the travel device 10 becomes more likely to transition to evasive driving, while in the case shown in Figure 7, the travel device 10 becomes less likely to transition to evasive driving.

[0055] As another example, the setting processing unit 415 may set the waiting time according to the type of obstacle. Specifically, the setting processing unit 415 determines the type of obstacle based on the image captured by the camera 30. For example, the setting processing unit 415 determines whether the obstacle is a person or an object based on the image. If the setting processing unit 415 determines that the obstacle is a person, it sets the waiting time to be longer than if the obstacle were an object, because there is a high possibility that the target path will become traversable in a short time. Also, if the setting processing unit 415 determines that the obstacle is an object that cannot be moved or is difficult to move immediately, it may set the waiting time to "0" (no waiting). If the waiting time is set to "0", the driving processing unit 411 causes the driving device 10 to evade the obstacle immediately after the detection processing unit 412 detects the obstacle.

[0056] As yet another example, the setting processing unit 415 may set the waiting time according to the movement status of the obstacle. For example, the setting processing unit 415 identifies a person's actions based on the captured image. For example, in a shopping mall, the setting processing unit 415 identifies each of the shoppers' actions, such as when a shopper is looking for an item on a shelf, when a shopper is chatting, when a shopper is taking an item from a shelf and putting it in a basket, or when a shopper is facing a different direction from the shelf.

[0057] If the setting processing unit 415 determines that the likelihood of the obstacle moving is low, it sets the waiting time to a shorter duration, and if it determines that the likelihood of the obstacle moving is high, it sets the waiting time to a longer duration. For example, if a shopper is searching for an item on a shelf, or if a shopper is standing around chatting, the likelihood of the shopper moving is low, so the setting processing unit 415 sets the waiting time to a shorter duration to facilitate avoidance driving. For example, the setting processing unit 415 sets the coefficient multiplied by the total distance of the avoidance route to a smaller value. On the other hand, if a shopper is taking an item from a shelf and putting it in a basket, or if a shopper is facing a direction different from the shelf, the likelihood of the shopper moving is high, so the setting processing unit 415 sets the waiting time to a longer duration to facilitate driving along the target route. For example, the setting processing unit 415 sets the coefficient multiplied by the total distance of the avoidance route to a larger value.

[0058] As another example, the setting processing unit 415 may set the waiting time according to the number of obstacles. For example, the more obstacles there are on the target path, the lower the probability that the traveling device 10 will be able to travel along the target path. In the example shown in Figure 12, there are two people, A and B, on the target path R1. In this case, the traveling device 10 cannot travel along the target path R1 until the two people, A and B, move. Comparing the case where there is one person on the target path R1 (see Figure 6) with the case where there are two people on the target path R1 (see Figure 12), the time until the target path R1 becomes traversable is more likely to be longer when there are two people on the target path R1.

[0059] Therefore, the setting processing unit 415 sets the waiting time when there are two people on the target path R1 (see Figure 12) to be shorter than the waiting time when there is one person on the target path R1 (see Figure 6). In this way, the setting processing unit 415 sets the waiting time shorter so that the more obstacles there are on the target path, the easier it is for the vehicle 10 to switch to avoidance driving. That is, the setting processing unit 415 sets the waiting time shorter the more obstacles there are on the target path. Alternatively, the setting processing unit 415 may calculate the waiting time by multiplying the waiting time when there is one person on the target path R1 (see Figure 6) by a coefficient (a coefficient less than 1) corresponding to the number of people on the target path R1.

[0060] As yet another example, the setting processing unit 415 may set a first waiting time if the target position is included in the field of view of the camera 30 at the stopping position P1 of the traveling device 10, and set a second waiting time shorter than the first waiting time if the target position is not included in the field of view of the camera 30 at the stopping position P1. For example, in the example shown in Figure 13, the traveling device 10 can determine from the image captured by the camera 30 that there is one person A between the stopping position P1 and the target position G1, and therefore it can determine that it will be possible to travel along the target path R1 (straight path R13) once person A moves. In this case, it is reasonable for the traveling device 10 to wait until person A moves rather than traveling along the avoidance path R1a.

[0061] On the other hand, in the example shown in Figure 14, the traveling device 10 can determine from the image captured by the camera 30 that there is one person A on the straight path R13, but it cannot determine whether or not there is an obstacle on the straight path R14. Therefore, even if person A moves on the target path R1 (straight path R13), it may not be able to travel along the target path R1.

[0062] Therefore, the setting processing unit 415 sets the waiting time to be longer if the target position is included in the field of view of the camera 30 at the stopping position P1, so that the traveling device 10 is less likely to transition to evasive driving, and sets the waiting time to be shorter if the target position is not included in the field of view of the camera 30 at the stopping position P1, so that the traveling device 10 is more likely to transition to evasive driving. The setting processing unit 415 may also calculate the waiting time when the target position is included in the field of view of the camera 30 at the stopping position P1 (see Figure 13) by multiplying the waiting time when the target position is not included in the field of view of the camera 30 at the stopping position P1 (see Figure 14) by a predetermined coefficient (a coefficient greater than 1).

[0063] As described above, the setting processing unit 415 may set a waiting time for the traveling device 10 to wait at the stop position based on obstacle information relating to the obstacle. Alternatively, the setting processing unit 415 may set the waiting time by appropriately combining the setting methods described above. In other words, in the present invention, the setting processing unit 415 sets a waiting time for the traveling device 10 to wait at the stop position based on at least one of the avoidance path information relating to the avoidance path and the obstacle information relating to the obstacle.

[0064] [Travel process] The following describes the travel process performed by the travel device 10 with reference to Figure 15. Specifically, in this embodiment, the travel process is performed by the control unit 40 of the travel device 10.

[0065] Furthermore, the present invention can be understood as an invention of a driving method that performs one or more steps included in the driving process. Also, the one or more steps included in the driving process described herein may be omitted as appropriate. Furthermore, the execution order of each step in the driving process may differ to the extent that similar effects are produced. In addition, although the case in which each step in the driving process is executed by the control unit 40 is given as an example, a driving method in which each step in the driving process is executed in a distributed manner by multiple processors can also be considered as another embodiment.

[0066] First, in step S11, the control unit 40 determines whether or not it has received a driving start instruction from the user of the driving device 10. Specifically, the control unit 40 determines whether or not it has received a target route selection operation and a driving start instruction selection operation from the user at the operation unit 20. If the control unit 40 determines that it has received the driving start instruction (S11: Yes), it moves the process to step S12. The control unit 40 waits until it receives the driving start instruction (S11: No).

[0067] In step S12, the control unit 40 starts driving along the target path. For example, the control unit 40 causes the driving device 10 to start autonomous driving according to the target path R1 shown in Figure 5.

[0068] Next, in step S13, the control unit 40 determines whether or not it has detected an obstacle. Specifically, the control unit 40 detects obstacles (people, objects, etc.) on the target path R1 based on sensor signals (detection signals) from the front laser sensor 41, sonar sensor 42, and side laser sensor 45. If the control unit 40 detects an obstacle (S13: Yes), it moves the process to step S14. On the other hand, if the control unit 40 does not detect an obstacle (S13: No), it moves the process to step S20.

[0069] In step S14, the control unit 40 stops the movement of the travel device 10. For example, as shown in Figure 5, when the control unit 40 detects a person A on the target path R1, it stops the travel device 10 at a predetermined position (stop position P1).

[0070] Next, in step S15, the control unit 40 generates an avoidance path from the stopping position of the travel device 10 to the target position. For example, as shown in Figure 7, the control unit 40 generates an avoidance path R1a that reaches the target position G1 via straight paths R11a, R12a, R13a, R14a, and R15a from the stopping position P1.

[0071] Next, in step S16, the control unit 40 sets a waiting time for the traveling device 10 to wait at the stop position. Specifically, the control unit 40 sets the waiting time based on at least one of the avoidance path information relating to the avoidance path and the obstacle information relating to the obstacle.

[0072] For example, the control unit 40 sets the waiting time according to the length of the avoidance path (see Figures 7 and 10). Also, for example, the control unit 40 sets the waiting time according to the width L of the avoidance path (see Figure 11). Also, for example, the control unit 40 sets the waiting time according to the type of obstacle (person, object, etc.). Also, for example, the control unit 40 sets the waiting time according to the movement status of the obstacle (person's behavior pattern). Also, for example, the control unit 40 sets the waiting time according to the number of obstacles present on the target path (see Figure 12). Also, for example, the control unit 40 sets the waiting time based on whether the target position is included in the field of view of the camera 30 at the stopping position (see Figures 13 and 14).

[0073] The control unit 40 may set the waiting time by appropriately combining the setting methods described above.

[0074] Next, in step S17, the control unit 40 starts measuring the waiting time. That is, when the control unit 40 detects an obstacle on the target path, it starts measuring the waiting time.

[0075] Next, in step S18, the control unit 40 determines whether or not it is no longer detecting the obstacle. That is, the control unit 40 determines whether or not the obstacle detected on the target path has moved away from the target path. If the control unit 40 is no longer detecting the obstacle (S18: Yes), it proceeds to step S19. On the other hand, if the control unit 40 is still detecting the obstacle (S18: No), it proceeds to step S181.

[0076] In step S181, the control unit 40 determines whether the waiting time has elapsed. If the control unit 40 determines that the waiting time has elapsed (S181:Yes), it proceeds to step S182. On the other hand, if the control unit 40 determines that the waiting time has not elapsed (S181:No), it returns to step S18.

[0077] In this manner, the control unit 40 continues to determine whether or not the obstacle is present on the target path until the waiting time has elapsed.

[0078] If the control unit 40 determines that the obstacle is no longer present before the waiting time has elapsed (S18: Yes), in step S19, it continues to travel along the target path. In other words, if the obstacle moves before the waiting time has elapsed, the control unit 40 causes the travel device 10 to autonomously travel along the target path.

[0079] On the other hand, if the control unit 40 detects the obstacle and the waiting time has elapsed (S18: No, S181: Yes), in step S182, it starts driving along the avoidance path. In other words, if the obstacle does not move and the waiting time has elapsed, the control unit 40 causes the driving device 10 to drive in an avoidance direction.

[0080] After step S19 or step S182, in step S20, the control unit 40 determines whether the traveling device 10 has arrived at the target position. If the control unit 40 determines that the traveling device 10 has arrived at the target position (S20: Yes), it proceeds to step S21. On the other hand, if the control unit 40 determines that the traveling device 10 has not arrived at the target position (S20: No), it proceeds to step S13.

[0081] In step S21, the control unit 40 stops the traveling device 10. That is, the control unit 40 terminates autonomous driving corresponding to the selected target path. The control unit 40 repeatedly executes the processes of steps S13 to S20 described above until the traveling device 10 arrives at the target location.

[0082] As described above, the driving system according to this embodiment detects an obstacle on the target path while the driving device 10 is traveling along the target path, and stops the driving of the driving device 10 when an obstacle is detected. The driving system also generates an avoidance path from the stopping position of the driving device 10 to the destination position when an obstacle is detected, and sets a waiting time for the driving device 10 to wait at the stopping position based on at least one of the avoidance path information and the obstacle information. If the driving system no longer detects the obstacle before the waiting time has elapsed, it drives the driving device 10 from the stopping position to the destination position according to the target path, and if the waiting time has elapsed while the obstacle is still detected, it drives the driving device 10 from the stopping position to the destination position according to the avoidance path.

[0083] With the above configuration, when an obstacle is detected on the target path, the traveling device 10 can be temporarily stopped and made to wait for an appropriate amount of time. This prevents the traveling device 10 from waiting unnecessarily at the stopping position or from immediately switching to evasive driving even though there is a high probability that the obstacle will move. Furthermore, by setting the waiting time individually based on conditions such as evasive path information (length of the evasive path, width of the passage, etc.) and obstacle information (type of obstacle, operating status, number, position, etc.) rather than a fixed value, the target location can be reached more quickly. Thus, it is possible to suppress a decrease in the traveling efficiency of the traveling device 10.

[0084] In the embodiments described above, the traveling device 10 alone corresponds to the traveling system according to the present invention, but the traveling system according to the present invention may include one or more components from the traveling device 10 and the server (information processing device). For example, if multiple components from the traveling device 10 and the server cooperate to share and execute the traveling process (see Figure 15), the system including the multiple components that execute the process can be considered as the traveling system according to the present invention. For example, the server alone may constitute the traveling system according to the present invention. Specifically, the server may include each processing unit of the control unit 40 shown in Figure 2 (travel processing unit 411, detection processing unit 412, stop processing unit 413, generation processing unit 414, setting processing unit 415) and control the traveling device 10.

[0085] [Notes on the invention] The following is an overview of the invention extracted from the above-described embodiments. Note that each configuration and processing function described below can be selected and combined as desired.

[0086] <Note 1> A driving system that drives a vehicle to a target location according to a target path, The aforementioned traveling device includes a detection processing unit that detects obstacles on the target path while the traveling device is traveling along the target path, When the detection processing unit detects the obstacle, a stop processing unit stops the movement of the traveling device, When the detection processing unit detects the obstacle, a generation processing unit generates an avoidance path from the stopping position of the traveling device to the target position, A setting processing unit sets a waiting time for the traveling device to wait at the stop position based on at least one of the avoidance path information relating to the avoidance path and the obstacle information relating to the obstacle, If the detection processing unit stops detecting the obstacle before the aforementioned waiting time has elapsed, the driving unit drives the driving device from the stopping position to the target position according to the target path, and if the waiting time has elapsed while the detection processing unit is detecting the obstacle, the driving unit drives the driving device from the stopping position to the target position according to the avoidance path, A driving system equipped with the following features.

[0087] <Note 2> The setting processing unit sets the waiting time according to the length of the avoidance path. The driving system described in Appendix 1.

[0088] <Note 3> The setting processing unit sets the waiting time according to the difference between the distance from the stopping position to the target position on the target path and the distance from the stopping position to the target position on the avoidance path. The driving system described in Appendix 2.

[0089] <Note 4> The setting processing unit sets the waiting time to be longer the larger the difference. The driving system described in Appendix 3.

[0090] <Note 5> The setting processing unit sets the waiting time according to the width of the bypass path. A driving system as described in any of the appendices 1 to 4.

[0091] <Note 6> The setting processing unit sets the waiting time to be shorter the wider the path width of the avoidance route. The driving system described in Appendix 5.

[0092] <Note 7> The setting processing unit sets the waiting time according to the type of obstacle. A driving system as described in any of the appendices 1 to 6.

[0093] <Note 8> The setting processing unit sets the waiting time according to the operating status of the obstacle. A driving system as described in any of the appendices 1 to 7.

[0094] <Note 9> The setting processing unit sets the waiting time according to the number of obstacles. A driving system as described in any of the appendices 1 to 8.

[0095] <Note 10> The setting processing unit sets the waiting time to be shorter the more obstacles there are. The driving system described in Appendix 9.

[0096] <Note 11> The setting processing unit sets a first waiting time when the target position is included in the field of view of the camera of the traveling device at the stopping position, and sets a second waiting time shorter than the first waiting time when the target position is not included in the field of view of the camera of the traveling device at the stopping position. The driving system described in any of the appendices 1 to 10. [Explanation of Symbols]

[0097] 10: Running gear 30: Camera 40: Control Unit 41: Front laser sensor 42: Sonar Sensor 45: Side laser sensor 50: Storage section 51: Map Information 52: Route Information 411: Driving section 412: Detection Processing Unit 413: Stop Processing Unit 414: Generation Processing Unit 415: Configuration Processing Unit P1: Stop position R1: Target route R1a: Avoidance route

Claims

1. A driving system that drives a vehicle to a target location according to a target path, The aforementioned traveling device includes a detection processing unit that detects obstacles on the target path while the traveling device is traveling along the target path, When the detection processing unit detects the obstacle, a stop processing unit stops the movement of the traveling device, When the detection processing unit detects the obstacle, a generation processing unit generates an avoidance path from the stopping position of the traveling device to the target position, A setting processing unit sets a waiting time for the traveling device to wait at the stop position based on at least one of the avoidance path information relating to the avoidance path and the obstacle information relating to the obstacle, If the detection processing unit stops detecting the obstacle before the aforementioned waiting time has elapsed, the driving unit drives the driving device from the stopping position to the target position according to the target path, and if the waiting time has elapsed while the detection processing unit is detecting the obstacle, the driving unit drives the driving device from the stopping position to the target position according to the avoidance path, A driving system equipped with the following features.

2. The setting processing unit sets the waiting time according to the length of the avoidance path. The driving system according to claim 1.

3. The setting processing unit sets the waiting time according to the difference between the distance from the stopping position to the target position on the target path and the distance from the stopping position to the target position on the avoidance path. The driving system according to claim 2.

4. The setting processing unit sets the waiting time to be longer the larger the difference. The driving system according to claim 3.

5. The setting processing unit sets the waiting time according to the width of the bypass path. The driving system according to claim 1.

6. The setting processing unit sets the waiting time to be shorter the wider the path width of the avoidance route. The driving system according to claim 5.

7. The setting processing unit sets the waiting time according to the type of obstacle. The driving system according to claim 1.

8. The setting processing unit sets the waiting time according to the operating status of the obstacle. The driving system according to claim 1.

9. The setting processing unit sets the waiting time according to the number of obstacles. The driving system according to claim 1.

10. The setting processing unit sets the waiting time to be shorter the more obstacles there are. The driving system according to claim 9.

11. The setting processing unit sets a first waiting time when the target position is included in the field of view of the camera of the traveling device at the stopping position, and sets a second waiting time shorter than the first waiting time when the target position is not included in the field of view of the camera of the traveling device at the stopping position. The driving system according to claim 1.

12. A method of driving a vehicle to a target location according to a target path, One or more processors The detection step involves detecting an obstacle on the target path while the traveling device is traveling along the target path. If the obstacle is detected in the detection step, a stopping step is performed to stop the movement of the traveling device. If the obstacle is detected in the detection step, a generation step is made to generate an avoidance path from the stopping position of the traveling device to the target position, A setting step of setting a waiting time for the traveling device to wait at the stop position based on at least one of the avoidance path information relating to the avoidance path and the obstacle information relating to the obstacle, A driving step in which, if the obstacle is no longer detected before the aforementioned waiting time has elapsed, the driving device is driven from the stopping position to the target position according to the target path, and if the waiting time has elapsed while the obstacle is detected, the driving device is driven from the stopping position to the target position according to the avoidance path, A driving method that performs this task.

13. A driving program that causes a vehicle to travel to a target location according to a target path, The detection step involves detecting an obstacle on the target path while the traveling device is traveling along the target path. If the obstacle is detected in the detection step, a stopping step is performed to stop the movement of the traveling device. If the obstacle is detected in the detection step, a generation step is made to generate an avoidance path from the stopping position of the traveling device to the target position, A setting step of setting a waiting time for the traveling device to wait at the stop position based on at least one of the avoidance path information relating to the avoidance path and the obstacle information relating to the obstacle, A driving step in which, if the obstacle is no longer detected before the aforementioned waiting time has elapsed, the driving device is driven from the stopping position to the target position according to the target path, and if the waiting time has elapsed while the obstacle is detected, the driving device is driven from the stopping position to the target position according to the avoidance path, A program to run on one or more processors.

Citation Information

Patent Citations

  • Autonomous moving device

    JP1997185412A

  • Automatic travel system for vehicle

    JP2002341939A

  • Autonomous Robot System

    JP2020527266A