Production scheduling method and device, electronic equipment and computer readable storage medium

By obtaining the order's bill of materials and process tasks, automatically correlating the target station, generating process flow and distributing tasks, the problem of low production efficiency of small batch customized orders is solved, automatic production scheduling is achieved, and production efficiency is improved.

CN119151207APending Publication Date: 2024-12-17GREE ELECTRIC APPLIANCE INC OF ZHUHAI +1
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411167555.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-23
Publication Date
2024-12-17

AI Technical Summary

Technical Problem

The production scheduling efficiency of small and medium-sized batch customized orders in the prior art is low, and manual calculation of production scheduling time and process planning is required.

Method used

By obtaining the bill of materials for the order to be scheduled, determining the process tasks, and correlating them with the target station, generating a process flow, and automatically dispatching process tasks based on the message queue or task scheduling system to achieve automatic production scheduling.

Benefits of technology

This improves the production scheduling efficiency, avoids manual intervention in formulating production scheduling plans for each order, and realizes automated process flow management.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119151207A_ABST
    Figure CN119151207A_ABST
Patent Text Reader

Abstract

The invention provides a production scheduling method and device, electronic equipment and a computer readable storage medium, and the method comprises the steps: obtaining a bill of material corresponding to a to-be-scheduled order from a production system, and determining a plurality of process tasks in the bill of material; associating each process task with the corresponding target station to obtain a process flow corresponding to the order to be scheduled; issuing the process task to a message queue based on the process flow, so that the message queue distributes the process task to a corresponding target station; or the technological process is sent to a task scheduling system, so that the task scheduling system distributes the process task to the corresponding target station. According to the method, the order to be scheduled is divided into the specific process tasks, and the process tasks are associated with the target station to obtain the process flow, so that automatic scheduling of different process tasks can be realized based on the process flow, a scheduling plan does not need to be made manually for each order, and the scheduling efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of product production, and in particular to a production scheduling method, device, electronic equipment and computer-readable storage medium. Background Art

[0002] In the prior art, order scheduling is mostly carried out using a large-scale manufacturing process, that is, setting up a specific production line based on order demand and producing based on the production line; while for small-batch customized orders, the production scheduling time and process planning must be manually recalculated for each order, and the scheduling efficiency is low. Summary of the invention

[0003] The main purpose of the present invention is to propose a production scheduling method, device, electronic device and computer-readable storage medium, aiming to solve the problem of low efficiency in scheduling production for small batch customized orders in the prior art.

[0004] To achieve the above object, the present invention provides a production scheduling method, which comprises the following steps:

[0005] Obtaining a production order to be scheduled, obtaining a bill of materials corresponding to the production order to be scheduled from a production system, and determining a plurality of process tasks in the bill of materials;

[0006] Determine the target workstation corresponding to each of the process tasks;

[0007] Associating each of the process tasks with the corresponding target workstation to obtain the process flow corresponding to the production order to be scheduled;

[0008] When scheduling, the process task is published to the message queue based on the process flow, so that the message queue dispatches the process task to the corresponding target workstation, wherein the target workstation is a consumer of the message queue and subscribes to the corresponding process task;

[0009] Or when scheduling production, the process flow is sent to a task scheduling system so that the task scheduling system dispatches the process tasks to the corresponding target workstations.

[0010] Optionally, associating each of the process tasks with the corresponding target workstation to obtain a process flow corresponding to the production order to be scheduled includes:

[0011] Obtain the target launch time corresponding to the production order to be scheduled and the execution order and execution time corresponding to each process task;

[0012] Determine the target dispatch time corresponding to each of the process tasks according to the target launch time, the execution order and the execution time;

[0013] The process tasks are associated with the target workstations, and the process flow is generated based on the target dispatch time corresponding to each of the process tasks.

[0014] Optionally, determining the target dispatch time corresponding to each of the process tasks according to the target online time, the execution order and the execution time includes:

[0015] Determine the process path composed of the process tasks according to the execution order;

[0016] Determining a main path and a sub-path in the process path, wherein the main path is a process path with the longest total execution time of the process tasks;

[0017] Taking the target launch time as the start time of the main path, determining the target dispatch time corresponding to the main process task according to the execution time and execution order corresponding to each main process task, wherein the main process task is the process task included in the main path;

[0018] The target dispatch time of the slave process task is determined according to the target dispatch time corresponding to the master process task, wherein the slave process task is the process task included in the slave path.

[0019] Optionally, determining the target dispatch time of the slave process task according to the target dispatch time corresponding to the master process task includes:

[0020] Determining, in the main process task, an associated process task corresponding to the slave path;

[0021] Using the target dispatch time corresponding to the associated process task as the associated dispatch time;

[0022] The associated dispatch time is used as the confluence time of the slave path, and the target dispatch time corresponding to the slave process task is determined according to the execution time corresponding to each of the slave process tasks and the execution order.

[0023] Optionally, the dispatching the process task to the corresponding target workstation based on the process flow includes:

[0024] Determining a process path in the process flow;

[0025] For each of the process tasks, obtaining the completion status of a previous process task in the process path where the process task is located, wherein the execution order of the previous process task in the process path is earlier than that of the process task;

[0026] Determine whether the completion status of the previous process task is completed;

[0027] If the completion status of the previous process task is completed, the process task is dispatched to the corresponding target workstation.

[0028] Optionally, dispatching the process task to the corresponding target workstation includes:

[0029] Obtaining the idle state of the target workstation, and determining whether the idle state of the target workstation is idle;

[0030] If the idle state of the target workstation is idle, the process task is dispatched to the corresponding target workstation.

[0031] Optionally, dispatching the process task to the corresponding target workstation includes:

[0032] Determine the target material corresponding to the process task, and obtain the material allocation information of the target workstation;

[0033] Determining whether the target workstation has been equipped with the target material according to the material equipment information;

[0034] If the target workstation is already equipped with the target material, the process task is dispatched to the corresponding target workstation.

[0035] Optionally, the dispatching the process task to the corresponding target workstation based on the process flow includes:

[0036] receiving a process adjustment instruction, and updating the process flow based on the process adjustment instruction;

[0037] The process tasks are dispatched to the corresponding target workstations based on the updated process flow.

[0038] Optionally, updating the process flow based on the process adjustment instruction includes:

[0039] Obtaining order insertion information corresponding to the process adjustment instruction;

[0040] Determine the occupied time corresponding to the order insertion information;

[0041] Obtaining the target dispatching time corresponding to the process tasks that have not been dispatched in the process flow;

[0042] The target dispatch time is delayed based on the occupied time to update the target dispatch time of the process task.

[0043] Optionally, the dispatching the process task to the corresponding target workstation based on the process flow includes:

[0044] When the process task is executed at the target workstation, monitoring the operating status of the target workstation;

[0045] If the target workstation fails, determining an alternative workstation of the same type as the target workstation;

[0046] When the alternative workstation is idle, the process task is dispatched to the alternative workstation.

[0047] Optionally, the method further comprises:

[0048] When scheduling production, the production status of each process task is monitored;

[0049] Determine whether production scheduling abnormality occurs according to the production status;

[0050] If a production scheduling anomaly occurs, the execution and dispatch of all the process tasks will be stopped.

[0051] To achieve the above object, the present invention further provides a production scheduling device, the production scheduling device comprising:

[0052] A first acquisition module is used to acquire a production order to be scheduled, acquire a bill of materials corresponding to the production order to be scheduled from a production system, and determine a plurality of process tasks in the bill of materials;

[0053] A first determination module is used to determine the target workstation corresponding to each process task;

[0054] A first generating module is used to associate each of the process tasks with the corresponding target workstation to obtain a process flow corresponding to the production order to be scheduled;

[0055] The first dispatching module is used to publish the process task to the message queue based on the process flow when scheduling production, so that the message queue dispatches the process task to the corresponding target workstation, wherein the target workstation is a consumer of the message queue and subscribes to the corresponding process task; or send the process flow to the task scheduling system when scheduling production, so that the task scheduling system dispatches the process task to the corresponding target workstation.

[0056] To achieve the above objectives, the present invention also provides an electronic device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program implements the steps of the production scheduling method described above when executed by the processor.

[0057] To achieve the above objectives, the present invention further provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the production scheduling method described above are implemented.

[0058] The present invention proposes a production scheduling method, device, electronic device and computer-readable storage medium, which obtains a production order to be scheduled, obtains a bill of materials corresponding to the production order to be scheduled from a production system, and determines multiple process tasks in the bill of materials; determines the target workstation corresponding to each process task; associates each process task with the corresponding target workstation to obtain the process flow corresponding to the production order to be scheduled; when scheduling, based on the process flow, publishes the process task to a message queue so that the message queue dispatches the process task to the corresponding target workstation, wherein the target workstation is a consumer of the message queue and subscribes to the corresponding process task; or when scheduling, sends the process flow to a task scheduling system so that the task scheduling system dispatches the process task to the corresponding target workstation. By splitting the production order to be scheduled into specific process tasks and associating the process tasks with the target workstation to obtain the process flow, it is possible to realize automatic scheduling of different process tasks based on the process flow, without manually formulating a production scheduling plan for each order, thereby improving the scheduling efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.

[0060] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0061] One or more embodiments are exemplarily described by pictures in the corresponding drawings, and these exemplified descriptions do not constitute limitations on the embodiments. Elements with the same reference numerals in the drawings represent similar elements, and unless otherwise stated, the figures in the drawings do not constitute proportional limitations.

[0062] Figure 1 It is a schematic diagram of the flow chart of the first embodiment of the production scheduling method of the present invention;

[0063] Figure 2 A schematic diagram of the process flow in the production scheduling method of the present invention;

[0064] Figure 3It is a structural schematic diagram of the process flow in the production scheduling method of the present invention;

[0065] Figure 4 A schematic diagram of dispatching process tasks in the production scheduling method of the present invention;

[0066] Figure 5 It is a schematic diagram of the module structure of the electronic device of the present invention. DETAILED DESCRIPTION

[0067] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application.

[0068] The disclosure below provides many different embodiments or examples to implement different structures of the present invention. In order to simplify the disclosure of the present invention, the parts and settings of specific examples are described below. Of course, they are only examples, and the purpose is not to limit the present invention. In addition, the present invention can repeat reference numbers and / or letters in different examples. This repetition is for the purpose of simplification and clarity, and does not itself indicate the relationship between the various embodiments and / or settings discussed.

[0069] It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention. In order to enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only embodiments of a part of the present application, not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without making creative work should fall within the scope of protection of the present application.

[0070] The present invention provides a production scheduling method, referring to Figure 1 , Figure 1 This is a flow chart of a first embodiment of a production scheduling method of the present invention, wherein the method comprises the following steps:

[0071] Step S10, obtaining the order to be scheduled, obtaining the bill of materials corresponding to the order to be scheduled from the production system, and determining multiple process tasks in the bill of materials;

[0072] See also Figure 2, the orders to be scheduled are the orders that need to be scheduled; the orders to be scheduled are sent to the internal system of the enterprise after being triggered by the customer system; if the internal system of the enterprise sets up a CRM (Customer Relationship Management) system, the CRM system establishes a connection with the customer system, and after the customer system triggers the order to be issued, the CRM system receives the orders to be scheduled; at the same time, the internal system also has an ERP (Enterprise Resource Planning) system, and the ERP system collects, processes and stores the orders to be scheduled received by the CRM system.

[0073] The production scheduling device establishes a connection with the ERP system; specifically, it can establish a connection with the ERP system through the SOAP API (Simple Object Access Protocol), thereby realizing data exchange with the ERP system and obtaining the production orders to be scheduled from the ERP system; at the same time, based on the SOAP API, the integrity and consistency of the data can be guaranteed.

[0074] In other embodiments, data can also be exchanged with the ERP system through message queues; for example, the ERP system acts as a producer of the message queue to produce orders to be scheduled; the scheduling device acts as a consumer of the message queue and subscribes to the orders to be scheduled. When the ERP system issues the orders to be scheduled, the scheduling device receives the orders to be scheduled through the message queue.

[0075] After the scheduling device receives the production order to be scheduled, the technician can view the production order in the production system; the production system is such as the PLM (Product Lifecycle Management) system and the MPM (Manufacturing Process Management) system; the technician performs product production design based on the customized requirements or machine model of the production order to be scheduled and obtains the bill of materials BOM, which indicates the specific information of the product production, such as design drawings, production guidance documents, raw materials, parts, components, process tasks, execution order, execution time, etc.

[0076] After the BOM design is completed, the BOM corresponding to the production order to be scheduled can be obtained from the production system, and the BOM contains process tasks, so the corresponding process tasks can be obtained from the BOM. The process task is a single process for producing the product corresponding to the production order to be scheduled; it can be understood that the production of a product requires the execution of multiple process tasks in sequence; the type and execution method of the specific process task can be set based on the actual needs of the product, such as process tasks can include parts production, assembly, testing, etc.

[0077] Step S20, determining the target workstation corresponding to each process task;

[0078] In response to the needs of different steps in production, different types of workstations will be set up in the factory, such as workstations for parts production, workstations for assembly, workstations for testing, etc.; after the process task is determined, the target process type of the process task can be known, and the target process type and the type of workstation are set correspondingly. Therefore, the target workstation corresponding to the process task can be found through the target process type; the target workstation is the workstation that can execute the process task; specifically, based on the workstation type, a corresponding relationship list between the process type and the target workstation can be established in advance, that is, the workstation type of the target workstation is consistent with the corresponding process type; after the process task is determined, the target workstation that matches the target process type can be found in the relationship list.

[0079] In actual applications, the correspondence between specific types of process tasks and workstations can be set in advance. When it is necessary to determine the target workstation, it can be matched directly by the type of process task.

[0080] Step S30, associating each of the process tasks with the corresponding target workstation to obtain the process flow corresponding to the production order to be scheduled;

[0081] The process flow is the complete process for producing the products corresponding to the orders to be scheduled. It can be understood that the products corresponding to the orders to be scheduled are produced based on the execution of process tasks, and the process tasks are specifically executed at the target workstations. Therefore, through the process tasks and the target workstations, a process flow that reflects the specific production plan of the product can be obtained.

[0082] Step S40, when scheduling, publishing the process task to the message queue based on the process flow, so that the message queue dispatches the process task to the corresponding target workstation, wherein the target workstation is a consumer of the message queue and subscribes to the corresponding process task;

[0083] Or when scheduling production, the process flow is sent to a task scheduling system so that the task scheduling system dispatches the process tasks to the corresponding target workstations.

[0084] When the production order is officially scheduled, the process tasks are distributed through the generated process flow to ensure that each process task is executed at the corresponding target workstation. When all process tasks in the process flow are completed, the production of the product corresponding to the production order is completed.

[0085] In this embodiment, the process tasks are dispatched specifically by means of a message queue or a task scheduling system; the message queue includes but is not limited to RabbitMQ and Kafka; the task scheduling system includes but is not limited to Apache Airflow and Celery.

[0086] In the message queue application, the production scheduling device is the producer of the message queue, and each workstation is the consumer of the message queue; the production scheduling device can publish each process task to the message queue, and the specific target workstation can subscribe to its corresponding process task in the message queue. When the target workstation can receive the process task, the message queue will dispatch the corresponding process task to the target workstation based on the subscription of the target workstation.

[0087] In the application of the task scheduling system, the production scheduling device sends the process flow to the task scheduling system; since the process flow contains the association between each process task and the target workstation, the task scheduling system can automatically dispatch the process task to the corresponding target workstation when needed.

[0088] This embodiment splits the orders to be scheduled into specific process tasks, and associates the process tasks with the target workstations to obtain a process flow, thereby enabling automatic scheduling of different process tasks based on the process flow, eliminating the need for manual production scheduling for each order, and improving scheduling efficiency.

[0089] Further, in the second embodiment of the production scheduling method of the present invention proposed based on the first embodiment of the present invention, the step S30 includes the steps of:

[0090] Step S31, obtaining the target online time corresponding to the production order to be scheduled and the execution order and execution time corresponding to each process task;

[0091] Step S32, determining the target dispatch time corresponding to each of the process tasks according to the target online time, the execution order and the execution time;

[0092] Step S33, associating the process tasks with the target workstations, and generating the process flow based on the target dispatch time corresponding to each process task.

[0093] The target launch time is the expected start time of production for the order to be scheduled.

[0094] The execution order refers to the arrangement of process tasks in the process flow. It is understandable that for the process tasks corresponding to the same product, there is a sequence in the execution steps. For example, if a product contains multiple parts and the parts are made of materials, the parts need to be made from the materials first, and then the parts are assembled to obtain the product. Obviously, the process task of making parts needs to be executed before the process task of assembling parts. The execution order of specific process tasks can be set based on the actual product production requirements.

[0095] Execution time refers to the time required to execute a process task. Different process tasks have different execution times, which can be set based on actual production needs.

[0096] The target dispatch time is the time for dispatching specific process tasks, that is, when the target dispatch time is reached, the corresponding process task will be dispatched to the target workstation for execution.

[0097] It can be understood that the target online time determines the overall execution time of the process flow, while the execution order and execution time determine the execution time of specific process tasks in the process flow. Therefore, the target online time, execution order and execution time can determine the time plan of the process flow.

[0098] If the process flow includes 5 consecutively executed process tasks, and the execution time corresponding to each process task is 200 unit time; then after the target online time is determined, the first process task is dispatched to the corresponding target workstation at the target online time, and the second process task is dispatched to the corresponding target workstation after the first process task is completed, that is, 200 unit time after the target online time is pushed back, and so on. The fifth process task is dispatched to the corresponding target workstation after the fourth process task is completed, that is, 200×4=800 unit time after the target online time is pushed back; after the fifth process task is completed, the process flow is completed.

[0099] Furthermore, the step S32 includes the steps of:

[0100] Step S321, determining the process path of the process task composition according to the execution order;

[0101] Step S322, determining a main path and a sub-path in the process path, wherein the main path includes a process path with the longest total execution time of the process tasks;

[0102] Step S323, taking the target online time as the start time of the main path, and determining the target dispatch time corresponding to the main process task according to the execution time and the execution order corresponding to each main process task, wherein the main process task is the process task included in the main path;

[0103] Step S324, determining the target dispatch time of the slave process task according to the target dispatch time corresponding to the master process task, wherein the slave process task is the process task included in the slave path.

[0104] The process path is a flow consisting of consecutive process tasks; see Figure 3 , Figure 3 It includes process 1, process 2, process 3, process 4, process 5, process a, and process b; among them, process 1 to process 5 are continuously connected, and process a, process b, and process 5 are continuously connected; however, since process b and process 4 are both located before process 5, they do not meet the requirement of continuous connection between the front and the back. Therefore, process 1 to process 5 constitute a process path, and process a, process b, and process 5 constitute a process path.

[0105] If the process tasks only constitute one process path, the target online time is used as the starting time of the process path to determine the target dispatch time corresponding to each process task.

[0106] If the process tasks constitute multiple process paths, it is necessary to determine the dispatch time of the process tasks on different process paths respectively; it is understandable that the process path with the longest total execution time indicates the overall execution time of the process flow, and the execution time of other process paths must be less than the longest process path; therefore, in this embodiment, after determining multiple process paths, the total execution time of each process path is calculated respectively, and the total execution time is the sum of the execution time of the process tasks included in the process path, and the process path with the longest total execution time is used as the main path, and the other process paths are used as slave paths; for example, the total execution time of processes 1 to 5 is 1000+x time units, and the total execution time of processes a, b, and 5 is 800+x time units. Obviously, the total execution time of the process path of processes 1 to 5 is the longest. Therefore, the process path of processes 1 to 5 is used as the main path, and the process path of processes a, b, and 5 is used as the slave path, where x is the execution time of process 5.

[0107] Since the main path reflects the overall execution time of the process flow, the target online time is used as the starting time of the process path, and the target dispatch time of the process tasks can be determined based on the execution order and execution time of the included process tasks.

[0108] It can be understood that since the total execution time of the slave path is less than that of the main path, the target dispatch time of the process task in the slave path must be within the overall execution time of the main path. Therefore, after the target dispatch time of the process task in the main path is determined, the target dispatch time of the process task in the slave path can be determined based on the target dispatch time of the main process task.

[0109] Furthermore, the step S324 includes the steps of:

[0110] Step S3241, determining the associated process task corresponding to the slave path in the main process task;

[0111] Step S3242, using the target dispatch time corresponding to the associated process task as the associated dispatch time;

[0112] Step S3243, using the associated dispatch time as the confluence time of the slave path, and determining the target dispatch time corresponding to the slave process task according to the execution time corresponding to each slave process task and the execution order.

[0113] The associated process task is a process task that exists in both the main path and the sub-path. Figure 3 In the example, process 5 is an associated process task.

[0114] It can be understood that, since process 5 exists in the main path, the target dispatch time of process 5 can be determined first based on the determination method of the main path, and the target dispatch time of process 5 is also applied to the slave path, that is, the associated dispatch time; therefore, the target dispatch time corresponding to other process tasks in the slave path can be determined based on the target dispatch time of process 5; if the sum of the execution time of processes 1 to 4 in the main path is 1000 unit time, then the target dispatch time of process 5 is the target online time postponed by 1000 unit time, and the target dispatch time of process 5 is the end time of process b, that is, the confluence time. At this time, the sum of the execution time of processes a and b is 800 unit time, then the target dispatch time of process a is the target dispatch time of process 5 800 unit time ahead of time, that is, the target online time is postponed by 1000-800=200 unit time, and the target dispatch time of process b is the target dispatch time of process a delayed by the execution time of process a.

[0115] Furthermore, some production scheduling orders may contain parallel execution processes; this is reflected in the main path and the slave path, where there are two associated process tasks between the main path and the same slave path; it can be understood that since the main path is the process path with the longest total execution time, the execution time of the part of the main path between the two associated process tasks must be greater than or equal to the execution time of the slave path; and no matter which associated process is used as the time reference, the execution of each process task in the slave path falls between the two associated process tasks; therefore, in this case, any associated process task can be selected, and the target dispatch time corresponding to the associated process task can be used as the associated dispatch time to determine the target dispatch time corresponding to each process task in the slave path.

[0116] In this embodiment, the target dispatching time of different process tasks can be accurately determined.

[0117] Further, in a third embodiment of the production scheduling method of the present invention proposed based on the first embodiment of the present invention, step S40 includes the steps of:

[0118] Step S41, determining a process path in the process flow;

[0119] Step S42, for each of the process tasks, obtaining the completion status of the previous process task in the process path where the process task is located, wherein the execution order of the previous process task in the process path is earlier than that of the process task;

[0120] Step S43, determining whether the completion status of the previous process task is completed;

[0121] Step S44: if the completion status of the previous process task is completed, the process task is dispatched to the corresponding target workstation.

[0122] There are certain execution conditions when executing a process task. When the execution conditions are met, the process task can be dispatched to the target workstation for execution. If the execution conditions are not met, it is necessary to wait until the execution conditions are met before the process task can be dispatched to the target workstation for execution.

[0123] For example, for the main path, process 1, process 2, process 3, process 4, and process 5 are executed in sequence, process 1 is the previous process task of process 2, process 1 and process 2 are the previous process tasks of process 3... process 1, process 2, process 3, and process 4 are the previous process tasks of process 5; that is, process 2 needs to wait for process 1 to be completed before it can be executed, and so on, process 5 needs to wait for process 1, process 2, process 3, and process 4 to be completed before it can be executed; similarly, for the slave path, process a is the previous process task of process b, process a and process b are the previous process tasks of process 5, and process a, process b, and process 5 are executed in sequence, that is, process b needs to be executed after process a is completed, and process 5 needs to be executed after process a and process b are completed; since process 5 is located on both the main path and the slave path, process 5 is constrained by both process paths, that is, process 5 needs to wait for process 1, process 2, process 3, process 4, process a, and process b to be completed before it can be executed.

[0124] See also Figure 5In specific applications, the process tasks can be set in the task pool, and the execution conditions of each process task can be judged. When the process task meets the execution conditions, the process task is dispatched to the target workstation; in this embodiment, the execution condition is set to the completion status of the previous process task, and other execution conditions can also be set, such as the allocation of target materials and the idleness of the target workstation described later. Different execution conditions can be combined for judgment. When all the execution conditions are met, the process task is dispatched to the target workstation. For example, when the previous process tasks are completed, the target workstation is equipped with the target material, and the target workstation is idle, the process task is dispatched to the target workstation.

[0125] Furthermore, the step S44 comprises the steps of:

[0126] Step S441, obtaining the idle state of the target workstation, and determining whether the idle state of the target workstation is idle;

[0127] Step S442: if the idle state of the target workstation is idle, the process task is dispatched to the corresponding target workstation.

[0128] In this embodiment, the idle state of the target workstation is used as an execution condition for dispatching the process task.

[0129] It can be understood that the target workstation has a limited number of process tasks that can be processed simultaneously; the idle state of the target workstation indicates whether the target workstation can undertake new process tasks; when the idle state of the target workstation is idle, it means that the target workstation can undertake new process tasks, and therefore, the process tasks can be dispatched to this target workstation; and when the idle state of the target workstation is non-idle, it means that the target workstation cannot undertake new process tasks, and therefore, the process tasks cannot be dispatched to this target workstation.

[0130] Furthermore, the step S44 comprises the steps of:

[0131] Step S443, determining the target material corresponding to the process task, and obtaining the material allocation information of the target workstation;

[0132] Step S444, judging whether the target workstation has been equipped with the target material according to the material equipment information;

[0133] Step S445: if the target workstation is already equipped with the target material, the process task is dispatched to the corresponding target workstation.

[0134] In this embodiment, the allocation status of the target material is used as the execution condition for dispatching the process task.

[0135] It is understandable that some process tasks have material requirements, such as the process task of part manufacturing requires the target material, the raw material of the part; the material configuration information indicates the configuration status of the target material in the target workstation; specifically, a line-side warehouse can be set at the target workstation, and the line-side warehouse is the location for storing materials in the target workstation, and the material configuration information indicates the relevant information of the materials stored in the line-side warehouse; if the material configuration information indicates that the target workstation is equipped with the target material, the process task can be executed at the target workstation, and therefore, the process task is assigned to the target workstation; if the material configuration information indicates that the target workstation is not equipped with the target material, the process task cannot be executed at the target workstation temporarily, and it is necessary to wait for the target workstation to be equipped with the target material, and therefore, the process task is returned to the task pool.

[0136] It should be noted that some process tasks do not require additional materials when executed. In this case, it is not necessary to determine the target material for the corresponding target workstation.

[0137] In this embodiment, process tasks can be dispatched based on set execution conditions, thereby improving the flexibility of the process flow.

[0138] Further, in a fourth embodiment of the production scheduling method of the present invention proposed based on the first embodiment of the present invention, step S40 includes the steps of:

[0139] Step S45, receiving a process adjustment instruction, and updating the process flow based on the process adjustment instruction;

[0140] Step S46: dispatching the process tasks to the corresponding target workstations based on the updated process flow.

[0141] The process adjustment instruction indicates the adjustment of the originally determined process flow; it is understandable that in production, there are some events that make it impossible to execute completely according to the determined process flow; such as the insertion of an emergency order, the failure of a machine in a target workstation, production anomalies, or modifications to the process flow; therefore, in this embodiment, the process flow is updated based on different adjustment scenarios, so that the process flow can respond to changes in production in a timely manner and always match the actual production scenario.

[0142] Furthermore, the step S45 comprises the steps of:

[0143] Step S451, obtaining order insertion information corresponding to the process adjustment instruction;

[0144] Step S452, determining the occupied time corresponding to the order insertion information;

[0145] Step S453, obtaining the target dispatching time corresponding to the process task that has not been dispatched in the process flow;

[0146] Step S454, delaying the target dispatch time based on the occupied time to update the target dispatch time of the process task.

[0147] In this embodiment, the process flow is updated for the insertion of urgent orders.

[0148] The order insertion information indicates the relevant information of the urgent order. It is understandable that when other orders are inserted, part or even all of the target workstations need to be occupied, which means that the originally scheduled process tasks can only be postponed. The specific delay time of the process tasks needs to be determined based on the situation of the inserted orders. Therefore, it is necessary to determine the occupancy time corresponding to the inserted orders based on the order insertion information, and this occupancy time is reflected in the delay of the process tasks; the occupancy time is the time required for the production of the order corresponding to the order insertion information.

[0149] It is understandable that the process tasks that have been completed and are being processed in the process flow will not be affected by the insertion of urgent orders. Therefore, it is only necessary to delay the undispatched process tasks. Specifically, the target dispatch time of the unfinished process tasks is delayed by the occupied time, and the updated target dispatch time is obtained.

[0150] Specifically, not all target workstations need to be used in the inserted order, that is, the unfinished process tasks in the process flow do not necessarily need to be delayed; therefore, the order insertion information can be used to determine the workstations that need to be occupied, and the occupied sub-time required for each occupied workstation can be determined, and then the workstations among the target workstations corresponding to the undispatched process tasks in the process flow that are the same as the occupied workstations can be determined, and the target dispatching time of the process tasks corresponding to these target workstations can be delayed by the corresponding occupied sub-time, thereby realizing the update of the process flow.

[0151] In the present embodiment, when an order is inserted, the target dispatch time of the specific process task is delayed based on the occupied time of the inserted order, so that the application scenario of the order insertion can be automatically matched.

[0152] Further, in a fifth embodiment of the production scheduling method of the present invention proposed based on the first embodiment of the present invention, step S40 includes the steps of:

[0153] Step S46, when the process task is executed at the target workstation, monitoring the operating state of the target workstation;

[0154] Step S47, if the target workstation fails, determining an alternative workstation of the same type as the target workstation;

[0155] Step S48: when the candidate workstation is idle, dispatch the process task to the candidate workstation.

[0156] If the operating status of the target station fails, the target station cannot complete the execution of the process task; therefore, it is necessary to monitor the operating status of the target station, and when the target station fails, the process task is dispatched to other stations to complete the execution.

[0157] The alternative workstation is of the same type as the target workstation, so the alternative workstation can also execute the process task. When the target workstation fails, the alternative workstation corresponding to the target workstation is determined, and when the alternative workstation is idle, the process task is dispatched to the alternative workstation for continued execution; it can be understood that when a process task is executed, its priority is higher than that of an unexecuted process task. Therefore, when the target workstation fails, the priority of the corresponding process task is raised to the highest level. Once it is detected that the alternative workstation is idle, the process task is dispatched to the alternative workstation.

[0158] This embodiment can allocate a new workstation to the process task in time to continue executing the process task when a target workstation fails.

[0159] Furthermore, the method further comprises:

[0160] Step S50, monitoring the production status of each process task during production scheduling;

[0161] Step S60, judging whether production scheduling abnormality occurs according to the production status;

[0162] Step S70: If a production scheduling anomaly occurs, the execution and dispatch of all the process tasks are stopped.

[0163] In actual applications, production anomalies may also occur, such as serious errors in parts or products, mismatch between process tasks and assigned target workstations, wrong execution order of process tasks, etc. In this case, the execution of all process tasks and the dispatch of subsequent process tasks can be stopped, and execution can continue after the anomaly is checked.

[0164] In other embodiments, the process flow may also be adjusted, such as adjusting the number and type of process tasks, inserting process tasks, canceling process tasks, etc. In this case, the process flow is regenerated based on the adjusted process tasks, and the process tasks are dispatched based on the regenerated process flow.

[0165] It should be noted that, for the aforementioned method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the described order of actions, because according to the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present application.

[0166] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in each embodiment of the present application.

[0167] The present application also provides a production scheduling device for implementing the above production scheduling method, the production scheduling device comprising:

[0168] A first acquisition module is used to acquire a production order to be scheduled, acquire a bill of materials corresponding to the production order to be scheduled from a production system, and determine a plurality of process tasks in the bill of materials;

[0169] A first determination module is used to determine the target workstation corresponding to each process task;

[0170] A first generating module is used to associate each of the process tasks with the corresponding target workstation to obtain a process flow corresponding to the production order to be scheduled;

[0171] The first dispatching module is used to publish the process task to the message queue based on the process flow when scheduling production, so that the message queue dispatches the process task to the corresponding target workstation, wherein the target workstation is a consumer of the message queue and subscribes to the corresponding process task; or send the process flow to the task scheduling system when scheduling production, so that the task scheduling system dispatches the process task to the corresponding target workstation.

[0172] The production scheduling device splits the orders to be scheduled into specific process tasks, and associates the process tasks with the target workstations to obtain the process flow, thereby enabling automatic scheduling of different process tasks based on the process flow, eliminating the need for manual production scheduling plans for each order, and improving scheduling efficiency.

[0173] It should be noted that the first acquisition module in this embodiment can be used to execute step S10 in the embodiment of the present application, the first determination module in this embodiment can be used to execute step S20 in the embodiment of the present application, the first generation module in this embodiment can be used to execute step S30 in the embodiment of the present application, and the first distribution module in this embodiment can be used to execute step S40 in the embodiment of the present application.

[0174] Furthermore, the first generating module includes:

[0175] The first acquisition submodule is used to acquire the target online time corresponding to the production order to be scheduled and the execution order and execution time corresponding to each process task;

[0176] A first determination submodule is used to determine the target dispatch time corresponding to each of the process tasks according to the target online time, the execution order and the execution time;

[0177] The first associating submodule is used to associate the process task with the target workstation and generate the process flow based on the target dispatch time corresponding to each process task.

[0178] Furthermore, the first determining submodule includes:

[0179] A first determining unit, configured to determine a process path of the process task composition according to the execution order;

[0180] A second determining unit is used to determine a main path and a sub-path in the process path, wherein the main path includes a process path with the longest total execution time of the process tasks;

[0181] A third determining unit is used to determine the target dispatching time corresponding to the main process task based on the target launch time as the start time of the main path and the execution time and execution order corresponding to each main process task, wherein the main process task is the process task included in the main path;

[0182] The fourth determining unit is used to determine the target dispatch time of the slave process task according to the target dispatch time corresponding to the main process task, wherein the slave process task is the process task included in the slave path.

[0183] Further, the fourth determining unit includes:

[0184] A first determining subunit, configured to determine, in the main process task, an associated process task corresponding to the sub-path;

[0185] A first execution subunit is used to use the target dispatch time corresponding to the associated process task as the associated dispatch time;

[0186] The second execution sub-unit is used to use the associated dispatch time as the confluence time of the slave path, and determine the target dispatch time corresponding to the slave process task according to the execution time corresponding to each slave process task and the execution order.

[0187] Furthermore, the first distribution module includes:

[0188] A second determination submodule is used to determine a process path in the process flow;

[0189] A second acquisition submodule is used to acquire, for each of the process tasks, the completion status of a previous process task in the process path where the process task is located, wherein the execution order of the previous process task in the process path is earlier than that of the process task;

[0190] The first judgment submodule is used to judge whether the completion status of the previous process task is completed;

[0191] The first dispatching submodule is used to dispatch the process task to the corresponding target workstation if the completion status of the previous process task is completed.

[0192] Further, the first dispatching submodule includes:

[0193] A first acquisition unit, used to acquire the idle state of the target workstation and determine whether the idle state of the target workstation is idle;

[0194] The first dispatching unit is used to dispatch the process task to the corresponding target workstation if the idle state of the target workstation is idle.

[0195] Further, the first dispatching submodule includes:

[0196] A fifth determining unit, used to determine the target material corresponding to the process task and obtain the material allocation information of the target workstation;

[0197] A first judgment unit, used for judging whether the target workstation has been equipped with the target material according to the material configuration information;

[0198] The second dispatching unit is used to dispatch the process task to the corresponding target workstation if the target workstation is already equipped with the target material.

[0199] Furthermore, the first distribution module includes:

[0200] A first receiving submodule, configured to receive a process adjustment instruction and update the process flow based on the process adjustment instruction;

[0201] The second dispatching submodule is used to dispatch the process task to the corresponding target workstation based on the updated process flow.

[0202] Furthermore, the first receiving submodule includes:

[0203] A second acquisition unit, used to acquire order insertion information corresponding to the process adjustment instruction;

[0204] A sixth determining unit, configured to determine an occupied time corresponding to the order insertion information;

[0205] A third acquisition unit is used to acquire the target dispatch time corresponding to the process task that has not been completed in the process flow;

[0206] The first updating unit is used to delay the target dispatching time based on the occupied time so as to update the target dispatching time of the process task.

[0207] Furthermore, the first distribution module includes:

[0208] A first monitoring submodule is used to monitor the operating state of the target station when the process task is being processed at the target station;

[0209] A third determination submodule is used to determine an alternative workstation of the same type as the target workstation if the target workstation fails;

[0210] The third dispatching submodule is used to dispatch the process task to the alternative workstation when the alternative workstation is idle.

[0211] Furthermore, the device also includes:

[0212] The first monitoring module is used to monitor the production status of each process task during production scheduling;

[0213] A first judgment module, used to judge whether a production scheduling abnormality occurs according to the production status;

[0214] The first stop module is used to stop the execution and dispatch of all the process tasks if a production scheduling anomaly occurs.

[0215] Reference Figure 5In terms of hardware structure, the electronic device may include components such as a communication module 10, a memory 20, and a processor 30. In the electronic device, the processor 30 is connected to the memory 20 and the communication module 10 respectively, and a computer program is stored in the memory 20. The computer program is executed by the processor 30 at the same time, and the steps of the above method embodiment are implemented when the computer program is executed.

[0216] The communication module 10 can be connected to an external communication device through a network. The communication module 10 can receive requests from an external communication device, and can also send requests, instructions and information to the external communication device, which can be other electronic devices, servers or Internet of Things devices, such as televisions, etc.

[0217] The memory 20 can be used to store software programs and various data. The memory 20 can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system, at least one application required for a function (such as determining the target workstation corresponding to each of the process tasks), etc.; the data storage area can include a database, and the data storage area can store data or information created according to the use of the system, etc. In addition, the memory 20 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices.

[0218] The processor 30 is the control center of the electronic device. It uses various interfaces and lines to connect various parts of the entire electronic device. It executes various functions of the electronic device and processes data by running or executing software programs and / or modules stored in the memory 20, and calling data stored in the memory 20, so as to monitor the electronic device as a whole. The processor 30 may include one or more processing units; optionally, the processor 30 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into the processor 30.

[0219] although Figure 5 Although not shown, the electronic device may further include a circuit control module, which is used to connect to a power source to ensure the normal operation of other components. Figure 5 The electronic device structure shown in the figure does not constitute a limitation of the electronic device, and may include more or less components than shown in the figure, or combine certain components, or arrange the components differently.

[0220] The present invention also provides a computer-readable storage medium on which a computer program is stored. The computer-readable storage medium may be Figure 5 The memory 20 in the electronic device may also be at least one of a ROM (Read-Only Memory) / RAM (Random Access Memory), a magnetic disk, and an optical disk. The computer-readable storage medium includes a number of instructions for enabling a terminal device with a processor (which may be a television, a car, a mobile phone, a computer, a server, a terminal, or a network device, etc.) to execute the methods described in the various embodiments of the present invention.

[0221] In the present invention, the terms "first", "second", "third", "fourth" and "fifth" are used for descriptive purposes only and are not to be understood as indicating or implying relative importance. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.

[0222] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples, without contradiction.

[0223] Although the embodiments of the present invention have been shown and described above, the scope of protection of the present invention is not limited thereto. It is understood that the above embodiments are exemplary and cannot be understood as limiting the present invention. A person of ordinary skill in the art can change, modify and replace the above embodiments within the scope of the present invention, and these changes, modifications and replacements should be included in the scope of protection of the present invention. Therefore, the scope of protection of the present invention shall be subject to the scope of protection of the claims.

Claims

1. A production scheduling method, characterized in that: The production scheduling method comprises: Obtaining a production order to be scheduled, obtaining a bill of materials corresponding to the production order to be scheduled from a production system, and determining a plurality of process tasks in the bill of materials; Determine the target workstation corresponding to each of the process tasks; Associating each of the process tasks with the corresponding target workstation to obtain the process flow corresponding to the production order to be scheduled; When scheduling, the process task is published to the message queue based on the process flow, so that the message queue dispatches the process task to the corresponding target workstation, wherein the target workstation is a consumer of the message queue and subscribes to the corresponding process task; Or when scheduling production, the process flow is sent to a task scheduling system so that the task scheduling system dispatches the process tasks to the corresponding target workstations.

2. The production scheduling method according to claim 1, characterized in that: The process of associating each of the process tasks with the corresponding target workstation to obtain the process flow corresponding to the production order to be scheduled includes: Obtain the target launch time corresponding to the production order to be scheduled and the execution order and execution time corresponding to each process task; Determine the target dispatch time corresponding to each of the process tasks according to the target launch time, the execution order and the execution time; The process tasks are associated with the target workstations, and the process flow is generated based on the target dispatch time corresponding to each of the process tasks.

3. The production scheduling method according to claim 2, characterized in that: Determining the target dispatching time corresponding to each of the process tasks according to the target online time, the execution order and the execution time includes: Determine the process path composed of the process tasks according to the execution order; Determining a main path and a sub-path in the process path, wherein the main path is a process path with the longest total execution time of the process tasks; Taking the target launch time as the start time of the main path, determining the target dispatch time corresponding to the main process task according to the execution time and execution order corresponding to each main process task, wherein the main process task is the process task included in the main path; The target dispatch time of the slave process task is determined according to the target dispatch time corresponding to the main process task, wherein the slave process task is the process task included in the slave path.

4. The production scheduling method according to claim 3, characterized in that: Determining the target dispatch time of the slave process task according to the target dispatch time corresponding to the master process task includes: Determining, in the main process task, an associated process task corresponding to the slave path; Using the target dispatch time corresponding to the associated process task as the associated dispatch time; The associated dispatch time is used as the confluence time of the slave path, and the target dispatch time corresponding to the slave process task is determined according to the execution time corresponding to each of the slave process tasks and the execution order.

5. The production scheduling method according to claim 1, characterized in that: The dispatching of the process task to the corresponding target workstation includes: Determining a process path in the process flow; For each of the process tasks, obtaining the completion status of a previous process task in the process path where the process task is located, wherein the execution order of the previous process task in the process path is earlier than that of the process task; Determine whether the completion status of the previous process task is completed; If the completion status of the previous process task is completed, the process task is dispatched to the corresponding target workstation.

6. The production scheduling method according to claim 5, characterized in that: The dispatching of the process task to the corresponding target workstation includes: Obtaining the idle state of the target workstation, and determining whether the idle state of the target workstation is idle; If the idle state of the target workstation is idle, the process task is dispatched to the corresponding target workstation.

7. The production scheduling method according to claim 5, characterized in that: The dispatching of the process task to the corresponding target workstation includes: Determine the target material corresponding to the process task, and obtain the material allocation information of the target workstation; Determining whether the target workstation has been equipped with the target material according to the material equipment information; If the target workstation is already equipped with the target material, the process task is dispatched to the corresponding target workstation.

8. The production scheduling method according to claim 1, characterized in that: The dispatching of the process task to the corresponding target workstation includes: receiving a process adjustment instruction, and updating the process flow based on the process adjustment instruction; The process tasks are dispatched to the corresponding target workstations based on the updated process flow.

9. The production scheduling method according to claim 8, characterized in that: The updating of the process flow based on the process adjustment instruction includes: Obtaining order insertion information corresponding to the process adjustment instruction; Determine the occupied time corresponding to the order insertion information; Obtaining the target dispatching time corresponding to the process tasks that have not been dispatched in the process flow; The target dispatch time is delayed based on the occupied time to update the target dispatch time of the process task.

10. The production scheduling method according to claim 1, characterized in that: The dispatching of the process task to the corresponding target workstation includes: When the process task is executed at the target workstation, monitoring the operating status of the target workstation; If the target workstation fails, determining an alternative workstation of the same type as the target workstation; When the alternative workstation is idle, the process task is dispatched to the alternative workstation.

11. The production scheduling method according to claim 1, characterized in that: The method further comprises: When scheduling production, the production status of each process task is monitored; Determine whether production scheduling abnormality occurs according to the production status; If a production scheduling anomaly occurs, the execution and dispatch of all the process tasks will be stopped.

12. A production scheduling device, characterized in that: The production scheduling device comprises: A first acquisition module is used to acquire a production order to be scheduled, acquire a bill of materials corresponding to the production order to be scheduled from a production system, and determine a plurality of process tasks in the bill of materials; A first determination module is used to determine the target workstation corresponding to each process task; A first generating module is used to associate each of the process tasks with the corresponding target workstation to obtain a process flow corresponding to the production order to be scheduled; The first dispatching module is used to publish the process task to the message queue based on the process flow when scheduling production, so that the message queue dispatches the process task to the corresponding target workstation, wherein the target workstation is a consumer of the message queue and subscribes to the corresponding process task; or send the process flow to the task scheduling system when scheduling production, so that the task scheduling system dispatches the process task to the corresponding target workstation.

13. An electronic device, characterized in that: The electronic device comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the computer program implements the steps of the production scheduling method according to any one of claims 1 to 11 when executed by the processor.

14. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the production scheduling method according to any one of claims 1 to 11 are implemented.

Citation Information

Cited By

  • Production scheduling method and equipment for airbag pump and medium

    CN120106475A