Control device, control method, and recording device

The control device optimizes robot operation assignments by considering situational factors and preparation times, enhancing efficiency by reducing unnecessary changes and ensuring adequate operational time.

WO2025141716A1PCT designated stage expired Publication Date: 2025-07-03NEC CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2023/046738
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-12-26
Publication Date
2025-07-03

AI Technical Summary

Technical Problem

Existing systems fail to efficiently assign operations to robots, leading to potential inefficiencies due to unnecessary operation changes, especially when considering preparation times and situational changes.

Method used

A control device that acquires work and robot information, determines operation changes based on situational factors and preparation times, and dynamically adjusts assignments to optimize robot operations.

Benefits of technology

Improves work efficiency by appropriately assigning operations to robots, minimizing wasteful preparation processes and ensuring sufficient operational time.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2023046738_03072025_PF_FP_ABST
    Figure JP2023046738_03072025_PF_FP_ABST
Patent Text Reader

Abstract

A control device according to the present disclosure comprises: a task information acquisition means; a robot information acquisition means; and a determination means. The task information acquisition means acquires task information indicating the situation of each of a plurality of tasks. The robot information acquisition means acquires robot information indicating the task being executed by at least one robot. Each robot can execute two or more of the plurality of tasks, and executes one assigned task. The determination means determines a change of task to be assigned to a robot on the basis of the task information, the robot information, and a preparation time required for changing the task executed by the robot.
Need to check novelty before this filing date? Find Prior Art

Description

Control device, control method, and recording device

[0001] The present disclosure relates to a control device, a control method, and a recording device.

[0002] A technology related to the present disclosure is disclosed in Patent Document 1. The control device disclosed in Patent Document 1 executes a process for handing over tasks between multiple robots. When the control device determines that a first robot cannot reach the end point of the first task, it decides to hand over the first task to a second robot that is currently executing a second task that has a lower priority than the first task. The control device then instructs the second robot to take over the first task.

[0003] Japanese Patent Application Laid-Open No. 2021-43520

[0004] When a task is performed using at least one robot that is capable of performing two or more tasks among a plurality of tasks and that performs one assigned task, the task can be appropriately assigned to the robot, thereby improving the task efficiency. For example, as in the technology disclosed in Patent Literature 1, the task assigned to each robot can be dynamically changed depending on the situation, thereby improving the task efficiency. However, if the tasks to the robots are not appropriately assigned, the task efficiency may actually decrease due to unnecessary task changes, etc.

[0005] In view of the above-mentioned problems, an example of an object of the present disclosure is to provide a control device, a control method, and a recording medium that appropriately assign tasks to a robot.

[0006] The control device of the present disclosure has: a work information acquisition means for acquiring work information indicating the status of each of a plurality of works; a robot information acquisition means for acquiring robot information indicating the work being performed by at least one robot that is capable of performing two or more of the plurality of works and that performs one assigned work; and a decision means for deciding to change the work to be assigned to the robot based on the work information, the robot information, and the preparation time required to change the work to be performed by the robot.

[0007] In addition, the control method disclosed herein includes one or more computers acquiring task information indicating the status of each of a plurality of tasks, acquiring robot information indicating the task being performed by at least one robot that is capable of performing two or more of the plurality of tasks and that performs one assigned task, and determining a change in the task to be assigned to the robot based on the task information, the robot information, and the preparation time required to change the task to be performed by the robot.

[0008] In addition, the recording device of the present disclosure stores a program that causes a computer to function as: a work information acquisition means that acquires work information indicating the status of each of a plurality of works; a robot information acquisition means that acquires robot information indicating the work being performed by at least one robot that is capable of performing two or more of the plurality of works and that performs one assigned work; and a decision means that decides to change the work to be assigned to the robot based on the work information, the robot information, and the preparation time required to change the work to be performed by the robot.

[0009] According to one aspect of the present disclosure, a control device, a control method, and a recording medium are provided that appropriately assign tasks to a robot.

[0010] FIG. 1 is a diagram illustrating an example of a functional block diagram of a control device according to the present disclosure. FIG. 2 is a flowchart illustrating an example of a processing flow of a control device according to the present disclosure. FIG. 3 is a diagram illustrating an example of a hardware configuration of a control device according to the present disclosure. FIG. 4 is a diagram for explaining an example of an operation according to the present disclosure. FIG. 5 is a diagram illustrating a schematic example of an example of information processed by a control device according to the present disclosure. FIG. 6 is a diagram illustrating a schematic example of an example of information processed by a control device according to the present disclosure. FIG. 7 is a flowchart illustrating another example of a processing flow of a control device according to the present disclosure. FIG. 8 is a flowchart illustrating another example of a processing flow of a control device according to the present disclosure.

[0011] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. In this disclosure, the drawings relate to one or more embodiments. In all drawings, similar components are designated by similar reference numerals, and descriptions thereof will be omitted as appropriate.

[0012] <First embodiment> Fig. 1 is a functional block diagram showing an overview of a control device 10. As shown in Fig. 1, the control device 10 has a work information acquisition unit 11, a robot information acquisition unit 12, and a determination unit 13. These functional units execute the processing of the flowchart in Fig. 2.

[0013] In S10, the work information acquisition unit 11 acquires work information indicating the status of each of a plurality of works.

[0014] In S11, the robot information acquisition unit 12 acquires robot information indicating the task being performed by at least one robot. Each robot is capable of performing two or more tasks among a plurality of tasks, and performs one task assigned to it. Note that the processing order of S10 and S11 may be reversed from that shown in the example. Also, S10 and S11 may be performed in parallel.

[0015] In S12, the determination unit 13 determines a change in the work to be assigned to the robot based on the work information acquired in S10, the robot information acquired in S11, and the preparation time required to change the work to be performed by the robot.

[0016] According to the control device 10, it is possible to appropriately assign tasks to the robots.

[0017] For example, the control device 10 determines whether to change the tasks to be assigned to the robot based on task information indicating the status of each of a plurality of tasks. With this control device 10, it is possible to appropriately determine whether to change the tasks to be assigned to the robot depending on the status of each task.

[0018] Furthermore, the control device 10 determines whether to change the tasks assigned to the robots based on robot information indicating the tasks currently being performed by at least one robot. The control device 10 can grasp the tasks currently assigned to the robots and, based on the grasped information, appropriately determine whether to change the tasks assigned to the robots.

[0019] Furthermore, the control device 10 determines whether to change the work assigned to the robot based on the preparation time required to change the work performed by the robot. If the preparation time exceeds a predetermined value, the benefits of changing the work assigned to the robot cannot be realized. An example of a situation in which benefits cannot be realized is when there is little time left until the deadline for the new work to be assigned to the robot. In such a case, even if the robot's work is changed using the predetermined preparation time, it may not be possible to ensure sufficient actual work time. By taking the preparation time into consideration, the inconvenience of deciding to change the work in a way that does not bring the desired benefits can be reduced.

[0020] Second Embodiment Overview A control device 10 according to a second embodiment is a specific implementation of the configuration of the control device 10 according to the first embodiment. The control device 10 will be described in detail below.

[0021] "Hardware Configuration" First, an example of the hardware configuration of the control device 10 will be described. Each functional unit of the control device 10 is realized by any combination of hardware and software. Those skilled in the art will understand that there are various variations in the realization method and device. Software includes programs that are pre-stored in the device before shipping, and programs downloaded from recording media such as CDs (Compact Discs) or servers on the Internet.

[0022] FIG. 3 is a block diagram illustrating an example of the hardware configuration of the control device 10. As shown in FIG. 3, the control device 10 has a processor 1A, a memory 2A, an input / output interface 3A, a peripheral circuit 4A, and a bus 5A. The peripheral circuit 4A includes various modules. The control device 10 does not necessarily have to have the peripheral circuit 4A. Note that the control device 10 may be composed of multiple devices that are physically and / or logically separated. In this case, each of the multiple devices can have the above hardware configuration.

[0023] The bus 5A is a data transmission path for the processor 1A, memory 2A, peripheral circuit 4A, and input / output interface 3A to mutually transmit and receive data. The processor 1A is, for example, a processing unit such as a CPU or a graphics processing unit (GPU). The memory 2A is, for example, a random access memory (RAM) or a read-only memory (ROM). The input / output interface 3A includes interfaces for acquiring information from input devices, external devices, external servers, external sensors, cameras, etc., and interfaces for outputting information to output devices, external devices, external servers, etc. The input / output interface 3A also includes an interface for connecting to a communication network such as the Internet. Examples of input devices include a keyboard, mouse, microphone, physical buttons, touch panel, etc. Examples of output devices include a display, speaker, printer, mailer, etc. The processor 1A can issue commands to each module and perform calculations based on the results of those calculations.

[0024] "Functional Configuration" Next, the functional configuration of the control device 10 will be described in detail. An example of a functional block diagram of the control device 10 is shown in Fig. 1. As shown in the figure, the control device 10 has a work information acquisition unit 11, a robot information acquisition unit 12, and a determination unit 13.

[0025] The work information acquisition unit 11 acquires work information indicating the status of each of a plurality of works.

[0026] The "multiple tasks" are performed by robots. One robot may be assigned to one task, or multiple robots may be assigned to one task. The multiple tasks may be, for example, tasks related to a specific business. The tasks are not particularly limited, and examples include delivery tasks at a distribution center, warehouse work performed in a warehouse, and manufacturing tasks at a manufacturing factory. Note that the tasks exemplified here are merely examples, and are not limited to these examples.

[0027] There are various types of "task content." For example, the tasks involved in delivery and warehousing include receiving, storing, storing, shipping, etc. Note that these tasks can also be further subdivided.

[0028] For example, receiving work can be broken down into tasks such as unloading from trucks, inspecting incoming goods, attaching labels (to packaged items), depalletizing and palletizing, linking pallet IDs (identifiers), sorting / linking to basket carts, loading onto conveyors, and sorting by destination.

[0029] In addition, the warehousing work can be subdivided into the tasks of removing the goods from the container, storing them in a storage location, dismantling and disposing of the packaging materials, etc.

[0030] Furthermore, storage work can be subdivided into tasks such as replenishing storage locations, inventory taking, and arranging shelves.

[0031] Furthermore, the shipping work can be subdivided into the following tasks: taking out items from storage locations, putting them into containers, inspecting for shipping, attaching labels (to packaged items), assembling packaging materials, attaching price tags, and attaching delivery notes.

[0032] In addition, shipping work can be broken down into tasks such as picking (obtaining) from the conveyor, loading onto a cart, sorting by destination, and loading onto a truck.

[0033] Other examples of work in manufacturing operations include assembling parts, disassembling parts, picking parts, and cleaning parts.

[0034] The work contents exemplified here are merely examples and are not limited to these examples.

[0035] In this embodiment, robots are assigned on a task-by-task basis. Although there are various ways to define "one task," it is preferable to define a group of tasks that can be executed with the same preparation process as one task.

[0036] "Preparation processing" refers to processing that the robot must perform before starting work. The preparation processing includes, for example, at least one of moving to a new location, positioning the robot for object recognition, recognizing the position of the processing target, recognizing the position of an obstacle, confirming operation by executing at least one operation pattern, switching modes, and adjusting various settings. Each preparation processing is described below.

[0037] Movement to a new location Movement may be performed by the robot itself or manually. In the former case, the robot is equipped with an autonomous movement mechanism. The robot moves by itself toward a destination (work location) set by an external device or human input. For example, a movement route may be further set in the robot by an external device or human input. The robot may then move to the destination along the set movement route. Alternatively, the robot may calculate a movement route from its current location and the set destination. The robot may then move to the destination along the calculated movement route. Calculation of the movement route from the current location to the destination can be achieved using any well-known technology. The external device that performs the various settings on the robot described above may be the control device 10 or another device. The external device is communicatively connected to the robot and transmits information indicating the destination, movement route, etc. to the robot for setting.

[0038] After a robot has been moved to a designated work location, it may be desirable to position the robot at a designated location within the work location. The designated location is a position that has been determined in advance so that the robot is in a desired state relative to a permanent fixture used in the work, such as a conveyor.

[0039] There are various methods for positioning, and any well-known technology can be used to achieve this. For example, a marker indicating a predetermined position may be attached to the floor, etc. Then, the robot may analyze an image of the surroundings captured by a camera, detect the marker in the image, and adjust its own position to match the position of the marker.

[0040] Recognizing the Position of the Processing Object A "processing object" is an object related to work. For example, in the case of loading, unloading, or picking luggage, the processing objects include the cart on which the luggage is loaded, the conveyor on which the luggage is sent, the table or conveyor on which the luggage unloaded from the cart is placed, and the shelf on which the luggage to be picked is placed. In addition, in the case of assembling parts, disassembling parts, picking parts, cleaning parts, and the like, the processing objects include the workbench on which the parts are placed, the table or case on which the finished product is placed, and the table or case on which the parts before assembly are placed. Note that the processing objects exemplified here are merely examples and are not limited to the examples given here.

[0041] A processing target is registered in advance for each task. Furthermore, the feature amount of the appearance of each processing target may be registered. For example, the feature amount may be registered in a storage device within the robot, or in a storage device within an external device configured to be able to communicate with the robot. The robot identifies the processing target related to each task based on the registration information.

[0042] When the robot moves to the work position, it executes a process to recognize the location of a processing object related to the work to be performed there. Recognition of the location of the processing object can be achieved using any well-known technology. For example, the robot may be equipped with a camera. The robot may recognize the location of the processing object by capturing an image of the surrounding area with the camera and detecting the processing object in the image. The robot may detect the processing object in the image, for example, based on pre-registered features of the processing object's appearance. Alternatively, the robot may be equipped with a sensor that detects objects and their positions. For example, the sensor may emit electromagnetic waves, detect the reflected waves, and perform the detection based on the reflected waves, but this is not limiting. The robot may recognize the location of the processing object based on the sensing results of the sensor. The robot may also recognize the location of the processing object by combining the analysis results of the camera and the sensing results of the sensor. The location of the processing object may be recognized, for example, as a relative position based on the position of the device (robot) itself, or as an absolute position in a predetermined world coordinate system. The robot registers the recognized location of the processing object within its own device.

[0043] ○ Recognizing the position of obstacles An "obstacle" is any object that hinders the operation of the device (robot). For example, other robots or objects other than the processing target are obstacles. Note that the obstacles exemplified here are merely examples and are not limited to these examples.

[0044] When the robot moves to the work position, it executes a process to recognize the location of obstacles at the work position. Recognizing the location of obstacles can be achieved using any well-known technology. For example, the robot may be equipped with a camera. The robot may then capture images of its surroundings with the camera and detect objects in the captured images. Alternatively, the robot may be equipped with a sensor that detects objects and their positions. Examples of such sensors include, but are not limited to, sensors that emit electromagnetic waves, detect reflected waves, and perform the detection based on the reflected waves. The robot may then detect objects based on the sensing results of the sensor. The robot can then recognize the positions of detected objects, excluding the target object, as the location of obstacles. The robot can detect the target object using the method described above in "Recognizing the Location of the Target Object." The location of an obstacle may be recognized, for example, as a relative position based on the location of the robot itself, or as an absolute position in a predetermined world coordinate system. The robot then registers the location of the recognized obstacle within its own device.

[0045] ○ Operation check by executing at least one operation pattern The operation performed by the robot may differ depending on the task. In the operation check performed before a certain task, the robot performs some or all of the operations that will be performed during the task to check whether the operation can be performed correctly.

[0046] Information indicating at least one operation pattern to be executed by the robot in the operation check is registered in advance for each task content. The information may be registered in a storage device of the robot, or may be registered in a storage device of an external device communicably connected to the robot.

[0047] The content of the movement pattern is determined depending on the structure of the robot, etc. For example, in the case of a robot equipped with an arm capable of turning, raising and lowering, and extending movements, each movement pattern may be defined by the type of movement, the range of movement, etc. Specifically, each movement pattern may be defined as "a turning movement that moves the arm 125 degrees," "a turning movement that moves the arm 180 degrees," "a raising and lowering movement that moves the arm 90 degrees," "an extending and lowering movement that extends the arm to its longest position," etc.

[0048] When the robot moves to a work position, it identifies at least one movement pattern corresponding to the work to be performed at that position based on the information.The robot then executes the identified at least one movement pattern.The robot can then output the execution result (no problem / problem).

[0049] Mode Switching The robot may have modes according to the work content. The robot may be configured to switch modes when the work content is changed. When switching modes, the robot may be restarted, etc.

[0050] ○ Adjusting various settings Robots may need to adjust various settings depending on the work they are doing. For example, in the case of a robot used in delivery work, if the size or type of item being picked changes, the hand that picks the item may be switched. This switching then requires adjustment of various settings related to the hand. The robot can adjust various settings when the work content changes, according to predetermined rules (programs).

[0051] Here, a specific example in which "one task is defined as a group of tasks that can be executed with the same preparation process" will be shown using Figure 4. Note that the example shown here is merely an example, and is not limited to this example.

[0052] Here, a specific example of delivery operations at a delivery center will be described. Figure 4 shows a plurality of conveyors C1 to C3 and a plurality of carts B1 to B9 placed at the end of each conveyor C1 to C3.

[0053] At the end of the conveyors C1 to C3, at least one robot R1 to R4 is positioned, and performs the work of loading items onto carts B1 to B9 at that position. That is, at least one robot R1 to R4 operates its arm to pick up items that have come along the conveyors C1 to C3, and loads the items onto carts B1 to B9.

[0054] In addition, robots R5 to R7 located at the end of each of the multiple conveyors C1 to C3 move the carts B1 to B9 corresponding to each of the multiple conveyors C1 to C3 to the position of a specified vehicle and load them onto that vehicle.

[0055] In this example, the loading of carts B1 to B9 at the end of each of the multiple conveyors C1 to C3 onto carts B1 to B9 is defined as a single task. In other words, the "loading of carts B1 and B2 at the end of conveyor C1," the "loading of carts B3 to B6 at the end of conveyor C2," and the "loading of carts B7 to B9 at the end of conveyor C3" are separate tasks. Although the task content is the same for all of these tasks, "loading of carts," they are classified as separate tasks because the work locations are different. When the robot switches between these tasks, preparatory processing, such as location movement, alignment, recognition of the location of the processing target, and recognition of the location of obstacles, may be required.

[0056] In this example, the loading of vehicles performed in accordance with each of the multiple conveyors C1 to C3 is defined as a single task. In other words, "loading of vehicles performed in accordance with conveyor C1," "loading of vehicles performed in accordance with conveyor C2," and "loading of vehicles performed in accordance with conveyor C3" are separate tasks. Although the task content is the same for all of them, "loading of vehicles," they are classified as separate tasks because the work locations are different. When the robot switches between these tasks, preparatory processing, such as location movement, alignment, recognition of the location of the processing target, and recognition of the location of obstacles, may be required.

[0057] Furthermore, "loading work onto carts B1 and B2 at the end of conveyor C1" and "loading work onto a vehicle corresponding to conveyor C1" are different tasks. Both work at the same location, "conveyor C1," but the work content is different, so they are classified as different tasks. When the work performed by the robot is changed between these tasks, preparatory processing such as moving the location, positioning, recognizing the position of the processing target, recognizing the position of obstacles, confirming operation by executing at least one operation pattern, switching modes, and adjusting various settings may be required.

[0058] Next, the work information acquired by the work information acquisition unit 11 will be described.

[0059] "Work information" indicates the status of each of multiple tasks. The work status indicates the deadline, the time remaining until the deadline, the progress rate, the remaining workload, the workload per unit time in the future, etc. These statuses can be identified using various means, such as sensing results from various sensors, image analysis, and information input by an operator. The work information acquisition unit 11 can then acquire the identified information. An example of a means for identifying the work status will be described below, but is not limited to this example.

[0060] A "deadline" is the time by which a task must be completed. When tasks are managed on a daily basis, the deadline is defined by the time of each day. The deadline for each task is set in advance and stored in a specified storage device. The storage device may be provided in the control device 10, or in another device (such as a system for managing work) that is communicatively connected to the control device 10. The task information acquisition unit 11 can acquire information indicating the deadline for each task from the storage device.

[0061] The "time remaining until the deadline" can be calculated by comparing the current time with the deadline (time). The work information acquisition unit 11 can calculate the time remaining until the deadline as the time from the current time to the deadline (time) of each work.

[0062] The "progress rate" and the "remaining workload" can be calculated based on the workload of each task that is determined in advance and the workload of each task that has been completed up to that point.

[0063] The workload is defined by the number of objects to be processed, such as the number of packages to be processed or the number of finished products or intermediate products to be manufactured. However, the workload may also be defined by other methods. When managing work on a daily basis, the workload for each day is set in advance for each task and stored in a specified storage device. For example, the worker sets this. The storage device may be provided in the control device 10, or may be provided in another device (such as a system for managing work) communicatively connected to the control device 10. The work information acquisition unit 11 can acquire information indicating the workload for each day for each task from the storage device.

[0064] The work information acquisition unit 11 can then ascertain the "amount of work performed for each task up to that point," identified by any means. For example, any sensor may be used to detect packages flowing on a conveyor corresponding to each task, and the number of detected packages may be counted to identify the amount of work performed up to that point (the number of packages processed). Alternatively, the number of packages picked up by a robot from the conveyor and placed on a cart (the amount of work performed up to that point) may be counted. Alternatively, the robot may count the number of manufactured products or intermediate products (the amount of work performed up to that point). Alternatively, the number of manufactured products or intermediate products placed on a table for placing manufactured products or intermediate products (the amount of work performed up to that point) may be detected by image analysis or various sensors.

[0065] Then, the work information acquisition unit 11 can calculate the "workload of each work that has been completed up to that point" relative to the "predetermined workload of each work" as the progress rate of each work.

[0066] In addition, the work information acquisition unit 11 can calculate the remaining workload for each task by subtracting the "workload of each task that has been completed up to that point" from the "predetermined workload for each task."

[0067] "Future workload per unit time" indicates the estimated workload that will occur per unit time in the future. The remaining work may occur concentratedly in a certain time period, or may occur evenly distributed over time. The future workload per unit time indicates the estimated way in which work will occur in the future.

[0068] The length of the unit time may vary, for example, from a few minutes to several tens of minutes, or even an hour.

[0069] In a certain business, multiple tasks are performed in a predetermined order. That is, task a is performed followed by task b, and then task c. In this case, by identifying the status of the upstream tasks, more specifically, the amount of work completed per unit time in the upstream tasks, it is possible to determine an estimate of the amount of work per unit time in the subsequent downstream tasks. The time lag between the timing of when work occurs in the upstream tasks and the timing of when work occurs in the downstream tasks can be determined from past experience.

[0070] First, the work information acquisition unit 11 identifies the amount of work completed per unit time in the work upstream of each work. This identification can be achieved by counting the amount of work performed per unit time using the above-mentioned method for detecting the "amount of work performed up to that point." Alternatively, the worker may input the amount of work completed per unit time in the upstream work to the control device 10.

[0071] The work information acquisition unit 11 then calculates the future workload per unit time for each work based on the pre-registered "time lag between the workload occurrence timing of the upstream work and the workload occurrence timing of the downstream work." Specifically, assume that the time lag between the workload occurrence timing of the upstream work a and the workload occurrence timing of the downstream work b is T. Assume also that the workload performed in the first time slot for work a is M. In this case, the work information acquisition unit 11 calculates the workload of work b in the time slot T after the first time slot as M × (correction coefficient). The correction coefficient is a number greater than 0. The correction coefficient may be 1, less than 1, or greater than 1. The correction coefficient is determined in advance based on the relationship between the workload performed in the upstream work a and the workload performed in the downstream work b.

[0072] The method for calculating the future workload per unit time described here is merely an example, and is not limited to this.

[0073] The work information acquisition unit 11 can manage the acquired work information, for example, as shown in Fig. 5. The work information acquisition unit 11 can acquire the latest work information at a predetermined timing and update the managed work information as shown in Fig. 5 in response to the acquisition.

[0074] The work information in FIG. 5 indicates work identification information, the workload for the day, the progress rate, the deadline, and the workload per unit time. The work identification information is information for distinguishing between multiple tasks. The workload for the day is the "predetermined workload of each task" for the day as described above. The progress rate, deadline, and workload per unit time are as described above. The work information in FIG. 5 may be stored, for example, in the control device 10, or in another device (such as a system for managing work) communicatively connected to the control device 10.

[0075] Returning to FIG. 1, the robot information acquisition unit 12 acquires robot information indicating the work being performed by at least one robot.

[0076] A robot can perform two or more of the above-described tasks and performs one assigned task. For example, in the example of FIG. 4 , a robot may be capable of three tasks: "loading car cars B1 and B2 at the end of conveyor C1," "loading car cars B3 to B6 at the end of conveyor C2," and "loading car cars B7 to B9 at the end of conveyor C3." Furthermore, a robot may be capable of six tasks: these three tasks, plus "loading cars corresponding to conveyor C1," "loading cars corresponding to conveyor C2," and "loading cars corresponding to conveyor C3."

[0077] The configuration of the robot is not particularly limited and can be determined according to the type of work to be performed, and can be realized using any widely known technology.

[0078] "Robot information" indicates the task being performed by at least one robot. Robot information can indicate the task being performed by one robot. Robot information can also indicate the task being performed by each of multiple robots. Robot information may also indicate the settings of the robot (such as the mode being performed).

[0079] Fig. 6 shows an example of robot information managed by the robot information acquisition unit 12. The robot information in Fig. 6 is stored in the control device 10, for example.

[0080] The robot information acquisition unit 12 may communicate with each of the multiple robots and acquire information indicating the task being performed and information indicating the settings from each robot. The robot information acquisition unit 12 may then update the robot information as shown in FIG. 6 based on the information acquired from each robot.

[0081] Alternatively, the robot information acquisition unit 12 may acquire information indicating the task being performed by each robot from a device that controls each robot by sending instructions for the task to be performed to each robot.The robot information acquisition unit 12 may then update the robot information as shown in FIG. 6 based on the information acquired from the device.

[0082] Returning to FIG. 1, the determination unit 13 determines a change in the task to be assigned to the robot based on the task information, the robot information, and the preparation time required to change the task to be performed by the robot.

[0083] First, we will explain the "preparation time required when changing the task to be performed by the robot." As described above, a robot needs to perform preparatory processing when changing the task to be performed. The preparatory processing includes at least one of moving to a different location, recognizing the position of the processing target, recognizing the position of an obstacle, confirming the operation by executing at least one movement pattern, and switching modes. The "preparation time" is the time required to perform such preparatory processing.

[0084] The determination unit 13 can specify the preparation time using any one of the following specification methods 1 to 3.

[0085] Identification Method 1: A preparation time (approximate value) is registered in advance in the control device 10. The determination unit 13 identifies the preparation time by retrieving the registered preparation time (approximate value). The information may be stored in the control device 10, or may be stored in another device (such as a system for managing work) communicably connected to the control device 10.

[0086] For example, one preparation time may be registered, and the determination unit 13 may use this registered preparation time regardless of the characteristics of the robot for which a task change is being considered, the content of the task before and after the change, the location, the environment, etc. In this case, the accuracy of the preparation time may be reduced, but the processing load on the computer for identifying the preparation time may be reduced.

[0087] Alternatively, a preparation time may be registered for each task pair that specifies a task before the change and a task after the change. When determining to change the task to be assigned to the robot from task A to task B, the determination unit 13 may use the preparation time corresponding to the pair of task before the change (task A) and task after the change (task B).

[0088] Alternatively, a preparation time may be registered for each robot. When determining to change the task assigned to robot A, the determination unit 13 may use the preparation time corresponding to robot A.

[0089] Alternatively, a preparation time may be registered for each task pair that specifies the task before the change and the task after the change, and for each robot. When determining to change the task assigned to robot A from task A to task B, the determination unit 13 may use the preparation time that corresponds to the pair of the task before the change (task A) and the task after the change (task B) and that is also associated with robot A.

[0090] In this way, the accuracy of the preparation time is improved by determining the preparation time taking into consideration the characteristics of the robot for which a change in work is being considered, and the content and position of the work before and after the change.

[0091] The pre-registered preparation times can be specified by any method. For example, as pre-preparation, each robot may be made to perform each preparation process, the time required for each process may be measured, and the preparation time may be calculated based on the measurement results.

[0092] Identification Method 2 The determiner 13 may identify the time required for each preparatory process based on at least one of the work content before and after the change, the work position before and after the change, and the robot performance, and calculate the preparation time by adding up the identified times. There are various methods for identifying the time required for each preparatory process, and one example will be described below.

[0093] "Specifying the time required to move between locations" First, an example of a method for specifying the time required to move between locations will be described.

[0094] For example, information indicating the estimated travel time required for movement between each pair of two work positions among a plurality of work positions may be registered in advance in the control device 10. As a variation, information indicating the estimated travel time required for movement between each pair of two work positions among a plurality of work positions may be registered in the control device 10 for each robot. This information may be stored in the control device 10, or may be stored in another device (such as a system for managing work) communicatively connected to the control device 10.

[0095] The determination unit 13 may then read out, from the registered information, travel times that are associated with the desired task pair and registered. Additionally, the determination unit 13 may read out, from the registered information, travel times that are associated with the desired task pair and the desired robot.

[0096] The travel time to be registered in advance can be specified by any method. For example, as a preliminary step, each robot may be caused to move between work positions and the travel time required to move between each work position may be measured. Alternatively, the travel time required to move between each work position may be calculated by computer simulation based on the robot specifications (travel speed, etc.) and a map showing multiple work positions.

[0097] Alternatively, the determination unit 13 may calculate a movement path based on the current position of each robot and the changed work position each time the process for determining a change in work assignment to the robot is executed. The determination unit 13 may then calculate the travel time required for moving from one location to another based on the total distance of the movement path and the movement speed of each robot. Calculation of the movement path from the current position to the destination can be achieved using any well-known technology.

[0098] "Specifying the time required to recognize the position of the processing object" Next, an example of a method for specifying the time required to recognize the position of the processing object will be described.

[0099] For example, information indicating a processing target recognition time (estimate) required to recognize the position of a processing target for each task may be registered in advance in the control device 10. As a variation, information indicating a processing target recognition time (estimate) required to recognize the position of a processing target for each task and for each robot may be registered in the control device 10. The information may be stored in the control device 10, or may be stored in another device (such as a system for managing work) connected to the control device 10 so as to be able to communicate with it.

[0100] The determination unit 13 may then read out the processing target recognition time associated with the desired task from the registered information. Additionally, the determination unit 13 may read out the processing target recognition time associated with the desired task and the desired robot from the registered information.

[0101] The pre-registered processing target recognition time can be specified by any method. For example, as a preliminary step, each robot may be made to recognize the position of the processing target at the work position of each work, and the time required for this may be measured.

[0102] "Specifying the time required to recognize the position of an obstacle" Next, an example of a method for specifying the time required to recognize the position of an obstacle will be described.

[0103] For example, information indicating an obstacle recognition time (approximate) required to recognize the position of an obstacle for each task may be registered in advance in the control device 10. As a variation, information indicating an obstacle recognition time (approximate) required to recognize the position of an obstacle for each task and for each robot may be registered in the control device 10. The information may be stored in the control device 10, or may be stored in another device (such as a system for managing work) communicably connected to the control device 10.

[0104] The determination unit 13 may then read out the obstacle recognition time that is registered in association with the desired task from the registered information. Additionally, the determination unit 13 may read out the obstacle recognition time that is registered in association with the desired task and the desired robot from the registered information.

[0105] The obstacle recognition time to be registered in advance can be specified by any method. For example, as a preliminary step, each robot may be made to recognize the position of an obstacle at the work position of each work, and the time required for this may be measured.

[0106] "Specifying the time required for operation check by executing at least one operation pattern" Next, an example of a method for specifying the operation check time required for operation check by executing at least one operation pattern will be described.

[0107] For example, information indicating the time (approximate) required to execute at least one movement pattern for each robot may be registered in advance in the control device 10. Also, information indicating a movement pattern to be executed before each task for each robot may be registered in the control device 10. This information may be stored in the control device 10, or may be stored in another device (such as a system for managing work) communicably connected to the control device 10.

[0108] The determination unit 13 then identifies a movement pattern that the desired robot should execute before the desired task based on the registered information. Next, the determination unit 13 identifies the time required for the desired robot to execute each of the identified movement patterns based on the registered information. The determination unit 13 then adds up the identified times to calculate the movement check time required for the movement check that the desired robot executes before the desired task.

[0109] The time required to execute each pre-registered movement pattern can be determined by any method. For example, as a preliminary step, each robot may be made to execute each movement pattern and the time required for each may be measured.

[0110] "Specifying the Time Required for Mode Switching" Next, an example of a method for specifying the mode switching time required for mode switching will be described.

[0111] For example, information indicating the time (approximate) required for switching from one of a plurality of modes to another may be registered in advance in the control device 10 for each robot. Also, information indicating the content of mode switching required when changing from one task to another (indicating the modes before and after the change) may be registered in the control device 10 for each robot. This information may be stored in the control device 10, or may be stored in another device (such as a system for managing work) connected to the control device 10 so as to be able to communicate with it.

[0112] Then, based on the registered information, the determination unit 13 specifies the content of mode switching required for the desired robot to change from the desired task A to the desired task B. Next, based on the registered information, the determination unit 13 specifies the time required for the desired robot to perform the specified mode switching.

[0113] The time required for each mode switching to be registered in advance can be specified by any method. For example, as a preparation, each robot may be made to switch modes and the time required for each may be measured.

[0114] Identification method 3: As described above, a robot needs to perform preparatory processing when changing the work it is performing. However, depending on the work content before and after the change and the work position before and after the change, some of the preparatory processing can be omitted.

[0115] For example, if the work content is the same before and after the change, it is possible to omit the operation check or mode switching by executing at least one operation pattern.

[0116] Furthermore, if the work position is the same before and after the change, it is possible to omit the need to move the location or recognize the position of an obstacle.

[0117] Information indicating preparatory processing that can be omitted when at least one of the work content before and after the change and the work location before and after the change satisfies a predetermined condition may be registered in advance in the control device 10. The information may be stored in the control device 10, or may be stored in another device (such as a system that manages work) that is communicably connected to the control device 10.

[0118] The determination unit 13 can then determine the processing content to be executed when the work is changed based on at least one of the work content before and after the change and the work position before and after the change, and the above information, and calculate the preparation time based on the determined processing content.The determination unit 13 can use the above-mentioned specification method 2 to calculate the time required to execute each of the determined processing content, and add up these times to calculate the preparation time.

[0119] Next, an example of a process for determining a change in the task assigned to a robot based on task information, robot information, and the preparation time required to change the task to be performed by the robot will be described.

[0120] For example, the determination unit 13 may identify a task for which a robot to be assigned needs to be changed based on the task information. For example, the determination unit 13 may refer to the task information for each task and identify a task for which at least one of the progress rate, the time remaining until the deadline, and the remaining workload satisfies a predetermined condition as a task for which a robot to be assigned needs to be changed (target task).

[0121] Additionally, when a malfunction such as a breakdown occurs in a robot, the decision unit 13 may identify a task that has been assigned to that robot as a task (target task) that requires a change in the robot to be assigned to that robot.

[0122] The determination unit 13 may then determine a robot to which the task to be assigned is to be changed based on the robot information and the preparation time. For example, the determination unit 13 may identify a robot whose currently-performing task has a lower priority than the priority of the target task. Alternatively, the determination unit 13 may identify a robot whose preparation time required to change from the currently-performing task to the target task is equal to or less than a threshold. The determination unit 13 may then determine to assign one of the robots thus identified to the target task.

[0123] Additionally, the determination unit 13 may identify a robot for which a gap time period will occur based on the future workload per unit time indicated by the work information.

[0124] The determination unit 13 may then determine a task to be assigned to the robot during the gap time slot based on the task information and the preparation time. For example, the determination unit 13 may refer to the task information for each task and determine, as a candidate task to be assigned to the robot during the gap time slot, a task for which at least one of the progress rate, the time remaining until the deadline, and the remaining workload satisfies a predetermined condition. The determination unit 13 may then identify a candidate task for which the preparation time representing a change from the currently performed task to the candidate task is equal to or less than a threshold. The determination unit 13 may then determine one of the candidate tasks identified in this manner as the task to be assigned to the robot during the gap time slot.

[0125] In the following embodiment, a specific example of these processes performed by the determination unit 13 will be described.

[0126] In one example of this embodiment, the allocation of robots to each task is determined in advance, and allocation information indicating the allocation is stored in a predetermined storage device, as shown in Fig. 7. The storage device may be provided in the control device 10, or may be provided in another device (such as a system for managing work) communicatively connected to the control device 10.

[0127] The information shown in Fig. 7 shows the allocation of robots to each task for one day. The information shown in Fig. 7 also shows the robots assigned to each task in one-hour increments. Note that the robots assigned to each task may also be shown in other time increments, such as 15-minute increments or 30-minute increments.

[0128] As shown in the figure, one robot may be assigned to one task, or multiple tasks may be assigned to one task. Also, even for the same task, the number of robots assigned may vary depending on the time period. There may also be tasks during which no robots are assigned.

[0129] A worker may generate allocation information such as that shown in FIG. 7 and store it in the storage device. Alternatively, the control device 10 may generate the allocation information such as that shown in FIG. 7. For example, the control device 10 may determine any of past allocation information as the allocation information for the day. For example, the control device 10 may determine the allocation information for the previous day as the allocation information for the day. Alternatively, the control device 10 may identify a past day that most closely resembles the work content for the day, and determine the allocation information for the identified past day as the allocation information for the day. Alternatively, a learning model that generates allocation information from the work content for the day may be generated in advance. The learning model is generated by machine learning based on learning data that pairs work content and allocation information. The control device 10 may then generate the allocation information by inputting the work content for the day into this learning model. The work content indicates the tasks to be performed that day, the workload for each task that day, the deadline (time) for each task that day, etc.

[0130] In one example of this embodiment, allocation information for that day, such as that shown in Fig. 7, is generated by the time work for that day starts and stored in a predetermined storage device. The storage device may be provided in the control device 10, or may be provided in another device (such as a system for managing work) communicatively connected to the control device 10. The control device 10 then assigns the work indicated by the allocation information to each robot.

[0131] The determination unit 13 then monitors for occurrence of a placement change event during the day's work. When the determination unit 13 detects a placement change event, it determines a change in the work to be assigned to the robot in response to the detection. That is, the determination unit 13 determines a change in the work to be assigned to the robot based on the work information, the robot information, and the preparation time required to change the work to be performed by the robot. As a result, the work to be assigned to the robot is changed from the content indicated in the above-mentioned assignment information.

[0132] In this way, the control device 10 can dynamically and appropriately change the placement of the robots, i.e., the tasks assigned to each robot, in response to the detection of a placement change event.

[0133] The placement change events include at least one of the following: the occurrence of a gap time period in which the workload satisfies the workload condition, the occurrence of a malfunction in at least one robot, and the occurrence of a malfunction in at least one task. Details of each placement change event and the processing of the determination unit 13 when each placement change event occurs will be described in the following embodiments.

[0134] Next, an example of the flow of processing by the control device 10 will be described with reference to the flowchart of FIG.

[0135] Although not shown, allocation information for that day, such as that shown in FIG. 7, is generated and stored in a predetermined storage device until the start of the day's work. The storage device may be provided in the control device 10, or in another device (such as a system for managing work) communicatively connected to the control device 10. The control device 10 assigns the tasks indicated by the allocation information to each robot. Then, during the day's work, each robot performs each task according to this assignment.

[0136] During the day's work, apart from the processing shown in the flowchart of Figure 8, the control device 10 acquires the latest work information and updates the work information as shown in Figure 5, and acquires the latest robot information and updates the robot information as shown in Figure 6.

[0137] During the day's work, the control device 10 monitors the occurrence of a rearrangement event (S20), as shown in the flowchart of Fig. 8. If no rearrangement event is detected (No in S20), the control device 10 continues monitoring unless an instruction to end the process is input (No in S22).

[0138] When a placement change event is detected (Yes in S20), the control device 10 determines a change in the task assigned to the robot based on the latest task information, the latest robot information, and the preparation time required to change the task to be performed by the robot (S21). The robot changes the task to be performed in accordance with this determination. That is, the robot performs a predetermined preparation process, and if there are no problems, begins performing the new task. The robot may be notified of the change by the control device 10, or by another device that recognizes the change by any means.

[0139] "Effects" According to the control device 10 of this embodiment, the same effects as those of the control device 10 of the first embodiment are achieved.

[0140] Furthermore, the control device 10 of this embodiment can specify the preparation time using the characteristic method described above. Such a control device 10 can specify the preparation time with high accuracy. By using the highly accurate preparation time, it is possible to appropriately assign tasks to robots. As a result, work efficiency is improved.

[0141] Furthermore, the control device 10 of this embodiment can change the task allocation to the robots in response to the detection of the above-described characteristic placement change event. With this control device 10, tasks can be appropriately allocated to the robots at appropriate timing. As a result, work efficiency is improved.

[0142] The control device 10 of this embodiment detects, as a placement change event, the occurrence of a gap time period in which the workload satisfies a workload condition, and appropriately changes the work assigned to the robot in response to the detection. This will be described in detail below.

[0143] First, the determination unit 13 detects, as a placement change event, "the occurrence of a gap time period in which the workload satisfies the workload condition."

[0144] Specifically, the determination unit 13 detects the above-mentioned placement change event by identifying the first task in which there is a gap time period where the workload satisfies the workload condition, based on the "future workload per unit time" indicated in the task information (see Figure 5).

[0145] The workload condition is "the workload is equal to or less than a threshold value." The threshold value may be set for each task. The threshold value may also vary depending on the number of robots assigned at the time of judgment. That is, the threshold value may be P2 when two robots are assigned, and P1 (P1<P2) when one robot is assigned, etc.

[0146] When the determination timing arrives, the determination unit 13 determines whether the workload per unit time of each task in the future satisfies the workload condition (the workload is equal to or less than the threshold). In the example of Fig. 5, the determination unit 13 compares each of x1, x2, ..., y1, y2, ... with the threshold, identifies tasks and time periods corresponding to values ​​equal to or less than the threshold, and then identifies the time periods that satisfy the workload condition (the time periods in which the workload is equal to or less than the threshold) as gap time periods.

[0147] The timing of the judgment may vary. For example, the determination unit 13 may perform the above process when the "future workload per unit time" in the task information is updated. In this case, the determination unit 13 may target only the tasks or time periods for which the "future workload per unit time" has been updated for the above process. Alternatively, the determination unit 13 may perform the above process at a predetermined time, when the user inputs an instruction, or the like.

[0148] After identifying the first task that has a gap time period, the determination unit 13 identifies the first robot that is assigned the first task immediately before the gap time period based on the robot information (see Figure 6) or the allocation information (see Figure 7).

[0149] Next, the work information acquisition unit 11 determines whether to change the work assigned to the first robot during the gap time period from the first work to the second work. If there are multiple first robots assigned the first work immediately before the gap time period, the work information acquisition unit 11 determines whether to change the work assigned to at least one of the multiple first robots during the gap time period from the first work to the second work.

[0150] The "second task" is any task different from the first task. The second task is also a task that can be performed by the first robot. The determination unit 13 can select, as the second task, a task among such tasks that is in a situation where support is required. For example, the determination unit 13 may select, as the second task, a task that satisfies any of the following conditions: - A task that can be performed by the first robot, the time remaining until the deadline is equal to or less than a time threshold, and the progress rate is equal to or less than a progress rate threshold; - A task that can be performed by the first robot, the time remaining until the deadline is equal to or less than a time threshold, and the remaining workload is equal to or greater than a workload threshold.

[0151] After selecting the second task, the determination unit 13 determines whether the length of the gap time slot and the preparation time required to change the task performed by the first robot from the first task to the second task satisfy the task change condition. If the task change condition is satisfied, the determination unit 13 determines to change the task assigned to the first robot during the gap time slot from the first task to the second task.

[0152] The "task change condition" is that the length of the actual work time, calculated by subtracting the preparation time from the length of the gap time slot, is equal to or greater than a threshold. By determining to change the work assigned to the first robot during the gap time slot when such a task change condition is met, it is possible to prevent unnecessary task changes and unnecessary preparation work by the robot when there is little or no actual work time.

[0153] The minimum length of work time that is preferably secured may differ for each work. Therefore, the threshold value of the work change condition may differ for each work. In this case, the work change condition when deciding to change from a first work to a second work is that the length of the actual work time is equal to or greater than the threshold value corresponding to the second work. The threshold value for each work is registered in advance. This information may be stored in the control device 10 or in another device (such as a system for managing work) communicatively connected to the control device 10. The threshold value of the work change condition may be the same for all works.

[0154] Furthermore, the minimum length of work time that is preferably secured may differ for each robot. Therefore, the threshold value of the work change condition may differ for each robot. In this case, the work change condition for determining the work to be assigned to the first robot during the gap time period is that the length of the actual work time is equal to or greater than the threshold value corresponding to the first robot. The threshold value for each robot is registered in advance. This information may be stored in the control device 10, or may be stored in another device (such as a system for managing work) communicatively connected to the control device 10. Note that the threshold value of the work change condition may be the same for all robots.

[0155] Alternatively, the threshold value of the task change condition may differ for each task and each robot. In this case, the task change condition when deciding to change the task assigned to the first robot during the spare time period from the first task to the second task is that the length of the actual task time is equal to or greater than the threshold value corresponding to the second task and the first robot. Threshold values ​​for each task and each robot are registered in advance. This information may be stored in the control device 10 or in another device (such as a system for managing work) communicatively connected to the control device 10. Note that the threshold value of the task change condition may be the same for all tasks and robots.

[0156] Here, a modified example will be described. In the above example, the actual working time was calculated by subtracting the "first preparation time required to change the work performed by the first robot from the first work to the second work" from the length of the gap time slot. However, if the first robot performs the second work during the gap time slot and returns to the first work when the gap time slot ends, it is preferable to calculate the actual working time by also taking into account the "second preparation time required to change the work performed by the first robot from the second work to the first work." By changing the work assigned to the first robot during the gap time slot based on the length of the actual working time taking into account the first preparation time and the second preparation time, it is possible to determine the assignment of work that efficiently utilizes the gap time slot without affecting the original work.

[0157] Therefore, in the modified example, the determination unit 13 determines whether the length of the gap time slot, the first preparation time, and the second preparation time satisfy the task change condition. If the task change condition is satisfied, the determination unit 13 determines to change the task assigned to the first robot during the gap time slot from the first task to the second task.

[0158] In this case, the task change condition is that the length of the actual task time, calculated by subtracting the first preparation time and the second preparation time from the length of the gap time period, is equal to or greater than a threshold. As in the above example, the threshold of the task change condition may be different for each task, or may be the same for all tasks. Furthermore, the threshold of the task change condition may be different for each robot, or may be the same for all robots. Furthermore, the threshold of the task change condition may be different for each task and each robot, or may be the same for all tasks and robots.

[0159] In addition, when the decision unit 13 decides to change the work assigned to the first robot during the gap time period from the first work to the second work, the decision unit 13 may also decide the timing to change the work assigned to the first robot back from the second work to the first work.

[0160] The determination unit 13 can determine the timing based on the end timing of the gap time slot and the second preparation time. Specifically, the determination unit 13 identifies a point in time that is before the end timing of the gap time slot by the second preparation time. The determination unit 13 can then determine any point in time before this identified point in time as the timing to return the task assigned to the first robot from the second task to the first task. By determining the timing in this manner, it is possible to prevent a delay in the timing to return the first robot to the original first task, which would cause an inconvenience that affects the first task.

[0161] Next, an example of the flow of processing by the control device 10 will be described with reference to the flowchart of FIG.

[0162] Although not shown, allocation information for that day, such as that shown in FIG. 7, is generated and stored in a predetermined storage device until the start of the day's work. The storage device may be provided in the control device 10, or in another device (such as a system for managing work) communicatively connected to the control device 10. The control device 10 assigns the tasks indicated by the allocation information to each robot. Then, during the day's work, each robot performs each task according to this assignment.

[0163] During the day's work, apart from the processing shown in the flowchart of Figure 9, the control device 10 acquires the latest work information and updates the work information as shown in Figure 5, and acquires the latest robot information and updates the robot information as shown in Figure 6.

[0164] Then, during the day's work, the control device 10 monitors for the occurrence of a placement change event. As shown in the flowchart in Figure 9, when the control device 10 detects an operation that will cause a gap time slot based on the latest operation information (see Figure 5) (Yes in S30), it identifies the robot that was assigned to that operation immediately before the gap time slot based on the latest robot information (see Figure 6) or assignment information (see Figure 7) (S31).

[0165] Next, the control device 10 determines whether to have the identified robot perform another task during that spare time period (S32). Specifically, the control device 10 selects another task (the second task described above) from among the multiple tasks, and determines whether changing the original task to the selected other task satisfies the task change conditions described above. If the task change conditions are satisfied, the control device 10 determines to have the identified robot perform the selected other task during that spare time period (Yes in S32). On the other hand, if the task change conditions are not satisfied, the control device 10 determines not to have the identified robot perform the other task during that spare time period (No in S32).

[0166] Then, if it is determined that the identified robot should perform the selected other task during the gap time period (Yes in S32), the control device 10 decides to change the task assigned to the identified robot from the original task to the selected other task (S33).

[0167] At this time, the control device 10 may further determine the timing for changing the task assigned to the identified robot from the original task to the selected other task. For example, the control device 10 may determine any time point after the start of the gap time period as the timing for changing to the selected other task.

[0168] The control device 10 may further determine the timing for changing the task assigned to the identified robot from the selected other task to the original task. For example, the control device 10 determines a point in time before the end of the gap time period by a second preparation time. The control device 10 can then determine any point in time before this specified point in time as the timing for returning to the original task. The second preparation time is the preparation time required for changing the task to be performed by the identified robot from the selected other task to the original task.

[0169] On the other hand, if it is determined that the identified robot will not perform another task during the gap time period (No in S32), the control device 10 does not execute S33. In this case, no change in the task for the identified robot during the gap time period is determined.

[0170] If no work that generates a gap time period is detected (No in S30), the control device 10 continues the monitoring unless an instruction to end the process is input (No in S34).

[0171] Other configurations of the control device 10 of this embodiment are similar to those of the control device 10 of the first and second embodiments.

[0172] According to the control device 10 of this embodiment, the same effects as those of the control device 10 of the first and second embodiments are achieved.

[0173] Furthermore, the control device 10 of this embodiment can detect gap time periods when the workload satisfies predetermined conditions based on work information indicating the workload per unit time in the future, and can assign other work to the robot during those gap time periods. With this type of control device 10, it is possible to effectively utilize the robot during gap time periods and improve work efficiency.

[0174] Furthermore, the control device 10 of this embodiment can determine whether to assign another task to the robot during a gap time period, taking into account the preparation time required for changing the task and the preparation time required for returning to the original task. With this control device 10, it is possible to determine to change the task assigned to the robot in a situation where sufficient actual task time cannot be secured, thereby reducing the inconvenience of having to perform unnecessary preparation processing.

[0175] Furthermore, the control device 10 can appropriately determine the timing to return to the original task after having the worker perform the other task, taking into consideration the preparation time required to change from the original task to the other task and the preparation time required to change from the other task to the original task. With this control device 10, it is possible to determine the allocation of tasks that efficiently utilize gap time periods without affecting the original task.

[0176] Fourth Embodiment The control device 10 of this embodiment detects "the occurrence of a malfunction in at least one robot" as a placement change event, and appropriately changes the tasks assigned to the robots in response to the detection. This will be described in detail below.

[0177] First, the determination unit 13 detects, as a placement change event, “the occurrence of a malfunction in at least one robot.” A malfunction is something that affects the execution of a task, such as a breakdown or operational malfunction.

[0178] There are various means for detecting the occurrence of a malfunction in a robot. For example, the robot and the control device 10 may be configured to be able to communicate with each other. When the robot detects a malfunction in its own device, it may notify the control device 10 of the malfunction. The robot may notify the control device 10 of the malfunction via another device. The detection of a malfunction in the robot's own device by the robot can be realized using any well-known technology.

[0179] When a malfunction is detected in at least one robot, the determination unit 13 determines the priority of a plurality of tasks. The priorities of a plurality of tasks may be determined in advance and stored in a predetermined storage device. The storage device may be provided in the control device 10 or in another device (such as a system for managing work) communicatively connected to the control device 10. The determination unit 13 may then determine the priority according to the predetermined contents.

[0180] Alternatively, the priorities of the tasks may change dynamically, and the determining unit 13 may determine the priorities at the timing when a malfunction in at least one robot is detected.

[0181] The determination unit 13 may determine the priority at a predetermined timing based on at least one of the extent to which the progress rate of each of the multiple tasks at that time is behind the planned progress rate at that time, the time remaining until the deadline, the importance, and the content of the tasks.

[0182] For example, the decision unit 13 can assign a higher priority to an operation whose current progress rate is lagging behind the planned progress rate at that time.

[0183] The degree of delay may be the ratio of the progress rate at that time to the planned progress rate at that time, or may be any other value equivalent thereto.

[0184] The progress rate of each task at each point in time can be determined by the method described in the second embodiment. The planned progress rate of each task at each point in time is determined in advance and stored in a predetermined storage device. The storage device may be provided in the control device 10 or in another device (such as a system for managing work) communicatively connected to the control device 10. The determination unit 13 can acquire such progress rate and planned progress rate and calculate the degree of the delay.

[0185] Furthermore, the decision unit 13 can assign a higher priority to an activity with less time remaining until the deadline.

[0186] Furthermore, the determination unit 13 can assign a higher priority to an operation with a higher importance. The importance of each operation is determined in advance and stored in a predetermined storage device. The storage device may be provided in the control device 10, or may be provided in another device (such as a system for managing work) communicatively connected to the control device 10. The importance may be indicated, for example, by a five-level rating from 1 to 5, or may be determined by other methods.

[0187] The determination unit 13 may also assign a higher priority to an operation whose operation content is a predetermined content. The operation content whose priority is to be increased is determined in advance and stored in a predetermined storage device. The storage device may be provided in the control device 10 or in another device (such as a system for managing work) connected to the control device 10 so as to be able to communicate with the control device 10.

[0188] For example, the determination unit 13 may calculate a priority score for each task based on at least one of the above-described parameters and a calculation model generated in advance. Then, the determination unit 13 may determine the priority order in the order of the priority scores.

[0189] The parameters are "the degree to which the current progress rate is behind the planned progress rate at that time," "the time remaining until the deadline," "importance," and "whether the work content is as specified," etc. The calculation model can be configured using functions, tables, etc.

[0190] After determining the priorities of the multiple tasks, the determination unit 13 identifies a robot that has the performance to perform the task that was being performed by the malfunctioning robot and is currently performing a task with a lower priority than the task that was being performed by the malfunctioning robot. If multiple robots are identified, the determination unit 13 can identify a specific robot from among them. For example, the determination unit 13 may identify robots in order starting from those performing tasks with lower priority. Alternatively, the determination unit 13 may identify robots in order from highest specs based on the specifications of each of multiple robots registered in advance. Alternatively, the determination unit 13 may identify robots in order from those with the shortest preparation time required to change from the currently performing task to the task that was being performed by the malfunctioning robot.

[0191] Then, the decision unit 13 decides to change the task to be assigned to the identified robot to the task that was being performed by the robot in which the malfunction occurred.

[0192] Next, an example of the flow of processing by the control device 10 will be described with reference to the flowchart of FIG.

[0193] Although not shown, allocation information for that day, such as that shown in FIG. 7, is generated and stored in a predetermined storage device until the start of the day's work. The storage device may be provided in the control device 10, or in another device (such as a system for managing work) communicatively connected to the control device 10. The control device 10 assigns the tasks indicated by the allocation information to each robot. Then, during the day's work, each robot performs each task according to this assignment.

[0194] During the day's work, apart from the processing shown in the flowchart of Figure 10, the control device 10 acquires the latest work information and updates the work information as shown in Figure 5, and acquires the latest robot information and updates the robot information as shown in Figure 6.

[0195] During the day's work, the control device 10 monitors the occurrence of a placement change event. As shown in the flowchart of Figure 10, when the control device 10 detects a malfunction of at least one robot (Yes in S40), it determines the priority of the multiple tasks at that time (S41).

[0196] Next, the control device 10 identifies the task to which the malfunctioning robot is assigned based on the latest robot information (see FIG. 6) or assignment information (see FIG. 7) (S42).

[0197] Next, the control device 10 determines whether there is any work (target work) that has been assigned to a robot that has the performance to perform the work that was being performed by the malfunctioning robot, and that has a lower priority than the work to which the malfunctioning robot is assigned (S43).

[0198] If there is a target task (Yes in S43), the control device 10 proceeds to S44. In S44, the control device 10 determines to assign the task assigned to the malfunctioning robot to the robot assigned to the target task (S44). As a result, it is determined that another robot will be used to supplement the task assigned to the malfunctioning robot.

[0199] On the other hand, if there is no target task (No in S43), the control device 10 does not execute S44. In this case, no other robots are used to supplement the task to which the malfunctioning robot is assigned.

[0200] If no malfunction of the robot is detected (No in S40), the control device 10 continues the monitoring unless an instruction to end the process is input (No in S45).

[0201] Other configurations of the control device 10 of this embodiment are similar to those of the control device 10 of the first to third embodiments.

[0202] According to the control device 10 of this embodiment, the same effects as those of the control device 10 of the first to third embodiments are achieved.

[0203] Furthermore, when the control device 10 of this embodiment detects a malfunction of a robot, it can determine in response to the detection whether another robot should be used to perform the task to which the malfunctioning robot is assigned. In this way, the control device 10 can appropriately assign tasks to robots in response to the detection of a malfunction of a robot. As a result, work efficiency can be improved.

[0204] Furthermore, the control device 10 of this embodiment can dynamically determine the priority of multiple tasks based on the current situation. Based on the priority, the control device 10 can determine whether to use another robot to fill in for the task to which the malfunctioning robot is assigned, and which robot to use. With this control device 10, tasks can be appropriately assigned to robots based on the current situation.

[0205] Fifth Embodiment The control device 10 of this embodiment detects "the occurrence of a problem in at least one task" as a placement change event, and appropriately changes the tasks assigned to the robots in response to the detection. This will be described in detail below.

[0206] First, the determination unit 13 detects, as a placement change event, "the occurrence of a problem in at least one task." The problem may be a delay in progress, a lack of time remaining until a deadline, or the like.

[0207] For example, the determination unit 13 can identify a task that satisfies the following conditions as a task in which a defect has occurred (hereinafter, may be referred to as a "defect-occurring task") based on the task information (see FIG. 5): The time remaining until the deadline is equal to or less than a time threshold, and the progress rate is equal to or less than a progress rate threshold.

[0208] The time threshold and the progress rate threshold are predetermined values. The time threshold may be the same for all tasks or may be a different value for each task. The progress rate threshold may be the same for all tasks or may be a different value for each task.

[0209] When a malfunction has been detected in at least one task, the determination unit 13 determines the priority of the tasks. The determination unit 13 can determine the priority of the tasks by the method described in the fourth embodiment.

[0210] Next, the determination unit 13 identifies a task that is assigned to a robot that has the performance to perform the task in which the malfunction has occurred, but that has a lower priority than the task in which the malfunction has occurred. If multiple tasks are identified, the determination unit 13 can identify a predetermined task from among them. For example, the determination unit 13 may identify tasks in order from lowest priority. Alternatively, the determination unit 13 may identify tasks in order from robots with higher specifications based on the specifications of each of multiple robots registered in advance. Alternatively, the determination unit 13 may identify tasks in order from robots with the least preparation time required for changing to the task in which the malfunction has occurred. Then, the determination unit 13 decides to change the task to be assigned to the robot currently assigned to the identified task to the task in which the malfunction has occurred.

[0211] Next, an example of the flow of processing by the control device 10 will be described with reference to the flowchart of FIG.

[0212] Although not shown, allocation information for that day, such as that shown in FIG. 7, is generated and stored in a predetermined storage device until the start of the day's work. The storage device may be provided in the control device 10, or in another device (such as a system for managing work) communicatively connected to the control device 10. The control device 10 assigns the tasks indicated by the allocation information to each robot. Then, during the day's work, each robot performs each task according to this assignment.

[0213] During the day's work, apart from the processing shown in the flowchart of Figure 11, the control device 10 acquires the latest work information and updates the work information as shown in Figure 5, and acquires the latest robot information and updates the robot information as shown in Figure 6.

[0214] During the day's work, the control device 10 monitors the occurrence of a relocation event. As shown in the flowchart of Fig. 11, when the control device 10 detects a problem with at least one task (Yes in S50), it determines the priority order of the multiple tasks at that time (S51).

[0215] Next, the control device 10 determines whether there is any task (target task) that is assigned to a robot that has the performance to perform the task in which the malfunction occurred and that has a lower priority than the task in which the malfunction occurred (S52).

[0216] If there is a target task (Yes in S52), the control device 10 proceeds to S53. In S53, the control device 10 determines to assign the task in which the malfunction occurred to the robot that is assigned the target task (S53). As a result, it is determined that another robot will be used to supplement the task in which the malfunction occurred.

[0217] On the other hand, if there is no target task (No in S52), the control device 10 does not execute S53. In this case, other robots are not used to supplement the task in which the malfunction has occurred.

[0218] If no problem is detected in the work (No in S50), the control device 10 continues the monitoring unless an instruction to end the process is input (No in S54).

[0219] The other configurations of the control device 10 of this embodiment are similar to the configurations of the control device 10 of the first to fourth embodiments.

[0220] According to the control device 10 of this embodiment, the same effects as those of the control device 10 of the first to fourth embodiments are achieved.

[0221] Furthermore, when the control device 10 of this embodiment detects a malfunction in a task, it can determine, in response to the detection, whether to assign another robot to the task where the malfunction occurred. In this way, the control device 10 can appropriately assign tasks to robots in response to the detection of a malfunction in a task. As a result, work efficiency can be improved.

[0222] Furthermore, the control device 10 of this embodiment can dynamically determine the priority of multiple tasks based on the current situation. Based on the priority, the control device 10 can then determine whether to use another robot to assist in the task where a malfunction has occurred, and which robot to use. With this type of control device 10, tasks can be appropriately assigned to robots based on the current situation.

[0223] Sixth Embodiment A control device 10 of this embodiment has a means for controlling a robot, which will be described in detail below.

[0224] 12 shows an example of a functional block diagram of the control device 10. As shown in the figure, the control device 10 has a work information acquisition unit 11, a robot information acquisition unit 12, a determination unit 13, and a robot control unit 14.

[0225] The robot control unit 14 controls the robot to perform the tasks assigned to the robot.

[0226] That is, the robot control unit 14 may notify each robot of the work schedule (information indicating the work to be performed in each time period) of each robot indicated in the allocation information (see Figure 7), and have the robot perform the work according to that work schedule.

[0227] In addition, the robot control unit 14 may notify each robot of the content of the change in the work to be assigned to the robot determined by the determination unit 13, and have each robot perform the work according to the content determined by the determination unit 13.

[0228] In addition, the robot control unit 14 may notify each robot of the timing for changing the work assigned to the robot determined by the determination unit 13, and have each robot change the work at the timing determined by the determination unit 13.

[0229] Furthermore, the robot control unit 14 may notify each robot of the content of the preparation process determined by the determination unit 13 and cause each robot to perform the preparation process determined by the determination unit 13 .

[0230] The robot follows instructions from the robot control unit 14 and performs the work instructed by the robot control unit 14.

[0231] Other configurations of the control device 10 of this embodiment are similar to those of the control device 10 of the first to fifth embodiments.

[0232] The control device 10 of this embodiment achieves the same effects as the control devices 10 of the first to fifth embodiments. In addition, the control device 10 of this embodiment can control a robot and cause the robot to perform a task assigned to the robot.

[0233] Although the present disclosure has been described above with reference to the embodiments, the present disclosure is not limited to the above-described embodiments. Various modifications that can be understood by those skilled in the art can be made to the configuration and details of the present disclosure within the scope of the present disclosure. Furthermore, each embodiment can be combined with other embodiments as appropriate.

[0234] In addition, in the flowcharts used in the above explanation, multiple steps (processes) are described in order. However, the order of execution of the steps performed in each embodiment is not limited to the order described. In each embodiment, the order of the steps shown in the figures can be changed to the extent that the content is not affected. Furthermore, each of the above-mentioned embodiments can be combined to the extent that the content is not contradictory.

[0235] Some or all of the above embodiments may be described as in the following supplementary notes, but are not limited to them. 1. A control device comprising: a task information acquisition means for acquiring task information indicating the status of each of a plurality of tasks; a robot information acquisition means for acquiring robot information indicating a task being performed by at least one robot that is capable of performing two or more of the plurality of tasks and that performs one assigned task; and a decision means for deciding to change the task to be assigned to the robot based on the task information, the robot information, and a preparation time required to change the task to be performed by the robot. 2. The control device described in 1, wherein the task information indicates a workload per unit time, and the decision means: identifies a first task for which a gap time slot exists in which the workload satisfies a workload condition; identifies a first robot that is assigned the first task immediately before the gap time slot; and decides to change the task to be assigned to the first robot during the gap time slot from the first task to a second task. 3. The control device according to claim 2, wherein the decision means decides to change the task assigned to the first robot in the gap time period from the first task to the second task if the length of the gap time period and the preparation time required to change the task performed by the first robot from the first task to the second task satisfy a task change condition. 4. The control device according to claim 3, wherein the task change condition is that the length of the gap time period minus the preparation time is equal to or greater than a threshold. 5. The control device according to claim 2, wherein the decision means decides to change the task assigned to the first robot in the gap time period from the first task to the second task if the length of the gap time period, a first preparation time that is the preparation time required to change the task performed by the first robot from the first task to the second task, and a second preparation time that is the preparation time required to change the task performed by the first robot from the second task to the first task satisfy a task change condition. 6. The control device according to claim 5, wherein the task change condition is that the length of the gap time period minus the first preparation time and the second preparation time is equal to or greater than a threshold.7. The control device according to 5 or 6, wherein, when it is decided to change the task assigned to the first robot during the gap time period from the first task to the second task, the decision means decides the timing to return the task assigned to the first robot from the second task to the first task based on the end timing of the gap time period and the second preparation time. 8. The control device according to 4 or 6, wherein the threshold value differs for each task, and when it is decided to change from the first task to the second task, the task change condition is that the length of the actual task time is equal to or greater than the threshold value corresponding to the second task. 9. The control device according to 4, 6 or 8, wherein the threshold value differs for each robot, and when it is decided to change the task assigned to the first robot during the gap time period, the task change condition is that the length of the actual task time is equal to or greater than the threshold value corresponding to the first robot. 10. 11. The control device according to any one of 1 to 9, wherein, when a malfunction occurs in at least one of the robots, the decision means: determines the priority of the multiple tasks based on the task information for each of the multiple tasks at that time, identifies a robot performing a task with a lower priority than the task being performed by the robot with the malfunction, and decides to change the task to be assigned to the identified robot to the task being performed by the robot with the malfunction. 11. The control device according to any one of 1 to 10, wherein, when a malfunction occurs in at least one task, the decision means: determines the priority of the multiple tasks based on the task information for each of the multiple tasks at that time, identifies a task with a lower priority than the task with the malfunction, and decides to change the task to be assigned to the robot assigned to the identified task to the task with the malfunction. 12. The control device according to 10 or 11, wherein the decision means: determines the priority based on at least one of the extent to which the progress rate of each of the multiple tasks at that time is behind the planned progress rate at that time, the time remaining until the deadline, the importance, and the task content. 13. 13. The control device according to any one of 1 to 12, wherein the determination means detects a placement change event, and determines a change in the work to be assigned to the robot in response to the detection of the placement change event.14. The control device according to 13, wherein the placement change event includes at least one of: the occurrence of a gap time period in which the workload satisfies a workload condition; the occurrence of a malfunction in at least one of the robots; and the occurrence of a malfunction in at least one of the tasks. 15. The control device according to any of 1 to 14, wherein the determination means calculates the preparation time based on at least one of the task content before and after the change, the task position before and after the change, and the performance of the robot. 16. The control device according to 15, wherein the determination means determines processing content to be executed when the task is changed based on at least one of the task content before and after the change and the task position before and after the change, and calculates the preparation time based on the determined processing content. 17. The control device according to 16, wherein the processing content to be executed when the task is changed indicates at least one of: movement, alignment, recognition of the position of a processing target in the changed task, recognition of the position of an obstacle in the changed task, operation confirmation by executing at least one movement pattern, mode switching, and various setting adjustments. 18. The control device according to any of 1 to 17, comprising robot control means for controlling the robot and causing it to execute the task assigned to the robot. 19. 20. A control method in which one or more computers acquire task information indicating the status of each of a plurality of tasks, acquire robot information indicating a task currently being performed by at least one robot that is capable of performing two or more of the plurality of tasks and performs one assigned task, and decide to change the task to be assigned to the robot based on the task information, the robot information, and the preparation time required to change the task to be performed by the robot. 21. A recording device that stores a program that causes a computer to function as: task information acquisition means that acquires task information indicating the status of each of a plurality of tasks, robot information acquisition means that acquires robot information indicating a task currently being performed by at least one robot that is capable of performing two or more of the plurality of tasks and performs one assigned task, and decision means that decides to change the task to be assigned to the robot based on the task information, the robot information, and the preparation time required to change the task to be performed by the robot.

[0236] Some or all of Supplements 2 to 18 that are dependent on the control device of Supplement 1 described above may also be dependent on the control method of Supplement 19 and the recording device of Supplement 20 in the same dependent relationship as Supplement 1 and Supplements 2 to 18. Furthermore, within the scope of each of the above-mentioned embodiments, some or all of the configurations described as Supplements can be realized in various hardware, software, various recording means for recording software, or systems.

[0237] REFERENCE SIGNS LIST 10 Control device 11 Work information acquisition unit 12 Robot information acquisition unit 13 Determination unit 14 Robot control unit 1A Processor 2A Memory 3A Input / output I / F 4A Peripheral circuit 5A Bus

Claims

1. A control device comprising: a work information acquisition means for acquiring work information indicating the status of each of a plurality of operations; a robot information acquisition means for acquiring robot information indicating the operation being executed by at least one robot that is capable of executing two or more of the plurality of operations and is executing the assigned one operation; and a determination means for determining a change in the operation assigned to the robot based on the work information, the robot information, and the preparation time required when changing the operation executed by the robot.

2. The work information indicates the amount of work per unit time, and the determination means: identifies a first operation for which there is a gap time zone in which the amount of work satisfies a work amount condition; identifies a first robot to which the first operation is assigned immediately before the gap time zone; and determines to change the operation assigned to the first robot in the gap time zone from the first operation to a second operation. The control device according to claim 1.

3. The determination means determines to change the operation assigned to the first robot in the gap time zone from the first operation to the second operation when the length of the gap time zone and the preparation time required when changing the operation executed by the first robot from the first operation to the second operation satisfy an operation change condition. The control device according to claim 2.

4. The operation change condition is that the length of the actual work time obtained by subtracting the preparation time from the length of the gap time zone is equal to or greater than a threshold value. The control device according to claim 3.

5. The determination means determines to change the operation assigned to the first robot in the gap time zone from the first operation to the second operation when the length of the gap time zone, a first preparation time which is the preparation time required when changing the operation executed by the first robot from the first operation to the second operation, and a second preparation time which is the preparation time required when changing the operation executed by the first robot from the second operation to the first operation satisfy an operation change condition. The control device according to claim 2.

6. The operation change condition is that the length of the actual work time obtained by subtracting the first preparation time and the second preparation time from the length of the gap time zone is equal to or greater than a threshold value. The control device according to claim 5.

7. The determination means determines the timing to return the operation assigned to the first robot from the second operation to the first operation based on the end timing of the gap time period and the second preparation time when it is determined to change the operation assigned to the first robot during the gap time period from the first operation to the second operation. The control device according to claim 5 or 6.

8. The threshold value is different for each operation, and the operation change condition when it is determined to change from the first operation to the second operation is that the length of the actual operation time is equal to or greater than the threshold value corresponding to the second operation. The control device according to claim 4 or 6.

9. The threshold value is different for each robot, and the operation change condition when determining the operation assigned to the first robot during the gap time period is that the length of the actual operation time is equal to or greater than the threshold value corresponding to the first robot. The control device according to claim 4, 6 or 8.

10. When a malfunction occurs in at least one of the robots, the determination means determines the priority order of a plurality of operations based on the operation information of each of the plurality of operations at that time, identifies the robot executing an operation with a lower priority than the operation being executed by the robot in which the malfunction occurred, and determines to change the operation assigned to the identified robot to the operation being executed by the robot in which the malfunction occurred. The control device according to any one of claims 1 to 9.

11. When a malfunction occurs in at least one operation, the determination means determines the priority order of a plurality of operations based on the operation information of each of the plurality of operations at that time, identifies an operation with a lower priority than the operation in which the malfunction occurred, and determines to change the operation assigned to the robot assigned to the identified operation to the operation in which the malfunction occurred. The control device according to any one of claims 1 to 10.

12. The determination means determines the priority order based on at least one of the degree to which the progress rate of each of the plurality of operations lags behind the scheduled progress rate at that time, the time remaining until the deadline, the importance, and the operation content. The control device according to claim 10 or 11.

13. The determination means detects an arrangement change event, and determines a change in the work assigned to the robot in response to the detection of the arrangement change event. The control device according to any one of claims 1 to 12.

14. The arrangement change event includes at least one of the occurrence of a gap time zone in which the workload satisfies the workload condition, the occurrence of a defect in at least one of the robots, and the occurrence of a defect in at least one of the operations. The control device according to claim 13.

15. The determination means calculates the preparation time based on at least one of the work content before and after the change, the work position before and after the change, and the performance of the robot. The control device according to any one of claims 1 to 14.

16. The determination means determines the processing content to be executed when changing the work based on at least one of the work content before and after the change and the work position before and after the change, and calculates the preparation time based on the determined processing content. The control device according to claim 15.

17. The processing content to be executed when changing the work indicates at least one of movement, alignment, recognition of the position of the processing target in the work after the change, recognition of the position of the obstacle in the work after the change, operation confirmation by executing at least one operation pattern, mode switching, and adjustment of various settings. The control device according to claim 16.

18. The control device according to any one of claims 1 to 17, comprising robot control means for controlling the robot and causing the robot to execute the work assigned to the robot.

19. A control method in which one or more computers acquire work information indicating the situation of each of a plurality of works, acquire robot information indicating the work being executed by at least one robot that can execute two or more of the plurality of works and is executing the assigned one work, and determine a change in the work assigned to the robot based on the work information, the robot information, and the preparation time required when changing the work executed by the robot.

20. A recording device that stores a program that causes a computer to function as: - a work information acquisition means for acquiring work information indicating the status of each of a plurality of tasks; - a robot information acquisition means for acquiring robot information indicating the task being executed by at least one robot that is capable of executing two or more of the plurality of tasks and is executing the assigned one task; - a determination means for determining a change in the task assigned to the robot based on the work information, the robot information, and the preparation time required when changing the task executed by the robot.

Citation Information

Patent Citations

  • Automatic detection method for bridge bottom structure

    CN111390913A

  • Method for determining order and share of work of a plurality of robot

    JP1996141960A

  • Robot management device and robot management method

    JP2021160070A

  • Robot simulation device, robot simulation system, and robot simulation method

    JP2023062962A