Robots and robot management systems

The robot and robot management system optimize task determination and path management to prevent deadlocks in multiple robots by considering constraint areas and robot states, enhancing operational efficiency.

JP2026115939APending Publication Date: 2026-07-09SECOM CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024233002
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-12-27
Publication Date
2026-07-09

AI Technical Summary

Technical Problem

When multiple robots capable of autonomous travel are operated in a facility, deadlocks may occur in narrow passages where two robots cannot pass through at the same time, necessitating efficient management of constraint areas to prevent such situations.

Method used

The robot and robot management system include a storage means for tasks, a state acquisition means for robot information, and a task determination means that determines tasks based on constraint areas and the states of other robots, optimizing path settings and task execution to avoid deadlocks.

Benefits of technology

The system efficiently determines and executes tasks while managing constraint areas, ensuring smooth operation of multiple robots by minimizing the occurrence of deadlocks and optimizing path selection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026115939000001_ABST
    Figure 2026115939000001_ABST
Patent Text Reader

Abstract

The aim is to efficiently determine the tasks to be performed, even when constraints are set on the robot's movement path. [Solution] The robot 10 includes a storage means for storing multiple tasks to be performed by the robot 10 within its movement area, a state acquisition means 171 for acquiring robot state information indicating the state of other robots present in the movement area, and a task determination means 173 for determining which task the robot 10 will perform from among the multiple tasks, based on the presence or absence of a constraint area set in the path used when each of the multiple tasks is performed, which imposes constraints on the robot's actions, and the states of other robots 10a and 10b corresponding to the robot state information acquired by the state acquisition means 171.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a robot and a robot management system.

Background Art

[0002] There is known a robot management system that manages an autonomously traveling robot that autonomously travels within a facility and performs patrol security, inspection work, etc. instead of a resident security guard (see, for example, Patent Document 1). When a person passing through a security gate during an open period in which the security gate is open due to the robot transmitting an opening request signal is detected, the robot management system described in Patent Document 1 detects the person detected as an unauthorized intruder without passing permission. Thereby, the robot management system described in Patent Document 1 can prevent intrusion or passing-by intrusion by an unauthorized intruder when the robot passes through the security gate.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] However, when a plurality of robots capable of autonomous travel are operated in a facility, when two robots pass through a passage where it is difficult for two robots to pass through at the same time, such as a narrow passage, a deadlock may occur in which the robots are in a waiting state. In order to prevent the occurrence of a deadlock, it is desirable that a passage where it is difficult for two robots to pass through at the same time be appropriately managed as a restricted area that restricts the actions of a plurality of robots, such as an area where only one robot can pass through.

[0005] The present invention aims to efficiently determine the task to be performed, even when a constraint area is set in the robot's movement path. [Means for solving the problem]

[0006] The robot according to the present invention includes a storage means for storing a plurality of tasks to be performed by the robot within a movement area, a state acquisition means for acquiring robot state information indicating the state of other robots present in the movement area, and a task determination means for determining which task the robot will perform from the plurality of tasks based on the presence or absence of a constraint area where constraints on the robot's actions are imposed, set in the path used when each of the plurality of tasks is performed, and the state of other robots corresponding to the robot state information acquired by the state acquisition means 171.

[0007] Furthermore, in the robot according to the present invention, it is preferable that the task determination means determines the task to be executed based on the presence or absence of constraint areas in the path included in the execution location of each of the multiple tasks, or the presence or absence of constraint areas in the path from the robot's starting point to the execution location of each of the multiple tasks, and the state of other robots corresponding to the robot state information acquired by the state acquisition means.

[0008] Furthermore, the robot according to the present invention preferably includes a path setting means for searching and setting a path for each task from a starting point to the execution location of each of a plurality of tasks, and the task determination means preferably determines the task to be executed based on the presence or absence of constraint areas in the plurality of paths set by the path setting means and the state of other robots corresponding to the robot state information acquired by the state acquisition means.

[0009] Furthermore, in the robot according to the present invention, it is preferable that the state acquisition means acquires information indicating the presence or number of other robots as robot state information, and the task determination means determines a task that makes it easier to perform a task where the movement path is one with a small number of constraint areas and a small number of other robots along the path from the starting point to the destination point.

[0010] Furthermore, in the robot according to the present invention, it is preferable that the state acquisition means acquires information indicating the position of other robots as robot state information, and the task determination means determines the task to be performed based on the relationship between the position of other robots and the position of the constraint area.

[0011] Furthermore, in the robot according to the present invention, it is preferable that the state acquisition means acquires information indicating the position of other robots and information indicating the direction or path of movement of other robots as robot state information, and the task determination means determines a task to be executed based on the information indicating the position of other robots and the direction or path of movement of other robots.

[0012] Furthermore, in the robot according to the present invention, it is preferable that the state acquisition means acquires information indicating the position of other robots and information indicating the housing size of other robots as robot state information, and the task determination means determines a task to be performed that uses the information indicating the position of other robots and a path in which other robots with smaller housing sizes exist as the movement path.

[0013] Furthermore, in the robot according to the present invention, it is preferable that the state acquisition means acquires information indicating the position of other robots and information indicating the movement speed of other robots as robot state information, and the task determination means determines a task to be executed based on the information indicating the position of other robots and the movement speed of other robots.

[0014] Furthermore, in the robot according to the present invention, it is preferable that the state acquisition means acquires information indicating the position of other robots and information indicating the movement priority of other robots as robot state information, and the task determination means makes it difficult to determine which task to execute, based on the information indicating the position of other robots and the path where other robots with high movement priority exist.

[0015] Furthermore, the robot management system according to the present invention is a robot management system comprising a plurality of robots and a management server, and includes a storage means for storing a plurality of tasks to be performed by the robots within a movement area, a state acquisition means for acquiring robot state information indicating the state of the plurality of robots present in the movement area, and a task determination means for determining from the plurality of tasks which task to be performed by the first robot among the plurality of robots, wherein the task determination means determines which task to be performed by the first robot based on the presence or absence of a constraint area in which constraints on the robot's actions are imposed, set in the path used when each of the plurality of tasks is performed, and the state of other robots other than the first robot corresponding to the robot state information acquired by the state acquisition means.

[0016] Furthermore, the management server according to the present invention is a management server for managing multiple robots, and comprises: a storage means for storing multiple tasks to be performed by robots within a movement area; a state acquisition means for acquiring robot state information indicating the state of multiple robots present in the movement area; a task determination means for determining from the multiple tasks which task to be performed by a first robot among the multiple robots; and a transmission means for transmitting the task to be performed determined by the task determination means to the first robot. The task determination means determines which task to be performed by the first robot based on the presence or absence of a constraint area, which is set in the path used when each of the multiple tasks is performed and on which constraints are imposed on the robot's actions, and the state of other robots other than the first robot that correspond to the robot state information acquired by the state acquisition means. [Effects of the Invention]

[0017] The robot according to the present invention can efficiently determine the task to be performed, even when a constraint area is set in the movement path. [Brief explanation of the drawing]

[0018] [Figure 1] This figure shows the overall system configuration of the robot management system according to the embodiment. [Figure 2](A) is a diagram showing an example of node information shown in FIG. 1, (B) is a diagram showing an example of edge information shown in FIG. 1, and (C) is a diagram showing a graph structure of a path in a facility represented by the node information and edge information shown in FIG. 1. [Figure 3] (A) is a diagram showing an example of the data structure of the robot table shown in FIG. 1, and (B) is a diagram showing an example of the data structure of the edge table shown in FIG. 1. [Figure 4] It is a flowchart showing an example of the operation of the detection process executed by the management server shown in FIG. 1. [Figure 5] It is a sequence diagram showing an example of the operation of the task determination process executed by the robot shown in FIG. 1. [Figure 6] (A) is a diagram showing a graph structure corresponding to the process shown by S204 in FIG. 5, (B) is a diagram showing a graph structure corresponding to the process shown by S207 in FIG. 5, (C) is a diagram showing a graph structure corresponding to the process shown by S210 in FIG. 5, and (D) is a diagram showing a graph structure in a state where the process shown by S210 in the task determination process according to the first modification example is executed. [Figure 7] (A) is a graph structure in a state where the process shown by S210 in the task determination process according to the second modification example is executed, (B) is a diagram showing a graph structure in a state where the process shown by S210 in the task determination process according to the third modification example is executed, (C) is a graph structure in a state where the process shown by S210 in the task determination process according to the fourth modification example is executed, and (D) is a diagram showing a graph structure in a state where the process shown by S210 in the task determination process according to the fifth modification example is executed. [Figure 8] It is a sequence diagram showing an example of the operation of the task determination process according to the sixth modification example. [Figure 9](A) is a diagram showing a graph structure corresponding to the process shown by S312 in FIG. 8, (B) is a diagram (part 1) showing a graph structure corresponding to the process shown by S313 in FIG. 8, (C) is a diagram (part 2) showing a graph structure corresponding to the process shown by S313 in FIG. 9, and (D) is a diagram (part 3) showing a graph structure corresponding to the process shown by S313 in FIG. 9.

Mode for Carrying Out the Invention

[0019] The robot and the robot management system according to the present invention will be described below with reference to the drawings. However, note that the technical scope of the present invention is not limited to those embodiments, and extends to the invention described in the claims and its equivalents.

[0020] (Configuration and Function of Robot According to Embodiment) FIG. 1 is a diagram showing the overall system configuration of a robot management system according to an embodiment composed of a plurality of robots and a management server.

[0021] The robot management system 1 includes a plurality of robots 10 and a management server 20 that manages the plurality of robots 10. The robot management system 1 is a system that performs security, cleaning, or management of facilities such as companies, apartments, and commercial facilities by controlling the plurality of robots 10. The robot management system 1 determines the next task that each of the plurality of robots 10 will perform, based on the presence or absence of a constraint area where restrictions on the robots' actions are imposed, set in the path used when each task is performed, starting from the respective starting point of each of the plurality of robots 10, and the state of other robots corresponding to the robot state information. A constraint area is one or more areas set in the movement area of ​​the robots 10 where restrictions on the actions of the plurality of robots 10 are imposed. A constraint area is, for example, an exclusive area where only one robot can enter, an area where passing is prohibited, an area where overtaking is prohibited, and an area where U-turns are prohibited, etc., where restrictions on the actions of the robots 10 are imposed. The constraint area may be changed according to the situation inside the facility, such as the arrangement of items and the congestion level.

[0022] Each of the multiple robots 10 moves autonomously within its designated area of ​​operation within the facility and performs predetermined tasks. The robots 10 include inspection robots that perform facility inspections, patrol robots that perform facility rounds, security robots that perform facility security, cleaning robots that perform facility cleaning, guidance robots that provide information to facility users, transport robots that transport items such as AEDs within the facility, and rescue robots that transport sick and injured people. Furthermore, the robots 10 are capable of performing multiple tasks, including facility inspections, facility rounds, facility security, facility cleaning, facility user guidance, and transport of items. Each of the robots 10 moves along a predetermined route according to a predetermined schedule to a predetermined point (location) and performs a predetermined task.

[0023] The management server 20 is located in a control console or similar device inside or outside the facility and controls or manages multiple robots 10. Each robot 10 and the management server 20 are interconnected via a communication network N such as an intranet or the Internet. The robots 10 are connected to the communication network N via a wireless communication network such as a wireless LAN or a mobile phone network.

[0024] The robot 10 includes a position sensor 11, a drive unit 12, an input unit 13, an output unit 14, a first communication unit 15, a first storage unit 16, and a first processing unit 17, etc. The position sensor 11 is a sensor used to acquire the current position of the robot 10. The position sensor 11 includes one or more laser sensors (LiDAR). Each laser sensor is mounted on the front, side, back, and / or top surface of the robot 10. Each laser sensor includes an irradiator that emits light such as near-infrared light, visible light, or ultraviolet light in a predetermined direction, and a receiver that receives the reflected light. The direction in which each irradiator emits light is set to have various azimuth and elevation angles with respect to the direction of movement of the robot 10. Each laser sensor measures the distance to objects present around the robot 10 based on the time from when the irradiator emits light until the receiver receives the reflected light. The position sensor 11 outputs a position detection signal to the first processing unit 17 at a predetermined period, which includes multiple combinations of each direction in which the laser sensor emitted light and the measured distance. The position sensor 11 may include a receiver that receives radio waves (navigation signals) transmitted from navigation satellites (artificial satellites) such as GNSS (Global Navigation Satellite System). The receiver receives navigation signals transmitted from multiple navigation satellites and outputs them to the first processing unit 17.

[0025] The drive unit 12 includes a motor for rotating the tires of the robot 10, a motor for changing the direction of the tires, and / or a motor for changing the angle of the arm of the robot 10. The drive unit 12 receives a drive signal from the first processing unit 17, rotates according to the received drive signal, and drives the tires and / or the arm.

[0026] The input unit 13 includes one or more sensors for detecting the surrounding conditions of the robot 10. The input unit 13 includes one or more laser sensors, similar to the laser sensor in the position sensor 11, for example. Each laser sensor outputs a detection signal to the first processing unit 17 at a predetermined interval, which includes multiple combinations of the direction in which light was irradiated and the measured distance. The input unit 13 may include one or more visible light cameras provided on the front, side, back, and / or top surface of the robot 10. The imaging direction of each visible light camera is set to have various azimuth and elevation angles with respect to the direction of movement of the robot 10. Each visible light camera includes, for example, a photoelectric conversion element sensitive to visible light, such as a CCD element or CMOS element, an imaging optical system that forms an image on the photoelectric conversion element, and an A / D converter. Each visible light camera sequentially generates a visible light image based on visible light at a predetermined frame period and outputs it to the first processing unit 17. In addition, the input unit 13 may include a thermal imaging camera that acquires thermal images, either in place of or in addition to the visible light cameras. The thermal imaging camera includes, for example, two-dimensionally arranged sensors that detect the radiant energy of two wavelengths of electromagnetic radiation from an object, and an A / D converter that amplifies the electrical signal output from the sensors and performs analog-to-digital (A / D) conversion. The thermal imaging camera generates a thermal image based on temperature values ​​determined by the ratio of two types of radiant energies, and outputs it to the first processing unit 17 at a predetermined frame period. The input unit 13 may include a microphone. The microphone has an A / D converter, generates an audio signal based on the detected sound, and outputs it to the first processing unit 17 at a predetermined interval. The input unit 13 may include a temperature sensor. The temperature sensor detects the temperature around the robot 10 and outputs a temperature signal indicating the detected temperature to the first processing unit 17 at a predetermined interval.

[0027] The output unit 14 includes an LED that lights up or turns off according to instructions from the first processing unit 17. The output unit 14 also includes a display including a liquid crystal, organic EL, etc., and an interface circuit that outputs image data to the display, and may display various information such as images and text according to instructions from the first processing unit 17. The output unit 14 also includes a speaker and an interface circuit that outputs audio data to the speaker, and may output audio according to instructions from the first processing unit 17. If the robot 10 is a cleaning robot or a transport robot, the robot 10 does not need to have the output unit 14.

[0028] The first communication unit 15 has, for example, an antenna for transmitting and receiving wireless signals and a wireless communication interface circuit for transmitting and receiving signals through a wireless communication line in accordance with a wireless communication protocol such as a wireless LAN, and is connected to the communication network N via an access point. Alternatively, the first communication unit 15 has, for example, a communication interface circuit compliant with the W-CDMA or LTE method, and is connected to the communication network N via a communication network such as a base station and a mobile communication network. The first communication unit 15 outputs data received from the communication network N to the first processing unit 17 and transmits data input from the first processing unit 17 to the communication network N.

[0029] The first storage unit 16, also referred to as a storage means, includes semiconductor memory such as ROM or RAM, a magnetic disk or optical disk drive such as CD-ROM or DVD-ROM, and its recording medium. The first storage unit 16 stores a computer program and various data for controlling the robot 10, and inputs and outputs this information to and from the first processing unit 17. The computer program may be installed in the first storage unit 16 from a computer-readable portable recording medium such as a CD-ROM or DVD-ROM using a known setup program or the like. The computer program may also be stored on a recording medium owned by a predetermined server and installed via a network. The first storage unit 16 also stores data such as node information 161, edge information 162, current status information 163, reservation status information 164, schedule information 165, and task start point information 166.

[0030] Figure 2(A) shows an example of node information 161, Figure 2(B) shows an example of edge information 162, and Figure 2(C) shows the graph structure of the paths within the facility indicated by node information 161 and edge information 162. Node information 161 is a table having a "Node ID" column and a "Location" column. The "Node ID" column stores the identification numbers "N001" to "N009" for each of the multiple nodes. The "Location" column stores the three-dimensional coordinates for each of the identification numbers "N001" to "N009" and associates them with each identification number "N001" to "N009". Edge information 162 is a table having an "Edge ID" column and a "Location" column. The "Edge ID" column stores the identification numbers "E001" to "E010" for each of the multiple edges. The "Location" column stores the locations of each identification number "E001" to "E010" as defined by the nodes indicated by the identification numbers "N001" to "N009" included in node information 161, and is stored in association with each of the identification numbers "N001" to "N010". The edge indicated by identification number "E001" is defined as the edge between the node indicated by identification number "N001" and the node indicated by identification number "N002". The edge indicated by identification number "E002" is defined as the edge between the node indicated by identification number "N001" and the node indicated by identification number "N003". The same applies to the following, where the edge indicated by identification number "E010" is defined as the edge between the node indicated by identification number "N006" and the node indicated by identification number "N007". In addition to node information 161 and edge information 162, the first storage unit 16 may further store map information indicating the shape of passages or rooms within the facility, the location of fixed obstacles such as equipment or partitions, etc. The current state information 163 indicates the current state of the robot 10, such as "Preparing," indicating that it is waiting in a predetermined home position without performing any work; "Working," indicating that it is performing work; "Moving," indicating that it is moving to a desired position; or "Waiting," indicating that it is waiting to enter an edge which is a constraint area. The reservation status information 164 indicates the edges that are currently reserved for use as constraint regions on the movement path of the robot 10, which is in motion, and which are scheduled to pass through. For example, when the robot 10 moves from a node indicated by identification number "N001" to a node indicated by identification number "N006" via the edges indicated by identification numbers "E001", "E003", and "E005", the reservation status information 164 indicates that the edges indicated by identification numbers "E001", "E003", and "E005" are reserved. Schedule information 165 indicates the schedule for robot 10. For each task, the schedule includes the departure time, departure point, starting point (also called the destination point), work start time, work location, work content (also called the task), work end time, return time, return point, and travel route. Schedule information 165 is set by the management server 20. The departure point and return point are set to predetermined home positions, for example, nodes indicated by identification number "N001". The departure point may also be the robot's current location. The task start point information 166 indicates the starting point for each of several tasks performed by the robot 10 within the mobile area, such as facility inspection, facility patrol, facility security, facility cleaning, facility user guidance, and luggage transport. The task start point information 166 stores the starting point for facility inspection as a node indicated by identification number "N006" and the starting point for facility patrol as a node indicated by identification number "N007".

[0031] The first processing unit 17 includes a processor such as a CPU or MPU, memory such as ROM or RAM, and peripheral circuits, and performs various signal processing for the robot 10. The first processing unit 17 includes a state acquisition means 171, a path setting means 172, and a task determination means 173, which are implemented as functional modules of a program that runs on the processor. A DSP, LSI, ASIC, FPGA, etc. may be used as the first processing unit 17.

[0032] The first processing unit 17 receives schedule information for the robot 10 from the management server 20 via the first communication unit 15, and drives the drive unit 12 according to the received schedule information to move the robot 10. The first processing unit 17 moves along the paths defined by the node information 161 and edge information 162. Periodically, the first processing unit 17 acquires position detection signals or navigation signals from the position sensors 11 to detect the current position and direction of the robot 10. The first processing unit 17 identifies the current position and direction from the combination of the direction in which each laser sensor irradiated light and the distance to the object, as well as the positions of paths, rooms, obstacles, etc., shown in the map information. Alternatively, the first processing unit 17 determines the current position and direction by obtaining the latitude, longitude, and altitude from the acquired navigation signals. When the robot 10 arrives at the work position shown in the schedule information, the first processing unit 17 executes the work related to the work content shown in the schedule information.

[0033] The management server 20 includes an operation unit 21, a display unit 22, a second communication unit 23, a second storage unit 24, and a second processing unit 25, among others.

[0034] The operation unit 21 includes an input device such as a touch panel or keyboard, and an interface circuit that acquires signals from the input device. It accepts user operations and outputs a signal corresponding to the accepted operation to the second processing unit 25. The display unit 22 includes a display including a liquid crystal or organic EL display, and an interface circuit that outputs image data to the display. It displays various information such as images and text according to instructions from the second processing unit 25.

[0035] The second communication unit 23 has a communication interface circuit compliant with, for example, TCP / IP, and is connected to the communication network N. Alternatively, the second communication unit 23 has, for example, an antenna for transmitting and receiving wireless signals and a wireless communication interface circuit for transmitting and receiving signals via a wireless communication line in accordance with a wireless communication protocol such as a wireless LAN, and is connected to the communication network N via an access point. The second communication unit 23 outputs data received from the communication network N to the second processing unit 25 and transmits data input from the second processing unit 25 to the communication network N.

[0036] The second storage unit 24 includes semiconductor memory such as ROM and RAM, a magnetic disk or optical disk drive such as a CD-ROM or DVD-ROM, and its recording medium. The second storage unit 24 stores computer programs and various data for controlling the management server 20, and inputs and outputs this information to and from the second processing unit 25. The computer program may be installed in the second storage unit 24 from a computer-readable portable recording medium such as a CD-ROM or DVD-ROM using a known setup program or the like. The computer program may also be stored on a recording medium owned by a predetermined server and installed via a network. Furthermore, the second storage unit 24 stores data such as node information 241, edge information 242, robot table 243, edge table 244, etc. Node information 241 and edge information 242 are the same information as node information 161 and edge information 162 stored by the robot 10, respectively.

[0037] Figure 3(A) shows an example of the data structure of the robot table 243. As shown in Figure 3(A), the robot table 243 contains, for each of the multiple robots 10 owned by the robot management system 1, the identification number (robot ID), function, movement priority, size, movement speed, current position, movement direction, current status, reservation status, battery level, schedule information, etc., which are all linked and set together. The "Function" column indicates the functions that each robot can perform, including security within the facility, cleaning the facility, guiding facility users, transporting luggage within the facility, transporting first-aid supplies, and transporting sick and injured people. The "Movement Priority" column indicates whether a robot should be given priority for movement within the facility, and includes two classifications: "High" indicating high movement priority and "Low" indicating low movement priority. Security robots that guard the facility, first-aid supply transport robots that transport first-aid supplies such as AEDs, and rescue robots that transport sick and injured people are set to have a high movement priority. The "Current Position" column shows the current position of each robot 10 in the movement area it can move in, in three-dimensional coordinates. The "Movement Direction" column shows the direction in which each robot 10 is moving, for example, in terms of azimuth. The information shown in the "Current Status" column and the "Reservation Status" column is the same as the information shown in the current status information 163 and the reservation status information 164. The "Battery Level" column shows the remaining charge stored in the secondary battery installed in each robot 10. The "Schedule Information" shows the departure time, departure point, work start time, work location, work details, work end time, return time, return point, and travel route for multiple tasks. The identification number, function, movement priority, size, and movement speed of each robot 10 are set in the robot management system 1 when each robot 10 is put into use. The current position, direction of movement, current status, and battery level of each robot 10 are periodically transmitted from each robot 10 to the management server 20 and updated. The schedule information for each robot 10 is set by the controller at predetermined intervals such as daily, weekly, or monthly.

[0038] Figure 3(B) shows an example of the data structure of edge table 244. As shown in Figure 3(B), the edge table 244 contains, in relation to each edge, the identification number, constraint area, number of units using, first usage time, number of reserved units, second usage time, number of standby units, third usage time, cost value, etc., for each edge as it is stored in the edge information 242. In the edge table 244, the "Constraint Area" column indicates whether or not an edge is a constraint area. When the "Constraint Area" column is "YES", the corresponding edge has a constraint area, and when the "Constraint Area" column is "NO", the corresponding edge does not have a constraint area. The "Number of Units Using" column indicates the number of robots 10 using the constraint area, and the "First Usage Time" column indicates the time that robots 10 use the constraint area. The first usage time may be a predetermined usage time required for robots 10 to pass through the entire constraint area, or it may be the remaining time required for robots 10 to pass through the rest of the constraint area when robots 10 are passing through the constraint area. The "Number of Reserved Units" column indicates the number of robots 10 that have reserved the constraint area, and the "Second Usage Time" column indicates the time that the reserved robots 10 will use the constraint area. The "Number of Standby Units" column indicates the number of robots 10 waiting to enter the constraint area, and the "Third Usage Time" column indicates the time that the robots 10 will wait to enter the constraint area. The "Cost Value" column indicates the cost value, which is a weighted value based on the length of each edge, i.e., the distance value. The cost value is set to be larger as the edge length increases. For example, the cost value may be set proportionally to the edge length. The identification number, constraint area, and cost value of each edge are set in the robot management system 1 when the movement area of ​​the robot 10 is defined. The constraint area may be changed according to the arrangement of items and the conditions within the facility, such as congestion. The number of units in use, the number of units reserved, the number of units on standby, and the usage time for each edge are periodically transmitted from each robot 10 to the management server 20 and updated.

[0039] The second processing unit 25 includes a processor such as a CPU or MPU, memory such as ROM or RAM, and peripheral circuits, and executes various processes of the management server 20. The second processing unit 25 includes detection means 251, aggregation means 252, and transmission means 253, etc., which are implemented as functional modules of a program that runs on the processor. A DSP, LSI, ASIC, FPGA, etc. may be used as the second processing unit 25.

[0040] The second processing unit 25 receives the schedule setting for the robot 10 from the controller using the operation unit 21, and transmits the schedule information indicating the received schedule to the robot 10 via the second communication unit 23 to set the schedule for the robot 10. The second processing unit 25 also detects the status of multiple robots 10 and stores the status of each of the detected robots 10 in the robot table 243.

[0041] Figure 4 is a flowchart showing an example of the operation of the detection process performed by the management server 20. The detection process shown in Figure 4 is mainly performed by the second processing unit 25 in cooperation with each element of the management server 20, based on a program that is stored in the second storage unit 24 in advance. The detection process shown in Figure 4 is performed at predetermined detection cycles, such as every 10 seconds.

[0042] First, the detection means 251 acquires detection information from the robot 10 assigned the identification number "R001" (S101). The detection information includes current position information and current direction information indicating the current position and direction of movement, current state information indicating the current state, reservation information indicating the current reservation state, and battery level information. The detection means 251 transmits a detection information request signal to the robot 10 assigned the identification number "R001" indicating the transmission of a detection signal indicating detection information. In response to receiving the detection information request signal, the robot 10 assigned the identification number "R001" acquires a position detection signal from the position sensor 11 and detects its current position and direction. The robot 10 assigned the identification number "R001" also acquires current state information 163 and reservation state information 164 stored in the first storage unit. The robot 10 assigned the identification number "R001" also acquires battery level information indicating the remaining battery level. Robot 10, assigned identification number "R001", transmits a detection signal to the management server 20 indicating detection information including current location information and current direction information showing the detected current position and direction, acquired current status information 163 and reserved status information 164, and battery level information. Detection means 251 acquires detection information corresponding to the received detection signal and stores the current location information, current direction information, current status information, reserved status information and battery level information included in the acquired detection information in the robot table 243, associating them with identification number "R001".

[0043] Next, the detection means 251 determines whether or not it has acquired detection information from all robots 10 (S102). The processes shown in S101 and S102 are repeated until the detection means 251 determines that it has acquired detection information from all robots 10 (S102-YES). As the processes shown in S101 and S102 are repeated, detection information is sequentially acquired from multiple robots 10 corresponding to identification numbers "R002", "R003", and "R004", respectively.

[0044] When the detection means 251 determines that detection information has been obtained from all robots 10 (S102-YES), the aggregation means 252 aggregates the state of the robots 10 at each edge (S103). First, the aggregation means 252 refers to the node information 241 and the robot table 243 to estimate whether the current position of the robot 10 with identification number "R001" is one of the edges associated with identification numbers "E001" to "E010". Next, the aggregation means 252 refers to the robot table 243 to determine whether the current state of the robot 10 with identification number "R001" is either "in use" or "on standby" in the constraint area. Next, the aggregation means 252 counts up the number of current states of the constraint area included in the estimated edge (number of units in use, number of units on standby) by one and stores the counted number in the second storage unit 24. Next, the aggregation means 252 refers to the reservation status information stored in the robot table 243 and extracts the edges that are the constraint regions reserved by the robot 10 with identification number "R001". Then, the aggregation means 252 increments the number of "reserved" edges (number of reserved units) by one and stores the incremented number in the second storage unit 24.

[0045] Next, the aggregation means 252 determines whether or not the states of all robots 10 have been aggregated (S104). The processes shown in S103 and S104 are repeated until the aggregation means 252 determines that the states of all robots 10 have been aggregated (S104-YES). As the processes shown in S103 and S104 are repeated, the current states of the robots 10 located at each edge associated with identification numbers "E001" to "E010" are aggregated. When the aggregation means 252 determines that the states of all robots 10 have been aggregated (S104-YES), the detection process ends.

[0046] Figure 5 is a sequence diagram showing an example of the operation of the task determination process performed by the robot 10. The task determination process shown in Figure 5 is mainly performed by the first processing unit 17 in cooperation with each element of the robot 10, based on a program that is stored in the first storage unit 16 in advance. The task determination process shown in Figure 5 is performed when the robot 10, also called the self-robot, moves from its home position to the work start point when it starts work according to the schedule information.

[0047] First, the status acquisition means 171 sends a schedule request signal to the management server 20 requesting the transmission of a schedule signal indicating a plurality of tasks that are candidates for the schedule of the next task to be performed by the robot 10 (S201). The status acquisition means 171 sends a schedule request signal to the management server 20, for example, when the previous task is completed and the robot returns to a predetermined standby position. The schedule request signal includes information indicating the transmission of a schedule signal, the time the schedule signal was transmitted, and an identification number indicating the robot 10 that transmitted the schedule signal.

[0048] Next, the transmitting means 253 transmits a schedule signal to the robot 10 indicating the schedule of the next task to be performed by the robot 10 (S202). The transmitting means 253, referring to the "Schedule Information" column of the robot table 243, obtains schedule information indicating the schedules of multiple tasks that are candidates for the next task to be performed by the robot 10 that transmitted the schedule signal in the process shown in S201. Next, the transmitting means 253 generates a schedule signal corresponding to the acquired schedule information and transmits the generated schedule signal to the robot 10 that transmitted the schedule request signal. The schedule information acquired by the transmitting means 253 includes, for example, first schedule information where the starting point is a node indicated by identification number "N006" and the task content is "inspection", and first schedule information where the starting point is a node indicated by identification number "N007" and the task content is "patrol".

[0049] Next, the state acquisition means 171 acquires schedule information indicating the schedules of several tasks that are candidates for the next task to be performed by the robot 10 (S203). The state acquisition means 171 acquires schedule information corresponding to the schedule signal transmitted in the process shown in S202 and stores the acquired schedule information as schedule information 165 in the first storage unit 16. The robot 10 acquires schedule information 165 indicating that the node indicated by identification number "N001" is the starting point and the nodes indicated by identification numbers "N006" and "N007" are the destination points. The node indicated by identification number "N006" is referred to as the first destination point, and the node indicated by identification number "N007" is referred to as the second destination point.

[0050] Next, the route setting means 172 searches for routes from the robot 10's starting point to the first destination point and the second destination point (S204). The route setting means 172 refers to the schedule information 165 and executes a process to search for multiple routes at a predetermined set time earlier than the departure time set in the schedule information 165. The route setting means 172 uses the graph structure shown in Figure 2(C) to identify all routes from the node indicated by identification number "N001", which is the home position of each robot 10, to the nodes indicated by identification numbers "N006" and "N007", which are the work positions. The route setting means 172 uses known graph search techniques, such as Dijkstra's algorithm or the A* (A-star) search algorithm, to search for the optimal route to the nodes indicated by identification numbers "N006" and "N007". The route setting means 172 extracts the first route R1 and the second route R2 as search results. The route setting means 172 stores the first route information and the second route information, which represent the extracted first route R1 and second route R2, respectively, in the first storage unit 16. As shown in Figure 6(A), the route setting means 172 searches for a route that passes through the edges indicated by identification numbers "E001", "E003", and "E005" in order as the first route R1. The route setting means 172 also searches for a route that passes through the edges indicated by identification numbers "E002", "E004", and "E007" in order as the second route R2.

[0051] Next, the state acquisition means 171 sends a constraint area request signal to the management server 20 requesting the transmission of constraint area signals indicating the constraint areas included in the first path R1 and the second path R2, respectively, which were searched in the process shown in S204 (S205). At this time, the management server 20 may also be sent a constraint area request signal requesting the transmission of constraint area signals indicating the constraint areas included in all paths (edges).

[0052] Next, the transmitting means 253 transmits constraint area signals to the robot 10 indicating the constraint areas included in the first path R1 and the second path R2, respectively (S206). The transmitting means 253 extracts constraint area information indicating the constraint areas included in the first path R1 and the second path R2, respectively, by referring to the edge information 242 and the "Constraint Area" column of the edge table 244. The transmitting means 253 transmits constraint area signals corresponding to the extracted constraint area information to the robot 10. The transmitting means 253 extracts information indicating identification numbers "E001" and "E004" as constraint area information. The transmitting means 253 transmits constraint area signals indicating constraint area information to the robot 10.

[0053] Next, the state acquisition means 171 acquires constraint area information corresponding to the constraint area signal transmitted in the process shown in S206 (S207). The state acquisition means 171 stores the constraint area information corresponding to the constraint area signal transmitted in the process shown in S206, that is, information indicating identification numbers "E001" and "E004", in the first storage unit 16. As shown in Figure 6(B), the state acquisition means 171 acquires constraint region information indicating that the edges indicated by identification numbers "E001" and "E004" are constraint regions C1 to C2.

[0054] Next, the state acquisition means 171 sends a robot state request signal to the management server 20 requesting the transmission of robot state signals indicating the status of other robots located in the first path R1 and the second path R2, which are multiple paths explored in the process shown in S204 (S208). At this time, a robot state request signal requesting the transmission of robot state signals indicating the status of all other robots may also be sent to the management server 20. Alternatively, a robot state request signal requesting the transmission of robot state signals indicating the status of other robots located around the first path R1 and the second path R2, which are multiple paths explored in the process shown in S204, may also be sent to the management server 20.

[0055] Next, the transmitting means 253 transmits robot status signals to the robot 10 indicating the status of other robots located on the first path R1 and the second path R2 (S209). The transmitting means 253 extracts robot status information indicating the robot status of other robots 10 located on the first path R1 and the second path R2, using the "current position" column of the robot table 243 as a reference. The transmitting means 253 transmits robot status signals corresponding to the extracted robot status information to the robot 10.

[0056] Next, the state acquisition means 171 acquires robot state information corresponding to the robot state signal transmitted in the process shown in S209 (S210). The state acquisition means 171 stores the robot state information corresponding to the robot state signal transmitted in the process shown in S209 in the first storage unit 16. As shown in Figure 6(C), the state acquisition means 171 acquires robot state information indicating that the first robot 10a and the second robot 10b are present at the edge indicated by identification number "E003".

[0057] Then, the task determination means 173 decides to execute one of the multiple tasks based on the presence or absence of constraint regions in the multiple paths explored in the process shown in S204 and the state of other robots present in the multiple paths (S211). The task determination means 173 refers to the node information 161 and the edge information 162 to estimate the positions of the first robot 10a and the second robot 10b, which are other robots 10 corresponding to the robot state information. The task determination means 173 estimates that the first robot 10a and the second robot 10b are present at the edge indicated by the identification number "E003". The task determination means 173 determines that the first path R1 includes the constraint region C1 and that the first robot 10a and the second robot 10b are present. The task determination means 173 determines that the second path R2 includes the constraint region C2, but that no other robots 10 are present. The task determination means 173 determines that the number of constraint regions included in the first path R1 and the second path R2 are the same, and that the number of robots 10 in the first path R1 is greater than the number of robots 10 in the second path R2. The task determination means 173 determines that since the number of robots 10 in the first path R1 is greater than the number of robots 10 in the second path R2, selecting the second path R2 is less likely to result in waiting for other robots 10 to pass. The task determination means 173 determines that selecting the second path R2 is less likely to result in waiting for other robots 10 to pass, and that it is expected to reach the destination node indicated by identification number "N006" earlier, and therefore decides that the next task to be executed will be the task "Patrol" which uses the second path R2 as the travel route. Note that if the number of robots 10 in the first path R1 and the number of robots 10 in the second path R2 are equal, the task determination means 173 may decide that the task of the path with fewer constraint regions included in each path will be the next task to be executed.

[0058] The robot management system 1 can efficiently determine the next task to be executed, even when constraint areas are set in the movement path, by determining the next task to be executed based on the presence or absence of constraint areas in the multiple paths explored and the status of other robots present in the multiple paths explored. The robot management system 1 can also efficiently determine the next task to be executed, even when constraint areas are set in the movement path, by determining the next task to be executed based on robot status information indicating the number of other robots present in each of the multiple paths.

[0059] The robot management system 1 performs the next task based on robot status information indicating the number of other robots present in each of the multiple paths. However, the robot management system according to this embodiment may perform the next task based on robot status information indicating the presence or absence of other robots in each of the multiple paths.

[0060] Furthermore, the robot management system according to this embodiment may determine the next task to be performed based on the relationship between the positions of other robots and the positions of the constraint area. Figure 6(D) shows the graph structure of the state after the process shown in S210 in the task determination process related to the first modified example has been executed. In the task determination process related to the first modified example, in the process shown in S209, the transmitting means 253 extracts robot state information indicating the robot state of other robots 10 located on the first path R1 and the second path R2, by referring to the "current position" column of the robot table 243. The transmitting means 253 transmits a robot state signal corresponding to the extracted robot state information to the robot 10. In the state shown in Figure 6(D), in the process shown in S210, the first robot 10a is located at the edge indicated by identification number "E003", and the second robot 10b is located at the edge indicated by identification number "E002". The task determination means 173 refers to the node information 161 and the edge information 162 and calculates the distance between each of the first robot 10a and the second robot 10b, which are other robots 10 corresponding to the robot state information, and the constraint regions C1 and C2. The task determination means 173 calculates the distance between the node indicated by identification number "N002", which is the end of the edge indicated by identification number "E001", which is included in the first path R1 and is the closest constraint region C1 to the first robot 10a, and the current position of the first robot 10a. The task determination means 173 calculates the distance between the node indicated by identification number "N003," which is the end of the constraint region C2 indicated by identification number "E004" that is included in the second path R2 and is closest to the second robot 10b, and the current position of the second robot 10b. The task determination means 173 determines that if the second path R2 is selected, the waiting time will be longer than if the first path R1 is selected. Since the waiting time will be longer if the second path R2 is selected than if the first path R1 is selected, the task determination means 173 determines that if the first path R1 is selected, the possibility of waiting for other robots 10 to pass is lower. The task determination means 173 determines that selecting the first route R1 reduces the likelihood of having to wait for other robots 10 to pass, and that it is expected to reach the destination node indicated by identification number "N006" earlier. Therefore, it sets the next task to be executed to the task "Inspection," which uses the first route R1 as the travel path. In the task determination process according to the first modified example, the robot management system according to the embodiment determines the next task to be executed based on the relationship between the position of other robots and the position of the constraint area, thereby efficiently determining the next task to be executed even when a constraint area is set in the movement path.

[0061] Furthermore, the robot management system according to this embodiment may determine the next task to be performed based on the positions and movement directions of other robots in each of the multiple paths, as well as the position of the constraint area. Figure 7(A) shows the graph structure of the state after the process shown in S210 in the task determination process related to the second modified example has been executed. In the task determination process related to the second modification, in the process shown in S209, the transmitting means 253 extracts robot state information indicating the position and direction of movement of other robots 10 located on the first path R1 and the second path R2, by referring to the "current position" column and the "direction of movement" column of the robot table 243. The transmitting means 253 transmits a robot state signal corresponding to the extracted robot state information to the robot 10. In the state shown in Figure 7(A), in the process shown in S210, the first robot 10a is located at the edge indicated by identification number "E003" and moves toward the edge indicated by identification number "E001", which is the constraint region C1. On the other hand, the second robot 10b is located at the edge indicated by identification number "E002" and moves toward the edge indicated by identification number "E004", which is the constraint region C2. The task determination means 173 determines that since the first robot 10a moves toward the edge that is the constraint region C1, selecting the first path R1 will result in a longer waiting time than selecting the second path R2. Since selecting the first path R1 will result in a longer waiting time than selecting the second path R2, the task determination means 173 determines that selecting the second path R2 is less likely to result in waiting for other robots 10 to pass. The task determination means 173 determines that selecting the second route R2 reduces the likelihood of having to wait for other robots 10 to pass, and that it is expected to reach the destination node indicated by identification number "N006" earlier. Therefore, it decides that the next task to be executed will be the task "Patrol," which uses the second route R2 as its travel path. In the task determination process according to the second modified example, the robot management system according to the embodiment can efficiently determine the next task to be executed, even when a constraint area is set on the movement path, by determining the next task to be executed based on the movement direction of other robots present in each of the multiple paths.

[0062] In the task determination process according to the second modified example, the robot management system determines the next task to be executed based on the positions and movement directions of other robots present in each of the multiple paths. However, the robot management system according to the embodiment may determine the next task to be executed based on the positions and movement paths of other robots present in each of the multiple paths. Furthermore, the robot management system may determine that there is a long waiting time not only when the robot 10 moves toward an edge which is a constraint area, but also when the robot 10 moves toward a destination point.

[0063] Furthermore, the robot management system according to this embodiment may determine the next task to be performed based on the positions of other robots in each of the multiple paths, the size of the housings of the other robots, and the location of the constraint area. Figure 7(B) shows the graph structure of the state after the process shown in S210 in the task determination process related to the third modified example has been executed. In the task determination process related to the third modified example, in the process shown in S209, the transmitting means 253 extracts robot state information indicating the positions and housing sizes of other robots 10 located on the first path R1 and the second path R2, by referring to the "current position" column and the "size" column of the robot table 243. The transmitting means 253 transmits a robot state signal corresponding to the extracted robot state information to the robot 10. In the state shown in Figure 7(B), in the process shown in S210, the first robot 10a is located at the edge indicated by identification number "E003" in the first path R1, and the second robot 10b is located at the edge indicated by identification number "E002" in the second path R2. Also, the size of the second robot 10b is larger than the size of the first robot 10a. The task determination means 173 determines that since the size of the second robot 10b located in the second path R2 is larger than the size of the first robot 10a located in the first path R1, selecting the second path R2 is likely to result in a longer waiting time than selecting the first path R1. The task determination means 173 determines that since selecting the second path R2 is likely to result in a longer waiting time than selecting the first path R1, selecting the first path R1 is less likely to result in waiting for other robots 10 to pass. The task determination means 173 determines that selecting the first route R1 is less likely to result in waiting for other robots 10 to pass, and is expected to allow the robot to reach the destination node indicated by identification number "N006" earlier. Therefore, it decides that the next task to be executed will be the task "Inspection," which uses the first route R1 as its travel path. In the task determination process according to the third modified example, the robot management system according to the embodiment can efficiently determine the next task to be executed, even when a constraint area is set on the movement path, by determining the next task to be executed based on the housing size of other robots present in each of the multiple paths.

[0064] In the task determination process according to the third modified example, the robot management system determines the size of the robot 10 by referring to the "Size" column of the robot table 243. However, the robot management system according to the embodiment may determine the size of the robot 10 by referring to information regarding the presence or absence of arm protrusion and the size of the load to be carried.

[0065] Furthermore, the robot management system according to the embodiment may determine the next task to be performed based on the positions of other robots in each of the multiple paths, their movement speeds, and the positions of the constraint areas. Figure 7(C) shows the graph structure of the state after the process shown in S210 in the task determination process related to the fourth modified example has been executed. In the task determination process according to the fourth modified example, in the process shown in S209, the transmitting means 253 extracts robot state information indicating the position and movement speed of other robots 10 located on the first path R1 and the second path R2, by referring to the "current position" column and the "movement speed" column of the robot table 243. The transmitting means 253 transmits a robot state signal corresponding to the extracted robot state information to the robot 10. In the state shown in Figure 7(C), in the process shown in S210, the first robot 10a is located at the edge indicated by identification number "E003" in the first path R1, and the second robot 10b is located at the edge indicated by identification number "E002" in the second path R2. Also, the movement speed of the second robot 10b is slower than that of the first robot 10a. The task determination means 173 determines that since the movement speed of the second robot 10b, which is located on the second path R2, is slower than that of the first robot 10a, which is located on the first path R1, selecting the second path R2 is likely to result in a longer waiting time than selecting the first path R1. The task determination means 173 determines that selecting the first path R1 is less likely to result in a waiting state for other robots 10 to pass, because selecting the second path R2 will result in a longer passing time with the second robot 10b and a longer waiting time than selecting the first path R1. The task determination means 173 determines that selecting the first path R1 reduces the likelihood of waiting for other robots 10 to pass and allows the robot to reach the destination node indicated by identification number "N006" earlier. Therefore, it determines that the next task to be executed is the task "Inspection," which uses the first path R1 as the travel path. In the task determination process according to the third modified example, the robot management system determines the next task to be executed based on the movement speed of other robots present on each of the multiple paths, regardless of whether the movement direction of the other robots is the same as or opposite to the movement direction of robot 10. When the movement direction of other robots is the same as the movement direction of robot 10, robot 10 may waste time when overtaking slower robots. Also, when the movement direction of other robots is opposite to the movement direction of robot 10, robot 10 may waste time when passing slower robots. In the task determination process according to the fourth modified example, the robot management system according to the embodiment can efficiently determine the next task to be executed, even when a constraint area is set on the movement path, by determining the next task to be executed based on the movement speed of other robots present in each of the multiple paths.

[0066] Furthermore, the robot management system according to this embodiment may determine the next task to be performed based on the positions of other robots in each of the multiple paths, their movement priority, and the location of the constraint area. Figure 7(D) shows the graph structure of the state after the process shown in S210 in the task determination process related to the fifth modified example has been executed. In the task determination process related to the fifth modified example, in the process shown in S209, the transmitting means 253 extracts robot state information indicating the position and movement priority of other robots 10 located on the first route R1 and the second route R2, by referring to the "current position" column and the "movement priority" column of the robot table 243. The transmitting means 253 transmits a robot state signal corresponding to the extracted robot state information to the robot 10. In the state shown in Figure 7(D), in the process shown in S210, the first robot 10a is located at the edge indicated by identification number "E003" included in the first path R1, and the second robot 10b is located at the edge indicated by identification number "E002" included in the second path R2. Also, the movement priority of the first robot 10a is "high (H)", and the movement priority of the second robot 10b is "low (L)". The task determination means 173 determines that since the movement priority of the first robot 10a, which is located on the first path R1, is "high", if the first path R1 is selected, there is a risk of interference conditions such as passing or overtaking occurring between the first robot 10a, which also has a "high" movement priority. The task determination means 173 determines that if the first path R1 is selected, there is a risk of interference with the first robot 10a, which has a high movement priority. Therefore, it determines that the next task to be executed is a "patrol" task, which uses the second path R2, where there is no robot 10 with a high movement priority, as the movement path. In the task determination process according to the fifth modified example, the robot management system according to the embodiment can efficiently determine the next task to be executed, even when a constraint area is set on the movement path, by determining the next task to be executed based on the movement priority of other robots present in each of the multiple paths. In this embodiment, the robot management system sets the second path R2, which does not contain any robots 10 with high movement priority, as the movement path, and does not set the first path R1, which contains robots 10 with high movement priority, as the movement path. However, in cases where there are no other movement paths except for paths where other robots with high movement priority exist, the robot management system according to this embodiment may set the path where other robots with high movement priority exist as the movement path. The robot management system according to this embodiment can be made less likely to set paths where other robots with high movement priority exist as movement paths.

[0067] Furthermore, the robot management system according to this embodiment may determine the next task to be executed based on the path length from the starting point to the destination point and the robot state acquired by the state acquisition means. Figure 8 is a sequence diagram showing an example of the operation of the task determination process according to the sixth modified example. The task determination process shown in Figure 8 is executed mainly by the first processing unit 17 in cooperation with each element of the robot 10, based on a program that is stored in the first storage unit 16 in advance. The processes shown in S301 to S309 are the same as the processes shown in S201 to S203 and S205 to S210, except that constraint area information showing all constraint areas is extracted in the process shown in S305 and constraint area information showing all constraint areas is acquired in the process shown in S306. Therefore, a detailed explanation of the processes shown in S301 to S309 is omitted here.

[0068] Following the process shown in S309, the status acquisition means 171 sends a cost value request signal to the management server 20 requesting the transmission of a cost value signal indicating the cost value of an edge included in the route within the facility (S310).

[0069] Next, the transmitting means 253 transmits a cost value signal to the robot 10 indicating the cost value of the edge included in the route within the facility (S311). The transmitting means 253 extracts cost value information indicating the cost value of the edge included in the route within the facility by referring to the edge information 242 and the "cost value" column of the edge table 244. The transmitting means 253 transmits a constraint area signal corresponding to the extracted cost value information to the robot 10. Note that the transmitting means 253 may extract cost value information indicating only the cost value of the edge existing between the starting point and the destination point, rather than extracting cost value information indicating the cost value of all edges included in the route within the facility.

[0070] Next, the state acquisition means 171 acquires cost value information corresponding to the cost value signal transmitted in the process shown in S312 (S312). The state acquisition means 171 stores the cost value information corresponding to the cost value signal transmitted in the process shown in S311 in the first storage unit 16. As shown in Figure 9(A), the status acquisition means 171 acquires cost value information indicating the respective cost values ​​"C001" to "C010" for each of the identification numbers "E001" to "E010" included in the route within the facility.

[0071] The task determination means 173 then determines the next task to be executed based on the path length of the path from the starting point to the destination point and the robot state acquired by the state acquisition means (S313). The task determination means 173 determines that all of the constraint regions C1 and C2 are in use and that constraint region C1 is in standby. The task determination means 173 determines that the edges indicated by identification numbers "E001" and "E004" are constraint regions C1 and C2, so it corrects the cost values ​​of the edges indicated by identification numbers "E001" and "E004" to increase. The task determination means 173 also determines that the first robot 10a and the second robot 10b are located at the edge indicated by identification number "E003", so it corrects the cost values ​​of the edge indicated by identification number "E003" to increase. As shown in Figure 9(B), the task determination means 173 increases the cost value of the edge indicated by identification number "E001", which is a constraint region C1 that is both in use and in a standby state, from "C001" to "C001+A1". The task determination means 173 also increases the cost value of the edge indicated by identification number "E004", which is a constraint region C2 that is in use, from "C004" to "C004+A1". Furthermore, as shown in Figure 9(C), the task determination means 173 increases the cost value of the edge indicated by identification number "E003", which is a constraint region C2 that is in use, from "C003" to "C003+A2". Next, the task determination means 173 identifies the entire path from the node indicated by identification number "N001", which is the home position of each robot 10, to the node indicated by identification number "N006", which is the work position. The task determination means 173 uses known graph search techniques, such as Dijkstra's algorithm or A* (A-star) search algorithm, to search for the path that minimizes the sum of the corrected cost values. As shown in Figure 9(D), the task determination means 173 determines the next task to be executed to be a task whose travel path is a route that sequentially passes through the edges indicated by identification numbers "E002", "E004", "E007", and "E010". In the task determination process according to the sixth modified example, the robot management system according to the embodiment determines the next task to be executed based on the path length of the path from the starting point to the destination point and the robot state information acquired by the state acquisition means, thereby enabling efficient determination of the next task to be executed even when a constraint area is set in the movement path.

[0072] In the task determination process according to the sixth modified example, the robot management system determines the next task to be executed based on robot state information indicating the number of other robots present in each of the multiple paths. However, the robot management system according to the embodiment may determine the next task to be executed based on robot state information indicating the presence or absence of other robots present in each of the multiple paths. Alternatively, the robot management system according to the embodiment may determine the next task to be executed based on the relationship between the position of other robots and the position of the constraint area. Alternatively, the robot management system according to the embodiment may determine the next task to be executed based on the direction of movement of other robots present in each of the multiple paths. Alternatively, the robot management system according to the embodiment may determine the next task to be executed based on the movement path of other robots present in each of the multiple paths. Alternatively, the robot management system according to the embodiment may determine the next task to be executed based on the size of the housing of other robots present in each of the multiple paths. Alternatively, the robot management system according to the embodiment may determine the next task to be executed based on the movement speed of other robots present in each of the multiple paths. Alternatively, the robot management system according to the embodiment may determine the next task to be executed based on the movement priority of other robots present in each of the multiple paths.

[0073] Furthermore, while the robot management system 1 performs a process to determine the next task to be executed by the robot 10, in the robot management system according to this embodiment, the management server may perform a process to determine the next task to be executed. When the management server 20 performs a process to set a movement path, the management server has a state acquisition means, a path setting means, a task determination means, and a transmission means. In this case, the state acquisition means of the management server acquires robot state information indicating the states of multiple robots present in the movement area. The task determination means of the management server determines the task to be executed by the first robot based on the presence or absence of a constraint area where constraints on the robot's actions are imposed, set in the path used when executing each of the multiple tasks, and the states of other robots other than the first robot corresponding to the robot state information acquired by the state acquisition means. The transmission means of the management server transmits the task to be executed, determined by the task determination means, to the first robot. The robot can efficiently determine the task by controlling its movement based on the received movement path.

[0074] Furthermore, while the robot management system 1 stores the starting point of a task executed by the robot 10 as task start point information 166, in the robot management system according to this embodiment, the execution area of ​​the task to be executed (e.g., room 201, second floor, etc.) may also be stored as task start point information 166. In this case, the state acquisition means 171 may acquire constraint area information within the execution area of ​​each task and acquire utilization status information in the constraint area corresponding to the acquired constraint area information. In addition, the route setting means 172 may set the movement path of the robot 10 within the execution area of ​​each task and acquire utilization status information for the constraint area on the movement path. Then, the task determination means 173 may evaluate each task based on the utilization status information acquired by the state acquisition means 171 and decide to execute one of the multiple tasks. At this time, instead of (or in conjunction with) the utilization status of the constraint area on the path leading to the task start point, each task may be evaluated using the utilization status of the constraint area within the task execution area. Note that in this invention, "execution location" means the starting point of the task and the execution area of ​​the task.

[0075] Furthermore, in the robot management system 1, the route setting means 172 performs a graph search to find a route from the starting point of the robot 10 to the destination point. However, in the robot management system according to this embodiment, the route may be set by reading a pre-set (stored) route without performing a search.

[0076] Furthermore, among the multiple robots 10, a predetermined robot 10 (master robot) may perform a process to determine the tasks that the other robots 10 will perform. When the master robot performs the process to determine the tasks that the other robots will perform, the master robot stores a robot table 244 and an edge table 245, and has state acquisition means, route setting means and task determination means to acquire robot state information of the other robots and determine the tasks that each of the other robots will perform. In this case, the master robot transmits the tasks that the other robots will perform, as determined by the task determination means, to each of the other robots. Alternatively, a robot control server different from the management server 20 may have at least one of the state acquisition means and route setting means, and the management server 20 and the robot control server may cooperate to determine the tasks that each robot will perform. Furthermore, all of the multiple robots 10 may store a robot table 244 and an edge table 245, and have state acquisition means, route setting means and task determination means to acquire robot state information of the other robots and determine the tasks that each of the other robots will perform.

[0077] Furthermore, the robot management system described determines the next task to be performed based on the presence or absence of constraint areas on the path and the status of other robots. However, the robot management system according to the embodiment may determine the next task to be performed based on the arrangement information of constraint areas and the status of other robots. The arrangement information of constraint areas may be information indicating the presence or absence of constraint areas on the path, information indicating the number of constraint areas on the path, or information indicating the position of constraint areas in a movement area, including the coordinates of each constraint area in a map showing the movement area.

[0078] A robot management system according to one embodiment of the present invention can contribute to solving social issues such as the declining workforce and long working hours. Furthermore, a robot management system according to one embodiment of the present invention can contribute to achieving Goal 9 of the Sustainable Development Goals (SDGs) adopted by the United Nations, "Build resilient infrastructure, promote inclusive and sustainable industrialization and foster innovation." [Explanation of Symbols]

[0079] 1. Robot Management System 10 Robots 20 Management Server 171 State acquisition means 172 Route setting means 173 Task Determination Methods

Claims

1. A memory means for storing multiple tasks performed by the robot within its mobile area, A state acquisition means for acquiring robot state information indicating the state of other robots in the aforementioned moving area, A task determination means that determines which task the robot will perform from the multiple tasks, based on the presence or absence of a constraint region in the path used when performing each of the multiple tasks, in which constraints are imposed on the robot's actions, and the state of the other robots corresponding to the robot state information acquired by the state acquisition means, A robot equipped with [the following features].

2. The robot according to claim 1, wherein the task determination means determines the task to be executed based on the presence or absence of the constraint area in the path included in the execution location of each of the plurality of tasks, or the presence or absence of the constraint area in the path from the starting point of the robot to the execution location of each of the plurality of tasks, and the state of the other robots corresponding to the robot state information acquired by the state acquisition means.

3. The system includes a route setting means for searching and setting a route for each of the multiple tasks from the starting point to the execution location of each of the tasks, The robot according to claim 2, wherein the task determination means determines the task to be executed based on the presence or absence of the constraint region in a plurality of paths set by the path setting means and the state of the other robots corresponding to the robot state information acquired by the state acquisition means.

4. The status acquisition means acquires information indicating the presence or number of other robots as robot status information, The task determination means makes it easier to determine the task to be executed as a task that uses a route with a small number of constraint areas and a small number of other robots as the travel route from the starting point to the destination point.

5. The state acquisition means acquires information indicating the position of the other robot as the robot state information, The robot according to any one of claims 1 to 3, wherein the task determination means determines the task to be performed based on the relationship between the position of the other robot and the position of the constraint area.

6. The state acquisition means acquires information indicating the position of the other robot and information indicating the direction or path of movement of the other robot as robot state information. The robot according to any one of claims 1 to 3, wherein the task determination means determines the task to be performed based on the position of the other robot, the direction or path of movement of the other robot, and the position of the constraint area.

7. The state acquisition means acquires information indicating the position of the other robot and information indicating the housing size of the other robot as the robot state information. The robot according to any one of claims 1 to 3, wherein the task determination means determines the task to be performed based on the position of the other robot, the size of the housing, and the position of the constraint area.

8. The state acquisition means acquires information indicating the position of the other robot and information indicating the movement speed of the other robot as the robot state information. The robot according to any one of claims 1 to 3, wherein the task determination means determines the task to be performed based on the position of the other robot, the movement speed of the other robot, and the position of the constraint area.

9. The state acquisition means acquires information indicating the position of the other robot and information indicating the movement priority of the other robot as robot state information. The robot according to any one of claims 1 to 3, wherein the task determination means determines the task to be performed based on the position of the other robot, the movement priority, and the position of the constraint area.

10. A robot management system comprising multiple robots and a management server, A storage means for storing multiple tasks performed by the robot within the mobile area, A state acquisition means for acquiring robot state information indicating the state of the plurality of robots located in the aforementioned moving area, The system includes a task determination means for determining from the plurality of tasks which task to be performed by the first robot among the plurality of robots, The task determination means determines the task to be performed by the first robot based on the presence or absence of a constraint region in the path used when each of the multiple tasks is performed, which imposes constraints on the robot's actions, and the state of other robots other than the first robot that correspond to the robot state information acquired by the state acquisition means. Robot management system.

11. A management server that manages multiple robots, A storage means for storing multiple tasks performed by the robot within the mobile area, A state acquisition means for acquiring robot state information indicating the state of the plurality of robots located in the aforementioned moving area, A task determination means for determining from the plurality of tasks which task to be performed by the first robot among the plurality of robots, The system includes a transmission means for transmitting the task to be performed, as determined by the task determination means, to the first robot. The task determination means determines the task to be performed by the first robot based on the presence or absence of a constraint region in the path used when each of the multiple tasks is performed, which imposes constraints on the robot's actions, and the state of other robots other than the first robot that correspond to the robot state information acquired by the state acquisition means. Management server.

Citation Information

Patent Citations

  • JP2024‐145661A