Autonomous robot system, control method of autonomous robot, and control program

By periodically acquiring data and determining temporal precedence, the system prevents misjudgment and interference in autonomous robots, optimizing their movements and reducing unnecessary standby times.

JP2025099435APending Publication Date: 2025-07-03SEQSENSE CO LTD +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023216099
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-12-21
Publication Date
2025-07-03

AI Technical Summary

Technical Problem

In autonomous robot systems, communication delays can lead to misjudgment and unintentional interference between robots, causing one robot to wait excessively while another moves.

Method used

The system periodically acquires data on the status and standby start time of other robots, determining the temporal precedence relationship and releasing the standby state based on these conditions to prevent misjudgment and interference.

Benefits of technology

Prevents misjudgment and interference by ensuring robots wait only when necessary, optimizing their movements and reducing prolonged standby states.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025099435000001_ABST
    Figure 2025099435000001_ABST
Patent Text Reader

Abstract

To eliminate erroneous determination due to communication delay in order to prevent mutual interference between autonomous robots and prolongation of a standby state of the autonomous robots.SOLUTION: An autonomous robot system is configured to, when a predetermined standby condition is satisfied while a request of a task is being issued, set the first autonomous robot in a standby state of standing by execution of the task, and execute predetermined determination processing. The determination processing includes: determining a temporal anteroposterior relationship between an update time of data and a first standby start time that is a start time at which a status of the first autonomous robot is in a standby state; and deciding cancellation of the standby state of the first autonomous robot based on a determination result of a temporal anteroposterior relationship between the first standby start time and a second standby start time of the data corresponding to the update time determined to be later than the first standby start time, or a determination result of whether or not a second autonomous robot is in a standby state.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to an autonomous robot system, a method for controlling an autonomous robot, and a control program.

Background Art

[0002] In recent years, an autonomous robot system in which a plurality of autonomous robots move autonomously has been developed. In the system, one autonomous robot moves autonomously while referring to information of other autonomous robots.

[0003] Note that Patent Document 1 discloses a vehicle control system that sets speed conditions of a vehicle according to a communication situation. In the vehicle control system, when the distance between the autonomous driving vehicle and a manned vehicle is equal to or less than a reference distance, if it is determined that inter-vehicle communication is established, the upper limit of the traveling speed is increased, and if it is determined that inter-vehicle communication is not established, the upper limit of the traveling speed is decreased.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0005] In the autonomous robot system, there may be a delay in the wireless communication for the one autonomous robot to receive information of the other autonomous robots. When a communication delay occurs, an error may occur in the determination in the autonomous movement of the autonomous robot. When an incorrect determination occurs, the plurality of autonomous robots may move simultaneously unintentionally and interfere with each other, and any one of the plurality of autonomous robots may wait for a long time to move.

[0006] Therefore, one aspect of the present disclosure aims to eliminate misjudgment due to communication delay in order to prevent mutual interference between autonomous robots and the like.

Means for Solving the Problems

[0007] An autonomous robot system according to one aspect of the present disclosure is an autonomous robot system in which a plurality of autonomous robots including a first autonomous robot and a second autonomous robot each perform a task, and includes a processing circuit configured to control the first autonomous robot based on a task request for the first autonomous robot. The processing circuit periodically acquires data indicating the status of the second autonomous robot and a second standby start time which is the start time when the status becomes the standby state, together with the update time of the data, and when a predetermined standby condition is satisfied during the occurrence of the task request, sets the first autonomous robot to a standby state in which the execution of the task is awaited, and performs a predetermined determination process. The determination process includes determining the temporal precedence relationship between the update time of the data and a first standby start time which is the start time when the status of the first autonomous robot becomes the standby state, and based on the determination result of the temporal precedence relationship between the first standby start time and the second standby start time of the data corresponding to the update time determined to be after the first standby start time, or the determination result of whether or not the second autonomous robot is in the standby state, determining the release of the standby state of the first autonomous robot.

[0008] A method for controlling an autonomous robot according to an aspect of the present disclosure is a method for controlling an autonomous robot used in a system in which a plurality of autonomous robots including a first autonomous robot and a second autonomous robot each perform a task. The method includes periodically acquiring data indicating the status of the second autonomous robot and a second standby start time which is the start time when the status becomes the standby state, together with the update time of the data; and when a predetermined standby condition is satisfied during the occurrence of the task request, setting the first autonomous robot to a standby state in which the execution of the task is awaited and performing a predetermined determination process. The determination process includes determining the temporal precedence relationship between the update time of the data and a first standby start time which is the start time when the status of the first autonomous robot becomes the standby state; and determining whether to cancel the standby state of the first autonomous robot based on the determination result of the temporal precedence relationship between the first standby start time and the second standby start time of the data corresponding to the update time determined to be after the first standby start time, or based on the determination result of whether the second autonomous robot is in the standby state.

[0009] A control program for an autonomous robot according to an aspect of the present disclosure causes at least one processor to execute the above method. The program can be stored in a computer-readable storage medium. The storage medium is a non-transitory and tangible medium. The storage medium can be built-in or externally attached to a computer (e.g., a mobile information terminal, a personal computer, a server, etc.). The storage medium includes RAM, ROM, EEPROM, storage, etc., and can be, for example, a hard disk, a flash memory, an optical disk, etc. The program stored in the storage medium may be executed on a computer directly connected to the storage medium, or may be executed on a computer connected to the storage medium via a network (e.g., the Internet).

Advantages of the Invention

[0010] According to one aspect of the present disclosure, when the standby condition is satisfied, the update time of the data of the second autonomous robot, the first standby start time of the first autonomous robot, and the second standby start time of the second autonomous robot are confirmed (or it is confirmed whether the second autonomous robot is in the standby state), and it is determined to release the standby state of the first autonomous robot based on the standby condition. Thus, misjudgment due to communication delay can be prevented, and mutual interference between autonomous robots can be prevented.

Brief Description of the Drawings

[0011]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Figure 14

DETAILED DESCRIPTION OF THE INVENTION

[0012] Hereinafter, embodiments will be described with reference to the drawings.

[0013] FIG. 1 is a schematic diagram of an autonomous robot system 1 according to an embodiment. As shown in FIG. 1, the autonomous robot system 1 includes a plurality of autonomous robots 10 that move autonomously, a server 11 that can communicate with the plurality of autonomous robots 10 via a communication network 13, and a database 12 connected to the server 11. The communication network 13 can be, for example, the Internet, but may also be an intranet or the like. The autonomous robot 10 moves autonomously within a predetermined area 50. For example, the autonomous robot 10 moves autonomously on the floor inside a building, but may also move autonomously in a predetermined outdoor area.

[0014] The database 12 stores map data 40 of the area where the autonomous robot 10 moves. The map data 40 specifies the shape of the area 50 where the autonomous robot 10 can travel. For example, the map data 40 specifies the shape of the floor inside a building. The map data 40 specifies the contour of the travelable area of the autonomous robot 10 by specifying the obstacle contour in the area 50. The map data 40 includes area data that divides the area 50 where the autonomous robot 10 can move into a plurality of areas (see FIG. 7). Note that the database 12 may be provided in the server 11 or may be connected to the server 11 via the communication network 13.

[0015] The plurality of autonomous robots 10 have the same configuration as each other. The autonomous robot 10 is an autonomous mobile robot equipped with a navigation function and moving autonomously toward a destination. When the autonomous robot 10 moves via a relay point until it reaches the final destination, the autonomous robot 10 may move with the relay point closest to the current location as the destination. The autonomous robot 10 travels on the ground, but it may also fly in the air. As an example, the autonomous robot 10 includes a plurality of wheels 15, a body 16, at least one distance measuring sensor 24, a touch panel display 25, and the like.

[0016] The wheels 15 are driving wheels for traveling. The body 16 is supported by the wheels 15. The wheels 15 are an example of a propulsion body that moves the autonomous robot 10. In this embodiment, since the task of the autonomous robot 10 is to move to a destination, the wheels 15 are an example of a driven body that performs the task. The body 16 has a carrier 16a. For example, materials that require transportation are loaded on the carrier 16a. The distance measuring sensor 24 and the touch panel display 25 will be described later.

[0017] FIG. 2 is a block diagram of the autonomous robot 10 in FIG. 1. As shown in FIG. 2, the autonomous robot 10 includes a processing circuit 20, a distance measuring sensor 24, a touch panel display 25, a traveling actuator 26, a communication interface 27, and the like. These devices 24 to 27 are electrically connected to the processing circuit 20.

[0018] The processing circuit 20 includes a processor 21, a system memory 22, and a storage memory 23. The processor 21 may include a CPU (Central Processing Unit). The system memory 22 may include a RAM. The storage memory 23 may include a hard disk, a flash memory, or a combination thereof. The storage memory 23 stores a control program P1. A configuration in which the processor 21 executes the control program P1 read from the storage memory 23 into the system memory 22 is an example of the processing circuit 20. The processor 21 controls at least one of the touch panel display 25 and the traveling actuator 26 according to the control program P1 based on information input from at least one of the distance measuring sensor 24, the touch panel display 25, and the communication interface 27.

[0019] The distance measuring sensor 24 three-dimensionally measures the surroundings of the autonomous robot 10 to three-dimensionally detect the shape of the surroundings of the autonomous robot 10. The distance measuring sensor 24 detects the position data of the outer surface of the obstacle in the area 50 by receiving the reflected wave from the obstacle around the autonomous robot 10. For example, the distance measuring sensor 24 may emit light, radio waves, or ultrasonic waves toward the surroundings of the autonomous robot 10 and receive the reflected wave. The distance measuring sensor 24 may receive the reflected wave of light, radio waves, or ultrasonic waves existing in the external world reflected by an object. The distance measuring sensor 24 can measure the omnidirectional horizontal direction with respect to the autonomous robot 10.

[0020] The distance measurement sensor 24 can be, for example, a device that measures the time from when a laser beam is emitted until a reflected wave is received to detect the distance to an obstacle. The distance measurement sensor 24 can be a LIDAR (Light Detection and Ranging) sensor. As an example, the distance measurement sensor 24 is a three-dimensional LIDAR sensor. Note that the distance measurement sensor 24 may be a sensor assembly including a LIDAR sensor facing forward, a LIDAR sensor facing rearward, a LIDAR sensor facing leftward, and a LIDAR sensor facing rightward. The distance measurement sensor 24 may be an infrared distance measurement sensor, a millimeter-wave radar, or a depth sensing camera. The depth sensing camera may be a device that measures the distance to an object using the parallax by a stereo camera.

[0021] The processing circuit 20 identifies the position of the autonomous robot 10 on the map data 40 by matching the shape of the surroundings detected by the distance measurement sensor 24 with the shape of the map data 40 described later. That is, a positioning sensor is realized by a combination of software that matches the detected shape by the distance measurement sensor 24 with the map data 40 and the distance measurement sensor 24.

[0022] The touch panel display 25 is an example of a user interface. That is, the touch panel display 25 serves as both a user input interface and a user output interface. Note that a keyboard, a mouse, etc. may be used as the user input interface, and a non-touch panel type display may be used as the user output interface.

[0023] The traveling actuator 26 includes a wheel drive actuator that drives the wheel 15 to rotate. The traveling actuator 26 is, for example, an electric motor. The traveling actuator 26 includes a brake actuator that drives a brake for braking the wheel 15. The autonomous robot 10 may change the traveling direction by making the rotational speeds of the left and right wheels 15 different, or may change the traveling direction by making the rotational directions of the left and right wheels 15 different, or may change the traveling direction by steering the wheel 15 with a steering actuator. The autonomous robot 10 may have a counter-rotating differential two-wheel mechanism or an omnidirectional mecanum mechanism.

[0024] The communication interface 27 is an interface for wirelessly connecting to the communication network 13. The communication interface 27 functions as a transmitter that transmits information on its own autonomous robot 10 to the server 11 via the communication network 13. The communication interface 27 functions as a receiver that receives information on other autonomous robots 10 transmitted from the server 11.

[0025] FIG. 3 is a block diagram of the server 11 in FIG. 2. As shown in FIG. 3, the server 11 includes a processing circuit 30 and a communication interface 34. The processing circuit 30 includes a processor 31, a system memory 32, and a storage memory 33. The communication interface 34 includes an interface for wired or wireless connection to the communication network 13 and an interface for wired or wireless connection to the database 12. The processor 31 may include a CPU (Central Processing Unit). The system memory 32 may include a RAM. The storage memory 33 may include a hard disk, a flash memory, or a combination thereof. The storage memory 33 stores the program P2. A configuration in which the processor 31 executes the program P2 read from the storage memory 33 into the system memory 32 is an example of the processing circuit 30.

[0026] FIG. 4 is a flowchart for explaining the control of the autonomous robot 10 in FIG. 2. In the following description, attention is paid to the first autonomous robot 10A and the second autonomous robot 10B among the plurality of autonomous robots 10.

[0027] The first autonomous robot 10A and the second autonomous robot 10B receive a task request from the server 11 or the touch panel display 25 and autonomously execute the task. In the present embodiment, the task is the movement of the autonomous robot 10 to the destination, and the task request is a movement request. That is, the task request to the first autonomous robot 10A is a signal requesting the movement of the first autonomous robot 10A to the first destination, which is the destination of the first autonomous robot 10A. The task request to the second autonomous robot 10B is a signal requesting the movement of the second autonomous robot 10B to the second destination, which is the destination of the second autonomous robot 10B.

[0028] Regarding the first autonomous robot 10A as its own autonomous robot and the second autonomous robot 10B as another autonomous robot, the processing of the first autonomous robot 10A will be mainly described according to the flow of FIGS. 4 to 6 with appropriate reference to FIGS. 1 to 3. Hereinafter, the processing of the first autonomous robot 10A is executed by the processing circuit 20.

[0029] As shown in FIG. 4, when the power of the first autonomous robot 10A is turned on, the first autonomous robot 10A receives map data 40 from the database 12 via the communication network 13 (step S1). If there is no update to the previously received map data 40, the previously received map data 40 may be reused without receiving it again. The first autonomous robot 10A calculates the position data of the first autonomous robot 10A at a predetermined period by positioning that matches the detected shape by the distance measuring sensor 24 with the map data 40 (step S2). The first autonomous robot 10A transmits notification data including the position data and status data of the first autonomous robot 10A to the server 11 via the communication network 13 at a predetermined period together with the identification data of the first autonomous robot 10A and the update time of the notification data (step S3). The notification data also includes data indicating the standby start time when the status is the standby state. Note that although steps S2 and S3 are described serially for convenience in the flowchart, they are continuously executed while the power of the first autonomous robot 10A is on.

[0030] The status data is data indicating the status of the first autonomous robot 10A. The status is one state selected from the group consisting of a stopped state, a moving state, and a standby state. The stopped state means a state in which the first autonomous robot 10A has stopped without moving because it has not received a movement request, i.e., a task request, from the server 11 or the touch panel display 25. The moving state is a state other than both the stopped state and the standby state. The moving state means a state in which the first autonomous robot 10A is in the traveling mode because it has received a movement request from the server 11 or the touch panel display 25. The first autonomous robot 10A in the moving state is usually in a traveling state, but also includes a state in which it has temporarily stopped traveling, such as when detecting an obstacle during autonomous traveling. The standby state means a state in which the first autonomous robot 10A has received a movement request from the server 11 or the touch panel display 25, but has temporarily stopped without moving because the standby condition is satisfied.

[0031] The first autonomous robot 10A determines whether it has received a task request (step S4). When the first autonomous robot 10A receives a task request, a task request is in progress in the first autonomous robot 10A until the requested task is completed or the requested task is canceled. If no task request has been received (step S4: N), the first autonomous robot 10A waits for the reception of a task request. If a task request has been received (step S4: Y), the first autonomous robot 10A receives notification data including the position data and status data of the second autonomous robot 10B from the server 11 via the communication network 13 at a predetermined period (step S5). This notification data is provided with a data update time. Then, the first autonomous robot 10A executes task control (step S6). Note that although step S5 is described serially for convenience in the flowchart, it is continuously executed while step S6 is being performed or while the power of the first autonomous robot 10A is ON.

[0032] FIG. 5 is a flowchart for explaining the task control of FIG. 4. FIG. 6 is a continuation flowchart of FIG. 5. As shown in FIG. 5, the first autonomous robot 10A determines whether the main standby condition is satisfied (step S11). The main standby condition is a condition for preventing the first autonomous robot 10A from starting to move and interfering with the second autonomous robot 10B.

[0033] Specifically, the main standby condition may include a condition that the second autonomous robot 10B in a moving state exists within the area where the first autonomous robot 10A in a stopped state exists. The main standby condition may include a condition that the second autonomous robot 10B exists at a first destination within the area where the first autonomous robot 10A in a stopped state exists. The main standby condition may include a condition that the second autonomous robot 10B in a standby state, which is planned to move in the same direction as the first autonomous robot 10A, exists within the area where the first autonomous robot 10A in a stopped state exists. The main standby condition may include a condition that the second autonomous robot 10B in a moving state exists in the next area of the area where the first autonomous robot 10A exists at a boundary vicinity position less than a predetermined distance from the boundary between adjacent areas. The main standby condition may include a condition that the second autonomous robot 10B exists at the first destination in the next area of the area where the first autonomous robot 10A exists at the boundary vicinity position. The main standby condition may include a condition that the second autonomous robot 10B in a standby state, which is planned to move in the same direction as the first autonomous robot 10A, exists in the next area of the area where the first autonomous robot 10A exists at the boundary vicinity position. The main standby condition may include a condition that the second autonomous robot 10B in a standby state, which is planned to move to the area where the first autonomous robot 10A exists, exists in the next area of the area where the first autonomous robot 10A exists at the boundary vicinity position.

[0034] When it is determined that the main standby condition is satisfied (step S11: Y), the first autonomous robot 10A enters the standby state and returns to step S11 (step S12). When it is determined that the main standby condition is not satisfied (step S11: N), the first autonomous robot 10A determines whether the preliminary standby condition is satisfied (step S13).

[0035] The preliminary standby condition is a condition different from the main standby condition. The preliminary standby condition is a condition indicating a situation where, assuming there is no communication delay, it is not necessary to put the first autonomous robot 10A in a standby state. The preliminary standby condition is a condition indicating a situation where the possibility that the first autonomous robot 10A approaches and interferes with the second autonomous robot 10B is lower than that in the main standby condition. That is, the preliminary standby condition is a condition for preventing the first autonomous robot 10A from starting to move and interfering with the second autonomous robot 10B when the information indicated by the latest notification data of the second autonomous robot 10B received by the first autonomous robot 10A from the server 11 is old due to communication delay.

[0036] The preliminary standby condition includes at least one of the condition that the position of the first autonomous robot 10A and the position of the second autonomous robot 10B are in a predetermined specific positional relationship, and the condition that the status of the second autonomous robot 10B is in a predetermined specific state. The preliminary standby condition may include conditions indicating various situations as shown in FIGS. 7, 9, 11 to 14. Here, the example of FIG. 7 will be described first.

[0037] FIG. 7 is a plan view for explaining a first example of the preliminary standby condition in FIG. 6. As shown in FIG. 7, the preliminary standby condition includes a first condition that the second autonomous robot 10B is in a stopped state or a standby state, the second autonomous robot 10B exists in the same area as the area 50a where the first autonomous robot 10A exists, and the first autonomous robot 10A is in a stopped state and immediately after receiving a task request. When this condition is satisfied, the first autonomous robot 10A enters a standby state (step S14) in consideration of the possibility of communication delay in a situation where the second autonomous robot 10B also receives a task request almost simultaneously. Then, the first autonomous robot 10A performs an update time determination process while maintaining the standby state (step S15).

[0038] As the update time determination process, the first autonomous robot 10A determines whether the update time of the latest notification data of the second autonomous robot 10B received by the first autonomous robot 10A from the server 11 is after the first standby start time which is the start time of the standby state of the first autonomous robot 10A (step S15). When it is determined that the update time of the notification data of the second autonomous robot 10B is not after the first standby start time, the first autonomous robot 10A maintains the standby state (step S14).

[0039] When it is determined that the update time of the notification data of the second autonomous robot 10B is after the first standby start time, the first autonomous robot 10A performs a standby cancellation determination process (steps S16 to 17).

[0040] As the standby cancellation determination process, the first autonomous robot 10A determines whether the status of the second autonomous robot 10B is in the standby state (step S16). When it is determined that the second autonomous robot 10B is not in the standby state (step S16: N), the first autonomous robot 10A cancels the standby state based on the preliminary standby condition and enters the moving state (step S18). The first autonomous robot 10A determines whether it has reached the first destination, that is, whether the task has been completed (step S19). If the task has not been completed (step S19: N), it returns to step S11. At this time, when the main standby condition is satisfied in step S11, even if a NO determination is made in step S16, the first autonomous robot 10A will have substantially the same result as if the standby state continues.

[0041] FIG. 8 is a table for explaining the update time determination process of the first autonomous robot in the example of FIG. 7. As shown in FIG. 8, when the update time (97.5 to 99.5) of the latest notification data of the second autonomous robot 10B is before the first standby start time (100.0), which is the start time of the standby state of the first autonomous robot 10A, the first autonomous robot 10A continues the standby state. When the update time (100.5) of the latest notification data of the second autonomous robot 10B is after the first standby start time (100.0), which is the start time of the standby state of the first autonomous robot 10A, the first autonomous robot 10A performs a standby release determination process. In this case, since the second autonomous robot 10B is in a stopped state and not in a standby state, the first autonomous robot 10A releases the standby state based on the preliminary standby condition.

[0042] Returning to FIG. 6, if the task is not completed (step S19: N), steps S11 to 19 are repeated until the task is completed. If the task is completed (step S19: Y), the first autonomous robot 10A enters a stopped state and the task control ends (step S20).

[0043] Returning to FIG. 4, the first autonomous robot 10A determines whether its power has been turned off (step S7). If the first autonomous robot 10A determines that the power has not been turned off (step S7: N), it returns to step S2. On the other hand, if the first autonomous robot 10A determines that the power has been turned off (step S7: Y), it ends the process.

[0044] FIG. 9 is a table for explaining another example of the update time determination process of the first autonomous robot in the example of FIG. 7. As shown in FIG. 9, when the update time (97.5 to 99.5) of the latest notification data of the second autonomous robot 10B is before the first standby start time (100.0), which is the start time of the standby state of the first autonomous robot 10A, the first autonomous robot 10A continues the standby state. When the update time (100.5) of the latest notification data of the second autonomous robot 10B is after the first standby start time (100.0), which is the start time of the standby state of the first autonomous robot 10A, the first autonomous robot 10A performs a standby release determination process. In this case, since the second autonomous robot 10B is in the standby state, the first autonomous robot 10A determines whether the first standby start time (100.0) of the first autonomous robot 10A is before the second standby start time (100.5) of the second autonomous robot 10B. Since the first standby start time (100.0) of the first autonomous robot 10A is before the second standby start time (100.5) of the second autonomous robot 10B, the first autonomous robot 10A releases the standby state based on the preliminary standby condition and enters the moving state.

[0045] FIG. 10 is a plan view for explaining a second example of the preliminary standby condition in FIG. 6. As shown in FIG. 10, the preliminary standby condition (step S13) includes a second condition that the first autonomous robot 10A exists in the first area 50a next to the second area 50b where the second autonomous robot 10B exists in the traveling direction of the second autonomous robot 10B to the second destination 60B, the second autonomous robot 10B is in the standby state, and it is immediately after the first autonomous robot 10A has received a task request in the stopped state. When this condition is satisfied, the first autonomous robot 10A enters the standby state (step S14) in consideration of the possibility of communication delay under the situation where the second autonomous robot 10B has actually entered the first area 50a.

[0046] The first autonomous robot 10A determines whether the update time of the latest notification data of the second autonomous robot 10B received by the first autonomous robot 10A from the server 11 is after the first standby start time, which is the start time of the standby state of the first autonomous robot 10A (step S15). If it is determined that the update time of the notification data of the second autonomous robot 10B is not after the first standby start time, the first autonomous robot 10A maintains the standby state (step S14). If it is determined that the update time of the notification data of the second autonomous robot 10B is after the first standby start time, the first autonomous robot 10A performs a standby cancellation determination process (steps S16 - 17).

[0047] As the standby cancellation determination process, the first autonomous robot 10A determines whether the status of the second autonomous robot 10B is the standby state (step S16). If it is determined that the second autonomous robot 10B is in the standby state (step S16: Y), the first autonomous robot 10A determines whether the first standby start time of the first autonomous robot 10A is before the second standby start time indicated by the latest notification data of the second autonomous robot 10B (step S17).

[0048] If it is determined that the first standby start time is not before the second standby start time (step S17: N), the first autonomous robot 10A maintains the standby state (step S14). On the other hand, if it is determined that the first standby start time is before the second standby start time (step S17: Y), the first autonomous robot 10A cancels the standby state based on the preliminary standby conditions and enters the moving state (step S18). Since steps S19 - 20 are the same as described above, the description is omitted.

[0049] FIG. 11 is a plan view for explaining a third example of the preliminary standby condition in FIG. 5. As shown in FIG. 11, the preliminary standby condition is that the first autonomous robot 10A exists in the first area 50a next to the second area 50b where the second autonomous robot 10B exists in the traveling direction of the second autonomous robot 10B, and the second autonomous robot 10B is in a moving state, and the first autonomous robot 10A is in a stopped state and has just received a task request. When this condition is satisfied, the first autonomous robot 10A enters a standby state (step S14) in consideration of the possibility of communication delay in a situation where the second autonomous robot 10B has actually entered the first area 50a. Then, the first autonomous robot 10A performs an update time determination process (step S15) and a standby release determination process while maintaining the standby state (steps S16 to 17). Since steps S15 to 17 are the same as those described above, the description thereof is omitted.

[0050] FIG. 12 is a plan view for explaining a fourth example of the preliminary standby condition in FIG. 5. As shown in FIG. 12, the preliminary standby condition is that the second autonomous robot 10B exists in the second area 50b next to the first area 50a where the first autonomous robot 10A exists in the traveling direction of the first autonomous robot 10A to its own destination 60A, and the second autonomous robot 10B is in a stopped state, and the first autonomous robot 10A is in a moving state and is within a predetermined distance from the boundary 52 between the first area 50a and the second area 50b. The predetermined distance is a value selected from the range of 0 m or more and 2 m or less, preferably 0 m or more and 1 m or less, from the boundary 52.

[0051] When this condition is satisfied, the first autonomous robot 10A enters a standby state (step S14) in consideration of the possibility of communication delay in a situation where the second autonomous robot 10B has also received a task request almost simultaneously. Then, the first autonomous robot 10A performs an update time determination process (step S15) and a standby release determination process while maintaining the standby state (steps S16 to 17). Since steps S15 to 17 are the same as those described above, the description thereof is omitted.

[0052] FIG. 13 is a plan view for explaining a fifth example of the preliminary standby condition of FIG. 5. As shown in FIG. 13, the preliminary standby condition is that the first autonomous robot 10A in a moving state exists in the first area 50a which is next to the second area 50b and further next to the third area 50c where the second autonomous robot 10B exists in the traveling direction of the second autonomous robot 10B, and the second autonomous robot 10B is in a moving state, and the first autonomous robot 10A is in a moving state and within the predetermined distance from the boundary 52 between the first area 50a and the second area 50b, including a fifth condition.

[0053] When this condition is satisfied, the first autonomous robot 10A enters a standby state (step S14) in consideration of the possibility of communication delay under the situation where the second autonomous robot 10B has actually entered the second area 50b. Then, the first autonomous robot 10A performs an update time determination process (step S15) and a standby release determination process while maintaining the standby state (steps S16 to 17). Since steps S15 to 17 are the same as described above, the description is omitted.

[0054] FIG. 14 is a plan view for explaining a sixth example of the preliminary standby condition of FIG. 5. As shown in FIG. 14, the preliminary standby condition is that the second autonomous robot 10B in a standby state exists in the third area 50c which is next to the second area 50b and further next to the first area 50a where the first autonomous robot 10A exists in the traveling direction of the first autonomous robot 10A, and the second autonomous robot 10B is in a standby state, and the first autonomous robot 10A is in a moving state and within the predetermined distance from the boundary 52 between the first area 50a and the second area 50b, including a sixth condition.

[0055] When this condition is satisfied, the first autonomous robot 10A enters a standby state (step S14) in consideration of the possibility of communication delay under the situation where the second autonomous robot 10B has actually entered the second area 50b. Then, the first autonomous robot 10A performs an update time determination process (step S15) and a standby release determination process while maintaining the standby state (steps S16 to 17). Since steps S15 to 17 are the same as described above, the description is omitted.

[0056] According to the configuration described above, until it is determined that the update time of the data of the second autonomous robot 10B is after the standby start time of the first autonomous robot 10A when the preliminary standby condition is satisfied, the standby state of the first autonomous robot 10A is maintained, so that misjudgment due to communication delay can be prevented. And when the second autonomous robot 10B is not in the standby state, or when the standby start time of the first autonomous robot 10A is before the standby start time of the second autonomous robot 10B, in order to cancel the standby state of the first autonomous robot 10A, mutual interference between the autonomous robots 10A and 10B and prolongation of the standby state of the autonomous robots 10A and 10B can be prevented.

[0057] Note that the technology of the present disclosure is not limited to the above-described embodiments. For example, the processing circuit that determines whether an autonomous robot 10 can execute a task based on other robot information during the generation of a task request to the autonomous robot 10 may be arranged in either the autonomous robot 10 or the server 11. That is, all or part of the program P1 provided in the autonomous robot 10 may be provided in the server 11 instead. In that case, the server 11 may indirectly control the actuator 26 of the autonomous robot 10.

[0058] As an example of the driven body of the autonomous robot 10, walking legs may be used instead of the wheels 15. When the autonomous robot 10 is a drone, a propeller may be used instead of the wheels 15, and a propeller drive actuator may be used instead of the traveling actuator 26. Also, the standby state of the drone may be a hovering state. As the actuator 26, other types of actuators (for example, a hydraulic actuator or an engine) may be used instead of the electric motor. The task is not limited to movement, and may be an operation such as an operation using a robot arm.

[0059] Instead of receiving the position data and status data of other autonomous robots 10 from the server 11, the autonomous robot 10 may receive the position data and status data of the other autonomous robots 10 by direct wireless communication with the other autonomous robots 10.

[0060] For the positioning of the autonomous robot 10, instead of the positioning using the distance measuring sensor 24, satellite positioning such as GPS may be used. Based on the intensity of each radio wave received by the autonomous robot 10 from a plurality of wireless access points 3 installed in the area 50, the distance from each wireless access point to the autonomous robot 10 may be calculated to position the autonomous robot 10. Instead of receiving radio waves from a plurality of wireless access points for positioning, the autonomous robot 10 may receive sound waves, light, or magnetism from a plurality of locators installed in the area 50 for positioning.

[0061] The above update time determination process and standby release determination process may also be applied to the process at the time of establishment of the main standby condition. In that case, the main standby condition and the preliminary standby condition may be grouped together as one standby condition, or the preliminary standby condition may be abolished.

[0062] As described above, the embodiments have been described as examples of the technology disclosed in the present application. However, the technology in the present disclosure is not limited thereto, and is also applicable to embodiments with appropriate changes, replacements, additions, omissions, etc. Further, it is also possible to combine the respective components described in the above embodiments to form a new embodiment. For example, some of the configurations or methods in one embodiment may be applied to other embodiments, and some of the configurations in an embodiment can be arbitrarily extracted separately from other configurations in that embodiment. Also, among the components described in the accompanying drawings and the detailed description, there are not only components essential for solving the problem, but also components not essential for solving the problem for exemplifying the above technology.

[0063] The functions of the elements disclosed in this specification can be executed using a circuit or a processing circuit including a general-purpose processor, a dedicated processor, an integrated circuit, an ASIC (Application Specific Integrated Circuits), an FPGA (Field Programmable Gate Array), a GPU (Graphics Processing Unit), a conventional circuit, and / or a combination thereof, which is configured or programmed to execute the disclosed functions. Since a processor includes transistors and other circuits, it is regarded as a processing circuit or a circuit. In the present disclosure, a circuit, a unit, or a means is hardware that executes the listed functions, or is hardware programmed to execute the listed functions. The hardware may be the hardware disclosed in this specification, or may be other known hardware programmed or configured to execute the listed functions. When the hardware is a processor considered to be a type of circuit, the circuit, means, or unit is a combination of hardware and software, and the software is used for configuring the hardware and / or the processor.

[0064] [Aspect] The above-described embodiments are specific examples of the following aspects.

[0065] (Aspect 1) An autonomous robot system in which a plurality of autonomous robots including a first autonomous robot and a second autonomous robot each perform a task, comprising a processing circuit configured to control the first autonomous robot based on a task request for the first autonomous robot, wherein the processing circuit periodically acquires data indicating the status of the second autonomous robot and a second standby start time which is the start time when the status becomes a standby state, together with the update time of the data, When a predetermined waiting condition is satisfied during the generation of the task request, the first autonomous robot is configured to enter a waiting state in which it waits for the execution of the task and to perform a predetermined determination process. The determination process includes: determining the temporal precedence relationship between the update time of the data and the first waiting start time which is the start time when the status of the first autonomous robot becomes the waiting state; determining whether to release the waiting state of the first autonomous robot based on the determination result of the temporal precedence relationship between the first waiting start time and the second waiting start time of the data corresponding to the update time determined to be after the first waiting start time, or based on the determination result of whether the second autonomous robot is in the waiting state. This is an autonomous robot system.

[0066] According to this configuration, when the waiting condition is satisfied, the update time of the data of the second autonomous robot, the first waiting start time of the first autonomous robot, and the second waiting start time of the second autonomous robot are confirmed (or it is confirmed whether the second autonomous robot is in the waiting state), and it is determined whether to release the waiting state of the first autonomous robot based on the waiting condition. Therefore, misjudgment due to communication delay can be prevented, and mutual interference between autonomous robots can be prevented.

[0067] (Aspect 2) The determination process is an update time determination process, The update time determination process includes: when it is determined that the update time of the data is before the first waiting start time, maintaining the waiting state of the first autonomous robot; when it is determined that the update time of the data is after the first waiting start time, performing a predetermined waiting release determination process. The waiting release determination process includes: when it is determined that the first waiting start time is after the second waiting start time of the data corresponding to the update time determined to be after the first waiting start time, maintaining the waiting state of the first autonomous robot; When it is determined that the second autonomous robot is in the standby state and the first standby start time is earlier than the second standby start time, or when it is determined that the second autonomous robot is not in the standby state, the autonomous robot system according to aspect 1 further includes releasing the standby state of the first autonomous robot.

[0068] According to this configuration, the standby state of the first autonomous robot is maintained until it is determined that the update time of the data of the second autonomous robot is later than the standby start time of the first autonomous robot when the standby condition is satisfied. Then, when the second autonomous robot is not in the standby state, or when the standby start time of the first autonomous robot is earlier than the standby start time of the second autonomous robot, the standby state of the first autonomous robot is released. Therefore, mutual interference between autonomous robots and prolongation of the standby state of autonomous robots can be prevented.

[0069] (Aspect 3) The standby condition is a preliminary standby condition. The processing circuit is configured to put the first autonomous robot in a standby state of waiting for the execution of the task when a predetermined main standby condition is satisfied during the occurrence of the task request, according to the autonomous robot system described in aspect 1 or 2.

[0070] According to this configuration, by providing a preliminary standby condition separately from the main standby condition, misjudgment due to communication delay can be prevented.

[0071] (Aspect 4) The processing circuit is configured to acquire map data. The task includes moving the first autonomous robot to a first destination, which is the destination of the first autonomous robot. The task request includes a movement request for requesting movement to the first destination. Waiting for the execution of the task includes waiting for the movement to the first destination, according to the autonomous robot system described in aspect 1 or 2.

[0072] According to this configuration, if the start time of the standby state of the first autonomous robot is earlier than the start time of the standby state of the second autonomous robot during the generation of a movement request that requests movement to the first destination, the first autonomous robot releases the standby state first and moves. Therefore, a plurality of autonomous robots can move efficiently as a whole.

[0073] (Aspect 5) The processing circuit is configured to acquire at least one of position data indicating the position of the second autonomous robot and status data indicating the status of the second autonomous robot. The preliminary standby condition is a condition that the position indicated by the position data of the first autonomous robot and the position indicated by the position data of the second autonomous robot are in a predetermined specific position relationship, and a condition that the status indicated by the status data of the second autonomous robot is in a predetermined specific state, at least one of which is included in the autonomous robot system according to Aspect 4.

[0074] According to this configuration, even during the generation of a task request, since the execution of the task is waited for according to both the relative position of the second autonomous robot with respect to the first autonomous robot and the status of the second autonomous robot, mutual interference with the second autonomous robot can be easily prevented.

[0075] (Aspect 6) The map data includes area data that divides an area where the plurality of autonomous robots can move into a plurality of areas. The specific state includes a stopped state or a standby state. The specific position relationship includes a relationship that the second autonomous robot exists in the same area as the area where the first autonomous robot exists. The preliminary standby condition further includes a condition that it is immediately after the first autonomous robot has received a task request in a stopped state, in the autonomous robot system according to Aspect 5.

[0076] According to this configuration, when the second autonomous robot in a stopped state exists in the same area as the first autonomous robot, the first autonomous robot waits for movement considering communication delay, thus preventing the two from moving and interfering with each other within one area due to communication delay.

[0077] (Aspect 7) The map data includes area data that divides the area where the plurality of autonomous robots can move into a plurality of areas. The processing circuit is configured to acquire a second destination that is the destination of the second autonomous robot. The specific state includes a moving state or a waiting state. The specific positional relationship includes the relationship that the first autonomous robot exists in a first area next to a second area where the second autonomous robot exists in the traveling direction of the second autonomous robot to the second destination. The autonomous robot system according to Aspect 5 or 6.

[0078] According to this configuration, when the first autonomous robot exists in a first area next to a second area where the second autonomous robot exists, the first autonomous robot waits for movement considering communication delay, thus preventing the two from moving towards each other and interfering with each other due to communication delay.

[0079] (Aspect 8) The map data includes area data that divides the area where the plurality of autonomous robots can move into a plurality of areas. The specific state includes a stopped state in which the second autonomous robot has not received a task request. The specific positional relationship includes the relationship that the second autonomous robot exists in a second area next to a first area where the first autonomous robot exists in the traveling direction of the first autonomous robot to the first destination. The preliminary waiting condition further includes the condition that the first autonomous robot is in a moving state and is within a predetermined distance from the boundary between the first area and the second area. The autonomous robot system according to any one of Aspects 5 to 7.

[0080] According to this configuration, when there is a second autonomous robot in a stopped state in a second area next to the first area where the first autonomous robot exists, and the first autonomous robot is within a predetermined distance from the boundary between the first area and the second area, the first autonomous robot waits for movement considering communication delay, thereby preventing the two from interfering with each other in the second area due to communication delay.

[0081] (Aspect 9) The map data includes area data that divides the area where the plurality of autonomous robots can move into a plurality of areas. The processing circuit is configured to acquire a second destination that is the destination of the second autonomous robot. The specific state includes a moving state or a waiting state. The specific positional relationship includes a relationship such that a second area next to the first area where the first autonomous robot exists in the traveling direction of the first autonomous robot is the same as an area next to a third area where the second autonomous robot exists in the traveling direction of the second autonomous robot. The autonomous robot system according to any one of Aspects 5 to 8, wherein the preliminary waiting condition further includes a condition that the first autonomous robot is within a predetermined distance from the boundary between the first area and the second area.

[0082] According to this configuration, when a second area next to the first area where the first autonomous robot exists in the traveling direction of the first autonomous robot is the same as an area next to a third area where the second autonomous robot exists in the traveling direction of the second autonomous robot, and the first autonomous robot is within a predetermined distance from the boundary between the first area and the second area, the first autonomous robot waits for movement considering communication delay, thereby preventing the two from moving towards each other and interfering with each other due to communication delay.

[0083] (Aspect 10) A method for controlling an autonomous robot used in a system in which a plurality of autonomous robots including a first autonomous robot and a second autonomous robot each perform a task. Periodically acquire data indicating the status of the second autonomous robot and the second standby start time, which is the start time when the status enters the standby state, together with the update time of the data. When a predetermined standby condition is satisfied during the occurrence of the task request, put the first autonomous robot in a standby state waiting to execute the task, and perform a predetermined determination process. The determination process includes: Determine the temporal precedence relationship between the update time of the data and the first standby start time, which is the start time when the status of the first autonomous robot enters the standby state. Based on the determination result of the temporal precedence relationship between the first standby start time and the second standby start time corresponding to the update time determined to be after the first standby start time in the data, or the determination result of whether the second autonomous robot is in the standby state, determine the release of the standby state of the first autonomous robot. A control method for an autonomous robot.

[0084] (Aspect 11) A control program for an autonomous robot that causes at least one processor to execute the method according to Aspect 10.

Explanation of Reference Numerals

[0085] 1 Autonomous Robot System 10 Autonomous Robot 10A First Autonomous Robot 10B Second Autonomous Robot 11 Server 20 Processing Circuit 21 Processor 40 Map Data 50 Area 50a First Area 50b Second Area 50c Third Area 52 Boundary 60A First Destination 60B Second Destination P1 Control Program

Claims

1. A self-driving robot system in which a plurality of self-driving robots including a first self-driving robot and a second self-driving robot each perform a task, comprising a processing circuit configured to control the first self-driving robot based on a task request for the first self-driving robot, wherein the processing circuit periodically acquires data indicating the status of the second self-driving robot and a second standby start time which is the start time when the status becomes the standby state, together with the update time of the data, and is configured to, when a predetermined standby condition is satisfied during the occurrence of the task request, put the first self-driving robot in a standby state waiting to perform the task and perform a predetermined determination process, wherein the determination process determines the temporal precedence relationship between the update time of the data and a first standby start time which is the start time when the status of the first self-driving robot becomes the standby state, and based on the determination result of the temporal precedence relationship between the first standby start time and the second standby start time of the data corresponding to the update time determined to be after the first standby start time, or the determination result of whether the second self-driving robot is in the standby state, determines the release of the standby state of the first self-driving robot. A self-driving robot system as described above.

2. The determination process is an update time determination process, wherein the update time determination process maintains the standby state of the first self-driving robot when it is determined that the update time of the data is before the first standby start time, and includes performing a predetermined standby release determination process when it is determined that the update time of the data is after the first standby start time, wherein the standby release determination process maintains the standby state of the first self-driving robot when it is determined that the first standby start time is after the second standby start time of the data corresponding to the update time determined to be after the first standby start time, and further includes releasing the standby state of the first self-driving robot when it is determined that the second self-driving robot is in the standby state and the first standby start time is before the second standby start time, or when it is determined that the second self-driving robot is not in the standby state. The self-driving robot system according to Claim 1.

3. The standby condition is a preliminary standby condition. The autonomous robot system according to claim 1 or 2, wherein the processing circuit is configured to put the first autonomous robot in a standby state of waiting for the execution of the task when a predetermined main standby condition is satisfied during the generation of the task request.

4. The processing circuit is configured to acquire map data. The task includes moving the first autonomous robot to a first destination which is the destination of the first autonomous robot. The task request includes a movement request for requesting movement to the first destination. The autonomous robot system according to claim 1 or 2, wherein waiting for the execution of the task includes waiting for movement to the first destination.

5. The processing circuit is configured to acquire at least one of position data indicating the position of the second autonomous robot and status data indicating the status of the second autonomous robot. The preliminary standby condition is a condition that the position indicated by the position data of the first autonomous robot and the position indicated by the position data of the second autonomous robot are in a predetermined specific position relationship, and a condition that the status indicated by the status data of the second autonomous robot is in a predetermined specific state, at least one of which is included in the autonomous robot system according to claim 4.

6. The map data includes area data that divides an area where the plurality of autonomous robots can move into a plurality of areas. The specific state includes a stopped state or a standby state. The specific position relationship includes a relationship that the second autonomous robot exists in the same area as the area where the first autonomous robot exists. The autonomous robot system according to claim 5, wherein the preliminary standby condition further includes a condition that it is immediately after the first autonomous robot has received a task request in a stopped state.

7. The map data includes area data that divides an area where the plurality of autonomous robots can move into a plurality of areas. The processing circuit is configured to acquire a second destination which is the destination of the second autonomous robot. The specific state includes a moving state or a standby state. The autonomous robot system according to claim 5, wherein the specific position relationship includes a relationship that the first autonomous robot exists in a first area next to a second area where the second autonomous robot exists in the traveling direction of the second autonomous robot to the second destination.

8. The map data includes area data that divides the area where the plurality of autonomous robots can move into a plurality of areas. The specific state includes a stop state or a standby state. The specific positional relationship includes the relationship that the second autonomous robot exists in a second area next to a first area where the first autonomous robot exists in the traveling direction of the first autonomous robot to the first destination. The preliminary standby condition further includes the condition that the first autonomous robot is in a moving state and is within a predetermined distance from the boundary between the first area and the second area. The autonomous robot system according to claim 5.

9. The map data includes area data that divides the area where the plurality of autonomous robots can move into a plurality of areas. The processing circuit is configured to acquire a second destination that is the destination of the second autonomous robot. The specific state includes a moving state or a standby state. The specific positional relationship includes the relationship that a second area next to a first area where the first autonomous robot exists in the traveling direction of the first autonomous robot to the first destination is the same as an area next to a third area where the second autonomous robot exists in the traveling direction of the second autonomous robot to the second destination. The preliminary standby condition further includes the condition that the first autonomous robot is within a predetermined distance from the boundary between the first area and the second area. The autonomous robot system according to claim 5.

10. A control method for an autonomous robot used in a system in which a plurality of autonomous robots including a first autonomous robot and a second autonomous robot each perform a task, periodically acquiring data indicating the status of the second autonomous robot and a second standby start time that is the start time when the status becomes the standby state, together with the update time of the data; when a predetermined standby condition is satisfied during the occurrence of the task request, setting the first autonomous robot to a standby state waiting to perform the task, and performing a predetermined determination process. The determination process includes: determining the temporal order relationship between the update time of the data and a first standby start time that is the start time when the status of the first autonomous robot becomes the standby state. Determining whether to cancel the standby state of the first autonomous robot based on a determination result of a temporal precedence relationship between the first standby start time and the second standby start time of the data corresponding to the update time determined to be after the first standby start time, or based on a determination result of whether the second autonomous robot is in the standby state; and a control method for an autonomous robot.

11. A control program for an autonomous robot that causes at least one processor to execute the method according to claim 10.

Citation Information

Patent Citations

  • Vehicle control system

    JP2021187345A