Work assignment calculation device, work assignment calculation method, work assignment calculation program, and recording medium

The work assignment calculation device addresses delays in substrate production by redistributing tasks among work entities, ensuring timely completion and appropriate response to progress delays.

JP2026068189APending Publication Date: 2026-04-22YAMAHA MOTOR CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
YAMAHA MOTOR CO LTD
Filing Date
2024-10-10
Publication Date
2026-04-22

AI Technical Summary

Technical Problem

Existing techniques for assigning work to substrate production lines do not adequately address delays in task progress, leading to difficulties in responding appropriately to such delays.

Method used

A work assignment calculation device that includes a plan acquisition unit, completion time estimation unit, and assignment change determination unit to identify and adjust task assignments among multiple work entities to ensure timely completion.

Benefits of technology

Enables appropriate responses to delays in task progress by redistributing tasks among work entities, ensuring timely completion and minimizing delays.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026068189000001_ABST
    Figure 2026068189000001_ABST
Patent Text Reader

Abstract

When assigning multiple tasks to a task-oriented individual, it is possible to appropriately address any delays in the progress of those tasks. [Solution] If it is determined that there is a parts supply operation whose estimated completion time Tf will be delayed from the deadline time Te (YES in step S102), it is determined whether there is a changeable operation (PA4) among the multiple parts supply operations (PA1) to (PA4) assigned to worker A that workers B and C can complete by the deadline time Te (steps S104 to S108). If it is determined that a changeable operation (PA4) exists (NO in step S107), the assignment of the changeable operation (PA4) is changed from worker A to workers B and C (step S110).
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a technique for determining the assignment of work to a work entity that executes each assigned work, and particularly relates to a technique for assigning work to a substrate production line that produces a substrate on which components are mounted.

Background Art

[0002] When producing a substrate on a substrate production line, a solder printer that prints solder on the substrate and a component mounter that mounts components on the substrate are used. For this substrate production line, various operations are performed by workers. For example, for the solder printer, operations such as replenishing solder, cleaning the squeegee, or arranging backup pins that support the substrate are performed. For the component mounter, operations such as attaching the component feeder or replenishing components to the feeder are performed.

[0003] As shown in Patent Document 1, multiple operations are assigned to a worker, and the worker executes these operations in order. Also, each operation needs to be appropriately executed at a timing according to the situation of the substrate production line. Therefore, in Patent Document 1, when the previous operation has not ended by the scheduled start time of the next operation, the next operation is assigned to another worker.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0005] However, such a technique only focuses on whether the start of the next operation can meet the scheduled time. Therefore, it may be difficult to appropriately respond with a margin to a delay in the progress of the worker's operation.

[0006] This invention has been made in view of the above-mentioned problems, and aims to enable appropriate responses to delays in the progress of work by a work entity when having it perform multiple tasks assigned to it. [Means for solving the problem]

[0007] The work assignment calculation device according to the present invention includes: a plan acquisition unit that acquires a work plan for each of the multiple work entities, which shows the completion deadline for each of the multiple tasks assigned to the work entity; a completion time estimation unit that estimates the estimated completion time, which is the time when the work entity will complete the task, for each of the multiple tasks shown in the work plan; and an assignment change determination unit that, if it is determined that there are tasks among the multiple tasks assigned to one of the multiple work entities whose estimated completion time will be delayed beyond the completion deadline, determines whether there are any changeable tasks among the multiple tasks assigned to the one work entity that can be completed by the completion deadline by another work entity different from the one work entity. If the assignment change determination unit determines that there are changeable tasks, it changes the assignment of the changeable tasks from one work entity to another work entity.

[0008] The work assignment calculation method according to the present invention comprises the steps of: obtaining a work plan for each of the multiple work entities, which shows the completion deadline for each of the multiple tasks assigned to the work entity; estimating an estimated completion time for each of the multiple tasks shown in the work plan, which is the time when the work entity will complete the task; and, if it is determined that there are tasks among the multiple tasks assigned to one of the multiple work entities whose estimated completion time will be delayed beyond the completion deadline, determining whether there are any modifiable tasks among the multiple tasks assigned to the one work entity that can be completed by the completion deadline by another work entity different from the one work entity; and if it is determined that there are modifiable tasks, the assignment of the modifiable tasks is changed from one work entity to another work entity.

[0009] The work assignment calculation program according to the present invention has the computer perform the following steps: obtain a work plan for each of the multiple work entities, which shows the completion deadline for each of the multiple tasks assigned to the work entity; estimate an estimated completion time for each of the multiple tasks shown in the work plan, which is the time when the work entity will complete the task; and if it is determined that there are tasks among the multiple tasks assigned to one of the multiple work entities whose estimated completion time will be delayed beyond the completion deadline, determine whether there are any modifiable tasks among the multiple tasks assigned to the one work entity that can be completed by the completion deadline by another work entity different from the one work entity. If it is determined that modifiable tasks exist, the assignment of the modifiable tasks is changed from one work entity to another work entity.

[0010] The recording medium according to the present invention records the above-mentioned work assignment calculation program in a way that can be read by a computer.

[0011] In the present invention (work assignment calculation device, work assignment calculation method, work assignment calculation program, and recording medium) configured as described above, a work plan indicating the completion deadline for each of the multiple tasks assigned to a work entity is obtained for each of the multiple work entities. Furthermore, for each of the multiple tasks indicated in the work plan, an estimated completion time, which is the time when the work entity will complete that task, is estimated. If it is determined that there are tasks among the multiple tasks assigned to one work entity whose estimated completion time will be delayed beyond the deadline, it is determined whether there are any changeable tasks among the multiple tasks assigned to that work entity that can be completed by another work entity by the deadline. If it is determined that changeable tasks exist, the assignment of the changeable tasks is changed from one work entity to another work entity. In other words, instead of only targeting the next task assigned to one work entity, it is determined whether there are tasks among the multiple tasks assigned to one work entity whose estimated completion time will be delayed beyond the deadline. If such tasks exist, the assignment of the changeable tasks among the multiple tasks is changed from one work entity to another work entity. As a result, when assigning multiple tasks to a task entity, it becomes possible to appropriately address delays in the progress of those tasks.

[0012] Furthermore, the assignment change determination unit may be configured such that, when it determines that there are modifiable tasks for multiple other work entities different from one work entity, it executes a minimum margin calculation process. The minimum margin calculation process calculates multiple grace periods by calculating the estimated completion time leeway relative to the deadline for each task assigned to the other work entities when modifiable tasks are added as tasks to be assigned to other work entities, and calculates the minimum value of the multiple grace periods as the minimum margin. The assignment change determination unit then changes the assignment of the modifiable tasks to the other work entity that has the largest minimum margin among the minimum margins calculated for each of the multiple other work entities. In such a configuration, the tasks assigned to the other work entities can be performed with ample margin.

[0013] Furthermore, the work plan may specify a start deadline for at least some of the tasks and require that the tasks be executed within the executable period from the start deadline to the end deadline. The work assignment calculation unit may be configured such that, when the assignment of a changeable task is changed to another work entity, the other work entity determines that the task with an executable period can be executed within that period, and then changes the assignment of the changeable task to the other work entity. In such a configuration, even if the tasks indicated in the work plan have an executable period, the assignment of a task from one work entity to another can be appropriately changed.

[0014] Furthermore, the assignment change determination unit may be configured such that, if a changeable task has an execution period, and it determines that the changeable task is executable during the overlapping period between the waiting period during which other task entities wait for the task to be executed and the execution period, it decides to change the assignment of the changeable task to another task entity and execute the changeable task during the overlapping period. In such a configuration, the assignment of a task from one task entity to another task entity can be appropriately changed without affecting the execution of tasks already assigned to other task entities.

[0015] Furthermore, if the assignment change determination unit determines that a changeable task cannot be performed during the overlapping period, and determines that changeable tasks exist for multiple other work entities different from one work entity, it executes a minimum margin calculation process. The minimum margin calculation process calculates multiple grace periods for each task assigned to the other work entities, under the condition that the task with an execution period is performed within that execution period, and calculates the minimum value of these grace periods as the minimum margin. The assignment change determination unit then changes the assignment of the changeable task to the other work entity that has the largest minimum margin among the minimum margins calculated for each of the multiple other work entities. In such a configuration, the tasks assigned to the other work entities can be performed with ample margin.

[0016] Furthermore, the system may include a storage unit that stores the estimated work time required for each type of work, and the work assignment calculation device may be configured such that the completion time estimation unit estimates the estimated completion time based on the estimated work time. In such a configuration, the estimated completion time can be easily estimated based on the estimated work time stored in the storage unit.

[0017] Alternatively, the memory unit may be configured to store estimated work time for each work entity, and the completion time estimation unit may be configured to update the estimated work time stored in the memory unit based on the actual time the work entity spent performing the work. In such a configuration, the estimated completion time can be appropriately estimated based on the actual time spent by the work entity.

[0018] Furthermore, the work assignment calculation device may be configured such that the memory unit stores the estimated travel time required for the worker to move to the location where the work will be performed, and the completion time estimation unit estimates the estimated completion time based on the estimated work time and estimated travel time. In such a configuration, the estimated completion time can be easily estimated based on the estimated travel time stored in the memory unit, taking into account the time required for the worker to move.

[0019] Furthermore, the work assignment calculation device may be configured such that the memory unit stores the estimated travel time for each work entity, and the completion time estimation unit updates the estimated travel time stored in the memory unit based on the actual time it took for the work entity to travel to the location where the work will be performed. In such a configuration, the estimated completion time can be appropriately estimated based on the actual time taken by the work entity.

[0020] Furthermore, the work assignment calculation device may be configured to include a notification unit that performs error notification, and if the assignment change determination unit determines that there are no changeable tasks, it causes the notification unit to perform error notification. In such a configuration, the task performer can recognize the error and take the necessary action.

[0021] Note that various specific configurations of the working entity can be assumed. That is, the working entity may be a person or a robot. The working entity may also be a group consisting of multiple people.

Advantages of the Invention

[0022] As described above, according to the present invention, when causing a working entity to execute a plurality of assigned tasks, it is possible to appropriately respond to a delay in the progress of the work by the working entity.

Brief Description of the Drawings

[0023] [Figure 1] A block diagram showing an example of a component mounting system including a management server, which is an example of the work assignment arithmetic device of the present invention. [Figure 2] A block diagram showing the electrical configuration of the management server. [Figure 3] A flowchart showing a first example of work assignment control for assigning work to an operator. [Figure 4A] A diagram schematically showing a first operation example executed based on the first example of the work assignment control in FIG. 3. [Figure 4B] A diagram schematically showing a first operation example executed based on the first example of the work assignment control in FIG. 3. [Figure 5A] A diagram schematically showing a second operation example executed based on the first example of the work assignment control in FIG. 3. [Figure 5B] A diagram schematically showing a second operation example executed based on the first example of the work assignment control in FIG. 3. [Figure 5C] A diagram schematically showing a second operation example executed based on the first example of the work assignment control in FIG. 3. [Figure 6] A flowchart showing a second example of work assignment control for assigning work to an operator. [Figure 7A] A diagram schematically showing an operation example executed based on the second example of the work assignment control in FIG. 6. [Figure 7B] A diagram schematically showing an operation example executed based on the second example of the work assignment control in FIG. 6. [Figure 7C]This figure schematically shows an example of an operation performed based on the second example of task assignment control in Figure 6. [Figure 8A] A flowchart showing the first half of the third example of work assignment control, which involves assigning tasks to workers. [Figure 8B] A flowchart showing the first half of the third example of work assignment control, which involves assigning tasks to workers. [Figure 9A] This figure schematically shows an example of an operation performed based on the first half of the third example of work assignment control in Figure 8A. [Figure 9B] This figure schematically shows an example of an operation performed based on the first half of the third example of work assignment control in Figure 8A. [Figure 9C] This figure schematically shows an example of an operation performed based on the first half of the third example of work assignment control in Figure 8A. [Figure 10A] This figure schematically shows an example of an operation performed based on the latter half of the third example of work assignment control in Figure 8B. [Figure 10B] This figure schematically shows an example of an operation performed based on the latter half of the third example of work assignment control in Figure 8B. [Figure 10C] This figure schematically shows an example of an operation performed based on the latter half of the third example of work assignment control in Figure 8B. [Modes for carrying out the invention]

[0024] Figure 1 is a block diagram showing an example of a component mounting system equipped with a management server, which is an example of a work assignment calculation device of the present invention. The component mounting system 1 includes a substrate production line 11. This substrate production line 11 includes a solder printing machine 12 and a plurality of component mounting machines 13, and produces substrates with mounted components using the solder printing machine 12 and the component mounting machines 13.

[0025] The solder printing machine 12 prints solder onto the circuit board. Specifically, the solder printing machine 12 has a mask positioned to overlap the upper surface of the circuit board and a squeegee that contacts the upper surface of the mask, and the squeegee is slid across the mask. As a result, the solder supplied to the upper surface of the mask is printed onto the circuit board via the pattern on the mask.

[0026] Multiple component mounting machines 13 sequentially mount components onto circuit boards that have been soldered by a solder printing machine 12. In other words, each component mounting machine 13 includes a tape feeder that supplies components stored in component storage tapes, and a mounting head that transfers the components supplied by the tape feeder onto the circuit board.

[0027] Operators perform various tasks on the circuit board production line 11. For example, on the solder printing machine 12, tasks such as replenishing solder, cleaning the squeegee, or placing backup pins to support the circuit board are performed. On the component mounting machine 13, tasks such as loading component storage tapes containing components into the tape feeder or replenishing components to the tape feeder (splicing, etc.) are performed.

[0028] Furthermore, the component mounting system 1 includes a management server 3 that manages the production of circuit boards by the circuit board production line 11. The management server 3 assigns the various tasks performed on the circuit board production line 11 to multiple workers, and each worker performs the assigned task.

[0029] Figure 2 is a block diagram showing the electrical configuration of the management server. The management server 3 is, for example, a computer. The management server 3 comprises an arithmetic unit 31, a storage unit 32, a UI 33, and a communication unit 34.

[0030] The arithmetic unit 31 is a processor such as a CPU (Central Processing Unit), and the storage unit 32 is a storage device such as an SSD (Solid State Drive). The storage unit 32 stores a work instruction list L that shows the execution plan of multiple tasks that an operator is scheduled to perform in sequence, and a work management program 17 that causes the arithmetic unit 31 to perform calculations to assign tasks to operators. The work instruction list L is generated in advance before the start of board production and stored in the storage unit 32. The work management program 17 is downloaded from, for example, an external server computer (storage medium) of the management server 3 by the communication unit 34 and stored in the storage unit 32.

[0031] UI33 is a user interface that includes input devices such as a keyboard, mouse, or microphone, and output devices such as a display or speakers. It is not necessary for the input and output devices that make up UI33 to be separate components; for example, they may be integrated using a touch panel display.

[0032] The communication unit 34 communicates with external devices of the management server 3 via wired or wireless connection. This communication unit 34 communicates with the work terminal 19 carried by the worker. Specifically, the worker inputs the progress of the work indicated by the work instruction list L into the work terminal 19, and the work terminal 19 transmits the inputted progress to the communication unit 34. The communication unit 34 transmits the progress received from the work terminal 19 to the calculation unit 31. Then, as will be described later, the calculation unit 31 updates the work instruction list L stored in the storage unit 32 according to the progress of the work received from the work terminal 19.

[0033] Figure 3 is a flowchart showing a first example of work assignment control, which assigns tasks to workers. This work assignment control is performed by calculations performed by the calculation unit 31 based on the work management program 17. The work assignment control monitors whether the work progress of the target worker follows the plan in the work instruction list for that worker, and then changes the assignment of the work to a different worker. Here, the target of the work assignment control is referred to as worker A. However, work assignment control can be performed similarly for workers other than worker A. These points also apply to the work assignment control described later.

[0034] Figures 4A and 4B schematically show the first example of operation executed based on the first example of work assignment control in Figure 3. Figure 4A shows the work instruction lists LA and LB set for workers A and B in table format before the start of the first example of work assignment control, and Figure 4B shows the work instruction lists LA and LB set for workers A and B in table format after the completion of the first example of work assignment control. Note that in order to distinguish the work instruction list L according to the differences between workers A, B, etc., the notation work instruction list LA, LB, etc. is used as appropriate.

[0035] The work instruction list L shown in Figure 4A shows the splicing execution plan for connecting a new tape to the tape loaded in the tape feeder of the component mounting machine 13. Worker A's work instruction list LA indicates that four component replenishment operations will be performed in order, each splicing the tape containing component names PA1, PA2, PA3, and PA4. Hereafter, the component replenishment operations for component names PA1, PA2, PA3, and PA4 will be referred to as component replenishment operations (PA1), (PA2), (PA3), and (PA4) as appropriate. The same applies to component replenishment operations for component names other than PA1, PA2, PA3, and PA4.

[0036] Work instruction list LA shows the execution order 1, 2, 3, and 4 for these four parts replenishment operations. Work instruction list LA also shows the estimated work time To, estimated completion time Tf, and deadline time Te for each of the four parts replenishment operations. Estimated work time To is an estimate of the time required for worker A to perform the corresponding parts replenishment operation. Estimated completion time Tf is an estimate of the time when the corresponding parts replenishment operation will be completed if worker A performs each operation in the execution order shown in work instruction list LA. This estimated completion time Tf is shown relative to the current time and is calculated by the calculation unit 31 by adding the estimated work time To of the parts replenishment operations to be performed until the completion of the corresponding parts replenishment operation. The deadline time Te is the deadline by which the corresponding parts replenishment operation must be completed. In other words, the parts replenishment operation must be completed before the corresponding deadline time Te. The details of the other work instruction lists L are similar.

[0037] In step S101, the calculation unit 31 obtains the estimated completion time Tf for each of the parts replenishment tasks (PA1), (PA2), (PA3), and (PA4) specified in the work instruction list LA for the target worker A. In step S102, the calculation unit 31 determines whether there is a parts replenishment task among the multiple parts replenishment tasks (PA1), (PA2), (PA3), and (PA4) whose estimated completion time Tf exceeds the deadline time Te. If there is no parts replenishment task whose estimated completion time Tf exceeds the deadline time Te (i.e., "NO" in step S102), the process returns to step S101.

[0038] On the other hand, if there is a parts replenishment operation whose estimated completion time Tf exceeds the deadline time Te (if the answer is "YES" in step S102), the process proceeds to step S103. In the example in Figure 4A, the work instruction list LA indicates that the estimated completion time Tf of the parts replenishment operation (PA4) exceeds the deadline time Te. Therefore, the process proceeds to step S103.

[0039] In step S103, the calculation unit 31 resets the worker count value N, which counts workers other than the target worker A, to 0. The worker count value N is a non-negative integer. In this example, a worker count value N=1 indicates worker B. In step S104, the calculation unit 31 increments the worker count value N by 1. As a result, the worker count value N becomes 1, and worker B is set.

[0040] In step S105, the calculation unit 31 provisionally assigns the parts replenishment task (PA4), which is determined to have an estimated completion time Tf that exceeds the deadline time Te, to the Nth worker B. This provisionally changes the assignment of the parts replenishment task (PA4) from worker A to worker B (provisional assignment change). As a result, the parts replenishment task (PA4) is provisionally added to the work instruction list LB shown in Figure 4A. In step S106, the calculation unit 31 sorts the execution order of each parts replenishment task (PB1), (PB2), and (PA4) in the work instruction list LB to which the parts replenishment task (PA4) has been provisionally added, in order of earliest deadline time Te. As a result, the work instruction list LB shown in Figure 4B, which shows the execution order of the parts replenishment tasks (PB1), (PA4), and (PB2), is provisionally generated.

[0041] In step S107, the calculation unit 31 determines whether there are any parts replenishment tasks in the work instruction list LB provisionally generated in step S106 whose estimated completion time Tf exceeds the deadline time Te. If there are no parts replenishment tasks whose estimated completion time Tf exceeds the deadline time Te (i.e., "NO" in step S107), the calculation unit 31 decides to assign the parts replenishment task (PA4) to the Nth worker B (step S110). In other words, the work instruction list LB generated in step S106 is determined to be the work instruction list L for worker B. In the example in Figure 4B, each of the parts replenishment tasks (PB1), (PA4), and (PB2) in the work instruction list LB has an estimated completion time Tf before the deadline time Te. Therefore, the work instruction list LB is determined to be the work instruction list L for worker B. Also, the work instruction list L for worker A is updated to the work instruction list LA in Figure 4B, which is obtained by removing the parts replenishment task (PA4) from the work instruction list LA in Figure 4A.

[0042] In step S107, if there is a parts replenishment operation whose estimated completion time Tf exceeds the deadline time Te (if "YES"), the calculation unit 31 determines whether the worker count value N has reached the maximum value Nx (step S108). Here, the maximum value Nx corresponds to the number of workers other than the target worker A. If the worker count value N is less than the maximum value Nx (if "NO" is answered in step S108), the process returns to step S104. As a result, the worker count value N is incremented by 1, and the worker is changed. Then, steps S105 to S107 are executed again.

[0043] On the other hand, if the worker count value N reaches the maximum value Nx (if "YES" is answered in step S108), the calculation unit 31 causes the UI 33 to issue an error notification (step S109). For example, the calculation unit 31 causes the UI 33 display an error indicating that the estimated completion time Tf of the parts replenishment work (PA4) indicated in the work instruction list LA has exceeded the deadline time Te.

[0044] Figures 5A to 5C schematically show a second example of operation performed based on the first example of work assignment control in Figure 3. The upper part of Figure 5A shows the work instruction list LA for worker A, generated before the start of PCB production, in time chart format, and the lower part of Figure 5A shows the work instruction list LA for worker A at the current time, updated according to the progress after the start of PCB production, in time chart format. Figure 5B shows the work instruction lists LA, LB, and LC for workers A, B, and C at the current time, generated according to the progress after the start of PCB production, in time chart format. Figure 5C shows the provisional work instruction lists LA, LB, and LC for workers A, B, and C in time chart format. In Figures 5A to 5C, the time (horizontal axis) at which each component replenishment operation is performed is shown, and each cell on the horizontal axis represents a unit of time (e.g., 1 minute).

[0045] Figure 5A shows the estimated completion times Tfa1, Tfa2, Tfa3, and Tfa4 for the corresponding parts replenishment operations (PA1), (PA2), (PA3), and (PA4). The cross marks in Figure 5A indicate the deadline times Tea1, Tea2, Tea3, and Tea4 for the corresponding parts replenishment operations (PA1), (PA2), (PA3), and (PA4). The numbers in the circles in the figure indicate the execution order of the corresponding parts replenishment operations (PA1), (PA2), (PA3), and (PA4). The same notation as in Figure 5A is used in Figures 5B and 5C.

[0046] In step S101, the calculation unit 31 obtains the estimated completion time Tf for each of the component replenishment tasks (PA1), (PA2), (PA3), and (PA4) specified in the work instruction list LA for the target worker A. Note that, as shown in Figure 5A, worker A's work progress is 1 minute behind the plan made before the start of board production. Therefore, in step S101, the estimated completion times Tfa1, Tfa2, Tfa3, and Tfa4 for each of the component replenishment tasks (PA1), (PA2), (PA3), and (PA4) are obtained based on the work instruction list LA in Figure 5B (the lower work instruction list LA in Figure 5A) which is based on the current work progress that is 1 minute behind.

[0047] In step S102, the calculation unit 31 determines whether there is a parts supply operation among the multiple parts supply operations (PA1), (PA2), (PA3), and (PA4) whose estimated completion time Tf exceeds the deadline time Te. If there are no parts supply operations whose estimated completion time Tf exceeds the deadline time Te (i.e., "NO" in step S102), the process returns to step S101.

[0048] On the other hand, if there is a parts replenishment operation whose estimated completion time Tf exceeds the deadline time Te (if the answer is "YES" in step S102), the process proceeds to step S103. In the example in Figure 5B, the work instruction list LA shows that the estimated completion time Tfa4 of the parts replenishment operation (PA4) exceeds the deadline time Te4. Therefore, the process proceeds to step S103.

[0049] In step S103, the calculation unit 31 resets the worker count value N, which counts workers other than the target worker A, to 0. In step S104, the calculation unit 31 increments the worker count value N by 1. As a result, the worker count value N becomes 1, and worker B is set.

[0050] In step S105, the calculation unit 31 provisionally assigns the parts replenishment task (PA4), which was determined in step S102 to have an estimated completion time Tfa4 that exceeds the deadline time Tea4, to the Nth worker B. This provisionally changes the assignment of the parts replenishment task (PA4) from worker A to worker B (provisional assignment change). As a result, the parts replenishment task (PA4) is provisionally added to the work instruction list LB shown in Figure 5B. In step S106, the calculation unit 31 sorts the execution order of each parts replenishment task (PB1), (PB2), (PB3), (PA4) in the work instruction list LB to which the parts replenishment task (PA4) has been provisionally added, in order of earliest deadline time Te. As a result, the work instruction list LB shown in Figure 5C, which shows the execution order of the parts replenishment tasks (PB1), (PB2), (PA4), (PB3), is provisionally generated.

[0051] In step S107, the calculation unit 31 determines whether there is a parts replenishment task in the work instruction list LB, which was provisionally generated in step S106, whose estimated completion time Tf exceeds the deadline time Te. In the example in Figure 5C, when parts replenishment task (PA4) is added to the work instruction list LB and sorted in order of deadline time Te, parts replenishment task (PA4) is inserted between parts replenishment task (PB2) and parts replenishment task (PB3). As a result, parts replenishment task (PB3) is pushed back, and its estimated completion time Tfb3 exceeds its deadline time Teb3. Therefore, it is determined that there is a parts replenishment task (PB3) whose estimated completion time Tf exceeds the deadline time Te ("YES" in step S107), and the process proceeds to step S108.

[0052] In step S108, it is determined whether the worker count value N has reached the maximum value Nx. In this example, the worker count value N is 1. Also, since there are two other workers, B and C, in addition to the target worker A, the maximum value Nx is 2. Therefore, in step S108, it is determined to be "NO", and the process returns to step S104. In step S104, the calculation unit 31 increments the worker count value N by 1. As a result, the worker count value N becomes 2, and worker C is set.

[0053] In step S105, the calculation unit 31 provisionally assigns the parts replenishment task (PA4), which was determined in step S102 to have an estimated completion time Tfa4 that exceeds the deadline time Tea4, to the Nth worker C. This provisionally changes the assignment of the parts replenishment task (PA4) from worker A to worker C (provisional assignment change). As a result, the parts replenishment task (PA4) is provisionally added to the work instruction list LC shown in Figure 5B. In step S106, the calculation unit 31 sorts the execution order of each parts replenishment task (PC1), (PC2), and (PA4) in the work instruction list LC to which the parts replenishment task (PA4) has been provisionally added, in order of earliest deadline time Te. As a result, the work instruction list LB shown in Figure 5C, which shows the execution order of the parts replenishment tasks (PC1), (PA4), and (PC2), is provisionally generated.

[0054] In step S107, the calculation unit 31 determines whether there are any parts replenishment tasks in the work instruction list LC, which was provisionally generated in step S106, whose estimated completion time Tf exceeds the deadline time Te. In the example in Figure 5C, each of the parts replenishment tasks (PC1), (PA4), and (PC2) in the work instruction list LC has an estimated completion time Tfc1, Tfa4, and Tfc2 prior to the deadline time Te. Therefore, the work instruction list LC is determined to be worker C's work instruction list L (step S110). Also, worker A's work instruction list L is updated to the work instruction list LA in Figure 5C, which is obtained by removing the parts replenishment task (PA4) from the work instruction list LA in Figure 5B.

[0055] If the result in step S107 is "YES" and then the result in step S108 is also "YES", an error notification will be executed as described above (step S109).

[0056] In the first example of work assignment control described above, work instruction lists LA, LB, and LC, each indicating the completion deadline Te for multiple parts replenishment tasks assigned to a worker, are obtained for each of the multiple workers A, B, and C. Furthermore, for each of the multiple parts replenishment tasks (PA1) to (PA4) indicated in work instruction list LA, an estimated completion time Tf, which is the time when worker A will complete the task, is estimated. Then, if it is determined that there is a parts replenishment task (PA1) to (PA4) assigned to worker A whose estimated completion time Tf is later than the completion deadline Te (YES in step S102), it is determined whether there is a changeable task (PA4) among the multiple parts replenishment tasks (PA1) to (PA4) assigned to worker A that workers B and C can complete by the completion deadline Te (steps S104 to S108). As a result, if it is determined that there is a modifiable task (PA4) (NO in step S107), the assignment of the modifiable task (PA4) is changed from worker A to workers B and C (step S110). In this way, it is determined whether there is a task among the multiple parts replenishment tasks (PA1) to (PA4) assigned to worker A whose estimated completion time Tf will be delayed from the deadline time Te. If such a parts replenishment task (PA4) exists, the assignment of the modifiable task (PA4) among the parts replenishment tasks (PA1) to (PA4) is changed from worker A to workers B and C. As a result, when having worker A perform the multiple parts replenishment tasks (PA1) to (PA4) assigned to worker A, it becomes possible to appropriately respond to delays in the progress of the work by worker A.

[0057] Furthermore, a UI33 is provided to perform error notification. When the calculation unit 31 determines that there are no changeable tasks (YES in step S108), it causes the UI33 to perform error notification (step S109). In this configuration, the operator can recognize the error and take the necessary action.

[0058] Figure 6 is a flowchart showing a second example of work assignment control for assigning tasks to workers. The difference between the second example in Figure 6 and the first example in Figure 3 is that steps S201 to S205 are executed. In the following, we will focus on explaining the differences from the first example, and common points will be denoted with corresponding symbols and their explanations will be omitted as appropriate.

[0059] Figures 7A to 7C schematically show examples of operations performed based on the second example of work assignment control in Figure 6. Figure 7A shows the work instruction list LA for worker A at the current time, generated according to the progress after the start of substrate production, in table format, and also shows the work instruction lists LB and LC for workers B and C in table format when worker A's parts replenishment work (PA4) is temporarily assigned to workers B and C. Figure 7B shows the work instruction lists LA, LB and LC for workers A, B and C at the current time in table format. Figure 7C shows the provisional work instruction lists LA, LB and LC for workers A, B and C in table format when worker A's parts replenishment work (PA4) is temporarily assigned to workers B and C.

[0060] In the second example of work assignment control shown in Figure 6, the calculation unit 31 assigns a parts replenishment task (PA4) to worker B, in the work instruction list LA for worker A, where the estimated completion time Tf exceeds the deadline time Te (steps S101-S106). As a result, a work instruction list LB, shown in Figure 7C, is provisionally generated, which shows the execution order of the parts replenishment tasks (PB1), (PA4), and (PB2).

[0061] In step S107, the calculation unit 31 determines whether there are any parts replenishment tasks in the work instruction list LB, which was provisionally generated in step S106, whose estimated completion time Tf exceeds the deadline time Te. If there are parts replenishment tasks whose estimated completion time Tf exceeds the deadline time Te (if the answer is "YES" in step S107), the calculation unit 31 excludes the Nth worker B from being assigned to the parts replenishment task (PA4) (step S201) and proceeds to step S108. If the worker count value N reaches the maximum value Nx (if the answer is "YES" in step S108), the process proceeds to step S109; if the worker count value N has not reached the maximum value Nx (if the answer is "NO" in step S108), the process returns to step S104.

[0062] If, in the provisionally generated work instruction list LB, there are no parts replenishment tasks whose estimated completion time Tf exceeds the deadline time Te (i.e., the result is "NO" in step S107), the calculation unit 31 proceeds to step S202. In the provisional work instruction list LB illustrated in Figure 7C, for the parts replenishment tasks (PB1), (PA4), and (PB2), the estimated completion times Tfb1, Tfa4, and Tfb2 are earlier than the deadline times Teb1, Tea4, and Teb2, respectively. Therefore, the result is determined to be "NO" in step S107, and the process proceeds to step S202.

[0063] In step S202, the calculation unit 31 calculates a margin for each of the parts replenishment tasks (PB1), (PA4), and (PB2) indicated in the provisional work instruction list LB. Here, the margin is the grace period for the estimated completion time Tf relative to the deadline time Te, and is the value obtained by subtracting the estimated completion time Tf from the deadline time Te. For example, the margin for parts replenishment task (PB1) is obtained by subtracting the estimated completion time Tfb1 from the deadline time Teb1. As a result, as shown in Figure 7A, three margins (3 minutes, 3 minutes, and 2 minutes) are calculated for the three parts replenishment tasks (PB1), (PA4), and (PB2) in the provisional work instruction list LB.

[0064] In step S203, the calculation unit 31 calculates the minimum margin (2 minutes) from the three margins obtained for the provisional work instruction list LB and stores this minimum margin in memory. Then, the calculation unit 31 determines whether the worker count value N has reached the maximum value Nx (step S204). If the worker count value N is less than the maximum value Nx (if "NO" is found in step S204), the process returns to step S104. As a result, the worker count value N is incremented by 1 and the worker is changed. Then, steps S105 to S107 are executed again.

[0065] In this example, since the worker count value N is 1, step S204 is determined to be "NO" and the process returns to step S104. Then, the worker count value N is incremented by 1 and worker C is set. Then, in the work instruction list LA for worker A, a parts replenishment task (PA4) whose estimated completion time Tf exceeds the deadline time Te is assigned to worker C (steps S105-S106). As a result, a work instruction list LC in Figure 7C, which shows the execution order of parts replenishment tasks (PA4), (PC1), and (PC2), is provisionally generated.

[0066] In step S107, the calculation unit 31 determines whether there are any parts replenishment tasks in the work instruction list LC, which was provisionally generated in step S106, whose estimated completion time Tf exceeds the deadline time Te. If there are parts replenishment tasks whose estimated completion time Tf exceeds the deadline time Te (i.e., "YES" in step S107), the calculation unit 31 excludes the Nth worker C from being assigned to parts replenishment tasks (PA4) (step S201) and proceeds to step S108. Then, in step S108, it is determined whether the worker count value N has reached the maximum value Nx, and each step is executed as described above.

[0067] If, in the provisionally generated work instruction list LC, there are no parts replenishment tasks whose estimated completion time Tf exceeds the deadline time Te (i.e., "NO" in step S107), the calculation unit 31 proceeds to step S202. In the provisional work instruction list LC illustrated in Figure 7C, for each of the parts replenishment tasks (PA4), (PC1), and (PC2), the estimated completion times Tfa4, Tfc1, and Tfc2 are earlier than the deadline times Te4, Tec1, and Tec2. Therefore, "NO" is determined in step S107, and the process proceeds to step S202.

[0068] In step S202, the calculation unit 31 calculates a margin for each of the parts replenishment tasks (PA4), (PC1), and (PC2) indicated in the provisional work instruction list LC. As a result, as shown in Figure 7A, three margins (5 minutes, 4 minutes, and 3 minutes) are calculated for the three parts replenishment tasks (PA4), (PC1), and (PC2) in the provisional work instruction list LC.

[0069] In step S203, the calculation unit 31 calculates the minimum margin (3 minutes) from the three margins obtained for the provisional work instruction list LC and stores this minimum margin in memory. Then, the calculation unit 31 determines whether the worker count value N has reached the maximum value Nx (step S204). The worker count value N is 2, and has reached the maximum value Nx (YES in step S204), so the calculation unit 31 proceeds to step S205.

[0070] In this way, the minimum margins (2 minutes and 3 minutes) are calculated for the work instruction lists LB and LC for workers B and C, respectively. In step S205, the calculation unit 31 decides to change the assignment of the parts replenishment task (PA4) to worker C, who has the largest margin among these minimum margins. In other words, the work instruction list LC generated in step S106 is determined to be the work instruction list L for worker B. Also, the work instruction list L for worker A is updated to the work instruction list LA in Figure 7C, which is obtained by removing the parts replenishment task (PA4) from the work instruction list LA in Figure 7B.

[0071] In the second example of work assignment control described above, work instruction lists LA, LB, and LC, each indicating the completion deadline Te for multiple parts replenishment tasks assigned to a worker, are obtained for each of the multiple workers A, B, and C. Furthermore, for each of the multiple parts replenishment tasks (PA1) to (PA4) indicated in work instruction list LA, an estimated completion time Tf, which is the time when worker A will complete the task, is estimated (step S101). If it is determined that there are tasks among the multiple parts replenishment tasks (PA1) to (PA4) assigned to worker A where the estimated completion time Tf is later than the completion deadline Te, it is determined whether there are any changeable tasks (PA4) among the multiple tasks assigned to worker A that workers B and C can complete by the completion deadline Te (steps S104 to S107). If it is determined that changeable tasks (PA4) exist ("NO" in step S107), the assignment of the changeable task (PA4) is changed from worker A to worker C. In this way, it is determined whether there is a part supply task (PA1) to (PA4) assigned to worker A whose estimated completion time Tf will be delayed beyond the deadline time Te. If such a part supply task (PA4) exists, the assignment of the changeable task (PA4) among the part supply tasks (PA1) to (PA4) is changed from worker A to worker C. As a result, it becomes possible to appropriately address any delays in the progress of the part supply tasks (PA1) to (PA4) assigned to worker A.

[0072] Furthermore, if the calculation unit 31 determines that there are changeable tasks (PA4) assigned to workers B and C, it executes a minimum margin calculation process (steps S202 to S204). In this minimum margin calculation process, the minimum margin is calculated assuming that changeable tasks (PA4) are added to the tasks assigned to workers B and C in steps S105 to S106. Specifically, for each of the parts replenishment tasks assigned to workers B and C, the margin between the estimated completion time Tf and the end deadline time Te is calculated, and multiple margins are calculated (step S202). Then, the calculation unit 31 changes the assignment of the changeable tasks (PA4) to worker C, who has the largest minimum margin among the minimum margins calculated for each of workers B and C (step S205). With this configuration, the parts replenishment tasks (PA4) assigned to other workers C can be performed with ample margin.

[0073] Furthermore, a UI33 is provided to perform error notification. When the calculation unit 31 determines that there are no changeable tasks (YES in step S108), it causes the UI33 to perform error notification (step S109). In this configuration, the operator can recognize the error and take the necessary action.

[0074] Figure 8A is a flowchart showing the first half of the third example of work assignment control for assigning tasks to workers, and Figure 8B is a flowchart showing the first half of the third example of work assignment control for assigning tasks to workers.

[0075] Figures 9A to 9C schematically show examples of operations performed based on the first half of the third example of work assignment control in Figure 8A. The upper part of Figure 9A shows the work instruction list LA for worker A, generated before the start of board production, in time chart format, and the lower part of Figure 9A shows the work instruction list LA for worker A at the current time, updated according to the progress after the start of board production, in time chart format. Figure 9B shows the work instruction lists LA, LB, and LC for workers A, B, and C at the current time, generated according to the progress after the start of board production, in time chart format. Figure 9C shows the work instruction lists LA, LB, and LC for workers A, B, and C, whose work assignments have been changed by work assignment control, in time chart format.

[0076] The third example of work assignment control shown in Figures 8A and 8B differs from the first and second examples above in that a period during which a parts replenishment task can be performed is set. Using the example in Figure 9B, the period during which a parts replenishment task can be performed is indicated by dot hatching. The circles in the figure indicate the start deadline for the corresponding parts replenishment task, and the task must begin after the start deadline. In other words, the period during which a parts replenishment task can be performed is from the start deadline to the end deadline, meaning the task must begin after the start deadline and end before the end deadline.

[0077] For example, a parts replenishment task (PA1) assigned to worker A has a start deadline Tsa1 and an end deadline Tea1, and the period during which the parts replenishment task (PA1) can be performed is from Tsa1 to Tea1. A parts replenishment task (PB1) assigned to worker B has a start deadline Tsb1 and an end deadline Teb1, and the period during which the parts replenishment task (PB1) can be performed is from Tsb1 to Teb1. A parts replenishment task (PC1) assigned to worker C has a start deadline Tsc1 and an end deadline Tec1, and the period during which the parts replenishment task (PC1) can be performed is from Tsc1 to Tec1.

[0078] In step S301, the calculation unit 31 obtains the estimated completion time Tf for each of the parts replenishment tasks (PA1), (PA2), (PA3), and (PA4) specified in the work instruction list LA for the target worker A. This estimated completion time Tf is obtained based on the work instruction list LA at the current time (lower part of Figure 9A). In step S302, the calculation unit 31 determines whether there is a parts replenishment task among the multiple parts replenishment tasks (PA1), (PA2), (PA3), and (PA4) whose estimated completion time Tf exceeds the deadline time Te. If there is no parts replenishment task whose estimated completion time Tf exceeds the deadline time Te (if the result in step S302 is "NO"), the process returns to step S301.

[0079] On the other hand, if there is a parts replenishment operation whose estimated completion time Tf exceeds the deadline time Te (if the answer is "YES" in step S302), the process proceeds to step S303. In the lower example of Figure 9A, the work instruction list LA indicates that the estimated completion time Tf of the parts replenishment operation (PA4) exceeds the deadline time Te. Therefore, the process proceeds to step S303.

[0080] In step S303, the calculation unit 31 resets the work count value M, which counts the multiple parts replenishment tasks (PA1), (PA2), (PA3), and (PA4) assigned to the target worker A, to 0. The work count value M is a non-negative integer. In this example, work count values ​​M=1, 2, 3, and 4 represent parts replenishment tasks (PA1), (PA2), (PA3), and (PA4), respectively. In step S304, the calculation unit 31 increments the work count value M by 1. As a result, the work count value M becomes 1, and parts replenishment task (PA1) is set.

[0081] In step S305, the calculation unit 31 resets the worker count value N, which counts workers other than the target worker A, to 0. In step S306, the calculation unit 31 increments the worker count value N by 1. As a result, the worker count value N becomes 1, and worker B is set.

[0082] In step S307, the calculation unit 31 obtains the execution period for the Mth parts replenishment operation. This execution period is pre-stored in the storage unit 32, and the calculation unit 31 obtains it from the storage unit 32. Alternatively, the calculation unit 31 obtains the execution period indicated by the work instruction list L from the work instruction list L.

[0083] In step S308, the calculation unit 31 obtains the waiting period for the Nth worker based on the worker's work instruction list L. The waiting period is the period during which the worker waits for the start of the next scheduled parts replenishment work without performing the parts replenishment work.

[0084] In step S309, the calculation unit 31 obtains the overlap period between the execution period of the Mth parts replenishment operation and the waiting period of the Nth worker. In this example, the overlap period between the execution period Tsa1~Tea1 of the Mth parts replenishment operation (PA1) and the waiting time Tfb1~Tsb2 of the Nth worker B is obtained. However, since these do not overlap, the overlap period is zero.

[0085] In step S310, the calculation unit 31 determines whether the estimated work time To for the Mth part replenishment operation is less than or equal to the overlap period. In this example, since the overlap period is 0, it is determined that the estimated work time To is not less than or equal to the overlap period (resulting in "NO" in step S310).

[0086] In step S311, the calculation unit 31 determines whether the worker count value N has reached the maximum value Nx. In this example, the worker count value N is 1. Also, as will be shown later, there are 5 workers A to E, and the maximum value Nx is 5. Therefore, in step S311, it is determined to be "NO", and the process returns to step S306.

[0087] Then, steps S306 to S309 are executed in the same manner as above, and the overlap period between the executable period for the Mth parts replenishment operation and the waiting period for the Nth worker is obtained. In this example, the overlap period Tfc1 to Tea1 between the executable period Tsa1 to Tea1 of the Mth parts replenishment operation (PA1) and the waiting period Tfc1 to Tsc2 of the Nth worker C is obtained.

[0088] In step S310, the calculation unit 31 determines whether the estimated work time To for the Mth parts replenishment operation is less than or equal to the overlap period. In this example, the estimated work time To for the parts replenishment operation (PA1) is 2 minutes, while the overlap period Tfc1 to Tea1 is 1 minute. Therefore, it is determined that the estimated work time To is not less than or equal to the overlap period Tfc1 to Tea1 (resulting in "NO" in step S310).

[0089] Then, if "NO" is determined in step S311, the process returns to step S306. In this way, steps S307 to S310 are repeated, switching workers, until the worker count value N reaches its maximum value Nx and "YES" is determined in step S311.

[0090] Furthermore, if "YES" is determined in step S311, the process proceeds to step S312. In step S312, the calculation unit 31 determines whether the work count value M has reached the maximum value Mx. The number of parts replenishment tasks (PA1) to (PA4) assigned to the target worker A is 4, and the maximum value Mx is 4. If it is determined that the work count value M has not reached the maximum value Mx, the process returns to step S304. In step S304, the work count value M is incremented by 1, and the parts replenishment task is switched. Steps S304 to S311 are then repeated until the work count value M reaches the maximum value Mx (until "YES" is determined in step S312).

[0091] In this way, a determination process (steps S307 to S310) is executed to determine whether the execution period of the Mth task is less than or equal to the overlap period, by calculating the overlap period between the execution period of the Mth task and the waiting period of the Nth worker. This determination process is repeated while changing the combination (M,N) of the parts replenishment task assigned to worker A (the Mth parts replenishment task) and the worker other than worker A (the Nth worker) to whom the parts replenishment task is assigned (in other words, the destination).

[0092] In the example in Figure 9B, when the work count value M is 2 and worker C is set, and the worker count value N is 2 and the parts replenishment work (PA2) is set, the result in step S310 is "YES". In other words, the overlap period Tfc1~Tsc2 between the executable period Tsa2~Tea2 of the Mth parts replenishment work (PA2) and the waiting time Tfc1~Tsc2 of the Nth worker C is obtained. The estimated work time To for the parts replenishment work (PA2) is 2 minutes, while the overlap period Tfc1~Tsc2 is 2 minutes. Therefore, the estimated work time To is determined to be less than or equal to the overlap period Tfc1~Tea1 (resulting in "YES" in step S310), and the process proceeds to step S313.

[0093] In step S313, the calculation unit 31 decides to assign the Mth part replenishment task (PA2) to the Nth worker C and execute it during the overlap period Tfc1 to Tsc2, and updates the work instruction list LC as shown in Figure 9B. Additionally, the work instruction list L for worker A is updated to the work instruction list LA in Figure 9C, which is obtained by removing the part replenishment task (PA2) from the work instruction list LA in Figure 9B.

[0094] If, for all combinations (M,N), no estimated work time To is found that is less than or equal to the overlap period, and the work count value M reaches its maximum value Mx (if "YES" is found in step S312), the process proceeds to step S401 in Figure 8B. Next, Figure 8B will be explained using Figures 10A to 10C.

[0095] Figures 10A to 10C schematically illustrate examples of operations performed based on the latter half of the third example of work assignment control in Figure 8B. Figure 10A shows the work instruction lists LA and LB for workers A and B at the current time, generated according to the progress after the start of circuit board production, in time chart format. Figure 10B shows the provisional work instruction list LB for worker B in time chart format when each of worker A's multiple parts replenishment tasks is assigned to worker B. Figure 10C shows the required margin for each combination of tasks assigned to worker A and the assignment destinations of those tasks, in table format.

[0096] In step S401, the calculation unit 31 resets the work count value M, which counts the multiple parts replenishment tasks (PA1), (PA2), (PA3), and (PA4) assigned to the target worker A, to 0. In step S402, the calculation unit 31 increments the work count value M by 1. As a result, the work count value M becomes 1, and parts replenishment task (PA1) is set.

[0097] In step S403, the calculation unit 31 resets the worker count value N, which counts workers other than the target worker A, to 0. In step S404, the calculation unit 31 increments the worker count value N by 1. As a result, the worker count value N becomes 1, and worker B is set.

[0098] In step S405, the calculation unit 31 provisionally assigns the Mth part replenishment task to the Nth worker. Therefore, in this example, the Mth part replenishment task (PA1) is provisionally assigned to the Nth worker, B. This provisionally changes the assignment of the part replenishment task (PA1) from worker A to worker B (provisional assignment change). As a result, the part replenishment task (PA1) is provisionally added to worker B's work instruction list LB shown in Figure 10A.

[0099] In step S406, the execution order of the parts replenishment tasks (PB1), (PB2), and (PA1) indicated in the provisional work order list LB is sorted so that each task fits within its respective execution period. As a result, the provisional work order list LB shown in the first row of Figure 10B, "When PA1 is assigned," is generated. This provisional work order list LB indicates that the parts replenishment tasks (PA1), (PB1), and (PB2) will be executed in the order in which they are performed. Parts replenishment task (PA1) is executed during its execution period Tsa1 to Tea1, parts replenishment task (PB1) is executed during its execution period Tsb1 to Teb1, and parts replenishment task (PB2) is executed during its execution period Tsb2 to Teb2.

[0100] If the sorting is successful (YES in step S407), the arithmetic unit 31 executes steps S409 to S410. In steps S409 to S410, the arithmetic unit 31 performs the same calculations as in steps S202 to S203 described above.

[0101] In other words, in step S409, the calculation unit 31 calculates a margin for each of the parts replenishment tasks (PA1), (PB1), and (PB2) indicated in the provisional work instruction list LB. As a result, three margins (1 minute, 1 minute, and 2 minutes) are calculated for the three parts replenishment tasks (PA1), (PBa), and (PB2) in the provisional work instruction list LB.

[0102] In step S410, the calculation unit 31 calculates the minimum margin (1 minute) from the three margins obtained for the provisional work instruction list LB and stores this minimum margin in memory. As a result, as shown in Figure 10C by the row for "PA1" and the column for "Assigned to worker B", the minimum margin when the parts replenishment work (PA1) is assigned to worker B is calculated to be 1 minute and stored in memory.

[0103] In step S411, the calculation unit 31 determines whether the worker count value N has reached the maximum value Nx. If the worker count value N is less than the maximum value Nx (if the result in step S411 is "NO"), the process returns to step S404. As a result, the worker count value N is incremented by 1, and the worker is changed. Then, steps S405 to S407 are executed again.

[0104] Steps S405 to S407 are repeated until the worker count value N reaches the maximum value Nx. As a result, the minimum margin is calculated for each of the workers A to D. Specifically, as shown in the "PA1" row of Figure 10C, the minimum margins (1 minute, 0 minutes, 1 minute, 0 minutes) are calculated when the parts replenishment work (PA1) is provisionally assigned to each of the workers B to E.

[0105] When the worker count value N reaches the maximum value Nx, it is determined whether the work count value M has reached the maximum value Mx (step S412). In this example, the work count value M is 1, which is less than the maximum value Mx, so it is determined to be "NO" in step S412, and the process returns to step S402. Therefore, the work count value M is incremented by 1, and the worker is changed from worker A to worker B. Then, steps S403 to S407 and S409 to S411 are executed similarly for worker B. As a result, as shown in the row labeled "PA2" in Figure 10C, the minimum margins (0 minutes, 0 minutes, 2 minutes, 1 minute) when the parts replenishment work (PA2) is provisionally assigned to workers B to E are calculated.

[0106] Then, steps S402-S407 and S409-S411 are repeated until the work count value M reaches its maximum value Mx (until "YES" is obtained in step S412). As a result, the minimum margin is calculated for each of the parts supply operations (PA1), (PA2), (PA3), PA4) assigned to workers B, C, D, and E. In other words, the minimum margin is calculated for each combination (M,N) of the work count value M and the worker count value N.

[0107] Incidentally, there are cases where sorting the execution order of the parts supply operations so that the multiple parts supply operations indicated in the provisional work instruction list L fit within their respective execution periods fails (NO in step S407). Combinations that fail to sort in this way (M,N) are excluded from the calculation of the minimum margin (step S408). Then, steps S409 to S410 are skipped, and the process proceeds to step S411.

[0108] When the work count value M reaches the maximum value Mx (YES in step S412), the calculation unit 31 determines whether it has succeeded in calculating the minimum margin (step S413). In other words, if a minimum margin has been calculated for one or more of the (M × N) combinations (M,N), it is determined that the calculation of the minimum margin has been successful (YES in step S413). The calculation unit 31 then identifies the combination (M,N) for which the minimum margin of the maximum value was calculated from the calculated minimum margins, and determines the assignment of parts replenishment work based on that combination (M,N) (step S414). In other words, it is decided to assign the Mth parts replenishment work related to the combination (M,N) from among the multiple parts replenishment work (PA1) to (PA4) that were assigned to worker A to the Nth worker related to that combination (M,N). In the example in Figure 10C, it is determined that the worker assigned to the parts replenishment task (PA2) will be changed from worker A to worker D, according to the combination (M,N) for which the maximum minimum margin (2 minutes) was calculated.

[0109] On the other hand, if the calculation of the minimum margin fails for all (M × N) combinations (M,N) (i.e., "NO" in step S413), the process proceeds to step S415. In step S415, the calculation unit 31 causes the UI 33 to issue an error notification. For example, the calculation unit 31 displays an error on the UI 33's display indicating that the parts replenishment work (PA4) indicated by the work instruction list LA cannot be performed within the period during which the parts replenishment work (PA4) can be performed.

[0110] In the third example of work assignment control described above, a work instruction list L showing the completion deadline Te for each of the multiple parts replenishment tasks assigned to the worker is obtained for each of the multiple workers A to E. In addition, for each of the multiple parts replenishment tasks (PA1) to (PA4) shown in the work instruction list L, an estimated completion time Tf, which is the time when worker A will complete the task, is estimated (step S301). If it is determined that there is a task among the multiple parts replenishment tasks (PA1) to (PA4) assigned to worker A whose estimated completion time Tf will be delayed from the completion deadline Te ("YES" in step S302), it is determined whether there is a changeable task among the multiple tasks (PA1) to (PA4) assigned to worker A that workers B to E can complete by the completion deadline Te (steps S304 to S310, S402 to S413). As a result, if it is determined that there are modifiable tasks (YES in step S310 or step S413), the assignment of the modifiable tasks is changed from worker A to another worker. In this way, it is determined whether there are any of the multiple parts replenishment tasks (PA1) to (PA4) assigned to worker A whose estimated completion time Tf will be delayed beyond the deadline time Te. If such parts replenishment tasks exist, the assignment of the modifiable task among the multiple parts replenishment tasks (PA1) to (PA4) is changed from worker A to another worker. As a result, when having worker A perform the multiple parts replenishment tasks (PA1) to (PA4) assigned to worker A, it becomes possible to appropriately respond to delays in the progress of the work by worker A.

[0111] Furthermore, the work instruction list L indicates the start deadline Ts for at least some of the multiple parts replenishment tasks (PA1) to (PA4), and requests that the tasks be performed within the execution period from the start deadline Ts to the end deadline Te. In response, the calculation unit 31, when the assignment of a changeable task is changed to another worker, determines that the other worker can perform the task with an execution period within that period (YES in step S310 or step S413), and changes the assignment of the changeable task to the other worker (steps S313, S414). With this configuration, even if the parts replenishment task indicated in the work instruction list L has an execution period, the assignment of the task from worker A to another worker can be appropriately changed.

[0112] Furthermore, if a modifiable task has an execution period, the calculation unit 31 determines whether the modifiable task can be executed during the overlapping period between the waiting period (when another worker, different from worker A, waits to perform the parts replenishment task) and the execution period (step S310). If the calculation unit 31 determines that the modifiable task can be executed during the overlapping period (YES in step S310), it decides to change the assignment of the modifiable task to another worker and have the modifiable task performed during the overlapping period (step S313). With this configuration, the assignment of parts replenishment tasks from worker A to other workers can be appropriately changed without affecting the execution of parts replenishment tasks that have been assigned to other workers.

[0113] Furthermore, if the calculation unit 31 determines that the changeable work cannot be performed during the overlapping period (if the answer is "NO" in step S310), it determines whether there are changeable work tasks for multiple other workers different from worker A (steps S404-S407, S411). If it determines that there are changeable work tasks for multiple other workers (if the answer is "YES" in step S407), it executes the minimum margin calculation process (steps S409-S410). This minimum margin calculation process (steps S409-S410) calculates the grace period for the estimated completion time Tf relative to the end deadline time Te for each of the tasks assigned to the other workers, provided that the changeable work is added as a parts supply task assigned to the other workers and the parts supply task with an execution period is performed within that execution period (step S409). As a result, multiple margins are calculated. The smallest of these multiple margins is then calculated as the minimum margin (step S410). Then, the calculation unit 31 changes the assignment of the changeable task to the worker who has the largest minimum margin among the minimum margins calculated for each of the multiple other workers (Figure 10C) (step S414). In this configuration, the other workers can perform the assigned parts replenishment task with ample margin.

[0114] Furthermore, a UI33 is provided to perform error notification. When the calculation unit 31 determines that there are no changeable tasks (NO in step S413), it causes the UI33 to perform error notification (step S415). With this configuration, the operator can recognize the error and take the necessary action.

[0115] As described above, in this embodiment, workers A, B, ... correspond to an example of a "work entity" of the present invention, parts replenishment work corresponds to an example of a "work" of the present invention, completion deadline times Tea1, Tea2, ... correspond to an example of a "completion deadline" of the present invention, work instruction list L corresponds to an example of a "work plan" of the present invention, calculation unit 31 corresponds to an example of a "plan acquisition unit" of the present invention, estimated completion time Tf corresponds to an example of an "estimated completion time" of the present invention, calculation unit 31 corresponds to an example of a "completion time estimation unit" of the present invention, worker A corresponds to an example of a "work entity" of the present invention, worker B, C, ... correspond to examples of "other work entities" of the present invention, the calculation unit 31 corresponds to an example of the "assignment change determination unit" of the present invention, the management server 3 corresponds to an example of the "work assignment calculation device" of the present invention, the start deadline times Tsa1, Tsa2, ... correspond to examples of "start deadlines" of the present invention, the storage unit 32 corresponds to an example of the "storage unit" of the present invention, the UI 33 corresponds to an example of the "notification unit" of the present invention, the work management program 17 corresponds to an example of the "work assignment calculation program" of the present invention, and the storage unit 32 or an external server computer corresponds to an example of the "recording medium" of the present invention.

[0116] It should be noted that the present invention is not limited to the embodiments described above, and various modifications can be made to those described above without departing from the spirit of the invention. For example, various methods can be considered for obtaining the estimated work time To. Specifically, the estimated work time To may be determined for each type of work and stored in the storage unit 32. In such a configuration, the estimated work time To according to the type of work can be easily estimated.

[0117] Furthermore, the estimated work time To may be calculated for each worker and stored in the storage unit 32. In this case, the actual time required for the worker to perform the corresponding task may be measured as the actual work time, and the estimated work time To stored in the storage unit 32 may be updated based on the actual work time. With this configuration, the estimated work time To can be appropriately estimated based on the worker's actual performance.

[0118] Furthermore, various methods can be considered for calculating the estimated completion time Tf. For example, the estimated travel time required for the worker to move to the work location can be stored in the storage unit 32, and the estimated completion time Tf can be estimated based on the value obtained by adding the estimated travel time to the estimated work time To. In such a configuration, the estimated completion time Tf can be easily estimated based on the estimated travel time stored in the storage unit 32, taking into account the time required for the worker to move.

[0119] Furthermore, the estimated travel time may be calculated for each worker and stored in the memory unit 32. In this case, the time taken by the worker to travel may be measured as the actual travel time, and the estimated travel time stored in the memory unit 32 may be updated based on the actual travel time. With this configuration, the estimated completion time Tf can be appropriately estimated based on the worker's actual performance.

[0120] Furthermore, various tasks can be envisioned for which the above-mentioned period of execution is set, but one such task is the preset operation described in Japanese Patent Publication No. 2024-38828. In other words, the tape feeder described in that publication can be fitted with two component storage tapes. When the tape feeder runs out of components in the first component storage tape, it ejects that tape and starts supplying components from the next component storage tape. The operation of loading a new component storage tape into this tape feeder (present) can only be performed after the first component storage tape has been removed from the tape feeder. Therefore, the preset has a start deadline time Ts. Thus, the period from the start deadline time Ts to the end deadline time Te of the preset becomes the period of execution.

[0121] Furthermore, the types of work are not limited to parts replenishment, but a variety of other tasks are anticipated. In other words, tasks other than splicing, specifically tasks such as preparing and installing tape feeders, can be subject to the above-mentioned work assignment control. Alternatively, tasks such as replenishing solder to the solder printer 12, cleaning the squeegee, or arranging backup pins can be subject to the above-mentioned work assignment control.

[0122] Furthermore, various configurations are possible for the work entity that performs the above tasks. In other words, the work entity may be a group consisting of multiple workers. In this case, each group may be responsible for working in a different zone. Alternatively, the workers may be robots. [Explanation of Symbols]

[0123] 17…Work Management Program 2…Tea 2…Tsa 3…Management Server 31...Arithmetic section 32...Storage section 33…UI A...Worker B...Worker L...Work Instruction List

Claims

1. A plan acquisition unit acquires a work plan for each of the multiple work entities, which shows the completion deadline for each of the multiple tasks assigned to that entity. For each of the multiple tasks indicated in the work plan, a completion time estimation unit estimates the estimated completion time, which is the time when the task entity completes the task. If it is determined that among the multiple tasks assigned to one of the multiple task entities, there is a task whose estimated completion time is delayed beyond the deadline, the assignment change determination unit determines whether there is a changeable task among the multiple tasks assigned to the one task entity that can be completed by the deadline by another task entity different from the one task entity. Equipped with, The assignment change determination unit determines that there is a changeable task, and then the work assignment calculation device changes the assignment of the changeable task from one work entity to the other work entity.

2. If the assignment change determination unit determines that there are multiple other work entities different from the one work entity that can be changed, it executes a minimum margin calculation process. The minimum margin calculation process, when the modifiable task is added as a task assigned to the other task entity, calculates multiple grace periods for each of the tasks assigned to the other task entity by calculating the grace period for the estimated completion time relative to the deadline, and calculates the minimum value of the multiple grace periods as the minimum margin. The work assignment calculation device according to claim 1, wherein the assignment change determination unit changes the assignment of the changeable work to the other work entity from which the largest minimum margin among the minimum margins calculated for each of the plurality of other work entities has been calculated.

3. The work plan specifies a start date for at least some of the tasks and requires that the tasks be performed within the feasible period from the start date to the end date. The work assignment calculation device according to claim 1, wherein the assignment change determination unit changes the assignment of the changeable work to the other work entity, and if the other work entity determines that the work for which an execution period is provided can be executed within the execution period, the assignment of the changeable work to the other work entity.

4. The work assignment calculation device according to claim 3, wherein, if the assignment change determination unit determines that the changeable work is executable during the overlapping period between the waiting period during which the other work entity waits to execute the work and the executable period, the assignment of the changeable work is changed to the other work entity and the changeable work is executed during the overlapping period.

5. If the assignment change determination unit determines that the changeable work cannot be performed during the overlapping period, and determines that the changeable work exists for multiple other work entities different from the one work entity, it executes a minimum margin calculation process. The minimum margin calculation process, when the modifiable task is added as a task assigned to the other task entity, calculates multiple grace periods for each of the tasks assigned to the other task entity under the condition that the task with the set execution period is executed within the execution period, and calculates the minimum value of the multiple grace periods as the minimum margin. The work assignment calculation device according to claim 4, wherein the assignment change determination unit changes the assignment of the changeable work to the other work entity from which the largest minimum margin among the minimum margins calculated for each of the plurality of other work entities has been calculated.

6. The system further includes a storage unit that stores the estimated work time required for each type of work, The work assignment calculation device according to any one of claims 1 to 5, wherein the completion time estimation unit estimates the estimated completion time based on the estimated work time.

7. The storage unit stores the estimated work time for each work entity, The work assignment calculation device according to claim 6, wherein the completion time estimation unit updates the estimated work time stored in the storage unit based on the actual time required by the work entity to perform the work.

8. The memory unit stores the estimated travel time required for the work subject to move to the place where the work is to be performed. The work assignment calculation device according to claim 6, wherein the completion time estimation unit estimates the estimated completion time based on the estimated work time and the estimated travel time.

9. The storage unit stores the estimated travel time for each work entity. The work assignment calculation device according to claim 8, wherein the completion time estimation unit updates the estimated travel time stored in the storage unit based on the actual time it took for the work entity to travel to the place where the work is to be performed.

10. It further includes a notification unit that performs error notification, The work assignment calculation device according to any one of claims 1 to 5, wherein the assignment change determination unit determines that there are no changeable tasks and causes the notification unit to execute the error notification.

11. The work assignment calculation device according to claim 1, wherein the work entity is a person or a robot.

12. The work assignment calculation device according to claim 1, wherein the work entity is a group consisting of multiple people.

13. A process to obtain a work plan for each of the multiple tasks assigned to each task entity, showing the completion deadline for each task, For each of the multiple tasks indicated in the work plan, the process includes estimating an estimated completion time, which is the time when the task is completed by the task entity; If it is determined that among the multiple tasks assigned to one of the multiple task entities, there is a task whose estimated completion time is delayed beyond the deadline, the process involves determining whether there is a modifiable task among the multiple tasks assigned to the one task entity that can be completed by the deadline by another task entity different from the one task entity. Equipped with, A work assignment calculation method that, upon determining that a changeable work exists, changes the assignment of the changeable work from one work entity to the other work entity.

14. A process to obtain a work plan for each of the multiple tasks assigned to each task entity, showing the completion deadline for each task, For each of the multiple tasks indicated in the work plan, the process includes estimating an estimated completion time, which is the time when the task is completed by the task entity; If it is determined that among the multiple tasks assigned to one of the multiple task entities, there is a task whose estimated completion time is delayed beyond the deadline, the process involves determining whether there is a modifiable task among the multiple tasks assigned to the one task entity that can be completed by the deadline by another task entity different from the one task entity. Have the computer run it, A work assignment calculation program that, upon determining that such a changeable work exists, changes the assignment of the changeable work from one work entity to the other work entity.

15. A recording medium for recording the work assignment calculation program described in claim 14 in a way that can be read by a computer.

Citation Information

Patent Citations

  • Work management device and work management method

    JP2020035808A